homeassistant 门窗传感器+人体传感器如何 如何判断是离家还是回家

272 天前
 worldqiuzhi

现有设备 Aqara 的门窗传感器和人体传感器 各一个 智能灯一个

门窗传感器装在门上,人体传感器装在门的上方

预期的效果是:

  1. 回家:进门随手关门,触发条件=门窗传感器识别到关门,环境条件=人体传感器识别到有人移动 判断为回家 后来优化 环境条件加一条 智能灯未关 可以防止开门拿外卖或临时出门误触发

  2. 离家:出门后关门,触发条件=门窗传感器识别到关门,环境条件=人体传感器识别到无人移动,判断为离家

存在的问题:

  1. 回家模式暂时无问题
  2. 离家模式无法执行 原因:人体传感器只能识别最近 1 分钟以上有无人移动 导致不管是进门还是出门都能识别到有人移动,不存在最近一分钟无人移动的状态。
  3. Aqara 自己的 APP 上人体传感器可以自定义判断最近几分钟无人移动(最小一分钟),homeassistant 接入后只能判断有人移动和无人移动 自定义分钟无法设置

尝试改进离家模式:

触发条件=门窗传感器识别到关门 动作:添加大于 1 分钟的延迟( 1 分钟内状态还是会是有人状态),然后判断是否有人,如果无人 就开启离家模式 但还是存在问题 就是进门 1 分钟内大多数情况我已离开门附近,传感器已经识别不到我了 导致人在家开启了离家模式

再次尝试改进 就是进门延迟 1 分钟 没有识别到人移动,但智能灯已开(回家模式自动开的),就不开启离家模式 只有当关门关灯没人移动才开启离家模式 但在开灯的状态下 还是开启了离家模式

求教:有什么优雅的判断回家离家模式的方法吗

  1. 不能换智能门锁 不能换智能门锁 不能换智能门锁
  2. 最好使用现有的设备 1 个门窗传感器 人体传感器 智能灯
  3. 如果无法实现可以加设备 尽量便宜的
  4. 尽量无感的 不是按键模式
  5. homeassistant 接入的传感器没有 app 上功能多 如何处理

去掉环境条件后修改

3472 次点击
所在节点    问与答
69 条回复
kaedeair
272 天前
@worldqiuzhi #18 带无线的 openwrt 应该可以做到,可以配置 device tracker ,但是我的不带无线,无论是 luci 和 ubus 都失败了,如果你的无线是华硕,网件这种国外厂应该是有对应集成的
sujin190
272 天前
其实判断手机是否断开 wifi 实现更容易吧,误判断也更少,hss 直接连接 openwrt 来获取对应 mac 是否离线,我的家配置是否离家可以直接添加对应 mac 来判断,后续就可以用我的家的状态通过自动化来驱动其他设备运行,我现在就是这么干的,很好用
sujin190
272 天前
@kaedeair #21 可以不用带无线吧,openwrt 下面连接的 wifi 配置为 ap 模式就好了,除了在成品路由器上刷 openwrt ,单独软路由的 openwrt 一般都要用单独使用成品 wifi 的吧,说实话还是 wifi 路由器自带的系统好用,再刷个 openwrt 不管咋还是不咋好用
zhouweiluan
272 天前
我之前也弄了一套,一个人住的时候还行,两个人住的时候就废了,乱七八糟的,有时候朋友来串门识别也乱糟糟。
后来还是上了 Aqara 的智能门锁完美解决。
kaedeair
272 天前
@sujin190 #23 会卡在 hostpd 获取设置
sujin190
272 天前
@kaedeair 不会的吧,我现在软路由 lede 的版本,wifi 是华硕设置为 ap 模式,不过 hss 和 lede 兼容有点问题,会报个错,好像是无法正确的识别 lede 的版本号,lede 改的和 openwrt 的版本号信息似乎有些不一样,我都是直接去 hss 代码里直接改了这个错似乎就完全正常了,现在一直这样用很久了挺好的
Suonna
272 天前
可以买个 ainice 的人在传感器,里边有通过蓝牙检测你人在不在本空间的功能
revlis7
272 天前
@worldqiuzhi

开门 + 室内人移动 + 智能灯开启状态 = 回家

室外人移动 === 关灯 (不管回家还是出门触发,恒定执行关灯操作)

这样可以吗?唯一的问题就是室外要找一个不容易误触的位置
n2l
272 天前
别挣扎了,除了门锁,其他都不成熟。
Biggoldfish
272 天前
利用手机连接 WiFi 判断比较麻烦的是无法区分睡觉还是离家(睡觉时飞行模式),常见的 motion sensor 或者 presence sensor 对于睡眠状态也很容易出现连续几十分钟判定无人的情况
worldqiuzhi
272 天前
@revlis7 关键我回家也会触发室外人移动 因为人体传感器记录的是最近 1 分钟有人移动
revlis7
272 天前
无人移动有一分钟延迟正常,但是判断人动不是实时的吗?我的就是实时的呀
icegaze
272 天前
门里门外各装一个近距离主动式红外感应器 A 和 B (就是冲水尿盆上用的感应器)

a-b 先后触发就是离家
b-a 先后触发就是回家
单独一个触发都不予理睬就行了

红外的很好,不像射频无线的容易有隔墙的干扰误触发…
kaedeair
272 天前
@sujin190 #26 必须要有 wifi ,他是靠监控 hostapd 工作的,软路由上面没有这个东西,我的 ap 是 tplink ,华硕我看见了有对应的集成,是不是自动扫描到了华硕
SimonOne
272 天前
🙈加声控,学日本人干事前喊一声。回家:我回来了;离家:我出去了;吃饭:我开吃了;睡觉:我睡了。
letmatte
272 天前
对接路由器,手机--家庭成员 绑定,判断指定手机是否在线
kaedeair
272 天前
@sujin190 #26 有可能是版本的问题,不支持 luci2.0 ,我的 openwrt 版本是 23.05
sujin190
272 天前
device_tracker:
- platform: luci

@kaedeair #34 还真不是,配置的 device_tracker 的 platform 是 luci ,就是从 lede 来的

我是又在手机上安装了 GPS 记录器,频率设低一点再设置禁止杀后台,hss 同时设置跟踪 wifi 和 GPS 记录器,好像同时离开才有效,通过手机的 GPS 记录器还能实现家附近和公司附近之类的逻辑
worldqiuzhi
272 天前
@icegaze 买的 aqara 人体传感器 不管是进门还是出门 两个感应器都有人移动 判断无人移动不行 因为只能判断最近一分钟 最近一分钟两个肯定都触发了。 单独一个触发的情况可能不存在(只有可能是想出门没出门想进门没进门,拿外卖会触发两个) 判断 a b 先后触发 不知道行不行 ha 里自动化怎么判断 ab 先后触发
sujin190
272 天前
@kaedeair #37 https://www.home-assistant.io/integrations/luci/

luci 的 platform 调用的是 luci-mod-rpc

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/967293

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX