宦 娟,吳 帆,曹偉建,李 慧,劉星橋
?
基于窄帶物聯(lián)網的養(yǎng)殖塘水質監(jiān)測系統(tǒng)研制
宦 娟1,2,吳 帆1,曹偉建1,李 慧1,劉星橋2
(1. 常州大學信息科學與工程學院,常州 213164; 2. 江蘇大學電氣信息工程學院,鎮(zhèn)江 212013)
為了促進水產養(yǎng)殖信息化的發(fā)展,更加準確、便捷地對水產養(yǎng)殖塘進行監(jiān)測,該文研發(fā)了一種基于窄帶物聯(lián)網(narrow band Internet of Things,NB-IoT)技術的養(yǎng)殖塘水質監(jiān)測系統(tǒng),實現了對多傳感器節(jié)點信息(溫度、pH值、溶解氧等環(huán)境參數)的遠程采集和數據存儲功能,以及對養(yǎng)殖塘的智能控制和集中管理。系統(tǒng)利用STM32L151C8單片機和傳感器終端實時采集溫度、pH值、溶解氧等水質信息,通過NB-IoT技術實現數據匯總和遠距離傳輸至IoT電信云平臺,Keil工具實現NB無線通信模組數據格式的設計以及數據的發(fā)送,Java用于開發(fā)訪問云平臺、控制底層設備和本地數據處理的后臺監(jiān)測應用,其既能夠發(fā)送HTTP請求對云平臺數據進行監(jiān)測,也可以向底層控制模塊下發(fā)命令,控制增氧機等設備的啟動和關閉。試驗結果表明:該系統(tǒng)可實時獲取溫度、pH值、溶解氧等水質參數信息,溫度控制精度保持在±0.12 ℃,平均相對誤差為0.15%,溶解氧控制精度保持在±0.55 mg/L以內,平均相對誤差為2.48%,pH值控制精度保持在±0.09,平均相對誤差為0.21%。系統(tǒng)整體運行穩(wěn)定,數據傳輸實時、準確,能夠滿足實際生產需要,為進一步水質調節(jié)和水產養(yǎng)殖生產管理提供了有力的數據和技術支持。
水產養(yǎng)殖;水質;監(jiān)測;物聯(lián)網;NB-IoT
近年來,中國水產養(yǎng)殖業(yè)快速發(fā)展,水產養(yǎng)殖產量已占到世界養(yǎng)殖總產量的70%以上[ -2]。養(yǎng)殖水體的水質環(huán)境是水生動物賴以生存的根本,影響水質的溫度、pH值、溶解氧等水體因子更是水產養(yǎng)殖的關鍵因素[3-4]。所以水質的實時監(jiān)測對水產養(yǎng)殖高效高產、健康安全具有重要的現實意義。
研究人員紛紛開展了針對水產養(yǎng)殖環(huán)境監(jiān)測的相關研究。Wang等[5]設計了海洋遠程監(jiān)控系統(tǒng)。Nam等[6]結合ZigBee和碼分多址(code division multiple access,CDMA)技術,在水產養(yǎng)殖場部署無線傳感網[7](WSN,wireless sensor networks),監(jiān)測近海游魚物種的環(huán)境信息。Chen等[8]結合ZigBee和WiFi,建立漁場環(huán)境 WSN自動監(jiān)測系統(tǒng)。Parra等[9]結合WSN和GPRS,遠程監(jiān)控魚類養(yǎng)殖基地的水質參數和飼料消耗等。以上水產養(yǎng)殖監(jiān)測系統(tǒng)各具特點,但隨著物聯(lián)網技術發(fā)展,近年來涌現了面向設備接入的低功耗廣域網。典型如窄帶物聯(lián)網(narrow band Internet of Things,NB-IoT),其單跳距離可達上千米,在節(jié)點通信范圍、節(jié)點部署個數、環(huán)境適用性上更適于園區(qū)、養(yǎng)殖塘等地。為了有效解決當前水產養(yǎng)殖地域網絡覆蓋不足、終端功耗過高、無法滿足海量終端要求、綜合成本高等問題,本文選取NB-IoT技術應用于養(yǎng)殖塘監(jiān)測,它是建立于蜂窩網絡基礎之上。直接接入蜂窩網絡可以很大程度上簡化網絡結構,減少部署和維護的難度,同時做到了低成本、低功耗、廣覆蓋、大連接,非常適合水產養(yǎng)殖業(yè)這一類低頻、小數據包、通信時延不敏感的物聯(lián)網業(yè)務。通過NB-IoT與傳感器的連接,將低成本、低功耗的移動終端分布各養(yǎng)殖基地,為水產養(yǎng)殖生產和物聯(lián)網研究提供保障。
綜合該技術在應用到水產養(yǎng)殖業(yè)的優(yōu)勢以及當前發(fā)展的趨勢,本文設計實現了基于NB-IoT技術的養(yǎng)殖塘水質監(jiān)測系統(tǒng),應用STM32L151C8芯片與傳感器技術,采集水產環(huán)境信息,通過NB模組實現無網關化數據上報。云平臺接收到數據或下發(fā)的命令后即時保存,隨時準備解析發(fā)送協(xié)議包。一方面,該系統(tǒng)可以實時監(jiān)測水產養(yǎng)殖環(huán)境,并將相關數據通過IoT平臺發(fā)送至PC機和遠程客戶端。另一方面,可以通過下發(fā)命令控制底層模塊的工作,協(xié)調各傳感器節(jié)點并配置有可信模塊,周期性檢測各節(jié)點可信性,從而保證傳感節(jié)點的完整和安全。研究結果為進一步水質調節(jié)和水產養(yǎng)殖生產管理提供參考。
本文設計的養(yǎng)殖塘水質監(jiān)測系統(tǒng)具備數據采集、遠程傳輸、存儲管理、遠程監(jiān)測和智能控制等功能,實現了對水產養(yǎng)殖環(huán)境水質參數的分布式監(jiān)控和集中管理[10-18]。該系統(tǒng)由感知層,傳輸層,平臺層和應用層等四層結構組成。系統(tǒng)架構圖如圖1所示。
圖1 養(yǎng)殖塘水質監(jiān)測系統(tǒng)架構圖
第一層為感知層,不同養(yǎng)殖塘分別部署,主要包括電源模塊、傳感器模塊(溫度傳感器、pH復合電極、溶解氧傳感器等),單片機(microcontroller unit,MCU)和NB模組。負責養(yǎng)殖塘數據采集和增氧機開閉控制,溫度傳感器、pH復合電極、溶解氧傳感器分別采集溫度、pH值、溶解氧數據,通過NB通信模塊將物理實體連接到傳輸層。第二層為傳輸層,主要包含核心網和通信基站,感知層采集到養(yǎng)殖塘數據之后將通過傳輸層的核心網絡發(fā)送到附近的通信基站,為NB-IoT終端建立用戶面承載,傳遞上下行業(yè)務數據[19]。第三層為平臺層,負責匯聚接入網得到的IoT相關數據,并根據不同感知數據類型轉發(fā)給監(jiān)測應用系統(tǒng)進行具體處理,同時向系統(tǒng)開放接口方便獲取數據。第四層為應用層,在平臺基礎上,將養(yǎng)殖塘監(jiān)測系統(tǒng)部署于IoT電信云平臺,既能調用查詢接口對平臺數據進行監(jiān)測,完成數據的預處理、存儲;也可以向底層控制模塊下發(fā)命令,控制增氧機等設備的開閉。
各層次分工明確,主要實現兩大功能:由感知層到應用層的數據上報實現了對數據的遠程監(jiān)測,應用層到感知層的命令下發(fā)實現了對設備的智能控制。系統(tǒng)流程圖如圖2所示。
溫度等傳感器設備采集養(yǎng)殖塘相關數據,并按數據幀格式進行編碼,通過MCU串口,以AT命令的形式,發(fā)送已編碼數據到NB-IoT模組。NB-IoT芯片接收到AT命令后,將payload自動封裝為CoAP協(xié)議的消息,并發(fā)送給事先配置的IoT電信云平臺;平臺收到數據后,自動解析CoAP協(xié)議包,根據設備Profile文件,找到匹配的編解碼插件,對payload進行解析,解析為與設備Profile中描述的service匹配的json數據,并存于平臺之上;養(yǎng)殖監(jiān)測系統(tǒng)通過查詢接口獲取平臺上的數據,對數據變化進行遠程監(jiān)測,平臺每個監(jiān)測周期都會通過POST消息,發(fā)送數據到指定的服務器。
圖2 感知層對接云平臺流程圖
監(jiān)測系統(tǒng)可以下發(fā)控制增氧機開閉的命令到平臺,如平臺判斷設備在線,則立即下發(fā)命令;若平臺判斷設備離線,則命令緩存于平臺的數據庫中。NB設備在某時刻上報數據,平臺收到數據后,將檢索對應設備在數據庫中是否存在有效未下發(fā)的命令,如有,則下發(fā)該命令。下發(fā)的命令通過編解碼插件進行編碼(json到16進制碼流)發(fā)送到設備端。設備收到命令,執(zhí)行增氧機控制命令,返回結果。
感知層的設計主要分為5個部分:主控板設計、通信模塊電路設計、數據幀格式設計、電源模塊設計以及嵌入式開發(fā)。其中NB-IoT主控板和通信模塊電路設計為感知層設計的核心。主控板負責養(yǎng)殖塘數據的采集,通信模塊負責與NB-IoT 基站的數據交互。
2.1.1 主控板設計
主控板設計框圖如圖3所示。使用溫度傳感器DHT12、pH復合電極E-201-C、數字型溶解氧傳感器DOS-600分別獲取養(yǎng)殖塘內的溫度、pH值以及溶解氧。單片機處理器(MCU)是整個主控板的核心,負責數據采集、處理、分析以及與通信模塊通信連接,選用STM32L151C8為主控芯片,其內核為基于超低功耗的ARM Cortex-M4 CPU,能夠最大程度減少功率損耗。并具有定時器、DMA、UART、RST、ADC、GPIO等模塊,能夠滿足NB-IoT硬件設計功能需求[20-25]。芯片主要用于完成溫度、溶解氧、pH值信號的采集和處理,并將處理好的數據存儲到內部的存儲模塊,MCU通過BC95-B5模塊發(fā)送到指定對象,使用內部定時器控制,每隔30 min發(fā)送一次。系統(tǒng)工作參數的設定可通過AT指令來完成。如AT+NMSTATUS判斷當前模塊與平臺之間的連接關系,AT+NMGS發(fā)送根據通訊幀協(xié)議設計的二進制編碼可以獲取相應的養(yǎng)殖塘監(jiān)測數據等。
圖3 主控板設計框圖
MCU發(fā)送數據給NB-IoT后,NB-IoT創(chuàng)建和基站之間的傳輸信道,上行發(fā)送。也能夠監(jiān)聽命令,當收到來自基站的命令請求信號時,可以及時對命令作出響應。
采集終端包括傳感器模塊、單片機處理器、NB-IoT通信模塊。系統(tǒng)使用內部定時器定時對溫度、溶解氧、pH值信號進行采集,并將處理好的數據遵循數據幀設計格式進行編碼,然后存儲到內部存儲器中。溶解氧傳感器和pH復合電極(pH傳感器)采集到模擬信號需要經過A/D轉換成單片機可以處理的數字信號,通過串口以AT+NMGS命令的形式發(fā)送至NB-IoT模組。模組接收到AT命令后,將payload自動封裝為CoAP協(xié)議的消息,經由基站發(fā)送給IoT電信云平臺。系統(tǒng)采用電池供電,供電電壓為3.3 V。
2.1.2 通信模塊電路設計
NB模組負責對養(yǎng)殖塘水質數據進行接收和轉發(fā)。對MCU進行編程實現對NB-IoT芯片的控制,將監(jiān)測到的數據編碼后通過該模塊發(fā)送出去,判斷SIM卡信息讀取是否完全,匹配相對應狀態(tài)。
本設計采用移遠BC95-B5無線通信模塊上報水質監(jiān)測數據和接收增氧機控制命令。BC95-B5是一款基于NB-IoT技術的無線通信模塊,采用NB-IoT無線通信協(xié)議(3GPP Rel.13)與網絡運營商的設備建立連接,主要工作在850 MHz的授權頻段。尺寸小可節(jié)約布板面積,最低深度休眠電流可達5A,節(jié)省功耗。物聯(lián)網SIM卡是由中國電信提供的4G NB-IoT卡,卡上存儲了用戶信息、加密密鑰以及用時信息等內容,滿足了智能硬件和智能農業(yè)對設備聯(lián)網的管理需求。
通信模塊電路原理圖如圖4所示,通信模塊BC95作為射頻模組,與專用NB-IoT物聯(lián)網卡進行數據交互,最后經由射頻天線將養(yǎng)殖塘水質數據直接發(fā)送到NB-IoT基站。為確保有更好的電源供電性能,在靠近BC95的電源輸入端并聯(lián)有1個低ESR的100F鉭電容,和0.1F、100 pF、22 pF的濾波電容;在射頻天線的電路設計中,對于PCB走線使用專業(yè)阻抗模擬計算工具對射頻信號線進行50 Ω的阻抗控制,并且預留有p型匹配電路,能 夠更加方便地調節(jié)射頻性能,確保了射頻信號良好以及可靠。
結合上述各類傳感器和BC95射頻芯片,共同構成終端傳感器節(jié)點。終端節(jié)點實物如圖5所示。
2.1.3 數據幀格式設計
為提高正確性,方便軟硬件模塊對數據解析處理,采用幀結構來降低數據包在傳輸過程中出錯的概率。根據應用架構可知,在通信中采用IP地址+IMSI號的方法分辨設備終端,設備終端存在唯一的IP地址和IMSI號,傳輸的數據包中加入這兩個因子,來保證數據包的發(fā)送和及時響應。幀格式內容共包括4部分,分別是:幀頭、幀長度、控制字和數據。
幀頭部分占2 Byte,作為每一幀數據的起始字符,本文約定固定的幀頭內容為0x7E 0x7E;幀長度部分占2 Byte,表示該幀的數據長度,只包含控制字部分和數據部分長度;控制字部分占1 Byte,共分為4部分,分別是操作類型,數據類型,數據項和預留位;數據部分占用字節(jié)數不固定,依據數據傳輸時實際長度而定,該部分存儲真正發(fā)送的數據內容。
其中,控制字部分占用1 Byte,共包含8 Bit,其中Bit7和Bit6數據類型值為00則表示上報數據,01表示命令下發(fā);Bit5和Bit4所傳輸的是與溫度模塊相關的數據或命令數據;Bit3和Bit2所傳輸的是與pH值模塊相關的數據或命令;Bit1和Bit0所傳輸的是與溶解氧模塊相關的數據或命令。當操作類型為00時,表示上傳相應的溫度測量值、pH測量值和溶解氧測量值,其余值均為保留;當操作類型為01時,數據項值00表示開啟測量,01 表示關閉測量,10表示獲取測量值,其余值均為保留;當操作類型為命令響應時,數據項值均做保留處理。
2.1.4 電源模塊設計
電源模塊負責整個主控板的用電供應,MCU的供電電壓為3.3 V,NB模組的供電電壓為3.8 V。所以需要將輸入的5 V電壓穩(wěn)定至3.3和3.8 V。
圖4 通信模塊原理圖
圖5 終端硬件實物圖
其中,5 V穩(wěn)定至3.3 V,采用的是AMS1117-3.3降壓型穩(wěn)定器,AMS1117是線型穩(wěn)定器,輸出的最大電流為0.8 A,5 V穩(wěn)壓至3.8 V,采用的是MIC29302WU降壓型穩(wěn)壓器。MIC29302WU是線型穩(wěn)壓器,輸出的最大電流為3 A[26-29]。
2.1.5 嵌入式開發(fā)
感知層設計的最終目的就是為了完成數據的上報,數據上報是物聯(lián)網業(yè)務中最基礎的一項。
本文采用了Keil集成開發(fā)環(huán)境對STM32單片機進行編程,并通過SEGGER J-Link仿真器和單片機相連接。編譯之后下載并仿真,將程序燒寫至MCU上,完成開發(fā)。具體實現的功能有獲取數據、信號轉換、發(fā)送數據和接收命令等方面,部分代碼如下所示:
1)uint8_t DHT12_Read_Data(uint8_t *temp)//獲取溫度值
2)uint8_t PH_Read_Data(uint8_t *pH) //獲取pH值
3)PH_value = -0.005816* PH_Read_Data +19.2654; //pH值ADC轉換
4)uint8_t DO_Read_Data(uint8_t *do) //獲取溶解氧值
5)DO_value = (unsigned int)((float)DO_Read_Data/ 228/100); //溶解氧值ADC轉換
6)Void BC95_SendCOAPdata(uint8_t *len,uint8_t *data)//發(fā)送CoAP數據
7)Void BC95_RECCOAPData(void) //接收平臺層下發(fā)的命令
養(yǎng)殖塘監(jiān)測數據被NB模組發(fā)送后經由傳輸層的核心網絡發(fā)送到附近的通信基站。傳輸層包含核心網和通信基站,核心網主要承擔與非接入層交互的功能,將溫度等監(jiān)測到的水質數據轉發(fā)到IoT平臺進行處理。
通信基站由運營商搭建,NB-IoT無線接入網由一個或多個基站(eNB)組成,負責無線資源的管理,包括無線承載控制、無線接入控制、連接移動性控制,以及上下行資源動態(tài)分配調度和用戶數據流的加密、IP報頭壓縮等功能。
圖6所示NB-IoT無線投入網由多個基站(eNB)組成,eNB基站通過Uu接口(空中接口)與NB-IoT終端(UE)通信,是UE用戶面和控制面的協(xié)議終止點。eNB基站通過接口連接到NB模組,接口上傳輸的是養(yǎng)殖塘監(jiān)測數據。2個eNB基站之間的接口,可以使UE在進入空閑狀態(tài)后快速啟動恢復進程。
圖6 NB-IoT網絡拓撲圖
IoT平臺綁定NB模組后存儲溫度、pH值、溶解氧等傳感器設備發(fā)送的數據,可以創(chuàng)建部署養(yǎng)殖監(jiān)測系統(tǒng)應用,編寫Profile文件和編解碼插件,實現對NB-IoT設備的統(tǒng)一管理。同時向部署的監(jiān)測應用系統(tǒng)開放接口以便讓其對平臺數據進行遠程監(jiān)測。
若平臺接收到的是上報的數據,依據編解碼插件解碼成匹配的json數據并存儲,以便養(yǎng)殖監(jiān)測系統(tǒng)遠程監(jiān)測;若平臺接收到的是養(yǎng)殖監(jiān)測系統(tǒng)下發(fā)的命令,則通過編解碼插件編碼成16進制碼流發(fā)送到設備端,實現對設備的智能控制。平臺層設計流程圖如圖7所示。
圖7 IoT平臺設計流程圖
本文運用IoT平臺提供的SP Portal前臺界面,實現了養(yǎng)殖塘監(jiān)測的基本應用管理、設備管理、數據查看和命令查看等功能。登錄SP Portal(賬戶名、密碼會隨著平臺資源一同下發(fā))創(chuàng)建一個“應用”。“應用”即為監(jiān)測系統(tǒng)在平臺的一個映射。應用創(chuàng)建完成后,平臺會返回appid和secret。這2個值用于養(yǎng)殖監(jiān)測系統(tǒng)和NB設備的唯一綁定。
2.3.1 Profile設計
為了確保不同養(yǎng)殖塘監(jiān)測到的數據唯一性,并能準確將溫度等數據保存至云平臺。需要建立不同感知節(jié)點與云平臺的映射關系。所以本文設計了映射文件Profile。
文件內容主要包括2部分,一部分是設備屬性信息(Device Capability),如manufacturerId(廠商ID)、manufacturerName(廠商名字)、deviceType(設備類型)、model(設備型號)、protocolType(協(xié)議類型)等,確保綁定NB模組的一一對應;另一部分是設備服務信息(Service),這一部分定義了養(yǎng)殖塘的數據字段,包括溫度(temp)、pH值(pH)、溶解氧(do)等需要設備上報的上行數據和服務器下發(fā)給設備的下行數據。部分業(yè)務數據json代碼如下:
"propertyName":,//溫度
"dataType":,"required": true,"min":,"max":, "step": 1.0, "maxLength": 0, "method":,"unit":, "enumList":,
"propertyName":,//pH值
"dataType":,"required": true,"min":,"max":, "step": 1.0,"maxLength": 0,"method":,"unit":, "enumList":,
"propertyName":,//溶解氧
"dataType":,"required": true,"min":,"max":, "step": 1.0,"maxLength": 0,"method":,"unit":, "enumList":
以溫度代碼為例,propertyName為temp表示接入設備為溫度傳感器,dataType為int表示數據類型為整型,required為true表示為必填項,min和max規(guī)定了屬性的范圍是0~100,step表示步長等于1.0,method代表該屬性的訪問模式,RE說明可讀取,更改后可上報保存等。
只有上傳了設備Profile文件,才能正確的綁定設備,接收數據和發(fā)送命令。
2.3.2 編解碼插件設計
養(yǎng)殖塘監(jiān)測到的數據經由NB模組通過傳輸層上報至平臺之后,需要對數據進行解碼。同樣的,平臺接收到系統(tǒng)下發(fā)的控制增氧機的命令后也需要對命令進行編碼。所以在平臺上設計了一個編解碼插件用來實現對數據的編碼和對命令的解碼。
由于設備對省電要求通常較高,所以應用層數據一般采用十六進制格式。應用層數據在IoT平臺做協(xié)議解析時,會轉換成統(tǒng)一的json格式,以方便養(yǎng)殖塘監(jiān)測系統(tǒng)的使用。要實現十六進制消息與json格式消息的轉換功能,IoT平臺需要使用設備廠商提供編解碼插件。一個NB模組對應一個編解碼插件。
編解碼插件要實現解碼與編碼,主要針對encode和decode 2個接口的具體實現進行代碼開發(fā),它承擔了4個任務:對上報的數據進行解碼;對上報的命令響應進行解碼;對下發(fā)的命令進行編碼;對下發(fā)的數據響應進行編碼。
實質上是一個實現IProtocolAdapter接口的jar包,需要完成4個接口函數的修改。
1)String getManufacturerId() //返回設備廠商ID字符串
2)String getModel () //返回設備型號字符串
3)ObjectNode decode (final byte[] binaryData) throws Exception //將設備上報的溫度、pH值、溶解氧等二進制數據轉換為json格式數據
4)byte[] encode (final ObjectNode input) throws Exception //將應用層下發(fā)的命令轉換為設備可識別的二進制數據
接口1和接口2是為了獲取設備的相關信息,方便核對編解碼的目標,接口3將設備上報的溫度、pH值、溶解氧等數據進行解碼,接口4將控制增氧機的命令進行編碼。
編解碼插件部署完畢后通過NB模組的IMSI號對設備進行注冊綁定,云平臺每30 min監(jiān)測一次。平臺接收到監(jiān)測系統(tǒng)下發(fā)的控制命令,命令ID為平臺隨機生成的操作命令的唯一標識符,seviceId為對應的設備名稱,每12 h發(fā)送一次控制命令。
應用層即本地服務器端養(yǎng)殖塘監(jiān)測應用系統(tǒng),主要實現兩大功能:一是可以通過事先訂閱數據變化消息,或者通過數據查詢接口,獲取到水產養(yǎng)殖NB監(jiān)控設備發(fā)送到IoT平臺的水產環(huán)境數據;二是通過IoT平臺下發(fā)命令控制底層模塊的工作,監(jiān)測系統(tǒng)下發(fā)命令到感知層NB設備,而設備也將做出一些對應的響應??刂圃鲅鯔C控制單元的開啟和關閉。
應用server通過HTTP協(xié)議和平臺通訊,通過調用平臺的開放API來控制設備,平臺把設備上報的數據推送給應用服務器。平臺支持對設備數據進行協(xié)議解析,轉換成標準的json格式數據。
1)String appId = Constant.APPID; //設置應用ID
2)String secret = Constant.SECRET; //設置應用密碼
3)String urLogin = Constant.APP_AUTH; //設置鑒權序列號
4)QueryDeviceHistoryData data = new QueryDeviceHistoryData(); //獲取云平臺數據
5)PostAsynCommand command = new PostAsynCommand(); //向設備端下發(fā)命令
養(yǎng)殖塘水質監(jiān)測系統(tǒng)通過數據查詢接口QueryDeviceHistoryData.java獲取IoT平臺上的數據進行養(yǎng)殖塘的遠程監(jiān)測,獲取到數據后保存到數據庫中,設計前端頁面進行顯示;同時也可以提前調用命令下發(fā)接口PostAsynCommand.java,對增氧機設備進行遠程控制,單擊前端頁面開閉按鈕,則可以向云平臺下發(fā)控制增氧機命令,命令緩存時間可在云平臺進行設置。本地設備接收到命令后控制增氧機開關,執(zhí)行后返回結果。
本文設計的系統(tǒng)所需的軟硬件設備型號及環(huán)境如表1所示,單片機選用了STM32L151C8芯片,NB-IoT模塊選用移遠BC95-B5無線通信模塊,傳感器主要負責溫度、pH值、溶解氧等環(huán)境參數的實時采集[30-33],采用CoAP 協(xié)議,將采集到的數據通過NB-IoT模塊發(fā)送,同時接收來自服務器的控制命令;溫度傳感器采用廣州奧松電子有限公司生產的DHT12型溫度傳感器,測量范圍為-20~60 ℃,精度為±0.5 ℃。溶解氧傳感器采用北京博海志遠科技有限公司研發(fā)的DOS-600型傳感器,測量范圍為0~20.00 mg/L,精度為±0.1 mg/L。pH值電極采用上海儀電科學儀器股份有限公司研發(fā)的雷磁系列E-201-C型 pH 復合電極,測量范圍為0~14,精度為±0.05。嵌入式程序燒錄使用Keil工具,應用層監(jiān)測系統(tǒng)的設計開發(fā)則選用Java開發(fā)環(huán)境。
表1 軟硬件設備
利用本系統(tǒng)在江蘇省常州市漁業(yè)養(yǎng)殖基地進行試驗。該基地采用塘內養(yǎng)殖模式,占地面積0.1 km2。不同水生物被放置的養(yǎng)殖塘深度不同,水產環(huán)境極具代表性。實時獲取溫度、pH值和溶解氧水質信息,為了驗證系統(tǒng)運行時對水產養(yǎng)殖環(huán)境各因素的及時監(jiān)測和精準調控,選取不同天氣(陰、晴、雨),不同時間(0:00、12:00、20:00)、不同養(yǎng)殖塘(1號養(yǎng)殖塘、4號養(yǎng)殖塘、6號養(yǎng)殖塘)進行數據監(jiān)測,以購買的美國哈希公司生產的MS5-Hydrolab便攜式多參數水質監(jiān)測儀所測得的參數為標準值,該傳感器測量的精度較高,溶解氧測量精度達±1%,溫度達±0.2℃,pH值精度為±0.2。分別將傳感器節(jié)點采集到的數據、云平臺接收到的數據以及監(jiān)測系統(tǒng)顯示的數據與標準值進行比較。數據如表2,表3,表4所示,1號養(yǎng)殖塘實際部署見圖8。
注:圈內所示即為監(jiān)測節(jié)點,內置各傳感器和單片機等硬件模塊。
Fig.8. No.1 aquaculture pond node deployment diagram
表2 1號養(yǎng)殖塘實測值和標準值的比較
表3 4號養(yǎng)殖塘實測值和標準值的比較
設置傳感器節(jié)點上傳周期為30 min,根據云平臺獲取到的數據對節(jié)點丟包率進行統(tǒng)計,發(fā)送數據包大小為40 Bit,統(tǒng)計日期為2018年9月1日17:00至9月30日11:00。其中1號養(yǎng)殖塘數據量為1 426幀,9月15日丟失4幀,丟包率為0.28%;4號養(yǎng)殖塘數據量為1 468幀,9月7號丟失2幀,丟包率為0.13%;6號養(yǎng)殖塘數據量為1 520幀,9月14日丟失2幀,9月15日丟失4幀,9月21日丟失7幀,丟包率為0.85%。實際部署中,節(jié)點與網關通信距離約3 km,平均丟包率為0.42%,具有非常良好的通信可靠性。
綜合表2,表3,表4 可得到,云平臺可準確及時顯示各個養(yǎng)殖塘的監(jiān)測數據,通過本系統(tǒng)可以實時獲取溫度、pH值、溶解氧等水質參數信息,其中,溫度控制精度保持在±0.12 ℃,1號養(yǎng)殖塘相對誤差為0.22%,4號相對誤差為0.12%,6號相對誤差為0.12%,平均相對誤差為0.15%;溶解氧控制精度保持在±0.55 mg/L以內,1號養(yǎng)殖塘相對誤差為1.75%,4號相對誤差為3.17%,6號相對誤差為2.51%,平均相對誤差為2.48%;pH值控制精度保持在±0.09,1號養(yǎng)殖塘相對誤差為0.14%,4號相對誤差為0.15%,6號相對誤差為0.33%,平均相對誤差為0.21%,符合系統(tǒng)控制要求。所測得各參數數據與標準值相比較,相對誤差很小,遠程控制增氧機反應時間在 100 ms 以內,達到系統(tǒng)設計要求。系統(tǒng)在現場實時監(jiān)測下運行穩(wěn)定,實現了對溫度、pH值、溶解氧等水產養(yǎng)殖環(huán)境因素的準確監(jiān)測控制和無線傳感器的網絡通信功能,滿足水產養(yǎng)殖要求。
表4 6號養(yǎng)殖塘實測值和標準值的比較
為了對養(yǎng)殖塘水質進行監(jiān)測,本文設計了基于NB-IoT網絡的養(yǎng)殖塘水質監(jiān)測系統(tǒng),具體設計和實現了終端傳感器節(jié)點、后臺控制模塊、監(jiān)測系統(tǒng)等軟硬件,實現了對養(yǎng)殖塘的遠程監(jiān)測和增氧機等設備的智能控制。并在江蘇省常州市漁業(yè)養(yǎng)殖基地中實地監(jiān)測。主要結論如下:
1)監(jiān)測系統(tǒng)采用NB-IoT技術部署網絡結構,利用傳感節(jié)點獲取溫度、pH值、溶解氧等水質環(huán)境參數,完成數據的采集編碼,并通過NB模組經由核心網上報至云平臺,應用層監(jiān)控系統(tǒng)實時調用查詢接口,實現了養(yǎng)殖塘的在線遠程監(jiān)測。借助IoT電信云平臺對水質參數數據實時存儲,并設置了描述設備功能的Profile文件和分析處理協(xié)議包的編解碼插件,最后完成了對NB模組設備的綁定,確保了不同養(yǎng)殖塘數據的唯一性和準確性。
2)監(jiān)測系統(tǒng)能夠隨時下發(fā)控制增氧機的命令至云平臺,由平臺編解碼插件對命令編碼后發(fā)送至硬件終端并執(zhí)行相應操作。結果表明遠程控制設備反應時間在100 ms以內,實現了對增氧機的智能控制。
3)實地部署系統(tǒng)并驗證監(jiān)測精度,溫度控制精度保持在±0.12 ℃,平均相對誤差為0.15 %。溶解氧控制精度保持在±0.55 mg/L以內,平均相對誤差為2.48 %。pH值控制精度保持在±0.09,平均相對誤差為0.21 %。符合系統(tǒng)控制要求。
以上結論證明了NB-IoT技術的穩(wěn)定可靠,數據獲取便捷,命令響應及時,可為該技術在農業(yè)監(jiān)控等更廣領域提供技術支持和參考。
[1] 李道亮,楊昊. 農業(yè)物聯(lián)網技術研究進展與發(fā)展趨勢分析[J]. 農業(yè)機械學報,2018,49(1):1-20. Li Daoliang, Yang Hao. State-of-the-art review for internet of things in agriculture[J]. Transactions of the Chinese Society for Agricultural Machinery, 2018, 49(1): 1-20. (in Chinese with English abstract)
[2] Baumüller, Heike. Mobile technology trends and their potential for agricultural development[J]. Social Science Electronic Publishing, 2013, 83(3): 446-456.
[3] Tang J, Dong T, Li L, et al. Intelligent monitoring system based on internet of things[J]. Wireless Personal Communications, 2018, 147(102): 1521-1537.
[4] Deng X, Tang Z, Yi L, et al. Healing multi-modal confident information coverage holes in NB-IoT-Enabled networks[J]. IEEE Internet of Things Journal, 2018, 5(3): 1463-1473.
[5] Wang Y, Qi C, Pan H. Design of remote monitoring system for aquaculture cages based on 3G networks and ARM-Android embedded system[J]. Procedia Engineering, 2012, 3(29): 79-83.
[6] Nam H, An S, Kim C H, et al. Remote monitoring system based on ocean sensor networks for offshore aquaculture[C]// Oceans, China: IEEE, 2014: 1-7.
[7] Rawat P, Singh K D, Chaouchi H, et al. Wireless sensor networks: A survey on recent developments and potential synergies[J]. The Journal of Supercomputing, 2014, 68(1): 1-48.
[8] Chen J H, Sung W T, Lin G Y. Automated monitoring system for the fish farm aquaculture environment[C]// IEEE International Conference on Systems, China:IEEE, 2015: 1161-1166.
[9] Parra L, Sendra S, García L, et al. Design and deployment of low-cost sensors for monitoring the water quality and fish behavior in aquaculture tanks during the feeding process[J]. Sensors, 2018, 18(3): 750-772.
[10] Ratasuk R, Vejlgaard B, Mangalvedhe N, et al. NB-IoT system for M2M communication[C]// IEEE Wireless Communications and Networking Conference Workshops (WCNCW). IEEE, 2016.
[11] Song Q, Guo S, Liu X, et al. CSI Amplitude fingerprinting based NB-IoT indoor localization[J]. IEEE Internet of Things Journal, 2018, 5(3): 1494-1504.
[12] 何燦隆,沈明霞,劉龍申,等. 基于NB-IoT 的溫室溫度智能調控系統(tǒng)設計與實現[J]. 華南農業(yè)大學學報,2018,39(2):117-124.He Canlong, Shen Mingxia, Liu Longshen, et al. Design and realization of a greenhouse temperature intelligent control system based on NB-IoT[J]. Journal of South China Agricultural University, 2018, 39(2): 117-124. (in Chinese with English abstract)
[13] 呂衛(wèi),趙佳麗. 一種低功耗高精度的NB-IoT溫度采集系統(tǒng)設計[J]. 傳感技術學報,2018,31(6):836-840. Lü Wei, Zhao Jiali. Design of a High-Precision and low-power temperature acquisition system based on NB-IoT[J]. Chinese Journal of Sensors and Actuators, 2018, 31(6): 836-840. (in Chinese with English abstract)
[14] Zhang H, Li J, Bo W, et al. Connecting intelligent things in smart hospitals using NB-IoT[J]. IEEE Internet of Things Journal, 2018, 62(5): 1550-1560.
[15] Oh S M, Shin J S. An efficient small data transmission scheme in the 3GPP NB-IoT system[J]. IEEE Communications Letters, 2017, 21(3): 660-663.
[16] 史兵,趙德安,劉星橋,等. 工廠化水產養(yǎng)殖智能監(jiān)控系統(tǒng)設計[J].農業(yè)機械學報,2011,42(9):191-196. Shi Bing, Zhao Dean, Liu Xingqiao, et al. Design of intelligent monitoring system for aquaculture[J]. Transactions of the Chinese Society for Agricultural Machinery, 2011, 42(9): 191-196. (in Chinese with English abstract)
[17] Shreema S, Pai R M, Pai M M M. Energy efficient message priority based routing protocol for aquaculture applications using underwater sensor network[J]. Wireless Personal Communications, 2018, 216(103): 1871-1894.
[18] Schmidt W, Raymond D, Parish D, et al. Design and operation of a low-cost and compact autonomous buoy system for use in coastal aquaculture and water quality monitoring[J]. Aquacultural Engineering, 2018, 141(80): 28-36.
[19] Osanaiye O, Alfa A S, Hancke G P. Denial of service (DoS) defence for resource availability in wireless sensor networks [J]. IEEE Access, 2018, 22(6): 6975-7004.
[20] 鄧芳明,吳翔,李兵,等. 基于無源RFID傳感標簽的農田土壤環(huán)境監(jiān)控技術研究[J]. 農業(yè)機械學報,2018,49(8):187-193. Deng Fangming, Wu Xiang, Li Bing, et al. Monitoring technology of farmland soil environment based on passive RFID sensor tag[J]. Transactions of the Chinese Society for Agricultural Machinery, 2018, 49(8): 187-193. (in Chinese with English abstract)
[21] Parra L, Sendra S, García L, et al. Design and deployment of low-cost sensors for monitoring the water quality and fish behavior in aquaculture tanks during the feeding process[J]. Sensors, 2018, 18(3): 750-772.
[22] Paramesh J, Robin C R R. A novel and efficient routing protocol for fishermen using underwater wireless sensor network[J]. Journal of Computational & Theoretical Nanoscience, 2018, 15(4): 1226-1232.
[23] 劉雨青,李佳佳,曹守啟,等. 基于物聯(lián)網的螃蟹養(yǎng)殖基地監(jiān)控系統(tǒng)設計及應用[J]. 農業(yè)工程學報,2018,34(16):205-213. Liu Yuqing, Li Jiajia, Cao Shouqi, et al. Design and application of monitoring system for crab breeding base based on internet of things[J]. Transactions of the Chinese Society of Agricultural Engineering (Transactions of the CSAE), 2018, 34(16): 205-213. (in Chinese with English abstract)
[24] 周利明,韋崇峰,苑嚴偉,等. 基于無線傳感網絡的改堿暗管排鹽監(jiān)控系統(tǒng)[J]. 農業(yè)工程學報,2018,34(6):89-97. Zhou Liming, Wei Chongfeng, Yuan Yanwei, et al. Monitoring system of subsurface pipe drainage for improving saline-alkaline soil based on wireless sensor network[J]. Transactions of the Chinese Society of Agricultural Engineering (Transactions of the CSAE), 2018, 34(6): 89-97. (in Chinese with English abstract)
[25] 何耀楓,梁美惠,陳俐均,等. 基于物聯(lián)網的溫室環(huán)境測控系統(tǒng)[J]. 鄭州大學學報(理學版),2018,50(1):90-94. He Yaofeng, Liang Meihui, Chen Lijun, et al. Greenhouse environment control system based on IoT[J]. Journal of Zhengzhou University(Natural Science Edition), 2018, 50(1): 90-94. (in Chinese with English abstract)
[26] Koosheshi K, Ebadi S. Optimization energy consumption with multiple mobile sinks using fuzzy logic in wireless sensor networks[J]. Wireless Networks, 2018, 25(6): 1215-1234.
[27] 馬從國,趙德安,王建國,等. 基于無線傳感器網絡的水產養(yǎng)殖池塘溶解氧智能監(jiān)控系統(tǒng)[J]. 農業(yè)工程學報,2015,31(7):193-200. Ma Congguo, Zhao Dean, Wang Jianguo, et al. Intelligent monitoring system for aquaculture dissolved oxygen in pond based on wireless sensor network[J]. Transactions of the Chinese Society of Agricultural Engineering (Transactions of the CSAE), 2015, 31(7): 193-200. (in Chinese with English abstract)
[28] Bengheni A, Didi F, Bambrik I. EEM-EHWSN: Enhanced energy management scheme in energy harvesting wireless sensor networks[J]. Wireless Networks, 2018(12): 1-18.
[29] 王嘉寧,牛新濤,徐子明,等. 基于無線傳感器網絡的溫室CO2濃度監(jiān)控系統(tǒng)[J]. 農業(yè)機械學報,2017,48(7): 280-285,367. Wang Jianing, Niu Xintao, Xu Ziming, et al. Monitoring system for CO2concentration in greenhouse based on wireless sensor network[J]. Transactions of the Chinese Society for Agricultural Machinery, 2017, 48(7): 280-285, 367. (in Chinese with English abstract)
[30] 張海輝,邵志成,張佐經,等. 基于無線傳感網的設施環(huán)境二氧化碳精準調控系統(tǒng)[J]. 農業(yè)機械學報,2017,48(3):325-331,360. Zhang Haihui, Shao Zhicheng, Zhang Zuojing, et al. Regulation system of CO2in facilities based on wireless sensor network[J]. Transactions of the Chinese Society for Agricultural Machinery, 2017, 48(3): 325-331, 360. (in Chinese with English abstract)
[31] Bing S, Victor S, Dean Z, et al. A wireless sensor network-based monitoring system for freshwater fishpond aquaculture[J]. Biosystems Engineering, 2018, 236(172): 57-66.
[32] Salim T I, Alam H S, Pratama R P, et al. Portable and online water quality monitoring system using wireless sensor network[C]// International Conference on Automation. IEEE, 2018.
[33] Wiranto G, Widodo S, Hermida I D P, et al. Design and fabrication of thick film dissolved oxygen sensor based on RuO2working electrodes for water quality monitoring[J]. Materials Science Forum, 2018, 917(1026): 59-63.
Development of water quality monitoring system of aquaculture ponds based on narrow band internet of things
Huan Juan1,2, Wu Fan1,Cao Weijian1, Li Hui1, Liu Xingqiao2
(1.213164,212013,)
The water quality environment of aquaculture water is the basis for the survival of aquatic animals. Water quality factors such as temperature, pH value and dissolved oxygen are the key factors affecting aquaculture water quality. Therefore, timely monitoring of water quality has important practical significance for high yield, health and safety of aquaculture. In order to promote the development of aquaculture informationization, it is necessary to monitor aquaculture ponds more accurately and conveniently. This paper designs a water quality monitoring system based on NB- IoT narrow-band Internet of Things technology. The single hop distance of this technology can reach thousands of meters. It is more suitable for parks, aquaculture ponds and other places in terms of communication range, deployment number and environmental applicability of nodes. The technology solves the problems of insufficient network coverage, high terminal power consumption, insufficient terminal equipment and high comprehensive cost in aquaculture area. The system specially designs terminal sensor nodes, background control module, monitoring application software and hardware. The functions of data storage and remote collection of multi-sensor node information such as temperature, pH value, dissolved oxygen and other sensor nodes were realized, as well as the intelligent control of aquaculture pond aerator. Temperature, pH value, dissolved oxygen and other water quality information were collected and coded by STM32L151C8 MCU and sensor terminal in real time. First, data was reported to cloud platform through NB module and core network. The application layer called the query interface in time to realize online remote monitoring of aquaculture ponds. Then, the system used the Internet of Things Telecom Cloud Platform, which was equipped with a Profile file that described the functions of the device and a codec plug-in that analyzed the protocol package, to stores the water quality parameter data in time. Finally, the binding of NB module devices was completed. The NB wireless communication module data format and data transmission were realized by Keil tool. Java was used to develop background monitoring applications for accessing cloud platforms, controlling underlying devices, and local data processing. Monitoring applications could not only send HTTP requests to monitor cloud platform data, but also send commands to terminal control module to control the start and shutdown of aerators. The experimental results showed that the system could acquire water quality information in time, such as temperature, pH value, dissolved oxygen and so on. The control accuracy of temperature, dissolved oxygen and pH value were kept in the±0.12 ℃,±0.55 mg/L, and less than 0.09, respectively. The average relative errors were 0.15%, 2.48% and 0.21%, respectively. Monitoring applications could also issue commands to cloud platforms to control aerators at any time. The codec plug-in of the platform encoded the command and send it to the hardware terminal. The response time of the remote control device was less than 100 ms, and the whole system was stable, which proved the reliability of NB- IoT technology. Data transmission is timely and accurate, which can meet the actual production needs and provide strong data and technical support for further water quality control and aquaculture production management.
aquaculture; water quality; monitoring; internet of things; NB-IoT (narrow-band internet of things)
2018-12-05
2019-03-07
國家自然科學基金(61803050);溧陽市第一批重點研發(fā)計劃(現代農業(yè))項目(LB2016003)
宦 娟,副教授,2015年赴美國德克薩斯大學達拉斯分校研修,主要從事農業(yè)信息化研究。Email:huanjuan@cczu.edu.cn
10.11975/j.issn.1002-6819.2019.08.030
TP391
A
1002-6819(2019)-08-0252-10
宦 娟,吳 帆,曹偉建,李 慧,劉星橋. 基于窄帶物聯(lián)網的養(yǎng)殖塘水質監(jiān)測系統(tǒng)研制[J]. 農業(yè)工程學報,2019,35(8):252-261. doi:10.11975/j.issn.1002-6819.2019.08.030 http://www.tcsae.org
Huan Juan, Wu Fan, Cao Weijian, Li Hui, Liu Xingqiao. Development of water quality monitoring system of aquaculture ponds based on narrow band internet of things[J]. Transactions of the Chinese Society of Agricultural Engineering (Transactions of the CSAE), 2019, 35(8): 252-261. (in Chinese with English abstract) doi:10.11975/j.issn.1002-6819.2019.08.030 http://www.tcsae.org