主要内容

ellip

椭圆滤波器设计

描述

例子

[<一个href="//www.tatmou.com/es/help/signal/ref/#bucr9wl_sep_shared-ba" class="intrnllnk">b,一个=椭圆(<一个href="//www.tatmou.com/es/help/signal/ref/#bucr9wl_sep_shared-n" class="intrnllnk">n,<一个href="//www.tatmou.com/es/help/signal/ref/#bucr9wl_sep_shared-Rp" class="intrnllnk">Rp,<一个href="//www.tatmou.com/es/help/signal/ref/#bucr9wl_sep_shared-Rs" class="intrnllnk">Rs,<一个href="//www.tatmou.com/es/help/signal/ref/#bucr9wl-Wp" class="intrnllnk">Wp返回an的传递函数系数n具有归一化通带边缘频率的th阶低通数字椭圆滤波器Wp.得到的过滤器具有Rp峰对峰通带纹波的分贝Rs阻带衰减从峰值通带值下降的分贝。

例子

[<一个href="//www.tatmou.com/es/help/signal/ref/#bucr9wl_sep_shared-ba" class="intrnllnk">b,一个=椭圆(<一个href="//www.tatmou.com/es/help/signal/ref/#bucr9wl_sep_shared-n" class="intrnllnk">n,<一个href="//www.tatmou.com/es/help/signal/ref/#bucr9wl_sep_shared-Rp" class="intrnllnk">Rp,<一个href="//www.tatmou.com/es/help/signal/ref/#bucr9wl_sep_shared-Rs" class="intrnllnk">Rs,<一个href="//www.tatmou.com/es/help/signal/ref/#bucr9wl-Wp" class="intrnllnk">Wp,<一个href="//www.tatmou.com/es/help/signal/ref/#bucr9wl-ftype" class="intrnllnk">ftype设计一个低通、高通、带通或带阻椭圆滤波器,取决于的值ftype元素的个数Wp.所得到的带通和带阻设计为2阶n

注意:看到<一个href="//www.tatmou.com/es/es/help/signal/ref/ellip.html" class="intrnllnk">限制有关影响传递函数形成的数值问题的信息。

例子

[<一个href="//www.tatmou.com/es/help/signal/ref/#bucr9wl_sep_shared-zpk" class="intrnllnk">z,磷、钾=椭圆(<年代p一个nclass="argument_placeholder">___设计一个低通、高通、带通或带阻数字椭圆滤波器,并返回其零点、极点和增益。这种语法可以包括以前语法中的任何输入参数。

例子

[<一个href="//www.tatmou.com/es/help/signal/ref/#bucr9wl_sep_shared-ABCD" class="intrnllnk">A, B, C, D=椭圆(<年代p一个nclass="argument_placeholder">___设计一个低通、高通、带通或带阻数字椭圆滤波器,并返回指定其状态空间表示的矩阵。

例子

[<年代p一个nclass="argument_placeholder">___=椭圆(<年代p一个nclass="argument_placeholder">___, ' s ')设计一个具有通带边缘角频率的低通、高通、带通或带阻模拟椭圆滤波器<一个href="//www.tatmou.com/es/help/signal/ref/#bucr9wl-Wp" class="intrnllnk">Wp,<一个href="//www.tatmou.com/es/help/signal/ref/#bucr9wl_sep_shared-Rp" class="intrnllnk">Rp通带波纹的分贝<一个href="//www.tatmou.com/es/help/signal/ref/#bucr9wl_sep_shared-Rs" class="intrnllnk">Rs阻带衰减的分贝。

例子

全部折叠

设计一个6阶低通椭圆滤波器,其通带纹波为10 dB,阻带衰减为50 dB,通带边缘频率为300 Hz,对于1000hz采样的数据,对应于<年代p一个nclass="inlineequation"> 0 6 π rad /样品。绘制其幅值和相位响应。用它来过滤1000个样本的随机信号。

Fc = 300;Fs = 1000;[b,a] =椭圆(6,10,50,fc/(fs/2));Freqz (b,a,[],fs) subplot(2,1,1) ylim([-100 20])

图中包含2个轴对象。坐标轴对象1包含一个line类型的对象。坐标轴对象2包含一个line类型的对象。

dataIn = randn(1000,1);datout = filter(b,a,dataIn);

设计一种归一化边缘频率为的六阶椭圆带阻滤波器<年代p一个nclass="inlineequation"> 0 2 π 和<年代p一个nclass="inlineequation"> 0 6 π rad/sample, 5 dB通带纹波,50 dB阻带衰减。绘制其幅值和相位响应。用它来过滤随机数据。

[b,a] = ellip(3,5,50,[0.2 - 0.6],<年代p一个n年代tyle="color:#A020F0">“停止”);freqz (b)

图中包含2个轴对象。坐标轴对象1包含一个line类型的对象。坐标轴对象2包含一个line类型的对象。

dataIn = randn(1000,1);datout = filter(b,a,dataIn);

设计一个通带边缘频率为300 Hz的6阶高通椭圆滤波器,对于1000hz采样的数据,其对应为<年代p一个nclass="inlineequation"> 0 6 π rad /样品。指定3 dB的通带纹波和50 dB的阻带衰减。绘制幅值和相位响应图。将零点、极点和增益转换为二阶部分,以供fvtool

[z,p,k] = ellip(6,3,50,300/500,<年代p一个n年代tyle="color:#A020F0">“高”);SOS = zp2sos(z,p,k);fvtool (sos,<年代p一个n年代tyle="color:#A020F0">“分析”,<年代p一个n年代tyle="color:#A020F0">“频率”)

图幅度响应(dB)和相位响应包含一个轴对象。标题为幅度响应(dB)和相位响应的轴对象包含类型为line的对象。

设计一个20阶椭圆带通滤波器,低通带频率为500hz,高通带频率为560hz。指定通带纹波为3db,阻带衰减为40db,采样率为1500hz。使用状态空间表示。设计一个相同的过滤器,使用designfilt

[A,B,C,D] = ellip(10,3,40,[500 560]/750);D = designfilt(<年代p一个n年代tyle="color:#A020F0">“bandpassiir”,<年代p一个n年代tyle="color:#A020F0">“FilterOrder”, 20岁,<年代p一个n年代tyle="color:#0000FF">…“PassbandFrequency1”, 500,<年代p一个n年代tyle="color:#A020F0">“PassbandFrequency2”, 560,<年代p一个n年代tyle="color:#0000FF">…“PassbandRipple”3,<年代p一个n年代tyle="color:#0000FF">…“StopbandAttenuation1”现年40岁的<年代p一个n年代tyle="color:#A020F0">“StopbandAttenuation2”现年40岁的<年代p一个n年代tyle="color:#0000FF">…“SampleRate”, 1500);

将状态空间表示转换为二阶段。可视化频率响应使用fvtool

(A,B,C,D);FVT = fvtool(so,d,<年代p一个n年代tyle="color:#A020F0">“Fs”, 1500);传奇(fvt<年代p一个n年代tyle="color:#A020F0">“ellip”,<年代p一个n年代tyle="color:#A020F0">“designfilt”)

图幅度响应(dB)包含一个轴对象。标题为Magnitude Response (dB)的axes对象包含2个line类型的对象。这些对象代表椭圆,设计。

设计一个截止频率为2ghz的5阶模拟巴特沃斯低通滤波器。乘以<年代p一个nclass="inlineequation"> 2 π 把频率转换成弧度每秒。计算滤波器在4096点处的频率响应。

N = 5;F = 2e9;[zb,pb,kb] = butter(n,2*pi*f,<年代p一个n年代tyle="color:#A020F0">“年代”);[bb,ab] = zp2tf(zb,pb,kb);[hb,wb] = freqs(bb,ab,4096);

设计一个5阶切比雪夫I型滤波器,边缘频率相同,通带纹波为3db。计算它的频率响应。

[z1,p1,k1] = cheby1(n,3,2*pi*f,<年代p一个n年代tyle="color:#A020F0">“年代”);[b1,a1] = zp2tf(z1,p1,k1);[h1,w1] = freqs(b1,a1,4096);

设计一个5阶切比雪夫II型滤波器,边缘频率相同,阻带衰减为30db。计算它的频率响应。

[z2,p2,k2] = cheby2(n,30,2*pi*f,<年代p一个n年代tyle="color:#A020F0">“年代”);[b2,a2] = zp2tf(z2,p2,k2);[h2,w2] = freqs(b2,a2,4096);

设计一个边缘频率相同、通带纹波3 dB、阻带衰减30 dB的5阶椭圆滤波器。计算它的频率响应。

[ze,pe,ke] = ellip(n,3,30,2*pi*f;<年代p一个n年代tyle="color:#A020F0">“年代”);[be,ae] = zp2tf(ze,pe,ke);[he,we] =频率(be,ae,4096);

绘制以分贝为单位的衰减。用千兆赫表示频率。比较过滤器。

情节(wb / (2 e9 *π)mag2db (abs (hb)))<年代p一个n年代tyle="color:#A020F0">在Plot (w1/(2e9*pi),mag2db(abs(h1))) Plot (w2/(2e9*pi),mag2db(abs(h2))) Plot (we/(2e9*pi),mag2db(abs(he))) axis([0 4 -40 5]) grid xlabel(<年代p一个n年代tyle="color:#A020F0">“频率(GHz)”) ylabel (<年代p一个n年代tyle="color:#A020F0">“衰减(dB)”)传说(<年代p一个n年代tyle="color:#A020F0">“黄油”,<年代p一个n年代tyle="color:#A020F0">“cheby1”,<年代p一个n年代tyle="color:#A020F0">“cheby2”,<年代p一个n年代tyle="color:#A020F0">“ellip”)

图包含一个轴对象。axis对象包含4个类型为line的对象。这些物体代表黄油,cheby1, cheby2, ellip。

巴特沃斯和切比雪夫II型滤波器具有平通带和宽过渡带。切比雪夫I型和椭圆滤波器滚动更快,但有通带纹波。切比雪夫II型设计函数的频率输入设置阻带的开始而不是通带的结束。

输入参数

全部折叠

过滤器顺序,指定为整数标量。对于带通和带阻设计,n表示过滤器顺序的一半。

数据类型:

峰对峰通带纹波,指定为以分贝表示的正标量。

如果你的规格是线性单位,你可以用Rp= 40 log<年代ub>10((1 +ℓ)/(1 -ℓ))。

数据类型:

阻带衰减从峰值通带值下降,以分贝表示的正标量指定。

如果你的规格是线性单位,你可以用Rs= -20 log<年代ub>10ℓ。

数据类型:

以标量或双元素向量指定的通频带边缘频率。通带边缘频率是滤波器的幅值响应的频率<年代p一个nclass="inlineequation">- - - - - -<一个href="//www.tatmou.com/es/help/signal/ref/#bucr9wl_sep_shared-Rp" class="intrnllnk">Rp分贝。更小的通带纹波值,Rp,阻带衰减值较大,<一个href="//www.tatmou.com/es/help/signal/ref/#bucr9wl_sep_shared-Rs" class="intrnllnk">Rs,两者都会导致更宽的过渡带。

  • 如果Wp是标量吗ellip设计一个带边缘频率的低通或高通滤波器Wp

    如果Wp是双元素向量吗(w1 w2),在那里w1<w2,然后ellip设计一种边缘频率较低的带通或带阻滤波器w1更高的边缘频率w2

  • 对于数字滤波器,通带边缘频率必须介于0和1之间,其中1对应于奈奎斯特速率-采样率的一半或πrad /样品。

    对于模拟滤波器,通带边缘频率必须以每秒弧度表示,并且可以取任意正值。

数据类型:

过滤器类型,指定为以下之一:

  • “低”指定具有通带边缘频率的低通滤波器<一个href="//www.tatmou.com/es/help/signal/ref/#bucr9wl-Wp" class="intrnllnk">Wp“低”是标量的默认值吗Wp

  • “高”指定具有通带边缘频率的高通滤波器Wp

  • “带通”指定阶为2的带通滤波器<一个href="//www.tatmou.com/es/help/signal/ref/#bucr9wl_sep_shared-n" class="intrnllnk">n如果Wp是一个双元素向量。“带通”为默认值,当Wp有两个要素。

  • “停止”指定阶为2的带阻滤波器n如果Wp是一个双元素向量。

输出参数

全部折叠

过滤器的传递函数系数,作为长度的行向量返回<一个href="//www.tatmou.com/es/help/signal/ref/#bucr9wl_sep_shared-n" class="intrnllnk">n+ 1低通和高通滤波器和2n+ 1为带通和带阻滤波器。

  • 对于数字滤波器,传递函数表示为b一个作为

    H z = B z 一个 z = b (1) + b (2) z 1 + + b (n + 1) z n (1) + (2) z 1 + + (n + 1) z n

  • 对于模拟滤波器,传递函数表示为b一个作为

    H 年代 = B 年代 一个 年代 = b (1) 年代 n + b (2) 年代 n 1 + + b (n + 1) (1) 年代 n + (2) 年代 n 1 + + (n + 1)

数据类型:

滤波器的零点、极点和增益,作为长度相等的两个列向量返回<一个href="//www.tatmou.com/es/help/signal/ref/#bucr9wl_sep_shared-n" class="intrnllnk">n(2n用于带通和带阻设计)和标量。

  • 对于数字滤波器,传递函数表示为zp,k作为

    H z = k 1 z (1) z 1 1 z (2) z 1 1 z (n) z 1 1 (1页) z 1 1 (2页) z 1 1 p (n) z 1

  • 对于模拟滤波器,传递函数表示为zp,k作为

    H 年代 = k 年代 z (1) 年代 z (2) 年代 z (n) 年代 (1页) 年代 (2页) 年代 p (n)

数据类型:

过滤器的状态空间表示形式,作为矩阵返回。如果=<一个href="//www.tatmou.com/es/help/signal/ref/#bucr9wl_sep_shared-n" class="intrnllnk">n对于低通和高通设计和= 2n对于带通和带阻滤波器,则一个×B×1,C是1 ×,D是1 × 1。

  • 对于数字滤波器,状态空间矩阵与状态向量相关x,输入u,输出y通过

    x k + 1 = 一个 x k + B u k y k = C x k + D u k

  • 对于模拟滤波器,状态空间矩阵与状态向量相关x,输入u,输出y通过

    x ˙ = 一个 x + B u y = C x + D u

数据类型:

更多关于

全部折叠

限制

传递函数语法的数值不稳定性

一般来说,使用(z,磷、钾)语法来设计IIR过滤器。要分析或实现您的过滤器,您可以使用(z,磷、钾)输出与zp2sos.如果您使用[b]语法方面,您可能会遇到数值问题。这些问题是由于舍入错误造成的,并且可能发生在n低至4。下面的示例说明了这种限制。

N = 6;Rp = 0.1;Rs = 80;w = [2.5e6 29e6]/500e6;ftype =<年代p一个n年代tyle="color:#A020F0">“带通”;<年代p一个n年代tyle="color:#228B22">传递函数设计[b,a] = ellip(n,Rp,Rs,Wn,ftype);<年代p一个n年代tyle="color:#228B22">%此过滤器不稳定%零极增益设计[z,p,k] =椭圆(n, p, r, n,f);SOS = zp2sos(z,p,k);<年代p一个n年代tyle="color:#228B22">绘制并比较结果HFVT = fvtool(b,a,so,<年代p一个n年代tyle="color:#A020F0">“FrequencyScale”,<年代p一个n年代tyle="color:#A020F0">“日志”);传奇(hfvt<年代p一个n年代tyle="color:#A020F0">“特遣部队设计”,<年代p一个n年代tyle="color:#A020F0">“ZPK设计”)

图幅度响应(dB)包含一个轴对象。标题为Magnitude Response (dB)的axes对象包含2个line类型的对象。这些对象分别是TF Design, ZPK Design。

算法

椭圆滤波器提供比巴特沃斯或切比雪夫滤波器更陡峭的滚降特性,但在通带和阻带都是等纹。一般来说,椭圆滤波器满足给定的性能要求,其阶数是所有滤波器中最低的。

ellip使用五步算法:

  1. 利用该函数找到低通模拟原型的极点、零点和增益<一个href="//www.tatmou.com/es/es/help/signal/ref/ellipap.html">ellipap

  2. 它将极点、零点和增益转换为状态空间形式。

  3. 如果需要,它使用状态空间变换将低通滤波器转换为具有所需频率约束的带通、高通或带阻滤波器。

  4. 对于数字滤波器的设计,它使用<一个href="//www.tatmou.com/es/es/help/signal/ref/bilinear.html">双线性通过带频率预整的双线性变换将模拟滤波器转换为数字滤波器。仔细的频率调整使模拟滤波器和数字滤波器具有相同的频率响应幅度Wpw1w2

  5. 它根据需要将状态空间滤波器转换回传递函数或零极增益形式。

扩展功能

版本历史

R2006a之前引入

另请参阅

|<年代p一个nitemscope itemtype="//www.tatmou.com/help/schema/MathWorksDocPage/SeeAlso" itemprop="seealso">|<年代p一个nitemscope itemtype="//www.tatmou.com/help/schema/MathWorksDocPage/SeeAlso" itemprop="seealso">|<年代p一个nitemscope itemtype="//www.tatmou.com/help/schema/MathWorksDocPage/SeeAlso" itemprop="seealso">|<年代p一个nitemscope itemtype="//www.tatmou.com/help/schema/MathWorksDocPage/SeeAlso" itemprop="seealso">|<年代p一个nitemscope itemtype="//www.tatmou.com/help/schema/MathWorksDocPage/SeeAlso" itemprop="seealso">|<年代p一个nitemscope itemtype="//www.tatmou.com/help/schema/MathWorksDocPage/SeeAlso" itemprop="seealso">|<年代p一个nitemscope itemtype="//www.tatmou.com/help/schema/MathWorksDocPage/SeeAlso" itemprop="seealso">|<年代p一个nitemscope itemtype="//www.tatmou.com/help/schema/MathWorksDocPage/SeeAlso" itemprop="seealso">