周金鑫 吳珂挺 劉 穎 宋新樂
(防災科技學院信息工程學院,河北 三河 065201)
我國的貂、狐、貉等毛皮動物主要以大規模養殖場的形式進行養殖,極高的養殖密度給養殖帶來了疫病防控等安全隱患,同時還存在養殖設備老舊、養殖環境惡劣等問題[1]。隨著我國互聯網技術的不斷進步,與之相應的物聯網技術也逐漸被人們所重視,讓智慧養殖場成為未來發展的一種趨勢[2]。我們以低成本低能耗的Lora網絡結合Android軟件開發的基礎上,采用Java和SQL進行系統開發,設計出一套合理、高效的智慧養殖場系統。通過本系統能實現對養殖場的實時環境及數據監控,同時能夠通過手機移動端遠程控制,改善調節養殖環境,實現養殖人員對養殖場的智能化管理,從而達到改善養殖環境,提高養殖水平,增加養殖收入的目的。
本系統軟件共分為LoRa組塊、Android前后端、高清網絡攝像頭及傳感器繼電器節點四部分。本系統以Android軟件及LoRa自組織網絡為中心。傳感器節點將采集的環境數據通過自組織網絡將信息傳遞至網關,進而可通過連接網關的手機APP實現環境數據的實時顯示。同時手機可通過LoRa自組織網絡發送指令控制養殖場內的繼電器等設備的開關。同時養殖場內設置高清網絡攝像頭,可連接至手機APP實現手機對養殖場的實時監控。本系統的系統結構如圖1所示。

圖1 系統結構
LoRa網關主要由MCU主控芯片、LoRa收發模塊及收發天線、WiFi模塊、ZigBee模塊、以太網控制器及RJ45通訊模塊五大部分構成,能實現連接LoRa節點,連接ZigBee網絡、WIFI的功能。結構圖如圖2所示。

圖2 LoRa網關硬件結構圖
MCU采用的是ATMEL ATSAMD20 e18a作為系統主控芯片,是基于ARM Cortex-M0+內核SAM D20微控制器,功能強大,主要用于執行程序、協議轉換以及協調各外圍功能模塊工作。
LoRa模塊由收發天線和收發模塊兩部分構成,LoRa收發模塊這里選用的是WH-L101,WH-L101是一個支持點對點通信協議(同時支持集中器通信協議,需要更換固件)的低頻半雙工LoRa模塊,工作的頻段為:398~525Mhz(默頻470Mhz)。使用串口進行數據收發,降低了無線應用的門檻,可實現一對一或者一對多的通信。LoRa具有功率密度集中、抗干擾能力強的優勢,模塊通訊距離可達3500m(空曠視距,天線增益3dBi,高度大于2m,0.268Kbps空中速率)。模塊可以工作在1.8~3.6V電壓下,休眠電流僅3uA,滿足電池供電需求,適合超低功耗的應用場合。模塊的尺寸26.65×18.22×2.60mm,采用SMT封裝,幾乎可以滿足所有用戶應用中的對空間尺寸的要求,例如M2M、數據傳輸系統等。通過SPI總線與主控芯片進行數據通訊。LoRa收發模塊有兩種角色中繼器和集中器,可以實現LoRa組網和LoRa網絡的擴展,實現遠距離通信。
網關在典型LoRa通訊模塊的基礎上添加了WiFi、Zig-Bee、RJ45有線網絡三種通訊模式。其中WiFi、ZigBee這兩種通訊方式使用TTL通訊方式與網關MCU進行連接,RJ45有線通訊方式通過DM9000以太網控制器與網關MCU進行連接,通過MCU配置相關運行參數。WiFi通訊方式可以用解決網關與手機等數碼設備的無線數據交換問題。ZigBee通訊方式解決網關與傳統ZigBee自組網傳感器的數據交換問題。RJ45有線網絡通訊方式解決網關與PC服務器的數據交換問題。實現不同終端側多種連接協議轉換,從而進行長距離數據傳輸。網關的實物圖如圖3所示。

圖3 網關實物圖
LoRa節點主要包括MCU主控芯片、LoRa收發模塊及收發天線、傳感器、繼電器及外圍接口電路構成。如圖4所示。

