آردوینو Arduinoمطالب علمی

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

سرو موتور ( Servo Motor ) متشکل از یک موتور الکتریکی ساده است که در کنار موتور تعدادی المان الکترونیکی به منظور کنترل زاویه ، سرعت و یا شتاب به شفت موتور متصل می شوند و کلیه المان ها به همراه موتور در یک پکیج واحد ارائه می شوند. سرو موتور ها ممکن است دارای گیربکس یا فاقد گیربکس باشد و اندازه های بسیار کوچک برای مصارف ساخت تجهیزات مکاترونیکی مانند ربات ها و هواپیما های مدل تا اندازه های بزرگ برای دستگاه های صنعتی ساخته می شوند. در حوزه میکروکنترلر ، آنچه که از سرو موتور مشاهده می نماییم معمولا یک موتور DC جاروبک دار است که به کمک یک سری چرخدنده ( گیربکس ) به یک پتانسیومتر داخلی وصل شده است و خروجی گیربکس نیز از طرف دیگر خارج شده است. پتانسیومتر فقط وضعیت خروجی را کنترل می کند و کاری به وضعیت موتور ندارد.

در آموزش امروز قصد داریم دو موتور سرو را با یک عدد جوی استیک به وسیله برد Arduino کنترل کنیم. با ما همراه باشید تا نحوه راه اندازی و برنامه نویسی این پروژه کاربردی را فرا بگیرید. در پست های قبلی راه اندازی اولیه موتورهای سرو را آموزش داده ایم

راه اندازی سرو موتور توسط آردوینو

F9YZ79GIWQV821E.MEDIUM

برای انجام این پروژه به یک عدد ماژول جوی استیک و یک عدد Arduino ترجیحا Uno و دو عدد موتور سروو نیازمندیم. هدف کنترل دو موتور سروو (یکی در جهت x و دیگری در جهت y) می باشد. که برای هر جهت یک سروو موتور وجود دارد. بعد از آماده سازی این وسایل نوبت به اتصالات می رسد.

FAGH5OLIWQV8218.MEDIUM

در موتورهای سروو معمولا سیم نارنجی سیم ورودی پالس های موتور(Data) است و سیم قرمز تغذیه مثبت موتور و سیم قهوه ای GND موتور می باشد. در استانداردهای دیگر این موتور نیز سیم زرد به عنوان سیم دیتا و سیم قرمز تغذیه مثبت و سیم سیاه GND موتور می باشد.

yhst 62196343123315 2273 119349228

ماژول جوی استیک نیز یک ساختار مقاومتی دارد به این صورت که از دو مقاومت متغیر 5K اهمی در دو جهت بهره می برد و دارای 5 پین می باشد که دو پین برای تغذیه ماژول و دو پین برای کنترل جهت های x,y و یک پین برای کنترل سوییچ تعبیه شده در ماژول می باشد.

joystick module

شماتیک کنترل چندگانه موتور سرو با جوی استیک و آردوینو

project servos using a joystick thumbstick arduino jpg arduino code for motor electric motor wiring diagram 3 phase starter driver schematic motors and controls 12 volt led circuit

سورس کد برنامه کنترل چندگانه موتور سرو با جوی استیک و آردوینو

#include <Servo.h>

Servo S1;
Servo S2;

int x=0;
int y=1;
int joy;

void setup()
{
  S1.attach(3);
  S2.attach(4);
}

void loop()
{
  joy = analogRead(x);
  joy = map(joy, 0, 1023, 0, 180);
  S1.write(joy);

  joy = analogRead(y);
  joy = map(joy, 0, 1023, 0, 180);
  S2.write(joy);
  delay(10);
}

حال که تا اینجای کار با سرو موتورها و راه اندازی و کنترل در دو جهت را با استفاده از جوی استیک فرا گرفتیم با کمی تعمیم می توان به پروژه های کامل تری مثل کنترل از طریق ولوم و ارتباط با بلوتوث یا حتی ساخت یک بازوی رباتیکی دست یافت. به همین منظور در ادامه همین آموزش ها کنترل موتورهای سروو و استپر را بیان می کنیم و در پایان این بخش از آموزش ها پروژه بازوی رباتیک و نحوه پیاده سازی آن را به سمع و نظر شما می رسانیم.

ادامه دارد …

نوشته های مشابه

3 دیدگاه

  1. سلام .چجوری میشه کاری کرد تا بعد از رها کردن جوی استیک ، سروو موتور ها به حالت قبلی برنگردن؟؟؟

    1. سلام سروو موتور چند درجه استفاده کردید؟
      اگه 360 درجه استفاده کنید بعد از رها کردن جواستیک دیگه به حالت اول برنمیگرده

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

دکمه بازگشت به بالا