資料介紹
描述
介紹
這個(gè)故事是關(guān)于如何構(gòu)建一個(gè)愚蠢的廉價(jià)但非常酷的模塊化 WiFi 智能恒溫器。
我設(shè)計(jì)了這個(gè)恒溫器的架構(gòu),牢記“無(wú)服務(wù)器”方法。通信基礎(chǔ)設(shè)施、集成流程和 UI 可以部署和運(yùn)行在:
- 免費(fèi)云服務(wù)的任意組合
- 任何私有云平臺(tái)
- 任何 Raspberry Pi(在最小的零 W 上測(cè)試)或其他家庭服務(wù)器:提供docker指令讓您也可以測(cè)試此設(shè)置
核心模塊:外部單元+內(nèi)部單元
我的智能恒溫器的“核心模塊”很便宜,但仍然有:
- 超酷的顯示器
- 基本物理控制
- 通過(guò) MQTT完成wifi 控制
它由三部分組成:一個(gè) Shelly 1(10 美元)、一個(gè) M5Stack ATOM 矩陣(9 美元)和一個(gè) M5Stack ENV 單元(5 美元),材料清單總計(jì) 24 美元。
沒(méi)有面包板和電線,沒(méi)有原型板,不需要焊料。它必須是一個(gè)干凈的工作,準(zhǔn)備生產(chǎn)!
我的恒溫器的外部裝置是Shelly 1 。它是控制加熱鍋爐的理想遠(yuǎn)程繼電器。易于連接(MQTT + 云 API),結(jié)構(gòu)緊湊,可通過(guò) AC 或 DC 供電,清潔觸點(diǎn)。我保留了原始固件并將其連接到加熱鍋爐,如上圖所示。
我的恒溫器的內(nèi)部單元,即這個(gè)系統(tǒng)的“大腦”,需要有一個(gè)很酷的顯示器和一些基本的物理控制(關(guān)閉/自動(dòng)模式+離開(kāi)預(yù)設(shè)就足夠了):所以我選擇了Atom Matrix ,最近的 M5Stack 產(chǎn)品,帶有 ESP32、LED 矩陣、wifi 和大量傳感器接口。為了獲得當(dāng)前溫度,我將 GROVE ENV 單元 (DHT12+BMP280) 連接到它:它們通過(guò) I2C 進(jìn)行通信。
這兩個(gè)單元通過(guò) MQTT 代理進(jìn)行通信。您可以選擇任何免費(fèi)的云 MQTT 代理或本地 MQTT 代理。沒(méi)關(guān)系。
外部裝置設(shè)置
外部單元(Shelly 1 )可以配置原始固件,通過(guò) Web 界面通過(guò) MQTT 連接到內(nèi)部單元的同一代理。
去做這個(gè):
- 通過(guò)將 L 和 N 連接到主電源來(lái)啟動(dòng) Shelly1
- 通過(guò)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í) - 開(kāi)發(fā)人員設(shè)置,a。通過(guò) MQTT 啟用操作執(zhí)行,輸入 MQTT 服務(wù)器信息,b。節(jié)省
內(nèi)部單元設(shè)置
為了輕松地為內(nèi)部單元定制固件(M5Stack ATOM Matrix),
ESPHome 是一個(gè)通過(guò)簡(jiǎn)單而強(qiáng)大的配置文件控制您的 ESP8266/ESP32 并通過(guò)家庭自動(dòng)化系統(tǒng)遠(yuǎn)程控制它們的系統(tǒng)。所以我只是編寫(xiě)了附加的 ( 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)入上游。萬(wàn)歲!
因此,構(gòu)建固件的步驟是:
- 獲取附加的matrix_shelly_thermostat.yaml結(jié)束根據(jù)您首選的云或本地 MQTT 代理編輯它的第一行(您可以保留預(yù)配置的test.mosquitto.org進(jìn)行測(cè)試:它仍然可以工作),以及您的 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),名稱(chēng) (SSID) 為“Matrix Shelly Thermostat”,密碼為“apolselli”。用您的手機(jī)或 PC 連接到它。Web 界面應(yīng)自動(dòng)打開(kāi)(另請(qǐng)參閱登錄到網(wǎng)絡(luò)通知)。如果這不起作用,您也可以在瀏覽器中手動(dòng)導(dǎo)航到http://192.168.4.1/ 。在此 Web 界面中,您可以設(shè)置設(shè)備的 WiFi 設(shè)置。
內(nèi)部單元將開(kā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
...
它將通過(guò)以下主題向外部單元發(fā)出命令:
shellies/shelly1-32C429/relay/0/command on | off
它還將在http://matrix_shelly_thermostat.local公開(kāi)一個(gè) Web 界面
至此,智能恒溫器的核心模塊已經(jīng)完成,它已經(jīng)可以工作了 :) 它還將與連接到同一個(gè) MQTT 代理的任何正在運(yùn)行的 Home Assistant 實(shí)例進(jìn)行原生集成……但是……等等……這必須是一個(gè)無(wú)服務(wù)器項(xiàng)目!!所以我們會(huì)假設(shè)附近沒(méi)有 Home Assistant 實(shí)例可用,我們需要在云端定義一個(gè)移動(dòng) UI。
用戶(hù)界面模塊(云端)
這里是“無(wú)服務(wù)器”方法!為了在云中定義移動(dòng)Web UI (公共或私有,沒(méi)關(guān)系),我使用 Node-Red 創(chuàng)建了一個(gè)流程,基于優(yōu)秀的ht??tps://github.com/automatikas/Node-red-Nest-thermostat通過(guò)@automatikas。
流使用 JSON 存儲(chǔ),可以輕松導(dǎo)入和導(dǎo)出,并且可以在任何地方部署。
部署流程的步驟是:
- 獲取附加的matrix_shelly_thermostat.json
- 將其導(dǎo)入任何 Node-Red 實(shí)例。您可以使用任何免費(fèi)的云 Node-Red 服務(wù)。沒(méi)關(guān)系。
- 根據(jù)您首選的云或本地 MQTT 代理更改 MQTT 代理節(jié)點(diǎn)(或者您可以保留預(yù)先配置的test.mosquitto.org或測(cè)試:無(wú)論如何它都會(huì)工作)
- 點(diǎn)擊“部署”
這將為您的 Node-Red 儀表板添加一個(gè)漂亮的 Nest 風(fēng)格 UI,讓您可以遠(yuǎn)程控制 Matrix Shelly 恒溫器。
完畢。
享受 Matrix Shelly 恒溫器 :)
以下只是“獎(jiǎng)勵(lì)”曲目/模塊,超出了本項(xiàng)目的范圍,但是..如果你想提高你的創(chuàng)造力..這不是火箭科學(xué):)
獎(jiǎng)勵(lì)曲目 #0:您想在私有 Raspberry-Pi-docker-based-cloud 上運(yùn)行此項(xiàng)目嗎?
十分簡(jiǎn)單!
獲取 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/ ) 來(lái)導(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ì)你來(lái)說(shuō)反之亦然!
獎(jiǎng)勵(lì)模塊#2:語(yǔ)音助手/智能揚(yáng)聲器集成
免費(fèi)(如果您已經(jīng)有一個(gè)正在運(yùn)行的 Home Assistant 實(shí)例)或 10 美元以上(如果您必須購(gòu)買(mǎi) Raspberry Pi Zero W 或更高版本)
我將恒溫器暴露在:
在 Home Assistant 中,只需配置 MQTT 集成:Matrix Shelly Thermostat 將被自動(dòng)檢測(cè)并添加到您的實(shí)體中。
然后,只需添加以下集成:
homekit:
alexa:
smart_home:
獎(jiǎng)勵(lì)模塊#3:存在檢測(cè)
免費(fèi)(如果您已經(jīng)有一個(gè)正在運(yùn)行的 Home Assistant 實(shí)例)或 10 美元以上(如果您必須購(gòu)買(mǎi) Raspberry Pi Zero W 或更高版本)
您可以使用自動(dòng)化功能,將您的恒溫器狀態(tài)從“真”切換為“假”,反之亦然!
提示:在 Home Assistant 中,從以下配置開(kāi)始:
device_tracker:
- platform: bluetooth_tracker
- 使用邏輯和轉(zhuǎn)換用例優(yōu)化智能恒溫器的設(shè)計(jì)
- 智能恒溫器開(kāi)源項(xiàng)目
- 使用螺栓的恒溫器
- Arduino供電恒溫器和風(fēng)扇控制器 0次下載
- 藍(lán)牙控制恒溫器
- 智能恒溫器開(kāi)源案例
- 迷你恒溫器開(kāi)源分享
- Vishay NTC恒溫器的模擬
- 智能恒溫器開(kāi)源分享
- 恒溫器開(kāi)源分享
- 如何使用固態(tài)繼電器驅(qū)動(dòng)恒溫器
- 恒溫器控制電路原理圖 56次下載
- 烙鐵恒溫器電路圖 34次下載
- 恒溫器控制電路原理圖免費(fèi)下載 11次下載
- 2017全球WiFi恒溫器市場(chǎng)發(fā)展現(xiàn)狀及趨勢(shì)研究 4次下載
- 模塊化插座接線方法有哪些 697次閱讀
- 安波福模塊化連接器的優(yōu)勢(shì) 473次閱讀
- 模塊化不間斷電源常見(jiàn)組件,旁路路徑的關(guān)鍵 454次閱讀
- 如何模塊化編程 1338次閱讀
- 如何制作一個(gè)通過(guò)本地WiFi網(wǎng)絡(luò)瀏覽器進(jìn)行控制的恒溫器 2092次閱讀
- 模塊化水表采集器的原理及設(shè)計(jì) 2126次閱讀
- 關(guān)于類(lèi)別化與模塊化設(shè)計(jì)模式的解釋 5467次閱讀
- WiFi模塊在智能硬件中的具體應(yīng)用 5685次閱讀
- 解讀:一種基于模塊化設(shè)計(jì)的PLM平臺(tái)建設(shè) 1755次閱讀
- 模塊化UPS電源的構(gòu)成以及優(yōu)缺點(diǎn)盤(pán)點(diǎn) 7273次閱讀
- 模塊化電源有什么優(yōu)勢(shì) 6755次閱讀
- 電子恒溫器 4290次閱讀
- 魚(yú)缸電子恒溫器電路圖 3610次閱讀
- 雙線遙控交流電子恒溫器電路圖 2286次閱讀
- 三線電子恒溫器電路圖 6199次閱讀
下載排行
本周
- 1山景DSP芯片AP8248A2數(shù)據(jù)手冊(cè)
- 1.06 MB | 532次下載 | 免費(fèi)
- 2RK3399完整板原理圖(支持平板,盒子VR)
- 3.28 MB | 339次下載 | 免費(fèi)
- 3TC358743XBG評(píng)估板參考手冊(cè)
- 1.36 MB | 330次下載 | 免費(fèi)
- 4DFM軟件使用教程
- 0.84 MB | 295次下載 | 免費(fèi)
- 5元宇宙深度解析—未來(lái)的未來(lái)-風(fēng)口還是泡沫
- 6.40 MB | 227次下載 | 免費(fèi)
- 6迪文DGUS開(kāi)發(fā)指南
- 31.67 MB | 194次下載 | 免費(fèi)
- 7元宇宙底層硬件系列報(bào)告
- 13.42 MB | 182次下載 | 免費(fèi)
- 8FP5207XR-G1中文應(yīng)用手冊(cè)
- 1.09 MB | 178次下載 | 免費(fèi)
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費(fèi)
- 2555集成電路應(yīng)用800例(新編版)
- 0.00 MB | 33566次下載 | 免費(fèi)
- 3接口電路圖大全
- 未知 | 30323次下載 | 免費(fèi)
- 4開(kāi)關(guān)電源設(shè)計(jì)實(shí)例指南
- 未知 | 21549次下載 | 免費(fèi)
- 5電氣工程師手冊(cè)免費(fèi)下載(新編第二版pdf電子書(shū))
- 0.00 MB | 15349次下載 | 免費(fèi)
- 6數(shù)字電路基礎(chǔ)pdf(下載)
- 未知 | 13750次下載 | 免費(fèi)
- 7電子制作實(shí)例集錦 下載
- 未知 | 8113次下載 | 免費(fèi)
- 8《LED驅(qū)動(dòng)電路設(shè)計(jì)》 溫德?tīng)栔?/a>
- 0.00 MB | 6656次下載 | 免費(fèi)
總榜
- 1matlab軟件下載入口
- 未知 | 935054次下載 | 免費(fèi)
- 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
- 78.1 MB | 537798次下載 | 免費(fèi)
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420027次下載 | 免費(fèi)
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費(fèi)
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費(fèi)
- 6電路仿真軟件multisim 10.0免費(fèi)下載
- 340992 | 191187次下載 | 免費(fèi)
- 7十天學(xué)會(huì)AVR單片機(jī)與C語(yǔ)言視頻教程 下載
- 158M | 183279次下載 | 免費(fèi)
- 8proe5.0野火版下載(中文版免費(fèi)下載)
- 未知 | 138040次下載 | 免費(fèi)
評(píng)論
查看更多