[b ، a] = کره (n ، wn) ضرایب عملکرد انتقال یک فیلتر دیجیتال دیجیتال با گذشت N TH-order را با فرکانس برش نرمال wn باز می گرداند.
[b ، a] = کره (n ، wn ، ftype) بسته به مقدار ftype و تعداد عناصر Wn ، فیلتر Lowpass ، HighPass ، Bandpass یا Bandstop Butterworth را طراحی می کند. طرح های Bandpass و BandStop حاصل از سفارش 2 n است.
توجه: به محدودیت های اطلاعات در مورد موضوعات عددی که بر شکل گیری عملکرد انتقال تأثیر می گذارد ، مراجعه کنید.
[Z ، P ، K] = کره (___) فیلتر Lowpass ، HighPass ، Bandpass یا Bandstop Digital Butterworth را طراحی می کند و صفرها ، قطب ها و افزایش خود را برمی گرداند. این نحو می تواند شامل هر یک از آرگومان های ورودی در نحو های قبلی باشد.
[A ، B ، C ، D] = کره (___) فیلتر Butterworth Digital Digital ، Highpass ، Bandpass یا Bandstop Digital Filter را طراحی می کند و ماتریس هایی را که نمایانگر فضای وضعیت آن است ، باز می گرداند.
[___] = کره (___ ، 's') فیلتر Lowpass ، Highpass ، Bandpass یا Bandstop Analog Butterworth را با فرکانس زاویه ای برش Wn طراحی می کند.
مثال ها
عملکرد انتقال Lowpass Butterworth
یک فیلتر Butterworth Lowpass را با فرکانس برش 300 هرتز طراحی کنید ، که برای داده های نمونه برداری شده در 1000 هرتز ، مطابق با 0 است. 6 π rad/نمونه. اندازه و پاسخ فاز آن را ترسیم کنید. از آن برای فیلتر کردن سیگنال تصادفی 1000 نمونه استفاده کنید.
fc = 300 ؛fs = 1000 ؛[b ، a] = کره (6 ، fc/(fs/2)) ؛زیرمجموعه Freqz (B ، A ، [] ، FS) (2،1،1) ylim ([-100 20])

datain = رندن (1000،1) ؛DataOut = فیلتر (B ، A ، DATAIN) ؛
فیلتر Bandstop Butterworth
یک فیلتر باند Butterworth با مرتبه ششم را با فرکانس های لبه عادی 0 طراحی کنید. 2 π و 0. 6 π rad/نمونه. اندازه و پاسخ فاز آن را ترسیم کنید. از آن برای فیلتر کردن داده های تصادفی استفاده کنید.
[b ، a] = کره (3 ، [0. 2 0. 6] ،'متوقف کردن') ؛freqz (ب ، الف)

datain = رندن (1000،1) ؛DataOut = فیلتر (B ، A ، DATAIN) ؛
فیلتر Highpass Butterworth
یک فیلتر Butterworth Highpass مرتبه 9 را طراحی کنید. فرکانس برش 300 هرتز را مشخص کنید ، که برای داده های نمونه برداری در 1000 هرتز ، با 0 مطابقت دارد. 6 π rad/نمونه. اندازه و پاسخ های فاز را ترسیم کنید. صفر ، قطب ها را تبدیل کنید و به بخش های مرتبه دوم برای استفاده توسط FVTool تبدیل کنید.
[Z ، P ، K] = کره (9،300/500 ،"بالا") ؛SOS = ZP2SOS (Z ، P ، K) ؛fvtool (SOS ،'تحلیل و بررسی','freq')

