Bermula dengan Blynk: Peranti IoT DIY Mudah

Bermula dengan Blynk: Peranti IoT DIY Mudah

Blynk [Broken URL Removed] adalah perkhidmatan Internet of Things (IoT) yang dirancang untuk membuat kawalan jauh dan membaca data sensor dari peranti anda secepat dan semudah mungkin. Dalam artikel ini kita akan membahas apa sebenarnya Blynk, bagaimana ia berfungsi, dan menyediakan dua contoh projek pendek mengenai penggunaan perkhidmatan yang berbeza dengan papan pengembangan NodeMCU dan Raspberry Pi.





Tidak pernah lebih mudah untuk mula mengembangkan objek pintar menggunakan mikrokontroler, dan peranti IoT dengan cepat berkembang dalam beberapa tahun kebelakangan. Papan pengembangan seperti Arduino atau Raspberry Pi dapat digunakan untuk mengawal segala-galanya dari soket kuasa di rumah anda hingga hiasan Krismas yang diaktifkan dengan gerakan.





Satu bidang yang boleh menimbulkan masalah bagi yang belum tahu adalah pengekodan dan rangkaian. Blynk bertujuan untuk menghilangkan keperluan pengekodan yang luas, dan memudahkan untuk mengakses peranti anda dari mana sahaja di telefon pintar anda. Ia bebas digunakan untuk penggemar hobi dan pengembang, walaupun tersedia untuk digunakan secara komersial dengan bayaran - syarikat dapat menggunakan Blynk untuk membuat aplikasi dan sistem mereka sendiri kemudian menjualnya dengan jenama mereka sendiri.





Blynk menggunakan pelayan dan perpustakaannya sendiri untuk membuat perkhidmatan berfungsi, tetapi aplikasi Blynk nampaknya merupakan kekuatan utamanya.

Masukkan Aplikasi Blynk

Aplikasi Blynk tersedia secara percuma di Android dan iOS. Ini adalah titik permulaan untuk projek anda, yang menampilkan sistem drag and drop yang mudah digunakan untuk membina kawalan tersuai untuk persediaan IoT anda. Aliran kerja cepat: semasa memulakan projek baru, anda diminta memilih papan pengembangan anda dari senarai yang luas, dan juga kaedah sambungan anda. Aplikasi kemudian menghantar token kebenaran melalui e-mel untuk menyambung ke peranti anda melalui pelayan Blynk.



cara mengimbas dokumen di iphone

Unsur kawalan dipanggil Widget : pelbagai jenis kaedah input dan paparan output termasuk butang, slaid, kayu bedik, grafik dan maklum balas teks. Terdapat juga widget khusus komponen, dengan kawalan bergaya untuk LEDS, paparan LCD, dan bahkan video live streaming. Juga terkenal adalah widget yang menambahkan ciri, seperti pengeposan automatik ke Twitter, dan pemberitahuan khusus.

Walaupun aplikasinya percuma, ia membatasi berapa banyak widget yang dapat anda gunakan sekaligus dengan memberi mereka semua kos 'Tenaga'. Aplikasi ini memberi anda baki 2,000 untuk bermain, dengan pilihan untuk membeli lebih banyak jika diperlukan.





Saya mendapati bahawa baki permulaan yang diberikan lebih daripada cukup untuk contoh projek yang disenaraikan di sini, walaupun jika persediaan anda lebih rumit, anda mungkin akan kehabisan jus dengan cepat.

Setiap widget memiliki menu penyuntingan yang memungkinkan Anda mengubah nama dan warna. Anda kemudian memilih pin yang akan dipengaruhi (sama ada pin di papan anda atau salah satu pin maya Blynk) bersama dengan julat nilai yang akan dihantar. Untuk paparan output seperti grafik dan kotak teks, anda juga dapat memilih seberapa kerap anda ingin diperbaharui, berpotensi menjimatkan lebar jalur berharga.





Blynk juga mempunyai kemampuan untuk memberikan arahan pada pin 'maya', yang merupakan sambungan yang dikonfigurasi pengguna antara aplikasi dan perkakasan. Oleh itu, satu butang dalam aplikasi boleh digunakan untuk mencetuskan banyak peristiwa yang berbeza pada peranti. Kami akan membahas cara menggunakannya kemudian dalam artikel.

Aplikasi ini memberi pilihan untuk berkongsi projek anda dengan orang lain. Kod QR dihasilkan yang dapat dihantar melalui e-mel atau diimbas secara langsung, dan digunakan oleh sesiapa sahaja yang juga mempunyai aplikasi Blynk. Siapa pun yang anda kongsi tidak dapat membuat perubahan pada projek, menjadikannya cara yang cepat dan mudah untuk berkongsi kawalan peranti anda. Perlu diingat bahawa projek anda dalam aplikasi mesti dijalankan agar orang lain dapat mengakses perkakasan.

Anda juga boleh berkongsi projek tanpa membenarkan akses ke perkakasan anda, yang merupakan kaedah terbaik untuk mengajar orang bagaimana menggunakan aplikasi tanpa membiarkan mereka menyalakan dan mematikan lampu anda!

Saya mendapati membuat aplikasi sangat pantas dan intuitif. Setelah dibuat, anda boleh mula menggunakannya dengan segera dengan menekan simbol main di sudut kanan atas. Sekiranya anda perlu membuat perubahan kemudian, anda hanya boleh menekan butang yang sama untuk kembali ke mod penyuntingan.

Pelayan Blynk

Setelah anda membuat aplikasi untuk mengawal peranti anda, anda mempunyai dua pilihan untuk berkomunikasi dengannya.

Pelayan awan Blynk cepat, responsif, dan bebas digunakan. Menyambungkan ke peranti Wi-Fi semudah menyalin kod kebenaran yang anda hasilkan ke dalam sketsa Arduino anda, dan memberikan perincian Wi-Fi anda. Untuk Raspberry Pi, Blynk memberikan skrip ujian yang boleh anda jalankan dengan kod kebenaran anda untuk kesan yang sama. Kemudian dalam artikel ini, kami akan membuat skrip kami sendiri menggunakan perpustakaan Blynk untuk menyambung ke perkhidmatan.

Pilihan kedua ialah tuan rumah sendiri Pelayan Blynk. Blynk menyediakan pelayan Java berasaskan sumber terbuka yang boleh dijalankan dari komputer anda, atau bahkan Raspberry Pi. Ini mempunyai pelbagai faedah untuk beberapa pengguna dari segi fungsi dan keselamatan, walaupun untuk contoh kami di sini, kami akan menumpukan perhatian pada penggunaan pelayan awan Blynk yang disediakan.

Perpustakaan Blynk

Unsur ketiga dan terakhir Blynk adalah Perpustakaan Blynk . Perpustakaan ini berfungsi dengan senarai papan pengembangan yang besar untuk membolehkan komunikasi antara aplikasi dan perkakasan anda.

Yang paling mudah, semua yang diperlukan adalah memasang perpustakaan, dan memuatkan salah satu lakaran contoh yang diberi penjelasan yang baik.

Blynk: Persediaan Awal

Pasang aplikasi Blynk pada telefon pintar anda, dan buat akaun. Pastikan anda menggunakan alamat e-mel yang sebenarnya boleh anda akses kerana di situlah token kebenaran anda akan dihantar. Sekarang buat projek, pilih papan yang akan anda gunakan dan bagaimana anda akan menghubungkannya. Kedua-dua contoh di sini bersambung melalui Wi-Fi, walaupun sambungan melalui Bluetooth, Ethernet, dan bahkan GSM juga mungkin.

