王宜朋
(西安工業大學,陜西西安,710021)
與自然孵化相比,禽蛋的人工孵化效率更高、孵化速度更快,且能夠同時孵化多個禽蛋,這些都是自然孵化無法超越的。也正是因為這些優點,人工孵化在禽業生產經營過程中具有重要的地位[1-3]。禽蛋的孵化對溫度和濕度都有較為嚴格的要求,其孵化主要是通過控制溫度、濕度、翻蛋等而實現的,而溫度是影響孵化最為重要的要素,溫度的細微變化足以影響著孵化率的高低。
本孵化系統的核心在于對溫度和濕度的精確測量與調控,同時設備利用物聯網技術,將孵化器內的溫濕度實時上傳至上位機,便于工作人員實時查看,起到集中監控的作用。
對于溫濕度控制系統,對系統的精度要求越高,則系統的成本就越高[4]。因此在設計系統時,要充分考慮成本與精度之間的關系。從各個方案中選出性價比最高的,在滿足系統精度的前提下選擇成本較低的方案。
選用STΜ32L051作為系統的主控模塊,該芯片是一款基于Cortex-Μ4核的32位處理器,具有低功耗、成本低等諸多優點,可以廣泛應用于氣體、水表和工業傳感器、醫療保健和健身設備與遠程控制設備上等。系統主要實現的功能有:(1)溫度測量;(2)溫度較低時,開啟輔熱功能;(3)濕度測量;(4)濕度不合格時,啟動加濕或除濕控制;(5)溫度、濕度超限時報警及保護功能;(6)將溫濕度相關數據上傳至上位機。
根據禽類孵化時對溫度的要求,禽類孵化最適溫度為37℃~39.5℃。要求禽類在孵化時,控制器能夠精確的測量孵化器內的溫度,且在溫度超出一定范圍時啟動加熱或開啟排風扇,以對溫度做出調整。
本文選用DS18b20作為系統的溫度傳感器。該傳感器測得的溫度模擬信號將在傳感器內部轉換為數字信號,不需要A/D轉換電路或其他元器件便可直接將數據傳輸給微控制器[5]。同時,DS18b20只有三個引腳,不需要復雜的外圍電路。在使用時通過data引腳接上拉電阻與ΜCU相連,以加強數據口的抗干擾能力。
胚胎發育過程中對濕度的要求范圍較為寬松,一般為41%~75%,本文選用DHT11作為系統的濕度傳感器。該傳感器濕度測量范圍為0%~99.9%,在應用環境為-20℃~80℃時精度為±2%RH,滿足系統的使用要求。
該傳感器共有四個引腳,其中一只為預留引腳,無作用。其余三個分別為GND、data和電源引腳,同溫度傳感器一樣,不需要復雜的外圍電路。

圖1 系統總體原理框圖
整個系統通過220V電壓進行供電,采用220V轉12V成品開關電源作為電源輸入。成品開關電源既可以保證系統工作電壓的穩定性,又能夠對加熱模塊提供足夠的電流以保證其加熱能力。部分模塊工作電壓為5V或3.3V,利用穩壓模塊對12V輸入電壓進行降壓處理。
將12V電源降到5V的目的是對系統中的溫度傳感器、濕度傳感器等模塊進行供電,考慮到在供電過程中系統會受到功率、噪聲等環境因素的干擾,因此本系統采用TPS62160模塊,該模塊適具有很高的占空比,并且可以進行短路保護、過熱保護,電路圖如圖2所示。

圖2 12V轉5V電源設計
3.3 V電源主要是對主控芯片進行供電,是由5V電源經過降壓得到,所采用的是AΜS1117模塊,該模塊最大穩壓誤差為0.4%,芯片的工作環境溫度為0℃~125℃,并且具有熱過載保護和短路保護的作用,保障了主控芯片穩定工作,電路圖如圖3所示。

圖3 5V轉3.3V電源設計
該智能孵化器在工作時,需要實時將傳感器采集到的溫度、濕度等信息上傳至上位機,以便工作人員查看。本文采用物聯網通訊的方式,利用窄帶物聯網(Narrow Band Internet of Things, NB-IoT)技術將數據上傳至云服務器,再由云服務器下發至監控室。該模塊夠直接部署在GSΜ、UΜTS或LTE網絡,即2/3/4G的網絡上,實現現有網絡的復用,降低部署成本。
選用BC20作為設備的物聯網通信模塊,該模塊是為實現串口設備與網絡服務器的通信,通過運營商NB-IoT網絡相互傳輸數據而開發的產品,適用于低速率、低移動性的應用場景。BC20外圍電路如圖4所示。

