李 林
(開封大學(xué)信息工程學(xué)院,河南 開封 475000)
根據(jù)市場(chǎng)研究機(jī)構(gòu)Meticulous Research預(yù)測(cè),到2027年,農(nóng)業(yè)物聯(lián)網(wǎng)市場(chǎng)規(guī)模將達(dá)到327.5億美元,2019年到2027年的年復(fù)合增長(zhǎng)率為15.2%。目前,農(nóng)業(yè)物聯(lián)網(wǎng)技術(shù)在河南省農(nóng)業(yè)生產(chǎn)中進(jìn)行了推廣,這在一定程度上提高了農(nóng)業(yè)生產(chǎn)水平?!吨泄埠幽鲜∥P(guān)于制定河南省國(guó)民經(jīng)濟(jì)和社會(huì)發(fā)展第十四個(gè)五年規(guī)劃和二○三五年遠(yuǎn)景目標(biāo)的建議》指出,打好糧食生產(chǎn)王牌,扛穩(wěn)糧食安全重任,完善糧食儲(chǔ)備體制機(jī)制,提升儲(chǔ)備應(yīng)急能力[1]。
本課題以開封市為例,針對(duì)開封市糧食儲(chǔ)藏的現(xiàn)狀,開發(fā)了一套更適合開封市糧食儲(chǔ)藏的,具有高可靠性、安全性、靈活性、可擴(kuò)展性、易操作性的軟硬件結(jié)合的基于阿里云的智慧糧倉(cāng)監(jiān)測(cè)系統(tǒng)。該系統(tǒng)能夠遠(yuǎn)程實(shí)時(shí)收集糧食儲(chǔ)藏環(huán)境的溫度、濕度、二氧化碳濃度等數(shù)據(jù)信息,監(jiān)視糧倉(cāng)情況,提供精準(zhǔn)的科研實(shí)驗(yàn)數(shù)據(jù),達(dá)到提高糧食儲(chǔ)藏質(zhì)量的目的,從而引領(lǐng)開封市糧食儲(chǔ)藏方式的轉(zhuǎn)變與發(fā)展,促進(jìn)企業(yè)增收。
通過(guò)分析開封市糧食儲(chǔ)藏特征和農(nóng)業(yè)物聯(lián)網(wǎng)技術(shù)的優(yōu)勢(shì),設(shè)計(jì)方案基于設(shè)施農(nóng)業(yè)物聯(lián)網(wǎng)基本工作流程。圍繞物聯(lián)網(wǎng)“全面感知、可靠傳送、智能處理”三層結(jié)構(gòu)的實(shí)現(xiàn),方案的實(shí)施分為感知層、網(wǎng)絡(luò)層和應(yīng)用層三個(gè)層次。
感知層的傳感器節(jié)點(diǎn)作為傳感器網(wǎng)絡(luò)的硬件平臺(tái),具有端節(jié)點(diǎn)和路由雙重功能:一方面,實(shí)現(xiàn)數(shù)據(jù)的采集和處理;另一方面,將數(shù)據(jù)融合,經(jīng)多跳路由傳送到匯聚節(jié)點(diǎn),最后經(jīng)互聯(lián)網(wǎng)或其他通信網(wǎng)絡(luò)傳送給觀察者。
感知層節(jié)點(diǎn)設(shè)計(jì)原則如下:
1)低功耗(更換一次電池的使用時(shí)間盡量長(zhǎng))。設(shè)計(jì)中從硬件和軟件兩個(gè)方面降低功耗,硬件上盡可能使用低電壓、低功耗的芯片;軟件上可以添置電源管理功能,合理分配能量。
2)良好的射頻性能。同等條件下射頻性能強(qiáng)的網(wǎng)絡(luò)能力強(qiáng),通信距離也較大。
3)小體積。節(jié)點(diǎn)體積要小,對(duì)檢測(cè)的目標(biāo)體系不構(gòu)成影響,便于部署。
4)低成本。節(jié)點(diǎn)模塊不能太多且不能太復(fù)雜。
5)可擴(kuò)展性。采用模塊化設(shè)計(jì),根據(jù)不同的需要添加不同的功能模塊,比如,傳感器模塊可以做一個(gè)通用口。
感知層選用溫濕度傳感器、光照強(qiáng)度傳感器和二氧化碳傳感器組成數(shù)據(jù)采集器,網(wǎng)關(guān)接電,協(xié)調(diào)器連接網(wǎng)關(guān)繼電器,數(shù)據(jù)采集器連接協(xié)調(diào)器。數(shù)據(jù)采集器用于獲取各項(xiàng)環(huán)境數(shù)據(jù),繼電器用于控制各個(gè)回路上的設(shè)備的開關(guān)。
該層設(shè)計(jì)采用有線光纖網(wǎng)絡(luò)和無(wú)線傳感網(wǎng)絡(luò)相結(jié)合的傳輸方式。利用計(jì)算機(jī)網(wǎng)絡(luò)中的TCP/IP協(xié)議,以及ZigBee、WIFI、MQTT等短距離無(wú)線傳輸技術(shù),根據(jù)糧倉(cāng)實(shí)際需要,選擇最優(yōu)傳輸方式,降低通信開銷,提高連接質(zhì)量。
采用ZigBee協(xié)議把傳感器信息傳遞到網(wǎng)關(guān),該協(xié)議的優(yōu)勢(shì)在于自組網(wǎng)能力,最多支持65 000個(gè)設(shè)備組網(wǎng)。對(duì)于智慧農(nóng)業(yè)來(lái)說(shuō),ZigBee協(xié)議還有一個(gè)寶貴的優(yōu)點(diǎn),就是它的安全性很高,至今全球尚未出現(xiàn)一起破解先例。
阿里云平臺(tái)接收底層數(shù)據(jù)采用MQTT協(xié)議,該協(xié)議是基于TCP/IP協(xié)議棧構(gòu)建的異步通信消息協(xié)議[2],是一種輕量級(jí)的發(fā)布、訂閱信息傳輸協(xié)議??稍诓豢煽康木W(wǎng)絡(luò)環(huán)境中進(jìn)行擴(kuò)展,適用于設(shè)備硬件存儲(chǔ)空間或網(wǎng)絡(luò)帶寬有限的場(chǎng)景。使用MQTT協(xié)議,消息發(fā)送者與接收者不受時(shí)間和空間的限制。阿里云物聯(lián)網(wǎng)平臺(tái)支持設(shè)備使用MQTT協(xié)議接入[3]。
選擇c#上位機(jī),通過(guò)設(shè)計(jì)與開發(fā)保證用戶的良好體驗(yàn),實(shí)現(xiàn)數(shù)據(jù)的遠(yuǎn)程管理,可實(shí)現(xiàn)對(duì)整個(gè)糧倉(cāng)監(jiān)測(cè)數(shù)據(jù)的長(zhǎng)期記錄,獲取系統(tǒng)監(jiān)測(cè)的實(shí)時(shí)數(shù)據(jù)、歷史數(shù)據(jù),并能夠通過(guò)接口實(shí)現(xiàn)對(duì)執(zhí)行機(jī)構(gòu)的控制[4]。
4.1.1 上位機(jī)功能性需求
上位機(jī)功能主要分為三大部分:糧倉(cāng)的管理、WSN監(jiān)測(cè)模塊、上傳阿里云。
1)糧倉(cāng)的管理模塊功能:主要實(shí)現(xiàn)糧倉(cāng)的實(shí)時(shí)視頻監(jiān)控與糧食入庫(kù)、出庫(kù)的管理。
2)WSN監(jiān)測(cè)模塊功能:主要實(shí)現(xiàn)糧倉(cāng)環(huán)境參數(shù)的實(shí)時(shí)監(jiān)測(cè)。
3)上傳阿里云模塊功能:主要實(shí)現(xiàn)把監(jiān)測(cè)到的數(shù)據(jù)上傳云平臺(tái)。
4.1.2 網(wǎng)關(guān)連接模塊
網(wǎng)關(guān)是將ZigBee傳輸節(jié)點(diǎn)進(jìn)行接入,通過(guò)它實(shí)現(xiàn)系統(tǒng)的信息采集、信息輸入、信息輸出、集中控制、遠(yuǎn)程控制、聯(lián)動(dòng)控制等功能。并通過(guò)上行接口(WIFI接口、FE接口、GPRS接口)將信息數(shù)據(jù)傳輸?shù)娇刂圃贫说脑O(shè)備。
調(diào)用GateWay對(duì)象的Connect()方法建立通道,如果建立成功,則GateWay的Connetct方法返回值為true,反之,則為false。
調(diào)用GateWay對(duì)象的DisConnect()方法斷開,如果斷開成功,則GateWay的DisConnetct方法返回值為true,反之,則為false。
4.1.3 糧倉(cāng)實(shí)時(shí)監(jiān)測(cè)模塊
1)溫濕度實(shí)時(shí)監(jiān)測(cè)。設(shè)備類型0x31,數(shù)據(jù)位0,1為溫度值,數(shù)據(jù)位2,3為濕度值;數(shù)據(jù)位4固定值為OxFF。其中,數(shù)據(jù)位0,1通過(guò)[數(shù)據(jù)位0*256+數(shù)據(jù)位1)/100]算出空氣溫度整數(shù)部分值,數(shù)據(jù)位0,1通過(guò)[數(shù)據(jù)位0*256+數(shù)據(jù)位1)%100]算出空氣溫度小數(shù)部分值;數(shù)據(jù)位2,3通過(guò)[數(shù)據(jù)2*256+數(shù)據(jù)位3)/100]算出空氣濕度整數(shù)部分值,數(shù)據(jù)位2,3通過(guò)[數(shù)據(jù)位2*256+數(shù)據(jù)位3)%100]算出空氣濕度小數(shù)部分值。核心代碼如下:
2)二氧化碳實(shí)時(shí)監(jiān)測(cè)。設(shè)備類型0x33,數(shù)據(jù)位0,1為二氧化碳濃度值,數(shù)據(jù)位2,3,4固定為OxFF。其中,數(shù)據(jù)位0,1通過(guò)[數(shù)據(jù)位為0*256+數(shù)據(jù)位]計(jì)算出二氧化碳濃度值。核心代碼如下:
3)光照強(qiáng)度實(shí)時(shí)監(jiān)測(cè)。設(shè)備類型0x34,數(shù)據(jù)位0,1為光照強(qiáng)度,數(shù)據(jù)位2,3,4固定為OxFF。其中,數(shù)據(jù)位0,1通過(guò)[數(shù)據(jù)位為0*256+數(shù)據(jù)位]計(jì)算出光照強(qiáng)度值。核心代碼如下:
糧倉(cāng)實(shí)時(shí)監(jiān)測(cè)模塊如圖1所示。
圖1 智慧糧倉(cāng)上位機(jī)實(shí)時(shí)監(jiān)測(cè)圖
阿里云物聯(lián)網(wǎng)平臺(tái)是一個(gè)集成了設(shè)備管理、數(shù)據(jù)安全通信和消息訂閱等功能的一體化平臺(tái)。向下支持連接海量設(shè)備,采集設(shè)備數(shù)據(jù)上云;向上提供云端API,服務(wù)端可通過(guò)調(diào)用云端API將指令下發(fā)至設(shè)備端,實(shí)現(xiàn)遠(yuǎn)程控制。
設(shè)備上報(bào)數(shù)據(jù)到阿里云物聯(lián)網(wǎng)平臺(tái)。1)創(chuàng)建產(chǎn)品與設(shè)備:在物聯(lián)網(wǎng)平臺(tái)上為設(shè)備注冊(cè)一個(gè)身份,獲取 設(shè) 備 證 書 信 息 (ProductKey、DeviceName和DeviceSecret)。該證書信息將燒錄到設(shè)備上,用于設(shè)備連接物聯(lián)網(wǎng)平臺(tái)時(shí),進(jìn)行身份認(rèn)證。2)為產(chǎn)品定義物模型:可以從屬性、服務(wù)和事件三個(gè)維度定義產(chǎn)品功能。物聯(lián)網(wǎng)平臺(tái)根據(jù)所定義的功能構(gòu)建出產(chǎn)品的數(shù)據(jù)模型,用于云端與設(shè)備端進(jìn)行指定數(shù)據(jù)通信。3)建立設(shè)備與平臺(tái)的連接:開發(fā)設(shè)備端SDK,傳入設(shè)備的證書信息,將設(shè)備連接到物聯(lián)網(wǎng)平臺(tái),使設(shè)備激活。4)服務(wù)端訂閱設(shè)備消息:服務(wù)端通過(guò)訂閱消息類型,接收設(shè)備相關(guān)消息,如設(shè)備上下線通知、設(shè)備生命周期變更、設(shè)備上報(bào)消息等。5)云端下發(fā)指令:使用物聯(lián)網(wǎng)平臺(tái)的在線調(diào)試功能,從控制臺(tái)下發(fā)指令到設(shè)備端。
使用MQTT協(xié)議把數(shù)據(jù)上傳到阿里云,核心代碼如下:
有效的測(cè)試是質(zhì)量控制中非常重要的環(huán)節(jié)。由于該系統(tǒng)是一個(gè)復(fù)雜的工程,實(shí)現(xiàn)的內(nèi)容非常多,測(cè)試正是反映工程質(zhì)量的最有效途徑之一,也是保證項(xiàng)目質(zhì)量的重要手段之一,所以必須嚴(yán)格執(zhí)行測(cè)試流程和規(guī)范。為保障平臺(tái)各項(xiàng)功能正常運(yùn)行,使得平臺(tái)性能達(dá)到最優(yōu),使用有Win7以上操作平臺(tái)配置的計(jì)算機(jī),分別采用搜狗和IE瀏覽器對(duì)上位機(jī)環(huán)境監(jiān)測(cè)模塊和云平臺(tái)模塊等功能進(jìn)行逐一測(cè)試。測(cè)試顯示系統(tǒng)數(shù)據(jù)傳遞延遲低于5 000 ms;數(shù)據(jù)監(jiān)測(cè)準(zhǔn)確率達(dá)99%;數(shù)據(jù)監(jiān)測(cè)實(shí)時(shí)性延遲3 000 ms。運(yùn)行結(jié)果表明,平臺(tái)各項(xiàng)功能均可以正常運(yùn)行。
通過(guò)構(gòu)建基于阿里云的智慧糧倉(cāng)監(jiān)測(cè)系統(tǒng),可以很好地改變傳統(tǒng)糧倉(cāng)信息采集模式。通過(guò)農(nóng)業(yè)物聯(lián)網(wǎng)技術(shù)測(cè)量糧倉(cāng)的環(huán)境參數(shù),并把數(shù)據(jù)上傳到阿里云平臺(tái),助力農(nóng)業(yè)生產(chǎn)的智能化、科學(xué)化管理,從而提高儲(chǔ)糧品質(zhì),使糧食產(chǎn)品在市場(chǎng)上贏得更好的聲譽(yù)。