電子發(fā)燒友App

硬聲App

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

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

3天內(nèi)不再提示
創(chuàng)作
電子發(fā)燒友網(wǎng)>電子資料下載>電子資料>模塊化WiFi智能恒溫器的構(gòu)建

模塊化WiFi智能恒溫器的構(gòu)建

2022-12-16 | zip | 0.33 MB | 次下載 | 免費(fèi)

資料介紹

描述

介紹

這個(gè)故事是關(guān)于如何構(gòu)建一個(gè)愚蠢的廉價(jià)但非??岬哪K化 WiFi 智能恒溫器。

我設(shè)計(jì)了這個(gè)恒溫器的架構(gòu),牢記“無服務(wù)器”方法。通信基礎(chǔ)設(shè)施、集成流程和 UI 可以部署和運(yùn)行在:

  • 免費(fèi)云服務(wù)的任意組合
  • 任何私有云平臺(tái)
  • 任何 Raspberry Pi(在最小的零 W 上測試)或其他家庭服務(wù)器:提供docker指令讓您也可以測試此設(shè)置
poYBAGOX6LOAHnMSAABOlwbzxfk959.png
Matrix Shelly Thermostat 的“無服務(wù)器”架構(gòu)
?

核心模塊:外部單元+內(nèi)部單元

我的智能恒溫器的“核心模塊”很便宜,但仍然有:

  • 超酷的顯示器
  • 基本物理控制
  • 通過 MQTT完成wifi 控制

它由三部分組成:一個(gè) Shelly 1(10 美元)、一個(gè) M5Stack ATOM 矩陣(9 美元)和一個(gè) M5Stack ENV 單元(5 美元),材料清單總計(jì) 24 美元。

pYYBAGOX6RSAalTTABDiAR0D5H442.jpeg
?

沒有面包板和電線,沒有原型板,不需要焊料。它必須是一個(gè)干凈的工作,準(zhǔn)備生產(chǎn)!

我的恒溫器的外部裝置Shelly 1 它是控制加熱鍋爐的理想遠(yuǎn)程繼電器。易于連接(MQTT + 云 API),結(jié)構(gòu)緊湊,可通過 AC 或 DC 供電,清潔觸點(diǎn)。我保留了原始固件并將其連接到加熱鍋爐,如上圖所示。

我的恒溫器的內(nèi)部單元,即這個(gè)系統(tǒng)的“大腦”,需要有一個(gè)很酷的顯示器和一些基本的物理控制(關(guān)閉/自動(dòng)模式+離開預(yù)設(shè)就足夠了):所以我選擇了Atom Matrix ,最近的 M5Stack 產(chǎn)品,帶有 ESP32LED 矩陣、wifi 和大量傳感器接口為了獲得當(dāng)前溫度,我將 GROVE ENV 單元 (DHT12+BMP280) 連接到它:它們通過 I2C 進(jìn)行通信。

這兩個(gè)單元通過 MQTT 代理進(jìn)行通信。您可以選擇任何免費(fèi)的云 MQTT 代理或本地 MQTT 代理。沒關(guān)系。

外部裝置設(shè)置

外部單元Shelly 1 )可以配置原始固件,通過 Web 界面通過 MQTT 連接到內(nèi)部單元的同一代理。

去做這個(gè):

  • 通過將 L 和 N 連接到主電源來啟動(dòng) Shelly1
  • 通過wifi連接AP shelly1-xxxxxx
  • 在瀏覽器上,192.168.33.1 用于 Shelly Web 界面
  • 選擇 Internet 和安全、WIFI 模式 - CLIENTa。選擇將 Shelly 設(shè)備連接到現(xiàn)有 WiFi 網(wǎng)絡(luò),輸入 Wifi infob。單擊連接
  • 在路由器中查找 Shelly1-xxxxxx 獲取 Shelly 本地 IP,xxxxxx 是每個(gè) Shelly 設(shè)備的唯一 ID
  • 在瀏覽器上,連接到新的 Shelly 本地 IP
  • 選擇 Internet 和安全,高級(jí) - 開發(fā)人員設(shè)置,a。通過 MQTT 啟用操作執(zhí)行,輸入 MQTT 服務(wù)器信息,b。節(jié)省
