Početak rada s Blynkom: jednostavni DIY IoT uređaji

Početak rada s Blynkom: jednostavni DIY IoT uređaji

Blynk [Uklonjen neispravan URL] usluga je interneta stvari (IoT) osmišljena kako bi daljinsko upravljanje i čitanje podataka senzora s vaših uređaja učinili što bržim i lakšim. U ovom ćemo članku pokriti točno što je Blynk, kako radi i pružiti dva kratka primjera projekata o različitim upotrebama usluge s razvojnim pločama NodeMCU i Raspberry Pi.





Nikada nije bilo lakše započeti razvoj pametnih objekata pomoću mikrokontrolera, a popularnost IoT uređaja posljednjih godina brzo je porasla. Razvojne ploče poput Arduina ili Raspberry Pi mogu se koristiti za kontrolu svega, od utičnica u vašem domu do božićnih ukrasa aktiviranih pokretom.





Jedno područje koje može predstavljati problem neupućenima je kodiranje i umrežavanje. Blynk ima za cilj ukloniti potrebu za opsežnim kodiranjem i olakšati pristup vašim uređajima s bilo kojeg mjesta na vašem pametnom telefonu. Besplatan je za korištenje za ljubitelje i programere, iako je dostupan i za komercijalnu upotrebu uz naknadu - tvrtke mogu koristiti Blynk za stvaranje vlastitih aplikacija i sustava, a zatim ih prodavati s vlastitom robnom markom.





Blynk koristi vlastiti poslužitelj i biblioteku kako bi usluga funkcionirala, no čini se da je glavna snaga aplikacija Blynk.

Unesite aplikaciju Blynk

Aplikacija Blynk dostupna je besplatno na Androidu i iOS -u. To je polazište za vaše projekte s jednostavnim sustavom povlačenja i ispuštanja za izradu prilagođenih kontrola za vaše IoT postavljanje. Tijek rada je brz: pri pokretanju novog projekta od vas će se tražiti da odaberete svoju razvojnu ploču s opsežnog popisa, ali i način povezivanja. Aplikacija zatim šalje token autorizacije putem e -pošte za povezivanje s vašim uređajem putem poslužitelja Blynk.



macbook air m1 vs macbook pro m1

Upravljački elementi se zovu Widgeti : razne vrste metoda unosa i prikaza izlaza uključujući gumbe, klizače, joystick, grafikone i povratne informacije o tekstu. Postoje i widgeti specifični za komponente, sa stiliziranim kontrolama za LED diode, LCD zaslonima, pa čak i video zapisima koji se emitiraju uživo. Također su značajni widgeti koji dodaju značajke, poput automatskog objavljivanja na Twitteru i prilagođenih obavijesti.

Iako je aplikacija besplatna, ograničava koliko widgeta možete koristiti odjednom dajući im cijenu 'energije'. Aplikacija vam daje ravnotežu od 2000 za igranje, s mogućnošću kupnje više ako je potrebno.





Otkrio sam da je početni saldo više nego dovoljan za ovdje navedene primjere projekata, iako ako je vaše postavljanje složenije, moglo bi vam se dogoditi da vam brzo nestane soka.

Svaki widget ima izbornik za uređivanje koji vam omogućuje promjenu imena i boje. Zatim birate na koji pin želite utjecati (bilo da se radi o pribadači na vašoj ploči ili o jednoj od Blynkovih virtualnih pinova) zajedno s rasponom vrijednosti za slanje. Za izlazne zaslone kao što su grafikoni i okviri za tekst možete odabrati koliko često želite da se ažurira, čime se potencijalno štedi dragocjena propusnost.





Blynk također ima mogućnost dodjeljivanja uputa 'virtualnim' iglama, koje su korisnički konfigurirane veze između aplikacije i hardvera. Stoga se jednim gumbom u aplikaciji može pokrenuti mnogo različitih događaja na uređaju. Kasnije u članku ćemo objasniti kako ih koristiti.

Aplikacija daje mogućnost dijeljenja vašeg projekta s drugima. Generira se QR kôd koji se može poslati e -poštom ili izravno skenirati, a koristiti ga mogu svi koji imaju i aplikaciju Blynk. S kim god podijelite ne može mijenjati projekt, što ga čini brzim i prikladnim načinom dijeljenja kontrole nad vašim uređajima. Vrijedi napomenuti da vaš projekt u aplikaciji mora biti pokrenut kako bi drugi imali pristup hardveru.

Projekt možete podijeliti i bez dopuštanja pristupa svom hardveru, što je izvrstan način da naučite ljude kako koristiti aplikaciju, a da im pritom ne dopustite da pale i isključuju svjetla!

