当前位置:文档之家› VB 程序 数字金字塔

VB 程序 数字金字塔

VB 程序   数字金字塔
VB 程序   数字金字塔

Private Sub Form_Load()

Dim n%, i%, j%, m%, x%

n = Val(InputBox("请输入一个0~9之间的整数"))

If n <= 0 Or n > 9 Then

MsgBox "输入错误!请输入0~9之间的整数", vbInformation, "提示信息" End

Else

m = n \ 2

x = n Mod 2

For i = 1 To n

If i <= m Then

Print Space(m - i + x);

For j = 1 To 2 * i - 1

Print Chr(48 + i);

Next j

Else

Print Space(i - m - 1);

For j = 1 To 2 * (n - i) + 1

Print Chr(48 + i);

Next j

End If

Print vbCrLf

Next i

End If

End Sub

巴特沃斯数字低通滤波器

目录 1.题目.......................................................................................... .2 2.要求 (2) 3.设计原理 (2) 3.1 数字滤波器基本概念 (2) 3.2 数字滤波器工作原理 (2) 3.3 巴特沃斯滤波器设计原理 (2) 3.4脉冲响应不法 (4) 3.5实验所用MA TLAB函数说明 (5) 4.设计思路 (6) 5、实验内容 (6) 5.1实验程序 (6) 5.2实验结果分析 (10) 6.心得体会 (10) 7.参考文献 (10)

