劉鳳慶,馬海寬,吳寧,馬然,曹煊
(齊魯工業(yè)大學(xué)(山東省科學(xué)院)山東省科學(xué)院海洋儀器儀表研究所,山東 青島 266001)
當(dāng)前海洋生態(tài)環(huán)境原位監(jiān)測的主要方式有海洋基站和平臺(tái)兩種,不管哪一種方式都需要布設(shè)多種傳感器[1]和主控系統(tǒng)[2],設(shè)備之間主要通過線纜連接進(jìn)行通信。由于海洋環(huán)境的鹽霧腐蝕性[3]、潮濕性以及海水或風(fēng)造成的震動(dòng)性等特點(diǎn),線纜連接存在易松動(dòng)、易腐蝕、易短路等風(fēng)險(xiǎn),同時(shí)隨著布設(shè)傳感器數(shù)量的增多,線纜布設(shè)難度也越來越大,所以迫切需要一種更高效、更簡潔的通信方式來取代原來的線纜通信方式。目前,物聯(lián)網(wǎng)技術(shù)[4]在海洋生態(tài)環(huán)境監(jiān)測中的應(yīng)用方式主要有兩種:一種是數(shù)據(jù)采集器搭載RS232轉(zhuǎn)ZigBee或者RS232轉(zhuǎn)藍(lán)牙通信[5];另一種是采用CDMA模塊進(jìn)行無線通信[6]。這兩種應(yīng)用方式存在集成度低、采集智能化程度低、可靠性差等缺點(diǎn)。
本文設(shè)計(jì)的基于ZigBee無線通信方式和linux嵌入式平臺(tái)的設(shè)計(jì)方案,通過在linux操作系統(tǒng)下設(shè)計(jì)控制軟件實(shí)現(xiàn)數(shù)據(jù)采集任務(wù),具有控制靈活、可靠性高、環(huán)境適應(yīng)性強(qiáng)等優(yōu)點(diǎn)。
無線傳感器網(wǎng)絡(luò)系統(tǒng)總體設(shè)計(jì)包括主控制器節(jié)點(diǎn)和傳感器節(jié)點(diǎn)的硬件設(shè)計(jì)、無線傳輸網(wǎng)絡(luò)設(shè)計(jì)和主控軟件設(shè)計(jì)3部分,系統(tǒng)的總體框架結(jié)構(gòu)如圖1所示。
圖1 系統(tǒng)結(jié)構(gòu)圖
主控制器采用三星Exynos4412 ARM芯片,搭載linux操作系統(tǒng),通過在此操作系統(tǒng)平臺(tái)上開發(fā)主控軟件實(shí)現(xiàn)數(shù)據(jù)采集功能。主控制器集成有WiFi模塊和ZigBee模塊,通過這兩個(gè)模塊實(shí)現(xiàn)無線數(shù)據(jù)傳輸。
無線傳輸網(wǎng)絡(luò)由互聯(lián)網(wǎng)、4G無線網(wǎng)絡(luò)[7]和ZigBee無線網(wǎng)絡(luò)[8]共同構(gòu)成。海洋基站或平臺(tái)內(nèi)設(shè)置4G無線路由器,通過此無線路由器實(shí)現(xiàn)基站或平臺(tái)與外部互聯(lián)網(wǎng)的網(wǎng)絡(luò)連接;主控制器通過WiFi模塊連接4G無線路由器實(shí)現(xiàn)網(wǎng)絡(luò)通信功能;主控制器與海洋生態(tài)傳感器之間通過ZigBee模塊組成無線傳感器網(wǎng)絡(luò),實(shí)現(xiàn)主控制器和終端海洋生態(tài)傳感器之間的數(shù)據(jù)采集和傳輸。
主控制器由核心板和底板構(gòu)成,核心板和底板之間通過4組板對(duì)板連接器連接。核心板采用三星Exynos4412芯片作為主控芯片,采用SCP封裝方式,板載1 G內(nèi)存,結(jié)構(gòu)如圖2所示。底板設(shè)計(jì)集成了各種功能電路模塊,包括電源及接口模塊、顯卡資源及接口、實(shí)時(shí)時(shí)鐘RTC模塊、USB接口模塊以及WiFi擴(kuò)展接口模塊和ZigBee擴(kuò)展模塊等。
圖2 核心板結(jié)構(gòu)圖
2.1.1 底板電路設(shè)計(jì)
主控制器底板根據(jù)應(yīng)用需求設(shè)計(jì)和布局電路,基本功能模塊包括電源及接口模塊、顯卡資源及接口、實(shí)時(shí)時(shí)鐘RTC模塊、USB接口模塊等。除了基本功能模塊之外,本設(shè)計(jì)的兩個(gè)核心功能模塊有WiFi擴(kuò)展接口模塊和ZigBee擴(kuò)展模塊。
(1)WiFi擴(kuò)展接口模塊
核心板主控芯片通過板對(duì)板連接器與底板上的WiFi模塊連接,如圖3所示。在linux系統(tǒng)內(nèi)核中對(duì)設(shè)備節(jié)點(diǎn)進(jìn)行定義后,重新編譯帶有WiFi驅(qū)動(dòng)模塊的內(nèi)核文件,然后將新編譯生成的內(nèi)核文件寫入主控芯片,經(jīng)聯(lián)網(wǎng)配置后即可進(jìn)行網(wǎng)絡(luò)通信。
圖3 WiFi模塊原理圖
(2)ZigBee擴(kuò)展模塊
ZigBee模塊集成在主控制器底板上,通過讀、寫兩個(gè)引腳與核心板的主控芯片引腳相連,如圖4所示。底板為其提供3.3 V直流電源,并通過RXD和TXD兩根通信線與主板主控芯片進(jìn)行數(shù)據(jù)傳輸。主控芯片內(nèi)的linux內(nèi)核無需ZigBee模塊驅(qū)動(dòng)程序,使用時(shí)按照通信協(xié)議發(fā)送數(shù)據(jù)包即可實(shí)現(xiàn)通信。
圖4 ZigBee模塊原理圖
海洋生態(tài)傳感器的硬件部分在原來RS232通信方式的基礎(chǔ)上進(jìn)行了改進(jìn)。電路中的MAX232芯片輸出端連接到DL-LN33無線通信芯片引腳,并通過轉(zhuǎn)換芯片將傳感器中的5 V直流電源轉(zhuǎn)換為3.3 V直流電源給DL-LN33芯片供電,如圖5、6所示。
圖5 MAX232芯片電路圖
圖6 DL-LN33芯片及電源供電電路圖
ZigBee無線自組網(wǎng)模塊具有上電后自動(dòng)組網(wǎng)功能。模塊工作時(shí),與周圍的模塊自動(dòng)組成一個(gè)無線多跳對(duì)等網(wǎng)絡(luò),不需要中心節(jié)點(diǎn),任意節(jié)點(diǎn)之間都可實(shí)現(xiàn)互相通信。
在海洋基站或者平臺(tái)的生態(tài)環(huán)境監(jiān)測中,各個(gè)傳感器之間不需要互相通信,但是需要一個(gè)中心主控制器與各個(gè)傳感器分別建立通信,實(shí)現(xiàn)傳感器的管理和數(shù)據(jù)采集任務(wù)。所以在海洋基站或者平臺(tái)環(huán)境中,ZigBee無線傳感器網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)[9]適合采用星型結(jié)構(gòu),如圖7所示。
圖7 ZigBee無線傳感器網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)
整個(gè)海洋生態(tài)環(huán)境監(jiān)測網(wǎng)絡(luò)由許多個(gè)小的ZigBee無線傳感器子網(wǎng)絡(luò)構(gòu)成。各個(gè)子網(wǎng)絡(luò)以各自的主控制器為路由節(jié)點(diǎn),通過互聯(lián)網(wǎng)連接為一個(gè)大的樹型網(wǎng)絡(luò)[10],在聯(lián)網(wǎng)終端設(shè)備上可以對(duì)任意子網(wǎng)絡(luò)的主控制器進(jìn)行數(shù)據(jù)查詢或控制操作,如圖8所示。
圖8 海洋生態(tài)環(huán)境監(jiān)測網(wǎng)絡(luò)整體結(jié)構(gòu)圖
3.2.1 無線傳感器網(wǎng)絡(luò)節(jié)點(diǎn)設(shè)計(jì)
ZigBee無線傳感器網(wǎng)絡(luò)由主控制器中心節(jié)點(diǎn)和多個(gè)傳感器節(jié)點(diǎn)構(gòu)成。主控制器作為中心節(jié)點(diǎn),采用了核心板加底板的設(shè)計(jì)模式,在底板上集成一個(gè)DL-LN33無線自組網(wǎng)模塊。每一個(gè)海洋生態(tài)傳感器作為一個(gè)外圍終端節(jié)點(diǎn),采用現(xiàn)有成品傳感器外接無線自組網(wǎng)模塊的方式,使所有具有有線通信功能的傳感器均可作為無線傳感器網(wǎng)絡(luò)的外圍節(jié)點(diǎn),如圖9所示。
圖9 無線自組網(wǎng)模塊及電路原理圖
傳感器節(jié)點(diǎn)采用現(xiàn)有成品傳感器連接ZigBee無線通信模塊的方式構(gòu)成一個(gè)終端節(jié)點(diǎn)。海洋生態(tài)傳感器種類多種多樣,目前主流傳感器主要采用4線制水密線纜進(jìn)行傳感器供電和通信,其中2根線作為電源供電線,2根線作為RS232或者485的串口通信線。本文設(shè)計(jì)的無線傳感器網(wǎng)絡(luò),對(duì)現(xiàn)有主流傳感器具有兼容性,通過在原傳感器主控板的串口通信端口連接無線通信模塊,將原有線通信方式轉(zhuǎn)換為無線通信方式。
3.2.2 無線傳感器網(wǎng)絡(luò)節(jié)點(diǎn)配置
ZigBee無線自組網(wǎng)模塊是一種自組網(wǎng)多跳無線通信模塊,工作于2.40 GHz~2.45 GHz無線頻率。通過將各個(gè)模塊的信道和網(wǎng)絡(luò)ID設(shè)為相同值,IP地址設(shè)為不同值的方式,使模塊在工作時(shí)能夠與周圍模塊自動(dòng)組成一個(gè)無線多跳對(duì)等網(wǎng)絡(luò)。如圖10所示為1個(gè)主控制器節(jié)點(diǎn)與3個(gè)傳感器節(jié)點(diǎn)組成的網(wǎng)絡(luò)拓?fù)鋱D,網(wǎng)絡(luò)建立后可通過發(fā)送標(biāo)明源地址和目的地址的數(shù)據(jù)包實(shí)現(xiàn)各個(gè)節(jié)點(diǎn)間的通信。
圖10 網(wǎng)絡(luò)拓?fù)鋱D
在基于無線傳感器網(wǎng)絡(luò)的海洋生態(tài)環(huán)境監(jiān)測系統(tǒng)中,各個(gè)傳感器節(jié)點(diǎn)只與主控制器節(jié)點(diǎn)進(jìn)行通信,傳感器節(jié)點(diǎn)之間無通信需求。主控制器作為整個(gè)網(wǎng)絡(luò)系統(tǒng)的中心,通過在主控芯片上移植linux系統(tǒng)內(nèi)核[11]和QtE文件系統(tǒng)設(shè)計(jì)主控軟件的方式,實(shí)現(xiàn)無線傳感器網(wǎng)絡(luò)的海洋生態(tài)數(shù)據(jù)采集功能。主控軟件界面及功能流程如圖11所示。
為了驗(yàn)證該ZigBee無線傳感器網(wǎng)絡(luò)在海洋生態(tài)監(jiān)測環(huán)境中的穩(wěn)定性和可靠性,在青島團(tuán)島附近海域海洋實(shí)驗(yàn)站分別對(duì)系統(tǒng)的通信丟包率和數(shù)據(jù)可用性進(jìn)行了為期1個(gè)月的測試,數(shù)據(jù)結(jié)果如圖12、13所示。結(jié)果表明,系統(tǒng)數(shù)據(jù)采集過程中因通信故障造成的數(shù)據(jù)丟包情況較少,各采集數(shù)據(jù)在正常值范圍之內(nèi),該無線傳感器網(wǎng)絡(luò)可以在海洋生態(tài)環(huán)境監(jiān)測中應(yīng)用。
圖12 31天數(shù)據(jù)丟包率統(tǒng)計(jì)圖
圖13 生態(tài)參數(shù)實(shí)時(shí)采集圖
為了驗(yàn)證系統(tǒng)主控制器節(jié)點(diǎn)和傳感器節(jié)點(diǎn)的功耗性能,在實(shí)驗(yàn)室中分別對(duì)主控制器和單臺(tái)傳感器進(jìn)行了功耗測量。將主控制器和傳感器分別連接到2臺(tái)穩(wěn)壓電源上,電壓設(shè)定為5 V保持不變,啟動(dòng)主控制器并建立主控制器節(jié)點(diǎn)與傳感器節(jié)點(diǎn)之間的連接,保持在持續(xù)數(shù)據(jù)采集的工作狀態(tài)。記錄主控制器節(jié)點(diǎn)的最大電流為0.29 A,傳感器節(jié)點(diǎn)最大電流為0.09 A。
本文基于ZigBee技術(shù)設(shè)計(jì)實(shí)現(xiàn)了可用于海洋生態(tài)環(huán)境監(jiān)測的無線傳感器網(wǎng)絡(luò),并將其用于海洋基站和浮標(biāo)等平臺(tái)。實(shí)驗(yàn)結(jié)果表明,此傳感器網(wǎng)絡(luò)采集數(shù)據(jù)穩(wěn)定、可靠,同時(shí)能夠降低線纜成本和損耗,具有可行性和實(shí)用性,可用于海洋生態(tài)環(huán)境長期監(jiān)測,對(duì)發(fā)展和探索海洋具有重要意義。