家庭妇男的智能家居折腾之路7:ESP8266接入空净后HA界面优化

2019-03-15 20:07:03 13点赞 71收藏 17评论

前一篇帖子中介绍了我使用NodeMCU开发板改造夏普空气净化器接入HA的经验,这一篇继续给大家分享下接入HA后,界面怎么安排。本文可能只适合Home Assistant使用者或编程爱好者,敬请谅解。

家庭妇男的智能家居折腾之路6:日淘空气净化器智能化升级记2102年的时候雾霾这个词逐渐进入公众视线,各种空气净化器也随之热销。当时大风量空净国行价格动着5k起,于是动了海淘的念头,从霓虹国海运回来一台sharpKI-AX70,一直使用至今。这台空净分量大,噪音低,除了需要额外的变压器略显麻烦外,其他基本满意。但近一年多来开始折腾智能家居,这台11年上市的NetYJ| 21 评论29 收藏103查看详情

在谈界面前,有几个ESPEasy固件的坑,先要填一填,我使用的Mega-20190216版本:

1,Config page中Append Unit Number to hostname这个选项是不影响MQTT中topic的。topic里使用的是Unit Name。这个选项真的只作用在hostname。

家庭妇男的智能家居折腾之路7:ESP8266接入空净后HA界面优化

2,如果你和我一样,在本地使用多个SSID一样的WIFI来覆盖更大面积的话,一定要把8266芯片拿到使用时真正的位置再配网。否则ESPEasy只会试图连接第一次连接的那个WIFI,不会自动切换到信号比较好的那个WIFI上,然后如果第一次的那个WIFI信号没有覆盖,ESPEasy就罢工了。我猜测这是由于ESPEasy是通过路由器WIFI网口的MAC地址而不是通过SSID来找到原先的网络的。另外,如果有条件的话,尽量配置上Fallback SSID,多留条后路。

家庭妇男的智能家居折腾之路7:ESP8266接入空净后HA界面优化

3,GPIO默认输出在Hardware页中是可调的,D8默认好像是高电平,我设置D8为input后正常了。

填坑完毕,接下来言归正传。先分析下需要实现的功能:

1,由于是继电器,通过MQTT接入HA后,界面上是表现成开关的。这本身没毛病,但是控制空净需要的是按钮,按下去的时候接通,放开就断开了,这边需要用HA模拟下。

2,MQTT开关一共6个,分别是:风量、加湿净化(可以启动净化器)、显示亮度、童锁、关机和净化(可以启动净化器)。其中,童锁按钮需要按3秒以上才能触发,而按3秒显示亮度按钮可以控制负离子发生器的开关,其他动作按0.5秒可触发。

3,净化、加湿净化和关机虽然是3个按钮,但是功能是互斥的,同时只能激活一个。这边界面应该用一个input_select(类似下拉菜单)来控制。

4,风量有6档,按一下切换到下一档,往复循环。第一反应也是做成input_select,但是这边不能自由选择档位,只能一个一个按顺序选,所以不能直接在界面上呈现input_select,而是应该只显示不能选择,用另一个开关触发切换。

5,显示亮度有3档,按一下切换到下一档,往复循环。同上,不能直接在界面上呈现input_select,而是应该只显示不能选择,用另一个开关触发切换。

6,童锁如果打开的话,其他按钮应该是无效的。

7,因为这个是日本版的机器,所以整机接在一个220 to 100V的变压器上,变压器另外有个小米的智能插座控制,相当于是总电源。每次开关机要按2个开关太麻烦,想把总电源和净化/关机绑定在一起。

8,因为成本考虑,没有接入功能的反馈,如果通过净化器上的实体按钮操作,HA这边是不会知道的。会发生HA状态和实际状态不一致的问题,需要有机制解决这个冲突。

先上个最终完成的界面,不算完美,但是也挺直观了:

家庭妇男的智能家居折腾之路7:ESP8266接入空净后HA界面优化

接下来,一步一步分享下怎么实现这个界面。

先把MQTT开关添加好,6个,和ESPEasy中一致:

MQTT开关配置MQTT开关配置

ESPEasy中的设置ESPEasy中的设置

写几个通用的script:

家庭妇男的智能家居折腾之路7:ESP8266接入空净后HA界面优化

