Publicitate

Blynk [URL ruptă eliminată] este un serviciu Internet of Things (IoT), conceput pentru a face controlul de la distanță și citirea datelor senzorilor de pe dispozitivele dvs. cât mai rapid și ușor posibil. În acest articol vom acoperi exact ce este Blynk, cum funcționează și vom oferi două exemple de proiecte scurte privind utilizări diferite ale serviciului cu ajutorul plăcilor de dezvoltare NodeMCU și Raspberry Pi.

Nu a fost niciodată mai ușor să începeți să dezvoltați obiecte inteligente folosind microcontrolere, iar dispozitivele IoT au crescut rapid în popularitate în ultimii ani. Plăcile de dezvoltare precum Arduino sau Raspberry Pi pot fi folosite pentru a controla totul de la prize electrice Cum să controlați prizele RF ieftine din OpenHABAu niște prize electrice ieftine RF, dar au descoperit că niciun hub inteligent pentru acasă nu funcționează cu acestea? Puteți să le conectați la sistemul dvs. inteligent de bricolaj cu doar 10 USD în părți. Citeste mai mult în casa dvs. pentru a activa activarea mișcării

instagram viewer
decorațiuni de Crăciun Îmbunătățiți-vă coroana de Crăciun cu o matrice LED activată în mișcareAceastă coroană de Crăciun DIY folosește o matrice Arduino și LED pentru a produce un ecran uimitor de lumină care vă va impresiona prietenii și familia. Citeste mai mult .

O zonă care poate pune problema neinițiatului este codificarea și rețeaua. Blynk își propune să elimine nevoia de codificare extinsă și să faciliteze accesul dispozitivelor dvs. de oriunde pe smartphone. Este gratuit de utilizat pentru pasionați și dezvoltatori, deși este disponibil și pentru utilizarea comercială pentru un an onorariu - companiile pot utiliza Blynk pentru a-și crea propriile aplicații și sisteme, apoi le pot vinde cu ajutorul lor branding.

Blynk folosește propriul server și biblioteca pentru a face funcționarea serviciului, dar aplicația Blynk pare să fie principalul punct forte.

Intrați în aplicația Blynk

Aplicația Blynk este disponibilă gratuit pe Android și iOS. Este punctul de plecare pentru proiectele dvs., care conține un sistem simplu de utilizat și glisare pentru crearea de controale personalizate pentru configurarea IoT. Fluxul de lucru este rapid: atunci când începeți un nou proiect, vi se solicită să alegeți placa de dezvoltare dintr-o listă extinsă, precum și metoda de conectare. Aplicația trimite apoi un jeton de autorizare prin e-mail pentru conectarea la dispozitivul dvs. pe serverul Blynk.

Elementele de control sunt numite Widget-uri: diverse tipuri de metode de introducere și afișaje de ieșire, inclusiv butoane, glisante, un joystick, grafice și feedback de text. Există, de asemenea, widget-uri specifice componentelor, cu comenzi stilizate pentru LEDS, afișaje LCD și chiar video transmis în direct. De asemenea, sunt notabile widget-urile care adaugă funcții, cum ar fi postarea automată pe Twitter și notificările personalizate.

Deși aplicația este gratuită, limitează câte widget-uri puteți utiliza simultan, oferindu-le tuturor un cost „de energie”. Aplicația vă oferă un echilibru de 2.000 cu care să vă jucați, cu opțiunea de a cumpăra mai multe dacă este nevoie.

Am constatat că soldul de pornire furnizat a fost mai mult decât suficient pentru exemplele de proiecte enumerate aici, deși dacă setarea dvs. este mai complicată, s-ar putea să vă descurcați fără suc repede.

widget-uri și buton blynk

Fiecare widget are un meniu de editare care vă permite să schimbați numele și culoarea. Alegeți apoi ce pin să afecteze (fie că este vorba de un pin pe placa dvs. sau unul dintre pinii virtuali ai lui Blynk) împreună cu gama de valori pe care să le trimiteți. Pentru afișajele de ieșire, cum ar fi graficele și casetele de text, puteți alege, de asemenea, cât de des doriți să fie actualizat, putând economisi lățime de bandă prețioasă.

