0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

【IoT畢業(yè)設(shè)計】STM32開發(fā)板+機智云IoT+實現(xiàn)智能空調(diào)控制

機智云 ? 2022-04-08 12:17 ? 次閱讀

摘要:

為了解決空調(diào)耗電量大,管理不當(dāng)將浪費大量電能的問題,達(dá)到節(jié)約電能的目的,文章設(shè)計了基于物聯(lián)網(wǎng)云平臺的空調(diào)智能控制系統(tǒng),整個系統(tǒng)分為手機APP客戶端、機智云物聯(lián)網(wǎng)平臺及基于STM32的智能空調(diào)控制終端三大部分;智能空調(diào)控制終端模塊實時采集周邊環(huán)境的溫濕度數(shù)據(jù),經(jīng)過STM32單片機對數(shù)據(jù)進行處理,再通過esp8266WIFI模塊發(fā)送到手機端,用戶也可以在手機APP

端改變相關(guān)設(shè)置,再由手機端發(fā)送到云平臺,最后由云平臺通過WIFI網(wǎng)絡(luò)發(fā)送給ESP8266WIFI模塊實現(xiàn)遠(yuǎn)程控制空調(diào)的功能;

實驗結(jié)果表明,利用該系統(tǒng)能實時監(jiān)控環(huán)境溫濕度數(shù)據(jù),有效地控制空調(diào)合理使用,控制成功率達(dá)到100%,能營造舒適的生活工作環(huán)境又不造成浪費,適用于多種空調(diào)品牌,具有較高的實用價值。

引言

家用智能空調(diào)是智能家居中重要的組成部分,智能家居是在物聯(lián)網(wǎng)這一大背景下提出來的。家庭中經(jīng)常使用的設(shè)備如:網(wǎng)絡(luò)電視、電風(fēng)扇、地暖、空調(diào)、冰箱、微波爐、智能電燈等通過物聯(lián)網(wǎng)技術(shù)組合到一起并連接網(wǎng)絡(luò),構(gòu)成人們經(jīng)常提及的智能家居。智能家居集開關(guān)控制、手機遠(yuǎn)程控制、室內(nèi)外遠(yuǎn)程遙控、防盜報警、室內(nèi)外環(huán)境監(jiān)測、紅外轉(zhuǎn)發(fā)以及未來可編程開發(fā)拓展等多種功能于一體。與傳統(tǒng)家居相比,智能家居不僅具有過去設(shè)備的全部功能,還擴展了家居設(shè)備自動化和信息化的優(yōu)勢,為使用者提供全方位與設(shè)備進行信息交互功能,同時也降低了諸多能源的消耗[1-3]。


然而由于各種物聯(lián)網(wǎng)設(shè)備千差萬別,使用的通訊協(xié)議不盡相同,常用的通訊方式有串口、WIFI、3G、4G、并口等,導(dǎo)致物聯(lián)網(wǎng)應(yīng)用開發(fā)異常復(fù)雜,使用的編程語言和技術(shù)紛繁多樣,導(dǎo)致應(yīng)用難以實現(xiàn)傳統(tǒng)軟件所具有的可維護性和可伸縮性,同時難以自動傳輸設(shè)備的監(jiān)測數(shù)據(jù)以及傳遞執(zhí)行動作,所以簡化物聯(lián)網(wǎng)應(yīng)用開發(fā)的關(guān)鍵技術(shù)勢在必行。

家用智能空調(diào)控制系統(tǒng)在智能家居物聯(lián)網(wǎng)背景下應(yīng)運而生,目前大部分舊時的普通家居還使用紅外遙控器通過發(fā)送信號對空調(diào)進行控制,但許多家庭面臨遙控器過多、遙控器失靈,以及找不到遙控器等問題,造成了許多的煩惱,隨著科技的發(fā)展,針對這類問題某些廠家發(fā)明了紅外線發(fā)射器,只要將紅外線發(fā)射器插在手機上就能控制家電,但此類產(chǎn)品還存在著明顯的局限性,控制距離過短的問題顯得尤為突出,再加上需要隨時帶在身邊顯得尤為麻煩[4]。


目前家電市場上已有不少推出智能型空調(diào)的公司產(chǎn)品[5],實現(xiàn)原理一般以單片機為控制芯片,內(nèi)置無線通信模塊(如WIFI)與控制平臺通信。這樣的方式須內(nèi)置無線通信模塊,僅供新生產(chǎn)的新型號空調(diào),不能控制老型號普通版空調(diào)。


針對以上紅外線空調(diào)智能控制距離短、新型空調(diào)成本高、物聯(lián)網(wǎng)技術(shù)等原因,本文提出一種方法來實現(xiàn)以手機APP為客戶端,通過網(wǎng)絡(luò)連接云平臺進行虛擬服務(wù)虛擬設(shè)備和外置智能空調(diào)控制終端,可以實現(xiàn)對普通空調(diào)的遠(yuǎn)程控制。本文的空調(diào)智能控制系統(tǒng)基于STM32主控中心、WIFI技術(shù)和機智云平臺而設(shè)計的,關(guān)鍵技術(shù)是采用FlyMcu軟件用Keil MDK5編程實現(xiàn)機智云平臺的SDK和API服務(wù),實現(xiàn)三部分的通信連接,將新的服務(wù)器平臺應(yīng)用于物聯(lián)網(wǎng)的應(yīng)用開發(fā),簡化了物聯(lián)網(wǎng)應(yīng)用開發(fā)的復(fù)雜性,加快了物聯(lián)網(wǎng)應(yīng)用的開發(fā)效率,提高了應(yīng)用的可維護性、可升級性和可擴展性。


