楊美子,陳晨慧,高 羽,費(fèi) 凱,王永鑫
(安徽理工大學(xué) 電氣與信息工程學(xué)院,安徽 淮南 232001)
研究發(fā)現(xiàn)出現(xiàn)無(wú)法正常使用綠植監(jiān)護(hù)裝置問(wèn)題的家庭主要為經(jīng)常因公出差的白領(lǐng)家庭,此類(lèi)家庭由于經(jīng)常長(zhǎng)時(shí)間離家導(dǎo)致家中缺水停電進(jìn)而引起了使用該裝置的問(wèn)題。并且經(jīng)過(guò)調(diào)查走訪(fǎng)發(fā)現(xiàn)該類(lèi)家庭往往是最需要此類(lèi)無(wú)人綠植監(jiān)護(hù)系統(tǒng)的受眾人群。故為了完善該系統(tǒng)增加了一項(xiàng)儲(chǔ)水功能,并且為了該儲(chǔ)水功能能夠正常運(yùn)行引入了水位控制模塊。該水位控制模塊中以STC89C52 單片機(jī)為整個(gè)模塊的CPU。通過(guò)水位傳感器實(shí)時(shí)傳導(dǎo)水位數(shù)據(jù)給單片機(jī),當(dāng)水位達(dá)到低水位或是高水位時(shí),單片機(jī)將會(huì)給電磁閥水龍頭下達(dá)指令使得其“開(kāi)”或“關(guān)”,對(duì)水箱進(jìn)行儲(chǔ)水或者是停止儲(chǔ)水,使得水箱中的水在正常情況下始終處于正常的范圍[1]。
為更好地解決家養(yǎng)綠植無(wú)人監(jiān)護(hù)問(wèn)題,本文對(duì)居家無(wú)人綠植監(jiān)護(hù)系統(tǒng)的設(shè)計(jì)進(jìn)行了完善,增加了儲(chǔ)水功能模塊,同時(shí)為了該儲(chǔ)水功能模塊能夠正常運(yùn)行,引入了水位控制模塊。該系統(tǒng)由硬件部分和軟件部分組成,硬件包括單片機(jī)主控水位監(jiān)測(cè)、按鍵輸入、水泵澆灌、顯示、蜂鳴器發(fā)出通知五大模塊。該設(shè)計(jì)采用了以STC89C52 單片機(jī)作為總控制器控制水位傳感器并加入光報(bào)警系統(tǒng),在閉環(huán)控制、開(kāi)環(huán)控制和模糊控制3 種不同的控制方法中選擇了閉環(huán)控制方法進(jìn)行有效檢測(cè),且在該系統(tǒng)檢測(cè)到與設(shè)定條件不符時(shí)可自動(dòng)進(jìn)行合適的修正,閉環(huán)流程圖如圖1所示。
圖1 閉環(huán)流程圖
水位傳感器由STC89C52 單片機(jī)作為控制器控制,為了保證其正常運(yùn)行,當(dāng)儲(chǔ)水量低于設(shè)定值時(shí)將會(huì)啟動(dòng)光報(bào)警系統(tǒng),即發(fā)出閃光和警報(bào)聲作為提示,從視覺(jué)和聽(tīng)覺(jué)上提醒用戶(hù)水箱水量已經(jīng)低于最低要求的設(shè)定值,需要立即向水箱中加水,若用戶(hù)在設(shè)定的時(shí)間內(nèi)無(wú)應(yīng)答,系統(tǒng)將通過(guò)控制器的控制自動(dòng)開(kāi)啟電磁閥裝置,利用地勢(shì)差或虹吸原理向水箱中加水[2],當(dāng)達(dá)到設(shè)置的最高水位線(xiàn)時(shí)停止注水。此時(shí)該儲(chǔ)水模塊的系統(tǒng)一次循環(huán)已經(jīng)完成,在設(shè)備完好的情況下,系統(tǒng)將持續(xù)循環(huán)。
本次設(shè)計(jì)的自動(dòng)澆灌系統(tǒng)由電源模塊、單片機(jī)最小系統(tǒng)、繼電器控制水泵、電路遺跡報(bào)警電路組成??刂葡到y(tǒng)采用直流電源適配器供電,提供5 V 電壓,總開(kāi)關(guān)采用自鎖開(kāi)關(guān),接線(xiàn)時(shí)只接常開(kāi)觸點(diǎn),當(dāng)開(kāi)關(guān)按下時(shí),觸點(diǎn)閉合,實(shí)現(xiàn)電源接通,系統(tǒng)開(kāi)始工作[3]。核心CPU 采用STC89C52,一種低功耗、高性能CMOS 8 位微控制器,具有8 K 字節(jié)系統(tǒng)可編程Flash 存儲(chǔ)器。本設(shè)計(jì)的控制系統(tǒng)是在STC89C52 單片機(jī)芯片上開(kāi)發(fā)的,并且對(duì)芯片的外圍電路進(jìn)行了擴(kuò)展,具有很強(qiáng)的靈活性和智能性。
最小的系統(tǒng)主要由STC89C52 單片機(jī)模塊、晶振電路和復(fù)位電路組成。晶振電路結(jié)合單片機(jī)內(nèi)部電路,產(chǎn)生單片機(jī)所需的時(shí)鐘頻率。單片機(jī)晶振提供的時(shí)數(shù)越多,單片機(jī)運(yùn)行速度就越快。單片機(jī)的晶振向系統(tǒng)提供主要的時(shí)鐘信號(hào)。由于單片機(jī)內(nèi)部具有晶振電路,所以外部只需鏈接一個(gè)晶振和兩個(gè)電容,電容容量通常在15 pF 至50 pF 之間,此設(shè)計(jì)選擇了30 pF。在最小系統(tǒng)復(fù)位電路中,復(fù)位操作有上電自動(dòng)復(fù)位和按鍵手動(dòng)復(fù)位兩種方式。本系統(tǒng)中使用上電復(fù)位方式,通過(guò)外部電路充電容量實(shí)現(xiàn)。只要VCC 的高度不超過(guò)1 ms,就可以實(shí)現(xiàn)自動(dòng)上電復(fù)位,也就是說(shuō),接通電源即成了系統(tǒng)復(fù)位初始化。
水位控制模塊主控制器采用STC89C52 單片機(jī),該模塊由PNP 型三極管和繼電器及水泵組成,單片機(jī)控制三極管基極。繼電器是一種根據(jù)某種輸入信號(hào)的變化,而接通或斷開(kāi)控制電路,實(shí)現(xiàn)自動(dòng)控制和保護(hù)電力拖動(dòng)系統(tǒng)的電器。當(dāng)系統(tǒng)選擇手動(dòng)澆灌模式或自動(dòng)模式時(shí),其水位低于設(shè)置的下限水位,則PNP 型三極管導(dǎo)通,繼電器得電,常開(kāi)觸點(diǎn)吸合,電動(dòng)機(jī)回路連通,執(zhí)行澆灌工作[4]。當(dāng)水位高于自動(dòng)模式的上限水位時(shí),則PNP 型三極管導(dǎo)通,繼電器斷電,常開(kāi)觸點(diǎn)復(fù)位,電動(dòng)機(jī)回路斷開(kāi),澆灌中止。水位傳感器原理圖如圖2 所示。
圖2 水位傳感器原理圖
LCD 液晶顯示模塊采用LCD1602 液晶顯示,能夠同時(shí)顯示32 個(gè)字符。VSS 為地電源,VDD 接5 V 正電源。V0 為液晶顯示器對(duì)比度調(diào)整端。RS 為寄存器選擇,高電平時(shí)選擇數(shù)據(jù)寄存器、低電平時(shí)選擇指令寄存器。R/W 為讀寫(xiě)信號(hào)線(xiàn),高電平時(shí)進(jìn)行讀操作,低電平時(shí)進(jìn)行寫(xiě)操作,當(dāng)RS 為高電平、R/W 為低電平時(shí)可以寫(xiě)入數(shù)據(jù)。E 端為使能端,當(dāng)E 端由高電平跳變成低電平時(shí),液晶模塊執(zhí)行命令。D0~D7 為8 位雙向數(shù)據(jù)線(xiàn)。該模塊主要負(fù)責(zé)顯示水位和澆水的范圍值。LCD1602顯示屏AD 圖如圖3 所示。
圖3 LCD1602 顯示屏AD 圖
報(bào)警模塊采用蜂鳴器報(bào)警和指示燈報(bào)警雙重聲光報(bào)警。蜂鳴器采用直流電壓供電,接入5 V 電源。單片機(jī)IO 引腳輸出的電流較小,單片機(jī)輸出的TTL 電平基本上驅(qū)動(dòng)不了蜂鳴器,因此需要經(jīng)過(guò)三極管放大驅(qū)動(dòng)電流,驅(qū)動(dòng)蜂鳴器報(bào)警。蜂鳴器一端連接三極管的引腳,另一端接地。一般地,三極管起開(kāi)關(guān)作用。若系統(tǒng)檢測(cè)出水位未達(dá)到或超過(guò)設(shè)定的閾值,即基極的高電平使三極管飽和導(dǎo)通,蜂鳴器電流形成回路,發(fā)出聲音,同時(shí)指示燈亮,系統(tǒng)進(jìn)入報(bào)警狀態(tài);當(dāng)水位在閾值內(nèi),基極的低電平則使三極管關(guān)閉,指示燈暗,蜂鳴器不發(fā)出聲音,系統(tǒng)正常運(yùn)行[5]。蜂鳴器報(bào)警原理圖如圖4 所示。
圖4 蜂鳴器報(bào)警原理圖
控制系統(tǒng)的軟件部分使用KEIL 軟件,以C 語(yǔ)言來(lái)編寫(xiě)程序,PROTEL 進(jìn)行系統(tǒng)仿真模擬,同時(shí)采取模塊化的形式,這樣會(huì)使條理清晰明了、便于擴(kuò)展[6]。軟件設(shè)計(jì)思路首先為系統(tǒng)初始化、顯示啟動(dòng)界面,同時(shí)獲取當(dāng)前水位信號(hào)。通過(guò)A/D 轉(zhuǎn)換后,傳輸?shù)絃CD 顯示器顯示信息;然后設(shè)定信號(hào),STC89C52 單片機(jī)為整個(gè)水位模塊控制的CPU,它會(huì)將實(shí)測(cè)水位信號(hào)和設(shè)定信號(hào)進(jìn)行比較,得出偏差,根據(jù)偏差,向電磁閥水龍頭發(fā)出指令,使得儲(chǔ)水箱水位處于正常狀態(tài)。如果儲(chǔ)水箱處于正常狀態(tài),則電磁水龍頭關(guān)閉輸水,水箱停止儲(chǔ)水。反之儲(chǔ)水箱處于缺水狀態(tài)下,系統(tǒng)會(huì)進(jìn)入報(bào)警狀態(tài),蜂鳴器電流形成回流,發(fā)出聲音,與此同時(shí)指示燈亮,提醒儲(chǔ)水箱水位處于不正常狀態(tài)下;當(dāng)水位又處于正常狀態(tài)下,蜂鳴器停止發(fā)出聲音,指示燈變暗??刂葡到y(tǒng)主程序流程圖如圖5 所示。
圖5 系統(tǒng)主程序控制流程圖
根據(jù)電路原理圖,焊接電路板,再將程序燒錄到STC89C52 單片機(jī)中,接通電源,啟動(dòng)顯示界面,設(shè)定初始信號(hào),進(jìn)行模擬檢測(cè)。檢測(cè)水位信號(hào)與設(shè)定信號(hào)有偏差時(shí),觀(guān)察電磁水龍頭是否發(fā)出“開(kāi)”指令,蜂鳴器是否發(fā)出聲音,指示燈是否變亮,進(jìn)一步觀(guān)察儲(chǔ)水箱是否處于正常狀態(tài)。當(dāng)儲(chǔ)水箱水位處于正常狀態(tài),觀(guān)察電磁水龍頭是否發(fā)出“關(guān)”指令,再觀(guān)察蜂鳴器是否停止發(fā)出聲音,指示燈變暗。若上述情況均發(fā)生,可以說(shuō)明控制系統(tǒng)運(yùn)行正常。如果系統(tǒng)調(diào)試過(guò)程出現(xiàn)各個(gè)模塊不工作等情況,使用萬(wàn)能電表檢查電路板是否焊接正確、各個(gè)模塊存在短路、接觸不良等情況。排除所有故障之后,該系統(tǒng)進(jìn)行一段時(shí)間的運(yùn)行檢測(cè),系統(tǒng)工作正常,則表示控制系統(tǒng)穩(wěn)定性良好[3]。系統(tǒng)完善后CAD 制圖如圖6 所示。
圖6 系統(tǒng)完善后CAD 制圖
本電路以STC89C52 單片機(jī)為核心,結(jié)合水位控制模塊,并且根據(jù)C 語(yǔ)言程序編寫(xiě),從而編寫(xiě)出比較良好的水位控制核心。進(jìn)一步完善了無(wú)人綠植監(jiān)護(hù)系統(tǒng)的儲(chǔ)水功能。使用更加方便、快捷,更貼近于生活。
針對(duì)人們的日常工作忙碌,常常會(huì)忘記給植物澆水這一社會(huì)普遍現(xiàn)象,設(shè)計(jì)了基于單片機(jī)的居家無(wú)人綠植監(jiān)護(hù)系統(tǒng)。本文完善了單片機(jī)的居家無(wú)人綠植監(jiān)護(hù)系統(tǒng),以STC89C52 單片機(jī)為總控制器控制水箱水位以及實(shí)施自動(dòng)澆灌的功能,配合優(yōu)化后的電路,實(shí)現(xiàn)無(wú)人檢測(cè),突破人為檢測(cè)的局限性,減小了受停水因素影響可能性。完善后的系統(tǒng)使用相較于傳統(tǒng)的無(wú)人澆灌系統(tǒng),在儲(chǔ)水功能方面有顯著的提升,彌補(bǔ)了水源供應(yīng)不及時(shí)這一缺陷。完善以后的自動(dòng)澆灌系統(tǒng)明顯有以下優(yōu)點(diǎn)。
(1)無(wú)人化:對(duì)該監(jiān)護(hù)系統(tǒng)添加一個(gè)水位控制模塊實(shí)現(xiàn)對(duì)水位進(jìn)行精準(zhǔn)控制,解決了人們?cè)谑褂眉矣脻补嘣O(shè)備中所出現(xiàn)的水源不可控問(wèn)題,徹底實(shí)現(xiàn)居家智能綠植監(jiān)護(hù)器的無(wú)人化。(2)節(jié)約型:通過(guò)對(duì)澆灌綠植水資源的控制,減少了水資源的浪費(fèi),貫徹了“節(jié)約資源,可持續(xù)發(fā)展”的理念。(3)高效性:僅在原先智能綠植澆灌系統(tǒng)中增加一個(gè)水位控制模塊,即可實(shí)現(xiàn)整個(gè)系統(tǒng)的完善。(4)低廉性:所增加模塊的產(chǎn)品零件簡(jiǎn)單且并不昂貴,適宜大規(guī)模生產(chǎn)。