Sadržaj:
- Supplies
- Korak 1: Odštampajte kućište (opcionalno)
- Korak 2: Ožičenje
- Korak 3: Kreirajte aplikaciju na mreži Things
- Korak 4: Povezivanje Arduina na mrežu stvari
- Korak 5: Tumačenje podataka na mreži stvari
- Korak 6: Povezivanje aplikacije s AWS -om
- Korak 7: Kreiranje lambde
- Korak 8: Kreiranje API krajnje tačke
- Korak 9: Povežite svoju biljku sa mrežom društvenih biljaka
- Korak 10: Naslonite se i potapšajte se po leđima
Video: Povežite svoju biljku s oblakom: 10 koraka
2024 Autor: John Day | [email protected]. Zadnja izmjena: 2024-01-30 08:05
U našoj kancelariji postoji kaktus koji nije privukao pažnju koju zaslužuje. Budući da radim u IT kompaniji i želio sam eksperimentirati s LoRa -om, rješenjima bez servera i AWS -om, nazvao sam našeg kaktusa Steevea i povezao ga s oblakom. Sada možete pratiti Steevea s bilo kojeg mjesta u svijetu koristeći web stranicu koju sam napravio za njega: Steeveovo web sučelje.
Supplies
1 kaktus / vaša omiljena biljka
1 Arduino MKR WAN 1300 (Arduino trgovina)
1 868mHz/914mHz (zavisi od vaše lokacije) antena (Amazon)
1 LoRa Gateway kada nije u dometu 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 štampač (ako možete koristiti 3D štampač, ne treba vam držač baterije ili futrola)
Korak 1: Odštampajte kućište (opcionalno)
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 što sam ja učinio.
Štampao sam ih koristeći visinu sloja od 0,2 mm i ispunu od 15%.
Kuke se mogu pričvrstiti pomoću vijaka m3.
Kada se kutija odštampa, možete koristiti neku žicu za povezivanje potrebnih priključaka na držaču baterije. Priloženu sliku možete koristiti kao referencu.
Korak 2: Ožičenje
- Prije nego što uključite arduino, provjerite je li antena priključena. Uključivanje arduina bez antene može uzrokovati oštećenja.
- Spojite sve prema priloženom dijagramu ožičenja.
- Ako lemite ove žice, pazite da ne premostite iglice na senzorima ili arduinu!
Korak 3: Kreirajte aplikaciju na mreži Things
- Idite na https://www.thethingsnetwork.org/ i ako još nemate račun, otvorite 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 na 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 kreirali aplikaciju na mreži stvari. = D
Korak 4: Povezivanje Arduina na mrežu stvari
Za programiranje arduina savjetujem vam da koristite internetski arduino ide, što čini učitavanje u potrebnu biblioteku vrlo jednostavnim.
- Otvorite svoju aplikaciju na mreži stvari.
- Trebalo bi biti polje 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 označen EUI uređaja, ovo je jedinstveni ključ koji vaš arduino koristi za autentifikaciju.
- Da bismo dobili ovaj ključ, potrebno je umetnuti arduino s određenom skicom. Skica se može pronaći ovdje. Ova skica bi se trebala pokrenuti i preko serijskog monitora bi trebala poslati eui. Kopirajte eui sa serijskog monitora u polje Device EUI na mreži stvari.
- Kliknite na register.
- 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 popunjeni, možete bljeskati arduino. Počet će slati podatke mreži 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 (jedino dugme na ploči).
- Ako se ovdje ne pojavljuju podaci, to može značiti da niste u dometu ispravnog LoRa pristupnika. Mapu 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 u popisu zaliha.
Korak 5: 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 dugmeta jedan do drugog: "dekoder", "pretvarač", "validator", "koder".
- Kliknite na dekoder.
- Tamo zalijepite sljedeći kod.
funkcija Decoder (bytes, port) {// Dekodiranje poruke uzlazne veze iz bafera // (niza) 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": bat}; return decoded; } funkcija bin2String (niz) {var result = ""; za (var i = 0; i <dužina niza; ++ i) {rezultat+= (String.fromCharCode (niz )); } vrati rezultat;}
- Pritisnite sačuvaj.
- Kada resetirate arduino i pogledate karticu s podacima, trebali biste vidjeti lijepo oblikovan json objekt koji možete lako pročitati.
Korak 6: Povezivanje aplikacije s AWS -om
Koristit ćemo AWS za pohranu i korištenje podataka sa stvarne mreže. Svi resursi koje ćemo koristiti pokriveni su besplatnim nivoom AWS -a.
- Idite na AWS
- Prijavite se ili kreirajte račun.
- Za povezivanje vaše aplikacije na mreži stvari sa AWS-om preporučujem da slijedite ovaj vodič:
- Kada završite ovaj vodič, idite u aws konzoli do IoT-Core segmenta.
- U lijevoj traci menija nalazi se oznaka "Upravljanje", kliknite ovo.
- Sada biste trebali vidjeti karticu s imenom vašeg senzora.
- Ponovo u lijevoj traci menija kliknite "Postupi"
- Ako postoji kartica s oznakom Store, možete krenuti.
- Ako nije, kliknite na "Kreiraj".
- Popunite naziv "Trgovina".
- Ako želite, možete dodati opis.
- Kao izraz upita popunite 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)".
- Kliknite na konfiguriranje radnje
- Kliknite na Kreiraj novi resurs.
- Pritisnite Kreiraj tablicu i dajte joj naziv.
- Pod primarnim ključem popunite "dev_id".
- Pritisnite dodaj ključ za sortiranje
- Unesite "vrijeme".
- Kliknite na Kreiraj.
- Ako je sve prošlo u redu, trebali biste se vratiti na stranicu za konfiguriranje radnji.
- Postoji malo zasivljeno područje pod "Odaberite ili kreirajte ulogu da biste AWS IoT -u odobrili pristup za izvođenje ove radnje."
- Kliknite na Kreiraj ulogu i dajte ovoj ulozi ime.
- Kliknite na Kreiraj ulogu.
- Kliknite na dodavanje radnje.
- Kliknite na Kreiraj pravilo.
- Sada biste trebali imati pravilo koje automatski sprema sve dolazne poruke sa mreže stvari u DynamoDb.
- Možete provjeriti radi li ovo resetiranjem arduina i idite u DynamoDb tablicu koju ste upravo stvorili.
- Trebalo bi da postoji zapis sa porukom.
Korak 7: Kreiranje 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.
- Kliknite na funkciju kreiranja.
- Odaberite ime.
- Podesite vrijeme izvođenja na python 3.7.
- Kliknite na funkciju kreiranja.
- Zalijepite ovaj kôd u integrirani IDE.
import 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 = sada - timedelta (sati = 24) fe = Key ('vrijeme'). između (jučer.isoformat (), sada.isoformat ()) fed = Key ('vrijeme'). lt (juče.isoformat ()) odgovor = 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 na Kreiraj novu ulogu iz predložaka politike aws.
- Odaberite ime.
- Pod predlošcima pravila odaberite "Dozvole za testiranje uprtača" i "Jednostavne dozvole za mikro usluge".
- Pritisnite sačuvaj.
- Kliknite na test.
- Može se pojaviti skočni prozor, samo odaberite ime i spremite.
- Ponovo kliknite na test.
- Na vrhu bi trebao biti 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 već crven, nešto ste propustili i klikom na ovaj banner dobit ćete potpunu poruku o grešci. U ovom slučaju google je vaš najbolji prijatelj.
Korak 8: Kreiranje API krajnje tačke
- U konzoli za upravljanje AWS pod uslugama nalazi se veza označena kao "api-gateway", kliknite ovu.
- Kliknite na Create API.
- Provjerite jesu li odabrani "REST" i "New API".
- Odaberite ime za svoj api.
- Kliknite na Create API.
- Na ekranu bi se sada trebalo pojaviti dugme s oznakom radnje, kliknite na njega.
- Zatim kliknite na Kreiraj resurs.
- Kao naziv izvora trebali biste napraviti nešto jednostavno poput "plant" ili "plant-data".
- Kliknite na Kreiraj resurs.
- S lijeve strane sada bi trebalo biti ime koje ste upravo unijeli. kliknite na ovo ime.
- Sada ponovo kliknite radnje, a zatim kliknite metodu dodavanja.
- Odaberite GET.
- Kliknite na kvačicu.
- Trebalo bi postojati okvir za tekst označen Lambda funkcija.
- Ovdje unesite naziv koji ste dobili od lambda funkcije.
- Pritisnite sačuvaj.
- Možda će se pojaviti skočni prozor koji vas upozorava da stvara dodatne dozvole.
- Prihvati ovaj skočni prozor.
- Sada pod radnjama kliknite omogući korpe.
- Kliknite "omogući CORS i zamijeni postojeća CORS zaglavlja".
- Kliknite "da, …".
- Ponovo kliknite akcije 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 "URL za pozivanje".
- 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 sa mrežom društvenih biljaka
- Idite na
- Kliknite na "Prijava".
- Kliknite na Kreiraj nalog.
- Popunite obrazac kako biste kreirali svoj račun.
- Imajte na umu da korisničko ime mora biti i vaša e -adresa.
- Kliknite na Kreiraj nalog.
- 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 dugme za postavke.
- Popunite obrazac, morate popuniti svako polje.
- Veza do api -a je veza koju ste spremili nakon što ste stvorili krajnju točku API -ja.
- Kada je sve popunjeno, kliknite na dugme Sačuvaj biljku. sistem će sada provjeriti api vezu koju ste unijeli i ako je to ispravno, sačuvat će vašu pogon u mreži.
- Vratite se na početnu stranicu.
- Sada možete kliknuti na sve biljke, trebali biste moći vidjeti sve registrirane biljke. i vaša biljka bi trebala biti tamo. kliknite na karticu i bit ćete preusmjereni na stranicu pregleda vašeg pogona, također će prikazati savjete na osnovu vrijednosti koje ste postavili u postavkama.
Korak 10: Naslonite se i potapšajte se po leđima
Upravo ste spojili postrojenje na internet. Prilično impresivno, zar ne?
Preporučuje se:
Kako povezati Raspberry Pi s oblakom pomoću Node.js: 7 koraka
Kako spojiti Raspberry Pi na oblak pomoću Node.js: Ovaj je vodič koristan za svakoga tko želi povezati Raspberry Pi s oblakom, posebno na AskSensors IoT platformu, koristeći Node.js. Nemate Raspberry Pi? Ako trenutno ne posjedujete Raspberry Pi, preporučit ću vam da nabavite Raspberry
Kućna automatizacija kontrolirana internetom/oblakom pomoću Esp8266 (aREST, MQTT, IoT): 7 koraka (sa slikama)
Internet/cloud kontrola kućne automatizacije pomoću Esp8266 (aREST, MQTT, IoT): SVI krediti http://arest.io/ za uslugu u oblaku !! IoT trenutno najpopularnija tema na svijetu !! Cloud serveri i usluge koji to omogućavaju atrakcija su današnjeg svijeta … ODLAGANJE OGRANIČENJA DALJINA bila je i ostaje
Sistem upozorenja za tlo niske vlažnosti za vašu biljku: 5 koraka
Sustav upozorenja za tlo niske vlažnosti za vašu biljku: U nekoliko stanova uobičajeno je pronaći staklenke s različitim vrstama biljaka. S obzirom na veliki broj svakodnevnih aktivnosti, ljudi zaboravljaju zalijevati svoje biljke i na kraju umiru zbog nedostatka vode. Kao način da izbjegnemo ovaj problem, odlučili smo
Učinite svoju biljku PAMETNOM! (Arduino): 5 koraka
Učinite svoju biljku PAMETNOM! (Autor Arduino): Dakle, uvijek ste se pitali kako dodati tehnologiju u svoje biljke? S ovim cool projektom možete se pobrinuti da vaše ljupke biljke uvijek budu u dobrom stanju. Nakon što obavite ovaj projekt, učinit ćete: Naučiti kako koristiti analogno-izlazne senzore Naučiti kako
Uzgajajte vlastitu LED biljku koja mijenja boju!: 9 koraka
Uzgojite vlastitu LED biljku koja mijenja boju !: U ovom uputstvu ću vas naučiti kako uzgajati svoju vlastitu LED biljku od jednostavnih materijala