• Slide 1

05شهریور

آموزش سنسور اپتیکال فالو PX4FLOW

در این مطلب نحوه تنظیم سنسور PX4FLOW (اپتیکال فالو) که میتواند به جای GPS مورد استفاده قرار گیرد، را بررسی خواهیم کرد.

مرور کلی

سنسور اپتیکال فالو (PX4FLOW) یک ماژول دوربین اختصاصی با رزولوشن بالا و یک ژیروسکوپ 3 محوره است که از بافت زمین و ویژگی‌های قابل مشاهده و همچنین یک فاصله سنج مجزا برای تعیین سرعت پرنده استفاده می‌کند. اگرچه این ماژول دارای یک سنسور Maxbotix LZ-EZ4 داخلی برای اندازه گیری ارتفاع است، اما از آنجایی‌که نمیتوان به آن اعتماد صد در صدی کرد مورد استفاده قرار نمیگیرد و در عوض از یک Range Finder مانند LightWare SF10b بر روی پرنده استفاده می‌شود.

به روز رسانی فریمور سنسور PX4Flow

فریمور PX4Flow باید قبل از اتصال به Pixhawk به روز رسانی شود. اینکار را می‌توانید با کنترل QGround یا Mission Planner انجام دهید. دستور العمل‌هایی که در اینجا آورده شده اند، تنها Mission Planner را پوشش می‌دهند.

هشدار

توجه داشته باشید که QGroundControl به صورت پیش فرض یک سیستم عامل ناسازگار برای PX4Flow است. اما Mission Planner به خوبی از این سازگاری برخوردار است و از تنظیمات پرنده بدون سرنشین شما پشتیبانی می‌کند.
  • فایل PX4Flow-KLT firmware را دانلود کرده و از حالت فشرده خارج کنید. (سورس کد این فایل را از اینجا دریافت کنید)
  • با استفاده از کابل میکرو USB سنسور PX4Flow را به کامپیوتر خود وصل کنید. در ویندوز خود باید اعلان اتصال به دستگاه PX4Flow را مشاهده کنید. اگر نیازی به دانلود ندارد، درایور ویندوز px4flow را از حالت فشرده خارج کرده و به صورت دستی نصب کنید چون ممکن است در مراحل بعدی نیاز به نصب دایورها داشته باشید.
  • راه اندازی اولیه (Initial Setup) را باز کنید و فریمور صفحه نمایش را نصب کنید؛ پورت COM را انتخاب کرده و روی لینک " Load custom firmware " کلیک کنید. px4flow-klt-06dec2014.px4 را که در مرحله اول دانلود کرده بودید انتخاب کنید. برای شروع آپلود باید یکبار اتصال سنسور به سیستم را قطع و وصل کنید.

blog-960605-px4flow-overview-01

فوکوس لنز


به طور معمول سنسورها بدون فوکوس عرضه می‌شوند.

  • سنسور اپتیکال فالو را با استفاده از یک کابل میکرو USB به کامپیوتر خود متصل کنید.
  • Mission Planner را باز کنید و پورت COM را انتخاب کرده و روی Connect بزنید.
  • Setup و سپس Optional Hardware و پس از آن PX4Flow screen را باز کنید.
  • دریچه لنز را بردارید و دوربین را روی یک جسم با کنتراست بالا در فاصله حدودا 3 متری تنظیم کنید. پیچ کوچک را بردارید تا فوکوس دوربین روی شی ثابت شود و تصویر واضحی ببینید.

blog-960605-px4flow-overview-02

اتصال به Pixhawk

blog-960605-px4flow-overview-03

سنسور باید به پورت 4-pin I2C روی Pixhawk متصل شود. در اغلب موارد باید از اسپلیتر I2C استفاده کنید تا امکان اشتراک گذاری همان پورت با دیگر دستگاه ها مانند (LED RBG خارجی و GPS/ماژول قطب نما) وجود داشته باشد.

نصب سنسور روی فریم

جهت نصب پیش فرض سنسور روی پرنده باید به گونه‌ای باشد که سنسور به سمت پایین و USB آن به سمت جلو پرنده باشد. در پشت سنسور باید یک محور چاپ شده ببینید، سنسور را به گونه‌ای نصب کنید که محور X باید به سمت جلو و محور Y باید به سمت راست باشد. پارامتر FLOW_ORIENT_YAW میتواند برای گزارش گیری از سایر جهت گیری ها مورد استفاده گیرد.
نصب سنسور جریان در جایی که هیچ ارتعاش زاویه ای نداشته باشید نکته‌ی بسیار مهمی است چون در غیر اینصورت میتواند موجب تاری تصویر شود.

نکته

توجه داشته باشید که جهت گیری پیش فرض نصب با چیزی که در ETH PX4FLOW wiki نشان داده شده است متفاوت است. اگر برد را همانگونه که در ETH PX4FLOW wiki نشان داده شده است نصب کنید، باید FLOW_ORIENT_YAW را روی -9000 تنظیم کنید .

فعال کردن سنسور

blog-960605-px4flow-overview-04

سنسور را  میتوانید با اتصال فلایت کنترل به Mission Planner فعال کنید؛ سپس از  Initial Setup | Optional Hardware | Optical Flow  گزینه checkbox را فعال کنید. به همین ترتیب باید از طریق لیست فول پارامتر،  پارامتر FLOW_ENABLE را روی "1" تنظیم کنید. سنسور پس از آغاز به کار فلایت کنترل Pixhawk مجددا ریبوت خواهد شد.

تست سنسور

سنسور را به پورت I2C فلایت کنترل وصل کنید، فلایت کنترل را به Mission Planner متصل کرده و سپس تب وضعیت Flight Data  روی صفحه نمایش را باز کنید. اگر سنسور به درستی کار کند باید مقادیر non-zero opt_m_x, opt_m_y و opt_qua را ببینید.

blog-960605-px4flow-overview-05

کالیبره کردن سنسور

  • به فلایت کنترل متصل شوید و از ورود به سیستم اطمینان حاصل کنید.
  • با کمک سطح بافت و روشنایی(نور طبیعی یا لامپ قوی) لوکیشن و موقعیت را پیدا کنید.
  • برای امنیت بیشتر در ابتدا ملخ ها را از روی پرنده بردارید.
  • پرنده بدون سرنشین خود رابا احتیاط روشن کنید.
  • پرنده را در جهت رول از -15 تا +15 درجه در زمانی حدودا یک ثانیه بچرخانید و سپس به حالت قبل برگردانید. این کار را برای 5 تا 10 بار مجددا انجام دهید. یک چشم خود را ببندید تا بتوانید اطمینان حاصل کنید که درحالی که شما چرخش را انجام می‌دهید ، سنسور بدون حرکت در برابر زمینه قرار گرفته است.
  • اینکار را مجددا برای جهت پیچ (pitch) پرنده تکرار کنید. اطلاعات flash log را دانلود کنید و داده‌های OF.flowX ، OF.bodyX و IMU.GyrX را پلات کنید. این نمودارها چیزی شبیه به تصویر زیر خواهد بود:

blog-960605-px4flow-overview-06

  • اگر OF.flowX بزرگتر یا کوچک‌تر از OF.bodyX باشد، میتواند با تغییر پارامتر FLOW_FXSCALER تنظیم شود.
  • اگر OF.bodyX با IMU.GyrX متناقض باشد، پارامتر FLOW_ORIENT_YAW احتمالا اشتباه تنظیم شده و یا سنسور شما جریانی به سمت پایین ندارد.
  • داده‌های OF.flowY ، OF.bodyYband ، IMU.GyrY را پلات کنید. که باید چیزی شبیه به تصویر زیر باشد:

blog-960605-px4flow-overview-07

  • اگر OF.flowY بزرگتر یا کوچکتر از OF.bodyY باشد، میتوانید با تغییر پارامتر FLOW_FYSCALER آن را تغییر دهید.
  • اگر OF.bodyY با IMU.GyrY متناقض باشد، پارامتر FLOW_ORIENT_YAW احتمالا اشتباه تنظیم شده و یا سنسور شما جریانی به سمت پایین ندارد.

بررسی محدوده (رنج) سنسور

پیام EKF5.meaRng را در flashlog از تست کالیبراسیون سنسور جریان‌تان بررسی کنید. موارد زیر چک کنید:

  • یک محدوده اندازه گیری پیوسته وجود داشته باشد.
  • اختلاف خروجی محدوده 10 سانتی متر از مقدار مورد نظر باشد . (به خاطر داشته باشید که محدوده اندازه گیری در هنگام استفاده از رول یا پیچ افزایش پیدا خواهد چون لیزر در حال اندازه‌گیری سطح شیبدار است.

بررسی Pre-Arm

برای اینکه بتوانید سیستم خود را بدون GPS راه اندازی کنید تا بتواند به درستی از سنسور اپتیکال فالو استفاده کند، باید همانطور که در شکل زیر نشان داده شده است، GPS arming check را خاموش کنید. تیک گزینه‌های All و GPS را بردارید و تمام گزینه‌های دیگر را تیک بزنید.

blog-960605-px4flow-overview-08

از آنجایی‌که سنسور اپتیکال فالو در زمان فعال بودن نیاز به اطلاعات دقیق سونار/رنج دارد، بررسی pre-arm هم باید صورت بپذیرد.
پرنده خود را با ارتفاع بیشتر از 50 سانتی متر و کمتر از 2 متر از روی زمین بلند کنید. اگر رنج فایندر (rangefinder) فاصله بیشتر از دو متر را اندازه گیری کند باید فلایت کنترلر را مجددا ریستارت کنید.

اولین پرواز

  • مقدار EKF_GPS_TYPE = 0 را تنظیم کنید. (ما نمیخواهیم که اپتیکال فالو در این مرحله از EKF استفاده کند)
  • یک تست پرواز کوتاه مدت در ارتفاع 50 سانتی متری تا 3 متری انجام دهید.
  • flash log را دانلود کنید و آن را در mission planner پلات کنید.
  • EKF5.meaRng باید با تغییر ارتفاع دستگاه مرتبط باشد.
  • OF.flowX و OF.flowY باید متفاوت باشند
  • OF.bodyX و OF.bodyY باید با IMU.GyrX و IMU.GyrY سازگار باشند.

دومین پرواز

هشدار

برای انجام این پرواز بهتر است 15 متر فضای باز با نور کافی در اختیار داشته باشید. اگر تخمین سرعت اپتیکال فالو بد باشد، هشدارهایی دریافت خواهید کرد و پرنده شما ممکن است در هوا زاویه بگیرد.
  • پارامتر EKF_GPS_TYPE را روی 3 تنظیم کنید تا EKF از GPS صرف نظر کرده و از سنسور اپتیکال فالو استفاده کند. 
  • اطمینان حاصل کنید که مد Loiter و یکی از دو مد AltHold و Stabilize روی ترانسمیتر شما در دسترس هستند.
  • پرنده را حدودا یک متر از زمین بلند کنید.
  • اگر پرنده شما شتاب بگیرد و حرکات پیچ و رول غیر منطقی از خود نشان دهد، باید فایل log را دانلود کرده و این موضوع را در انجمن تخصصی رها مطرح کنید تا دلیل آن ریشه یابی شود.

 

منبع : سایت ardupilot

Posted in آموزش

 

تمام حقوق برای شرکت رهنوردان هلیای آسمان محفوظ است
Copyright © 2015 RAHA