门状态感应器是家庭安全系统中至关重要但常被忽视的组成部分。它们是一种微型装置,能够侦测门窗的开启或关闭状态,并将这些信息传递给智能家居控制中心。
通过将门感应器与树莓派上的家庭助理系统结合,您可以实时监测门状态的变动,并在智能手机上接收通知,或是在Alexa Echo智能音箱上发出警报。
接下来,我们将详细介绍如何构建并配置一个基于Wi-Fi的智能门状态感应器,以提升您的家庭安全防护级别。
所需元件
为了制作一个基于Wi-Fi的智能门状态感应器,您需要准备以下元件:
ESP8266 (D1 Mini) 微控制器 或 ESP32 微控制器 |
磁性开关(簧片开关) |
USB 电缆 (用于供电) |
连接线 |
微控制器的准备
首先,我们需要利用ESPHome插件为D1 mini (ESP8266) 编译固件。请按照以下步骤在家庭助理服务器中安装ESPHome插件,并使用它来编译和下载固件:
- 启动家庭助理,导航至“设置”>“附加组件”。
- 点击右下角的附加组件商店按钮。
- 搜索“ESPHome”,点击ESPHome插件(第一个),然后点击“安装”。
- 安装完成后,点击“启动”按钮来启动该附加组件。 务必启用“启动时启动”和“看门狗”选项。
- 点击“打开Web UI”,然后点击“+新设备”。 出现提示时,点击“继续”。
- 输入设备名称,例如“door-sensor”,然后点击“下一步”。
- 选择ESP8266,然后将加密密钥复制到安全的地方。 如果您使用的是ESP32板,请务必选择它。
- 然后点击“跳过”。您将在ESPHome Web UI仪表板中看到门感应器实体。
- 点击“编辑”并“创建”,然后将以下代码粘贴到captive_portal文本下方的YAML编辑器窗口中。
binary_sensor: - platform: gpio name: "车库门已打开" pin: number: GPIO4 inverted: true mode: INPUT_PULLUP
- 此外,请务必使用您的Wi-Fi SSID和密码修改Wi-Fi凭据。查找:
wifi: ssid: !secret wifi_ssid password: !secret wifi_password
- 将上述代码替换为以下行,并更新您的Wi-Fi SSID和密码。
wifi: ssid: "您的WiFiSSID" password: "您的WiFi密码"
- 您的代码应如下图所示。
- 点击“保存”,然后点击“安装”。
- 选择“插入此计算机”。 等待固件编译完成。 这可能需要10-15分钟。
- 固件准备就绪后,点击“下载项目”按钮。一个名为door-status.bin的固件文件将下载到您的系统中。
将固件写入微控制器
要将固件写入微控制器,请按照以下步骤操作:
- 在通过浏览器安装ESPHome的弹出窗口中,点击“打开ESPHome Web链接”或下载ESPHome刷机工具。 它适用于Windows、macOS和Linux。 为此,我们使用ESPHome Web安装程序。
- 将ESP8266 (D1 Mini) 或 ESP32 模块连接到系统,然后点击“连接”。
- 选择COM端口并点击“连接”。
- 点击“安装”,然后点击“选择文件”以从系统中选择下载的固件。
- 点击“安装”以将固件写入微控制器。 这可能需要一分钟左右的时间完成写入。
将磁性开关连接到微控制器
写入固件后,您可以按照以下步骤将磁性开关连接到微控制器:
- 将簧片或磁性开关的一端连接到微控制器上的接地 (GND) 引脚。
- 将磁性或簧片开关的另一端连接到数字GPIO4引脚,即微控制器上的D2。
将门感应器集成到家庭助理
现在,您可以按照以下步骤将此DIY智能Wi-Fi门感应器集成并添加到您的家庭助理中:
- 在家庭助理中,进入“设置”>“设备和服务”。
- 您的门感应器将被自动发现并在此处列出。 如果没有,请进入ESPHome Web UI并点击“日志”。
- 您应该在日志中看到IP地址。 记下它,然后导航至“设置”>“设备和服务”。
- 点击“添加集成”,搜索并选择ESPHome。
- 点击“设置ESPHome的另一个实例”。
- 输入IP地址并点击“提交”。 如果询问,请粘贴加密密钥。您可以在ESPHome Web UI的YAML代码中找到它。
- 选择一个房间并点击“完成”。
- 现在,点击ESPHome实体并选择门状态实体。
- 编辑详细信息,例如名称和图标,然后在“显示”下拉列表中选择“门”。
- 然后点击“更新”。
在门上安装门磁
确定磁性开关的最佳安装位置。将有线部分安装在门上,而将磁铁部分安装在门框、门框或是门楣上。您也可以根据实际需求进行反向安装,因为您需要使用USB电源为感应器供电。
或者,您也可以使用电池为其供电,但为此您需要启用深度睡眠模式,这需要使用额外的组件。
测试与最终确定
您需要测试门状态感应器。为此,打开设备,开关门,观察家庭助理仪表板上状态是否同步更新。
如果开关工作正常,您可以创建一个自动化程序,以便在门打开或关闭时在智能手机上接收通知。
利用DIY门感应器增强您的家庭安全
为家庭助理构建门状态感应器是您智能家居设置的极佳补充。 通过这个DIY项目,您可以实时了解门的开启或关闭状态,从而提升家庭的安全性。此外,它还是构建更高级自动化的基础,例如在门打开或关闭时触发灯光或HVAC系统。
您还可以设置自动化,以便在门状态发生变化时,通过智能手机上的家庭助理应用程序接收通知。