🤖 روبومیکرآموزش آردوینوشبیه‌ساز آنلاین
روبومیکرآموزش آردوینوکنترل موتور سروو با کد

کنترل موتور سروو با کد

موتور سروو (Servo) موتوری است که می‌توانی آن را دقیقاً به زاویه دلخواه بچرخانی؛ معمولاً بین ۰ تا ۱۸۰ درجه. در این درس یاد می‌گیری چطور با کتابخانه آماده Servo این موتور را کنترل کنی.

افزودن کتابخانه و تعریف سروو

آردوینو یک کتابخانه آماده به نام Servo دارد که کار با موتور سروو را خیلی ساده می‌کند. اول آن را به برنامه اضافه می‌کنیم و یک شیء سروو می‌سازیم:

#include <Servo.h>

Servo myServo;

سپس در بخش setup() با دستور attach() به آردوینو می‌گوییم سروو به کدام پایه وصل است:

myServo.attach(9);

تنظیم زاویه با write

برای حرکت دادن سروو از دستور write() استفاده می‌کنیم و عددی بین ۰ تا ۱۸۰ به آن می‌دهیم. کد کامل زیر سروو را به آرامی از ۰ تا ۱۸۰ درجه و دوباره برمی‌گرداند (به این حرکت رفت‌وبرگشتی sweep می‌گویند):

#include <Servo.h>

Servo myServo;
int angle = 0;

void setup() {
  myServo.attach(9);
}

void loop() {
  // چرخش از ۰ تا ۱۸۰ درجه
  for (angle = 0; angle <= 180; angle++) {
    myServo.write(angle);
    delay(15);
  }

  // برگشت از ۱۸۰ تا ۰ درجه
  for (angle = 180; angle >= 0; angle--) {
    myServo.write(angle);
    delay(15);
  }
}

یک حلقه for زاویه را یکی‌یکی زیاد می‌کند و delay(15) باعث می‌شود حرکت نرم دیده شود. حلقه دوم هم زاویه را کم می‌کند تا سروو به نقطه شروع برگردد.

هشدار: موتورهای سروو بزرگ یا چند سروو همزمان جریان زیادی می‌کشند. در این حالت سروو را با یک منبع تغذیه جداگانه تغذیه کن و فقط پایه سیگنال و GND را به آردوینو وصل کن؛ وگرنه ممکن است آردوینو ری‌استارت شود.

این کد را همین حالا در حالت کدنویسی شبیه‌ساز روبومیکر بنویس و اجرا کن.

🔌 همین حالا توی شبیه‌ساز آنلاین روبومیکر امتحان کن — رایگان و بدون نصب