راهنمای استفاده از فیلتر دیجیتال در متلب/فیلتر دیجیتال
باز کردن ابزارها | فیلتر دیجیتال | ویژگیها |
راهنمای استفاده از فیلتر دیجیتال در متلب |
مهمترین نکته در فیلترهای دیجیتال پاسخ فیلتر است که با توجه به آن؛ فیلتر میتواند پایین گذر، بالاگذر، میانگذر یا میان نگذر باشد.
برای ایجاد فیلترهای مختلف باید ضرایب حاصل از Z آنها را در قسمت ضرایب فیلتر دیجیتال تنظیم کرد تا یک فیلتر مناسب پدید آید.
با توجه به اینکه پاسخ فیلتر بر حسب دسیبل بیان شده است، در جدول زیر انرژی و بهره سیگنال متناسب با دسیبل ذکر شده است:
برای به دست آوردن فرکانس سیگنال ورودی از روی ضرایب آن کافی است به روش زیر عمل شود:
و برای به دست آوردن خواهیم داشت:
فیلتر پایین گذر
ویرایشدر این قسمت با تنظیم ضرایب صورت و مخرج فیلتر، یک فیلتر پایینگذر میسازیم.
شکل صفر و قطبهای آن به صورت زیر خواهد بود:
ضرایب سینوسیهای ورودی در اینجا به گونهای تنظیم شدهاند که فیلتر یکی از آنها را عبور دهد و دیگری را ندهد.
که شکل مدار و خروجیهای آن به صورت زیر خواهند بود:
با توجه به اینکه فیلتر پایینگذر است سیگنال با فرکانس پایین را عبور داده و سیگنال با فرکانس بالا را عبور نمیدهد. با توجه به شکل فیلتر مشاهده میشود که سیگنال با فرکانس بالا را تضعیف و سیگنال با فرکانس پایین را با ضریب بزرگی تقویت میکند.
در زیر شکل بزرگ شده نشان داده شده است.
اجرای فیلتر پایین گذر در COMMAND WINDOW
ویرایشمثال مشابهی برای فیلتر پایین گذر با استفاده از دستور filter نیز انجام شده که در زیر به صورت مختصر آمده است:
استفاده از دستور فیلتر به این صورت است:
Filter (a,b,s) که a, b, s به ترتیب ضرایب صورت و مخرج فیلتر و سیگنال مورد نظر هستند.
در این مثال دو سیگنال با فرکانس بالا و پایین تعریف شده سپس آنها را با هم جمع کردیم تا یک سیگنال ترکیبی متشکل از دو سیگنال اولیه به دست آوریم. سپس سیگنال حاصله فیلتر داده شده و در انتها با توجه به اینکه سیگنال پایین گذر است، سیگنال با فرکانس بالا را حذف میکند.
در زیر تصاویر دستورات و اشکال خروجی آورده شده است و فایل متلب دستورات نیز ضمیمه شدهاند.
در مثال زیر فیلتر شبیه یک فیلتر پایینگذر است ولی با توجه به اینکه در 0 dB هم فیلتر سیگنال ورودی را عبور میدهد، پس در سیگنال خروجی هیچ تضعیفی نخواهیم داشت و تنها تغییر آن نسبت به سیگنال ورودی تقویت سیگنال فرکانس پایین خواهد بود:
فیلتر بالاگذر
ویرایشاین بار نیز مانند دفعه قبل ضرایب فیلتر را به گونهای تنظیم میکنیم تا یک فیلتر بالاگذر پدید آید.
ضرایب سیگنالهای ورودی و فیلتر دیجیتال به صورت زیر است:
که با توجه به آن شکل صفر و قطب فیلتر و پاسخ آن به صورت زیر خواهد شد:
مدار در این قسمت به گونهای طراحی شده است که دو سیگنال، یکی با فرکانس بالا و دیگری با فرکانس پایین را بگیرد و با یکدیگر ترکیب کند. سپس حاصل را به فیلتر میدهد و با توجه به اینکه فیلتر بالاگذر است و سیگنال با فرکانس بالا را تقویت و سیگنال با فرکانس پایین را تضعیف میکند، شکل مدار و خروجی آن به صورت زیر خواهد بود:
در مثال زیر فقط یک سیگنال به عنوان ورودی اعمال شده است که با توجه به ضرایب موج سینوسی ورودی میتوان فرکانس آن را محاسبه کرد:
با دقت در پاسخ فیلتر میتوان دید که فرکانس 100mHz در قسمتی قرار دارد که magnitude فیلتر اندکی کمتر از ۱۰^-۱۲ است که با توجه به جدول تقریبا اندازه سیگنال ۴ برابر تضعیف میشود (در ۲۵/۰ ضرب میشود).
به عنوان یک مثال دیگر این بار ضرایب فیلتر را به صورت زیر تغییر میدهیم:
این فیلتر با توجه به اینکه شیب بیشتری دارد فیلتر مناسبتری است.
فیلتر بالاگذر با استفاده از ضرایب قطبها
ویرایشدر حالت قبلی فیلتر را با تنظیم صفرها و قطبها ایجاد کرده بودیم ولی در مثال زیر فیلتر تنها با ضرایب قطبها (ریشههای مخرج) ایجاد شده است.
همانطور که در شکل ملاحظه میشود فیلتر فقط فرکانسهای بالا را عبور داده است.
توجه شود که چون فرکانس سیگنالی که به عنوان سیگنال فرکانس پایین انتخاب شده در مقایسه با سیگنال دوم بسیار کمتر است شکل موج حاصل جمع به صورت صعودی است.
فیلتر میاننگذر
ویرایشاین نوع فیلتر تمامی فرکانسها بجز یک باند در میان آن را عبور میدهد.
در اینجا هم مانند قسمتهای قبل با استفاده از ضرایب مناسب در قسمت پارامترهای فیلتر دیجیتال، یک فیلتر میانگذر ایجاد میکنیم و سپس با اعمال چند ورودی آن را آزمایش میکنیم.
در زیر چند نمونه از این فیلتر که با ضرایب مختلف ساخته شده است دیده میشود:
ار بخواهیم فرکانس قطع 3dB را مورد توجه قرار دهیم با توجه به نمودار شکل بالا، که پاسخ فرکانسی فیلتر دیجیتال را نشان میدهد، میتوان نوشت:
و
یعنی فیلتر، تمام فرکانسها بجز فرکانسهای بین این دو را عبور میدهد.
و
ضرایب موج سینوسی ورودی به صورت رو به رو است:
Amplitude = ۲
Bias = ۰
Sample per period = ۱۰۰۰
Number of set samples = ۰
Sample time = ۰٫۰۰۱
پس با توجه به فرمول فرکانس آن را اینچنین میتوان محاسبه کرد:
در این فرکانس پاسخ فیلتر تقریبا 7dB است که با توجه به جدول باید سیگنال ورودی را تقریبا ۵/۲ برابر بزرگ کند.
این موضوع به همراه شکل بلوکی در زیر نشان داده شدهاند:
حالا اگر ضرایب ورودی را به صورت زیر تغییر دهیم خواهیم داشت:
Sample per period = ۵
Sample time = ۰٫۰۰۱
که در این فرکانس پاسخ فیلتر تقریبا -1dB است. پس فیلتر دامنه سیگنال ورودی را در ۰٫۸۹ ضرب میکند. این امر در شکل زیر که خروجی را به ازای ضرایب جدید سینوسی نشان میدهد به خوبی هویدا است.
این بار ضرایب موج ورودی را به صورت زیر تغییر میدهیم:
Sample per period = ۴
Sample time = ۰٫۰۰۱
پس:
و خروجی به شکل زیر خواهد شد
پس با تقریب خوبی میتوان گفت فیلتر این فرکانس را اصلا عبور نمیدهد.
این بار ضرایب ورودی را به این صورت تغییر میدهیم تا فرکانس سیگنال در محدوده بعد از فرکانس قطع قرار بگیرد که فیلتر عبور دهد:
Sample per period = ۲
Sample time = ۰٫۰۰۱
با توجه به فرکانس ورودی و پاسخ فیلتر انتظار میرود که فیلتر سیگنال را عبور دهد و همچنین تقویت کند که این امر رخ داده است:
فیلتر میانگذر
ویرایشاین نوع فیلتر همانطور که از اسم آن برمیآید بجز فرکانسهای بین دو فرکانس خاص، هیچ فرکانسی را عبور نمیدهد.
این بار هم با تنظیم ضرایب یک فیلتر میانگذر میسازیم. به طور مثال:
Numerator coefficients = [۲ - ۲ - ۴۵]
Denominator coefficients = [-۳ -۱۲۱ - ۵۲۲]
یا
Numerator coefficients = [۲ - ۲ - ۴۸۳]
Denominator coefficients = [-۷ -۱۱۲۱۲۱]
در اینجا به بررسی یک فیلتر میانگذر به شکل زیر خواهیم پرداخت:
پارمترهای سینوسی را اینگونه قرار میدهیم:
ضرایب ورودی اول
Sample per period = ۲۰۰۰
Number of offset samples = ۰
Sample time = ۰٫۰۱
همان طور که انتظار داشتیم، فیلتر سیگنال را عبور نداد
و ضرایب ورودی دوم
Sample per period = 400
Number of offset samples = ۰
Sample time = ۰٫۰۱
به وضوح دیده میشود که فیلتر فرکانس 50 mHz را که کمتر از فرکانس پایین است را عبور نمیدهد (به شدت تضعیف کرده) ولی فرکانس ۲۵۰ را که بین فرکانس بالا و پایین فیلتر است را عبور میدهد.
اختلاف فاز، ناشی از مشخصه فاز فیلتر است که در شکل زیر نشان داده شده است.