Izrada aplikacije bila mi je vrlo brza i intuitivna. Nakon stvaranja možete ga odmah početi koristiti pritiskom na simbol za reprodukciju u gornjem desnom kutu. Ako kasnije trebate unijeti promjene, jednostavno pritisnite isti gumb za povratak u način uređivanja.

Blynk poslužitelj

Nakon što stvorite aplikaciju za upravljanje uređajem, imate dvije mogućnosti za komunikaciju s njim.

Blynk cloud poslužitelj brz je, odzivan i besplatan za upotrebu. Povezivanje s Wi-Fi uređajem jednostavno je kao i kopiranje generiranog autorizacijskog koda u Arduino skicu i davanje podataka o Wi-Fi mreži. Za Raspberry Pi, Blynk pruža testnu skriptu koju možete pokrenuti sa svojim autorizacijskim kodom na isti način. Kasnije u ovom članku stvorit ćemo vlastitu skriptu koristeći biblioteku Blynk za povezivanje sa uslugom.

Druga je mogućnost da se ugostite svoj Blynk poslužitelj. Blynk pruža otvoreni izvorni Netty temeljen Java poslužitelj koji se može pokrenuti s vašeg računala ili čak Raspberry Pi. To ima različite prednosti za neke korisnike u smislu funkcionalnosti i sigurnosti, iako ćemo se za naše primjere ovdje koncentrirati na korištenje isporučenog Blynk cloud poslužitelja.

Knjižnica Blynk

Treći i posljednji element Blynka je Blynkova knjižnica . Ova knjižnica radi s velikim popisom razvojnih ploča koje omogućuju komunikaciju između aplikacije i vašeg hardvera.

Najjednostavnije rečeno, sve što je potrebno je instalirati knjižnicu i učitati jednu od ponuđenih dobro skiciranih primjera skica.

Blynk: početno postavljanje

Instalirajte aplikaciju Blynk na svoj pametni telefon i stvorite račun. Upotrijebite adresu e -pošte kojoj možete pristupiti jer će se tamo slati vaši autorizacijski tokeni. Sada izradite projekt, odabirom koju ćete ploču koristiti i kako ćete se s njom povezati. Oba se ovdje primjera povezuju putem Wi-Fi-ja, iako su moguće i veze putem Bluetootha, Etherneta, pa čak i GSM-a.

Kreirajte svoj projekt. Ovo će automatski poslati autorizacijski token. Ako ga ne primite, možete ga ponovno poslati odabirom ikone postavki projekta (mali orah), odabirom uređaja i odabirom 'E-pošta'.

Zatim instalirajte Blynk knjižnice s web stranice Blynk. Za Arduino instalirajte knjižnicu kopiranjem datoteka u Arduino> knjižnice mapu. Ako ste tek počeli koristiti Arduino, evo a vodič za početak .

Za Raspberry Pi prvo morate provjeriti imate li instaliran Node.js. U ovom članku postoji vodič za instalirani Node.js ako vam zatreba.

Prvo provjerite je li vaš Pi ažuriran i ima li instaliran paket neophodan za izgradnju.

sudo apt-get update
sudo apt-get upgrade
sudo apt-get install build-essential

Zatim instalirajte Upravitelj paketa čvorova , Uključeno, Isključeno knjižnica i Treptati knjižnicu upisujući ovo u prozor Terminala.

sudo npm install -g npm
sudo npm install -g onoff
sudo npm install -g blynk-library

Možete provjeriti je li sve funkcioniralo pokretanjem Blynk test skripte:

blynk.js [YourAuthorizationTokenHere]

Pod uvjetom da sve radi, to bi trebalo izgledati ovako:

Ako dobijete bilo kakve pogreške, provjerite je li vaš Pi ažuriran i imate li instaliranu najnoviju verziju Node.js, prije ponovne instalacije biblioteka NPM, OnOff i Blynk.

Brzo postavljanje s NodeMCU -om

Ovaj prvi primjer pokazuje koliko je brzo postavljanje jednostavnih sustava pomoću Blynka. Ne zahtijeva kodiranje, a nakon postavljanja potpuno je sam. Sve dok ploča ima pristup vašoj Wi-Fi vezi, možete joj pristupiti s bilo kojeg mjesta pomoću pametnog telefona.

Za početak postavite jednostavan krug na ploču. Spojite pin D0 na pozitivnu nogu LED -a, i natrag na pin GND kroz otpornik od 220 Ohma.

Otvorite svoj NodeMCU projekt u aplikaciji Blynk. Na desnoj strani odaberite Dugme widget s izbornika. Odaberite svoj gumb u projektu da biste otvorili izbornik svojstava. Ovdje ga možete nazvati i odabrati na koji pin na vašoj NodeMCU ploči bi trebao utjecati. Odaberi pin D0 s popisa izlaza i prebacite način rada u položaj za uključivanje i isključivanje, a ne za prekidač s trenutnim pritiskom.