1 系統(tǒng)結(jié)構(gòu)及原理

根據(jù)對智能控制系統(tǒng)的總體功能分析,將系統(tǒng)分為以下幾個部分進行模塊化設(shè)計,首先是溫濕度數(shù)據(jù)采集模塊,接著是按鍵控制顯示模塊,最后是WIFI網(wǎng)絡(luò)通訊模塊。溫濕度數(shù)據(jù)采集模塊采集當(dāng)前環(huán)境數(shù)據(jù)信息,發(fā)送給中央處理器,處理器對信息進行讀取,再發(fā)送給液晶顯示模塊顯示。按鍵分別控制空調(diào)的溫度、風(fēng)速和模式,當(dāng)按鍵按下處理器收到信號時進行信號識別,接著把信息發(fā)給液晶顯示模塊顯示。當(dāng)單片機接收到數(shù)據(jù)信息時,單片機也會將數(shù)據(jù)信息通過WIFI網(wǎng)絡(luò)發(fā)送給機智云平臺,機智云平臺再將數(shù)據(jù)信息發(fā)送給手機APP。系統(tǒng)整體框圖如圖1所示。


pYYBAGJPtuCAZ7jvAAHU4Hrf3JA828.png

圖1 系統(tǒng)整體框圖


機智云Aiot開發(fā)平臺是個人或企業(yè)開發(fā)者的一站式智能硬件開發(fā)及云服務(wù)平臺。平臺提供了定義產(chǎn)品、應(yīng)用開發(fā)、硬件設(shè)備的開發(fā)調(diào)試、云端開發(fā)、運營管理、數(shù)據(jù)服務(wù)、產(chǎn)品測試等覆蓋智能硬件接入到運營管理全生命周期服務(wù)的能力。機智云物聯(lián)網(wǎng)平臺為開發(fā)者提供了許多幫助,其中以自助式開發(fā)工具和開放的云平臺對于開發(fā)者而言幫助最大。開發(fā)者開發(fā)硬件聯(lián)網(wǎng)時,常常止步于相關(guān)應(yīng)用程序的開發(fā),因此硬件聯(lián)網(wǎng)在這之前只有部分技術(shù)經(jīng)驗特別豐富的技術(shù)人員才能開發(fā)。


機智云針對這類問題為開發(fā)者提供了完善的SDK與API服務(wù),開發(fā)者只需下載下來直接使用即可,這不但大大降低了開發(fā)者的技術(shù)門檻,而且大大縮短了研發(fā)周期,減少了開發(fā)者花費在軟件開發(fā)等方面的精力,為今后的硬件智能化升級提供了許多寶貴精力[6-8]。


機智云開發(fā)者平臺為開發(fā)者提供了固件包,分為GAgent和MCU兩部分,其中MCU部分是直接與硬件設(shè)備通信的,也就是說,我們通過對MCU內(nèi)部燒入代碼,通過相應(yīng)的程序編程,實現(xiàn)對硬件的控制;然而GAgent相當(dāng)于機智云提供給我們WIFI模塊的固件包,它的作用分為兩方面,一方面為一些硬件模塊提供配置入網(wǎng)功能或者是綁定手機功能,另一方面為手機控制硬件或者云端與硬件信息交互提供幫助。


機智云為用戶提供豐富的云服務(wù)功能,開發(fā)者可以在機智云服務(wù)平臺上注冊用戶和登錄、注冊設(shè)備和注銷、綁定設(shè)備和解綁等。機智云上的配置文件服務(wù)器可以為開發(fā)的設(shè)備提供數(shù)據(jù)點定義和配置,當(dāng)硬件設(shè)備發(fā)送二進制數(shù)據(jù)時,SDK與云服務(wù)可以通過數(shù)據(jù)配置文件解碼,通過這種方式對上傳來的數(shù)據(jù)就行解析,當(dāng)云端下發(fā)相應(yīng)的數(shù)據(jù)點鍵值對時,SDK與云服務(wù)通過數(shù)據(jù)配置文件編碼成二進制數(shù)據(jù),然后將二進制數(shù)據(jù)傳輸?shù)皆O(shè)備上,再由設(shè)備內(nèi)部處理,以此達(dá)到對設(shè)備控制的效果[9-12]。


2 物聯(lián)網(wǎng)云平臺的空調(diào)智能控制硬件設(shè)計

2.1 硬件電路設(shè)計

2.1.1 單片機最小系統(tǒng)

目前市面上的單片機有很多種,比如最常見的8051單片機、STM32單片機、TMS單片機、MSP430系列單片機等,51單片機和STM32單片機作為大學(xué)最常用的兩款單片機,本作品采用STM32單片機作為主控芯片,它具有高性能、豐富合理的外設(shè)、低功耗等優(yōu)勢,除了自身優(yōu)勢外,它還擁有強大的軟件支持,即豐富的軟件包,具備全面豐富的技術(shù)文檔,還積累了大批的用戶群體[13-14]。


本文選用STM32F103C8T6最小系統(tǒng)板,該系統(tǒng)板作為本套設(shè)計的中央處理器,通過PB9端口接收來自DHT11溫濕度檢測模塊的檢測數(shù)據(jù)。單片機I/O模擬SPI連接方式,由PB5~PB8接到OLED液晶顯示的模塊引腳上。將PA2、PA3與ESP8266WIFI模塊的RX、TX端口相連,實現(xiàn)數(shù)據(jù)互通。按鍵開關(guān)直接連接最小系統(tǒng)板的PB11~PB14端口,單片機接受到低電平信號針對內(nèi)部數(shù)據(jù)進行處理。

2.1.2 按鍵電路