Buat projek anda. Ini akan menghantar token kebenaran secara automatik. Sekiranya anda tidak menerimanya, anda dapat mengirimnya kembali dengan memilih ikon tetapan projek (kacang kecil), memilih peranti anda, dan memilih 'E-mail'.

Seterusnya, pasang perpustakaan Blynk dari laman web Blynk. Untuk Arduino, pasang perpustakaan dengan menyalin fail ke dalam fail anda Arduino> perpustakaan folder. Sekiranya anda baru menggunakan Arduino, berikut adalah panduan untuk memulakan anda .

Untuk Raspberry Pi, anda perlu memastikan Node.js dipasang terlebih dahulu. Terdapat panduan untuk memasang Node.js dalam artikel ini sekiranya anda memerlukannya.

Pertama, pastikan Pi anda terkini, dan pakej build-essential dipasang.

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

Kemudian pasang Pengurus Pakej Node , OnOff perpustakaan, dan Berkelip perpustakaan dengan menaip ini ke tetingkap Terminal anda.

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

Anda boleh memeriksa semuanya berfungsi dengan menjalankan skrip ujian Blynk:

blynk.js [YourAuthorizationTokenHere]

Dengan syarat semuanya berfungsi, ia akan kelihatan seperti ini:

Sekiranya anda mendapat kesilapan, pastikan Pi anda terkini, dan versi Node.js paling baru dipasang, sebelum memasang semula perpustakaan NPM, OnOff dan Blynk.

Persediaan Pantas Dengan NodeMCU

Contoh pertama ini menunjukkan betapa pantasnya menyiapkan sistem mudah menggunakan Blynk. Ia tidak memerlukan pengekodan, dan setelah penyediaannya sepenuhnya berdiri sendiri. Selagi papan mempunyai akses ke sambungan Wi-Fi, anda boleh mengaksesnya dari mana sahaja menggunakan telefon pintar anda.

Untuk memulakan, sediakan litar sederhana di papan roti. Sambungkan pin D0 ke arah positif LED, dan kembali ke pin GND melalui perintang 220 Ohm.

Buka projek NodeMCU anda di aplikasi Blynk. Di sebelah kanan, pilih Butang widget dari menu. Pilih butang anda dalam projek anda untuk membuka menu sifatnya. Di sini anda boleh menamakannya, dan memilih pin mana di papan NodeMCU anda yang harus dipengaruhi. Pilih pin D0 dari senarai output, dan mod suis untuk menjadikannya suis hidup dan mati, dan bukannya suis tekan sesaat.

Tekan kembali (semua perubahan disimpan secara automatik), kemudian tekan ikon main di sudut kanan atas untuk memulakan aplikasi anda. Anda boleh menekan butang yang sama setiap saat untuk kembali mengedit projek anda.

Seterusnya, buka Arduino IDE dan pilih papan dan port NodeMCU anda dari menu alat. Sekiranya anda tidak melihat papan iklan anda dalam menu ini, anda mungkin perlu memasang perpustakaan ESP8266 (panduan ini semestinya membantu).

Sekarang buka skrip mandiri ESP8266 yang disediakan di perpustakaan mereka dengan menavigasi ke Fail> Contoh> Blynk> Boards_WiFi> ESP8266_Standalone . Ganti placeholder untuk token kebenaran dengan yang anda terima melalui e-mel, dan masukkan maklumat Wi-Fi anda.

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

Simpan lakaran dengan nama baru, dan muat naik ke papan anda. Sekarang apabila anda menekan butang dalam aplikasi, LED akan menyala dan mati. Sekiranya tidak berfungsi, pastikan anda telah menekan ikon main di aplikasi.

Dalam kes mudah seperti ini, Blynk sangat pantas untuk disiapkan.

Perlu diingat bahawa kerana ini menggunakan pelayan Blynk, anda dapat mengawal papan anda dari mana saja, asalkan papan tersebut mempunyai akses ke sambungan Wi-Fi rumah anda, dan telefon pintar anda mempunyai akses data mudah alih.