Pritisnite natrag (sve se promjene spremaju automatski), a zatim pritisnite ikonu za reprodukciju u gornjem desnom kutu da biste pokrenuli aplikaciju. Ovaj isti gumb možete pritisnuti u bilo kojem trenutku za povratak na uređivanje projekta.

Zatim otvorite Arduino IDE i odaberite svoju NodeMCU ploču i port s izbornika alata. Ako na ovom izborniku ne vidite svoju ploču, možda ćete morati instalirati knjižnice ESP8266 (ovaj bi vam vodič mogao pomoći).

Sada otvorite samostalnu skriptu ESP8266 koju je Blynk dao u njihovoj knjižnici navigacijom do Datoteka> Primjeri> Blynk> Boards_WiFi> ESP8266_Standalone . Zamijenite rezervirano mjesto za autorizacijski token s onim koje ste primili e-poštom i unesite svoje Wi-Fi podatke.

char auth[] = 'YourAuthToken';
char ssid[] = 'YourNetworkName';
char pass[] = 'YourPassword';

Spremite skicu pod novim imenom i prenesite je na svoju ploču. Sada kada pritisnete gumb u aplikaciji, LED bi se trebao paliti i gasiti. Ako ne radi, provjerite jeste li pritisnuli ikonu za reprodukciju u aplikaciji.

U jednostavnim slučajevima poput ovih, Blynk se nevjerojatno brzo postavlja.

Također je vrijedno napomenuti da budući da ovo koristi poslužitelj Blynk, možete upravljati svojom pločom s bilo kojeg mjesta, sve dok ploča ima pristup vašoj kućnoj Wi-Fi vezi, a vaš pametni telefon ima pristup mobilnim podacima.

Blynk na Raspberry Pi

Blynk možete koristiti na potpuno isti način kao u gornjem primjeru na Raspberry Pi -ju pomoću Blynk test skripte, ali postoje neke dublje funkcionalnosti koje Blynkove virtualne pinove pružaju, a koje ćemo sada razmotriti.

Blynk radi koristeći Node.js, pa će kôd koji ćemo danas napisati biti u Javascriptu. Ako ste tek počeli s jezikom, ovo bi trebao biti izvrstan početak za početak.

Koristit ćemo biblioteku Blynk za izradu aplikacije koja izvještava je li senzor vrata otvoren ili zatvoren, te šalje e -poruku i push obavijest na vaš mobilni telefon kada se vrata otvore.

Trebat će vam:

  • Magnetni prekidač za vrata (poznat i kao trska)
  • 1x 1k? otpornik
  • 1x 10k? otpornik
  • 1x 220? otpornik
  • 1x LED
  • Oglasna ploča i žice za spajanje

Postavite svoju matičnu ploču ovako:

kako očistiti RAM -a na Windows 10

Imajte na umu da Blynkova knjižnica koristi GPIO brojeve Pi -ovih pinova, pa ćemo ih koristiti tijekom cijelog projekta. Priključite pinove 5V i GND na naponske vodilice na ploči s ploču. Spojite GPIO pin 22 na Raspberry Pi -u s LED anodom i spojite katodu na uzemljenu šinu kroz 220? otpornik. Spojite GPIO pin 17 na jednu stranu 1k? otpornik, i spojite 10? otpornik s druge strane i 5V strana razvodnika. Na kraju, spojite trskani prekidač s GND stranom razvodnika s jedne strane i na liniji gdje je 1k? i 10k? otpornici se susreću s druge strane. Ova postavka otpornika za podizanje uzrokovat će da se napon na pinu 17 očita visoko kad se prekidač otvori.

Izradite novi projekt u aplikaciji Blynk i odaberite svoju ploču Raspberry Pi. Na izborniku widgeta odaberite označenu vrijednost, e -poštu i widget za obavijesti

Odaberite označenu vrijednost, dajte joj ime i odaberite virtualni pin V0 jer je to ulazni pin. Također možete promijeniti način prikaza informacija. U tom slučaju dodajte 'Vrata su' prije / prikvači / na kartici Oznaka. Vrijednost učestalosti čitanja možemo ostaviti na zadanim postavkama, iako to možete promijeniti da biste slali podatke u svoju aplikaciju različitom brzinom.

Vrijedi napomenuti da zapravo ne morate unijeti adresu e -pošte u widget e -pošte jer ćemo je kasnije dodati u kôd, iako widget mora biti prisutan da bi radio.

Kad budete zadovoljni izgledom svoje aplikacije, pritisnite gumb Reproduciraj u gornjem desnom kutu.

Sada stvorite novu skriptu pod nazivom blynkdoor.js . Cijeli kôd dostupan je s napomenama ovdje .

sudo nano blynkdoor.js

Moramo početi uvozom Blynk knjižnice, dodavanjem našeg autorizacijskog ključa i stvaranjem instance Blynka za upotrebu u našoj skripti.

