强烈推荐:树莓派为你自动打开车库门!
2024-02-23 19:04:04发布 浏览349次 信息编号:99267
友情提醒:凡是以各种理由向你收取费用,均有骗子嫌疑,请提高警惕,不要轻易支付。
强烈推荐:树莓派为你自动打开车库门!
树莓派 A 型
杜邦线和面包板
树莓派电源
伟大的!
本文将为您详细讲解用 Pi搭建的自动车库门控制系统,可以用智能手机控制! 在这个项目完成之前,我想把我的想法发表出来与大家分享。 这是我的第一个智能硬件项目描述。 我相信其中肯定有一些错误,所以当你发现它时,请告诉我!
项目概况:
我们要做的是将 Pi 变成一个小型网络服务器。 当您从您选择的浏览器访问网络服务器时,您将看到一个通过继电器触发车库门的按钮。 我们将一个非常基本的电路连接到 Pi 的 GPIO 引脚,并上传一个触发该电路的网站。 当继电器被触发时,它会关闭与车库电机连接的电路并打开车库。
为什么有人会这样做?
好吧,我的车库开门器坏了,这比更换另一个系统便宜。 但是,作为附加组件,您可以连接额外的传感器,并能够确保您的车库远程关闭(当然,如果您打算这样做)
采购清单:
由于我不喜欢浪费(实际上是因为我没有钱而且很穷),所以我尽量将成本降至最低。 所有材料都可以在线购买。
1.) Pi-模型 A
2.) 无线网络
3.) 电源
4.) 5v 继电器
您还需要一张 2GB+ 的 SD 卡和一些电线,幸运的是我手头有这些!
第 1 步:安装和优化(出于我们的目的)
第一步是将操作系统安装到 rpi 上。 我喜欢有额外的 2GB,所以我使用了一个较小的版本。 我使用的图像可以在这里找到:
////
有关在树莓派上安装系统和其他镜像的信息,可以参考这个网站:/。
上,我曾经将存储卡格式化为fat32并刻录img。
安装操作系统后,插入USB键盘并将 Pi连接到显示器。 假设您使用的是 rasp- 将在首次启动时自动运行。 你应该使用这个工具来扩展SD卡并启用ssh(我相信它在新版本的高级菜单下)
安装img后,我还删除了GUI以释放一些空间。 (如果您有大 SD,则可以跳过此操作。)要执行此类型,请使用以下命令
$ sudo apt-get --purge x11-
$ sudo apt-get
这将删除所有依赖于 X11 的软件包,这几乎都是 GUI。
这是针对高手的一个很好的指南:
第 2 步:通过命令行设置 Wifi
下一步是从命令行设置 wifi。 这将使我们能够通过 ssh 远程控制 pi。
这是详细的操作指南:
//如何在您的--pi-via-the--line上设置wi-fi/
由于我们使用的型号A只有一个USB接口,因此需要使用键盘进行相关设置。 关闭 pi,插入 Wifi 适配器,然后开始备份。
关闭树莓派的命令是:sudo -h 0
如果一切顺利,设置完成并重新启动后,路由器将向 Pi 分配一个 IP 地址。 此时可以通过将 pi 连接到 hdmi 监视器并查看启动日志,或者登录路由器并查看 DHCP 表来找到此 IP 地址。
第三步:软件安装
现在我们已经设置了 WiFi。 接下来我们需要下载必要的软件并将其安装到我们的 Pi 上。 由于USB端口被WiFi模块占用,我们将通过SSH下载并安装软件。 如果您使用的是 操作系统,请打开终端并输入 ssh pi@[ Pi IP 地址]。 如果您使用的是系统,可以下载Putty。 在 macOS 上,您还可以在终端中执行 ssh。 同样, Pi 的默认密码是。
登录后,下载、编译并安装Wring Pi。 该软件允许我们控制 Pi 上的 GPIO 引脚。 这是分步指南:
/-和-/
安装完Wring Pi后,我们还要安装PHP,命令如下:
$ sudo apt-get
$ sudo apt-get php5 -mod-php5
完成后,我们就有了自己的网络服务器。 您可以通过在浏览器中输入 PI 的 IP 地址来验证它。 您应该会看到“它有效!” 在默认网站上。 这表明安装完成。
第四步:上传车库门开启网站
现在我们已经有了一个可用的网络服务器,我们将向其上传一个网站。 我创建了一个非常基本的继电器,它将触发我们将在下一步中连接的继电器。
有两种方法可以做到这一点:
/ORIG/FAO/O1ZT//.zip
从链接下载 .zip 到您的桌面。 打开终端并输入以下命令:
$ ssh pi@[你的 PI 的 IP]
$ sudo rm /var/www/index.html
$ sudo chown pi:root /var/www
$退出
$ cd ~/
$ scp .zip pi@[您的 PI 的 IP]:/var/www
$ ssh pi@[你的 PI 的 IP]
$ cd /var/www
$解压缩.zip
$rm.zip
其他系统
下载。 使用 Putty 或其他 ssh 终端:
$ ssh pi@[你的 PI 的 IP]
$ sudo chown -R pi:root /var/www
开始。 使用以下命令登录树莓派:
主机:sftp://[您的 PI 的 IP]
:pi
:
接下来,将所有解压的 .zip 文件上传到 /var/www。
同时删除系统中的index.html。
一些技术说明(对于感兴趣的人):
当用户按下按钮时,该网站使用自助发布(通过 AJAX)。 我这样做,如果您刷新页面,它不会触发您的车库打开。
如果您使用(或使用最新的开发版本)并将此网站添加到您的主屏幕,它应该像没有浏览器的应用程序一样运行。 (仅适用于您家中的 wifi)
第 5 步:将线路连接到 PI
现在到了有趣的部分 - 我们将继电器连接到 pi! 对于我提供的代码(步骤 4 和 6),我使用了 GPIO 引脚 7。您可以使用任何您想要的,但请务必更改代码。
下面是一个图表,我的有线 pi 用扎带安装在纸板上。 我使用旧的软盘带状电缆轻松测试端口并连接它。
第6步:创建启动服务
这一步非常重要。
这就是大多数继电器(包括我购买的继电器)的工作原理——当信号打开时,电路保持闭合状态。 当信号关闭时,电路导通。 那么,如果你的圆周率断电会发生什么? 大多数继电器都有一个安全机制,可以在断电时保持电路闭合。 当 pi(以及随后的继电器)恢复电源时,但在 pi 完成启动以打开需要关闭电路的信号之前,会出现问题。 早上醒来,车库开着,可能还会认识一些新朋友!
经过一些实验我发现了一个简单的方法。 我发现我的继电器实际上不会初始化,直到通过以下命令设置 GPIO 引脚模式:GPIO 模式 7 输出。 另外,我发现,在设置GPIO模式之前,将GPIO引脚设置为ON(gpio write 7 1),继电器在初始化后将保持关闭状态。
为了在启动时运行此初始化,我创建了一个启动脚本:
$ ssh pi@[你的 Pi 的 IP]
$ sudo nano /etc/init.d/
我们来谈谈将内容粘贴到脚本文件中:
#!/bin/bash
# /etc/init.d/
# 当要求时执行
案例“$1”
开始)
回声“中继”
# 打开 7,使继电器保持关闭状态
/usr/local/bin/gpio 写入 7 1
#启动GPIO
/usr/local/bin/gpio 模式 7 输出
;;
停止)
回显“GPIO”
;;
*)
echo“用法:/etc/init.d/{start|stop}”
1号出口
;;
埃萨克
出口0
使文件可执行
$ sudo chmod 777 /etc/init.d/
现在让脚本在 PI 启动时自动运行:
$ sudo -rc.d -f 开始 4
(注:您可以忽略警告“LSB标签”)
你完成了!
提醒:请联系我时一定说明是从星空网上看到的!