《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 通信與網(wǎng)絡(luò) > 設(shè)計(jì)應(yīng)用 > 嵌入式數(shù)控轉(zhuǎn)塔沖床數(shù)控系統(tǒng)設(shè)計(jì)
嵌入式數(shù)控轉(zhuǎn)塔沖床數(shù)控系統(tǒng)設(shè)計(jì)
2014年電子技術(shù)應(yīng)用第11期
吝偉偉,鐘佩思,呂曉東,葛 旋,劉 坤
山東科技大學(xué) 先進(jìn)制造技術(shù)研究中心,山東 青島266590
摘要: 通過對基于傳統(tǒng)工業(yè)控制器數(shù)控系統(tǒng)的分析研究,針對傳統(tǒng)數(shù)控系統(tǒng)的缺陷與不足,提出了一種基于CORTEXA8微處理器和嵌入式操作系統(tǒng)(WinCE7)的嵌入式數(shù)控系統(tǒng)。嵌入式實(shí)時(shí)操作系統(tǒng)和高性能微處理器的結(jié)合使得該數(shù)控系統(tǒng)的實(shí)時(shí)多任務(wù)處理能力大大提升,彌補(bǔ)了傳統(tǒng)數(shù)控系統(tǒng)實(shí)時(shí)性差的不足。針對數(shù)控機(jī)床對通信高效化、制造網(wǎng)絡(luò)化的要求以及工業(yè)級(jí)無線通信的發(fā)展,把ZigBee無線通信應(yīng)用到數(shù)控系統(tǒng)通信中,實(shí)現(xiàn)系統(tǒng)的無線通信。系統(tǒng)調(diào)試表明,數(shù)控系統(tǒng)各模塊工作正常,并能實(shí)現(xiàn)上位機(jī)與控制器之間的無線通信。
中圖分類號(hào): TP274
文獻(xiàn)標(biāo)識(shí)碼: A
文章編號(hào): 0258-7998(2014)11-0026-03
Design of Embedded CNC system of CNC turret punch press
Lin Weiwei,Zhong Peisi,Lv Xiaodong,Ge Xuan,Liu Kun
Advanced Manufacturing Technology Center, Shandong University of Science and Technology,Qingdao 266590,China
Abstract: By analysing and researching the CNC system based on traditional industrial controller,aiming at the deficiencies,an Embedded CNC system based on CORTEXA8 microprocessor and embedded operating system(WinCE7) is proposed. The combination of embedded real-time operating system and high performance microprocessor makes real-time multi task processing ability of the CNC system greatly improved, which makes up for the real-time deficiency of the traditional NC system. According to the requirement of CNC machine tool for the communication efficiency, networked manufacturing and the development of industrial wireless communication,completing communication of machine tool by using the ZigBee wireless module. The debugging of the system shows that: the module of NC system is working properly, and can realize the wireless communication between the host computer and the controller.
Key words : embedded NC system;WinCE7;ZigBee;wireless communication

0 引言

  隨著計(jì)算機(jī)技術(shù)的飛快發(fā)展,如今的開放式數(shù)控系統(tǒng)主要是基于 PC 的開放式數(shù)控系統(tǒng)[1],此類型的數(shù)控系統(tǒng)一般采用通用操作系統(tǒng),存在CPU結(jié)構(gòu)復(fù)雜、功耗大、硬件冗余不可裁剪且可靠性不高等諸多不足,很難滿足數(shù)控系統(tǒng)對強(qiáng)實(shí)時(shí)性和穩(wěn)定性的要求。近年來逐漸發(fā)展起來的嵌入式技術(shù)在工業(yè)領(lǐng)域得到了越來越廣泛的應(yīng)用。基于微處理器和嵌入式操作系統(tǒng)的數(shù)控轉(zhuǎn)塔沖床數(shù)控系統(tǒng)具有傳統(tǒng)數(shù)控系統(tǒng)不可比擬的優(yōu)點(diǎn): 嵌入式系統(tǒng)功耗低、可靠性高;功能強(qiáng)大,性能價(jià)格比高;實(shí)時(shí)性強(qiáng),支持多任務(wù);占用空間小,效率高;面向特定應(yīng)用,可根據(jù)需要定制[2]。因此提出基于CORTEXA8微處理器和嵌入式操作系統(tǒng)(WinCE7)的嵌入式數(shù)控系統(tǒng)

