رباتیک و هوافضا

دانلود پروژه ی کنترل سروو موتور با آردوینو Due به همراه کد کامل

کنترل سروو موتور با آردوینو Due

به نام خدا

پروژه ی کنترل سروو موتور با آردوینو Due به همراه کد کامل

کنترل سروو موتور با آردوینو Due

همان طور که قبلا نیز گفته شد آردوینو Due یک کنترل کننده ی ARM با بورد طراحی شده است که مورد توجه مهندسین الکترونیک واقع شده است. بورد Due  می تواند برای ساخت ماشین سی ان سی ، پرینتر سه بعدی ، بازوی ربات و … مورد استفاده قرار گیرد. تمام این پروژه ها یک ویژگی مشترک دارند که کنترل موقعیت است. تمامیه این پروژه ها نیاز به دقت بالایی در  تعیین حالت و موقعیتشان دارند. این هدف می تواند با سروو موتور محقق شود. در این قسمت ما قصد داریم تا موقعیت سروو موتور را با استفاده از آردوینو Due کنترل کنیم.

 

 

سروو موتور:

سروو موتور به دقیق بودن موقعیت حرکت شفت معروف هستند. این خصوصیت برای کاربرد های با سرعت بالا نیست و بیشتر برای سرعت های پایین مورد استفاده قرار می گیرد. این موتور ها در کنترل بازوی موتور و کنترل پرواز بسیار مورد استفاده قرار می گیرند. سروو موتور ها در بعضی پرینتر ها و ماشین های فکس نیز کاربرد دارند. یک سروو موتور ترکیبی از یک موتور DC ، سیستم کنترل موقعیت و چرخ دنده است . سروو موتور در دنیای امروز کاربرد فراوان دارد و در ابعاد و توانایی های مختلف تولید شده اند . ما در این آموزش از سروو موتور SG90 استفاده کرده ایم . سروو موتور SG90 یک سروو موتور ۱۸۰ درجه است و بین ۰ تا ۱۸۰ درجه می تواند بچرخد .

بیشتر بخوانید...  ساخت برد آردوینو با میکروکنترلر ATmega328

 

کنترل سروو موتور با آردوینو Due

 

 

کنترل سروو موتور با آردوینو Due

سروو موتور ها معمولا دارای سه سیم هستند ؛ قهوه ای ، قرمز و زرد ( یا سفید ) . سیم قهوه ای به زمین وصل می شود ، قرمز به ولتاژ مثبت وصل می شود و زرد به سیگنال PWM وصل خواهد شد . موقعیت شفت سروو موتور توسط پهنای پالس PWM تعیین می شود .فرکانس PWM  میتواند بسته به نوع سروو موتور از دامنه ی تغییرات زیادی برخوردار باشد. در آردوینو یک دستور مخصوص برای تنظیم موقعیت سروو موتور داریم. این کار با تنظیم زاویه و حالت آن امکان پذیر است.

 

قطعات مورد نیاز کنترل سروو موتور با آردوینو Due :

سخت افزار:

آردوینو Due

منبع تغذیه ۵ ولتی

سروو موتور

 

نرم افزار:

 Arduino nightly شما می توانید این نرم افزار را از لینک https://www.arduino.cc/en/Main/Software دانلود کنید.

توضیحات نصب این نرم افزار در لینک Getting Started with Arduino Due  قابل مشاهده است.

شماتیک مدار و توضیحات آن :

 

کنترل سروو موتور با آردوینو Due

همان طور که گفته شد در آردوینو کتابخانه هایی برای تنظیم فرکانس و … موجود است.

بیشتر بخوانید...  راه اندازی صفحه نمایش لمسی با استفاده از رزبری پای

در آردوینو ما به سادگی میتوانیم موقعیت سروو موتور را کنترل کنیم . برای دستیابی به موقعیت دقیق سروو موتور باید کار های زیر را انجام بدهیم.

  1. #include <Servo.h>
  2. Servo myservo;
  3. myservo.attach(servo_signal_pin_attached_to);
  4. myservo.write(needed_position_ angle);

 هدر “#include <Servo.h>” شامل تمامیه توابعی که مورد نیازمان خواهد شد می باشد. با فراخوانی این کتابخانه ها دیگر نگرانی برای فرکانس PWM و DUTY RATIO  وجود نخواهد داشت. به این ترتیب کاربر به راحتی می تواند موقعیت سروو موتور را بدون سردرگمی به طور دقیق وارد کند.

 

دانلود کد برنامه کنترل سروو موتور با آردوینو Due :

دانلود فایل
#include <Servo.h>
Servo myservo;                 // providing a name
int angle = 0;                     // variable to store the servo position
void setup() {
  myservo.attach(2);        // attaches the servo on pin 2 to the servo object
}
void loop() {
  for (angle = 0; angle <= 180; angle += 1) {     // goes from 0 degrees to 180 degrees, in steps of 1 degree
    myservo.write(angle);                                     // tell servo to go to position in variable 'angle'
    delay(15);                                                        // waits 15ms for the servo to reach the position
  }
  for (angle = 180; angle >= 0; angle -= 1) {     // goes from 180 degrees to 0 degrees
    myservo.write(angle);              
    delay(15);                                                       // waits 15ms for the servo to reach the position
  }
}

 

دیدگاه‌ها (0)

*
*