لینک کوتاه مطلب : https://hsgar.com/?p=6595

آیا فیلتر کالمن فقط یک فیلتر پایین گذر است؟

یادداشت های سریع: خیر، اینها سیستم هستند قرار نیست فقط “وبلاگ فیلتر کالمن” باشد. بله، قصد دارم سری تورم را ادامه دهم. بله، من همچنان در حال برنامه ریزی برای نوشتن یک سری مقدماتی در مورد تئوری کنترل به طور گسترده تر هستم. مطالب زیادی برای عبور وجود دارد! مثل همیشه از نظرات شما استقبال می کنم.

رودولف کالمان (چپ)، و نوربرت وینر (راست)، به پیشبرد پردازش سیگنال قرن بیستم و فعال کردن مأموریت‌های آپولو کمک کردند.

از جمله سوالات متداول و متداول بدون پاسخ در مورد فیلتر کالمن موارد زیر است:

  • آیا فیلتر کالمن اساساً نوعی فیلتر فرکانس مانند فیلتر پایین گذر است؟

  • آیا کالمن و فیلترهای پایین گذر به یک هدف عمل می کنند؟

  • کدومشون… بهتر?

آه، جنگ بی پایان بین دامنه زمانی و دامنه فرکانس دیدگاه ها خوب، بیایید چند پاسخ بگیریم!

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

برای خلاصه کردن سریع: فیلتر کالمن یک الگوریتم بسیار سریع و بسیار مؤثر است که می توانید برای تخمین مقدار واقعی برخی از سیگنال ها در حضور نویز از آن استفاده کنید. (از جمله کاربردهای دیگر).

اما برای هر کسی که تجربه پردازش سیگنال را دارد، این به نظر بلافاصله کار یک فیلتر انتخابی فرکانس مانند پایین گذار، بالا گذر، یا باند گذر فیلتر در واقع، تقریباً اولین کاری که هر کسی متوجه می‌شود که داده‌هایش بیش از حد نویز است این است که به سراغ نوعی فیلتر پایین‌گذر بروند تا کمی آن را تمیز کند.

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

پس آیا فیلتر کالمن نوعی فیلتر فرکانس است؟

این سوال در واقع کمی پیچیده تر از آن چیزی است که به نظر می رسد، زیرا وجود ندارد یکی فیلتر کالمن فیلتر کالمن واقعا یک دستور آشپزی برای ساخت فیلترهای پیش‌بینی خطی بهینه، اما ویژگی‌های واقعی فیلتر حاصل به دینامیک، متغیرهای حالت و حسگرهایی که آن را تنظیم کرده‌اید بستگی دارد و این وابستگی به صورت عددی در ماتریس‌های مختلفی که فیلتر کالمن خاص شما است منعکس می‌شود. ساخته شده از.

و همچنین هیچ فیلتر فرکانسی وجود ندارد.

یک فیلتر پایین گذر ممکن است به خوبی نویز یک سنسور را صاف کند، اما اگر می‌خواهید در یک ایستگاه رادیویی FM تنظیم کنید، انتخاب درستی نخواهد بود – شما به یک فیلتر باند گذر با محوریت فرکانس آن ایستگاه نیاز دارید. از سوی دیگر، اگر می‌خواهید روندها را حذف کنید تا به چرخه‌های کوتاه‌مدت در بازار مسکن نگاه کنید، به یک فیلتر بالاگذر نیاز دارید.

دیدگاه دامنه فرکانس نشان می دهد که ما بر اساس آن فکر می کنیم علامت و سر و صدا بخش های مختلفی از طیف فرکانس را اشغال می کنند و گاهی اوقات با یکدیگر رقابت می کنند. فیلتر فرکانس مناسب شما بستگی به این دارد که چه چیزی برای شما سیگنال و چه چیزی به عنوان نویز محسوب می شود.

یک فیلتر پایین گذر روندهای تدریجی را ثبت می کند، در حالی که فیلتر بالا گذر آنها را حذف می کند.

جای تعجب نیست که با توجه به اطلاعات قبلی در مورد چگالی طیفی سیگنال و نویز، دستورالعملی برای ساخت فیلترهای دامنه فرکانس بهینه نیز وجود دارد. (به این می گویند فیلتر وینر، پس از “پدر سایبرنتیک” نوربرت وینر).

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

خوب؟ آیا آنها یکسان هستند؟ از توضیح این که چرا اینقدر پیچیده است دست بردارید و فقط به سوال پاسخ دهید!

خوب خوب.