1 系統(tǒng)總體方案

  設(shè)計(jì)采用ARM-CORTEXA8微處理器作為主CPU負(fù)責(zé)整個(gè)數(shù)控系統(tǒng)的任務(wù)管理調(diào)度。數(shù)控系統(tǒng)中上位機(jī)與嵌入式機(jī)床控制器之間采用無線通信代替?zhèn)鹘y(tǒng)的線纜通信。數(shù)控系統(tǒng)中,F(xiàn)PGA接受ARM以及外部RAM發(fā)送來的控制指令和數(shù)據(jù)信息并執(zhí)行插補(bǔ)運(yùn)算,產(chǎn)生控制步進(jìn)電機(jī)運(yùn)轉(zhuǎn)的脈沖序列,然后通過接口將脈沖序列送到步進(jìn)電機(jī)驅(qū)動(dòng)器,實(shí)現(xiàn)對電機(jī)的控制[3]。嵌入式數(shù)控系統(tǒng)的操作系統(tǒng),采用微軟的最新一代嵌入式操作系統(tǒng)Windows Embedded Compact7(WinCE7),并根據(jù)數(shù)控系統(tǒng)的功能要求對內(nèi)核進(jìn)行了相應(yīng)裁剪,提高了數(shù)控系統(tǒng)的實(shí)時(shí)性。數(shù)控轉(zhuǎn)塔沖床數(shù)控系統(tǒng)總體結(jié)構(gòu)如圖1所示。

001.jpg

2 系統(tǒng)硬件平臺(tái)設(shè)計(jì)


002.jpg

  穩(wěn)定、可靠的硬件系統(tǒng)是軟件系統(tǒng)運(yùn)行的物理基礎(chǔ),關(guān)系著整個(gè)數(shù)控系統(tǒng)性能的好壞。高配置的硬件系統(tǒng)是實(shí)現(xiàn)高性能數(shù)控系統(tǒng)的有力保障。合理的硬件系統(tǒng)結(jié)構(gòu)可優(yōu)化系統(tǒng)資源配置,使系統(tǒng)性能得到更好發(fā)揮。硬件結(jié)構(gòu)如圖2所示,采用TI公司的AM335X CortexA8處理器,運(yùn)行主頻最高可達(dá)1 GHz,集成了1路千兆網(wǎng)口、CAN總線控制器、IIC控制器、LCD控制器、Power VR SGX530圖形處理器,非常適合工業(yè)控制。AM335X CortexA8處理器主要負(fù)責(zé) LCD、串口、無線通信和 USB 接口的處理及運(yùn)行嵌入式 WinCE7 操作系統(tǒng),實(shí)現(xiàn)譯碼、文件系統(tǒng)、無線網(wǎng)絡(luò)、圖形顯示和 PLC編輯功能。FPGA內(nèi)在的并行機(jī)制決定了它的高速處理能力遠(yuǎn)遠(yuǎn)領(lǐng)先于其他串行執(zhí)行架構(gòu)的CPU,將其應(yīng)用在嵌入式數(shù)控系統(tǒng)中將大大提高系統(tǒng)的響應(yīng)速度,進(jìn)而提高數(shù)控機(jī)床的加工精度[4]。FPGA作為精插補(bǔ)器在下位機(jī)系統(tǒng)中實(shí)現(xiàn)數(shù)控系統(tǒng)硬件插補(bǔ)以替代速度較慢的軟件插補(bǔ),克服了傳統(tǒng)專用集成電路靈活性差、成本高的缺點(diǎn)。CPLD模塊主要負(fù)責(zé)系統(tǒng)操作面板、鍵盤、LED等信號(hào)的處理。

  2.1 系統(tǒng)無線通信的實(shí)現(xiàn)

  設(shè)計(jì)選用低功耗、易組網(wǎng)、在工業(yè)領(lǐng)域得到越來越廣泛應(yīng)用的ZigBee無線網(wǎng)絡(luò)技術(shù)。要實(shí)現(xiàn)數(shù)控系統(tǒng)的無線通信,ZigBee驅(qū)動(dòng)的開發(fā)就顯得尤為重要。

  嵌入式操作系統(tǒng)中本機(jī)設(shè)備驅(qū)動(dòng)程序適合于集成到WinCE平臺(tái)上的設(shè)備,如LED和電源,WinCE以定制接口的方式來支持本機(jī)設(shè)備驅(qū)動(dòng),開發(fā)人員無需編寫設(shè)備驅(qū)動(dòng)程序。流接口驅(qū)動(dòng)程序是為連接到WinCE平臺(tái)的外圍設(shè)備而設(shè)計(jì)的驅(qū)動(dòng)程序[5]。因此ZigBee驅(qū)動(dòng)采用流接口驅(qū)動(dòng)模式編寫,該驅(qū)動(dòng)的主要作用是實(shí)現(xiàn)ZigBee模塊數(shù)據(jù)的收發(fā)、組網(wǎng)、入網(wǎng)、獲取RSSI值等。下面對基于流驅(qū)動(dòng)開發(fā)模式下ZigBee驅(qū)動(dòng)實(shí)現(xiàn)的幾個(gè)主要的流接口函數(shù)進(jìn)行介紹。

  (1)DWORD CC2531_Init(DWORD dWContext)

  {

  RETAILMSG(l,(TEXT(“CC2531_Init----\r\n”)));

  Serlnit();

  CC2531init();

  }

  此函數(shù)功能是實(shí)現(xiàn)模塊初始化串口寄存器使能和主要參數(shù)的設(shè)定。Serlnit( )函數(shù)的功能是完成物理地址的申請,虛擬地址到物理地址的映射和波特率設(shè)置。CC2531init()通過調(diào)用系統(tǒng)串口發(fā)送函數(shù)的方式來設(shè)置CC2531串口的波特率,停止位以及寄存器使能。

  (2)BooL CC2531_IOControl(DWORD hopenContext,DW-

  ORD dwCode,PBYTE PBufin,DWORD dwLenln,PBYTE PBu-

  fout,DWORD dwLenout,PDWORD PdwActualout)

  {

  switch(dwCode)

  {

  case IO_CTL_CC2531_GDAIMA:

  SendDate(0x l<< l);

  case IO_CTL_CC2531_XITONGCANSHU:

  SendDate(0x l<<2);

  case IO_CTL_CC2531_DAOBUCANSHU:

  SendDate(0xl<<3);

  case IO_CTL_CC2531_RSSI:

  SendDate(0xl<<4);

  case IO_CTL_CC2531_REFNODE_REQUEST_CONFIG:

  SendDate(0xl<<23);

  ……

  ……

  }

  }

  此函數(shù)用于向設(shè)備發(fā)送命令。DeviceIOControl()函數(shù)實(shí)現(xiàn)操作系統(tǒng)對此函數(shù)的調(diào)用。參數(shù)dwCode用來告知驅(qū)動(dòng)程序要執(zhí)行的操作。驅(qū)動(dòng)設(shè)計(jì)中,定義了較簡單的幾個(gè)命令,如G代碼、嵌入式數(shù)控系統(tǒng)參數(shù)、刀補(bǔ)參數(shù)、RSSI值,其值分別為1、2、3、4。當(dāng)CC2531收到應(yīng)用程序與這幾個(gè)命令相關(guān)時(shí),無線模塊就在網(wǎng)絡(luò)中收集與之相關(guān)的數(shù)據(jù),然后發(fā)送給與機(jī)床相連無線模塊。

  2.2 FPGA與ARM通信及配置接口設(shè)計(jì)