Blynk pada Raspberry Pi

Anda boleh menggunakan Blynk dengan cara yang sama seperti pada contoh di atas pada Raspberry Pi dengan menggunakan skrip ujian Blynk, tetapi ada beberapa fungsi yang lebih mendalam yang disediakan pin maya Blynk, yang akan kita lihat sekarang.

Blynk berfungsi menggunakan Node.js, jadi kod yang akan kita tulis hari ini akan ada dalam Javascript. Sekiranya anda baru menggunakan bahasa, ini mesti menjadi permulaan yang baik untuk memulakan.

Kami akan menggunakan perpustakaan Blynk untuk membuat aplikasi yang melaporkan sama ada sensor pintu terbuka atau tertutup, dan menghantar e-mel dan pemberitahuan push ke telefon bimbit anda ketika pintu dibuka.

Anda perlu:

  • Suis magnet pintu (juga dikenali sebagai suis reed)
  • 1x 1k? perintang
  • 1x 10k? perintang
  • 1x 220? perintang
  • LED 1x
  • Papan roti dan wayar penyambung

Sediakan papan roti anda seperti ini:

amazon mengatakan pakej dihantar tetapi tidak

Perhatikan bahawa perpustakaan Blynk menggunakan nombor GPIO pin Pi, jadi kami akan menggunakannya sepanjang projek ini. Sambungkan pin 5V dan GND ke rel kuasa di papan roti. Sambungkan pin GPIO 22 pada Raspberry Pi ke anod LED, dan sambungkan katod ke landasan melalui 220? perintang. Sambungkan pin GPIO 17 ke satu sisi 1k? perintang, dan sambungkan 10? perintang ke sisi lain, dan sisi rel elektrik 5V. Akhir sekali, sambungkan suis buluh anda ke sisi GND rel kuasa di satu sisi, dan pada garis di mana 1k? dan 10k? perintang bertemu di sisi lain. Penyediaan perintang tarik ini akan menyebabkan voltan pada pin 17 menjadi tinggi apabila suis dibuka.

Buat projek baru di aplikasi Blynk, dan pilih papan Raspberry Pi anda. Dari menu widget pilih Nilai Label, E-mel, dan widget Pemberitahuan

Pilih Nilai Berlabel, beri nama, dan pilih pin maya V0 kerana ia adalah pin input. Anda juga boleh mengubah cara maklumat itu dipaparkan. Dalam kes ini tambahkan 'Pintu adalah' sebelum / pin / di tab Label. Kami boleh meninggalkan nilai Frekuensi Membaca pada tetapan lalai, walaupun anda boleh mengubahnya untuk mengirim data ke aplikasi anda dengan kadar yang berbeza.

Perlu diingat bahawa anda sebenarnya tidak perlu memasukkan alamat e-mel ke widget e-mel kerana kita akan menambahkannya ke dalam kod kemudian, walaupun widget mesti ada agar berfungsi.

Setelah berpuas hati dengan penampilan aplikasi anda, tekan butang Main di sudut kanan atas.

Sekarang buat skrip baru yang dipanggil blynkdoor.js . Kod penuh boleh didapati dengan lengkap di sini .

sudo nano blynkdoor.js

Kita perlu memulakan dengan mengimport perpustakaan Blynk, menambahkan kunci kebenaran kita, dan membuat contoh Blynk untuk digunakan dalam skrip kita.

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

Kita juga perlu mengimport perpustakaan OnOff, dan menyatakan pemboleh ubah yang mengatur suis buluh dan LED kami. Kami juga akan membuat pemboleh ubah untuk pin maya yang kami sediakan di aplikasi 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;

Sekarang kita akan menggunakan menonton berfungsi dari perpustakaan OnOff untuk memerhatikan perubahan pada reed switch kami. Suis pintu sama ada di 0 atau 1 , dan setiap kali nilai itu berubah, kami menuliskan perubahan itu ke pin LED.

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

