سروو ها موتور هایی با قابلیت کنترل چرخش می باشند . مکانیزم این موتور ها به گونه ای است که از یک موتور الکتریکی ساده و یک پتانسیومتر یا انکودر تشکیل شده اند . با هر مقدار چرخش موتور ، مدار داخلی سروو از طریق فیدبکی که از پتانسیومتر یا انکودرمیگیرد موقعیت شفت را تنظیم می کند . از سروو ها در تجهیزات رباتیک استفاده می شود . در قسمت هایی که نیاز به چرخش دقیق یک مکانیزم وجود دارد (به طور مثال باله های یک هواپیمای RC ) از سروو استفاده می شود . سروو ها دارای سه سیم می باشند که دو سیم آن برای تغذیه و یک سیم جهت کنترل سروو میباشد ( سروو های چهار سیم و پنج سیم هم وجود دارند که تنها از یک سیم برای کنترل چرحش استفاده می شود ) . برای کنترل سروو ها از سیگنال PWM استفاده می شود که بر اساس دیوتی سایکل پالس وارد شده ، سروو به میزان مشخصی می چرخد . در این پروژه از یک ماژول HC-05 برای ارتباط با برد آردوینو و در نهایت کنترل سروو استفاده می شود . برای کنترل مدار از یک برنامه اندرویدی استفاده خواهیم کرد . راه اندازی و به کارگیری ماژول های HC-05 کار ساده ای است . در واقع با استفاده از ماژول HC-05 می توان یک ارتباط سریال بر بستر بلوتوث داشت .
مدار پروژه :
برنامه آردوینو :
#include <Servo.h>
Servo myservo;
const int Pin = 9; //
char Text;
String Spilt;
String angle;
int pos = 0; // variable to store the servo position
int k1;
void setup() {
Serial.begin(9600);
pinMode (Pin, OUTPUT);
myservo.attach(Pin);
}
void loop() {
if(Serial.available())
{
Text = Serial.read();
Spilt = Spilt + Text;
if (Text == '*') {
Serial.println(Spilt);
Spilt = Spilt.substring(0, Spilt.length() - 1); // Delete last char *
k1 = Spilt.indexOf('*');
angle = Spilt.substring(0, k1);
myservo.write(angle.toInt());
delay(15);
Spilt = "";
}
}
}
برنامه اندرویدی را از لینک زیر دانلود کرده و آن را نصب کنید . پس از اتصال بلوتوث موبایل به HC-05 برنامه اندرویدی را باز کنید . با استفاده از این برنامه می توانید چرخش سروو را کنترل کنید . سروو استفاده شده مدل 180 درجه می باشد .
https://drive.google.com/uc?id=12xVW9SVnDnypOcDeCbqwe8YYWuvCqr9z&export=download
منبع آموزش
https://create.arduino.cc/projecthub/Ramesh_Dofbot/bluetooth-controlled-servo-f2107e?ref=platform&ref_id=424_trending___&offset=4