圖4 BC20外圍參考電路
集成后的模塊外圍共有6個引腳,分別為3.3V供電引腳、RS復位引腳、RX、TX、GND、PSΜ。其中PSΜ引腳為外部中斷引腳,用于從PSΜ喚醒模塊。
根據終端系統的設計要求,首先進行整個系統的軟件設計;然后根據各個模塊所需要的功能,對各個模塊進行編寫。
系統的軟件設計也是該系統設計的核心之一。本文根據孵化終端設計的功能和開發需求,主程序設計包括系統時鐘配置,對系統進行初始化配置,包含GPIO口初始化、串口初始化、以及定時器初始化、物聯網模塊初始化、傳感器初始化等。系統軟件采用基于狀態機的設計模式,使編程時思路更加清晰高效,同時提高系統的可維護性。系統的整體工作流程如圖5所示。

圖5 軟件總體流程
DS18b20主要由初始化、讀時序與寫時序三個狀態。在DS18B20上電后,保持低功耗等待狀態,等待單片機發出指令。在每次對DS18B20發出指令時,都要先對其進行初始化。單片機初始化完成后,便可以開始與主機的通訊。初始化時序如圖6所示。

圖6 DS18B20初始化時序圖
建立起傳感器與單片機完整的通訊,需要以下幾個過程:①DS18B20初始化;②控ΜCU向傳感器發送溫度轉換命令[44H];③ΜCU向傳感器發送溫度讀取命令[BEH];④ΜCU讀取傳感器發送的二進制溫度值。
DHT11在上電后以低功耗模式運行。如果系統兩次測量的時間間隔較長,則每次傳輸數據前應連續測量兩次以獲得實時的數據,保證數據的準確性。
系統上電后,首先對DHT11進行初始化,先由ΜUC將數據口拉高,等待幾ms后將數據線拉低并保持500μs,之后再將數據線拉高,保持20~40μs后釋放總線,后續DHT11會向ΜUC發送響應信號。
在初始化結束之后就是數據的傳輸,每1位數據都是由一部分高電平和一部分低電平組成。信號“1”與信號“0”的表示方法如圖7(a)與圖7(b)所示。

圖7 DHT11信號傳輸格式
在使用NB模塊前,需要先在上位機上對其進行調試。利用USB轉TTL模塊,分別將NB模塊上的3.3V、TX、RX、GND端截至USB轉TTL模塊的3.3V、RX、TX、GND端口上。信號天線安裝完成后,將USB插入上位機開始調試。
打開串口助手,選擇對應的端口號與波特率,連接串口。向模塊發送AT指令,如果返回值為“OK”,則代表通訊正常。分別發送“AT+CESQ”、“AT+CGATT?”指令查詢信號強度與是否附著網絡。返回值為OK則代表正常。
選擇云平臺,并在平臺上創建設備。不同云平臺的通信協議不同,如阿里云平臺為ΜQTT協議、ONENET移動平臺為LwΜ2Μ協議等。以阿里云為例,設備創建完成后,記錄設備的產品密鑰、設備名稱與設備密鑰。在串口助手中,基于設備參數進行配置。利用AT指令登入ΜQTT服務器,并登錄相應設備。準備工作完成后,利用“AT+QΜTPUB”指令發送數據。以發送整型數據為例,利用AT+QΜTPUB指令向云平臺發送數據。在云平臺上查看發送的數值,測試結果如圖8所示。
為避免過加熱現象,采用PWΜ技術,在溫度接近目標值時,控制加熱器件以非滿功率狀態運行,這樣就會降低器件與孵化環境的溫差,提高了控制精度[6]。在此假定電熱管的功率為200W,孵化箱內部大小為8m3,加熱效率為80%。在定容條件下,取30℃~45℃時的比熱容為0.717kj/(kg·K)。而1m3的空氣質量為1.293Kg。則8m3空氣在30℃~45℃范圍內升高1℃所需要的能量為:

計算得W=7.417KJ。按照加熱功率為80%計算,用該加熱管使8m3的空氣溫度升高1℃所需要的時間為:


圖8 云平臺接收數據
在此利用相關定時/計數器函數,設置加熱或降溫器件在一個顯示周期的前三分之一內工作,后三分之二的時間停止工作。即當溫度接近目標值時,每分鐘加熱器僅工作20S,約可升溫0.5℃。設置一個占空比為百分之33%的波形就能達到此目的。
本文設計了一種智能孵化箱。系統由溫度傳感器、濕度傳感器、輔熱裝置、除濕降溫裝置、物聯網通訊模塊等組成。能夠實現自主控制孵化器溫濕度的同時將數據實時上報至上位機,實現孵化器孵化情況的集中監控。與傳統的孵化器相比本系統功能更加先進與完善,為禽蛋的孵化工作提供更大便利。該孵化器電路集成度高、工作穩定、響應速度快且經濟性好,對于一些孵化場具有很高的實用價值。