De asemenea, Blynk oferă posibilitatea de a atribui instrucțiuni pinilor „virtuali”, care sunt conexiuni configurate de utilizator între aplicație și hardware. Prin urmare, un singur buton din aplicație poate fi utilizat pentru a declanșa multe evenimente diferite pe dispozitiv. Vom descrie cum să le utilizăm mai târziu în articol.

Aplicația oferă opțiunea de a împărtăși proiectul cu alții. Este generat un cod QR care poate fi trimis prin e-mail sau scanat direct și utilizat de către oricine are și aplicația Blynk. Oricine împărtășești nu poate aduce modificări proiectului, făcându-l un mod rapid și convenabil de a partaja controlul dispozitivelor tale. Este demn de remarcat însă că proiectul dvs. din aplicație trebuie să fie difuzat pentru ca alții să aibă acces la hardware.

Puteți, de asemenea, să partajați proiectul fără a permite accesul la hardware-ul dvs., care este o modalitate excelentă de a-i învăța pe oameni să folosească aplicația fără a le permite să se aprindă și să se aprindă!

Am găsit crearea unei aplicații foarte rapidă și intuitivă. Odată creată, puteți începe să o utilizați imediat apăsând simbolul de redare în colțul din dreapta sus. Dacă trebuie să faceți modificări mai târziu, puteți pur și simplu să apăsați același buton pentru a reveni în modul de editare.

Serverul Blynk

După ce ați creat o aplicație pentru a vă controla dispozitivul, aveți două opțiuni pentru a comunica cu acesta.

Serverul cloud Blynk este rapid, receptiv și gratuit de utilizat. Conectarea la un dispozitiv Wi-Fi este la fel de ușoară precum copierea codului de autorizare generat în schița Arduino și furnizarea detaliilor Wi-Fi. Pentru Raspberry Pi, Blynk oferă un script de test pe care îl puteți rula cu codul dvs. de autorizare în același efect. Mai târziu în acest articol, vom crea propriul script folosind biblioteca Blynk pentru a ne conecta la serviciu.

A doua opțiune este să găzduiește-ți al tău Serverul Blynk. Blynk furnizează un server Java bazat pe Netty, care poate fi rulat de pe computer sau chiar un Raspberry Pi. Aceasta are diverse avantaje pentru unii utilizatori din punct de vedere al funcționalității și securității, deși pentru exemplele noastre de aici ne vom concentra pe utilizarea serverului cloud Blynk cu condiția.

site-ul blynk

Biblioteca Blynk

Al treilea și ultimul element al lui Blynk este Biblioteca Blynk. Această bibliotecă funcționează cu o listă uriașă de plăci de dezvoltare pentru a permite comunicarea între aplicație și hardware.

Cel mai simplu, tot ce este necesar este instalarea bibliotecii și încărcarea unuia dintre schițele de exemplu bine adnotate furnizate.

Blynk: Configurare inițială

Instalați aplicația Blynk pe smartphone și creați-vă un cont. Asigurați-vă că utilizați o adresă de e-mail la care puteți accesa efectiv, întrucât vor fi trimise jetoanele dvs. de autorizare. Acum creați un proiect, selectând ce placă veți folosi și cum vă veți conecta la acesta. Ambele exemple aici se conectează prin Wi-Fi, deși conexiunile prin Bluetooth, Ethernet și chiar GSM sunt de asemenea posibile.

Creează-ți proiectul. Aceasta va trimite automat un jeton de autorizare. Dacă nu îl primiți, îl puteți retrimite selectând pictograma setărilor proiectului (nuca mică), selectând dispozitivul dvs. și selectând „E-mail”.

