🦾 سروو موتور (Servo Motor (SG90))

اسم انگلیسیServo Motor (SG90)
در ووکوی (Wokwi)wokwi-servo
دسته⚙️ موتور و حرکت
در شبیه‌ساز فارسیمود ساده (بدون کد) و مود آردوینو · رایگان

سروو موتور (Servo Motor) موتوری است که به‌جای چرخیدن مداوم، به یک زاویه‌ی مشخص بین ۰ تا ۱۸۰ درجه می‌رود و همان‌جا می‌ایستد؛ داخلش یک موتور کوچک، گیربکس و یک مدار کنترل موقعیت است. راهبند پارکینگ، قفل در، بازوی ربات و رادار اولتراسونیک همه با سروو ساخته می‌شوند. رایج‌ترین مدلش برای یادگیری، SG90 آبی کوچک است.

سروو در ووکوی (Wokwi)

شناسه‌ی سروو در ووکوی wokwi-servo است با سه پایه‌ی GND، V+ و PWM. هنگام اجرا بازوی سروو را می‌بینی که به زاویه‌ی خواسته‌شده می‌رود. این تکه سروو را به پین ۹ و یک دکمه (wokwi-pushbutton) را به پین ۲ وصل می‌کند:

{
  "version": 1,
  "parts": [
    { "type": "wokwi-arduino-uno", "id": "uno", "top": 0, "left": 0 },
    { "type": "wokwi-servo", "id": "servo1", "top": -140, "left": 160 },
    { "type": "wokwi-pushbutton", "id": "btn1", "top": -90, "left": 20 }
  ],
  "connections": [
    [ "servo1:PWM", "uno:9", "orange", [] ],
    [ "servo1:V+", "uno:5V", "red", [] ],
    [ "servo1:GND", "uno:GND.1", "black", [] ],
    [ "btn1:1.l", "uno:2", "green", [] ],
    [ "btn1:2.r", "uno:GND.1", "black", [] ]
  ]
}
پایه در ووکویوصل بهرنگ سیم در سروو واقعی
GNDuno:GND.1قهوه‌ای یا مشکی
V+uno:5Vقرمز
PWMuno:9نارنجی یا زرد

در تینکرکد فارسی سروو با پایه‌های V، G و S در هر دو حالت رایگان است و مثال جاروب سروو آماده است.

سیم‌کشی با آردوینو

پایه‌ی قطعهوصل به
سیم قهوه‌ای یا مشکی (GND)GND
سیم قرمز (V+)5V
سیم نارنجی یا زرد (سیگنال)پین 9
دکمه، یک پایهپین 2 (INPUT_PULLUP)
دکمه، پایه‌ی قطریGND

سیگنال سروو یک پالس است که هر ۲۰ میلی‌ثانیه تکرار می‌شود: پهنای حدود ۱ میلی‌ثانیه یعنی ۰ درجه، ۱٫۵ میلی‌ثانیه وسط و ۲ میلی‌ثانیه ۱۸۰ درجه. کتابخانه‌ی Servo این پالس را در پس‌زمینه می‌سازد و تو فقط زاویه را با write می‌دهی؛ برای همین سیم سیگنال به پین PWM مخصوص نیاز ندارد. اگر سیگنال قطع شود، سروو دیگر موقعیتش را محکم نگه نمی‌دارد و با کمی فشار جابه‌جا می‌شود.

کد نمونه

یک راهبند: هر بار دکمه را بزنی، بازو آرام باز (۹۰ درجه) یا بسته (۰ درجه) می‌شود. حرکت آرام با تابع moveSlow ساخته شده، چون write به‌تنهایی سروو را با بیشترین سرعتش می‌برد:

// Barrier gate: a button opens/closes the servo arm slowly.
// Wiring: servo signal -> pin 9, V+ -> 5V, GND -> GND; button pin 2 -> GND
#include <Servo.h>

