Innehållsförteckning:

Komma igång med Amazon AWS IoT och ESP8266: 21 steg
Komma igång med Amazon AWS IoT och ESP8266: 21 steg

Video: Komma igång med Amazon AWS IoT och ESP8266: 21 steg

Video: Komma igång med Amazon AWS IoT och ESP8266: 21 steg
Video: How to use ESP32 WiFi and Bluetooth with Arduino IDE full details with examples and code 2024, November
Anonim
Komma igång med Amazon AWS IoT och ESP8266
Komma igång med Amazon AWS IoT och ESP8266

Detta projekt visar hur du tar ESP8266 -modulen och ansluter den direkt till AWS IOT med Mongoose OS. Mongoose OS är ett operativsystem med öppen källkod för mikrokontroller som betonar molnanslutning. Det utvecklades av Cesanta, ett Dublinbaserat inbäddat mjukvaruföretag och i slutet av projektet ska du kunna mäta temperaturen och fuktighetsvärdena från DHT11 temperaturgivare och publicera det på AWS IOT-plattformen

För detta projekt behöver vi:

 Ett ESP8266-baserat NodeMCU-kort

 DHT 11 temperaturgivare

 Mongoose OS blinkande verktyg

 En USB -kabel för att ansluta NodeMCU -kortet till datorn

 Bygeltrådar

 AWS -konto som du tänker använda

Steg 1: Ett ESP8266-baserat NodeMCU-kort

Ett ESP8266-baserat NodeMCU-kort
Ett ESP8266-baserat NodeMCU-kort

ESP8266 är namnet på en mikrokontroller designad av Espressif Systems. Själva ESP8266 är en fristående Wi Fi-nätverkslösning som erbjuder en bro från befintlig mikrokontroller till Wi Fi och kan också köra fristående applikationer. Denna modul levereras med en inbyggd USB-kontakt och ett rikt sortiment av pin-outs. Med en mikro -USB -kabel kan du ansluta NodeMCU devkit till din bärbara dator och blinka utan problem, precis som Arduino

Specifikation

• Spänning: 3,3V.

• Wi-Fi Direct (P2P), mjuk AP.

• Strömförbrukning: 10uA ~ 170mA.

• Flashminne kan anslutas: max 16 MB (512K normalt).

• Integrerad TCP/IP -protokollstack.

• Processor: Tensilica L106 32-bitars.

• Processorhastighet: 80 ~ 160MHz.

• RAM: 32K + 80K.

• GPIO: 17 (multiplexerade med andra funktioner).

• Analog till digital: 1 ingång med 1024 stegs upplösning.

• +19,5 dBm uteffekt i 802.11b -läge

• 802.11 -stöd: b/g/n.

• Maximal samtidig TCP -anslutning: 5

Steg 2: Pin Diagram

Pin Diagram
Pin Diagram

Steg 3: DHT11 - Luftfuktighets- och temperatursensor

DHT11 - Luftfuktighets- och temperatursensor
DHT11 - Luftfuktighets- och temperatursensor

DHT11 är en grundläggande, billig digital temperatur- och luftfuktighetssensor. Den använder en kapacitiv fuktighetssensor och en termistor för att mäta den omgivande luften och spottar ut en digital signal på datapinnen (inga analoga ingångar behövs). Det är ganska enkelt att använda, men kräver noggrann timing för att ta tag i data. Den enda verkliga nackdelen med denna sensor är att du bara kan få ny data från den en gång varannan sekund

Funktioner

 Helkomponent temperaturkompenserad

 Relativ fukt- och temperaturmätning

 Kalibrerad digital signal

 Enastående långsiktig stabilitet

 Extra komponenter behövs inte

 Lång överföringsavstånd

 Låg strömförbrukning

Kommunikationsprocess (enkel tråd tvåvägs)

