ZigBee無線傳感器網(wǎng)絡技術在油田信息采集系統(tǒng)中的應用
摘要:本文基于ZigBee無線通訊組網(wǎng)技術,以iennic5139為控制核心,構建了適合油田信息采集的無線傳感器網(wǎng)絡給出了傳感器節(jié)點與中轉(zhuǎn)節(jié)點的硬軟件設計。提出了一種組網(wǎng)靈活、成本低、維護方便的解決方案。
本文引用地址:http://www.ex-cimer.com/article/201610/306798.htm隨著“數(shù)字油田”建設的不斷推進,油田信息化建設得到了很大發(fā)展。各種生產(chǎn)信息系統(tǒng)的建立極大地方便了技術人員的日常工作,提高了安全生產(chǎn)的效率。數(shù)據(jù)自動化采集、信息處理將是建設“數(shù)字油田”乃至“智能油田”的必然趨勢。近些年,各種無線傳感器網(wǎng)絡和無線傳輸技術發(fā)展日趨成熟,為油田信息系統(tǒng)建設提供了又一種行之有效的技術手段。
無線傳感器網(wǎng)絡(Wireless Sensor Network,WSN)技術是利用布置在無人值守的監(jiān)控區(qū)域內(nèi)具有通信和運算能力的傳感器節(jié)點,自主完成對檢測對象的信息采集、感知等指定任務的技術。無線傳感器網(wǎng)絡是集傳感器技術、通信技術、嵌入式計算和分布式處理技術為一體,特別適合于油田點多面廣的應用場合。
1 系統(tǒng)網(wǎng)絡結(jié)構
以油田A為例,需為生產(chǎn)設備相對集中的“井群”設計無線傳輸方案。如圖1,湖灘分布著69口油井(淺黃色標記)和21口注水井(深綠色標記)。
針對現(xiàn)場需求和ZigBee無線傳感器網(wǎng)絡技術,考慮將溫壓儀、示功儀、雙壓儀節(jié)點作為“終端(End Device)”,負責采集信息以監(jiān)控油田生產(chǎn)設備,用電池供電;中轉(zhuǎn)節(jié)點作為“路由(Router)”轉(zhuǎn)發(fā)網(wǎng)絡中的信息;“協(xié)調(diào)器(Co-ordinator)”則安裝在各區(qū)塊的平臺上,并通過終端機與隊部中控室通信。路由和協(xié)調(diào)器均由市電供電。這樣就將5個油井區(qū)塊劃分為5個協(xié)調(diào)器短地址不同的ZigBee網(wǎng)絡。主站(協(xié)調(diào)器)負責啟動網(wǎng)絡,所有終端通過路由接入網(wǎng)絡,組成樹狀或網(wǎng)狀結(jié)構。上位機通過主站及其網(wǎng)絡便可實現(xiàn)命令的下發(fā)和數(shù)據(jù)的讀取。
通過Google Earth和現(xiàn)場測量,一般油井之間的距離在50米至100米。經(jīng)測試,ZigBee節(jié)點間較大數(shù)據(jù)量(功圖數(shù)據(jù),約為1 KB)的最大穩(wěn)定通信距離在50米左右,距離越遠傳輸效果越差,且通信時節(jié)點傳輸信道之間須盡可能無遮擋。因此可靠傳輸?shù)年P鍵在于“路由”型節(jié)點的合理布置。同時需解決兩個問題:一是因現(xiàn)場比較空曠,要保證“路由”型節(jié)點的安裝位置能提供可靠供電并滿足防汛要求;二是在軟件設計上,經(jīng)過“路由”型節(jié)點透明傳輸?shù)臄?shù)據(jù)一旦丟失,則無法通過協(xié)議棧捕獲,而必須在數(shù)據(jù)接收端由上位機來判斷。
基于上述考慮,溫壓儀、示功儀、雙壓儀作為“終端”節(jié)點,中轉(zhuǎn)節(jié)點由原來的“路由”節(jié)點改為“協(xié)調(diào)器”,并與電量儀一起安裝在油井平臺的電機控制柜中。即每個油井平臺使用(或多個共用)一個中轉(zhuǎn)節(jié)點,每個中轉(zhuǎn)節(jié)點即代表一個獨立的個人局域網(wǎng)(PAN),其附近的終端型節(jié)點為其子節(jié)點。中轉(zhuǎn)節(jié)點又作為網(wǎng)關,以433 MHz無線方式與主站(433 MHz數(shù)傳模塊)進行通信,當然5個區(qū)塊的433 MHz頻道各不相同,每個區(qū)塊作為一個獨立的網(wǎng)絡,各網(wǎng)絡間互不干擾。
基于Zigbee無線傳感器網(wǎng)絡的智能油田信息采集系統(tǒng)網(wǎng)絡結(jié)構如圖2所示。
2 系統(tǒng)硬件設計
2.1 傳感器(終端)節(jié)點
綜合節(jié)點設計的各種需求,選擇Jennic的JN5139模塊作為節(jié)點的主控芯片,它是一款適用于IEEE802.15.4和ZigBee應用環(huán)境的低功耗、低成本微控制器,集成了32位RISC處理器(32MIPS)、2.4 GHz IEEE802.15.4無線收發(fā)器、192 kBROM、96kB RAM以及豐富的模擬數(shù)字外圍接口。節(jié)點硬件結(jié)構如圖3所示。
傳感器模塊包括傳感器和信號調(diào)制電路,示功儀傳感器為加速度ADXL202和載荷CL—YB—10M/15t,溫壓儀包括溫度PT100和壓力Honey well C13L型傳感器,雙壓儀的壓力傳感器同樣選擇Honeywell C13系列。“示功儀采集的載荷”(或壓力)、“溫壓儀采集的溫度和壓力”以及“雙壓儀需要采集的壓力”對應的四種傳感器的原理基本相同,基本電路都是帶有特殊(熱敏或壓敏)電阻的電阻橋,由物理量變化引發(fā)電阻變化,導致電路輸出電壓的變化,輸出電壓視傳感器從幾毫伏到上百毫伏不等。JN5139芯片帶有4路12位ADC通道,對應的模擬電壓值范圍為0~2.4 V。傳感器到芯片ADC引腳之間用運算放大器對電壓信號進行放大,合理調(diào)節(jié)放大倍數(shù),使得運放輸出的電壓在2.2 V左右,即留有一定裕量。時鐘模塊選用DS1302芯片,根據(jù)其時間值,程序發(fā)起采集和記錄數(shù)據(jù)。電源模塊也視節(jié)點而不同——終端節(jié)點包括4 000 mAh鋰電池、太陽能板及其充電電路。
2.2 中轉(zhuǎn)節(jié)點
中轉(zhuǎn)節(jié)點配有與傳感器節(jié)點相同的主控芯片,具有IEEE802.15.4協(xié)議規(guī)定的所有功能與特性,負責建立網(wǎng)絡、管理傳感器節(jié)點、儲存?zhèn)鞲衅鞴?jié)點信息,為消息進行路由選擇等功能。另外增加無線串口通信模塊與管理控制中心進行通信,中轉(zhuǎn)節(jié)點硬件結(jié)構如圖4所示。
中轉(zhuǎn)節(jié)點通過電量儀設備讀取電機的電參量,由AC220V供電,433 MHz串口透傳模塊使用SM55D無線串口通信模塊。與電量儀采用RS485接口進行數(shù)據(jù)通信。JN5139模塊有兩路UART接口,故將中轉(zhuǎn)節(jié)點JN5139模塊的UART1通過UART—RS485接口芯片與電量儀RS485接口相連。
3 系統(tǒng)軟件設計
系統(tǒng)軟件主要包括傳感器節(jié)點軟件設計、中轉(zhuǎn)節(jié)點軟件設計和管理控制中心軟件設計3部分。傳感器節(jié)點主要實現(xiàn)數(shù)據(jù)的采集和發(fā)送;中轉(zhuǎn)節(jié)點一方面負責網(wǎng)絡的配置和管理,另一方面收集各個傳感器節(jié)點發(fā)送的數(shù)據(jù),將數(shù)據(jù)處理后轉(zhuǎn)發(fā)給管理控制中心。管理控制中心主要實現(xiàn)數(shù)據(jù)的儲存、實時顯示及數(shù)據(jù)分析與管理等功能。
3.1 傳感器節(jié)點軟件
傳感器節(jié)點程序的主要任務分為“采集數(shù)據(jù)”和“網(wǎng)絡響應”,前者是按照給定的時間間隔定時采樣,后者則包括“無線數(shù)據(jù)協(xié)議命令響應”和“ZigBee網(wǎng)絡協(xié)議棧事件處理”(包括入網(wǎng)、掉網(wǎng)等),采用中斷處理方式??紤]片上系統(tǒng)(SOC)的單任務特性,可以將節(jié)點程序設計成“任務檢查制”——每次從休眠中醒來,初始化后,判斷是否要進行網(wǎng)絡響應,或根據(jù)時鐘時間判斷是否有采集任務,若空閑則進入休眠,休眠一定時間間隔后再次被喚醒,如此反復。
為了能采用使節(jié)點功耗更低的無內(nèi)存駐留的休眠方式,因此將一些重要的參量保存在flash中,并在初始化中重新加載。終端節(jié)點的軟件框架流程圖如圖5所示。
3.2 中轉(zhuǎn)節(jié)點軟件設計
中轉(zhuǎn)節(jié)點的任務相對簡單,只需處理觸發(fā)的協(xié)議棧事件、接收和處理“網(wǎng)絡消息”。“網(wǎng)絡消息”分為來自串口透明傳輸設備的一級網(wǎng)絡命令和來自二級ZigBee網(wǎng)絡的消息。電量儀的處理包含在“命令解析與轉(zhuǎn)發(fā)”環(huán)節(jié)中。中轉(zhuǎn)節(jié)點沒有休眠,是不間斷工作的,其軟件設計流程圖如圖6所示。
中轉(zhuǎn)通過433 MHz串口透明傳輸模塊“SM55D”接收來自上位機的命令,“SM55D”會將接收的字符提供給JN5139模塊的串口(UART)0,可利用串口0的中斷處理解析節(jié)點命令。
串口0設置為每接收一個字符便進行中斷,在中斷處理中將字符添加至緩沖區(qū),待緩沖區(qū)中的字符達到解析長度的下限值時,根據(jù)命令中的節(jié)點號和功能碼查表獲得對應命令的指定長度S(包括CRC校驗碼);若字符總數(shù)N等于S,根據(jù)“網(wǎng)絡號”進行判斷,若非本PAN節(jié)點的命令,則不作任何處理,立即返回;否則進行CRC校驗,對于校驗通過的命令,查找表格對子節(jié)點進行地址映射,再進行下一步操作。中斷處理流程圖如圖7:
從圖7中可以看到“CRC16校驗失敗”、“子節(jié)點未注冊”、“命令下發(fā)失敗”三種特殊情況(若下發(fā)設置命令成功后,也會有特殊返回信息ACK0)發(fā)生后,中轉(zhuǎn)均通過發(fā)送特殊ACK信息對上位機進行反饋,便于設備的調(diào)試。對于ZigBee子節(jié)點設備,命令是否下發(fā)成功,中轉(zhuǎn)節(jié)點可通過ZigBee協(xié)議事件獲取;對于電量儀設備,根據(jù)其數(shù)據(jù)傳輸協(xié)議,所有命令都應有數(shù)據(jù)返回,可在命令下發(fā)的同時,啟動定時器,若規(guī)定時間內(nèi)無正確數(shù)據(jù)返回,則認為命令下發(fā)失敗。
3.3 管理控制中心軟件設計
上位機只需按照節(jié)點的數(shù)據(jù)傳輸協(xié)議向串口寫入字符,即可實現(xiàn)命令發(fā)送。節(jié)點的網(wǎng)絡號和節(jié)點號,可從數(shù)據(jù)庫中相應的配置表讀出。上位機程序利用時鐘驅(qū)動,對每個通信區(qū)塊的節(jié)點輪流下發(fā)命令并解析數(shù)據(jù),每30分鐘進行一次。
在對子節(jié)點下發(fā)命令后,即偵聽對應串口,解析其433MHz模塊接收到的字符,根據(jù)起始/終止符“0x7E”提取數(shù)據(jù),找到數(shù)據(jù)中字符0x 7D”并拋除,并對其后的字符進行轉(zhuǎn)義,即再與“0x20”按位異或。對得到的數(shù)據(jù)包進行CRC16校驗,校驗通過后的數(shù)據(jù)按節(jié)點類型進行數(shù)據(jù)解析和相應操作。操作流程圖如圖8所示。
4 結(jié)束語
通過傳感器節(jié)點、中轉(zhuǎn)節(jié)點組建的無線傳感器網(wǎng)絡,實現(xiàn)了油田生產(chǎn)信息的采集、傳輸與處理。適應了油田點多面廣的應用需求,同時也降低了組網(wǎng)、部署和維護成本。作為油田生產(chǎn)信息系統(tǒng)數(shù)據(jù)獲取的一種有效技術手段,無線傳感器網(wǎng)絡具有很好的應用前景。
評論