范明民
(北海職業(yè)學院,廣西 北海 536000)
環(huán)境溫度和濕度等會對農(nóng)業(yè)生產(chǎn)產(chǎn)生極大影響,如會影響儀器設備的使用壽命,影響作物生產(chǎn)質量等。要想提高農(nóng)業(yè)和畜牧業(yè)的產(chǎn)量,就必須使環(huán)境溫度和濕度相對穩(wěn)定、可調控。因此,設計一款可自動調節(jié)的智能數(shù)字化溫濕度監(jiān)控系統(tǒng)對促進農(nóng)業(yè)發(fā)展極具價值。筆者設計的智慧農(nóng)業(yè)環(huán)境監(jiān)控系統(tǒng)不僅能實時監(jiān)測和顯示溫濕度,還能在溫濕度超過閾值時啟動自動調節(jié)裝置,降低人力成本,促進農(nóng)業(yè)現(xiàn)代化發(fā)展。
合理的系統(tǒng)總體設計方案能夠讓產(chǎn)品在市場中更有優(yōu)勢。此系統(tǒng)的設計主要包含電源電路、溫濕度檢測電路、微處理器AT89C52主控制電路、液晶顯示電路、報警電路、鍵盤電路和風機調節(jié)電路等。同時,該系統(tǒng)預留了拓展接口,方便后續(xù)功能的完善和升級。
系統(tǒng)采用STC89C52作為主控芯片,用于分析、處理轉換溫度和濕度傳感器采集的信號,實現(xiàn)系統(tǒng)實時數(shù)據(jù)的采集和數(shù)字顯示。當環(huán)境溫度超過預設的閾值時,報警器報警,同時輸出驅動信號調節(jié)直流電機風葉旋轉,改變周圍環(huán)境參數(shù),起到自動調節(jié)溫濕度的效果。系統(tǒng)總體設計框圖如圖1所示。
圖1 溫濕度監(jiān)控系統(tǒng)總體設計框圖
系統(tǒng)主控芯片起到中樞神經(jīng)控制作用,處理傳感器的模擬信號和輸出數(shù)字信號。以小麥生長為例,小麥在不同的生命周期對環(huán)境溫度和濕度有不同的要求,小麥發(fā)芽適宜的溫度和濕度分別為15~20 ℃和50%RH~70%RH,小麥灌漿適宜的溫度和濕度分別為20~22 ℃和70%RH~80%RH。該系統(tǒng)默認周圍理想環(huán)境溫度為15~30 ℃,濕度為45%RH~65%RH。控制電路的工作原理是當系統(tǒng)檢測到的指標超過或者小于閾值時,啟動風機調節(jié)電路,使周圍環(huán)境達到適宜的溫濕度。溫濕度檢測電路主要通過高精度的傳感器測量農(nóng)業(yè)生產(chǎn)環(huán)境的溫度和濕度,顯示電路主要通過LCD1602顯示,復位電留上一次的數(shù)據(jù),即插即用,使用方便。該系統(tǒng)正常工作時會顯示所監(jiān)控環(huán)境的溫度,管理員使用按鍵電路實現(xiàn)溫度最大值和最小值的設定。該系統(tǒng)會自動把設定好的溫度上、下限閾值存儲到EEPROM中,縱使斷電,下一次系統(tǒng)通電正常工作后也能夠恢復上一次設定的溫度閾值,不需要手動重復設置上、下限閾值。該傳感器維護便捷,成本低廉,非常適合應用于現(xiàn)代農(nóng)業(yè)生產(chǎn)。
濕度傳感器也是該監(jiān)控系統(tǒng)的關鍵核心設備。該系統(tǒng)使用高精度、體積小、能耗低的三端口單總線數(shù)字傳感器DHT11作為濕度傳感器。DHT11是一款已經(jīng)在標準的濕度校驗室校準好的數(shù)字信號輸出傳感器。該產(chǎn)品出廠時的測量濕度范圍是5%RH~95%RH,濕度誤差±5%RH;溫度范圍是-20~60 ℃,溫度誤差±2 ℃,滿足農(nóng)牧業(yè)生產(chǎn)使用條件。該濕度傳感器內部集成了1個電阻式感濕器件和1個NTC測溫元件,在實驗室條件下測試,信號有效傳輸距離可以超過20 m。
該監(jiān)控系統(tǒng)采用電壓為5 V的直流電機,轉速約20 000 r/min。該系統(tǒng)采用五線四相的直流電機,采用的驅動模塊為ULN2003芯片(是一個超大電壓、超大電流的復合晶體管陣列集成的芯片電路,含有7個硅材料NPN復合管,能夠驅動蜂鳴器和直流電機)。該電路是獨立的,芯片的輸入通過J46端子提供,芯片的輸出由J47端子引出。J46輸入對應J47輸出。溫度或者濕度超出閾值會自動觸發(fā)一個驅動信號給直流電機,電機開始工作,直至指標穩(wěn)定電機才停止工作,達到自動控制效果。
該監(jiān)控系統(tǒng)采用電磁式蜂鳴器和發(fā)光二極管作為報警核心電路。溫濕度超過閾值,發(fā)光二極管以1 s為間隔不斷閃爍紅光,同時啟動蜂鳴器報警,提醒管理員處理。
系統(tǒng)軟件采用模塊化設計,系統(tǒng)復位后可以獲取當前溫度和濕度并且通過A/D轉換實時顯示。假如將溫度和濕度上限分別設置為30 ℃和90%RH,當設定好上下限閾值時,系統(tǒng)即會把當前的溫濕度數(shù)值與設定的上限閾值作對比:如果當前參數(shù)高于溫度或者濕度上限閾值任一項,則啟動風機降溫除濕,同時二極管閃爍及蜂鳴器報警;如果當前環(huán)境的溫濕度處于下限和上限之間,風機轉動停止且報警消除。同理,設定下限時的工作機制也一樣,從而自動把溫濕度控制在閾值范圍內。系統(tǒng)主程序流程圖如圖3所示。
圖3 系統(tǒng)主程序流程圖
給系統(tǒng)上電時先自動初始化,讀取當前環(huán)境溫濕度。用戶可以通過鍵盤手動輸入溫濕度上、下限及啟動直流風機的指標,并且通過LCD1602顯示。該系統(tǒng)本質上為一個負反饋電路。
通過Keil uVision4工具編寫模塊化C語言源程序,軟件設計部分主要包括溫度模塊、濕度模塊、顯示模塊、直流電機驅動模塊、鍵盤掃描模塊和報警模塊等6個子程序。
3.2.1 溫度模塊設計。DS18B20作為國內應用廣泛且穩(wěn)定性高的數(shù)字溫度傳感器,其輸出信號為數(shù)字信號。編寫溫度模塊程序時,時序要求最為嚴格,必須十分精確。該模塊通過ds18b20init()函數(shù)進行初始化,通過ds18b20wr(uint8 dat)函數(shù)進行寫數(shù)據(jù),通過ds18b20rd()函數(shù)進行讀數(shù)據(jù)。讀取溫度時先要進行復位,同時要注意溫度有正負值及保留1位小數(shù)。
3.2.2 濕度模塊設計。DHT11軟件程序設計先要注意檢查是否有該硬件,通過DHT11_Check()函數(shù)判斷是否存在,有即返回1,否則為0。使用前也必須先將其初始化,程序通過DHT11_Init()函數(shù)對濕度傳感器初始化。DHT11_Read_Bit(void)函數(shù)表示從濕度傳感器按位讀取數(shù)據(jù),DHT11_Read_Byte(void)函數(shù)是指從傳感器中按字節(jié)讀取數(shù)據(jù)。為了避免讀數(shù)據(jù)出錯,程序設定函數(shù)返回值為1是正常,返回值為0是失敗,每次讀取數(shù)據(jù)的時間不能太短,否則會不準確,系統(tǒng)設置不少于100 ms。
3.2.3 顯示模塊設計。該系統(tǒng)通過LCD1602顯示溫度和濕度。通過lcd_init_display()函數(shù)對LCD初始化顯示,data_pros()函數(shù)處理溫度和濕度顯示并且對有效位數(shù)進行處理,可以顯示切換的溫度、濕度上限和下限。
3.2.4 報警模塊設計和直流電機驅動模塊設計。報警模塊主要是驅動發(fā)光二極管和蜂鳴器電路。設計通過baojinpros()函數(shù)進行報警處理。發(fā)光二極管分降溫濕指示燈和升溫濕指示燈2種,當系統(tǒng)檢測溫度或者濕度高于設定上限值時,降溫濕指示燈亮;檢測溫度或者濕度低于設定下限值時,升溫濕指示燈亮;兩種情況下蜂鳴器均會報警提示用戶。直流電機驅動主要是通過單片機控制ULN2003D模塊輸入、輸出。報警時,系統(tǒng)會輸出一個信號給直流電機,可以通過motospeed(uint16 i)函數(shù)進行風機的速度調節(jié),并且溫度和速度范圍可以通過鍵盤程序進行設置。此外,該監(jiān)控系統(tǒng)以10倍范圍設置了3個擋位速度,便于快速反應。
3.2.5 鍵盤掃描模塊設計。程序通過key_pros()函數(shù)進行按鍵處理,包括對溫度和濕度上、下限的加法減計算。
該監(jiān)控系統(tǒng)采用C語言編程,通過Proteus軟件仿真測試和Keil軟件燒錄進行運行,運行效果良好。
傳感器采集、接收環(huán)境參數(shù)并進行AD轉換,將單片機處理后的信號通過LCD1602顯示,超過預設閾值觸發(fā)報警,提示管理員及時處理。如果未觸發(fā)報警,則系統(tǒng)繼續(xù)采集數(shù)據(jù),比對系統(tǒng)閾值。該系統(tǒng)精確度高,能耗小,系統(tǒng)可靠性強,傳輸?shù)臄?shù)據(jù)誤差較小,能滿足普通農(nóng)業(yè)生產(chǎn)需求。單片機系統(tǒng)目前已經(jīng)穩(wěn)定運行一個多月,未出現(xiàn)錯誤。
該系統(tǒng)經(jīng)過試驗測試,各指標均滿足生產(chǎn)生活需要,適用于農(nóng)業(yè)生產(chǎn)的智能化溫濕度監(jiān)控。系統(tǒng)可拓展性強,誤差小,穩(wěn)定性強,功耗低,針對復雜環(huán)境溫濕度監(jiān)控具備自動測試調節(jié)能力,可以在降低成本的同時提高精度。此外,該系統(tǒng)可以通過采用精度更高的傳感器,增加更多必要的功能,持續(xù)優(yōu)化,為我國農(nóng)業(yè)、畜牧業(yè)健康發(fā)展提供支撐。