بیایید به یک مثال نگاه کنیم: یک سنسور دما که یک فنجان آب را که در معرض عناصر قرار دارد اندازه می‌گیرد. (بگذارید بگوییم این بخشی از یک ایستگاه هواشناسی از راه دور است). دمای آب تی به‌تدریج بالا و پایین می‌رود، به‌طور غیرقابل پیش‌بینی تحت‌تاثیر محیط اطراف به گونه‌ای که ما نمی‌توانیم آن را پیش‌بینی کنیم، زیرا ما محیط اطراف را اندازه‌گیری نمی‌کنیم – فقط آب. در فاصله زمانی بین یک اندازه گیری Tₖ و در مرحله بعد، دمای آب تا حدودی میانگین مربع Q کاهش می یابد، اگرچه ما نمی توانیم در هر مرحله زمانی جداگانه پیش بینی کنیم که آیا این رانش بزرگ، کوچک، یا حتی بالا یا پایین خواهد بود.

علاوه بر تغییرات واقعی دمای آب، سنسور نویز اندازه گیری خود را با واریانس اضافه می کند آر. و برای ساده نگه داشتن همه چیز، همه آن نویز سفید گاوسی است.

فیلتر کالمن مربوط به این سیستم دارای ساختار 1 بعدی بسیار ساده است، بنابراین ما به هیچ ماتریسی نیاز نداریم:

  • مرحله پیش بینی:

  • مرحله به روز رسانی:

    • Kₖ = ͞σ²ₖ/( ͞σ²ₖ + آر) – کالمن اطمینان اندازه گیری آهنگ ها را به دست می آورد

    • μₖ = ͞μₖ + Kₖ(Tₖ − ͞μₖ) – میانگین باور با شگفتی تغییر می کند داده های جدید

    • σ²ₖ = (1- Kₖ) ͞σ²ₖ – عدم قطعیت با داده های جدید کاهش می یابد

ممکن است بدون توجه به اندازه گیری ها متوجه این موضوع شوید Tₖ در واقع، واریانس هستند σ² با هر به‌روزرسانی دقیقاً به همین شکل تکامل می‌یابد: میانگین به سمت پایین آر، و سپس رشد کنید س; میانگین پایین به سمت آر، سپس رشد کنید س از نو؛ پس از اینکه فیلتر برای مدتی کار کرد، واریانس – و در نتیجه بهره کالمن – به یک حالت ثابت نزدیک می شود:

منظور من از “مدتی” چیست؟ بگذار نشانت دهم:

در این مرحله، رابطه بازگشتی برای میانگین از یک به روز رسانی به بعدی به یک فیلتر خطی با ضرایب ثابت تبدیل می شود:

همانطور که اتفاق می افتد، این است دقیقا یک فیلتر پایین گذر درجه یک با یک قطب در z = 1 – Kₛₛ. ما می‌توانیم این را روی نمودار Bode رسم کنیم، که نشان می‌دهد چگونه یک سیستم سیگنال‌های فرکانس‌های مختلف را تبدیل می‌کند. (آیا تا به حال طرح بوده فیلتر کالمن را دیده اید؟)

بله، این یک فیلتر پایین گذر است

و در اینجا این است که هر دو فیلتر در عمل چگونه به نظر می رسند. خروجی های فیلتر کالمن و وینر تا حدی با هم همپوشانی دارند که تشخیص آنها بسیار دشوار است. (من به هر دوی آنها حدس اولیه زدم که 5 درجه سانتیگراد خاموش است).

  • به یاد داشته باشید، فیلتر کردن داده‌ها فقط به معنای صاف کردن اندازه‌گیری‌ها نیست تا آنها را برای رئیس‌تان زیبا جلوه دهد. یک فیلتر خوب به شما این امکان را می دهد بهترین برآورد از حقیقت از اندازه گیری هایی که توسط نویز خراب شده اند.

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

و در واقع، به طور کلی معلوم می شود که همانطور که فیلتر کالمن اجرا می شود، به تدریج به فیلتر وینر بهینه برای سیستمی که مدل می کند تبدیل می شود.

کد منبع در gitlab موجود است اگر می خواهید با این بازی کنید

در واقع، رودولف کالمان در مقاله معروف خود در سال 1960، فیلتر خود را تا حدی به عنوان تکنیکی برای ساختن فیلتر بهینه وینر و در آن مقاله، همان مشاهدات را می کند:

ایکس*(تی + 1|تی) = Φ*(تی + 1; تی)ایکس*(تی|تی – 1) + *(تی)y(تی) (21)

سیستم دینامیکی (21) به طور کلی غیر ساکن است. این به دلیل دو چیز است: (1) وابستگی زمانی Φ(t + 1; t) و م

لینک منبع

ارسال یک پاسخ

آدرس ایمیل شما منتشر نخواهد شد.