本网页已闲置超过3分钟,按键盘任意键或点击空白处,即可回到网页

基于Web的洒水控制器

发布时间:2022-07-18
分享到:

基于Web的洒水控制器

发布时间:2022-07-18
分享到:

本文将介绍如何用一个简单且廉价的 Raspberry Pi、基于Web的系统替换您的喷水灭火控制器。

在这个项目中,我使用了一个崭新的 Raspberry Pi,在上面安装了 OpenSprinkler,并使用了一个简单的继电器板来触发我家的喷水灭火系统。为了安排我的自动喷水灭火系统,我访问了一个由 Raspberry Pi 在我的家庭网络上提供的网页。该网页只能在我的家庭 WiFi 网络上访问。

第 1 步:准备 SD 卡
我的 SD 卡预装了“精简版”Raspian。由于使用的是 Raspberry Pi Zero,因此我没有将任何显示器或键盘连接到它。我建议将 Raspberry Pi Zero 连接到您的无线网络并从您的计算机远程访问它。

以下步骤允许 Raspberry Pi 访问您的 WiFi 网络并启用远程访问。

  • 将 SD 卡插入计算机上的读卡器。
  • 添加文件以启用 WiFi 访问。

在 SD 卡的基本目录中创建一个文件wpa_supplicant.conf。输入您的 WiFi 详细信息,将占位符文本替换为您自己的详细信息。

country=AU
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1
network={
ssid="TheWiFiNetwork"
psk="ThePassword"
key_mgmt=WPA-PSK
}

  • 添加文件以启用 SSH

在引导目录中创建一个名为ssh. 这将启用 Secure Shell,这将允许您从远程计算机连接到您的 Raspberry Pi。

第 2 步:启动和访问 Raspberry Pi

  • 将 SD 卡放入您的 Raspberry Pi 并打开电源。
  • 在您的计算机上安装并运行 Putty。
  • 使用 Putty,打开到 Raspberry Pi 的远程会话

default hostname: raspberrypi
user: pi
pass: raspberry

  • 配置您的树莓派。

更改主机名、密码并进行配置:
运行:永久启用 SSH。sudo raspi-config

  • 更新/安装您想要的任何其他软件包

例如:

apt-get update
apt-get upgrade
Could update raspian: sudo apt-get dist-upgrade

  • 安装 GPIO Zero

(可选,以便pinout稍后运行命令)

sudo apt install python3-gpiozero

第 3 步:安装 OpenSprinkler Pi

  • sudo su

所以你不必sudo为每个命令。

  • 安装 git。

apt-get install git

  • 将目录更改为 /usr/local

cd /usr/local

  • 克隆 OpenSprinkler 固件存储库。

这将在 /usr/local 中创建一个名为 OpenSprinkler 的目录。
git clone https://github.com/OpenSprinkler/OpenSprinklerGen2 OpenSprinkler

  • 进入 OpenSprinkler 目录并构建固件。

cd OpenSprinkler
./build.sh

  • 构建脚本会询问您是否要在启动时运行该软件,回答是。如果编译正常,您应该/usr/local/OpenSprinkler/OpenSprinkler准备好一个可执行文件。继续运行可执行文件来测试它。按 control-C 退出。
  • 重新启动您的 Pi,OpenSprinkler 应该会自动启动。您可以测试如果它返回进程 ID 号,则 OpenSprinkler 已自动启动并正在运行。如果它什么也没返回,那么就出了问题;检查前面的步骤。

pgrep OpenSprinkler

  • 在您的计算机上打开浏览器到http://hostname:8080,其中主机名是您的 Raspberry Pi 的名称。这将访问 OpenSpinkler Web 界面。默认密码:opendoor. 计算机必须与 Raspberry Pi 在同一网络上。

  • 该网页由您的 Raspberry Pi 提供服务。

第 4 步:将中继板连接到您的 Raspberry Pi

  • 我使用了一个带有 4 个继电器的继电器板。板上的每个继电器将控制 1 个洒水区。当继电器从 Raspberry Pi 的通用输入/输出 (GPIO) 引脚接收到信号时,该继电器将激活它所连接的喷水灭火区域。
  • 远程连接到您的 Raspberry Pi 时,运行 GPIO Zero pinout 命令。这将显示 Raspberry Pi 上的 GPIO 引脚图。

pinout

  • 决定要使用哪些引脚来激活洒水器。我选择了引脚 5、6、13,因为它们在我的 Raspberry Pi Zero WH 上彼此相邻。
  • 关闭你的树莓派。

sudo halt

  • 拔下电源。
  • 将 Raspberry Pi 上的 GPIO 引脚连接到继电器的输入端子。每个继电器将控制一个洒水区。我有三个喷水区。

  • 记下哪些引脚连接到哪个继电器。
  • 将 Raspberry Pi 的 5V 输出和接地引脚连接到继电器的电源输入和接地。

第 5 步:配置 OpenSprinkler

  • 现在连接继电器后,重新启动您的 Raspberry Pi。
  • 在您的家用计算机或平板电脑上,转到:默认密码:此网页由您的 Raspberry Pi 提供服务,它正在运行之前安装的 OpenSprinkler 软件。http://hostname:8080

opendoor

  • 通过 Web 界面将您的洒水区添加到 OpenSprinkler。
  • 对于每个区域,您必须配置将用于该区域的 GPIO 引脚。

  • 活动状态高或低:继电器和 OpenSprinkler 的配置方式应相同。高电平有效,或低电平有效。我使用 High 作为活动状态。
  • 通过 Web 界面激活其中一个喷水区。您应该会听到连接到该区域 GPIO 引脚的继电器发出的咔嗒声。

第 6 步:将您的喷水灭火系统连接到继电器板

  • 许多喷水灭火系统通过向喷水阀发送 24V 交流电流来激活每个区域。这将打开值。这就是我的系统的工作方式。
  • 我使用了旧洒水控制器的 24V 电源。
  • 我将 24V 电源的一侧连接到每个区域的继电器的公共端子。当 Raspberry Pi 向继电器发出信号(GPIO 到继电器输入端)时,继电器完成电路。当继电器闭合电路时,喷淋阀接收 24V 电流并启动。喷水阀导线的另一侧连接到喷水器电源的另一侧。

动力流程:洒水器电源=>通过继电器=>通过洒水阀=>回到洒水器电源的其他端子

第 7 步:访问 OpenSprinkler,激活您的洒水器

http://hostname:8080

通过 Web 界面触发喷水灭火区域并测试您的喷水灭火系统是否启动。

如果您对此项目有任何想法、意见或问题,请在下方留言。

以上内容翻译自网络,原作者:Ryan Carlson,如涉及侵权,可联系删除。

加入微信技术交流群

技术交流,职业进阶

关注与非网服务号

获取电子工程师福利

加入电路城 QQ 交流群

与技术大牛交朋友

讨论