Det intressanta i denna modul är protokollet som används för att överföra data. Alla sensoravläsningar skickas med en enda trådbuss som minskar kostnaden och förlänger avståndet. För att skicka data över en buss måste du beskriva hur data ska överföras, så att sändare och mottagare kan förstå vad som säger varandra. Detta är vad ett protokoll gör. Den beskriver hur data överförs. På DHT-11 dras 1-tråds databussen upp med ett motstånd mot VCC. Så om inget inträffar kan spänningen på bussen vara lika med VCC. Kommunikationsformat kan delas in i tre steg

1) Begäran

2) Svar

3) Dataläsning

Steg 4: Introduktion till Mongoose OS

Mongoose OS är ett operativsystem med öppen källkod för små inbäddade system. Det är utformat för att köra på enheter som mikrokontroller, som ofta är begränsade med minne i storleksordningen tiotals kilobyte, samtidigt som det avslöjar ett programmeringsgränssnitt som ger tillgång till moderna API: er som normalt finns på kraftfullare enheter. En enhet som kör Mongoose OS har åtkomst till operativsystemets funktioner som filsystem och nätverk, plus programvara på högre nivå, till exempel en JavaScript-motor och molnåtkomst-API: er.

Mongoose OS Flashing tool

Blinkande verktyg används för att blinka Mongoose OS i ESP8266. Först får du en av de styrelser som stöds, som ESP8266 NodeMCU, och ansluter den till din dator, följ sedan dessa steg:

 Navigera till hemsidan för nedladdning av Mongoose OS och ladda ner Mos -verktyget. (Men i det här projektet kommer vi att använda den äldre versionen av Mongoose OS)

 Kör installationsfilen Mos (Mongoose OS) och följ installationsguiden:

Steg 5: Installationsguiden för Mongoose

Installationsguiden för Mongoose
Installationsguiden för Mongoose
Installationsguiden för Mongoose
Installationsguiden för Mongoose
Installationsguiden för Mongoose
Installationsguiden för Mongoose

Steg 6: Enhetsstatus - Online

Enhetsstatus - online
Enhetsstatus - online

När du har slutfört de tre stegen får du meddelandet nedan och enhetsstatusen blir online. Nu kan vår ESP8266 -modul kommunicera med alla fjärranslutna enheter

Steg 7: Tillhandahåll enhet på AWS IOT

Tillhandahålla enhet på AWS IOT
Tillhandahålla enhet på AWS IOT

Innan vi kan skicka händelser till AWS måste vi kunna skapa en säker anslutning till AWS IOT. För att kunna göra det måste vi förse ESP med AWS -certifikat. I installationsguiden för Mongoose OS väljer du Device Config -menyn och väljer sedan lämplig AWS -region och AWS -policyn för din AWS -miljö. Klicka på knappen Provision with AWS IOT. Enheten kommer att konfigureras med rätt information för att ansluta till AWS-tjänsten. Certifikaten installeras automatiskt.

Notera:

Användaren kan välja lämplig AWS-region och AWS-policy. I vårt scenario valde vi AWS-regionen som ap-sydöst-1 och AWS-policy som mos-default

Efter att klargöringsenheten har slutförts på AWS IOT kan nu esp8266 Wi -Fi -modulen kommunicera med AWS -IOT

Steg 8: Ladda provkoden till NodeMCU -kortet

Ladda provkoden till NodeMCU -kortet
Ladda provkoden till NodeMCU -kortet

När du har kört installationsguiden för Mongoose, om du klickar på enhetsfiler -menyn, finns det en fil som heter init.js. I den filen finns det provkod. Om du klickar på knappen Spara +starta om, laddas provkoden och utmatning kan ses från enhetsloggarna

Steg 9: Komma igång med AWS -konto

Vad är AWS?

Amazon Web Services (AWS) är en molntjänstleverantör från Amazon, som tillhandahåller tjänster i form av byggstenar, dessa byggstenar kan användas för att skapa och distribuera alla typer av applikationer i molnet. Dessa tjänster eller byggstenar är utformade för att fungera med varandra och resulterar i applikationer som är sofistikerade och mycket skalbara.

Hur ställer jag in?

