Obsah:

Pripojte svoj závod k cloudu: 10 krokov
Pripojte svoj závod k cloudu: 10 krokov

Video: Pripojte svoj závod k cloudu: 10 krokov

Video: Pripojte svoj závod k cloudu: 10 krokov
Video: Полное руководство по Google Forms - универсальный инструмент для опросов и сбора данных онлайн! 2024, November
Anonim
Pripojte svoj závod k cloudu
Pripojte svoj závod k cloudu
Pripojte svoj závod k cloudu
Pripojte svoj závod k cloudu
Pripojte svoj závod k cloudu
Pripojte svoj závod k cloudu

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é)

Tlač puzdra (voliteľné)
Tlač puzdra (voliteľné)
Tlač puzdra (voliteľné)
Tlač puzdra (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

Elektrické vedenie
Elektrické vedenie
  • 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: