Obsah:

Základy IoT: Pripojenie IoT k cloudu pomocou systému Mongoose OS: 5 krokov
Základy IoT: Pripojenie IoT k cloudu pomocou systému Mongoose OS: 5 krokov

Video: Základy IoT: Pripojenie IoT k cloudu pomocou systému Mongoose OS: 5 krokov

Video: Základy IoT: Pripojenie IoT k cloudu pomocou systému Mongoose OS: 5 krokov
Video: 🚀 RUTUBE и ТОЧКА. Разработка РУТУБА за 5 часов *БЕЗ ВОДЫ* [Next / React / Nest / PostgreSQL / Redux] 2024, Júl
Anonim
Základy IoT: Pripojenie IoT k cloudu pomocou systému Mongoose OS
Základy IoT: Pripojenie IoT k cloudu pomocou systému Mongoose OS
Základy IoT: Pripojenie IoT k cloudu pomocou systému Mongoose OS
Základy IoT: Pripojenie IoT k cloudu pomocou systému Mongoose OS

Ak ste človek, ktorý sa zaoberá drotárstvom a elektronikou, častejšie sa stretnete s pojmom internet vecí, ktorý sa zvyčajne označuje skratkou IoT, a ktorý označuje sadu zariadení, ktoré sa môžu pripájať na internet! Keďže som sám takým človekom, fascinovalo ma, keď som zistil, že také skvelé zariadenia sú pre mňa ľahko dostupné. Už len myšlienka na možnosť prepojiť moje projekty s malým hardvérom s internetom a myslieť na množstvo brán, ktoré sa otvoria mojim projektovým myšlienkam, ma napumpovala.

Ale povedať, že IoT sa má pripojiť k internetu, nie je také jednoduché, ako ho kúpiť z regálu a zapnúť. A okrem toho, aby sa zariadenie pripojilo k internetu, musíme tiež sprístupniť na internete niekoľko užitočných údajov. Tento návod sa zaoberá postupom, ktorý je potrebný na dosiahnutie vyššie uvedeného cieľa, a je určený pre čitateľov všetkých úrovní skúseností, od začiatočníkov až po veteránov, ktorí sú v oblasti internetu vecí noví.

V tomto návode ako príklad ukážem, ako nakresliť graf hodnôt vnútorných senzorov teploty na vývojovej doske ESP32, čo by malo čitateľom poskytnúť dobrú predstavu o procese.

Aj keď tento návod používa ESP32 a Mongoose OS, postup je možné rozšíriť na všetky existujúce IoT a firmvér!

Zásoby

Aby ste mohli sami implementovať tento návod, budete potrebovať iba minimálne množstvo hardvéru a sú to tieto:

  • Internet of Thing (IoT): Použil som lacný klon vývojovej dosky ESP32. Ak plánujete kúpiť novú vývojovú dosku ESP32, musíte sa pozrieť na dosku ESP32 spoločnosti DFRobot.
  • Dátový kábel: Použite kábel, ktorý vaše IoT vyžaduje na blikanie atď.
  • Batéria (voliteľné): Kúpte si ju iba vtedy, ak máte v úmysle napájať IoT na dlhší čas.
  • Mini Breadboard (voliteľné)

Odporúčam čitateľovi použiť IoT odlišný od ESP32, aby skutočne porozumel tomu, čo sa tu robí, namiesto toho, aby ma jednoducho napodobňoval. Verte mi, tento proces vás bude baviť implementovať pomocou vlastnej mysle v niektorých ďalších IoT, napríklad ESP8266 by bola dobrá voľba.

Krok 1: Úvod do MQTT

Úvod do MQTT
Úvod do MQTT

Čo je MQTT?

"MQTT je jednoduchý protokol na odosielanie správ, navrhnutý pre obmedzené zariadenia s nízkou šírkou pásma. Je to teda dokonalé riešenie pre aplikácie internetu vecí. MQTT vám umožňuje odosielať príkazy na ovládanie výstupov, čítať a publikovať údaje zo senzorových uzlov a mnoho ďalších." " (Z RandomNerdTutorials)

Ako funguje MQTT?

