开源智能家居系统 Home Assistant 新手小白入门_永州景睿网络技术服务

开源智能家居系统 Home Assistant 新手小白入门

2021-07-11 12:56:38  浏览:4262  作者:管理员

关于智能家居,我与很多人一样,因新房装修而开始关注,2014 年智能家居市场方兴未艾,还是传统智能家居厂商的天下,同年 Apple 在 WWDC 上发布了 HomeKit 智能家居平台,到了 2015 年才在 iOS 9 中内置了“家庭”App。而在这一年,国内也诞生了小米智能家庭、阿里智能、京东微联等平台,可以说,智能家居领域我们是和世界同步的。

2016 年接触了 Homebridge 、HomeKit 、Home Assistant 等内容,我就尝试着自己也整一套试试。用户规模决定了相关领域的繁荣,网上关于智能家居的文章汗牛充栋,我自认为还是有些软硬件基础,期间却也走过不少弯路。如今跟大家分享这一点个人爱好,也不免拾人牙慧,因为官方文档就在那里,你不可能跳出这个框架之外。书写这个系列文章的初衷,就是想让更多人能够加入进来,哪怕是零基础的小白。所以我会选择一个我认为最笔直的路给你,我会添加很多的引用,还会提到一些我认为容易错的点,并且尽量不涉及代码与命令行,与其说是原创教程,不如说是一个中文版本的注释或诠释更为恰当。

有人跟我说,还是太复杂,99%的有智能化需求的客户不会花时间去整这些。


 Home Assistant 可接入 小米智能家居、美的、博联、易微联、控客等常见的智能设备

diy 硬件  https://hass.taobao.com/

技术论坛 https://bbs.hassbian.com

                https://bbs.iobroker.cn/

Home Assistant 智趣盒子 集成了系统和常用插件 购买地址

https://item.taobao.com/item.htm?id=635639747170

 

Home Assistant,简称HA或HASS,独立平台。

Homebridge,简称HB,桥梁插件。

Pi指树莓派Raspberry Pi

今天,我们只说一个疯狂的屌丝级故事,把米家的智能家居接到 HomeKit 上!分享玩转智能家居带来新的启发和收获。

将Pi接入智能家居控制系统并不新鲜,Homebridge 接入 Homekit 已经非常常见,但是由于 Homekit 本身的局限性,使其对智能家居设备的支持广度和深度不足,间接影响了用户的使用体验。例如早期 Homebridge-aqara 插件并不支持小米网关 2 的自带灯光控制,白白浪费了设备的功能。

为了摆脱这一束缚,我们可以利用另一个强大的智能家居平台:Home Assistant,Home Assistant 是一个成熟完整的基于 Python 的智能家居系统,设备支持度高,支持自动化(Automation)、群组化(Group)、UI 客制化(Theme) 等等高度定制化设置。背后又有庞大的社群基础,且不断在更新。最重要的是我们可以通过Homeassistant-homebridge 插件打通两个平台,同样实现设备的 Siri 控制。

Home Assistant 作为接入所有智能家居设备的平台,通过 Homebridge 这一桥梁,最终实现 iOS 及 macOS 设备对智能家居的设置。我们知道 Homebridge 本身可以接入部分原生不支持 Apple Homekit 的设备,但由于 Homekit 本身的局限性,“桥梁”再强大,也无法逾越其极限。

HomeKit 集成在 iOS 系统上,凭借 iOS 的易用美观以及 Siri 操控家居的炫酷感,深得大众喜爱。HomeKit 正版授权的硬件的成本都比较高昂,唯有把目光投向同样把脚踏入智能家居的小米。

Home Assistant存在的意义

打个比方来说,每个人都能单独过桥到对岸,但是速度始终有限,如果我们把人装进车里一起运送过桥,效率则更高,同时多了车内这么一个空间,这里的“车”就可以看作是 HA。HA 本身作为一个独立的平台,有能力集成大量量产或 DIY 的智能家居设备,并且拥有独立的控制前端,在层级上来说是和 Appple HomeKit平台平起平坐的大 Boss。换言之,通过 HB 接入 Homekit 只是这个平台应用的一部分,对于其他非 Apple 生态用户,HA 也同样给予其完整丰富的智能家居体验。

安装Home Assistant和Homebridge

HA 支持大部分平台,包括 Docker、macOS、Linux、Windows等。简而言之,只要你的主机能跑 Python,基本就能安装 HA,本篇以树莓派 3B型号为例。

初始安装HA

在树莓派安装 HA,有 3 种方法供选择:以树莓派官方系统 Raspbian 为根系统,再通过指令安装;直接安装集成了 HA 的 Hassbian 操作系统;直接安装最新高度集成系统 Hass.io。

以上 3 种方法从性能上来说并无二异,均能实现 HA 全部功能,Hassbian 实际上亦基于 Raspbian ,唯一需要纳入考虑的是图形化操作界面的需求。原生 Hassbian 没有 GUI,但是我们可以手动进行安装。对于刚入门的新手和想摆脱大量代码的朋友,方法推荐度依次为:3 > 2 > 1。

Homebridge 安装

HASS 本身可以通过网页控制,这也赋予了其全平台的控制能力。当然,想必不少人还是冲着语音控制功能考虑智能家居的,对于 iOS 用户来说,想要更自由地使用 HomeKit,HB 依然是绕不开的环节。