OLED又稱為有機發(fā)光半導(dǎo)體,因其具備發(fā)光效率高、亮度高等特性,廣泛用于MP3、智能手表、智能車攝像頭圖像實時顯示、電池管理儀、工控手柄、便攜醫(yī)療儀等產(chǎn)品。OLED引腳定義如表所示。OLED的GND管腳一般直接連接電源地,VCC管腳接電源模塊的3.3 V電源端口,SCL管腳接STM32單片機的CLK時鐘端口,SDA管腳接MOSI數(shù)據(jù)端口,RST管腳一般接單片機的復(fù)位端口,D/C管腳一般用來接收單片機傳輸來的數(shù)據(jù)或命令,從SCL管腳到D/C管腳都是高電平有效,OLED液晶顯示電路圖如圖2所示。


OLED模塊的分辨率為128*64,通過編程顯示16*16點陣以供使用,模塊采用SPI接口方式,通過研究GPIO模擬SPI的時序圖,不難發(fā)現(xiàn),模擬SPI通信協(xié)議其實是向內(nèi)部的SSD1306芯片寫入一個字節(jié)信號,這一個字節(jié)中包含了命令和數(shù)據(jù)信息,通過編程,只能向OLED模塊內(nèi)部寫入數(shù)據(jù)不支持讀取數(shù)據(jù)功能,因此只需要寫SPI發(fā)送給OLED。


poYBAGJPtumAZN2GAAD_Vwxttlg593.png

圖2 OLED 液晶顯示電路

2.1.4 溫濕度檢測

DHT11數(shù)字傳感器是一款溫濕度復(fù)合傳感器,它是基于高性能的溫濕度感應(yīng)元件制作而成的,其內(nèi)部包括一個電容式感濕元件和一個高精度集成的測溫元件,并與一個高性能8位的單片機相連接。該傳感器的數(shù)字信號已校準(zhǔn),無需使用者擔(dān)心,該產(chǎn)品溫濕度的測量精度得到用戶的認(rèn)可,因此其常應(yīng)用在檢測設(shè)備、記錄器、醫(yī)療產(chǎn)品之中。


DHT11傳感器既能測量溫度,也能測量濕度,因此它的數(shù)據(jù)準(zhǔn)確度不如一些用于測量單一數(shù)據(jù)信息的傳感器,與它們比較溫濕度測量結(jié)果精確度要小很多。DHT11數(shù)字溫濕度傳感器工作電壓為3.3~5 V之間,數(shù)據(jù)端口也帶有上拉電阻,該模塊設(shè)有固定的螺絲孔,方便用戶的連接,1號引腳是數(shù)據(jù)管腳和STM32的I/O口相連,2號引腳接電源模塊的3.3 V電源,3號引腳接地。引腳接線電路圖如圖3所示。


pYYBAGJPtvCAWGG8AAB9d6s7Ns0911.png

圖3 DHT11引腳接線電路


DHT11溫濕度傳感器作為采集模塊,使用方法為:首先總線下拉電平18 ms, 接著總線由上拉電阻拉高電平,并且傳感器設(shè)定延時30μs, 其次判斷已連接的STM32單片機GPIO口是否有相應(yīng)的低電平響應(yīng),響應(yīng)后80μs STM32的GPIO口再發(fā)出高電平。當(dāng)有高電平發(fā)出,80μs后傳感器進入數(shù)據(jù)采集狀態(tài)和校驗階段。


2.1.5 通信模塊

本系統(tǒng)采用WIFI模塊來實現(xiàn)硬件與手機APP通信,當(dāng)前市面上有很多不錯的WIFI模塊產(chǎn)品,最后決定選取ESP8266開發(fā)板。之所以選用ESP8266 WIFI開發(fā)板主要是因為該開發(fā)板的主模塊是ESP-12F,串口芯片型號是CP2102,最重要的原因是支持NodeMCU Lua開發(fā)方式,雖然本設(shè)計尚未用到該開發(fā)方式,但如果使用該開發(fā)方式可以不再使用STM32核心處理器,直接通過該開發(fā)板D1引腳接OLED液晶屏SDA引腳,D2引腳接OLED液晶屏SCL引腳,3 V接3.3伏電源,GND接電源地。因此選用該開發(fā)板為以后硬件升級奠定一定基礎(chǔ)[15]。


ESP-12F是由安信可科技開發(fā)的,該模塊核心處理器ESP8266在較小尺寸封裝中集成了業(yè)界領(lǐng)先的Tensilica L106超低功耗32位微型MCU,帶有16位精簡模式,ESP-12F是ESP-12的增強版,無論是工藝上還是**電路上,相比于上一代都展現(xiàn)了極大進步,在穩(wěn)定性與抗干擾性方面,都表現(xiàn)極佳,PCB天線經(jīng)過了專業(yè)實驗室的測試,也得到了ROHS的認(rèn)證,ESP-12F在原先基礎(chǔ)上又新增了6個IO口,SPI口引出,對于開發(fā)者而言,開發(fā)也更加便捷,它一方面可以直接通過IO口與STM32單片機進行交流。


另一方面通信工作方式分為STA模式、AP模式和 STA+AP模式,并且內(nèi)部包含了TCP/IP協(xié)議,由此實現(xiàn)了云平臺通過WIFI網(wǎng)絡(luò)和串口之間的數(shù)據(jù)傳輸[16-18]。


