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

 找回密码
 立即注册
查看: 31231|回复: 32

[技术探讨] 小米多模网关下的青萍小米绿米人体传感器数据刷新时间

[复制链接]

56

主题

929

帖子

4077

积分

论坛元老

Rank: 8Rank: 8

积分
4077
金钱
3148
HASS币
0
发表于 2021-6-29 10:41:32 | 显示全部楼层 |阅读模式
  环境:X86工控机 openwrt下的docker+homeassistant
版本core-2021.6.5
安装类型Home Assistant Container
开发版false
Supervisorfalse
Dockertrue
虚拟环境false
Python 版本3.8.9
操作系统系列Linux
操作系统版本5.4.120
CPU 架构x86_64
时区Asia/Shanghai


  1、小米多模网关(未刷机)1.50_0026版本,通过XiaomiGateway3插件接入hass,网关下所有的设备都正常接入了hass


  2、通过网关接入了4个人体传感器,1个小米2人体,1个青萍人体,2个aqara,只有aqara是通过zigbee接入的,其他为蓝牙。


  3、在小米APP里,青萍日志,动作触发间隔可设置,范围为5秒至60秒(每5秒一档),光照强度lux每10-15分钟上传一组数据;小米2日志,不能设置动作触发时间,可能是30秒一触发,光照只有光亮、光暗;aqara在新入网模式下,每5秒检测一次人体,如果1小时没有任何触发,回到用户模式,此后每1分钟触发1次,同时上报检测光照强度信息。


  4、在hass里,3个品牌的人体传感器生成的实体如下图


截图-2021年6月29日 10时28分15秒.png 截图-2021年6月29日 10时27分33秒.png 截图-2021年6月29日 10时27分50秒.png

    5、困扰我的问题:hass界面看到人体触发后,离开触发区域,要再等1分30秒才显示未触发,这个刷新时间好像是固定的,3个品牌都这样,不知道如何调整。


  6、想实现的是:青萍可以设置到5秒触发,那应该是离开触发区域5秒就应该显示未触发;同样,小米2应该是30秒,aqara应该是60秒。


   谢谢各位。




回复

使用道具 举报

4

主题

139

帖子

2178

积分

金牌会员

Rank: 6Rank: 6

积分
2178
金钱
2039
HASS币
0
发表于 2021-6-29 13:29:54 | 显示全部楼层
可以改的,我设置的3秒
2021-06-29_132801.png
回复

使用道具 举报

105

主题

2954

帖子

1万

积分

超级版主

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

Rank: 8Rank: 8

积分
12103
金钱
9084
HASS币
460

教程狂人突出贡献

发表于 2021-6-29 14:13:47 来自手机 | 显示全部楼层
三尺寒 发表于 2021-6-29 13:29
可以改的,我设置的3秒

3秒钟以后能不能被再次触发?这才是关键。如果只是追求ha里的状态从on尽快变成off,办法多的是
回复

使用道具 举报

56

主题

929

帖子

4077

积分

论坛元老

Rank: 8Rank: 8

积分
4077
金钱
3148
HASS币
0
 楼主| 发表于 2021-6-29 14:19:10 | 显示全部楼层
三尺寒 发表于 2021-6-29 13:29
可以改的,我设置的3秒

谢谢,在这里设置啊。我看你的传感器,也应该是蓝牙的吧。你设置了3秒有反应么?
回复

使用道具 举报

56

主题

929

帖子

4077

积分

论坛元老

Rank: 8Rank: 8

积分
4077
金钱
3148
HASS币
0
 楼主| 发表于 2021-6-29 14:23:59 | 显示全部楼层
本帖最后由 bainiu 于 2021-6-29 16:49 编辑
XCray 发表于 2021-6-29 14:13
3秒钟以后能不能被再次触发?这才是关键。如果只是追求ha里的状态从on尽快变成off,办法多的是 ...

是的,这样设置后。3秒刷新时间够快,超过传感器本身物理刷新时间(比如青萍是5秒),是不是意味着第二轮6秒后,就能读到再次触发的数据。我回家试试。这样频繁,估计那个小电池也吃不消啊。
回复

使用道具 举报

56

主题

929

