家庭自动化是一个滑坡;我已经警告过你了!在这个由多个部分组成的系列文章中,我将讨论使用开源项目 Home Assistant 进行家庭自动化。这篇介绍性文章将介绍我使用 Home Assistant 的历程,该应用程序的功能以及它为什么重要。
我的旅程是如何开始的
不久前,当我开始这段旅程时,我的目标并不远大。我只是为了解决一个需求。你看,我有一个相当大的 家庭实验室。虽然没有一些著名的 YouTube 用户的规模那么大,但我有八台机器,内存从 16GB 到 96GB 不等。我有一个 Netgear 10G 以太网交换机作为我的网络基础设施的骨干。但是,我有一个小问题。有时,这个交换机的状态表会填满,然后它就会崩溃,导致网络瘫痪。这是该型号的一个已知问题(尽管我事先并不知道)。在不更换交换机的情况下,解决这个问题的唯一方法是将其断电几秒钟,然后再重新通电。
这似乎没什么大不了的。尤其是我住在公寓里,所以我甚至不需要上下楼梯来做这件事。但是,我在红帽担任高级 OpenShift 顾问,这意味着我经常出差(至少在新冠疫情之前是这样)。我几乎每天都使用我的实验室进行与工作相关的活动,我的家人也使用网络进行玩游戏、观看蓝光收藏等活动。因此,当我在没有物理访问权限时网络崩溃,这真是一个巨大的麻烦。我的解决方案是购买一个智能插头,并将其连接到一个完全不同的网络,该网络上没有任何其他设备,并且与其他设备完全隔离。如果 Netgear 交换机需要重启,我应该能够远程访问智能插头来重启交换机。
我远离云端的旅程
出于对隐私的考虑,也许接近于“锡箔帽”的程度,我对任何“云”连接的东西都感到不舒服。我们运行 Plex, Kodi, Nextcloud 以及许多其他服务,因为,嗯,我就是“那种人”。但我并不是“反云”。事实上,我大部分的日常工作都是与三大云服务提供商合作:AWS、Google Compute 和 Azure。但是,当涉及到搭建我依赖的服务时,我有一种几乎非理性的需求,那就是在本地托管这些服务。
在进行了大量的挖掘并与我的同事 Alex Kretzschmar(他也是 Self-Hosted 播客的主持人)交谈后,我发现了可用于某些无线芯片组的替代固件项目,例如 Tasmota 和 ESPHome。我将在以后的文章中介绍不同的芯片组和协议(Zigbee、WiFi、Z-Wave 等),但可以肯定的是,您不必购买依赖于云的产品。有一些在线商店,例如 CloudFree,出售预刷了 Tasmota 固件的设备。甚至还有像 Shelly 这样的公司,生产具有可选云组件的高质量产品,但买家保留本地控制权。
总之,回到我的故事。我买了一个插头,刷了固件以运行 Tasmota,偶尔远程重启我的交换机,事情就结束了,对吧?嗯,如果是这样,我想我就不会写这篇文章了。我目前有 43 个物联网 (IoT) 设备——从我自己构建的传感器到智能灯泡、智能 LED 灯带、红外发射器等等。还记得我说过家庭自动化是一个滑坡吗?
我有没有提到我几乎没有任何焊接、电子理论/维修或任何与家庭自动化相关的经验?事实上,除了 Linux 和相关技术之外,我是我认识的最不“动手”的人之一。当然,我可以在墙上打个洞,或者在木板上拧一些螺丝,但在 30 岁之前,我拥有的唯一工具是 Dremel 和一些用于安装计算机组件的螺丝刀。
为什么要提到这个?是为了让您确切地了解我开始时有多么落后。如果我能做到,你也能做到!
集中式本地控制
太好了,我有很多 IoT 设备,我可以从手机上切换设备的开关。有一段时间,我只是满足于调用 Tasmota Web UI 并使用其稀疏但功能齐全的控件。

