『瀚思彼岸』» 智能家居技术论坛

 找回密码
 立即注册
查看: 4324|回复: 4

[流程系列] 小白求助:如何判断两个传感器最后触发时间先后的问题

[复制链接]

12

主题

193

帖子

1138

积分

论坛积极会员

积分
1138
金钱
945
HASS币
0
发表于 2021-10-14 21:29:39 | 显示全部楼层 |阅读模式
想通过node-red完善解决卫生间开关灯的问题。目前遇到难题无法解决(本人小白一枚,不会JAVA编程)。
解决思路:卫生间无人时,判断卫生间门窗传感器关闭,如果门窗传感器关闭时间早于卫生间无人状态,灯继续亮,直到门窗传感器变为打开状态。
目前不知道如何判断门窗传感器关闭时间早于卫生间无人状态。请各位大神支招。
回复

使用道具 举报

105

主题

2954

帖子

1万

积分

超级版主

智能家居&单板滑雪痴迷爱好者

Rank: 8Rank: 8

积分
12103
金钱
9084
HASS币
460

教程狂人突出贡献

发表于 2021-10-14 21:40:31 来自手机 | 显示全部楼层
卫生间有没有人你是靠什么传感器判断的?如果是小米那种就算了,别想了。
回复

使用道具 举报

45

主题

638

帖子

3813

积分

论坛元老

Rank: 8Rank: 8

积分
3813
金钱
3175
HASS币
0
发表于 2021-10-14 23:17:45 | 显示全部楼层
我的方案是门口前后放置2个红外射线的那种 只会打出一条线 跨过这条线才会触发 用的esp8266 tasmota(因为我家没有上厕所关门的习惯 你也可以其中一个用门磁替换 一样的) 12触发顺序就是开厕所灯  所以这时在厕所的人无所谓动不动都不会熄灯;21顺序触发就熄灯;不过我家网络有问题延迟 导致体验很差,你可以用下我的思路试下
回复

使用道具 举报

77

主题

1391

帖子

2万

积分

元老级技术达人

积分
24293
金钱
22862
HASS币
290
发表于 2021-10-14 23:57:18 | 显示全部楼层
本帖最后由 dscao 于 2021-10-15 08:30 编辑

node-red中实体状态变化时间在调试信息都可以看得到:
2.jpg
要拿到这个时间信息是很简单的事情了。


这种场景有很多帖子了,使用卫生间时有关门习惯就很好办了。自动化就可以:
1、触发:触发有人,环境:灯是关的状态,动作:开灯
2、触发:触发无人,环境:门是打开状态,动作:关灯
3、触发:开门,环境:灯是开的状态,动作:关灯(如果希望人走就立即关灯就加上这一条)
基本也可以满足大部分的情况了,也可以使用一条自动化,但要用选择、循环、延迟等多种组合。逻辑上还是差不多的。

更理想的方案是人数统计,两个传感器先后顺序来判断最好是在固件内实现,不然受外部网络、系统等多种原因导致不灵。传感器目前看只能是那种秒以下级别反应速度的传感器。如:D80NK或VL53L1X等传感器。
论坛搜索“计数器”,有相关的帖子。原理就是这种先后顺序来判断有没有人,有几个人。但这个不好安装,我做了也没使用。
回复

使用道具 举报

12

主题

193

帖子

1138

积分

论坛积极会员

积分
1138
金钱
945
HASS币
0
 楼主| 发表于 2021-10-30 07:14:04 来自手机 | 显示全部楼层
我还是不会调用last_changed,大神有没有代码,让我学习一下
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|Hassbian

GMT+8, 2024-11-22 02:41 , Processed in 0.100431 second(s), 30 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表