摘要:
在悶熱的夏天,外出回家就能享受涼爽的室內環境是每個人都期盼的,基于此想法設計了以STM32為控制器, esp8266為無線通信模塊,將設備接入機智云物聯網平臺,通過APP實現聯網控制的智慧空調系統。
1 引言
將無線傳感網絡配置入網通過特定的通信協議接入物聯網平臺,便可輕松實現聯網控制。特定的通信協議保證了可靠穩定的數據交換[1], 物聯網云平臺作為數據處理中心, 將傳感網絡終端獲得的數據進行處理或存儲, 同時提供一個界面給用戶查看和操作[2]。本文通過機智云AIoT平臺, 簡單地制作了聯網控制的智慧空調系統。
2 系統設計
2.1 系統組成
整個智慧空調控制部分選用stm32f103作為微控制器;數據采集選用了具有校準數字信號輸出的DHT11傳感器, 通過單總線的形式從數據線讀取測量數據[4];顯示部分選用低功耗的OLED, 顯示當前溫濕度以及無線網絡狀態;通信部分選用ESP8266模塊, 保持接入無線網絡,實現與微控制器和云平臺的雙向通信;空調部分選用制冷片與導冷端,由小風扇引出涼風, 達到模擬空調的效果。
2.2 ESP8266WiFi傳感器
ESP8266WiFi傳感器自帶強大的硬件接口, 通過配置接入WiFi后可以實現串口通信[5]。本系統接入WiFi的配置方式為AirLink模式, 傳感器不斷接收Wi Fi廣播包, 手機連接WiFi后, 通過機智云APP發送編碼后的廣播包, 在WiFi信號良好的情況下能快速接入無線網, 并保存當前接入的Wi Fi信息, 入網后傳感器能快速響應云平臺的指令。
2.3 空調系統
空調的制作器件為制冷片、導冷端、散熱風扇、小風扇、開關電源以及繼電器等。繼電器信號觸發端由stm32接入, 常開端與公共端同制冷片、散熱風扇和小風扇及12V電源組成回路, 在有高電平的信號觸發下, 繼電器吸合, 回路接通并工作。小風扇還加入了電調控制, 可以根據stm32的PWM信號進行轉速調節。
3 軟件設計
軟件的設計分數據采集及顯示和機智云平臺指令的收發, 兩者獨立工作互不影響。本系統需要采集溫度值、濕度值, 發送溫度值、濕度值、PWM值以及接收控制系統通斷的布爾值, 整個實現過程同時借助串口助手進行調試。程序實現過程為外設初始化, 串口協議初始化, 初始化成功后進行溫濕度讀取[6], Wi Fi配置, 最后實現通信。
3.1 數據采集及顯示
數據采集部分使用了DHT11的驅動程序, 顯示部分使用了OLED驅動和IIC驅動。stm32上電后先進行溫濕度和顯示程序的初始化, 在讀取溫濕度數據成功的情況下, OLED屏上會顯示當前的溫濕度信息, 模擬室內環境的檢測, WiFi接入成功還可顯示ON的提示,方便用戶知道當前已接入無線網。顯示界面效果如圖1所示。
3.2 WiFi配置及云端收發
云平臺通信部分使用了機智云通信協議。WiFi配置API為gizwitsSetMode () , 實現AirLink配置模式需將參數選擇為WIFI_AIRLINK_MODE。發送數據到云平臺的API為gizwitsHandle () , 參數需填上協議提供的currentDataPoint數據結構體的地址, 使用之前需要往結構體里更新溫濕度值。云平臺接收數據命令的API為gizwitsEventProcess () , 該函數用來處理一系列的事件請求, 比如WiFi配置模式的處理, 用戶指令處理, 通信系統異常處理等。要實現空調的開斷, 風扇的調速只要在這函數體里添加相應的代碼便可實現。
4 測試
系統模型制作完成, 代碼調試成功后, 在機智云官網下載的公版APP, 也可以選擇自行開發, 公版APP的界面如圖2所示。
圖1 OLED顯示頁面
圖2 APP界面
系統接入WiFi后, 頁面上自動顯示出物聯網云平臺接收到的溫度值和濕度值, 按下switch后stm32提供高電平信號使繼電器吸合, 散熱風扇、小風扇和制冷片開始工作。小風扇默認運轉在低速狀態, 可以通過set進行調速, 進而控制溫度, 一般的控制模式為PID控制模式。手機改換用4G信號, 依然能成功控制系統。
5 結語
整個測試過程中, 系統能穩定地處在WiFi中, 沒有休眠或意外斷網, 并能長時間穩定工作, 達到預期的效果。通過本系統接入WIFi的工作方式, 能很好的實現聯網控制空調, 在炎熱的夏天滿足人們的生活需求。
-
STM32
+關注
關注
2266文章
10875瀏覽量
354878
發布評論請先 登錄
相關推薦
評論