Introducció a Blynk: simples dispositius IoT de bricolatge

Introducció a Blynk: simples dispositius IoT de bricolatge

Blynk [Broken URL Removed] és un servei d'Internet de les coses (IoT) dissenyat per fer que el control remot i la lectura de dades del sensor dels vostres dispositius sigui el més ràpida i senzilla possible. En aquest article tractarem exactament què és Blynk, com funciona i oferirem dos exemples breus de projectes sobre diferents usos del servei amb les plaques de desenvolupament NodeMCU i Raspberry Pi.





Mai no ha estat tan fàcil començar a desenvolupar objectes intel·ligents mitjançant microcontroladors i els dispositius IoT han augmentat ràpidament en popularitat durant els darrers anys. Les taules de desenvolupament com Arduino o Raspberry Pi es poden utilitzar per controlar des de les preses de corrent de casa fins a la decoració de Nadal activada per moviment.





Una de les àrees que pot suposar un problema per als no iniciats és la codificació i la creació de xarxes. Blynk té com a objectiu eliminar la necessitat d'una codificació extensa i facilitar l'accés als vostres dispositius des de qualsevol lloc del telèfon intel·ligent. Es pot utilitzar gratuïtament per a aficionats i desenvolupadors, tot i que també es pot utilitzar comercialment per una tarifa: les empreses poden utilitzar Blynk per crear les seves pròpies aplicacions i sistemes i després vendre-les amb la seva pròpia marca.





Blynk utilitza el seu propi servidor i la seva biblioteca per fer que el servei funcioni, però és l'aplicació Blynk la que sembla ser el seu principal punt fort.

Introduïu l'aplicació Blynk

L’aplicació Blynk està disponible de forma gratuïta a Android i iOS. És el punt de partida dels vostres projectes, amb un sistema d’arrossegar i deixar anar senzill d’utilitzar per crear controls personalitzats per a la vostra configuració d’IoT. El flux de treball és ràpid: en iniciar un projecte nou se us demana que trieu la vostra placa de desenvolupament d'una llista extensa i també el vostre mètode de connexió. A continuació, l'aplicació envia un testimoni d'autorització per correu electrònic per connectar-se al dispositiu mitjançant el servidor Blynk.



què fa el botó wps

Es diuen elements de control Ginys : diversos tipus de mètodes d'entrada i visualitzacions de sortida, inclosos botons, control lliscant, un joystick, gràfics i comentaris de text. També hi ha ginys específics de components, amb controls estilitzats per a LEDs, pantalles LCD i fins i tot vídeo en directe. També són destacables els ginys que afegeixen funcions, com la publicació automàtica a Twitter, i les notificacions personalitzades.

Tot i que l’aplicació és gratuïta, limita el nombre de ginys que podeu utilitzar alhora donant-los a tots un cost “energètic”. L’aplicació us proporciona un saldo de 2.000 per jugar, amb l’opció de comprar més si cal.





Vaig trobar que el saldo inicial proporcionat era més que suficient per als exemples de projectes que es detallen aquí, tot i que si la vostra configuració és més complicada, us podríeu quedar sense suc ràpidament.

Cada widget té un menú d'edició que us permet canviar el nom i el color. A continuació, trieu quin pin afectar (ja sigui un pin al tauler o un dels pins virtuals de Blynk) juntament amb l'interval de valors que cal enviar. Per a visualitzacions de sortida, com ara gràfics i quadres de text, també podeu triar la freqüència amb què voleu que s’actualitzi, estalviant potencialment una amplada de banda preciosa.





Blynk també ofereix la possibilitat d'assignar instruccions als pins 'virtuals', que són connexions configurades per l'usuari entre l'aplicació i el maquinari. Per tant, es pot utilitzar un sol botó a l'aplicació per activar molts esdeveniments diferents al dispositiu. A continuació, a l'article detallarem com s'utilitzen.

L'aplicació ofereix l'opció de compartir el vostre projecte amb altres persones. Es genera un codi QR que es pot enviar per correu electrònic o escanejar-lo directament i que pot utilitzar qualsevol persona que també tingui l'aplicació Blynk. Tothom amb qui comparteixis no pot fer canvis al projecte, cosa que el converteix en una manera ràpida i còmoda de compartir el control dels teus dispositius. No obstant això, val la pena assenyalar que el vostre projecte a l'aplicació s'ha d'executar perquè altres persones puguin accedir al maquinari.

