引言
市場對數(shù)控系統(tǒng)要求是具有更好的柔性、適應性、擴展性,并向小型化、智能化、網(wǎng)絡化方向發(fā)展。針對這一要求,本文提出了網(wǎng)絡化的嵌入式數(shù)控系統(tǒng),其中央數(shù)控單元不是PC計算機系統(tǒng),而是嵌入式控制系統(tǒng),這種嵌入式控制系統(tǒng)采用ARM+DSP的結構,具有運算能力強、成本低的特點,提高了系統(tǒng)的實時性和可靠性,實現(xiàn)了數(shù)控系統(tǒng)的小型化、網(wǎng)絡化、智能化和集成化。嵌入式數(shù)控系統(tǒng)的其他單元,如伺服控制單元、PLC單元、通信單元、顯示單元、數(shù)據(jù)鍵入單元等,也在嵌入式系統(tǒng)的基礎上搭建,屬于嵌入式系統(tǒng)模塊。嵌入式數(shù)控系統(tǒng)的通信部分包含數(shù)控系統(tǒng)內(nèi)CNC主控單元與伺服驅動及I/O邏輯控制等各單元間的通信、車間級工業(yè)以太網(wǎng)絡的通信和Intranet/Internet網(wǎng)絡通信。
1.系統(tǒng)總體結構
本網(wǎng)絡化嵌入式數(shù)控系統(tǒng)已經(jīng)由武漢理工大學湖北省數(shù)字制造重點實驗室和嵌入式實驗室聯(lián)合開發(fā)成功。其中主控系統(tǒng)CPU采用三星公司的S3C44B0微控制器,系統(tǒng)的機床控制和插補運算等強實時任務由TI公司的32位TMS320F2812DSP芯片實現(xiàn)。在ARM中移植了U2cos11實時多任務操作系統(tǒng),以進行實時多任務管理,其主要任務是實現(xiàn)數(shù)控系統(tǒng)的人機界面,完成加工程序的輸入、預編譯、軌跡計算、速度計算和加工零件圖形的模擬仿真等任務,同時提供工業(yè)以太網(wǎng)絡接口與上層管理PC機通信,然后通過上層PC機將嵌入式數(shù)控系統(tǒng)連入Internet。DSP負責處理一些實時性強的機床信號,并據(jù)ARM的指令執(zhí)行機床控制和插補運算等強實時任務。在ARM中生成用于插補的數(shù)據(jù)(加工數(shù)據(jù)),并通過CAN總線發(fā)給DSP,由DSP完成插補處理。伺服單元主要接受ARM和DSP的指令對主軸電機和進給電機進行控制。整個系統(tǒng)的體系結構如圖1所示。
圖1嵌入式數(shù)控系統(tǒng)的體系結構
2.嵌入式數(shù)控系統(tǒng)通信功能的實現(xiàn)
數(shù)控系統(tǒng)的網(wǎng)絡化是以Internet技術、通訊技術、數(shù)控技術和計算機技術等為基礎,將遠程設計、數(shù)控編程和數(shù)控加工等集成在一起,實現(xiàn)數(shù)控系統(tǒng)等數(shù)控設備的網(wǎng)絡化和集成化。嵌入式數(shù)控系統(tǒng)作為網(wǎng)絡化制造系統(tǒng)的基本單元,可以實現(xiàn)制造車間設備的集中控制管理、遠程控制、遠程故障診斷、網(wǎng)絡制造、網(wǎng)上培訓、網(wǎng)上營銷及網(wǎng)上管理等功能,從而可以在全球范圍內(nèi)將具有不同數(shù)控類型的企業(yè)聯(lián)系起來實現(xiàn)資源的共享和優(yōu)化利用,這樣不僅可以提高產(chǎn)品的加工質量和生產(chǎn)效率,還能敏捷地響應瞬息萬變的市場[1]。嵌入式數(shù)控系統(tǒng)中的通信功能包括3個方面:數(shù)控系統(tǒng)內(nèi)CNC主控單元與伺服驅動及I/O邏輯控制等各單元間的通信、車間級工業(yè)以太網(wǎng)絡的通信和Intranet/Internet網(wǎng)絡通信,如圖2所示。
圖2嵌入式數(shù)控系統(tǒng)的通信結構
2.1 系統(tǒng)單元間的通信
系統(tǒng)ARM、DSP和各伺服單元之間通過CAN總線通信。CAN總線的特點決定了它非常適合架構嵌入式數(shù)控系統(tǒng),首先CAN總線采用了循環(huán)冗余碼校驗(Cy2clicredundancy check) 、框架檢測( Frame check)、確認信號出錯檢測(ACK errors)、總線監(jiān)控(Bus monito2ring) 、位填充(Bit stuffing)等5種錯誤監(jiān)測和糾錯措施,從而達到了很高的可靠性,平均誤碼率小于10-13[2]。其次,CAN總線采用了獨特的位仲裁技術,具有比CSMA/CD網(wǎng)(IEE802.3)和令牌網(wǎng)(IEE802.4)更高的實時性。除此之外,CAN總線的通訊速率可達1MBPS,遠距離傳輸可達10km,同時接口簡單、安裝方便,通訊控制簡單。在嵌入式數(shù)控系統(tǒng)中,ARM、DSP和伺服單元都實現(xiàn)了CAN總線接口,可以作為系統(tǒng)的一個節(jié)點,非常方便地實現(xiàn)模塊加入、更改和退出。
嵌入式數(shù)控系統(tǒng)的主控CPU采用三星公司的S3C44B0微控制器,芯片內(nèi)不帶CAN總線協(xié)議控制及驅動核,因此選取PHILIPS公司的SJA1000CAN控制器以及82C250總線收發(fā)器。SJA1000支持CAN2.0A/B規(guī)約,可方便地實現(xiàn)與S3C44B0接口。CAN接口電路如圖3所示,SJA1000集成了CAN協(xié)議的物理層和數(shù)據(jù)鏈路層功能,可完成對通信數(shù)據(jù)的成幀處理,該控制器具有多主結構、總線訪問優(yōu)先權、硬件濾波等特點。PCA82C250是CAN協(xié)議控制器和物理總線的接口,它可以提供總線的差動發(fā)送能力和接收能力,高速應用可達1MHz,可掛110個節(jié)點。
嵌入式數(shù)控系統(tǒng)的機床控制和插補運算等強實時任務由DSP實現(xiàn)。插補運算硬件采用TI公司的32位TMS320F2812芯片,其最高頻率可達150MHz,時鐘周期縮短到6.67ns,完全滿足數(shù)控插補算法的實時性[3]。同時2812芯片內(nèi)部集成CAN總線控制器,因此外部只需接82C250總線驅動器即可。所有進行數(shù)據(jù)傳輸和接受濾波的協(xié)議由芯片內(nèi)部的CAN總線控制器實現(xiàn),通過2812芯片內(nèi)的特殊功能寄存器可配置CAN控制器訪問接受到的數(shù)據(jù)以及進行數(shù)據(jù)傳輸。由于2812芯片可完成CAN總線協(xié)議的數(shù)據(jù)鏈路層和應用層的所有功能,因此可以非常方便的接入基于CAN總線的數(shù)控系統(tǒng)。
圖3嵌入式數(shù)控系統(tǒng)的CAN接口電路
考慮到數(shù)控系統(tǒng)的伺服電機有直流、交流和步進電機等,伺服模塊的可重構具有重大意義。伺服控制模塊也通過CAN總線的形式掛接在系統(tǒng)中,采用DSP芯片實現(xiàn)。由于20MHz的時鐘頻率對伺服控制完全足夠,考慮到成本問題,系統(tǒng)以TI公司生產(chǎn)的TMS320F243芯片作為伺服CPU,而不選用2812芯片。243芯片是TMS320系列定點數(shù)字信號處理器產(chǎn)品之一,專為數(shù)字電機控制而設計,其指令執(zhí)行速度是20MHz,所有指令都可以在一個50ns的單周期內(nèi)執(zhí)行完畢,這使得復雜控制算法的實時執(zhí)行成為可能。另外在243芯片內(nèi)嵌入了CAN模塊,因此可以很方便地連接到CAN總線上。
2.2車間級工業(yè)以太網(wǎng)絡的通信
車間級工業(yè)以太網(wǎng)絡的通信的關鍵技術是以太網(wǎng)底層協(xié)議的實現(xiàn)。由于S3C44B0芯片內(nèi)部沒有集成TCP/IP協(xié)議模塊,因此需要外接網(wǎng)絡協(xié)議芯片。嵌入式數(shù)控系統(tǒng)的網(wǎng)口部分采用了10M以太網(wǎng)接口芯片RTL8019AS、RJ45網(wǎng)絡插座和網(wǎng)絡變壓器,降低了干擾。以太網(wǎng)接口模塊與PC機中使用的網(wǎng)卡功能和電路結構基本一致,只是嵌入式數(shù)控系統(tǒng)與網(wǎng)絡模塊部分不是通過PCI/ISA即插即用的方式連接,而是直接與以太網(wǎng)接口芯片RTL8019AS的數(shù)據(jù)總線和地址總線相連。電路中采用了RTL8019AS的中斷輸出INT0(4腳)與S3C44B0X的EINT0(外部中斷源0)連接。RTL8019以中斷的方式與來報告自身的工作狀態(tài),如發(fā)送數(shù)據(jù)包成功、接收到新的數(shù)據(jù)包、出錯異常中斷等。S3C44B0X在收到EINT0中斷后,進入相應的中斷處理程序后,對RTL8019AS內(nèi)部寄存器ISR的值進行讀取,從而判斷是什么引發(fā)了中斷。由于電路的連接圖較大,這里不再給出具體的電路圖。
在開發(fā)以太網(wǎng)驅動程序時,只需要將要發(fā)送的數(shù)據(jù)按一定的格式寫入芯片并啟動發(fā)送命令,RTL8019AS會自動添加接收狀態(tài)、下一頁指針、以太網(wǎng)幀長度和校驗FCS段,并將數(shù)據(jù)包轉換成物理幀格式在物理信道上傳輸。反之,RTL8019AS收到物理信號后將其還原成數(shù)據(jù),按指定格式存放在芯片RAM中,以便主機程序取用。這樣RTL8019AS的工作就是完成數(shù)據(jù)包和電信號之間的相互轉換:數(shù)據(jù)包<=>電信號。RTL8019AS輸入輸出地址共32個,地址偏移量為00H4/1FH,其中00H - 0FH共16個地址,為寄存器地址,寄存器分成4頁PAGE04/PAGE3,與NE2000兼容的寄存器只有3頁( Page0-Page2),為了保證驅動程序對所有Ne2000的網(wǎng)卡有效,本系統(tǒng)沒有使用第四頁的寄存器。以太網(wǎng)協(xié)議由RTL8019AS芯片硬件自動完成,對上層應用程序透明。驅動程序有3種功能:芯片初始化、收包、發(fā)包。發(fā)送數(shù)據(jù)包是先將待發(fā)送的數(shù)據(jù)包通過DMA寫操作存入網(wǎng)卡芯片RAM,并給出發(fā)送緩沖區(qū)首地址(TPSR0、TPSR1)和數(shù)據(jù)包長度(TBCR0,TB2CR1),啟動發(fā)送命令,網(wǎng)卡芯片會自動按以太網(wǎng)協(xié)議完成發(fā)送并將結果寫入狀態(tài)寄存器。接收數(shù)據(jù)包時,采用中斷的方式,根據(jù)對RTL8019AS內(nèi)部寄存器ISR的值進行讀取可以判斷是否收到新的數(shù)據(jù)包,如果有則通過DMA讀操作從網(wǎng)卡芯片RAM讀出數(shù)據(jù)。
2.3Intranet/Internet網(wǎng)絡通信
Intranet/Internet網(wǎng)絡通信是指企業(yè)內(nèi)數(shù)控系統(tǒng)與上位計算機之間的通信,將嵌入式數(shù)控系統(tǒng)、上層管理PC機以及辦公用網(wǎng)絡經(jīng)過Intranet聯(lián)在一起,然后接入外部Internet。這樣通過Intranet將企業(yè)中的MRP系統(tǒng)、MIS系統(tǒng)和辦公室的CAD/CAM系統(tǒng)等形成一個整體,方便快捷地與數(shù)控機床進行信息交換與控制,可在異地設計、編程,然后通過以太網(wǎng)傳送和共享零件加工程序,實現(xiàn)CAD/CAM/CNC的網(wǎng)絡集成。同時通過Internet將分布在不同地域的數(shù)控設備、現(xiàn)場設備維修工程師、設備制造企業(yè)維修工程師及領域專家組織和聯(lián)系起來,在設備與人之間、人與人之間進行快速的信息傳遞,形成一個網(wǎng)絡化的數(shù)控設備診斷與維修咨詢系統(tǒng)和視頻會議系統(tǒng),對數(shù)控設備進行遠程監(jiān)控和故障診斷,還可以組成網(wǎng)上虛擬車間(工廠)和電子商務。
系統(tǒng)的基于視訊技術的遠程服務提供了一個包括聲音、圖像、文本等多種媒體在內(nèi)的協(xié)調工作環(huán)境,是遠程協(xié)作的重要工具。遠程監(jiān)控模塊通過CCD攝像頭實時地采集數(shù)字