?

基于STM32和云平臺的植物澆水系統的設計與實現

2024-01-12 04:39王維杜詩婷韓改寧
微型電腦應用 2023年12期
關鍵詞:土壤濕度機智溫濕度

王維, 杜詩婷, 韓改寧

(咸陽師范學院, 計算機學院, 陜西, 咸陽 712000)

0 引言

隨著科學技術的進步和人民生活質量的提高,越來越多的居民在自家陽臺種植花卉植物,以改善家中的空氣質量并陶冶情操。但由于生活節奏較快,人們常常忘記或者無法及時給花卉澆水而導致花卉枯萎[1-3]。研究表明,花卉生長過程中枯萎有百分之八十是由于澆水不當引起的,澆水不宜過多也不能過少[4],因此如何給花卉澆水是一個不可忽視的研究領域。但人們不一定都十分了解花卉種植,很多時候無法從花卉和土壤的表面來判斷是否需要給花卉澆水,因而自動澆花設備是一個不錯的選擇。

市場上已有的自動澆花設備大多不適合家用,其價格昂貴、性能低,雖然采用了定時澆水方案,但并沒有考慮當下花卉的生長環境和狀況,可能會產生澆水過多或者過少而導致花卉枯萎的情況[5]。為了解決以上問題,本文將物聯網技術與云平臺相結合,設計一款根據土壤濕度進行澆水的植物澆水系統,能夠根據土壤濕度的變化自動實時澆水,同時能夠實時監控土壤的濕度及環境溫濕度信息,并將土壤濕度及環境溫濕度信息傳輸到機智云物聯網平臺,便于用戶在手機App上實時監控。

1 機智云物聯網平臺

在技術高速發展的今天,物聯網系統開發模式已經發生了大幅度的轉變。在傳統物聯網系統開發模式中,需要搭建一臺高性能服務器,在服務器上搭建物聯網后臺,把相關項目以及數據部署在服務器上,通過服務器向用戶提供相關服務。但是該模式存在很多問題:首先是成本問題,主要包含購買服務器、服務器的運營等費用,導致系統價格上升,難以推廣;其次是安全問題,服務器要預防網絡攻擊、停電等各種異常問題,一旦服務器出現問題,產品可能會死機。

本文選取機智云物聯網平臺,其是致力于物聯網、智能硬件云服務的開放平臺。平臺提供了從產品定義、設備端開發調試、應用開發、產品測試、運營管理等覆蓋智能硬件接入到運營管理全生命周期服務的能力[6]。目前,機智云針對ESP8266提供基本的MCU開發方案以及SDK開發方案,能夠滿足用戶的實際需求,使用簡單靈活。

2 系統硬件設計

系統總體設計如圖1所示。由圖1可知,整個系統由數據獲取層、數據處理及控制層和數據顯示層組成。數據獲取層由土壤濕度傳感器、溫濕度傳感器構成,其中,土壤濕度傳感器能夠采集土壤濕度,溫濕度傳感器能夠采集環境溫濕度數據。數據處理及控制層包括STM32單片機、繼電器、水泵,其中,STM32為系統核心部分,用于數據處理,并向繼電器發送控制信號,啟動或停止水泵出水。數據顯示層包括OLED液晶顯示屏、Wi-Fi模塊、機智云物聯網平臺和手機App,其中,OLED液晶顯示屏用于顯示STM32獲取的傳感器數據信息,STM32通過Wi-Fi模塊向機智云物聯網平臺傳輸數據,并將數據顯示在手機App上,同時借助手機App向STM32單片機發送控制信號。

圖1 系統總體設計框圖

2.1 土壤濕度傳感器硬件電路設計

選用YL-69土壤濕度傳感器檢測土壤濕度,將土壤濕度轉換成模擬電壓信號,單片機借助內部自帶的模/數轉換模塊將模擬信號轉換成數字信號,從而獲取土壤濕度數據[7]。該傳感器利用土壤水分對電容值的影響來檢測土壤濕度:數值越大,說明土壤越干燥;數值越小,土壤越濕潤。在硬件電路連接時需要將土壤濕度傳感器的AO引腳與單片機的ADC輸入引腳(PA1)相連,土壤濕度傳感器的GND引腳連接到單片機的GND引腳,土壤濕度傳感器的VCC引腳連接到單片機的VCC引腳。

2.2 環境溫濕度傳感器硬件電路設計

選用DHT11溫濕度傳感器監測環境溫濕度信息。該傳感器是一款含有已校準數字信號輸出的溫濕度復合傳感器,使用專用的數字模塊采集技術和溫濕度傳感技術,單線型串行接口,使用時需要在數據口連接一個上拉電阻(連線長度短于20 m時用5 kΩ上拉電阻,大于20 m時根據實際情況選擇合適的上拉電阻)[8-9]。上電后,溫濕度傳感器接收到單片機發送的相關命令,并根據接收到的不同命令反饋相關數據。在硬件電路連接時,將溫濕度傳感器的數據輸出引腳與單片機的通信引腳(PB9引腳)進行連接。

2.3 繼電器硬件電路設計

繼電器被用來控制水泵。水泵啟動需要較大的電壓及電流,如果使用單片機直接驅動,將影響單片機工作的穩定性,因此采用弱電控制強電原理,借助繼電器進行控制。繼電器相當于一個開關,其中VCC表示電源正極、GND表示電源負極、IN表示信號輸入腳、COM表示公共端、NC(normal close)表示常閉端、NO(normal open)表示常開端,一般情況下是常閉狀態。在硬件電路連接時,繼電器連接單片機的PB13引腳。

2.4 數據顯示與系統通信硬件設計

