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