本設(shè)計是在機智云平臺基礎(chǔ)上設(shè)計的,在選擇好相應(yīng)的幾個功能后,機智云平臺會自動生成相應(yīng)的SDK,因此無需關(guān)注其內(nèi)部協(xié)議處理問題,這對開發(fā)起到極大的便捷性,WIFI模塊的開發(fā)設(shè)計主要包括配置處理、數(shù)據(jù)上報、數(shù)據(jù)下發(fā),其他的軟件程序都由機智云平臺自動生成,結(jié)合軟件開發(fā)手冊調(diào)用即可。


本設(shè)計直接使用ESP8266 WIFI模塊開發(fā)板,該開發(fā)板的原理圖如圖4所示,鑒于系統(tǒng)以STM32作為核心處理器,因此本模塊只需用到RX端口和TX端口,其余端口留有今后升級使用。將WIFI模塊開發(fā)板的3V3和GND引腳分別接到電源模塊的3.3 V電源端和接地端,RX引腳和TX引腳分別接STM32開發(fā)板的PA2引腳和PA3引腳,通過這兩個引腳實現(xiàn)信息相互傳輸。


poYBAGJPtvmAehDUAAWA_xfiLhE101.png

圖4 WIFI 模塊電路


2.2 軟件設(shè)計

控制工作流程如圖5所示,空調(diào)設(shè)備供電后,控制器通過無線網(wǎng)絡(luò)連接遠(yuǎn)程服務(wù)器機智云平臺,手機APP操作向服務(wù)器發(fā)送設(shè)備惟一識別碼和狀態(tài)信息,云平臺接收到信息后,進行數(shù)據(jù)分析處理,并查詢該設(shè)備對應(yīng)的數(shù)據(jù)信息編碼指令,WIFI模塊在配置處理中有兩種接入模式,分別是SoftAP模式和AiriLink模式,當(dāng)通過程序設(shè)定使WIFI模塊處于AiriLink模式時,WIFI模從會通過WTFI網(wǎng)絡(luò)連續(xù)地接收特定編碼的WIFI廣播包,當(dāng)手機連接已聯(lián)網(wǎng)的WIFI網(wǎng)絡(luò)時,手機會自動廣播,廣播的是內(nèi)容是由手機APP(如Demo APP)發(fā)送內(nèi)部編碼后的WIFI網(wǎng)絡(luò)SSID和密碼。


WIFI模塊接收到廣播的內(nèi)容后,自動嘗試連接對應(yīng)的WIFI網(wǎng)絡(luò),當(dāng)顯示連接成功時,相應(yīng)對的配置也就完成了、當(dāng)WIFI模塊處于AP模式下時,WIFI模塊自身就相當(dāng)于一個熱點,可以通過手機的機智云APP直接與WIFI模塊連接,通過內(nèi)部數(shù)據(jù)信息處理,手機APP會將可用的WIFI網(wǎng)絡(luò)SSID以及密碼發(fā)送給WIFI模塊,當(dāng)WIFI模塊接收到手機發(fā)來的配置信息屆會自動不斷嘗試連接相應(yīng)的路由器,當(dāng)WIFI模塊顯示連接成功時,該設(shè)備會自動跳轉(zhuǎn)到正常工作模式。若有發(fā)回指令給控制器,控制器接收到指令,通過手機APP,完成對空調(diào)設(shè)備的控制。


pYYBAGJPtwOAU4KVAAKchiEgOHQ877.png

圖5 控制工程流程圖


2.2.1 STM32驅(qū)動設(shè)計

2.2.1.1 時鐘初始化


系統(tǒng)時鐘初始化采用系統(tǒng)滴答定時器,函數(shù)中RCC-0scInitTypeDef為結(jié)構(gòu)體函數(shù),結(jié)構(gòu)體中包含了是時鐘來源,RCC-ClkInitTypeDef函數(shù)以結(jié)構(gòu)體的形式定義了總線的時鐘的配置,總線時鐘一般選擇的是內(nèi)部使能系統(tǒng)時鐘,本程序中是使用外部時鐘源HSE的8 MHz晶振,通過代碼運算實現(xiàn)9倍頻,達(dá)到72 MHz系統(tǒng)主時鐘。


APB1總我時鐘通過分頻實現(xiàn)36 MHz, 然而APB2和AHB都為72 MHz: 該模塊中實現(xiàn)了1 ms延時,是通過HAL-RCC-GetHCLKFreq()/1 000賦值,以此來使系統(tǒng)達(dá)到1 ms的中斷,接著通過定義HAL_SYSTICK_Config內(nèi)部形參為1 ms。以此實現(xiàn)系統(tǒng)滴答定時器的初始化配置。


2.2.1.2 串口模塊初始化

STM32程序的串行通信中,程度必須包含串口初始化程序,首先要設(shè)定其波特率,只有相同波特率,才能實現(xiàn)相互通信,波特率相同每秒中傳輸?shù)臄?shù)據(jù)位數(shù)也就相同,數(shù)據(jù)傳輸是以一個字符接著一個字符的順序傳輸?shù)?,一個字符的傳輸是由起始位開始,停止位結(jié)束,當(dāng)系統(tǒng)判斷了起始位和停止位,表明一個字符傳輸成功。下方的串口初始化程序表示,USART1選擇異步通信方式,接著設(shè)定相應(yīng)的波特率為115 200 Bits/s, 并且設(shè)定8 Bit數(shù)據(jù)長度。


2.2.1.3 按鍵模塊初始化

按鍵初始化函數(shù)是keyInit (),該函數(shù)定義了2個按鍵相應(yīng)的I/0口,通過讀取函數(shù)的輸入值,進行程序判斷,對于按鍵1和按鍵2需識別是長按還是短按。


2.2.2 OLED液晶顯示模塊程序設(shè)計

