اجتناب از مانع چطور کار میکند؟
برای اینکه پهپاد یا روور خودش از برخورد با موانع جلوگیری کند، به یک سنسور Proximity نیاز دارد که فاصله تا اطراف را میسنجد — مثل لیدار چرخان RPLidar A1 که ۳۶۰ درجه اطراف را اسکن میکند. ArduPilot این داده را میگیرد و در حالتهای مناسب، جلوی حرکت به سمت مانع را میگیرد.
دو راهبرد وجود دارد: Simple Avoidance (فقط توقف/Slide مقابل مانع) و Path Planning با الگوریتمهای BendyRuler و Dijkstra که مسیر دور مانع را پیدا میکنند.
🛠️ کارت پروژه
| سنسور | RPLidar A1/A2 یا TF-Luna آرایهای |
| گروه پارامتر | PRX*, AVOID*, OA* |
گام ۱: تنظیم سنسور Proximity
PRX1_TYPE = 5 (RPLidar A2/A1)
SERIALx_PROTOCOL = 11 (Lidar360 روی پورت سریال متصل)
SERIALx_BAUD = 115 (115200)
گام ۲: فعالسازی Avoidance
AVOID_ENABLE = 7 (همه منابع)
AVOID_MARGIN = 3 (فاصله ایمن به متر)
AVOID_BEHAVE = 0 (0=Slide کنار مانع، 1=Stop توقف)
گام ۳: Path Planning (اختیاری، پیشرفته)
OA_TYPE = 1 (BendyRuler) یا 2 (Dijkstra)
OA_MARGIN_MAX = 5
OA_LOOKAHEAD = 15
مشاهده در Mission Planner
در نمای Proximity (رادار) میتوانید موانع اطراف را بهصورت زنده ببینید. این برای تست و اطمینان از اینکه لیدار درست داده میدهد بسیار مفید است.