资料介绍
描述
介绍
这个故事是关于如何构建一个愚蠢的廉价但非常酷的模块化 WiFi 智能恒温器。
我设计了这个恒温器的架构,牢记“无服务器”方法。通信基础设施、集成流程和 UI 可以部署和运行在:
- 免费云服务的任意组合
- 任何私有云平台
- 任何 Raspberry Pi(在最小的零 W 上测试)或其他家庭服务器:提供docker指令让您也可以测试此设置
核心模块:外部单元+内部单元
我的智能恒温器的“核心模块”很便宜,但仍然有:
- 超酷的显示器
- 基本物理控制
- 通过 MQTT完成wifi 控制
它由三部分组成:一个 Shelly 1(10 美元)、一个 M5Stack ATOM 矩阵(9 美元)和一个 M5Stack ENV 单元(5 美元),材料清单总计 24 美元。
没有面包板和电线,没有原型板,不需要焊料。它必须是一个干净的工作,准备生产!
我的恒温器的外部装置是Shelly 1 。它是控制加热锅炉的理想远程继电器。易于连接(MQTT + 云 API),结构紧凑,可通过 AC 或 DC 供电,清洁触点。我保留了原始固件并将其连接到加热锅炉,如上图所示。
我的恒温器的内部单元,即这个系统的“大脑”,需要有一个很酷的显示器和一些基本的物理控制(关闭/自动模式+离开预设就足够了):所以我选择了Atom Matrix ,最近的 M5Stack 产品,带有 ESP32、LED 矩阵、wifi 和大量传感器接口。为了获得当前温度,我将 GROVE ENV 单元 (DHT12+BMP280) 连接到它:它们通过 I2C 进行通信。
这两个单元通过 MQTT 代理进行通信。您可以选择任何免费的云 MQTT 代理或本地 MQTT 代理。没关系。
外部装置设置
外部单元(Shelly 1 )可以配置原始固件,通过 Web 界面通过 MQTT 连接到内部单元的同一代理。
去做这个:
- 通过将 L 和 N 连接到主电源来启动 Shelly1
- 通过wifi连接AP shelly1-xxxxxx
- 在浏览器上,192.168.33.1 用于 Shelly Web 界面
- 选择 Internet 和安全、WIFI 模式 - CLIENTa。选择将 Shelly 设备连接到现有 WiFi 网络,输入 Wifi infob。单击连接
- 在路由器中查找 Shelly1-xxxxxx 获取 Shelly 本地 IP,xxxxxx 是每个 Shelly 设备的唯一 ID
- 在浏览器上,连接到新的 Shelly 本地 IP
- 选择 Internet 和安全,高级 - 开发人员设置,a。通过 MQTT 启用操作执行,输入 MQTT 服务器信息,b。节省
内部单元设置
为了轻松地为内部单元定制固件(M5Stack ATOM Matrix),
ESPHome 是一个通过简单而强大的配置文件控制您的 ESP8266/ESP32 并通过家庭自动化系统远程控制它们的系统。所以我只是编写了附加的 ( matrix_shelly_thermostat.yaml ) YAML 配置并使用 ESPHome 构建固件并将其上传到内部单元。
我集成了 LED 矩阵显示屏,将其用作字幕/滚动文本,显示当前温度、加热时的目标温度,颜色取决于操作模式/动作。为此,我的工作基于@rnauber 的https://github.com/rnauber/ESPHomeMatrixLED ,我对此做出了贡献,增加了对 M5Atom 设备的支持。我的更改已被@rnauber 接受并进入上游。万岁!
因此,构建固件的步骤是:
- 获取附加的matrix_shelly_thermostat.yaml结束根据您首选的云或本地 MQTT 代理编辑它的第一行(您可以保留预配置的test.mosquitto.org进行测试:它仍然可以工作),以及您的 Shelly 1 的设备 ID您在内部单元设置期间识别的设备(使用您的 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
上传固件后,该内部单元将重新启动并创建自己的 WiFi 网络 (AP),名称 (SSID) 为“Matrix Shelly Thermostat”,密码为“apolselli”。用您的手机或 PC 连接到它。Web 界面应自动打开(另请参阅登录到网络通知)。如果这不起作用,您也可以在浏览器中手动导航到http://192.168.4.1/ 。在此 Web 界面中,您可以设置设备的 WiFi 设置。
内部单元将开始生产/消费有关以下主题的消息:
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
...
它将通过以下主题向外部单元发出命令:
shellies/shelly1-32C429/relay/0/command on | off
它还将在http://matrix_shelly_thermostat.local公开一个 Web 界面
至此,智能恒温器的核心模块已经完成,它已经可以工作了 :) 它还将与连接到同一个 MQTT 代理的任何正在运行的 Home Assistant 实例进行原生集成……但是……等等……这必须是一个无服务器项目!!所以我们会假设附近没有 Home Assistant 实例可用,我们需要在云端定义一个移动 UI。
用户界面模块(云端)
这里是“无服务器”方法!为了在云中定义移动Web UI (公共或私有,没关系),我使用 Node-Red 创建了一个流程,基于优秀的https://github.com/automatikas/Node-red-Nest-thermostat通过@automatikas。
流使用 JSON 存储,可以轻松导入和导出,并且可以在任何地方部署。
部署流程的步骤是:
- 获取附加的matrix_shelly_thermostat.json
- 将其导入任何 Node-Red 实例。您可以使用任何免费的云 Node-Red 服务。没关系。
- 根据您首选的云或本地 MQTT 代理更改 MQTT 代理节点(或者您可以保留预先配置的test.mosquitto.org或测试:无论如何它都会工作)
- 点击“部署”
这将为您的 Node-Red 仪表板添加一个漂亮的 Nest 风格 UI,让您可以远程控制 Matrix Shelly 恒温器。
完毕。
享受 Matrix Shelly 恒温器 :)
以下只是“奖励”曲目/模块,超出了本项目的范围,但是..如果你想提高你的创造力..这不是火箭科学:)
奖励曲目 #0:您想在私有 Raspberry-Pi-docker-based-cloud 上运行此项目吗?
十分简单!
获取 HypriotOS https://blog.hypriot.com/getting-started-with-docker-on-your-arm-device/或任何其他基于 docker 的机器,ssh 到它并运行:
$ 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
而已。
这将运行一个 MQTT 代理 (black-pearl.local:1883) 和一个 Node-Red 实例 ( http://black-pearl.local:1880/ ) 和仪表板 ( http://black-pearl.local:1880/ ui/ ) 来导入和部署 JSON 流。
只需在 esphome yaml 中将 mqtt_broker 设置为black-pearl.local的 ip ,然后在 Node-Red 流中将 mqtt-broker 节点设置为“broker”。
注意:仅对于红色节点arm32v6
(Raspberry Pi 零、零 W 或 1),您必须指定完整的图像标签:
$ docker run -d -p 1880:1880 --name mynodered --restart always --link mybroker:broker nodered/node-red:1.0.5-12-arm32v6
奖励模块 #1:每周计划
自由
这是一个每周调度程序,可以将您的恒温器模式从“关闭”切换到“自动” “对你来说反之亦然!
奖励模块#2:语音助手/智能扬声器集成
免费(如果您已经有一个正在运行的 Home Assistant 实例)或 10 美元以上(如果您必须购买 Raspberry Pi Zero W 或更高版本)
我将恒温器暴露在:
在 Home Assistant 中,只需配置 MQTT 集成:Matrix Shelly Thermostat 将被自动检测并添加到您的实体中。
然后,只需添加以下集成:
homekit:
alexa:
smart_home:
奖励模块#3:存在检测
免费(如果您已经有一个正在运行的 Home Assistant 实例)或 10 美元以上(如果您必须购买 Raspberry Pi Zero W 或更高版本)
您可以使用自动化功能,将您的恒温器状态从“真”切换为“假”,反之亦然!
提示:在 Home Assistant 中,从以下配置开始:
device_tracker:
- platform: bluetooth_tracker
- 智能恒温器开源项目 0次下载
- 手机控制的拨号恒温器 0次下载
- 使用螺栓的恒温器 0次下载
- 蓝牙控制恒温器 0次下载
- 智能恒温器开源案例 1次下载
- 迷你恒温器开源分享 2次下载
- Vishay NTC恒温器的模拟 2次下载
- 带NTC的恒温器-第2部分 0次下载
- 智能恒温器开源分享 1次下载
- 恒温器开源分享 1次下载
- 如何使用固态继电器驱动恒温器 0次下载
- 恒温器控制电路原理图 55次下载
- 烙铁恒温器电路图 34次下载
- 恒温器控制电路原理图免费下载 11次下载
- 2017全球WiFi恒温器市场发展现状及趋势研究 4次下载
- 模块化原理和方法 模块化的方法和注意事项 1422次阅读
- 如何制作一个通过本地WiFi网络浏览器进行控制的恒温器 1494次阅读
- WiFi模块和ZigBee模块的区别是什么 8172次阅读
- 智能水表模块化结构设计及原理 6810次阅读
- 【新专利介绍】一种模块化智能水表 949次阅读
- WiFi模块在智能硬件中的具体应用 5379次阅读
- 解读:一种基于模块化设计的PLM平台建设 1481次阅读
- wifi模块异常是怎么回事_wifi模块异常怎样解决 6.8w次阅读
- 手机wifi模块在哪里_手机wifi模块位置图解 13.5w次阅读
- 模块化电源有什么优势 6461次阅读
- WiFi模块对智能家居的影响到底有多大 3472次阅读
- 电子恒温器 3986次阅读
- 鱼缸电子恒温器电路图 3119次阅读
- 双线遥控交流电子恒温器电路图 2003次阅读
- 三线电子恒温器电路图 5806次阅读
下载排行
本周
- 1储能电源市场分析
- 7.99 MB | 8次下载 | 免费
- 2储能电源市场分析报告
- 2.61 MB | 6次下载 | 免费
- 3磁环电感定制时应该注意什么
- 0.32 MB | 2次下载 | 免费
- 4labview文档教程资料(一)
- 24.29 MB | 2次下载 | 免费
- 5轻触三功能+常按 SOS 功能手筒LED驱动ICSD3302数据手册
- 0.60 MB | 1次下载 | 2 积分
- 6英集芯IP5353 QFN32 规格书pdf
- 2.70 MB | 1次下载 | 免费
- 7NCV78763R1DAGEVB子板数据手册
- 533.41 KB | 次下载 | 免费
- 8500mA,高效 MicroSiP™ 降压转换器TPS8269xSIP数据表
- 918.92KB | 次下载 | 免费
本月
- 1ES9038PRO解码芯片的电路原理图介绍
- 0.25 MB | 35次下载 | 5 积分
- 2STM32国内外发展现状
- 1.15 MB | 13次下载 | 免费
- 3传感芯片选型指南
- 3.60 MB | 11次下载 | 免费
- 4ATmega8芯片中文手册
- 2.45 MB | 8次下载 | 1 积分
- 5储能电源市场分析
- 7.99 MB | 8次下载 | 免费
- 6TDK电容器产品指南
- 11.88 MB | 7次下载 | 1 积分
- 72A多电池高效开关充电器AN_SY6912A中文资料规格书
- 1.43 MB | 7次下载 | 免费
- 8储能电源市场分析报告
- 2.61 MB | 6次下载 | 免费
总榜
- 1matlab软件下载入口
- 未知 | 935086次下载 | 免费
- 2开源硬件-PMP21529.1-4 开关降压/升压双向直流/直流转换器 PCB layout 设计
- 1.48MB | 420050次下载 | 免费
- 3Altium DXP2002下载入口
- 未知 | 233068次下载 | 免费
- 4电路仿真软件multisim 10.0免费下载
- 340992 | 191317次下载 | 免费
- 5十天学会AVR单片机与C语言视频教程 下载
- 158M | 183316次下载 | 免费
- 6labview8.5下载
- 未知 | 81567次下载 | 免费
- 7Keil工具MDK-Arm免费下载
- 0.02 MB | 73788次下载 | 免费
- 8NI LabVIEW中实现3D视觉的工具和技术
- 未知 | 70088次下载 | 免费
评论
查看更多