王漢如,李訓銘
(河海大學 江蘇 南京 210036)
隨著“數(shù)字油田”建設的不斷推進,油田自動化建設得到了很大發(fā)展,大量自動化設備在油田生產(chǎn)信息監(jiān)控中的應用、各種生產(chǎn)信息系統(tǒng)的建立極大地方便了技術人員的日常工作、提高了安全生產(chǎn)的效率,也使人們意識到數(shù)據(jù)自動化采集、信息處理將是建設“數(shù)字油田”乃至“智能油田”的必然趨勢。
根據(jù)油田生產(chǎn)設備、生產(chǎn)信息系統(tǒng)的需求,結(jié)合ZigBee技術,設計具有自組網(wǎng)、低功耗、魯棒性等特點的無線傳感器網(wǎng)絡節(jié)點,提取信息并傳輸數(shù)據(jù),實現(xiàn)油田生產(chǎn)信息系統(tǒng)的數(shù)據(jù)自動化采集和傳輸[1]。
綜合節(jié)點設計的各種需求,選擇NXP JN5139-Z01-Mxx系列模塊作為節(jié)點的主控芯片,它具有:提供ZigBee自組織網(wǎng)絡、最大傳輸距離高達4 km[2](非2.4 GHz頻段)、硬件支持數(shù)據(jù)CRC16校驗和AES128位加密模塊、休眠機制等特點。
NXP JN5139-Z01-Mxx主要集成了JN5139無線微控制器、128 kB flash ST M25P10、天線及低噪聲運算放大器(模塊M02/M04帶有)。JN5139是一款適用于 IEEE802.15.4和ZigBee應用環(huán)境的低功耗、低成本微控制器,它集成了32位RISC處理器 (32MIPS)、2.4 GHz IEEE802.15.4無線收發(fā)器、192 kB ROM、96 kB RAM以及豐富的模擬數(shù)字外圍接口[3]。JN5139芯片的組成框圖如圖1所示。
圖1 NXP JN5139芯片組成框圖Fig.1 Chip composition block diagram of NXP JN5139
軟件資源方面,模塊的片上系統(tǒng)(SOC)提供了非常豐富的API,涵蓋了外圍設備、網(wǎng)絡處理,尤其是網(wǎng)絡方面,以ZigBee開發(fā)為例,上百個API函數(shù)的存在,使得ZigBee協(xié)議棧服務對用戶透明;同時為了能使用戶開發(fā)的應用程序與此協(xié)議棧服務分享32位RISC處理器的控制,模塊內(nèi)置了小型的片上系統(tǒng) BOS(Basic Operating System)[4]。 實際上,BOS 就是一個相對簡單的任務調(diào)度器,它控制著用戶和ZigBee協(xié)議棧任務(包括網(wǎng)絡層、應用子層等,作為一個整體的任務)的執(zhí)行,負責應用程序與來自硬件外圍設備、MAC子層等消息的傳遞交互,這樣用戶就可以把精力集中應用的功能實現(xiàn)上,而不必過多因為底層的ZigBee網(wǎng)絡和硬件資源問題分心[5]。
需要注意的是:由于透明機制的存在,許多上述資源,如96 kB RAM、四扇區(qū)的128 kB flash并不是完全對用戶開放的;另外,盡管BOS掌管著多個任務的交互,但它同一時間只能處理一個任務,即是單任務系統(tǒng)。
根據(jù)節(jié)點分類和JN5139-Z01-Mxx模塊資源情況,設計節(jié)點的硬件框架如圖2所示。
圖2 硬件模塊圖Fig.2 Structure diagram of the hardware module
圖中,傳感器模塊包括傳感器和信號調(diào)制電路,示功儀傳感器為加速度ADXL202和載荷CL-YB-10M/15t,溫壓儀包括溫度PT100和壓力Honeywell C13L型傳感器,雙壓儀的壓力傳感器同樣選擇Honeywell C13系列,而中轉(zhuǎn)節(jié)點不帶有此模塊,其通過電量儀設備讀取電機的電參量。主控芯片模塊JN5139-Z01-Mxx分為M02/M04和M01/M03四種,前兩者相較于用于示功儀和溫壓儀的后兩者增加了運放,可通信范圍更廣,功耗更高,用于雙壓儀和中轉(zhuǎn)。SPI設備模塊包括一些以SPI方式與JN5139-Z01-Mxx連接的芯片,如用來保存采集數(shù)據(jù)的flash AT45DB161D和溫壓儀的液晶顯示屏LCM141C(集成于模塊內(nèi)部的flash ST M25P10與CPU也是通過SPI接口連接)。時鐘模塊選用DS1302芯片,根據(jù)其時間值,程序發(fā)起采集和記錄數(shù)據(jù)。電源模塊也視節(jié)點而不同——終端節(jié)點包括4 000 mAh鋰電池、太陽能板及其充電電路,中轉(zhuǎn)節(jié)點則由220 V有線源轉(zhuǎn)壓后供電。其他模塊則包括串口調(diào)試、看門狗、LED等[6]。各模塊情況整理如表1所示。
表1 節(jié)點模塊構成Tab.1 Structure of node modules
分別考慮終端(即示功儀)和中轉(zhuǎn)節(jié)點的設計。終端節(jié)點程序的主要任務分為“采集數(shù)據(jù)”和“網(wǎng)絡響應”,前者是按照時鐘時間由程序發(fā)起的,后者包括“無線數(shù)據(jù)協(xié)議命令響應”和“ZigBee網(wǎng)絡協(xié)議棧事件處理”(包括入網(wǎng)、掉網(wǎng)等),類似于中斷處理[7]。考慮SOC的單任務特性,可以將節(jié)點程序設計成“任務檢查制”——每次從休眠中醒來,初始化后,判斷是否要進行網(wǎng)絡響應,或根據(jù)時鐘時間判斷是否有采集任務,若空閑則進入休眠,休眠一定時間間隔后再次被喚醒,如此反復。
圖3 節(jié)點工作狀態(tài)Fig.3 The operation state of node
為了能采用使節(jié)點功耗更低的無內(nèi)存駐留的休眠方式,因此將一些重要的參量保存在flash中,并在初始化中重新加載。終端節(jié)點的軟件框架流程圖如下圖4,虛線框內(nèi)表示的是采集流程,在此范圍內(nèi)都可能對“無線數(shù)據(jù)協(xié)議命令”和“協(xié)議棧事件”做出響應。
圖4 終端(示功儀)節(jié)點軟件流程圖Fig.4 Flow chart the software design of terminal node
中轉(zhuǎn)節(jié)點的任務相對簡單,只需處理觸發(fā)的協(xié)議棧事件、接收和處理“網(wǎng)絡消息”。“網(wǎng)絡消息”分為來自串口透明傳輸設備的一級網(wǎng)絡的命令和來自二級ZigBee網(wǎng)絡的消息。中轉(zhuǎn)節(jié)點沒有休眠,是不間斷工作的,其軟件設計流程圖如圖5所示。
圖5 中轉(zhuǎn)節(jié)點軟件流程圖Fig.5 Flow chart the software design of transit node
由于節(jié)點的通信距離受節(jié)點之間遮擋物的影響比較大,因此本次測試選擇車流量少、無遮擋的公路和由少量樹木、建筑物遮擋的小區(qū)兩個環(huán)境進行測試。在每個環(huán)境下分別對主站和中轉(zhuǎn),中轉(zhuǎn)和示功儀兩條通信線路進行通信距離和丟包率的測試。測試方法如下:
將兩個通信節(jié)點,發(fā)送節(jié)點每隔一段時間向接收節(jié)點發(fā)送 0001,0002,0003,...,5000,接收節(jié)點在接收到數(shù)據(jù)后對其進行判斷,若接收到數(shù)據(jù)比上次接收到數(shù)據(jù)增一,則認為此次接收數(shù)據(jù)有效,計數(shù)器增一。最后查看接收計數(shù)器,即可判斷此次試驗通信節(jié)點的丟包率。每兩個節(jié)點間進行三次通信測試,取平均數(shù)后得到數(shù)據(jù)如表2所示。
表2 示功儀通信性能測試情況Tab.2 Oil indicator instrument communication test
通過上述試驗可以看出,在沒有遮擋的環(huán)境下通信時,通信質(zhì)量和通信距離都比較好,丟包率能控制在1%以內(nèi),可以滿足整個系統(tǒng)的穩(wěn)定性要求。當有遮擋物遮擋時,則通信質(zhì)量隨著通信距離迅速下降,功耗也會隨著上升。因此,在現(xiàn)場布設通信節(jié)點時,應盡量考慮避開遮擋物,以提高通信質(zhì)量,減少電源功耗。
通過以上對油田無線傳感器網(wǎng)絡節(jié)點的軟硬件研究與設計,以及現(xiàn)場測試的數(shù)據(jù)表明,該系統(tǒng)設計方案符合設計要求,成功實現(xiàn)功圖采集等功能,為油田生產(chǎn)信息系統(tǒng)的核心服務 “功圖量油”、“示功圖診斷”提供了數(shù)據(jù)基礎,對于提高數(shù)據(jù)采集和傳輸?shù)目煽啃跃哂袑嶋H的工程意義。
[1]李海峰,李訓銘,顏志軍.ZigBee技術在油井功圖和電流圖同步上的應用研究[J].工業(yè)控制計算機,2011(1):37-38,40.LI Hai-feng,LI Xun-ming,YAN Zhi-jun. ZigBee on synchronization between oil well’s indicator diagram and electroretinogram[J].Industrial Control Computer,2011 (1):37-38,40.
[2]李建中,高宏.無線傳感器網(wǎng)絡的研究進展[J].計算機研究與進展,2008,45(1):1-3.LI Jian-zhong,GAO Hong.The research progress of wireless sensor network[J].Computer Study and Progress Computer,2008,45(1):1-3.
[3]博訊科技.Jennic軟件開發(fā)人員指南 (JN51XX)[Z].北京:博訊科技,2008:4-5.
[4]NXP.JN-RM-201-BOS-Operating-System-3v1 [Z].NXP,2008.
[5]NXP.JN-UG-3017-ZigBeeStackUserGuide-1v6 [Z].NXP,2008.
[6]馬苗苗.無線傳感器網(wǎng)絡在油田中的應用研究 [D].黑龍江:東北石油大學,2010.
[7]崔光照,陳富強,張海霞,等.基于無線傳感器網(wǎng)絡的油井遠程監(jiān)控系統(tǒng)設計[J].通信技術,2008,41(1):11-12.CUI Guang-zhao,CHEN Fu-qiang,ZHANG Hai-xia,et al.Design of oil well remote monitoring system based on wireless sensor network[J].Communication Technology,2008,41(1):11-12.