0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

如何使用Node.js和IFTTT Web服務(wù)使用任何樹莓派設(shè)備控制電子繼電器

454398 ? 來源:網(wǎng)絡(luò)整理 ? 作者:佚名 ? 2019-11-08 11:35 ? 次閱讀

步驟1:您需要的內(nèi)容

至少,您將需要:

Google主頁

從Google購買

任何型號Raspberry Pi

Adafruit購買

GPIO電纜

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

5v 2中繼模塊

在Ebay上更便宜

》其余就是軟件。如果您是Raspberry Pi的新手,請注意,可能需要一些其他硬件(例如USB電纜或wifi芯片)才能啟動并運(yùn)行。

第2步:板載軟件設(shè)置

如何使用Node.js和IFTTT Web服務(wù)使用任何樹莓派設(shè)備控制電子繼電器

因此,為了使本指南盡可能易于使用,我-將包含一些您超級用戶可能會發(fā)現(xiàn)過多的鏈接。

TLDR:在WiFi或以太網(wǎng)(最好是WiFi)上設(shè)置樹莓派,并配置路由器,以使服務(wù)器外部可用。您將使用raspberry-gpio-python來控制中繼。

對于新手,您將首先設(shè)置樹莓派。

您將希望獲得樹莓派。 pi在您的本地WiFi上設(shè)置。

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

配置路由器,以便端口80重定向到您的樹莓派的MAC地址。 (對不起,這取決于您使用的路由器,并且沒有真正的通用指南。)

我更喜歡使用SSH連接到我的樹莓派。

大量在您啟動過程中,有些事情可能會出錯。保持耐心,和谷歌的事情。社區(qū)非常支持,并且很可能其他人以前遇到過您的問題!

第3步:搭建電路

因此,有很多關(guān)于Rasberry Pi上的繼電器入門的指南。

基本上,您將需要從Raspberry Pi的5v輸出引腳提供電源,并選擇要用于發(fā)送開/關(guān)的控制引腳。觸發(fā)繼電器的信號

使用上圖,無論使用哪種型號,我都建議使用黃色針腳。

第4步:創(chuàng)建服務(wù)器

入門應(yīng)用程序現(xiàn)已可用!

訪問https://github.com/krpeacock/google_home_starter下載該項(xiàng)目的入門應(yīng)用程序,并按照README進(jìn)行配置并在您自己的設(shè)備上運(yùn)行。

您也可以查看我的最新作品如果您有興趣查看項(xiàng)目的稍微復(fù)雜一點(diǎn)的版本,請?jiān)L問https://github.com/krpeacock/power_strip/tree/strip的React項(xiàng)目

主要步驟是構(gòu)建Node + Express服務(wù)器能夠處理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發(fā)出了發(fā)布請求,其中id寫入為sw1,sw2 , 等等。識別出開關(guān)之后,我調(diào)用toggle()方法運(yùn)行Python腳本并更改中繼的狀態(tài)。

我為關(guān)閉和打開功能編寫了單獨(dú)的python腳本,指定了將GPIO引腳綁定到每個開關(guān)。例如,sw1_on.py看起來像:

import RPi.GPIO as GPIO

GPIO.setwarnings(False)

GPIO.setmode(GPIO.BCM)

GPIO.setup(23, GPIO.OUT)

然后,通過要求使用Python-shell節(jié)點(diǎn)模塊,我可以使用以下命令執(zhí)行腳本:

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

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

第5步:連接到Google主頁

如果您已成功獲取此信息到目前為止,這些信息可能是您在這里的唯一原因。沒關(guān)系!這很酷。

您正在運(yùn)行服務(wù)器,它可以控制中繼。它的結(jié)構(gòu)使得POST請求可以更改中繼的狀態(tài)?,F(xiàn)在,您所需要做的就是讓您的Google Home向設(shè)備發(fā)送POST請求。最終,您將需要添加一些授權(quán),以便陌生人無法控制您的設(shè)備,但現(xiàn)在我們只希望請求能夠正常工作。

轉(zhuǎn)到https://ifttt.com并連接它到您的Google帳戶。

轉(zhuǎn)到https://ifttt.com/create,然后單擊+此鏈接。

