www.久久久久|狼友网站av天堂|精品国产无码a片|一级av色欲av|91在线播放视频|亚洲无码主播在线|国产精品草久在线|明星AV网站在线|污污内射久久一区|婷婷综合视频网站

當前位置:首頁 > 物聯(lián)網(wǎng) > IoT設計分享
[導讀]Facebook是使用最廣泛的社交媒體應用程序之一,它不僅用于社交網(wǎng)絡,還用于消息傳遞,視頻通話,語音通話,市場等。Facebook的這些功能在構建任何基于物聯(lián)網(wǎng)的項目時都非常有用。就像在這里,我們將使用Facebook來遠程控制家里的設備。你只需要給聊天機器人發(fā)一條短信,它就可以從世界任何地方控制你家里的燈。我們將使用ESP8266 NodeMCU硬件和一些在線應用程序來構建這個項目。

Facebook是使用最廣泛的社交媒體應用程序之一,它不僅用于社交網(wǎng)絡,還用于消息傳遞,視頻通話,語音通話,市場等。Facebook的這些功能在構建任何基于物聯(lián)網(wǎng)的項目時都非常有用。就像在這里,我們將使用Facebook來遠程控制家里的設備。你只需要給聊天機器人發(fā)一條短信,它就可以從世界任何地方控制你家里的燈。我們將使用ESP8266 NodeMCU硬件和一些在線應用程序來構建這個項目。

我們之前使用不同的微控制器構建了一些基于物聯(lián)網(wǎng)的家庭自動化項目:

?物聯(lián)網(wǎng)家庭自動化使用Blynk應用程序使用ESP32

?家庭自動化與麻省理工學院應用發(fā)明人和ESP8266

?基于物聯(lián)網(wǎng)的家用電器控制與Adafruit IO和樹莓派

?用ARTIK云和樹莓派控制家用電器

?基于ESP32和Adafruit IO的谷歌助手家電控制

在進入細節(jié)之前,我們先了解一下這個項目所涉及的事情。

ESP8266 NodeMCU

ESP8266 NodeMCU是一個開源的物聯(lián)網(wǎng)平臺。它包括運行在expressif Systems低成本支持Wi-Fi的ESP8266 Wi-Fi SoC上的固件,以及基于ESP-12模塊的硬件。它具有GPIO, SPI, I2C, ADC, PWM和UART引腳,用于通信和控制附加到它的其他外設。板載NodeMCU具有提供USB到TTL功能的CP2102 IC。

MQTT

MQTT表示消息查詢遙測傳輸。MQTT是一種基于TCP/IP的發(fā)布和訂閱協(xié)議,專為輕量級機器對機器與物聯(lián)網(wǎng)設備的交互而設計。這些設備充當客戶機,與稱為代理的服務器通信。代理是一個服務器,它允許客戶端向代理發(fā)送短消息,并在客戶端訂閱特定主題時接收消息。它充當服務器,處理連接到該服務器的設備的所有信息??蛻魴C可以同時是信息的發(fā)布者(從設備向服務器發(fā)送數(shù)據(jù))或訂閱者(從服務器向設備獲取數(shù)據(jù))。

Facebook Messenger

Facebook Messenger是一款由Facebook開發(fā)的即時通訊應用和平臺。人們通常用它來發(fā)短信,分享照片/視頻,甚至進行語音或視頻通話。可以在個人之間或群組中進行常規(guī)聊天和語音/視頻聊天。

Chatfuel

Chatfuel是為Facebook創(chuàng)建AI聊天機器人的領先機器人平臺。人們可以創(chuàng)建人工智能聊天機器人,用于遠程觸發(fā)任何事件。你在messenger上的簡單文本可以為你的項目添加AI功能。

IFTTT

IFTTT代表如果這個比那個。這是一個免費的基于web的服務,允許連接到web服務,應用程序和設備,如b谷歌,F(xiàn)acebook, Adafruit, Webhooks, Telegram等來自動執(zhí)行任務。applet使用觸發(fā)器和操作幫助組合兩個服務。它只是意味著,如果在一個web服務中觸發(fā)了某些操作,那么將在其他web服務中發(fā)生操作。

Adafruit IO

Adafruit IO是Adafruit Industries的服務器。它是一個使用HTTP和MQTT協(xié)議與物聯(lián)網(wǎng)設備交互的平臺,有助于存儲和查看數(shù)據(jù),也有助于控制設備。

Facebook控制家用電器的工作

在這個項目中,我們將控制一個家電,如使用Facebook messenger的燈。在信使上輸入某些關鍵字,你就可以控制你家里的設備。消息將被發(fā)送到一個聊天機器人,它將觸發(fā)Chatfuel中各自的AI塊。該塊鏈接到一些JSON API,該API將向IFTTT發(fā)送POST請求。IFTTT將幫助連接Webhooks和Adafruit,在Webhooks的幫助下將數(shù)據(jù)發(fā)送和存儲到Adafruit。Webhooks將創(chuàng)建一個事件,該事件將具有唯一的觸發(fā)鍵來觸發(fā)事件。發(fā)送到Adafruit的數(shù)據(jù)將觸發(fā)儀表板中的切換按鈕。Adafruit作為NodeMCU的服務器,并將數(shù)據(jù)發(fā)送給它,從而在MQTT的幫助下激活或停用燈。

