本作品由安信可社區用戶
WangChong制作
大家好,安信可又出活動了,抱著重在參與的態度給大家帶來了我的作品智能臺燈。
不知道大家是否還記得這個帖子里的臺燈。
https://bbs.ai-thinker.com/forum ... ad&tid=44226&extra=
沒錯,它被我拆了。就剩個LED燈板了。然后我把它稍作改造,便成了今天的主角。用HA控制的臺燈。由于本人并沒有什么好的靈感,來DIY,所以本篇教程將會是拋磚引玉來仔細說明如何使用M61-32S接入HA,從而使大家DIY出好的作品。
在本篇教程你將會學到:
1- 如何連接WIFI
2- 如何連接MQTT
3- 如何配置HA的MQTT集成
4- 如何配置HA的configuration.yml 使其HA可以自動發現實體。
5- 如何將上述的實體開關添加到Dashboard從而實現控制開關燈。
在開始之前呢,希望你已經安裝好了HomeAssistant,那么如果你沒有安裝好,這邊也有準備好的教程。
01前置工作準備(安裝HA 和 eclipse-mosquitto )
Home Assistant 樹莓派4B安裝
https://bbs.ai-thinker.com/forum.php?mod=viewthread&tid=44598&fromuid=13075
在安裝好之后,還需要準備一個MQTT服務器,用來使開發板和HA通訊。
這里推薦的是eclipse-mosquitto 教程如下:
https://blog.csdn.net/Navyyy/article/details/122398020
在上述兩個服務成功安裝到Docker里之后呢,容器列表如下所示
02集成MQTT到HA
打開已經安裝好的HA的Web網站。在左側導航菜單里依次選擇,配置, 設備和服務,添加集成,搜索MQTT。
之后呢,配置上述安裝好的的賬號和密碼。此時MQTT完成配置。
當然你可以測試你是否配置成功。點擊MQTT, 點擊配置。
隨便訂閱一個主題,并且打開MQTT客戶端工具,往這個訂閱的主題發送一條消息。檢查是否可以正常接收。
03配置HA,使其可以自動發現支持的MQTT設備(via yml)
Ha官網有詳細的介紹關于如何使HA可以發現MQTT的設備 。
這次使用的使通過YML的方式使其HA識別。由于這次DIY的是一個臺燈,在可以在HA官網中找到對Switch的描述。
選擇Switch,在Switch的最下面有一個完整的Switch的配置。
拷貝這個配置,并且打開Shell。使用命令 docker exec -it [你的容器ID] /bin/bash 登錄到HA中。
使用vi 命令編輯這個configuration.yml 文件,并且將上述的拷貝的內容粘貼到這個文件的最下方(其他的傳感器等也是一樣的道理)。
注意上述文件中,需要把optimistic 改成 Ture 關于Ture和False的區別請查看HA關于Switch的詳細描述。
然后按下Shift + :輸入wq 并且按下enter鍵進行保存。同時打開HA的Web界面。從左側的導航打開開發者工具。重載手動配置的MQTT實體。
此時HA已經配置完畢。我們只需要向home/bedroom/switch1/set
那么這個實體在哪里呢?在HA的Web頁面,點擊配置, 設備與服務,選擇實體,搜索 switch 你便可以看到這個實體。
此時如果你點擊這個開關的話,你可以在MQTT的客戶端的當前隊列中看到HA向這個Message queue 的 topic 發送消息
只需要使M61-32S訂閱這個主題,并且監聽這個主題的Message當接收到的message為 ON的時候就打開臺燈。等為OFF的時候就關閉臺燈。
04使用M61-32S連接Wifi 訂閱MQTT主題,接收消息實現臺燈控制
當前項目的代碼是在Aipi-open-kits 中的Wifi6-test中修改實現的。
這里移除了無用的代碼,僅僅保留了WIFI相關的MQTT相關的。并且自己寫了一個控制IO15的LED.h (移除了無用的easyflash 和其他的Wifi6-led等等)。
Wi-Fi和MQTT的連接代碼部分如下圖所示,只需要在這里修改成你自己的Wifi賬號和密碼已經MQTT服務器的賬號密碼以及隊列信息。(這里是部署在香橙派Zero3 1G上的,實際占用RAM 500 mb左右。)
然后在user_mqtt.c的MQTT回調函數中,判斷當前接收到的消息,如果接收到的消息為ON那么IO15輸出高電平。如果為OFF的話則輸出低電平。控制繼電器關閉臺燈。
05更多資料
代碼如下
MQTT.zip
視頻效果如下:【M61-32s接入HA 控制臺燈-嗶哩嗶哩】
https://b23.tv/uKs6i1V
審核編輯 黃宇
-
Switch
+關注
關注
1文章
533瀏覽量
58473 -
智能臺燈
+關注
關注
9文章
83瀏覽量
21145 -
MQTT
+關注
關注
5文章
654瀏覽量
22703 -
安信可
+關注
關注
0文章
159瀏覽量
4048
發布評論請先 登錄
相關推薦
使用Ai-M61-32S制作出門提醒設備
![使用<b class='flag-5'>Ai-M61-32S</b>制作出門提醒設備](https://file1.elecfans.com/web3/M00/06/C0/wKgZO2ePF7-AavMKAAAT-83i3mk304.jpg)
零基礎開發小安派-Eyes-S1——初識LVGL并搭建最小工程
外設移植 安信可Ai-WB2+FPM383C指紋
![外設移植 <b class='flag-5'>安</b><b class='flag-5'>信</b><b class='flag-5'>可</b><b class='flag-5'>Ai</b>-WB2+FPM383C指紋](https://file1.elecfans.com//web1/M00/F3/E2/wKgaoWcghr2Ae-ZyAABR_lw7GEY958.jpg)
基于Ai-M61模組打造一個智能魚缸水質監測系統
【外設移植】Ai-M61-32s 開發板+3.5寸SPI彩屏
![【外設移植】<b class='flag-5'>Ai-M61-32s</b> 開發板+3.5寸SPI彩屏](https://file1.elecfans.com//web2/M00/C2/ED/wKgZomXpIA-AeB-OAAEEaqUhqZg80.jpeg)
安信可推出Wi-Fi 6+BLE5.3模組Ai-M62-M2-I
![<b class='flag-5'>安</b><b class='flag-5'>信</b><b class='flag-5'>可</b>推出Wi-Fi 6+BLE5.3模組<b class='flag-5'>Ai-M62-M</b>2-I](https://file1.elecfans.com/web2/M00/C1/D0/wKgaomXanpWAIIvnAAA1lndyGik078.png)
評論