فلایت کنترل APM {جلسه بیست و چهارم}
مقدمه اى بر فلایت کنترل APM
فلایت کنترل APM به دلیل دارا بودن ویژگی OPEN Source از محبوبیت بالایی برخوردار است.
کاربران محترم، خواندن اين جلسه بدون انجام تمرینات آن و گام به گام پیش رفتن با درس كافى نمى باشد. لطفا تمرين هاى آخر جلسه به همراه لينك هاى ارسال شده را به دقت مطالعه كنيد تا به درك كامل و عميقى از مطالبى كه در ادامه مى آيد برسيد.
این فلایت کنترل را می توان در تمامی ربات های رادیو کنترلی همانند هواپیما، ماشین های کنترلی، هلی کوپتر، زیردریایی و مولتی روتورها استفاده کرد.فلایت کنترل APM را با نام های مختلفی همانند:
- آردوپایلوت(ArduPilot)
- آردوکوپتر(ArduCopter)
هنگامي كه در هلي كوپتر و مولتي كوپتر استفاده مي شود با نام آردوكوپتر خوانده مي شود.
- آردوپلن(ArduPlane)
هنگامي كه در هواپيما استفاده مي شود با نام آردوپلن خوانده مي شود.
- آردو روور(ArduRouver)
- هنگامي كه در ماشين استفاده مي شود با نام آردوروور خوانده مي شود.
در تمامی نام های بالا Ardu همان مخفف Arduino می باشد که پایه و اساس طراحی این فلایت کنترل می باشد. این فلایت کنترل قابلیت ساخت یک مولتی روتور کاملا خودکار را برای شما فراهم می کند. این فلایت کنترل در سالهای 2012 و 2014 برنده مسابقات UAV Outback Challenge شد. رویکرد نرم افزاری آردوپایلوت همانند PX4 و Papparazi می باشد. لغت APM مخفف Ardu Pilot Mega است.
قابلیت های فلایت کنترل APM
- سازگاری کامل با نرم افزار آردوینو
- قابلیت بازگشت به خانه با اتمام باتری یا قطع سیگنال یا هر مشکل دیگری
- قابلیت اتصال به شبیه سازها
- قابلیت کنترل با لب تاپ، گوشی، تبلت و… بدون استفاده از رادیوکنترل
- قابلیت اتصال به بلوتوث، تلمتری، وایفای و… جهت اتصال بدون رادیوکنترل
- جایروسکوپ، شتاب سنج و قطب نمای سه محوره به همراه فشارسنج
- دارای پورت USB میکرو جهت اتصال به کامپیوتر
- و قابليت هاي زيادي كه مي توانيد از راهنماي همراه برد مطالعه كنيد.
ورژن هاي فلایت کنترل APM از ابتدا
- APM 1
- APM 2
- APM 2.5
- APM 2.5.2
- APM 2.6
- APM 2.7
- APM 2.8
- APM 2.9
تفاوت ورژن های مختلف فلایت کنترل APM
فلایت کنترل APM با ورژن های مختلفی در بازار ارایه شده است که تغییرات زیادی را شاهد بوده است. در ابتدا که برد APM 2 معرفی شده بود کلیه تجهیزات و سنسورها همراه برد بودند. یعنی اینکه GPS و قطب نما روی برد اصلی بودند ولی در ورژن های جدید ابتدا GPS را جدا کردند(در ورژن APM2.5) و سپس قطب نما را هم از برداصلی جدا کردند(ورژن APM2.6) و به همراه GPS با کابل متصل می شدند. علت این جداسازی هم بیشتر به کاهش نویز بر میگردد بدین ترتیب برای وسایل و تجهیزات کنترلی که نیاز به دور بودن قطب نما و جی پی اس از منبع تغذیه و موتورها جهت جلوگیری از تداخل مغناطیسی می باشد از ورژن 2.6 به جای 2.5 استفاده می شود.
البته با بروز شدن این بردها و با ورود ورژن 2.8 تمامی مشکلات سری های قبلی حذف شد. هم اکنون ورژن 2.8 در فروشگاههاى داخلي در دسترس مي باشد. تكامل يافته فلایت کنترل APM نيز فلايت Pixhawk مي باشد كه قابليت هاى بسيار بيشترى نسبت به فلایت کنترل APM دارد.
نکته دیگری هم که قابل ذکر است اینه که شاید یکی نخاد از قطب نما و جی پی اس استفاده کنه یا اینکه نیازی به دقت بالا نداشته باشه و فقط بخاد با برد تنها راه اندازی رو انجام بده که در این صورت ورژن های جدید بسیار کاربردی تر و ارزان تر می شوند و نیازی به خریدن ماژول جی پی اس و قطب نما نیست.
شکل زیر نمایی از برد APM2 را نشان می دهد:
شکل زیر هم یک APM2.5 را نشان می دهد که GPS از روی برد جدا شده است:
شكل زير APM2.5.2 را نشان ميدهد.
اینکه جی پی اس از روی برد جدا شده است مزیت هایی دارد همانند اینکه دیگر شاهد نویزهای ناشی از ربات نیستیم و همچنین با جداسازی جی پی اس در صورت خرابی میتوان آن را به راحتی تعویض نمود ولی عیب آن این است که با توجه به اینکه جی پی اس و در ورژن های بالاتر قطب نما را از روی برد جدا کرده اند نیاز به کالیبره کردن دارد که باعث صرف زمان می شود.
تفاوت ورژن های APM2.5 و APM2.6
تفاوت های سخت افزاری
این دو ورژن از لحاظ سخت افزاری و سنسورها کاملا شبیه به همدیگر هستند و تنها تغییری که در سخت افزار APM2.6 به وجود آمده است این است که سنسور قطب نما به همراه ماژول GPS ارایه شده است و بدین ترتیب ماژول GPS مربوط به این دو ورژن با هم متفاوت است و بدین ترتیب APM2.6 قطب نمای داخلی روی برد اصلی ندارد.
- دو نوع ماژول GPS كه همراه بردهاي APM استفاده مي شود در زير نشان داده شده است.
- ماژول GPS از نوع Ublox
تفاوت نرم افزاری
از لحاظ نرم افزاری هیچ تفاوتی بین بردهای APM2.5 و APM 2.6 نیست و هر دو دارای فریمور یکسانی هستند.
از لحاظ قیمت
از نظر قیمت برد APM2.6 به دلیل مجزا بود GPS و قطب نما دارای قیمت بیشتری نسبت به APM2.5 است.
تفاوت ورژن های APM2.6 و APM2.8
در مورد این دو ورژن از لحاظ سخت افزاری اینکه سنسورهای هر دو برد تغییر چندانی نداشته است به جز اینکه یک سنسور قطب نمای داخلی به برد APM2.8 اضافه شده است. و بدین ترتیب تنها بردی که قطب نمای داخلی ندارد همان APM2.6 است.
در ورژن 2.6 یک مشکل اساسی سوختن رگولاتور ولتاژ 3.3 ولت بود که باعث میشد سنسورهای داخلی فلایت کنترل(شتاب سنج و قطب نما) از مدار خارج شوند. برای حل این مشکل شما باید هنگامی که فلایت کنترل روشن است به هیچ وجه هیچ سنسور یا قطعه ای رو به فلایت کنترل متصل نکنید یا از آن جدا نکنید. کلا هر نوع قطع یا اتصال سنسور ها را به بعد از جدا کردن باتری از فلایت کنترل محول کنید. راه حل دوم اینه که از فلایت کنترل APM2.8 استفاده کنید که این مشکل برطرف شده است.
از لحاظ قیمت هم تفاوت چندانی میانی این دو ورژن نیست.
شکل زیر هم ورژن های 2.7 و 2.8 را نشان می دهد.
برای اتصال به کامپیوتر این بردها می توانید از پورت USB میکرو آن استفاده کنید و با یک کابل شارژر گوشی تان آن را به لب تاپ وصل کنید.
نکته: دقت کنید که پین های مربوط به پورت USB میکرو به صورت ظریفی روی PCB لحیم شده اند و هنگام جازدن و در آوردن کابل بسیار دقت کنید تا آسیب نبینند.
نكات كاربردي
در هنگام تهیه این برد با دو نوع متفاوت از پین هدرهای افقی و عمودی مواجه می شوید که بسته به نوع رباتتان می توانید از هرکدام استفاده کنید.
حتی الامکان سعی کنید برد را به همراه کاور اصلی آن استفاده کنید.
در صورتی که کاور مشکی رنگ فلایت کنترل را باز می کنید حتما بر روی فشارسنج(بارومتر یا Barometric Sensor نام انگلیسی آن است) یک فوم قرار دهید و آن را با یک لایه دیگری که جهت حفاظت از نور می باشد به طور مناسب نصب کنید. معمولا علت خطاي فشار سنج به دو دليل است:
- جريان باد متلاطم و همچنين باد ملخ ها كه اصطلاحا WASH ناميده مي شود.
- نور مستقيم آفتاب
دلیل اینکار هم این است که علاوه بر اینکه فشار باد ناشی از ملخ ها بر روی فشار سنج اثر می گذارد نور آفتاب هم باعث تغییراتی در داده های ارسالی از فشارسنج می شود. یعنی اینکه فشارسنج در معرض نور مستقیم آفتاب و سایه دو داده متفاوت را نشان می دهد که باید این موضوع مدنظر قرار گیرد و از پوشش مناسب استفاده شود.
در هنگام نصب فلايت كنترل هم حتما از ضربه گير طراحي شده مخصوص اين برد كه با فيبركربن است استفاده كنيد و يا اگر نداريد از يك فوم به عنوان ضربه گير استفاده كنيد تا هم لرزش هاي اضافه را بگيريد و هم در صورتي كه از قطب نماي داخلي بعضي ورژن ها استفاده مي كنيد تداخل و نويز كمتري داشته باشد. دقت كنيد كه در زير برد از بكار بردن جنس هاي آهني همانند اسپيسر آهني و…خودداري كنيد و حتي الامكان از اسپيسر پلاستيكي و… استفاده كنيد.
نكته مهم: محل نصب فلايت كنترل را حتما در نزديكي مركز جرم قرار دهيد زيرا نوسان و لرزش در اين نقطه كمتر است. براي اطلاعات بيشتر در مورد مركز جرم به لينك زير مراجعه كنيد.
برای خرید فلایت کنترل APM می توانید از فروشگاههای زیر تهیه کنید. دقت کنید که این برد دارای نمونه های چینی و نمونه های اصلی است. نمونه ی چینی هم از کیفیت مناسبی برخوردار است و می توانید استفاده کنید. هر چند کیفیت به مراتب کمتری نسبت به برد اصلی دارند. لینک زیر صرفا در جهت کمک به کاربران می باشد و جنبه تبلیغاتی ندارد.
این جلسه هم به پایان رسید. برای اطلاع از جلساتی که در آینده بر روی سایت قرار داده می شود و همچنین مطالبی که در کانال ما منتشر می شود می توانید ما را در محیط های مجازی دنبال کنید:
72 دیدگاه
به گفتگوی ما بپیوندید و دیدگاه خود را با ما در میان بگذارید.
نقشه مداریش هم توی نت پیدا میشه؟
سلام و احترام
خير. نقشه مداري آن در دسترس نيست.
سلام ایا در اتوپایلوتهای اپن سورس براساس ارتفاع سنجی بارومتری یا gpsفلایت کنترل می تواندکنتاکت خروجی بده ؟{باز وبسته کردن یک رله}وایا در هر ارتفاعی امکانش وجودداردمثلا فلایت کنترل APM2.8Pro
سلام و احترام
در فلايت كنترل هايى همانند APM و پيكس هاوك تعدادى از پين هاى خروجى را با نام Relay يا رله مى شناسند كه منظور اين است كه اين پايه ها مى توانند به عنوان يك خروجى ديجيتال بر روى فلايت كنترل تعريف شوند و بين ولتاژهاى 0 تا 5 ولت عمل كنند. حال بسته به نياز شما مى توانيد از اين خروجى به عنوان يك ابزار مناسب استفاده كنيد.
موفق باشيد
سلام آقای قاسمی. وقت تون بخیر
در رابطه با سنسور سونار سوال داشتم
زمانیکه کوادکوپتر رو در مد land میخوام فرود بیارم، نزدیکی سطح زمین که میرسه معمولا دچار عدم تشخیص فاصله درست با سطح زمین میشه(شاید بخاطر جریانات هوا یا وزش باد) و معمولا به زمین میخوره و درست فرود نمیاد همچنین بعضی وقتها که نزدیکی سطح زمین درحال پرواز هستم ممکنه کواد ناگهان ارتفاع خودشو از دست بده و اگه دیر بجنبم به زمین میخوره. این موارد رو درحالی عرض کردم که هنوز gps نگذاشتم. ایا با گذاشتن gps این مشکلاها حل میشه و کواد میتونه به طور دقیق تری ارتفاعشو تشخیص بده یا اینکه gps فقط موقعیت رو تشخیص میده و برای مواردی که عرض شد باید سنسور سونار نصب کنم ؟؟
ضمنا تنها نمونه ای از این سنسور که به apm میخوره این مدل هستش ؟؟؟ http://shop.aftabrayaneh.com/Sensors/Distance/Cjmcu_891_Ultrasonic_Distance_APM__AFTAB.html
اگر شما مدل دیگری سراغ دارید یا نظری دارید در رابطه با این سنسور ممنون میشم بفرمایید. با سپاس
سلام جناب فتوت
اطلاعاتي كه در مورد سونار گفتيد و اينكه دقت ندارند را بر چه اساسي بيان مي كنيد؟ ضمن اينكه علاوه بر سونار فشار سنج نيز وجود دارد و ارتفاع را تشخيص مي دهد. نمونه ديگري از سونار در فروشگاههاي داخلي جهت نصب بر روي كوادكوپتر فعلا همين مدل است ولي اينكه ميگوييد دقت ندارد از نظر من صحيح نيست.
درود خدمت شما وقت بخیر
ظاهرا من منظورمو بد منتقل کردم. ببینید من هنوز در حال حاضر اصلا سنسور سونار نصب نکردم و برای همین هم عرض کردم که زمانی کواد میخواد فرود بیاد فاصله رو بطور دقیق نمیتونه تشخیص بده و به زمین میخوره( مگر اینکه خودم هنگام فرود با دست بگیرمش). اما میخواستم ببینم اگر سونار نصب کنم این مشکلم رفع میشه؟
همچنین اگر کوادکوپتر به هر دلیل ارتفاعشو یکدفعه از دست بده ، در صورتیکه سونار زیرش نصب باشه به زمین نمیخوره؟
سلام جناب فتوت
نكته اول: اندازه گيرى فاصله در كوادكوپتر به سه طريق مى تواند صورت پذيرد:
1- استفاده از سنسور فشار
2- استفاده از GPS يا ديگر سنسورهاى ناوبرى
3- استفاده از سونار
در مورد روش هاى بالا بهترين روش همان آلتراسونيك مى باشد كه تقريبا در همه مواقع به درستى فاصله را تشخيص مى دهد زيرا همانطور كه از شرايط GPS و فشارسنج اطلاع داريد نمي توان در همه مواقع به آنها اعتماد كرد. دقت كنيد كه سونار هم نياز به كاليبراسيون دارد و در صورت انجام ندادن تنظيمات مربوطه دچار خطا مى شود. اين مورد را مى توانيد به صورت دستى و با اتصال پرنده به كامپيوتر و رويت كردن مقادير سونار به وسيله خط كش به دقت مورد بررسى قرار دهيد.
نكته دوم: در قسمتى از كامنت بيان نموديد كه اگر به هر دليلى پرنده مشكلى به هم زد آيا به زمين ميخورد؟ به زمين خورد يك بحث است و غيرفعال شدن موتورها و جلوگيرى از آسيب بحث ديگرى است كه همه آنها به ارتفاعى بستگى دارد كه شما در آن قرار داشته ايد. بحرحال سازندگان فلايت APM تمامى موارد ايمن را براى اين فلايت طرح ريزى كرده اند و چنانچه به هر دليلى پرنده شما دچار سقوط شود و يا اتفاقى بيفتد كه خارج از كنترل شما باشد موتورها خودبخود غيرفعال مي شوند و پرنده خاموش مى شود كه اين وضعيت را با نام FS_CRASH_CHECK مى شناسيم. در صورتى كه ما اين پارامتر را در تنظيمات فلايت بر روى عدد 1 تنظيم كرده باشيم عمل مى كند و در صورتى كه بر روى عدد 0 تنظيم شده باشد غيرفعال مى شود و عمل نمى كند.
نکته سوم: در ارتفاعات معمولا بیشتر از 10 متر سونار عملا بدون کاربرد است و نمی توانید از آن استفاده کنید. چنانچه به دیتاشیت مربوط به سونارها مراجعه کنید مشاهده می کنید که همه آنها زیر 10 متر را پشتیبانی می کنند و برای اندازه گیری ارتفاعات بالاتر باید از فشارسنج و یا GPS استفاده کنید. که البته در ارتفاعات بالاتر از 10 متر به دلیل اینکه مسلما زیر یک سقف نیست GPS هم به درستی کارش را انجام می دهد.
موفق باشيد