003.jpg

  ARM微處理器系統(tǒng)與FPGA系統(tǒng)之間的通信接口包括串行與并行兩種,其中串行方式通過它們自身配置的接口實(shí)現(xiàn),并行接口則根據(jù)提供的總線模式進(jìn)行設(shè)計(jì)。FPGA與AM335X CortexA8之間數(shù)據(jù)和控制命令的傳輸通過地址總線和數(shù)據(jù)總線方式完成,其接口示意圖如圖3所示,其中GPMC_A[11:0]為的12位地址總線;GPMC_D[l5:0]為16位數(shù)據(jù)總線;GPMC_WEn實(shí)現(xiàn)FPGA的寫使能傳輸且低電平有效;GPMC_OEn傳輸FPGA的輸出使能信號(hào)且為低電平有效;GPMC_CSn是傳輸FPGA的片選信號(hào)低電平有效;RESET傳輸給FPGA復(fù)位信號(hào),高電平有效;INTO為FPGA傳輸給AM335X的中斷信號(hào)且低電平有效。

  要實(shí)現(xiàn)基于FPGA的邏輯功能,必須首先完成對FPGA的配置。FPGA主要有專用配置芯片,被動(dòng)串行配置,被動(dòng)并行同步配置,被動(dòng)并行異步配置和JTAG配置五種配置方式。設(shè)計(jì)采用微處理器的被動(dòng)串行配置方案,配置簡化電路圖如圖4所示。

