✈️ مباحث تکنولوژی پرواز، مرجع معماری فلایت کنترل ها ✈️

✈️ مباحث تکنولوژی پرواز، مرجع معماری فلایت کنترل ها ✈️

(توضیحات در حوزه فناوری پرواز در حوزه فلایت کنترل شامل مباحث مرجع معماری، سخت افزار و نرم افزار، بینایی ماشین)

13. فیلتر کالمن EKF2

  • 10:55 1405/2/20
  • تکنولوژی پرواز

فیلتر EKF2 مخفف Extended Kalman Filter (فیلتر کالمن توسعه‌یافته) نسخه دوم (یا یکی از پیاده‌سازی‌های خاص) آن است. همانطور که در توضیحات فیلتر کالمن استاندارد گفتیم، این فیلتر برای سیستم‌هایی که مدل دینامیکی و/یا مدل اندازه‌گیری آن‌ها خطی است، بهترین عملکرد را دارد.

اما در دنیای واقعی، بسیاری از سیستم‌ها غیرخطی هستند. برای مثال:

  • حرکت هواپیما یا موشک: معادلات دینامیکی آن‌ها معمولاً غیرخطی هستند (به دلیل عواملی مانند مقاومت هوا، نیروی برا، و تغییرات دینامیکی).
  • سیستم‌های رباتیک: ارتباط بین سرعت مفاصل و موقعیت نهایی ربات اغلب غیرخطی است.
  • سیستم‌های سنسوری: برخی سنسورها (مثل آن‌هایی که از زاویه یا مسافت استفاده می‌کنند) ممکن است روابط غیرخطی با حالت سیستم داشته باشند.

اینجاست که EKF وارد عمل می‌شود.

EKF چیست و چگونه کار می‌کند؟

EKF یک راه‌حل هوشمندانه برای اعمال فیلتر کالمن بر روی سیستم‌های غیرخطی است. ایدهٔ اصلی آن به این صورت است:

  1. تقریب خطی (Linearization): EKF فرض می‌کند که در هر لحظهٔ زمانی، رفتار غیرخطی سیستم را می‌توان با یک تقریب خطی در اطراف نقطهٔ عملیاتی فعلی (یعنی تخمین حالت فعلی) مدل کرد.
  2. استفاده از مشتقات (Jacobians): برای به دست آوردن این تقریب خطی، EKF از مشتقات جزئی (Partial Derivatives) توابع غیرخطی سیستم استفاده می‌کند. این مشتقات در قالب ماتریس‌هایی به نام ماتریس ژاکوبین (Jacobian Matrix) بیان می‌شوند.
  • ماتریس ژاکوبین، نرخ تغییرات حالت نسبت به متغیرهای حالت (و یا ورودی‌ها) را در یک نقطهٔ خاص نشان می‌دهد.
  1. اعمال فرمول‌های کالمن: پس از خطی‌سازی سیستم در هر مرحله (با استفاده از ماتریس‌های ژاکوبین)، EKF از همان فرمول‌های ریاضی فیلتر کالمن استاندارد برای مراحل پیش‌بینی و به‌روزرسانی استفاده می‌کند. اما به جای ماتریس‌های ثابت Ak​ و Hk​، از ماتریس‌های ژاکوبینی استفاده می‌کند که در هر مرحله محاسبه می‌شوند.

مراحل EKF (به صورت مفهومی):

  • مرحله پیش‌بینی:
  • سیستم غیرخطی را در اطراف حالت پیش‌بینی شدهٔ قبلی، با استفاده از ماتریس ژاکوبین، به صورت خطی تقریب می‌زنند.
  • سپس با استفاده از این ماتریس ژاکوبین (به جای Ak​) و فرمول پیش‌بینی کالمن، حالت آینده را پیش‌بینی می‌کنند.
  • عدم قطعیت نیز با استفاده از این ژاکوبین به‌روز می‌شود.
  • مرحله به‌روزرسانی:
  • وقتی اندازه‌گیری جدید می‌رسد، دوباره سیستم را در نقطهٔ حالت پیش‌بینی شده، با استفاده از ماتریس ژاکوبین اندازه‌گیری (به جای Hk​)، خطی می‌کنند.
  • سپس از فرمول‌های کالمن برای محاسبهٔ بهره کالمن و به‌روزرسانی حالت و عدم قطعیت استفاده می‌کنند.

مزایا و معایب EKF:

  • مزایا:
  • امکان اعمال فیلتر کالمن بر روی سیستم‌های غیرخطی را فراهم می‌کند.
  • نسبت به الگوریتم‌های پیچیده‌تر مانند فیلتر ذرات (Particle Filter)، محاسبات کمتری نیاز دارد (به خصوص برای سیستم‌های با ابعاد بالا).
  • معایب:
  • تقریب: چون EKF از خطی‌سازی استفاده می‌کند، یک تقریب است. این تقریب ممکن است در سیستم‌های با درجهٔ غیرخطی بودن بالا، باعث کاهش دقت و حتی ناپایداری شود.
  • محاسبهٔ ژاکوبین: محاسبهٔ ماتریس‌های ژاکوبین و مشتقات جزئی می‌تواند پیچیده و مستعد خطا باشد.
  • حساسیت به نقطهٔ عملیاتی: خطی‌سازی در اطراف یک نقطه انجام می‌شود، بنابراین اگر سیستم از آن نقطه دور شود، دقت EKF کاهش می‌یابد.

EKF2 چیست؟

عبارت “EKF2” معمولاً به یک پیاده‌سازی خاص از EKF اشاره دارد. ممکن است در نرم‌افزارهای خاص (مانند سیستم‌عامل پرواز هواپیماهای بدون سرنشین یا سیستم‌های ناوبری) برای بهبودهایی نسبت به پیاده‌سازی اولیهٔ EKF طراحی شده باشد. این بهبودها می‌تواند شامل موارد زیر باشد:

  • بهینه‌سازی محاسباتی: برای سرعت بخشیدن به پردازش.
  • مدیریت بهتر نویز: استفاده از مدل‌های نویز پیچیده‌تر.
  • روش‌های عددی بهبود یافته: برای محاسبهٔ مشتقات یا حل معادلات.
  • ادغام با فیلترهای دیگر: گاهی اوقات EKF بخشی از یک سیستم بزرگتر است که با الگوریتم‌های دیگر ترکیب می‌شود.

به طور خلاصه، EKF یک نسخهٔ تعمیم‌یافته از فیلتر کالمن است که با خطی‌سازی سیستم‌های غیرخطی در هر مرحله، امکان استفاده از قدرت تخمین کالمن را برای طیف وسیع‌تری از کاربردهای عملی فراهم می‌کند، هرچند که با چالش دقت ناشی از تقریب همراه است. EKF2 صرفاً نام یک نسخه یا پیاده‌سازی خاص از این الگوریتم است.