熊強強,齊志藝,曾美琳2,
(1.南昌理工學院,江西 南昌 330044;2.江西工業貿易職業技術學院,江西南昌 330038;3.南昌蛋訊電子科技有限公司,江西南昌 330029)
我國科學技術水平持續提升,傳統農業應當積極引入科技實現智慧農業改革,尤其是養殖業,正處于重要改革和發展時期。原本不超過千頭的奶牛和肉牛養殖場是以粗放經營模式為主,具有信息技術水平低和管理水平滯后等問題,導致無法顯著提升飼養效果,同時也難以控制較高的人工成本。對此,基于云計算、大數據和物聯網等技術,完成以LoRa無線傳感網絡為基礎的群養奶牛個體信息監控系統的研發與實現,使中小規模奶牛養殖場的奶牛管理信息化水平得以提升。
系統運行之后,首先利用RFID 電子耳標辨別奶牛身份[1-3],然后對奶牛的體溫、心率以及運動狀態信息進行采集,接著利用LoRa 無線傳感網絡向匯聚節點傳輸這些個體信息,匯聚節點成功接收信息后對其進行分析和處理,再打包成數據幀,利用LoRa 無線傳感網絡向后端監控平臺傳遞,從而利用PC 端監控群養奶牛個體信息,而移動終端可以根據需要拍照或者錄像,并與后端監控平臺實時交互信息,使奶牛個體信息得以共享。系統工作原理圖如圖1所示。

圖1 系統工作原理圖
硬件設計具體包括移動終端、服務器端、監控端、匯聚節點以及監測節點。監測節點包含三個傳感器,分別用于監測奶牛體溫、心率血氧以及運動狀態,RFID 電子耳標用于辨別奶牛身份[4-5]。
動物健康情況可通過體溫改變來體現,就如同人類一樣,低燒高燒就表示身體健康存在異常,養殖奶牛時對于體溫的監測也非常重要。MXL90615 傳感器被用來完成體溫的監測,其主要優勢為精度高,測得的最高溫與最低溫之差高達155 ℃,正常運轉過程中最高溫與最低溫之差是125 ℃,并且具有功耗低、尺寸小和成本低的特征;且響應速度快,動態測量奶牛運動時信息更為便捷。紅外信號通過MXL90615向電信號轉變,然后進行放大和處理,并保存最終運算結果。
中小型奶牛養殖場空間有限,奶牛總量也不能太多,否則每一頭奶牛活動范圍也會受限,因此奶牛運動行為都有相應的規律。奶牛運動行為能夠反映其健康狀態,將運動傳感器安裝到奶牛的頸部,對其運動行為監測并獲取圖像,利用去除偽跡算法處理圖像,獲取奶牛的側臥、走動和采食等行為。監測奶牛全天運動行為,通過算法比較所有圖像,獲取奶牛運動位移,進而對加速度等進行計算,最后根據奶牛運動量對奶牛健康狀態進行判斷。該研發系統中測量運動的傳感器選用的是LIS2DH,可實現三軸加速度的測量,低功耗情況下電流只有2 μA,輸出頻率范圍在1 Hz~5.3 kHz,加速度量程為±2g、±4g、±8g、±16g。該傳感器的可編程中斷共兩個,低功耗狀態下能夠對運動加速度進行檢測,并對運動狀態進行研究,并使中斷喚醒得以實現,從而實現奶牛運動數據的傳輸。
奶牛體征參數中心率是非常重要的,一般為70~80次/分(犢牛),40~60次/分(2歲牛),60~80次/分(成年奶牛),30~60 次/分(成年公牛)的心率脈搏指標是正常的。如圖2 所示為此模塊電路原理示意圖,光電傳感器是其最主要的器件,監測到奶牛脈搏信號后將其轉變成光信號,再將其轉變為電信號。奶牛體內血管血流量會隨著心臟跳動而發生改變,探測器接收光強受到血流量改變的影響,由此能夠測量出心率值。此模塊對奶牛心率信號采集是通過MAX30100 傳感器來實現的[6-9]。

圖2 心率信號采集電路
RFID 電子耳標負責對奶牛體重、年齡和編號等信息進行辨別。RFID 器件作為電子耳標的核心元件,其電子讀寫器選擇R200 模塊,該模塊工作頻率在840~960 MHz 范圍內可調,讀寫距離最大能夠達到20 m,主要優勢在于距離遠、尺寸小和功耗低,很好地滿足體積小和成本低的要求。
匯聚節點硬件由STM32F103ZET6 微控制器、LoRa 數傳電路等構成。每隔5 ms 喚醒監測節點,同時打包采集的數據利用LoRa 傳輸到匯聚節點,成功接收之后對數據進行監測,再利用LoRa 數傳向STM32 微控制器傳輸,完成解析再與上位機進行通信,完成數據幀打包,利用LoRa 數傳連接上位機。選擇由安信可新推出的LoRa 模塊Ra-02 作為核心模塊,如圖3 所示為LoRa 通信模塊實物圖[10-13]。

