一、前言
1.1 項(xiàng)目介紹
【1】項(xiàng)目開發(fā)背景
隨著人們對(duì)生活環(huán)境舒適度的要求日益提高,室內(nèi)空氣質(zhì)量的改善成為了重要議題之一??諝鉂穸仁怯绊懭梭w健康和舒適度的重要因素,尤其在冬季或者干燥的氣候環(huán)境中,濕度過低容易導(dǎo)致干燥、呼吸道不適等健康問題。因此,調(diào)節(jié)室內(nèi)空氣濕度以提高生活質(zhì)量成為越來越多家庭和辦公場所的需求。傳統(tǒng)的加濕器大多需要用戶手動(dòng)控制,且無法智能化調(diào)節(jié)加濕程度,使用過程中缺乏實(shí)時(shí)監(jiān)控和自動(dòng)化控制,容易造成加濕效果不理想,甚至因長時(shí)間運(yùn)行或缺水而出現(xiàn)故障。因此,設(shè)計(jì)一款智能空氣加濕器,能夠自動(dòng)調(diào)節(jié)濕度、監(jiān)控水位并具備遠(yuǎn)程控制和報(bào)警功能,成為滿足現(xiàn)代用戶需求的一個(gè)重要方向。
目前市面上雖然有一些智能加濕器產(chǎn)品,但大多數(shù)產(chǎn)品在智能化控制和遠(yuǎn)程管理方面仍存在不足,許多加濕器僅能提供基本的濕度調(diào)節(jié),且對(duì)水位監(jiān)測和報(bào)警功能的支持較弱。而且,大部分加濕器需要依賴手動(dòng)操作來啟動(dòng)和關(guān)閉,用戶體驗(yàn)不夠友好。隨著物聯(lián)網(wǎng)技術(shù)的快速發(fā)展,將智能設(shè)備與云平臺(tái)結(jié)合,實(shí)現(xiàn)遠(yuǎn)程控制和數(shù)據(jù)實(shí)時(shí)監(jiān)測,已經(jīng)成為智能家居設(shè)備的一個(gè)重要發(fā)展趨勢。基于這一趨勢,本項(xiàng)目旨在設(shè)計(jì)一款具有溫濕度檢測、智能加濕、水位監(jiān)控、報(bào)警提示以及云端數(shù)據(jù)交互等多功能的智能空氣加濕器,借助STM32微控制器、ESP8266 Wi-Fi模塊以及MQTT協(xié)議等技術(shù),進(jìn)一步提升加濕器的智能化水平。
本項(xiàng)目所設(shè)計(jì)的智能空氣加濕器不僅能夠通過環(huán)境濕度自動(dòng)調(diào)節(jié)加濕器的開關(guān)狀態(tài),還能通過實(shí)時(shí)水位監(jiān)控功能,防止加濕器因缺水導(dǎo)致的損壞。同時(shí),系統(tǒng)還支持通過OLED顯示屏和按鍵控制進(jìn)行本地操作,確保用戶在沒有網(wǎng)絡(luò)連接時(shí)也能方便地使用加濕器。更重要的是,用戶可以通過智能手機(jī)APP或Windows上位機(jī),通過MQTT協(xié)議遠(yuǎn)程查看設(shè)備狀態(tài)、控制加濕器開關(guān),并獲取環(huán)境數(shù)據(jù)和設(shè)備信息,提升了系統(tǒng)的智能化、便捷性和可靠性。
綜上所述,隨著智能家居設(shè)備的發(fā)展與普及,市場對(duì)于智能空氣加濕器的需求日益增多。本項(xiàng)目結(jié)合物聯(lián)網(wǎng)技術(shù)、智能硬件設(shè)計(jì)及云平臺(tái)服務(wù),旨在開發(fā)一款功能全面、操作便捷、安全可靠的智能空氣加濕器,填補(bǔ)市場中智能加濕器在自動(dòng)化控制、遠(yuǎn)程管理和用戶體驗(yàn)方面的不足,推動(dòng)智能家居設(shè)備的普及與應(yīng)用。
原理圖:
APP運(yùn)行圖:
框架圖:
實(shí)物圖:
【2】設(shè)計(jì)實(shí)現(xiàn)的功能
(1)空氣加濕功能
本地按鍵控制:用戶可通過按鍵手動(dòng)開啟或關(guān)閉加濕器。
遠(yuǎn)程控制:用戶可通過手機(jī)APP或Windows上位機(jī)遠(yuǎn)程控制加濕器的開關(guān),實(shí)時(shí)調(diào)節(jié)空氣濕度。
(2)溫濕度檢測功能
系統(tǒng)實(shí)時(shí)采集當(dāng)前環(huán)境的溫度和濕度數(shù)據(jù)。
在自動(dòng)模式下,系統(tǒng)會(huì)根據(jù)設(shè)定的濕度閾值自動(dòng)調(diào)節(jié)加濕器工作狀態(tài)。當(dāng)環(huán)境濕度低于閾值時(shí),加濕器會(huì)自動(dòng)開啟;當(dāng)環(huán)境濕度達(dá)到設(shè)定值時(shí),加濕器會(huì)自動(dòng)停止工作。
(3)水位檢測功能
通過水位傳感器監(jiān)控加濕器的水量。
當(dāng)水位低于設(shè)定值時(shí),加濕器會(huì)自動(dòng)停止工作,以避免干燒,并且蜂鳴器會(huì)發(fā)出警報(bào)提示用戶及時(shí)加水。
當(dāng)水位充足時(shí),加濕器恢復(fù)工作,蜂鳴器停止警報(bào)。
(4)報(bào)警功能
當(dāng)加濕器水位過低時(shí),蜂鳴器會(huì)響起警報(bào),提示用戶補(bǔ)充水源。
當(dāng)水位恢復(fù)正常后,蜂鳴器停止發(fā)聲,系統(tǒng)繼續(xù)加濕工作。
(5)按鍵控制功能
系統(tǒng)設(shè)置有3個(gè)按鍵,分別實(shí)現(xiàn)以下功能:
按鍵1:實(shí)現(xiàn)OLED顯示屏的翻頁操作,用戶可以查看不同的顯示界面。
按鍵2:實(shí)現(xiàn)自動(dòng)模式與手動(dòng)模式的切換。
按鍵3:手動(dòng)控制加濕器的開關(guān)狀態(tài),方便用戶直接控制設(shè)備。
(6)本地?cái)?shù)據(jù)顯示功能
OLED顯示屏實(shí)時(shí)顯示環(huán)境溫濕度數(shù)據(jù)、當(dāng)前水位、加濕器開啟/關(guān)閉狀態(tài)、運(yùn)行模式和濕度閾值等信息。
用戶可以方便地查看設(shè)備的運(yùn)行狀況,確保加濕器工作在最佳狀態(tài)。
(7)數(shù)據(jù)上云功能
設(shè)備通過ESP8266 Wi-Fi模塊連接華為云IOT物聯(lián)網(wǎng)平臺(tái),利用MQTT協(xié)議實(shí)現(xiàn)數(shù)據(jù)的上傳與云端交互。
上傳的數(shù)據(jù)包括實(shí)時(shí)溫濕度、加濕器工作狀態(tài)和水位信息等。
用戶可以通過手機(jī)APP或Windows上位機(jī),遠(yuǎn)程查看設(shè)備上傳的數(shù)據(jù),并進(jìn)行遠(yuǎn)程控制,如開啟/關(guān)閉加濕器。
(8)遠(yuǎn)程控制功能
通過手機(jī)APP或Windows上位機(jī),用戶可以實(shí)時(shí)查看設(shè)備的工作狀態(tài),并進(jìn)行遠(yuǎn)程操作。
遠(yuǎn)程控制功能包括加濕器開關(guān)、溫濕度設(shè)定、加濕器狀態(tài)查看等,確保用戶隨時(shí)都能掌握加濕器的工作情況。
(9)模式選擇功能
設(shè)備支持自動(dòng)模式和手動(dòng)模式切換。
自動(dòng)模式下,加濕器根據(jù)實(shí)時(shí)溫濕度自動(dòng)工作,手動(dòng)模式下,用戶可以手動(dòng)控制加濕器的開關(guān)。
按鍵2用于切換這兩種工作模式,提升用戶的操作靈活性。
(10)系統(tǒng)安全性與穩(wěn)定性功能
系統(tǒng)通過水位傳感器和蜂鳴器有效預(yù)防因缺水而引起的加濕器損壞,確保加濕器在安全條件下運(yùn)行。
此外,系統(tǒng)能夠穩(wěn)定運(yùn)行于低功耗狀態(tài),延長設(shè)備的使用壽命。
【3】項(xiàng)目硬件模塊組成
(1)主控芯片:STM32F103RCT6
該模塊為系統(tǒng)的核心控制單元,負(fù)責(zé)處理所有的輸入輸出信號(hào),包括傳感器數(shù)據(jù)采集、加濕器控制、按鍵輸入、顯示輸出等。STM32F103RCT6具有較高的處理能力和豐富的外設(shè)接口,適合用于本項(xiàng)目中實(shí)時(shí)控制與數(shù)據(jù)處理。
(2)溫濕度傳感器:SHT30
SHT30模塊用于實(shí)時(shí)采集環(huán)境的溫度和濕度數(shù)據(jù)。該傳感器具有高精度和良好的穩(wěn)定性,能提供可靠的環(huán)境參數(shù)給主控芯片。通過I2C接口與STM32主控芯片連接,采集到的數(shù)據(jù)用于自動(dòng)調(diào)節(jié)加濕器的工作狀態(tài)。
(3)水位傳感器
水位傳感器用于實(shí)時(shí)監(jiān)測加濕器中的水位情況。它輸出模擬信號(hào),通過STM32的ADC接口進(jìn)行采集,將水位數(shù)據(jù)轉(zhuǎn)化為數(shù)字信號(hào)。系統(tǒng)根據(jù)水位數(shù)據(jù)判斷是否需要停止加濕器工作,防止干燒。
(4)繼電器模塊
繼電器模塊用于控制加濕器的開關(guān)。STM32通過數(shù)字信號(hào)控制繼電器的通斷,進(jìn)而控制加濕器的電源供應(yīng)。繼電器作為一個(gè)開關(guān)元件,能夠承受加濕器的工作電流,確保設(shè)備的正常運(yùn)作。
(5)蜂鳴器
蜂鳴器用于在水位過低時(shí)發(fā)出警報(bào),提醒用戶及時(shí)加水。它是通過控制高電平信號(hào)觸發(fā)的有源蜂鳴器,能夠清晰地發(fā)出響亮的聲音,確保用戶能及時(shí)注意到設(shè)備問題。
(6)OLED顯示屏(0.96寸)
OLED顯示屏用于本地?cái)?shù)據(jù)顯示,顯示當(dāng)前環(huán)境溫濕度、加濕器狀態(tài)、水位情況、工作模式、濕度閾值等信息。通過SPI協(xié)議與STM32連接,實(shí)時(shí)更新屏幕顯示的內(nèi)容,提供清晰的設(shè)備狀態(tài)信息。
(7)按鍵模塊
系統(tǒng)設(shè)有三個(gè)按鍵,分別用于實(shí)現(xiàn)以下功能:
? 按鍵1:實(shí)現(xiàn)顯示屏翻頁操作,切換不同的數(shù)據(jù)顯示界面。
? 按鍵2:切換自動(dòng)/手動(dòng)工作模式。
? 按鍵3:手動(dòng)開關(guān)加濕器。
每個(gè)按鍵都通過GPIO接口連接到STM32,按鍵的狀態(tài)通過程序讀取并進(jìn)行相應(yīng)操作。
(8)ESP8266 Wi-Fi模塊
ESP8266模塊用于將設(shè)備連接到Wi-Fi網(wǎng)絡(luò),并通過MQTT協(xié)議實(shí)現(xiàn)數(shù)據(jù)的上傳與遠(yuǎn)程控制。通過與華為云IOT物聯(lián)網(wǎng)平臺(tái)的連接,設(shè)備能夠?qū)崿F(xiàn)數(shù)據(jù)上傳、遠(yuǎn)程監(jiān)控和控制等功能。
(9)電源模塊
系統(tǒng)的電源由外部12V 2A穩(wěn)壓電源提供。該電源模塊為整個(gè)設(shè)備提供5V和3.3V的電壓,以滿足STM32、傳感器、顯示屏、繼電器和Wi-Fi模塊等硬件組件的供電需求。
(10)水位檢測模擬傳感器接口
該模塊通過模擬信號(hào)輸出水位數(shù)據(jù),并通過STM32的ADC接口進(jìn)行采集,將水位信息轉(zhuǎn)換為數(shù)字信號(hào)。水位數(shù)據(jù)用于控制加濕器的啟停,確保加濕器在缺水情況下不會(huì)工作。
【4】設(shè)計(jì)意義
隨著科技的進(jìn)步與生活質(zhì)量的提高,智能家居系統(tǒng)越來越受到人們的青睞。智能空氣加濕器作為智能家居的重要組成部分,能夠根據(jù)環(huán)境的變化自動(dòng)調(diào)節(jié)室內(nèi)空氣濕度,改善居住環(huán)境的舒適度,滿足人們對(duì)健康生活的需求。本項(xiàng)目設(shè)計(jì)的智能空氣加濕器通過結(jié)合溫濕度檢測、水位監(jiān)控、遠(yuǎn)程控制和報(bào)警功能,不僅能夠提供更加智能和便捷的用戶體驗(yàn),還能在一定程度上優(yōu)化加濕器的使用效率與安全性,避免了傳統(tǒng)加濕器操作繁瑣且容易忽視的問題。
本項(xiàng)目通過引入自動(dòng)濕度調(diào)節(jié)功能,使加濕器能夠根據(jù)實(shí)時(shí)環(huán)境濕度自動(dòng)調(diào)節(jié)工作狀態(tài),避免人為干預(yù)和過度加濕現(xiàn)象的發(fā)生,確保室內(nèi)濕度始終維持在適宜的范圍內(nèi),這對(duì)于居住者的健康至關(guān)重要。尤其在干燥季節(jié),過低的濕度會(huì)對(duì)人體的呼吸道、皮膚及眼睛等產(chǎn)生負(fù)面影響,智能加濕器能夠有效改善這一問題,提供更加舒適的居住環(huán)境。
水位監(jiān)測和報(bào)警功能的設(shè)計(jì),解決了傳統(tǒng)加濕器可能因水位過低而出現(xiàn)的干燒問題。系統(tǒng)通過實(shí)時(shí)監(jiān)控水位,確保加濕器只有在水位充足的情況下工作,這不僅延長了加濕器的使用壽命,還提高了使用的安全性。此外,當(dāng)水位過低時(shí),蜂鳴器會(huì)自動(dòng)發(fā)出警報(bào),及時(shí)提醒用戶加水,進(jìn)一步降低了設(shè)備損壞的風(fēng)險(xiǎn)。
項(xiàng)目設(shè)計(jì)還結(jié)合了物聯(lián)網(wǎng)技術(shù),通過ESP8266模塊和華為云IOT平臺(tái)的連接,實(shí)現(xiàn)了設(shè)備數(shù)據(jù)的上傳與遠(yuǎn)程控制。用戶無需靠近設(shè)備即可通過手機(jī)APP或Windows上位機(jī)遠(yuǎn)程查看設(shè)備狀態(tài)并控制加濕器開關(guān),大大提高了用戶的便捷性與舒適性。這種智能化控制讓加濕器在使用過程中更加符合現(xiàn)代家庭的需求,使其成為智能家居系統(tǒng)中的一部分。
本項(xiàng)目的設(shè)計(jì)不僅提升了加濕器的智能化、自動(dòng)化和遠(yuǎn)程控制功能,也為智能家居系統(tǒng)的進(jìn)一步發(fā)展提供了實(shí)踐經(jīng)驗(yàn)。通過STM32微控制器、MQTT協(xié)議和物聯(lián)網(wǎng)平臺(tái)的結(jié)合,實(shí)現(xiàn)了加濕器與云平臺(tái)的數(shù)據(jù)交互,為今后類似設(shè)備的智能化設(shè)計(jì)提供了寶貴的參考。此外,設(shè)計(jì)中的各個(gè)功能模塊可以根據(jù)需求進(jìn)行拓展或修改,為未來的系統(tǒng)升級(jí)和優(yōu)化留出了空間。
總體而言,本項(xiàng)目的智能空氣加濕器設(shè)計(jì),不僅提升了傳統(tǒng)加濕器的使用體驗(yàn),還通過智能化和云平臺(tái)的支持,使得用戶能夠更加便捷、智能地管理家庭環(huán)境,具有較高的社會(huì)價(jià)值和應(yīng)用前景。
【5】國內(nèi)外研究現(xiàn)狀
國內(nèi)外對(duì)智能空氣加濕器的研究和開發(fā)呈現(xiàn)出多樣化的趨勢,尤其隨著物聯(lián)網(wǎng)技術(shù)的發(fā)展,智能家居產(chǎn)品逐漸成為人們?nèi)粘I畹囊徊糠?。在國?nèi),許多企業(yè)已經(jīng)開始探索將物聯(lián)網(wǎng)技術(shù)應(yīng)用于傳統(tǒng)的家電設(shè)備中,以實(shí)現(xiàn)更高效、便捷的用戶體驗(yàn)。例如,小米公司推出的米家系列智能家居產(chǎn)品,其中就包括了支持手機(jī)APP遠(yuǎn)程控制的智能空氣凈化器和加濕器。這些設(shè)備不僅能夠通過手機(jī)進(jìn)行操作,還能根據(jù)環(huán)境中的溫濕度自動(dòng)調(diào)節(jié)工作狀態(tài),極大地提高了用戶的生活質(zhì)量。
與此同時(shí),國外在智能家居領(lǐng)域也有著深入的研究和發(fā)展。比如,美國的一些科技公司如Nest(已被谷歌收購),專注于研發(fā)智能家居控制系統(tǒng),其產(chǎn)品涵蓋了溫度控制器、煙霧報(bào)警器等,并逐步向空氣質(zhì)量管理領(lǐng)域擴(kuò)展。雖然直接針對(duì)智能空氣加濕器的研究報(bào)道相對(duì)較少,但相關(guān)技術(shù)的應(yīng)用案例卻十分豐富。例如,某些高端品牌的空調(diào)系統(tǒng)已經(jīng)集成了加濕功能,并且可以通過互聯(lián)網(wǎng)進(jìn)行遠(yuǎn)程監(jiān)控和調(diào)節(jié),實(shí)現(xiàn)了更加精準(zhǔn)的室內(nèi)環(huán)境管理。
此外,科研機(jī)構(gòu)也在不斷探索提高空氣加濕器智能化水平的方法。一些研究集中在如何利用先進(jìn)的傳感器技術(shù)來提升檢測精度,如使用更高靈敏度的濕度傳感器來實(shí)時(shí)監(jiān)測環(huán)境變化;還有一些則致力于改善加濕器與用戶之間的交互方式,比如采用語音識(shí)別技術(shù)讓用戶可以更加自然地控制設(shè)備。例如,在某些研究項(xiàng)目中,研究人員嘗試將深度學(xué)習(xí)算法應(yīng)用于空氣質(zhì)量和濕度預(yù)測模型中,以期實(shí)現(xiàn)更加精確的環(huán)境調(diào)控。
綜上所述,無論是國內(nèi)還是國際市場,智能空氣加濕器及其相關(guān)技術(shù)正在向著更加智能化、便捷化和人性化的方向發(fā)展。隨著物聯(lián)網(wǎng)技術(shù)和人工智能技術(shù)的不斷進(jìn)步,預(yù)計(jì)未來會(huì)有更多創(chuàng)新性的應(yīng)用出現(xiàn),進(jìn)一步推動(dòng)智能家居行業(yè)的發(fā)展。
【6】摘要
隨著生活水平的提高,智能家居系統(tǒng)逐漸成為現(xiàn)代家庭的重要組成部分。加濕器作為其中一種常見的家電設(shè)備,其傳統(tǒng)的工作方式往往依賴于人工操作,且缺乏智能化控制,容易出現(xiàn)過度加濕或干燒等問題。本設(shè)計(jì)基于STM32單片機(jī),結(jié)合溫濕度檢測、水位監(jiān)測、自動(dòng)濕度調(diào)節(jié)和遠(yuǎn)程控制等功能,設(shè)計(jì)了一款智能空氣加濕器。系統(tǒng)通過SHT30溫濕度傳感器實(shí)時(shí)采集環(huán)境數(shù)據(jù),并通過繼電器控制加濕器的開啟與關(guān)閉;水位傳感器監(jiān)控水量,防止干燒;ESP8266 Wi-Fi模塊實(shí)現(xiàn)設(shè)備與華為云IOT平臺(tái)的連接,支持?jǐn)?shù)據(jù)上云與遠(yuǎn)程控制功能。同時(shí),用戶可通過手機(jī)APP或Windows上位機(jī)進(jìn)行設(shè)備的遠(yuǎn)程操作和狀態(tài)監(jiān)控。該設(shè)計(jì)充分考慮了用戶需求,提升了加濕器的智能化、便捷性及安全性,具有較高的實(shí)用價(jià)值與推廣前景。
關(guān)鍵字
智能空氣加濕器;STM32;溫濕度檢測;水位監(jiān)測;遠(yuǎn)程控制;物聯(lián)網(wǎng);MQTT協(xié)議;華為云IOT
1.2 設(shè)計(jì)思路
本項(xiàng)目的設(shè)計(jì)思路主要圍繞智能化、自動(dòng)化、用戶友好性及安全性展開。設(shè)計(jì)目標(biāo)是開發(fā)一款能夠自動(dòng)調(diào)節(jié)空氣濕度、監(jiān)測水位并支持遠(yuǎn)程控制的智能加濕器,以滿足現(xiàn)代家庭對(duì)健康生活環(huán)境的需求,同時(shí)避免傳統(tǒng)加濕器存在的安全隱患和操作繁瑣問題。
系統(tǒng)的核心控制單元選用了STM32F103RCT6單片機(jī),該芯片具有較強(qiáng)的計(jì)算能力和豐富的外設(shè)接口,能夠有效處理環(huán)境溫濕度的采集、加濕器的控制及傳感器數(shù)據(jù)的處理等任務(wù)。為了確保系統(tǒng)高效、穩(wěn)定地運(yùn)行,項(xiàng)目采用了位運(yùn)算直接操作寄存器的方式,避免了標(biāo)準(zhǔn)庫和HAL庫接口的復(fù)雜性,提高了程序的執(zhí)行效率和響應(yīng)速度。
在溫濕度控制方面,通過SHT30傳感器實(shí)時(shí)監(jiān)測環(huán)境濕度,并將數(shù)據(jù)傳輸給STM32單片機(jī)。系統(tǒng)設(shè)定了一個(gè)濕度閾值,當(dāng)環(huán)境濕度低于該值時(shí),加濕器自動(dòng)開啟;當(dāng)環(huán)境濕度超過設(shè)定值時(shí),加濕器自動(dòng)關(guān)閉,實(shí)現(xiàn)自動(dòng)濕度調(diào)節(jié)。此外,系統(tǒng)支持手動(dòng)模式,用戶可以通過按鍵或手機(jī)APP控制加濕器的開關(guān),滿足不同使用場景下的需求。
為了防止加濕器因水位過低發(fā)生干燒現(xiàn)象,設(shè)計(jì)了水位監(jiān)測模塊。水位傳感器通過模擬量輸出實(shí)時(shí)監(jiān)測加濕器的水量,并通過STM32的ADC接口進(jìn)行數(shù)據(jù)采集。當(dāng)水位低于安全閾值時(shí),加濕器停止工作并觸發(fā)蜂鳴器發(fā)出警報(bào),提醒用戶及時(shí)加水。當(dāng)水位充足時(shí),蜂鳴器停止警報(bào),設(shè)備恢復(fù)正常運(yùn)行。
本系統(tǒng)還充分利用了物聯(lián)網(wǎng)技術(shù),通過ESP8266 Wi-Fi模塊將設(shè)備與華為云IOT平臺(tái)連接,實(shí)現(xiàn)數(shù)據(jù)的上云與遠(yuǎn)程控制。設(shè)備采集到的環(huán)境溫濕度數(shù)據(jù)、加濕器狀態(tài)和水位數(shù)據(jù)通過MQTT協(xié)議上傳至云平臺(tái),用戶可通過手機(jī)APP或Windows上位機(jī)實(shí)時(shí)查看設(shè)備狀態(tài),并遠(yuǎn)程控制加濕器的開啟與關(guān)閉。這不僅提升了系統(tǒng)的智能化,還大大增加了用戶的便利性。
顯示方面,采用了0.96寸OLED顯示屏,用于本地顯示環(huán)境溫濕度、加濕器狀態(tài)、當(dāng)前水位、濕度閾值等信息。用戶通過按鍵可以切換顯示界面,查看不同的數(shù)據(jù),提升了設(shè)備的操作體驗(yàn)。
綜上所述,本項(xiàng)目設(shè)計(jì)思路圍繞實(shí)現(xiàn)智能化控制、提高用戶便利性和安全性,充分結(jié)合了溫濕度檢測、水位監(jiān)測、自動(dòng)調(diào)節(jié)、遠(yuǎn)程控制等功能,通過STM32單片機(jī)的核心控制,配合傳感器與物聯(lián)網(wǎng)技術(shù),形成一個(gè)高效、安全、易操作的智能空氣加濕器系統(tǒng)。
1.3 系統(tǒng)功能總結(jié)
功能模塊 | 功能描述 |
空氣加濕 | 支持本地按鍵開啟或關(guān)閉加濕器,也支持手機(jī)APP遠(yuǎn)程控制加濕或停止加濕。 |
溫濕度檢測 | 實(shí)時(shí)采集當(dāng)前環(huán)境的濕度和溫度數(shù)據(jù),自動(dòng)模式下根據(jù)設(shè)定濕度閾值自動(dòng)啟停加濕器。 |
水位檢測 | 通過水位傳感器實(shí)時(shí)監(jiān)測加濕器的水量,當(dāng)水位過低時(shí)停止加濕器工作,避免干燒,水位充足時(shí)恢復(fù)加濕工作。 |
報(bào)警功能 | 當(dāng)水位過低時(shí),啟動(dòng)蜂鳴器報(bào)警提醒用戶加水;水位充足時(shí)停止報(bào)警。 |
按鍵控制 | 支持三個(gè)獨(dú)立按鍵:按鍵1實(shí)現(xiàn)顯示翻頁,按鍵2實(shí)現(xiàn)自動(dòng)/手動(dòng)模式切換,按鍵3實(shí)現(xiàn)加濕器的手動(dòng)開啟/關(guān)閉控制。 |
本地?cái)?shù)據(jù)顯示 | 通過OLED顯示屏顯示環(huán)境溫濕度、當(dāng)前水位、加濕器狀態(tài)、運(yùn)行模式和濕度閾值等信息。 |
數(shù)據(jù)上云 | 通過ESP8266模塊與華為云IOT平臺(tái)連接,使用MQTT協(xié)議上傳溫濕度數(shù)據(jù)、加濕器狀態(tài)、水位數(shù)據(jù)等,支持遠(yuǎn)程查看與控制。 |
遠(yuǎn)程控制 | 用戶可通過手機(jī)APP或Windows上位機(jī)遠(yuǎn)程查看設(shè)備數(shù)據(jù),并進(jìn)行加濕器的控制(開啟/關(guān)閉)。 |
自動(dòng)/手動(dòng)模式切換 | 系統(tǒng)支持自動(dòng)模式(根據(jù)環(huán)境濕度自動(dòng)控制加濕器)與手動(dòng)模式(用戶手動(dòng)開啟/關(guān)閉加濕器)之間的切換。 |
顯示翻頁功能 | 通過按鍵實(shí)現(xiàn)顯示不同的數(shù)據(jù)頁面(如環(huán)境溫濕度、水位、加濕器狀態(tài)等)。 |
1.4 開發(fā)工具的選擇
【1】設(shè)備端開發(fā)
設(shè)備端開發(fā)環(huán)境的選擇和配置對(duì)于本項(xiàng)目的順利進(jìn)行至關(guān)重要。本項(xiàng)目的設(shè)備端開發(fā)采用了Keil5軟件編程環(huán)境,Keil是嵌入式系統(tǒng)開發(fā)中常用的集成開發(fā)環(huán)境(IDE),其支持多種ARM Cortex-M系列的微控制器,并具有高效的編譯優(yōu)化能力,適合于開發(fā)STM32等基于ARM架構(gòu)的單片機(jī)。
Keil5提供了豐富的調(diào)試功能,包括源代碼級(jí)調(diào)試、變量監(jiān)控、堆棧追蹤等,能夠幫助開發(fā)人員在開發(fā)過程中迅速定位問題。與STM32F103RCT6主控芯片的兼容性非常好,通過Keil5可以輕松配置和管理開發(fā)項(xiàng)目,同時(shí)進(jìn)行編譯、燒錄和調(diào)試。
編程語言方面,本項(xiàng)目采用C語言進(jìn)行開發(fā)。C語言作為一種高效、結(jié)構(gòu)化的語言,在嵌入式開發(fā)中得到廣泛應(yīng)用,尤其適用于對(duì)硬件的低級(jí)操作。在編寫代碼時(shí),本項(xiàng)目特別選擇了直接操作寄存器的方式,通過位運(yùn)算來實(shí)現(xiàn)硬件功能的控制。這樣做的優(yōu)勢在于能夠提高程序執(zhí)行效率,降低系統(tǒng)資源消耗,同時(shí)也能更靈活地實(shí)現(xiàn)對(duì)硬件的精細(xì)控制。這種方法相較于使用標(biāo)準(zhǔn)庫或HAL庫接口,能夠讓開發(fā)人員更深入地理解和控制硬件操作,尤其適用于資源受限的嵌入式系統(tǒng)。
在程序下載方面,本項(xiàng)目采用了ISP(In-System Programming)串口下載方式。這種下載方式允許開發(fā)人員在系統(tǒng)運(yùn)行時(shí),通過串口直接下載和燒錄程序,不需要額外的編程器或調(diào)試設(shè)備。ISP下載方式具有靈活性和便捷性,能夠簡化硬件調(diào)試過程,減少開發(fā)周期,且對(duì)于STM32F103RCT6主控芯片而言,支持該下載方式,進(jìn)一步提升了開發(fā)效率。
Keil5作為開發(fā)環(huán)境,配合C語言編程、直接寄存器操作、ISP串口下載方式,能夠滿足本項(xiàng)目對(duì)高效、穩(wěn)定的嵌入式開發(fā)需求,確保系統(tǒng)能夠在精細(xì)的硬件控制下高效運(yùn)行。
【2】APP上位機(jī)開發(fā)
APP上位機(jī)的開發(fā)環(huán)境選用了Qt 5.12.6版本,這是一個(gè)跨平臺(tái)的開發(fā)框架,廣泛應(yīng)用于開發(fā)高性能的圖形用戶界面(GUI)應(yīng)用程序,特別是在嵌入式系統(tǒng)和桌面應(yīng)用開發(fā)中,具有良好的支持和靈活性。Qt提供了豐富的類庫和工具,支持開發(fā)者創(chuàng)建具備良好用戶體驗(yàn)的應(yīng)用,并且能夠在多平臺(tái)上運(yùn)行,包括Windows、Android等操作系統(tǒng),這對(duì)于本項(xiàng)目的跨平臺(tái)需求至關(guān)重要。
Qt開發(fā)環(huán)境中使用的編程語言為C++,C++是Qt的主要開發(fā)語言,因其具備強(qiáng)大的性能和對(duì)系統(tǒng)資源的高效管理,尤其適合開發(fā)需要高效圖形處理、實(shí)時(shí)響應(yīng)以及數(shù)據(jù)管理的應(yīng)用程序。通過Qt提供的信號(hào)與槽機(jī)制,開發(fā)者可以輕松實(shí)現(xiàn)事件驅(qū)動(dòng)的編程模式,這對(duì)于創(chuàng)建響應(yīng)式、動(dòng)態(tài)更新的上位機(jī)應(yīng)用是一個(gè)重要特性。
開發(fā)環(huán)境部署在Windows 10操作系統(tǒng)下,Windows平臺(tái)作為開發(fā)主機(jī),能夠提供良好的調(diào)試和測試環(huán)境,確保開發(fā)過程中的高效性和穩(wěn)定性。通過Qt Creator集成開發(fā)環(huán)境(IDE),開發(fā)人員可以在一個(gè)統(tǒng)一的界面中進(jìn)行代碼編寫、界面設(shè)計(jì)、調(diào)試、編譯等一系列操作。Qt Creator提供了強(qiáng)大的代碼補(bǔ)全、智能提示以及調(diào)試工具,這些功能大大提高了開發(fā)效率,幫助開發(fā)人員快速定位問題和優(yōu)化代碼。
另外,Qt的跨平臺(tái)特性使得該開發(fā)環(huán)境支持同時(shí)編譯和部署Windows版本以及Android版本的APP。在開發(fā)過程中,可以通過Qt的工具鏈進(jìn)行Android版本的編譯和打包,使得同一個(gè)代碼庫能夠輕松適配不同的平臺(tái),確保在Windows和Android設(shè)備上的一致性和兼容性。對(duì)于本項(xiàng)目來說,能夠在Android和Windows上運(yùn)行相同的APP,不僅降低了開發(fā)成本,還能夠保證用戶體驗(yàn)的統(tǒng)一性。
Qt 5.12.6版本作為開發(fā)環(huán)境,通過C++編程語言和跨平臺(tái)支持,結(jié)合Windows 10系統(tǒng),提供了一個(gè)高效、穩(wěn)定、易于維護(hù)的開發(fā)平臺(tái),為本項(xiàng)目的APP上位機(jī)開發(fā)提供了堅(jiān)實(shí)的基礎(chǔ)。