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