ZigBee技術(shù)在ARM數(shù)控系統(tǒng)組網(wǎng)中的應(yīng)用
點擊:1583
A+ A-
所屬頻道:新聞中心
0 引言
當前嵌入型數(shù)控系統(tǒng)接收由CAD/CAM軟件生成的G加工代碼通過串口或以太網(wǎng)口傳送。但使用串口傳送通常需在數(shù)控系統(tǒng)旁再配備1臺主機,而利用以太網(wǎng)口傳送又會增加嵌入式處理器的運算壓力。在目前常用的無線通信中,ZigBee具有低功耗,成本低,時延短,網(wǎng)絡(luò)容量大,安全可靠,無需注冊公共頻段2.4G等優(yōu)點,尤其是其低功耗的優(yōu)勢突出,適合數(shù)控系統(tǒng)的代碼傳輸。故基于ARM技術(shù)和ZigBee技術(shù)實現(xiàn)嵌入型數(shù)控系統(tǒng)的無線組網(wǎng),由ARM網(wǎng)關(guān)負責網(wǎng)絡(luò)管理和數(shù)據(jù)分發(fā),并提供Intemet接口,可遠程登陸傳輸代碼和進行控制。
1 系統(tǒng)網(wǎng)絡(luò)的組建結(jié)構(gòu)
網(wǎng)絡(luò)結(jié)構(gòu)拓撲采用星形結(jié)構(gòu),如圖1。結(jié)構(gòu)中心是基于ARM處理器設(shè)計的系統(tǒng)網(wǎng)關(guān),接收來自局域網(wǎng)或者外部Intemet網(wǎng)絡(luò)傳來的數(shù)據(jù)包,然后根據(jù)包頭信息分發(fā)到各個數(shù)控系統(tǒng)。其中網(wǎng)關(guān)到數(shù)控系統(tǒng)之間的數(shù)據(jù)格式要求有一定協(xié)議默契,以保證數(shù)據(jù)的正確處理。
圖1系統(tǒng)網(wǎng)絡(luò)組建結(jié)構(gòu)圖
2 無線系統(tǒng)軟硬件設(shè)計
2.1 無線節(jié)點的硬件設(shè)計
無線節(jié)點的通訊耗電量較大,需要足夠大的電流供應(yīng),因此設(shè)計的重難點在實現(xiàn)低功耗和低成本上。無線節(jié)點的硬件主要包括微控制器、無線收發(fā)芯片和天線3部分構(gòu)成,如圖2。
圖2 無線節(jié)點硬件結(jié)構(gòu)圖
無線收發(fā)芯片選用了飛思卡爾的ZigBee2Ready芯片MCl3192,其工作電路只需極少外部元器件,性能穩(wěn)定且功耗極低,而且其選擇性和敏感性指數(shù)均超過了IEEE802.15.4標準的要求,可確保短距離通信的有效性和可靠性。MCl3192芯片支持2~3.4v供電電壓,可直接使用干電池作為供電電源。天線采用PCB布線平衡方式實現(xiàn),節(jié)約了成本。
微控制器由數(shù)控系統(tǒng)的ARM7處理器LPC2292擔當,其片內(nèi)具有256K的Flash存儲器,可用來存儲程序代碼,同時還具有16K的片內(nèi)RAM,用來存儲臨時數(shù)據(jù)。該芯片為工業(yè)級控制芯片,具有速度快、抗干擾能力強、易于調(diào)試等特點。將LPC2292的4個I/O設(shè)置為SPI功能,作為SPI總線的SCK、SDO、SDI、nSS四根信號線與RF收發(fā)器相連,微處理器充當SPI主器件,而RF收發(fā)器作為從器件進行數(shù)據(jù)傳輸。
2.2 網(wǎng)關(guān)主結(jié)點設(shè)計
ARM網(wǎng)關(guān)的設(shè)計基于LPC2292處理器。本網(wǎng)絡(luò)設(shè)計基于星型網(wǎng)絡(luò)結(jié)構(gòu),將主節(jié)點嵌入在網(wǎng)關(guān)內(nèi)部實現(xiàn)。主節(jié)點是無線網(wǎng)絡(luò)的管理員,負責網(wǎng)絡(luò)的建立,地址的分配,成員的加入,節(jié)點設(shè)備數(shù)據(jù)、數(shù)據(jù)轉(zhuǎn)發(fā)表、設(shè)備關(guān)聯(lián)表的維護,并能根據(jù)網(wǎng)絡(luò)的狀況更新。軟件設(shè)計上首先要編寫sPI驅(qū)動程序。當系統(tǒng)網(wǎng)關(guān)獲得網(wǎng)絡(luò)上的數(shù)據(jù)后,可根據(jù)IP地址將網(wǎng)絡(luò)的數(shù)據(jù)解析出來,然后將內(nèi)部網(wǎng)絡(luò)地址和數(shù)據(jù)封裝成幀,將數(shù)據(jù)以廣播的形式發(fā)送給接收器。在通訊前,主節(jié)點必須先把網(wǎng)絡(luò)建立起來;當主節(jié)點工作時,還要掃描有沒有新的子網(wǎng)加入,如有新的子網(wǎng)加入,要對其分配ID;當主節(jié)點與終端節(jié)點進行數(shù)據(jù)傳輸時,為保證傳輸數(shù)據(jù)的可靠性,采用應(yīng)答式。系統(tǒng)網(wǎng)關(guān)程序流程見圖3。
圖3 系統(tǒng)網(wǎng)關(guān)程序流程圖
2.3 無線節(jié)點軟件設(shè)計
MCl3192數(shù)據(jù)傳輸模式:數(shù)據(jù)包模式和流模式。對應(yīng)地,SPI提供單傳輸、迭代傳輸2種傳輸協(xié)議。SPI單傳輸協(xié)議主要使用于流數(shù)據(jù)傳輸模式和對MCl3192內(nèi)部寄存器進行讀寫以實現(xiàn)控制。該協(xié)議中每次傳輸?shù)氖?個8位的協(xié)議頭和16位數(shù)據(jù),如表1。每次進行SPI傳輸時,先發(fā)送8位協(xié)議頭,R/W位指明該次操作對寄存器讀還是寫,6位地址給出要訪問的具體寄存器,然后進行2次8位的數(shù)據(jù)傳輸,SPI單傳輸協(xié)議定義如表2。SPI迭代傳輸協(xié)議主要用于包數(shù)據(jù)傳輸模式和對MCl3192快速初始化中。無線節(jié)點系統(tǒng)軟件流程如圖4。
無線節(jié)點上電初始化系統(tǒng)設(shè)備后等待發(fā)送節(jié)點的數(shù)據(jù),當接受節(jié)點接收到數(shù)據(jù)后,對數(shù)據(jù)格式進行判斷解析,取出傳送的G代碼數(shù)據(jù),并將其傳送到ARM數(shù)控系統(tǒng)存儲,等待ARM數(shù)控系統(tǒng)處理。
3 無線節(jié)點的實驗與測試結(jié)果
通過對系統(tǒng)的數(shù)據(jù)傳輸速率測試表明,近距離(空曠,40m以內(nèi))點對點傳輸時節(jié)點的丟包率小于12%,傳輸速率最高為213 kb/s,離標稱值250kb/s略有差距,但用于數(shù)控系統(tǒng)的G加工代碼傳輸是足夠的。當有外界強電磁波干擾時,傳輸?shù)膩G包率會加大。這時需發(fā)送設(shè)備,反復(fù)發(fā)送數(shù)據(jù)以確保數(shù)據(jù)的準確。
在通訊距離測試中,系統(tǒng)在有鋼筋混凝土結(jié)構(gòu)墻壁隔離的室內(nèi)環(huán)境中,丟包率小于50%的情況下,達到了30m左右。在其它如木制或磚結(jié)構(gòu)的房屋中,改用專用天線提高天線的發(fā)射功率后,通訊距離將會更遠,效果會更好。
4 結(jié)束語
實驗證明,該方法簡單易行,既能保證數(shù)控系統(tǒng)的加工效率,又能獲得滿意的數(shù)據(jù)傳輸準確率和數(shù)據(jù)傳輸速率。zigBee以其協(xié)議簡單、成本低、功耗小、組網(wǎng)方式靈活等特點,在工業(yè)監(jiān)控、家用系統(tǒng)控制、樓宇自動化等領(lǐng)域會有更廣闊的前景。
(審核編輯: 智匯張瑜)
分享