01 前言
本文章原文发表于我的微信公众号,请大家关注阅读,涉及的源代码等都在公众号,请搜索公众号: 智能家居NodeRed和HomeAssistant 即可关注。
02 概述
如果要实现自动循环启停不论在HomeAssistant中还是在NodeRed中都是比较容易实现的,例如在NodeRed中可以用诸如timer、delay等节点组合实现,而我喜欢用一个函数节点来实现,并且支持多个时间间隔的循环。
03 适用场景
自动循环启停非常适合那些不需要持续运行的设备。通过这种方式,不仅可以有效延长设备寿命,还能显著降低能耗。具体的应用场景可以根据实际需求灵活调整。
04 功能与实现
自动循环启停我用在鱼缸气泵的启停控制,下面是流程演示:
流程中我用一个触发节点函数节点启动,函数根据设置输出控制命令至其他节点,案例中我采用的是MQTT节点(注意MQTT节点需要填写发送的主题);同时函数下方可以显示当前计时器状态,以及计时器预计执行的操作信息,当然这些设置都是可以自由定义的,函数节点中可以设置的如下所示:
定义说明如下:
initial:为计时器初始时间设置,单位为毫秒;
state:为计时器到期后即将执行说明操作显示;
payload:为当前计时器及时期间发送的payload值;
fill:为在函数显示的标记颜色,可设置值包含:grey、red、yellow、green、blue。
案例中设置了两个定时器,当然也可以设置多个计时器如下:
这样设置后可以实现多个定时器指令发送及状态切换。
05 结束语
以上小流程简单实用,用在什么场景由你决定,但是这条流程中没有加入实时反馈信息,如果加入反馈信息可能使流程变得复杂,当然如果有需要反馈的朋友可以联系我帮你完成,在流程使用过程中如果遇到任何问题可以私信或留言。
请大家点赞、转发以便更多的朋友能够读到本文章,感谢大家的支持与厚爱!
本文涉及流程代码均在公众号: 智能家居NodeRed和HomeAssistant 需要的朋友请关注获取!