按鍵初始化函數(shù)是keyInit (),該函數(shù)定義了2個按鍵相應(yīng)的I/0口,通過讀取函數(shù)的輸入值,進行程序判斷,對于按鍵1和按鍵2需識別是長按還是短按。


2.2.2 OLED液晶顯示模塊程序設(shè)計

OLED模塊的分辨率為128*64,通過編程顯示16*16點陣以供本系統(tǒng)使用,模塊采用SPI接口方式,通過研究GPIO模擬SPI的時序圖,不難發(fā)現(xiàn),模擬SPI通信協(xié)議其實是向內(nèi)部的SSD1306芯片寫入一個字節(jié)信號,這一個字節(jié)中包含了命令和數(shù)據(jù)信息,通過編程,只能向OLED模塊內(nèi)部寫入數(shù)據(jù)不支持讀取數(shù)據(jù)功能,因此只需寫SPI發(fā)送給OLED即可。


2.2.3 數(shù)據(jù)采集模塊程序設(shè)計

DHT11溫濕度傳感器作為采集模塊使用,本課題研究了其相應(yīng)的工作原理,而總結(jié)出一般的軟件流程為:首先總線下拉電平18 ms, 接著總線由上拉電阻拉高電平,并且傳感器設(shè)定延時30 μs其次判斷已連接的STM32單片機GPIO口是否有相應(yīng)的低電平響應(yīng),如果有響應(yīng),響應(yīng)后80 lusTY32的GPIO口再發(fā)出高電平。當(dāng)有高電平發(fā)出,80 μs后傳感器進入數(shù)據(jù)采集狀態(tài)。


2.2.4 WIFI程序模塊設(shè)計

WIFI模塊在配置處理中有兩種接入模式,分別是SoftAP模式和AirLink模式,當(dāng)通過程序使WIFI模塊處于 Airlink模式時,WIFI模塊會通過WIFI網(wǎng)絡(luò)連續(xù)地接收特定編碼的WIFI廣播包,當(dāng)手機連接已聯(lián)網(wǎng)的WIFI網(wǎng)絡(luò)時,手機會自動廣播,廣播的是內(nèi)容是由手機APP(如 Demo APP)發(fā)送內(nèi)部碼后的WIFI網(wǎng)絡(luò)SSID和密碼,WIFI模塊接收到廣播的內(nèi)容后,自動嘗試連接對應(yīng)的WIFI網(wǎng)絡(luò),當(dāng)顯示連接成功時,相應(yīng)對的配置也就完成了。


當(dāng)WIFI模塊處于APP模式下時,WIFI模塊自身就相當(dāng)于一個熱點,我們可以通過手機的機智云APP直接與WIFI模塊連接,通過內(nèi)部數(shù)據(jù)信息處理,手機APP會將可用的WIFI網(wǎng)絡(luò)SSD以及密碼發(fā)送給WIFI模塊,當(dāng)WIFI模塊接收到手機發(fā)來的配置信息后會自動不斷嘗試連接相應(yīng)的路由器,當(dāng)WIFI模塊顯示連接成功時,該設(shè)備會自動跳轉(zhuǎn)到正常工作模式。


2.2.5 STM32軟件編程


STM32作為本設(shè)計的核心樞紐,無論是直接控制空調(diào)的幾種設(shè)定還是將數(shù)據(jù)顯示到手機上都要經(jīng)過STM32不斷檢測有無信號輸入,當(dāng)STM32檢測到對應(yīng)的按鍵串口有低電平輸入時,STM32內(nèi)部處理發(fā)送給OLED模塊顯示。當(dāng)系統(tǒng)接通電源時,STM32不斷向溫濕度傳感器發(fā)送檢測信號,由STM32處理發(fā)送給OLED顯示和通過WIFI模塊發(fā)送給機智云平臺,再經(jīng)過機智云IoT開發(fā)平臺發(fā)送給用戶手機APP。


控制工程流程如圖5所示,遠(yuǎn)程管理與數(shù)據(jù)分析系統(tǒng)功能流程如圖6所示。首先用手機APP提前設(shè)置好空調(diào)相關(guān)參數(shù),然后啟用設(shè)備數(shù)據(jù)分析功能,該功能可以實時存儲的空調(diào)各狀態(tài)數(shù)據(jù)并保存,同時與提前設(shè)置好的空調(diào)狀態(tài)變量進行比較分析,判斷空調(diào)狀態(tài)是否開啟或者是關(guān)閉,根據(jù)需要生成控制指令來調(diào)節(jié)空調(diào)的溫度,根據(jù)需要生成報警信息并發(fā)送到控制器,同時通知給管理員。同時,根據(jù)整個控制過程中記錄的設(shè)備狀態(tài)信息來綜合分析空調(diào)運行情況等信息,了解系統(tǒng)在節(jié)能控制方面的效益。



poYBAGJPtw-AP71fAANOkLGXQG0906.png

圖6 遠(yuǎn)程管理與數(shù)據(jù)分析流程圖


為了實現(xiàn)真正的遠(yuǎn)程控制,選擇將實物硬件系統(tǒng)接入物聯(lián)網(wǎng)云平臺。在云平臺注冊一個開發(fā)者賬號,注冊完成后可以開始創(chuàng)建新任務(wù)。第一步,先創(chuàng)建智能空調(diào)的基本信息。


第二步,創(chuàng)建本系統(tǒng)功能所需的數(shù)據(jù)點。

第三步,下載生成的APP源碼(可以自行對源碼進行更改),生成APP。


3 系統(tǒng)安裝及調(diào)試結(jié)果

3.1 硬件使用說明

1)連接電源;