فیلتر Bandpass Butterworth
یک فیلتر باند Butterworth مرتبه 20 را با فرکانس برش کمتر 500 هرتز و فرکانس برش بالاتر 560 هرتز طراحی کنید. نرخ نمونه 1500 هرتز را مشخص کنید. از نمایندگی وضعیت فضای استفاده کنید. با استفاده از DesignFilt یک فیلتر یکسان طراحی کنید.
[A ، B ، C ، D] = کره (10 ، [500 560]/750) ؛D = DesignFilt ("Bandpassiir","Filterorder"، 20 ،. "Halfpowerfrequency1"، 500 ،"Halfpowerfrequency2"، 560 ،. 'نرخ نمونه'، 1500) ؛نمایندگی فضای دولتی را به بخش های مرتبه دوم تبدیل کنید. پاسخ های فرکانس را با استفاده از FVTool تجسم کنید.
SOS = SS2SOS (A ، B ، C ، D) ؛fvt = fvtool (sos ، d ،'fs'، 1500) ؛افسانه (fvt ،"کره","DesignFilt")

مقایسه فیلترهای آنالوگ IIR Lowpass
یک فیلتر Lowpass Lowpass آنالوگ 5 مرتبه را با فرکانس برش 2 گیگاهرتز طراحی کنید. برای تبدیل فرکانس به رادیان در ثانیه ، 2 π ضرب کنید. پاسخ فرکانس فیلتر را در 4096 نقطه محاسبه کنید.
n = 5 ؛fc = 2e9 ؛[ZB ، PB ، KB] = کره (n ، 2*pi*fc ،"S") ؛[BB ، AB] = ZP2TF (ZB ، PB ، KB) ؛[HB ، WB] = Freqs (BB ، AB ، 4096) ؛
فیلتر نوع C Chebyshev با همان فرکانس لبه و 3 دسی بل از Passband Ripple را طراحی کنید. پاسخ فرکانس آن را محاسبه کنید.
[Z1 ، P1 ، K1] = Cheby1 (n ، 3،2*pi*fc ،"S") ؛[B1 ، A1] = ZP2TF (Z1 ، P1 ، K1) ؛[H1 ، W1] = Freqs (B1 ، A1،4096) ؛
یک فیلتر Chebyshev Type II مرتبه 5 را با همان فرکانس لبه و 30 دسی بل از میرایی متوقف کنید. پاسخ فرکانس آن را محاسبه کنید.
[Z2 ، P2 ، K2] = Cheby2 (n ، 30،2*pi*fc ،"S") ؛[B2 ، A2] = ZP2TF (Z2 ، P2 ، K2) ؛[H2 ، W2] = Freqs (B2 ، A2،4096) ؛
یک فیلتر بیضوی 5 مرتبه با همان فرکانس لبه ، 3 دسی بل از پیست باند و 30 دسی بل از میرایی توقف را طراحی کنید. پاسخ فرکانس آن را محاسبه کنید.
[Ze ، PE ، KE] = بیضی (n ، 3،30،2*pi*fc ،"S") ؛[be ، ae] = zp2tf (ze ، pe ، ke) ؛[او ، ما] = freqs (be ، ae ، 4096) ؛
یک فیلتر بسل مرتبه 5 را با همان فرکانس لبه طراحی کنید. پاسخ فرکانس آن را محاسبه کنید.
[ZF ، Pf ، Kf] = Besself (n ، 2*pi*fc) ؛[BF ، AF] = ZP2TF (ZF ، PF ، KF) ؛[hf ، wf] = freqs (bf ، af ، 4096) ؛
میرایی را در دسی بل ها ترسیم کنید. فرکانس را در Gigahertz بیان کنید. فیلترها را مقایسه کنید.
طرح ([WB W1 W2 WE WF]/(2E9*PI) ،.MAG2DB (ABS ([[HB H1 H2 HE HF])))) محور ([0 5-45 5]) شبکه xlabel ("فرکانس (GHz)") ylabel ("میرایی (DB)") افسانه(["کره" "cheby1" "cheby2" "بیضی" "بسف"])
فیلترهای Butterworth و Chebyshev Type II دارای باند های مسطح و باند های انتقال گسترده ای هستند. فیلترهای Chebyshev Type I و Elliptic سریعتر از بین می روند اما دارای Ripple Passband هستند. ورودی فرکانس به تابع طراحی Chebyshev Type II ، شروع بند بند را به جای انتهای پاس باند تنظیم می کند. فیلتر بسل تقریباً تاخیر گروهی ثابت در امتداد گذرگاه دارد.
استدلال های ورودی
N - مقیاس صحیح سفارش فیلتر
سفارش فیلتر ، که به عنوان یک مقیاس صحیح مشخص شده است. برای طرح های BandPass و BandStop ، N نشان دهنده یک نیمی از ترتیب فیلتر است.
انواع داده ها: دو برابر
WN - SCALAR فرکانس برش |بردار دو عنصر
فرکانس برش ، به عنوان یک مقیاس یا یک بردار دو عنصر مشخص شده است. فرکانس برش فرکانس است که در آن پاسخ بزرگی از فیلتر 1 / √2 است.
- اگر WN مقیاس پذیر است ، سپس کره یک فیلتر Lowpass یا Highpass را با فرکانس قطع WN طراحی می کند. اگر WN بردار دو عنصر [W1 W2] باشد ، جایی که W1
- برای فیلترهای دیجیتال ، فرکانس های قطع باید بین 0 تا 1 قرار داشته باشد ، جایی که 1 با نرخ Nyquist مطابقت دارد - از میزان نمونه یا π Rad/Sample استفاده کنید. برای فیلترهای آنالوگ ، فرکانس های قطع باید در رادیان در ثانیه بیان شود و می تواند هر مقدار مثبت را به خود اختصاص دهد.
انواع داده ها: دو برابر
ftype - نوع فیلتر "پایین" |'Bandpass' |'High' |'متوقف کردن'
نوع فیلتر ، به عنوان یکی از موارد زیر مشخص شده است:
- "کم" یک فیلتر Lowpass را با فرکانس قطع WN مشخص می کند."کم" پیش فرض Scalar Wn است.
- "بالا" یک فیلتر Highpass با فرکانس قطع WN را مشخص می کند.
- اگر WN یک بردار دو عنصر باشد ، "Bandpass" فیلتر باند سفارش 2 N را مشخص می کند."Bandpass" پیش فرض است که WN دارای دو عنصر است.
- اگر WN یک بردار دو عنصر باشد ، "Stop" یک فیلتر باند سفارش 2 n را مشخص می کند.
استدلال های خروجی
ب ، A - ضرایب عملکرد بردارهای ردیف
ضرایب عملکرد انتقال فیلتر ، به عنوان بردارهای ردیف طول N + 1 برای فیلترهای Lowpass و Highpass و 2 N + 1 برای فیلترهای باند و باند باند بازگردانده می شود.
- برای فیلترهای دیجیتال ، عملکرد انتقال از نظر B و A بیان شده است
H (z) = b (z) a (z) = b (1) + b (2) z - 1 + ⋯ + b (n + 1) z - n a (1) + a (2) z - 1 +⋯ + a (n + 1) z - n.
H (s) = b (s) a (s) = b (1) s n + b (2) s n - 1 + ⋯ + b (n + 1) a (1) s n + a (2) s n - 1 +⋯ + a (n + 1).
انواع داده ها: دو برابر
Z ، P ، K - صفر ، قطب ها ، و بردارهای ستون به دست می آورند ، مقیاس
صفرها ، قطب ها و افزایش فیلتر ، به عنوان دو بردار ستون طول N (2 N برای طرح های باند و باند باند) و یک مقیاس بازگشت.
- برای فیلترهای دیجیتال ، عملکرد انتقال از نظر Z ، P و K به عنوان بیان می شود
H (z) = k (1 - z (1) z - 1) (1 - z (2) z - 1) ⋯ (1 - z (n) z - 1) (1 - p (1) z - 1) (1 - p (2) z - 1) ⋯ (1 - p (n) z - 1).
h (s) = k (s - z (1)) (s - z (2)) ⋯ (s - z (n)) (s - p (1)) (s - p (2))) ⋯ (s- P (n)).
انواع داده ها: دو برابر
A ، B ، C ، D-ماتریس های حالت-فضای فضایی
بازنمایی حالت فضا از فیلتر ، به عنوان ماتریس بازگشت. اگر m = n برای طرح های Lowpass و HighPass و M = 2 N برای فیلترهای باند و باند باند ، A M × M باشد ، B M × 1 ، C 1 × M و D 1 × 1 است.
- برای فیلترهای دیجیتالی ، ماتریس های فضای دولتی بردار حالت X ، ورودی U و خروجی Y را از طریق
x (k + 1) = a x (k) + b u (k) y (k) = c x (k) + d u (k). x ˙ = a x + b u y = c x + d u.
انواع داده ها: دو برابر
بیشتر در مورد
محدودیت ها
ناپایداری عددی نحو عملکرد انتقال
به طور کلی ، برای طراحی فیلترهای IIR از نحو [Z ، P ، K] استفاده کنید. برای تجزیه و تحلیل یا پیاده سازی فیلتر خود ، می توانید از خروجی [Z ، P ، K] با ZP2SOS استفاده کنید. اگر فیلتر را با استفاده از نحو [B ، A] طراحی کنید ، ممکن است با مشکلات عددی روبرو شوید. این مشکلات به دلیل خطاهای دور همست و می تواند برای N به حداقل 4 رخ دهد. مثال زیر این محدودیت را نشان می دهد.
n = 6 ؛Wn = [2. 5E6 29E6]/500E6 ؛ftype ="Bandpass"; ٪ طراحی عملکرد انتقال[b ، a] = کره (n ، wn ، ftype) ؛٪ این یک فیلتر ناپایدار است ٪ Zero-Pole-Gain Design[z ، p ، k] = کره (n ، wn ، ftype) ؛SOS = ZP2SOS (Z ، P ، K) ؛٪ نمایش و مقایسه نتایجhfvt = fvtool (b ، a ، sos ،"فرکانس فرکانس","ورود") ؛افسانه (HFVT ،"طراحی TF","طراحی ZPK")