線路圖

組件的要求

?ESP8266 NodeMCU

?USB數(shù)據(jù)線

?跳線

?LED

?繼電器

?帶燈座的燈或燈泡

?交流電源

Adafruit IO控制家用電器的設置

打開,點擊免費開始。輸入詳細信息并創(chuàng)建一個新帳戶。在此之后,您將被重定向到Adafruit IO主頁。點擊左上角的Feeds。現(xiàn)在在Feeds頁面中,單擊Action按鈕,然后單擊Create a New Feed,并為提要命名。這里我們將它命名為“OnOff”名稱到我的Feed。

創(chuàng)建Feed之后,單擊左側的Dashboards?,F(xiàn)在在儀表板中單擊Actions,然后選擇Create a New Dashboard?,F(xiàn)在給你的儀表盤命名,點擊創(chuàng)建,這里我給我的儀表盤命名為“家庭自動化”。

然后單擊新創(chuàng)建的儀表板。在你的儀表板頁面,你必須創(chuàng)建一個新的塊開/關切換按鈕。點擊儀表板頁面中的加號按鈕創(chuàng)建一個新塊,然后選擇第一個“切換按鈕”。

接下來,您將被要求為這個按鈕選擇提要,因為這個按鈕將幫助我們提供數(shù)據(jù)。勾選Feed的復選框(這里我的Feed是OnOff),然后點擊Next Step。

現(xiàn)在給切換按鈕ON和OFF的名稱,然后點擊Create Block?,F(xiàn)在,一個切換按鈕將在你的儀表板上創(chuàng)建,這將幫助我們發(fā)送數(shù)據(jù)到我們的飼料。

設置IFTTT觸發(fā)水果切換按鈕

步驟1:-進入并登錄Facebook或谷歌。登錄后,點擊頂部的“我的小程序”,然后點擊“新小程序”。

步驟2::-然后點擊“+ this”,在“選擇服務”部分搜索Webhooks。

步驟3:-現(xiàn)在點擊接收web請求

步驟4:-鍵入任何事件名稱(在我的情況下為“自動化”),然后單擊觸發(fā)器(在我的情況下為“自動化”)。

步驟5:-在下一頁點擊“+ that”,在紅色框中提到。搜索Adafruit并提供登錄憑據(jù)。

步驟6:-點擊發(fā)送數(shù)據(jù)到Adafruit IO。選擇之前在Adafruit IO設置部分創(chuàng)建的Feed名稱。通過單擊Data中的add ingredient來選擇value1,然后單擊Create Action,然后單擊Finish。

步驟7:-現(xiàn)在轉到Webhooks設置并在記事本中復制URL。這個URL包含混合字符的Webhooks鍵,這將有助于將Chatfuel連接到IFTTT。

安裝Chatfuel與Facebook

步驟1::-去并點擊登錄與您的Facebook Id。成功登錄后,它將引導您到儀表板頁面。點擊從模板創(chuàng)建,然后點擊我的第一個機器人。然后將My First Bot連接到一個可以創(chuàng)建的facebook頁面。

步驟2:-創(chuàng)建一個任意名稱的頁面(在我的情況下是“家庭自動化”),并將其連接到您的新機器人。連接后,您將被引導到您的機器人頁面與歡迎信息。您可以根據(jù)自己的意愿編輯此歡迎辭。

步驟3:-現(xiàn)在創(chuàng)建兩個新塊(這里是Relay ON和Relay OFF)。然后單擊Relay on,從Add Element中選擇Text。編寫要在用戶調(diào)用繼電器on塊時顯示的文本。對Relay OFF塊做同樣的操作。

步驟4:-單擊左側的設置AI,單擊添加AI規(guī)則,單擊默認組。在bot replies with部分中選擇RELAY ON?,F(xiàn)在添加文本,如果用戶說類似的部分。這些文本將有助于觸發(fā)積木。對繼電器關閉按鈕做同樣的操作。

步驟5:-現(xiàn)在我們必須為RELAY ON和RELAY OFF塊添加JSON API,以將chatfuel與IFTTT鏈接起來。您可以通過點擊test your BOT來測試您的聊天框,歡迎文本將發(fā)送到您的信使帳戶。

與IFTTT聊天

步驟1:-現(xiàn)在我們必須為RELAY ON和RELAY OFF按鈕制作兩個url。轉到Chatfuel,選擇Relay ON,然后在添加元素中單擊+號,然后從Chatfuel插件中選擇JSON API。

步驟2:-設置類型為POST,從下面復制URL1,并根據(jù)您的IFTTT帳戶更改事件名稱和密鑰,或者您可以直接從您的IFTTT帳戶獲取URL。對RELAY OFF塊做同樣的操作。

繼電器ON塊:

繼電器關閉塊:

