您好,欢迎访问三七文档
当前位置:首页 > 建筑/环境 > 工程监理 > 信号处理工程应用训练(指导书)
信号处理工程训练课北京工业大学电控学院1训练一信号与系统函数编程训练目的1﹑学会将信号与系统函数转变成计算机程序。2﹑基本掌握将数学函数转变为程序函数的技巧与规范。3﹑了解理论函数与程序函数的差异。初步认识计算机适用范围。训练介绍1﹑数学函数转化问题把根据数学函数编写的C函数子程序称为程序函数。数学函数与程序不可能完全一致。一是计算机运算都有一个范围,所做运算超出范围便会出错;二是因为计算机不能做除零运算,这会产生一除法错,理论函数无此限制。所以要求在编写程序函数时一定要结合实际应用情形来确定如何编写,不能简单照搬数学函数。三是程序函数不象数学函数那样易于进行代数运算或者具有某种运算性质,例如理论上的冲击函数,则不易编写对应的函数子程序,所以数学函数并不能全由计算机的程序函数完全实现。一般在将一数学函数转变为一计算机上程序函数时,要具体情况具体处理。编写程序函数有一些规范和注意事项:(1)数学函数当中若有除法运算,需仔细函数奇异值的处理,须通过程序中的判断和特殊处理使程序函数返回正确值。(2)数学函数中跳变点的极限值,常取左右极限的均值,程序函数中以右极限作为函数的取值。若特殊需要,须与数学函数完全一致,则仍按数学函数规定取值。(3)所有函数子程序的输入与输出参量尽量规定为double型,建议不用float型,这是出于规范考虑。(4)所有程序函数的输入输出参量声明时写成如下形式:Doublefunction(Typeout1,Typeout2,...Typein1,Typein2,...)Doublefunction(Typeout1,Typeout2,...信号处理工程训练课北京工业大学电控学院2Typeio1,Typeio2,...Typein1,Typein2,...)即,输出变量占一行,输入输出变量占一行,输入变量占一行。输入变量的第一个参量为主变量。(5)尽量减少函数变量个数,例如sin(t)有两个参数,编程只需实现sin(x)。(6)每个函数子程序须有适当文字注释,注释的内容包括索引号,对应的理论函数,编者姓名及日期,函数的功能﹑定义域﹑值域,使用举例等。说明应简洁清楚,以备能长期正确使用。(7)程序函数块内的小块以一空行进行分割,程序函数体之间,以2、3空行行分割。组织一个函数库文件时应将功能,特征相近的函数子程序归在一起。各分类块间应有适当的注释说明。2﹑以下以单位阶跃U(t)、方波和函数])3][()1[(222222bababah三种信号函数为例进行编程示范:训练内容01、斜变函数R(t)=t,t02、锯齿波:f(t)=t/T,0≤tT扩展至整个t轴(如图1-1所示)。图1-13、调制SinC信号:f(t)=(sinωtcosΩt)/ωt,代入参数Ω、ω时,使Ωω。训练步骤1﹑依训练内容在一个文件中编写好三个函数子程序,并依要信号处理工程训练课北京工业大学电控学院3求进行注释,做成一个库文件。2﹑编写一个有main()函数的可执行文件,在此执行文件中调用库文件里的函数子程序进行计算,计算结果由计算机屏幕输出,结合手算验证,多取不同情况的特殊值,保证程序函数正确。问题讨论1﹑举例说明不宜用程序函数表达的理论函数,并总结这些函数的特点。2﹑讨论理论方式、计算机方式在处理实际物理的信号与系统问题时的异同。3﹑对规范化程序方法的初步认识。]训练二图形显示与观察训练目的1﹑掌握基本的计算机作图方法。2﹑掌握常用的信号与系统图形观察。3﹑熟悉一些显示器编程的基本概念。训练介绍1、计算机绘图基础对于计算机屏幕,机器本身按物理坐标绘图显示,屏幕左上角的物理坐标是(0,0),右下角的坐标是(横向分辨率-1,纵向分辨率-1)。Windows操作系统是在屏幕上开若干窗口,有客户区的窗口用户可以在客户区作图,窗口客户区的左上角的相对物理坐标是(0,0),右下角的相对物理坐标是(w-1,h-1),w是宽,h是高,用户工程使用的是自己定义的用户坐标,用户坐标到窗口的相对物理坐标有一个转换。如图2-1所示:信号处理工程训练课北京工业大学电控学院4(图2-1)用户坐标可以是三维坐标,同样是转换到2维屏幕窗口坐标。工程中常用不同的窗口模拟一些仪器,如用示波器﹑扫频仪﹑频谱仪﹑矢量分析仪等等,也可用不同的坐标系统和作图函数工具研究分析工程中的信号和系统。对窗口的作图由不同的图形驱动函数实现。基本的作图函数有SetPixel()、MoveToEx()、LineTo(),其它作图函数可由基本函数构造出来。工程训练中,对2维用户坐标窗口作图函数,函数名后有一个2,如linto2(),3维的作图函数后面有一个3。不同窗口不同坐标体系的作图函数众多,主要的是掌握基本,理解其它或构建其它。训练内容1、用plotxy2()绘制余弦,正切,和e为底的指数函数;2﹑用plotxy2()绘制训练一中的斜变函数和锯齿波函数,用plotxyz3()绘制sinC()函数。3、练习物理坐标下的作图,绘制圆,三角形和扇型图(参数自定)信号处理工程训练课北京工业大学电控学院5训练三波形合成训练目的1﹑学会用计算机合成波形。2﹑学习将理论知识同用计算机相结合的方法。训练介绍波形合成有许多运用,如电子琴、信号源、计算机里声卡,合成法使得信号、声音、图象的产生更加容易,使用更加方便,计算机研究信号波形合成,可直观看出合成的具体效果,这对我们进行科学研究和设计新仪器新设备都有极大帮助。训练理论,核心是一种函数逼近,通过合成信号g(t)希望能与理想信号f(t)差别很小,以使实际使用当中可用合成信号代替理想信号。用数学形式表示为:g(t)=c1g1(t)+c2g2(t)+...cngn(t),(g1(t)﹑g2(t)...gn(t)为一函数集)在(3-1)条件下的c1﹑c2...cn,可得到f(t)与g(t)的最佳匹配。由此可找到函数f(t)在不同坐标函数集上的分解合成形式。其中由正交正弦函数集表示的傅立叶级数为:式中)23()sincos()sincos(2)(01kkkkkktkbtkatkbtkaatf)13()]()([min212ttdttgtf求信号处理工程训练课北京工业大学电控学院6有关系函数介绍:积分工具函数为宏函数_Trapz(value,a,b,N,fx,x)将自变量为x的f(x)在[a,b]区间划分成N2进行梯形积分,返回的积分值badxxfvalue)(,注意x为形式上参数,用于指明fx函数表达式中的自变量,无须用前声明。doubleFouSer(doublet,double*T,doublea[],doubleb[],int*N);用于求(3-2)式的值。t:为(3-2)中的自变量;T:为信号与系统函数的周期;a[],b[]:为(3-2)中系数构成的数组,数组长度为N。一个周期为1的函数f(t)的正交沃尔什级数表示为:其中:)83(),()(10dtktWaltfAk这里kr是k的二进制各位数字,p是二进制位数。Walsh函数只取{+1,-1},例如Wal(1,t)=sgn(cost)在0〈=t1/2时为+1,在1/2=t1时为-1。该函数最大优点是运算速度快,只须)53(sin)(2)43(cos)(2)33(2a)(10000TkTkTtdtktfTbtktfTaadttfTa,)63()10(),,()(0tktWalAtfkk)73(2),2sgn(cos),(1010rprrprrrkktkktWal信号处理工程训练课北京工业大学电控学院7简单加减即可完成。一个周期为T的函数g(t)的正交沃尔什级数表示为:由C函数实现walsh函数的运算:doublewal(doublet,intn);实现(3-7)的运算,返回第k级沃尔什函数在时间t处的值。doubleWalSer(doublet,double*T,doublea[],intn[1]);实现(3-9)的运算,用级数合成函数。程序示例选用的函数为::)43(0)32(2)21(5.1)10(5.0)(tttttf扩展到整个t轴。把该函数编写成标准的信号与系统程序函数jieti(),在主函数中积分求级数系数,然后用级数程序函数合成波形。训练准备1﹑预习有关付里叶级数,沃尔什级数的有关知识。2﹑编写初步的上机程序。训练内容1﹑作|sin(t)|,三角波,方波的5级傅立叶级数和沃尔什级数的合成图。2﹑作出两种级数合成波形与理想波形的误差图。)103(),()()93()0(),,(),()(000dtkTtWaltgATtkTtWalAkTtWalAtgTknkkkk信号处理工程训练课北京工业大学电控学院8训练四波形失真与群延时训练目的1﹑学会用计算机研究基本理论概念。2﹑培养用计算机仿真实际问题的能力。训练介绍在示波器研究信号与系统时,常需辅助设备,才能获得有关信号与系统的完整认识,图4-1是研究信号经一系统后产生失真的示意图,示波器同步信号采自系统输入,系统输出即失真信号做示波器显示,一个有经验的工程师可以通过调节系统旋钮1或2,观察失真信号变化,然后判断失真类型,否则就要借助专门的失真分析仪。以下是有关失真的理论定义:(1)波形的幅度失真——指在信号的正弦分量中因幅度发生相对比例变化而引起的失真。(2)波形的相位失真——指在信号的正弦分量中因相位发生相对位置变化而引起的失真。信号处理工程训练课北京工业大学电控学院9上述两种失真不产生新的频率分量,一般也称作线性失真。(3)波形的频率失真——指在信号的正弦分量中因频率发生变化而引起的失真,这种失真产生新的频率分量,一般也称作非线性失真。(4)信号的群延时——指系统响应的各频率分量相对于激励中的相应各频率分量延迟的时间虽不相同,但输出信号的包络并不变形,只是延迟了一段时间,其相频关系为:b()=b0+t。训练将通过动态连续模拟,以获得工程师相关经验。相关函数:intinstKeyCtr(doublex[1],doublea,doubleb,intn);该函数用于在已建好的用户坐标系统边框上安装一键盘控制按钮。intkeyCtr(doublex[1],doublea,doubleb,intn);/*:ESC=27exit0=.4keyadddx=(b-a)/n;—_,4keydecdx;*/预定义在xxgc.h;为实际键盘控制函数,根据按键不同,控制x[0]的量作增或减(”+=.”四键为增,“—-,”四键为减),x[0]变化区间为[a,b],变化步长为(b-a)/n。按ESC键函数返回0值,其他键返回1。intgetkey(void);预定义在xxgc.h;无返屏地返回一次普通按键或附加按键的值。示例对一周期信号)43(0)32(2)21(1.5)10(5.0)(tttttf扩展到整个t轴。分别产生上述三种失真,编程进行模拟(注意先确定好不失真的输入信号是什么)。信号处理工程训练课北京工业大学电控学院10训练内容1﹑以训练三的k级合成三角波和方波为不失真的原始信号(k由自选),总结以下情况失真的特点。(a)动态观察波形在某一谐波处的单纯幅度、相位、频率失真。(b)研究某种线性组合的幅度、相位、频率失真。(c)研究同时发生有幅度相位、相位频率、幅度频率、幅度相位频率的失真。问题讨论1﹑总结各种失真特点,讨论失真可由示波器判别的方法。训练五卷积运算训练目的1﹑学习用数值计算方法实现卷积积分。2﹑学习构造通用的函数工具。训练介绍信号处理工程训练课北京工业大学电控学院11任何实际物理系统与信号都可认为有起始点,所以普通数学意义的卷积可以是:用编程实现卷积运算,简单地,可直接套用(5-2)式的矩形积分运算式,或使用积分工具宏函数_Trapz()完成积分。训练内容1﹑用方法一二实现下面的卷积分,并作出卷积图形:的卷积
本文标题:信号处理工程应用训练(指导书)
链接地址:https://www.777doc.com/doc-170389 .html