摘 要:介紹了一種以32位CPU為控制器的嵌入式數(shù)控系統(tǒng)設計,包括系統(tǒng)硬件設計和軟件設計。該系統(tǒng)選用三星公司的低功耗S3C4510作為核心,具有數(shù)據(jù)存儲、以太網(wǎng)通訊、LCD顯示等功能。該系統(tǒng)具有低功耗、低價位、體積小、可集成到數(shù)控機床操作臺等特點,是未來經(jīng)濟型數(shù)控機床發(fā)展的趨勢。
關鍵字:數(shù)控系統(tǒng)、嵌入式、UDP/IP協(xié)議
1、 引言
計算機數(shù)控系統(tǒng)是先進制造技術的基礎,在國內(nèi)外得到普遍重視,發(fā)展較快。如今的計算機數(shù)控系統(tǒng)多以PC機為平臺?;赑C機的數(shù)控系統(tǒng)雖然功能強大,卻存在以下缺點:
?。?) PC - base數(shù)控系統(tǒng)需要工業(yè)計算機的捆綁銷售,造成資源浪費和成本的提高。
(2) PC - base數(shù)控系統(tǒng)的硬件結構非常復雜,從而導致系統(tǒng)的整體可靠性的降低。
(3) PC - base數(shù)控系統(tǒng)的軟件操作系統(tǒng)主要有DOS和Windows兩種方案, DOS操作系統(tǒng)過于簡陋,導致許多功能實現(xiàn)起來非常困難或者無法實現(xiàn),如網(wǎng)絡和USB功能;而Windows操作系統(tǒng)又過于龐大和累贅,系統(tǒng)實時性極差,并存在微軟公司的版權問題。
(4) PC - base數(shù)控系統(tǒng)需要設計基于ISA /PCI總線的I/O控制卡和專用的運動控制卡。造成硬件結構復雜化。
隨著嵌入式系統(tǒng)、微計算機技術和集成電路的迅速發(fā)展,高性能的32位CUP開始普及,ARM技術正在逐步滲入到我們生活的各個方面。它執(zhí)行速度快、功能強大,在中、低檔數(shù)控系統(tǒng)中已經(jīng)完全可以替代PC機,獲得更大的價格和技術優(yōu)勢。本文旨在打破傳統(tǒng)基于PC機的數(shù)控系統(tǒng),研究并設計一種基于ARM的32位嵌入式微機數(shù)控系統(tǒng)。
該數(shù)控系統(tǒng)的核心處理器采用三星公司生產(chǎn)的S3C4510芯片。該芯片是用在基于以太網(wǎng)系統(tǒng)的高性價比、高性能的16/32位RISC微控制器,內(nèi)含一個有A R M 公司設計的1 6 / 3 2 位ARM7TDMI RISC 處理器,ARM7TDMI 為低功耗高性能的16/32。網(wǎng)絡接口芯片采用Realtek公司生產(chǎn)的一種全雙工以太網(wǎng)控制器RTL8201。由于S3C4510B 片內(nèi)已有帶MII 接口的MAC 控制器,而RTL8201 也提供了MII 接口,因此直接將兩者的同名端連接即可。信號輸出經(jīng)耦合隔離變壓器由RJ45 接頭聯(lián)入集線器。此外該芯片還帶有2個可編程32 位定時器,18個可編程I/O口,2個DMA通道。可用定時器產(chǎn)生步進電機的控制脈沖,并由I/O口通過功率放大后輸出來控制步進電機。而且大量的G代碼存取過程中還可以利用DMA技術提高存取效率,同時把CPU從繁忙的存取工作中解脫出來用于處理數(shù)據(jù)和控制電動機,這可使該數(shù)控系統(tǒng)的性能和運行效率大大提高。
2、 系統(tǒng)功能
系統(tǒng)功能結構框圖如圖1所示。其中計算機應用CAD軟件產(chǎn)生加工G代碼,通過網(wǎng)線下載到運動控制器的海量數(shù)據(jù)存貯器SDRAM中,然后可以在線控制雕刻機運動也可以脫機運行。網(wǎng)絡下載速率可達100Mbit/s,所以通信速度還是非常快的。通信協(xié)議采用的是UDP/IP協(xié)議。因為該系統(tǒng)中數(shù)據(jù)的傳輸遠不像因特網(wǎng)那樣復雜,傳輸?shù)臄?shù)據(jù)量相對較小,即使發(fā)生數(shù)據(jù)錯誤或丟失,重傳的代價也不是很大,所以避開繁瑣的TCP/IP協(xié)議采用用戶數(shù)據(jù)報UDP協(xié)議。這樣做不僅大大簡化了編程,數(shù)據(jù)傳輸?shù)男室蔡岣吡撕芏唷?
運動控制器負責從數(shù)據(jù)存貯器讀取加工G代碼,并對加工G代碼進行翻譯,通過運動控制算法(圓弧插補)處理后輸出對電機的控制脈沖,控制雕刻過程中電機的運行,達到三軸聯(lián)動的效果。要注意的是電機在突然加速或減速運行時,容易產(chǎn)生失步現(xiàn)象,影響運動控制的精度。為避免這種情況的發(fā)生,對電機應該實行加速度均勻變化的加減速控制。
3、 系統(tǒng)硬件設計
該系統(tǒng)硬件設計分為幾個功能模塊:參數(shù)輸入模塊、參數(shù)輸出模塊、液晶顯示模塊、鍵盤輸入模塊、數(shù)據(jù)通信模塊、數(shù)據(jù)存貯模塊、程序存貯模塊和一個JTAG調試接口。
?。?)輸入模塊:通過光電隔離模塊輸入雕刻機X、Y、Z軸的正反向限位和急停信號給EPLD邏輯電路,由它輸出控制信號,控制雕刻機運動的停止。雕刻機的零位信號通過74LS16244由CPU讀回。
?。?)輸出模塊:輸出電機轉動方向和脈沖參數(shù)信號通過ULN2803驅動控制電機運轉。
?。?)液晶顯示模塊:顯示當前刻刀位置和主軸轉速等運行狀態(tài)。
?。?)鍵盤輸入模塊:開關機、主軸轉速和手動對刀時X、Y、Z軸方向參數(shù)設定等。
?。?)數(shù)據(jù)通信模塊:下載PC機生成的加工G代碼。
?。?)數(shù)據(jù)存貯模塊:存貯下載的加工G代碼和運行過程中的數(shù)據(jù)。
(7)程序存貯模塊:存貯運行軟件。
(8)JTAG調試接口:通過JTAG邊界掃描接口對程序進行交叉調試。
本系統(tǒng)之所以選用三星公司的S3C4510B芯片來構建,是因為它具有一下兩個優(yōu)點:一是具有100Mbps 以太網(wǎng)控制器,提供MII接口。這使得它的網(wǎng)絡接口和編程都變得非常簡單方便,通信速度也快(傳統(tǒng)的8/16位處理器只能達到10 Mbps);二是支持大容量的SDRAM(比DRAM便宜很多),這對降低成本非常有用。
4、 系統(tǒng)軟件設計
本系統(tǒng)軟件采取前/后臺模式。運動控制器系統(tǒng)軟件流程圖如圖2所示。即在前臺循環(huán)運行液晶顯示子程序、按鍵處理子程序、G代碼讀取翻譯子程序、控制算法處理子程序等,后臺的通信子程序和鍵中斷子程序等當系統(tǒng)產(chǎn)生相應的硬件中斷(如以太網(wǎng)接收中斷、按鍵中斷)時響應,執(zhí)行完中斷服務程序后返回到原來斷點處繼續(xù)執(zhí)行前臺程序。設定通信程序的優(yōu)先級高于鍵中斷的優(yōu)先級。
其中插補算法處理子程序是重點。刀具不能嚴格地沿著要求的曲線運動,只能沿折線逼近所要求加工的曲線。這種由已知工件輪廓的運動軌跡的七點坐標、終點坐標和輪廓軌跡的曲線方程,由數(shù)控系統(tǒng)計算出各個中間點的坐標,“插入”、“補上”運動軌跡中間點的坐標值的過程,稱為“插補”。數(shù)控系統(tǒng)計算各個中間點坐標的方法就是“插補算法”。
本系統(tǒng)實現(xiàn)了三軸聯(lián)動的數(shù)字積分直線插補和數(shù)字積分圓弧插補,并對插補過程進行加減速控制,以提高插補質量和精度。即在插補過程中不斷地向各個坐標軸發(fā)出進給脈沖,驅動各坐標軸的電動機轉動。每發(fā)出一個脈沖,工作臺就移動一個基本長度單位,發(fā)送給各坐標軸的脈沖數(shù)目決定了相對運動距離,而脈沖的頻率代表了坐標軸的速度。實現(xiàn)加減速控制,即實現(xiàn)各坐標軸脈沖頻率在一個加工代碼段中由低到高再到低的變化過程。
5、 小結
本文作者創(chuàng)新點是突破了傳統(tǒng)數(shù)控機床的串口通信方式,通過UDP/IP協(xié)議實現(xiàn)了上下位機之間的以太網(wǎng)通信。改變了當前多采用PC機作為平臺的數(shù)控系統(tǒng)模式,全部控制功能和算法均由32位的下位機控制器來完成。既方便了用戶操作,又節(jié)省了投資,是未來經(jīng)濟型數(shù)控機床發(fā)展的趨勢。
參考文獻:
[1] 馬忠梅,馬廣云,徐英慧等. ARM嵌入式處理器結構與應用基礎.北京航天航空大學出版社, 2002.
[2] 楊后川,梁煒編著. 機床數(shù)控系統(tǒng)及應用.北京大學出版社,2005
[3] 王田苗, 嵌入式系統(tǒng)設計與示例開發(fā). 清華大學出版社,2003
[4] 林立志等編著, 基于Windows的TCP/IP編程. 清華大學出版社,2002
[5] 周立功等編著,ARM微控制器基礎與實踐. 北京航天航空大學出版社,2003
[6] 王羲,步進電機轉臺的控制. 微計算機信息. 電子工業(yè)出版社,1984