2.4.1 ESP8266通信模塊硬件電路設計

ESP8266是一個成本較低的無線設備,內置TCP/IP協議,可以與任何Wi-Fi網絡連接,是目前比較常用的一種無線通信模塊[10]。本系統中的通信模塊通過串口與單片機相連,將單片機與機智云服務器連接,進行數據傳輸。在硬件電路連接時,將Wi-Fi模塊的LRXD引腳連接單片機串口TX(PB10),UTXD引腳連接單片機串口RX(PB11),從而實現兩者之間的數據通信,如圖2所示。

圖2 ESP8266硬件電路連接圖

2.4.2 OLED液晶顯示屏硬件電路設計

有機發光二極管(OLED),又稱有機電激光顯示。OLED具備自發光、使用溫度范圍廣、構造簡單等特點,被認為是下一代的平面顯示器新興應用技術。雖然OLED的尺寸難以大型化,但是分辨率很高。

SSD1306是0.96英寸OLED液晶屏,滿足本系統需求。STM32單片機將獲取到的溫濕度信息顯示到OLED液晶顯示屏,方便用戶查看。在硬件電路連接上,STM32使用IIC通信協議連接OLED液晶顯示屏,分別連接單片機對應的PB6(作為IIC的SCL引腳)和PB7引腳(作為IIC的SDA引腳)。

2.5 STM32單片機程序下載電路設計

選用的STM32F103C8T6單片機是一款基于Cortex-M3內核STM32系統的32位微控制器。該單片機支持的程序下載方式包括串口下載和下載器下載。串口下載需要先更改硬件boot引腳連接方式,然后修改單片機的啟動地址,即可通過串口下載程序,而下載器下載需要借助單片機的下載引腳SWD和SCLK,再使用下載器下載程序。采用串口下載方式,借助FlyMcu軟件,通過串口完成程序的下載。

3 系統軟件設計

3.1 主程序設計

STM32作為主控芯片,負責程序初始化、控制及數據顯示。單片機首先獲取傳感器數據,將數據顯示在液晶屏,使用通信模塊連接機智云平臺與手機進行通信,再根據獲取的數據實施相應控制。當土壤濕度傳感器檢測到土壤濕度較低時,啟動澆水系統,當土壤濕度達標后停止澆水系統,其中澆水系統的啟動方式包括手動和自動2種。具體流程如圖3所示。

圖3 主程序流程圖

3.2 土壤濕度傳感器程序設計

土壤濕度傳感器的數據獲取是通過單片機的ADC引腳獲取傳感器的電壓值,然后將獲取到的模擬電壓進行模數轉換得到土壤濕度信息。首先初始化ADC功能,然后打開相關ADC通道進行數據循環采樣,流程如圖4所示。

圖4 土壤濕度傳感器程序流程圖

3.3 環境溫濕度傳感器程序設計

環境溫濕度傳感器通過單片機的IO口進行命令的發送及數據的獲取。首先初始化與溫濕度傳感器連接的數據引腳,然后分別輸出一段時間的高低電平命令,獲取GPIO的電平信號并獲取溫濕度傳感器傳輸的數據。程序設計流程如圖5所示。

圖5 環境溫濕度程序設計流程圖

3.4 ESP8266通信模塊程序設計

ESP8266通信模塊通過串口與單片機進行通信,因此將該程序設計轉換成單片機串口數據收發程序。首先對串口初始化,設置標志位,判斷串口是否產生中斷:如果產生中斷,接收數據并將數據解析存儲;如果沒有中斷,繼續等待。程序設計流程如圖6所示。

圖6 ESP8266通信模塊的程序設計流程圖

4 系統測試與應用

在進行系統硬件調試前,需要確保傳感器和單片機電源、傳感器與單片機的引腳連接正確。經過硬件焊接連接的實物圖如圖7所示。

圖7 基于STM32的植物澆水系統設計

4.1 云平臺傳輸調試

將系統獲取的數據上傳至機智云物聯網平臺,并針對Wi-Fi模塊、數據上傳和命令過程下發進行調試。調試程序如圖8所示。

圖8 ESP8266調試程序

4.2 測試結果與分析

在自動模式下,將土壤濕度傳感器放置在干燥缺水的土壤中,通過手機App可監測到環境溫度值為26,環境濕度值為32,土壤濕度值為4036,此時自動啟動水泵澆水,如圖9所示。

圖9 自動澆水調試圖

5 總結

以STM32F103C8T6作為主控芯片,以及使用溫濕度傳感器、土壤濕度傳感器、繼電器、水泵、Wi-Fi模塊、OLED等器件,設計了一款能夠實時采集土壤濕度信息,并在土壤干涸時及時澆水的智能澆水系統。該系統能夠滿足實時監測土壤環境的濕度,并且能定時將采集到的數據上傳到機智云物聯網平臺,使用戶能夠實時了解環境狀況,同時用戶能夠根據環境溫濕度以及土壤濕度信息,決定是否遠程打開水泵進行手動澆水操作。實踐證明,該系統運行正常,能夠直觀地監測到花盆土壤信息,實現植物的科學澆水。

猜你喜歡
土壤濕度機智溫濕度
溫濕度控制器在回收砂冷卻系統中的應用
機智闖關
土壤濕度傳感器在園林綠化灌溉上的應用初探
基于DSP的多路溫濕度監測系統
基于51單片機控制花盆土壤濕度
機智的斑馬線
基于溫濕度控制的天氣預測裝置
機智的警察
蒸發冷卻溫濕度獨立控制空調系統的應用
四川盆地土壤濕度時空分布及影響因子分析
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合