圖3 LoRa通信模塊實物圖
主程序流程圖如圖4 所示。系統首先進行初始化,為系統運行提供保證,接下來利用RFID 電子耳標辨別奶牛個體信息,以保證奶牛參數的正確,然后利用相應的傳感器對奶牛的運動狀態、血氧、體溫以及心率等數據進行采集,再通過LoRa 無線傳感網絡傳輸至匯聚節點,匯聚節點獲取信息之后,完成相應的處理,具體包括分類、篩選以及壓縮等,打包后向監控服務器傳遞。監控端處理數據并顯示相應數據,以移動端需求為依據,將相應的數據發送給移動終端。

圖4 主程序流程圖
圖5 所示為LoRa 無線通信接收數據子程序流程圖。此程序運行之后,首先完成接收模塊的初始化操作,接下來對接收方式進行判定。若選擇單一接收模式,對接收通道前導碼不斷查詢,如果是需要的就對數據進行接收。若選擇連續接收方式,則接收數據開始的判定條件:接收的前導碼長度與SX1278 芯片RegPreambleMsb 寄存器和RegPreambleLsb 寄存器設置的前導碼長度相同[14-15]。

圖5 LoRa無線通信接收數據子程序
圖6 所示為LoRa 無線通信發送數據子程序流程圖。該子程序運行后首先進行包括時鐘電路、Flash 閃存電路等的初始化配置,還必須配置載波頻率擴頻因子、帶寬發送功率等通信參數。SX1278發送數據時,首先,需要把奶牛的數據信息寫入到SX1278 的FIFO 中;然后,設置RegOpMode 寄存器,以便從休眠模式切換到發送模式;數據發送后,根據該芯片ReglrqFlags 寄存器的TxDone 位數值判斷數據發送是否成功。

圖6 LoRa無線通信發送數據子程序
群養奶牛監測系統監控臺軟件的作用是對采集個體信息數據進行保存、查詢、處理、研究以及展示。上位機軟件通過Visual Studio 開發平臺來實現[16-20],軟件模塊開發是利用C#.Net 的窗體應用程序來完成,上位機功能主要包括設備管理設定、人際交互頁面以及查詢保存數據等。圖7 所示為監控臺軟件結構圖。

圖7 監控臺軟件
手機移動端監控子程序流程圖如圖8 所示,程序開始運行以后,首先通過輸入服務器的IP 和Port,判斷是否連接正確,如果正確連接則能夠順利顯示監控到的視頻信息,相應的操作也能夠實現,如果連接未成功則程序返回到最開始重新運行,重新提示需要輸入正確的服務器IP 和Port。移動終端的監控共分為照片瀏覽、視頻保存和照片保存三種操作,如果不需要同步觀看則退出即可。

圖8 手機移動端監控子程序
系統核心電路板實物圖如圖9 所示,移動終端示意圖如圖10 所示。

圖9 系統核心電路板實物圖

圖10 移動終端示意圖
因通信功能為該系統的核心功能,為此設計兩個測試對系統通信效果進行檢測,第一個測試是對后臺監控端與監測節點數據通信狀況進行測試,測試環境包括檢測節點600 個,后臺監控主機一臺。測試過程:首先,通過波特率為9 600 bit/s 串口將測試數據發送至監測節點,然后,監測節點利用LoRa 無線傳感網絡(無線收發模塊射頻中心的頻率和發射功率分別為470 MHz 和20 dBm)將這些數據發送至后臺監控主機。最終,通過后臺監控主機上接收到的數據情況,來測試監測節點與后臺監控端傳輸距離與丟包率之間的關系。測試過程中,每次發送數據包的數量都會是100 個。表1 所示為對應的測試結果。

表1 監控節點至后臺監控端通信效果
由表1 中數據可知,傳輸距離越大丟包量就越多。傳輸距離不超過2.5 km 的情況下,數據丟包率低于15%。
表2 為測試2,是對移動終端與后臺監控端通信性能進行檢測。具體測試為利用手機移動終端查看后臺監控端所提供的奶牛的視頻圖像。

表2 移動終端至監控端通信效果
根據表2 可知,當對30 頭奶牛的信息數據同步檢測與查看時,手機終端丟包率達到8.6%~10.3%,且在查看視頻過程中,出現卡頓情況較為嚴重。
群養奶牛個體信息監測系統應用了LoRa 無線通信技術,該技術可實現后臺端和監測節點以及移動終端之間的數據通信,確保全方位的監測群養奶牛的個體健康情況。系統能夠穩定運行,數據的遠距離傳輸也得以實現,同時具有功耗小的優勢,并且組網也非常簡單和方便。然而該系統也存在一些不足,如移動終端同時監測多頭奶牛的情況下,會導致移動終端對視頻的瀏覽等功能帶來較為明顯的干擾,同時,整套系統的價格優勢相對來說并不是非常突出,未來對于以上問題和不足還會不斷改進,同時也會不斷完善其他功能。