如何自制无线水箱警报器

自制无线水位警报:让您的生活更轻松

无论您拥有的是花园、游泳池还是储水箱,一个无线水位警报器都能让您安心。本文将介绍如何构建一个可以根据您的特定需求定制的DIY无线警报器。

为什么要自制无线水/盐罐液位警报器?

我们之前分享过一个使用超声波传感器的DIY水位传感器项目,该项目是为Home Assistant构建的。我们构建的设备是一个独立的单元,需要通过电线和电源直接连接,并且依赖于Home Assistant软件才能工作。

然而,我们今天要构建的模块则不同,它由一个发射器模块和一个接收器模块组成,这两个模块互相通信,以无线方式传输数据,从而实时显示水位或盐位。 这不需要Home Assistant来工作或显示液位,但如果需要,您可以轻松地将其集成到Home Assistant中。

通过构建一个无线水箱液位指示器兼警报器,您可以避免许多与有线警报相关的问题:

  • 安装更简便,无需在墙壁或天花板上穿线。
  • 您可以构建一个安装在水箱上的发射器,然后构建两个或多个接收器,并根据需要在不同位置轻松安装。
  • 由于没有电线,您不需要经常检查是否有磨损。
  • 无需电线可以为您节省额外费用。
  • 接收器可以放置在任何位置,不受有线水位警报/指示器的限制。
  • 不存在电压泄漏或断电的风险(避免触电风险)。

您需要的材料

以下是制作DIY水位传感器兼警报器所需的物品:

  • ESP8266 微控制器,如NodeMCU 或 D1 Mini
  • 433MHz 无线发射器和接收器模块 – 您可以直接购买或使用 HT12E/HT12D 编码/解码 IC 和 433MHz 发射器和接收器电路模块自行构建
  • 面包板或PCB(印刷电路板)
  • 跳线
  • 电子元件(更多详细信息请参考电路图)
  • 烙铁和焊锡
  • 螺丝刀和钳子
  • 用于发射电路的4.2V锂离子电池

第一步:无线水箱警报器的电路设计

请参考以下电路图和照片来连接或焊接所有必要的组件。在继续下一步之前,仔细检查电路图以及与面包板或PCB上的组件连接是否有错误或缺失的连接。

433MHz 水箱液位接收器电路图:

在面包板上构建的完成的433MHz水箱液位接收器电路:

433MHz 水箱液位发射器电路图:

在面包板上构建的433MHz水箱液位发射器电路:

在发射器电路中,您可以连接四个浮球开关(将公共线连接到所有浮球开关,然后连接数据线),并将它们放入水箱中,如发射器电路图所示。当水位达到一定水平时,浮球开关将打开并向接收器模块发送高电平信号,然后接收器模块将点亮相应的LED。

您也可以使用金属条并将其粘贴在水箱的内表面上,而不是浮球开关。但是,如果您要将水用于饮用,请使用浮球开关或构建超声波液位传感器。

第二步:测试无线水箱警报器

在安装无线水箱警报器之前,务必对其进行彻底测试,以确保其按预期工作。准备一个空桶,并将所有浮球开关放入桶中。确保它们彼此处于不同的水平,如发射器电路图中所示。

然后将电源连接到发射器和接收器模块。开始向桶中加水。随着水位上升,第一个浮球开关应该打开,您应该看到接收器模块上的相应LED开始发光。同样,一旦其他浮球开关开始漂浮在水面上(随着水位上升),所有的LED都应该亮起。

接下来,您应该将接收器和发射器单元分开一段距离,并检查它们在您的场所内的通信范围。确保数据成功接收,并且LED灯根据传输的数据进行打开/关闭。

如果需要更大的范围,请尝试安装天线(如果模块附带了天线,或者您可以为发射器和接收器模块购买单独的天线)。

第三步:在水箱中安装无线水位警报器

一旦您对测试结果感到满意,就可以开始安装无线水箱警报器了。务必将发射器模块放置在水箱外部的安全外壳中,最好是塑料容器或用硅胶密封的3D打印外壳,以避免天气影响。

第四步:与Home Assistant配对以实现自动化

此外,您还可以将NodeMCU或D1 Mini微控制器连接到接收器电路,从而使您的无线水箱系统变得更加智能。通过将电路与Home Assistant配对,您可以创建自动化规则,例如当水位达到100%时自动关闭水泵,反之亦然。

您还可以添加自动化功能,以便在您的智能手机上接收有关水箱水位状态的通知。

您需要做的就是使用NodeMCU或D1 Mini扩展接收器电路,如下图所示。然后使用ESPHome编译/烧写以下代码。

要了解更多关于如何在ESPHome中编码、编译固件以及将其刷新到NodeMCU或D1 Mini的信息,请参考我们关于如何使用Home Assistant制作无线门铃的指南。

确保将以下代码粘贴到captive_portal 下面:

captive_portal:
web_server:
  port: 80
binary_sensor:
  - platform: gpio
    pin: GPIO16
    name: "100% Water - Tank Full"
    device_class: motion
  - platform: gpio
    pin: GPIO14
    name: "75% Water"
    device_class: motion
  - platform: gpio
    pin: GPIO12
    name: "50% Water"
    device_class: motion
  - platform: gpio
    pin: GPIO13
    name: "25% Water"
    device_class: motion
  

您还可以访问连接到Wi-Fi网络和Home Assistant的NodeMCU或D1 Mini的IP地址来查看状态。

使用DIY无线水箱警报器节省水和电力

DIY无线水箱警报器是一个回报丰厚且具有成本效益的项目。一旦部署,该项目可以通过节省水、电力和金钱,让您高枕无忧。与有线水箱警报不同,它易于部署,特别适合那些不想在房屋周围布线的人。