معرفی اتوپایلوت Pixhawk؛ بررسی سخت‌افزار، ArduPilot، MAVLink و Mission Planner

36 بازدید
۱۴۰۵-۰۴-۲۷
8 دقیقه
  • نویسنده: hasan emarati
  • درباره نویسنده: ---

اتوپایلوت یک سیستم کنترل خودکار (Automatic Control System) است که به منظور کاهش بار کاری اپراتور انسانی (خلبان یا راننده) طراحی شده است. این سیستم با استفاده از سنسورها، پردازشگرها و الگوریتم‌های کنترل، پارامترهای حرکتی را به صورت مداوم نظارت کرده و به طور خودکار تنظیم می‌کند.

اتوپایلوت Pixhawk

Pixhawk یک پلتفرم سخت‌افزاری متن‌باز کنترل‌کننده پرواز (Flight Controller) است که به عنوان یکی از محبوب‌ترین سیستم‌های اتوپایلوت در حوزه پهپادها، UAVها، روبات‌های خودران و وسایل پرنده بدون سرنشین استفاده می‌شود.

این پلتفرم توسط آزمایشگاه ETH Zurich (سوئیس) و شرکت 3DRobotics توسعه یافت و اکنون تحت حمایت پروژه DroneCode Foundation قرار دارد.

ویژگی‌های اصلی Pixhawk

  • معماری متن‌باز: سخت‌افزار و نرم‌افزار آن کاملاً Open-Source است.
  • فریم‌ور پشتیبانی‌شده:
    • PX4 (پیشنهادی برای کاربردهای حرفه‌ای و تحقیقاتی)
    • ArduPilot (مناسب برای کاربران عمومی و کاربردهای متنوع)
  • پردازنده اصلی: معمولاً از سری STM32 (ARM Cortex-M) استفاده می‌کند.

خانواده Pixhawk

نسخه سال معرفی پردازنده اصلی
Pixhawk 1 2014 STM32F427 + STM32F103 (Coprocessor)
Pixhawk 2 2016 STM32F427 + STM32F100
Pixhawk 4 2018 STM32F765
Pixhawk 5 2020 STM32F765 + STM32F100
Pixhawk 6 2022 STM32H7 (480MHz) + ICM-45686
Pixhawk 6X 2023 STM32H7 + پردازنده دوم
Pixhawk 6C 2023 نسخه اقتصادی Pixhawk 6

لینک سخت افزار Pixhawk

لینک فریم ور های نرم افزاری قابل اجرا روی فلایت کنترلر Pixhawk  :

ArduPilot

 ArduPilot یک پلتفرم اتوپایلوت متن‌باز با زبان   c++   است که بسیار پیشرفته و همه‌کاره است که قابلیت کنترل انواع وسایل نقلیه خودران را فراهم می‌کند. این software stack از سال ۲۰۱۰ توسعه یافته و امروزه یکی از قدرتمندترین و قابل اعتمادترین سیستم‌های کنترل پرواز و حرکت در دنیا محسوب می‌شود.

پشتیبانی از پلتفرم‌های متعدد (Vehicle Types):

  • Multirotor 
  • Fixed Wing 
  • VTOL
  • Traditional Helicopter
  • Rover / Boat / Submarine
  • Antenna Tracker 

ساختار کلی ARDUPILOT

Vehicle software architecture

  • در پایین ترین لایه برنامه داده سنسورها از ها جمع آوری و تجمیع می شود .
  • در لایه میانی انواع فیلتر های پیشرفته به سنسور ها اعمال شده .
  • در لایه بالا تمام داده ها تفسیر شده و دستورات پروازی اجرا می شوند.

معرفی ابزار

معرفی Mission Planner

Mission Planner یک نرم‌افزار رایگان و متن‌باز است که به عنوان ایستگاه کنترل زمینی (Ground Control Station) برای پهپادها و وسایل مبتنی بر ArduPilot طراحی شده است. این برنامه امکان تنظیم پارامترها، برنامه‌ریزی مأموریت پرواز، مانیتورینگ لحظه‌ای وضعیت پرنده، کالیبراسیون سنسورها و تحلیل لاگ‌های پرواز را فراهم می‌کند.

