王波 王晉美 孫毅浩 喬俊超



摘? 要:采用STM32單片機(jī)作為主控制器,設(shè)計(jì)一種自動澆花系統(tǒng),該系統(tǒng)由主控模塊、LP4056鋰電池充電管理模塊、穩(wěn)壓模塊、按鍵控制模塊、濕度采集模塊、OLED顯示輸出模塊和水泵控制模塊組成。該系統(tǒng)能夠?qū)崿F(xiàn)對花卉土壤濕度的實(shí)時(shí)監(jiān)測,監(jiān)測數(shù)據(jù)傳送至CPU模塊,當(dāng)濕度低于設(shè)定閾值時(shí),由單片機(jī)啟動水泵進(jìn)行抽水,實(shí)現(xiàn)自動澆花功能。系統(tǒng)設(shè)計(jì)有充電及低功耗模式,工作靈活可靠,具有一定的推廣價(jià)值。
關(guān)鍵詞:STM32單片機(jī);濕度;自動澆花;低功耗
中圖分類號:TN709;TP273? 文獻(xiàn)標(biāo)識碼:A? 文章編號:2096-4706(2023)12-0166-04
Design of Automatic Watering System Based on STM32 Single-Chip Microcomputer
WANG Bo1,2, WANG Jinmei1,2, SUN Yihao3, QIAO Junchao1
(1.School of Mechanical and Electrical Engineering, Huanghe Jiaotong University, Jiaozuo? 454950, China;
2.Henan Intelligent Manufacturing Technology and Equipment Engineering Technology Research Center, Jiaozuo? 454950, China;
3.State Grid Xinxiang County Electric Power Supply Company, Xinxiang? 453000, China)
Abstract: This paper uses STM32 Single-Chip Microcomputer as the main controller, and designs an automatic watering system. The system is composed of main control module, LP4056 lithium battery charging management module, voltage stabilization module, key control module, humidity acquisition module, OLED display output module and water pump control module. The system can realize real-time monitoring of soil humidity of flowers, and the monitoring data is transmitted to the CPU module. When the humidity is lower than the set threshold, the Single-Chip Microcomputer starts the water pump to pump water to realize the automatic watering function. The system is designed with charging and low power consumption mode, which is flexible and reliable in working, and has certain promotion value.
Keywords: STM32 Single-Chip Microcomputer; humidity; automatic watering; low power consumption
0? 引? 言
近年來,越來越多的人在家或辦公室種植喜愛的花卉,用來裝飾環(huán)境和凈化空氣,有些花卉對濕度要求較高,需要及時(shí)澆水,但是緊湊的工作生活節(jié)奏,又使得很多人不能很好地照顧花卉,來不及澆水出現(xiàn)枯萎等情況[1],因此,設(shè)計(jì)一種自動澆花系統(tǒng)就顯得非常重要。本設(shè)計(jì)根據(jù)自動澆花系統(tǒng)實(shí)際應(yīng)用環(huán)境,選用STM32G030C8T6作為主控制器,選用濕度傳感器實(shí)時(shí)監(jiān)測土壤濕度值,采用水泵進(jìn)行自動抽水澆花[2],設(shè)計(jì)有按鍵模塊,改變監(jiān)測土壤濕度的閾值;采用OLED顯示屏顯示濕度及電池電量值等參數(shù),考慮到電池電量持續(xù)問題,本系統(tǒng)采用LP4056充電管理芯片設(shè)計(jì)了充電管理模塊,可以實(shí)現(xiàn)鋰電池的循環(huán)利用;系統(tǒng)的一個特點(diǎn)是增加了低功耗模式,當(dāng)外圍設(shè)備不工作時(shí)進(jìn)入低耗的休眠狀態(tài),以達(dá)到整體的低功耗,提高整個系統(tǒng)的使用時(shí)間,通過以上模塊實(shí)現(xiàn)自動澆花系統(tǒng)設(shè)計(jì)。
1? 系統(tǒng)總體設(shè)計(jì)及工作原理
設(shè)計(jì)的自動澆花系統(tǒng),采用STM32G030C8T6作為主控制器,利用濕度傳感器測量土壤濕度,測量值傳輸給STM32內(nèi)置的12 bitAD模數(shù)轉(zhuǎn)換器,利用AD模數(shù)轉(zhuǎn)換器把土壤濕度模擬量轉(zhuǎn)換為數(shù)字量,從而得到濕度值。通過按鍵調(diào)整閾值,使用這一閾值作為水泵抽水工作的依據(jù),當(dāng)濕度低于設(shè)定閾值時(shí),單片機(jī)控制水泵進(jìn)行澆水;當(dāng)高于設(shè)定閾值時(shí),就進(jìn)入低功耗休眠模式停止工作。本設(shè)計(jì)秉承低功耗的設(shè)計(jì)初衷,且考慮到該系統(tǒng)并不需要每時(shí)每刻進(jìn)行工作,所以設(shè)定休眠模式以節(jié)約能源。在程序內(nèi)設(shè)定工作一小段時(shí)間,就進(jìn)行休眠,休眠后喚醒再次開始工作,循環(huán)往復(fù),實(shí)現(xiàn)低功耗自動澆花;以LP4056作為充電管理芯片,能夠?qū)υO(shè)備進(jìn)行充電管理。系統(tǒng)總體方案設(shè)計(jì),如圖1所示。
2? 系統(tǒng)硬件電路設(shè)計(jì)
2.1? 系統(tǒng)總體電路
該系統(tǒng)設(shè)計(jì)的總體電路分為兩部分,單片機(jī)最小系統(tǒng)電路包括STM32、復(fù)位和晶振電路,外圍電路主要包括電源電路、土壤濕度采集電路、OLED顯示電路、按鍵電路和水泵控制電路。系統(tǒng)總電路接線圖如圖2所示。
2.2? 電源電路設(shè)計(jì)
電源電路給整個系統(tǒng)供電,設(shè)計(jì)可分為三部分,分別為充電管理電路、濾波電路和降壓電路。
2.2.1? 充電管理電路
采用USB MicroB型接口作為電源的輸出端,經(jīng)過一個10 μF的電容進(jìn)行濾波后,進(jìn)入到LP4056充電管理芯片中。該芯片的第2腳是充電電流的限制端,當(dāng)串聯(lián)一個1 000 Ω的電阻時(shí),限制充電電流最大為1 A[3];第4腳是充電電流的輸入端;第5腳為充電電壓輸出端,輸出4.2 V的電池充電電壓來給18650鋰電池進(jìn)行充電[4];第6腳和第7腳是充電狀態(tài)指示燈,分別指示充電中和充電完成兩種狀態(tài),當(dāng)充電時(shí),亮紅燈,充電完成后亮綠燈;第8腳為芯片使能端,不連接即可。由一節(jié)18650電池輸出的電壓經(jīng)過R5、R6分壓后送入主控的內(nèi)部ADC進(jìn)行電池電壓采樣,分壓比為R6/(R5+R6)即1/11,電路設(shè)計(jì)如圖2中充電管理電路部分所示。
2.2.2? 濾波電路
電源中的噪聲會影響STM32G030C8T6模擬部分的精度,所以使用一個磁珠對噪聲進(jìn)行濾除[5]。磁珠是一種阻感元件,特性為:當(dāng)沒有遇到特定頻段的噪聲時(shí),表現(xiàn)為通路;當(dāng)遇到特定頻段的噪聲時(shí),表現(xiàn)出阻感特性,對噪聲進(jìn)行削弱。電容的作用是通交隔直,也是濾波的作用[6],電路設(shè)計(jì)如圖2中濾波電路部分所示。
2.2.3? 低壓差穩(wěn)壓器降壓電路
這部分使用了一顆低壓差穩(wěn)壓器芯片,負(fù)責(zé)把電池輸出的4.2 V轉(zhuǎn)換為3 V的電壓供主控使用,電路設(shè)計(jì)如圖2中降壓電路部分所示。
2.3? 土壤濕度采集電路設(shè)計(jì)
濕度傳感器是利用土壤中的水導(dǎo)電性能,含水量不同,電阻率不同的特點(diǎn)來進(jìn)行土壤濕度測量的[7],接口一端是供電,另一端是電壓采集。考慮低功耗,應(yīng)盡量減少濕度測量時(shí)的電能損耗,使它僅在需要測量的時(shí)候才啟用,采用了一個NPN三極管來控制土壤濕度傳感器的供電,這樣就可以避免電能的浪費(fèi)。當(dāng)需要測量時(shí),控制單片機(jī)的引腳為高電平,NPN三極管導(dǎo)通,供電電壓進(jìn)入傳感器;當(dāng)不需要測量時(shí),使單片機(jī)的引腳變?yōu)榈碗娖剑琋PN三極管關(guān)斷,供電電壓不能進(jìn)入傳感器,電路設(shè)計(jì)如圖2中濕度傳感器接口所示。
2.4? OLED顯示電路設(shè)計(jì)
顯示電路使用的是一塊128×32像素的OLED屏幕,屏幕控制器為SSD1306,顯示的內(nèi)容是電池的電量和土壤濕度的監(jiān)測值等信息,OLED不需要背光電源,設(shè)備一般更薄,體積更小巧,不需要經(jīng)濾光膜過濾成像,直接由元件發(fā)光可實(shí)現(xiàn)的色彩更加豐富[8],更易分辨。采用OLED屏幕使得系統(tǒng)設(shè)備整體尺寸大大縮小,更加小巧便捷,電路設(shè)計(jì)如圖2中OLED顯示部分所示。
2.5? 按鍵電路設(shè)計(jì)
按鍵電路由三個按鍵組成,按鍵的一端連接主控,另一端連接到GND。由于主控內(nèi)部可以把引腳配置為上拉輸入,所以當(dāng)按鍵沒有觸發(fā)時(shí),主控收到的是高電壓;當(dāng)按鍵按下時(shí),主控引腳連接到GND,從而使主控內(nèi)部對應(yīng)引腳檢測到低電壓,通過讀取高低電壓的變化來判斷按鍵是否按下,按鍵主要用于土壤濕度閾值的調(diào)節(jié),電路設(shè)計(jì)如圖2中按鍵部分所示。
2.6? 水泵控制電路設(shè)計(jì)
該電路采用P-MOS管和NPN三極管共同控制水泵的開關(guān),當(dāng)單片機(jī)引腳為低電平時(shí),NPN三極管關(guān)斷,MOS管的柵極由R18電阻上拉至4.2 V,由于VGS = 0,所以P-MOS管關(guān)斷;當(dāng)單片機(jī)引腳為高電平時(shí),NPN三極管導(dǎo)通,P-MOS管柵極被拉低,此時(shí)VGS<0,P-MOS導(dǎo)通,電機(jī)開始旋轉(zhuǎn),進(jìn)行抽水澆花。當(dāng)P-MOS管由導(dǎo)通轉(zhuǎn)為關(guān)斷時(shí),由于電機(jī)是感性負(fù)載,有阻礙電流突變的能力,所以電流的“慣性”會損傷P-MOS管,使用二極管D6作為續(xù)流二極管,電機(jī)和二極管D6構(gòu)成一條電流回路,從而避免損傷P-MOS管情況發(fā)生,電路設(shè)計(jì)如圖2中水泵驅(qū)動部分所示。
3? 系統(tǒng)軟件設(shè)計(jì)
本系統(tǒng)是關(guān)于自動澆花器設(shè)計(jì),一個特點(diǎn)是設(shè)計(jì)有低功耗模式。當(dāng)設(shè)備通電后,系統(tǒng)首先進(jìn)行初始化,其中包括ADC、SPI、GPIO、FLASH、TIME等的初始化,之后系統(tǒng)讀取flash中儲存的濕度值,將其保存到變量中以供與測量的土壤濕度比較,如果低于設(shè)定土壤濕度閾值,則啟動水泵澆水,如果高于設(shè)定值,則進(jìn)入低功耗模式。低功耗模式定時(shí)時(shí)間可調(diào),當(dāng)定時(shí)時(shí)間已到,則再次判斷土壤濕度是否低于設(shè)定值,如此循環(huán),降低系統(tǒng)功耗。系統(tǒng)流程圖如圖3所示。
4? 系統(tǒng)PCB設(shè)計(jì)
按照PCB布線的規(guī)則,完成基于單片機(jī)的自動澆花系統(tǒng)的PCB設(shè)計(jì),采用雙層板[9]。STM32單片機(jī)芯片位于板子中央,便于控制外設(shè),元器件位置空間分布合理,板子體積小,節(jié)省費(fèi)用,整體布線如圖4(a)所示,為了便于觀察系統(tǒng)實(shí)物,進(jìn)行3D仿真,如圖4(b)所示。
5? 應(yīng)用效果
整理焊接元器件,完成實(shí)物進(jìn)行效果測試,系統(tǒng)所需元器件明細(xì)表,如表1所示。
通電后系統(tǒng)正常工作,顯示濕度值和電池電壓等信息,通過菜單按鈕進(jìn)入設(shè)置菜單頁,可以設(shè)置濕度閾值。在缺水狀態(tài)進(jìn)行測試,成功啟動水泵進(jìn)行抽水,如圖5所示。
6? 結(jié)? 論
以STM32G030C8T6單片機(jī)為核心設(shè)計(jì)了自動澆花系統(tǒng),能夠在花卉缺水的時(shí)候自動啟動水泵進(jìn)行澆水,通過硬件焊接驗(yàn)證了系統(tǒng)的功能。本系統(tǒng)設(shè)計(jì)總體方案基本可行,結(jié)構(gòu)簡單可靠,具有充電、低功耗功能,可持續(xù)性使用,整體成本較低。該系統(tǒng)所設(shè)計(jì)的自動澆花幫助人民在繁忙的生活釋放雙手,具有一定的推廣價(jià)值和使用價(jià)值。
參考文獻(xiàn):
[1] 王紅燕,洪煥.淺談家庭養(yǎng)花 [J].園藝與種苗,2021,41(1):16-17+29.
[2] 喬琳君,魏嚴(yán)鋒.基于STC89C52單片機(jī)的自動澆花系統(tǒng)設(shè)計(jì) [J].微型電腦應(yīng)用,2021,37(3):23-26.
[3] 俞紀(jì)良,劉壯林,范海平,等.基于單片機(jī)的自動澆花系統(tǒng)設(shè)計(jì) [J].電子設(shè)計(jì)工程,2022,30(18):11-15.
[4] 任勇峰,董琳琳,劉東海.基于BQ24105的鋰離子電池充電管理模塊設(shè)計(jì)與實(shí)現(xiàn) [J].兵器裝備工程學(xué)報(bào),2020,41(2):192-197.
[5] 陳劍鋒.電源濾波電路中的磁珠應(yīng)用和設(shè)計(jì) [J].山東工業(yè)技術(shù),2018(10):159-160.
[6] 胡毅,董曉雅,馬珺,等.電容濾波直流電源電路諧波產(chǎn)生分析與抑制方法 [J].鹽城工學(xué)院學(xué)報(bào):自然科學(xué)版,2020,33(2):13-19.
[7] 過琦芳,馬國智,李夢晴,等.基于STM32的智能盆栽澆灌器設(shè)計(jì) [J].鄉(xiāng)村科技,2022,13(12):150-152.
[8] 張哲.OLED液晶屏幕 [J].影視技術(shù),2005(1):20.
[9] 李新宇,溫丹麗.多線路PCB單面板的設(shè)計(jì)與實(shí)現(xiàn) [J].電子制作,2020(7):83-84.
作者簡介:王波(1989—),男,漢族,河南安陽人,助教,碩士,研究方向:機(jī)器學(xué)習(xí)、自動控制。
收稿日期:2023-01-05
基金項(xiàng)目:2021年度黃河交通學(xué)院一流專業(yè)建設(shè)項(xiàng)目(HHJTXY-2021ylzy01);2022年度黃河交通學(xué)院校級一般項(xiàng)目(Hhjt-2022070);河南省智能制造技術(shù)與裝備工程技術(shù)研究中心科研項(xiàng)目(3118210370)