INHOUDSOPGAWE:

Aan die gang met Amazon AWS IoT en ESP8266: 21 stappe
Aan die gang met Amazon AWS IoT en ESP8266: 21 stappe

Video: Aan die gang met Amazon AWS IoT en ESP8266: 21 stappe

Video: Aan die gang met Amazon AWS IoT en ESP8266: 21 stappe
Video: IoT: Control Speed of DC motor with NodeMCU ESP8266 and L298N Module 2024, November
Anonim
Aan die gang met Amazon AWS IoT en ESP8266
Aan die gang met Amazon AWS IoT en ESP8266

Hierdie projek wys hoe u die ESP8266 -module kan neem en dit direk met AWS IOT kan koppel met behulp van Mongoose OS. Mongoose OS is 'n oopbron -bedryfstelsel vir mikrobeheerders wat die verbinding met die wolk beklemtoon. Dit is ontwikkel deur Cesanta, 'n in Dublin gebaseerde sagteware-onderneming, en aan die einde van die projek moet u die temperatuur en die humiditeitswaardes van die DHT11-temperatuursensor kan meet en dit op die AWS IOT-platform kan publiseer

Vir hierdie projek benodig ons:

 'n ESP8266-gebaseerde NodeMCU-bord

 DHT 11 temperatuursensor

 Die Mongoose OS -flitsgereedskap

 'n USB -kabel om die NodeMCU -bord aan 'n rekenaar te koppel

 Houtdrade

 'n AWS -rekening wat u van plan is om te gebruik

Stap 1: 'n ESP8266-gebaseerde NodeMCU-raad

'N NodeMCU-raad gebaseer op ESP8266
'N NodeMCU-raad gebaseer op ESP8266

Die ESP8266 is die naam van 'n mikrobeheerder wat deur Espressif Systems ontwerp is. Die ESP8266 self is 'n selfstandige Wi Fi-netwerkoplossing wat as 'n brug van bestaande mikrobeheerder na Wi Fi bied, en kan ook selfstandige toepassings gebruik. Hierdie module het 'n ingeboude USB-aansluiting en 'n uitgebreide reeks pin-outs. Met 'n mikro -USB -kabel kan u NodeMCU devkit aan u skootrekenaar koppel en dit sonder probleme flits, net soos Arduino

Spesifikasie

• Spanning: 3.3V.

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

• Huidige verbruik: 10uA ~ 170mA.

• Flashgeheue kan aangeheg word: maksimum 16 MB (512K normaal).

• Geïntegreerde TCP/IP -protokolstapel.

• Verwerker: Tensilica L106 32-bis.

• Verwerkersnelheid: 80 ~ 160MHz.

• RAM: 32K + 80K.

• GPIO's: 17 (vermenigvuldig met ander funksies).

• Analoog na digitaal: 1 ingang met 'n resolusie van 1024 stappe.

• +19,5 dBm uitsetkrag in die 802.11b -modus

• 802.11 ondersteuning: b/g/n.

• Maksimum gelyktydige TCP -verbindings: 5

Stap 2: Speldiagram

Speldiagram
Speldiagram

Stap 3: DHT11 - Humiditeits- en temperatuursensor

DHT11 - Humiditeits- en temperatuursensor
DHT11 - Humiditeits- en temperatuursensor

Die DHT11 is 'n basiese, goedkoop digitale temperatuur- en humiditeitsensor. Dit gebruik 'n kapasitiewe humiditeitsensor en 'n termistor om die omringende lug te meet, en spoeg 'n digitale sein op die datapen uit (geen analoog invoerpenne nodig nie). Dit is redelik eenvoudig om te gebruik, maar vereis noukeurige tydsberekening om data te gryp. Die enigste nadeel van hierdie sensor is dat u slegs elke 2 sekondes nuwe data kan kry

Kenmerke

 Volledige temperatuur temperatuur vergoed

 Relatiewe humiditeits- en temperatuurmeting

 Gekalibreerde digitale sein

 Uitstekende langtermynstabiliteit

 Ekstra komponente nie nodig nie

 Lang transmissieafstand

 Lae kragverbruik

Kommunikasieproses (enkeldraad tweerigting)

