Noțiuni introductive despre Blynk: dispozitive simple IoT DIY

Noțiuni introductive despre Blynk: dispozitive simple IoT DIY

Blynk [Broken URL Removed] este un serviciu Internet of Things (IoT) conceput pentru a face telecomanda și a citi datele 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ările diferite ale serviciului cu plăcile de dezvoltare NodeMCU și Raspberry Pi.





Nu a fost niciodată mai ușor să începi să dezvolț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 utilizate pentru a controla totul, de la prizele de alimentare din casa ta până la decorațiunile de Crăciun activate de mișcare.





Un domeniu care poate pune o problemă pentru cei neinițiați este codarea și rețeaua. Blynk își propune să elimine necesitatea unei codificări extinse și să faciliteze accesul dispozitivelor dvs. de oriunde de pe telefonul smartphone. Este gratuit de utilizat pentru pasionați și dezvoltatori, deși este disponibil și pentru utilizare comercială contra cost - companiile pot folosi Blynk pentru a-și crea propriile aplicații și sisteme, apoi le pot vinde cu propriul branding.





Blynk folosește propriul server și bibliotecă pentru a face ca serviciul să funcționeze, dar aplicația Blynk pare a fi principalul său punct forte.

Accesați aplicația Blynk

Aplicația Blynk este disponibilă gratuit pe Android și iOS. Este punctul de plecare pentru proiectele dvs., oferind un sistem de glisare și fixare simplu de utilizat pentru a construi controale personalizate pentru configurarea IoT. Fluxul de lucru este rapid: când începeți un proiect nou 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. prin serverul Blynk.



istoricul google șterge toată activitatea mea

Se numesc elemente de control Widgeturi : diverse tipuri de metode de introducere și afișaje de ieșire, inclusiv butoane, glisante, joystick, grafice și feedback text. Există, de asemenea, widget-uri specifice componentelor, cu comenzi stilizate pentru LED-uri, afișaje LCD și chiar video live streaming. De asemenea, sunt remarcabile 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 widgeturi puteți utiliza simultan, oferindu-le tuturor un cost „Energie”. Aplicația vă oferă un sold de 2.000 cu care să vă jucați, cu opțiunea de a cumpăra mai mult dacă este necesar.





Am constatat că soldul inițial furnizat a fost mai mult decât suficient pentru exemplele de proiecte enumerate aici, deși, dacă configurarea dvs. este mai complicată, s-ar putea să vă simțiți epuizat destul de repede.

Fiecare widget are un meniu de editare care vă permite să schimbați numele și culoarea. Apoi alegeți pinul care să afecteze (fie că este un pin de pe placa dvs. sau unul dintre pinii virtuali ai lui Blynk) împreună cu gama de valori de trimis. Pentru afișaje de ieșire, cum ar fi grafice și casete de text, puteți alege, de asemenea, cât de des doriți să fie actualizate, economisind potențial lățimea de bandă prețioasă.





Blynk oferă, de asemenea, capacitatea 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 prezenta cum să le utilizați mai târziu în articol.

Aplicația oferă opțiunea de a partaja proiectul dvs. cu alții. Este generat un cod QR care poate fi trimis prin e-mail sau scanat direct și utilizat de oricine are și aplicația Blynk. Oricine partajați cu el nu poate aduce modificări proiectului, făcându-l un mod rapid și convenabil de a partaja controlul dispozitivelor dvs. Cu toate acestea, merită menționat faptul că proiectul dvs. din aplicație trebuie să ruleze pentru ca alții să aibă acces la hardware.

De asemenea, puteți partaja proiectul fără a permite accesul la hardware-ul dvs., care este o modalitate excelentă de a învăța oamenii cum să folosească aplicația fără a le permite să aprindă și să stingă luminile!

