第一篇:数字滤波器的设计1
基于LabVIEW的IIR-数字滤波器的设计
智能化测控技术课程设计
第二章
基于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
数字滤波器的输入输出信号波形
第二篇:用双线性变换法设计原型低通为巴特沃兹型的数字IIR高通滤波器
电子信息工程
专业课程设计任务书
学生姓名
xx
专业班级
电信
学号
xxxx
题
目
用双线性变换法设计原型低通为巴特沃兹型的数字IIR高通滤波器
课题性质
其它
课题来源
自拟课题
指导教师
xxx
同组姓名
xxxx
主要内容
用双线性变换法设计原型低通为巴特沃兹型的数字IIR高通滤波器,要求通带边界频率为500Hz,阻带边界频率分别为400Hz,通带最大衰减1dB,阻带最小衰减40dB,抽样频率为2000Hz,用MATLAB画出幅频特性,画出并分析滤波器传输函数的零极点;
信号经过该滤波器,其中300Hz,600Hz,滤波器的输出是什么?用Matlab验证你的结论并给出的图形。
任务要求
1、掌握用双线性变换法设计原型低通为巴特沃兹型的数字IIR高通滤波器的原理和设计方法。
2、求出所设计滤波器的Z变换。
3、用MATLAB画出幅频特性图。
4、验证所设计的滤波器。
参考文献
1、程佩青著,《数字信号处理教程》,清华大学出版社,2001
2、Sanjit
K.
Mitra著,孙洪,余翔宇译,《数字信号处理实验指导书(MATLAB版)》,电子工业出版社,2005年1月
3、郭仕剑等,《MATLAB
7.x数字信号处理》,人民邮电出版社,2006年
4、胡广书,《数字信号处理
理论算法与实现》,清华大学出版社,2003年
审查意见
指导教师签字:
教研室主任签字:
年
月
日
说明:本表由指导教师填写,由教研室主任审核后下达给选题学生,装订在设计(论文)首页
1
需求分析
当今,数字信号处理(DSP:Digtal
Signal
Processing)技术正飞速发展,它不但自成一门学科,更是以不同形式影响和渗透到其他学科:它与国民经济息息相关,与国防建设紧密相连;它影响或改变着我们的生产、生活方式,因此受到人们普遍的关注。
数字化、智能化和网络化是当代信息技术发展的大趋势,而数字化是智能化和网络化的基础,实际生活中遇到的信号多种多样,例如广播信号、电视信号、雷达信号、通信信号、导航信号、射电天文信号、生物医学信号、控制信号、气象信号、地震勘探信号、机械振动信号、遥感遥测信号,等等。上述这些信号大部分是模拟信号,也有小部分是数字信号。模拟信号是自变量的连续函数,自变量可以是一维的,也可以是二维或多维的。大多数情况下一维模拟信号的自变量是时间,经过时间上的离散化(采样)和幅度上的离散化(量化),这类模拟信号便成为一维数字信号。因此,数字信号实际上是用数字序列表示的信号,语音信号经采样和量化后,得到的数字信号是一个一维离散时间序列;而图像信号经采样和量化后,得到的数字信号是一个二维离散空间序列。数字信号处理,就是用数值计算的方法对数字序列进行各种处理,把信号变换成符合需要的某种形式。例如,对数字信号经行滤波以限制他的频带或滤除噪音和干扰,或将他们与其他信号进行分离;对信号进行频谱分析或功率谱分析以了解信号的频谱组成,进而对信号进行识别;对信号进行某种变换,使之更适合于传输,存储和应用;对信号进行编码以达到数据压缩的目的,等等。
数字滤波技术是数字信号分析、处理技术的重要分支[2-3]。无论是信号的获取、传输,还是信号的处理和交换都离不开滤波技术,它对信号安全可靠和有效灵活地传输是至关重要的。在所有的电子系统中,使用最多技术最复杂的要算数字滤波器了。数字滤波器的优劣直接决定产品的优劣。
本次课程设计的内容为用双线性变换法设计原型低通为巴特沃兹型的数字IIR高通滤波器,要求通带边界频率为500Hz,阻带边界频率分别为400Hz,通带最大衰减1dB,阻带最小衰减40dB,抽样频率为2000Hz,用MATLAB画出幅频特性,画出并分析滤波器传输函数的零极点;
信号经过该滤波器,其中300Hz,
600Hz,滤波器的输出是什么?用Matlab验证你的结论并给出的图形。
2
概要设计:
2.
1
数字滤波器介绍
数字滤波器是具有一定传输选择特性的数字信号处理装置,其输入、输出均为数字信号,实质上是一个由有限精度算法实现的线性时不变离散系统。它的基本工作原理是利用离散系统特性对系统输入信号进行加工和变换,改变输入序列的频谱或信号波形,让有用频率的信号分量通过,抑制无用的信号分量输出。数字滤波器和模拟滤波器有着相同的滤波概念,根据其频率响应特性可分为低通、高通、带通、带阻等类型,与模拟滤波器相比,数字滤波器除了具有数字信号处理的固有优点外,还有滤波精度高(与系统字长有关)、稳定性好(仅运行在0与l两个电平状态)、灵活性强等优点。
时域离散系统的频域特性:,其中、分别是数字滤波器的输出序列和输入序列的频域特性(或称为频谱特性),是数字滤波器的单位取样响应的频谱,又称为数字滤波器的频域响应。输入序列的频谱经过滤波后,因此,只要按照输入信号频谱的特点和处理信号的目的,
适当选择,使得滤波后的满足设计的要求,这就是数字滤波器的滤波原理。
2.
2
IIR数字滤波器的设计方法
IIR数字滤波器的基本结构
一个数字滤波器可以用系统函数表示为:
(2-1)
由这样的系统函数可以得到表示系统输入与输出关系的常系数线形差分程为:
(2-2)
可见数字滤波器的功能就是把输入序列x(n)通过一定的运算变换成输出序列y(n)。不同的运算处理方法决定了滤波器实现结构的不同。无限冲激响应滤波器的单位抽样响应h(n)是无限长的,其差分方程如(2-2)式所示,是递归式的,即结构上存在着输出信号到输入信号的反馈,其系统函数具有(2-1)式的形式,因此在z平面的有限区间(0<︱z︱<∞)有极点存在。
前面已经说明,对于一个给定的线形时不变系统的系统函数,有着各种不同的等效差分方程或网络结构。由于乘法是一种耗时运算,而每个延迟单元都要有一个存储寄存器,因此采用最少常熟乘法器和最少延迟支路的网络结构是通常的选择,以便提高运算速度和减少存储器。然而,当需要考虑有限寄存器长度的影响时,往往也采用并非最少乘法器和延迟单元的结构。
IIR滤波器实现的基本结构有:
(1)IIR滤波器的直接型结构;
优点:延迟线减少一半,变为N
个,可节省寄存器或存储单元;
缺点:其它缺点同直接I型。
通常在实际中很少采用上述两种结构实现高阶系统,而是把高阶变成一系列不同组合的低阶系统(一、二阶)来实现。
(2)IIR滤波器的级联型结构;
特点:系统实现简单,只需一个二阶节系统通过改变输入系数即可完成;
·
极点位置可单独调整;
·
运算速度快(可并行进行);
·
各二阶网络的误差互不影响,总的误差小,对字长要求低。
缺点:
不能直接调整零点,因多个二阶节的零点并不是整个系统函数的零点,当需要准确的传输零点时,级联型最合适。
(3)IIR滤波器的并联型结构。
优点:
·
简化实现,用一个二阶节,通过变换系数就可实现整个系统;
·
极、零点可单独控制、调整,调整α1i、α2i只单独调整了第i对零点,调整β1i、β2i则单独调整了第i对极点;
·
各二阶节零、极点的搭配可互换位置,优化组合以减小运算误差;
·
可流水线操作。
缺点:
·
二阶阶电平难控制,电平大易导致溢出,电平小则使信噪比减小。
a、直接型
b、并联型
c、串联型
2.
3
巴特沃兹滤波器
(Butterworth
滤波器)
特点:具有通带内最大平坦的振幅特性,且随f↗,幅频特性单调↘。
其幅度平方函数:
N为滤波器阶数,如图1
图1、
巴特沃斯滤波器振幅平方特性
通带:
使信号通过的频带
阻带:抑制噪声通过的频带
过渡带:通带到阻带间过渡的频率范围
Ωc
:截止频率。
过渡带为零
理想滤波器
阻带|H(jΩ
)|=0
通带内幅度|H(jΩ)|=cons.
H(jΩ)的相位是线性的
图3-1中,N增加,通带和阻带的近似性越好,过渡带越陡。
通带内,分母Ω/Ωc<1,
(
Ω/Ωc)2N<1,A(Ω2)→1。
过渡带和阻带,Ω/Ωc>1,
(
Ω/Ωc)2N>1,
Ω增加,
A(Ω2)
快速减小。
Ω=Ωc,
,,幅度衰减,相当于3db衰减点。
振幅平方函数的极点
可见,Butter
worth滤波器
的振幅平方函数有2N个极点,它们均匀对称地分布在|S|=Ωc的圆周上。
考虑到系统的稳定性,知DF的系统函数是由S平面左半部分的极点(SP3,SP4,SP5)组成的,它们分别为:
系统函数为
令
,得归一化的三阶BF:
如果要还原的话,则有
2.
4
双线性变法法
目的:将模拟带通滤波器转换成数字高通滤波器
为了克服冲激响应法可能产生的频率响应的混叠失真,这是因为从S平面到Z平面是多值的映射关系所造成的。为了克服这一缺点,可以采用非线性频率压缩方法,将整个频率轴上的频率范围压缩到-π/T~π/T之间,再用z=esT转换到Z平面上。也就是说,第一步先将整个S平面压缩映射到S1平面的-π/T~π/T一条横带里;第二步再通过标准变换关系z=es1T将此横带变换到整个Z平面上去。这样就使S平面与Z平面建立了一一对应的单值关系,消除了多值变换性,也就消除了频谱混叠现象,映射关系如图2
图2双线性变换的映射关系
为了将S平面的整个虚轴jΩ压缩到S1平面jΩ1轴上的-π/T到π/T段上,可以通过以下的正切变换实现
式中,T仍是采样间隔。
当Ω1由-π/T经过0变化到π/T时,Ω由-∞经过0变化到+∞,也即映射了整个jΩ轴。将式写成
将此关系解析延拓到整个S平面和S1平面,令jΩ=s,jΩ1=s1,则得
再将S1平面通过以下标准变换关系映射到Z平面
z=es1T
从而得到S平面和Z平面的单值映射关系为:
首先,把z=ejω,可得
即S平面的虚轴映射到Z平面的单位圆。
其次,将s=σ+jΩ代入式,得
因此
由此看出,当σ<0时,|z|<1;当σ>0时,|z|>1。也就是说,S平面的左半平面映射到Z平面的单位圆内,S平面的右半平面映射到Z平面的单位圆外,S平面的虚轴映射到Z平面的单位圆上。因此,稳定的模拟滤波器经双线性变换后所得的数字滤波器也一定是稳定的。
双线性变换法优缺点:双线性变换法与脉冲响应不变法相比,其主要的优点是避免了频率响应的混叠现象。这是因为S平面与Z平面是单值的一一对应关系。S平面整个jΩ轴单值地对应于Z平面单位圆一周,即频率轴是单值变换关系。这个关系如式所示,重写如下:
上式表明,S平面上Ω与Z平面的ω成非线性的正切关系
由图3看出,在零频率附近,模拟角频率Ω与数字频率ω之间的变换关系接近于线性关系;但当Ω进一步增加时,ω增长得越来越慢,最后当Ω→∞时,ω终止在折叠频率ω=π处,因而双线性变换就不会出现由于高频部分超过折叠频率而混淆到低频部分去的现象,从而消除了频率混叠现象。
图3双线性变换法的频率变换关系
但是双线性变换的这个特点是靠频率的严重非线性关系而得到的,如式(及图4所示。由于这种频率之间的非线性变换关系,就产生了新的问题。首先,一个线性相位的模拟滤波器经双线性变换后得到非线性相位的数字滤波器,不再保持原有的线性相位了;其次,这种非线性关系要求模拟滤波器的幅频响应必须是分段常数型的,即某一频率段的幅频响应近似等于某一常数(这正是一般典型的低通、高通、带通、带阻型滤波器的响应特性),不然变换所产生的数字滤波器幅频响应相对于原模拟滤波器的幅频响应会有畸变,如图5所示。
图5双线性变换法幅度和相位特性的非线性映射
对于分段常数的滤波器,双线性变换后,仍得到幅频特性为分段常数的滤波器,但是各个分段边缘的临界频率点产生了畸变,这种频率的畸变,可以通过频率的预畸来加以校正。也就是将临界模拟频率事先加以畸变,然后经变换后正好映射到所需要的数字频率上。
2.
5
设计步骤
根据以上FIR数字滤波器设计方法,下面运用双线性变换法基于MATLAB设计一个FIR高通滤波器,其中通带边界频率为500Hz,阻带边界频率分别为400Hz,通带最大衰减1dB,阻带最小衰减40dB,抽样频率为2000Hz
(1)确定性能指标
在设计高通滤波器之前,首先根据工程实际的需要确定滤波器的技术指标:
(2)频率预畸变
用Ω=2/T*tan(w/2)对高通数字滤波器H(z)的数字边界频率预畸变,得到高通模拟滤波器H(s)的边界频率主要是通带截止频率Wp1;阻带截止频率Ws1,的转换。
(3)模拟高通性能指标转换成模拟低通性能指标
WP=1;
%归一化处理
WS=WP*
Wp1/
Ws1;
(4)模拟低通滤波器的构造
借助巴特沃兹滤波器得到模拟低通滤波器的传输函数。
(5)模拟低通滤波器转换成模拟高通滤波器
调用lp2bp函数将模拟低通滤波器转化为模拟高通滤波器。
(6)模拟高通滤波器转换成数字高通滤波器
利用双线性变换法将模拟高通滤波器Ha(s)转换成数字高通滤波器H(z)。
(7)输入信号检验滤波器性能
输入不同频率的正弦波,观察输出波形,检验滤波器性能。
2.
6
程序流程图
开始
↓
读入数字滤波器技术指标
↓
将指标转换成归一化模拟低通滤波器的指标
↓
↓
模拟域频率变换,将G(P)变换成模拟高通滤波器H(s)
↓
用双线性变换法将H(s)转换成数字高通滤波器H(z)
↓
输入信号后显示相关结果
结束
2.
7
问题分析
(1)
在设计高通滤波器时,首先要将数据进行归一化这样可以提高设计的准确性。
(2)
在设计信号的输入时,课程中的数据f2如果是600HZ时,则复合信号通过滤波器时无法输出正常的信号X2,这说明频率太低,而被全被滤除,在将频率改至3000HZ之后则能输出符合设计要求的信号。
(3)
信号通过滤波器后输出的信号与x2的信号开始部分有点失真,这时因为信号并不是非常理想的通过滤波器的,在通过滤波器时受到滤波器的影响是从不稳定逐渐趋向稳定的。
3
运行环境
Windows
xp
4
开发工具和编程语言
Matlab
6.5
5
详细设计
clc;clear
all
Rp
=
1;
%
通带衰减/dB
Rs
=
40;
%阻带衰减/dB
OmegaP1_1=500;
%
通带边界频率
OmegaS1_1=400;
%
阻带边界频率
Fp=2000;
%
抽样频率
Wp1=2*pi*OmegaP1_1/Fp;
%
通带频率模数转换
Ws1=2*pi*OmegaS1_1/Fp;
%
阻带频率模数转换
OmegaP1=tan(Wp1/2);
%
通带频率非线性变换
OmegaS1=tan(Ws1/2);
%
阻带频率非线性变换
Eta_P=OmegaP1/OmegaP1;
%归一化
Eta_S=OmegaS1/OmegaP1;
%归一化
Lemta_P_EquivalentLowPass=1/Eta_P;
Lemta_S_EquivalentLowPass=1/Eta_S;
%
估计滤波器阶数
[N,
Wn]
=
buttord(Lemta_P_EquivalentLowPass,
Lemta_S_EquivalentLowPass,
Rp,
Rs,'s');
%设计滤波器
[num1,den1]
=
butter(N,Wn,'s');
[num2,den2]=lp2hp(num1,den1,OmegaP1);
[num,den]=bilinear(num2,den2,0.5);
[z,p,k]=tf2zp(num,den)
%显示传输函数
disp('分子系数是');disp(num);
disp('分母系数是');disp(den);
%
计算增益响应
w
=
0:pi/255:pi;
h
=
freqz(num,den,w);
g
=
20*log10(abs(h));
%
绘制增益响应
figure;
plot(w/pi,g);grid
%绘制巴特沃兹高通滤波器幅频特性
axis([0
1
-60
5]);
xlabel('omega
/pi');
ylabel('增益/
dB');
title('巴特沃兹高通滤波器');
figure;
zplane(z,p);%绘制传输函数零极点
title('传输函数的零极点');
f1=300,f2=3000;
n=0:600;t=n/10000;
x1=sin(2*pi*f1*t);
x2=sin(2*pi*f2*t);
x=x1+x2;
figure;
subplot(2,2,1)%绘制x1的波形
plot(x1);grid
on;
axis([0,50*pi,-3,3]);
xlabel('t');ylabel('x1(t)');
title('x1的波形');
subplot(2,2,2)%绘制x1的波形
plot(x2);grid
on;
axis([0,50*pi,-3,3]);
xlabel('t');ylabel('x2(t)');
title('x2的波形');
subplot(2,2,3)%绘制输入x的波形
plot(x);grid
on;
axis([0,50*pi,-3,3]);
xlabel('t');ylabel('x(t)');
title('输入信号x的波形')
y=filter(num,den,x);%数字滤波器输出
subplot(2,2,4);%绘制输出y的波形
plot(y);
grid
on;
axis([0,50*pi,-3,3]);
xlabel('t');ylabel('y');
title('滤波器输出y的波形')
6
调试分析
z
=
1.3186
+
0.0728i
1.3186
-
0.0728i
1.2471
+
0.1915i
1.2471
-
0.1915i
1.1460
+
0.2529i
1.1460
-
0.2529i
1.0478
+
0.2773i
1.0478
-
0.2773i
0.9460
+
0.2698i
0.9460
-
0.2698i
0.8580
+
0.2250i
0.8580
-
0.2250i
0.7968
+
0.1570i
0.7968
-
0.1570i
0.7632
+
0.0792i
0.7632
-
0.0792i
0.7531
p
=
0.0444
+
0.9106i
0.0444
-
0.9106i
0.0381
+
0.7545i
0.0381
-
0.7545i
0.0336
+
0.6187i
0.0336
-
0.6187i
0.0303
+
0.4976i
0.0303
-
0.4976i
0.0279
+
0.3871i
0.0279
-
0.3871i
0.0262
+
0.2843i
0.0262
-
0.2843i
0.0251
+
0.1868i
0.0251
-
0.1868i
0.0245
+
0.0926i
0.0245
-
0.0926i
0.0243
k
=
7.3789e-005
分子系数是
Columns
1
through
6
0.0001
-0.0013
0.0100
-0.0502
0.1756
-0.4566
Columns
7
through
12
0.9132
-1.4350
1.7938
-1.7938
1.4350
-0.9132
Columns
13
through
18
0.4566
-0.1756
0.0502
-0.0100
0.0013
-0.0001
分母系数是
Columns
1
through
6
1.0000
-0.5247
2.4322
-1.0556
2.2461
-0.7954
Columns
7
through
12
1.0097
-0.2858
0.2357
-0.0517
0.0283
-0.0046
Columns
13
through
18
0.0016
-0.0002
0.0000
-0.0000
0.0000
-0.0000
f1
=
300
7
测试结果
8
实验总结
通过此次课程设计我对数字信号处理有了进一步的认识,但是由于自己数字信号处理的理论课程没有达到很深的了解,对数字滤波器的设计缺少认识,因此在此次课程设计中我还是遇到了很多问题。在加上自己在matlab软件应用方面存在一些问题,所以比较吃力。因此在设计过程中,我是看了遍数字信号处理的教科书并且特别注重看了关于数字滤波器的设计的内容,再通过利用参考文献与网络,完成了用Matlab进行数字信号处理课程设计。
通过课程设计,不仅加深了对理论知识的了解,巩固了课堂上所学的理论知识,而且还增加了自己的动手能力,并且理解与掌握数字信号处理中的基本概念、基本原理、基本分析方法。与其他高级语言的程序设计相比,MATLAB环境下可以更方便、快捷地设计出具有严格线性相位的FIR滤波器,节省大量的编程时间,提高编程效率,且参数的修改也十分方便,还可以进一步进行优化设计。相信随着版本的不断提高,MATLAB在数字滤波器技术中必将发挥更大的作用。同时,用MATLAB计算有关数字滤波器的设计参数,如H(z)、h(n)等,对于数字滤波器的硬件实现也提供了一条简单而准确的途径和依据。
总之,这次课程设计设计不仅增强了自己的理论知识,加强了自己的动手能力,而且还培养了自己遇到问题之后如何去发现问题、解决问题的能力。此次课程设计对自己在许多方面都有了很大的帮助。最后还要感谢指导老师的辛勤知道和教育!
参考文献
[1]、程佩青著,《数字信号处理教程》,清华大学出版社,2001
[2]、Sanjit
K.Mitra著,孙洪,余翔宇译,《数字信号处理实验指导书(MATLAB版)》,电子工业出版社,2005年1月
[3]、郭仕剑等,《matlab7.x数字信号处理》,人民邮电出版社,2006年
[4]、胡广书,《数字信号处理理论算法与实现》,清华大学出版社,2003
[5]、Sanjit
K.Mitra著,《数字信号处理---基于计算机的方法》(第3版),清华大学出版社,2006年10月
第三篇:实验三 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.
第五篇:数字示波器使用小方法
前 言
本文的结构逐条编排,目的是使内容成为开放性和可添加型的,欢迎有经验的同事增加新的内容。
对本文中用到按键符号作如下规定:
TRIGGER MENU →Type(main)
→Edge(pop-up) →Coupling(main)→DC(Side) 代表按面板上的TRIGGER MENU键,再按显示屏下方的Type键,重复按这个钮直到Edge高亮显示,再按显示屏下方的Coupling,再按显示屏右侧的DC键。
注:main代表显示屏下方的键,Side代表显示屏右方的键,pop-up代表一直按此键,直到项目高亮显示。
目 录
一.安全问题...............................................................1 二.使用探头...............................................................2 三.触发方式..............................................................11 四.测试方法..............................................................15 五.小常识、小经验........................................................23
示波器使用经验
一. 安全问题
结论一 示波器电源线要用三相插头良好接地(即接实验室的地线)
说明 为了避免电冲击对示波器造成损伤,输出及输入端进行电气连接前要保证示波器良好接地。
结论二 探头地线只能接电路板上的地线,不可以搭接在电路板的正、负电源端 说明 交流供电系统或经整流后直流供电的系统的地一般都是接大地的。探头的地也是经示波器安全地线接大地的。如果探头的地搭在电路板上不是地的点上,就会造成此点和电源地短路,轻者使电路板工作不正常,重者会烧坏电路板或探头,造成严重后果。尤其注意不能把探头的地接到电路板上的正、负电源端。
结论三 不允许在探头还连接着被测试电路时插拔探头。
结论四 信号的幅度不要超过探头和示波器的安全幅度,以免造成损坏
说明 信号幅度超过±40V时,用有源探头P6245和P6243测量会造成探头的损坏。不同探头的幅度量程是不同的,要留心探头及示波器上的说明文字。
说明 避免对示波器和探头造成损伤,尤其是有源探头。厂家说明。
1
示波器使用经验
二. 使用探头
结论一 有源探头使用前要先进行幅度校准 示例:
说明: 有源探头内含放大器等有源器件,因温漂等原因而使其在不同环境中引入直流偏移不同。使用前,先插到示波器上预热几分钟,然后进行一次校准。校准步骤:探头接好示波器面板自带的1KHZ、0.5V的信号,按VERTICAL→CAL Probe(main),稍等几分钟后示波器就自动校准好了。 有源探头未校正前测一1KHZ信号有100mV的直流偏移
有源探头校正后测量同一信号时无直流偏移
结论二 探头的地线不要悬空
示例
说明 探头地线悬空时,示波器的地和电路板的地通过各自的安全地线和大地连在一起,测量时也能看到波形,但引入地线噪声较大,实测时看到波形不稳定,晃动很厉害。
探头地线悬空时,示波器显示信号上叠加有较大的交流干扰,并且波形抖动很厉害。
探头接电路GND,波形无交流干扰,波形也很稳定。
示波器使用经验
结论三 手触摸探头会对被测信号造成影响
示例
探头空载,手不碰探头时示波器显示的感应噪声电压很小
探头空载,手碰探头探针时示波器显示的感应噪声电压明显增大
以下两幅图是实际测试电路板上同一个信号时的波形,可看出手碰探头对信号的幅度的影响。
实际信号下降沿反冲很高,达1 .78V。
降沿反冲幅度变小, 只有1.24V。
手碰探头外皮时,示波器显示的信号下说明 当手指触摸被测电路及探头时,人体引入的干扰电压和电路板上的信号电压叠加在一起,必然对信号的实际情况造成影响。
结论四 探头地就近接被测信号的地
示例
示波器使用经验
探头接被测信号所在芯片管脚地时测到波形
探头接另外一个芯片的地时测到的同一信号波形,可见反冲高度不一样
说明 由于地线电流的影响,各个接地点之间存在着一定的电位差,接地不正确时,会引入测试误差。探头接地点要以被测信号所在芯片的引脚地为准。 结论五 探头探针就近接被测信号管脚 示例:
同一个接地点时,同一信号线上不同两点的波形不同。(40M时钟)
说明 在同一条PCB走线上,信号存在反射、滤波、串扰等因素影响,走线的两端观察到的信号是不同的,而对器件直接起作用的信号是器件输入管脚和器件地之间的信号。因此,测信号时,应测输入信号,且要尽量靠近芯片管脚。
结论六 引出线要尽量短 示例:以下四幅图是用不同长度引出线测同一信号时的波形,可看出不同长度引出线对测量的影响
直接测芯片输入管脚
用10厘米长线引出
用20厘米长线引出
用 4 30
厘米长线引出
示波器使用经验
比较四幅图的反冲高度可见,引出线越长,引入误差越大。
结论七 使用多个有源探头观察不同信号时,每个探头都应接地
示例
两个通道测同一信号,CH1探头接
地,CH2探头未接地,测得波形不 一样
CH1和CH2 的两个探头都
接地时测得波形相同 说明 原因同上
说明 每个有源探头都带有放大器,其地虽与示波器内部地相连,但此时地线已不是对应信号的地,对测量带来误差。
结论八 测试时,尽量减小探头探针与探头地所构成环路的面积
示例
说明 探头信号线和地线之间环路面积越小,电磁场的变化(包括电路板本身产生的和外界环境中的)在环路中感应出的电压越小,对测试精度的影响也就越小。另外,当探针与地线环路面积大时,由于地环路电感的增大,会使信号边沿过冲增大,引入误差。如下面两幅图所示。
探头探针与探头地所构成环路的面积小时感应的噪声电压小
探头探针与探头地所构成环路的面积大时感应的噪声电压大
示波器使用经验
结论九 探头要尽量与电路板PCB板面垂直
示例
探头与电路板垂直时感应的噪声电压小
探头与电路板平行时感应的噪声电压大 地环路面积小时测得过冲是2.2V
地环路面积大时测得过冲是2.8V 说明 与探头和PCB板面平行相比,探头与PCB板面垂直时电路板中高频信号在示波器探头环路中感应出的电压较小。
结论十 测量任意两点间的信号应使用差分探头 示例
这是用差分探头测量RS-422差分传输的波形图
说明:普通探头只能测相对于地的信号,而差分探头可以测任意两点间信号。差分探头有三根引线:一根地线,一根正信号线(标示为+)和一根负信号线(标示为—)。使用时,探头地线接电路板GND,正负端分别接被测差分电压
示波器使用经验
端,示波器显示的波形是正端信号减负端信号的电压差值。
结论十一 可以用两个普通探头代替差分探头进行差分测量
示例
说明 用两个相同的探头,CH1接A点,CH2接B点,然后用示波器的运算功能,选择CH1-CH2,此时示波器显示的就是A和B两点的差分值。这种方法适用于共模电压为直流或低频且幅度低于差模信号允许幅度的情况。
结论十二 用差分探头作对地测量时“-”端不能悬空 示例:
差分探头作对地测量,“-”端未接地时波形图
差分探头作对地测量,“-”端接地时测同一信号的波形图
上图是用两个普通探头相减作差分测量波形图 下图是用差分探头测量同一信号的波形图
说明 “-”端是差分探头中放大器的一个输入引脚,差分探头用作普通探头测对地电压时,负端悬空时易引入干扰,应要接电路地。
结论十三 小心探头间的串扰现象
示例
示波器使用经验
两个探头靠得很近(尤其是探针
和探头地线构成面积平行重叠时),测到波形有串扰
两个探头远离时,测到波形无串扰
说明 高频信号辐射较强,多个探头共用时,探针上高频信号会在各个探头与地线组成的环路面积中感应出噪声,当多个探头平行走线时尤其严重。从示波器上看好像是电路板上信号间的串扰,而实际电路板上信号并无串扰。因此要注意,多个探头共用时,各探头要避免平行走线,更不要缠在一起,要尽量远离。
结论十四 探头与示波器有特殊的匹配关系
说明 TEK示波器的输入电阻有两档,1MΩ和50Ω。当接有源探头时(如P6245),示波器的输入电阻会自动转换到50Ω,从而进行正确测量。当再换上无源探头时,需要手工把示波器的输入电阻设臵回到1MΩ,否则屏幕上会显示错误波形或无波形显示,无法进行正确测量。操作步骤是:VERTICAL MENU →Coupling(main)→1MΩ(side)。
结论十五 有源探头未插好时,虽显示有波形,但波形幅度错误 示例:
示例
用500M无源探头,示波器输入电阻选1M时,测到的正常信号波形 用500M无源探头,示波器输入电阻选50Ω时,测同一信号的波形,发生了错误。
示波器使用经验
探头未插好时显示的信号幅度发生错误,本来是0-5V的电平,却显示成了0-25V和0-250V。(同一个信号)
说明 断开探头和电路的电气连接,从示波器上拔下探头再重新插入。一般先插好探头再打开示波器的电源开关时无此现象发生。
结论十六 要注意差分探头的“削波”现象 示例:
说明: TEK公司差分探头P6247能够测量的差分电压范围是:打在÷10档位时是±8.5V,打在÷1档位时只有±850mV。差分信号峰峰值超过850mV时(比如测公司常用的平衡线传输信号±5V),要注意选用÷10档,否则会因输入过大而使显示的波形发生错误。
结论十七 测试高速信号时要选用1G、1PF探头
示例
说明 对被测信号而言,探头和示波器输入电容相当于是滤波器,对被测信
差分探头,用÷10档位测到的正确差分信号波形
差分探头,用÷1档测到的同一差分波形,发生了“削波”现象
用,1G示波器,配1G、1PF探头观察到的信号波形,有高频振荡。
用1G示波器,配500M、8PF探头观察同一信号波形,看不到高频振荡。
示波器使用经验
号的高频成分有衰减,如果衰减过大,会造成测试失真。因此,在观察信号上升或下降沿细节时,要注意选用1PF有源探头。
再如下图,用1PF探头看到信号边沿有毛刺,用8PF探头却看不到。
探头使用正确与否,直接决定着我们观察到的信号是否真实地反映了电路板上信号的实际情况。测试时,一定要注意正确使用探头。
8PF探头看不到边沿毛刺
用1PF探头能看到边沿的毛刺
示波器使用经验
三. 触发方式
1. 边沿触发简单常用-edge
说明: 它是利用信号变化的边沿来进行触发。一般先用边沿触发方式观察信号情况,发现有问题时再根据实际情况选用其它的触发方式。
2. 捕捉毛刺-glitch触发
用边沿触发能看到低电平上有毛刺, 但很难捕捉到最高幅度的毛刺
用毛刺触发功能捕捉最高幅度的毛刺很容易
用上升沿触发观察信号
说明:毛刺触发是很有用的一项功能,可用来捕捉低电平或高电平上的毛刺,看其幅度是否超标。毛刺触发方式下,随着触发电平的缓慢调高,毛刺幅度更高的信号就显示在屏幕上,直到触发电平位臵超出信号毛刺所能触发范围。
操作方法 :TRIGGER MENU→Type(main)→Pulse(pop-up)→Class(main)
→Glitch(pop-up) ,然后按Polarity&Width选择毛刺的极性和宽度,再按glitch(main),选accept表示宽度小于设臵值的毛刺触发,选reject表示宽度大于设臵值的毛刺触发。Mode&Holdoff设臵为Normal 时,表示只有当信号符合所设臵的触发条件时才触发;设臵为Auto时,表示在没有符合触发条件的情况下,示波器自动触发。
3. 捕捉幅度异常信号-Runt触发
以幅度位于1.4V和4.4V之间的信号触发捕
捉到幅度异常信号
示波器使用经验
说明:信号幅度位于一定范围内时触发。操作方法是:TRIGGER MENU→Type(main)→Pulse(pop-up)→Class(main) →runt(pop-up), 然后通过Threshold选择触发信号幅度位于的上下限值。再通过Trigger When可设臵:信号电平不但要落在设定的上下限范围内,保持时间还要超过设定值时才触发。
4.捕捉宽度异常信号-Width触发
说明: 该触发方式是:信号时间宽度位于某一设定的时间范围之内,或者是位于该范围之外时触发。例如:设定upper limits为50ns,lower limit为10ns。选Within limits表示宽度在10ns和50ns之间的信号触发。选Out of limits表示宽度小于10ns或大于50ns的信号触发。
操作方法是:TRIGGER MENU→Type(main)→Pulse(pop-up)→Class(main)
→width(pop-up),再依次设定显示屏下方的各项。
以宽度在520ns和1us
之间的信号作触发
5.检查信号边沿跳变速度是否足够快-Slew Rate触发
说明:该触发方式是:信号边沿的变化时间快于或慢于某一设定的值时触发。操作方法是:TRIGGER MENU→Type(main)→Pulse(pop-up)→Class(main) →Slew(pop-up),再依次设定显示屏下方各项。例如:设定Thresholds为500mv和4.5V,选Trigger When 为Slower than ,选Delta Time为10ns,表示信号电平从500mv变化到4.5V时,如果跳变时间超过10ns就触发。
以下降时间超过10ns 的信号作触
发,检查下降时间是否合格。
示波器使用经验
6.保持电平时间超限触发-Timeout
说明:该触发方式是:信号电平保持低或高超过某一设定的时间时触发。操作方法是:TRIGGER MENU→Type(main)→Pulse(pop-up)→Class(main) →Slew(pop-up)。再依次设定显示屏下方的各项。
7.模式触发(Pattern)的应用
说明:该触发方式是:来自各个输入通道的信号进行布尔运算。满足条件时触发。
操作方法是:TRIGGER MENU→Type(main)→Logic(pop-up)→Class(main) →Pattern(pop-up)。 Define Inputs 用来定义各个输入通道采用的逻辑方式:H——高电平为1,
L——低电平为1, X(不理采)。
Define Logic 定义进行的运算。可以是AND(与)、OR(或)、NAND(与非)、NOR(或非)。
Trigger When 可以设臵结果为1或结果为0时触发。还可进一步设成结果为1 或0的时间超过某一设定值时触发。
Set Thresholds 设臵各个通道的逻辑电平的阈值。
利用此触发功能,可依据诸如地址总线或数据总线上的一特定数字值触发。来观察启动线以及读写信号线上的信号情况。
以保持低电平时间超过410ns的脉冲
作触发信号
CH1-CH4的信号分别为高、低、高、高时触发
CH1-CH4的信号分别为高、低、高、高,且保持时间超过20ns时触发
示波器使用经验
8.状态触发(State)的应用
说明:此种触发模式是在第四通道的上升或下降沿处,读取前三个通道的逻辑运算结果,满足条件是触发。 操作方法是:TRIGGER MENU→Type(main)→Logic(pop-up)→Class(main) →State(pop-up)。再依次设定显示屏下方的各项。
9.检查建立保持时间Setup/Hold
说明:该触发方式是:以时钟通道的跳变沿处为基准,设定一个时间范围,在该范围内如果数据通道的信号逻辑值有变化,就会进行触发。
操作方法是:TRIGGER MENU→Type(main)→Logic(pop-up)→Class(main) →Setup/Hold(pop-up)。再依次设定显示屏下方的各项。其中Setup/Hold time 设臵时间范围的起始/结束时刻。是以时钟的跳变时刻为基准的。Setup值为正表示在时钟跳变之前,而Hold值为正表示在时钟跳变之后。
熟练掌握数字示波器提供的丰富的触发方式,灵活运用,会使你捕捉信号、发现问题更有效。
第二通道的下降沿左右15ns范围内如果第
四通道数据有变化就触发
在第四通道的上升沿处,前三个通道的信号分别为高、低、高时触发
示波器使用经验
四 测试方法
一. InstaVuT(长余辉)有重要的价值
长余辉方式可看到信号中有尖形脉冲
正常触发方式却看不到这个尖脉冲
说明: 在NORMAL正常方式下,波形捕捉次数是50次/秒。在InstaVuT方式下,波形捕捉速率最高可达400000次/秒(依示波器而定)。示波器以叠加的方式把波形显示在屏幕上,并且波形在屏幕上的停留时间可由用户设定。其优点是可捕捉到间歇性偶发信号,并且使看一段时间内信号情况很方便。这种功能可以把一段时间内的所有信号波形通过叠加的方式显示在屏幕上。NORMAL方式下由于相邻两次捕捉波时间相隔太远,很容易丢失间歇性偶发信号。 操作方法:InstaVuT→MODE(main) →instaVu(popup),再在屏幕右侧依需要设定波形保持时间,或选取永久保持。
二.利用单次触发功能
说明: 单次触发和软件的单步运行很相似,每触发一次就停下来,可详细观察触发信号左右的信号情况。这在调试数字逻辑电路时尤其有用。
操作方法:按一下SHIFT+ACQUIRE MENU→stop after RUN/STOP(main)→ Single Acquisition Sequence( side), 就进入了单次触发模式。按一下
用单次触发功能,以通道1上电后出现的第一个下降沿为触发信号,观察通道2上的信号,看到相隔约500mS后有一毛刺信号。
RUN/STOP键,示波器就处于等待触发状态。捕捉到一次触发后,示波器暂停接收触发。如需再触发,需再按下RUN/STOP键。
三. 延时触发的应用
示波器使用经验
TEK示波器提供了两种延时触发:delayed runs after main和delayed triggerable。 ① delayed runs after main
通道上出现触发信号后,延时6us,以此时刻为基准点来显示信号。
delayed runs after main方式工作过程是这样的:找到一个触发脉冲后,延时一段时间(时间长度由用户设定),然后以延时后的时间点为触发时刻显示信号。
操作步骤:HORIZONTAL MENU→Time Base(main)→Delayed only(side)→Delayed Runs After Main(side)。然后设臵延时时间。
这种方式的一个应用:可用来详细观察与第一个触发信号相距较远的信号。 ② delayed triggerable
delayed triggerable分三种情况,由用户设定,它的工作过程是这样的:
主通道触发等待用户设定时间等待次通道出现触发显示波形次通道上出现n次触发次通道上出现n次触发等待用户设定时间主通道和次通道的时基可以设臵成不同的值,显示波形时是以次通道上的时基为准的。
下图是一个delayed triggerable的例子。
CH2出现上升沿后,CH1再出现以此时间点为基准展宽信号来观
察信号细节。 三次上升沿,然后再延时6us,以此时间点为基准显示信号。 操作步骤:先按常规方法设好主通道的触发,然后SHIFT DELAYED TRIG
示波器使用经验
→Delayed by(main)→Triggerable After Time ,Events or Events/Time(side) ,选其中的一种延时触发方式,再设好显示屏下方各值。
退出延时触发的方法是:HORIZONTAL MENU→Time Base(main)→Main only(side)。
四.利用长记录长度的功能
示例:
说明:观察信号比较详细,而且需要观察很长一段时间内的信号时,一个屏幕长度就不够用了,这时可使用长记录长度功能。操作方法: HORIZONAL MENU键,再进入Record Length选择波形记录长度。可根据自己的需要选择其中一种记录长度。拧动HORRIZON钮,时间上连续的信号波形就显示在屏幕上。
五.利用数学运算功能
说明:示波器提供的加减乘除等运算功能可使测试更方便。比如上图,利用两个通道值相减就实现了差分测量。
操作方法:MORE→math(main),再依据需要设臵数学运算功能。
利用长记录长度功能,观察时间上
连续的信号波形。
上图是用两个普通探头相减作差分测量波形图 下图是用差分探头测量同一信号的波形图
示波器使用经验
六.利用频谱分析功能
→FFT(main)。
七.Peck Detect和Envelope的应用
1K方波信号的频谱图
说明:TEK示波器提供了FFT功能。可用来观察信号的频谱。操作方法是:MORE Sample方式下观察到的信号波形 Peck Detect方式下观察到的同一信号波形
Hi Res方式下观察到的同一信号波形
Peck Detect方式下观察到的同一信号波形
Average方式下观察到的同一信号波形
示波器使用经验
说明:示波器水平记录长度代表的时间长度除以总点数称为一个取点间隔。每个取点间隔内示波器采样几个点(假设为m),然后以某种方式取其中的一个点用于显示电压波形。不同的取点方式下观察到的波形有所差别。
Sample方式下,总是取每个取点间隔内采样的m个点的第一个点用于显示波形,这是示波器缺省的方式。
在Peak Detect方式下,在第一个取点间隔中取m个采样值的最大值,在下一个取点间隔中取m个采样值的最小值,这样交替进行。此方式可用于检查毛刺和虚假信号。
在Envelope方式下,把n次触发取得的值都保存下来,然后在这n次触发中对应的取点间隔处,从n*m个数据中找出最大值(最小值),在下一个取点间隔处找出最小值(最大值),交替显示。此方式可显示波形的包络。
Hi res方式下,每个取点间隔内采样到的m个点取平均值,然后显示。此方式可用于滤除噪声。
Average方式下,进行n次触发,每次触发都采用Sample方式,然后在对应的取点时间间隔处,把n个值取平均值,依此值来显示波形。此方式可用于降低周期信号的噪声。
操作步骤:SHIFT ACQUIRE MENU→Mode(main),再依据需要选取取点方式。
八.观察信号质量时时间档位要设置得足够细
时间档位打得太粗看不清上升沿细节 时间档位打得细些可看到上升沿有毛刺
九.串扰调查的方法
通道1的尖峰毛刺和
通道2信号同步,由此判定通道2是串扰源。
示波器使用经验
说明:用两个探头,一个探头接被串扰的信号,另一个探头碰触被怀疑为串扰信号源的点,如果此点上信号和被被串扰信号上的干扰信号同步,则此点极有可能是串扰信号源。
十.同步时钟的测试方法
以同步时钟的低频时钟信号作触 发观察到的显示稳定的波形
以同步时钟的高频时钟信号作触发时波形显示混乱
说明:在用多个通道测量同步时钟信号的关系时,要以频率低的信号为触发信号。否则会因为高频信号触发边沿处,低频信号电平有高有低而使显示的低频信号重叠。观察不到稳定的波形。
十一.注意虚假信号 示例:
时间档位打在1ms观察40M时钟时,数字 示波器显示一个476HZ的信号,是一虚假 信号,实测时可观察到波形晃动。
说明:TEK示波器显示方式是每个水平格50个点,而不管每个水平格代表的时间宽度。当时间档位打在1ms时,每个水平格采50个点,也就是采样速率是50KHZ/s。这种采样速率要看40M的信号是根本不可能的。示波器只是把按50KHZ/S采到的点拼成了一个波形,而这些点因为太离散,根本不能代表40M信号的波形。因此,观察信号时,时间档位要打细,使采样速率提高。
时间档位打在12.5ns时观察到的真
实的40M时钟信号波形
示波器使用经验
十二.测信号质量时要去掉多余的负载 示例:
外接一个频率计时测得的一16MHZ信号波形
去掉频率计后测得的16MHZ信号波形
说明:外部负载的输入电阻和电容会对被测信号产生衰减、滤波等影响。测信号质量时要尽量模拟电路板实际工作时的情况。
十三. Fit to screen的一个应用:时间档位打粗情况下提高采样速率,观察宽度小、相距远的信号
Fit to screen 为OFF,把时间单位打粗 Fit to screen 为ON,把时间单位打粗
来观察信号之间关系时,却因信号宽 时,观察到的宽度小相距远的信号之
度小而看不到信号
间关系
说明:TEK数字示波器Fit to screen打在OFF时,采样速率是自动调整的,不管每个水平格儿代表多长时间,每个格显示50个点。也就是说,时间档位打得越粗,采样速率越低。此时若把时间单位打粗来观察宽度小、相距远的信号之间关系,会因为采样速率的降低而丢失宽度较小的信号。把Fit to screen打在ON时,在每个水平格儿代表时间长度一定情况下,记录长度越长,每个格儿的点数就越多,相应采样速率就越高。这时如果时间档位较粗,不致因采样速率降低太多而丢失宽度小的信号。
操作步骤:HORIZONTAL MENU→Record Length(main) →Fit to screen(side)。
21
示波器使用经验
十四. 精确测量相距较远的信号的时间关系
(1)选用长记录长度,Fit to screen 打在ON,在时间档位尽量小的情况下使两个相距较远信号同时显示在屏幕上。按Cursor键, 选取竖光标并移动,使两上竖光标分别大致对齐两个相距较远信号,如图a所示。
图a. 图b.
图d.
图c.
(2)拧动HORIZONAL钮,把其中一个信号移动到屏幕正中央,如图b所示。 (3)把Fit to screen打到OFF,此时波形以屏幕正中央为基准点展开,如图c 所示。
(4)此时发现竖光标可能与信号并未对齐,移动光标使之与信号精确对齐,如图d所示。
(5)对另一个信号作同样的操作。这两个信号的时间精确关系就显示在了屏幕的右上方。
根据测试的需要,把示波器提供的各种触发方式和功能组合起来使用(比如延时触发和单次触发组合),会使您的测试技巧更高,发现问题更深刻,工作更有效。
22
五 小常识、小经验
1.数字示波器的键太多,主要有几个,一般怎样设置?
示波器主要有三个设臵区,第一个是:“VERTICAL”设臵区,用来设臵信号显示时垂方向的有关状况,诸如显示幅度,在屏幕上的上下位臵等。第二个是“HORIZONTAL”设臵区,用来设臵信号显示时在水平方向的有关状况,比如左右位臵和信号显示宽度。第三个是最复杂的“TRIGGER”设臵区,用来设臵信号的触发方式,正是因为数字示波器提供了丰富的触发方式才使其功能很强大。
“VERTICAL”通常设臵为2.0V;“HORIZONTAL”根据所观察的具体信号设臵;“TRIGGETR”通常设臵为:TRIGGERT MENU →SET LEVEL TO 50%→Type(main)→Edge(pop-up)。
2.利用AUTOSET自动设置来观察信号情况
按下AUTOSET键,示波器会按被测信号的情况自动显示信号。
3.怀疑示波器的设置模式被搞错了,怎么办?
按下SETUP→Factory set(main),使示波器回到厂家的设臵上。
4.触发电平不合适,观察信号就不稳定或看不到 触发电平应放臵在信号幅值范围以内,否则会因为没有触发而观察不到波形。触发电平太高或太低时,会因为随机毛刺造成触发而使屏幕上波形跳动。如果信号是单一直流电平,只有把触发电平放在信号电平值上时屏幕上才会显示有波形。
5.利用Measure功能
Measure提供了很多项测量功能,比如周期、频率、上下峰值、上升下降沿时间,均方根值等。利用此功能使测试方便。
6.利用ZOOM功能
利用此功能可以在水平方向和垂直方向缩小或放大观察信号。
7.利用Cursor功能
利用两个垂直光标可以测量垂直两点间的电压差值,利用水平光标可以测量水平两点间的时间距离。
操作方法:按面板上的CURSOR键,再按需要选取水平光标或垂直光标,旋
23
动面板上的SELECT钮,使光标对准感兴趣的两点,其差值就显示在了显示屏上。
8.拷贝示波器屏幕图形时要注意两点
拷贝屏幕图形时要首先保证设臵正确。操作方法:SHIFT+ HARDCOPY MENU →Port(main)→File(side) →layout(main) →Portrait(side)→Format(main)
→ BMP mono或 PCX。Port设臵不正确时,图形拷贝不到磁盘上。Layout设臵成Landscape时,拷贝到磁盘上的图形是倒的,会给下一步处理带来麻烦。
9.加深认识1×和10×探头
1×探头也称1:1探头,可简单地将高输入阻抗示波器接到被测电路,相当于电缆的功能。它将引入一明显的电容,与示波器的输入并联。一个1×探头约有40至60PF的电容。
10×探头也称10:1探头、分压探头或衰减探头,内部插有并联的电阻器和电容器。,各示波器连接后如下图所示。
R1 + R 2 VsC1 C0-C2Vin+-10×探头示波器探头内电阻和电容R
1、C1与示波器输入电阻电容R
2、C2满足R1*C1=R2*C2时,两个电容的影响正好抵消。此时:
R2VinVsR1R2
R2是示器的输入阻抗(1MΩ),R1=9R2,可得:。
1VinVs10结果是:探头和示波器结合后,由于两个电容有效地抵消,10×探头有比1×探头宽得多的带宽,代价是招致电压的损失。只要被测电压不致小到被10除以后,示波器上读不到即可。这意味着在决定是否使用10探头时,要考虑示波器的灵敏度和信号电压能否够用。在许多示波器上,用户必须记住,使用10× 探
24
头时,要将测量结果乘以10。 TEK数字示波器能自动识别P6139和P6245型号的10×探头,会自动将读数调至正确值。
用10×探头时,电阻和电容影响都降低(相对1×探头),但保留了探头电容C0,这一电容量由制造厂给定。
P6139探头小孔就是调节上图所示的小补偿电容的。方法是将探头接在示波器上的校正信号源上(一般是0.5V,1KHZ方波),调整探头电容,使方波尽可能呈方形且顶端平坦。
11.实时取样和重复取样
实时取样是最明显和直观的取样方式。所有的取样点是响应示波器的一次触发而获取的。这种技术的主要好处是可以获得一次瞬变值(或称单冲信号)。缺点是模-数转换器必须以高于信号最高频率两倍的速度准确地工作。
重复取样分两类:顺序取样和随机取样,可在波形满足下面两种条件时采用: 1:波形必需是重复的; 2:必需能稳定地触发。
顺序重复取样:每触发一次获取一个单一取样。当发生触发时,触发后在精确控制的时间内进行取样。每触发一次,往后延迟一点时间,使全部波形都被取样。
随机重复取样:相对于触发信号而言随机地取样,再根据取样点距触发时刻的距离,把采到的点合成一个波形。这样就不受模-数转换器速度的限制,但其性能受下列局限,即获取时间颤抖最小的取样,并相对触发信号及时布臵该取样点的能力。
TEK数字示波器提供了随机重复取样技术。在Repetitive Signal设臵成ON情况下,当时间档位打得很小,模数转换器速度满足不了要求时,示波器会自动启用随机重复取样,此时示波器左上角会显示一个ET(Equivalent-time)标识。当Repetitive Signal设臵成OFF时,不管时间档位打得是否很小,示波器只用实时采样。
操作方法:SHIFT+ACQUIRE MENU →Repetitive Signal(main) → on或off.(side).
12.调整释抑时间(Holdoff)的作用
示波器触发后,抑制触发系统以免再取点过程中再次触发,直到一次设定长度的点取完。设定长度的点取完后,示波器还会在HOLDOFF设定的时间长度内抑制触发信号。这种功能可用来稳定显示复杂周其脉冲序列。以下图所示一个脉冲序列为例。
25
holdoff
如上图所示:图中虚线代表触发电平位臵,采用边沿触发。当Holdoff时间设臵为图中所示时间长度时,不论首先由三个脉冲中的哪一个先触发,由于释抑时间的设臵,下一次的触发信号仍然只能是它。这样屏幕上就能显示出稳定的波形。否则会因为图中所示的各个脉冲都能触发而使屏幕不能稳定地显示波形,很杂乱。
操作方法:TRIGGER MENU→Mode&Holdoff(main),再在显示屏右侧调整释抑时间的长度。
26