També podeu compartir el projecte sense permetre l'accés al vostre maquinari, que és una manera excel·lent d'ensenyar a la gent a utilitzar l'aplicació sense deixar-los encendre i apagar els llums.

Em va semblar molt ràpid i intuïtiu crear una aplicació. Un cop creat, podeu començar a utilitzar-lo immediatament prement el símbol de joc a l'extrem superior dret. Si heu de fer canvis més endavant, només cal que premeu el mateix botó per tornar al mode d'edició.

El servidor Blynk

Un cop hàgiu creat una aplicació per controlar el dispositiu, teniu dues opcions per comunicar-vos-hi.

El servidor al núvol de Blynk és ràpid, sensible i d’ús lliure. Connectar-se a un dispositiu Wi-Fi és tan fàcil com copiar el codi d’autorització generat a l’esbós d’Arduino i proporcionar-ne els detalls. Per a Raspberry Pi, Blynk proporciona un script de prova que podeu executar amb el vostre codi d'autorització al mateix efecte. Més endavant en aquest article, crearem el nostre propi script mitjançant la biblioteca Blynk per connectar-nos al servei.

La segona opció és allotja els teus Servidor Blynk. Blynk proporciona un servidor Java de codi obert basat en Netty que es pot executar des de l’ordinador o fins i tot des d’un Raspberry Pi. Això té diversos avantatges per a alguns usuaris en termes de funcionalitat i seguretat, tot i que per als nostres exemples aquí ens centrarem a utilitzar el servidor en núvol de Blynk proporcionat.

La Biblioteca Blynk

El tercer i últim element de Blynk és el Biblioteca Blynk . Aquesta biblioteca funciona amb una enorme llista de taulers de desenvolupament per permetre la comunicació entre l'aplicació i el vostre maquinari.

En la seva forma més senzilla, només cal instal·lar la biblioteca i carregar un dels esbossos d’exemple ben anotats que es proporcionen.

Blynk: configuració inicial

Instal·leu l'aplicació Blynk al vostre telèfon intel·ligent i creeu un compte. Assegureu-vos que utilitzeu una adreça de correu electrònic a la qual pugueu accedir, ja que és on s’enviaran els vostres testimonis d’autorització. Ara creeu un projecte, seleccionant el tauler que utilitzarà i com us connectareu. Tots dos exemples es connecten aquí mitjançant Wi-Fi, tot i que també són possibles connexions mitjançant Bluetooth, Ethernet i fins i tot GSM.

Crea el teu projecte. Això enviarà automàticament un testimoni d'autorització. Si no el rebeu, podeu reenviar-lo seleccionant la icona de configuració del projecte (la femella), seleccionant el dispositiu i seleccionant 'Correu electrònic'.

A continuació, instal·leu les biblioteques Blynk des del lloc web Blynk. Per a Arduino, instal·leu la biblioteca copiant els fitxers al vostre fitxer Arduino> biblioteques carpeta. Si no sou nou a Arduino, aquí teniu un guia per començar .

Per a Raspberry Pi, primer us heu d’assegurar que teniu instal·lat Node.js. Hi ha una guia sobre Node.js instal·lat en aquest article si ho necessiteu.

En primer lloc, assegureu-vos que el vostre Pi estigui actualitzat i que tingui instal·lat el paquet essencial per a la construcció.

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

A continuació, instal·leu el fitxer Gestor de paquets de nodes , el Desactivat biblioteca i el Parpellejar escrivint-ho a la finestra del terminal.

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

Podeu comprovar que tot ha funcionat executant el script de prova de Blynk:

blynk.js [YourAuthorizationTokenHere]

Si tot funciona, hauria de ser així:

Si teniu algun error, assegureu-vos que el Pi està actualitzat i que tingueu instal·lada la versió més recent de Node.js abans de tornar a instal·lar les biblioteques NPM, OnOff i Blynk.

Configuració ràpida amb NodeMCU

Aquest primer exemple mostra el ràpid que és configurar sistemes senzills amb Blynk. No requereix cap codificació i, una vegada configurada, és totalment autònoma. Mentre el tauler tingui accés a la vostra connexió Wi-Fi, podeu accedir-hi des de qualsevol lloc amb el vostre telèfon intel·ligent.

Per començar, configureu un circuit senzill en una taula de treball. Connecteu el pin D0 a la pota positiva d'un LED i de nou al pin GND mitjançant una resistència de 220 Ohm.

Obriu el vostre projecte NodeMCU a l'aplicació Blynk. A la part dreta, seleccioneu el fitxer Botó del menú. Seleccioneu el botó del projecte per obrir el menú de propietats. Aquí podeu anomenar-lo i triar a quin pin de la vostra placa NodeMCU afectaria. Seleccioneu pin D0 de la llista de sortida, i canvieu el mode per convertir-lo en un interruptor d’encesa i apagat, en lloc d’un interruptor instantani.

Premeu enrere (tots els canvis es desen automàticament) i, a continuació, premeu la icona de reproducció a l'extrem superior dret per iniciar l'aplicació. Podeu prémer aquest mateix botó en qualsevol moment per tornar a editar el vostre projecte.

A continuació, obriu l'IDE Arduino i trieu la vostra placa i port NodeMCU al menú d'eines. Si no veieu el tauler en aquest menú, és possible que hàgiu d'instal·lar les biblioteques ESP8266 (aquesta guia us ajudarà).

Ara obriu l'script independent ESP8266 que Blynk ha proporcionat a la seva biblioteca navegant cap a Fitxer> Exemples> Blynk> Boards_WiFi> ESP8266_Standalone . Substituïu el marcador de posició del testimoni d'autorització pel que heu rebut per correu electrònic i introduïu les vostres dades de Wi-Fi.

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

Deseu l'esbós amb un nom nou i pengeu-lo al tauler. Ara, quan premeu el botó de l'aplicació, el LED s'hauria d'encendre i apagar. Si no funciona, comproveu que hàgiu premut la icona de reproducció a l'aplicació.

En casos senzills com aquests, Blynk és increïblement ràpid de configurar.

També cal destacar que, ja que utilitza el servidor Blynk, podeu controlar la vostra placa des de qualsevol lloc, sempre que la placa tingui accés a la vostra connexió Wi-Fi domèstica i el vostre telèfon intel·ligent tingui accés a dades mòbils.

Blynk al Raspberry Pi

Podeu utilitzar Blynk exactament de la mateixa manera que a l'exemple anterior de Raspberry Pi mitjançant l'script de prova de Blynk, però hi ha algunes funcionalitats més profundes que proporcionen els pins virtuals de Blynk, que examinarem ara.

Blynk funciona amb Node.js, de manera que el codi que escriurem avui estarà en Javascript. Si no coneixeu l’idioma, hauria de ser una bona introducció per començar.

Utilitzarem la biblioteca Blynk per crear una aplicació que informi sobre si un sensor de porta està obert o tancat i envia un missatge de correu electrònic i una notificació automàtica al vostre telèfon mòbil quan s’obre la porta.

Necessitarà:

  • Interruptor imant de porta (també conegut com a interruptor reed)
  • 1x 1k? resistència
  • 1x 10k? resistència
  • 1x 220? resistència
  • 1x LED
  • Taula de pa i cables de connexió

Configureu la vostra taula de revisió així:

Com puc activar la veu a text a Android?

Tingueu en compte que la biblioteca de Blynk utilitza els números GPIO dels pins de Pi, de manera que els utilitzarem al llarg d’aquest projecte. Connecteu els pins de 5 V i GND als rails d’alimentació de la placa. Connecteu el pin 22 GPIO del Raspberry Pi a l’ànode LED i connecteu el càtode al rail de terra a través del 220? resistència. Voleu connectar el pin 17 GPIO a un costat de l'1k? resistència, i connectar el 10? resistència a l’altre costat i al costat de 5V del rail d’alimentació. Finalment, connecteu l’interruptor reed al costat GND del rail d’alimentació d’un costat i a la línia on hi ha l’1k? i 10k? les resistències es troben per l’altra. Aquesta configuració de la resistència pull-up farà que la tensió del pin 17 es llegeixi quan s’obre l’interruptor.

Creeu un projecte nou a l'aplicació Blynk i seleccioneu el tauler Raspberry Pi. Al menú del widget, seleccioneu un valor etiquetat, un correu electrònic i un widget de notificació

Seleccioneu el valor etiquetat, nomeneu-lo i trieu pin virtual V0 ja que és el pin d'entrada. També podeu canviar la manera com es mostra la informació. En aquest cas, afegiu 'La porta és' abans de / pin / a la pestanya Etiqueta. Podem deixar el valor de freqüència de lectura amb la configuració predeterminada, tot i que podeu canviar-lo per enviar dades a la vostra aplicació a un ritme diferent.

