摘 要:為實現礦井環境的遠程在線實時監測,設計礦井環境突變預警系統,對其現場監測終端及無線網絡進行詳細設計。該系統以 CC2530 射頻模塊組成簇狀無線傳感器網絡,由CC2530的終端節點采集溫濕度值、瓦斯濃度、粉塵濃度等環境參數,直接或經路由器傳遞到協調器,再由協調器經RS 232串口上傳至PC 機,上位機采用LabVIEW監控軟件實時顯示、記錄,并對參數進行判斷,判斷結果利用點播通信方式反饋到采集節點,并實現聲光報警或控制其他機械運作以避免人財損失。測試結果表明,該系統具有成本低、組網靈活、測量精度高和實用性強等優點,可以實現礦井環境突變的預警作用。
關鍵詞:傳感器;ZigBee;CC2530;無線監測;LabVIEW
中圖分類號:TP277 文獻標識碼:A 文章編號:2095-1302(2018)09-00-05
0 引 言
煤礦瓦斯事故的有效預防和控制是當今世界面臨的共同難題。近年來,煤礦的安全形勢仍然比較嚴峻,重大特大瓦斯事故時有發生,礦井作業具有的較高危險性與不確定性使得設計一套礦井環境突變預警系統尤為重要[1]。早期的監控系統需要在井下敷設通信線路傳遞監測信號,煤層地質構造的不確定性及機械作業的推進使得通信線路的鋪設難度增加,維護困難,一旦通信電纜發生故障,將導致整個安全監測系統癱瘓,嚴重影響系統的可靠性[2-4]。無線通信中,ZigBee技術具有低成本、短時延、低功耗、可靠性高等優點[5],因此本文系統采用TI公司設計生產的CC2530 射頻模塊組成簇狀無線傳感器網絡,由CC2530的終端節點采集溫濕度值、瓦斯濃度、粉塵濃度等環境參數,直接或經路由器傳遞到協調器,再由協調器經RS 232串口上傳給上位機,由上位機提供預警功能。因此,隨著井下采煤作業的推進,只需往巷道上放置一個或多個采集節點,加入無線網絡,就能采集井下環境數據,起到實時預警的作用。
1 系統的網絡架構
礦井環境突變預警系統按照數據流可以分為三層:
(1)第一層,終端節點(ZigBee協議棧中定義為end_device)采集溫濕度數值、瓦斯濃度、粉塵濃度等參數,在設計中定義一個數據包長度為18 bit,因此單個節點就能采集3種以上的傳感器數據,為兼顧實時性,目前單個節點采集1種信號;
(2)第二層,終端節點通過ZigBee協議棧將采集到的數據發送給路由器或者直接送至協調器,為避免ZigBee網絡中路由過多造成廣播通信方式下的網絡風暴,協調器與路由器、終端節點間采用多點對一點的點播通信方式,并能適應井下采煤作業的推進形成簇狀路由路徑,增強了無線信號的范圍,新節點也容易加入網絡;
(3)第三層,協調器通過讀取子節點網絡地址,并按此地址將數據匯總、整理,通過RS 232串口發送給上位機,上位機上的LabVIEW將數據進行可視化處理,完成預警系統的分析與顯示,分析的結果再由協調器通過點對點的方式進行回饋,實現對終端節點的控制。
無線監測系統網絡拓撲框架如圖1所示。
2 硬件電路設計
本文系統中的協調器、路由器和傳感器節點三種設備都以TI 公司的ZigBee SoC(片上系統)單片機 CC2530F256 芯片為核心進行設計。芯片內部集成了一個高性能2.4 G RF收發器,8051 內核,8 kB RAM 和最多高達256 kB的閃存,CC2530F256 結合德州儀器業界領先的黃金單元ZigBee 協議棧[6](Z-StackTM),提供了一個強大、完整的ZigBee 解決方案,數據的采集、發送都在協議棧的基礎上進行開發,因此體積小,抗干擾能力強。由于協調器、路由器和傳感器節點功能不同,所需硬件電路不同,所以分別進行設計。
2.1 路由器/協調器節點設計
CC2530 采用一體化集成射頻前端設計,實現單芯片ZigBee方案。模塊采用2.4 GHz ZigBee專用無線頻段,因此模塊上提供一個BNC天線接口 CN1和一個內置在PCB電路板上的倒F天線,射頻電路如圖2所示。由于 CC2530天線輸出是特征阻抗為(69+j29)Ω的平衡天線信號,而本系統采用的天線為50 Ω,7 dBi 的全向非平衡天線,故圖2中 L1,L2,C5,C13 構成巴倫[7],進行射頻信號的平衡到非平衡轉換的同時進行阻抗轉換。電路中C10,C11用于抵消CC2530輸出的感性分量和PCB板寄生電感,C6將巴倫和天線進行耦合。系統采用32 MHz的晶振頻率,以提高芯片的響應速度。C12,C14是負載電容,除此之外,電源VCC與地之間增加了去耦電容,以此減少電源波動的干擾。CC2530芯片有1個串口輸出即UART0,用于和計算機配合使用傳輸數據。
路由器用來擴展網絡通信范圍,協助傳感器節點和協調器之間的通信,由于簇狀網絡拓撲可周期性工作,因此可采用電池供電;而協調器負責啟動和配置網絡,這些工作完成后就相當于路由器,協助網絡內的傳感器節點和PC機相互通信,并采用UPS電源供電。
2.2 傳感器采集節點設計
傳感器采集節點設置在采煤、煤巷掘進工作面上,隨著采煤作業的推進,傳感器節點也及時布置。
溫濕度的采集利用AOSONG的AM2305A第三代數字溫濕度傳感器[8-9],采用專用的數字模塊采集技術和溫濕度傳感技術,確保數據采集的高可靠性和長期穩定性。傳感器內部包括1個電容感濕元件和1個高精度測溫元件,并與1個高性能8位單片機相連接。金屬燒結鋁管探頭可探測高達125℃的高溫,具備防爆功能,采用單總線通信方式,靈敏度高。其主要參數如下:
溫度量程: -40~125℃;
濕度量程:0~99.9%RH;
溫度精度:±0.3℃;
濕度精度:±2 %RH;
分辨率:0.1℃/0.1 %RH;
衰減值:溫度<0.1°,濕度< 1 %RH;
響應時間:1/e(63%)<5 s;
采樣周期:2 s,采用5 V電源供電。
由于AM2305A采用單總線結構,所以只需一條SDA線與CC2530單片機的P2_0連接,如圖2所示,接上電源VDD和GND,就完成了對應的硬件設計。溫濕度偏差特性曲線和溫濕度傳感器的外形如圖3所示。
在煤礦生產過程中,隨著煤層采動,煤層中往往會涌出礦井瓦斯,與空氣混合,當其體積百分比為5%~16%時,遇明火就會發生爆炸,給礦井的安全生產帶來巨大威脅。瓦斯傳感器應垂直懸掛在巷道上方風流穩定的位置,距頂板(頂梁)不得大于300 mm,距巷道側壁不得小于200 mm,并應安裝維護方便,不影響行人和行車。為保障測量精度,選擇中煤工礦的KGJ16B型瓦斯傳感器,其原理是利用可燃氣體在催化劑的作用下進行無焰燃燒,產生熱量,使元件電阻因溫度升高而發生變化,從而測知瓦斯濃度,用于檢測煤礦井下空氣中的瓦斯含量。其主要參數如下:
防爆形式:礦用隔爆兼本質安全型;
測量范圍:0~4%的CH4;
響應時間:小于20 s;
報警點:0.3%~4.00%的CH4閾值可任意設置;
輸出信號:電流為1~5 mA,負載電阻為0~500 Ω,供電電壓為9~24 V。
鑒于CC2530自帶12位A/D轉換器,實現對采樣數據的模數轉換,用DMA將轉換結果寫入存儲器,并通過電橋補償方式測定對應的瓦斯濃度。
測量井下粉塵使用PM100空氣質量檢測儀——SDS198粉塵灰塵傳感器,其外觀如圖3(d)所示。該傳感器使用激光散射原理,能夠得到空氣中1~100 μm懸浮顆粒物濃度,使用激光器和感光部件,數據穩定可靠,并直接以數字化形式輸出。主要參數如下:
測量輸出:全程PM100,量程為0~20 mg/m3;
工作電壓:5 V;
最大工作電流:120 mA;
響應時間:<6 s;
串口數據輸出頻率:1 Hz;
靈敏度:1 μg/m3;
與CC2530單片機進行串口數據上傳,波特率為9 600 b/s,8位數據,1位停止位,無檢驗位;
串口上報通信周期:1.2 s;
數據幀(10 B):報文頭+指令號+數據(6 B)+校驗和+報文尾。
由于采用串口通信,接口中的RXD,TXD與CC2530單片機的17,16腳對應腳相連即可,同時兩個模塊的GND信號相連。
為了方便查看采集端的運行狀態,每個終端均配有OLED顯示屏,對采集到的環境信息進行現場實時顯示,其與CC2530的接線如圖2所示,主要由P1口的相關引腳實現控制。
3 系統的軟件設計
ZigBee 無線網絡的實現建立在ZigBee協議棧的基礎上。協議棧采用分層結構,本文設計主要對硬件抽象層(Hardware Abstract Level,HAL) 和用戶應用層(Application,APP) 進行編寫修改。首先按照傳感器外圍的硬件接口在 hal_board_cfg.h 文件中修改相應接口,以對應實際硬件需求;然后通過用戶任務處理函數添加以下處理事件:按鍵觸發事件KEY_CHANGE,接收數據事件AF_INCOMING_MSG_CMD,設備狀態變化事件ZDO_STATE_CHANGE。系統啟動時,終端節點判斷網絡狀態,若未加入當前網絡,則申請加入。加入網絡成功后給出相應提示:調用 HAL_TOGGLE_LED1(),LED 閃亮。在工作狀態,終端節點實時檢測狀態變化,即觸發接收數據事件,進而調用消息發送函數 SampleApp_SendFlashMessage(),在消息發送函數中根據具體的觸發類型做出相應判斷,從而向協調器發送相應消息,完成終端節點將傳感器數據向協調器的發送。協調器部分則通過數據接收事件 AF_INCOMING_MSG_CMD 的觸發進入消息處理函數 SampleApp_ MessageMSGCB(),依據接收的數據類型向上位機發送相應數據,完成對應事件的處理。
由于每個節點利用一塊單片機實現,因此在代碼中采用統一的封裝形式。每個節點的數據包可使用一個結構體實
現[10],其中包含數據包的前導字符、后導字符,此外還包含該節點的設備類型、節點的網絡地址、采集日期的時間信息以及所采集到的傳感器數據、節點的剩余電量。以采集的溫度為例,數據包的格式定義見表1所列。
數據前導字符與后導字符均使用一個字符“*”表示。設備類型一般為路由器ROU或終端END,簡寫成R/E;子節點網絡地址通過函數nwk=NLME_GetShortAddr()得到,用于區分對應節點是否正常工作。采集日期時間信息占用6位,采用BCD碼的壓縮格式傳輸,便于歷史信息查閱及繪制動態圖。傳感器數據按照采樣得到的數據進行填充,如溫度數據可寫為W23°,表示溫度為23 ℃,濕度數據可寫為H35,表示濕度為35%RH,瓦斯濃度含量用S124表示,粉塵濃度用PM23表示等,節點電量利用CC2530自帶的ADCCON3對正電源參考電壓進行采樣判定,便于掌握節點的工作耗能情況。數據包的聯合體C語言表示如下:
溫濕度傳感器AM2305A采用單總線接口,需要用I/O口模擬SDA信號。瓦斯傳感器中瓦斯的無焰燃燒使元件電阻因溫度升高而發生變化,導致電阻不同,經過信號調理電路得到對應電壓,再通過CC2530的A/D(模數轉換)進行轉換得到數據。粉塵傳感器通過串口將采集到的數據傳送給CC2530,這些需要通過編程實現,并將得到的數據填充在數據包的傳感器數據部分。上述數據包幀格式中,如果不需要提供歷史查詢功能,采集日期時間信息的6個字節單元可以用于其他傳感器數據的填充,如果不需查驗終端節點設備是否正常工作,子節點網絡地址的4個字節也可以應用于數據采集。
3.1 協調器軟件設計
協調器的主要功能[11-12]為:發送數據采集命令至終端,接收終端節點或者路由器轉發過來的傳感器數據,將傳感器數據上傳至上位機PC。在代碼實現方面,協調器根據afIncomingMSGPacket_t中的事件判斷當前是按鍵狀態改變、無線數據輸入還是網絡狀態發生變化,并做出相應的動作。如果是無線數據輸入,調用協議棧存儲函數osal_memcpy(),將接收到的數據存儲在內存中,并將存儲的數據通過串口上傳至上位機,具體代碼如下所示。協調器節點工作流程如圖4所示。
3.2 終端節點的軟件設計
終端節點根據系統指令采集溫濕度值、瓦斯濃度、粉塵濃度,其具體流程如圖5所示。
終端節點上電初始化,搜索無線網絡。若搜尋到網絡,則請求加入該網絡[13-15]。加入無線網絡后轉入低功耗模式,等待協調器發出指令喚醒。當接收到來自協調器的數據采集命令后,節點被喚醒,接著讀取傳感器數據,并將數據發送至協調器。若協調器無應答,則需要發送問詢信號,與協調器確保通信成功后再次進入低功耗模式,以此減少功耗,使節點維持更長的工作時間。
3.3 上位機LabVIEW的軟件設計
上位機軟件設計是為了實時查看礦井環境數據,并做出分析處理[16-17]。在VI設計界面,調出三幅實時波形圖,用于繪制歷史數據,數值顯示端口用于顯示溫濕度數據、瓦斯濃度數據、粉塵濃度數據,上位機通過開關按鍵給終端節點發送命令,終端狀態也通過狀態欄進行信息顯示。為了實現預警功能,三類數據都設置上下限,如果越限,實時報警。在與協調器進行通信時,串口的波特率為9 600 b/s,8位數據,無檢驗位,1位停止位。為實現數據存儲,數據庫管理操作需要對多個子虛擬儀器進行設置,主要包括參數設置、修改設備、修改測量點信息、顯示模塊的信息和測量點的數據狀態參數等。上位機LabVIEW的軟件界面如圖6所示。
4 結 語
本文以CC2530 射頻模塊組成簇狀無線傳感器網絡,由CC2530的終端節點采集到礦井的溫濕度值、瓦斯濃度、粉塵濃度等環境參數,直接或經路由器傳遞到協調器,再由協調器經RS 232串口上傳至PC 機的上位機LabVIEW,實現礦井環境數據的實時顯示、記錄、分析,并實現聲光報警或控制其他機械運作以避免人財損失。實際測試表明,該系統具有成本低、組網靈活、測量精度高和實用性強等優點,可以實現礦井環境突變的預警作用。該作品在2017中國南通文化創意設計大賽——產品設計大賽中榮獲優秀獎。
參考文獻
[1]陳斯,趙同彬,高建東,等.基于ZigBeePRO的礦井瓦斯無線監測系統[J].煤炭技術,2011,30(9):110-112.
[2]牛春雷,楊維.瓦斯監測層次型無線傳感器網絡拓撲控制機制[J].煤炭科學技術,2009,37(9):100-103.
[3]孫振偉,王春艷.基于無線傳感器網絡的礦用瓦斯監控系統[J].儀器儀表用戶,2010,17(2):17-19.
[4]鄭萬成,楊勝強,于寶海.煤與瓦斯突出事故預警系統的研究與應用[J].煤炭技術,2009,28(1):7-9.
[5]莊華勇,伍川輝.基于ZigBee的高速動車組車內溫濕度監測系統設計[J].中國測試,2013,39(2):85-88.
[6] Texas Instruments.CC2530 Datasheet[EB/OL]. [2010-05-03].http://www.ti.com.cn/
[7]閆明明,郭濤,鮑愛達.基于ARM的無線溫度傳感器網絡設計[J].實驗室研究與探索,2014,33(3):105-109.
[8]鄭權,劉增力,劉增強.ZigBee 煤礦溫濕度監測系統的精確度研究[J].煤礦機械,2016,37(3):160-162.
[9]李雪峰.多傳感器數據融合技術在家庭安防系統中的應用[J].現代電子技術,2016,39(12):32-36.
[10]王小強,歐陽駿,黃寧淋,等.ZigBee無線傳感器網絡設計與實現[M].北京:化學工業出版社,2012.
[11]李愛民,張峰.基于ZigBee/GPRS的溫濕度智能監測系統實現[J].農機化研究,2015(3):108-111.
[12]康冰,林智遠,汪鵬,等.基于ZigBee的靜脈注射智能遠程監控系統[J].吉林大學學報(信息科學版),2016,34(2):186-191.
[13]齊林,韓玉冰,張小栓,等.基于WSN的水產品冷鏈物流實時監測系統[J].農業機械學報,2012,43(8) :134-140.
[14]周湶,馬小敏,陳偉根,等.基于ZigBee和零序電流增量法的配網單相接地故障定位方法[J].電力系統保護與控制,2012,40(9):62-68.
[15]許童羽,王建東,須暉,等.基于ZigBee與WiFi的北方日光溫室群監控系統設計[J].中國農機化學報,2016,37(1):59-64.
[16]包雪梅,任小洪,王丹,等.基于ZigBee和 LabVIEW的數控機床振動信號分析采集系統設計[J].自動化與儀器儀表,2016(3):75-77.
[17]王勝賢,高天生.基于ZigBee和GPRS的電梯遠程監控系統的設計[J].測控技術,2016,35(3):149-151.