نصب و راه‌اندازی

  • آخرین نسخه installer را از سایت رسمی ArduPilot دانلود کنید.
  • مراحل نصب را دنبال کرده و فایروال و آنتی‌ویروس را به طور موقت غیرفعال کنید.

نوار ابزار (Toolbar) و تب‌های اصلی

معرفی اتوپایلوت Pixhawk؛ بررسی سخت‌افزار، ArduPilot، MAVLink و Mission Planner

تب‌های اصلی برنامه:

  • DATA: نمایش اطلاعات لحظه‌ای پرواز (داده‌های واقعی هنگام اتصال به Pixhawk یا داده‌های شبیه‌سازی شده در حالت SITL).
  • PLAN: برنامه‌ریزی مسیر پرواز، تعریف Waypointها و مأموریت‌های خودکار.
  • SETUP: آپلود فریم‌ور، کالیبراسیون سنسورها و تنظیمات اولیه سخت‌افزار.
  • CONFIG: دسترسی به تمام پارامترهای ArduPilot (یکی از مهم‌ترین بخش‌ها برای تنظیم دقیق سیستم).
  • SIMULATION: اجرای شبیه‌ساز SITL (Software In The Loop).: یکی از قابلیت های این برنامه اجرا sitl برای شبیه سازی دقیق وسیله قبل از تست میدانی است که در آن تمام سیستم های مربوط به پرنده و فیزیک پرواز باد و شرایط جوی شبیه سازی می شود .

نمایشگر HUD (Head-Up Display)

معرفی اتوپایلوت Pixhawk؛ بررسی سخت‌افزار، ArduPilot، MAVLink و Mission Planner

HUD اطلاعات حیاتی پرواز را به صورت گرافیکی نمایش می‌دهد:

  1. قطب‌نما (Heading)
  2. کیفیت ارتباط رادیویی و RTC
  3. ارتفاع و throttle
  4. مود پروازی فعلی
  5. وضعیت سنسورها، باتری، فیلترها و Arming Check
  6. سرعت هوایی (AS) و سرعت زمینی (GS)
  7. دریفت چپ و راست
  8. زوایای Roll و Pitch

نحوه اتصال به پرنده

در پنل اتصال می‌توان نوع ارتباط (Serial، TCP، UDP و …) و نرخ انتقال داده (Baud Rate) را انتخاب کرد. برای اتصال به SITL معمولاً از TCP با آدرس 127.0.0.1:5760 استفاده می‌شود. برای اتصال به Pixhawk واقعی، ابتدا فریم‌ور را آپلود کنید (از طریق Mission Planner یا STM32CubeProgrammer) سپس از طریق پورت سریال (COM) یا اترنت متصل شوید.

نکته معمولا بعد از اجرای sitl برنامه به صورت خودکار به شبیه ساز متصل می شود.

راه‌اندازی شبیه‌ساز SITL

SITL (Software In The Loop) امکان شبیه‌سازی کامل پرواز روی کامپیوتر بدون نیاز به سخت‌افزار واقعی را فراهم می‌کند.

معرفی اتوپایلوت Pixhawk؛ بررسی سخت‌افزار، ArduPilot، MAVLink و Mission Planner

مراحل راه‌اندازی:

  1. به تب SIMULATION بروید.
  2. نقطه Home را روی نقشه مشخص کنید قابل (Drag).
  3. نسخه شبیه‌ساز را انتخاب کنید . 
  4. نوع وسیله مورد استفاده خود را اتنخاب کنید و کمی صبر کنید

راهکارهای مشکل لود نشدن نقشه:

  • استفاده از VPN
  • تغییر منبع نقشه در تب PLAN
  • کش کردن نقشه قبل از حالت آفلاین
  • استفاده از SASPlanet
  • کار در حالت بدون نقشه

 – فرآیند برخاست و فرود

