ZigBee無線傳感器網(wǎng)絡(luò)技術(shù)在油田信息采集系統(tǒng)中的
為了能采用使節(jié)點(diǎn)功耗更低的無內(nèi)存駐留的休眠方式,因此將一些重要的參量保存在flash中,并在初始化中重新加載。終端節(jié)點(diǎn)的軟件框架流程圖如圖5所示。
3.2 中轉(zhuǎn)節(jié)點(diǎn)軟件設(shè)計(jì)
中轉(zhuǎn)節(jié)點(diǎn)的任務(wù)相對(duì)簡單,只需處理觸發(fā)的協(xié)議棧事件、接收和處理“網(wǎng)絡(luò)消息”?!熬W(wǎng)絡(luò)消息”分為來自串口透明傳輸設(shè)備的一級(jí)網(wǎng)絡(luò)命令和來自二級(jí)ZigBee網(wǎng)絡(luò)的消息。電量儀的處理包含在“命令解析與轉(zhuǎn)發(fā)”環(huán)節(jié)中。中轉(zhuǎn)節(jié)點(diǎn)沒有休眠,是不間斷工作的,其軟件設(shè)計(jì)流程圖如圖6所示。
中轉(zhuǎn)通過433 MHz串口透明傳輸模塊“SM55D”接收來自上位機(jī)的命令,“SM55D”會(huì)將接收的字符提供給JN5139模塊的串口(UART)0,可利用串口0的中斷處理解析節(jié)點(diǎn)命令。
串口0設(shè)置為每接收一個(gè)字符便進(jìn)行中斷,在中斷處理中將字符添加至緩沖區(qū),待緩沖區(qū)中的字符達(dá)到解析長度的下限值時(shí),根據(jù)命令中的節(jié)點(diǎn)號(hào)和功能碼查表獲得對(duì)應(yīng)命令的指定長度S(包括CRC校驗(yàn)碼);若字符總數(shù)N等于S,根據(jù)“網(wǎng)絡(luò)號(hào)”進(jìn)行判斷,若非本PAN節(jié)點(diǎn)的命令,則不作任何處理,立即返回;否則進(jìn)行CRC校驗(yàn),對(duì)于校驗(yàn)通過的命令,查找表格對(duì)子節(jié)點(diǎn)進(jìn)行地址映射,再進(jìn)行下一步操作。中斷處理流程圖如圖7:
從圖7中可以看到“CRC16校驗(yàn)失敗”、“子節(jié)點(diǎn)未注冊(cè)”、“命令下發(fā)失敗”三種特殊情況(若下發(fā)設(shè)置命令成功后,也會(huì)有特殊返回信息ACK0)發(fā)生后,中轉(zhuǎn)均通過發(fā)送特殊ACK信息對(duì)上位機(jī)進(jìn)行反饋,便于設(shè)備的調(diào)試。對(duì)于ZigBee子節(jié)點(diǎn)設(shè)備,命令是否下發(fā)成功,中轉(zhuǎn)節(jié)點(diǎn)可通過ZigBee協(xié)議事件獲取;對(duì)于電量儀設(shè)備,根據(jù)其數(shù)據(jù)傳輸協(xié)議,所有命令都應(yīng)有數(shù)據(jù)返回,可在命令下發(fā)的同時(shí),啟動(dòng)定時(shí)器,若規(guī)定時(shí)間內(nèi)無正確數(shù)據(jù)返回,則認(rèn)為命令下發(fā)失敗。
3.3 管理控制中心軟件設(shè)計(jì)
上位機(jī)只需按照節(jié)點(diǎn)的數(shù)據(jù)傳輸協(xié)議向串口寫入字符,即可實(shí)現(xiàn)命令發(fā)送。節(jié)點(diǎn)的網(wǎng)絡(luò)號(hào)和節(jié)點(diǎn)號(hào),可從數(shù)據(jù)庫中相應(yīng)的配置表讀出。上位機(jī)程序利用時(shí)鐘驅(qū)動(dòng),對(duì)每個(gè)通信區(qū)塊的節(jié)點(diǎn)輪流下發(fā)命令并解析數(shù)據(jù),每30分鐘進(jìn)行一次。
在對(duì)子節(jié)點(diǎn)下發(fā)命令后,即偵聽對(duì)應(yīng)串口,解析其433MHz模塊接收到的字符,根據(jù)起始/終止符“0x7E”提取數(shù)據(jù),找到數(shù)據(jù)中字符0x 7D”并拋除,并對(duì)其后的字符進(jìn)行轉(zhuǎn)義,即再與“0x20”按位異或。對(duì)得到的數(shù)據(jù)包進(jìn)行CRC16校驗(yàn),校驗(yàn)通過后的數(shù)據(jù)按節(jié)點(diǎn)類型進(jìn)行數(shù)據(jù)解析和相應(yīng)操作。操作流程圖如圖8所示。
4 結(jié)束語
通過傳感器節(jié)點(diǎn)、中轉(zhuǎn)節(jié)點(diǎn)組建的無線傳感器網(wǎng)絡(luò),實(shí)現(xiàn)了油田生產(chǎn)信息的采集、傳輸與處理。適應(yīng)了油田點(diǎn)多面廣的應(yīng)用需求,同時(shí)也降低了組網(wǎng)、部署和維護(hù)成本。作為油田生產(chǎn)信息系統(tǒng)數(shù)據(jù)獲取的一種有效技術(shù)手段,無線傳感器網(wǎng)絡(luò)具有很好的應(yīng)用前景。
評(píng)論