Val a dir que no cal que introduïu una adreça de correu electrònic al widget de correu electrònic, ja que l’afegirem al codi més endavant, tot i que el widget ha d’estar present perquè funcioni.

Quan estigueu satisfet de com es veu la vostra aplicació, premeu el botó Reprodueix a l'extrem superior dret.

Ara creeu un nou script anomenat blynkdoor.js . El codi complet està disponible completament anotat aquí .

sudo nano blynkdoor.js

Hem de començar important la biblioteca Blynk, afegint la nostra clau d’autorització i creant una instància de Blynk per utilitzar-la al nostre script.

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

També hem d’importar la biblioteca OnOff i declarar les variables que configuren el commutador reed i el LED. També crearem una variable per al pin virtual que hem configurat a l’aplicació 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;

Ara farem servir el fitxer veure funció de la biblioteca OnOff per vigilar els canvis en el nostre commutador reed. L’interruptor de la porta és a qualsevol dels dos 0 o bé 1 , i sempre que canvia aquest valor, escrivim aquest canvi al pin LED.

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

Podem utilitzar el valor per enviar dades també a l’aplicació Blynk. Si la porta està tancada, volem poder veure-la al widget de valor etiquetat. Si la porta s’obre, volem rebre una notificació i un correu electrònic que ens ho indiqui. Ho fem amb una sentència if i utilitzant virtualWrite , notificar , i correu electrònic funcions de la biblioteca Blynk. Es pot trobar la documentació completa de Blynk aquí .

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

Ara, cada vegada que el commutador reed registra un canvi de valor, les dades s’envien al nostre pin virtual i, en el cas que s’obri la porta al giny de notificació de l’aplicació, a més d’escriure a la consola. Tingueu en compte que les claus finals són des d’on hem començat veure funció anterior.

Finalment, hem de restablir el pin quan finalitzi el programa. Això és el mateix que el GPIO.cleanup () probablement ja esteu familiaritzats.

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

Ara deseu el codi i sortiu. Executeu l'script mitjançant el node.

sudo node blynkdoor.js

Ara, quan allunyeu l'imant del sensor de canya, haureu de rebre una notificació que us indiqui que la porta s'ha obert i que la pantalla etiquetada hauria de canviar. Tanqueu l'interruptor de nou i veureu que la pantalla etiquetada torna a canviar.

Val a dir que l’aplicació Blynk s’ha d’executar al telèfon per rebre les notificacions push, tot i que els correus electrònics funcionen tant si l’aplicació s’executa com si no.

En el poc temps passat fins ara amb Blynk, sembla un servei molt fàcil d’utilitzar. En la seva forma més senzilla, permet a les persones sense coneixements de codificació construir fàcilment sistemes domòtics de bricolatge. Amb una mica de coneixement de codificació addicional, es torna encara més poderós, cosa que permet sistemes molt més complexos i múltiples activadors d'esdeveniments a partir de pressions d'un sol botó a l'aplicació.

Aquest projecte va ser una introducció bàsica a Blynk, tot i que el que hem tractat aquí es podria modificar fàcilment per a gairebé qualsevol projecte de domòtica o microcontrolador.

Has utilitzat Blynk? Teniu un sistema complex i boig que utilitza el servei que voleu compartir amb nosaltres? Feu-nos-ho saber en els comentaris següents.

Crèdit de la imatge: Giuseppe Caccavale a través de YouTube.com

Compartir Compartir Tweet Correu electrònic Canon vs. Nikon: quina marca de càmeres és millor?

Canon i Nikon són els dos noms més importants de la indústria de les càmeres. Però, quina marca ofereix la millor gamma de càmeres i objectius?

Llegiu a continuació
Temes relacionats
  • Bricolatge
  • Smart Home
  • Arduino
  • Raspberry Pi
  • Domòtica
  • Internet de les coses
  • Electrònica
Sobre l'autor Ian Buckley(216 articles publicats)

Ian Buckley és periodista, músic, intèrpret i productor de vídeo independent que viu a Berlín, Alemanya. Quan no escriu ni a l’escenari, juga amb electrònica o codi de bricolatge amb l’esperança de convertir-se en un científic boig.

Més de Ian Buckley

Subscriu-te al nostre butlletí

Uniu-vos al nostre butlletí per obtenir consells tècnics, ressenyes, llibres electrònics gratuïts i ofertes exclusives.

Feu clic aquí per subscriure-us