肖 麗
(鄭州輕工業學院繼續教育學院,河南 鄭州 450002)
隨著科技的進步、人們對農業技術重視度及人們生活水平的提高,越來越多的反季節水果蔬菜出現在人們的生活中。大棚的數量也越來越多,因此,溫室大棚內環境的控制便成為一個非常重要的研究課題[1]。傳統的溫室大棚控制措施存在一些問題,已經難以滿足人們的要求,如溫室灌溉技術落后、智能化程度低和農作物生長吸水效率低等。近年來,我國許多學者開展了溫室自動化控制系統的研究,取得了一些成果。例如,潘榮敏等[2]綜合利用傳感器技術、MESH自組網絡技術、無線互聯網等嵌入式技術設計了一套基于物聯網技術的溫室智能灌溉系統。陳曉燕等[3]基于LabVIEW軟件和Zig Bee網絡技術設計了一種溫室節水灌溉系統。劉俊巖等[4]設計了一套基于ZigBee的溫室自動灌溉系統,該系統采用太陽能供電,具有節能環保的特點。梁月云等[5]根據溫室環境復雜且很難建立精確數學模型的特點,設計了基于模糊控制的溫室節水灌溉系統。部分灌溉管理系統研究成果已經在一些規?;麍@和溫室中得以應用,但存在傳感器節點多、線路復雜、成本高、環境適應能力差等問題,導致自動灌溉的研究成果沒有得到大范圍應用。
本文將單片機引入溫室大棚控制系統中,選用AT89C51單片機作為溫室大棚控制系統的核心模塊,外接濕度信號采集模塊、人機交互模塊、控制驅動模塊及通訊接口模塊,設計一種溫室自動灌溉系統,并進行了仿真實驗測試。
根據溫室的實際情況及系統的技術要求,采用AT89C51微控器作為控制與數據處理的核心,以構成溫室自動灌溉系統。該系統的總體設計思路如圖1所示,系統通過信息采集模塊獲取土壤濕度信息,送至中央處理模塊進行處理,由中央處理模塊給出灌溉控制信息,執行機構繼電器收到此灌溉控制信息后進一步轉化為水泵的通斷來實現智能灌溉,以達到準確、定時、定量、高效地給作物自動補充水分的目的,從而提高農作物的產量。

圖1 控制系統總體框圖
該系統采用AT89C51單片機來實現,單片機是整個控制系統的核心[6-7]。單片機可將土壤濕度傳感器檢測到的土壤濕度模擬量通過芯片ADC0832轉換成數字量,并傳輸給控制系統,單片機根據濕度傳感器監測到的數據進行運算處理,進而控制繼電器的通斷,繼電器控制水泵的啟停,從而實現智能灌溉。
根據溫室自動灌溉系統的功能需求,其硬件電路分為四大功能模塊:信號采集模塊、人機交互模塊、控制驅動模塊和通訊接口模塊。各個模塊共同構成一個具有適時適量灌溉功能的智能全自動溫室灌溉系統。
濕度信號采集是溫室自動灌溉系統的關鍵組成部分,主要負責采集大棚的環境溫度和土壤濕度信息。獲取的信息越精確,越有利于提高智能灌溉系統的功能,同時也是實現智能全自動溫室灌溉的重要前提。本設計采用土壤濕度傳感器檢測土壤的含水率,并將此信息傳送給單片機,經過單片機的運算和處理來進行判斷是否需要灌溉,從而達到智能灌溉的目的。
本系統選用YL-69濕度傳感器,選用LM393作為電壓比較器,ADC0832作為數模轉換器。濕度采集模塊的電路設計如圖2所示。
模擬信號的輸出通道1直接與芯片ADC0832的CH1端子相連接,通過AD轉換模塊得到土壤濕度的數字量。并傳送給芯片ADC0832進行AD轉換進而得出濕度值,然后再送給單片機的P2.1口進行運算處理,實現智能灌溉。

圖2 濕度采集模塊電路設計
人機交互模塊的設計主要是便于操作溫室自動灌溉系統,主要由三部分組成,即鍵盤、LCD顯示和報警電路。設計鍵盤是為了設置溫室自動灌溉系統的重要參數,如土壤濕度的閾值、灌溉時間等。設計LCD顯示可以讓用戶直觀地觀察到當前的土壤濕度以及用戶所設置的土壤濕度閾值,還可以用來顯示灌溉時間和灌溉流量。報警電路用來報警,當土壤濕度低于閾值時,報警器會發出響聲,提醒用戶即將進行灌溉。
液晶顯示器選用1602-LCD型號。顯示器的RS、RW、E管腳連接單片機的P2.7、P2.6、P2.5端口。第2引腳連接一個10 K的電位器,用來調節屏幕的對比度。D0~D7引腳連接單片機的P0.0~P0.7口,用來進行數據傳輸。單片機與顯示器的數據線之間接著上拉電阻,阻值為10 K。這是因為單片機的P0口沒有自帶上拉電阻,需要外接。上拉電阻可以將輸出電平拉高,以拉高輸出信號,提高信號的抗干擾能力。另外,還能起到限流的作用,防止液晶顯示器被燒壞。LCD顯示模塊的電路圖如圖3所示。

