Inhoudsopgave:
- Stap 1: Een op ESP8266 gebaseerd NodeMCU-bord
- Stap 2: Pin-diagram
- Stap 3: DHT11 - Vochtigheids- en temperatuursensor
- Stap 4: Inleiding tot Mongoose OS
- Stap 5: De Mongoose-installatiewizard
- Stap 6: Apparaatstatus - Online
- Stap 7: Apparaat inrichten op AWS IOT
- Stap 8: De voorbeeldcode in het NodeMCU-bord laden
- Stap 9: Aan de slag met AWS-account
- Stap 10: AWS CLI-opdrachtregelhulpprogramma (optioneel)
- Stap 11: Amazon-webservices (GUI)
- Stap 12: AWS IOT Core
- Stap 13: AWS IOT - Monitor
- Stap 14: AWS IOT - Abonnementen
- Stap 15: Het standaardbericht publiceren
- Stap 16: De op de knop gedrukte informatie publiceren
- Stap 17: Publiceer de temperatuur- en vochtigheidswaarden op het AWS IOT-platform
- Stap 18: Taak
Video: Aan de slag met Amazon AWS IoT en ESP8266: 21 stappen
2024 Auteur: John Day | [email protected]. Laatst gewijzigd: 2024-01-30 11:16
Dit project laat zien hoe u de ESP8266-module kunt nemen en deze rechtstreeks kunt verbinden met AWS IOT met behulp van Mongoose OS. Mongoose OS is een open source besturingssysteem voor microcontrollers dat cloudconnectiviteit benadrukt. Het is ontwikkeld door Cesanta, een in Dublin gevestigd bedrijf voor embedded software en aan het einde van het project zou u de temperatuur en de vochtigheidswaarden van de DHT11-temperatuursensor moeten kunnen meten en publiceren op het AWS IOT-platform
Voor dit project hebben we nodig:
Een op ESP8266 gebaseerd NodeMCU-bord
DHT 11 temperatuursensor
De knipperende tool van Mongoose OS
Een USB-kabel om het NodeMCU-bord op de computer aan te sluiten
Jumber draden
AWS-account dat u van plan bent te gebruiken
Stap 1: Een op ESP8266 gebaseerd NodeMCU-bord
De ESP8266 is de naam van een microcontroller ontworpen door Espressif Systems. De ESP8266 zelf is een op zichzelf staande Wi-Fi-netwerkoplossing die een brug vormt van de bestaande microcontroller naar Wi-Fi en is ook in staat om zelfstandige toepassingen uit te voeren. Deze module wordt geleverd met een ingebouwde USB-connector en een rijk assortiment aan pin-outs. Met een micro-USB-kabel kun je NodeMCU devkit op je laptop aansluiten en zonder problemen flashen, net als Arduino
Specificatie
• Spanning: 3,3V.
• Wi-Fi Direct (P2P), soft-AP.
• Stroomverbruik: 10uA~170mA.
• Flash-geheugen aan te sluiten: 16 MB max (512 K normaal).
• Geïntegreerde TCP/IP-protocolstack.
• Processor: Tensilica L106 32-bit.
• Processorsnelheid: 80~160MHz.
• RAM: 32K + 80K.
• GPIO's: 17 (gemultiplext met andere functies).
• Analoog naar digitaal: 1 ingang met een resolutie van 1024 stappen.
• +19,5 dBm uitgangsvermogen in 802.11b-modus
• 802.11-ondersteuning: b/g/n.
• Maximale gelijktijdige TCP-verbindingen: 5
Stap 2: Pin-diagram
Stap 3: DHT11 - Vochtigheids- en temperatuursensor
De DHT11 is een eenvoudige, goedkope digitale temperatuur- en vochtigheidssensor. Het gebruikt een capacitieve vochtigheidssensor en een thermistor om de omringende lucht te meten, en spuugt een digitaal signaal uit op de datapin (geen analoge ingangspinnen nodig). Het is vrij eenvoudig te gebruiken, maar vereist een zorgvuldige timing om gegevens te verzamelen. Het enige echte nadeel van deze sensor is dat je er maar eens in de 2 seconden nieuwe gegevens van kunt krijgen
Functies
Volledig temperatuurgecompenseerd
Relatieve vochtigheid en temperatuurmeting
Gekalibreerd digitaal signaal
Uitstekende stabiliteit op lange termijn
Extra componenten niet nodig
Lange transmissieafstand
Laag stroomverbruik
Communicatieproces (enkeldraads tweerichtingsverkeer)
Het interessante in deze module is het protocol dat gebruikt wordt om gegevens over te dragen. Alle sensormetingen worden verzonden met behulp van een enkele draadbus, wat de kosten verlaagt en de afstand vergroot. Om gegevens over een bus te verzenden, moet u de manier waarop de gegevens worden overgedragen beschrijven, zodat zender en ontvanger kunnen begrijpen wat elkaar zegt. Dit is wat een protocol doet. Het beschrijft de manier waarop de gegevens worden verzonden. Op DHT-11 wordt de 1-draads databus met een weerstand omhoog getrokken naar VCC. Dus als er niets is gebeurd, is de spanning op de bus gelijk aan VCC. Het communicatieformaat kan in drie fasen worden verdeeld:
1) Verzoek:
2) Reactie
3) Gegevens lezen
Stap 4: Inleiding tot Mongoose OS
Mongoose OS is een open-source besturingssysteem voor kleine embedded systemen. Het is ontworpen om te draaien op apparaten zoals microcontrollers, die vaak beperkt zijn met geheugen in de orde van tientallen kilobytes, terwijl het een programmeerinterface blootlegt die toegang biedt tot moderne API's die normaal gesproken te vinden zijn op krachtigere apparaten. Een apparaat met Mongoose OS heeft toegang tot functionaliteit van het besturingssysteem, zoals bestandssystemen en netwerken, plus software op een hoger niveau, zoals een JavaScript-engine en API's voor cloudtoegang.
Mongoose OS Flashing-tool
Flashing-tool wordt gebruikt om het Mongoose-besturingssysteem in ESP8266 te flashen. Koop eerst een van de ondersteunde kaarten, zoals de ESP8266 NodeMCU, en sluit deze aan op uw computer en volg dan deze stappen:
Navigeer naar de Mongoose OS-downloadwebpagina en download de Mos-tool. (Maar in dit project gaan we de oudere versie van Mongoose OS gebruiken)
Voer het installatiebestand van Mos (Mongoose OS) uit en volg de installatiewizard:
Stap 5: De Mongoose-installatiewizard
Stap 6: Apparaatstatus - Online
Na het voltooien van de drie stappen, krijgt u het onderstaande bericht en wordt de apparaatstatus online. Nu kan onze ESP8266-module communiceren met alle externe apparaten
Stap 7: Apparaat inrichten op AWS IOT
Voordat we evenementen naar AWS kunnen sturen, moeten we een beveiligde verbinding met AWS IOT kunnen maken. Om dit te doen, moeten we de ESP voorzien van de AWS-certificaten. Kies in de installatiewizard van Mongoose OS het menu Device Config en kies vervolgens de juiste AWS-regio en het AWS-beleid voor uw AWS-omgeving. Klik op de Provision with AWS IOT-knop. Het apparaat wordt ingesteld met de juiste informatie om verbinding te maken met de AWS-service. De certificaten worden automatisch geïnstalleerd.
Opmerking:
De gebruiker kan de juiste AWS-regio en AWS-beleid selecteren. In ons scenario hebben we AWS-regio geselecteerd als ap-southeast-1 en AWS-beleid als mos-standaard
Na de voltooiing van het inrichtingsapparaat op AWS IOT, kan de esp8266 Wi-Fi-module nu communiceren met AWS -IOT
Stap 8: De voorbeeldcode in het NodeMCU-bord laden
Nadat u de Mongoose-installatiewizard hebt uitgevoerd en u op het menu met apparaatbestanden klikt, is er een bestand met de naam init.js. In dat bestand bevindt zich een voorbeeldcode. Als u op de knop Opslaan + Opnieuw opstarten klikt, wordt de voorbeeldcode geladen en de uitvoer kan worden bekeken vanuit de apparaatlogboeken
Stap 9: Aan de slag met AWS-account
Wat is AWS?
Amazon Web Services (AWS) is een cloudserviceprovider van Amazon, die diensten levert in de vorm van bouwstenen, deze bouwstenen kunnen worden gebruikt om elk type applicatie in de cloud te maken en te implementeren. Deze services of bouwstenen zijn ontworpen om met elkaar samen te werken en resulteren in applicaties die geavanceerd en zeer schaalbaar zijn.
Hoe instellen?
Er zijn twee manieren om AWS-services in te stellen
AWS CLI-opdrachtregelhulpprogramma gebruiken
AWS GUI gebruiken
Stap 10: AWS CLI-opdrachtregelhulpprogramma (optioneel)
Eerst moeten we AWS CLI installeren. AWS CLI is een opdrachtregelprogramma dat opdrachten biedt voor interactie met AWS-services. Hiermee kunt u de functionaliteit van de AWS Management Console vanaf de terminal gebruiken. Mongoose gebruikt deze tool om het IOT-apparaat in te richten op AWS IOT. De AWS CLI heeft uw inloggegevens nodig om verbinding te kunnen maken met AWS. Om in te stellen, voert u aws configure uit vanaf de opdrachtregel en voert u uw toegangsgegevens (uw inloggegevens) in. In eenvoudige bewoordingen kunt u Amazon Web Services openen en beheren via een eenvoudige en intuïtieve webgebaseerde gebruikersinterface. Als u zich zorgen maakt over toegang tot sommige functies met een mobiele telefoon, kunt u met de mobiele app van AWS Console snel bronnen bekijken terwijl u onderweg bent.
Stap 11: Amazon-webservices (GUI)
Na de inrichting met AWS kunnen we inloggen op de AWS-beheerconsole, onder het tabblad Services hebben we verschillende categorieën. Voordat we beginnen met het verkennen van de functies van deze console, moet u een account maken op AWS. Voor mensen die geen account hebben, kunnen de AWS-website bezoeken en een gratis account aanmaken. U moet uw creditcard-/debetkaartgegevens invoeren. AWS brengt geen kosten in rekening tijdens uw gratis abonnement zolang u de services gebruikt volgens de gespecificeerde limieten.
Stap 12: AWS IOT Core
Na het inloggen wordt u naar de volgende pagina geleid en selecteert u onder het internet der dingen de IOT-kern
Stap 13: AWS IOT - Monitor
Nadat u de IOT-kern hebt geselecteerd, verschijnt de bovenstaande pagina en selecteert u vervolgens het testmenu
Stap 14: AWS IOT - Abonnementen
Nadat u het menu Test hebt geselecteerd, wordt u doorgestuurd naar Abonnementen. Geef in het abonnementsonderwerp het juiste onderwerp op dat u gebruikt en klik op de knop Abonneren op onderwerp
Stap 15: Het standaardbericht publiceren
Daarna wordt u doorverwezen naar de bovenstaande pagina. Als u op Publiceren naar onderwerp klikt, hebben we het voorbeeldbericht dat hier standaard wordt weergegeven
Opmerking: als u een nieuwe code wilt schrijven en deze in het NodeMCU-bord wilt laden (de code die we schrijven moet worden geladen in het apparaatbestandsbeheer > init.js-bestand, dan moet u de onderwerpnaam in de code opnemen. Na het opnemen van de onderwerpnaam, je moet dezelfde onderwerpnaam gebruiken in de sectie abonnementen om de uitvoer te publiceren
Stap 16: De op de knop gedrukte informatie publiceren
Stap 17: Publiceer de temperatuur- en vochtigheidswaarden op het AWS IOT-platform
Stap 18: Taak
Sluit het circuit aan zoals hieronder getoond
Flash het mangoest-besturingssysteem op de ESP8266-module
Apparaat inrichten op AWS IOT
Laad de programmeercode in het NodeMCU-bord
Controleer de output in de apparaatlogs (zie figuur 9)
Log in op het AWS-account
Selecteer het IOT-kernsubmenu
Selecteer de optie Test in het gedeelte MQTT-client
Specificeer het juiste onderwerp in de abonnementen
Klik op de knop publiceren naar onderwerp
Zorg ervoor dat wanneer u op de flitsknop drukt, u de temperatuur- en vochtigheidswaarden als berichten krijgt
Aanbevolen:
Aan de slag met draadloze temperatuur- en trillingssensoren met groot bereik: 7 stappen
Aan de slag met draadloze temperatuur- en trillingssensoren met groot bereik: Soms zijn trillingen de oorzaak van ernstige problemen in veel toepassingen. Van machineassen en lagers tot de prestaties van de harde schijf, trillingen veroorzaken schade aan de machine, vroegtijdige vervanging, lage prestaties en veroorzaken een grote aanslag op de nauwkeurigheid. Toezicht houden
Aan de slag met de M5StickV AI + IOT-camera: 6 stappen (met afbeeldingen)
Aan de slag met de M5StickV AI + IOT-camera: kort overzicht De M5StickV is een kleine AI + IOT-camera met een diameter van bijna 2 munten. degelijke specificaties. De camera wordt aangedreven door ongelooflijke
Aan de slag met MicroPython op de ESP8266: 10 stappen (met afbeeldingen)
Aan de slag met MicroPython op de ESP8266: Wil je een andere manier om de ESP8266-gebaseerde boards te programmeren in plaats van de gebruikelijke methode met Arduino IDE samen met C/C++ programmeertaal? In deze tutorial leren we wie je een ESP8266 moet configureren en besturen bord met behulp van MicroPython.BUIL
Aan de slag met AWS IoT met draadloze temperatuursensor met MQTT - Ajarnpa
Aan de slag met AWS IoT met draadloze temperatuursensor met behulp van MQTT: in eerdere Instructables hebben we verschillende cloudplatforms doorlopen, zoals Azure, Ubidots, ThingSpeak, Losant enz. We gebruiken het MQTT-protocol voor het verzenden van de sensorgegevens naar de cloud in bijna het hele cloudplatform. Voor meer infor
IoT Analoge Input - Aan de slag met IoT: 8 stappen
IoT Analoge Input - Aan de slag met IoT: Inzicht in analoge inputs is een cruciaal onderdeel om te begrijpen hoe de dingen om ons heen werken, de meeste, zo niet alle sensoren zijn analoge sensoren (soms worden deze sensoren omgezet naar digitaal). In tegenstelling tot digitale ingangen die alleen aan of uit kunnen staan, is analoge ingang