蔡春成,郭 鵬
(天津農(nóng)學(xué)院 計(jì)算機(jī)與信息工程學(xué)院,天津 300384)
牛舍環(huán)境影響牛只的身體健康和生產(chǎn)水平,監(jiān)測(cè)牛只身體狀況和牛舍環(huán)境狀況可以為牛舍環(huán)境調(diào)控提供依據(jù),不僅對(duì)養(yǎng)牛效益產(chǎn)生重要的影響,也符合動(dòng)物福利的要求[1]。農(nóng)業(yè)物聯(lián)網(wǎng)利用傳感器對(duì)生產(chǎn)進(jìn)行監(jiān)測(cè),通過網(wǎng)絡(luò)傳輸技術(shù)將采集到de 數(shù)據(jù)傳輸?shù)接?jì)算機(jī)中,由計(jì)算機(jī)對(duì)數(shù)據(jù)進(jìn)行分析處理,根據(jù)處理結(jié)果啟動(dòng)相應(yīng)的反饋裝置,可以實(shí)現(xiàn)精準(zhǔn)化管理[2],提高生產(chǎn)效率。本文提出了基于單片機(jī)的養(yǎng)牛監(jiān)測(cè)系統(tǒng),系統(tǒng)使用單片機(jī)控制傳感器實(shí)時(shí)監(jiān)測(cè)牛舍的環(huán)境和牛只身體狀況,利用ZigBee 網(wǎng)絡(luò)將采集到的數(shù)據(jù)傳輸?shù)綌?shù)據(jù)中心計(jì)算機(jī),用戶可以在計(jì)算機(jī)上查看監(jiān)測(cè)的數(shù)據(jù)信息,為后續(xù)的養(yǎng)牛智能化自動(dòng)控制提供技術(shù)準(zhǔn)備。
養(yǎng)牛監(jiān)測(cè)系統(tǒng)硬件由計(jì)算機(jī)、單片機(jī)、傳感器和ZigBee無線網(wǎng)絡(luò)組成。
單片機(jī)是整個(gè)系統(tǒng)的控制核心。系統(tǒng)加電后,單片機(jī)檢查ZigBee 網(wǎng)絡(luò)和各種傳感器是否能正常工作,在發(fā)現(xiàn)故障后將錯(cuò)誤信息顯示在連接的顯示屏上。單片機(jī)在系統(tǒng)進(jìn)入工作狀態(tài)后將接收到的監(jiān)測(cè)據(jù)發(fā)送到數(shù)據(jù)中心的計(jì)算機(jī)。本系統(tǒng)選用Arduino UNO REV3 單片機(jī)開發(fā)板[3],通過集成開發(fā)環(huán)境編寫程序并完成燒錄實(shí)現(xiàn)對(duì)單片機(jī)的程序設(shè)計(jì)。
MPU6050 運(yùn)動(dòng)傳感器集成了3 軸MEMS 陀螺儀、3 軸MEMS 加速度計(jì)以及一個(gè)可擴(kuò)展的數(shù)字運(yùn)動(dòng)處理器,分別使用3 個(gè)16 位的數(shù)模轉(zhuǎn)換裝置將其測(cè)量的模擬信號(hào)量轉(zhuǎn)化為可輸出的數(shù)字信號(hào)量,可以精確地監(jiān)測(cè)物體運(yùn)動(dòng)狀況[4]。
DS18B20 測(cè)溫傳感器內(nèi)的低溫度系數(shù)振蕩器的振蕩頻率受溫度的影響很小,使用它產(chǎn)生固定頻率的脈沖信號(hào),并將信號(hào)送給低溫振蕩器減法計(jì)數(shù)器;高溫度系數(shù)振蕩器的振蕩頻率的改變隨溫度變化明顯,它產(chǎn)生的信號(hào)作為高溫振蕩器計(jì)數(shù)器脈沖輸入。DS18B20 利用兩種振蕩器產(chǎn)生的不同信號(hào)實(shí)現(xiàn)溫度的測(cè)量[5]。
本設(shè)計(jì)選用DHT11溫濕度傳感器,該傳感器包括一個(gè)電阻式感濕元件和一個(gè)NTC 測(cè)溫元件,具有體積小、功耗低的優(yōu)點(diǎn)[6]。
氨氣、硫化物等有害氣體不利于牛只的健康,二氧化錫的電導(dǎo)率隨污染氣體濃度的增加而增大,利用二氧化錫的這種特征可以實(shí)現(xiàn)對(duì)有害氣體的監(jiān)測(cè),以二氧化錫作為氣敏材料的MQ-135 傳感器對(duì)有害氣體靈敏度高,監(jiān)測(cè)效果比較好[7],本設(shè)計(jì)選用MQ135傳感器監(jiān)測(cè)牛舍中有害氣體的含量。
養(yǎng)牛監(jiān)測(cè)系統(tǒng)在加電后首先初始化單片機(jī),并啟動(dòng)Zig-Bee 網(wǎng)絡(luò),網(wǎng)絡(luò)啟動(dòng)成功后單片機(jī)利用網(wǎng)絡(luò)將傳感器采集的數(shù)據(jù)傳輸?shù)接?jì)算機(jī)中,在計(jì)算機(jī)中顯示監(jiān)測(cè)數(shù)據(jù),并對(duì)數(shù)據(jù)進(jìn)行分析處理;網(wǎng)絡(luò)啟動(dòng)失敗,則再次嘗試連接網(wǎng)絡(luò),多次失敗后提示系統(tǒng)故障,結(jié)束啟動(dòng)嘗試。工作流程見圖1。
圖1 工作流程圖Fig 1.Workflow diagram
本系統(tǒng)將溫度和濕度及空氣質(zhì)量傳感器固定在牛棚內(nèi),牛只運(yùn)動(dòng)傳感器和體溫傳感器使用項(xiàng)圈掛在牛只頸部,實(shí)現(xiàn)對(duì)牛棚內(nèi)環(huán)境和牛只體溫和運(yùn)動(dòng)狀況等信息的監(jiān)測(cè)。本系統(tǒng)計(jì)算機(jī)端軟件使用Python 語言編程實(shí)現(xiàn),2022 年9 月在天津某奶牛公司進(jìn)行了監(jiān)控實(shí)驗(yàn)。計(jì)算機(jī)端程序接收到傳感器采集的數(shù)據(jù)顯示結(jié)果見圖2。從圖中顯示結(jié)果中可以知牛棚內(nèi)溫度27.5℃、濕度40%、空氣質(zhì)量指數(shù)36、牛的體溫39.69℃和牛只運(yùn)動(dòng)狀況數(shù)據(jù)。其中運(yùn)動(dòng)監(jiān)測(cè)數(shù)據(jù)中的GX代表繞X軸旋轉(zhuǎn)的角速度,GY 代表繞Y軸旋轉(zhuǎn)的角速度,GZ 代表繞Z軸旋轉(zhuǎn)的角速度;AX 代表X軸方向加速度,AY 代表Y軸方向加速度,AZ 代表Z軸方向加速度;g 代表重力加速度;AQI代表空氣質(zhì)量指數(shù)。
圖2 后臺(tái)顯示監(jiān)測(cè)數(shù)據(jù)Fig.2 Monitoring data displayed in background
在計(jì)算機(jī)中可以查看牛棚環(huán)境數(shù)據(jù),一天時(shí)間監(jiān)測(cè)的溫度、濕度和空氣污染指數(shù)變化見圖3。
圖3 牛棚內(nèi)1 d溫度、濕度和空氣污染指數(shù)變化圖Fig.3 Changes of temperature,humidity and air pollution Index in the cowshed
本文針對(duì)牛舍環(huán)境和牛身體狀況的信息采集,設(shè)計(jì)了基于單片機(jī)養(yǎng)牛監(jiān)測(cè)系統(tǒng)。該系統(tǒng)實(shí)現(xiàn)了牛只體溫、運(yùn)動(dòng)狀況和牛舍溫度濕度以及有害氣體信息的采集,使用ZigBee 網(wǎng)絡(luò)將監(jiān)測(cè)信息傳輸?shù)接?jì)算機(jī)中,實(shí)現(xiàn)了養(yǎng)牛過程中所需要的遠(yuǎn)程牛舍環(huán)境和牛只個(gè)體的遠(yuǎn)程監(jiān)測(cè),本系統(tǒng)具有設(shè)置簡(jiǎn)單、性價(jià)比高的優(yōu)點(diǎn),為基于物聯(lián)網(wǎng)的奶牛養(yǎng)殖系統(tǒng)的發(fā)展提供了借鑒。