搜索Google Assistant

選擇Google Assistant

選擇“說一個簡單的短語”作為觸發(fā)條件

告訴Google應(yīng)該觸發(fā)什么那個行動。

我更喜歡使用要控制的設(shè)備命名,所以我說“打開燈”

指定響應(yīng)

“打開燈”

單擊“創(chuàng)建觸發(fā)器”并繼續(xù)

單擊+那個鏈接

搜索“ Webhooks”

選擇“發(fā)出Web請求”

現(xiàn)在,這是重要的一點(diǎn)。確定您的IP地址(或域,如果您設(shè)置了該抽象級別),并將其輸入到URL部分。如果您按照我的入門項(xiàng)目中的結(jié)構(gòu)進(jìn)行操作,它將看起來像

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

將方法設(shè)置為POST

內(nèi)容類型應(yīng)為text/plain

正文可以留空

創(chuàng)建動作并選擇“完成”。

步驟6:恭喜!

您已經(jīng)完成了!現(xiàn)在,您的Google Home知道如何通過HTTP與智能設(shè)備進(jìn)行通信。

由于此操作可以進(jìn)行切換,因此從技術(shù)上講,您可以一直說“打開燈”以打開和關(guān)閉它。我更愿意為每個開關(guān)添加重復(fù)的打開和關(guān)閉命令,以使一切都變得更舒適。

如果您想為本指南做出貢獻(xiàn),或者與我一起構(gòu)建入門應(yīng)用程序,您也可以隨時取得聯(lián)系!我想讓新黑客盡可能地簡化此過程。
責(zé)任編輯:wv

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 繼電器
    +關(guān)注

    關(guān)注

    132

    文章

    5303

    瀏覽量

    148209
  • 樹莓派
    +關(guān)注

    關(guān)注

    116

    文章

    1684

    瀏覽量

    105414
  • NODE.JS
    +關(guān)注

    關(guān)注

    1

    文章

    46

    瀏覽量

    32740
  • IFTTT
    +關(guān)注

    關(guān)注

    0

    文章

    47

    瀏覽量

    3124