安装 HB 的目的在于通过 HB 打通 HA 和 Apple Homekit 两大平台,实现联动。HB 提供一行安装指令:sudo npm install -g --unsafe-perm homebridge

但是安装成功率比较低,推荐大家使用下面的手动安装指令。

sudo apt-get install git make

sudo apt-get install g++

curl-sL https://deb.nodesource.com/setup_7.x | sudo -E bash -

sudo apt-get install -y nodejs

sudo apt-get install libavahi-compat-libdnssd-dev

sudo npm install -g --unsafe-perm homebridge hap-nodejs node-gyp

cd /usr/local/lib/node_modules/homebridge/

(注意这里如果显示不存在文件夹,替换成 cd /usr/lib/node_modules/homebridge/)

sudo npm install --unsafe-perm bignum

cd /usr/local/lib/node_modules/hap-nodejs/node_modules/mdns

(注意这里如果显示不存在文件夹,替换成 cd

/usr/lib/node_modules/hap-nodejs/node_modules/mdns)

sudo node-gyp BUILDTYPE=Release rebuild

安装完成后,建议大家直接输入homebridge运行一次 HB,以生成示例配置文件,然后 Ctrl + C 退出进程。

接着,安装“homebridge-homeassistant”插件,实现平台联动:

sudo npm install -g homebridge-homeassistant

智能家居设备接入

大多数人初接触 HASS 的时候经常一头雾水,原因是 HASS 的配置体系十分混乱,一个设备的完美接入需要涉及多个配置文件。实际上,系统架构不清晰也是 HASS 的最大缺点,因此,在开始配置教程前,先捋一捋 HASS 的配置框架。

HASS 配置框架

HASS 的核心配置围绕configuration.yaml文件展开, 在这里你可以进行时区、度量单位、开发者模式、主题选择等等基础配置。最为重要的是,你将在该文件内完成所有设备的接入。

HASS 的运行依赖于一个个相对独立的功能组件(Components),比如小米米家平台就可以视作一个组件。有些时候,部分设备或者功能仍未得到 HASS 的官方支持,你必须在主目录下新建自定义组件custom_components文件夹,添加相关的设备支持文件。完成上述的文件修改,加上 HB 的配置,你就可以自如控制所有智能家居设备了。

然而,使用一段时间后,可能会觉得设备太多显示凌乱,想给界面换个风格,或者configuration.yaml文件看起来要炸了。此时,可以考虑把部分配置剥离出去形成独立的文件。例如你开启了“设备追踪功能”(Device Tracker),那么HASS将在主文件下自动生成 known_devices.yaml 文件,将在这里配置需要追踪的设备。

主文件设置

打开树莓派的 SMB 服务,通过 SMB 打开 HASS 主目录。(macOS 在 FInder 左侧栏“共享的”接入,Windows 在计算机-地址栏 里直接输入//树莓派地址即可跳转)

打开configuration.yaml,文件默认包含如下内容,我们按需修改:

homeassistant:

#经纬度

latitude: 32.87336

longitude: 117.22743

#海拔

elevation: 430

#度量单位,默认米

unit_system: metric

#时区

time_zone:Asia/Shanghai

#系统昵称,显示在主界面顶部

name: Home

正常情况下,剩下的部分便无须变动了。现在小试牛刀添加雅虎天气服务:

weather:

- platform: yweather

woeid:2151849

其中,woeid是城市代码,打开雅虎天气官网输入城市后搜索,url的最后几位数字便是:

https://www.yahoo.com/news/weather/china/shanghai/shanghai-2151849

保存,重启 HASS。

第一个 HASS 组件接入成功,你应该大概已明白 HASS 的操作原理,HASS 支持上千款智能家居设备,使用者可以寻找其他设备按上述方法接入。

如果你是果家用户,需要 Homekit 服务,那么我们还需要转到 Homebridge 进行相关设置。

Homebridge 设置

执行指令前,请先运行一次 Homebridge。注意:如果添加了开机自启任务,勿重复运行 Homebridge,否则会出现端口占用错误。

Homebridge - homeassistant 插件版本为 2.3.0 以上的,特别注意添加最后一行配置,否则家庭 APP 内设备为空。

cd /home/pi/.homebridge

sudo nano config.json

{

"bridge": {

"name": "Homebridge",

"username": "CC:22:3D:E3:CE:30", //树莓派 mac 地址

"port": 51826, //运行端口

"pin": "123-45-678" //连接密码,自行设定

},

"platforms": [

<p style="margin: 0px; padding: 8px 0px; outline: 0px; text-align: justify; color: rgb(0, 0, 0); text-transform: none; text-indent: 36px; letter-spacing: normal; font-family: "Microsoft YaHei", PingFangSC-Light, helvetica; font-size: 18px; font-style: normal; font-weight: 400; word-spacing: 0px; white-space: normal; box-sizing: border-box; orphans: 2; widows: 2; -webkit-font-smoothing: antialiased; -webkit-text-stroke-width: 0px; text-size-adjust: 100%; font-variant-ligatures: norma

评论区

共 0 条评论
  • 这篇文章还没有收到评论,赶紧来抢沙发吧~

【随机内容】

返回顶部