圖4 LoRa節點硬件結構圖
MCU采用的是ATMEGA328,是高性能、低功耗AVR 8位微控制器,具有先進的RISC體系結構,高耐力非易失性內存段,內部校準的振蕩器外部和內部中斷源,有6個睡眠模式等特性,TQFP封裝,有32個引腳。LoRa收發模塊也采用WH-L101,與網關不同的是選用連接網關模式,節點支持多種功耗模式:運行模式、喚醒模式、低功耗接收模式和低功耗發送接收模式。其中低功耗接收模式和低功耗發送接收模式為低功耗模式,模塊上電后開始計時,若在空閑時間內串口和網絡端均無數據收發時模塊進入低功耗狀態,即休眠。休眠后也可以通過WAKE引腳下降沿中斷來喚醒模塊,喚醒后的模塊恢復運行模式,當空閑時間大于設定時間時模塊再次進入休眠狀態。傳感器選用了溫濕度傳感器、光照傳感器、液位傳感器、煙霧、CO2和PM2.5檢測傳感器等。
LoRa是一種低功耗廣域網通訊技術。LoRa具備長距離、低功耗、低成本、易于部署、標準化等特點,為使用用戶提供了一種簡單的實現遠距離通信的技術。
LoRa的技術關鍵點包括157 dB鏈路預算、距離>15 km的遠距離優勢;最小的基礎設施成本、使用網關/集中器擴展系統容量的易于建設和部署的優勢;電池壽命>10年、接收電流10 mA,休眠電流<200 nA的延長電池壽命的優勢以及免牌照的頻段、基礎設施成本低、節點/終端成本低等優勢[3]。
LoRa部署采用星型網絡架構[4]。星型架構與網狀網絡架構相比,具有低延遲、網絡結構簡單的特點。同時星型網絡架構便于安裝配置,同樣易于后期的管理維護。
本系統采用LoRa模塊的透明傳輸模式,在該模式下數據傳輸過程不影響數據傳輸內容,所發即所收,透明傳輸模式的優勢在于可實現兩模塊即插即用,無需任何數據傳輸協議[5]。
智慧養殖場系統APP是基于Android Studio開發平臺,使用Java語言進行開發,充分發揮了Android Studio運行速度快、智能化、虛擬速度快和跨平臺優勢[6]。后端使用Java語言、基于Eclipse平臺進行開發。系統APP運行于手機或手機虛擬機,通過WiFi連接至LoRa網關。其主要功能框架如圖5所示。

圖5 功能框架
如圖5所示,系統主要分為用戶登錄功能,備忘提醒功能,知識學習功能,視頻監控功能以及智慧養殖功能。用戶登錄可進行賬戶登錄,賬戶注冊以及賬號密碼找回操作,從而完成賬戶登錄。備忘提醒功能可根據需要添加記錄事件并設置提醒時間,完成重要事件的記錄保存與定時提示。知識學習功能可以跳轉到養殖知識學習網址獲取養殖知識,同時可以進入百度貼吧進行養殖經驗交流與學習。視頻監控功能可通過高清網絡攝像頭對養殖場內場景進行實時監控,方便養殖場的管理以及提高養殖場財產的安全保障。
本系統主要采用LoRa無線自組織網絡進行數據傳輸,需要對LoRa節點和網關進行配置,通過AT指令配置模塊的工作模式、波特率、信道和設備地址等參數。同時將設備連接至Android設備上進行系統開發,從而實現智慧養殖功能連接至LoRa網關,可通過LoRa自組織網絡進行數據的實時采集,以及發送指令對環境進行控制;可獲取實時的養殖場溫濕度,養殖場內儲存水位以及煙霧狀態數據;同時可完成對養殖場內的多路電路控制。
在Android開發中采用handler類傳遞Message,用于接受子線程發送的數據,并用此數據配合主線程更新UI。以下


本系統在Android Studio環境下進行編寫程序并編譯調試,生成APK文件,并運行在其中的Device Manger中,同時在物聯網虛擬仿真實驗平臺搭建仿真環境,進行仿真調試。軟件運行后進行相應功能的測試,系統各項功能運行正常。環境數據采集部分運行如圖6所示。

圖6 功能實現
智慧養殖場系統APP實現了Android軟件開發及LoRa自組網之間的技術聯系。實現了養殖事件提醒備忘,知識學習,視頻監控以及手機端對養殖場環境的監控。既可通過手機發送指令獲取環境數據,控制改善養殖場環境,亦可開啟智慧養殖模式,實現養殖場管理的自動化及智能化。本系統可廣泛應用于各種大型的養殖場,各項功能充分滿足了養殖場內的養殖需求。
智慧養殖系統APP實現了養殖場的物聯網模式,實現了養殖的數字化、智能化、自動化。隨著技術的不斷完善與升級,該系統將能推廣應用于各類養殖場。