步驟3:這是在RELAY ON和RELAY OFF的JSON API部分復制的兩個url。此URL包含事件名稱和Webhooks觸發(fā)鍵。“Automation”是我們在Webhooks中創(chuàng)建的事件名稱,“jE8LXKI6XocT7u8gX7qwKocf3DAN57MZIXtLmfVbBiG”是觸發(fā)鍵。Value1=1表示繼電器ON, Value1=0表示繼電器OFF塊。

步驟4:-現(xiàn)在Chatfuel已經(jīng)準備好并連接到IFTTT。

步驟5:-按照電路圖進行連接,并將代碼上傳到NodeMCU。等待一段時間,直到它連接到Wi-Fi和MQTT代理。在Chatfuel中點擊“測試你的機器人”,這將引導你進入你的信使網(wǎng)站,在那里你可以通過輸入“打開中繼”或“關閉中繼”來測試你的機器人。你會得到一個回復在信使與值的切換按鈕在實時更改在您的Adafruit儀表板。您還可以看到led以及燈或燈泡的狀態(tài)變化與繼電器的發(fā)癢聲。

代碼的解釋

這個基于ESP8266的Facebook家庭自動化的完整代碼在最后給出了一個演示視頻。但在開始編寫代碼之前,首先我們需要Adafruit的“Adafruit_MQTT.h”庫,用于將NodeMCU與Adafruit IO服務器進行MQTT連接。我們可以直接從Arduino IDE下載這個庫。打開Adruino IDE,進入Sketch -> Include Library -> Manage Libraries。在庫管理器中搜索adafruit_mqtt。安裝紅色框中選擇的最新版本。

安裝此庫附帶了許多內(nèi)置示例。對于這個家庭自動化項目,我們將使用mqtt_esp8266示例。進入文件->示例-> Adrafruit MQTT庫-> mqtt_esp8266。現(xiàn)在我們將編輯mqtt_esp8266中給出的代碼。

現(xiàn)在首先包含所有必需的庫。

將代碼中給出的SSID和密碼替換為Wi-Fi SSID和密碼。

為了將我們的客戶端ESP8266連接到Adafruit服務器,我們需要Adafruit服務器鏈接,Adafruit服務器端口,Adafruit用戶名和Adafruit密鑰。AIO SERVER為“io.adafruit.com”,SSL使用的端口為8883。在Adafruit的安裝部分,我已經(jīng)提到了獲取Adafruit用戶名和密鑰的過程。所有這些變量都傳遞給Adafruit_MQTT_Client mqtt函數(shù),該函數(shù)有助于建立mqtt連接。將Adafruit_MQTT_Subscribe函數(shù)中給出的提要名稱更改為Adafruit中的提要名稱。

在void setup()函數(shù)中,將NodeMCU的D1引腳設置為繼電器的輸出數(shù)據(jù)引腳。串口顯示器顯示數(shù)據(jù)的波特率設置為115200。通過在WiFi.begin()函數(shù)中傳遞Wi-Fi憑據(jù)建立Wi-Fi連接,連接成功后在串口監(jiān)視器上打印IP地址。MQTT訂閱設置為開關提要。

在void loop()中,MQTT_connect()確保MQTT連接保持活動狀態(tài),并在斷開連接時自動連接。while等待傳入的訂閱包,當它接收到任何數(shù)據(jù)字符串響應時,它將響應轉換為1或0,并檢查if-else語句。如果接收到的數(shù)據(jù)是1,那么我們將D1引腳設置為高,否則將其設置為低。

下面是MQTT連接的功能:

最后,將任何家用電器與D1端口的繼電器模塊連接起來,并在NodeMCU中上傳下面給出的代碼。NodeMCU與Wi-Fi連接后,您可以通過在Arduino IO中切換儀表板上的按鈕來打開和關閉家用電器。

本文編譯自iotdesignpro

本站聲明: 本文章由作者或相關機構授權發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或將催生出更大的獨角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉型技術解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

關鍵字: 汽車 人工智能 智能驅動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務能7×24不間斷運行,同時企業(yè)卻面臨越來越多業(yè)務中斷的風險,如企業(yè)系統(tǒng)復雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務連續(xù)性,提升韌性,成...

關鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會開幕式在貴陽舉行,華為董事、質量流程IT總裁陶景文發(fā)表了演講。

關鍵字: 華為 12nm EDA 半導體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會上,華為常務董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權最終是由生態(tài)的繁榮決定的。

關鍵字: 華為 12nm 手機 衛(wèi)星通信

要點: 有效應對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實提質增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務引領增長 以科技創(chuàng)新為引領,提升企業(yè)核心競爭力 堅持高質量發(fā)展策略,塑強核心競爭優(yōu)勢...

關鍵字: 通信 BSP 電信運營商 數(shù)字經(jīng)濟

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術學會聯(lián)合牽頭組建的NVI技術創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現(xiàn)場 NVI技術創(chuàng)新聯(lián)...

關鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會上,軟通動力信息技術(集團)股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關鍵字: BSP 信息技術
關閉