ESP32和ThingSpeak:如何使用ESP32將數(shù)據(jù)發(fā)送到云端
ESP32是物聯(lián)網(wǎng)應(yīng)用的強(qiáng)大工具,內(nèi)置藍(lán)牙,溫度傳感器,霍爾傳感器等。在之前的教程中,我們已經(jīng)學(xué)習(xí)了如何使用Arduino IDE對ESP32進(jìn)行編程。在這個DIY教程中,我們將看到如何使用ESP32上傳或發(fā)送數(shù)據(jù)到ThingSpeak云。為了簡單起見,這里的內(nèi)置溫度傳感器和霍爾傳感器數(shù)據(jù)將被發(fā)送到ThingSpeak,在下一個教程中,我們將與ESP32連接一個溫度傳感器,并從世界任何地方監(jiān)控它。
ThingSpeak是一個免費(fèi)的在線顯示數(shù)據(jù)的網(wǎng)絡(luò)服務(wù),你可以從任何地方訪問和監(jiān)控來自ThingSpeak的數(shù)據(jù)。你可以使用任何物聯(lián)網(wǎng)設(shè)備向ThingSpeak發(fā)送數(shù)據(jù),就像以前我們使用樹莓派連接ThingSpeak云一樣。
先決條件
?ESP32
?USB電纜
?Arduino IDE
在Arduino IDE中準(zhǔn)備ESP32
第一步:首先你必須下載并安裝Arduino IDE軟件。如果您已經(jīng)在PC上安裝了IDE,那么請確保它是最新版本的IDE,因?yàn)榕f版本不包括ESP32板。
第二步:安裝完成后,打開IDE,進(jìn)入Files -> Preferences,打開Preferences窗口,看到“Additional Boards Manager URL”如下:
第三步:這個框可能是空的或包含一些其他的URL,如果你以前使用過它的ESP8266。你只需要將下面的URL粘貼到這個框中,如果框中已經(jīng)包含了另一個URL,那么通過使用逗號(,)分隔另一個URL來粘貼它。
第4步:粘貼給定的URL后,我的窗口看起來像這樣,因?yàn)槲乙呀?jīng)使用了ESP82666,現(xiàn)在按下OK,窗口將消失。
第五步:現(xiàn)在轉(zhuǎn)到Tools-> Board-> Board Manager,搜索ESP32并按install,這將需要一些時間來安裝,請確保您在安裝時有互聯(lián)網(wǎng)連接,安裝窗口如下所示:
在此之后,關(guān)閉板管理器窗口,您的IDE已準(zhǔn)備好與ESP32一起工作。
ESP32的ThingSpeak設(shè)置
ThingSpeak是一個免費(fèi)的網(wǎng)絡(luò)服務(wù),可以幫助我們進(jìn)行基于物聯(lián)網(wǎng)的項(xiàng)目。通過使用ThingSpeak服務(wù)器,我們可以使用ThingSpeak提供的API和通道在互聯(lián)網(wǎng)上監(jiān)控我們的數(shù)據(jù)。在本節(jié)中,我將介紹如何將ESP32的傳感器數(shù)據(jù)發(fā)送到ThingSpeak服務(wù)器。為此,您必須遵循以下步驟:
首先,創(chuàng)建一個帳戶并登錄到該服務(wù)器。
登錄后,您會發(fā)現(xiàn)下面的窗口中列出的頻道數(shù)量轉(zhuǎn)到新頻道。
點(diǎn)擊新通道后,你會發(fā)現(xiàn)一個窗口,你必須在其中輸入一些關(guān)于通道的詳細(xì)信息,在這個項(xiàng)目中,我們想分析ESP32的溫度和霍爾傳感器值,所以你需要2個字段。因此,輸入所示的詳細(xì)信息并保存通道。
保存頻道后,您會發(fā)現(xiàn)頻道統(tǒng)計(jì)窗口顯示有關(guān)頻道的詳細(xì)信息。
現(xiàn)在轉(zhuǎn)到API密鑰菜單,其中顯示您寫入API密鑰和讀取API密鑰,復(fù)制寫入API密鑰,因?yàn)槟鷮⒃贓SP32編程期間需要此API。
基于Arduino IDE的ESP32編程
這個項(xiàng)目的編程部分對完成任務(wù)起著重要的作用,在這個項(xiàng)目中我將使用Arduino IDE對我的ESP32進(jìn)行編程。正如我之前所說,它有內(nèi)置霍爾傳感器和溫度傳感器,所以我必須包括兩個參數(shù)庫來測量它們。
我將把整個程序分成不同的部分來解釋。
這一部分的編程將通過包含temperature_sens_read()庫來測量溫度。
現(xiàn)在,通過包括WiFi.h庫,我允許我的控制器連接到互聯(lián)網(wǎng)。
在本節(jié)中,您必須從ThingSpeak服務(wù)器輸入您的Write API密鑰,并給出您的熱點(diǎn)的SSID和密碼。
此部分允許將ESP連接到熱點(diǎn)。
在本節(jié)中初始化所需的參數(shù)
在下面的部分中,我定義了我的ThingSpeak服務(wù)器字段,我想在哪個字段上獲得之前在ThingSpeak字段編號中定義的溫度或霍爾傳感器值。
在下面的代碼中,我給出了有關(guān)主機(jī)和API密鑰的詳細(xì)信息。并在串行監(jiān)視器上打印溫度和霍爾傳感器值。
本文最后給出了該項(xiàng)目的完整代碼?,F(xiàn)在要在ESP32中上傳程序,我們必須遵循以下一些步驟:
打開Arduino IDE并創(chuàng)建一個新文件并將其保存在您想要的位置。
復(fù)制給定的代碼。
進(jìn)入Tools——> Board——> ESP32 Dev Module。
現(xiàn)在轉(zhuǎn)到Tools—>Port,選擇ESP32連接的端口。
現(xiàn)在單擊upload上傳代碼。
上傳完成后,您將在輸出控制臺中發(fā)現(xiàn)如下消息。
現(xiàn)在打開你的串行監(jiān)視器,按下ESP32的重置按鈕,它開始連接到你的熱點(diǎn)。
連接成功后,它開始在串行監(jiān)視器窗口上顯示溫度和霍爾傳感器值,并將這些值發(fā)送到ThingSpeak。
現(xiàn)在在瀏覽器中打開你的ThingSpeak帳戶,你會發(fā)現(xiàn)顯示溫度和霍爾傳感器值的圖表。
這就是如何使用ESP32成功地將溫度和霍爾傳感器值發(fā)送到ThingSpeak云?,F(xiàn)在,您可以簡單地將任何傳感器添加到ESP32,并可以將傳感器值發(fā)送到ThingSpeak物聯(lián)網(wǎng)云,以便從任何地方進(jìn)行監(jiān)控。
本文編譯自iotdesignpro