Apoi, instalați bibliotecile Blynk de pe site-ul web Blynk. Pentru Arduino, instalați biblioteca copiind fișierele în dvs. Arduino> biblioteci pliant. Dacă sunteți nou la Arduino, iată un ghid pentru a vă începe Noțiuni introductive cu Arduino: Ghid pentru începătoriArduino este o platformă de prototipare electronică open-source bazată pe hardware și software flexibile, ușor de utilizat. Este destinat artiștilor, designerilor, pasionaților și oricui este interesat să creeze obiecte sau medii interactive. Citeste mai mult .

Pentru Raspberry Pi, va trebui să vă asigurați că aveți Node.js instalat mai întâi. Există un ghid pentru Node.js instalat în Acest articol Cum să creezi o lumină Wi-Fi controlată de bricolajÎn acest ghid, veți învăța cum să creați o lumină controlabilă Wi-Fi și să o controlați cu Siri. Citeste mai mult ar trebui să ai nevoie.

În primul rând, asigurați-vă că Pi-ul dvs. este actualizat și că instalarea pachetului esențial de construire.

Actualizare sudo apt-get. upgrade sudo apt-get. sudo apt-get install build-essential. 

Apoi instalați Manager pachet nod, OnOff bibliotecă și Blynk bibliotecă tastând acest lucru în fereastra Terminalului.

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

Puteți verifica tot ce a funcționat rulând scriptul testului Blynk:

blynk.js [Autorizarea dvs.TokenHere] 

Cu condiția ca totul să funcționeze, ar trebui să arate astfel:

Scriptul testului blynk pi blynk

Dacă întâmpinați erori, asigurați-vă că Pi este actualizat și că aveți cea mai recentă versiune de Node.js instalată, înainte de a reinstala bibliotecile NPM, OnOff și Blynk.

Configurare rapidă cu NodeMCU

Acest prim exemplu arată cât de rapid este să configurați sisteme simple folosind Blynk. Nu necesită codare și, odată configurat, este complet singur. Atâta timp cât placa are acces la conexiunea dvs. Wi-Fi, o puteți accesa de oriunde folosind smartphone-ul.

Pentru a începe, configurați un circuit simplu pe o panou. Conectați știftul D0 la piciorul pozitiv al unui LED și înapoi la pinul GND printr-un rezistor de 220 Ohm.

nodemcu fritzing

Deschide-ți proiectul NodeMCU în aplicația Blynk. În partea dreaptă, selectați tasta Buton widget din meniu. Selectați butonul din proiectul dvs. pentru a deschide meniul de proprietăți. Aici puteți să-l denumiți și să alegeți ce pin de pe placa dvs. NodeMCU ar trebui să afecteze. Selectați pin D0 din lista de ieșiri și comutați modul pentru a face un comutator de pornire și oprire, mai degrabă decât un comutator de apăsare momentană.

Apăsați înapoi (toate modificările sunt salvate automat), apoi apăsați pictograma de redare în colțul din dreapta sus pentru a porni aplicația. Puteți apăsa oricând același buton pentru a reveni la editarea proiectului.

Apoi, deschideți Arduino IDE și alegeți placa și portul NodeMCU din meniul instrumentelor. Dacă nu vedeți placa în acest meniu, poate fi necesar să instalați bibliotecile ESP8266 (acest ghid ar trebui să vă ajute Faceți cunoștință cu Arduino Killer: ESP8266Ce se întâmplă dacă v-aș spune că există o placă dev-compatibilă cu Arduino cu Wi-Fi încorporat pentru mai puțin de 10 USD? Ei bine, există. Citeste mai mult ).

Acum deschideți scriptul autonom ESP8266 oferit de Blynk în biblioteca lor navigând în Fișier> Exemple> Blynk> Boards_WiFi> ESP8266_Standalone. Înlocuiți locul de rezervă pentru jetonul de autorizare cu cel pe care l-ați primit prin e-mail și introduceți detaliile Wi-Fi.

char auth [] = "YourAuthToken"; char ssid [] = "YourNetworkName"; char pass [] = "Cuvântul tău de cuvânt"; 

Salvați schița sub un nou nume și încărcați-o pe placa dvs. Acum, când apăsați butonul din aplicație, LED-ul ar trebui să se aprindă și să se oprească. Dacă nu funcționează, verificați dacă ați apăsat pictograma de redare în aplicație.

În cazuri simple ca acestea, Blynk este incredibil de rapid de instalat.

Blynk nodemcu a terminat

De asemenea, este demn de remarcat faptul că, deoarece acesta folosește serverul Blynk, vă puteți controla placa de oriunde, atâta timp cât placa are acces la conexiunea Wi-Fi de acasă și smartphone-ul dvs. are date mobile acces.

Blynk pe zmeura Pi

Puteți utiliza Blynk exact la fel ca în exemplul de mai sus pe Zmeura Pi folosind testul Blynk script, dar există câteva funcționalități mai profunde pe care le oferă pinii virtuali ai lui Blynk, pe care le vom analiza acum.

Blynk funcționează folosind Node.js, deci codul pe care îl vom scrie astăzi va fi în Javascript. Dacă sunteți o nouă limbă, acest lucru ar trebui să fie un grund bun pentru a începe Începeți codarea JavaScript chiar acum cu aceste 5 mari resurse gratuite Citeste mai mult .

Vom folosi biblioteca Blynk pentru a crea o aplicație care raportează dacă un senzor de ușă este deschis sau închis, și va trimite un e-mail și o notificare push către telefonul dvs. mobil când ușa se deschide.

Vei avea nevoie:

  • Întrerupător de magnet pentru ușă (cunoscut și sub numele de comutator stuf)
  • 1x 1k? rezistor
  • 1x 10k? rezistor
  • 1x 220? rezistor
  • 1x LED
  • Sârmă și cârlig

Configurează-ți panoul de pană astfel:

pi fritzing

Rețineți că biblioteca lui Blynk folosește numerele GPIO ale pinilor Pi, așa că le vom folosi pe tot acest proiect. Conectați pinii 5V și GND la șinele de alimentare de pe panou. Conectați pinul 22 GPIO de la Zmeura Pi la anodul LED și conectați catodul la șina de la sol prin 220? rezistor. Conectați pinul GPIO 17 la o parte a 1k? rezistor și conectați cele 10? rezistență față de cealaltă parte, și partea de 5V a șinei electrice. În cele din urmă, conectați comutatorul reed la partea GND a șinei de alimentare pe o parte și pe linia unde este 1k? si 10k? rezistențele se întâlnesc pe de altă parte. Această configurare a rezistenței de tracțiune va face ca tensiunea de pe pinul 17 să fie citită ridicat când se deschide comutatorul.

Creați un proiect nou în aplicația Blynk și selectați placa dvs. Raspberry Pi. Din meniul widget, selectați o etichetă Valoare, e-mail și un widget Notificare

Selectați valoarea etichetată, denumiți-o și alegeți pin virtual V0 deoarece este pinul de intrare. De asemenea, puteți schimba modul în care sunt afișate informațiile. În acest caz, adăugați „Ușa este” înainte / pin / în fila Etichetă. Putem lăsa valoarea Frecvenței de citire la setarea implicită, deși puteți modifica aceasta pentru a trimite date către aplicație la un ritm diferit.

Este demn de remarcat faptul că nu trebuie să introduceți o adresă de e-mail în widgetul de e-mail, deoarece îl vom adăuga ulterior în cod, deși widgetul trebuie să fie prezent pentru ca acesta să funcționeze.

După ce sunteți mulțumit de aspectul aplicației dvs., apăsați butonul Redare în colțul din dreapta sus.

valoarea etichetată a proiectului

Acum creează un nou script numit blynkdoor.js. Codul complet este disponibil complet adnotat aici.

sudo nano blynkdoor.js. 

Trebuie să începem prin importarea bibliotecii Blynk, adăugând cheia de autorizare și creând o instanță a Blynk pe care să o utilizăm în scriptul nostru.

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

