开源的家庭智能控制系统 Home Assistant

·  阅读 2675
原文链接: www.jianshu.com

Home Assistant 有着基于web的可自定义的良好UI,方便从多种终端使用:手机、平板、电脑,如首图。对于安卓可以在桌面设置网页书签作为快速入口。

Home Assistant 可以连接各种家庭智能设备——灯、开关、门、风扇、响铃、温湿度计、音响、安防监控设备、智能电表等等,将它们纳入智能系统,集中控制设备并追踪它们的状态,并让它们互相联系。这使得用户可以在单个界面上控制各个不同厂家的不同智能设备,而不是通过不同app或其他接口,也为家庭自动化提供了巨大的可能性比如

  1. 早晨到起床时间,自动打开灯,打开窗帘,播放我喜欢的音乐。
  2. 我比较健忘,经常在出门上班时忘记关闭某些东西的电源,这会比较危险,那么我可以利用Home Assistant使得我离开家关闭门边灯(或客厅灯)时自动切断一些设备的电源。
  3. 回家时为我自动开灯,有定时煮好的饭等着我。
  4. 上床睡觉时,自动关闭用电设备,让我没有后顾之忧。凌晨起夜时,Home Assistant自动为我打开卫生间的灯,并调至弱光状态,不使强光刺激我,并在我回到床上之后自动关闭。
  5. 天冷了,当我在家时,温度检测器检测到室内温度低于一定度数后,控制房间里加热器加热直到我身边的温度检测器达到指定温度,并保持。

重要的是这些都是个性化的,我可以定制一个派对按钮,一键开启设置好的灯光和音乐效果。

目前大部分(美国)市面上的智能设备都与Home Assistant 兼容。如果没有也可以求助于优秀的Home Assistant 社区。


轻触Home Assistant上的按钮打开右上角的Lava灯

手机上通过某厂商app直观地控制灯的颜色

在Home Assistant上同样可以直观地改变灯的颜色

在Home Assistant上直观地掌握家庭温度变化

Home Assistant基于python开发,使用Apache 2.0许可协议(一开始是MIT协议)。主要使用了asyncio异步框架,也是学习python异步事件驱动系统的良好材料。

Home Assistant 的安装简易。linux系统在命令行中pip3 install homeassistant即可安装,使用hass --open-ui执行。在windows上先安装python3,然后在命令行中pip install homeassistant安装,使用python -m homeassistant --open-ui执行。
目前较好的方案是使用一个联网的树莓派来搭建Home Assistant。

通过配置文件,我们可以配置Home Assistant。yaml配置文件所在位置:
Linux ~/.homeassistant Windows %APPDATA%/.homeassistant
yaml语言并不困难,主要形式是缩进和"键:值"对。在官网上有详细的配置方法说明和示例。

在Home Assistant 中,每个设备都拥有状态:比如灯的开关、亮度、颜色,音频设备的播放暂停、响度、曲目;事件也是主要构成部分:比如灯的状态改变,主人回到家(移动、位置检测),孩子到学校了等等。


家庭监控设备的实时图像也可以从Home Assistant上看到

智能化配件

  • 智能开关:可以将一些老旧设备连接上Home Assistant。(其实不少设备加上一个智能开关就足以满足大部分日常需求)。

智能开关
  • 门开关感应器:门的打开可以作为触发信号,可以实现主人回家开门则客厅的灯打开、假期出去玩门被打开则自动报警等类似自动化流程。

    门开关感应器

资料


核心流程
收藏成功!
已添加到「」, 点击更改