跨品牌智能家居控制_从原理到实现_HomeAssistant

2024-02-07  本文已影响0人  xieyan0811

项目地址:https://github.com/home-assistant/core

Star:67 K

1 引言

最近去南方玩,住了一些智能酒店,自动开关电视、窗帘、灯、空调,还挺好用的,尤其喜欢关灯这功能。先不说它的理解能力(对同一命令的不同描述),单讲控制能力,还比较粗糙。比如:无法细化具体开关哪个灯;有的只能控制部分电器;有的只是把语音控制转换成遥控器按键,完成一个功能需要多个步骤…… 更喜欢住智能酒店的原因主要是:这些酒店多是这两年建的,比较新、比较干净。

对智能家居产生了一点兴趣。现在的智能家居用品真的不贵,比如小米的产品,就想要不也把自己家改造一下。刚好在 github 的趋势榜 top15 中看到了智能家居工具 Home Assistant,下面就一起来了解一下智能家居系统。

Home Assistant(后简称 HA)诞生于 2013 年,是一款基于 Python 的智能家居开源系统,它的主要功能是将不同品牌的智能家居设备连接起来互联互通,并将本地控制和隐私放在首位。

2 背景知识

2.1 使用方法

一般的操作流程是:用户通过语音与智能助理进行交互,或者用手机以及其它输入设备进行控制;通过主控设置或者直接与智能硬件连接;智能硬件可以作为输入产生数据如温度传感器,也可以作为输出设备接受控制如空调;用户还可以在主控中进行设置,比如在低温时打开空调,以实现智能家居的自动化。使用场景包括:智能音箱、手机、手表、PC、家电、汽车、交通等。

2.2 设备通讯

我们的计算机无法与智能设备直接通讯,常需要一些附加设备。智能家居有很多连接方式,目前主要使用的有:wifi 连接、蓝牙连接和 Zigbee 连接。

3 功能和用途

3.1 用途

Home assistant 是一种智能家居总控软件,它通过一个软件控制各种智能硬件。轻松实现设备的语音控制、自动化;集中管理各品牌的智能家居,避免了在多个应用程序之间来回切换。当前的版本已经支持了 1000 多个模块,如果需要添加较新的设备,可以通过插件商店 HACS 安装新插件。此外,添加设备和设置自动化只需要在图形界面上进行操作,无需修改配置文件。

3.2 功能

4 部署

我觉得,开始使用时,与其弄个树莓派从头开始学习刷系统,不如直接在计算机上安装 HA,外加一些 USB 设备来支持 ZigBee、Z-Wave 和红外设备,这样省时省力省钱。等到设备都能正常使用后,再考虑购买嵌入式硬件。

4.1 源码

git clone https://github.com/home-assistant/core

代码分析:

4.2 部署

$ docker pull homeassistant/home-assistant:latest
$ docker run --rm -d --name homeassistant -v /exports/data/homeassistant/config:/config -e TZ=Asia/Shanghai -p 8123:8123 homeassistant/home-assistant:latest

docker 具体参数请参考:https://www.home-assistant.io/installation/linux

此时,可以在 8123 端口打开服务:

(设置时建议科学上网)

主站:https://www.home-assistant.io/

插件商店:https://hacs-repositories.web.app/

(建议科学上网,并使用英文搜索,如:xiaomi)

加入设备方法:设置 (左)->集成 (上)->添加集成 (右下)

5 一些想法

理想很丰满,现实却很骨感。目前来看,由于硬件的种种限制,能把灯和空调控制好就不错了。

随着自然语言大模型应用的进展,对语言理解的大幅提升,以及自动将复杂问题细化成简单问题。智能家居技术可能很快就能普及到普通家庭中。

统一管理不仅是智能家居领域的问题,几乎我们所有的数据都需要统一管理,也许能实现更广泛意义的互联互通和智能助手。而 HA 提供了很好的框架,让智能家居系统不再是一个黑盒,而是可以被我们所用。也许有一天,我们可以用某种方式把自己的”脑子“也作为模块接入。

6 参考

智能家居达人QA专栏篇十四:homeassistant最新教程,十几块钱DIY的空调伴侣升级版,增加更多选择和可玩性

好玩的开源项目 Docker下部署HomeAssistant智能家居系统

万物皆可HA?教你把各种智能设备接入Home Assistant 图文教程

上一篇下一篇

猜你喜欢

热点阅读