Servo gate;
const int BTN = 2;
const int CLOSED = 0;
const int OPEN = 90;
int angle = CLOSED;
bool isOpen = false;

void moveSlow(int target) {
  while (angle != target) {
    angle += (target > angle) ? 1 : -1;
    gate.write(angle);
    delay(12);                      // ms per degree: bigger = slower
  }
}

void setup() {
  pinMode(BTN, INPUT_PULLUP);
  gate.attach(9);
  gate.write(angle);
}

void loop() {
  if (digitalRead(BTN) == LOW) {    // pressed
    isOpen = !isOpen;
    moveSlow(isOpen ? OPEN : CLOSED);
    while (digitalRead(BTN) == LOW) {}   // wait for release
    delay(30);
  }
}

متغیر angle همیشه زاویه‌ی فعلی را نگه می‌دارد، چون سروو خودش به برنامه نمی‌گوید کجاست. اگر عدد delay داخل moveSlow را بزرگ‌تر کنی، راهبند آرام‌تر و واقعی‌تر حرکت می‌کند.

اشتباه‌های رایج

آموزش‌های مرتبط

سؤال‌های رایج

سه سیم سروو چه رنگی‌اند؟

در سرووهای رایج مثل SG90: قهوه‌ای یا مشکی زمین (GND)، قرمز تغذیه (V+) و نارنجی یا زرد سیگنال (PWM). در ووکوی هم همین سه پایه با اسم GND، V+ و PWM هستند.

چرا سروو هنگام حرکت آردوینو را ریست می‌کند؟

سروو در لحظه‌ی حرکت جریان زیادی می‌کشد و ولتاژ 5V افت می‌کند. برای یک SG90 کوچک معمولاً 5V آردوینو کافی است، ولی برای چند سروو یا سرووهای بزرگ، تغذیه‌ی جدا با زمین مشترک بگذار.

سروو را به کدام پین آردوینو وصل کنم؟

با کتابخانه‌ی Servo هر پین دیجیتالی کار می‌کند و لازم نیست پین PWM باشد. فقط بدان که روی اونو، این کتابخانه analogWrite پین‌های ۹ و ۱۰ را از کار می‌اندازد.

📖 طرز کار، مشخصات فنی و نکته‌های خرید این قطعه در دانشنامه‌ی تینکرکد فارسی: سروو موتور آمده است.

آموزش‌هایی که از این قطعه استفاده می‌کنند

🦾

سروو موتور با آردوینو: جاروب ۰ تا ۱۸۰ درجه و کنترل با پتانسیومتر

🔐

قفل در با کارت RFID (MFRC522) و سروو موتور در آردوینو

🦾

راه‌اندازی سروو موتور با ESP32: کتابخانه‌ی ESP32Servo، روش ledc ۵۰ هرتز و تغذیه‌ی درست

🦾

سروو موتور با میکروپایتون روی رزبری پای پیکو: PWM پنجاه هرتز و کنترل زاویه

🔢

کیپد ۴×۴ با آردوینو: طرز کار ماتریسی، کتابخانه‌ی Keypad و قفل رمزدار با سروو

💡

۳۰ ایده پروژه اینترنت اشیا با ESP32، از مبتدی تا پیشرفته (با قطعه‌ها و نقطه‌ی شروع)

قطعه‌های دیگرِ موتور و حرکت

📳

موتور لرزشی سکه‌ای (ویبره)

Coin Vibration Motor

🔩

موتور پله‌ای 28BYJ-48 (استپر)

Stepper Motor 28BYJ-48

🖨️

موتور استپر NEMA 17

NEMA 17 Stepper Motor

🌀

موتور DC بزرگ

Large DC Motor (12V)

🚗

موتور گیربکس‌دار (موتور زرد TT)

TT Gear Motor

🔄

سروو پیوسته (۳۶۰ درجه)

Continuous Rotation Servo

همه‌ی ۱۰۵ قطعه ← · آموزش مدار

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