برخاست (Takeoff):

  1. Arm کردن موتورها
  2. تنظیم مود پروازی مناسب
  3. ارسال دستور Takeoff و تعیین ارتفاع هدف

فرود:

  • استفاده از دستور RTL (بازگشت خودکار به خانه) یا
  • تغییر مود به Land

در جدول زیر مهم‌ترین مودهای پروازی ArduPilot آورده شده است:

شاید برای شما مفید باشد:
20Kbit- 1wire EEPROM
ردیف Mode توضیح مختصر
1 Stabilize پرواز دستی با کمک PID برای پایداری
2 Acro مود آکروباتیک بدون کمک پایدارسازی
3 AltHold حفظ ارتفاع ثابت، کنترل زاویه با کاربر
4 Auto اجرای مأموریت از پیش برنامه‌ریزی‌شده
5 Guided کنترل آنلاین از طریق ایستگاه زمینی
6 Loiter شناور ماندن در موقعیت فعلی
7 RTL بازگشت خودکار به نقطه Home
8 Land فرود خودکار
9 PosHold حفظ موقعیت و ارتفاع با دقت بالا

بخش ACTIONS

در این بخش دستورات فوری مانند Arm/Disarm، Takeoff، RTL، Loiter، Change Altitude، Set Mode و Restart Mission قابل ارسال است.

بخش PLAN

در این تب با کلیک روی نقشه، Waypointها و دستورات مأموریت تعریف می‌شود. پس از تکمیل مسیر، با دکمه Write مأموریت به پرنده ارسال می‌گردد. برای اجرای خودکار، مود پروازی را روی Auto قرار دهید.

MAVProxy

MAVProxy یک ابزار خط فرمان (Console) سبک است که امکان ارسال دستورات MAVLink و دریافت داده‌ها از ArduPilot را فراهم می‌کند. این ابزار برای اسکریپت‌نویسی، تست و کنترل پیشرفته مناسب است.

اتصال به SITL

بعد از اتصال موفق، کنسول MAVPROXY  باز می شود و شروع به نمایش دیتا های HEALTH SYSTEM می کند .

MAVProxy دارای HUD، Map، Parameter Editor و مجموعه دستورات فرآوان برای کنترل پرواز، مأموریت، سنسورها و لاگ‌ها است.

Mavlink : 

 MAVLink (Micro Air Vehicle Link) یک پروتکل ارتباطی سبک، کارآمد و متن‌باز است که برای تبادل داده بین پهپادها، روبات‌ها و ایستگاه کنترل زمینی طراحی شده است. این پروتکل از نسخه ۲.۰ قابلیت امضای دیجیتال (Signature) را پشتیبانی می‌کند که امنیت انتقال داده را به طور قابل توجهی افزایش می‌دهد.

ساختار بسته MAVLink2 

ساختار کلی یک پیام MAVLink به صورت زیر است:

MAVLink2 

  • Header  : شامل شناسه پیام، سیستم و کامپوننت.
  •  : Payload داده‌های واقعی پیام (مثلاً موقعیت، سرعت، وضعیت باتری).
  • CRC  : بررسی صحت بسته.
  • Signature (در نسخه ۲): برای احراز هویت و امنیت.
  • لایه‌ای سبک برای تبادل پیام‌های بایت به-بایت بین پهپادها و ایستگاه‌های کنترل تعریف می‌شود-.
    • | magic | len | incompat_flags | compat_flags | seq | sysid | compid | msgid|
    • |payload|
    • | CRClow | CRC-high |-
  • این ساختار کلی دیتای ارسالی در پروتکل  MAVLNK هست .
  • مثال HEARTBEAT: دیتایی که اطلاعات اولیه سیستم را بعد از اتصال موفق برمیگرداند مربوط به سلامت سیستم می باشد .
  • FE 09 00 00 01 01 00 00 01 01 01 00 00 00 00 00 00 00 4D 20
  • در بالا نمونه دیتای ارسالی را مشاهده می کنید که از USART  خوانده شده است .
  • بایت‌های امضای دیجیتال  در انتهای فریم MAVLink2.0 قرار می‌گیرند؛ دقیقاً پس از دو بایت CRC اضافه می‌شوند. این بخش شامل زمان، مهر4بایت، امضای8بایت و شناسه‌پیوند1بایت است. 
    این ساختار کلی MAVLINK هست .

