基于ARM與DSP的嵌入式運動控制器設計方案
引言
本文引用地址:http://www.biyoush.com/article/257520.htm運動控制系統(tǒng)廣泛地應用于工業(yè)控制領域,而嵌入式技術在工業(yè)控制領域的應用還不太成熟,近年來,工業(yè)控制對運動控制系統(tǒng)的要求越來越高,為了滿足新一代運動控制系統(tǒng)的各項性能要求,嵌入式運動控制器應運而生?;?a class="contentlabel" href="http://www.biyoush.com/news/listbylabel/label/ARM">ARM與DSP運動控制芯片相結合的新一代運動控制系統(tǒng),充分發(fā)揮ARM微控器與專業(yè)運動控制芯片MCX314As的各自特點,可方便的構成高性能的嵌入式運動控制系統(tǒng)。
運動控制芯片MCX314As
MCX314As是日本NOVA電子有限公司的DSP運動控制專用芯片,它是控制4軸的脈沖序列輸出驅(qū)動伺服電機、步進電機的運動控制芯片,可用于工業(yè)自動化設備、工業(yè)機器人、測量設備、辦公設備和家用電器等??梢赃M行各軸獨立的定位控制、速度控制,另一方面亦可在4軸中任意的選擇2軸或是3 軸來進行圓弧、直線、位模式插補。輸出脈沖頻率高達4MHZ,誤差低于±0.5最小插補單元,倍率1~500。每軸都有伺服反饋輸入端、四個輸入點和8個輸出點,能獨立地設置為恒速、線性、非對稱S曲線加/減控制、非對稱梯形加/減控制,并有2個32位的邏輯、實際位置計數(shù)器和狀態(tài)比較寄存器,實現(xiàn)位置的閉環(huán)控制[1]。
MCX314As運動控制芯片能與8/16位數(shù)據(jù)總線接口,通過命令、數(shù)據(jù)和狀態(tài)等寄存器實現(xiàn)4軸3聯(lián)動的位置、速度、加速度等運動控制和實時監(jiān)視。在實際運用時可以把所有極其復雜的實時運動控制工作交給MCX314As芯片來處理,而主機CPU只需要向 MCX314As芯片發(fā)出一系列的控制指令便能實現(xiàn)各種復雜的運動。
2 ARM微處理器S3C2410
S3C2410 是韓國三星公司的32位RISC嵌入式處理器。該處理器為手持設備和一般性應用提供了一個高性價比、低功耗、高性能的解決方案。該芯片基于ARM920T 內(nèi)核,采用五級流水線和哈佛結構,主頻高達200MHz[3]。ARM920T具有全性能的內(nèi)存管理單元MMU、獨立的16KB指令和數(shù)據(jù)Cache以及高速AMBA總線接口。為了減少應用系統(tǒng)設計的成本,S3C2410集成了眾多的常用資源,例如:LCD控制器、NANDFlash控制器、SDRAM控制器、系統(tǒng)片選邏輯以及一些常用的通訊接口等資源,使它廣泛的應用于工業(yè)控制領域。
運動控制器的基本構成
由S3C2410和MCX314As構成運動控制器。在開發(fā)板S3C2410上設計有系統(tǒng)總線預留接口,預留了S3C2410芯片上的基于通用IO口的信號線,包括16位數(shù)據(jù)線、12位地址線、片選信號和一些讀寫控制信號線,以方便用戶擴展應用電路。運動控制芯片MCX314As 與S3C2410處理器的連接就是通過這個標準的系統(tǒng)總線接口電路,把兩者的數(shù)據(jù)線、地址線、讀寫控制線、片選信號和中斷等信號連接起來。在兩者信號連接連接之間加入SN74ALVC164245的芯片來實現(xiàn)電平轉(zhuǎn)換,同時驅(qū)動信號。另外還需要注意的是,我們使用的是16位數(shù)據(jù)線的傳輸,所以 MCX314As芯片的H16L8引腳必須接上高電平。
圖1 S3C2410與MCX314As的接口電路框圖
嵌入式運動控制系統(tǒng)系統(tǒng)進行加工的過程實際上就是從ARM上位機傳輸數(shù)據(jù)到MCX314As下位機的過程。其控制流程如下:
(1)加工程序運行開始,首先對MCX314As芯片進行初始化。對MCX314As芯片進行設置初始速度、加速度、減加速度、加速度變化率、正轉(zhuǎn)反轉(zhuǎn)方式、邏輯位置計數(shù)器清零、實際位置計數(shù)器清零等。
(2)選擇需要進行加工的軸,MCX314As芯片有X、Y、Z、U四個軸,都有著相同的功能能力,能實現(xiàn)四軸三聯(lián)動。
(3)設置所選軸模式和運行參數(shù),包括直線定速模式、單步插補輸出模式和中斷請求。
(4)初始化位置計數(shù)器,即將數(shù)據(jù)庫中的行號寫入此計數(shù)器進行減法計算,每處理完一行數(shù)據(jù)進行減一處理。
(5)進行命令和數(shù)據(jù)傳輸,發(fā)出數(shù)據(jù)后對狀態(tài)寄存器進行檢查,加工完一段后發(fā)出信號然后再發(fā)送下一組數(shù)據(jù),一直到加工完成為止。在加工過程中一旦出現(xiàn)中斷,首先讀取各寄存器數(shù)據(jù)進行保存,等待恢復加工后再讀寫出來。整個數(shù)據(jù)庫文件輸出結束后,保存運行系統(tǒng)完成后的數(shù)據(jù)信息和系統(tǒng)所處的狀態(tài)信息,以備下個零件加工,由此加工結束。
運動控制器在XY兩軸數(shù)控伺服工作臺中的應用
XY兩軸工作臺是采用滾珠絲桿和滾動導軌傳動的十字工作臺(X、Y兩軸垂直)。X、Y兩軸兩端各有1個限位開關。采用松下交流伺服電機(型號 MSMA022A1C,功率200W,額定轉(zhuǎn)速3000r/min,額定轉(zhuǎn)矩0.64Nm)驅(qū)動工作臺運動,電機驅(qū)動器采用松下伺服驅(qū)動器 MSDA023A1A。采用光電編碼器作為位置反饋器件(伺服電機同軸安裝11線2500P/r增量編碼器)[3]
圖2是該平臺的X軸驅(qū)動原理圖[1],Y軸驅(qū)動與X軸驅(qū)動電路相同。圖中M為伺服電機,EC是編碼器。將伺服驅(qū)動器的“控制模式”設置為“位置控制”,把指令脈沖設置為CW/CCW方式。S3C2410按流程圖操作MCX314As,設置相應的運動參數(shù),寫入功能命令,即可完成對平臺的運動軌跡控制。
圖2 單軸信號驅(qū)動系統(tǒng)的接口示意框圖
結語
運動控制系統(tǒng)在工業(yè)控制中的應用比較廣泛,MCX314As是高集成度的運動控制專用芯片能實現(xiàn)四軸三聯(lián)動的位置、速度、加速度控制和直線、圓弧、位元3種模式的連續(xù)插補和位置閉環(huán)控制。而ARM處理器具有強大的32位RISC性能,體積小、功耗低。用ARM與專業(yè)運動控制芯片設計運動控制器能大大減輕研發(fā)任務,加快研發(fā)速度,可以在較短時間內(nèi)得到控制性能優(yōu)異的嵌入式運動控制系統(tǒng)。
linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)伺服電機相關文章:伺服電機工作原理
評論