Det finns två sätt att konfigurera AWS -tjänster

 Använda kommandoradsverktyget AWS CLI

 Använda AWS GUI

Steg 10: AWS CLI Command Line Utility (valfritt)

Först måste vi installera AWS CLI. AWS CLI är ett kommandoradsverktyg som tillhandahåller kommandon för att interagera med AWS -tjänster. Det gör att du kan använda funktionen som tillhandahålls av AWS Management Console från terminalen. Mongoose använder det här verktyget för att tillhandahålla IOT -enheten på AWS IOT. AWS CLI behöver dina referenser för att kunna ansluta till AWS. För att konfigurera run aws configure från kommandoraden och ange din åtkomstinformation (dina referenser). Med enkla ord kan du komma åt och hantera Amazon Web Services via ett enkelt och intuitivt webbaserat användargränssnitt. Om du är intresserad av att få tillgång till några av funktionerna med mobiltelefon, kan du med AWS Console -mobilappen snabbt se resurser när du är på språng.

Steg 11: Amazon Web Services (GUI)

Amazon Web Services (GUI)
Amazon Web Services (GUI)

Efter tillhandahållande med AWS kan vi logga in på AWS -hanteringskonsolen, under fliken tjänster har vi olika kategorier. Innan vi börjar utforska funktionerna i den här konsolen måste du skapa ett konto på AWS. För personer som inte har ett konto kan du besöka AWS webbplats och skapa ett gratis konto. Du måste ange dina kredit-/bankkortsuppgifter. AWS debiterar dig inte under din kostnadsfria prenumeration så länge du använder tjänsterna enligt de angivna gränserna.

Steg 12: AWS IOT Core

AWS IOT Core
AWS IOT Core

Efter inloggningen kommer du till nästa sida och under sakernas internet väljer du IOT -kärnan

Steg 13: AWS IOT - Monitor

AWS IOT - Monitor
AWS IOT - Monitor

När du väl valt IOT -kärnan visas ovanstående sida och välj sedan testmenyn

Steg 14: AWS IOT - prenumerationer

AWS IOT - Prenumerationer
AWS IOT - Prenumerationer

Efter att du har valt testmenyn kommer du till Prenumerationer. I prenumerationsämnet anger du rätt ämne som du använder och klickar på knappen Prenumerera på ämne

Steg 15: Publicera standardmeddelandet

Publicera standardmeddelandet
Publicera standardmeddelandet

Efter det kommer du till den ovanstående sidan. Om du klickar på Publicera till ämne har vi exempelmeddelandet som visas här som standard

Obs! Om du vill skriva en ny kod och ladda in i NodeMCU -kortet (Koden som vi skriver ska laddas i enhetsfilhanteraren> init.js -filen, då bör du inkludera ämnesnamnet i koden. Efter att du har inkluderat ämnesnamnet, du måste använda samma ämnesnamn i prenumerationsavsnittet för att kunna publicera utdata

Steg 16: Publicera knappen tryckt information

Publicera knappen Pressad information
Publicera knappen Pressad information

Steg 17: Publicera temperatur- och luftfuktighetsvärdena till AWS IOT -plattformen

Publicera temperatur- och luftfuktighetsvärdena till AWS IOT -plattformen
Publicera temperatur- och luftfuktighetsvärdena till AWS IOT -plattformen

Steg 18: Uppgift

 Anslut kretsen enligt nedan

 Flasha mangos OS på ESP8266 -modulen

 Tillhandahålla enhet på AWS IOT

 Ladda programmeringskoden i NodeMCU -kortet

 Kontrollera utmatningen i enhetsloggarna (se bild 9)

 Logga in på AWS -kontot

 Välj undermenyn IOT -kärna

 Välj alternativet Test från MQTT -klientavsnittet

 Ange lämpligt ämne i prenumerationerna

 Klicka på knappen publicera till ämne

 Se till att när du trycker på blixtknappen får du temperaturen, fuktighetsvärdena som meddelanden

Rekommenderad: