楊美子,金家峰
(安徽理工大學 電氣與信息工程學院,安徽淮南,232001)
隨著經濟的發展,越來越多的人出于各種原因選擇在家中養護綠植。但從現今科技發展來看,許多家庭養護綠植大多根據自己的生活經驗,這樣往往會導致許多問題:大量不必要的水資源的浪費;過多的澆水導致植物無法進行有氧呼吸,從而導致無氧呼吸也就是我們俗稱的爛根,或是較少澆水導致植物缺水而蔫死了。針對此類問題本文研究的綠植監護系統將通過控制植物所生長的土壤濕度來解決家中養護綠植幾乎都能遇到的問題—水分。該裝置在小型化,節約型的前提下通過單片機STC89C52作為整個系統核心控制其他元件檢測土壤的濕度來控制滴灌系統的開始和停止,既實現了家中養護綠植自由,也節約了資源。
本項目設計了一個無人居家型自動綠植監護器,在濕度傳感模塊以SCT89C52單片機為主核心,通過按鍵接口電路根據每一種植物的喜濕或喜旱的特性設定其特定的濕度標準,作為此后系統運行時的標準閾值。在運行中,YL-69濕度傳感器通過實時檢測土壤中的濕度,并且將濕度數據傳輸到該模塊的“大腦”—SCT89C52單片機中進行分析處理,通過原先在單片機的程序設計對接下來的滴灌操作進行控制。當檢測到的濕度實時數據大于設定的濕度標準的10%,由單片機發出指令停止對植物的滴灌;當檢測到的濕度實時數據小于設定的濕度標準的10%,由單片機控制的水泵開始運作逐漸向水箱中抽水通過滴灌系統對植物澆水[1]。濕度檢測原理圖如圖1所示。

圖1 濕度檢測系統原理圖
本系統主要由單片機主控模塊,YL-69濕度傳感模塊,電源模塊,LCD1602顯示模塊,按鍵鍵入模塊,蜂鳴器模塊,水泵供水模塊。單片機主控模塊中采用了STC89C52單片機,由它主要負責對所檢測到的數據進行分析處理;標準設定濕度閾值主要由按鍵系統進行修改;LCD1602顯示模塊顯示植物生長土壤中的實時濕度;蜂鳴系統主要由單片機控制,主要在土壤濕度不在標準濕度范圍內其報警作用,不僅在視覺上給用戶提醒在聽覺上也起到了提醒的作用。而當用戶長時間無響應時,水泵模塊就會起到開啟滴灌以及停止滴灌使得土壤中的濕度恢復正常范圍[2,3]。其中濕度傳感選擇的是YL-69濕度傳感器,本系統主要考慮到了其采用了CMOS工藝可以確保其低功耗,同時它還具備了很高的可靠性和穩定性,基于這些優點與該系統的實時性和高效性,節約性等特性相匹配成為了我們在此系統濕度傳感元件的首選的原因。該濕度傳感器屬于一種電容式傳感器,主要用的是濕敏電阻,當所測量的土壤濕度改變時,會使得濕敏電容存在的環境發生改變,導致濕敏電阻中的數值變化。如圖2為YL-69濕度傳感器器件實物圖。當從傳感器的D0引腳:土壤濕度大于我們所設定的閾值時,D0將會輸出0,否則將會輸出1。通過這種獲取濕度信息的方式多用于之后通過濕度來控制滴灌的開始和結束;當從傳感器的A0引腳:獲取到模擬量,更加精確。土壤濕度越大,此時獲取的模擬量值越大,該種方式獲得傳感器實時測量的濕度數據并且通過LCD1602顯示屏實時顯示數據[1,4]。

圖2 YL-69濕度傳感器器件的實物圖圖

圖3 濕度傳感器的原理圖
為了顯示實時濕度數據,獲得較高的精準度,系統從A0引腳獲得模擬量時,需要通過A/D轉換電路使其轉換成數字量才能傳輸給單片機。A/D轉換芯片ADC0832由于其性能穩定,體積小,功耗低,性能穩定等優點而深受歡迎故在此A/D轉換芯片本系統選用ADC0832[4]。
如圖4所示為A/D轉換電路和濕度檢測,圖中JP3為YL-69濕度傳感器的檢測探頭,其將實時檢測到的濕度數據傳遞給A/D轉換電路[3,4],通過轉換電路轉換成數字量再傳遞給單片機,通過單片機對數字信號傳遞后顯示在LCD1602顯示屏不僅讓用戶可以實時觀察到植物土壤中的濕度數據也可以在一定程度上在視覺上對用戶起到了提醒作用。