var blynklib = require('/usr/local/lib/node_modules/blynk-library');
var AUTH ='PasteAuthorizationCodeHere'
var blynk = new blynklib.Blynk(AUTH);

Također moramo uvesti biblioteku OnOff i deklarirati varijable koje postavljaju naš trskani prekidač i LED. Također ćemo stvoriti varijablu za virtualni pin koji smo postavili u aplikaciji Blynk.

var Gpio = require('onoff').Gpio,
reed = new Gpio(17, 'in', 'both'), //register changes 'both' when switch is opened and closed
led = new Gpio(22, 'out');
var virtualPin = 0;

Sada ćemo koristiti Gledati funkciju iz biblioteke OnOff za praćenje promjena u našem trstičnom prekidaču. Prekidač vrata je ili u položaju 0 ili 1 , i kad god se ta vrijednost promijeni zapisujemo tu promjenu na LED pin.

reed.watch(function(err,value){
led.writeSync(value);

Vrijednost možemo koristiti i za slanje podataka u aplikaciju Blynk. Ako su vrata zatvorena, želimo to vidjeti u vašem widgetu Označena vrijednost. Ako se vrata otvore, želimo primiti obavijest i e -poruku koja nam to govori. To radimo pomoću if naredbe i korištenjem virtualWrite , obavijestiti , i e -mail funkcije iz biblioteke Blynk. Cjelovita dokumentacija za Blynk može se pronaći ovdje .

if(value==0){
blynk.virtualWrite(virtualPin,'Closed');
console.log('Door Closed');
};
if(value==1){
blynk.notify('The door just opened!');
blynk.email('email@address.here', 'Front Door', 'The front door just opened.');
blynk.virtualWrite(virtualPin,'Open');
console.log('Door Open');
};
});

Sada kad god prekidač za trčanje registrira promjenu vrijednosti, podaci se šalju na naš virtualni pin, a u slučaju otvaranja vrata u widget za obavijesti u aplikaciji, kao i pisanje na konzolu. Imajte na umu da su posljednji aparatići odakle smo započeli Gledati gore navedena funkcija.

Konačno, moramo resetirati pin kad program završi. Ovo je isto što i GPIO.cleanup () vjerojatno ste već upoznati.

process.on('SIGINT', function () {
led.unexport();
reed.unexport();
});

Sada spremite kôd i izađite. Pokrenite skriptu pomoću čvora.

sudo node blynkdoor.js

Sada, kad pomaknete magnet od senzora trske, trebali biste dobiti obavijest koja vam govori da su se vrata otvorila, a vaš označeni zaslon bi se trebao promijeniti. Ponovno zatvorite prekidač i vidjet ćete da se označeni zaslon ponovno mijenja.

Vrijedi napomenuti da aplikacija Blynk mora biti pokrenuta na vašem telefonu kako biste primali push obavijesti, iako e -poruke rade bez obzira radi li se aplikacija ili ne.

U kratkom vremenu provedenom do sada s Blynkom čini se da je usluga vrlo laka za korištenje. Najjednostavnije rečeno omogućuje ljudima bez kodiranja da lako izgrade sustave kućne automatizacije. Uz malo dodatnog znanja o kodiranju, postaje još moćniji, dopuštajući mnogo složenije sustave i više pokretača događaja pritiskom na jednu tipku u aplikaciji.

Ovaj je projekt bio osnovni uvod u Blynk, iako se ono što smo ovdje obradili može lako promijeniti za gotovo svaki projekt kućne automatizacije ili mikrokontrolera.

Jeste li koristili Blynk? Imate li ludi složeni sustav koji koristi uslugu koju želite podijeliti s nama? Javite nam u komentarima ispod!

Kredit za sliku: Giuseppe Caccavale putem YouTube.com

Udio Udio Cvrkut E -pošta Canon protiv Nikona: Koja je marka fotoaparata bolja?

Canon i Nikon dva su najveća imena u industriji fotoaparata. No, koja marka nudi bolju ponudu kamera i objektiva?

Pročitajte Dalje
Povezane teme
  • Uradi sam
  • Pametna kuća
  • Arduino
  • Malina Pi
  • Kućna automatizacija
  • Internet stvari
  • Elektronika
O autoru Ian Buckley(216 objavljenih članaka)

Ian Buckley je slobodni novinar, glazbenik, izvođač i video producent koji živi u Berlinu, Njemačka. Kad ne piše ili je na pozornici, petlja s DIY elektronikom ili kodom u nadi da će postati ludi znanstvenik.

Više od Iana Buckleyja

Pretplatite se na naše obavijesti

Pridružite se našem biltenu za tehničke savjete, recenzije, besplatne e -knjige i ekskluzivne ponude!

Kliknite ovdje za pretplatu