Am găsit că crearea unei aplicații este foarte rapidă și intuitivă. Odată creat, puteți începe să îl utilizați imediat apăsând simbolul de redare din colțul din dreapta sus. Dacă trebuie să faceți modificări ulterior, puteți apăsa pur și simplu 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 cum să comunicați 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 de autorizare în același sens. Mai târziu în acest articol, vom crea propriul nostru script folosind biblioteca Blynk pentru a ne conecta la serviciu.

A doua opțiune este să găzduiește-l pe al tău Server Blynk. Blynk oferă un server Java open source bazat pe Netty, care poate fi rulat de pe computerul dvs. sau chiar de pe un Raspberry Pi. Acest lucru are diferite avantaje pentru unii utilizatori în ceea ce privește funcționalitatea și securitatea, deși pentru exemplele noastre de aici ne vom concentra pe utilizarea serverului cloud Blynk furnizat.

Biblioteca Blynk

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

Cel mai simplu, tot ce este necesar este să instalați biblioteca și să încărcați una dintre schițele exemplare bine adnotate furnizate.

Blynk: Configurare inițială

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

Creați-vă proiectul. Aceasta va trimite automat un indicativ de autorizare. Dacă nu îl primiți, îl puteți retrimite selectând pictograma setărilor proiectului (nuca mică), selectând dispozitivul ș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 Arduino> biblioteci pliant. Dacă sunteți nou în Arduino, iată un ghid pentru a începe .

Pentru Raspberry Pi, va trebui să vă asigurați că aveți primul Node.js instalat. Există un ghid pentru Node.js instalat în acest articol, dacă aveți nevoie de el.

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

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

Apoi instalați fișierul Manager pachet nod , OnOff bibliotecă și Clipiți bibliotecă tastând aceasta în fereastra Terminalului.

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

Puteți verifica dacă totul a funcționat rulând scriptul de testare Blynk:

blynk.js [YourAuthorizationTokenHere]

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

Dacă primiți erori, asigurați-vă că Pi este actualizat și că aveți instalată cea mai recentă versiune de Node.js, î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ă codificare și, odată configurat, este complet independent. Atâta timp cât placa are acces la conexiunea dvs. Wi-Fi, o puteți accesa de oriunde utilizând telefonul smartphone.

Pentru început, configurați un circuit simplu pe o placă de calcul. Conectați pinul D0 la piciorul pozitiv al unui LED și înapoi la pinul GND printr-un rezistor de 220 Ohm.

Deschideți proiectul NodeMCU în aplicația Blynk. În partea dreaptă, selectați Buton widget din meniu. Selectați butonul din proiect pentru a deschide meniul său de proprietăți. Aici îl puteți denumi și alege ce pin de pe placa dvs. NodeMCU ar trebui să afecteze. Selectați pinul D0 din lista de ieșire ș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 din 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 de instrumente. Dacă nu vedeți placa dvs. în acest meniu, poate fi necesar să instalați bibliotecile ESP8266 (acest ghid ar trebui să vă ajute).

Acum deschideți scriptul ESP8266 independent oferit de Blynk în biblioteca lor navigând la Fișier> Exemple> Blynk> Boards_WiFi> ESP8266_Standalone . Înlocuiți substituentul 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[] = 'YourPassword';

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

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

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 acces la date mobile.

Blynk pe Raspberry Pi

Puteți utiliza Blynk exact la fel ca în exemplul de mai sus de pe Raspberry Pi utilizând scriptul de testare Blynk, dar există câteva funcționalități mai profunde pe care le oferă pinii virtuali ai lui Blynk, pe care îi 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 un nou limbaj, acesta ar trebui să fie un manual excelent pentru a începe.

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

Vei avea nevoie:

  • Comutator magnetic pentru ușă (cunoscut și sub numele de comutator reed)
  • 1x 1k? rezistor
  • 1x 10k? rezistor
  • 1x 220? rezistor
  • 1x LED
  • Firele de conectare și panoul de conectare

Configurați panoul de verificare astfel:

pot descărca filme de pe Amazon Prime pe computerul meu?

