入門亞馬遜AWS IoT和ESP8266
掃描二維碼
隨時(shí)隨地手機(jī)看文章
如今,物聯(lián)網(wǎng)(IoT)幾乎被集成到所有設(shè)備中。市場(chǎng)上有許多硬件和軟件物聯(lián)網(wǎng)平臺(tái)可用于構(gòu)建基于物聯(lián)網(wǎng)的應(yīng)用程序。我們已經(jīng)使用了一些硬件物聯(lián)網(wǎng)設(shè)備,如ESP32,樹莓派和ESP8266來(lái)構(gòu)建簡(jiǎn)單的LED項(xiàng)目到復(fù)雜的應(yīng)用程序。此外,物聯(lián)網(wǎng)軟件平臺(tái),如Adafruit, IFTTT, Blynk App, Artik cloud,谷歌Firebase等。
不僅在電子商務(wù)領(lǐng)域,亞馬遜還專注于物聯(lián)網(wǎng),并提供名為AWS物聯(lián)網(wǎng)的云服務(wù)。在這里,AWS IOT代表亞馬遜網(wǎng)絡(luò)服務(wù)物聯(lián)網(wǎng)。這項(xiàng)服務(wù)使我們能夠?qū)⑽覀兊脑O(shè)備連接到互聯(lián)網(wǎng)上,安全地處理、操作和交換數(shù)據(jù)。除了AWS物聯(lián)網(wǎng),亞馬遜網(wǎng)絡(luò)服務(wù)還提供了大量其他功能,如虛擬機(jī)部署、網(wǎng)絡(luò)托管等。
在上一篇入門教程中,我們介紹了如何創(chuàng)建亞馬遜AWS物聯(lián)網(wǎng)云帳戶以及如何訪問(wèn)其功能?,F(xiàn)在,我們將展示如何將ESP8266 NodeMCU與亞馬遜AWS物聯(lián)網(wǎng)云連接起來(lái)。
先決條件
?亞馬遜AWS云服務(wù)上的帳戶(對(duì)此,您可以訪問(wèn)上一篇文章)
?安裝在Arduino IDE中的ESP8266 nodecu庫(kù)。
?ESP8266節(jié)點(diǎn)模塊和USB線纜。
要執(zhí)行此項(xiàng)目,您必須按順序執(zhí)行以下步驟:
使用證書和策略創(chuàng)建AWS
步驟1:-創(chuàng)建帳戶后,在AWS服務(wù)下搜索“iot core”,點(diǎn)擊打開控制臺(tái)。
步驟2:-現(xiàn)在,將出現(xiàn)一個(gè)對(duì)話框;只需點(diǎn)擊“開始”,如下圖所示。
步驟3:打開AWS IoT的主頁(yè)面,您將在其中找到一些入門AWS IoT的文檔。
現(xiàn)在,在左側(cè)單擊“管理”選項(xiàng)。
步驟4:-現(xiàn)在,注冊(cè)一個(gè)要繼續(xù)的東西。一個(gè)東西是一個(gè)可以連接到互聯(lián)網(wǎng)的設(shè)備,所以我們將在這個(gè)控制臺(tái)上創(chuàng)建一個(gè)東西,通過(guò)它我們的設(shè)備可以進(jìn)行通信。
點(diǎn)擊“注冊(cè)一個(gè)東西”按鈕,如下圖所示:
步驟5:自己決定需要多少東西。因?yàn)槟憧梢詣?chuàng)建多個(gè)東西,甚至一個(gè)。為了開始使用AWS物聯(lián)網(wǎng),我們正在創(chuàng)建一個(gè)單一的東西,所以點(diǎn)擊“創(chuàng)建一個(gè)單一的東西”。
步驟6:-命名你的東西,就像我給我的工作。命名后,向下滾動(dòng)并單擊下一步。
步驟7:現(xiàn)在點(diǎn)擊“創(chuàng)建證書”。
步驟8:—現(xiàn)在,AWS將為您之前創(chuàng)建的內(nèi)容提供密鑰。你只能通過(guò)這些鍵訪問(wèn)這個(gè)東西。首先,點(diǎn)擊激活按鈕,下載三個(gè)關(guān)鍵文件并保存在你的電腦上。
上圖所示的三個(gè)文件應(yīng)該下載到系統(tǒng)的一個(gè)文件夾中。
注意:對(duì)于某些用戶,以其他格式下載的CA文件可能會(huì)以代碼流的形式打開。因此,要擺脫這個(gè)問(wèn)題,只需右鍵單擊代碼并將其保存為'。Pem’擴(kuò)展文件。
步驟9:—在創(chuàng)建證書之后,我們需要為這個(gè)東西創(chuàng)建一個(gè)策略。為此,單擊“附加策略”。
步驟10:在這個(gè)時(shí)候,你的帳戶將沒(méi)有政策,因?yàn)槟氵€沒(méi)有創(chuàng)建一個(gè),所以現(xiàn)在點(diǎn)擊“注冊(cè)東西”。
步驟11:現(xiàn)在,將打開一個(gè)窗口,在這里你可以通過(guò)點(diǎn)擊“secure”和左側(cè)菜單中的“policies”來(lái)創(chuàng)建策略。
:步驟12:現(xiàn)在點(diǎn)擊“創(chuàng)建策略”。
步驟13:-這里,根據(jù)您的需要命名您的策略。并且,在操作框中鍵入iot:*,在資源ARN中鍵入*。允許按鈕也應(yīng)該被選中。最后按頁(yè)面末尾的“Create”按鈕創(chuàng)建策略。
步驟14:現(xiàn)在,將打開一個(gè)窗口,在這里單擊“安全”,然后單擊“證書”。因此,您現(xiàn)在有了策略,通過(guò)單擊“certificates”然后單擊“attach policy”來(lái)附加它。
步驟15:現(xiàn)在,選擇您創(chuàng)建的策略的名稱,然后單擊“附加”按鈕。
我們已經(jīng)成功創(chuàng)建并附加了一個(gè)證書和一個(gè)策略?,F(xiàn)在我們可以通過(guò)使用AWS物聯(lián)網(wǎng)控制臺(tái)的“測(cè)試”選項(xiàng)來(lái)檢查它是否正常工作。但在此之前,我們需要我們的東西的經(jīng)紀(jì)人地址。
獲取AWS服務(wù)細(xì)節(jié)
在創(chuàng)建一個(gè)對(duì)象之后,我們需要獲取該對(duì)象的詳細(xì)信息,比如它的代理地址、更新鏈接等,以便從任何地方訪問(wèn)該對(duì)象。為此,點(diǎn)擊“管理”選項(xiàng),然后點(diǎn)擊事物的名稱。
現(xiàn)在將打開一個(gè)窗口,在這個(gè)窗口中導(dǎo)航到“交互”,您將獲得訪問(wèn)您的東西的所有鏈接。
圈出的信息是你的AWS區(qū)域,你稍后會(huì)在編程時(shí)用到,整個(gè)HTTPS鏈接是你的AWS域名,它也會(huì)在你的代碼中用到,所以把它復(fù)制到你的記事本上。
這個(gè)圈出的信息是您的AWS路徑,您也將在代碼中需要。
這就是這個(gè)服務(wù),現(xiàn)在我們將需要AWS ID和AWS密鑰。
獲取AWS IoT的AWS ID和AWS密鑰
要獲取AWS ID和AWS密鑰,請(qǐng)導(dǎo)航到此菜單頂部的服務(wù),并搜索IAM。
單擊它,將出現(xiàn)一個(gè)歡迎窗口。
在這里,點(diǎn)擊“用戶”,然后點(diǎn)擊“添加用戶”添加一個(gè)用戶。
現(xiàn)在,給出一個(gè)用戶名,并在訪問(wèn)類型中單擊“程序化訪問(wèn)”,然后單擊“下一步”。
再次彈出一個(gè)窗口,點(diǎn)擊“創(chuàng)建組”。
命名組,點(diǎn)擊“創(chuàng)建組”。
現(xiàn)在,點(diǎn)擊“下一步”兩次,之后將創(chuàng)建一個(gè)用戶,您將獲得您的訪問(wèn)ID和秘密訪問(wèn)密鑰。此外,您還可以下載此憑證文件。
現(xiàn)在,回到主窗口,在左側(cè)單擊“Policies”,然后單擊“create policy”。
之后,搜索“IoT”,在actions中選擇“All IoT actions”,在Resources中選擇“All Resources”,然后點(diǎn)擊Review policy。
命名您的策略并單擊“Create policy”為您的物品創(chuàng)建策略。
好啊! !完成策略的創(chuàng)建。
現(xiàn)在,我們需要使用Arduino IDE為亞馬遜AWS物聯(lián)網(wǎng)云編寫ESP8266代碼。
利用Arduino IDE為亞馬遜AWS物聯(lián)網(wǎng)云準(zhǔn)備ESP8266 NodeMCU
為了使用AWS物聯(lián)網(wǎng)云服務(wù),我們將需要它的庫(kù),因此為此打開Arduino IDE并轉(zhuǎn)到Sketch---->包括庫(kù)----->管理庫(kù)并搜索AWS庫(kù),將有一個(gè)用于ESP8266的AWS庫(kù),安裝它。
這個(gè)項(xiàng)目的完整代碼在最后給出,但在上傳你的NodeMCU之前,你必須編輯代碼中的一些參數(shù)。例如,在下面的代碼中輸入您網(wǎng)絡(luò)的WiFi憑據(jù)。
現(xiàn)在,在下面的代碼中,輸入您在前面步驟中獲得的參數(shù)?,F(xiàn)在,在編輯代碼后,將其上傳到ESP8266 NodeMCU中。
測(cè)試Esp8266 NodeMCU與亞馬遜AWS物聯(lián)網(wǎng)
上傳代碼后,在瀏覽器中打開AWS控制臺(tái)并進(jìn)入服務(wù),然后再次進(jìn)入IoT Core服務(wù),在此單擊此菜單左側(cè)的“管理”。
現(xiàn)在選擇你之前創(chuàng)建的東西,在這個(gè)菜單的左側(cè)點(diǎn)擊“Shadow”。
之后,在影子文檔窗口中,您將看到由ESP發(fā)送的實(shí)時(shí)消息。
現(xiàn)在打開Arduino IDE的串行監(jiān)視器,看到輸出消息,如下圖所示。
這就是使用ESP8266 NodeMCU向AWS物聯(lián)網(wǎng)云發(fā)送數(shù)據(jù)或消息的方式。
本文編譯自iotdesignpro