2)若此前WIFI模塊已入網(wǎng),在電源接通后,WIFI模塊會自動入網(wǎng),整個系統(tǒng)處于工作狀態(tài)。若此前未連接WIFI,此時只需在手機端對WIFI模塊進行配網(wǎng)即可。


3.2 軟件使用說明

1) 用云平臺生成的APP源代碼在AndroidStudio中生成機智云示例APP,在安卓手機上安裝APP。

2) 進入APP點擊一鍵配置——>輸入自己的WIFI名稱和密碼——>選擇WIFI模塊的型號——>根據(jù)提示按配網(wǎng)按鍵——>等待配網(wǎng)成功——>配網(wǎng)成功后會顯示設(shè)備在線,過程附圖如下:①一鍵配置;②輸入WIFI密碼;③選擇WIFI模塊型號;④搜索連接設(shè)備;⑤配網(wǎng)成功;⑥設(shè)備控制界面。(順序從左到右,從上到下)


連接成功后,可以對空調(diào)進行遠(yuǎn)程控制,遠(yuǎn)程開啟和關(guān)閉空調(diào),遠(yuǎn)程監(jiān)測家中環(huán)境溫濕度,遠(yuǎn)程選擇空調(diào)的模式,遠(yuǎn)程設(shè)定空調(diào)溫度;除此之外,空調(diào)有智能控制模式,當(dāng)溫度超過設(shè)定的閾值,空調(diào)可以自動開啟進行制冷或制熱;空調(diào)還保留手動控制模式,可以通過按鍵控制空調(diào)的各參數(shù)和模式。


3.3 測試

在系統(tǒng)測試時,選擇了模擬空調(diào)電路作為測試對象,同時手機打開機智云APP,家用空調(diào)智能控制系統(tǒng)設(shè)計包括對空調(diào)的模式、風(fēng)速和溫度的控制,環(huán)境溫濕度也同時在OLED屏幕上顯示,智能家居控制系統(tǒng)可分為硬件控制系統(tǒng)與遠(yuǎn)程控制系統(tǒng)兩方面。在進行實驗調(diào)試之前,需要將軟件平臺keil MDK5安裝好,keil MDK5用于編寫和調(diào)試代碼,并將代碼燒錄到STM32最小系統(tǒng)板上,在keil MDK5中編寫好代碼,并且選擇好器件STM32F103C8,最終檢查編譯成功結(jié)束。具體步驟如下。


步驟1:基于keil 軟件與面包板搭建的臨時電路,根據(jù)基本要求實現(xiàn)測試;

步驟2:先安上元件后,焊接電路,用萬用表測試電路是否正確連通,以確定無虛焊、漏焊和焊接錯誤等問題,然后將集成芯片安上。以此可以防止集成芯片由于電壓過大而燒壞;

步驟3:檢查連接無誤后,裝載程序,調(diào)試,運行;


pYYBAGJPtxaAalYwAAHufmYznC4935.png

圖7 系統(tǒng)界面圖


首先進行硬件系統(tǒng)操控:當(dāng)按下紅色按鈕時,模式可以改變;當(dāng)按下綠色按鈕時,風(fēng)速可以改變;當(dāng)按下藍(lán)色按鈕時,可以調(diào)高溫度;當(dāng)按下黃色按鈕時,可以調(diào)低溫度。


其次進行遠(yuǎn)程操控:當(dāng)選擇模式一欄時,可以選擇自己想設(shè)定的模式,顯示屏也能夠顯示,當(dāng)選擇風(fēng)速一欄時,可以選擇自己想設(shè)定的風(fēng)速,顯示屏?xí)⒂谑謾C設(shè)定的風(fēng)速顯示出來,當(dāng)拉動溫度條時,顯示屏可以根據(jù)設(shè)定值,將溫度顯示出來,手機機界面還會實時顯示環(huán)境溫濕度的變化。


首先通過程序獲取空調(diào)遙控器編碼進行分析,其組成按編碼模式為:表1模式編碼,分別對5種工作模式自動、制冷、加濕、送風(fēng)、制熱進行編碼,表2為風(fēng)速模式,分別對自動、一級、二級、三級進行編碼,表3為溫度編碼,分別對溫度范圍進行編碼。

校驗碼=[(模式-1)+(溫度-16)+5+左右掃風(fēng)],將十六進制數(shù)轉(zhuǎn)換成二進制數(shù)保留后4位,再逆序取值;校驗碼生成后根據(jù)通過程序進行編碼,編碼的不同可以需求控制空調(diào)的各種運行狀態(tài),來調(diào)節(jié)室內(nèi)的溫濕度,達(dá)到人體舒適狀態(tài)。


poYBAGJPtx2AWzxPAABak3WWgBE970.png

表1 模式編碼

pYYBAGJPtySAUG5hAABEXZAuxDE639.png

表2 風(fēng)速編碼

pYYBAGJPtyqAATj1AABPzzcV6u8810.png

表3 溫度編碼


