本帖最后由 sirakawa 于 2018-2-21 21:43 编辑
做了不少自动化,不过基本都是比较简单的能方便生活的,
各种高级功能都没怎么做过- -
这次发一个简易的温控器双控,前提是自采暖哦~
北方的人有没有感觉过这种,屋里温度足够,但是还是觉得阴冷的时候,想要让暖气烧一会,热气流动一下
但是短时间的烧一下,就算你的温控器是WIFI的,也还是要手机去设置开,然后过一段时间再手动关
不支持WIFI的设置起来更麻烦,而且有的时候忘了关,直接烧了一天。。。
我这基本就是 用一个一个无线开关,单按是烧半小时,双击烧一小时,长按解除,同时不影响温控器正常操作
虽然想过直接替代温控器,不过懒得写自动化了,现在的温控也没什么不好用的
因为涉及到控制,所以还需要下面这些配件:
·无线开关
·WIFI插座(我用的小米的ZIGBEE版)
·常开继电器(如果是5V的话,还需要一个充电头)
燃气炉的控制基本就是,控制线路联通就烧,断开就不烧,所以把继电器并联到现在的控制线路里就好了~
效果如下:
然后再HASS里面设置自动化来控制
#------------------------------------------------------------------------------#
# 自动烧半小时暖气
#------------------------------------------------------------------------------#
- alias: Open 30m Heating
id: 'Open 30m Heating'
trigger:
# 单击
- platform: event
event_type: click
event_data:
click_type: single
entity_id: binary_sensor.switch_158d000210bb35
# 双击
- platform: event
event_type: click
event_data:
click_type: double
entity_id: binary_sensor.switch_158d000210bb35
# 定时
- platform: time
at: '06:00:00'
condition:
# 暖气是关闭状态
- condition: state
entity_id: switch.plug_158d00020da652
state: 'off'
action:
# 关闭暖气关联自动化,防止二次执行
- service: script.disable_heating_automate
- service: switch.turn_on
data:
entity_id: switch.plug_158d00020da652
#延迟30/60分
- delay: '{% if trigger.platform == "time" %}00:30:00{% elif trigger.event.data.click_type == "single" %}00:30:00{% else %}00:60:00{% endif %}'
# 重新开启
- service: script.enable_heating_automate
- condition: and
conditions:
# 暖气开启状态
- condition: state
entity_id: switch.plug_158d00020da652
state: 'on'
# 关闭暖气
- service: switch.turn_off
data:
entity_id: switch.plug_158d00020da652
# ------------------------------------------------------------------------------#
# 关闭暖气
# ------------------------------------------------------------------------------#
- alias: Close Heating
id: 'Close Heating'
trigger:
# 长按
- platform: event
event_type: click
event_data:
click_type: long_click_press
entity_id: binary_sensor.switch_158d000210bb35
condition:
# 暖气是打开状态
- condition: state
entity_id: switch.plug_158d00020da652
state: 'on'
action:
# 关闭暖气
- service: switch.turn_off
data:
entity_id: switch.plug_158d00020da652
之前我有问打断执行的,就是因为这个执行半小时,想要在取消时候打断
现在只能临时禁用自动化来防止多次执行,多次执行会出奇怪的结果- -
# 关闭暖气相关自动化
'disable_heating_automate':
alias: disable_heating_automate
sequence:
- service: automation.turn_off
data:
entity_id:
- automation.open_30m_heating
# 打开暖气相关自动化
'enable_heating_automate':
alias: enable_heating_automate
sequence:
- service: automation.turn_on
data:
entity_id:
- automation.open_30m_heating
这样设置好了之后,觉得阴冷了,直接拍一下按钮就完事了
十分省事~~
|