这里写了4个,分别是“打开开关,等半秒,关闭开关”,等1秒关闭,等2秒关闭和等4秒关闭。只是delay不同,另外开关名称作为script的参数"switch_name"传入。

另外还有个什么也不干的脚本,用来占行的。

什么也不干什么也不干

再来,工作模式input_select是这样:

input_select定义3个选项input_select定义3个选项

添加一个自动化,选择对应选项时调用对应脚本添加一个自动化,选择对应选项时调用对应脚本

选择“净化”的脚本,如果总电源没开会打开电源并等一下再控制对应继电器接通0.5秒。执行前会先判断童锁有没有打开,打开不执行。选择“净化”的脚本,如果总电源没开会打开电源并等一下再控制对应继电器接通0.5秒。执行前会先判断童锁有没有打开,打开不执行。

打开总电源并等待15秒的脚本,因为一般8266通电后需要一点时间联网,所以要等一下才能真正准备好打开总电源并等待15秒的脚本,因为一般8266通电后需要一点时间联网,所以要等一下才能真正准备好

选择“加湿净化”的脚本,和“净化”差不多选择“加湿净化”的脚本,和“净化”差不多

选择“关闭”的脚本选择“关闭”的脚本

和总开关同步用的自动化,switch.plug_158d000163bcb0就是总开关和总开关同步用的自动化,switch.plug_158d000163bcb0就是总开关

接下来是风量的显示。做了个input_select当列表:

家庭妇男的智能家居折腾之路7:ESP8266接入空净后HA界面优化

而为了限制随机选择,界面显示的实际是input_text(类似输入框):

家庭妇男的智能家居折腾之路7:ESP8266接入空净后HA界面优化

再写了个会自己回弹的开关来切换:

家庭妇男的智能家居折腾之路7:ESP8266接入空净后HA界面优化

最后是按下开关后调用的脚本:

家庭妇男的智能家居折腾之路7:ESP8266接入空净后HA界面优化

下一个是亮度切换。和风量思路差不多:

input_selectinput_select

input_textinput_text

template switchtemplate switch

触发脚本触发脚本

负离子开关,做成了无反馈模式,方便重置状态。用一个input_boolean来记录HA状态。

添加input_boolean,默认状态on添加input_boolean,默认状态on

添加template switch添加template switch

在customize中设置开关无反馈模式在customize中设置开关无反馈模式

触发脚本:接通继电器4秒打开或关闭负离子发生器。分成了开/关2个脚本,方便boolean赋值

家庭妇男的智能家居折腾之路7:ESP8266接入空净后HA界面优化

最后是童锁功能。和负离子差不多:

添加input_boolean添加input_boolean

添加template switch添加template switch

在customize中设置开关无反馈模式在customize中设置开关无反馈模式

触发脚本触发脚本

最后的最后,在customize中,把不显示在界面上的东西都隐藏起来。

家庭妇男的智能家居折腾之路7:ESP8266接入空净后HA界面优化

完结撒花!家庭妇男的智能家居折腾之路7:ESP8266接入空净后HA界面优化 看看效果:

效果效果

在测试中发现一个现象:之前没加8266时,空净开机时总开关直接断电30秒以上再通电,空净关机前的状态就丢失了,再通电也不会自己开机。加装了8266以后,断电再通电,空净之前的工作状态竟然会恢复,目前已测试断电12小时再通电,依然能恢复之前断电前的工作状态!算是一个意外的收获,好神奇!

KI-AX70接入HA到这里就正式完成了。各位有什么意见或建议,欢迎留言,同时也期待各位点赞、收藏、打赏!

展开 收起

乐天派 人体存在传感器居基础感应控制Matter双生态多平台Mijia IOS Homekit六种数据探测 传感器

乐天派 人体存在传感器居基础感应控制Matter双生态多平台Mijia IOS Homekit六种数据探测 传感器

235.67元起

Xiaomi 小米 米家智能插座3

Xiaomi 小米 米家智能插座3

49元起

Xiaomi 小米 DMWG03LM 智能多模网关2 白色

Xiaomi 小米 DMWG03LM 智能多模网关2 白色

178.99元起

HUAWEI 华为 智能门锁 Plus AI 3D人脸解锁快准稳 AI指纹锁

