سروو ها موتور هایی با قابلیت کنترل چرخش می باشند . مکانیزم این موتور ها به گونه ای است که از یک موتور الکتریکی ساده و یک پتانسیومتر یا انکودر تشکیل شده اند . با هر مقدار چرخش موتور ، مدار داخلی سروو از طریق فیدبکی که از پتانسیومتر یا انکودرمیگیرد موقعیت شفت را تنظیم می کند . از سروو ها در تجهیزات رباتیک استفاده می شود . در قسمت هایی که نیاز به چرخش دقیق یک مکانیزم وجود دارد (به طور مثال باله های یک هواپیمای 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