一、题目:巴特沃斯数字低通滤波器 二、要求:利用脉冲响应不变法设计巴特沃斯数字低通滤波器,通带截止频率100HZ,采样频率1000HZ ,通带最大衰减为0.5HZ ,阻带最小衰减为10HZ ,画出幅频、相频相应相应曲线。并假设一个信号x(t)=sin(2*pi*f1*t)+sin(2*pi*f2*t),其中f1=50HZ,f2=200HZ 。用此信号验证滤波器设计的正确性。 三、设计原理 1、数字滤波器的基本概念 所谓数字滤波器,是指输入、输出均为数字信号,通过数值运算处理改变输入信号所含频率成分的相对比例,或者滤波器除某些频率成分的数字器件或程序,因此,数字滤波的概念和模拟滤波相同,只是的形式和实现滤波方法不同。正因为数字滤波通过数值运算实现滤波,所以数字滤波处理精度高、稳定、体积小、质量轻、灵活、不存在阻抗匹配问题,可以实验模拟滤波器无法实现的特殊滤波功能。如果要处理的是模拟信号,可通过A\DC 和D\AC,在信号形式上进行匹配转换,同样可以使用数字滤波器对模拟信号进行滤波。 2、数字滤波器的工作原理 数字滤波器是一个离散时间系统,输入x(n)是一个时间序列,输出y(n)也是一个时间序列。如数字滤波器的系统函数为H(Z),其脉冲响应为h(n),则在时间域内存在下列关系 y(n)=x(n) h(n) 在Z 域内,输入输出存在下列关系 Y(Z)=H(Z)X(Z) 式中,X(Z),Y(Z)分别为输入x(n)和输出y(n)的Z 变换。 同样在频率域内,输入和输出存在下列关系 Y(jw)=X(jw)H(jw) 式中,H(jw)为数字滤波器的频率特性,X(jw)和Y(jw)分别为x(n)和y(n)的频谱。w 为数字角频率,单位rad 。通常设计H(jw)在某些频段的响应值为1,在某些频段的响应为0.X(jw)和H(jw)的乘积在频率响应为1的那些频段的值仍为X(jw),即在这些频段的振幅可以无阻碍地通过滤波器,这些频带为通带。X(jw)和H(jw)的乘积在频段响应为0的那些频段的值不管X(jw)大小如何均为零,即在这些频段里的振幅不能通过滤波器,这些频带称为阻带。 一个合适的数字滤波器系统函数H(Z)可以根据需要输入x(n)的频率特性,经数字滤波器处理后的信号y(n)保留信号x(n)中的有用频率成分,去除无用频率成分。 3、巴特沃斯滤波器设计原理 (1)基本性质 巴特沃斯滤波器以巴特沃斯函数来近似滤波器的系统函数。巴特沃斯滤波器是根据幅频特性在通频带内具有最平坦特性定义的滤波器。 巴特沃思滤波器的低通模平方函数表示1 () ΩΩ+ =Ωc N /22 a 11 ) (j H

IIR数字滤波器设计及软件实现

实验四:IIR 数字滤波器设计及软件实现 一、实验原理与方法 1、设计IIR 数字滤波器一般采用间接法(脉冲响应不变法和双线性变换法),应用最广泛的是双线性变换法,其基本设计过程是: (1)将给定的数字滤波器的指标转换成过渡模拟滤波器的指标; (2)设计过渡模拟滤波器; (3)将过渡模拟滤波器系统函数转换成数字滤波器的系统函数。 本实验的数字滤波器的MATLAB 实现是指调用MATLAB 信号处理工具箱函数filter 对给定的输入信号x(n)进行滤波,得到滤波后的输出信号y(n )。 二、实验内容 1、调用信号产生函数mstg 产生由三路抑制载波调幅信号相加构成的复合信号st ,该函数还会自动绘图显示st 的时域波形和幅频特性曲线,如图4.1所示。由图可见,三路信号时域混叠无法在时域分离。但频域是分离的,所以可以通过滤波的方法在频域分离,这就是本实验的目的。 图4.1 三路调幅信号st (即s (t ))的时域波形和幅频特性曲线 2、要求将st 中三路调幅信号分离,通过观察st 的幅频特性曲线,分别确定可以分离st 中三路抑制载波单频调幅信号的三个滤波器(低通滤波器、带通滤波器、高通滤波器)的通带截止频率和阻带截止频率。要求滤波器的通带最大衰减为0.1dB,阻带最小衰减为60dB 。实验结果如图4.2,程序见附录4.2。 提示:抑制载波单频调幅信号的数学表示式为 0001()cos(2)cos(2)[cos(2())cos(2())]2 c c c s t f t f t f f t f f t ππππ==-++ 其中,cos(2)c f t π称为载波,fc 为载波频率,0cos(2)f t π称为单频调制信号,f0为调制正弦波信号频率,且满足0c f f >。由上式可见,所谓抑制载波单频调幅信号,就是2个正弦信号相乘,它有2个频率成分:和频0c f f +和差频0c f f -,

常用的8种数字滤波算法

常用的8种数字滤波算法 摘要:分析了采用数字滤波消除随机干扰的优点,详细论述了微机控制系统中常用的8种数字滤波算法,并讨论了各种数字滤波算法的适用范围。 关键词:数字滤波;控制系统;随机干扰;数字滤波算法 1 引言 在微机控制系统的模拟输入信号中,一般均含有各种噪声和干扰,他们来自被测信号源本身、传感器、外界干扰等。为了进行准确测量和控制,必须消除被测信号中的噪声和干扰。噪声有2大类:一类为周期性的,其典型代表为50 Hz 的工频干扰,对于这类信号,采用积分时间等于20 ms整倍数的双积分A/D转换器,可有效地消除其影响;另一类为非周期的不规则随机信号,对于随机干扰,可以用数字滤波方法予以削弱或滤除。所谓数字滤波,就是通过一定的计算或判断程序减少干扰信号在有用信号中的比重,因此他实际上是一个程序滤波。 数字滤波器克服了模拟滤波器的许多不足,他与模拟滤波器相比有以下优点: (1)数字滤波器是用软件实现的,不需要增加硬设备,因而可靠性高、稳定性好,不存在阻抗匹配问题。 (2)模拟滤波器通常是各通道专用,而数字滤波器则可多通道共享,从而降低了成本。 (3)数字滤波器可以对频率很低(如0.01 Hz)的信号进行滤波,而模拟滤波器由于受电容容量的限制,频率不可能太低。 (4)数字滤波器可以根据信号的不同,采用不同的滤波方法或滤波参数,具有灵活、方便、功能强的特点。 2 常用数字滤波算法 数字滤波器是将一组输入数字序列进行一定的运算而转换成另一组输出数字序列的装置。设数字滤波器的输入为X(n),输出为Y(n),则输入序列和输出序列之间的关系可用差分方程式表示为: 其中:输入信号X(n)可以是模拟信号经采样和A/D变换后得到的数字序列,也

切比雪夫1型数字低通滤波器

目录 1. 数字滤波器的设计任务及要求 (2) 2. 数字滤波器的设计及仿真 (2) 2.1数字滤波器的设计 (3) 2.2数字滤波器的性能分析 (3) 3. 数字滤波器的实现结构对其性能影响的分析 (8) 3.1数字滤波器的实现结构一及其幅频响应 (10) 3.2数字滤波器的实现结构二及其幅频响应 (12) 3.3 数字滤波器的实现结构对其性能影响的小结 (12) 4. 数字滤波器的参数字长对其性能影响的分析 (13) 4.1数字滤波器的实现结构一参数字长及幅频响应特性变化 4.2数字滤波器的实现结构二参数字长及幅频响应特性变化 4.3 数字滤波器的参数字长对其性能影响的小结 (16) 5. 结论及体会 (16) 5.1 滤波器设计、分析结论 (16) 5.2 我的体会 (16) 5.3 展望 (16)

1.数字滤波器的设计任务及要求 1. 设计说明 每位同学抽签得到一个四位数,由该四位数索引下表确定待设计数字滤波器的类型及其设计方法,然后用指定的设计方法完成滤波器设计。 要求:滤波器的设计指标: 低通: (1)通带截止频率πrad (id) pc 32 ln = ω (2)过渡带宽度πrad ) (i d 160 10log tz ≤?ω (3)滚降dB αroll 60= 其中,i d — 抽签得到那个四位数(学号的最末四位数),本设计中i d =0201。 2. 滤波器的初始设计通过手工计算完成; 3. 在计算机辅助计算基础上分析滤波器结构对其性能指标的影响(至少选择两种以上合适的滤波器 结构进行分析); 4. 在计算机辅助计算基础上分析滤波器参数的字长对其性能指标的影响; 5. 以上各项要有理论分析和推导、原程序以及表示计算结果的图表; 6. 课程设计结束时提交设计说明书。 2.数字滤波器的设计及仿真 2.1数字滤波器(编号0201)的设计 数字滤波器是数字信号处理的重要工具之一,它通过数值运算处理改变输入信号所含频率成分的相对比例或者滤出某些频率成分的数字器件或程序,而数字滤波器处理精度高、体积小、稳定、重量轻、灵活、不存在阻抗匹配问题,可以实现模拟滤波器无法实现的特殊功能。 本次课程设计使用MATLAB 信号处理箱和运用切比雪夫法设计数字滤波器,将手工计算一个切比雪夫I 型的IIR 的低通模拟滤波器的系统函数,并在MATLAB 的FDATool 设计工具分析其性能指标。

数字滤波器的DSP实现

摘要 当前我们正处于数字化时代,数字信号处理技术受到了人们的广泛关注,其理论及算法随着计算机技术和微电子技术的发展得到了飞速的发展,被广泛应用于语音图象处理、数字通信、谱分析、模式识别、自动控制等领域。数字滤波器是数字信号处理中最重要的组成部分之一,几乎出现在所有的数字信号处理系统中。数字滤波器是指完成信号滤波处理的功能,用有限精度算法实现的离散时间线性非时变系统,其输入是一组(由模拟信号取样和量化的)数字量,其输出是经过变换的另一组数字量。相对于模拟滤波器,数字滤波器没有漂移,能够处理低频信号,频率响应特性可做成非常接近于理想的特性,且精度可以达到很高,容易集成等,这些优势决定了数字滤波器的应用越来越广泛。同时DSP(数字信号处理器)的出现和FPGA的迅速发展也促进了数字滤波器的发展,并为数字滤波器的硬件实现提供了更多的选择。 本论文的主要研究了数字滤波器的基本理论及其算法。基于TI公司的数字信号处理器TMS320VC5509设计了一款稳定度高,低功耗的数字滤波器系统,并完成了软硬调试工作。主要工作如下: (1)研究了数字滤波器的基本理论,以及数字滤波器的实现方法。通过学习识字滤波器 的结构、数字滤波器的设计理论,掌握了各种数字滤波器的原理和特性。为实现数字滤波器奠定了理论基础。 (2)研究分析了如何利用MATLAB仿真软件来设计出符合各种要求的数字滤波器。并采用 了相关的函数设计了几款常用的数字滤波器,并得到了滤波器的相关系数,为利用DSP实现数字滤波做好了一些前期的工作。 (3)根据TI公司5000系列数字信号处理器的基本结构和特征,充分利用其片上资源t结 合MATLAB软件的仿真,用软件实现高性能稳定的数字滤波器。 关键字:数字滤波器,DSP,IIR(无限长单位脉冲响应),FIR(有限长单位脉冲响应)

设计数字低通滤波器(用matlab实现)

DSP 设计滤波器报告 姓名:张胜男 班级:07级电信(1)班 学号:078319120 一·低通滤波器的设计 (一)实验目的:掌握IIR 数字低通滤波器的设计方法。 (二)实验原理: 1、滤波器的分类 滤波器分两大类:经典滤波器和现代滤波器。 经典滤波器是假定输入信号)(n x 中的有用成分和希望取出的成分各自占有不同的频带。这样,当)(n x 通过一个线性系统(即滤波器)后可讲欲去除的成分有效的去除。 现代滤波器理论研究的主要内容是从含有噪声的数据记录(又称时间序列)中估计出信号的某些特征或信号本身。 经典滤波器分为低通、高通、带通、带阻滤波器。每一种又有模拟滤波器(AF )和数字滤波器(DF )。对数字滤波器,又有IIR 滤波器和FIR 滤波器。 IIR DF 的转移函数是: ∑∑=-=-+==N k k k M r r r z a z b z X z Y z H 10 1)()()( FIR DF 的转移函数是: ∑-=-=10)()(N n n z n h z H FIR 滤波器可以对给定的频率特性直接进行设计,而IIR 滤波器目前最通用的方法是利用已经很成熟的模拟滤波器的设计方法进行设计。 2、滤波器的技术要求 低通滤波器: p ω:通带截止频率(又称通带上限频率) s ω:阻带下限截止频率 p α:通带允许的最大衰减 s α:阻带允许的最小衰减 (p α,s α的单位dB ) p Ω:通带上限角频率 s Ω:阻带下限角频率 (s p p T ω=Ω,s s s T ω=Ω)即 C p p F ωπ2=Ω C s s F ωπ2=Ω 3、IIR 数字滤波器的设计步骤:

数字滤波器的设计及实现

数字滤波器的设计及实现 【一】设计目的 1. 熟悉IIR 数字滤波器和FIR 数字滤波器的设计原理和方法; 2. 学会调用MATLAB 信号处理工具箱中的滤波器设计函数设计各种IIR 和FIR 数字滤波器,学会根据滤波要求确定滤波器指标参数; 3. 掌握用IIR 和FIR 数字滤波器的MA TLAB 实现方法,并能绘制滤波器的幅频特性、相频特性; 4. 通过观察滤波器的输入、输出信号的时域波形及其频谱,建立数字滤波的概念。 【二】设计原理 抑制载波单频调幅信号的数学表达式为 []))(2cos())(2cos(2 1)2cos()2cos()(000t f f t f f t f t f t s c c c ++-==ππππ (2.1) 其中,)2cos(t f c π称为载波,c f 为载波频率,)2cos(0t f π称为单频调制信号,0f 为调制正弦波信号频率,且满足0c f f >。由(2.1)式可见,所谓抑制载波单频调制信号,就是两个正弦信号相乘,它有2个频率成分:和频c f +0f ,差频c f -0f ,这两个频率成分关于载波频率c f 对称。所以,1路抑制载波单频调幅信号的频谱图是关于载波频率c f 对称的两根谱线。 复合信号st 产生函数mstg 清单: function st=mstg %产生信号序列st ,并显示st 的时域波形和频谱 %st=mstg 返回三路调幅信号相加形成的混合信号,长度N=800 N=800; %信号长度N 为800 Fs=10000;T=1/Fs;Tp=N*T; %采样频率Fs=10kHz ,Tp 为采样时间 t=0:T:(N-1)*T;k=0:N-1;f=k/Tp; fc1=Fs/10; %第1路调幅信号载波频率fc1=1000Hz fm1=fc1/10; %第1路调幅信号的调制信号频率fm1=100Hz fc2=Fs/20; %第2路调幅信号载波频率fc2=500Hz fm2=fc2/10; %第2路调幅信号的调制信号频率fm2=50Hz fc3=Fs/40; %第3路调幅信号载波频率fc3=250Hz fm3=fc3/10; %第3路调幅信号的调制信号频率fm3=25Hz xt1=cos(2*pi*fm1*t).*cos(2*pi*fc1*t); %产生第1路调幅信号 xt2=cos(2*pi*fm2*t).*cos(2*pi*fc2*t); %产生第2路调幅信号 xt3=cos(2*pi*fm3*t).*cos(2*pi*fc3*t); %产生第3路调幅信号 st=xt1+xt2+xt3; %三路信号相加,得到复合信号

十一种软件数字滤波算法

1 数字滤波 1.1 概述 在单片机进行数据采集时,会遇到数据的随机误差,随机误差是由随机干扰引起的,其特点是在相同条件下测量同一量时,其大小和符号会现无规则的变化而无法预测,但多次测量的结果符合统计规律。为克服随机干扰引起的误差,硬件上可采用滤波技术,软件上可采用软件算法实现数字滤波。滤波算法往往是系统测控算法的一个重要组成部分,实时性很强。 采用数字滤波算法克服随机干扰的误差具有以下优点: 1、数字滤波无需其他的硬件成本,只用一个计算过程,可靠性高,不存在阻 抗匹配问题。尤其是数字滤波可以对频率很低的信号进行滤波,这是模拟滤波器做不到的。 2、数字滤波使用软件算法实现,多输入通道可共用一个滤波程序,降低系统 开支。 3、只要适当改变滤波器的滤波程序或运算,就能方便地改变其滤波特性,这 对于滤除低频干扰和随机信号会有较大的效果。 4、在单片机系统中常用的滤波算法有限幅滤波法、中值滤波法、算术平均滤 波法、加权平均滤波法、滑动平均滤波等。 1.2 限幅滤波算法 原理:该运算的过程中将两次相邻的采样相减,求出其增量,然后将增量的绝对值,与两次采样允许的最大差值A进行比较。A的大小由被测对象的具体情况而定,如果小于或等于允许的最大差值,则本次采样有效;否则放弃本次值取上次采样值作为本次数据的样本。 优点:能有效克服因偶然因素引起的脉冲干扰。 缺点:无法抑制那种周期性的干扰,平滑度差。 说明:限幅滤波法主要用于处理变化较为缓慢的数据,如温度、物体的位置等。使用时,关键要选取合适的门限制A。通常这可由经验数据获得,必要时可通过实验得到。 1.3 中值滤波算法 原理:该运算的过程是对某一参数连续采样N次(N一般为奇数),然后把N次采样的值按从小到大排列,再取中间值作为本次采样值,整个过程实际上是一个序列排序的过程。

十种数字滤波方法

1、限幅滤波法(又称程序判断滤波法) A、方法: 根据经验判断,确定两次采样允许的最大偏差值(设为A) 每次检测到新值时判断: 如果本次值与上次值之差<=A,则本次值有效 如果本次值与上次值之差>A,则本次值无效,放弃本次值,用上次值代替本次值 B、优点: 能有效克服因偶然因素引起的脉冲干扰 C、缺点 无法抑制那种周期性的干扰 平滑度差 2、中位值滤波法 A、方法: 连续采样N次(N取奇数) 把N次采样值按大小排列 取中间值为本次有效值 B、优点: 能有效克服因偶然因素引起的波动干扰 对温度、液位的变化缓慢的被测参数有良好的滤波效果 自动化科协 C、缺点: 对流量、速度等快速变化的参数不宜 3、算术平均滤波法 A、方法: 连续取N个采样值进行算术平均运算 N值较大时:信号平滑度较高,但灵敏度较低 N值较小时:信号平滑度较低,但灵敏度较高 N值的选取:一般流量,N=12;压力:N=4 B、优点: 适用于对一般具有随机干扰的信号进行滤波 这样信号的特点是有一个平均值,信号在某一数值范围附近上下波动 C、缺点: 对于测量速度较慢或要求数据计算速度较快的实时控制不适用 比较浪费RAM 4、递推平均滤波法(又称滑动平均滤波法) A、方法: 把连续取N个采样值看成一个队列 队列的长度固定为N 每次采样到一个新数据放入队尾,并扔掉原来队首的一次数据.(先进先出原则) 把队列中的N个数据进行算术平均运算,就可获得新的滤波结果

N值的选取:流量,N=12;压力:N=4;液面,N=4~12;温度,N=1~4 B、优点: 对周期性干扰有良好的抑制作用,平滑度高 适用于高频振荡的系统 C、缺点: 灵敏度低 对偶然出现的脉冲性干扰的抑制作用较差 不易消除由于脉冲干扰所引起的采样值偏差 不适用于脉冲干扰比较严重的场合 比较浪费RAM 5、中位值平均滤波法(又称防脉冲干扰平均滤波法) A、方法: 相当于“中位值滤波法”+“算术平均滤波法” 连续采样N个数据,去掉一个最大值和一个最小值 然后计算N-2个数据的算术平均值 N值的选取:3~14 B、优点: 融合了两种滤波法的优点 对于偶然出现的脉冲性干扰,可消除由于脉冲干扰所引起的采样值偏差 C、缺点: 自动化科协 测量速度较慢,和算术平均滤波法一样 比较浪费RAM 6、限幅平均滤波法 A、方法: 相当于“限幅滤波法”+“递推平均滤波法” 每次采样到的新数据先进行限幅处理, 再送入队列进行递推平均滤波处理 B、优点: 融合了两种滤波法的优点 对于偶然出现的脉冲性干扰,可消除由于脉冲干扰所引起的采样值偏差 C、缺点: 比较浪费RAM 7、一阶滞后滤波法 A、方法: 取a=0~1 本次滤波结果=(1-a)*本次采样值+a*上次滤波结果 B、优点: 对周期性干扰具有良好的抑制作用 适用于波动频率较高的场合 C、缺点:

FIR数字滤波器设计与软件实现

实验二:FIR数字滤波器设计与软件实现 一、实验指导 1.实验目的 (1)掌握用窗函数法设计FIR数字滤波器的原理和方法。 (2)掌握用等波纹最佳逼近法设计FIR数字滤波器的原理和方法。(3)掌握FIR滤波器的快速卷积实现原理。 (4)学会调用MATLAB函数设计与实现FIR滤波器。 2.实验内容及步骤 (1)认真复习第七章中用窗函数法和等波纹最佳逼近法设计FIR数字滤波器的原理; (2)调用信号产生函数xtg产生具有加性噪声的信号xt,并自动显示xt及其频谱,如图1所示; 图1 具有加性噪声的信号x(t)及其频谱如图 (3)请设计低通滤波器,从高频噪声中提取xt中的单频调幅信号,要求信号幅频失真小于0.1dB,将噪声频谱衰减60dB。先观察xt的频谱,确定滤波器指标参数。

(4)根据滤波器指标选择合适的窗函数,计算窗函数的长度N,调用MATLAB函数fir1设计一个FIR低通滤波器。并编写程序,调用MATLAB快速卷积函数fftfilt实现对xt的滤波。绘图显示滤波器的频响特性曲线、滤波器输出信号的幅频特性图和时域波形图。(4)重复(3),滤波器指标不变,但改用等波纹最佳逼近法,调用MATLAB函数remezord和remez设计FIR数字滤波器。并比较两种设计方法设计的滤波器阶数。 提示:○1MATLAB函数fir1的功能及其调用格式请查阅教材; ○2采样频率Fs=1000Hz,采样周期T=1/Fs; ○3根据图1(b)和实验要求,可选择滤波器指标参数:通带截止频率fp=120Hz,阻带截至频率fs=150Hz,换算成数字频率,通带截止 频率 p 20.24 p f ωπ =T=π,通带最大衰为0.1dB,阻带截至频率 s 20.3 s f ωπ =T=π,阻带最小衰为60dB。 ○4实验程序框图如图2所示,供读者参考。

常用滤波方法

1、限幅滤波法(又称程序判断滤波法) 2、A、方法: 3、根据经验判断,确定两次采样允许的最大偏差值(设为A) 4、每次检测到新值时判断: 5、如果本次值与上次值之差<=A,则本次值有效 6、如果本次值与上次值之差>A,则本次值无效,放弃本次值,用上次值代替本次值 7、B、优点: 8、能有效克服因偶然因素引起的脉冲干扰 9、C、缺点 10、无法抑制那种周期性的干扰 11、平滑度差 12、 13、2、中位值滤波法 14、A、方法: 15、连续采样N次(N取奇数) 16、把N次采样值按大小排列 17、取中间值为本次有效值 18、B、优点: 19、能有效克服因偶然因素引起的波动干扰 20、对温度、液位的变化缓慢的被测参数有良好的滤波效果 21、C、缺点: 22、对流量、速度等快速变化的参数不宜 23、 24、 25、 26、3、算术平均滤波法 27、A、方法: 28、连续取N个采样值进行算术平均运算 29、N值较大时:信号平滑度较高,但灵敏度较低 30、N值较小时:信号平滑度较低,但灵敏度较高 31、N值的选取:一般流量,N=12;压力:N=4 32、B、优点: 33、适用于对一般具有随机干扰的信号进行滤波 34、这样信号的特点是有一个平均值,信号在某一数值范围附近上下波动 35、C、缺点: 36、对于测量速度较慢或要求数据计算速度较快的实时控制不适用 37、比较浪费RAM 38、 39、4、递推平均滤波法(又称滑动平均滤波法) 40、A、方法: 41、把连续取N个采样值看成一个队列 42、队列的长度固定为N 43、每次采样到一个新数据放入队尾,并扔掉原来队首的一次数据.(先进先出原则) 44、把队列中的N个数据进行算术平均运算,就可获得新的滤波结果

巴特沃斯数字(精选)低通滤波器

目录1.题目...................................................................... (2) 2.要求...................................................................... . (2) 3.设计原理...................................................................... .. (2) 3.1数字滤波器基本概念 (2) 3.2数字滤波器工作原理 (2) 3.3巴特沃斯滤波器设计原理 (2) 3.4脉冲响应不法...................................................................... . (4) 3.5实验所用MATLAB函数说明 (5)

4.设计思路...................................................................... (6) 5、实验内容...................................................................... .. (6) 5.1实验程序...................................................................... (6) 5.2实验结果分析...................................................................... (10) 6.心得体会...................................................................... .. (10) 7.参考文献...................................................................... .. (10) 一、题目:巴特沃斯数字低通滤波器 二、要求:利用脉冲响应不变法设计巴特沃斯数字低通滤波器,通带截止频率100HZ,采样频率1000HZ,通带最大衰减为0.5HZ,阻带最小衰减为10HZ,画出幅频、相频相应相应曲线。并假设一个信号x(t)=sin(2*pi*f1*t)+sin(2*pi*f2*t),其中f1=50HZ,f2=200HZ。用此信号验证滤波器设计的正确性。 三、设计原理 1、数字滤波器的基本概念 所谓数字滤波器,是指输入、输出均为数字信号,通过数值运算处理改变输入信号所含频率成分的相对比例,或者滤波器除某些频率成分的数字器件或程序,因此,数字滤波的概念和模拟滤波相同,只是的形式和实现滤波方法不同。正因为数字滤波通过数值运算实现滤波,所以数字滤波处理精度高、稳定、体积小、质量轻、灵活、不存在阻抗匹配问题,可以实验模拟滤波器无法实现的特殊滤

实验四(IIR数字滤波器设计及软件实现)讲解学习

实验四(I I R数字滤波器设计及软件实现)

10.4实验四IIR数字滤波器设计及软件实现 10.4.1 实验指导 1.实验目的 (1)熟悉用双线性变换法设计IIR数字滤波器的原理与方法; (2)学会调用MATLAB信号处理工具箱中滤波器设计函数(或滤波器设计分析工具fdatool)设计各种IIR数字滤波器,学会根据滤波需求确定滤波器指标参数。 (3)掌握IIR数字滤波器的MATLAB实现方法。 (4)通过观察滤波器输入输出信号的时域波形及其频谱,建立数字滤波的概念。 2.实验原理 设计IIR数字滤波器一般采用间接法(脉冲响应不变法和双线性变换法),应用最广泛的是双线性变换法。基本设计过程是:①先将给定的数字滤波器的指标转换成过渡模拟滤波器的指标;②设计过渡模拟滤波器;③将过渡模拟滤波器系统函数转换成数字滤波器的系统函数。MATLAB信号处理工具箱中的各种IIR数字滤波器设计函数都是采用双线性变换法。第六章介绍的滤波器设计函数butter、cheby1 、cheby2 和ellip可以分别被调用来直接设计巴特沃斯、切比雪夫1、切比雪夫2和椭圆模拟和数字滤波器。本实验要求读者调用如上函数直接设计IIR数字滤波器。 本实验的数字滤波器的MATLAB实现是指调用MATLAB信号处理工具箱函数filter对给定的输入信号x(n)进行滤波,得到滤波后的输出信号y(n)。 3. 实验内容及步骤 (1)调用信号产生函数mstg产生由三路抑制载波调幅信号相加构成的复合信号st,该函数还会自动绘图显示st的时域波形和幅频特性曲线,如图

10.4.1所示。由图可见,三路信号时域混叠无法在时域分离。但频域是分离的,所以可以通过滤波的方法在频域分离,这就是本实验的目的。 图10.4.1 三路调幅信号st 的时域波形和幅频特性曲线 (2)要求将st 中三路调幅信号分离,通过观察st 的幅频特性曲线,分别确定可以分离st 中三路抑制载波单频调幅信号的三个滤波器(低通滤波器、带通滤波器、高通滤波器)的通带截止频率和阻带截止频率。要求滤波器的通带最大衰减为0.1dB,阻带最小衰减为60dB 。 提示:抑制载波单频调幅信号的数学表示式为 0001()cos(2)cos(2)[cos(2())cos(2())]2 c c c s t f t f t f f t f f t ππππ==-++ 其中,cos(2)c f t π称为载波,f c 为载波频率,0cos(2)f t π称为单频调制信号,f 0为调制正弦波信号频率,且满足0c f f >。由上式可见,所谓抑制载波单频调幅信号,就是2个正弦信号相乘,它有2个频率成分:和频0c f f +和差频0c f f -,这2个频率成分关于载波频率f c 对称。所以,1路抑制载波单频调幅 信号的频谱图是关于载波频率f c 对称的2根谱线,其中没有载频成分,故取名 为抑制载波单频调幅信号。容易看出,图10.4.1中三路调幅信号的载波频率分

数据处理中的几种常用数字滤波算法

数据处理中的几种常用数字滤波算法 王庆河王庆山 (济钢集团计量管理处,济南250101) (济钢集团中厚板厂,济南250101) 摘要随着数字化技术的发展,数字滤波技术成为数字化仪表和计算机在数据采集中的关键性技术,本文对常用的几种数字滤波算法的原理进行描述,并给出必要的数学模型。 关键词:数据采样噪声滤波移动滤波 一、引言 在仪表自动化工作中,经常需要对大量的数据进行处理,这些数据往往是一个时间序列或空间序列,这时常会用到数字滤波技术对数据进行预处理。数字滤波是指利用数学的方法对原始数据进行处理,去掉原始数据中掺杂的噪声数据,获得最具有代表性的数据集合。 数据采样是一种通过间接方法取得事物状态的技术如将事物的温度、压力、流量等属性通过一定的转换技术将其转换为电信号,然后再将电信号转换为数字化的数据。在多次转换中由于转换技术客观原因或主观原因造成采样数据中掺杂少量的噪声数据,影响了最终数据的准确性。 为了防止噪声对数据结果的影响,除了采用更加科学的采样技术外,我们还要采用一些必要的技术手段对原始数据进行整理、统计,数字滤波技术是最基本的处理方法,它可以剔除数据中的噪声,提高数据的代表性。 二、几种常用的数据处理方法 在实际应用中我们所用的数据滤波方法很多,在计算机应用高度普及的今天更有许多新的方法出现,如逻辑判断滤波、中值滤波、均值滤波、加权平均 2中值滤波 中值滤波是对采样序列按大小排滤波、众数滤波、一阶滞后滤波、移动滤波、复合滤波 等。 假设我们采用前端仪表采集了一组采样周期为1s的温度数据的时间序列 T0为第0s 采集的温度值,Ti为第is采集的温度值。下面介绍如何应用几种不同滤波算法来计算结果温度T。 1.程序判断滤波 当采样信号由于随机干扰、误检测或变送器不稳定引起严重失真时,可采用程序判断滤波算法,该算法的基本原理是根据生产经验,确定出相邻采样输入信号可能的最大偏差△T,若超过此偏差值,则表明该输入信号是干扰信号,应该去掉,若小于偏差值则作为此次采样值。 (1)限幅滤波 限幅滤波是把两次相邻的采集值进行相减,取其差值的绝对值△T作为比较依据,如果小于或等于△T,则取此次采样值,如果大于△T,则取前次采样值,如式(1)所示:

基于MATLAB的数字滤波器的设计要点

基于MATLAB 的数字滤波器的设计 1 引言 数字滤波器是指完成信号滤波处理功能的,用有限精度算法实现的离散线性非时变系统,其输入是一组(由模拟信号取样和量化的)数字量,其输出是经过变换或说处理的另一组数字量。数字滤波器具有稳定性高、精度高、灵活性大等突出优点。这里所说的数字滤波器是指理想带通,低通等的频率选择数字滤波器。 数字滤波器设计的一个重要步骤是确定一个可实现的传输函数H(z),这个确定传输函数H(z)的过程称为数字滤波器设计。数字滤波器的一般设计过程为:(1)按照实际需要,确定滤波器的性能要求(通常在频域内给定数字滤波的性能要求)。(2)寻找一满足预定性能要求的离散时间线性系统。(3)用有限精度的运算实现所设计的系统。(4)通过模拟,验证所设计的系统是否符合给定性能要求。 2 数字滤波器的设计 滤波器分为两种,分别为模拟滤波器和数字滤波器。数字滤波器可以理解为是一个计算程序或算法,将代表输入信号的数字时间序列转化为代表输出信号的数字时间序列,并在转化的过程中,使信号按预定的形式变化。数字滤波器有多种分类,从数字滤波器功能上分可分为低通、高通、带阻、带通滤波器,根据数字滤波器冲激响应的时域特征,可将数字滤波器分为两种,即无限长冲激响应滤波器(IIR )和有限长冲激响应滤波器(FIR )。 数字滤波器指标:一般来说,滤波器的幅频特性是分段常数的,以低通为例,在通带内逼近于1,阻带内逼近与0,实际设计的滤波器并非是锐截止的通带和阻带两个范围,两者之间总有一个过渡带。在设计滤波器时事先给定幅频特性允许误差,在通带范围内幅度响应以误差1σ逼近于1,在阻带内幅度响应以误差2σ逼近于0。 π σσ≤≤≤≤≤≤-w w e H w w e H r jw c jw ,2|)(|,1|)(|11 (1) 式中wc 和wr 分别为通带边界频率和阻带边界频率,wr-wc 为过渡带。在具体的技术指标中往往用通带波动σ来表示1σ,用最小阻带衰减At 来表示2σ,其具体的对应公式这里就不详述了。 2.1 IIR 数字滤波器设计 IIR DF 的冲激响应h(n)是无限长的,其输入输出的关系为: )()()(i n x i h n y i -= ∑+∞ -∞ = (2) 系统函数为 ∑+∞ =-∞ =-= n n n z n h z H )()(= ∑∑=-=--n k k k m r r r z a z b 1 1 (3) 设计无限长单位脉冲响应(IIR )数字滤波器一般可有三种方法。 第一种方法,先设计一个合适的模拟滤波器,然后将其数字话,即将S 平面映射到Z 平面得到所需的数字滤波器。模拟滤波器的设计技巧非常成熟,不仅得到的是闭合形式的公式,而且设计系数已经表格化了。因此,由模拟滤波器设计数字滤波器的方法准确,简便,得到普遍采用。对于这种方法,工程上

数字滤波的优点及10种常用数字滤波方法比较

数字滤波的优点及10 种常用数字滤波方法比较 在微机控制系统的模拟输入信号中,一般均含有各种噪声和干扰,他们来自被测信号源本身、传感器、外界干扰等。为了进行准确测量和控制,必须消除被测信号中的噪声和干扰。噪声有2 大类: (1)周期性的信号,其典型代表为50Hz 的工频干扰,对于这类信号,采用积分时间等于20ms 整倍数的双积分A/D 转换器,可有效地消除其影响; (2)非周期的不规则随机信号,对于随机干扰,可以用数字滤波方法予以削弱或滤除。 所谓数字滤波,就是通过一定的计算或判断程序减少干扰信号在有用信号中的比重,因此他实际上是一个程序滤波。数字滤波器克服了模拟滤波器的许多不足,他与模拟滤波器相比有以下优点: (1) 数字滤波器是用软件实现的,不需要增加硬设备,因而可靠性高、稳定性好,不存在阻抗匹配问题。 (2) 模拟滤波器通常是各通道专用,而数字滤波器则可多通道共享,从而降低了成本。 (3)数字滤波器可以对频率很低(如0.01Hz) 的信号进行滤波,而模拟滤波器由于受电容容量的限制,频率不可能太低。 (4)数字滤波器可以根据信号的不同,采用不同的滤波方法或滤

波参数,具有灵活、方便、功能强的特点。 10 种数字滤波方法 1、限副滤波 方法:根据经验判断,确定两次采样允许的最大偏差值(设为A),每次检测到新值时判断:如果本次值与上次值之差A, 则本次值无效,放弃本次值,用上次值代替本次值优点:能有效克服因偶然因素引起的脉冲干扰。缺点:无法抑制那种周期性的干扰,平滑度差。 2、中位值滤波法 方法:连续采样N 次(N 取奇数),把N 次采样值按大小排列,取中间值为本次有效值。 优点:能有效克服因偶然因素引起的波动干扰,对温度、液位的变化缓慢的被测参数有良好的滤波效果。缺点:对流量、速度等快速变化的参数不宜。 3、算术平均滤波法 方法:连续取N 个采样值进行算术平均运算。N 值较大时:信号平滑度较高,但灵敏度较低;N 值较小时:信号平滑度较低,但灵敏度较高。N 值的选取:一般流量,N=12; 压力: N=4 优点:适用于对一般具有随机干扰的信号进行滤波,这样信 号的特点是有一个平均值,信号在某一数值范围附近上下波动。缺点:对于测量速度较慢或要求数据计算速度较快的实时控制不适用,比较浪费RAM 。 4、递推平均滤波法(又称滑动平均滤波法)方法:把连续取

IIR数字低通滤波器

IIR数字低通滤波器 一、设计目的 课程设计是理论教学的延伸,是掌握所学知识的一种重要手段,对于贯彻理论联系实际、提高教育质量,培养合格人才等具有特殊作用本次课程设计一方面通过MA TLAB仿真设计内容,使学生加深对理论知识理解的同时增强其逻辑斯维的能力,另一方面对课堂教学中的理论知识做一个总结和补充。 二、设计要求 2.1 简述设计目的 2.2 阐述设计原理 2.3 按步骤设计滤波器,给出系统函数 2.4 用MATLAB语言编程、绘制幅频特性曲线 2.5 定性分析两种设计方法的滤波器的性能。比较优缺点,并判定设计是否能满足要求 三、设计原理 3.1 巴特沃斯滤波器原理 由于已知指标,故可求出滤波器的阶数N,由式知,求出归一化极点,将代入,得到归一化传输函数。也可以根据N查表得到归一化传输函数。然后再将去归一化。将代入,得到实际的滤波器传输函数Ha(S)。这里3dB截止频率可以按照或。这样即可设计出低通巴特沃斯滤波器。巴特沃斯滤波器的幅度响应在通带内具有最平坦的特性,且在通带和阻带内幅度的特性,是单调变化的。模拟巴特沃斯滤波器的幅度平方函数为=2N,式中N称为滤波器的阶数,为角频率,在处幅度响应的平方为。 3.2 双线性变换法工作原理

使数字滤波器的频率响应与模拟滤波器的频率响应相似。冲激响应不变不得法、阶跃响应不变法:时域模仿逼近缺点是产生频率响应的混叠失真双线性变换法也是一种由S平面到z平面的映射过程,双线性变换法与脉冲响应不变法不同,它是一种从S 平面到z平面简单映射。双线性变换中数字域与频率和模拟频率之间的非线性关系限制了它的应用范围,只有当非线性失真是允许的或能被裣时,才能采用双线性变换法,通常低通、高通、带通和带阻等滤波器等具有分段恒定的频率特性,可以采用预畸变的方法来补偿频率畸变,因此可以采用双线性变换设计方法。 3.3 脉冲响应不变法工作原理 冲激响应不变法遵循的准则是使数字滤波器的单位取样响应与参照的模拟滤波器的脉冲响应的取样值完全一样,即h(n)=ha(nT),其中T为取样周期。实际是由模拟滤波器转换成为数字滤波器,就是要建立模拟系统函数Ha(S)与数字系统函数H(z)之间的关系。脉冲响应不变法是从S平面映射到z平面,这种映射不是简单的代数映射,而是S平面的每一条宽为的横带重复地映射到整个z平面。 四、按步骤设计滤波器 4.1用脉冲响应不变法设计低通滤波器 4.1.1数字低通的技术指标为 4.1.2模拟低通的技术指标为 4.1.3设计巴特沃斯低通滤波器。先计算阶数N及3dB截止频率。 取N=9.。将和代入公式,得到3dB截止频率,此值满足通带技术要求,同时给阻带衰减留一定余量,这对防止频率混叠有一定好处。根据阶数N=9,查表得到归一化传输函数为 为去归一化,将代入中,得到实际的传输函数为 4.1.4 用脉冲响应不变法将转换成如下:

FIR数字滤波器的算法实现与习题(1)

FIR数字滤波器的算法实现与习题 [例3] 窗函数设计法实现一个低通数字滤波器,要求通带截止频率10kHz,阻带截止频率22kHz,阻带衰减大于75dB,采样频率f s=75kHz。 过渡带宽度=通带截止频率+过渡带宽度/2=10kHz+12/2kHz=16 kHz 数字截止频率 Ω1=2π×f1/ f s=2π×16/50=0.64π 理想低通滤波器单位脉冲响应 h1(n)=sin(nΩ1)/n/π=sin(0.64πn)/n/π 选择布莱克曼窗,滤波器长度为 N=5.98 f s过渡带宽度=5.98×50/12=24.9 取N=25,布莱克曼窗函数为 w(n)=0.42-0.5cos(2πn/24)+0.08cos(4πn/24) 滤波器单位脉冲响应为 h(n)= h1(n)w(n) n≤N-1 h(n)=0 n< N-1 根据上式计算出,然后将单位脉冲响应移位为因果序列,完成的滤波器差分方程为y(n)=0.001x(n-2) -0.002x(n-3) -0.002x(n-4)+0.01x(n-5)-0.009x(n-6)-0.018x(n-7)+0.049x(n-8) -0.02x(n-10)+0.11x(n-11)+0.28x(n-11)+0.64x(n-13)+0.28x(n-14)-0.11x(n-15)-0.02x(n-16)-0.049x( n-17)-0.018x(n-18)-0.009x(n-19)+0.01x(n-20)-0.002x(n-21)-0.002x(n-22)+0.001x(n-23) 数字滤波器程序如下: #include “math.h”//数学函数头文件 #define N 25 //FIR阶数N #define PI 3.1415926 float InputWave( );//输入波形 float FIR();// FIR滤波函数声明 float fHn[N]={0.0,0.0,0.001,-0.002,-0.002,0.01,-0.009,//滤波器系数-0.018,0.049,-0.02,0.11,0.28,0.64,0.28, -0.11,-0.02,0.049,-0.018,-0.009,0.01, -0.002,-0.002,0.001,0.0,0.0}; float fXn[N]={0.0}; float fInput,fOutput; float fSignal1,fSignal2; float fStepSignal1,fStepSignal2; float f2PI;//2*PI int i; float FIN[256],FOUT[256];//输入信号与输出信号 i int nIn,nOut; main(void) { nIn=0;nOut=0; f2PI =2*PI; fSignal1=0.0; fSignal2=PI*0.1;

相关主题
相关文档 最新文档