کتابخانه PyMAVLink

برای ارتباط با پروتکل MAVLink در پایتون از کتابخانه pymavlink استفاده می‌شود.

نصب:

توابع مهم پیاده‌سازی‌شده

اتصال به SITL و دریافت Heartbeat:

ارسال دستور سرعت (Velocity) برای دنبال کردن هدف:

تغییر مود پروازی و Arm کردن:

اطلاعات
36
0
1
اشتراک و حمایت
profile نویسنده: hasan emarati متخصص الکترونیک

ویراستار: حسین زنجانی زاده
مقالات بیشتر

slide

پالت | بازار خرید و فروش قطعات الکترونیک

قطعات اضافه و بدون استفاده همیشه یکی از سرباره‌‌های شرکتها و طراحان حوزه برق و الکترونیک بوده و هست. پالت سامانه‌ای است که بصورت تخصصی اجازه خرید و فروش قطعات مازاد الکترونیک را فراهم می‌کند. فروش در پالت
family

آیسی | موتور جستجوی قطعات الکترونیک

سامانه آی سی سیسوگ (Isee) قابلیتی جدید و کاربردی از سیسوگ است. در این سامانه سعی شده است که جستجو، انتخاب و خرید مناسب تر قطعات برای کاربران تسهیل شود. جستجو در آیسی
family

سیسوگ‌شاپ | فروشگاه محصولات Quectel

فروشگاه سیسوگ مجموعه ای متمرکز بر تکنولوژی های مبتنی بر IOT و ماژول های M2M نظیر GSM، GPS، LTE، NB-IOT، WiFi، BT و ... جایی که با تعامل فنی و سازنده، بهترین راهکارها انتخاب می شوند. برو به فروشگاه سیسوگ
family

سیسوگ فروم | محلی برای پاسخ پرسش‌های شما

دغدغه همیشگی فعالان تخصصی هر حوزه وجود بستری برای گفتگو و پرسش و پاسخ است. سیسوگ فروم یک انجمن آنلاین است که بصورت تخصصی امکان بحث، گفتگو و پرسش و پاسخ در حوزه الکترونیک را فراهم می‌کند. پرسش در سیسوگ فرم
family

سیکار | اولین مرجع متن باز ECU در ایران

بررسی و ارائه اطلاعات مربوط به ECU (واحد کنترل الکترونیکی) و نرم‌افزارهای متن باز مرتبط با آن برو به سیکار
become a writer
نویسنده شو !

سیسوگ با افتخار فضایی برای اشتراک گذاری دانش شماست. برای ما مقاله بنویسید.

ارسال مقاله
become a writer
نویسنده شو !

سیسوگ با افتخار فضایی برای اشتراک گذاری دانش شماست. برای ما مقاله بنویسید.

ارسال مقاله

خانواده سیسوگ

سیسوگ‌شاپ

فروشگاه محصولات Quectel

پالت
سیسوگ فروم

محلی برای پاسخ پرسش‌های شما

سیسوگ جابز
سیسوگ
سیسوگ فروم
سی‌کار

اولین مرجع متن باز ECU در ایران

سیسوگ مگ
آی‌سی

موتور جستجوی قطعات الکترونیکی

سیسوگ آکادمی
پالت

بازار خرید و فروش قطعات الکترونیک

دیدگاه ها

become a writer
نویسنده شو !

سیسوگ با افتخار فضایی برای اشتراک گذاری دانش شماست. برای ما مقاله بنویسید.

ارسال مقاله
become a writer
نویسنده شو !

سیسوگ با افتخار فضایی برای اشتراک گذاری دانش شماست. برای ما مقاله بنویسید.

ارسال مقاله