時間:2009-12-28 16:48:09來源:yangliu
摘 要:本文提出了一種新的基于ARM 與MCX314As 的嵌入式四軸數控系統的設計。該設計采用ARM 處理器S3C2410 為主CPU,運動控制芯片MCX314As 為從CPU,并采用實時的Linux 操作系統,使得系統很好地進行多任務處理,并保證了運動控制的實時性。
關鍵詞:ARM;MCX314As;數控系統;Linux
1. 引言
在本方案中,以ARM 微處理器為核心主控板,配以運動控制芯片MCX314A 和實時操作系統Linux,構建數控系統的軟硬件平臺。ARM 嵌入式平臺憑借其強大的功能與良好的設備支持受到了普遍的關注,它采用5 級流水線,具有指令和數據Cache,支持協處理器和片上調試。具有開發移植容易、體積小、功耗低、運算速度快、實時性好等優點。MCX314As是日本NOVA 公司推出的4 軸運動控制專用DSP(Digital Single Processing)集成電路,通過這個集成電路可以控制步進電機驅動器或由脈沖型伺服電機驅動的4 軸的位置、速度和插補。Linux 操作系統是一個免費的開放軟件,源代碼是公開的,它具有系統穩定、功能強大、應用軟件多、簡單易用、使用成本低等優點。該系統設計方案從底層實現數控系統的軟件和硬件的開放,這樣就使數控系統具有更高集成度、更高可靠性、更低成本、更友好的控制操作界面、更多系統資源和更大內存成為可能。設計方案對開發具有自主知識產權的數控系統有一定的積極意義。
2. 數控系統硬件結構
ARM 處理器選用Samsung 公司的S3C2410 處理芯片。S3C2410 是一款基于ARM920T內核的32 位RISC 架構的處理器。其體積小、低價格、低功耗、性能高,帶有MMU(Memory Management Unit)功能,主頻可達203MHz,還采用了AMBA(Advanced Microcontroller BusArchitecture)的新型總線結構,支持Thumb(16 位)/ARM(32 位)雙指令集,能很好的兼容8 位/16 位器件。
運動控制芯片選用MCX314As。MCX314As 是一種功能十分強大的DSP 運動控制芯片。芯片能夠控制4 軸(X 軸、Y 軸、Z 軸、U 軸),可在4 軸中選擇任意的2 軸作圓弧插補、2/3軸作直線插補,插補精度是±0.5LSB。默認輸入時鐘為16MHz,脈沖輸出速度最高可達4MPPS,輸出脈沖范圍為32 位。
MCX314As 還有伺服電機反饋輸入(編碼器信號、在位信號和報警信號)、加/減速驅動、軟硬件限位、自動原點搜索、同步動作、輸入信號濾波等功能。
MCX314As 能與8/16 位數據總線接口,其所有的功能都是通過讀寫內部命令寄存器、數據寄存器、狀態寄存器和模式寄存器而實現。各軸都有32 位的邏輯位置計數器(對輸出的驅動脈沖計數)、實際位置計數器(對外部編碼器計數)和比較寄存器,實現位置的閉環控制。各軸都有4 個通用輸入(可用于限位、原點信號輸入)和4/8 個通用輸出。
系統硬件采用主從式雙CPU 結構模式。主CPU 為ARM 處理器,用于鍵盤、顯示、網絡通訊等管理工作,而從CPU 即為MCX314A 運動控制芯片,專門負責運動控制的處理工作。ARM 處理器S3C2410 通過16 位數據總線與MCX314As 相連,控制系統硬件結構,如圖1 所示。
ARM 外部Flash 存儲器可用于存儲需要固化的運動控制參數(如軌跡坐標、運動參數)。Flash 存儲器采用韓國三星半導體公司生產制造的K9F5608U0C(64M Nand Flash)和1MBAMD Nor Flash,SDRAM 采用韓國現代公司生產制造的HY57V561620BT(32M*2),液晶模塊采用NEC 的3.5 寸TFT LCD 屏。為便于與上位系統和其他控制器間通信,控制器設計有RS232 和以太網通信功能以及鍵盤和USB 接口。以太網接口控制器采用CS8900A。ARM控制器可方便地向MCX314A 發送執行命令,產生控制脈沖給伺服驅動器,驅動機械部件形成期望的運動。
3. 軟件系統
S3C2410 要完成通信、人機交互、運行控制算法產生控制指令、MCX314As 的讀寫操作等多任務。在控制器中嵌入實時多任務Linux 操作系統給軟件系統設計帶來便利,移植的技術細節參見文獻[1]、[3]。下面主要討論S3C2410 對MCX314As 的控制。
操作MCX314As 對于程序設計來說就是按一定的時序讀寫其內部的寄存器。MCX314As可“寫”的寄存器有:命令寄存器WR0,模式寄存器WR1~3,輸出寄存器WR4,插補模式寄存器WR5,數據寄存器WR6~7;可“讀”的寄存器有:主狀態寄存器RR0,狀態寄存器RR1~5,數據寄存器RR6~7。
ARM 處理器將I/O 端口和存儲器統一編址,將MCX314As 接于S3C2410 的Bank2 存儲器組,即將CS2 作為MCX314As 的片選信號,訪問MCX314A 寄存器的基本地址為0x10000000,要注意0x10000000 是按照硬件原理圖的設計得到的,是MCX314As 寄存器WR0 的物理地址。在Linux 操作系統中,運行在用戶空間的應用程序所用的都是虛擬地址,編寫驅動程序的時候,還需要利用ioremap()函數把物理地址轉換成虛擬地址來使用。那么WR0 和RR0 的地址是0x10000000,記為Addr。那么,WR1 和RR1 的地址是Addr+2,依此類推,WR7 和RR7 的地址是Addr+0x0e。圖2 是S3C2410 操作MCX314A 的流程圖[4]。
4. 結論
MCX314As 是一款功能強大的運動控制芯片,具有優秀的四軸控制及插補功能,為數控系統的研制提供了一個可選的較為方便可靠的底層控制單元。它豐富的功能簡化了數控系統多項運動控制的實現。而ARM 處理器具有強大的32 位RISC 性能,體積小、功耗低,是一款高性能的處理器。采用ARM 處理器及運動控制芯片,能大量地減輕研發任務,提高研發速度,能夠在短時間內得到高速度、高精度、高效率、高可靠性、成本低的數控系統。而Linux 實時操作系統的加入,使得系統能夠很好地進行多任務處理,并且保證了系統的實時性。
參考文獻
[1]孫紀坤,張小全編著.嵌入式Linux系統開發技術詳解--基于ARM[M].北京:人民郵電出版社,2006,8
[2]葉佩青,汪勁松編著.MCX314運動控制芯片與數控系統設計[M].北京:北京航空航天大學出版社,2002.11
[3]周立功. ARM嵌入式系統系列教程[M]. 北京:北京航空航天大學出版社,2005
[4]余張國,李眾立,李磊民.基于ARM 和MCX314A 的嵌入式運動控制器[J].微計算機息,2005.10
標簽:
中國傳動網版權與免責聲明:凡本網注明[來源:中國傳動網]的所有文字、圖片、音視和視頻文件,版權均為中國傳動網(www.hysjfh.com)獨家所有。如需轉載請與0755-82949061聯系。任何媒體、網站或個人轉載使用時須注明來源“中國傳動網”,違反者本網將追究其法律責任。
本網轉載并注明其他來源的稿件,均來自互聯網或業內投稿人士,版權屬于原版權人。轉載請保留稿件來源及作者,禁止擅自篡改,違者自負版權法律責任。
產品新聞
更多>2025-06-16
2025-06-09
2025-06-06
2025-05-19
2025-04-30
2025-04-11