Skip to main content

运用 Home Assistant 打造平面热力图:人时统计范例

想要直观地了解空间内的人流动态?通过 Home Assistant 结合 平面热力图,你可以轻松达成这个目标。这套方案能让你将人时数据叠加在平面图上,一目了然地掌握空间的使用情况。

Home Assistant 不仅能够用于收集和管理各种设备数据,还能通过其强大的集成功能,与其他平台无缝连接。通过集成热力图插件可以直接利用现有设备数据。 如果你的设备已经连接到 Home Assistant,就能轻松地将它们的数据整合到可视化图表中,不仅简化了设置过程,也最大化了现有智能家居生态系统的实用性。

note

平面热力图(Floorplan Heatmap)是一种将数据可视化叠加在建筑平面图或室内布局图上的技术。它通常使用从冷色调(如蓝色、绿色)到暖色调(如黄色、红色)的颜色编码,来直观地表示特定区域的数据强度、密度或频率。例如,它可以显示某个房间的人员活动频繁程度、特定区域的温度分布等。

sensecraft-model-face-detection

人时统计范例

你需要有:

Grove Vision V2

  1. 请前往 SenseCraft AI 平台,登录后,点击“视觉工作空间”下的“Grove Vision AI V2”并选择连接
  2. 在弹出的窗口中,选取你希望连接的 Grove Vision V2 设备。

connect-grove-vision-v2

烧录模型

选取合适的模型。如果不是人脸检测或人员检测,你可能需要烧录一个能识别人类特征的模型。例如,选择人脸检测并确认部署。

sensecraft-model-face-detection

双击模型,确认后,进行烧录部署。

配置网络信息

  1. 在主面板右侧点击网络配置
  2. 输入你的 Home Assistant Wi-Fi 信息和 MQTT 服务器地址(通常为 HA 地址:1883)。
  3. 点击保存
note

务必记录这个客户端 ID(可以自定义客户端 ID) 以便后续使用。

sensecraft-wifi-configuration

NodeRED

由于 Grove Vision V2 属于非标准设备,我们目前需要通过 Node-RED 来完成设备注册与数据显示。

首先,你需要在 Node-RED 中导入人时统计.json,再继续下面的步骤:

1
确认 MQTT 配置

修改“Publish HA Data & Discovery”节点的服务信息,将其设置为你的 Home Assistant 地址(例如 192.168.101.160)。如果你使用的是 Home Assistant 内置的 Node-RED 附加组件,则连接到 mqtt://localhost

2
修改设备 ID

在“Know Camera IDs”节点中,修改 payload JSON,并加入多个客户端 ID(如果你有多个设备)。

3
注册设备

点击“Trigger HA Discovery for Known Devices”来注册设备,这个时候可以在概览页面中看到一个不可用的设备实体。

4
查看数据

将“Start”节点的 msg.topic 设置为 grove_vision_ai_v2_61003e7c,然后点击Start。完成后,你就可以在 Home Assistant 中查看数据了。

Home Assistant

安装插件(HACS)

访问你的 HACS 页面,例如 http://homeassistant.local:8123/hacs/dashboard

hacs-custom-repositories

在 HACS 中添加 Custom repositories,并添加以下地址:

https://github.com/Seeed-Solution/lovelace-heatmap-card

hacs-add-repositories

搜索“Heatmap Card”,并下载插件:

hacs-search-download

安装后需要重载你的浏览器,在提示框中点击 RELOAD 即可。

添加面板

在任意一个仪表盘中,添加你的热力图。比如我们在名为 人时统计统计 的仪表盘中进编辑。

ha-edit-panel

ha-add-card

点击添加卡片,并滑动到下方,找到自定义卡片下的 Heatmap Card,点击添加。

ha-choose-card

接入数据

lovelace-heatmap-card-config

这个插件的配置项中有四部分:

  • 色块样式(Radius、Blur)
  • Points - 不同点的坐标及信息
  • Display Options - 显示数据图例
  • Show Point Labels - 显示每个点的标签

在卡片配置中,将其中一个 Points 中的 entity_id 设置为你的设备实体 ID(例如 sensor.grove_vision_ai_v2_61003e7c_current_people_count)。

完成后,点击保存。


完成以上步骤后,你就可以动态的在 Home Assistant 中看到热力图数据的展示了。

Loading Comments...