Kami dapat menggunakan nilai untuk juga mengirim data ke aplikasi Blynk. Sekiranya pintu ditutup, kami ingin melihatnya di widget Nilai Berlabel anda. Sekiranya pintu terbuka, kami ingin menerima pemberitahuan dan e-mel yang memberitahu kami. Kami melakukan ini dengan pernyataan if, dan menggunakan virtualWrite , memberitahu , dan e-mel berfungsi dari perpustakaan Blynk. Dokumentasi lengkap untuk Blynk boleh didapati di sini .

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

Sekarang setiap kali suis buluh mencatat perubahan nilai, data dikirim ke pin maya kami, dan jika pintu dibuka ke widget pemberitahuan di aplikasi, serta menulis ke konsol. Perhatikan bahawa pendakap akhir adalah dari tempat kami memulakan menonton fungsi di atas.

Akhirnya, kita perlu menetapkan semula pin ketika program berakhir. Ini sama dengan GPIO.cleanup () anda mungkin sudah biasa.

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

Sekarang simpan kod anda dan keluar. Jalankan skrip anda menggunakan nod.

sudo node blynkdoor.js

Sekarang apabila anda menjauhkan magnet dari sensor buluh, anda harus mendapatkan pemberitahuan yang memberitahu bahawa pintu dibuka, dan paparan berlabel anda harus berubah. Tutup suis sekali lagi, dan anda akan melihat bahawa paparan berlabel berubah lagi.

Perlu diingat bahawa aplikasi Blynk mesti berjalan di telefon anda untuk menerima pemberitahuan push, walaupun e-mel berfungsi sama ada aplikasinya berjalan atau tidak.

Dalam masa yang singkat yang dihabiskan dengan Blynk, nampaknya perkhidmatan yang sangat mudah digunakan. Ini paling mudah membolehkan orang yang tidak mempunyai pengetahuan pengekodan untuk membina sistem automasi rumah DIY dengan mudah. Dengan sedikit pengetahuan pengekodan tambahan, ia menjadi lebih hebat, memungkinkan sistem yang lebih kompleks dan pencetus pelbagai peristiwa dari penekanan butang tunggal dalam aplikasi.

Projek ini merupakan pengenalan asas kepada Blynk, walaupun apa yang telah kami bahas di sini dapat diubahsuai dengan mudah untuk hampir semua projek automasi rumah atau mikrokontroler.

Adakah anda pernah menggunakan Blynk? Adakah anda mempunyai sistem rumit yang gila menggunakan perkhidmatan yang ingin anda kongsi dengan kami? Beritahu kami dalam komen di bawah!

Kredit Gambar: Giuseppe Caccavale melalui YouTube.com

Berkongsi Berkongsi Tweet E-mel Canon vs Nikon: Jenama Kamera mana yang lebih baik?

Canon dan Nikon adalah dua nama terbesar dalam industri kamera. Tetapi jenama mana yang menawarkan barisan kamera dan lensa yang lebih baik?

Baca Seterusnya
Topik-topik yang berkaitan
  • DIY
  • Rumah Pintar
  • Arduino
  • Pai raspberi
  • Automasi Rumah
  • Internet Perkara
  • Elektronik
Mengenai Pengarang Ian Buckley(216 Artikel Diterbitkan)

Ian Buckley adalah wartawan bebas, pemuzik, pemain dan penerbit video yang tinggal di Berlin, Jerman. Ketika dia tidak menulis atau di atas pentas, dia bermain-main dengan elektronik DIY atau kod dengan harapan menjadi saintis gila.

Lagi Dari Ian Buckley

Langgan buletin kami

Sertailah buletin kami untuk mendapatkan petua, ulasan, ebook percuma, dan tawaran eksklusif!

Klik di sini untuk melanggan