Kom godt i gang med Blynk enkle DIY IoT-enheder

  • William Charles
  • 0
  • 2882
  • 517
Reklame

Blynk er en Internet of Things (IoT) -tjeneste designet til at gøre fjernbetjening og læsning af sensordata fra dine enheder så hurtig og nem som muligt. I denne artikel vil vi dække præcist, hvad Blynk er, hvordan det fungerer og give to korte eksempler på projekter om forskellige anvendelser af tjenesten med NodeMCU og Raspberry Pi-udviklingsborde.

Det har aldrig været lettere at begynde at udvikle smarte objekter ved hjælp af mikrokontrollere, og IoT-enheder er hurtigt vokset i popularitet i de senere år. Udviklingsplader som Arduino eller Raspberry Pi kan bruges til at styre alt fra stikkontakter Sådan kontrolleres billige RF-stikkontakter fra OpenHAB Sådan kontrolleres billige RF-stikkontakter fra OpenHAB Har nogle billige RF-baserede stikkontakter, men opdagede, at ingen smarte hjemmeknapper fungerer med dem? Du kan linke dem til dit DIY-intelligente hjemmesystem med kun omkring $ 10 i dele. i dit hjem til bevægelsesaktiverede julepynt Opgrader din julekrans med en bevægelsesaktiveret LED-matrix Opgrader din julekrans med en bevægelsesaktiveret LED-matrix Denne DIY-julekrans bruger en Arduino og LED-matrix til at producere en fantastisk lysdisplay, der imponere dine venner og familie. .

Et område, der kan udgøre et problem for de uindviede, er kodning og netværk. Blynk sigter mod at fjerne behovet for omfattende kodning og gøre det let at få adgang til dine enheder overalt på din smartphone. Det er gratis at bruge til hobbyister og udviklere, selvom det også er tilgængeligt at bruge kommercielt mod et gebyr - virksomheder kan bruge Blynk til at oprette deres egne apps og systemer og derefter sælge dem med deres eget branding.

Blynk bruger sin egen server og bibliotek for at få tjenesten til at fungere, men det er Blynk-appen, der ser ud til at være dets største styrke.

Gå ind i Blynk-appen

Blynk-appen er gratis tilgængelig på Android og iOS. Det er udgangspunktet for dine projekter, der indeholder et let at bruge træk-og-slip-system til at oprette tilpassede kontroller til din IoT-opsætning. Arbejdsgangen er hurtig: Når du starter et nyt projekt, bliver du bedt om at vælge dit udviklingspanel fra en omfattende liste, og også din forbindelsesmetode. Appen sender derefter en autorisationstoken via e-mail til forbindelse til din enhed via Blynk-serveren.

Kontrolelementer kaldes Widgets: forskellige typer inputmetoder og outputdisplay inklusive knapper, skyder, en joystick, grafer og tekstfeedback. Der er også komponentspecifikke widgets med stiliserede kontroller til LEDS, LCD-skærme og endda live-streamet video. Der er også bemærkelsesværdige widgets, der tilføjer funktioner, såsom automatisk udstationering på Twitter og tilpassede underretninger.

Mens appen er gratis, begrænser det, hvor mange widgets du kan bruge på én gang ved at give dem alle en “Energi” koste. Appen giver dig en balance på 2.000 at lege med, med mulighed for at købe mere, hvis nødvendigt.

Jeg fandt, at den tilvejebragte startbalance var mere end nok til de eksempler på projekter, der er anført her, selvom hvis dit setup er mere kompliceret, kan du måske finde dig selv i at løbe tør for juice.

Hver widget har en redigeringsmenu, der giver dig mulighed for at ændre navn og farve. Derefter vælger du hvilken pin, der skal påvirkes (uanset om det er en pin på dit bord eller en af ​​Blynks virtuelle ben) sammen med det interval af værdier, der skal sendes. For outputdisplay som grafer og tekstbokse kan du også vælge, hvor ofte du ønsker det skal opdateres, hvilket potentielt sparer dyrebar båndbredde.

Blynk har også muligheden for at tildele instruktioner til “virtuel” stifter, som er brugerkonfigurerede forbindelser mellem appen og hardwaren. En enkelt knap i appen kan derfor bruges til at udløse mange forskellige begivenheder på enheden. Vi beskriver, hvordan du bruger disse senere i artiklen.

Appen giver mulighed for at dele dit projekt med andre. Der genereres en QR-kode, som kan sendes via e-mail eller scannes direkte, og bruges af alle, der også har Blynk-appen. Den, du deler med, kan ikke foretage ændringer i projektet, hvilket gør det til en hurtig og bekvem måde at dele kontrol over dine enheder. Det er dog værd at bemærke, at dit projekt i appen skal køre for at andre skal have adgang til hardware.

Du kan også dele projektet uden at give adgang til din hardware, hvilket er en fantastisk måde at lære folk, hvordan man bruger appen uden at lade dem tænde og slukke dine lys!

Jeg fandt at oprette en app meget hurtig og intuitiv. Når du er oprettet, kan du begynde at bruge det med det samme ved at trykke på play-symbolet i øverste højre hjørne. Hvis du skal foretage ændringer senere, kan du blot trykke på den samme knap for at vende tilbage til redigeringsfunktion.

Blynk-serveren

Når du har oprettet en app til kontrol af din enhed, har du to muligheder for, hvordan du kommunikerer med den.

Blynk-skyserveren er hurtig, lydhør og gratis at bruge. Det er lige så nemt at oprette forbindelse til en Wi-Fi-enhed som at kopiere din genererede tilladelseskode til din Arduino-skitse og give dine Wi-Fi-detaljer. For Raspberry Pi leverer Blynk et testscript, som du kan køre med din tilladelseskode med samme effekt. Senere i denne artikel opretter vi vores eget script ved hjælp af Blynk-biblioteket til at oprette forbindelse til tjenesten.

Den anden mulighed er at være vært for din egen Blynk-server. Blynk leverer en open source Netty-baseret Java-server, der kan køres fra din computer eller endda en Raspberry Pi. Dette har forskellige fordele for nogle brugere med hensyn til funktionalitet og sikkerhed, men for vores eksempler her vil vi koncentrere os om at bruge den leverede Blynk-server.

Blynk-biblioteket

Det tredje og sidste element i Blynk er Blynk-biblioteket. Dette bibliotek arbejder med en enorm liste over udviklingsborde for at tillade kommunikation mellem appen og din hardware.

På det enkleste er alt, hvad der kræves, at installere biblioteket og indlæse en af ​​de medfølgende godt annoterede eksempler.

Blynk: Første opsætning

Installer Blynk-appen på din smartphone, og opret en konto. Sørg for, at du bruger en e-mail-adresse, som du faktisk kan få adgang til, da det er her, dine autorisationstegn sendes. Opret nu et projekt, vælg hvilket bord du skal bruge, og hvordan du opretter forbindelse til det. Begge eksempler her forbinder via Wi-Fi, skønt forbindelser via Bluetooth, Ethernet og endda GSM er også mulige.

Opret dit projekt. Dette sender automatisk en autorisationstoken. Hvis du ikke modtager det, kan du sende det igen ved at vælge projektindstillingsikonet (den lille nød), vælge din enhed og vælge “E-mail”.

Installer derefter Blynk-bibliotekerne fra Blynk-webstedet. For Arduino skal du installere biblioteket ved at kopiere filerne til dit Arduino> biblioteker folder. Hvis du er ny med Arduino, her er en guide til, hvordan du kommer i gang Kom godt i gang med Arduino: En begynderguide Kom godt i gang med Arduino: En begynderguide Arduino er en open source-elektronikprototypeplatform baseret på fleksibel, brugervenlig hardware og software. Det er beregnet til kunstnere, designere, hobbyister og enhver der er interesseret i at skabe interaktive objekter eller miljøer. .

For Raspberry Pi skal du sørge for, at du først har Node.js installeret. Der er en guide til installeret Node.js i denne artikel Sådan opretter du en DIY Siri-kontrolleret Wi-Fi-lys Sådan opretter du en DIY Siri-kontrolleret Wi-Fi-lys I denne guide skal du lære at oprette en Wi-Fi kontrollerbart lys, og kontroller det med Siri. skulle du have brug for det.

For det første skal du sikre dig, at din Pi er opdateret og har den build-essential-pakke installeret.

sudo apt-get-opdatering sudo apt-get-opgradering sudo apt-get install build-essential 

Installer derefter Node Package Manager, det Tænd sluk bibliotek og Blynk bibliotek ved at skrive dette i dit terminalvindue.

sudo npm installere -g npm sudo npm installere -g onoff sudo npm installere -g blynk-bibliotek 

Du kan kontrollere, at alt har fungeret ved at køre Blynk-testscript:

blynk.js [YourAuthorizationTokenHere] 

Forudsat at alt fungerer, skal det se sådan ud:

Hvis du får fejl, skal du sørge for, at din Pi er opdateret, og at du har den seneste version af Node.js installeret, før du geninstallerer bibliotekerne NPM, OnOff og Blynk..

Hurtig opsætning med NodeMCU

Dette første eksempel viser, hvor hurtigt det er at opsætte enkle systemer ved hjælp af Blynk. Det kræver ingen kodning, og når installationen er installeret, er den fuldstændig alene. Så længe brættet har adgang til din Wi-Fi-forbindelse, kan du få adgang til det hvor som helst ved hjælp af din smartphone.