الگوریتم
فیلترهای Butterworth دارای یک پاسخ بزرگی هستند که به طور کلی در گذرگاه و یکنواختی مسطح است. این صافی با قیمت کاهش شیب دار کاهش می یابد. فیلترهای بیضوی و Chebyshev به طور کلی برای یک سفارش فیلتر خاص ، شیب تند تری را فراهم می کنند.
کره از یک الگوریتم پنج مرحله ای استفاده می کند:
- این قطب های نمونه اولیه آنالوگ Lowpass ، صفر را پیدا می کند و با استفاده از Buttap Function به دست می آید.
- این قطب ها ، صفرها را تبدیل می کند و به شکل فضای دولتی می رسد.
- در صورت لزوم ، از تبدیل حالت فضا برای تبدیل فیلتر Lowpass به فیلتر باند ، HighPass یا Bandstop با محدودیت های فرکانس مورد نظر استفاده می کند.
- برای طراحی فیلتر دیجیتال ، از دو طرفه برای تبدیل فیلتر آنالوگ به یک فیلتر دیجیتال از طریق یک تحول دو طرفه با پیش از فرکانس استفاده می کند. تنظیم فرکانس دقیق ، فیلترهای آنالوگ و فیلترهای دیجیتال را قادر می سازد از همان میزان پاسخ فرکانس در WN یا در W1 و W2 برخوردار باشند.
- در صورت لزوم ، فیلتر فضای فضا را به عملکرد انتقال یا فرم صفر-قطره ای تبدیل می کند.
قابلیت های گسترده
C/C ++ تولید کد C و C ++ با استفاده از Coder MATLAB®.
تاریخچه نسخه
قبل از R2006A معرفی شده است
استراتژیهای اسکالپ...
ما را در سایت استراتژیهای اسکالپ دنبال می کنید
برچسب :
نویسنده : جعفر بدیعی
بازدید : <-PostHit->
تاريخ : سه
شنبه
5 ارديبهشت
1402 ساعت: 12:57