Sadržaj:

Povežite svoju biljku s oblakom: 10 koraka
Povežite svoju biljku s oblakom: 10 koraka

Video: Povežite svoju biljku s oblakom: 10 koraka

Video: Povežite svoju biljku s oblakom: 10 koraka
Video: БЕСПРОВОДНОЕ ВИДЕОНАБЛЮДЕНИЕ WIFI комплект KERUI со слежением за людьми 2024, Studeni
Anonim
Povežite svoju biljku s oblakom
Povežite svoju biljku s oblakom
Povežite svoju biljku s oblakom
Povežite svoju biljku s oblakom
Povežite svoju biljku s oblakom
Povežite svoju biljku s oblakom

U našem uredu postoji kaktus koji nije privukao pažnju koju zaslužuje. Budući da radim u IT tvrtki i želio sam eksperimentirati s LoRa -om, rješenjima bez poslužitelja i AWS -om, nazvao sam našeg kaktusa Steeveom i povezao ga s oblakom. Sada možete pratiti Steevea s bilo kojeg mjesta na svijetu koristeći web stranicu koju sam napravio za njega: Steeveovo web sučelje.

Pribor

1 kaktus / vaša omiljena biljka

1 Arduino MKR WAN 1300 (trgovina Arduino)

1 868mHz/914mHz (ovisno o vašoj lokaciji) antena (Amazon)

1 LoRa Gateway kada nije u dosegu jednog (Amazon)

2 AA baterije

1 senzor TMP102 (Amazon)

1 senzor vlažnosti tla (Amazon)

Vodljivi kabeli (Amazon)

lemilica

Držač baterije (Amazon)

slučaj

opcionalno: 3D pisač (ako možete koristiti 3D pisač, ne trebate držač baterije ili futrolu)

Korak 1: Ispis kućišta (izborno)

Ispis kućišta (izborno)
Ispis kućišta (izborno)
Ispis kućišta (izborno)
Ispis kućišta (izborno)

Preuzmite ovu zip datoteku, raspakirajte je i ispišite datoteke. Datoteke su označene potrebnom količinom stavke.

Slobodno dodajte nešto na poklopac kao ja.

Ispisao sam ih koristeći visinu sloja od 0,2 mm i ispunu od 15%.

Kuke se mogu pričvrstiti pomoću vijaka m3.

Kad je kutija ispisana, možete upotrijebiti žicu za povezivanje potrebnih priključaka na držaču baterije. Priloženu sliku možete koristiti kao referencu.

Korak 2: Ožičenje

Ožičenje
Ožičenje
  • Prije uključivanja arduina provjerite je li antena spojena. Uključivanjem arduina bez antene može doći do oštećenja.
  • Spojite sve prema priloženom dijagramu ožičenja.
  • Spajate li ove žice, pazite da ne premostite iglice na senzorima ili arduinu!

Korak 3: Izradite aplikaciju na mreži Things

  • Idite na https://www.thethingsnetwork.org/ i ako još nemate račun, napravite ga.
  • Nakon što imate račun i prijavite se, možete otići na konzolu (gornji desni kut, kliknite svoje korisničko ime, a zatim na konzoli).
  • Kliknite aplikacije.
  • Nakon što se stranica učita, trebali biste moći kliknuti na "dodaj aplikaciju".
  • Ispunite obrazac i odaberite ispravnu regiju pri dnu. Kliknite na "dodaj aplikaciju".
  • Čestitamo, upravo ste stvorili aplikaciju na mreži stvari. = D

Korak 4: Spajanje Arduina na mrežu stvari

