引言
DNC是Direct Numerical Control或DistributedNumerical Control的簡稱,意為直接數字控制或分布式數字控制。DNA以數控技術、計算機技術、通信技術和網絡技術等先進技術為基礎把與制造過程相關的設備集成起來,從而實現了制造設備的集中控制管理,以及制造設備之間、制造設備與上層計算機之間的信息交換。該控制方式的技術特點充分體現了數字制造的方展方向,因此在數控加工中被廣泛使用。本文結合DNC技術的發展趨勢,設計了一套基于ARM和DSP的嵌入式數控機床控制系統。
1 系統硬件設計
該DNC控制系統主要分為三大部分:DNC服務器模塊、ARM通信處理模塊、DSP控制執行模塊。其中DNC服務器是系統的控制中心,ARM是嵌入式機床控制系統的主處理器、運行操作系統和網絡協議棧,負責接收遠程DNC服務器的指令并進行相應處理,DSP控制執行模塊主要負責具體的指令執行操作,直接控制機床的運行。三大模塊有機結合便可構成一個完整的數控機床控制系統。其系統框圖如圖1所示。
1.1 DSP控制模塊
DSP控制模塊是機床控制系統的實際執行單元,DNC服務器以及ARM發送過來的指令最終都由DSP控制模塊具體處理。高精度的多軸數控機床加工通常都會涉及到大量的運算處理,同時需要豐富的外設接口支持,為此,本系統選用了TI公司的TMS320F2812 DSP芯片。這是一種新型32位定點DSP芯片,具有以下特點:
(1) 運算速度快,工作時鐘頻率達150MHz且功耗很低。
(2) 具有優化的CPU和哈佛總線結構,同時具有強大的操作能力、迅速的中斷響應和處理能力。可以實現16×16位和32×32位相乘且累加操作。
(3) 系統中的兩個增強的事件管理器模塊提供了一整套用于運動控制和電機控制的功能和特性。每個事件管理模塊均包含有通用定時器(GP)、比較單元、捕獲單元以及正交編碼脈沖電路。
(4) 外圍設備包括3個32位的CPU定時器和16通道12位ADC,它不僅具有串行外圍接口(SPI)和兩個串行通信接口(SCIs),還具有改進的局域網絡(e2 CAN)、多通道緩沖串行接口(McBSP)和串行外圍接口模式。
基于以上特點,該系統尤其適用于數字馬達控制、工業自動化、電力轉換系統及通信設備等。本系統中TMS320F2812主要用于數控機床的控制,可接收ARM傳送過來的控制代碼,并對代碼進行譯碼和相應的運算,最終將代碼轉化為PWM脈沖編碼以控制電機的運行;另外,該DSP還負責將接收的機床I/O板所采集的機床狀態信息以及機床代碼的接收和執行情況,通過RS485總線反饋給ARM,以作為ARM進行下一步操作的依據。
1.2 ARM通信處理模塊
ARM通信處理模塊是機床控制系統的核心模塊,它既可以作為一個單獨的控制單元,利用自身的人機交換模塊進行代碼編輯,以控制機床的運行;義可以通過工業以太網接收DNC服務器傳送的機床代碼指令來控制機床的運行。因此,ARM處理器在通信、任務處理、人機交互、系統穩定性等各方面都有較高的要求,同時,為了方便今后的系統升級,該系統還選用了三星公司的S3C2410處理器,該處理器是基于ARM9內核的32位RISC處理器,擁有強大的處理、控制功能以及豐富的外設接口,可以作為數控機床的主處理器來運行操作系統和網絡協議棧。
ARM通信處理模塊選用S3C2410(32-bitARM920T內核),系統時鐘使用外部12 MHz晶振,也可由S3C2410內部的PLL倍頻至200 MHz。另外,還應配置鍵盤和LCD顯示模塊、2通道RS485通信接口以及10 MB以太網接口。
1.3 DNC服務器模塊
DNC服務器模塊是整個機床網絡系統的控制指揮中心,以工業PC機構建,可運行windows xp操作系統,具有良好的人機界面和可操作性。開發工具選用的Visual C++是美國Microsoft公司推出的軟件開發工具,目前已成為國內應用最廣泛的高級語言之一,同其它軟件開發工具相比,Vi-sual C++具有面向對象、能可視化開發等優點。由于該系統工具提供有面向對象的應用程序框架MFC(Microsoft FoundaTIon Class:微軟基礎類庫),因而可以大大簡化程序員的編程工作和模塊的可重用性;由于眾多的開發商支持,該工具已成為工業標準的MFC類庫;同時它和C語言兼容的特點也大大方便了和外部嵌人式系統之間的連接。DNC服務器模塊可協調整個機床網絡的運行,便于實施機床車間的流水線操作。因此采用該DNC系統可大大提高生產效率,降低管理成本,同時其遠程操作特點特別適合一些特殊的加工場合(如危險品的加工)。因此,該DNC系統具有廣泛的應用前景。
2 系統軟件設計
本系統的軟件設計主要有DNC服務器軟件設計、ARM通信處理模塊軟件設計、DSP控制模塊軟件設計等。其系統軟件流程如圖2所示。
當然,每臺數控機床也可以作為一個獨立的控制單元(圖2中的虛線框部分),可利用ARM通信處理模塊自帶的人機交互模塊,來完成機床代碼的編寫以及反饋信息的顯示。因此,該系統既可以獨立運行,又可以組網運行,因而具有很強的靈活性。
2.1 DNC服務器軟件設計
DNC服務器軟件設計主要包括網絡通信模塊、代碼文件編寫管理模塊、遠程調用控制模塊、反饋信息處理模塊等。軟件設計采用模塊化、結構化設計思想,按照軟件工程規范進行框架設計可使其具有良好的開放性、可移植性和可擴充性。軟件各模塊的結構關系如圖3所示。
2.2 ARM通信處理模塊的軟件設計
ARM通信處理模塊軟件設計主要包括五個部分:以太網通信處理模塊、代碼編輯模塊、信息顯示模塊、代碼提取處理模塊、RS485總線通信處理模塊。機床可設定兩種工作模式:組網工作模式和獨立工作模式,默認情況下為組網工作模式。程序的設計包括操作系統和網絡協議棧的移植等,操作系統采用的uc/osII是一款簡單、高效的嵌入式實時多任務操作系統,該系統的源代碼公開,并具有良好可移植性和擴展性,其穩定性和可靠性已經過實踐檢驗,非常適合應用于控制系統領域。網絡協議棧采用LWIP,這是一套用于嵌入式系統的輕量級(light weight) TCP/IP協議棧,包括TCP、UDP、ICMP、IP、ARP、DHCP協議等,它和uc/osII構成了ARM通信處理模塊軟件的設計主體。該軟件的具體流程如圖4所示。
2.3 DSP控制模塊的軟件設計
DSP控制模塊的軟件設計主要包括三個部分:RS485總線通信模塊、機床代碼譯碼模塊、機床信息反饋模塊。DSP模塊主要通過RS485總線接收ARM模塊傳送的機床代碼指令,并按照特定的譯碼方法進行譯碼,最終將其轉化為電機控制的PWM脈沖寬度調制信號,以完成機床的具體控制;同時,它還應當將定時采集的機床狀態信息通過RS485總線反饋給ARM模塊,從而構成一個閉環控制系統。
3 結束語
本文結合DNC技術的發展趨勢,給出了集先進的嵌入式技術、網絡技術和應用于現代機床的控制技術與一體的網絡化DNC設計方案,從而實現了整個系統高度的集成和工業級的穩定性能,同時十分方便系統升級。由于該機床控制系統提供了兩種工作模式,因此還可根據用戶具體要求進行軟硬件的裁減,因而具有很強的靈活性,可廣泛應用于各種機電控制領域。