表4為系統(tǒng)測試運行狀態(tài)數(shù)據(jù)表。其中有進口溫度、出口溫度、人員狀態(tài)、狀態(tài)、時間分別表示進風(fēng)口溫度,出風(fēng)口溫度,人體感應(yīng)器返回數(shù)據(jù)、空調(diào)的運行狀態(tài),運行時間。人員狀態(tài)有兩種表示方法,0表示無人,1表示有人??照{(diào)運行狀態(tài)有兩種,H表示制熱狀態(tài),C表示制冷狀態(tài)。當(dāng)室內(nèi)長時間處于無人狀態(tài)的時長可以由時間表示(單位:分鐘)。一般預(yù)設(shè)時間15min, 當(dāng)室內(nèi)無人超過此時間后,系統(tǒng)則發(fā)出報警信息,并自動關(guān)閉空調(diào)。實驗結(jié)果表明,智能空調(diào)控制系統(tǒng)能實時采集周邊環(huán)境的溫濕度數(shù)據(jù),服務(wù)器可以正常接收到傳送的狀態(tài)信息,用戶通過云平臺系統(tǒng)控制發(fā)出的信息編碼可以實現(xiàn)對空調(diào)的控制,運行較穩(wěn)定,控制成功率達(dá)到100%。


poYBAGJPtzGAItJ-AAA0s-LGOq0074.png

表4 系統(tǒng)測試運行數(shù)據(jù)


4 結(jié)束語

本文實現(xiàn)了基于物聯(lián)網(wǎng)云平臺的空調(diào)智能控制,智能空調(diào)控制終端模塊實時采集周邊環(huán)境的溫濕度數(shù)據(jù),以STM32單片機作為硬件控制中心結(jié)合WIFI技術(shù),云平臺與家用空調(diào)連接來進行遠(yuǎn)程操控。手機可以實時顯示的房間溫濕度,在炎熱的夏季或寒冷的冬季,可以在回家之前就通過手機APP調(diào)節(jié)空調(diào),這樣一到家就能平復(fù)焦躁的內(nèi)心,不用再焦急地等待房間溫度降下來,更不用再困擾于找不到遙控器或是遙控器沒電的煩惱,甚至不用再擔(dān)心出門上班后家里的空調(diào)忘記關(guān)了的情況。


利用該系統(tǒng)能實時監(jiān)控環(huán)境溫濕度數(shù)據(jù),有效地控制空調(diào)合理使用,控制成功率達(dá)到100%,能營造舒適的生活工作環(huán)境又不造成浪費,適用于多種空調(diào)品牌,具有較高的實用價值。同時,本設(shè)計關(guān)鍵技術(shù)是采用FlyMcu軟件用Keil MDK5編程實現(xiàn)機智云平臺的SDK和API服務(wù),實現(xiàn)三部分的通信連接,將新的服務(wù)器平臺應(yīng)用于物聯(lián)網(wǎng)的應(yīng)用開發(fā),簡化了物聯(lián)網(wǎng)應(yīng)用開發(fā)的復(fù)雜性,加快了物聯(lián)網(wǎng)應(yīng)用的開發(fā)效率,提高了應(yīng)用的可維護性、可升級性和可擴展性。


對于未來發(fā)展而言,首先智能控制系統(tǒng)是需要進行不斷完善的,隨著各種家用空調(diào)的發(fā)售,它可以與更多空調(diào)設(shè)備相關(guān)聯(lián),進而滿足更多使用者的不同需求。人們使用WIFI技術(shù)既幫助人們不再煩惱于復(fù)雜的布線,又幫助人們節(jié)約了布線空間[19-20]。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • STM32
    +關(guān)注

    關(guān)注

    2264

    文章

    10854

    瀏覽量

    354313
收藏 人收藏

    評論

    相關(guān)推薦

    告別繁瑣的平臺開發(fā)IoT_CLOUD之 百度

    ?眾所周知,市面上有很多云平臺,并且每家平臺都有自己的協(xié)議,工程師要移植不同的SDK代碼或基于各家的手冊文檔對接不同的協(xié)議,看著都頭大?。?! 為解決繁瑣的平臺開發(fā)困擾, IoT
    的頭像 發(fā)表于 10-31 07:23 ?104次閱讀
    告別繁瑣的<b class='flag-5'>云</b>平臺<b class='flag-5'>開發(fā)</b>!<b class='flag-5'>IoT</b>_CLOUD之 百度<b class='flag-5'>云</b>

    告別繁瑣的平臺開發(fā)!IoT_CLOUD之百度

    文檔對接不同的協(xié)議,看著都頭大?。?! 為解決繁瑣的平臺開發(fā)困擾, 合宙IoT_CLOUD應(yīng)運而生,一庫打通所有平臺! 本文將以Air780E+LuatOS作為示例,教你使用合宙
    的頭像 發(fā)表于 10-21 07:05 ?592次閱讀
    告別繁瑣的<b class='flag-5'>云</b>平臺<b class='flag-5'>開發(fā)</b>!<b class='flag-5'>IoT</b>_CLOUD之百度<b class='flag-5'>云</b>

    精密空調(diào)控制系統(tǒng)的作用和特點

    精密空調(diào)控制系統(tǒng)采用先進的控制技術(shù)和通訊協(xié)議,實現(xiàn)對精密空調(diào)的精確控制,確保室內(nèi)環(huán)境穩(wěn)定、舒適。
    的頭像 發(fā)表于 09-27 16:28 ?170次閱讀

    基于機智移植STM32L496G代碼移植

    前言最近我拿到了STM32L496AGMCU,發(fā)現(xiàn)其擴展版可以連接ESP-01S。我想嘗試將開發(fā)板連接到我們的機智上,并根據(jù)機智
    的頭像 發(fā)表于 09-20 08:05 ?280次閱讀
    基于<b class='flag-5'>機智</b><b class='flag-5'>云</b>移植<b class='flag-5'>STM32</b>L496G代碼移植

    【有獎直播】STM32最小系統(tǒng)與ESP01S接入機智實戰(zhàn)指南

    直播亮點1、零門檻接入機智平臺:無需復(fù)雜準(zhǔn)備,快速實現(xiàn)智能化轉(zhuǎn)型,輕松上手。2、手機App控制實現(xiàn)
    的頭像 發(fā)表于 09-05 08:03 ?194次閱讀
    【有獎直播】<b class='flag-5'>STM32</b>最小系統(tǒng)<b class='flag-5'>板</b>與ESP01S接入<b class='flag-5'>機智</b><b class='flag-5'>云</b>實戰(zhàn)指南

    機智ESP8266開發(fā)板RGB彩燈控件

    隨著智能家居技術(shù)的迅猛發(fā)展,RGB彩燈控件正逐漸成為現(xiàn)代家庭不可或缺的一部分。在這一潮流中,機智(Gizwits)的ESP8266開發(fā)板RGB彩燈控件以其先進的物聯(lián)網(wǎng)技術(shù)和多樣化的燈
    的頭像 發(fā)表于 08-09 08:10 ?324次閱讀
    <b class='flag-5'>機智</b><b class='flag-5'>云</b>ESP8266<b class='flag-5'>開發(fā)板</b>RGB彩燈控件

    盤點那些硬件+項目學(xué)習(xí)套件:阿里HaaS EDU物聯(lián)網(wǎng)開發(fā)板及入門常見問題解答

    ?華清遠(yuǎn)見20歲了~過去3年里,華清遠(yuǎn)見研發(fā)中心針對個人開發(fā)板業(yè)務(wù),打造了多款硬件+項目學(xué)習(xí)套件,涉及STM32單片機、嵌入式、物聯(lián)網(wǎng)、人工智能、鴻蒙、ESP32、阿里
    的頭像 發(fā)表于 07-31 16:28 ?604次閱讀
    盤點那些硬件+項目學(xué)習(xí)套件:阿里<b class='flag-5'>云</b>HaaS EDU物聯(lián)網(wǎng)<b class='flag-5'>開發(fā)板</b>及入門常見問題解答

    STM32項目分享:智能家居(機智)系統(tǒng)

    STM32項目分享:智能家居(機智)系統(tǒng)
    的頭像 發(fā)表于 07-28 08:10 ?1353次閱讀
    <b class='flag-5'>STM32</b>項目分享:<b class='flag-5'>智能</b>家居(<b class='flag-5'>機智</b><b class='flag-5'>云</b>)系統(tǒng)

    STM32F103 + ESP8266與機智開發(fā)常見問題集錦:入門者必讀!

    關(guān)于ESP8266模塊的選擇針對初學(xué)者,強烈建議選擇帶有串口的ESP8266開發(fā)板!這可以避免像我曾經(jīng)遇到的燒錄固件失敗等問題。推薦直接購買已預(yù)裝機智固件的模塊,或者帶有串口下載功能的模塊,例如
    的頭像 發(fā)表于 07-18 08:11 ?383次閱讀
    <b class='flag-5'>STM32</b>F103 + ESP8266與<b class='flag-5'>機智</b><b class='flag-5'>云</b><b class='flag-5'>開發(fā)</b>常見問題集錦:入門者必讀!

    機智助力小程序開發(fā):連接智能硬件與智能生活

    隨著智能硬件的普及和小程序的興起,人們的生活越來越依賴于智能化的解決方案。作為物聯(lián)網(wǎng)領(lǐng)域的領(lǐng)先者,機智為小程序開發(fā)者提供了豐富的支持和功能
    的頭像 發(fā)表于 06-15 08:10 ?351次閱讀
    <b class='flag-5'>機智</b><b class='flag-5'>云</b>助力小程序<b class='flag-5'>開發(fā)</b>:連接<b class='flag-5'>智能</b>硬件與<b class='flag-5'>智能</b>生活

    基于 STM32機智智能門鎖的實現(xiàn)

    關(guān)鍵詞:智能門鎖、STM32、機智、APP目錄1、功能實現(xiàn)2、軟、硬件系統(tǒng)設(shè)計3、系統(tǒng)調(diào)試4、結(jié)論1功能
    的頭像 發(fā)表于 03-23 08:09 ?1468次閱讀
    基于 <b class='flag-5'>STM32</b> 和<b class='flag-5'>機智</b><b class='flag-5'>云</b><b class='flag-5'>智能</b>門鎖的<b class='flag-5'>實現(xiàn)</b>

    【涂鴉T2-U開發(fā)板試用體驗】涂鴉T2-U開發(fā)板初體驗

    :通過Wi-Fi配網(wǎng)、閃電配網(wǎng)等配網(wǎng)方式,連接涂鴉,可助力開發(fā)者快速實現(xiàn)對設(shè)備的智能控制; 通過Wi-Fi可接收具備涂鴉特色的Wi-Fi
    發(fā)表于 12-22 10:59

    STM32+Linux開發(fā)板應(yīng)用手冊

    STM32 WIFI Linux 安卓智能控制開發(fā)板應(yīng)用手冊
    發(fā)表于 12-21 11:04 ?3次下載

    【涂鴉T2-U開發(fā)板試用體驗】開發(fā)者注冊&amp;產(chǎn)品固件下載

    本帖最后由 jf_09644657 于 2023-12-18 09:33 編輯 非常感謝涂鴉智能提供的T2-U開發(fā)板使用機會。本期通過注冊開發(fā)者獲取開發(fā)固件及其他
    發(fā)表于 12-17 23:03

    【涂鴉T2-U開發(fā)板試用體驗】+開發(fā)板的驅(qū)動配置嗎?怎么配置?驅(qū)動下載鏈接在哪?

    測 App 的自動化測試中,確保設(shè)備已經(jīng)成功配網(wǎng)怎么理解?是開發(fā)板的驅(qū)動配置嗎?怎么配置?驅(qū)動下載鏈接在哪? 涂鴉測參考的是:https://iot.tuya.com/pmg/st
    發(fā)表于 12-17 19:30