004.jpg

  3 系統(tǒng)軟件平臺(tái)搭建

  Windows Embedded Compact7(WinCE7)不僅支持X86和MIPS,同時(shí)支持最新的ARMv7架構(gòu)和多核處理器并能在Visual Studio 2008中無縫集成Platform Builder 2008,可以為開發(fā)者提供更高效的、流暢的開發(fā)體驗(yàn)[6]。設(shè)計(jì)選擇Windows Embedded CE系列最新一代操作系統(tǒng) Windows Embedded Compact 7來進(jìn)行軟件系統(tǒng)的開發(fā)。

  為了節(jié)約PC的磁盤空間和保證運(yùn)行速率,首先,對操作系統(tǒng)進(jìn)行裁剪,添加必要的特性,配置各個(gè)組件進(jìn)行平臺(tái)設(shè)置。結(jié)合設(shè)計(jì)的需要,安裝VS2008時(shí)由于開發(fā)用到的語言是VC++語言其他開發(fā)語言無需安裝;在搭建Platform Builder時(shí)由于Cortex-A8微處理器的平臺(tái)遵從ARMv7架構(gòu)規(guī)范,安裝時(shí)只選“ARMv7 Architecture”即可。下面是Windows Embedded Compact7開發(fā)環(huán)境搭建步驟:(1)Visual Studio 2008,(2)MSDN Library for Visual Studio 2008,(3)Visual Studio 2008 SP1,(4)Microsoft Expression Blend,(5)Windows Embedded Compact 7,(6)Microsoft Virtual PC。接下來開發(fā)目標(biāo)設(shè)備驅(qū)動(dòng)程序,建立好定制的WinCE7映像文件,同時(shí)將目標(biāo)文件下載到目標(biāo)設(shè)備上進(jìn)行調(diào)試。最后把定制好的操作系統(tǒng)內(nèi)核,利用 PlatformBuilder導(dǎo)出SDK。

4 系統(tǒng)測試和實(shí)驗(yàn)結(jié)果

  為了測試所設(shè)計(jì)數(shù)控系統(tǒng)的FPGA在線配置性能,實(shí)驗(yàn)用開發(fā)軟件生成兩種具有不同邏輯功能的RBF文件。待數(shù)控系統(tǒng)完成正常啟動(dòng)后,測試程序能否實(shí)現(xiàn)兩種不同邏輯功能文件的配置,測試結(jié)果如圖5所示。

005.jpg

  實(shí)驗(yàn)機(jī)床選擇南京華訊機(jī)械制造有限公司HPI-3047數(shù)控轉(zhuǎn)塔沖床,實(shí)驗(yàn)環(huán)境為生產(chǎn)車間工作環(huán)境。利用 Packet Sniffer 軟件抓取數(shù)控系統(tǒng)無線通信數(shù)據(jù)包如圖6所示。

006.jpg

  實(shí)驗(yàn)結(jié)果表明,設(shè)計(jì)的數(shù)控系統(tǒng)FPGA模塊能夠?qū)崿F(xiàn)在線配置及功能升級(jí)。ZigBee無線通信模塊能夠?qū)崿F(xiàn)上位機(jī)與機(jī)床嵌入式控制器之間的數(shù)據(jù)收發(fā),無線模塊通信性能穩(wěn)定可靠,完全能夠取代傳統(tǒng)的線纜通信,降低了企業(yè)成本,提高了機(jī)床執(zhí)行效率。

5 結(jié)論

  數(shù)控轉(zhuǎn)塔沖床數(shù)控系統(tǒng)的設(shè)計(jì)采用了實(shí)時(shí)操作系統(tǒng)WinCE7與高性能微處理器CORTEXA8,是嵌入式技術(shù)、微處理器技術(shù)與數(shù)控技術(shù)的完美結(jié)合,系統(tǒng)能夠更好地適應(yīng)高實(shí)時(shí)性加工的要求。把無線通信技術(shù)運(yùn)用到數(shù)控系統(tǒng)通信中取代傳統(tǒng)的線纜通信,有利于降低企業(yè)對通信方面的人力財(cái)力投資。運(yùn)用運(yùn)算速度快、設(shè)計(jì)靈活、可靠性高的FPGA作為硬件插補(bǔ)器,提高了系統(tǒng)插補(bǔ)速度。設(shè)計(jì)順應(yīng)了低功耗、低成本、實(shí)時(shí)性好和機(jī)床通信無線化的發(fā)展趨勢。

參考文獻(xiàn)

  [1] 曹遂軍,王會(huì)良.國內(nèi)外開放式數(shù)控系統(tǒng)的研究與現(xiàn)狀[J].機(jī)電工程技術(shù),2003,32(5):20-22.

  [2] 湯陽.基于WindowsCE的開放式數(shù)控系統(tǒng)關(guān)鍵技術(shù)研究[D].合肥:合肥工業(yè)大學(xué),2003.

  [3] 朱曉潔,舒志兵.基于ARM+FPGA的嵌入式數(shù)控系統(tǒng)[J].機(jī)床與液壓,2008,36(7):311-313.

  [4] 邵明,李光煬,楊惠靈.基于FPGA的嵌入式數(shù)控系統(tǒng)功能模塊設(shè)計(jì)[J].機(jī)床與液壓,2010,38(16):68-71.

  [5] WILSON Y J.Windows CE device driver development[Z].Dr.Dobb′s Journal of Software Tools for Professional Progra-mmer,1998.

  [6] 尹成.Windows CE7開發(fā)實(shí)戰(zhàn)詳解[M].北京:人民郵電出版社,2012.


此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。