跳到正文
认知
返回认知精选
认知精选科技大约 8 小时前3
单一来源当前只有一个可用来源,尚未完成多源交叉核验

智能家居设备应无需联网也能工作

AI;DR:我写了初稿,AI 帮我编辑和重写,最后由我通读。规则、设置和演讲内容均由我原创。

TLDR;我家核心的东西都不依赖供应商的服务器。如果断网,房子照样运行。这是大概十年来的第一条规则,其他规则都是由此衍生出来的。这篇文章列出了规则,然后是我在家庭自动化方面做过的两次演讲的逐页幻灯片内容。

为什么本地化

我的 Nest 集成直到 Google 破坏了 API 才失效。这就是我现在计划规避的失败点。演讲中还有几个类似的例子:一台三星冰箱在自己的屏幕上显示 TLS 证书错误,还有一个 Camp Chef 烤架控制器,如果不连 Wi-Fi 就无法显示温度。

所有重要的东西都运行在我拥有的硬件上。那就是运行在 ESP 板上的 Tasmota、一个 MQTT 代理,以及运行在 Raspberry Pi 上的 Node-RED。我确实使用了一些云服务,主要是 Alexa 和几个 AWS 服务。Alexa 只不过是另一种切换开关的方式。如果它挂了,墙上的开关和墙上的仪表盘依然能工作。

规则

基于第一次演讲,在第二次演讲中重申:

· 没有互联网,也没问题。核心功能必须能在断网的情况下工作。Alexa 可以是接入方式之一,但绝不能是唯一方式。

· 添加新功能时不要移除旧方式。如果有人把墙开关贴住以保持智能灯泡通电,我就没遵守这条规则。

· 要敏捷。房间的使用方式不同,人员进出频繁,所以一切都必须易于更改。

· 检查你的自动化设置。我曾经有四个定时触发器同时作用于同一个花园水泵。

· 例外情况必须是例外情况。我可以打破规则,但只能是为了我六个月后依然会认同的理由。

在居住人数增加五年后添加的规则:

· 云设备必须有带日志的 API,否则不予安装。我不想要家里的黑盒子。

· 配置集中在一个地方,而不是分散在五个供应商的应用中。

· 多种接入方式:一个应用、Alexa、二维码或 NFC 标签。

· 如果我重复做同样的步骤,它们就会变成一种常规操作。

· 设备通过 MQTT 进行发布/订阅通信,而不是点对点通信。

· 除非电池更换间隔在一年或以上,否则不使用电池。没人想在凌晨 2 点更换门传感器的电池。

我收到最多询问的构建项目是 Tasmota 洒水控制器。它出现在两次演讲中,车库门设置也是如此,它已经运行了大约那么长时间。

演讲一:家庭自动化

没人需要这些东西。我做这些是因为我喜欢构建在后台运行的东西,而且每一个自动化都是一个小谜题,解开时会有真实的回报。

这是整个演讲的背景。手机、笔记本电脑、平板电脑、恒温器和锁都与云通信,而当你需要它们时,这些云可能处于在线或离线状态。连接性没问题。只是在插上设备之前,要知道你选择了什么。

大多数人从这里开始,使用一个恒温器、一个插头和一个锁,这是一个不错的起点。每一个设备都附带自己的应用和自己的账户。

你添加的每一个设备都会落在三角形的某个位置上。云摄像头既便宜又方便,但你必须用隐私来支付它的费用。我自己刷写的开关需要更多的设置时间,但作为回报,我可以将其与任何东西集成。在把设备放进购物车之前,我就已经算出了它落在三角形的哪个位置了。

有人(通常是我)会自动化一个灯,然后不得不把墙壁开关贴上,以确保智能灯泡始终有电。如果你曾经走进一个房间,开关却不起作用,这就是原因。

贴着开关的更好解决方案是像这样的墙壁 Wi-Fi 开关。墙壁开关保持正常工作,我仍然有一个钩子可以用来自动化。它的安装比智能插头更费功夫,但不需要任何人重新训练手部动作。

第一条规则,也是我绝不退让的一条。如果互联网断开,我的灯依然会亮起。

智能家居永远不会完成。房间的使用方式会改变,人们进进出出,新设备也会出现。你构建的任何东西都必须足够便宜,以便于更改。

车库降温流程从手动触发开始,并检查门是否关闭。从那里,它打开门,等待,打开风扇,或者如果降温已经在运行则发送通知。这是一个小流程,它已经多次防止了车库过热。

门传感器和干簧管都报告到一个转换步骤,该步骤设置一个全局车库关闭标志并记录到 Grafana。下面是几天真实数据的图表:21 次开启,显示每次开启时的峰值。大多数人跳过了这一部分,而这正是告诉我是否在没有打开应用程序的情况下让车库敞开的关键部分。

四个计划触发器都指向同一个泵节点。很容易出现五个自动化争夺一个设备的情况。每隔一段时间,我会查看流程,并询问它们是否仍然合理。

我多次打破过这些规则中的每一条。它们只是指南。

这里有三种表达“事件输入,动作输出”的方式。Node-RED 是我的主要工具。Alexa 日常任务和 IFTTT 风格的社区小工具涵盖了我不想从头构建的情况。

MQTT 是保持各个组件解耦的关键。温度传感器发布数据,并不在乎谁在监听。手机和后端系统都可以订阅同一个主题,传感器不需要额外的逻辑。Tasmota 帖子中的喷灌控制器就是基于相同模式构建的。

Sonoff Mini 足够小,可以隐藏在壁炉现有的布线中。该流程允许仪表板或 Alexa 来切换它。它让我进入了后面的“难忘自动化”列表,因为你可以通过语音开启的假火是一个很好的聚会把戏。

整个喷灌构建可以放在一张幻灯片上:机箱内的继电器和 ESP 模块、3D 电路板渲染图、带有 BME280 传感器读数的 Tasmota 界面、向泵提供动力的 Node-RED 调度表,以及完成的 PCB 布局。喷灌帖子有完整的详细说明,包括为什么我选择 Tasmota 而不是自定义固件。

总结幻灯片就是整场演讲的浓缩,用五句话概括。我比其他几条更频繁地不小心搞砸了第一条(不要在移除旧方式的同时引入新方式),而且每次都为此后悔。最后一条让其他四条保持诚实。“我太匆忙了”不能算作例外。

精彩集锦:心率过低时闪烁的灯光,即将下雨时跳过浇水的喷淋装置,手机出现但车没出现时打开的车库,室内花园的灯光和水,空气质量传感器启动风扇,后院景观照明,客厅 LED 灯带在暖光和冷光之间切换,基于用电量而非供应商 App 的洗衣机和烘干机通知,3D 打印机状态灯,空调和供暖监控,以及一堆 AWS 服务(Alexa、Polly、S3、IoT、Cognito)拼凑在一起。

Nest 集成获得了一篇悼词:“直到 Google 破坏了 API。”每个智能家居从业者最终都会写下这句话。

那是第一场演讲。后来“难忘的自动化”幻灯片上的几乎所有内容都出现了新的故障模式或被替换了,这就是为什么会有续集的原因。

第二场演讲:智能家居,续集

两次演讲之间过去了足够长的时间,以至于我有了一套不同的问题清单要讲。

设备增多意味着在没有我参与的情况下做出了更多决定。这有点让人不安,不过大多是无害的。

首先,快速回顾一下第一场演讲讲过的内容。

和之前一样的幻灯片,现在上面多了些图标。

其他人也在经历这些。一台冰箱的智能显示屏报出 TLS 证书错误。一个烤架控制器需要 Wi-Fi 才能告诉你温度。有人把一张便条贴在杆子上,关于一台他们忘记登出的联网打印机。这些都是真实的设备。

这些是第一场演讲中的“必须”和“应该”规则,措辞稍微更严谨了一些。我重申它们是因为部分观众没有看过第一场演讲。

规则保持不变。它们必须生存的条件变得更难了。

我最初的设置大多假设只有一个人住在房子里。当这种情况不再成立时,我不得不将一个单用户系统修补成一个多用户系统,接下来的故障……

Evidence

来源与证据

单一来源 · 1 个信源

当前仅有一个可用来源,尚未完成多源交叉核验。

发布时间
内容处理
AI 翻译 / 摘要,需结合原文核对
内容有误或来源失效?告诉我们

每天早上收到这 5 条

免注册,填邮箱即可;每封邮件都能一键退订。

提交即表示同意按隐私说明保存你的邮箱,只用于发送简报。

或用 RSS 订阅

AI 翻译、摘要和解读仅用于辅助判断;涉及重要决策时,请回到上方来源核实。