کنترل گیمبال دوربین با استفاده از ESP8266
در این بخش، قصد داریم یک گیمبال سفارشی به همراه دو سروو موتور ایجاد کنیم که بتوانند از راه دور کنترل شوند. بنابراین ما نیاز داریم یک براکت سروو موتور خریداری کنیم و آن را به سروو موتورها متصل کنیم. همچنین نیاز داریم تا قطعات زیر را سفارش دهیم:
1. یک بورد ESP8266 یا NodeMCU.
2. دو عدد سروو موتور(ترجیحاً سروو موتور SG-90)
3. یک منبع تغذیه 5 ولت.
4. یک گوشی هوشمند
5. یک روتر(برای اتصال وای فای)
اجازه دهید ببینیم این کار چگونه انجام می شود:
1. در ابتدا، سروو موتورها را به براکت وصل کنید. حالا آنها را به ESP8266 متصل کنید. مانند زیر:

2. در تصویر بالا، می توانید ببینید که سروو موتورها به پین های GPIO از ESP8266 متصل شده اند. یعنی سیم های زرد رنگ، به ترتیب به GPIO 0 و GPIO 2 که همان پین های D3 و D4 هستند متصل می شود(به تصویر زیر توجه کنید).

حالا نیاز داریم تا برای ESP8266 کدنویسی کنیم؛ اما قبل از آن، اپلیکیشن Blynk را باز کنید و یک پروژه ی جدید(New Project) باز کنید:

3. برای پروژه ی خود یک نام انتخاب کنید. و از بخش Choose Device، گزینه ی NodeMCU یا ESP8266 را انتخاب کنید؛ یعنی هرکدام که برای گیمبال خود استفاده می کنید. روی دکمه ی Create Project ضربه بزنید. کد احراز هویت پروژه را به یاد داشته باشید. همچنین این کد به ایمیل شما ارسال خواهد شد.
4. حالا انگشت خود را به سمت راست بکشید، تا به جعبه ی Widget Box بروید و گزینه ی Slider را انتخاب کنید:

5. برای Slider یک نام انتخاب کنید. ما در اینجا دو نام Servo 1 و Servo2 را انتخاب کرده ایم:

6. برای هریک از slider ها یک پین Virtual انتخاب کنید. ما نام V1 و V6 را انتخاب کرده ایم:

7. حالا پروژه نهایی مانند تصویر زیر است. برای تغییر دادن رنگ، می توانید به بخش slider properties بروید.

اجازه دهید برای کنترل گیمبال شروع به کدنویسی کنیم.
1. IDE آردوینو را باز کنید و کدهای زیر را در بالای اسکچ قرار دهید:
#define BLYNK_PRINT Serial
#include <SPI.h>
#include <BlynkSimpleEsp8266.h>
#include <Servo.h>
#include <ESP8266WiFi.h>
2. برای انجام کدنویسی، نیاز داریم کتابخانه های ESP8266 را نصب کنیم.
3. حالا، کدهای احراز هویت، که برای پروژه خود به شما داده شده است و نام وای فای و پسورد اتصال را به صورت زیر وارد کنید:
char auth[] = "**********";
char ssid[] = "**********";
char pass[] = "**********";
4. حالا سروو موتورها را شناسایی کنید:
Servo s1, s2;
5. در درون متد void setup() نیاز داریم Blynk را استارت بزنیم و بعد پین های سروو موتور را متصل کنیم:
Serial.begin(9600);
Blynk.begin(auth, ssid, pass);
s1.attach(0);
s2.attach(2);
6. سپس پین های مجازی Blynk را به صورت زیر انتساب دهید:
BLYNK_WRITE(V1)
{
s1.write(param.asInt());
}
BLYNK_WRITE(V6)
{
s2.write(param.asInt());
}
7. سپس در تابع void loop() اپ Blynk را اجرا کنید:
Blynk.run();
کدهای منبع این برنامه را می تواید از این آدرس در گیتهاب مشاهده کنید؛ این کدها به صورت زیر هستند:
#define BLYNK_PRINT Serial
#include <SPI.h>
#include <BlynkSimpleEsp8266.h>
#include <Servo.h>
#include <ESP8266WiFi.h>
char auth[] = "**********";
char ssid[] = "**********";
char pass[] = "**********";
Servo s1;
Servo s2;
void setup()
{
Serial.begin(9600);
Blynk.begin(auth, ssid, pass);
s1.attach(0);
s2.attach(2);
}
BLYNK_WRITE(V1)
{
s1.write(param.asInt());
}
BLYNK_WRITE(V6)
{
s2.write(param.asInt());
}
void loop()
{
Blynk.run();
}
8. حالا، پس از اینکه NodeMCU را به رایانه وصل کردید، کدها را تایید و آپلود کنید.
9. در اپلیکیشن Blynk، پروژه را اجرا کنید. خواهید دید که slider ها، به صورت زیر هستند:

10. حالا، اگر اسلایدرها(sliders) را از چپ به راست تغییر دهید، خواهید دید که سروو موتورها از 0 تا 180 درجه می چرخند.
شما ممکن است یک صدای طنین انداز(resonance یا رزونانس) را دریافت کنید. بنابراین توصیه می کنیم که از یک تنظیم کننده ولتاژ LM1117، بین NodeMCU و باتری، یا منبع تغذیه، استفاده کنید.
در آخر، یک تمرین برای شما داریم: من از شما می خواهم یک سوئیچ(switch) در Blynk ایجاد کنید و دوربینی که می خواهید در پهپاد استفاده کنید را با استفاده از اپلیکیشن Blynk راه انداری کنید.
خلاصه ی فصل 6
در این فصل، یاد گرفتیم که چگونه می توانیم پهپاد عکاسی خود را ایجاد و تنظیم کنیم. همچنین نکاتی را در مورد عکاسی هوایی یاد گرفتیم و برای حرکات دوربین از چند ترفند استفاده کردیم. ما گیمبال دوربین سفارشی خود را ایجاد کردیم تا بتوانیم از راه دور دوربین را کنترل کنیم. امیدوارم که شما هم بتوانید یک پهپاد عکاسی را ایجاد کنید و از پرواز آن لذت ببرید.
در فصل 7، قصد داریم در مورد انواع پهپادهای مختلف نکات بیشتری را آموزش دهیم. برای فهمیدن اینکه از چه نوع پهپادی می خواهیم استفاده کنیم، به فصل 7 بروید.
- بازدید: 470
1. سعی کنید نظرات شما مرتبط با مقاله ی مورد نظر باشد، در غیر این صورت پاسخ داده نخواهد شد.
2. سوالات خود را به صورت کوتاه بیان کنید و از پرسیدن چند سوال به طور همزمان خودداری کنید.
3. سوال خود را به طور واضح بیان کنید و از کلمات مبهم استفاده نکنید.