For at begynde skal du oprette et simpelt kredsløb på en brødbræt. Tilslut pin D0 til det positive ben af ​​en LED og tilbage til GND-stiften gennem en 220 Ohm-modstand.

Åbn dit NodeMCU-projekt i Blynk-appen. På højre side skal du vælge Knap widget fra menuen. Vælg din knap i dit projekt for at åbne menuen Egenskaber. Her kan du navngive det, og vælge, hvilken pin på dit NodeMCU-kort det skal påvirke. Vælg pin D0 fra outputlisten og switchtilstand for at gøre det til en tænd / sluk-kontakt i stedet for en øjeblikkelig push-switch.

Tryk tilbage (alle ændringer gemmes automatisk), og tryk derefter på afspilningsikonet i øverste højre hjørne for at starte din app. Du kan når som helst trykke på den samme knap for at gå tilbage til redigering af dit projekt.

Åbn derefter Arduino IDE og vælg dit NodeMCU-kort og -port i værktøjsmenuen. Hvis du ikke ser dit bord i denne menu, skal du muligvis installere ESP8266-bibliotekerne (denne vejledning skal hjælpe Mød Arduino Killer: ESP8266 Mød Arduino Killer: ESP8266 Hvad hvis jeg fortalte dig, at der er et Arduino-kompatibelt dev-bord med indbygget Wi-Fi for mindre end $ 10? Det er der godt.).

Åbn nu det fristående script ESP8266, som Blynk leverede i deres bibliotek ved at navigere til Fil> Eksempler> Blynk> Boards_WiFi> ESP8266_Standalone. Udskift pladsholderen for autorisationstoken med den, du har modtaget via e-mail, og indtast dine Wi-Fi-oplysninger.

char autor [] = "DinAuthToken"; char ssid [] = "Dit netværksnavn"; char pass [] = "YourPassword"; 

Gem skitsen under et nyt navn, og upload den til dit bord. Når du nu trykker på knappen i appen, skal LED'en tænde og slukke. Hvis det ikke fungerer, skal du kontrollere, at du har trykket på play-ikonet i appen.

I enkle tilfælde som disse er Blynk utroligt hurtig at konfigurere.

Det er også værd at bemærke, at da denne bruger Blynk-serveren, kan du styre dit bord overalt, så længe brættet har adgang til din Wi-Fi-forbindelse til hjemmet, og din smartphone har adgang til mobildata.

Blynk på Raspberry Pi

Du kan bruge Blynk nøjagtigt på samme måde som i ovenstående eksempel på Raspberry Pi ved at bruge Blynk testscript, men der er nogle dybere funktioner, som Blynks virtuelle stifter leverer, som vi vil undersøge nu.

Blynk fungerer ved hjælp af Node.js, så koden, vi skriver i dag, er i Javascript. Hvis du er ny på sproget, skal dette være en god grund til at komme i gang. Start kodning af JavaScript lige nu med disse 5 store gratis ressourcer. Start kodning af JavaScript lige nu med disse 5 fantastiske gratis ressourcer .

Vi bruger Blynk-biblioteket til at oprette en app, der rapporterer, om en dørsensor er åben eller lukket, og sender en e-mail og push-anmeldelse til din mobiltelefon, når døren åbnes.

Du får brug for:

  • Dørmagnetkontakt (også kendt som reed switch)
  • 1x 1k? modstand
  • 1x 10k? modstand
  • 1x 220? modstand
  • 1x LED
  • Breadboard og hookup ledninger

Opsæt din brødbræt sådan:

Bemærk, at Blynks bibliotek bruger GPIO-numrene på Pi's pins, så vi vil bruge dem i hele dette projekt. Tilslut 5V- og GND-stifterne til strømskinnerne på brødbrættet. Tilslut GPIO-pin 22 på Raspberry Pi til LED-anoden, og tilslut katoden til jordskinnen gennem 220? modstand. Tilslut GPIO-pin 17 til den ene side af 1k? modstand, og tilslut 10? modstand mod den anden side og 5V-siden af ​​strømskinnen. Tilslut slut din reed-switch til GND-siden af ​​strømskinnen på den ene side og på den linje, hvor 1k? og 10k? modstande mødes på den anden. Denne opsamling af modstandsmodstand får spændingen på stiften 17 til at læse højt, når afbryderen åbnes.

Opret et nyt projekt i Blynk-appen, og vælg dit Raspberry Pi-kort. Fra widgetmenuen skal du vælge en mærket værdi, e-mail og en meddelelseswidget

Vælg den mærkede værdi, navngiv den, og vælg virtuel pin V0 som det er input pin. Du kan også ændre, hvordan informationen vises. I dette tilfælde tilføj “Døren er ” før / fastgør / i fanen Etiketter. Vi kan forlade værdien for læsefrekvens som standardindstilling, selvom du kan ændre dette for at sende data til din app i en anden hastighed.

