georgewu57 发表于 2018-11-19 16:57:39

natic 发表于 2018-11-19 15:21
官方文档很详细,谷歌搜一下就有了

官方文档看了,
# If given, will trigger when condition has been for X time.
意思是:如果触发条件达到超过X的时间,然后执行动作

那如果我trigger的条件短时间内发了很多次,他是以第一次触发为准呢,还是以最后一次触发为准呢?

下班先回家试试!

georgewu57 发表于 2018-11-19 17:01:24

natic 发表于 2018-11-19 15:21
官方文档很详细,谷歌搜一下就有了

再问一下,for后面的时间参数是不是就是为了确认短时间内的多此触发而存在的?:dizzy:

natic 发表于 2018-11-20 11:08:26

georgewu57 发表于 2018-11-19 17:01
再问一下,for后面的时间参数是不是就是为了确认短时间内的多此触发而存在的? ...

你的理解没错,for就是说这个状态持续了多长时间才进行操作,比如没人持续5分钟才关灯

georgewu57 发表于 2018-11-20 16:04:34

natic 发表于 2018-11-20 11:08
你的理解没错,for就是说这个状态持续了多长时间才进行操作,比如没人持续5分钟才关灯 ...

感谢,已经搞定了!:hug:

alei643 发表于 2018-11-21 10:57:30

本帖最后由 alei643 于 2018-11-21 11:09 编辑


##### 我把sonoff的命令贴在这里,供大家参考,使用sonoff的rule规则优势就是,万一HA或者NodeRed之类的控制中枢出问题了,也不会影响自动化的流程,并且指令在自身模块运行,肯定比网络上来的快啊,就是命令稍微繁琐。另外rule规则的优先级高,比如使用tasmota的固件接入人体传感器,需要占用两个GPIO,一个作为switch,另外一个作为relay2。改用rule规则,仅用一个switch的GPIO就可以了。不多说的,感兴趣可以自己去挖掘

```
switchmode1 1//本条命令将按键模式修改为跟随模式
```

```
rule1 on   //开启规则1
```

```
rule2 on   //开启规则2
```

```

rule1 on Switch1#state=1 do backlog event checksunrise=%time%; event checksunset=%time% endon on event#checksunrise<%sunrise% do backlog power1 1; ruletimer1 0 endon on event#checksunset>%sunset% do backlog power1 1; ruletimer1 0 endon   //将人体传感器的触发动作限定在日落和日出时间内,触发时,清空定时器
```

```
rule2 on switch1#state=0 do ruletimer1 60 endon on rules#timer=1 do power1 0 endon    //无人时,倒计时60秒关闭输出
```

##### 其他可能需要使用到的命令

```
timezone 8//将当前时区设定为第8时区
LatitudeXXX.XXX//设置纬度;日出日落时间是根据经纬度自动计算的
Longitude XXX.XXX//设置经度
```

wshc1216 发表于 2018-11-23 11:56:23

我在淘宝上看的sonoff好像都不能刷固件了,你们去哪找的啊

appleftg 发表于 2019-1-11 22:35:51

alei643 发表于 2018-11-21 10:57

##### 我把sonoff的命令贴在这里,供大家参考,使用sonoff的rule规则优势就是,万一HA或者NodeRed之类 ...

学习学习

doa2011 发表于 2019-1-12 01:19:44

留名学习!!!!

hugh_jie 发表于 2019-9-18 22:16:08

学习一下

jyz_0501 发表于 2020-3-15 20:12:06

延时时间内 再次触发的话不是会一直输出高电平吗,而且会自动延长 延时时间。设置为重复模式 的话还有这种情况?
页: 1 [2] 3
查看完整版本: sonoff改人体感应-HC-SR501的问题