第一篇:数字滤波器调研报告
数字滤波器调研报告
一、数字滤波器
数字滤波器由数字乘法器、加法器和延时单元组成的一种算法或装置。数字滤波器的功能是对输入离散信号的数字代码进行运算处理,以达到改变信号频谱的目的。数字滤波器对信号滤波的方法是:用数字计算机对数字信号进行处理,处理就是按照预先编制的程序进行计算。数字滤波器的原理如图所示,它的核心是数字信号处理器。
二、数字滤波器发展背景
随着信息科学与计算技术的迅速发展,数字信号处理的理论与应用得到飞跃式发展,形成了一门极为重要的学科。不仅如此,它还以不同的形式影响及渗透到其他的学科中去。不论是国民经济或者是国防建设都与之息息相关,紧密相连。
我们现实生活中会遇到多种多样的信号,例如广播信号、电视信号、雷达信号、通信信号、导航信号、射电天文信号、生物医学信号、控制信号、气象信号、地震勘探信号、机械振动信号、遥感遥测信号等等。上述这些信号大部分是模拟信号,也有小部分是数字信号。模拟信号是自变量的连续函数,自变量可以是一维的,也可以是二维或多维的。大多数情况下一维模拟信号的自变量是时间,经过时间上的离散化(采样)和幅度上的离散化(量化),这类模拟信号便成为一维数字信号。因此,数字信号实际上是用数字序列表示的信号,语音信号经采样和量化后,得到的数字信号是一个一维离散时间序列;而图像
信号经采样和量化后,得到的数字信号是一个二维离散空间序列。信号处理的目的一般是对信号进行分析、变换、综合、估值与识别等。如何在较强的噪声背景下提取出真正的信号或信号的特征,并将其应用于工程实际是信号处理的首要任务。根据处理对象的不同,信号处理技术分为模拟信号处理系统和数字信号处理系统。数字信号处理(Digital signal Processing,DSP)与模拟信号处理相比有许多优点,如相对于温度和工艺的变化数字信号要比模拟信号更稳健,在数字表示中,精度可以通过改变信号的字长来更好地控制,所以DSP技术可以在放大信号的同时去除噪声和干扰,而在模拟信号中信号和噪声同时被放大,数字信号还可以不带误差地被存储和恢复、发送和接收、处理和操纵。许多复杂的系统可以用高精度、大信噪比和可重构的数字技术来实现。
目前,数字信号处理已经发展成为一项成熟的技术,并且在许多应用领域逐步代替了传统的模拟信号处理系统,如通讯、系统控制、电力系统、故障检测、语音、图像、自动化仪器、航空航天、铁路、生物医学工程、雷达、声纳、遥感遥测等。
数字信号处理中一个非常重要且应用普遍的技术就是数字滤波。所谓数字滤波,是指其输入、输出均为数字信号,通过一定的运算关系改变输入信号所含的频率成分的相对比例或滤除某些频率成分,达到提取和加强信号中的有用成份,消弱无用的干扰成份的目的。数字滤波与模拟滤波相比,有精度高、可靠性高、灵活性好等突出优点,可以满足对幅度和相位的严格要求,还能降低开发费用,缩短研制到应用的时间,在很多领域逐步代替了传统的模拟信号系统。
数字滤波器,在数字信号处理中有着广泛的应用,因此,无论是在理论研究上还是在如通讯、HDTV(高清晰度电视)、雷达、图象处理、数字音频等实际应用上都有着美好的技术前景和巨大的实用价值。
三、国内外发展状况
数字滤波器精确度高、使用灵活、可靠性高,具有模拟设备所没有的许多优点,已广泛地应用于各个科学技术领域, 例如数字电视、语音、通信、雷达、声纳、遥感、图像、生物医学以及许多工程应用领域。随着信息时代数字时代的到来,数字滤波技术已经成为一门极其重要的学科和技术领域。以往的滤波器大多采用模拟电路技术,但是,模拟电路技术存在很多难以解决的问题,例如,模拟电路元件对温度的敏感性,等等。而采用数字技术则避免很多类似的难题,当然数字滤波器在其他方面也有很多突出的优点,这些都是模拟技术所不能及的,所以采用数字滤波器对信号进行处理是目前的发展方向。关于数字滤波器的研究,在40年代末期就有人研究过它的可能性问题,在50年代也有人在研究生班讨论过数字滤波的问题。直到60年代中期美国科学家库利、图基总结前人的研究成果,经过长期的研究,才开始形成了一套完整关于数字滤波器的正规理论。在这一时期,各种各样的数字滤波器原理结构和特性被提出,并且出现了各
种数字滤波器的逼近方法和实现方法,对递归和非递归两类滤波器作了全面的比较和分析。数字滤波器经历了有限冲激响应(FIR)和无限冲激响应(IIR)关系的认识转化过程。当利用快速傅利叶变换(FFT)来实现卷积运算的概念被提出之后,发现高阶有限冲激响应滤波器也可用较高的运算效率来实现,因此使得人们对高性能的有限冲激响应滤波器的设计方法进行了大量的研究分析,从而出现了此后数字滤波器设计中频域方法与时域方法的局面。
我国在DSP技术起步较早,产品的研究开发成绩斐然,基本上与国外同步发展,而在FPGA方面起步较晚。全国有100来所高等院校从事DSP&FPGA的教学和科研,除了一部分DSP芯片需要从国外进口外,在信号处理理论和算法方面,与国外处于同等水平。而在FPGA信号处理和系统方面,有了喜人的进展,正在进行与世界先进国家同样的研究。比如西北工业大学和国防科学技术大学的ATR实验室采用了FPGA可重构计算系统进行机载图像处理和自动目标识别,主要是利用该系统进行复杂的卷积运算,同时利用它的可变柔性来达到自适应的目的。北京理工大学研究利用FPGA提高加解密运算的速度,等等。
随着我国科学技术的快速发展,国内有很多专家教授在数字滤波领域展开长期的深入研究,如天津大学的王兆华教授、山东大学的赖晓平教授等。无论是在理论方面还是在工程技术领域,都有很多科研成果。因而数字滤波器不断应用在各行各业里,我国现有滤波器的种类及应用技术己基本上满足现有各种电信设备需求。从整体而言,我国无源滤波器发展比有源滤波器迅速,而数字滤波器比模拟滤波器的发展较缓慢。
关于数字滤波器理论研究的发展也带来了数字滤波器在实现上的空前发展。20世纪60年代起,由于计算机技术、集成工艺和材料工业的发展,滤波器的发展上了一个新台阶,朝着低功耗、高精度、小体积、多功能、稳定可靠和价廉等方向努力,其中高精度、小体积、多功能、稳定可靠成为70年代以后的主攻方向,导致数字滤波器、RC有源滤波器、开关电容滤波器和电荷转移器等各种滤波器的飞速发展。到70年代后期,上述几种滤波器的单片集成己被研制出来并得到应用,90年代至现在主要致力于把各类滤波器应用于各类产品的开发和研制。当然,对滤波器本身的研究仍在不断进行。
目前,国外有许多院校和科研机构在研究基于FPGA的DSP应用,比较突出的有Denmark大学的研究小组正在从事FPGA实现数字滤波器的研究。由于FPGA实现乘法器有困难,因此他们重点研究开发无乘法的滤波器算法。加州大学洛杉矶分校的研究小组采用运行时重构技术开发了一种视频通讯系统,该系统用一片FPGA可每帧重构四次完成视频图像压缩和传送的操作。此外,他们还在进行Mojave项目的开发工作,力图采用运行时重构技术来实现自动目标识别应用。
第二篇:数字滤波器的设计
实验报告
课程名称 数字信号处理实验
实验名称 数字滤波片的设计
姓名
田红亮
学号
201005020216
专业班级
电信1002班
实验日期
成绩
指导老师
(①实验目的②实验原理⑶主要仪器设备④实验内容与步骤⑤实验数据记录与处理⑥实验结果与分析⑦问题建议)
一、实验目的
1.了解IIR数字滤波器的特点; 2. 掌握IIR数字滤波器的设计方法;
3.掌握脉冲响应不变法和双线性变换法设计数字滤波器的方法。
二、实验所采用的功能函数
1.巴特沃斯滤波器阶数选择函数
(1)[N,wc]=buttord(wp,ws,αp,αs)作用: 计算巴特沃斯数字滤波器的阶数N和3dB截止频率wc, wc为数字频率,单位rad。
说明: 调用参数wp,ws分别为数字滤波器的通带、阻带截止频率的归一化值,要求:0≤wp≤1,0≤ws≤1。αp,αs分别为通带最大衰减和组带最小衰减(dB)。当ws≤wp时,为高通滤波器;当wp和ws为二元矢量时,为带通或带阻滤波器,这时wc也是二元向量。
(2)[N,Ωc]=buttord(Ωp,Ωs,αp,αs,‘s’)作用: 计算巴特沃斯模拟滤波器的阶数N和3dB截止频率Ωc。说明:Ωp,Ωs,Ωc均为实际模拟角频率。
模拟频率f:每秒经历多少个周期,单位Hz,即1/s,信号的真实频率,可用于模拟信号和数字信号;
模拟角频率Ω:每秒经历多少弧度,单位rad/s,通常只于模拟信号; 数字频率w:每个采样点间隔之间的弧度,单位rad,通常只用于数字信号。
关系:Ω=2pi*f;w = Ω*T=2pi*f/F。(F=1/Ts为采样频率,Ts为采样间隔)
实验报告
课程名称 数字信号处理实验
实验名称 数字滤波片的设计
姓名
田红亮
学号
201005020216
专业班级
电信1002班
实验日期
成绩
指导老师
(①实验目的②实验原理⑶主要仪器设备④实验内容与步骤⑤实验数据记录与处理⑥实验结果与分析⑦问题建议)
2.完整巴特沃斯滤波器设计函数
(1)格式: [b,a]=butter(N,wc,‘ftype’)
作用: 计算N阶巴特沃斯数字滤波器系统函数分子、分母多项式的系数向量b、a。
说明: 调用参数N和wc分别为巴特沃斯数字滤波器的阶数和3dB截止频率的归一化值,一般是调用buttord格式(1)计算N和wc。系数b、a是按照z-1的升幂排列。
(2)格式:[B,A]=butter(N,Ωc,‘ftype’,‘s’)
作用:计算巴特沃斯模拟滤波器系统函数的分子、分母多项式系数向量。
说明:调用参数N和Ωc分别为巴特沃斯模拟滤波器的阶数和3dB截止频率(实际角频率),可调用buttord(2)格式计算N和Ωc。系数B、A按s的正降幂排列。
tfype为滤波器的类型:
◇ftype=high时,高通;Ωc只有1个值。
◇ftype=stop时,带阻;Ωc=[Ωcl,Ωcu],分别为带阻滤波器的通带3dB下截止频率和上截止频率。
◇ ftype缺省时:若Ωc只有1个值,则默认为低通;若Ωc有2个值,则默认为带通;其通带频率区间Ωcl<Ω <Ωcu。3.求离散系统频响特性的函数freqz()格式:[H,w]=freqz(b,a,N)说明:b和a分别为离散系统的系统函数分子、分母多项式的系数向量,返回量H则包含了离散系统频响在 0~pi范围内N个频率等分点的值(其中N为正整数),w则包含了范围内N个频率等分点。调用默认的N时,其值是512。可以先调用freqz()函数计算系统的频率响应,然后利用abs()和angle()函数及plot()函数,绘制出系统的频响曲线。
实验报告
课程名称 数字信号处理实验
实验名称 数字滤波片的设计
姓名
田红亮
学号
201005020216
专业班级
电信1002班
实验日期
成绩
指导老师
(①实验目的②实验原理⑶主要仪器设备④实验内容与步骤⑤实验数据记录与处理⑥实验结果与分析⑦问题建议)
4.模拟域频率变换函数
lp2lp(模拟低通滤波器变换为低通滤波器)lp2hp(模拟低通滤波器变换为高通滤波器)lp2bs(模拟低通滤波器变换为带阻滤波器)lp2bp(模拟低通滤波器变换为带通滤波器)
5.滤波器离散化函数:
bilinear(使用双线性变换法把模拟滤波器转换为数字滤波器)impinvar(使用脉冲响应不变法把模拟滤波器转换为数字滤波器)
三、实验原理
IIR数字滤波器的人物就是寻求一个因果、物理可实现的系统函数MMbH(z)r0NzrrAr1Nkk1(1crzz1),使它的频率响应H(ej)H(z)1k1ak0zej满足kz(1d)所希望得到的频域指标,即符合给定的通带衰耗、阻带衰耗、通带截止频率和阻带截止频率。
IIR数字滤波器的设计方法有间接法、直接法和计算机辅助优化设计法等。本项实验主要采用间接法计算IIR数字滤波器的设计。该设计方法就是先根据频率响应指标,设计出相应的模拟滤波器H(s),再通过脉冲响应不变法或双线性变换法转换为数字滤波器H(z),其过程如下:
频域指标 数字指标转换为模拟指标 设计模拟滤波器 双线性变换法 脉冲响应不变法 数字滤波器 图3-1 IIR数字滤波器的设计方法
实验报告
课程名称 数字信号处理实验
实验名称 数字滤波片的设计
姓名
田红亮
学号
201005020216
专业班级
电信1002班
实验日期
成绩
指导老师
(①实验目的②实验原理⑶主要仪器设备④实验内容与步骤⑤实验数据记录与处理⑥实验结果与分析⑦问题建议)
四、实验内容及步骤
1.用直接设计法设计BW(巴特沃斯)高通数字滤波器。
采样频率为200Hz,通带中允许的最大衰减为0.5dB,阻带内的最小衰减为40dB,通带上限临界频率为40Hz,阻带下限临界频率为30Hz。 设计步骤:
(1)确定滤波器的设计指标:p、s、p、s;
(2)运用函数buttord(p,s,p,s)计算巴特沃斯高通滤波器的阶数N和归一化3db截止频率c;
(3)运用函数butter(N,c)求得高通滤波器的系统函数的分子、分母多项式形式;
(4)作图显示滤波器的幅频特性和相位特性。程序:
fp=40;%带通截止频率 fs=30;%阻通截止频率 ft=200;%采样频率
rp=0.5;rs=40;wp=fp/(ft/2);%利用Nyquist频率进行归一化 ws=fs/(ft/2);[n,wc]=buttord(wp,ws,rp,rs);%求数字滤波器的最小阶数和截止频率
[b,a]=butter(n,wc, 'high');%设计高通数字滤波器系数b,a [H,W]=freqz(b,a);%求系统频响特性,W为数字角频率,单位rad plot(W*ft/(2*pi),abs(H));grid;%绘出频率响应曲线 xlabel('频率/Hz');ylabel('幅值');
实验报告
课程名称 数字信号处理实验
实验名称 数字滤波片的设计
姓名
田红亮
学号
201005020216
专业班级
电信1002班
实验日期
成绩
指导老师
(①实验目的②实验原理⑶主要仪器设备④实验内容与步骤⑤实验数据记录与处理⑥实验结果与分析⑦问题建议)
2.脉冲响应不变法设计数字滤波器
使用脉冲响应不变法设计数字低通滤波器,其指标为:通带临界频率0.5,通带内衰减小于1dB;阻带临界频率0.8,阻带内衰减大于15dB,采样频率为100 Hz 设计步骤:
(1)确定数字频率指标;
(2)采用脉冲响应不变法求得模拟频率指标;(3)将模拟频率转化为模拟低通滤波器的设计指标;(4)求得模拟低通滤波器的截止频率;(5)求得模拟低通滤波器的阶数;(6)设计归一化模拟低通滤波器;
(7)把归一化模拟低通滤波器转化为模拟带通滤波器;(8)利用脉冲响应不变法把模拟滤波器转换为数字滤波器;(9)画出幅度响应和相位响应图。fs=100 wp=0.5*pi;ws=0.8*pi;
实验报告
课程名称 数字信号处理实验
实验名称 数字滤波片的设计
姓名
田红亮
学号
201005020216
专业班级
电信1002班
实验日期
成绩
指导老师
(①实验目的②实验原理⑶主要仪器设备④实验内容与步骤⑤实验数据记录与处理⑥实验结果与分析⑦问题建议)
rp=1;rs=15;Wp=wp*fs;%由数字角频率转换为模拟角频率 Ws=ws*fs;[n,wc]=buttord(Wp,Ws,rp,rs,'s');%选择滤波器的最小阶数 [z,p,k]=buttap(n);[Bp,Ap]=zp2tf(z,p,k);%将零极点增益转换为分子分母参数[b,a]=lp2lp(Bp,Ap,wc)% 将低通原型转换为模拟低通 [bz,az]=impinvar(b,a,fs);%脉冲相应不变法变换为数字滤波器
[H,W]= freqz(bz,az);%求解数字滤波器的频率响应 plot(W*fs/(2*pi),abs(H));grid;xlabel('频率/hz');ylabel('幅值');
五、问题与思考
使用双线性变换法设计数字带通滤波器,其指标为:要求带通范围100-250Hz,带阻上限为300Hz,下限为50Hz,通带内纹波小于3dB,阻带纹波为30 dB,抽样频率为1000 Hz。
ft=1000;
实验报告 课程名称 数字信号处理实验
实验名称 数字滤波片的设计
姓名
田红亮
学号
201005020216
专业班级
电信1002班
实验日期
成绩
指导老师
(①实验目的②实验原理⑶主要仪器设备④实验内容与步骤⑤实验数据记录与处理⑥实验结果与分析⑦问题建议)
fpl=100;fph=250;wp1= fpl *2*pi;%临界频率采用模拟角频率表示 wph= fph*2*pi;%临界频率采用模拟角频率表示 wp=[ wp1,wph];wpb=wp/ ft;%求数字频率 rp=3;rs=30;fsl=50;fsh=300;ws1= fsl *2*pi;%临界频率采用模拟角频率表示 wsh= fsh *2*pi;%临界频率采用模拟角频率表示 ws=[ ws1, wsh];wsb=ws/ ft;%求数字频率
OmegaP=2* ft *tan(wpb/2);%频率预畸
OmegaS=2* ft *tan(wsb/2);%频率预畸 %选择滤波器的最小阶数
[n,Wn]=buttord(OmegaP,OmegaS, rp, rs,'s');%此处是代入经预畸变后获得的归一化模拟频率参数
[bt,at]=butter(n,Wn,'s');% 设计一个n阶的巴特沃思模拟滤波器
实验报告 课程名称 数字信号处理实验
实验名称 数字滤波片的设计
姓名
田红亮
学号
201005020216
专业班级
电信1002班
实验日期
成绩
指导老师
(①实验目的②实验原理⑶主要仪器设备④实验内容与步骤⑤实验数据记录与处理⑥实验结果与分析⑦问题建议)[bz,az]=bilinear(bt,at, ft);%双线性变换为数字滤波器 [H,W] = freqz(bz,az);%求解数字滤波器的频率响应 plot(W*ft/(2*pi),abs(H));grid;xlabel('频率/Hz');ylabel('幅值');
六.实验心得体会
在滤波器设计实验之前,必须搞清楚自己所需要的是咋样的一个滤波器,它的性能参数,以及参数的含义,比如f是原频率,omega是模拟角频率,w是数字角频率,它们之间的转换关系,及归一化问题等。在设计是应该有明确的思路,步骤。而不是照着课本或是什么参考书去抄,比对去编程。明确直接法,脉冲不变法以及双线性法直线的异同和他们各自的优势所在。而我在编程的时候没有深刻理解其具体含义,造成好多错误以及滤波效果不明显等,这是必须改正和去突破的地方。
第三篇:IIR数字滤波器设计实验报告
实验三 IIR数字滤波器设计实验报告
一、实验目的:
1.通过仿真冲激响应不变法和双线性变换法 2.掌握滤波器性能分析的基本方法
二、实验要求: 1.设计带通IIR滤波器
2.按照冲激响应不变法设计滤波器系数 3.按照双线性变换法设计滤波器系数 4.分析幅频特性和相频特性
5.生成一定信噪比的带噪信号,并对其滤波,对比滤波前后波形和频谱
三、基本原理:
㈠ IIR模拟滤波器与数字滤波器
IIR数字滤波器的设计以模拟滤波器设计为基础,常用的类型分为巴特沃斯(Butterworth)、切比雪夫(Chebyshev)Ⅰ型、切比雪夫Ⅱ型、贝塞尔(Bessel)、椭圆等多种。在MATLAB信号处理工具箱里,提供了这些类型的IIR数字滤波器设计子函数。
(二)性能指标
1.假设带通滤波器要求为保留6000hz~~7000hz频段,滤除小于2000hz和大宇9000hz频段
2.通带衰减设为3Db,阻带衰减设为30dB,双线性变换法中T取1s.四、实验步骤: 1.初始化指标参数
2.计算模拟滤波器参数并调用巴特沃斯函数产生模拟滤波器
3.利用冲激响应不变法和双线性变换法求数字IIR滤波器的系统函数Hd(z)
4.分别画出两种方法的幅频特性和相频特性曲线 5.生成一定信噪比的带噪信号 6.画出带噪信号的时域图和频谱图
6.对带噪信号进行滤波,并画出滤波前后波形图和频谱图
五、实验结果
模拟滤波器的幅频特性和相频特性: 10Magnitude0-5-10101010-210-1Frequency(rad/s)100101Phase(degrees)2000-200-21010-1Frequency(rad/s)100101
在本实验中,采用的带通滤波器为6000-7000Hz,换算成角频率为4.47-0.55,在上图中可以清晰地看出到达了题目的要求。
冲击响应不变法后的幅频特性和相频特性:
0Magnitude(dB)-100-20000.10.20.30.40.50.60.70.80.91Normalized Frequency( rad/sample)Phase(degrees)5000-50000.10.20.30.40.50.60.70.80.91
Normalized Frequency( rad/sample)
双线性变换法的幅频特性和相频特性: 0Magnitude(dB)-200-400000.10.20.30.40.50.60.70.80.91Normalized Frequency( rad/sample)Phase(degrees)-500-100000.10.20.30.40.50.60.70.80.91
Normalized Frequency( rad/sample)
通过上图比较脉冲响应不变法双线性变换法的幅频特性和相频特性,而在在幅频曲线上几乎没有差别,都能达到相同的结果。
下图为直接调用matlab系统内切比雪夫滤波器得到的频谱图:
0-100Magnitude(dB)-200-300-400-50000.10.20.30.40.50.6Normalized Frequency( rad/sample)0.70.80.910-100-200Phase(degrees)-300-400-500-600-700-80000.10.20.30.40.50.6Normalized Frequency( rad/sample)0.70.80.91
比较图一得知,都能达到相同的结果。
下图为对带噪信号进行滤波前后的时域和频域图:
脉冲相应不变法:
带噪信号时域波形50-500.511.5带噪信号的频谱图150100500-422.5x 103-3-3-2-10滤波信号的时域图123x 104420-200.51滤波信号的频谱图100500-4-3-2-10123x 10441.522.5x 10-3
当经过脉冲响应不变法设计的滤波器滤波以后,在通带内的波形得到了较好的恢复。频谱图中,噪声的频谱也显著的下降。
双线性变换法:
滤波信号的时域图210-1-200.51滤波信号的频谱图1.522.5x 10-3150100中心频率f=6500Hz500-4-3-2-10123x 1044
当经过双线性变换法设计的滤波器滤波以后,在通带内的波形得到了较好的恢复。频谱图中,噪声的频谱也显著的下降,但滤波效果没有脉冲响应不变法好。
演讲稿
尊敬的老师们,同学们下午好:
我是来自10级经济学(2)班的学习委,我叫张盼盼,很荣幸有这次机会和大家一起交流担任学习委员这一职务的经验。
转眼间大学生活已经过了一年多,在这一年多的时间里,我一直担任着学习委员这一职务。回望这一年多,自己走过的路,留下的或深或浅的足迹,不仅充满了欢愉,也充满了淡淡的苦涩。一年多的工作,让我学到了很多很多,下面将自己的工作经验和大家一起分享。
学习委员是班上的一个重要职位,在我当初当上它的时候,我就在想一定不要辜负老师及同学们我的信任和支持,一定要把工作做好。要认真负责,态度踏实,要有一定的组织,领导,执行能力,并且做事情要公平,公正,公开,积极落实学校学院的具体工作。作为一名合格的学习委员,要收集学生对老师的意见和老师的教学动态。在很多情况下,老师无法和那么多学生直接打交道,很多老师也无暇顾及那么多的学生,特别是大家刚进入大学,很多人一时还不适应老师的教学模式。学习委员是老师与学生之间沟通的一个桥梁,学习委员要及时地向老师提出同学们的建议和疑问,熟悉老师对学生的基本要求。再次,学习委员在学习上要做好模范带头作用,要有优异的成绩,当同学们向我提出问题时,基本上给同学一个正确的回复。
总之,在一学年的工作之中,我懂得如何落实各项工作,如何和班委有效地分工合作,如何和同学沟通交流并且提高大家的学习积极性。当然,我的工作还存在着很多不足之处。比日:有的时候得不到同学们的响应,同学们不积极主动支持我的工作;在收集同学们对自己工作意见方面做得不够,有些事情做错了,没有周围同学的提醒,自己也没有发觉等等。最严重的一次是,我没有把英语四六级报名的时间,地点通知到位,导致我们班有4名同学错过报名的时间。这次事使我懂得了做事要脚踏实地,不能马虎。
在这次的交流会中,我希望大家可以从中吸取一些好的经验,带动本班级的学习风气,同时也相信大家在大学毕业后找到好的工作。谢谢大家!
第四篇:IIR数字滤波器的DSP实现
湖南科技大学 信息与电气工程学院
《课程设计报告》
题 目:IIR数字滤波器的DSP实现 专 业: 电子信息工程 班 级: 电子二班 姓 名: 高二奎 学 号: 1104030205 指导教师: 尹艳群
2015年 1月 8 日
信息与电气工程学院 课程设计任务书
2014—2015学年第一学期
专业: 电子信息工程 班级: 电子二班 学号: 1104030205姓名: 高二奎 课程设计名称: DSP原理及应用 设计题目: IIR数字滤波器的DSP实现
完成期限:自 2015 年 1 月 1 日至 2015 年 1 月 8 日共 1 周 设计依据、要求及主要内容(可另加附页):
1、设计目的:通过课程设计,使学生综合运用DSP技术课程和其他有关先修课程的理论和生产实际知识去分析和解决具体问题的能力得到提高,并使其所学知识得到进一步巩固、深化和发展。通过课程设计初步培养学生对工程设计的独立工作能力,学习设计的一般方法。通过课程设计树立正确的设计思想,提高学生分析问题、解决问题的能力。通过课程设计训练学生的设计基本技能,如计算、绘图、查阅设计资料和手册,熟悉标准与规范等。
2、要求:
1.熟悉DSP处理器及其结构性能,掌握DSP芯片配套开发工具的使用方法。2.按要求设计出硬件电路。
3.画出硬件连接原理图,并对硬件工作原理进行说明。
4.给出软件流程图及编写程序,每一条指令的后面附上相应的注释。5.进行软、硬件调试,检查是否达到相关的功能。6.写出调试方法。
7.设计报告结尾附上心得体会。
3、主要内容:熟悉5410DSP的MCBSP的使用,了解AD50的结构,掌握AD50各寄存器的意义及其设置,掌握AD50与DSP的接口,AD50的通讯格式及AD50的DA实验。
指导教师(签字): 批准日期: 年 月 日
目 录
一、摘要·························································3
二、数字滤波器介绍和IIR数字滤波器的理论分析·····················3 2.1数字滤波器介绍··············································3 2.2 IIR滤波器的设计方法及原理···································4
三、DSP软件的简单介绍···········································6 3.1DSP系统的特点···············································6 3.2DSP系统的设计流程···········································7 3.3DSP系统的开发工具CCS········································7
四、TMS320C5402的介绍···········································9
五、基于DSP的IIR程序设计及软件调试·····························11 5.1IIR程序设计················································11
5.2软件调试结果·········································13
六、总结和心得··················································15
七、参考文献·······················································
一、摘要
随着计算机和信息技术的飞速发展,数字信号处理已经成为高速实时处理的一项关键技术,广泛应用在语音识别、智能检测、工业控制等各个领域。数字滤波器是对数字信号实现滤波的线性时不变系统。数字滤波实质上是一种运算过程,实现对信号的运算处理。
DSP数字信号处理(Digital Signal Processing,简称DSP)是一门涉及许多学科而又广泛应用于许多领域的新兴学科。20世纪60年代以来,随着计算机和信息技术的飞速发展,数字信号处理技术应运而生并得到迅速的发展。传感器数字信号处理是利用传感器对模拟信号或数字信号进行采集并把其转换成计算机可识别的电信号,并利用计算机对信号进行处理以达到计算机辅助控制或是计算机自动控制的目的。
DSP 芯片是一种特别适合数字信号处理运算的微处理器,主要用来实时、快速地实现各种数字信号处理算法。用DSP 芯片实现IIR 数字滤波器,不仅具有精确度高、不受环境影响等优点,而且因DSP 芯片的可编程性,可方便地修改滤波器参数,从而改变滤波器的特性,设计十分灵活。
本课题主要应用MATLAB软件设计IIR数字滤波器,并对所设计的滤波器进行仿真;应用DSP集成开发环境——CCS调试汇编程序,文章结合TM320C5509的结构特点,介绍了一种IIR滤波器在TM320C5509中的实现方法。文中程序已经过硬件验证,仿真结果表明该设计符合要求。
关键词
数字滤波;IIR;DSP;TM320C5509;MATLAB
二、数字滤波器介绍和IIR数字滤波器的理论分析 2.1数字滤波器介绍
数字滤波器是对数字信号实现滤波的线性时不变系统。数字滤波实质上是一种运算过程,实现对信号的运算处理。输入数字信号(数字序列)通过特定的运算转变为输出的数字序列,因此,数字滤波器本质上是一个完成特定运算的数字计算过程,也可以理解为是一台计算机。描述离散系统输出与输入关系的卷积和差分方程只是给数字信号滤波器提供运算规则,使其按照这个规则完成对输入数据的处理。时域离散系统的频域特性:, 其中、分别是数字滤波器的输出序列和输入序列的频域特性(或是数字滤波器的单位取样响应的频谱,又称为数字滤波器
经过滤波后,因此,只要按称为频谱特性),的频域响应。输入序列的频谱照输入信号频谱的特点和处理信号的目的,适当选择,使得滤波后的满足设计的要求,这就是数字滤波器的滤波原理。
数字滤波器根据其冲激响应函数的时域特性,可分为两种,即无限长冲激响应(IIR)数字滤波器和有限长冲激响应(FIR)数字滤波器。IIR 数字滤波器的特征是,具有无限持续时间冲激响应,需要用递归模型
来实现,其差分方程为:
系统函数为:
设计IIR滤波器的任务就是寻求一个物理上可实现的系统函数H(z),使其频率响应H(z)满足所希望得到的频域指标,即符合给定的通带截止频率、阻带截止频率、通带衰减系数和阻带衰减系数。2.2 IIR滤波器的设计方法及原理
IIR滤波器差分方程的一般表达式为:
式中x(n)为输入序列;y(n)为输出序列;于0,则为FIR滤波器.IIR滤波器具有无限长的单位脉冲响应,在结构上存在反馈回路,具有递归性,即IIR滤波器的输出不仅与输入有关,而且与过去的输出有关.将上式展开得出y(n)表达式为:
和为滤波器系数.若所有系数等
在零初始条件下,对上式进行z变换,得到:
设N=M,则传递函数为:
上式可写成:
上式具有N个零点和N个极点.若有极点位于单位圆外将导致系统不稳定.由于FIR滤波器所有的系数均为0,不存在极点,不会造成系数的不稳定.对于IIR滤波器,系统稳定的条件如下: 若||<1,当n→时,h(n)→0,系统稳定;若||>1,当n→时,h(n)→,系统不稳定.IIR滤波器具有多种形式,主要有:直接型(也称直接I型)、标准型(也称直接II型)、变换型、级联型和并联型.三、DSP软件的简单介绍 3.1DSP系统的特点
DSP系统是以数字信号处理为基础的,因此不但具有数字处理的全部优点而且还具有以下特点[24]: 1.接口方便:DSP应用系统与其他以现代数字技术为基础的系统或设备都是相互兼容的,这样的系统接口以实现某种功能要比模拟系统与这些系统接口要容易得多。
2.编程方便:DSP应用系统中的可编程DSP芯片,能灵活方便地进行修改和升级。
3.稳定性好:DSP应用系统以数字处理为基础,受环境温度及噪声的影响较小、可靠性高,无器件老化现象。
4.精度高:16位数字系统可以达到10-5级的精度。5.可重复性好:模拟系统的性能受元器件参数性能变化的影响比较大,而数字系统基本不受影响,因此数字系统便于测试、调试和大规模生产。
6.集成方便:DSP应用系统中的数字部件有高度的规范性,便于大规模集成。
当然,数字信号处理也存在一些缺点。例如,对于简单信号处理任务,若采用DSP则使成本增加。DSP系统中的高速时钟可能带来高频干扰和电磁泄漏等问题,而且DSP系统消耗的功率也较大。此外,DSP技术更新速度快,对于数学知识要求高,开发和测试工具还有待进一步完善。3.2DSP系统的设计流程
一个DSP系统的设计过程大概要有以下几个步骤。
1.根据系统的任务要求,确定系统处理精度要求、速度要求、实时性要求等性能指标。
2.根据系统的要求进行高级语言的算法模拟,比如使用MATLAB等仿真工具,验证算法的可行性,得出最佳的处理方法。
3.DSP的系统设计,主要分为硬件设计和软件设计。硬件设计是指根据系统要求选择合适的DSP芯片,然后设计相应的外围电路。软件设计主要是指根据系统的要求和选用的DSP芯片编写相应的程序。程序的编写可以使用汇编语言,汇编语言编写的程序效率高,但比较烦杂;也可采用C语言,DSP的C语言基本上是标准C语言,编写比较简单,但效率低。在实际系统开发时往往是两种语言结合编写,在算法运算量大的地方使用汇编语言,在运算量小的地方使用C语言,这样既能缩短软件的开发周期,提高程序的可读性和可移植性,又满足了系统的实时性要求。本文的设计采用汇编语言编写、设计软件程序。3.3DSP系统的开发工具CCS CCS是一种针对TMS320系列DSP的集成开发环境,在Windows操作系统下,采用图形接口界面,提供有环境配置、源文件编辑、程序调试、跟踪和分析等工具。
CCS有两种工作模式,即
软件仿真器模式:可以脱离DSP芯片,在PC机上模拟DSP的指令集和工作机制,主要用于前期算法实现和调试。硬件在线编程模式:可以实时运行在DSP芯片上,与硬件开发板相结合在线编程和调试应用程序。
CCS的开发系统主要由以下组件构成:
1.2.3.4.5.TMS320C54x集成代码产生工具; CCS集成开发环境;
DSP/BIOS实时内核插件及其应用程序接口API; 实时数据交换的RTDX插件以及相应的程序接口API; 由TI公司以外的第三方提供的各种应用模块插件。
CCS的功能十分强大,它集成了代码的编辑、编译、链接和调试等诸多功能,而且支持C/C++和汇编的混合编程,其主要功能如下:
1.具有集成可视化代码编辑界面,用户可通过其界面直接编写C、汇编、.cmd文件等;
2.含有集成代码生成工具,包括汇编器、优化C编译器、链接器等,将代码的编辑、编译、链接和调试等诸多功能集成到一个软件环境中;
3.高性能编辑器支持汇编文件的动态语法加亮显示,使用户很容易阅读代码,发现语法错误;
4.工程项目管理工具可对用户程序实行项目管理。在生成目标程序和程序库的过程中,建立不同程序的跟踪信息,通过跟踪信息对不同的程序进行分类管理;
5.基本调试工具具有装入执行代码、查看寄存器、存储器、反汇编、变量窗口等功能,并支持C源代码级调试;
6.断点工具,能在调试程序的过程中,完成硬件断点、软件断点和条件断点的设置;
7.探测点工具,可用于算法的仿真,数据的实时监视等;
8.分析工具,包括模拟器和仿真器分析,可用于模拟和监视硬件的功能、评价代码执行的时钟;
9.数据的图形显示工具,可以将运算结果用图形显示,包括显示时域/频域波形、眼图、星座图、图像等,并能进行自动刷新;
10.提供GEL工具。利用GEL扩展语言,用户可以编写自己的控制面板/菜单,设置GEL菜单选项,方便直观地修改变量,配置参数等;
11.支持多DSP的调试;
12.支持RTDX技术,可在不中断目标系统运行的情况下,实现DSP与其他应用程序的数据交换;
13.提供DSP/BIOS工具,增强对代码的实时分析能力。
四、TMS320C5402的介绍
TMS320C5509采用双乘累加单元(MAC)结构。整个处理器内部分为5个大的功能单元:存储器缓冲单元(M)、指令缓冲单元(I)、程序控制单元(P)、地址生成单元(A)和数据计算单元(D),各个功能单元之间通过总线连接。TMS320C5509中共有12条总线:1条32位程序数据总线(PB),1条24位程序地址总线(PAB),5条16位的数据总线(BB、CB、DB、EB、FB)和5条24位的数据地址总线(BAB、CAB、DAB、EAB、FAB)。
作为嵌入式芯片的一种,DSP芯片是一种非常适合于进行数字信号处理的微处理器芯片,已经广泛应用于实现各种数字信号处理运算。其显著特点可以归纳如下: 1.哈佛结构
哈佛结构是不同于传统的冯·诺曼(Von Neuman)结构的并行体系结构,其主要特点是将程序和数据存储在不同的存储空间中,即程序存储器和数据存储器是两个相互独立的存储器,每个存储器独立编址,独立访问。与两个存储器相对应的是系统中设置了程序总线和数据总线两条总线,从而使数据的吞吐率提高了一倍。2.流水线
与哈佛结构相关,DSP芯片广泛采用流水线以减少指令执行时间,从而增强了处理器的处理能力。TMS320系列处理器的流水线深度从2-6级不等。第一代TMS320处理器采用二级流水线,第二代采用三级流水线,而第三代则采用四级流水线。也就是说,处理器可以并行处理2-6条指令,每条指令处于流水线上的不同阶段。
3.专用的硬件乘法器
在一般形式的FIR滤波器中,乘法是DSP的重要组成部分。对每个滤波器抽头,必须做一次乘法和一次加法。乘法速度越快,DSP处理器的性能就越高。在通用的微处理器中,乘法指令是由一系列加法来实现的,故需许多个指令周期来完成。相比而言,DSP芯片的特征就是有一个专用的硬件乘法器。4.特殊的DSP指令
DSP芯片的另一个特征是采用特殊的指令。例如TMS320C10中的LTD指令,可单周期完成加载寄存器、数据移动、同时累加操作。还有DMOV指令,它完成数据移位功能。在数字信号处理中,延迟操作非常重要,这个延迟就是由DMOV指令来实现的[9]。5.快速的指令周期
哈佛结构、流水线操作、专用的硬件乘法器、特殊的DSP指令再加上集成电路的优化设计,可使DSP芯片的指令周期缩短到200ns以下。现在,许多DSP处理器的指令周期已经从第一代的200ns降低至现在的20ns以下,甚至在10ns以内。快速的指令周期使得DSP芯片能够实时实现许多DSP应用。6.面向寄存器和累加器
DSP所使用的不是一般的寄存器文件,而是专用寄存器,较新的DSP产品都有类似于RISC的寄存器文件。许多DSP还有大的累加器,可以在异常情况下对数据溢出进行处理。7.支持前、后台处理
DSP支持复杂的内循环处理,包括建立起X、Y内存和分址/循环计数器。一些DSP在做内循环处理中把中断屏蔽了,另一些则以类似后台处理的方式支持快速中断。许多DSP使用硬连线的堆栈来保存有限的上下文,而有些则用隐蔽的寄存器来加快上下文转换时间。8.拥有简便的单片内存和内存接口
DSP设法避免了大型缓冲器或复杂的内存接口,减少了内存访问。一些DSP的内循环是在其单片内存中重复执行指令或循环操作部分代码,它多采用SRAM而不是DRAM,因为前者接口更简便。2000年3月,德州仪器(TI)公司推出了高性能低功耗的TMS320C55x芯片[10]。
其性能可以达到400-800MIPS,但功耗低到0.05 mW/MIPS。TMS320系列包括定点、浮点和多处理器等三种类型的数字信号处理器。它的结构是专门针对实时信号处理而设计的,具有指令灵活、可操作性强、速度快以及支持并行运算和C语言等特点,是性价比较高的一类DSP,在通信设备中得到了广泛的应用。C5000系列DSP是针对个人便携设备而设计的,如音乐播放器、3G蜂窝电话、数码相机、高速音频设备、高精度的信号和多通道应用。通常人们把C54x和C55x系列通称C5000系列,主要用于功耗低、便携式的无线通信终端产品。C5000系列包括旧有的C5x、当前主流的C54x和较新的C55x系列。其中,C54x采用改进的哈佛结构,并集成有丰富的硬件逻辑和外部接口资源,具有较高的性能,及较低的成本和体积。C55x是在C54x的基础上发展起来的,也采用改进型哈佛结构,其器件功耗较C54x更低,性能更高。
TMS320C55x采用多总线结构,由五组内部数据总线(3个用于读,2个用于写)和一组内部程序存储总线构成。32bit的程序总线(PB)传送从程序存储器来的指令代码和立即数。三组16bit数据读总线(BB,CB和DB)连接数据读地址产生逻辑。CB和DB总线传送双操作数。DB总线传送单操作数。BB总线提供第三种读路径并且能够提供双乘操作数的系数。两组16bit数据写总线(EB,FB)连接数据写地址产生逻辑。六组24bit数据总线(PAB,CAB,DAB,BAB,EAB,FAB)传送执行指令所需要的地址。还有一条附加总线为DMA控制器和外设控制器提供服务。
TMS320C55x的CPU结构主要包括四种功能单元:即指令缓冲单元(I单元),程序流程单元(P单元),地址数据流程单元(A单元)和数据计算单元(D单元)。其数据计算单元包括一个40bit的可以提供-32到31移位范围的桶形移位器,一个40bit的算术逻辑电路(ALU),两个乘累加器(MAC)可以在一个周期中执行两个MAC操作,以及四个40bit的累加器。在其地址数据流程单元还包括一个16bit的算术逻辑电路(ALU),为主ALU提供简单的算术运算。
55x的指令集功能强大而且使用灵活,它同时具有易于使用和程序效率高的特点。寻址方式包括绝对寻址、寄存器间接寻址、直接寻址,这些寻址方式降低了算法所需要的指令数量,减小了代码量,也提高了芯片运算速度。特别要提到的是C55x指令集中所提供的三操作数指令,这种指令可以实现3个操作数的同时处理(如写入寄存器或存储器等操作),大大压缩了代码的指令数量。
五、基于DSP的IIR程序设计及软件调试 5.1IIR程序设计 IIR.c程序
#include
#define IIRNUMBER 2 #define SIGNAL1F 1000 #define SIGNAL2F 4500 #define SAMPLEF 10000 #define PI 3.1415926
float InputWave();float IIR();
float fBn[IIRNUMBER]={ 0.0,0.7757 };float fAn[IIRNUMBER]={ 0.1122,0.1122 };float fXn[IIRNUMBER]={ 0.0 };float fYn[IIRNUMBER]={ 0.0 };float fInput,fOutput;float fSignal1,fSignal2;float fStepSignal1,fStepSignal2;float f2PI;int i;float fIn[256],fOut[256];int nIn,nOut;
main(){ nIn=0;nOut=0;fInput=fOutput=0;f2PI=2*PI;fSignal1=0.0;fSignal2=PI*0.1;// fStepSignal1=2*PI/30;// fStepSignal2=2*PI*1.4;fStepSignal1=2*PI/50;fStepSignal2=2*PI/2.5;while(1){
fInput=InputWave();
fIn[nIn]=fInput;
nIn++;nIn%=256;
fOutput=IIR();
fOut[nOut]=fOutput;
nOut++;
// break point
if(nOut>=256)
}
{
nOut=0;} }
float InputWave(){
}
float IIR(){
} float fSum;fSum=0.0;for(i=0;i } return(fSum);fSum+=(fXn[i]*fAn[i]);fSum+=(fYn[i]*fBn[i]);for(i=IIRNUMBER-1;i>0;i--){ } fXn[0]=sin((double)fSignal1)+cos((double)fSignal2)/6.0;fYn[0]=0.0;fSignal1+=fStepSignal1;if(fSignal1>=f2PI)fSignal1-=f2PI;fSignal2+=fStepSignal2;if(fSignal2>=f2PI)fSignal2-=f2PI;return(fXn[0]);fXn[i]=fXn[i-1];fYn[i]=fYn[i-1];IIR.cmd程序 -w-stack 400h-heap 100-l rts.lib MEMORY { } PAGE 0: VECT : o=80h,l=80h PRAM : o=100h,l=1f00h PAGE 1: DRAM : o=2000h,l=1000h SECTIONS { }.text : {}> PRAM PAGE 0.data : {}> PRAM PAGE 0.cinit : {}> PRAM PAGE 0.switch : {}> PRAM PAGE 0.const : {}> DRAM PAGE 1.bss : {}> DRAM PAGE 1.stack : {}> DRAM PAGE 1.vectors: {}> VECT PAGE 0 5.2软件调试结果 通过IIR滤波器前的波形 通过IIR滤波器后的波形 在效果图中,上面波形为DSP实验箱产生的滤波前的效果图,下面波形为进行IIR滤波后的效果图。从两图的比较可以看出,所设计的IIR滤波器收到了较好的效果,完成了设计要求。 在编写及调试的过程中主要遇到以下问题: (1)在编写程序的过程中要对所涉及的存储单元进行初始化,这样在数据或是代码段进行汇编时才不会出现问题。 (2)编写程序需要对数据段、代码段、堆栈段进行设置。要编写相应的.cmd(链接命令文件)文档对其进行合理化的分配空间。 (3)在编写程序时一定要编写相应的中断向量表文件,这样在汇编时才不会出错。 六、总结和心得 通过对本课题的研究,自己从中取得了一些成绩,理论水平也得到了一定的提高,同时也暴露了一些问题: 首先,对一个课题必须要阅读大量的文献和书籍来获得一定的感性认识,然后才能有自己的想法,这是一条必经之路。其次,理论基础知识很重要,论文涉及了很多的算法,会用到很多基础知识,如果用的时候再去学会浪费时间,因此要在平时注意搜集相关的资料,多学一些有用实用的技术,这样在以后的学习和工作中才能够做到游刃有余。最后,要有信心,遇到困难要向别人请教,这样可以大大加快研究进程。以上是我做论文的一些心得体会,这些对我以后的学习会有很大的帮助。 由于本人的时间和能力有限,本次的开发系统还存在一些不足之处,整个系统还需要进一步完善。文中也难免有不足之处,恳请老师批评指正。同时,对评审设计的老师表示衷心的感谢! 七、参考文献 [1]赵红怡.DSP技术与应用实例[M].电子工业出版社.2003.6.[2]胡庆钟,李小刚,吴钰淳.TMS320C55X DSP原理、应用和设计[M].机械工业出版社.2005.10.[3]丁玉美,高西全.数字信号处理[M].西安电子科技大学出版社.2006.7.[4]刘顺兰,吴杰,高西全.数字信号处理[M].西安电子科技大学出版社.2003.8. 智能化测控技术课程设计 第二章 基于Labview虚拟滤波器的设计 2.1 labview简介 LabVIEW 是NI(National INSTRUMENT,美国国家仪器)公司推出的一种基于G 语言的虚拟仪器(virtual INSTRUMENT,VI)开发工具。LabVIEW 编程使用图形化语言,它是非计算机专业人员使用的工具,它为设计者提供了一个便捷、轻松的设计环境,因此,LabVIEW 在世界范围内的众多领域如航空、航天、通信、电力、汽车、化学等领域得到广泛应用。 LabVIEW 有两个基本窗口:前面板窗口和流程图窗口。编译环境下显示两个窗口,前面板用于放置控制对象和显示对象,控制对象相当于常规仪器的控制和调节按钮;前面板用于显示程序运行结果,相当于常规仪器的显示屏幕或指针。流程图窗口用于编写和显示程序的图形源代码,它相当于语言编程中一行行的语句,它由各种能完成一定功能的模块通过连线连接而成。当编写的LabVIEW 程序调试无误后,可将程序编译成应用程序。此时,设计的虚拟仪器可以脱离LabVIEW 开发环境,用户只需通过前面板进行控制和观测。 2.2 基于labview的数字滤波器设计 数字滤波器的传统设计过程可归纳为以下三个步骤: (1)按照实际需要确定滤波器的性能要求。 (2)用一个因果稳定的系统函数(即传递函数)去逼近这个性能要求。此函数可以分为两类:即IIR 传递函数和FIR 传递函数。 (3)用一个有限精度的运算去实现这个传递函数。 FIR 滤波器设计实质是确定能满足要求的转移序列或脉冲响应的常数,设计方法主要有窗函数法、频率采样法和等波纹最佳逼近法等。目前,FIR 滤波器设计没有封闭的设计公式。虽然窗函数法对窗口函数可给出计算公式,但计算通带与阻带衰减仍无计算公式。FIR 滤波器的设计只有计算程序可循,因此对计算工具要求较高,不用计算机编程一般很难实现。 IIR 滤波器的设计源于模拟滤波器设计,它通过对低通滤波器进行模拟频率变换得到。常用的IIR 滤波器有巴特沃斯滤波器、切比雪夫滤波器、切比雪夫Ⅱ滤波器、椭圆滤波器和贝塞尔滤波器。目前,IIR 滤波器的设计可以借助模拟滤波器的成果,有封闭形式的设计公式,对计算工具的要求不高。 IIR 滤波器的设计虽然简单,但脱离不了模拟滤波器的设计模式,主要用于设计低通、高通、带通及带阻滤波器。而FIR 滤波器的设计要灵活得多,尤其是频率采样设计法更易适应各种幅度特性和相位特性的要求。 电力系统滤波器可以从电力信号中将所需频段的信号提取出来并将干扰信号滤除或大大衰减。利用LabVIEW 可以设计出满足电力系统需要的滤波器,利用LabVIEW 设计的IIR 数字滤波器前面板,前面板上有参数设置、波形显示两个区域。在参数设置区域有六个设置项:滤波器选择、滤波器类型、下截止频率、上截止频率、采样频率、阶次、纹波、衰减;选择的滤波器不同时,需要设置的项也不同。波形显示区域用于显示滤波前后的波形,在此区域可直观地看出滤波效果。 利用LabVIEW 实现的数字滤波,采用了图形语言编程,与采用文本语言编程相比,能缩短40%~70%的开发时间;与硬件仪器相比,又具有容易调整滤波器类型、降低成本、滤波效果直观等优点。基于LabVIEW 编写的程序还可以将其作为子程序在其他虚拟仪器系统中调用,大大增强了程序的通用性。 2.3 数字滤波器的选择步骤 LabVIEW 为设计者提供了FIR 和IIR 滤波器VI,使用起来非常方便,只需要输入相应的指标参数即可,不需要进行复杂的函数设计和大量的运算。滤波器VI 位于LabVIEW 流程图面Function>>Analyze>>SignalProcessing>>Filters 上。不同滤波器VI 滤波时均有各自的特点,因此它们用途各异。在利用LabVIEW 实现滤波功能时,选择合适的滤波器是关键,在选择滤波器时,可参照不同滤波器的特点,考虑滤波的实际要求来选择合适的滤波器。各种滤波器的特点及选择滤波器的步骤见下图。 图2-1 数字滤波器选择步骤 第三章 软件设计 3.1前面板的设计 在Labview环境下开发的应用程序称为VI(Virtual Instrument)。VI是Labview的核心,有一个人机交互的界面——前面板,和相当于源代码功能的菜单框图程序——后面板组成,前面板是程序的界面,在这一界面上有控制量和显示量两类对象。在前面板中,控制量模拟了仪器的输入装置并把数据提供给VI的框图程序,例如开关、旋钮等,而显示量则是模拟了仪器的输入装置并显示由框图程序获得或产生的数据,例如用于显示波形的窗口等。后面板又称为代码窗口或流程图,是VI图形化的源程序,在流程图中对VI编程,以控制和操纵定义在前面板上的输入和输出等功能,流程图中包括前面板上没有但编程必须有的对象,如函数、结构和连线等[2]。 前面板如图3-1所示,由以下几个部分组成:参考信号的参数设置、待处理信号的参数设置、滤波结果的实时显示以及原始信号的波形图和滤波结果的波形图,可以设置参考信号的幅值和频率,也可以对3路正弦信号设置频率幅值和相位,程序成功运行后就可以从滤波实时显示区得到滤波结果的频率幅值和初相位,同时在波形显示区中也可以得到相应的波形,使结果更为直观地反映出来。 数字滤波器的前面板如下图所示。前面板用于设置输入数值和观察输出量,用于模拟真实滤波器的前面板。由于虚拟面板直接面向用户,是虚拟滤波器控制软件的核心。在设计这部分时,主要考虑界面美观、操作简洁,用户能通过面板上的各种按钮、开关等控键来控制虚拟滤波器的工作。实际中的待测信号可以由 数据采集卡实时采集滤波,也可以由数据采集卡采集后保存为LabVIEW所能够识别的文件形式,之后再由LabVIEW进行分析滤波。在这里用基本的信号(正弦波,余弦波,方波,锯齿波)来模拟原始信号。程序采用窗函数法的计算流程,将窗函数与需要滤波的信号进行卷积实现信号的滤波。使用者可对原始信号,噪声信号和滤波器参数进行设置。原始信号的波形图,滤波的结果都可得到实时显示。这样,在程序成功的运行后就可以从显示区得到结果,使结果更为直观的反映出来。 图3-1 前面板的设计 3.2 流程图的设计 本数字滤波器的后面板即程序代码框图如图3-2所示。框图程序是由节点、端点、图框和连线四种元素构成的。节点类似于文本语言程序的语句、函数或者 子程序。框图中的每一个对象端点与前面板上的对象(控制或显示)一一对应。不同的线型代表不同的数据类型,在彩显上,每种数据类型还以不同的颜色予以强调。后面板如图3-2所示,后面板中的控件与前面板中的控件相对应,并且通过连线、添加程序以及加入各种信号等措施进行编程,实现自相关滤波的功能,同时通过在前面板设置各种不同的参数,成功地运行程序,实现所要求的目标,为了实现这一功能,笔者又添加了激励信号源、滤波器加法器和乘法器等各种运算器,经过运行程序,测试结果显示能够实现从一个包含多种频率成分的信号中提取出所需单一频率信号的功能,相当于实现了滤波,由于这种滤波的思路是从相关函数的定义出发的,因此成为相关滤波器。 在这里,用仿真信号发生器来模拟待测的信号,在实际中这个待测信号通常由数据采集卡采集得到,输入的待测信号为3路正弦信号的叠加,需要从中检测出20Hz的信号,这个测试VI实现了相关滤波过程的动态显示,使用了循环结构。 图3-2 滤波器的后面板 附录 图1 数字滤波器的输入输出信号波形第五篇:基于LabVIEW的IIR-数字滤波器的设计