圖3 LCD顯示模塊電路設計
為了安全起見,本系統設置報警電路,選用聲光報警電路。當溫室內土壤濕度低于用戶預設值的下限時,報警器會發出響聲同時繼電器通電線圈吸合,開啟水泵進行灌溉。當土壤濕度達到預設值的上限時,繼電器斷電,關閉水泵停止灌溉,報警器同樣會發出響聲。當溫室自動灌溉系統出現異常情況時,如果需要灌溉時水泵并沒有處于工作狀態或者土壤濕度達到要求時仍在灌溉等,報警器將會一直發出警報,這時需要人工手動關閉。報警器的作用是用來引起人們的注意,避免事故的發生。報警電路的蜂鳴器選用的是無源蜂鳴器。
水泵是溫室自動灌溉系統的執行設備,通過控制水泵的開關,實現對溫室大棚內水果、蔬菜的自動澆灌。當土壤傳感器測量的土壤濕度低于濕度預設值的下限時,單片機發出信號給控制驅動模塊,使電磁繼電器帶電吸合線圈,進而開啟水泵,實現自動灌溉任務。
當土壤濕度傳感器測到的土壤濕度值低于預設值的最低值時,單片機的P2.3口會變為低電平,三極管導通,使得電磁繼電器帶電吸合線圈開啟水泵進行澆灌。由單片機輸出的信號都很微弱,所以選用三極管進行放大驅動電磁繼電器,通過繼電器的閉合來實現對水泵的控制。在繼電器兩端并聯一個二極管是為了保護三極管,防止三極管被擊穿。發光二極管是用來顯示水泵的工作狀態。當水泵工作時,他就會發光,是用戶直觀看出水泵當前的工作狀態。控制驅動電路原理圖如圖4所示。

圖4 控制驅動模塊電路圖
溫室自動灌溉系統的通訊接口模塊采用的是典型的USB接口,在PC機上編寫程序,下位機可以通過USB接口從上位機中下載程序,也可以通過USB接口數據線將上位機與下位機相連,進而實現上位PC機與下位機之間的通訊。用戶可以通過人機交互模塊按照實際情況設定土壤濕度的預設值范圍,并將此范圍傳輸給單片機,單片機也可以及時將采集的環境信息和溫室自動系統的運行狀態反饋給上位機顯示。
通訊接口電路原理圖如圖5所示,該模塊是用來實現電腦與單片機之間的通訊,采用的是典型的程序下載電路USB轉串口電路,其主要控制芯片為PL2303。該芯片可以轉換USB信號與RS232信號。上位PC機和單片機存儲的都是USB數據,通過芯片PL2303可以將USB信號轉換成RS23信號,從而實現二者之間的通訊。
系統功能的實現是通過程序來完成的,軟件的設計直接決定系統的運行效率和可靠性。本系統采用C語言編程,首先要設計好主程序,然后將子程序設計好封裝起來,設計的系統主程序流程如圖6所示。初始化程序包括液晶顯示初始化和定時器中斷系統初始化兩部分。子程序包括土壤濕度采集子程序、顯示子程序、按鍵處理子程序和數據處理子程序。

圖5 通訊接口電路設計

圖6 系統主程序流程圖
在硬件設計和軟件設計的基礎上,Proteus軟件搭建了溫室自動灌溉系統仿真系統。采用的是Proteus軟件繪制電路圖,用一個電位器來模擬土壤濕度信號,用KeilC51來編譯調試程序,然后把程序導入單片機系統中進行電路仿真。仿真結果如圖7所示。通過調整濕度閾值信息,水泵可以根據濕度信息自動啟動和關斷,達到定時、定量地給作物自動灌溉的目的。模擬水泵故障信息,報警系統能夠及時報警,實現故障報警功能。設定土壤濕度報警值,滿足不同植物的灌溉需求,具有良好的經濟效益和社會效益。

圖7 灌溉系統電路仿真圖
本文以AT89C51單片機為核心控制器設計了一種溫室自動灌溉系統,該系統具有良好的適應性,可通過按鍵