</> Make for Iran – بسازیم برای ایران

پروژه‌ها، آموزش‌ها و ابزارها برای سازندگان و علاقه‌مندان الکترونیک

  • خانه
  • الکترونیک
  • پرینت سه‌بعدی
  • حکاکی و برش لیزری
  • ابزار کارگاهی
  • پهپاد
  • ربات زمینی UGV
  • ربات پرنده UAV
  • صنایع دستی
  • آموزش
  • پروژه‌ها
  • درباره ما
خانه›ربات‌های زمینی (UGV)›ساخت UGV شش‌پا (Hexapod) با سرووموتور و Arduino: گام برداشتن خودکار (فارسی)
ربات‌های زمینی (UGV) پروژه‌ها

ساخت UGV شش‌پا (Hexapod) با سرووموتور و Arduino: گام برداشتن خودکار (فارسی)

​ ژوئن 11, 2026 2 دقیقه مطالعه
ربات شش‌پا Hexapod سرووموتور آردوینو

ربات Hexapod یعنی چه؟ (برای مبتدی)

Hexapod یک ربات شش‌پا است که مثل حشرات راه می‌رود. برخلاف ربات‌های چرخ‌دار که روی سطوح ناهموار مشکل دارند، ربات‌های پادار می‌توانند از موانع رد شوند، از پله‌ها بالا بروند، و حتی روی زمین ناهموار راه بروند.

هر پای Hexapod معمولاً ۳ مفصل دارد: Coxa (ران — چرخش افقی)، Femur (ساق — چرخش عمودی)، و Tibia (کف — چرخش عمودی). برای کنترل ۱۸ سرووموتور (۶ پا × ۳) به جای پایه‌های مجزا Arduino، از یک درایور سرو PCA9685 (۱۶ کانال I2C) استفاده می‌کنیم.

Tripod Gait رایج‌ترین الگوی راه رفتن Hexapod است: در هر لحظه ۳ پا روی زمین هستند (پایه پایدار) و ۳ پای دیگر در هوا حرکت می‌کنند — این تناوب سریع و پایدار است.

محصولی که می‌سازید

یک Hexapod ۱۸-سرو با Tripod Gait، قابل کنترل با RC و حرکت خودکار به جلو/عقب/چرخش.

  • زمان ساخت: ۱۵ تا ۲۵ ساعت
  • هزینه: ۲ تا ۴ میلیون تومان
  • سرعت: ۰.۳ تا ۰.۵ m/s

Arduino Mega PCA9685 I2C L1 L2 L3 R1 R2 R3 Hexapod — ۶ پا × ۳ مفصل = ۱۸ سرو — PCA9685 I2C

قطعات لازم (BOM)

قطعه مشخصات
Arduino Mega 2560 پردازشگر اصلی
PCA9685 Servo Driver × ۲ کنترل ۱۸+ سرو از طریق I2C
سرووموتور MG90S × ۱۸ ۳ سرو × ۶ پا
شاسی لیزرکات اکریلیک بدنه و پاها — فایل DXF
باتری 7.4V LiPo 2200mAh منبع سروو
UBEC 5V 3A تغذیه Arduino و سرووها

کد Tripod Gait


#include <Wire.h>
#include <Adafruit_PWMServoDriver.h>

Adafruit_PWMServoDriver pwm = Adafruit_PWMServoDriver(0x40);

#define SERVOMIN 150  // Pulse min
#define SERVOMAX 600  // Pulse max
#define STEP_H   30   // ارتفاع گام (درجه)
#define STEP_FWD 25   // طول گام (درجه)

// گروه A = {L1, R2, L3} — گروه B = {R1, L2, R3}
// ترتیب کانال‌ها روی PCA9685
int legCoxa[6]  = {0,3,6,9,12,15};
int legFemur[6] = {1,4,7,10,13,16};
int legTibia[6] = {2,5,8,11,14,17};

void setServo(int ch, int angle) {
  int pulse = map(angle, 0, 180, SERVOMIN, SERVOMAX);
  pwm.setPWM(ch, 0, pulse);
}

void liftLeg(int leg) { setServo(legFemur[leg], 90 + STEP_H); }
void placeLeg(int leg) { setServo(legFemur[leg], 90); }
void moveFwd(int leg, int dir) { setServo(legCoxa[leg], 90 + dir * STEP_FWD); }

void tripodGait() {
  int groupA[] = {0, 2, 4}; // L1, L3, R2
  int groupB[] = {1, 3, 5}; // L2, R1, R3

  // فاز ۱: گروه A بالا می‌رود
  for(int l : groupA) { liftLeg(l); moveFwd(l, 1); }
  delay(100);
  for(int l : groupA) { placeLeg(l); }

  // فاز ۲: گروه B بالا می‌رود
  for(int l : groupB) { liftLeg(l); moveFwd(l, 1); }
  delay(100);
  for(int l : groupB) { placeLeg(l); }
  delay(80);
}

void setup() {
  pwm.begin(); pwm.setOscillatorFrequency(27000000);
  pwm.setPWMFreq(50); delay(10);
  // موقعیت اولیه
  for(int i=0;i<18;i++) setServo(i, 90);
  delay(1000);
}

void loop() {
  tripodGait();
}

چک‌لیست تست

تست نتیجه
همه ۱۸ سرو به موقعیت ۹۰° می‌روند؟ بله — Mechanical Center
ربات در Tripod Gait پیش می‌رود؟ بله — باید به جلو برود
سروها گرم نمی‌شوند؟ UBEC 3A کافی است
شاسی تعادل دارد؟ CG باید مرکز باشد

Arduino Mega Gait Logic PCA9685 × ۲ I2C → ۱۸ سرو MG90S × ۱۸ ۳ مفصل/پا راه رفتن Tripod Gait Hexapod — Arduino → I2C PCA → ۱۸ سرو → راه رفتن

ویدئوهای آموزشی


منابع بیشتر

  • آپارات: ربات شش‌پا ساخت فارسی
  • GitHub: Hexapod Robot Project
برچسب‌ها: Gait Hexapod PCA9685 UGV آردوینو آموزش گام‌به‌گام سرو شش‌پا
​
مطلب بعدی ساخت سیستم هشدار باتری LiPo با آردوینو و بازر: از ولتاژ ایمن تا Cut-Off (فارسی) مطلب قبلی ساخت Barometer Logger با BMP280 و Arduino: اندازه‌گیری ارتفاع پهپاد (فارسی)
</> Make for Iran – بسازیم برای ایران

پروژه‌ها، آموزش‌ها و ابزارها برای سازندگان و علاقه‌مندان الکترونیک

یاد بگیر، بساز، به اشتراک بگذار. جامعه‌ای برای سازندگان، مهندسان و علاقه‌مندان به فناوری در ایران.

دسته‌بندی‌ها

  • پروژه‌ها
  • ربات‌های پرنده (UAV)
  • آموزش
  • ربات‌های زمینی (UGV)
  • الکترونیک
  • پهپاد و مولتی‌روتور

پیوندها

  • خانه
  • درباره ما
  • تماس
  • فید RSS

آخرین مطالب

  • خلاصه دوره ArduPilot/iNAV و گام‌های بعدی (فارسی)
  • رادیو تله‌متری در مقابل LTE/4G برای کنترل از راه دور (فارسی)
  • Ground Station روی موبایل و تبلت — QGroundControl و Solex (فارسی)
  • راه‌اندازی Ground Station با Mission Planner (فارسی)
© 2026 Make for Iran – بسازیم برای ایران. تمامی حقوق محفوظ است.
ساخته شده با ❤️ برای سازندگان ایران  |  ورود