(Steve Ovens, CC BY-SA 4.0)
甚至我的妻子,感谢她的意愿和耐心,在我不断学习和尝试新事物时,也习惯了使用 Tasmota 界面。过了一段时间,随着设备数量的增长,这种管理方式变得不可持续,并且根本无法很好地扩展。
我开始四处打探,了解其他人是如何管理他们的“智能家居”的。说实话;在这一点上,它与其说是一个智能家居,不如说是一小部分但不断增长的我们可以远程控制的灯。
该领域的大型开源项目是 openHAB 和 Home Assistant。本系列文章不会以任何方式比较它们。部分原因是,我没有资格进行比较,因为我只在过去一年左右的时间里使用 Home Assistant,而且还因为,为了让我能够放心地进行这样的比较,我必须将 openHAB 设置为即插即用的替代品,坦率地说,我在 Home Assistant 上投入了太多,无法探索这条途径。
关于 Home Assistant
你可能想知道 Home Assistant 是什么以及它能提供什么。想象一下,一栋房子像科幻电影中那样对居住者做出反应。也许你的卧室里有几盏床头灯、一台电视、一些落地灯、一台风扇和一些其他小玩意。当你走进卧室时,灯会自动亮起。没什么大不了的,你会说;我们已经拥有这项技术一段时间了。当然,你是对的。但是,如果现在时间很晚,你的另一半已经睡在床上了呢?如果你走进卧室时灯亮了,你可能会受到冷遇。糟糕!
如果,相反,当你在晚上走进房间时,落地 LED 灯会亮起柔和的光芒——足以让你在房间里走动而不会摔倒,但又不会亮到吵醒睡着的伴侣。你爬上床,几分钟后,落地灯熄灭。这就是 Home Assistant 可以为你做的事情。
“等等!”我听到你在显示器前尖叫。“我可以让 Alexa 或 Google 为我关灯。”你又说对了,当然。但是,当这些服务遇到某种中断时会发生什么?此外,你可能需要考虑你需要多大声说话才能触发收听设备。还记得我说过的关于隐私的事情吗?你真的想让这些大公司了解你的习惯吗?即使抛开隐私问题,也要考虑到其他人也可能使用你的家。这意味着访客需要知道你可以使用哪些命令来控制你的智能设备。
市场上许多“智能”产品可以设置定时器、计划和场景,但它们都不能真正对任何给定情况做出反应。这就是像 Home Assistant 这样的家庭自动化中心发挥作用的地方。
Home Assistant 的核心是一个软件,它可以帮助集中管理你家中的所有传感器、小玩意和设备。通过让所有这些产品协同工作,你可以设置各种原本不可能实现的条件。
是否有人进入房间?现在是否是特定时间?房间是否比某个值更热?是否有人在床上?所有这些数据点本身用途有限,但组合在一起,你可以使用它们来设置黄昏时灯光的亮度,因为房间温度高于 26 摄氏度(80 华氏度)而打开风扇,但不要打开 Steve 的台灯,因为他的床位有人占用。
如果你能想象得到,你就可以使用 Home Assistant 和正确的传感器输入来实现它。
可持续且开源
我喜欢 Home Assistant 的一点是,它似乎正在达到各个供应商广泛采用的临界质量。但对我来说更重要的是,它背后的公司 Nabu Casa 为社区创建了一个焦点。该公司直接从社区聘请了开发人员,而且即使你不支付月费,也不会受到惩罚。Nabu Casa 的收入来自增值项目,例如能够轻松地从世界任何地方访问你的本地 Home Assistant。
这很重要,因为它意味着该项目有一个前进的道路,并且它有可持续的收入用于未来的开发。与“开放核心”模式不同,Home Assistant 完全是开源的,这意味着如果社区强烈反对 Nabu Casa 的方向,它可以将 Home Assistant 分叉到当前状态,并采取不同的道路。因为我的家人选择让这款软件成为我们与设备交互方式不可或缺的一部分,所以 Home Assistant 拥有收入来源并且完全开源对我来说非常宝贵。
在下一篇文章中,我将讨论 IoT 设备的一些常见标准以及本地控制的好处。未来的文章将逐步介绍安装 Home Assistant 的基础知识、设置必要的附加组件(例如,MQTT)、Node-RED、社区商店、制作备份等等。
同时,如果您想深入探讨某些特定内容,请评论或在 Twitter 上给我发推文。如果我用过,我可以谈论它。
4 条评论