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