AnyMath 文档

切比1

I型切比雪夫滤波器的计算。

库::`工程师`

语法

函数调用

  • [参数:ba]=cheby1(<参数:n>>,<参数:Rp>>,<参数:Wp>>,<参数:ftype>>) -设计切比雪夫i型数字滤波器:低通,高通,带通或陷波滤波器,具体取决于参数的值 [参数:ftype] 和元素的数量 [参数:Wp]. 带通和陷波滤波器的设计顺序如下 2<参数:n>>.

  • [参数:zpk]=cheby1(_;<参数:nout>>=3) -设计一个切比雪夫I型数字滤波器,并返回其零,极点和增益。 此语法可以包括前面选项中的任何输入参数。

  • A, B, C, D=cheby1(_;nout=4) -设计i型切比雪夫数字滤波器并返回定义其在状态空间中的表示的矩阵。

  • =cheby1(,"s";[参数:nout]) -使用前面语法中的任何输入或输出参数设计I型切比雪夫模拟滤波器。 论点 [参数:nout] 显示函数将返回多少个输出参数。 如果论点是 [参数:nout] 省略,该函数将仅对两个输出参数进行计算。

争论

输入参数

# n — 过滤顺序

+ 通行证:[标量]

Details

指定为整数标量的筛选器顺序小于或等于 500. 用于带通和陷波滤波器 n 表示滤波器阶数的一半。

数据类型

漂浮64</无翻译>

# *Rp*是 带宽中波纹的大小(以dB为单位)

+ 传:[正标量]

Details

带宽中波纹的大小,以dB为单位设置为正标量。

如果值为 以线性单位表示,您可以使用公式将其转换为dB Rp .

数据类型

漂浮64</无翻译>

# 可湿性粉剂 — 带宽限制频率

+ 通行证:[标量] | 传递:[双元向量]

Details

带宽边界频率,指定为标量或双元矢量。 带宽边界频率是滤波器幅频响应的频率。 [参数:Rp] 在dB中。 带宽中较低的频率响应纹波值, [参数:Rp] 它们导致带宽增加。

如果 可湿性粉剂 -一个标量,然后 *cheby1 设计具有截止频率的低通或高通滤波器 可湿性粉剂.

+ 如果 可湿性粉剂 -双元向量 [w1w2],在哪里 w1<w2 然后 cheby1 设计具有较低截止频率的带通或陷波滤波器 w1 和上边界频率 w2.

*对于数字滤波器,带宽限制频率必须在范围内 0 以前 1,在哪里 1 对应于奈奎斯特频率-采样频率的一半或 rad/倒计时。

+ 对于模拟滤波器,带宽边界频率必须以rad/s表示,并且可以取任意正值。

数据类型

漂浮64</无翻译>

# ftype — 过滤器类型

+ 通过:["低"] | 通行证:["带通"] | 通行证:["高"] | 通行证:["停止"]

Details

指定为的筛选器类型:

  • "低" -带带宽边界频率的低通滤波器 [参数:Wp]. 此值默认用于标量 [参数:Wp];

  • "高" -带带宽边界频率的高通滤波器 [参数:Wp];

  • "带通" -带通滤波器 2<参数:n>> 如果 [参数:Wp] -一个双元向量。 默认情况下,此值在以下情况下使用 [参数:Wp] 设置为双元素向量;

  • "停止" -陷波(阻塞)滤波器 2<参数:n>> 如果 [参数:Wp] -一个双元向量。

数据类型

字符串</无翻译>

名称-值输入参数

# nout — 输出参数数

+ 2 (默认情况下)| 3 | 4

Details

输出参数的数量,设置为 2, 34. 如果论点是 nout 未指定,函数默认返回两个输出参数。

输出参数

# *b,a*是 传递函数的系数

+ 传递:[字符串向量]

Details

作为行向量返回的滤波器传递函数的系数。 具有指定的过滤器顺序 [参数:n] 函数返回 bar 通过计算在哪里 R=<参数:n>>+1 对于低和高通滤波器和 r=2*[参数:n]+1 用于带通和陷波滤波器。

传递函数表示为 :

*用于数字滤波器

+

*模拟滤波器

+

数据类型

漂浮64</无翻译>

# z,p,k — 零、极点和增益

+ 传递:[列向量和标量]

Details

