0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

如何使用Node.js和IFTTT Web服务使用任何树莓派设备控制电子继电器

454398 来源:网络整理 作者:佚名 2019-11-08 11:35 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

步骤1:您需要的内容

至少,您将需要:

Google主页

从Google购买

任何型号Raspberry Pi

Adafruit购买

GPIO电缆

您可能可以找到自己的,我不知道不拥有你

5v 2中继模块

在Ebay上更便宜

》其余就是软件。如果您是Raspberry Pi的新手,请注意,可能需要一些其他硬件(例如USB电缆或wifi芯片)才能启动并运行。

第2步:板载软件设置

如何使用Node.js和IFTTT Web服务使用任何树莓派设备控制电子继电器

因此,为了使本指南尽可能易于使用,我-将包含一些您超级用户可能会发现过多的链接。

TLDR:在WiFi或以太网(最好是WiFi)上设置树莓派,并配置路由器,以使服务器外部可用。您将使用raspberry-gpio-python来控制中继。

对于新手,您将首先设置树莓派。

您将希望获得树莓派。 pi在您的本地WiFi上设置。

我将在Node.js中工作,因此您将需要升级到最新版本的Node。

配置路由器,以便端口80重定向到您的树莓派的MAC地址。 (对不起,这取决于您使用的路由器,并且没有真正的通用指南。)

我更喜欢使用SSH连接到我的树莓派。

大量在您启动过程中,有些事情可能会出错。保持耐心,和谷歌的事情。社区非常支持,并且很可能其他人以前遇到过您的问题!

第3步:搭建电路

因此,有很多关于Rasberry Pi上的继电器入门的指南。

基本上,您将需要从Raspberry Pi的5v输出引脚提供电源,并选择要用于发送开/关的控制引脚。触发继电器的信号

使用上图,无论使用哪种型号,我都建议使用黄色针脚。

第4步:创建服务器

入门应用程序现已可用!

访问https://github.com/krpeacock/google_home_starter下载该项目的入门应用程序,并按照README进行配置并在您自己的设备上运行。

您也可以查看我的最新作品如果您有兴趣查看项目的稍微复杂一点的版本,请访问https://github.com/krpeacock/power_strip/tree/strip的React项目

主要步骤是构建Node + Express服务器能够处理POST请求。

在我的代码中,它看起来像这样:

app.post(‘/api/switches/:id’, function(req, res){

var foundSwitch = getSwitch(req.params.id);

foundSwitch.toggle();

saveState();

console.log(“postSwitch ”+JSON.stringify(foundSwitch));

res.json(foundSwitch);

})

我向/api/switches/:id发出了发布请求,其中id写入为sw1,sw2 , 等等。识别出开关之后,我调用toggle()方法运行Python脚本并更改中继的状态。

我为关闭和打开功能编写了单独的python脚本,指定了将GPIO引脚绑定到每个开关。例如,sw1_on.py看起来像:

import RPi.GPIO as GPIO

GPIO.setwarnings(False)

GPIO.setmode(GPIO.BCM)

GPIO.setup(23, GPIO.OUT)

然后,通过要求使用Python-shell节点模块,我可以使用以下命令执行脚本:

const PythonShell = require(‘python-shell’);

PythonShell.run(‘。/public/python/scripts/sw1_on.py’)

第5步:连接到Google主页

如果您已成功获取此信息到目前为止,这些信息可能是您在这里的唯一原因。没关系!这很酷。

您正在运行服务器,它可以控制中继。它的结构使得POST请求可以更改中继的状态。现在,您所需要做的就是让您的Google Home向设备发送POST请求。最终,您将需要添加一些授权,以便陌生人无法控制您的设备,但现在我们只希望请求能够正常工作。

转到https://ifttt.com并连接它到您的Google帐户。

转到https://ifttt.com/create,然后单击+此链接。

搜索Google Assistant

选择Google Assistant

选择“说一个简单的短语”作为触发条件

告诉Google应该触发什么那个行动。

我更喜欢使用要控制的设备命名,所以我说“打开灯”

指定响应

“打开灯”

单击“创建触发器”并继续

单击+那个链接

搜索“ Webhooks”

选择“发出Web请求”

现在,这是重要的一点。确定您的IP地址(或域,如果您设置了该抽象级别),并将其输入到URL部分。如果您按照我的入门项目中的结构进行操作,它将看起来像

http://ipaddressgoeshere/API/switches/sw1?password=yourpasswordhere

将方法设置为POST

内容类型应为text/plain

正文可以留空

创建动作并选择“完成”。

步骤6:恭喜!

您已经完成了!现在,您的Google Home知道如何通过HTTP与智能设备进行通信

由于此操作可以进行切换,因此从技术上讲,您可以一直说“打开灯”以打开和关闭它。我更愿意为每个开关添加重复的打开和关闭命令,以使一切都变得更舒适。

如果您想为本指南做出贡献,或者与我一起构建入门应用程序,您也可以随时取得联系!我想让新黑客尽可能地简化此过程。
责任编辑:wv

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 继电器
    +关注

    关注

    133

    文章

    5531

    浏览量

    153808
  • 树莓派
    +关注

    关注

    122

    文章

    2069

    浏览量

    109737
  • NODE.JS
    +关注

    关注

    1

    文章

    49

    浏览量

    33877
  • IFTTT
    +关注

    关注

    0

    文章

    47

    浏览量

    3457
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    树莓 Connect 更新,增加三个实用新功能!

    ConnectforOrganisations:改进的审计日志,提高安全性树莓Connect让您能够通过屏幕共享和远程shell从任何地点远程访问您的树莓
    的头像 发表于 08-05 17:31 914次阅读
    <b class='flag-5'>树莓</b><b class='flag-5'>派</b> Connect 更新,增加三个实用新功能!

    树莓操作系统:版本、特性及设置完整指南!

    桌面环境的版本和轻量级、仅用于命令行的最小安装版本。该操作系统设计高效且资源友好,是树莓设备的理想选择。树莓操作系统的优势√轻量高效该操
    的头像 发表于 07-28 18:26 843次阅读
    <b class='flag-5'>树莓</b><b class='flag-5'>派</b>操作系统:版本、特性及设置完整指南!

    20个任何人都能完成的树莓酷炫项目!

    不知道如何利用你买的树莓?这个小设备真的能当台式电脑用吗?能当服务器吗?能当广播电台吗?当然可以!为了帮助你入门,我们精心挑选了这份树莓
    的头像 发表于 07-03 17:10 3059次阅读
    20个<b class='flag-5'>任何</b>人都能完成的<b class='flag-5'>树莓</b><b class='flag-5'>派</b>酷炫项目!

    树莓小技巧:无需键盘或显示器,如何通过WiFi设置树莓

    树莓是一款小巧便携的USB供电计算机,可以隐藏起来用于小型项目,如网络服务器或家庭自动化。通常,设置树莓需要键盘和显示器来编辑和查看
    的头像 发表于 06-26 15:41 1051次阅读
    <b class='flag-5'>树莓</b><b class='flag-5'>派</b>小技巧:无需键盘或显示器,如何通过WiFi设置<b class='flag-5'>树莓</b><b class='flag-5'>派</b>?

    树莓分类器:用树莓识别不同型号的树莓

    在本教程系列的第一部分中,您将学习如何使用树莓AI摄像头来检测不同的树莓型号。本系列由DavidPlowman创建,他是树莓
    的头像 发表于 06-13 16:39 1001次阅读
    <b class='flag-5'>树莓</b><b class='flag-5'>派</b>分类器:用<b class='flag-5'>树莓</b><b class='flag-5'>派</b>识别不同型号的<b class='flag-5'>树莓</b><b class='flag-5'>派</b>!

    HarmonyOS5云服务技术分享--ArkTS开发函数

    等打包 ✅ 支持Node.js 14.x/18.x和Java 1.8 ✅ 支持HTTP触发器调用 ✅ 持续开发调试一条龙 ?️ 准备工作: 安装AGCLI工具(华为应用分发服务命令行工具) 准备测试
    发表于 05-22 17:29

    HarmonyOS5云服务技术分享--ArkTS开发Node环境

    。 ​​跨平台调用​​:无缝对接Android、iOS、Web等多端。 ​​为什么选择Node.js?​​ Node.js的非阻塞I/O模型天生适合处理高并发请求,结合HTTP触发器,能快速搭建轻量级API
    发表于 05-22 17:21

    树莓“吉尼斯世界记录”:将树莓的性能发挥到极致的项目!

    树莓是一款功能强大、体积小巧且高度可定制的设备,多年来,我们见证了它被应用于众多领域。无论是将其装入3D打印的经典游戏机外壳,还是简单地将它隐藏起来作为家庭文件服务器,我们都报道过在
    的头像 发表于 05-22 16:53 1211次阅读
    <b class='flag-5'>树莓</b><b class='flag-5'>派</b>“吉尼斯世界记录”:将<b class='flag-5'>树莓</b><b class='flag-5'>派</b>的性能发挥到极致的项目!

    树莓 Zero 打造的智能漫游车!

    使用PXFMini和树莓Zero打造您自己的自主漫游车。本项目所用组件硬件组件ErleRoboticsPXFmini×1树莓Zero×1树莓
    的头像 发表于 05-13 16:39 873次阅读
    用 <b class='flag-5'>树莓</b><b class='flag-5'>派</b> Zero 打造的智能漫游车!

    树莓派上构建和部署 Node.js 项目

    探索在RaspberryPi上构建和部署Node.js项目的最佳实践。通过我们的专业提示和技巧,克服常见挑战,使您的项目顺利运行。去年圣诞节,我收到了一份极其令人着迷的礼物,它占据了我许多周末的时间
    的头像 发表于 03-25 09:44 514次阅读
    在<b class='flag-5'>树莓</b>派上构建和部署 <b class='flag-5'>Node.js</b> 项目

    仅仅使用代码,就能点亮树莓的 GPIO 世界

    RaspberryPi的一个流行应用是构建Web服务器。为此,我们可以使用不同的技术,如Python、Node.JS甚至PHP。由于RaspberryPi的绝大多数脚本都是用Python编写的,因此
    的头像 发表于 03-25 09:31 489次阅读
    仅仅使用代码,就能点亮<b class='flag-5'>树莓</b><b class='flag-5'>派</b>的 GPIO 世界

    【干货】什么是Node-RED?一文带你了解!

    一什么是Node-RED?首先我们来认识一下什么是Node-RED。Node-RED是一个基于Node.js的开源可视化编程工具,于2013年由IBM公司推出。它可以通过浏览器的图形化
    的头像 发表于 03-13 19:32 1529次阅读
    【干货】什么是<b class='flag-5'>Node</b>-RED?一文带你了解!

    Bun 1.2震撼发布:全力挑战Node.js生态的JavaScript运行时新星

    了与 Node.js 的兼容性,还为开发者带来了内置的数据库支持和云服务集成能力,进一步强化了其“全能工具包”的定位。Node.js 兼容性获得突破性进展在此次更新中,最引人注目的是 Bun 在
    的头像 发表于 01-24 10:42 1335次阅读
    Bun 1.2震撼发布:全力挑战<b class='flag-5'>Node.js</b>生态的JavaScript运行时新星

    GPIO在树莓中的应用

    直接控制和读取外部硬件设备的状态。 1. GPIO简介 GPIO是树莓派上用于与外部世界交互的一组引脚。这些引脚可以被配置为输入或输出模式,从而实现对外部设备
    的头像 发表于 01-09 09:41 1252次阅读

    固态继电器的热管理技巧 固态继电器如何保护设备

    固态继电器(SSR)是一种无触点的电子开关设备,它使用电子元件(如晶体管、MOSFET等)来控制电路的通断。由于固态
    的头像 发表于 12-11 16:21 1558次阅读