Predtým, než sa pustíme do techniky, porozmýšľajme najskôr o našom skutočnom svete. Predpokladajme, že vás zaujíma zbierka kariet, ktorú vlastní priateľ vášho priateľa, povedzme Laurel, ktorého osobne nepoznáte. Keďže vám na tejto zbierke kariet záleží, opýtajte sa svojho priateľa, predpokladajme, Toma, či sa ho Laurel chystá predať alebo nie. Pritom požiadate Toma, aby si kúpil zbierku kariet sám, ak je Laurel ochotná predať, pretože nechcete, aby sa zbierke, po ktorej túžite, dostala do rúk iná osoba! Ako plynie čas, Tom a Laurel sa stretávajú a Laurel po vzájomnej dohode odovzdáva Tomovi svoju zbierku kariet výmenou za peniaze. Po tejto výmene si Tom ponechá karty u seba, kým sa s vami znova nestretne, vtedy vám konečne dá zbierku kariet. Takto prebieha bežná výmena v našom každodennom živote.

V MQTT sú základnými prvkami výmeny vydavateľ (Laurel), predplatiteľ (vy) a maklér (Tom). Jeho pracovný tok je tiež podobný vyššie uvedenému príkladu z reálneho sveta, až na jeden obrovský rozdiel! V MQTT je výmena iniciovaná maklérom, t.j. Laurel by bola prvou, ktorá by sa dostala k Tomovi a oznámila mu, že chce predať svoju zbierku kariet. Ak porovnáme fungovanie MQTT s naším príkladom z reálneho sveta, potom by to bolo nasledovne:

  1. Laurel povie Tomovi, že chce predať svoju zbierku kariet (dáta alebo užitočné zaťaženie) a dá mu karty.
  2. Tom vezme tieto karty do svojho vlastníctva a je otvorený ponukám na vyzdvihnutie kariet. Keď sa s Tomom stretnete a zistí, že vás karty zaujímajú (prihlási sa na odber témy). Tom vám potom dá karty.

Pretože sa celý proces spolieha na makléra a žiadnu priamu interakciu medzi predplatiteľom a vydavateľom, MQTT odstraňuje problémy so synchronizáciou vydavateľa a predplatiteľa. Prítomnosť medziľahlého sprostredkovateľa je výhodou pre zariadenia s obmedzenými zdrojmi, ako sú IoT a mikroprocesory, pretože ich výpočtový výkon nie je dostatočný na to, aby sa prenos údajov mohol vykonávať bežným spôsobom, čo by znamenalo dodatočné režijné náklady, ako je autentifikácia, šifrovanie atď. Okrem toho, MQTT má mnoho ďalších funkcií, ako napríklad ľahká distribúcia typu jedna k mnohým atď., Vďaka ktorým je ideálny pre obmedzené siete a klientov

Krok 2: Úvod do platformy IoT

Čo je to platforma IoT?

„Platforma internetu vecí (IoT) je na vysokej úrovni podporný softvér, ktorý prepája hardvér na hrane, prístupové body a dátové siete s inými časťami hodnotového reťazca (ktorými sú vo všeobecnosti aplikácie pre koncových používateľov). Platformy internetu vecí zvládnuť prebiehajúce úlohy správy a vizualizáciu údajov, ktoré umožňujú používateľom automatizovať svoje prostredie. “(Od Link-Labs)

Abstraktne platforma IoT funguje ako médium medzi používateľom a agentmi zhromažďovania údajov, ktoré sú zodpovedné za reprezentáciu zhromaždených údajov.

V tomto návode plánujeme posunúť namerané hodnoty teploty nášho ESP32 online. Náš ESP32 bude pôsobiť ako vydavateľ MQTT a broker MQTT bude platformou IoT podľa nášho výberu. Všimnite si toho, že v našom projekte neexistuje žiadna úloha predplatiteľa MQTT, pretože údaje reprezentuje samotná platforma z prvej ruky. Platforma IoT bude zodpovedná za ukladanie našich publikovaných údajov a ich peknú reprezentáciu tu, ako čiarový graf. Tu budem ako svoju platformu IoT používať Losant, pretože je voľne použiteľný a ponúka niekoľko dobrých spôsobov, ako reprezentovať údaje. Niektoré ďalšie príklady platforiem internetu vecí sú Google Cloud, Amazon AWS a Adafruit, Microsoft Azure atď. Chcel by som čitateľovi odporučiť, aby si prečítal dokumentáciu k zvolenej platforme IoT.

Nastavenie Losant:

  1. Prihláste sa do Losantu
  2. Vytvorte zariadenie (samostatný typ)
  3. Pridajte do zariadenia niekoľko dátových typov1. Názov: teplota, Typ údajov: Číslo2. Názov: offset, Typ údajov: Číslo3. Názov: jednotka, Typ údajov: Reťazec
  4. Vygenerujte prístupový kľúč a poznačte si ID zariadenia a prístupový kľúč
  5. Vytvorte graf 1. Vytvorte informačný panel. Pridajte do neho blok „Graf časových radov“pomocou premennej teploty a vytvoreného zariadenia.

„Device ID“slúži na to, aby v zariadení fungoval ako jedinečný odtlačok prsta. „Prístupové kľúče“, ako naznačuje názov, umožňujú internetu vecí publikovať na server Losant pod identitou zariadenia.

Krok 3: Pripravte si vydavateľa MQTT

Image
Image

Teraz, keď sme pripravili platformu IoT na príjem a reprezentáciu údajov, musíme pripraviť vydavateľa MQTT, ktorý by bol zodpovedný za zhromažďovanie a odosielanie údajov na platformu.

Náčrt prípravy vydavateľa MQTT je nasledujúci:

  • Napíšte kód: Dajte vydavateľovi (IoT) pokyn, ako zhromažďovať údaje, spracovávať ich a odosielať na platformu IoT. Pokyny sú napísané v ľudsky čitateľných programovacích jazykoch na vysokej úrovni, ktoré sa bežne označujú ako kód.
  • Nahrajte firmvér: IoT týmto pokynom nebude ľahko rozumieť, pretože pôvodne neovládal žiadny jazyk. Na preklenutie tejto jazykovej bariéry medzi človekom a strojom je kód skompilovaný do hrubého súboru inštrukcií, v zásade do súborov hexadecimálnych alebo binárnych hodnôt špecifických pre miesta pamäte vo vnútri IoT, známeho ako firmvér, ktorý sa potom prenesie do IoT.

V tomto návode na použitie, pretože používam svoj šikovný ESP32, uvediem firmvér systému Mongoose OS, ktorý akceptuje programy napísané v jazyku C aj JavaScript. Okrem kompatibility s JS má Mongoose OS stále čo ponúknuť, ako napríklad bezdrôtové aktualizácie, vylepšovanie programu online a vyhradený informačný panel pre zariadenia (mDash) atď.

Pre tento návod som vyvinul aplikáciu s otvoreným zdrojovým kódom pre systém Mongoose OS. Jedná sa o jednoduchú aplikáciu s názvom losant-temp-sensor, ktorá používa MQTT na odosielanie približných hodnôt okolitej teploty na základe hodnôt vnútornej teploty ESP32 do Losant (bezplatná platforma IoT). Pre lepšie porozumenie sa odporúča prejsť kódom aplikácie. Túto aplikáciu budeme vydávať pre tento návod.

Ak ste dobrodružný typ, môžete sa pokúsiť dosiahnuť rovnaký cieľ pomocou firmvéru Arduino-ESP32, ktorý umožňuje používať ESP32 ako Arduino (s možnosťou WiFi).

Krátky prehľad o blikajúcej aplikácii s operačným systémom Mongoose:

  1. Nainštalujte si nástroj mos pre svoj operačný systém.
  2. Otvorte nástroj a vykonajte nasledujúce príkazy:

    1. môj klon
    2. cd teplotný senzor losant
    3. mos build --platform esp32
    4. mos flash
  3. Po úspešnom blikaní nechajte zariadenie reštartovať a potom vykonajte nasledujúce príkazy:

    1. moz wifi "tvoj wifi ssid" "tvoje heslo wifi" napr. moja wifi „Domov“„domov@123“
    2. konfigurujem nastavenú teplotu.basis =

      teplota.jednotka ="

      "napr. konfigurácia konfigurovanej teploty.basis = 33 / temperature.unit =" celsius"

    3. konfiguračná sada zariadenia.id = mqtt.client_id = mqtt.user = mqtt.pass =

Po správnom dokončení všetkých týchto krokov skončíte s ESP32, ktorý bude každých 10 minút pravidelne odosielať údaje o teplote do Losantu. Úspešné publikovanie je označené modrou diódou LED, ako je znázornené na videu vyššie.

Krok 4: Poznámka pod čiarou

Image
Image
Poznámka pod čiarou
Poznámka pod čiarou

Ak ste schopní správne zopakovať predchádzajúce kroky, teraz budete mať pracovný projekt, pomocou ktorého môžete sledovať teplotné trendy vo vašej miestnosti alebo kdekoľvek, kam plánujete projekt umiestniť. Pretože som tento návod udržal tak všeobecný, ako som len mohol, preto môžete svoje IoT použiť na zhromažďovanie údajov všetkých druhov a pokúsiť sa z nich vyvodiť niečo užitočné, alebo to môžete urobiť len kvôli drobeniu, ak sme správne rozumeli tomuto Pokynu.

Pre mňa je najlepšou súčasťou IoT skutočnosť, že nám umožňuje zbierať obrovské množstvo údajov, ktoré sú nepresvedčivé, ak sa berú samy, a prevádzať ich na niečo presvedčivé. To skutočne prináša domovom ducha vedy. Pre mňa bolo veľmi uspokojujúce a poučné pozorovať pokles teploty v mojej miestnosti počas dažďových hodín prostredníctvom môjho grafu.

Aplikácia losant-temp-sensor-app bola optimalizovaná pre spotrebu energie, pretože využíva funkciu hlbokého spánku ESP32, takže ju môžete používať dlhší čas bez obáv o batériu. Energetickú účinnosť môžete ďalej rozšíriť odstránením diódy LED na vývojovej doske. Aktuálny žreb celého nastavenia bol ukázaný vyššie.

Cieľom tohto Instructable, hneď na začiatku, bolo len poskytnúť vám úvod do sveta IoT. Po dokončení tohto návodu sa naučíte základy, ktoré môžete ešte viac posilniť prostredníctvom ďalších online zdrojov.

Aj keď v tejto fáze nebudete môcť vytvárať komplexné projekty, stále by ste však mali mať na pamäti, že ak máte dostatočne silnú tehlu a spôsob, ako ich skombinovať, môžete vytvoriť akúkoľvek predstaviteľnú štruktúru od jednoduchej do komplexu. Rovnako tak, ak budete mať základné znalosti a budete ich vedieť správne používať, umožní vám to postaviť si mnoho protikladov. Preto urobte prvý krok potľapkaním po pleci.

Krok 5: Kredity a podpora

Tento návod sa skladá z ilustrácií, napr. ten, ktorý vysvetľuje výmenu MQTT, ktorú som osobne vyrobil. Tieto ilustrácie boli možné iba vďaka týmto voľne dostupným balíkom SVG:

  • Infografický vektor vytvorený spoločnosťou freepik - www.freepik.com
  • Infografický vektor vytvorený spoločnosťou starline - www.freepik.com
  • Vektor ľudí vytvorený pikisuperstar - www.freepik.com
  • Abstraktný vektor vytvorený spoločnosťou macrovector - www.freepik.com
  • Abstraktný vektor vytvorený spoločnosťou macrovector - www.freepik.com
  • Infografický vektor vytvorený spoločnosťou pikisuperstar - www.freepik.com

Tento návod bol sponzorovaný spoločnosťou DFRobot. DFRobot má úžasnú zbierku elektroniky, takže si ju určite pozrite.

Ak máte pocit, že sa vám tento Instructable páčil a chcete viac takýchto Instructables, potom ma môžete podporiť na Patreone. Ak nemôžete ísť tak ďaleko, môžete ma nasledovať tu na Instructables.

Odporúča: