مدتی هست که بیشتر مشغول انجام پایان نامه دانشگاه هستم و یک بخش از پایان نامه در مورد کنترل خودکار موقعیت کوادروتور تو محیط بسته (داخل ساختمان) هست. یکم درمورد روش این کار توضیح میدم.

مهمترین بخش کنترل موقعیت کوادروتور ، اندازه گیری موقعیت هست! از اونجایی که GPS تو محیط داخل ساختمان آنتن نمیده و اگر هم بده خطای بیش از 2-3 متر داره، به هیچ عنوان قابل استفاده نیست.

برای همین من از پردازش تصویر برای اندازه گیری حرکت کوادروتور (سرعت) استفاده کردم. این روش اندازه گیری سرعت از تصویر که اصطلاحا شارنوری (Optical Flow) گفته میشه خودش چندین متد مختلف داره. من از متد LK که یک روش مبتنی بر ویژگی تصویر (Feature based) هست استفاده کردم.

برای اینکه حرکت کوادروتور کاملا خودمختار یا اصطلاحا Fully Autonomous باشه لازمه که پردازش تصویر هم روی کواد روتور انجام بشه. به عبارت دیگه همونطور که از اسم "خودمختار" مشخصه، نباید به تجهیزات خارج از ربات وابستگی داشته باشه.

 مثلا تو ویدئو های هیجان انگیزی که از آزمایشگاهای دانشگاه زوریخ و پنسیلوانیا در مورد پرواز عجیب غریب کوادروتور تو اینترنت هست و احتمالا دیده اید، اندازه گیری موقعیت ربات (یکی از مهمترین بخشها) توسط دوربین های نصب شده در بالای اتاق انجام میشه و خود کوادروتور به تنهایی یک سیستم خودمختار نیست! بلکه کوادروتور + دوربینهای مخصوص اتاق + سوپر کامپیوتر اونجا، روی هم میشن یک سیستم خودمختار. به عبارت دیگه، اگه همون کوادروتور را ببرن خارج اون اتاق، حتی نمی تونه سرجای خودش بایسته! لبخند

خلاصه اینکه من برای خودمختار کردن ربات، یک پردازنده نسبتا قوی ARM دو هسته ای با کلاک 1.6 گیگا هرتز روی خود کوادروتور سوار کردم و پردازش رو روی همون انجام میدم. تو لینک زیر در مورد جزییاتش صحبت کردم:

 پردازش تصویر روی مارس بورد

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

تا اونجایی که من اطلاع دارم توی ایران تا این لحظه کسی موفق به انجام این کار نشده بوده!نیشخند خب برای همین منم کلی ذوق زده شدم و یه ویدئو از تست های اولیه گرفتم که تو اینجا می تونید ببینیدش:

لینک ویدئو

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

بخش دیگه ای که انجام شده (ولی تو ویدئو بالایی استفاده نشده) کنترل ارتفاع بر اساس سنسور سونار هست. در مورد روشهای مختلف این کار هم کمی تو تاپیک زیر صحبت شده (یکم قدیمیه) :

 خودکار سازی کوادروتور

 

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

*ویدئو جدید تر