De asemenea, trebuie să importăm biblioteca OnOff și să declaram variabile care configurează comutatorul nostru reed și LED-ul. De asemenea, vom crea o variabilă pentru pinul virtual pe care l-am configurat în aplicația Blynk.

var Gpio = require ('onoff'). Gpio, reed = new Gpio (17, 'in', 'both'), // registru modificări 'ambele' atunci când comutatorul este deschis și închis. led = new Gpio (22, 'out'); var virtualPin = 0; 

Acum vom folosi ceas funcționează din biblioteca OnOff pentru a urmări modificările comutatorului nostru reed. Comutatorul ușii este fie la 0 sau 1și ori de câte ori această valoare se schimbă, scriem acea modificare în pinul LED.

reed.watch (funcție (err, valoare) {led.writeSync (valoare); 

Putem folosi valoarea pentru a trimite date și în aplicația Blynk. Dacă ușa este închisă, dorim să o putem vedea în widget-ul dvs. Valoare etichetată. Dacă ușa se deschide, dorim să primim o notificare și un e-mail care să ne spună. Facem acest lucru cu o declarație if și folosind virtualWrite, notifica, și e-mail funcții din biblioteca Blynk. Documentația completă pentru Blynk poate fi găsită aici.

 if (valoare == 0) {blynk.virtualWrite (virtualPin, "Închis"); console.log („Ușa închisă”); }; if (valoare == 1) {blynk.notify ("Ușa tocmai s-a deschis!"); blynk.email ("email@address.here", "ușa frontală", "ușa din față tocmai s-a deschis."); blynk.virtualWrite (virtualPin, „Deschis”); console.log ('Deschideți ușa'); }; }); 

Acum, ori de câte ori comutatorul reed înregistrează o schimbare de valoare, datele sunt trimise la pinul nostru virtual și în cazul deschiderii ușii către widgetul de notificare din aplicație, precum și scrierea către consolă. Rețineți că barele finale sunt de unde am început ceas funcție de mai sus.

În cele din urmă, trebuie să resetăm pinul când se termină programul. Aceasta este aceeași ca și GPIO.cleanup () probabil că sunteți deja familiarizați.

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

Acum salvați codul și ieșiți. Rulați scriptul cu nodul.

nod sudo blynkdoor.js. 

Acum, atunci când îndepărtați magnetul de senzorul stufului, ar trebui să primiți o notificare care să vă spună ușa deschisă, iar afișajul etichetat trebuie să se schimbe. Închideți butonul din nou și veți vedea că afișajul etichetat se modifică din nou.

pi care lucrează gif

Este demn de remarcat faptul că aplicația Blynk trebuie să funcționeze pe telefonul dvs. pentru a primi notificările push, deși e-mailurile funcționează dacă aplicația rulează sau nu.

În timpul scurt petrecut până acum cu Blynk, pare un serviciu foarte ușor de utilizat. Cel mai simplu le permite oamenilor fără cunoștințe de codare să construiască cu ușurință sisteme de automatizare casnică. Cu puțină cunoștință de codificare suplimentară, devine și mai puternic, permițând sisteme mult mai complexe și declanșări multiple de evenimente din apăsările unui singur buton din aplicație.

Acest proiect a fost o introducere de bază pentru Blynk, deși ceea ce am acoperit aici poate fi modificat cu ușurință pentru aproape orice proiect de automatizare casnică sau microcontroler.

Ai folosit Blynk? Aveți un sistem complex nebun care folosește serviciul pe care doriți să îl partajați cu noi? Spuneți-ne în comentariile de mai jos!

Credit imagine: Giuseppe Caccavale prin YouTube.com

Ian Buckley este un jurnalist independent, muzician, interpret și producător video care locuiește la Berlin, Germania. Când nu scrie sau pe scenă, ticăiește cu electronice sau coduri DIY, în speranța de a deveni un om de știință nebun.