牛海春,王樂林,宋海燕
(青島黃海學院,山東青島,266427)
目前,我國的經(jīng)濟實力快速提升,人民對美好生活的要求不斷提高,尤其是在食品安全上的問題受到人民群眾的高度關(guān)注。近幾年,對畜禽肉類食品安全的要求大大提高,要使畜禽肉類食品的質(zhì)量得到保證,就必須保證畜禽養(yǎng)殖階段是一種健康的環(huán)境。
畜禽養(yǎng)殖環(huán)境監(jiān)測系統(tǒng)的研究以及推廣使用,可以監(jiān)測和調(diào)節(jié)畜禽養(yǎng)殖的環(huán)境,改善禽畜的生長環(huán)境,減少禽畜患疫病的風險,保證禽畜能夠在健康的環(huán)境里成長,使畜禽肉類食品的原材料的質(zhì)量得到保證。同時,能夠減少勞動力、降低勞動強度、增加養(yǎng)殖戶的經(jīng)濟收入。所以畜禽養(yǎng)殖環(huán)境監(jiān)測系統(tǒng)對養(yǎng)殖行業(yè)發(fā)展有積極影響,并且具有很高的應用價值。
畜禽養(yǎng)殖環(huán)境監(jiān)測系統(tǒng)的工作原理是通過環(huán)境檢測模塊對畜禽養(yǎng)殖環(huán)境中的因素進行實時采集和監(jiān)控,之后由微控制器模塊集中處理,再由微處理器模塊將獲取的信息傳送到OLED顯示模塊顯示,同時由無線通訊模塊將數(shù)據(jù)上傳至云平臺,并能夠在手機上實時監(jiān)測,以實現(xiàn)遠程監(jiān)控。該系統(tǒng)的整體方案設計如圖1所示[1]。
圖1 整體方案設計
畜禽養(yǎng)殖環(huán)境監(jiān)測系統(tǒng)由硬件和軟件兩部分組成,在硬件設計方面由溫濕度檢測模塊、氨氣檢測模塊、顯示模塊、無線通訊模塊及排風扇、加濕器等部分組成。
2.2.1 二氧化碳檢測模塊電路設計
二氧化碳檢測選用SGP30二氧化碳傳感器,SGP30易于集成,應用于空氣質(zhì)量檢測儀、便攜式氣體檢測儀、智能家居、家電和物聯(lián)網(wǎng)等場合。SGP30二氧化碳傳感器檢測范圍最高能達到60000ppm,在0ppm-5144ppm檢測范圍時,測量誤差為1ppm-3ppm,精度較高,所檢測的二氧化碳濃度數(shù)值較為準確。SGP30傳感器啟動時間短,響應速度快,價格較為便宜。
2.2.2 溫濕度傳感器模塊電路設計
為保證測量范圍符合要求,并保證測量信息的準確性以及抗干擾能力,選用SHT30溫濕度傳感器模塊。SHT30模塊濕度測量范圍為0-100%RH,測量誤差為±5%;溫度測量范圍為-40℃~125℃,測量誤差為±2℃;且SHT30靈敏度高、響應速度快,上電3秒后即可輸出較為準確數(shù)據(jù)。
2.2.3 氨氣傳感器模塊電路設計
在畜禽養(yǎng)殖環(huán)境監(jiān)測系統(tǒng)中氨氣傳感器模塊采用MG812氣體傳感器模塊,氨氣濃度檢測范圍達到100ppm。MG812模塊上電后需要20秒左右的時間才能得到較為穩(wěn)定的數(shù)據(jù),MG812是模擬量輸出,需要通過單片機進行模數(shù)轉(zhuǎn)換才能獲取氨氣的濃度值[2]。
在畜禽養(yǎng)殖環(huán)境監(jiān)測系統(tǒng)中無線通訊模塊選用ESP8266 WIFI模塊,該模塊功耗低,體積小,穩(wěn)定性高,價格低,可以連接熱點或者路由器通過MQTT協(xié)議上傳至云平臺??梢酝ㄟ^AT指令進行調(diào)試,方便測試以及程序的編寫。
畜禽養(yǎng)殖環(huán)境監(jiān)測系統(tǒng)中外圍設備包括排風扇、加濕器、濕簾、加熱器。選用220V交流電的六寸小型排風扇、熱風機、小型抽水泵以及裁剪的濕簾,繼電器選用PMN5D固態(tài)繼電器。PMN5D固態(tài)繼電器可用于沖擊大、振動和污染的惡劣工作環(huán)境,并且能夠?qū)崿F(xiàn)無火花導通,用于控制外圍設備。
在畜禽養(yǎng)殖環(huán)境監(jiān)測系統(tǒng)中顯示模塊選用OLED作為顯示屏。OLED顯示模塊對比度高、厚度薄、功耗低,并且能適應超廣可視角,具有自發(fā)光特性,不需要背光源。OLED顯示模塊的引腳只有四個,占用單片機資源較少。OLED顯示模塊反應速度非???,不需要等待,數(shù)據(jù)的傳輸采用的是IIC協(xié)議。但必須要正確配置各引腳,并且有數(shù)據(jù)傳輸才能夠使OLED顯示模塊工作。
畜禽養(yǎng)殖環(huán)境監(jiān)測系統(tǒng)是將溫度數(shù)據(jù)、濕度數(shù)據(jù)、二氧化碳數(shù)據(jù)以及代表氨氣數(shù)據(jù)的電壓采集后,傳輸?shù)轿⒖刂破鬟M行數(shù)據(jù)轉(zhuǎn)化的計算,并判斷是否在閾值范圍內(nèi),如果不在所設的閾值范圍內(nèi)則驅(qū)動對應的外部設備對畜禽養(yǎng)殖舍中的溫度、濕度以及二氧化碳濃度、氨氣濃度含量進行調(diào)節(jié),并使各環(huán)境因素調(diào)節(jié)至閾值范圍內(nèi)停止。但無論是否超出閾值范圍都必須將數(shù)據(jù)傳輸?shù)絆LED顯示屏顯示和上傳到云平臺[3]。其程序總體設計流程圖如圖2所示。
圖2 程序總體設計流程圖
采集模塊的程序設計分為三部分,分別是二氧化碳濃度監(jiān)測軟件設計、溫濕度監(jiān)測軟件設計以及氨氣濃度監(jiān)測軟件設計。其中溫濕度監(jiān)測軟件設計和二氧化碳濃度監(jiān)測軟件設計所使用的傳感器采用數(shù)字量輸出,氨氣濃度監(jiān)測設計使用的傳感器采用的是模擬量電壓輸出。
3.2.1 二氧化碳濃度監(jiān)測軟件設計
SGP30二氧化碳傳感器的輸出方式是數(shù)字量輸出器件,采用的是IIC協(xié)議通信。在編寫程序時,使用的是模擬IIC的方式進行數(shù)據(jù)的傳輸,在每一次讀取數(shù)據(jù)時都需要發(fā)送從機地址和讀命令,只有應答之后才能讀取到測量的數(shù)據(jù),并且還需要檢驗所讀取的數(shù)據(jù)是否正確,最后獲取高八位數(shù)值,取得二氧化碳濃度。
3.2.2 溫濕度監(jiān)測軟件設計
SHT30溫濕度傳感器輸出方式是數(shù)字量輸出,其采用的通信協(xié)議是IIC協(xié)議通信。在編寫程序時,使用的是模擬IIC的方式進行溫濕度數(shù)據(jù)的傳輸,在每一次讀取溫濕度數(shù)據(jù)時都需要發(fā)送從機地址和讀命令,只有從機應答之后才能讀取到測量的溫濕度數(shù)據(jù)。并且還需要檢驗所讀取的溫濕度數(shù)據(jù)是否正確,其中高16位表示溫度的原始值,第8位到第23位表示濕度原始值,最后還需要通過單片機計算才能得到實際的溫度值與實際的濕度值。
3.2.3 氨氣濃度監(jiān)測軟件設計
氨氣傳感器采用的是模擬量輸出,需要使用單片機內(nèi)部的ADC轉(zhuǎn)換功能才能獲取電壓值,并通過計算獲取實際的氨氣濃度。
外圍設備模塊軟件設計分為五部分,分別是OLED顯示模塊軟件設計,控制排風扇軟件設計、控制熱風機軟件設計、控制濕簾軟件設計、控制加濕器軟件設計,其作用是以所設閾值范圍為基礎對畜禽養(yǎng)殖環(huán)境進行調(diào)整。
3.3.1 OLED顯示模塊軟件設計
OLED顯示模塊采用的是IIC通信。在編寫程序時,單片機需要對OLED顯示模塊發(fā)送寫指令,等待有響應后,將單片機處理好的數(shù)據(jù)寫入OLED顯示模塊的存儲器,同時需要設置字體的大小,能夠?qū)囟?、濕度、二氧化碳濃度、氨氣濃度正常顯示。
3.3.2 控制排風扇軟件設計
控制排風扇軟件設計是STM32F103RCT6單片機將溫濕度傳感器、二氧化碳傳感器、氨氣傳感器所檢測的溫度值、濕度值、二氧化碳濃度值、氨氣濃度值分別與所設的溫度最大閾值、濕度最大閾值、二氧化碳濃度最大閾值、氨氣濃度最大閾值進行比較,若大于最大閾值則排風扇工作,若低于最大閾值時則排風扇停止。在進行比較之前需要配置驅(qū)動排風扇的引腳并初始化。
3.3.3 控制熱風機軟件設計
控制熱風機軟件設計是STM32F103RCT6單片機將溫濕度傳感器檢測的溫度值與所設的溫度最小閾值進行比較,若大于溫度最小閾值時則熱風機停止,若小于溫度最小閾值時則熱風機工作。在進行比較之前需要配置驅(qū)動熱風機的引腳并初始化。
3.3.4 控制濕簾軟件設計
控制濕簾軟件設計是STM32F103RCT6單片機將溫濕度傳感器檢測的溫度值與所設的溫度最大閾值進行比較,若大于溫度最大閾值時則濕簾的水泵工作,若小于溫度最大閾值時則濕簾的水泵停止。在進行比較之前需要配置驅(qū)動濕簾水泵所使用的引腳并完成初始化。
3.3.5 控制加濕器軟件設計
控制加濕器軟件設計是STM32F103RCT6單片機將溫濕度傳感器檢測的濕度值與所設的濕度最大閾值進行比較,若大于濕度最小閾值時則加濕器停止,若小于濕度最小閾值時則加濕器工作。所測實際濕度值與濕度最大閾值比較之前需要配置驅(qū)動加濕器所使用的引腳并初始化。
無線傳輸模塊用到ESP8266模塊,ESP8266模塊通電之后,單片機需要對ESP8266模塊初始化才能連接至云平臺和網(wǎng)絡。在接入云平臺和網(wǎng)絡的前提是必須要把熱點名稱和密碼以及云平臺設備的信息和服務器地址、端口才能完成數(shù)據(jù)的上傳。
畜禽養(yǎng)殖環(huán)境監(jiān)測系統(tǒng)中遠程監(jiān)控功能,實現(xiàn)方法是用ESP8266WIFI模塊將數(shù)據(jù)上傳至OneNET云平臺。在OneNET云平臺中需要配置顯示頁面以及匹配相應的數(shù)據(jù)流才能在手機APP設備云中顯示。
將各傳感器模塊及外圍設備連接正確無誤后,接通電源開始配網(wǎng)、初始化。將溫度閾值設置為22℃-29℃,低于22℃熱風機啟動,高于29℃時啟動排風扇和濕簾;將濕度閾值設置為30%-65%,大于所設最大閾值時啟動排風扇,小于最小閾值時啟動加濕器;將二氧化碳的最大閾值設置為2000ppm,濃度大于2000ppm時啟動排風扇;將氨氣濃度的最大閾值設置為50ppm,濃度超過50ppm時啟動排風扇。
在實物制作完成后對畜禽養(yǎng)殖監(jiān)測系統(tǒng)進行測試。主要測試數(shù)據(jù)能否上傳至云平臺。測試時需要把ST-LINK與單片機和電腦相連,然后用KEIL5打開寫好的程序。在編譯沒有錯誤后下載至單片機。下載完成后,登錄云平臺后打開所創(chuàng)建的設備,顯示設備在線同時也有數(shù)據(jù)傳送,其結(jié)果圖如圖3所示。
圖3 測試結(jié)果圖
畜禽養(yǎng)殖環(huán)境監(jiān)測系統(tǒng)是一種基于STM32F103RCT6微控制器的設計與制作。在綜合考慮了畜禽養(yǎng)殖舍中溫度、濕度、二氧化碳濃度、氨氣濃度對家禽的影響以及危害后,確定了畜禽養(yǎng)殖環(huán)境監(jiān)測系統(tǒng)的總體設計方案,并詳細介紹了畜禽養(yǎng)殖環(huán)境監(jiān)測系統(tǒng)的設計思路和主要技術(shù)功能。最后在OneNET云平臺創(chuàng)建顯示界面,并且能夠通過手機觀看實時檢測數(shù)據(jù)。該設計對畜禽養(yǎng)殖環(huán)境的監(jiān)測有一定的借鑒意義,能有效改善畜禽養(yǎng)殖環(huán)境,提高養(yǎng)殖質(zhì)量。