上海工程技術(shù)大學(xué) 馬宇喆 李恒鋒 李 斐
隨著經(jīng)濟(jì)與社會的發(fā)展,人們的生活水平也越來越高。大多數(shù)人開始在家培養(yǎng)盆花來達(dá)到凈化空氣、豐富生活、增添景色、陶冶情操等目的。然而培養(yǎng)盆花需要一定的專業(yè)知識儲備和足夠充分的時間進(jìn)行培養(yǎng)維護(hù)。因此市場上對花草的智能監(jiān)控,智能培養(yǎng)的需求也越來越大。為滿足人們對各種盆花的養(yǎng)殖需求,市場上出現(xiàn)了各種自動澆花系統(tǒng)(如圖1)。如今市場上的自動澆花系統(tǒng)大多能做到的只是定時澆灌,好一點的也只是以土壤濕度作為唯一標(biāo)準(zhǔn)來實現(xiàn)自動澆灌的功能的。本文在原有的基于土壤濕度監(jiān)控的情況下新增光照強(qiáng)度和溫度兩個監(jiān)控指標(biāo)。由于考慮到更多的外界因素,該澆花系統(tǒng)將為所養(yǎng)植物提供更準(zhǔn)確的生存環(huán)境,在一定程度上擴(kuò)展了產(chǎn)品的適用范圍。
圖1 市面上常見的自動澆灌裝置(圖片來源:淘寶)
本文所涉及的自動澆花系統(tǒng)基于AT89C51單片機(jī)。該單片機(jī)的使用功耗低,芯片采用高密度、非易失性存儲技術(shù)制造,集成了8KBytes ISP Flash存儲單元,可反復(fù)擦寫1000次,兼容標(biāo)準(zhǔn)MCS-51指令系統(tǒng)。要實現(xiàn)自動澆花系統(tǒng),就要著重做好兩部分的工作,其一,深入了解AT89C51單片機(jī)的各個引腳的功能,明確程序控制指令的控制方式。其二,確定智能化自動澆花系統(tǒng)的控制程序以及各構(gòu)件的作用順序。在本設(shè)計中,實現(xiàn)“自動澆花”功能除了基于51單片機(jī)設(shè)置相應(yīng)的控制程序之外,還需將“澆花裝置”與單片機(jī)控制系統(tǒng)相連接(即相應(yīng)的硬件連接)。該裝置的構(gòu)成及運(yùn)行方式如下:
是否執(zhí)行澆花操作除需土壤干旱程度之外,還取決于作物外界的光照強(qiáng)度和溫度。需要借助溫度以及光照傳感器。在自然情況下,人類澆花遵循的原則為:①規(guī)律性,根據(jù)所養(yǎng)花的對水分的需求度,定時定量地澆水。②補(bǔ)償性,如果“定時定量”這一原則無法執(zhí)行,則每間隔一段時間后,人們會觀察花的生長情況、土壤的干旱情況以及外界環(huán)境因素,進(jìn)行“補(bǔ)償性”澆水,即干旱程度越大,澆水越多。自動澆花系統(tǒng)不同于上述兩種人類澆灌模式,而是更具“智能化”,將植物生長環(huán)境的光照強(qiáng)度和溫度也測試在內(nèi),即當(dāng)光照強(qiáng)度和溫度超常時,也會啟動專用控制的子系統(tǒng)。它采用“隨時監(jiān)控,按需澆灌”的原則。具體而言,系統(tǒng)中各個傳感器維持不間斷運(yùn)行模式,能夠持續(xù)將代表土壤干旱程度以及外界溫度濕度的數(shù)值傳遞至51單片機(jī)的控制中樞。控制系統(tǒng)讀取該數(shù)值后,與數(shù)據(jù)存儲庫中預(yù)設(shè)的溫濕度“臨界值”進(jìn)行對比,進(jìn)而決定是否開始澆水。如要區(qū)分自動澆水系統(tǒng)的智能度,可在此處額外設(shè)置“比對控制程序”。首先,簡單化的自動澆水模式。傳感器數(shù)值與控制程序預(yù)設(shè)臨界值進(jìn)行對比,達(dá)到或超過臨界值,立刻澆水;未達(dá)到臨界值,不澆水。其次,分級智能自動澆水模式。傳感器數(shù)值尚未達(dá)到或超過臨界值,但與之的差距較?。ā靶 钡姆秶勺孕袥Q定),說明土壤中的水分已經(jīng)相對不足,可少量澆水(同樣,對“少”的定義由設(shè)計人員根據(jù)需求自行決定),如果超出臨界值,則按標(biāo)準(zhǔn)值澆水。
上文介紹了基于AT89C51單片機(jī)的自動澆花系統(tǒng)的實現(xiàn)原理,接下來主要闡述具體實現(xiàn)的過程。
(1)光照檢測電路為準(zhǔn)確采集不同時段的光照強(qiáng)度信號,將光敏電阻組成光照信號檢測網(wǎng)絡(luò),正對陽光的光敏電阻將采集到最大信號。光強(qiáng)信號經(jīng)過AD轉(zhuǎn)換進(jìn)入單片機(jī),AD轉(zhuǎn)換采用ADC0809,同時設(shè)定為8位。當(dāng)太陽的光照強(qiáng)度在正常范圍時,土壤水分蒸發(fā)正常,澆灌器按正常程序澆灌;當(dāng)光照強(qiáng)度高于或低于正常范圍時,澆灌器按特別的程序控制澆水量的增加或減少。光照強(qiáng)度的正常范圍隨季節(jié)變化,控制參數(shù)一般根據(jù)實驗和經(jīng)驗確定。
(2)濕度傳感器使用YL-69傳感器,該傳感器數(shù)字量輸出簡單,模擬量輸出精確,可以將濕度傳感器檢測到的數(shù)據(jù)通過A/D轉(zhuǎn)換電路轉(zhuǎn)換成數(shù)字量后輸出給單片機(jī)。
(3)將濕度傳感器與單片機(jī)相連時,為了保證傳輸結(jié)果的準(zhǔn)確性,還需額外設(shè)置一個LM393比較器。實現(xiàn)的過程為:通過R1設(shè)置一個標(biāo)準(zhǔn)值,如果土壤濕度大(AC電壓值減小),則輸出低電平;反之則輸出高電平??刂葡到y(tǒng)根據(jù)輸出信號,可粗略估計土壤當(dāng)前的濕度處于何種范圍。相關(guān)數(shù)據(jù)信息首先通過模擬電子信號的形式傳遞至控制電路中,經(jīng)過數(shù)模轉(zhuǎn)換模塊轉(zhuǎn)換為數(shù)字信號之后,可直接讀取。
(4)上文所述的“是否澆水”原理基于51單片機(jī)的實現(xiàn)流程為。單片機(jī)的輸入/輸出(I/O)口會與ADC0832數(shù)模轉(zhuǎn)換器相連,當(dāng)帶有土壤濕度具體值的信號通過I/O口進(jìn)入單片機(jī)后,具體數(shù)值會實時顯示在與單片機(jī)相連的LCD顯示屏中。此時,系統(tǒng)會判定該數(shù)值與數(shù)據(jù)存儲庫中預(yù)設(shè)“臨界值”之間的大小,符合澆水條件時,系統(tǒng)會發(fā)出澆水指令,澆水裝置會進(jìn)入澆水狀態(tài)。由于土壤濕度傳感器處于不間斷的工作狀態(tài),土壤濕度數(shù)值也會不停地傳遞至控制系統(tǒng)。當(dāng)濕度具體值與臨界值之間的比對結(jié)果符合另一項預(yù)設(shè)指令時,表明土壤中的水分已經(jīng)足夠,無需繼續(xù)澆水。此時,控制系統(tǒng)會發(fā)出“停止”指令,控制水泵停止運(yùn)行。
(1)模塊運(yùn)行流程
以上所述功能的實現(xiàn)必須建立在多個模塊協(xié)同配合的基礎(chǔ)上,具體如下:①控制程序的主函數(shù)成功設(shè)定之后,啟動系統(tǒng),執(zhí)行函數(shù)初始化操作;②通過按鍵或不間斷控制的方式,向濕度數(shù)據(jù)采集模塊下達(dá)指令,可人工按鍵控制或完全自動控制;③數(shù)據(jù)處理程序模塊,負(fù)責(zé)將土壤濕度傳感器、溫度傳感器及光照傳感器傳遞而來的信號進(jìn)行處理,完成模擬信號向數(shù)字信號的轉(zhuǎn)化后,通過I/O口送入單片機(jī);④電機(jī)驅(qū)動程序模塊(水泵控制)接到控制系統(tǒng)發(fā)布的“澆水/停水”指令后,啟動或關(guān)閉開關(guān),完成相應(yīng)的操作。
(2)主程序運(yùn)行流程
單片機(jī)成功連接所有裝置后:①上電復(fù)位,行初始化作業(yè);②向土壤濕度傳感器下達(dá)指令,采集相應(yīng)的數(shù)值;③根據(jù)需要,通過按鍵的方式進(jìn)行控制;④根據(jù)反饋的光照強(qiáng)度、土壤濕度以及外界溫度的具體值,判斷是否需要澆水。若滿足,則發(fā)布澆水指令,程序執(zhí)行至終點,間隔一段時間后循環(huán)啟動。若不滿足,則程序返回至“采集土壤濕度以及外界光照強(qiáng)度和溫度”環(huán)節(jié),執(zhí)行相應(yīng)的流程。整個系統(tǒng)工作流程如圖2所示。
圖2 澆花系統(tǒng)流程圖
結(jié)語:本文所述自動澆花系統(tǒng)考慮到土壤濕度、光照強(qiáng)度、環(huán)境溫度這些影響植物水分需求的外界因素,從而通過單片機(jī)控制電機(jī)、水泵完成對植物的智能澆灌,相對于市場上已有的自動澆花系統(tǒng)。由于實際生活中人們所養(yǎng)殖的花卉種類繁多,單通過機(jī)器無法對植物的照顧做到像人工養(yǎng)殖那樣至微至善,但由于機(jī)器對環(huán)境變化的察覺比人類更加敏銳,所以可以通過不斷地增加監(jiān)管因素以提高自動澆花系統(tǒng)的養(yǎng)殖水平。