Rețineți că biblioteca lui Blynk folosește numerele GPIO ale pinilor Pi, așa că le vom folosi pe tot parcursul acestui proiect. Conectați pinii 5V și GND la șinele de alimentare de pe panou. Conectați pinul GPIO 22 de pe Raspberry Pi la anodul LED și conectați catodul la șina de masă prin 220? rezistor. Conectați pinul GPIO 17 la o parte a 1k? rezistor și conectați 10? rezistență la cealaltă parte și partea de 5V a șinei de alimentare. În cele din urmă, conectați comutatorul Reed la partea GND a șinei de alimentare pe o parte și pe linia unde 1k? și 10k? rezistențele se întâlnesc pe de altă parte. Această configurație a rezistenței de tracțiune va face ca tensiunea de pe pinul 17 să citească mare atunci când comutatorul se deschide.

Creați un proiect nou în aplicația Blynk și selectați placa Raspberry Pi. Din meniul widget, selectați o valoare etichetată, e-mail și un widget de notificare

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

Este demn de remarcat faptul că nu trebuie să introduceți o adresă de e-mail în widget-ul de e-mail, deoarece îl vom adăuga în cod mai târziu, deși widget-ul 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 din colțul din dreapta sus.

Acum creați 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ăugarea cheii noastre de autorizare și crearea unei instanțe de Blynk pe care să o folosim în scriptul nostru.

var blynklib = require('/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ă declarăm variabilele 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'), //register changes 'both' when switch is opened and closed
led = new Gpio(22, 'out');
var virtualPin = 0;

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

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

Putem folosi valoarea pentru a trimite și date către aplicația Blynk. Dacă ușa este închisă, dorim să o putem vedea în widgetul dvs. cu valoare etichetată. Dacă ușa se deschide, dorim să primim o notificare și un e-mail care ne spune. Facem acest lucru cu o declarație if și folosind virtualWrite , notifica , și e-mail funcții din biblioteca Blynk. Puteți găsi documentația completă pentru Blynk Aici .

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');
};
});

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 la scrierea pe consolă. Rețineți că acoladele finale sunt de unde am început ceas funcția de mai sus.

În cele din urmă, trebuie să resetați pinul la sfârșitul programului. Aceasta este la fel ca GPIO.cleanup () probabil că sunteți deja familiarizați cu asta.

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

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

sudo node blynkdoor.js

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

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

În timpul scurt petrecut până acum cu Blynk, pare un serviciu foarte ușor de utilizat. Cea mai simplă permite oamenilor fără cunoștințe de codificare să construiască cu ușurință sisteme de automatizare casnică DIY. Cu puține cunoștințe suplimentare de codificare, devine și mai puternic, permițând sisteme mult mai complexe și declanșatoare multiple de evenimente de la apăsarea unui singur buton în aplicație.

Acest proiect a fost o introducere de bază pentru Blynk, deși ceea ce am acoperit aici ar putea fi ușor modificat pentru aproape orice proiect de automatizare a locuinței sau de microcontroler.

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

Credit de imagine: Giuseppe Caccavale prin YouTube.com

Acțiune Acțiune Tweet E-mail Canon vs. Nikon: Ce marcă de camere este mai bună?

Canon și Nikon sunt cele mai mari două nume din industria camerelor. Dar ce marcă oferă o gamă mai bună de camere și obiective?

Citiți în continuare
Subiecte asemănătoare
  • DIY
  • Casa inteligentă
  • Arduino
  • Raspberry Pi
  • Domotică
  • internetul Lucrurilor
  • Electronică
Despre autor Ian Buckley(216 articole publicate)

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

Mai multe de la Ian Buckley

Aboneaza-te la newsletter-ul nostru

Alăturați-vă newsletter-ului pentru sfaturi tehnice, recenzii, cărți electronice gratuite și oferte exclusive!

Faceți clic aici pentru a vă abona
Categorie Diy