零,极点和滤波器增益,返回为两个向量-列和标量。 具有指定的过滤器顺序 [参数:n] 函数返回 zpr 通过计算在哪里 R=<参数:n>> 对于低和高通滤波器和 r=2*<参数:n>> 用于带通和陷波滤波器。

传递函数表示为 , :

*用于数字滤波器

+

*模拟滤波器

+

数据类型

漂浮64</无翻译>

# A,B,C,D — 状态空间中滤波器的表示

+ 传递:[矩阵]

Details

滤波器在状态空间中的表示形式,作为矩阵返回。 如果 R=<参数:n>> 对于低和高通滤波器和 R=2<参数:n>> 对于带通和陷波滤波器,则 A 这是矩阵 rr, B 矩阵 r1, C 矩阵 1r,而 D11.

状态空间矩阵与状态向量相关 、入口 和出口 借助方程组:

*用于数字滤波器

+

*模拟滤波器

+

数据类型

漂浮64</无翻译>

例子:

切比雪夫i型低通滤波器

Details

让我们设计一个切比雪夫I型低通滤波器 6-带宽中有波纹的顺序 10 dB和带宽截止频率 300 Hz,其对应于 0.6π 频率采样数据的rad/计数 1000 赫兹。 让我们绘制幅频和相位特性。 我们用它来过滤一个频率随机信号 1000 数数。

import EngeeDSP.Functions: cheby1, freqz, randn, filter

fc = 300
fs = 1000

b, a = cheby1(6,10,fc/(fs/2))

freqz(b,a,out=:plot)

cheby1 1

dataIn = randn(1000,1)
dataOut = filter(b,a,dataIn)

切比雪夫I型屏障过滤器

Details

让我们设计一个I型切比雪夫屏障滤波器 3-具有归一化边界频率的th阶 0.2π0.6π rad/倒计时和带宽涟漪 5 分贝。 让我们绘制幅频和相位特性。 我们用它来过滤随机信号。

import EngeeDSP.Functions: cheby1, freqz, randn, filter

b,a = cheby1(3,5,[0.2 0.6],"stop")

freqz(b,a,out=:plot)

cheby1 2

dataIn = randn(1000,1)
dataOut = filter(b,a,dataIn)

切比雪夫i型高通滤波器

Details

让我们设计一个切比雪夫i型高通滤波器 9-带带宽截止频率的阶数 300 Hz,用于以频率采样的数据 1000 Hz,对应于 0.6π rad/倒计时。 设置带宽中的纹波 0.5 分贝。 将零、极点和增益转换为二阶部分。 让我们绘制幅频和相位特性。

import EngeeDSP.Functions: cheby1, zp2sos

z,p,k = cheby1(9,0.5,300/500,"high"; nout=3)
sos = zp2sos(z,p,k)

freqz(sos,out=:plot)

cheby1 3

切比雪夫i型带通滤波器

Details

让我们设计一个切比雪夫I型带通滤波器 10-带宽较低的顺序 400 Hz和上带宽 500 赫兹。 设置带宽中的纹波 3 dB和采样率 1500 赫兹。 我们在状态空间中使用表示。 我们将状态空间中的表示转换为二阶段的形式。 让我们绘制幅频和相位特性。

import EngeeDSP.Functions: cheby1, ss2sos
fs = 1500

A,B,C,D = cheby1(10,3,[400 500]/(fs/2); nout=4)
sos = ss2sos(A,B,C,D)[1]

freqz(sos,out=:plot)

cheby1 4

算法

切比雪夫I型滤波器在通带中具有均匀的频率响应脉动,在延迟带中是单调的。 与II型滤波器相比,i型滤波器的频率响应下降速度更快,但其代价是带宽与统一性的偏差更大。

切比雪夫滤波器I型 cheby1 使用五步算法:

*查找模拟低通原型的极点、零点和增益。

*将极点、零点和增益转换为状态空间。

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

*对于数字滤波器的设计,通过双线性频率预失真转换将模拟滤波器转换为数字滤波器。 精细频率调谐允许模拟和数字滤波器具有相同的频率响应幅度 可湿性粉剂w1w2.

*必要时将状态空间滤波器转换回传递函数或零极点增益形式。

文学作品

  1. 里昂,理查德G._Understanding数字信号处理._上鞍河,NJ:普伦蒂斯霍尔,2004.