Det er værd at bemærke, at du faktisk ikke behøver at indtaste en e-mail-adresse i e-mail-widgeten, da vi tilføjer den til koden senere, selvom widget'en skal være til stede for at den kan fungere.

Når du er tilfreds med, hvordan din app ser ud, skal du trykke på knappen Play i øverste højre hjørne.

Opret nu et nyt script kaldet blynkdoor.js. Den fulde kode er tilgængelig fuldt annoteret her.

sudo nano blynkdoor.js 

Vi er nødt til at starte med at importere Blynk-biblioteket, tilføje vores autorisationsnøgle og oprette en forekomst af Blynk, der skal bruges i vores script.

var blynklib = kræver ('/ usr / local / lib / node_modules / blynk-bibliotek'); var AUTH = 'PasteAuthorizationCodeHere' var blynk = new blynklib.Blynk (AUTH); 

Vi er også nødt til at importere OnOff-biblioteket og erklære variabler, der opsætter vores røromskifter og LED. Vi opretter også en variabel til den virtuelle pin, vi oprettede i Blynk-appen.

var Gpio = kræver ('onoff'). Gpio, reed = ny Gpio (17, 'in', 'begge'), // registrerer ændringer 'begge', når switch åbnes og lukkes led = new Gpio (22, 'out '); var virtualPin = 0; 

Nu skal vi bruge holde øje funktion fra OnOff-biblioteket for at se efter ændringer i vores røromskifter. Dørkontakten er enten kl 0 eller 1, og når denne værdi ændres, skriver vi denne ændring til LED-stiften.

reed.watch (funktion (err, værdi) led.writeSync (værdi); 

Vi kan bruge værdien til også at sende data til Blynk-appen. Hvis døren er lukket, vil vi være i stand til at se det i din widget med mærket værdi. Hvis døren åbnes, ønsker vi at modtage en anmeldelse og e-mail, der fortæller os. Vi gør dette med en if-erklæring og ved hjælp af virtualWrite, underrette, og e-mail funktioner fra Blynk-biblioteket. Den fulde dokumentation til Blynk kan findes her.

 if (værdi == 0) blynk.virtualWrite (virtualPin, "Lukket"); console.log ('Dør lukket'); ; if (værdi == 1) blynk.notify ("Døren er lige åbnet!"); blynk.email ("[email protected]", "Front Door", "Frontdøren lige er åbnet."); blynk.virtualWrite (virtualPin, "Open"); console.log ('Door Open'); ; ); 

Hver gang reed-kontakten registrerer en ændring af værdien, sendes dataene til vores virtuelle pin, og i tilfælde af at døren åbnes til meddelelseswidgeten i appen, såvel som at skrives til konsollen. Bemærk, at de endelige seler er fra hvor vi startede holde øje funktion ovenfor.

Endelig skal vi nulstille nålen, når programmet slutter. Dette er det samme som GPIO.cleanup () du er sandsynligvis allerede bekendt med.

process.on ('SIGINT', funktion () led.unexport (); reed.unexport ();); 

Gem nu din kode og afslutt. Kør dit script ved hjælp af node.

sudo node blynkdoor.js 

Når du nu bevæger magneten væk fra rørsensoren, skal du få en meddelelse, der fortæller dig, at døren blev åbnet, og din mærkede skærm skal ændres. Luk kontakten igen, så ser du, at det mærkede display ændres igen.

Det er værd at bemærke, at Blynk-appen skal køre på din telefon for at modtage push-meddelelser, selvom e-mails fungerer, uanset om appen kører eller ikke.

På den korte tid, der er brugt indtil videre med Blynk, ser det ud til at være en meget nem service at bruge. På det enkleste giver folk uden kodningskendskab let mulighed for at opbygge DIY hjemmeautomatiseringssystemer. Med lidt ekstra kodningskendskab bliver det endnu mere magtfuldt, hvilket giver mulighed for meget mere komplekse systemer og flere begivenhedsudløsere fra et enkelt tryk på knappen i appen.

Dette projekt var en grundlæggende introduktion til Blynk, skønt det, vi har dækket her, let kunne ændres til næsten ethvert hjemmeautomatiserings- eller mikrokontrollerprojekt.

Har du brugt Blynk? Har du et vanvittigt komplekst system, der bruger den service, du gerne vil dele med os? Fortæl os det i kommentarerne herunder!

Billedkredit: Giuseppe Caccavale via YouTube.com




Endnu ingen kommentarer

Om moderne teknologi, enkel og overkommelig.
Din guide i en verden af moderne teknologi. Lær hvordan du bruger de teknologier og gadgets, der omgiver os hver dag, og lær, hvordan du finder interessante ting på Internettet.