HA 穷折腾(一)净水器自动化

净水器是自己DIY的,插电启动,拔电停止,但是经常因为忘记拔电源导致水漫金山。正好最近闲来无事,DIY了一个水位监测sensor,集成到了HA中,实现每天定时启动,到达指定水位关闭。在此分享出来,提供给有需要的人。

所需材料

  1. esp01s + relay 模块

  1. 5v充电头

  1. 水位sensor

  1. 防水盒

  1. 线控开关

  1. 废弃的数据线剥皮待用。

制作过程

esp01s 烧录tasmota固件。这里串口工具用的是CH340。

打开https://tasmota.github.io/install/这个页面,选择Tasmota CN,后面设备选择ESP8266。

点击连接后会让你选择串口工具,选取对应的串口工具后点击连接。

选择INSTALL。

勾选擦除设备。

烧写中。

完成。

重启设备进入配置页面。

配置wifi。

配置成功。

进入管理页面。

进入模块设置,配置gpio0控制继电器,gpio3(RX)为水位监测io。

保存重启后进入控制台,输入SwitchMode 3 这是按压模式,按下开关触发,抬起开关没有动作。

在这里简单介绍一下水位sensor的工作原理,sensor检测到有水低电平,无水高电平,为了防止水位下降后又触发继电器工作,这里设置按压模式。

进入其他设置,配置模板名称和设备名称,方便HA显示。

如果使用MQTT协议,如下配置:(mqtt服务器如何搭建这里就不细说了)

到这里esp01s固件配置完成。接下来就是手工活了。
拆卸5v电源,焊接好220v输入和5v输出。注意!这里操作AC有一定的危险性,没有电工基础的人不要尝试。

下面焊接 relay模块。

引出控制开关(gpio3,地线)

连接sensor(5v,地线,gpio3)请无视我的焊工。

装入盒中。

连接外围线路,我这里用了一个插头延长线。

线控开关这里需要改装一下,改成灵动模式,忘记拍照片了就不上图了。改造很简单,拧下中间的接线柱,用小螺丝刀就能拆卸船型开关了,找一个吸管剪下一节垫到里边阻止它按下去就可以了。

成品图如下:

测试一下,发现水位sensor不起作用,排查了一圈发现是线控开关的问题。开关默认闭合状态,按下才是断开,导致gpio3一直处于低电平。

改造如下:(如果你的开关跟我是反的,也就是默认断开,那到此就结束了,下面可以不用看。)

引入gpio1(TX),让gpio1接收sensor信号,gpio3连接开关。

对应固件配置如下:(button_i 这里i的意思是inverted,高电平有效)


最后配置HA,在设备与服务里添加MQTT,并配置服务器。

同样的方式安装Tasmota集成。

这样在你配置完设备后tasmota就会自动发现并添加设备。

大功告成,安装完成图:

最后在HA里开启自动化,每天6:00自动开启,到达水位线停止。

接受坛友的建议,增加超时自动关闭任务。

本帖到此结束。