Za programiranje arduina savjetujem vam da koristite mrežni arduino ide, što čini učitavanje u potrebnu knjižnicu vrlo jednostavnim.

  • Otvorite svoju aplikaciju na mreži stvari.
  • Trebalo bi biti polje pod nazivom uređaji, kliknite na registriraj uređaj.
  • vidjet ćete polje pod nazivom ID uređaja. ovo je ime koje želite dati svom senzoru. Trebao bi postojati još jedan s oznakom EUI uređaja, ovo je jedinstveni ključ koji vaš arduino koristi za autentifikaciju.
  • Da bismo dobili ovaj ključ, moramo arduino prebaciti s određenom skicom. Skica se može pronaći ovdje. Ova skica bi se trebala pokrenuti i preko serijskog monitora poslati eui. Kopirajte eui sa serijskog monitora u polje Device EUI na mreži stvari.
  • Kliknite registriraj.
  • Sada smo registrirali naš arduino u oblaku. Vrijeme je za početak slanja poruka.
  • Trebali ste biti preusmjereni na stranicu koja se zove Pregled uređaja. Ovdje možete vidjeti svoj uređaj eui, aplikaciju eui i ključ aplikacije.
  • Za nastavak moramo prebaciti posljednju skicu na arduino. Skicu možete pronaći ovdje.
  • Kada otvorite ovu vezu vidjet ćete da postoji više kartica. Otvorite karticu tajne. Postoje 2 ključa s kojima morate upravljati od mreže stvari do datoteke tajni.
  • Nakon što su ti ključevi ispunjeni, možete bljeskati arduino. Počet će slati podatke u mrežu stvari svakih sat vremena.
  • Ako je sve prošlo kako treba, trebali biste moći vidjeti poruke koje dolaze na kartici Podaci na mreži stvari nakon resetiranja arduina (jedinog gumba na ploči).

    • Ako se ovdje ne pojavljuju podaci, to može značiti da niste u dometu ispravnog LoRa pristupnika. Kartu sa svim dostupnim pristupnicima možete provjeriti na https://thethingsnetwork.org. Jednokanalni LoRa pristupnici neće raditi s preporučenim arduinom.
    • Ako niste u dometu pristupnika, tada možete spojiti vlastiti pristupnik na mrežu stvari. Ovi pristupnici obično imaju prilično dobre vodiče o tome kako ih povezati. Preporučeni pristupnik potražite na popisu zaliha.

5. korak: Tumačenje podataka na mreži stvari

  • Da bismo dobili upotrebljive podatke iz poruka na mreži stvari, moramo dekodirati bytestream.
  • Na mreži stvari idite na svoju aplikaciju.
  • Trebala bi postojati kartica s oznakom "Formati korisnog tereta", kliknite ovu karticu.
  • Postoje 4 gumba jedan do drugog: "dekoder", "pretvarač", "validator", "koder".
  • Kliknite na dekoder.
  • Tamo zalijepite sljedeći kôd.