pYYBAGOX6SOAJKefAAAj11rvtDs247.png
網(wǎng)絡(luò)安全
?
poYBAGOX6SiAJZK1AABBgjrnax4977.jpg
高級(jí) - 開發(fā)者設(shè)置
?

內(nèi)部單元設(shè)置

為了輕松地為內(nèi)部單元定制固件(M5Stack ATOM Matrix),

ESPHome 是一個(gè)通過簡單而強(qiáng)大的配置文件控制您的 ESP8266/ESP32 并通過家庭自動(dòng)化系統(tǒng)遠(yuǎn)程控制它們的系統(tǒng)。所以我只是編寫了附加的 ( matrix_shelly_thermostat.yaml ) YAML 配置并使用 ESPHome 構(gòu)建固件并將其上傳到內(nèi)部單元。

我集成了 LED 矩陣顯示屏,將其用作字幕/滾動(dòng)文本,顯示當(dāng)前溫度、加熱時(shí)的目標(biāo)溫度,顏色取決于操作模式/動(dòng)作。為此,我的工作基于@rnauber 的https://github.com/rnauber/ESPHomeMatrixLED ,我對(duì)此做出了貢獻(xiàn),增加了對(duì) M5Atom 設(shè)備的支持。我的更改已被@rnauber 接受并進(jìn)入上游。萬歲!

因此,構(gòu)建固件的步驟是:

  • 獲取附加的matrix_shelly_thermostat.yaml結(jié)束根據(jù)您首選的云或本地 MQTT 代理編輯它的第一行(您可以保留預(yù)配置的test.mosquitto.org進(jìn)行測試:它仍然可以工作),以及您的 Shelly 1 的設(shè)備 ID您在內(nèi)部單元設(shè)置期間識(shí)別的設(shè)備(使用您的 devideID 查找/替換“shelly1-32C429”)
  • 添加以下文件(放在.yaml的同一目錄下)
wget https://github.com/rnauber/ESPHomeMatrixLED/raw/master/my_matrixled_display.h
wget https://github.com/rnauber/ESPHomeMatrixLED/raw/master/DejaVuSans.ttf

上傳固件后,該內(nèi)部單元將重新啟動(dòng)并創(chuàng)建自己的 WiFi 網(wǎng)絡(luò) (AP),名稱 (SSID) 為“Matrix Shelly Thermostat”,密碼為“apolselli”。用您的手機(jī)或 PC 連接到它。Web 界面應(yīng)自動(dòng)打開(另請(qǐng)參閱登錄到網(wǎng)絡(luò)通知)。如果這不起作用,您也可以在瀏覽器中手動(dòng)導(dǎo)航到http://192.168.4.1/ 。在此 Web 界面中,您可以設(shè)置設(shè)備的 WiFi 設(shè)置。

?
?
?
pYYBAGOX6S6AE_sBAAD3ZhtMUEk167.png
?
1 / 3
?

內(nèi)部單元將開始生產(chǎn)/消費(fèi)有關(guān)以下主題的消息:

matrix_shelly_thermostat/climate/matrix_shelly_thermostat/current_temperature/state
matrix_shelly_thermostat/climate/matrix_shelly_thermostat/target_temperature_low/state
matrix_shelly_thermostat/climate/matrix_shelly_thermostat/target_temperature_high/state
matrix_shelly_thermostat/climate/matrix_shelly_thermostat/away/state    OFF | ON
matrix_shelly_thermostat/climate/matrix_shelly_thermostat/mode/state    heat | off
matrix_shelly_thermostat/climate/matrix_shelly_thermostat/action/state  heating | idle
matrix_shelly_thermostat/climate/matrix_shelly_thermostat/target_temperature_low/command
matrix_shelly_thermostat/climate/matrix_shelly_thermostat/target_temperature_high/command
...

它將通過以下主題向外部單元發(fā)出命令:

shellies/shelly1-32C429/relay/0/command            on | off

它還將在http://matrix_shelly_thermostat.local公開一個(gè) Web 界面

至此,智能恒溫器的核心模塊已經(jīng)完成,它已經(jīng)可以工作了 :) 它還將與連接到同一個(gè) MQTT 代理的任何正在運(yùn)行的 Home Assistant 實(shí)例進(jìn)行原生集成……但是……等等……這必須是一個(gè)無服務(wù)器項(xiàng)目!!所以我們會(huì)假設(shè)附近沒有 Home Assistant 實(shí)例可用,我們需要在云端定義一個(gè)移動(dòng) UI。

用戶界面模塊(云端)

這里是“無服務(wù)器”方法!為了在云中定義移動(dòng)Web UI (公共或私有,沒關(guān)系),我使用 Node-Red 創(chuàng)建了一個(gè)流程,基于優(yōu)秀的ht??tps://github.com/automatikas/Node-red-Nest-thermostat通過@automatikas。

pYYBAGOX6TGAD5msAAFickjG4ng858.png
Matrix Shelly 恒溫器節(jié)點(diǎn)-紅色流量
?

流使用 JSON 存儲(chǔ),可以輕松導(dǎo)入和導(dǎo)出,并且可以在任何地方部署。

部署流程的步驟是:

  • 獲取附加的matrix_shelly_thermostat.json
  • 將其導(dǎo)入任何 Node-Red 實(shí)例。您可以使用任何免費(fèi)的云 Node-Red 服務(wù)。沒關(guān)系。
  • 根據(jù)您首選的云或本地 MQTT 代理更改 MQTT 代理節(jié)點(diǎn)(或者您可以保留預(yù)先配置的test.mosquitto.org或測試:無論如何它都會(huì)工作)
  • 點(diǎn)擊“部署”

這將為您的 Node-Red 儀表板添加一個(gè)漂亮的 Nest 風(fēng)格 UI,讓您可以遠(yuǎn)程控制 Matrix Shelly 恒溫器。

?
?
?
pYYBAGOX6TSATvHDAADL5f3_DTI893.png
?
1 / 3
?

完畢。

享受 Matrix Shelly 恒溫器 :)

以下只是“獎(jiǎng)勵(lì)”曲目/模塊,超出了本項(xiàng)目的范圍,但是..如果你想提高你的創(chuàng)造力..這不是火箭科學(xué):)

獎(jiǎng)勵(lì)曲目 #0:您想在私有 Raspberry-Pi-docker-based-cloud 上運(yùn)行此項(xiàng)目嗎?

十分簡單!

獲取 HypriotOS https://blog.hypriot.com/getting-started-with-docker-on-your-arm-device/或任何其他基于 docker 的機(jī)器,ssh 到它并運(yùn)行:

$ docker run -d -p 1883:1883 --name mybroker --restart always eclipse-mosquitto
$ docker run -d -p 1880:1880 --name mynodered --restart always --link mybroker:broker nodered/node-red
$ docker exec -it mynodered /bin/bash
bash-4.4$ npm install node-red-dashboard
bash-4.4$ exit
$ docker stop mynodered
$ docker start mynodered

而已。

這將運(yùn)行一個(gè) MQTT 代理 (black-pearl.local:1883) 和一個(gè) Node-Red 實(shí)例 ( http://black-pearl.local:1880/ ) 和儀表板 ( http://black-pearl.local:1880/ ui/ ) 來導(dǎo)入和部署 JSON 流。

只需在 esphome yaml 中將 mqtt_broker 設(shè)置為black-pearl.local的 ip ,然后在 Node-Red 流中將 mqtt-broker 節(jié)點(diǎn)設(shè)置為“broker”。

注意:僅對(duì)于紅色節(jié)點(diǎn)arm32v6(Raspberry Pi 零、零 W 或 1),您必須指定完整的圖像標(biāo)簽

$ docker run -d -p 1880:1880 --name mynodered --restart always --link mybroker:broker nodered/node-red:1.0.5-12-arm32v6

獎(jiǎng)勵(lì)模塊 #1:每周計(jì)劃

自由

這是一個(gè)每周調(diào)度程序,可以將您的恒溫器模式從“關(guān)閉”切換到“自動(dòng)” “對(duì)你來說反之亦然!

獎(jiǎng)勵(lì)模塊#2:語音助手/智能揚(yáng)聲器集成

免費(fèi)(如果您已經(jīng)有一個(gè)正在運(yùn)行的 Home Assistant 實(shí)例)或 10 美元以上(如果您必須購買 Raspberry Pi Zero W 或更高版本)

我將恒溫器暴露在:

在 Home Assistant 中,只需配置 MQTT 集成:Matrix Shelly Thermostat 將被自動(dòng)檢測并添加到您的實(shí)體中。

然后,只需添加以下集成:

homekit:

alexa:
  smart_home:
亞馬遜 Alexa | 蘋果 HomeKit | 家庭助理 | 節(jié)點(diǎn)紅色儀表板
?

獎(jiǎng)勵(lì)模塊#3:存在檢測

免費(fèi)(如果您已經(jīng)有一個(gè)正在運(yùn)行的 Home Assistant 實(shí)例)或 10 美元以上(如果您必須購買 Raspberry Pi Zero W 或更高版本)

您可以使用自動(dòng)化功能,將您的恒溫器狀態(tài)從“真”切換為“假”,反之亦然!

提示:在 Home Assistant 中,從以下配置開始:

device_tracker:
  - platform: bluetooth_tracker

下載該資料的人也在下載 下載該資料的人還在閱讀
更多 >

評(píng)論

查看更多

下載排行

本周

  1. 1山景DSP芯片AP8248A2數(shù)據(jù)手冊(cè)
  2. 1.06 MB  |  532次下載  |  免費(fèi)
  3. 2RK3399完整板原理圖(支持平板,盒子VR)
  4. 3.28 MB  |  339次下載  |  免費(fèi)
  5. 3TC358743XBG評(píng)估板參考手冊(cè)
  6. 1.36 MB  |  330次下載  |  免費(fèi)
  7. 4DFM軟件使用教程
  8. 0.84 MB  |  295次下載  |  免費(fèi)
  9. 5元宇宙深度解析—未來的未來-風(fēng)口還是泡沫
  10. 6.40 MB  |  227次下載  |  免費(fèi)
  11. 6迪文DGUS開發(fā)指南
  12. 31.67 MB  |  194次下載  |  免費(fèi)
  13. 7元宇宙底層硬件系列報(bào)告
  14. 13.42 MB  |  182次下載  |  免費(fèi)
  15. 8FP5207XR-G1中文應(yīng)用手冊(cè)
  16. 1.09 MB  |  178次下載  |  免費(fèi)

本月

  1. 1OrCAD10.5下載OrCAD10.5中文版軟件
  2. 0.00 MB  |  234315次下載  |  免費(fèi)
  3. 2555集成電路應(yīng)用800例(新編版)
  4. 0.00 MB  |  33566次下載  |  免費(fèi)
  5. 3接口電路圖大全
  6. 未知  |  30323次下載  |  免費(fèi)
  7. 4開關(guān)電源設(shè)計(jì)實(shí)例指南
  8. 未知  |  21549次下載  |  免費(fèi)
  9. 5電氣工程師手冊(cè)免費(fèi)下載(新編第二版pdf電子書)
  10. 0.00 MB  |  15349次下載  |  免費(fèi)
  11. 6數(shù)字電路基礎(chǔ)pdf(下載)
  12. 未知  |  13750次下載  |  免費(fèi)
  13. 7電子制作實(shí)例集錦 下載
  14. 未知  |  8113次下載  |  免費(fèi)
  15. 8《LED驅(qū)動(dòng)電路設(shè)計(jì)》 溫德爾著
  16. 0.00 MB  |  6656次下載  |  免費(fèi)

總榜

  1. 1matlab軟件下載入口
  2. 未知  |  935054次下載  |  免費(fèi)
  3. 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
  4. 78.1 MB  |  537798次下載  |  免費(fèi)
  5. 3MATLAB 7.1 下載 (含軟件介紹)
  6. 未知  |  420027次下載  |  免費(fèi)
  7. 4OrCAD10.5下載OrCAD10.5中文版軟件
  8. 0.00 MB  |  234315次下載  |  免費(fèi)
  9. 5Altium DXP2002下載入口
  10. 未知  |  233046次下載  |  免費(fèi)
  11. 6電路仿真軟件multisim 10.0免費(fèi)下載
  12. 340992  |  191187次下載  |  免費(fèi)
  13. 7十天學(xué)會(huì)AVR單片機(jī)與C語言視頻教程 下載
  14. 158M  |  183279次下載  |  免費(fèi)
  15. 8proe5.0野火版下載(中文版免費(fèi)下載)
  16. 未知  |  138040次下載  |  免費(fèi)