范曉紅,孫成磊
(山東信息職業(yè)技術(shù)學(xué)院,山東濰坊,261000)
在農(nóng)業(yè)振興、鄉(xiāng)村發(fā)展過(guò)程中畜牧養(yǎng)殖一直是其中的重要組成部分,也是我國(guó)經(jīng)濟(jì)的支柱產(chǎn)業(yè)之一。隨著技術(shù)的成熟與進(jìn)步,畜牧養(yǎng)殖的水平也在不斷地提升。傳統(tǒng)畜牧養(yǎng)殖行業(yè)由于養(yǎng)殖技術(shù)、管理理念相對(duì)落后,大規(guī)模養(yǎng)殖生產(chǎn)難于管理,人工成本高,牲畜健康監(jiān)測(cè)管理難度大,環(huán)境維護(hù)成本高。
國(guó)家高度重視畜牧行業(yè)的現(xiàn)代化進(jìn)程,并在《“十四五”全國(guó)畜牧獸醫(yī)行業(yè)發(fā)展規(guī)劃》中提出目標(biāo),到2025 年,畜牧業(yè)的現(xiàn)代化水平要取得顯著進(jìn)展。畜牧行業(yè)的數(shù)字化進(jìn)程不斷地加快,大批數(shù)字化轉(zhuǎn)型的成果也在接二連三應(yīng)用到畜牧養(yǎng)殖領(lǐng)域,例如智慧農(nóng)業(yè)、智慧牧場(chǎng)、智慧灌溉、智能監(jiān)控等。物聯(lián)網(wǎng)、大數(shù)據(jù)等新一代信息技術(shù)的出現(xiàn)助力了畜牧行業(yè)的數(shù)字化轉(zhuǎn)型,有助于提升畜牧養(yǎng)殖的效率、降低人工成本、加速畜牧業(yè)的現(xiàn)代化進(jìn)程。
本系統(tǒng)以物聯(lián)網(wǎng)關(guān)鍵技術(shù)Zigbee 為基礎(chǔ),設(shè)計(jì)并實(shí)現(xiàn)了基于Zigbee 的物聯(lián)網(wǎng)畜牧養(yǎng)殖系統(tǒng)。通過(guò)感知層傳感器獲取溫濕度、煙霧等數(shù)據(jù),并進(jìn)行智能報(bào)警、智能電燈開關(guān)、智能門禁等。通過(guò)Zigbee 進(jìn)行組網(wǎng),并開發(fā)設(shè)計(jì)畜牧養(yǎng)殖Android 移動(dòng)客戶端,進(jìn)行智能化監(jiān)測(cè)、控制,將畜牧養(yǎng)殖過(guò)程進(jìn)行數(shù)字化轉(zhuǎn)型,提升畜牧養(yǎng)殖現(xiàn)代化進(jìn)程。
圖1
Zigbee 技術(shù)功耗低、帶寬低且數(shù)據(jù)穩(wěn)定,十分符合物聯(lián)網(wǎng)通信的標(biāo)準(zhǔn)。基于Zigbee 技術(shù)構(gòu)建的無(wú)線傳感網(wǎng)絡(luò)由大量傳感器節(jié)點(diǎn)通過(guò)無(wú)線通信技術(shù)構(gòu)成,遵循IEEE802.15.4 標(biāo)準(zhǔn),是一種短距離、低速率的自組織多跳網(wǎng)絡(luò)。
ZigBee 搭載了TI 公司的CC2530 單片機(jī)核心模組,它的工作周期較短、可以通過(guò)切換電源的模式進(jìn)入休眠狀態(tài)從而減少電源損耗、收發(fā)信息功耗低。傳輸范圍一般在10~100m 之間,數(shù)據(jù)傳輸速率為10~250kbit/s,工作頻段主要分布在2.4GHz(全球)、868MHz(歐洲)、915MHz(美國(guó))??梢酝ㄟ^(guò)網(wǎng)絡(luò)協(xié)調(diào)器自動(dòng)組建網(wǎng)絡(luò)。主要應(yīng)用于傳輸速率要求低的場(chǎng)景,可靠性較高。
圖2
Zigbee 主要遵循四層網(wǎng)絡(luò)模型,分別是物理層、媒體網(wǎng)絡(luò)控制層、網(wǎng)絡(luò)層、應(yīng)用層。
應(yīng)用層:基于檢測(cè)的任務(wù),為用戶開發(fā)不同的應(yīng)用層軟件服務(wù);
網(wǎng)絡(luò)層:通過(guò)路由與交換,實(shí)現(xiàn)節(jié)點(diǎn)的拓?fù)浣Y(jié)構(gòu)建立;
介質(zhì)訪問(wèn)控制層:主要負(fù)責(zé)數(shù)據(jù)幀的封裝、處理及鏈路管理等;
物理層:主要負(fù)責(zé)從無(wú)線信道中收發(fā)數(shù)據(jù)并對(duì)數(shù)據(jù)的調(diào)制與解調(diào)等管理。
畜牧場(chǎng)地選用的傳感器主要包括溫濕度傳感器、煙霧傳感器、火焰?zhèn)鞲衅鞯龋x用的執(zhí)行設(shè)備包括風(fēng)扇、電燈、門鎖等。所有的設(shè)備均是通過(guò)Zigbee 模塊進(jìn)行連接、控制。其中Zigbee 模組采用的核心芯片是CC2530,系統(tǒng)主要組成部分:供電裝置、傳感器模塊、MCU模塊、無(wú)線通信模塊、嵌入式軟件。
其中各傳感器選用的型號(hào)及功能特點(diǎn)如表1 所示。
表1
牧場(chǎng)環(huán)境之所以使用Zigbee 組網(wǎng)主要是因?yàn)樗且环N分布式自組織的數(shù)據(jù)采集網(wǎng)絡(luò),可以快速組建局域網(wǎng)絡(luò),實(shí)現(xiàn)牧場(chǎng)環(huán)境監(jiān)測(cè)控制,具有功耗低、復(fù)雜度低、成本低等特點(diǎn)。根據(jù)功能及角色的不同,網(wǎng)絡(luò)節(jié)點(diǎn)中的Zigbee 設(shè)備大致分為三類:協(xié)調(diào)器(Coordinator)、路由節(jié)點(diǎn)(Router)、終端節(jié)點(diǎn)(End-Device)。其中協(xié)調(diào)器主要用于啟動(dòng)和配置網(wǎng)絡(luò),負(fù)責(zé)與網(wǎng)關(guān)通信,是網(wǎng)絡(luò)的中心節(jié)點(diǎn)[1]。一個(gè)Zigbee 網(wǎng)絡(luò)只有一個(gè)協(xié)調(diào)器。路由器節(jié)點(diǎn)可以將數(shù)據(jù)轉(zhuǎn)發(fā)給其他設(shè)備,也可以進(jìn)行環(huán)境的監(jiān)測(cè)。終端設(shè)備直接與傳感器通信實(shí)現(xiàn)數(shù)據(jù)采集與控制。
基于IEEE802.15.4 協(xié)議規(guī)范,ZigBee 無(wú)線自組網(wǎng)技術(shù)規(guī)定了3 種無(wú)線網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu):星型結(jié)構(gòu)、樹狀結(jié)構(gòu)以及網(wǎng)狀結(jié)構(gòu)[2]。星型結(jié)構(gòu)是其中最簡(jiǎn)單的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu),結(jié)構(gòu)中的路由器節(jié)點(diǎn)和終端設(shè)備節(jié)點(diǎn)都只和協(xié)調(diào)器進(jìn)行通信。樹狀結(jié)構(gòu)中協(xié)調(diào)器擔(dān)任頂層父節(jié)點(diǎn),負(fù)責(zé)匯集所有傳感器節(jié)點(diǎn)中的網(wǎng)絡(luò)數(shù)據(jù),路由器節(jié)點(diǎn)負(fù)責(zé)承接上下節(jié)點(diǎn),用于匯集子節(jié)點(diǎn)轉(zhuǎn)發(fā)的數(shù)據(jù),子節(jié)點(diǎn)間沒(méi)有直接通信線路,只能與父節(jié)點(diǎn)通信,節(jié)點(diǎn)與節(jié)點(diǎn)之間通過(guò)中間的路由器節(jié)點(diǎn)形成多跳通信,主要應(yīng)用于網(wǎng)絡(luò)容量相對(duì)較小的場(chǎng)合。網(wǎng)狀結(jié)構(gòu)由協(xié)調(diào)器、路由節(jié)點(diǎn)及終端節(jié)點(diǎn)構(gòu)成的多路徑、自組織網(wǎng)絡(luò)結(jié)構(gòu),通信方式靈活,一條通信路徑的損壞不會(huì)影響對(duì)整個(gè)網(wǎng)絡(luò)通信質(zhì)量。
圖3
本文采用的是樹狀結(jié)構(gòu)通信方式進(jìn)行自組網(wǎng),組網(wǎng)結(jié)構(gòu)圖如圖4 所示。
圖4
ZigBee 在2.4GHz 頻段內(nèi)具備強(qiáng)抗干擾能力,該頻段劃分為16 個(gè)通信信道,信道11~26。協(xié)調(diào)器創(chuàng)建網(wǎng)絡(luò)并設(shè)置網(wǎng)絡(luò)號(hào)PANID,選用其中一個(gè)信道CHANNEL 進(jìn)行通信。終端設(shè)備通電后掃描通道中的網(wǎng)絡(luò),然后選擇合適網(wǎng)絡(luò)并向協(xié)調(diào)器或者路由器發(fā)送入網(wǎng)請(qǐng)求,請(qǐng)求通過(guò)后,即可將感知層采集的傳感器數(shù)據(jù)通過(guò)指定的PANID、CHANNEL 進(jìn)行匯聚并經(jīng)由協(xié)調(diào)器上傳到網(wǎng)關(guān)中,與互聯(lián)網(wǎng)建立通信。
傳感器節(jié)點(diǎn)采集的溫濕度、光照等數(shù)據(jù)經(jīng)過(guò)Zigbee 終端設(shè)備節(jié)點(diǎn),經(jīng)由路由節(jié)點(diǎn)轉(zhuǎn)發(fā)、協(xié)調(diào)器節(jié)點(diǎn)匯聚后通過(guò)串口與網(wǎng)關(guān)相連接,網(wǎng)關(guān)數(shù)據(jù)與云平臺(tái)實(shí)現(xiàn)數(shù)據(jù)共享,云平臺(tái)上實(shí)現(xiàn)牧場(chǎng)的遠(yuǎn)程監(jiān)測(cè)與控制。并實(shí)時(shí)對(duì)異常數(shù)據(jù)進(jìn)行預(yù)警處理。
圖5
同時(shí)本畜牧養(yǎng)殖系統(tǒng)開發(fā)了配套的Android手機(jī)客戶端,用戶可以通過(guò)手機(jī)實(shí)時(shí)查看牧場(chǎng)環(huán)境狀態(tài),及時(shí)了解牲畜的活動(dòng)狀態(tài)信息。手機(jī)客戶端APP主要由注冊(cè)/登錄、環(huán)境監(jiān)測(cè)、棚舍控制、我的信息等四大模塊組成。注冊(cè)/登錄模塊主要包括新用戶身份信息登記注冊(cè)、老用戶賬號(hào)登錄功能。歡迎界面展示牧場(chǎng)信息,用于宣傳牧場(chǎng)。注冊(cè)/登錄功能通過(guò)記錄用戶數(shù)據(jù)并對(duì)新老用戶進(jìn)行注冊(cè)、登記。環(huán)境監(jiān)測(cè)模塊主要負(fù)責(zé)將感知層傳感器采集的數(shù)據(jù)實(shí)時(shí)顯示供用戶查閱使用。棚舍控制模塊主要負(fù)責(zé)遠(yuǎn)程實(shí)現(xiàn)牧場(chǎng)設(shè)備的控制開關(guān)等。我的信息模塊主要記錄用戶的信息及意見反饋等。
圖6
主要分為界面設(shè)計(jì)和功能開發(fā)兩部分。其中界面開發(fā)主要通過(guò)布局+控件完成設(shè)計(jì),常用的布局和控件有RelativeLayout、LinearLayout、ConstraintLayout、TextView、Button、ImageView 等。功能開發(fā)主要涉及數(shù)據(jù)的采集及控制,本模塊主要通過(guò)網(wǎng)絡(luò)請(qǐng)求框架Retrofit 實(shí)現(xiàn)遠(yuǎn)程數(shù)據(jù)的采集和控制,Retrofit 是對(duì)okhttp 的二次封裝,可以實(shí)現(xiàn)同步、異步、支持多數(shù)據(jù)解析。本文采用的網(wǎng)絡(luò)通信及Json 數(shù)據(jù)解析關(guān)鍵代碼如下:
同時(shí)采用多線程通信方式進(jìn)行溫濕度等數(shù)據(jù)的實(shí)時(shí)采集與顯示。并添加異常狀態(tài)預(yù)警模塊,通過(guò)閾值監(jiān)測(cè),對(duì)環(huán)境數(shù)據(jù)進(jìn)行實(shí)時(shí)監(jiān)控,如果監(jiān)測(cè)數(shù)據(jù)超過(guò)閾值,及時(shí)預(yù)警并通知相關(guān)管理人員,主要使用的API 為:
軟件主要功能效果圖如圖7 所示。
圖7
使用該畜牧養(yǎng)殖系統(tǒng)可以實(shí)現(xiàn)對(duì)牧場(chǎng)環(huán)境的實(shí)時(shí)監(jiān)測(cè)與控制,并能夠及時(shí)預(yù)警潛在隱患信息,提高了牧場(chǎng)的管理和維護(hù)效率和水平,減少了勞動(dòng)力的浪費(fèi)。通過(guò)云平臺(tái)、手機(jī)客戶端等多平臺(tái)監(jiān)測(cè)和使用,方便用戶和管理者對(duì)牧場(chǎng)進(jìn)行及時(shí)管理,歷史數(shù)據(jù)的分析處理,有利于對(duì)畜牧狀態(tài)的統(tǒng)計(jì)分析。安裝并運(yùn)行設(shè)計(jì)程序到手機(jī)中,用戶體驗(yàn)度良好。