funkcija Decoder (bytes, port) {// Dekodiranje poruke uzlazne veze iz međuspremnika // (niz) bajtova u objekt polja. var stringToDecode = bin2String (bajtovi); var res = stringToDecode.split (""); var temp = res [1]; var moist = res [3]; var bat = res [5]; var decoded = {"temperatura": temp, "vlaga": vlažno, "baterija": šišmiš}; povratak dekodiran; } funkcija bin2String (niz) {var result = ""; for (var i = 0; i <array.length; ++ i) {result+= (String.fromCharCode (niz )); } vrati rezultat;}

  • Pritisnite spremi.
  • Kad resetirate arduino i pogledate karticu s podacima, trebali biste vidjeti lijepo oblikovan json objekt koji možete lako pročitati.

Korak 6: Povezivanje vaše aplikacije s AWS -om

Koristit ćemo AWS za pohranu i korištenje podataka s mreže stvari. Svi resursi koje ćemo koristiti pokriveni su besplatnim slojem AWS -a.

  • Idite na AWS
  • Prijavite se ili stvorite račun.
  • Za povezivanje vaše aplikacije na mreži stvari s AWS-om preporučujem da slijedite ovaj vodič:
  • Nakon što dovršite ovaj vodič, u konzoli aws idite na segment IoT-Core.
  • U lijevoj traci izbornika nalazi se oznaka "Upravljanje", kliknite ovo.
  • Sada biste trebali vidjeti karticu s imenom vašeg senzora.
  • Ponovno na lijevoj traci izbornika kliknite "Postupi"
  • Ako postoji kartica s oznakom Trgovina, možete krenuti.
  • Ako ne, kliknite na "Kreiraj".
  • Ispunite naziv "Trgovina".
  • Ako želite, možete dodati opis.
  • Kao izraz upita ispunite sljedeći kod: SELECT dev_id, metadata.time, payload_fields.temperature, payload_fields.moisture, payload_fields.battery IZ 'cactus_network/devices/+/up'.
  • U odjeljku "Postavi jednu ili više radnji" kliknite dodaj radnju.
  • Odaberite "Podijeli poruku u više stupaca DynamoDb tablice (DynamoDBv2)".
  • Pritisnite konfiguriranje radnje
  • Pritisnite Stvori novi resurs.
  • Pritisnite Stvori tablicu i dajte joj naziv.
  • Pod primarnim ključem popunite "dev_id".
  • Pritisnite dodaj tipku za sortiranje
  • Ispunite "vrijeme".
  • Pritisnite stvoriti.
  • Ako je sve prošlo dobro, trebali biste se vratiti na stranicu s radnjama za konfiguriranje.
  • Postoji malo zasivljeno područje pod "Odaberite ili izradite ulogu kako biste AWS IoT -u odobrili pristup za izvođenje ove radnje."
  • Pritisnite stvoriti ulogu i dajte ovoj ulozi ime.
  • Pritisnite stvoriti ulogu.
  • Kliknite na dodavanje radnje.
  • Kliknite Stvori pravilo.
  • Sada biste trebali imati pravilo koje automatski sprema sve dolazne poruke s mreže stvari u DynamoDb.
  • Možete provjeriti radi li ovo resetiranjem arduina i idite pogledati DynamoDb tablicu koju ste upravo stvorili.
  • Trebao bi postojati zapis s porukom.

Korak 7: Stvaranje lambde

Za čitanje podataka iz DynamoDB -a napisat ćemo AWS lambda.

  • U konzoli za upravljanje AWS -om pod uslugama nalazi se veza s oznakom "Lambda", kliknite ovu.
  • Pritisnite stvoriti funkciju.
  • Odaberite ime.
  • Postavite vrijeme izvođenja na python 3.7.
  • Pritisnite stvoriti funkciju.
  • Zalijepite ovaj kôd u integrirani IDE.

uvoziti json

import boto3 vrijeme uvoza iz datetime uvoz datetime, timedelta iz boto3.dynamodb.conditions import Key, Attr def lambda_handler (događaj, kontekst): return retreive_data () def retreive_data (): # Preuzmite resurs usluge. dynamodb = boto3.resource ('dynamodb') table = dynamodb. Table ('TABLE NAME HERE') now = datetime.now () jučer = sad - timedelta (sati = 24) fe = Key ('vrijeme'). između (jučer.isoformat (), sada.isoformat ()) fed = Key ('vrijeme'). lt (jučer.isoformat ()) response = table.scan (FilterExpression = fe) recordsToDelete = table.scan (FilterExpression = feed) za f u recordsToDelete ['Items']: #print (f) table.delete_item (Key = {'dev_id': f ['dev_id'], 'time': f ['time']}) data = response ['Items '] vratiti podatke

  • Promijenite naziv tablice u onaj koji odaberete.
  • Pomaknite se dolje do uloge izvršenja.
  • Kliknite stvorite novu ulogu iz predložaka pravila aws.
  • Odaberite ime.
  • Pod predlošcima pravila odaberite "Dopuštenja za testiranje pojaseva" i "Jednostavna dopuštenja za mikro usluge".
  • Pritisnite spremi.
  • Kliknite test.
  • Može se pojaviti skočni prozor, samo odaberite naziv i spremite.
  • Ponovno kliknite test.
  • Pri vrhu bi se trebao nalaziti zeleni transparent s natpisom "Rezultat izvršenja: uspjelo".
  • Kada kliknete na ovaj banner, trebali biste vidjeti izlaz ove funkcije, ovo bi trebao biti popis senzorskih podataka.
  • Imajte na umu da ova skripta briše sve podatke starije od 24 sata.
  • U slučaju da vaš banner nije zelen nego crven, nešto ste propustili, a klikom na ovaj banner dobit ćete potpunu poruku o pogrešci. U ovom slučaju google je vaš najbolji prijatelj.

Korak 8: Stvaranje krajnje točke API -ja

  • U konzoli za upravljanje AWS-om pod uslugama nalazi se veza s oznakom "api-gateway", kliknite ovu.
  • Pritisnite Stvori API.
  • Provjerite jesu li odabrani "REST" i "New API".
  • Odaberite naziv za svoj api.
  • Pritisnite Stvori API.
  • Na ekranu bi se sada trebao pojaviti gumb s oznakom radnje, kliknite ga.
  • Zatim kliknite Stvori resurs.
  • Kao naziv izvora trebali biste napraviti nešto jednostavno poput "biljka" ili "biljni podaci".
  • Pritisnite Stvori resurs.
  • S lijeve strane sada bi trebao biti naziv koji ste upravo unijeli. kliknite na ovo ime.
  • Sada ponovno kliknite radnje, a zatim kliknite način dodavanja.
  • Odaberite GET.
  • Pritisnite kvačicu.
  • Trebao bi postojati tekstualni okvir s oznakom Lambda funkcija.
  • Ovdje unesite naziv koji ste dobili od lambda funkcije.
  • Pritisnite spremi.
  • Možda će se pojaviti skočni prozor koji vas upozorava da stvara dodatna dopuštenja.
  • Prihvati ovaj skočni prozor.
  • Sada pod radnjama kliknite omogući korpe.
  • Kliknite "omogući CORS i zamijeni postojeća CORS zaglavlja".
  • Kliknite "da, …".
  • Ponovno kliknite radnje i kliknite API za implementaciju.
  • U fazi implementacije odaberite [Nova faza].
  • Odaberite ime.
  • Kliknite na implementaciju.
  • Sada ste svijetu objavili svoj API.
  • Na ekranu na koji ste sada stigli kliknite "DOBI" i potražite resurs koji ste upravo stvorili.
  • Na vrhu bi trebala postojati veza s oznakom "dozvati URL".
  • Kopirajte ovu vezu.
  • Zalijepite ga u preglednik i pritisnite enter.
  • Trebali biste vidjeti podatke koji se nalaze u bazi podataka.

Korak 9: Povežite svoju biljku s mrežom društvenih biljaka

  • Idite na
  • Kliknite "Prijava".
  • Kliknite na Kreiraj račun.
  • Ispunite obrazac kako biste stvorili svoj račun.
  • Imajte na umu da korisničko ime mora biti i vaša e -adresa.
  • Kliknite na Kreiraj račun.
  • Možda ćete morati potvrditi svoju e -poštu da biste mogli nastaviti.
  • Provjerite jeste li prijavljeni.
  • Vratite se na početnu stranicu (kliknite logotip u gornjem lijevom kutu).
  • Pritisnite gumb za postavke.
  • Ispunite obrazac, morate popuniti svako polje.
  • Veza na api je veza koju ste spremili nakon što ste stvorili krajnju točku API -ja.
  • Kada je sve popunjeno, kliknite gumb Spremi biljku. sustav će sada provjeriti api vezu koju ste unijeli i ako je to točno, spremit će vašu pogon u mrežu.
  • Vratite se na početnu stranicu.
  • Sada možete kliknuti na sve biljke, trebali biste moći vidjeti sve registrirane biljke. vaša bi biljka također trebala biti tamo. kliknite karticu i bit ćete preusmjereni na stranicu pregleda vašeg pogona, također će prikazati savjete na temelju vrijednosti koje ste postavili u postavkama.

Korak 10: Naslonite se i potapšajte se po leđima

Upravo ste spojili biljku na internet. Prilično impresivno, zar ne?

Preporučeni: