主要内容

dsp.LowpassFilter

FIR和IIR低通滤波器

描述

dsp.LowpassFilter对象独立过滤器输入的每个通道使用给定的设计规范。你可以设置FilterType的属性dsp.LowpassFilter“杉”“信息检索”实现对象作为FIR和IIR低通滤波器。

过滤输入的每个通道:

  1. 创建dsp.LowpassFilter对象并设置其属性。

  2. 调用对象的参数,就好像它是一个函数。

了解更多关于系统对象是如何工作的,看到的系统对象是什么?

创建

描述

通滤波器= dsp.LowpassFilter返回一个最低阶FIR低通滤波器,通滤波器,默认的过滤器设置。调用对象的默认属性设置滤波器通带频率的输入数据8kHz,阻带频率12kHz,通带波纹0.1dB,阻带衰减80年dB。

例子

通滤波器= dsp.LowpassFilter (名称,值)返回一个低通滤波器,附加属性指定,或者更多名称,值对参数。的名字属性名和吗价值相应的价值。的名字必须出现在单引号(')。您可以指定几个名称-值对参数在任何顺序Name1, Value1,…,的家

属性

全部展开

属性,除非另有注明nontunable后,这意味着你不能改变它们的值调用对象。对象锁当你叫他们,释放函数打开它们。

如果一个属性可调在任何时候,你可以改变它的值。

改变属性值的更多信息,请参阅系统设计在MATLAB使用系统对象

输入采样率在赫兹,指定为逗号分隔组成的“SampleRate”和一个真正积极的标量。

数据类型:|

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

  • “杉”——对象设计一个FIR低通滤波器。

  • “信息检索”——对象设计IIR低通滤波器(biquad)。

最低订购量滤波器设计、指定为逗号分隔组成的“DesignForMinimumOrder”和一个逻辑值。如果此属性真正的,然后dsp.LowpassFilter设计滤波器满足通带频率最低订购量,阻带频率,通带波纹,阻带衰减规范。设置这些规范使用对应的属性。如果此属性,那么对象设计过滤器与您指定的顺序FilterOrder财产。这个过滤器设计满足通频带的频率,通带波纹,阻带衰减规范使用各自的属性设置。

阶FIR和IIR滤波器,指定为逗号分隔组成的“FilterOrder”和一个正整数标量。

依赖关系

指定一个过滤器订单的值时才有效“DesignForMinimumOrder”

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64

滤波器通带边缘频率在赫兹,指定为逗号分隔条“PassbandFrequency”和一个真正积极的标量。通频带边缘在赫兹频率的值必须小于一半的SampleRate

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64

滤波器阻带边缘频率在赫兹,指定为逗号分隔组成的“StopbandFrequency”和一个真正积极的标量。阻带边缘在赫兹频率的值必须小于一半的SampleRate

依赖关系

您可以指定频率只有当阻带边缘“DesignForMinimumOrder”真正的

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64

最大纹波滤波器响应在通频带,在dB,指定为逗号分隔组成的“PassbandRipple”和一个真正积极的标量。默认为最大纹波滤波器响应0.1dB。

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64

最低在阻带衰减分贝,指定为逗号分隔组成的“StopbandAttenuation”和一个真正积极的标量。在阻带最小衰减违约80年dB。

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64

定点属性

舍入方法输出定点操作,指定为一个特征向量。舍入模式的更多信息,请参阅精度和范围

词和部分长度系数,作为指定numerictype对象。默认的,numerictype (16)对应于一个签署了16位系数数值类型对象和一小部分长度系数值的基础上,确定给最好的精度。

这个属性不是可调。

单词长度的输出与输入的字长相同。分数计算输出的长度,这样整个动态范围的输出可以表示没有溢出。有关输出的部分的长度是如何计算的,看到的在FIR滤波器定点精确规则避免溢出

使用

语法

描述

例子

y= LPF (x)低通滤波器的输入信号,xy是lowpass-filtered版本的x

输入参数

全部展开

嘈杂的数据输入,指定为一个向量或矩阵。如果输入信号是一个矩阵,矩阵的每一列都被视为一个独立的通道。在输入信号的行数表示通道长度。这个对象接受适应输入。在对象被锁定后,您可以更改每个输入通道的大小,但你不能改变通道的数量。

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64|fi
复数的支持:万博1manbetx是的

输出参数

全部展开

过滤输出,作为一个向量或矩阵返回。输出具有相同的大小、数据类型和复杂性特征作为输入。

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64|fi
复数的支持:万博1manbetx是的

对象的功能

使用一个目标函数,指定系统对象™作为第一个输入参数。例如,释放系统资源的系统对象命名obj使用这个语法:

发行版(obj)

全部展开

freqz 离散滤波器的频率响应系统对象
fvtool 可视化DSP滤波器的频率响应
impz 离散滤波器的脉冲响应系统对象
信息 信息过滤系统对象
多项式系数 返回过滤器系统对象系数的结构
成本 实现滤波器的估计成本系统对象
grpdelay 离散滤波器群延迟响应系统对象
generatehdl 生成量化的HDL代码DSP滤波器(需要滤波器设计高密度脂蛋白编码器)
测量 测量滤波器的频率响应特征系统对象
一步 运行系统对象算法
释放 释放资源,并允许修改系统对象属性值和输入特征
重置 重置的内部状态系统对象

例子

全部折叠

创建一个最小订单44.1 kHz FIR低通滤波器进行数据采样。指定一个通带频率8 kHz, 12 kHz的阻带频率通带波纹为0.1 dB和阻带衰减的80分贝。

Fs = 44.1 e3;filtertype =“杉”;成就= 8 e3;Fstop = 12 e3;Rp = 0.1;Astop = 80;FIRLPF = dsp.LowpassFilter (“SampleRate”Fs,“FilterType”filtertype,“PassbandFrequency”成就,“StopbandFrequency”Fstop,“PassbandRipple”Rp,“StopbandAttenuation”,Astop);

设计一个最小订单IIR低通滤波器和FIR低通滤波器相同的属性。改变FilterType克隆的筛选器的属性信息检索

IIRLPF =克隆(FIRLPF);IIRLPF。FilterType =“信息检索”;

情节FIR低通滤波器的脉冲响应。零阶系数由19个样品推迟了,等于滤波器的群时延。FIR低通滤波器是一个因果冷杉过滤器。

fvtool (FIRLPF“分析”,“冲动”)

图脉冲响应包含一个坐标轴对象。坐标轴对象与标题脉冲响应包含一个类型的对象。

情节IIR低通滤波器的脉冲响应。

fvtool (IIRLPF“分析”,“冲动”)

图脉冲响应包含一个坐标轴对象。坐标轴对象与标题脉冲响应包含一个类型的对象。

图的大小和相位响应FIR低通滤波器。

fvtool (FIRLPF“分析”,“频率”)

图级响应(dB)和相位响应包含一个坐标轴对象。坐标轴对象与标题级响应(dB)和相位响应包含一个类型的对象。

图的大小和相位响应IIR低通滤波器。

fvtool (IIRLPF“分析”,“频率”)

图级响应(dB)和相位响应包含一个坐标轴对象。坐标轴对象与标题级响应(dB)和相位响应包含一个类型的对象。

计算的成本实现FIR低通滤波器。

成本(FIRLPF)
ans =结构体字段:NumCoefficients: 39 NumStates: 38 MultiplicationsPerInputSample: 39 AdditionsPerInputSample: 38

计算的成本实现IIR低通滤波器。IIR滤波器比冷杉过滤器更高效的实现。

成本(IIRLPF)
ans =结构体字段:NumCoefficients: 18 NumStates: 14 MultiplicationsPerInputSample: 18 AdditionsPerInputSample: 14

计算FIR低通滤波器的群时延。

grpdelay (FIRLPF)

图群延迟包含一个坐标轴对象。坐标轴对象与标题群延迟包含一个类型的对象。

计算IIR低通滤波器的群时延。冷杉过滤器有一个恒定的群延迟(线性相位),而其IIR同行没有。

grpdelay (IIRLPF)

图群延迟包含一个坐标轴对象。坐标轴对象与标题群延迟包含一个类型的对象。

创建一个低通滤波器,默认属性。

LPF = dsp.LowpassFilter;

创建一个简介对象。

SA =简介(“SampleRate”,44.1 e3,“PlotAsTwoSidedSpectrum”假的,“ShowLegend”,真的,“YLimits”,30 [-150],“标题”,低通滤波器的输入信号和输出信号);SA。ChannelNames = {“输入”,“输出”};

运行低通滤波器算法来过滤高斯白噪声输入信号。视图使用频谱分析仪的输入和输出信号。

k = 1:10 0输入= randn (1024 1);输出= LPF(输入);SA((输入、输出));结束

设置IIR低通滤波器。高斯白噪声的采样率为44100 Hz。滤波器的通带频率是8 kHz,阻带频率是12 kHz,通带波纹为0.1分贝,阻带衰减是80分贝。

Fs = 44.1 e3;filtertype =“信息检索”;成就= 8 e3;Fstop = 12 e3;Rp = 0.1;Astop = 80;LPF = dsp.LowpassFilter (“SampleRate”Fs,“FilterType”filtertype,“PassbandFrequency”成就,“StopbandFrequency”Fstop,“PassbandRipple”Rp,“StopbandAttenuation”,Astop);

视图的幅度响应低通滤波器。

fvtool (LPF)

图级响应(dB)包含一个坐标轴对象。坐标轴对象2级响应(dB)包含标题行类型的对象。

创建一个频谱分析仪对象。

SA =简介(“SampleRate”,44.1 e3,“PlotAsTwoSidedSpectrum”假的,“ShowLegend”,真的,“YLimits”,30 [-150],“标题”,IIR低通滤波器的输入信号和输出信号的);SA。ChannelNames = {“输入”,“输出”};

过滤高斯白噪声输入信号。视图使用频谱分析仪的输入和输出信号。

k = 1:10 0输入= randn (1024 1);输出= LPF(输入);SA((输入、输出));结束

衡量一个低通滤波器的频率响应特性。创建一个dsp.LowpassFilter系统对象的默认属性。测量滤波器的频率响应特性。

LPF = dsp.LowpassFilter
LPF = dsp.LowpassFilter与properties: FilterType: 'FIR' DesignForMinimumOrder: true PassbandFrequency: 8000 StopbandFrequency: 12000 PassbandRipple: 0.1000 StopbandAttenuation: 80 SampleRate: 44100 Show all properties
LPFMeas =测量(LPF)
LPFMeas =采样率:44.1千赫通频带边缘:8 kHz 3-dB点:9.1311 kHz 6分贝的观点:9.5723千赫阻带边缘:12 kHz通带波纹:0.08289 dB阻带衰减器。:81.6141 dB过渡宽度:4 kHz

算法

全部展开

引用

[1]Shpak D.J.,和A. Antoniou. "A generalized Remez method for the design of FIR digital filters."IEEE®电路和交易系统。37卷,问题2,1990年2月,页161 - 174。

[2]Selesnick I.W.,和C. S. Burrus. "Exchange algorithms that complement the Parks-McClellan algorithm for linear-phase FIR filter design."IEEE电路和系统。44卷,问题2,1997年2月,页137 - 143。

扩展功能

版本历史

介绍了R2015a