Obsah:
- Zásoby
- Krok 1: Tlač prípadu (voliteľné)
- Krok 2: Zapojenie
- Krok 3: Vytvorte aplikáciu v sieti vecí
- Krok 4: Pripojenie Arduina k sieti vecí
- Krok 5: Interpretácia údajov o sieti vecí
- Krok 6: Pripojenie vašej aplikácie k AWS
- Krok 7: Vytvorenie lambdy
- Krok 8: Vytvorenie koncového bodu API
- Krok 9: Pripojte svoj závod k sieti sociálnych závodov
- Krok 10: Nakloňte sa a pohladkajte sa po chrbte
Video: Pripojte svoj závod k cloudu: 10 krokov
2024 Autor: John Day | [email protected]. Naposledy zmenené: 2024-01-30 11:57
V našej kancelárii je kaktus, ktorému sa nedostávalo takej pozornosti, akú by si zaslúžilo. Keďže pracujem v IT spoločnosti a chcel som experimentovať s LoRa, bezserverovými riešeniami a AWS, pomenoval som náš kaktus Steeve a napojil som ho na cloud. Teraz môžete Steeve sledovať z takmer akéhokoľvek miesta na svete pomocou webovej stránky, ktorú som pre neho vytvoril: webového rozhrania Steeve.
Zásoby
1 kaktus / vaša obľúbená rastlina
1 Arduino MKR WAN 1300 (obchod Arduino)
1 868 MHz/914 MHz (závisí od vašej polohy) anténa (Amazon)
1 brána LoRa, ak nie je v dosahu jednej (Amazon)
2 AA batérie
1 snímač TMP102 (Amazon)
1 snímač pôdnej vlhkosti (Amazon)
Vodivé káble (Amazon)
spájkovačka
Držiak batérie (Amazon)
prípad
voliteľné: 3D tlačiareň (ak môžete používať 3D tlačiareň, nepotrebujete držiak batérie ani puzdro)
Krok 1: Tlač prípadu (voliteľné)
Stiahnite si tento súbor zip, rozbaľte ho a vytlačte súbory. Súbory sú označené potrebným množstvom položky.
Pokojne pridajte niečo na viečko ako ja.
Tieto som vytlačil pomocou výšky vrstvy 0,2 mm a 15% výplne.
Boxhooky je možné pripevniť pomocou skrutiek m3.
Keď je škatuľka vytlačená, môžete pomocou drôtika urobiť potrebné pripojenia na držiaku batérie. Poskytnutý obrázok môžete použiť ako referenciu.
Krok 2: Zapojenie
- Pred zapnutím arduina sa uistite, že je pripojená anténa. Zapnutie arduina bez antény môže spôsobiť poškodenie.
- Pripojte všetko podľa dodanej schémy zapojenia.
- Ak spájkujete tieto vodiče, dbajte na to, aby ste neprepojili žiadne kolíky na senzoroch alebo arduino!
Krok 3: Vytvorte aplikáciu v sieti vecí
- Prejdite na https://www.thethingsnetwork.org/ a ak ešte nemáte účet, vytvorte si ho.
- Keď máte účet a ste prihlásení, môžete prejsť na konzolu (pravý horný roh, kliknúť na svoje používateľské meno a potom na konzolu).
- Kliknite na aplikácie.
- Po načítaní stránky by ste mali mať možnosť kliknúť na „pridať aplikáciu“.
- Vyplňte formulár a v spodnej časti vyberte správnu oblasť. Kliknite na „pridať aplikáciu“.
- Gratulujeme, práve ste vytvorili aplikáciu v sieti vecí. = D
Krok 4: Pripojenie Arduina k sieti vecí
Na naprogramovanie arduina vám odporúčam použiť online arduino ide, vďaka ktorému je načítanie potrebnej knižnice veľmi jednoduché.
- Otvorte aplikáciu v sieti vecí.
- Malo by existovať pole s názvom zariadenia, kliknite na zaregistrovať zariadenie.
- uvidíte pole s názvom ID zariadenia. toto je názov, ktorý chcete dať svojmu senzoru. Malo by existovať ešte jedno zariadenie Device EUI, toto je jedinečný kľúč, ktorý vaše arduino používa na autentifikáciu.
- Aby sme získali tento kľúč, musíme arduino blikať pomocou konkrétneho náčrtu. Náčrt nájdete tu. Táto skica by mala bežať a cez sériový monitor by mala odoslať eui. Skopírujte eui zo sériového monitora do poľa Device EUI v sieti vecí.
- Kliknite na registráciu.
- Teraz sme naše arduino zaregistrovali do cloudu. Je načase začať odosielať správy.
- Mali ste byť presmerovaní na stránku s názvom prehľad zariadení. Tu vidíte svoje zariadenie eui, app eui a kľúč aplikácie.
- Aby sme mohli pokračovať, musíme flashovať konečný náčrt na arduino. Náčrt nájdete tu.
- Keď otvoríte tento odkaz, uvidíte, že existuje niekoľko kariet. Otvorte kartu tajomstvo. Sú tu 2 kľúče, ktoré musíte zvládnuť, od siete vecí po tajný súbor.
- Akonáhle sú tieto kľúče vyplnené, môžete blikať arduino. Začne odosielať údaje do siete vecí raz za hodinu.
-
Ak všetko prebehlo správne, po resetovaní arduina (jediné tlačidlo na doske) by ste mali vidieť správy prichádzajúce na kartu Údaje v sieti vecí.
- Ak sa tu nezobrazujú žiadne údaje, môže to znamenať, že sa nenachádzate v dosahu správnej brány LoRa. Na stránke https://thethingsnetwork.org si môžete skontrolovať mapu so všetkými dostupnými bránami. Jednokanálové brány LoRa nebudú fungovať s odporúčaným arduino.
- Ak sa nenachádzate v dosahu brány, môžete si k sieti vecí pripojiť vlastnú bránu. Tieto brány majú zvyčajne celkom dobré návody, ako ich pripojiť. Odporúčanú bránu nájdete v zozname dodávok.
Krok 5: Interpretácia údajov o sieti vecí
- Aby sme získali použiteľné údaje zo správ v sieti vecí, musíme dekódovať bytový tok.
- V sieti vecí prejdite na svoju aplikáciu.
- Mala by existovať karta s názvom „Formáty užitočného zaťaženia“, kliknite na túto kartu.
- Vedľa seba sú 4 tlačidlá: „dekodér“, „prevodník“, „validátor“, „kodér“.
- Kliknite na dekodér.
- Prilepte tam nasledujúci kód.
funkcia Dekodér (bajty, port) {// Dekóduje vzostupnú správu z vyrovnávacej pamäte // (pole) bajtov na objekt polí. var stringToDecode = bin2String (bajty); var res = stringToDecode.split (""); var temp = res [1]; var vlhkosť = res [3]; var bat = res [5]; var decoded = {"teplota": teplota, "vlhkosť": vlhká, "batéria": bat}; návrat dekódovaný; } funkcia bin2String (pole) {var result = ""; for (var i = 0; i <array.length; ++ i) {result+= (String.fromCharCode (array )); } vrátiť výsledok;}
- Kliknite na uložiť.
- Keď resetujete arduino a zobrazíte kartu s údajmi, mali by ste vidieť pekne naformátovaný objekt json, ktorý môžete ľahko čítať.
Krok 6: Pripojenie vašej aplikácie k AWS
AWS použijeme na ukladanie a používanie údajov zo siete vecí. Všetky zdroje, ktoré použijeme, sú zahrnuté v bezplatnej vrstve AWS.
- Prejdite na AWS
- Prihláste sa alebo si vytvorte účet.
- Ak chcete pripojiť svoju aplikáciu k sieti vecí k AWS, odporúčam postupovať podľa tohto tutoriálu:
- Po dokončení tohto tutoriálu prejdite v konzole aws do segmentu IoT-Core.
- V ľavej ponuke s menami je menovka „Spravovať“, kliknite na ňu.
- Teraz by ste mali vidieť kartu s názvom vášho senzora.
- V ľavej ponuke znova kliknite na „Konať“
- Ak existuje karta s názvom Store, môžete ísť.
- Ak nie, kliknite na „Vytvoriť“.
- Vyplňte názov „Obchod“.
- Ak chcete, môžete pridať popis.
- Ako príkaz dopytu zadajte nasledujúci kód: SELECT dev_id, metadata.time, payload_fields.temperature, payload_fields.moisture, payload_fields.battery FROM 'cactus_network/devices/+/up'.
- V časti „Nastaviť jednu alebo viac akcií“kliknite na položku Pridať akciu.
- Vyberte „Rozdeliť správu do viacerých stĺpcov tabuľky DynamoDb (DynamoDBv2)“.
- Kliknite na položku Konfigurovať akciu
- Kliknite na položku vytvoriť nový zdroj.
- Kliknite na položku Vytvoriť tabuľku a pomenujte ju.
- Pod primárnym kľúčom zadajte „dev_id“.
- Kliknite na pridať kľúč zoradenia
- Vyplňte „čas“.
- Kliknite na vytvoriť.
- Ak všetko prebehlo dobre, mali by ste byť späť na stránke akcií konfigurácie.
- V časti „Vybrať alebo vytvoriť rolu na poskytnutie prístupu k internetu vecí AWS na vykonanie tejto akcie“je mierne sivá oblasť.
- Kliknite na položku Vytvoriť rolu a pomenujte túto rolu.
- Kliknite na položku vytvoriť rolu.
- Kliknite na položku pridať akciu.
- Kliknite na položku Vytvoriť pravidlo.
- Teraz by ste mali mať pravidlo, ktoré automaticky ukladá všetky prichádzajúce správy zo siete vecí do DynamoDb.
- Môžete skontrolovať, či to funguje, resetovaním arduina a ísť sa pozrieť do tabuľky DynamoDb, ktorú ste práve vytvorili.
- So správou by mal byť záznam.
Krok 7: Vytvorenie lambdy
Na čítanie údajov z DynamoDB napíšeme lambda AWS.
- V konzole na správu AWS v rámci služieb je odkaz označený „Lambda“, kliknite na tento odkaz.
- Kliknite na položku vytvoriť funkciu.
- Vyberte meno.
- Nastaviť runtime na python 3.7.
- Kliknite na položku vytvoriť funkciu.
- Vložte tento kód do integrovaného IDE.
importovať json
import boto3 import time from datetime import datetime, timedelta from boto3.dynamodb.conditions import Key, Attr def lambda_handler (event, context): return retreive_data () def retreive_data (): # Get the service resource. dynamodb = boto3.resource ('dynamodb') tabuľka = dynamodb. Table ('TABLE NAME HERE') now = datetime.now () včera = teraz - timedelta (hodiny = 24) fe = kľúč ('čas'). medzi (včera.isoformat (), now.isoformat ()) fed = kľúč ('čas'). lt (včera.isoformat ()) response = table.scan (FilterExpression = fe) recordsToDelete = table.scan (FilterExpression = fed) pre f in recordsToDelete ['Items']: #print (f) table.delete_item (Key = {'dev_id': f ['dev_id'], 'time': f ['time']}) data = response ['Items '] vrátiť údaje
- Zmeňte názov tabuľky na ten, ktorý vyberiete.
- Posuňte zobrazenie nadol na úlohu vykonávania.
- Kliknite na položku vytvoriť novú rolu zo šablón politiky aws.
- Vyberte meno.
- V časti Šablóny politík vyberte „Testovať povolenia zväzku“a „Jednoduché povolenia pre mikroslužby“.
- Kliknite na uložiť.
- Kliknite na test.
- Môže sa objaviť vyskakovacie okno, stačí vybrať meno a uložiť.
- Znova kliknite na test.
- V hornej časti by mal byť zelený banner s textom „Výsledok vykonania: úspešné“.
- Keď kliknete na tento banner, mali by ste vidieť výstup tejto funkcie. Mal by to byť zoznam senzordátov.
- Uvedomte si, že tento skript odstráni všetky údaje staršie ako 24 hodín.
- V prípade, že váš banner nie je zelený, ale červený, niečo ste prehliadli a kliknutím na tento banner získate úplnú chybovú správu. V tomto prípade je Google váš najlepší priateľ.
Krok 8: Vytvorenie koncového bodu API
- V konzole na správu AWS v rámci služieb je odkaz označený ako „api-gateway“, kliknite na tento.
- Kliknite na položku vytvoriť API.
- Uistite sa, že sú vybraté položky „REST“a „Nové API“.
- Vyberte názov rozhrania API.
- Kliknite na položku vytvoriť API.
- Na obrazovke by teraz malo byť tlačidlo označené ako akcie, kliknite naň.
- Potom kliknite na položku vytvoriť zdroj.
- Ako názov zdroja by ste mali napísať niečo jednoduché ako „závod“alebo „údaje o závode“.
- Kliknite na položku vytvoriť zdroj.
- Vľavo by teraz malo byť meno, ktoré ste práve zadali. kliknite na toto meno.
- Teraz kliknite na akcie znova a teraz kliknite na položku pridať metódu.
- Vyberte ZÍSKAŤ.
- Kliknite na začiarkavacie políčko.
- Malo by existovať textové pole označené ako Lambda Function.
- Sem zadajte názov, ktorý ste vám dali funkciu lambda.
- Kliknite na uložiť.
- Môže sa zobraziť kontextové okno, ktoré vás upozorní, že vytvára dodatočné povolenia.
- Prijmite toto kontextové okno.
- Teraz v rámci akcií kliknite na položku povoliť cors.
- Kliknite na „povoliť CORS a nahradiť existujúce hlavičky CORS“.
- Kliknite na „áno, …“.
- Znova kliknite na akcie a kliknite na Nasadiť API.
- Vo fáze nasadenia vyberte [Nová fáza].
- Vyberte meno.
- Kliknite na nasadiť.
- Teraz ste zverejnili svoje rozhranie API online vo svete.
- Na obrazovke, kam ste prišli, kliknite na tlačidlo „ZÍSKAŤ“a vyberte zdroj, ktorý ste práve vytvorili.
- Navrchu by mal byť odkaz označený ako „vyvolávacia adresa URL“.
- Skopírujte tento odkaz.
- Vložte ho do prehliadača a stlačte kláves Enter.
- Mali by ste vidieť údaje, ktoré sú v databáze.
Krok 9: Pripojte svoj závod k sieti sociálnych závodov
- Prejdite na stránku
- Kliknite na „Prihlásiť sa“.
- Kliknite na položku vytvoriť účet.
- Vyplňte formulár a vytvorte si účet.
- Upozorňujeme, že používateľské meno musí byť aj váš e -mail.
- Kliknite na položku vytvoriť účet.
- Ak chcete pokračovať, možno budete musieť overiť svoj e -mail.
- Uistite sa, že ste prihlásení.
- Vráťte sa na domovskú stránku (kliknite na logo v ľavom hornom rohu).
- Kliknite na tlačidlo nastavení.
- Vyplňte formulár, mali by ste vyplniť každé pole.
- Odkaz na rozhranie API je odkaz, ktorý ste uložili po vytvorení koncového bodu API.
- Keď je všetko vyplnené, kliknite na tlačidlo uložiť závod. systém teraz overí odkaz API, ktorý ste zadali, a ak je správny, uloží váš závod v sieti.
- Vráťte sa na domovskú stránku.
- Teraz môžete kliknúť na všetky rastliny, mali by ste vidieť všetky registrované rastliny. mala by tam byť aj vaša rastlina. kliknete na kartu a dostanete sa na prehľadnú stránku vášho závodu, kde sa tiež zobrazia rady založené na hodnotách, ktoré ste nastavili v nastaveniach.
Krok 10: Nakloňte sa a pohladkajte sa po chrbte
Práve ste pripojili závod k internetu. Docela pôsobivé, nie?
Odporúča:
Pripojte svoj RevPi Core + RevPi DIO k Ubidots: 8 krokov
Pripojte svoj RevPi Core + RevPi DIO k Ubidots: Revolution Pi je otvorený, modulárny a odolný priemyselný počítač založený na zavedenom Raspberry Pi a súčasne spĺňa normu EN61131-2. Základňu RevPi Core vybavenú modulom Raspberry Pi Compute Module je možné bez problémov rozšíriť pomocou vhodných
Závod robotov Rory: 5 krokov (s obrázkami)
Rory Robot Plant: Rory je zábavne vyzerajúci robot vo forme rastliny, ktorý interaguje s niektorými vstupmi pomocou senzorov, prehráva hudbu a zisťuje akékoľvek ľudské pohyby v okolí, a okrem toho dokáže pri objednávaní snímať fotografie. Tiež sa stará o malá rastlina vo vnútri hrnca, poznámka
Pripojte svoj Headless Pi k sieti Wi -Fi knižnice: 7 krokov
Pripojte svoje bezhlavé pi k sieti Wi -Fi knižnice: Koľkokrát ste už chceli pracovať na svojich bezhlavých projektoch Raspberry Pi v miestnej knižnici, aby ste sa ocitli zaseknutí, pretože otvorená sieť WiFi vyžaduje, aby ste používali prehliadač? Už sa nemusíte báť, tento návod je tu, aby vám pomohol! Budeme
Vesmírny závod: Jednoduchá hra Arduino Clicker s deťmi: 7 krokov
Vesmírny závod: Jednoduchá hra Arduino Clicker vytvorená s deťmi: ¡ odovzdávam video, ktoré ukazuje, ako to funguje dnes! Bavte sa s inštruktážou s vesmírnou tematikou, ktorú je možné vytvoriť spolu s deťmi, a neskôr si ich užite sami ako hračku. Môžete ho použiť ako prostriedok na naučenie histórie o
Pripojte svoj Mac k HDTV: 5 krokov
Pripojte svoj Mac k HDTV: V tomto návode vám podrobne vysvetlím, ako pripojiť váš MacBook alebo iMac k HDTV. Existuje mnoho aplikácií na takéto nastavenie a zoznam je prakticky nekonečný. Tu je niekoľko: - Streamujte video z internetu. Mnoho stránok ako