Die interessante in hierdie module is die protokol wat gebruik word om data oor te dra. Al die sensorlesings word gestuur met 'n enkeldraadbus wat die koste verlaag en die afstand verleng. Om data oor 'n bus te stuur, moet u die manier waarop die data oorgedra word, beskryf, sodat sender en ontvanger kan verstaan wat mekaar sê. Dit is wat 'n protokol doen. Dit beskryf die manier waarop die data oorgedra word. Op DHT-11 word die 1-draads databus met 'n weerstand na VCC opgetrek. As daar dus niks gebeur nie, is die spanning op die bus gelyk aan VCC. Kommunikasieformaat kan in drie fases geskei word

1) Versoek

2) Reaksie

3) Data lees

Stap 4: Inleiding tot Mongoose OS

Mongoose OS is 'n open-source bedryfstelsel vir klein ingeboude stelsels. Dit is ontwerp om te werk op toestelle soos mikrobeheerders, wat dikwels beperk is tot geheue in die orde van tien kilobytes, terwyl 'n programmeerkoppelvlak blootgestel word wat toegang bied tot moderne API's wat normaalweg op kragtiger toestelle voorkom. 'N Toestel met Mongoose OS het toegang tot die funksies van die bedryfstelsel, soos lêerstelsels en netwerk, plus sagteware op hoër vlak, soos 'n JavaScript-enjin en API's vir wolk toegang.

Mongoose OS -flitsgereedskap

'N Flitsgereedskap word gebruik om die Mongoose OS in ESP8266 te flits. Kry eers een van die ondersteunde borde, soos die ESP8266 NodeMCU, en koppel dit aan u rekenaar, en volg dan die volgende stappe:

 Gaan na die Mongoose OS -aflaai -webblad en laai die Mos -hulpmiddel af. (Maar in hierdie projek gaan ons die ouer weergawe van Mongoose OS gebruik)

 Begin die instellingslêer van Mos (Mongoose OS) en volg die opstelassistent:

Stap 5: Die Mongoose Setup Wizard

Die Mongoose Setup Wizard
Die Mongoose Setup Wizard
Die Mongoose Setup Wizard
Die Mongoose Setup Wizard
Die Mongoose Setup Wizard
Die Mongoose Setup Wizard

Stap 6: Toestelstatus - aanlyn

Toestelstatus - aanlyn
Toestelstatus - aanlyn

Nadat u die drie stappe voltooi het, kry u die onderstaande boodskap en die toestelstatus word aanlyn. Nou kan ons ESP8266 -module met enige afgeleë toestelle kommunikeer

Stap 7: Voorsien toestel op AWS IOT

Voorsien toestel op AWS IOT
Voorsien toestel op AWS IOT

Voordat ons geleenthede na AWS kan stuur, moet ons 'n veilige verbinding met AWS IOT kan maak. Om dit te kan doen, moet ons die ESP van die AWS -sertifikate voorsien. Kies in die Mongoose OS -opstellingsassistent die Device Config -kieslys en kies dan die toepaslike AWS -streek en die AWS -beleid vir u AWS -omgewing. Klik op die knoppie Voorsiening met AWS IOT. Die toestel sal die korrekte inligting opstel om aan te sluit by die AWS-diens. Die sertifikate word outomaties geïnstalleer.

Let wel:

Gebruiker kan die toepaslike AWS-streek en AWS-beleid kies. In ons scenario het ons AWS-streek as ap-suidooste-1 gekies en AWS-beleid as standaard

Na die voltooiing van die voorsieningsapparaat op AWS IOT, kan die esp8266 Wi -Fi -module nou met AWS -IOT kommunikeer

Stap 8: Laai die voorbeeldkode in NodeMCU -bord

Laai die voorbeeldkode in NodeMCU -bord
Laai die voorbeeldkode in NodeMCU -bord

Nadat u die installeringsassistent van Mongoose uitgevoer het, is daar 'n lêer genaamd init.js. As u op die spyskaart lêers op die toestel klik, is daar 'n voorbeeldkode. As u op die knoppie Stoor +herlaai klik, word die voorbeeldkode gelaai en die uitset kan vanaf die toestellogboeke besigtig word

Stap 9: Aan die gang met AWS -rekening

Wat is AWS?

Amazon Web Services (AWS) is 'n wolkdiensverskaffer van Amazon wat dienste in die vorm van boustene lewer; hierdie boustene kan gebruik word om enige tipe toepassing in die wolk te skep en te implementeer. Hierdie dienste of boustene is ontwerp om met mekaar saam te werk en lei tot toepassings wat gesofistikeerd en hoogs skaalbaar is.

Hoe om op te stel?

Daar is twee maniere om AWS -dienste op te stel

 Gebruik AWS CLI -opdragreëlprogram

 Die gebruik van AWS GUI

Stap 10: AWS CLI Command Line Utility (opsioneel)

Eerstens moet ons AWS CLI installeer. AWS CLI is 'n opdragreëlhulpmiddel wat opdragte bied vir interaksie met AWS -dienste. Dit stel u in staat om die funksies wat die AWS Management Console bied vanaf die terminale te gebruik. Mongoose gebruik hierdie instrument om die IOT -toestel op AWS IOT te voorsien. Die AWS CLI benodig u geloofsbriewe om aan AWS te kan koppel. Om run aws op te stel, konfigureer vanaf die opdragreël en voer u toegangsinligting (u geloofsbriewe) in. In eenvoudige woorde, kan u toegang tot Amazon Web Services verkry en bestuur deur middel van 'n eenvoudige en intuïtiewe webgebaseerde gebruikerskoppelvlak. As u toegang tot sommige van die funksies met behulp van 'n selfoon verkry, kan u met die AWS Console -mobiele app vinnig hulpbronne sien.

Stap 11: Amazon Web Services (GUI)

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

Na die voorsiening van AWS, kan ons by die AWS -bestuurskonsole aanmeld, onder die dienste -oortjie het ons verskillende kategorieë. Voordat ons die funksies van hierdie konsole begin ondersoek, moet u 'n rekening op AWS skep. Vir mense wat nie 'n rekening het nie, kan u die AWS -webwerf besoek en 'n gratis rekening skep. U moet u krediet-/debietkaartbesonderhede invoer. AWS sal u nie gedurende u gratis intekening hef nie, solank u die dienste volgens die gespesifiseerde perke gebruik.

Stap 12: AWS IOT Core

AWS IOT Core
AWS IOT Core

Na die aanmelding word u na die volgende bladsy verwys en onder die internet van dinge die IOT -kern gekies

Stap 13: AWS IOT - Monitor

AWS IOT - Monitor
AWS IOT - Monitor

Sodra u die IOT -kern gekies het, verskyn die bladsy hierbo, en kies dan die toetsmenu

Stap 14: AWS IOT - intekeninge

AWS IOT - Intekeninge
AWS IOT - Intekeninge

Nadat u die toetsmenu gekies het, word u na die subskripsies verwys. In die subskripsie -onderwerp spesifiseer u die toepaslike onderwerp wat u gebruik en klik op die knoppie Teken in op onderwerp

Stap 15: Publiseer die standaardboodskap

Publiseer die verstekboodskap
Publiseer die verstekboodskap

Daarna word u na die bogenoemde bladsy verwys. As u op Publiseer op onderwerp klik, kry ons die voorbeeldboodskap wat standaard hier vertoon word

Nota: as u 'n nuwe kode wil skryf en in die NodeMCU -bord wil laai (die kode wat ons skryf moet in die lêerbestuurder van die toestel> init.js -lêer gelaai word, moet u die onderwerpnaam in die kode insluit. Nadat u die onderwerpnaam ingesluit het, moet u dieselfde onderwerpnaam in die subskripsiegedeelte gebruik om die uitset te publiseer

Stap 16: Publiseer die knoppie -gedrukte inligting

Die publisering van die knoppie gedrukte inligting
Die publisering van die knoppie gedrukte inligting

Stap 17: Publiseer die temperatuur- en humiditeitswaardes op die AWS IOT -platform

Publiseer die temperatuur- en humiditeitswaardes op die AWS IOT -platform
Publiseer die temperatuur- en humiditeitswaardes op die AWS IOT -platform

Stap 18: taak

 Koppel die stroombaan soos hieronder getoon

 Flits die mangoose -bedryfstelsel op die ESP8266 -module

 Voorsien toestel op AWS IOT

 Laai die programmeringskode in die NodeMCU -bord

 Kontroleer die uitset in die apparaatlogboeke (sien figuur 9)

 Meld aan by die AWS -rekening

 Kies die IOT -kern -subkieslys

 Kies die toetsopsie in die afdeling MQTT -kliënt

 Spesifiseer die toepaslike onderwerp in die intekeninge

 Klik op die knoppie Publiseer na onderwerp

 Maak seker dat die temperatuur, humiditeitswaardes as boodskappe as u op die flitsknoppie druk

Aanbeveel: