電子設備診斷系統中RFID系統與ZigBee網(wǎng)絡(luò )混合組網(wǎng)的設計與實(shí)現
3 軟件設計
ZigBee-RFID節點(diǎn)的軟件設計主要包括ZigBee網(wǎng)絡(luò )的建立、組網(wǎng)、數據傳輸以及ZigBee終端模塊與RFID閱讀器模塊的通信等部分。這些應用均運行在ZigBee協(xié)議棧的應用層,ZigBee協(xié)議?;臼前凑誒SI網(wǎng)絡(luò )模型來(lái)定義的,由IEEE802.15.4定義物理層和MAC子層,然后ZigBee聯(lián)盟繼續定義網(wǎng)絡(luò )層和應用層。本設計的應用程序底層運行的是MSSTATE_LRWPAN協(xié)議棧。應用程序首先對CC2430進(jìn)行初始化,然后對協(xié)議棧初始化,再初始化串口和LCD顯示模塊(ZigBee-RFID節點(diǎn)),接著(zhù)判斷是否為協(xié)調器,如果是協(xié)調器,則建立網(wǎng)絡(luò ),然后處理各種網(wǎng)絡(luò )信息;如果是ZigBee-RFID節點(diǎn),則進(jìn)入應用程序有限狀態(tài)機FSM。其應用程序流程圖如圖6所示。本文引用地址:http://dyxdggzs.com/article/155222.htm
ZigBee-RFID節點(diǎn)的應用程序采用有限狀態(tài)機風(fēng)格,其狀態(tài)轉換關(guān)系如圖7所示。其中狀態(tài)關(guān)系主要分為:節點(diǎn)加入網(wǎng)絡(luò );節點(diǎn)加入成功信息通報;節點(diǎn)關(guān)鍵應用以及節點(diǎn)網(wǎng)絡(luò )維護。在節點(diǎn)關(guān)鍵應用狀態(tài)里,UART口和ZigBee無(wú)線(xiàn)網(wǎng)絡(luò )都處于等待接收的狀態(tài),兩個(gè)狀態(tài)都有一定的等待時(shí)限,一旦超時(shí),則相互轉換,直到其中一個(gè)狀態(tài)接收到數據。其中UART接收設置為中斷接收。如果UART口接收到來(lái)自RFID閱讀器的數據,ZigBee-RFID節點(diǎn)立即將數據存儲并處理后顯示在LCD上,然后打包發(fā)送回協(xié)調器,再通過(guò)協(xié)調器傳回給服務(wù)器,發(fā)送成功后轉入ZigB ee網(wǎng)絡(luò )消息等待的狀態(tài)。如果有來(lái)自服務(wù)器或者ZigBee網(wǎng)絡(luò )的消息,則接收并根據接收的消息進(jìn)行相應的處理,如果是ZigBee網(wǎng)絡(luò )的控制信息,則進(jìn)入響應控制信息狀態(tài);如果是上位機對RFID閱讀器的操作信息,則轉入UART發(fā)送狀態(tài),并將操作信息轉發(fā)給閱讀器。處理完畢后,再回到UART口接收等待的狀態(tài),繼續與ZigBee無(wú)線(xiàn)網(wǎng)絡(luò )等待狀態(tài)一起,切換著(zhù)等待新的信息。
LCD顯示模塊的工作需要使用SPI串行通信方式。模塊有一個(gè)復位引腳,對該引腳輸入一個(gè)低電平的脈沖可使模塊復位,復位需要低電平輸入持續至少10 ms,在恢復輸入高電平后等待15 ms后方可對模塊進(jìn)行顯示控制操作(即通過(guò)串行接口輸入指令和數據)。在通過(guò)串行SPI對模塊進(jìn)行控制時(shí),CS為從機選擇線(xiàn);CS從高電平變?yōu)榈碗娖胶?,模組開(kāi)始接收串行通訊的第一個(gè)數據(即控制指令),模組對SDA的采樣在每個(gè)時(shí)鐘線(xiàn)SCK的上升沿進(jìn)行,當CS為高電平時(shí),傳輸無(wú)效。
此外,用戶(hù)在傳輸給模塊指令時(shí),如果指令是附帶有指令數據的,則需要在200 ms以?xún)葘祿鬏斈K,否則將會(huì )產(chǎn)生超時(shí)錯誤。BUSY線(xiàn)會(huì )在緩沖區快滿(mǎn)的時(shí)候輸出高電平,直到緩沖區的數據和指令處理完以后才會(huì )拉低。SPI串行通信時(shí)序圖如圖8所示。
4 性能測試
本系統的測試主要分為兩個(gè)方面,即RFID閱讀器與ZigBee節點(diǎn)通信的測試和ZigBee節點(diǎn)參數的測試。測試時(shí),首先設置RFID閱讀器對三個(gè)標簽分別讀寫(xiě)1 000次,然后通過(guò)上位機觀(guān)察ZigBee節點(diǎn)傳回的消息,便可以得知閱讀器是否將讀取的標簽信息傳給了ZigBee節點(diǎn)。測試結果是全部讀取,由此可知,RFID閱讀器和ZigBee節點(diǎn)的通信是可靠的。
ZigBee節點(diǎn)的參數主要包括通信距離,丟包率和RSSI等。其中RSSI值為信號強度檢測值,不過(guò)這里所給出的RSSI值并不是CC2430數據手冊所定義的值,而足通過(guò)調用aplGetRxRSSI()函數獲得的。其測試數據如表1所列。
通過(guò)測試可知,節點(diǎn)內通信正常,工作性能穩定,能夠滿(mǎn)足電子設備遠程診斷系統中診斷數據無(wú)線(xiàn)傳輸的要求。ZigBee節點(diǎn)的通信距離也超過(guò)設計要求。
5 結語(yǔ)
本文介紹了電子設備遠程診斷系統的框架,并著(zhù)重介紹了該系統中無(wú)線(xiàn)傳輸的部分,指出了本設計的技術(shù)性能優(yōu)勢。實(shí)驗表明,在電子設備遠程診斷系統中,采用RFID系統與ZigBee網(wǎng)絡(luò )相結合的方式具有通信距離遠,組網(wǎng)靈活和不受有線(xiàn)連接的局限等諸多優(yōu)勢。
評論