袁紅春, 汪 辰, 梅海彬
(上海海洋大學 信息學院,上海 201306)
一種適用于近海環(huán)境監(jiān)測的WSNs節(jié)點設(shè)計方法*
袁紅春, 汪 辰, 梅海彬
(上海海洋大學 信息學院,上海 201306)
針對傳統(tǒng)近海環(huán)境監(jiān)測無線傳感器網(wǎng)絡(luò)(WSNs)節(jié)點存在開發(fā)成本高、可擴展性差、通信距離短等不足,提出了一種基于開源Arduino軟硬件平臺,設(shè)計近海環(huán)境監(jiān)測WSNs節(jié)點的方法。方法依據(jù)近海環(huán)境監(jiān)測的實際需求,首先對傳感器節(jié)點的微控制板進行了選型與定制,并給出了節(jié)點總的功能模塊設(shè)計框架;然后對節(jié)點軟硬件設(shè)計中涉及的節(jié)點供電優(yōu)化、多種通信機制的融合、長距離通信等關(guān)鍵問題提出了相應(yīng)的解決方案。實際應(yīng)用結(jié)果表明:設(shè)計的節(jié)點所構(gòu)建的WSNs,能實現(xiàn)連續(xù)實時采集監(jiān)測區(qū)域的多種環(huán)境要素,并將數(shù)據(jù)穩(wěn)定可靠地上傳至服務(wù)器,傳感器網(wǎng)相鄰節(jié)點的通信距離可長達1 000 m以上。所設(shè)計的WSNs節(jié)點具有開發(fā)成本低、接口豐富、可擴展性強、組網(wǎng)簡單等特點,節(jié)點除滿足近海環(huán)境監(jiān)測實時獲取數(shù)據(jù)的功能需求外,還可以應(yīng)用到淡水的實時環(huán)境監(jiān)測,具有較好的應(yīng)用前景。
近海環(huán)境監(jiān)測; 無線傳感器網(wǎng)絡(luò)節(jié)點; Zig Bee; Arduino
海洋環(huán)境監(jiān)測,特別是實時的近海環(huán)境監(jiān)測,對合理利用海洋、保護海洋資源、海洋災(zāi)害預(yù)警等研究有著極其重要的意義。利用無線傳感器網(wǎng)絡(luò)(wireless sensor networks,WSNs)進行海洋環(huán)境監(jiān)測,易實現(xiàn)監(jiān)測數(shù)據(jù)的實時性、長期性、可靠性、網(wǎng)絡(luò)化與智能化等功能需求[1]。目前在海洋環(huán)境監(jiān)測的WSNs節(jié)點設(shè)計上主要采用的方法有兩種:一種是直接使用國外的MicaZ或TelosB節(jié)點,如中國海洋大學和香港科技大學合作進行的Ocean Sense[2]項目中傳感器節(jié)點采用的是TelosB節(jié)點,該項目是通過WSNs采集青島嶗山灣附件海域海洋環(huán)境信息;另一種是在TI公司CC2430或CC2530芯片上自行設(shè)計[3,4],如文獻[5]針對海岸、海洋環(huán)境遠程實時監(jiān)測的需要,設(shè)計了由超低功耗微處理器(MCU)芯片MSP430F1611、無線收發(fā)器芯片CC2420及各種傳感器接入電路構(gòu)成的具有多種環(huán)境參數(shù)采集功能的WSNs節(jié)點。兩種方法均采用常規(guī)設(shè)計的WSNs節(jié)點之間百米級的通信距離,但由于海洋區(qū)域廣闊,不可能像陸地上那樣密集部署大量的傳感器節(jié)點,所以,還不能完全滿足近海環(huán)境監(jiān)測的實際需求。
本文在綜合分析近海環(huán)境監(jiān)測的實際需求基礎(chǔ)上,提出了一種適用于近海環(huán)境監(jiān)測的WSNs節(jié)點的設(shè)計方法。方法基于Arduino[6]開源的軟硬件電子平臺,該平臺硬件上具有高可擴展性,軟件上具有豐富的源代碼庫可供使用的優(yōu)勢。實際應(yīng)用表明:該WSNs節(jié)點具有開發(fā)方便、接口豐富、可擴展性強、運行穩(wěn)定、組網(wǎng)簡便且傳輸可靠等特點,較傳統(tǒng)方法更具有科研與實際應(yīng)用價值。
一個適用于近海環(huán)境監(jiān)測的WSNs體系結(jié)構(gòu)如圖1所示。這是一個層次型網(wǎng)絡(luò)結(jié)構(gòu),感知層采用Zig Bee通信技術(shù)來構(gòu)建WSNs,是由部署在近海環(huán)境監(jiān)測區(qū)域內(nèi)的多個浮標組成,浮標上裝載WSNs節(jié)點和供電模塊,完成大面積近海海域生態(tài)環(huán)境及其水文氣象等背景參數(shù)的實時的采集、存儲與轉(zhuǎn)發(fā)。網(wǎng)絡(luò)層將來自感知層采集到的近海環(huán)境參數(shù)通過GPRS傳輸?shù)綌?shù)據(jù)中心的服務(wù)器上,并通過GSM網(wǎng)傳輸控制中心發(fā)出的各種參數(shù)配置和控制命令。應(yīng)用層主要對服務(wù)器中的數(shù)據(jù)進行分析和預(yù)測及展示,并可對近海自然災(zāi)害如海浪、風暴潮、赤潮等進行有效的預(yù)報預(yù)測。
圖1 近海環(huán)境監(jiān)測WSNs體系架構(gòu)
近海環(huán)境監(jiān)測WSNs主要由數(shù)據(jù)采集節(jié)點、匯聚節(jié)點組成。整個節(jié)點硬件系統(tǒng)主要分為數(shù)據(jù)采集單元、數(shù)據(jù)處理單元、無線傳輸單元和電源管理4個模塊。數(shù)據(jù)采集單元為多參數(shù)水質(zhì)儀,完成近海多種環(huán)境參數(shù)的實時采集。數(shù)據(jù)處理單元主要由微處理器和外圍的存儲設(shè)備組成。數(shù)據(jù)傳輸單元主要由WSNs中每個節(jié)點配備的Zig Bee通信模塊,主要完成組網(wǎng)和網(wǎng)內(nèi)的數(shù)據(jù)傳輸以及匯聚節(jié)點的無線遠程通信模塊與數(shù)據(jù)中心數(shù)據(jù)的傳輸與控制命令的交互。此外,為了有效地標識WSNs節(jié)點的地理位置信息和完成節(jié)點間的時間同步,本系統(tǒng)在每個節(jié)點上集成了GPS模塊。節(jié)點系統(tǒng)的供電主要采用太陽能獨立光伏電源與蓄電池兼并供電方式。
2.1 硬件結(jié)構(gòu)
采集節(jié)點主要由MCU模塊、無線傳輸模塊、定位模塊以及預(yù)留的多參數(shù)水質(zhì)儀接口組成。MCU模塊是近海環(huán)境監(jiān)測WSNs節(jié)點的控制中心和數(shù)據(jù)處理中心,負責節(jié)點硬件系統(tǒng)的設(shè)備控制、任務(wù)管理、數(shù)據(jù)采集、數(shù)據(jù)存儲和數(shù)據(jù)傳輸?shù)龋琈CU采用Atmel公司的ATmega2560。
在無線傳輸模塊選擇上,由于在近海環(huán)境監(jiān)測中的WSNs節(jié)點之間的距離較遠,因此,無線傳輸模塊采用 Maxstream公司的XBee Pro2模塊[7],它是一種把Zig Bee協(xié)議內(nèi)置Flash模塊里的Zig Bee模塊,具有抗干擾能力強、安全性高、低功耗等特點,且該模塊采用了增強的無線傳輸技術(shù),傳輸距離最高可達1.6 km。采集節(jié)點其他的模塊與節(jié)點硬件基本原理圖如圖2所示。
圖2 節(jié)點硬件系統(tǒng)結(jié)構(gòu)
圖2中,USB接口為了在開發(fā)的過程中方便地對傳感器節(jié)點的電路進行調(diào)試和程序的燒寫,采用ATmega16U2—MU芯片來實現(xiàn)串口轉(zhuǎn)USB的功能;GPS模塊采用GS—92m—J的智能型衛(wèi)星接收模塊,從GPS模塊獲取的信息經(jīng)MCU處理后可得到節(jié)點的經(jīng)緯度和精確時間數(shù)據(jù)。RS—232接口主要用于連接連續(xù)采集近海環(huán)境參數(shù)的多參數(shù)水質(zhì)儀,本設(shè)計采用英國AuqaPlus AP2000多參數(shù)水質(zhì)儀。為了保證整個WSNs數(shù)據(jù)傳輸?shù)目煽啃院秃Q蟊O(jiān)測數(shù)據(jù)存儲的需要,在每個節(jié)點上配備Micro SD卡存儲模塊。
由于設(shè)計的WSNs節(jié)點是應(yīng)用到近海環(huán)境監(jiān)測,在充分考慮性價比基礎(chǔ)上,匯聚節(jié)點采用GPRS無線傳輸技術(shù)實現(xiàn)數(shù)據(jù)遠程傳送功能。其中匯聚節(jié)點的GPRS通信模塊采用SIMCOM公司的SIM900B芯片來實現(xiàn),SIM900B采用工業(yè)標準接口,是四頻的GPRS模塊,其性能穩(wěn)定,功耗低,內(nèi)嵌TCP/IP協(xié)議和HTTP協(xié)議,并且具有RS—232串口可以方便地接入主控制板實現(xiàn)海洋環(huán)境數(shù)據(jù)的遠程可靠傳輸。
2.2 電源管理
本系統(tǒng)的電源管理模塊分為充電管理模塊和雙電源切換管理模塊,充電管理模塊負責對蓄電池進行合理、高效的充電,設(shè)計中采用雙電池組供電方式,保持“一充一供”的工作狀態(tài),雙電源切換管理模塊負責電源的安全、快速切換。
3.1 WSNs節(jié)點通信協(xié)議
WSNs節(jié)點在傳輸數(shù)據(jù)主要有兩種方式,透明傳輸模式和應(yīng)用程序接口(API)傳輸模式。在監(jiān)測系統(tǒng)中選用API模式,API操作要求與模塊通信是通過一個結(jié)構(gòu)化的接口(在數(shù)據(jù)幀的通信數(shù)據(jù)是按照一種定義的順序)API接口定義多種命令,命令響應(yīng)和模塊狀態(tài)信息,這些命令和模塊狀態(tài)信息都是通過UART的數(shù)據(jù)幀進行接收和發(fā)送。圖3是API幀結(jié)構(gòu)格式。
圖3 XBee API幀結(jié)構(gòu)
幀數(shù)據(jù)部分是采集節(jié)點和匯聚節(jié)點通信所要傳輸?shù)目刂泼詈筒杉臄?shù)據(jù)。圖4是各種類型的API幀的幀標識和幀數(shù)據(jù)部分的格式。其中幀標識符0x00是采集節(jié)點向匯聚節(jié)點傳輸數(shù)據(jù)幀,標識符0x17和0x97是遠程AT命令配置幀完成X Bee模塊一些參數(shù)和寄存器的設(shè)置(如圖5、圖6)。
圖4 WSNs 采集節(jié)點與匯聚節(jié)點傳遞的數(shù)據(jù)幀
圖5 遠程AT命令請求幀
圖6 遠程AT命令應(yīng)答幀
3.2 匯聚節(jié)點與數(shù)據(jù)中心通信機制
匯聚節(jié)點將經(jīng)過數(shù)據(jù)融合后的海洋環(huán)境數(shù)據(jù)通過GPRS模塊的HTTP協(xié)議以表單(Form)網(wǎng)頁的形式傳送到數(shù)據(jù)中心的Web Server,數(shù)據(jù)中心Web Server接收到匯聚節(jié)點提交的表單后自動提取數(shù)據(jù),并存入到數(shù)據(jù)庫中,供應(yīng)用層的各種軟件讀取、處理與分析。數(shù)據(jù)上傳流程如圖7。
圖7 匯聚節(jié)點與數(shù)據(jù)中心通信
節(jié)點上的軟件系統(tǒng)開發(fā)采用Arduino IDE 1.0.5平臺,采用該平臺的優(yōu)點在于開源,有大量的源代碼庫可以直接調(diào)用,可大大減輕編程工作量,提高系統(tǒng)的開發(fā)速度。程序采用C語言編寫,增強了程序代碼的可靠性、可讀性和可移植性。
根據(jù)節(jié)點的功能需求,節(jié)點上的軟件系統(tǒng)主要分為以下幾個部分:1)數(shù)據(jù)采集部分:該部分主要利用RS—232串口與多參數(shù)水質(zhì)儀進行通信,向水質(zhì)儀發(fā)送命令和接收水質(zhì)儀采集到的環(huán)境參數(shù),這些參數(shù)一般包括像溫度、pH值、溶解氧等。2)數(shù)據(jù)處理與存儲部分:將從水質(zhì)儀采集過來的數(shù)據(jù),進行分析與格式轉(zhuǎn)換,并按要求進行一定的編碼以便于后續(xù)的傳輸,此外,還將處理后的數(shù)據(jù)存儲到SD卡上為后續(xù)的傳輸做準備。3)數(shù)據(jù)傳輸部分:將存儲的各種環(huán)境數(shù)據(jù),按照服務(wù)器端的要求傳輸給匯聚節(jié)點。4)定位部分:該部分主要從GPS模塊接收數(shù)據(jù),并對接收的數(shù)據(jù)解析算出節(jié)點的經(jīng)緯度信息。圖8(a)為采集節(jié)點的軟件流程圖,圖8(b)為匯聚節(jié)點的軟件流程圖。
圖8 節(jié)點工作流程圖
利用Atium Designer軟件完成了節(jié)點的原理圖設(shè)計與PCB的設(shè)計,經(jīng)過焊接調(diào)試,實現(xiàn)硬件功能。節(jié)點實物圖如圖9所示,圖9(a)為開發(fā)的節(jié)點主控板,圖9(b)為監(jiān)測浮標,主要包括集成了多參數(shù)水質(zhì)儀等模塊的主控板和供電模塊。將傳感器節(jié)點集成好后進行小規(guī)模實驗,本次現(xiàn)場實驗布設(shè)3個WSNs節(jié)點,2個為采集節(jié)點,分別接上多參數(shù)水質(zhì)儀,并分別對其編號為1#,2#。1個為匯聚節(jié)點兼網(wǎng)關(guān)節(jié)點,連接GPRS模塊。
圖9 節(jié)點實物圖
本文只選取了采集的溫度、pH和溶解氧3個參數(shù)為例。表1為隨機選取的某一時間點1#,2#監(jiān)測節(jié)點的環(huán)境監(jiān)測數(shù)據(jù),表明各節(jié)點可以實時獲取溫度、pH、溶解氧和地理坐標等數(shù)據(jù),證明各監(jiān)測節(jié)點上傳服務(wù)器數(shù)據(jù)有效可靠。
表1 某時刻2個監(jiān)測節(jié)點上傳中心服務(wù)器的監(jiān)測數(shù)據(jù)
圖10為隨機選取1#監(jiān)測節(jié)點連續(xù)24 h水域溫度監(jiān)測數(shù)據(jù)動態(tài)曲線,曲線連續(xù)無斷點,證明采集節(jié)點可連續(xù)、穩(wěn)定采集環(huán)境數(shù)據(jù),匯集節(jié)點可連續(xù)轉(zhuǎn)發(fā)1#節(jié)點監(jiān)測的數(shù)據(jù)并上傳至服務(wù)器。
圖10 2014—5—16 1#監(jiān)測節(jié)點24 h溫度變化折線圖
為滿足近海環(huán)境監(jiān)測實時獲取數(shù)據(jù)的功能需求,本文提出了一種基于Arduino開源的軟硬件平臺,適用于近海環(huán)境監(jiān)測WSNs節(jié)點的設(shè)計方法。本文從節(jié)點硬件系統(tǒng)微控制板的選型與定制、節(jié)點總的功能框架、節(jié)點電源管理、多種通信機制的融合、長距離通信、軟件設(shè)計方面都給出了相應(yīng)的設(shè)計方法,實驗表明:本文設(shè)計的傳感器網(wǎng)絡(luò)節(jié)點運行穩(wěn)定可靠、功耗低、精度高、開發(fā)方便、通信距離遠、可擴展性強,特別適用于近海環(huán)境監(jiān)測,同時還可以應(yīng)用到水產(chǎn)養(yǎng)殖的實時環(huán)境監(jiān)測,具有較好的應(yīng)用前景。
[1] 何世鈞,陳中華,張 雨,等.基于物聯(lián)網(wǎng)的海洋環(huán)境監(jiān)測系統(tǒng)的研究[J].傳感器與微系統(tǒng),2011,30(3):13-15.
[2] Guo Zhongwen,Hong Feng,Feng Yuan,et al.OceanSense:Sensor network of realtime ocean environmental data observation and its development platform[C]∥WUWNET,New York:ACM,2008:101-105.
[3] 陳克濤,張海輝,張永猛,等.基于CC2530的無線傳感器網(wǎng)絡(luò)網(wǎng)關(guān)節(jié)點的設(shè)計[J].西北農(nóng)林科技大學學報,2014,42(5):1-6.
[4] 馬 偉.基于無線傳感器網(wǎng)絡(luò)的室內(nèi)定位系統(tǒng)節(jié)點的設(shè)計與實現(xiàn)[D].成都:電子科技大學,2013.
[5] 張 穎,趙曉虎,苗全利,等.基于環(huán)境信息監(jiān)測的無線傳感器網(wǎng)絡(luò)節(jié)點設(shè)計[J].電子設(shè)計工程,2011,12(19):71-74.
[6] Arduino.Arduino Team[EB/OL].(2005—04—28)[2014—05—27]. http:∥www.arduino.cc/.
[7] Digi.Digi XBee Pro[EB/OL].(2008—01—01) [2014—05—27]. http:∥www.digi.com/products/xbee/.
Design method of WSNs node for coastal
environment monitoring*YUAN Hong-chun, WANG Chen, MEI Hai-bin
(College of Information Science,Shanghai Ocean University,Shanghai 201306,China)
Traditional coastal environment monitoring with wireless sensor networks(WSNs)node disadvantage of high-cost,short of expandability,short-distance communication,a design method of WSNs node for coastal environment monitoring based on open Arduino platform is proposed.The method meets the coastal environment monitoring requirements,firstly,selection and customization are carried out on micro control plate of sensor node,as well as the design framework of node function module;then solutions to some key problems in the hardware and software design of sensor node,such as,optimization of power supply,fusion of multiple communication mechanism and long distance communication are given respectively.Practical application result shows that the WSNs constructed by designed node can real time and continuously collect environment in monitoring area,upload to server reliably,communication distance between two adjacent nodes can reach 1000m at most.The designed WSNs node functioned well with low cost of development, rich interfaces,strong scalability,concenient networking,the sensor node not only satisfies real time acquisition requirement of data acquiring of coastal environment observation,but also apply to real time environment monitoring of freshwater,it has a wide application prospect.
coastal environment monitoring; wireless sensor networks(WSNs) node; Zig Bee; Arduino
2014—08—11
上海市科委科研計劃重點支撐資助項目(1251050200) ;上海市科委支撐資助項目(1439190400);國家自然科學基金資助項目(61272098)
10.13873/J.1000—9787(2015)04—0085—04
TP 393
A
1000—9787(2015)04—0085—04
袁紅春(1971-),男,江蘇海門人,博士,教授,主要研究方向為智能信息處理、海洋環(huán)境監(jiān)測。