帖子

4077

积分

论坛元老

Rank: 8Rank: 8

积分
4077
金钱
3148
HASS币
0
 楼主| 发表于 2021-6-29 14:27:25 | 显示全部楼层
三尺寒 发表于 2021-6-29 13:29
可以改的,我设置的3秒

截图-2021年6月29日 14时25分22秒.png

谢谢,这个1分30秒原来是这里啊,我原来真的是看日志统计出来的。谢谢
回复

使用道具 举报

4

主题

139

帖子

2178

积分

金牌会员

Rank: 6Rank: 6

积分
2178
金钱
2039
HASS币
0
发表于 2021-6-29 16:17:23 | 显示全部楼层
XCray 发表于 2021-6-29 14:13
3秒钟以后能不能被再次触发?这才是关键。如果只是追求ha里的状态从on尽快变成off,办法多的是 ...

楼主有5秒触发的设备,他只是不知道怎么在hass里设置
回复

使用道具 举报

105

主题

2954

帖子

1万

积分

超级版主

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

Rank: 8Rank: 8

积分
12103
金钱
9084
HASS币
460

教程狂人突出贡献

发表于 2021-6-29 17:26:05 | 显示全部楼层
三尺寒 发表于 2021-6-29 16:17
楼主有5秒触发的设备,他只是不知道怎么在hass里设置

嗯,我看得不仔细。。。
回复

使用道具 举报

56

主题

929

帖子

4077

积分

论坛元老

Rank: 8Rank: 8

积分
4077
金钱
3148
HASS币
0
 楼主| 发表于 2021-6-29 18:39:04 | 显示全部楼层
回家我测了一下,确实可以在自定义实体里修改刷新时间。可以设置青萍5秒刷新,下一个周期第6秒就又可以触发;小米2如果设置5秒也能从on至off,但第6秒不能触发,因为他刷新时间为30秒;同理的,绿米可以设置成60秒。设置后立刻生效,无须重启。通过比较,个人以为青萍这个人体适合自己,为了和小米2联动,把青萍设置成了30秒,绿米的只能设成60秒。谢谢@三尺寒 、@XCray
回复

使用道具 举报

105

主题

2954

帖子

1万

积分

超级版主

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

Rank: 8Rank: 8

积分
12103
金钱
9084
HASS币
460

教程狂人突出贡献

发表于 2021-6-29 20:16:30 | 显示全部楼层
客气了,幸好我的发言没产生误导。。。

绿米的传感器据说可以拿2B铅笔在线路板上画条线改成5秒的冷却时间,有这个需求的人好像还很多。

这还是智能家居或者物联网里一个很本质的问题:事件和状态的关系,这也是很多人犯糊涂的地方。

对于开关(switch)这类实体,比较符合正常人的思维:收到开的事件或指令成功执行之后就意味着进入了开的状态、收到关的事件或者指令成功执行就进入关的状态。

而人体传感器很特殊,很多刚开始接触的人总想把它理解成“人体存在传感器”,而大部分商业产品只是一个“人体移动传感器”。

从逻辑上讲,传感器检测到移动,只是一个事件、是一瞬间的事情,具体到HA也就是从某个地方收到了一条消息。

然后,对应的实体状态理所当然的被设置成“on”。那么问题来了——啥时候再改回“off”?

无非两个做法:
- 定时,xx秒后自动改为“off”
- 死等,等某个地方再发过来一条消息,告知状态变成了“off”

于是又涉及以下问题:
- 传感器怎么判断on/off?以什么频度发出on/off消息?这是传感器设计和固件开发考虑的,和具体实现原理、节电、通信效率、容错等等都纠缠在一起
- HA在不同时间收到的各种消息应该怎么处理?

occupancy timeout可以改得很短,ha就会很快把状态从on改成off。但正如楼主的结论,可能比较合理的设置就是略小于传感器本体的“冷却时间”,但肯定不是越快越好(比如开灯后几秒就关掉并不是一个好的效果)。
回复

使用道具 举报

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

本版积分规则

Archiver|手机版|小黑屋|Hassbian

GMT+8, 2024-11-26 03:32 , Processed in 0.061047 second(s), 35 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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