neroxps 发表于 2019-1-21 10:26:30

【nodered】类似HA 中 FOR 的应用

本帖最后由 neroxps 于 2019-1-21 10:31 编辑

# Node-RED 类似 HA 中 For 的应用


从 Home-assistant 转到 Node-RED 相信很多朋友都疑惑,怎么编写类似 HA 自动化 FOR 功能的流。

其实 Node-RED 也有类似 HA 那样 For 功能的节点,名字叫 **stoptimer**,以下是这个节点说明的翻译:

> 在设置的定时器持续时间后,通过第一个输出发送msg。 如果在定时器结束之前收到新的msg,它将替换现有的msg,并且定时器将重新启动,除非新的msg具有stop或STOP的有效负载,在这种情况下它将停止定时器。 第二个输出允许您发送数字,字符串或布尔值的附加有效负载。 如果计时器停止,第二个输出将自动发送停止的有效负载。
>
> 这就像node-red的内置延迟功能,但不仅能够重启计时器,还能够停止计时器。
*翻译来自 google翻译*

下面是我做的两个范例。

### 两个人感控灯

#### 需求:
1. 当人感-1 或者人感-2 为 ON 的时候,亮灯。
2. 当人感-1 或人感-2 为 OFF,持续5秒后,如果另一个人感也是OFF就关灯 。
### 当亮度少于30持续5秒,关灯








hisoo 发表于 2019-1-21 10:54:11

学习stoptimer 节点

wudijushi 发表于 2019-1-22 16:09:12

这个功能好!

新生活 发表于 2019-1-22 17:42:43

感谢楼主分享!

dodojie 发表于 2019-1-22 22:25:46

iciness 发表于 2019-1-24 11:10:38

感谢楼主分享!

lhpsq 发表于 2019-12-13 23:05:00

我遇到一个问题,光线感应每秒输出一次数据的话,stoptime节点设为等待5秒,这样就会一直暂停,不会往下走流程了。

neroxps 发表于 2019-12-14 08:02:11

lhpsq 发表于 2019-12-13 23:05
我遇到一个问题,光线感应每秒输出一次数据的话,stoptime节点设为等待5秒,这样就会一直暂停,不会往下走 ...

把你的 Flow 发出来看看。

lhpsq 发表于 2019-12-16 17:13:01

我下载了您压缩包里的flow,最下面那个流,如果连续有同一个输入,比如连续按“亮度传感器24”,则流到达不了“持续多少秒”后面了。
我想用这个方法做插座功率<25W 持续10分钟,就关闭,但插座功率是1分钟刷新一次的。

neroxps 发表于 2019-12-16 18:16:56

lhpsq 发表于 2019-12-16 17:13
我下载了您压缩包里的flow,最下面那个流,如果连续有同一个输入,比如连续按“亮度传感器24”,则流到达不 ...

很简单啊,加一个 rbe 节点就能解决。

多元判断嘛

大于 25W 就是true,往下只会发 true。经过 rbe 的时候,判断当前消息和之前消息是一样就不往下发。
页: [1] 2
查看完整版本: 【nodered】类似HA 中 FOR 的应用