前言:
智能居家商品百百種,而我們今天要介紹的是–智能窗簾。傳統的窗簾必須手動去開關,每天必須依照太陽照射角度開關非常麻煩,特別是別墅或獨棟的大窗簾,比較長且重,需要很大的力才能開關窗簾,特別不方便。於是智能窗簾油然而生,透過無線傳輸與馬達控制窗簾,不管窗簾長短都能輕鬆開關,並且還能搭配智能語音音箱進行控制。試想看看如果能做到“坐在沙發上對語音助理下個口令,窗簾就能拉下”、“每天早上七點一到,窗簾便會自動拉上,讓晨光照進臥室裡”,或是“根據一天當中的日照強弱,調整窗簾的開合程度,以調節室內的光線舒適度”,該有多棒啊!
目的:
介紹AltoBeam 6431基本規格與Wi-Fi 規格,並利用其自身支援FreeRTOS 功能製作AltoBeam Wi-Fi 窗簾,不必再使用其他MCU做為主控大幅降低成本。
AltoBeam 6431晶片規格:
MCU |
Andes N9(RISC) 32-bit 160MHz |
Internal Flash |
2 Mbyte(16Mbits) |
SRAM |
296KB (使用者可用80 kByte) |
Sleep Mode Current |
880 µA |
Deep Sleep Mode Current |
160 µA |
RTC |
1(内置RC震盪器) |
FreeRTOS |
Flash 硬件加密保護 |
AT指令 |
硬件加密 |
GPIO Number (複合腳位) |
15 |
I2C (Master/ Slave) |
2 |
SPI-Master |
1 |
SPI-Slave |
1 |
PWM |
8 |
UART |
2 |
SDIO |
1 |
AltoBeam 6431 Wi-Fi 規格:
分類 |
項目 |
參數 |
功能 |
無線標準 |
802.11 b/g/n |
頻率範圍 |
2.4 ~ 2.483GHz | |
射頻性能 |
最大發射功率 |
802.11b (11M): +17dBm(默認配置,最大+19dBm) |
802.11g (54M): +15dBm(默認配置,最大+17dBm) | ||
802.11n (MCS7): +14dBm | ||
最小接收靈敏度 |
802.11b (11M): -89dBm | |
802.11g (54M): -75dBm | ||
802.11n (MCS7): -73dBm | ||
軟體 |
Wi-Fi 模式 |
Station/AP |
安全機制 |
WPA/WPA2 | |
加密機制 |
WEP/TKIP/AES/SHA/MD5 |
AltoBeam 6431晶片優勢:
- 可直接使用UART對接模組使用
- 兼容ESP8266 AT指令,可快速銜接
- 白色家電原先已有Host端,想支援Wi-Fi模塊市場可直接進入
- 支援FreeRTOS開發產品 (如:Wi-Fi燈、Wi-Fi窗簾、 Wi-Fi智能開關等等)
本次介紹內容就是利用Altobeam6431支援FreeRTOS功能,開發AltoBeam Wi-Fi 窗簾裝置。
AltoBeam 6431 Wi-Fi窗簾架構圖:
智能窗簾架構主要包含AC to DC 變壓器、馬達驅動IC、馬達齒輪組、霍爾感測器用來計算窗簾位置與一個實體按鈕將窗簾回復至出廠設定。
圖 1
AltoBeam 6431 Wi-Fi窗簾流程圖:
透過TCP/IP協助窗簾連接Wi-Fi網路,完成Wi-Fi設定後,再使用手機透過HTTP POST/GET指令遠端控制AltoBeam 窗簾。
圖 2
執行流程:
- 使用手機App將裝置配對入網
首先Wi-Fi窗簾在尚未入網前狀態為AP模式,使用者須將手機Wi-Fi打開並連至Wi-Fi窗簾。在這裡手機與Wi-Fi窗簾主要透過TCP/IP方式傳輸資訊,傳輸資訊內容包括所要連接的Wi-Fi帳號密碼、窗簾基本資訊等等。傳輸完畢後Wi-Fi窗簾會自動重新啟動並將自身狀態轉換成STA模式,並自動連接使用者所輸入的Wi-Fi帳號將資訊HTTP POST 至雲端Server。
圖 3
- 使用手機App對Wi-Fi 窗簾進行基本開關功能
首先當Wi-Fi窗簾透過AP 路由器或帶有網路的手機連至雲端Server後,手機利用Socket.io發送消息至雲端Server,窗簾再透過MQTT訂閱特定主題接收消息進行相對應的動作,窗簾完成動作後會將自身狀態透過HTTP POST至雲端Server,雲端Server再利用Socket.io通知手機窗簾現在狀態。
圖 4
程式碼講解:
- 紅框內函式功能主要為窗簾基本動作控制、配置硬體Reset按鈕與讀取Flash值功能。
圖 5
- 紅框內判斷式為判斷窗簾當前狀態(STA or AP)。
圖 6
- 如果窗簾當前狀態為STA模式將直接連線至預先設定好的Wi-Fi 路由器。
圖 7
- 連線完畢後連至MQTT Server(紅框標示1)並訂閱相關Topic(紅框標示2)。
圖 8
- 窗簾執行動作完畢後會透過HTTP POST將自身狀態POST至雲端Server。
圖 9
圖 10
- 如果窗簾當前狀態為AP模式會先設定自身Wi-Fi名稱與密碼並開啟AP。手機找尋到窗簾AP後連至窗簾AP並透過TCP與窗簾進行資料交換,其中包含所要連至的Wi-Fi路由器名稱與密碼,交換完後會重新啟動變成STA模式跳至步驟3流程。
圖 11
結語:
Wi-Fi晶片通常搭配另一個主控MCU來實現裝置連網功能,鮮少有獨自做為主控端使用,因此透過這次Wi-Fi窗簾Demo展示讓客戶了解AltoBeam6431可以獨自完成連網與控制等功能,無須再使用另一顆MCU做為主控大幅降低成本。並且透過上述流程圖做為參考,讓客戶在開發時能更加得心應手。
評論