水滴传感器+esphome接入homeassistant,实现下雨联动智能家居
折腾理由
随着智能家居的不断普及,各家互联网厂商也都不约而同的加入这场激烈的竞争中。国内的小米华为,国外的苹果谷歌亚马逊都发布了自己的智能家居产品和平台。
由于各家产品都只能在自家平台使用且使用场景不足以支撑智能(lan)生活,所以就把他们集成到一个系统上了。我使用的是homeassistant,站内安装教程很多,这里就不展开了。
今天要做的就是实现下雨自动关窗、关门、警报。。。。你想干什么都行
材料展示
homeassistant平台
esp8266开发版(楼主使用的是nodemcu)
水滴传感器(木有型号。)
杜邦线
折腾的❤️
esphome安装
由于我的ha是安装在群晖docker里面的,所以esphome也使用docker安装,打开群晖docker-》选择注册表--搜索esphome--下载第一个
取个名字,选择高级设置
选择卷映射目录到/config,网络与主机相同,应用即可
打开浏览器访问群晖IP:6052,这里节点名称自己随便取,设备类型默认esp8266,Wi-Fi和无线更新填自己家的Wi-Fi名称和密码、管理密码自己设置(加入ha时使用)
点击右上角3个点,选择compile
编译完成后点击下载
使用upycraft或者nodemcu-flasher 刷入固件,不会的参考Wi-Fikiller烧录过程,刷入成功后就可以看到我们的设备在线了
板子连线
这里将传感器和开发版用杜邦线连接
水滴传感器 + ----- esp8266 5v
水滴传感器 - ------esp8266 GND
水滴传感器 s ------esp8266 D2(这里可以随便连接空闲gpio,与代码中相同即可)
点击edit打开文本编辑器
代码
output:
- platform: esp8266_pwm
pin: GPIO2
frequency: 2000Hz
id: led_onboard
inverted: True
light:
- platform: monochromatic
name: "LED On Board"
output: led_onboard
binary_sensor:
- platform: gpio
pin:
number: D2
mode: INPUT_PULLUP
id: water
name: "water_sensor"
接入ha
打开ha选择配置--集成
点击➕--选择esphome,输入esphome的IP地址即可
然后回到主页面就可以看到灯和雨滴传感器了(默认的statsUI可能卡片方式不同)
创建自动化
点击配置,选择自动化
点击右下角的➕,名称自己随便填。触发条件类型选择状态,实体就选择我们的水滴传感器,从off变为on就代表传感器上有水(下雨了),持续时间根据自己需要填写
环境条件也可以根据自己情况设定(比如日出日落,时间等)。动作就是监测到下雨要执行的动作(你可以调用家里的小爱同学提示你下雨了,或者也可以控制设备关窗关门等,与自家设备联动。由于我这里没有设备就用LED灯表示了 )
我这里建立了两个自动化场景,下雨开灯雨停关灯
测试
没水的时候就是待命状态
当水滴传感器上有水的时候,我们创建的自动化场景就会被触发,LED灯点亮(水滴传感器上有一滴水能看到吗 )
在自动化中也可以看到触发的具体时间
尾巴
小米走在了国内智能家居的前列,华为也在布局自己的系统,苹果提出了home kit。这些都预示了智能家居的未来,小米凭借性价比取得了不少的市场份额,但相比于diy还是要少了一些乐趣(qiong)。十几块的成本简直吊打米家产品,还不受米家平台限制。另外,今天又买了一个人体传感器已经在路上了。。。。
major1987
校验提示文案
玉面小白狼
校验提示文案
Kyriosli
校验提示文案
值友4051335154
校验提示文案
sunhiro
校验提示文案
rainysunday
校验提示文案
值友96
校验提示文案
离开家才开始说
INFO Generating C++ source...
INFO Compiling app...
INFO Running: platformio run -d /config/switch
Processing switch (board: esp01_1m; framework: arduino; platform: espressif8266@2.2.3>
--------------------------------------------------------------------------------
HARDWARE: ESP8266 80MHz, 80KB RAM, 1MB Flash
Looking for ESPAsyncTCP-esphome library in registry
LibraryManager: Installing id=6757 @ 1.2.2
ESPAsyncTCP-esphome @ 1.2.2 has been successfully installed!
Looking for ESPAsyncWebServer-esphome library in registry
LibraryManager: Installing id=6758 @ 1.2.6
Downloading...
Error: Please read 去看看
ChunkedEncodingError: ("Connection broken: ConnectionResetError(
校验提示文案
roc634
校验提示文案
niconiconicooo
校验提示文案
youcansee
校验提示文案
szseer
另外问一下:ESPHome怎么接入MQ4、MQ9|MQ135这类的气体传感器?
校验提示文案
值友6631770532
校验提示文案
值友6631770532
在esphome 没搜到呀
校验提示文案
值友6631770532
在esphome 没搜到呀
校验提示文案
值友6631770532
校验提示文案
szseer
另外问一下:ESPHome怎么接入MQ4、MQ9|MQ135这类的气体传感器?
校验提示文案
youcansee
校验提示文案
niconiconicooo
校验提示文案
roc634
校验提示文案
rainysunday
校验提示文案
离开家才开始说
INFO Generating C++ source...
INFO Compiling app...
INFO Running: platformio run -d /config/switch
Processing switch (board: esp01_1m; framework: arduino; platform: espressif8266@2.2.3>
--------------------------------------------------------------------------------
HARDWARE: ESP8266 80MHz, 80KB RAM, 1MB Flash
Looking for ESPAsyncTCP-esphome library in registry
LibraryManager: Installing id=6757 @ 1.2.2
ESPAsyncTCP-esphome @ 1.2.2 has been successfully installed!
Looking for ESPAsyncWebServer-esphome library in registry
LibraryManager: Installing id=6758 @ 1.2.6
Downloading...
Error: Please read 去看看
ChunkedEncodingError: ("Connection broken: ConnectionResetError(
校验提示文案
sunhiro
校验提示文案
值友4051335154
校验提示文案
Kyriosli
校验提示文案
玉面小白狼
校验提示文案
值友96
校验提示文案
major1987
校验提示文案