HUAWEI 华为 智能门锁 Plus AI 3D人脸解锁快准稳 AI指纹锁

2899元起

Xiaomi 小米 ZSWG01CM 智能中枢网关 黑色

Xiaomi 小米 ZSWG01CM 智能中枢网关 黑色

191.79元起

MIJIA 米家 人体传感器2S 居 智能监测联动

MIJIA 米家 人体传感器2S 居 智能监测联动

61.99元起

MIJIA 米家 MJYDOAYL 自动感应夜灯 白色

MIJIA 米家 MJYDOAYL 自动感应夜灯 白色

16.9元起

京东京造 TH1 时钟温湿度计 白色

京东京造 TH1 时钟温湿度计 白色

29.9元起

Xiaomi 小米 无线开关 蓝牙版

Xiaomi 小米 无线开关 蓝牙版

32.9元起

MIJIA 米家 小米米家智能宠物自动喂食器2猫咪狗狗定量定时喂食器自动投食机

MIJIA 米家 小米米家智能宠物自动喂食器2猫咪狗狗定量定时喂食器自动投食机

369元起

Xiaomi 小米 MCCG02HL 小米门窗传感器 2 米家

Xiaomi 小米 MCCG02HL 小米门窗传感器 2 米家

37.9元起

linptech 领普 智能无线开关KS1Pro屏显温湿度传感器智能联动免布线遥控开关

linptech 领普 智能无线开关KS1Pro屏显温湿度传感器智能联动免布线遥控开关

50.9元起

Aqara烟雾报警器

Aqara烟雾报警器

229元起

Xiaomi 小米 SJWS01LM 水浸卫士 白色

Xiaomi 小米 SJWS01LM 水浸卫士 白色

55元起

Aqara 绿米联创 守护女神套装 含M1S网关+人体传感器+门窗传感器 智能场景套装

Aqara 绿米联创 守护女神套装 含M1S网关+人体传感器+门窗传感器 智能场景套装

377元起

MIJIA 米家 空调伴侣2 智能插座 白色

MIJIA 米家 空调伴侣2 智能插座 白色

64.95元起
17评论

  • 精彩
  • 最新
  • 通过这个方法控制德龙除湿机是不是也可以?

    校验提示文案

    提交
    嗯,应该行

    校验提示文案

    提交
    收起所有回复
  • 这个只能用开关来控制吗,ha里,如果是语音控制岂不是很麻烦

    校验提示文案

    提交
    其实ha里主要是条件触发的自动化控制。无论界面还是开关,还是语音都不太用到。

    校验提示文案

    提交
    收起所有回复
  • 动手能力强的!我只想加个智能插座控制开关,但是正如你文末写的,30秒内断电再通电是能恢复运行的,时间长一点再通电就不会运行了,这个该如何解决

    校验提示文案

    提交
    我分析我加装8266后可能变压电路部分起到了电容的作用,为控制电路在断电时供电。如果不拆开改造恐怕要在外部使用ups才能实现。

    校验提示文案

    提交
    有道理,我也在考虑加一片电容,你觉得加在哪个位置会有效果?感谢答复。

    校验提示文案

    提交
    还有2条回复
    收起所有回复
  • 感觉有点闲的蛋疼

    校验提示文案

    提交
  • 有事没详细看,不明觉厉!空了帮我看下用8266做电波钟改wifi对时呗。打赏先送上占位

    校验提示文案

    提交
  • 能留个联系方式吗?我也有台夏普要改

    校验提示文案

    提交
  • 厉害,应该照着这个模式把家里的新风开关
    改了

    校验提示文案

    提交
  • 这么好的帖子居然这么点热度,感谢分享,看帖后豁然开朗,买料去。

    校验提示文案

    提交
  • ha是干什么的?ha是啥?

    校验提示文案

    提交
  • 好文章,有帮助!

    校验提示文案

    提交
  • 文章非常受用。 感谢。

    校验提示文案

    提交
提示信息

取消
确认
评论举报

相关好价推荐
查看更多好价

相关文章推荐

更多精彩文章
更多精彩文章
天猫超级红包
距结束::
每天领现金,最高24888元
红包按钮
最新文章 热门文章
71
扫一下,分享更方便,购买更轻松