圖4 A/D轉換電路和濕度檢測電路
水泵模塊電路主要是接收STC89C52單片機發送的指令,根據單片機的指令決定水泵的關閉和開啟。圖5所示的為水泵控制電路,PNP型的三極管Q2,使其的基級B接單片機的P3.7口,主要作用是接收單片機所發送的指令。并且在此水泵模塊電路中使用電磁繼電器作為整個模塊的“中樞大腦”控制水泵的工作狀態;而此時繼電器工作狀態的指示燈則有發光二極管來充當,當繼電器未吸合時,此時LED燈并不會發亮,而當繼電器吸合時LED燈發光。

圖5 水泵驅動系統
當STC89C52單片機P3.7引腳輸出高電平時,使得三極管截至此時繼電器處于未吸和狀態,且指示燈此時處于未點亮狀態,繼電器常開觸點斷開此時水泵將會停止工作。而當P3.7引腳輸出低電平時則會出現三極管導通情況,繼電器吸合指示燈點亮等一系列反映,此時繼電器常開觸點即時閉合,水泵便開始工作[1]。
按鍵鍵入模塊原理如圖6所示。此時S2表示用戶可以通過此按鍵設定該植物正常生長時所需的正常濕度閾值,而S3則是對其進行上下值調整[4]。通過按鍵模塊獲得對標準閾值的設定。

圖6 按鍵模塊圖
綜上,將上述分電路整合在一起后形成了基于單片機的自動綠植監護系統設計。
本系統軟件設計主要由KEIL軟件編寫程序,PROTEL進行仿真模擬。系統軟件程序的開發采取了流行的模塊化設計方法。根據此類方法在程序設計中根據每個模塊負責的不同功能將整個軟件系統進行分區工作,每個工作模塊都有一個相對獨立,結構完整的程序段,能夠完成某一特定的任務實現某個具體的功能,每個模塊可以相互共存一個模塊能夠被多個任務在不同條件限調用,且整個模塊程序允許設計者分割任務和利用已有任務,使得整個軟件設計具有高效,便利,簡潔等多個特點。
系統軟件設計包括系統初始化程序,按鍵設定程序,濕度上下限設定程序,土壤濕度檢測程序,水泵驅動澆水程序。STC89C52單片機主要采用的是C語言編寫后通過Keil編譯軟件中完成關于土壤實時濕度采集模塊,系統設定參數按鍵模塊,數據LCD1602顯示屏模塊,單片機串口接收模塊等部分設計。其主程序流程圖如圖7所示。

圖7 系統軟件設計流程圖
實時濕度數據采集模塊根據ADC0832芯片模數轉換的串行協議,通過YL-69濕度傳感器采集到的數據轉化成二進制,之后供STC89C52單片機進行后續處理,按鍵控制模塊的流程圖如圖8所示[5]。

圖8 按鍵流程模塊圖
LCD1602顯示屏軟件設計規劃顯示程序主要包括以下功能模塊:①讀鍵程序,判鍵程序段等部分。②基于LCD1602液晶顯示屏的顯示模塊。③主模塊,為系統的初始化。顯示屏顯示子程序流程圖如圖9所示。

圖9 LCD1602顯示子程序流程圖
本設計采用ST89C52單片機做為整個系統的控制芯片,設計出一款自動智能澆花系統。本系統通過最初的按鍵模塊設定該植物所生長的特定濕度,此后通過YL-69濕度傳感器測定花盆中土壤濕度根據土壤濕度來調節水泵的中斷以及運行。并且選取模糊控制形式通過單片機設定的值將測定的實時濕度數據與單片機設定的濕度數據進行對比,來調節澆水的量,并且通過蜂鳴器報警提醒用戶。直至當采集到的實時土壤濕度在設定的土壤濕度的上下限20%內時,單片機將發出信號驅動水泵停止灌溉,直至濕度到達設定值為止[6]。
本文根據大眾對綠植養護的需求設計了一款“懶人型”的無人自動綠植監護系統。該系統主要是通過控制水泵的開啟與關閉來確定澆水與否,以確保土壤中的濕度始終處于正常的范圍以此確保綠植能夠健康生長。當濕度傳感器檢測到土壤濕度過低時,便會啟動水泵系統進行澆水。反之當檢測土壤濕度過高時,將會關閉水泵系統停止澆水。用戶可以通過在系統運行之初根據自己所種植的植物特性設定植物所需的濕度,使該系統更加人性化,然后啟動該系統,系統便可自動澆水,用戶無需再自己去定期澆水為養護綠植的家提供了極大的便利,向居家智能化生活又邁向了一大步。并且通過系統實驗證明該項目具有以下優點:
(1)安全性高:該裝置全體采用的是5V的安全用電,輸出為低電壓,且本裝置并未用到其他新型危險性差的材料,無任何安全隱患。
(2)成本低:該裝置所需材料簡單,且并不昂貴,體積小,使用所有的愛好養護綠植的家庭適用范圍廣。
(3)系統穩定性好:電路總體是由模擬電路構成,要求精度不高,且裝置中的按鍵設定模塊,延時時間都可以自己調控。