收藏 人收藏

    評論

    相關(guān)推薦

    樹莓gpio有什么用,樹莓gpio接口及編程方法

    /Output,通用輸入/輸出)是樹莓提供的一組可編程的引腳,是樹莓與外部世界進(jìn)行交互的重要橋梁。通過GPIO,用戶可以控制外部電路,讀
    的頭像 發(fā)表于 10-22 18:09 ?181次閱讀

    什么是樹莓?樹莓是什么架構(gòu)的

    什么是樹莓 樹莓(Raspberry Pi,簡寫為RPi,別名為RasPi/RPI)是由英國“Raspberry Pi 慈善基金會”開發(fā)的一款為學(xué)習(xí)計(jì)算機(jī)編程教育而設(shè)計(jì)的微型電腦。
    的頭像 發(fā)表于 10-22 17:33 ?163次閱讀

    樹莓網(wǎng)關(guān):物聯(lián)網(wǎng)應(yīng)用的新標(biāo)桿

    的特點(diǎn)是體積小巧(大約信用卡大小),但功能齊全,足以支持多種計(jì)算任務(wù)。 樹莓經(jīng)常被用作物聯(lián)網(wǎng)網(wǎng)關(guān),收集設(shè)備數(shù)據(jù),然后將數(shù)據(jù)上傳云平臺,并還可以用來接收來自云端的控制指令,
    的頭像 發(fā)表于 10-09 16:44 ?174次閱讀
    類<b class='flag-5'>樹莓</b><b class='flag-5'>派</b>網(wǎng)關(guān):物聯(lián)網(wǎng)應(yīng)用的新標(biāo)桿

    樹莓和單片機(jī)的優(yōu)缺點(diǎn)是什么

    樹莓(Raspberry Pi)和單片機(jī)(Microcontroller)是兩種廣泛應(yīng)用于電子項(xiàng)目和嵌入式系統(tǒng)的硬件平臺。它們各自具有獨(dú)特的優(yōu)缺點(diǎn),適用于不同的應(yīng)用場景。 樹莓
    的頭像 發(fā)表于 08-30 18:21 ?1249次閱讀

    樹莓裝ubuntu和raspbian哪個更好

    版本,包括桌面版、服務(wù)器版和物聯(lián)網(wǎng)版等,適用于各種場景。 Raspbian是專為樹莓開發(fā)的Linux發(fā)行版,由樹莓
    的頭像 發(fā)表于 08-30 15:41 ?735次閱讀

    工程師必備!Node.js和常見管理工具介紹(附操作演示)

    語言及其相關(guān)生態(tài)中的一些基礎(chǔ)而關(guān)鍵的概念,以及它們是如何在互聯(lián)網(wǎng)歷史浪潮中產(chǎn)生的。一JavaScript與Node.js1JavaScriptJavaScript,即JS,
    的頭像 發(fā)表于 08-30 12:34 ?199次閱讀
    工程師必備!<b class='flag-5'>Node.js</b>和常見管理工具介紹(附操作演示)

    【Raspberry Pi 5開發(fā)板試用】樹莓5---家庭多媒體和控制中心

    \"的遠(yuǎn)程訪問功能,目前處于beta測試階段。它允許用戶從世界任何地方安全地訪問他們的樹莓,支持遠(yuǎn)程圖形化操作和命令行訪問,設(shè)備端與遠(yuǎn)程端的同步確保了實(shí)時性。
    發(fā)表于 08-01 17:40

    電源時序器屬于控制繼電器

    電源時序器和控制繼電器是兩種不同的電子設(shè)備,電源時序器通過控制繼電器實(shí)現(xiàn)對電源設(shè)備的順序
    的頭像 發(fā)表于 07-08 14:30 ?389次閱讀

    繼電器控制電流的選擇和計(jì)算

    繼電器是一種用于控制電路的電氣設(shè)備,其主要功能是實(shí)現(xiàn)高電壓、大電流電路的控制和保護(hù)。繼電器控制
    的頭像 發(fā)表于 06-21 10:30 ?1116次閱讀

    繼電器控制和plc控制的區(qū)別是什么

    繼電器是一種開關(guān)設(shè)備,通過控制線圈的電流來實(shí)現(xiàn)觸點(diǎn)的吸合和釋放,從而控制電路的通斷。繼電器控制
    的頭像 發(fā)表于 06-21 10:08 ?893次閱讀

    繼電器的實(shí)質(zhì)是用什么控制什么

    繼電器是一種電氣設(shè)備,其主要功能是在控制電路中實(shí)現(xiàn)對高電壓、大電流負(fù)載的控制。繼電器的實(shí)質(zhì)是用低電壓、小電流的
    的頭像 發(fā)表于 06-21 10:03 ?574次閱讀

    電子繼電器的工作原理及作用

    電子繼電器是一種利用電子元件來控制電路的開關(guān)設(shè)備。與機(jī)械式繼電器相比,
    的頭像 發(fā)表于 05-21 18:15 ?1.8w次閱讀

    延時繼電器工作原理 延時繼電器的接法和用途

    延時繼電器是一種常用的電子設(shè)備,它能夠延遲觸發(fā)繼電器的動作,從而在電路中產(chǎn)生一定的延時效果。它在工業(yè)自動化控制、電氣設(shè)備保護(hù)、通信系統(tǒng)和家庭
    的頭像 發(fā)表于 01-19 11:24 ?6071次閱讀

    怎樣在樹莓Pico上使用繼電器呢?

    繼電器就相當(dāng)于一個開關(guān),接在任意線上,通過控制信號下控制通斷;一般是斷開狀態(tài),此時線就斷開了,沒導(dǎo)通;
    的頭像 發(fā)表于 11-28 09:14 ?2239次閱讀
    怎樣在<b class='flag-5'>樹莓</b><b class='flag-5'>派</b>Pico上使用<b class='flag-5'>繼電器</b>呢?

    如何使用繼電器模塊來控制電路?

    如何使用繼電器模塊來控制電路? 繼電器模塊是一種常用的電子元件,用于控制電路的開關(guān)。繼電器模塊通
    的頭像 發(fā)表于 11-17 14:28 ?2508次閱讀