使用谷歌Firebase和ESP32 NodeMCU的基于物聯(lián)網(wǎng)的LED控制
ESP32是物聯(lián)網(wǎng)應(yīng)用的強大硬件平臺,廣泛用于物聯(lián)網(wǎng)應(yīng)用的原型設(shè)計和開發(fā)。在我們之前的一些會議中,我們已經(jīng)在許多物聯(lián)網(wǎng)云平臺上使用了ESP32:
?ThingSpeak和ESP32:如何使用ESP32將數(shù)據(jù)發(fā)送到云
?ESP32 Web服務(wù)器:從網(wǎng)頁控制LED
?谷歌助手使用ESP32和Adafruit IO控制LED
?物聯(lián)網(wǎng)控制LED使用ESP32與Blynk應(yīng)用程序
如何使用IFTTT和ESP32觸發(fā)LED與電子郵件通知
在本文中,我們將看到如何使用google firebase控制臺和ESP32來控制LED。
Firebase是谷歌的數(shù)據(jù)庫平臺,用于創(chuàng)建、管理和修改從任何android應(yīng)用程序、web服務(wù)、傳感器等生成的數(shù)據(jù)。它基本上是一個移動和web應(yīng)用程序開發(fā)平臺,它有許多服務(wù),如Firebase云消息、Firebase認證、實時數(shù)據(jù)庫等。在實時數(shù)據(jù)庫中,我們可以在firebase云上看到實時數(shù)據(jù),并且可以使用Internet從任何地方控制任何外圍設(shè)備。
要從谷歌firebase控制LED,首先我們將設(shè)置谷歌firebase控制臺,然后是ESP32模塊。
需求
?ESP32模塊
?USB電纜
?電路試驗板
?LED
?跳線
?電阻器1 k
線路圖
為ESP32設(shè)置Firebase控制臺
如果你是第一次使用firebase,那么你必須為firebase創(chuàng)建一個帳戶,或者可以直接使用谷歌帳戶注冊:
在右上角單擊“Go to Console”。
點擊“添加項目”。
輸入您想要的項目名稱,然后單擊創(chuàng)建項目。
現(xiàn)在你的項目已經(jīng)創(chuàng)建好了,點擊“繼續(xù)”。
現(xiàn)在,在編程ESP32時,您將需要此項目的主機名和授權(quán)密鑰/密鑰;現(xiàn)在我們來看看這些參數(shù)是怎么得到的。
進入設(shè)置圖標,點擊“項目設(shè)置”。
現(xiàn)在單擊“服務(wù)帳戶”,然后單擊“數(shù)據(jù)庫秘密”。
在點擊數(shù)據(jù)庫秘密你會發(fā)現(xiàn)一個秘密密鑰,復制這個密鑰并保存在記事本中,這是你的firebase授權(quán)密鑰,你以后會需要。
現(xiàn)在點擊左側(cè)控制欄的“數(shù)據(jù)庫”。
現(xiàn)在向下滾動,點擊“創(chuàng)建數(shù)據(jù)庫”。
現(xiàn)在選擇“在測試模式下啟動”并單擊“啟用”。
現(xiàn)在您的數(shù)據(jù)庫已經(jīng)創(chuàng)建,您將不得不再次來到這里來控制您的LED,現(xiàn)在只需在記事本中復制給定的URL,不帶斜杠和http。這是您的firebase主機,您將在稍后需要。
使用Firebase設(shè)置ESP32模塊
要使用谷歌firebase與ESP32一起工作,您將需要一個firebase庫,因此首先使用下面的鏈接下載該庫并將其保存在Arduino庫文件中。
現(xiàn)在打開Arduino IDE,轉(zhuǎn)到Sketch- > include Library- > Add . zip Library并添加從上面鏈接下載的文件。
安裝庫之后,您就可以使用ESP32使用谷歌firebase了。
現(xiàn)在轉(zhuǎn)到工具,選擇ESP32 Dev board和適當?shù)腃OM端口,復制下面給出的代碼,并編輯網(wǎng)絡(luò)憑據(jù),firebase密鑰和firebase主機。編輯后使用Arduino IDE將代碼上傳到ESP32。
谷歌Firebase ESP32編程
使用ESP32控制LED的完整代碼在教程結(jié)束時給出
首先包括使用ESP32和firebase的庫。
現(xiàn)在輸入您的firebase主機、密鑰和網(wǎng)絡(luò)憑據(jù)。
在設(shè)置功能中,定義輸出引腳,延遲,波特率并連接到Wi-Fi。
下面的語句嘗試連接firebase服務(wù)器。如果主機地址和授權(quán)密鑰正確,則連接成功。
這是由firebase庫提供的用于向firebase服務(wù)器發(fā)送字符串的類。通過這個我們可以改變LED的狀態(tài)。
在將一個狀態(tài)字符串發(fā)送到firebase路徑后,編寫以下語句從同一路徑獲取LED的狀態(tài)并將其保存到變量中。
如果接收到的字符串是“ON”或“ON”,那么只需打開輸出LED。
如果接收到的字符串是“OFF”或“OFF”,那么只需關(guān)閉輸出LED。
如果接收到的字符串不是這些,那么就忽略并打印一些錯誤消息。
輸出
上傳代碼后,打開串行監(jiān)視器,在瀏覽器中打開firebase并轉(zhuǎn)到控制臺,然后選擇前面創(chuàng)建的項目。在這個進入數(shù)據(jù)庫,它會顯示最初的LED狀態(tài)是OFF,從這里你可以通過在這里寫ON來改變LED狀態(tài),你的LED會變成ON狀態(tài),你也可以在串行監(jiān)視器上看到你的LED狀態(tài)。
本文編譯自iotdesignpro