در این آموزش به بررسی اپلیکشن Blynk و نحوه ی دقیق کار آن میپردازیم (کلیت ساخت اینترنت اشیا را در اینجا بخوانید !)
همانطور که میدانید Blynk برای کار با اینترنت اشیا طراحی شده است . Blynk میتواند :
- سخت افزار مورد نظر را از دور کنترل کند.
- میتواند داده های سنسور را نمایش بدهد.
- داده ها را ذخیره کند.
- از بیش از ۴۰۰ نوع سخت افزار پشتیبانی کند (برای دیدن تمام سخت افزار ها به اینجا مراجعه کنید)
در واقع Blynk از سه جز اصلی تشکیل شده :
- Blynk app : این قابلیت را به شما میدهد تا رابط های خارق العاده ای برای شی خود که از ویجت های متفاوتی استفاده میکند بسازید.
- Blynk server :مسئول تمام روایط بین گوشی هوشمند شما و سخت افزار مورد نظر میباشد ، شما میتوانید از Blynk cloud استفاده کنید و یا سرور شخصی Blynk خود را بسازید . Blynk ، یک نرم افزار open source که به کمک آن میتوانید هزاران سخت افزار رو کنترل کنید.
- Blynk libraries : برای تمام پلتفرم های محبوب امکان برقراری ارتباط بین سرور و گجت را بوجود میاورد و تمام دستورات ورودی را پردازش میکند .
حالا تصور کنید به محض اینکه شما دکمه ای در blynk میزنید ، فرمان به فضای cloud منتقل میشود و سپس به صورت خارق العاده ای دستور به گجت شما میرسد و در نهایت تمام این مسیر را در جهت عکس میپماید و تمام این ها در یک چشم به هم زدن اتفاق میافتد.
من چه چیز هایی لازم دارم ؟
سخت افزار :
شما میتوانید از Arduino, Raspberry Pi و یا هر کیت مشابه دیگری استفاده کنید.
Blynk بر پایه ی اینترنت کار میکند .
و این بدین معنی ست که کیتی که شما از آن استفاده میکنید باید بتواند به اینترنت وصل شود .بعضی از برد ها مانند Arduino از شبکه ی داخلی و یا WiFi استفاده میکنند و بعضی دیگر نیز دارای اینترنت فعال میباشند .
تلفن هوشمند :
اپلیکشن Blynk از رابط کاربری قوی بهره میگیرد و در هر دو پلتفرم ios و android کار میکند .
Blynk library :
شما میتوانید از طرح امکانات ساده ای که در کتابخانه وجود دارند استفاده کنید، همه ی آنها به طوری طراحی شدند که کار با آنها راحت باشد و بتوان آنها را باهم ترکیب کرد .شما میتوانید از طرح های ساده ی موجود در ” https://examples.blynk.cc ” استفاده کنید .
یک پروژ ه ی ساده
چراغ LED هوشمند
وسایل مورد نیار:
ESP8266 NODEMCU و برنامه ی Blynk .
نصب تنظیمات لازم در داشبورد Blynk برای کنترل LED :
پس نصب برنامه ی Blynk و عضویت در آن بروی ‘New Project’ کلیک کنید تا پروزه ی شما آغاز شود . سپس برای پروژه ی خود نامی انتخاب کنید .
بدین ترتیب ابزار خود را از قسمت ‘choices’ انتخاب کنید . ما در این مثال از ESP8266 nodeMCU استفاده میکنیم . پس از این مراحل بروی دکمه ی ‘ create ‘ کلیک کنید.
حالا با باز شدن پروژه ی خالی شما میتوانید با استفاده از دکمه ی ‘add’ سخت افزار خود را اضافه کنید.
تنظیمات NODE MCU برای اپلیکشن Blynk :
این لینک ( https://examples.blynk.cc ) را در مرورگر خود بازکرده و ESP8266 را انتخاب کنید و سپس بروی LED Blink کلیک کنید.
حالا Arduino IDE را باز کرده و تنطیمات لازم برای ESP8266 NodeMCU را انجام دهید . و حالا کد مثال را از مرورگر خود کپی کرده و در Arduino IDE پیست کنید.
توضیح کد Arduino :
کد به صورت کامل در انتهای مقاله قرار داده شده است.
ابتدا تمام کتابخانه های مورد نیاز برای ESP8266 و اپلیکیشن Blynk را وارد میکنیم :
#define BLYNK_PRINT Serial #include <ESP8266WiFi.h> #include <BlynkSimpleEsp8266.h>
حالا Auth Token خود را که از طریق ایمیل از Blynk دریافت کرده اید وارد کنید :
char auth[ ] = "YourAuthToken";
برای اتصال به wifi ، ابتدا SSID و سپس password خود را وارد کنید :
char ssid[ ] = "YourNetworkName"; char pass[ ] = "YourPassword";
حالا با استفاده از تابع void blinkLedWidget میتوانید چراغ LED را روشن و یا خاموش کنید :
void blinkLedWidget() { if (led1.getValue()) { led1.off(); Serial.println("LED on V1: off"); } else { led1.on(); Serial.println("LED on V1: on"); } }
ما در void setup تعداد بیت های ارسالی را مشخص میکنیم ، و LED با کمک تابع (Blynk.begin(auth,ssid,password به wifi متصل میشود :
void setup() { Serial.begin(9600); Blynk.begin(auth, ssid, pass); timer.setInterval(1000L, blinkLedWidget); }
چک کردن کنترل LED به کمک Blynk و ESP:
حالا کد کامل را در Arduino IDE پیست کنید. و کد را در ESP8266 آپلود کنید . و در نهایت اپلیکیشن Blynk را باز کرده و چراغ LED خود را تست کنید :
کد کامل :
#define BLYNK_PRINT Serial #include <ESP8266WiFi.h> #include <BlynkSimpleEsp8266.h> // You should get Auth Token in the Blynk App. // Go to the Project Settings (nut icon). char auth[ ] = "YourAuthToken"; // Your WiFi credentials. // Set password to "" for open networks. char ssid[ ] = "YourNetworkName"; char pass[ ] = "YourPassword"; WidgetLED led1(V1); BlynkTimer timer; // V1 LED Widget is blinking void blinkLedWidget() // function for switching off and on LED { if (led1.getValue()) { led1.off(); Serial.println("LED on V1: off"); } else { led1.on(); Serial.println("LED on V1: on"); } } void setup() { Serial.begin(9600); Blynk.begin(auth, ssid, pass); timer.setInterval(1000L, blinkLedWidget); } //In the loop function include Blynk.run() command. void loop() { Blynk.run(); timer.run(); }
امین
جولای 1, 2020دمتون گرم خیلی خوب بود
سایتتون عالی
موفق باشید
دانشجو
جولای 13, 2020سلام برنامه بلینک با وی پی ان باز میشه بدون اون باز نمیشه مشکلی پیش نمیاد؟
جواد
مارس 28, 2021عالیه