唐山学院12通信工程信号与系统的实习报告模板.docx

上传人:b****5 文档编号:27715402 上传时间:2023-07-04 格式:DOCX 页数:20 大小:236.86KB
下载 相关 举报
唐山学院12通信工程信号与系统的实习报告模板.docx_第1页
第1页 / 共20页
唐山学院12通信工程信号与系统的实习报告模板.docx_第2页
第2页 / 共20页
唐山学院12通信工程信号与系统的实习报告模板.docx_第3页
第3页 / 共20页
唐山学院12通信工程信号与系统的实习报告模板.docx_第4页
第4页 / 共20页
唐山学院12通信工程信号与系统的实习报告模板.docx_第5页
第5页 / 共20页
点击查看更多>>
下载资源
资源描述

唐山学院12通信工程信号与系统的实习报告模板.docx

《唐山学院12通信工程信号与系统的实习报告模板.docx》由会员分享,可在线阅读,更多相关《唐山学院12通信工程信号与系统的实习报告模板.docx(20页珍藏版)》请在冰豆网上搜索。

唐山学院12通信工程信号与系统的实习报告模板.docx

唐山学院12通信工程信号与系统的实习报告模板

1引言

1.1设计的背景

“信号与系统”是一门实用性较强、涉及面较广的专业基础性课程,是电子信息类专业本科学生的必修课程,也是电子信息类专业硕士研究生入学必考的课程。

长期以来,该课程一直采用黑板加粉笔式的单一教学方式,学生仅依靠做习题来巩固和理解教学内容,对课程中大量的应用性较强的内容不能实际动手设计、调试、分析,严重影响和制约了教学效果。

由于“信号与系统”课程长期以来一直以粉笔加黑板式教学为主。

所以大量的分析结果缺乏可视化的直观表现,导致学生学起来比较抽象,并且花大量的时间和精力在手工数学运算上,但不能真正理解结果在信号处理中的实际运用。

因此,我们在这次毕业设计中用MATLAB来对该课程的部分内容进行形象、直观的可视化计算机模拟与仿真实现。

在此基础上,我们应用了MATLAB的图形用户界面功能完成了信号与系统部分内容课件的设计并实现了进行交互式的操作。

1.2设计的目标和内容

1熟练掌握连续信号的时域变换、频域、复频域变换的基本方法与原理,掌握连续信号的变换的原理以及连续信号的时域变换、频域、复频域变换的二维曲线图。

2熟练掌握MATLAB的操作与应用。

3熟练掌握MATLAB程序设计与实现方法。

4熟练掌握MATLAB的二维曲线图的可视化表现方法,图形对象的属性、事件与方法及其编程与控制。

5熟练掌握MATLAB的图形用户界面集成开发环境——GUIDE,以及用户界面的设计与实现方法。

6以MATLAB为开发平台,GUIDE为开发环境,开发完成连续信号的时域变换、频域、复频域变换的二维曲线动态演示系统。

1.3设计意义

以计算机辅助教学的模式进行学习,这样学生能够更加深刻地了解该课程,从而能够更加好的掌握课程所涉及到的知识。

所以将MATLAB引入到“信号与系统”课程中的意义的非常巨大的。

利用MATLAB高效的数值计算和符号计算功能,使学生能够从繁琐的数学运算分析中解脱出来从而把有限的时间用到课程知识的理解与运用上。

利用MATLAB完备的图形处理功能,实现计算结果和编程的可视化,可以让信号能够很直观的表现出来,极大的提高了学生的学生的学习效率。

用MATLAB的可视化建模及动态仿真功能,让学生能够对信号在系统中各种传输、变换与运算有深层次的理解,对整个过程也能够有更加直观和全面的认识。

MATLAB功能丰富的应用工具箱,为学生和老师提供了大量方便实用的处理工具,在处理好课程内知识的同时,还可以对课程相关知识做更深入的研究。

1.4系统的基本功能

1系统由连续时间信号的时域变换、频域、复频域变换组成;

2系统为用户提供交互式的信号选择功能,为用户提供可视化的连续时间信号的变换与运算的观察与分析界面;

3通过典型信号将连续时间信号的变换与运算用生动直观的二维曲线面图进行可视化表现;

4为“信号与系统”课程的教学提供计算机辅助教学环境。

5开发平台与开发环境:

开发平台:

WindowsXPProfessional+MATLAB7.0

开发环境:

MATLAB7.0GUI(layoutEditor、M-fileEditor)

 

2总体设计

2.1开发与设计的总体思想

模块主要针对连续时间信号的时域变换、频域、复频域变换进行设计。

我们提供了一些典型的例子,利用软件对信号进行简单分析。

在时域变换部分,我们提供了零状态响应、阶跃响应、冲激响应等功能;而在频域、复频域变换部分,我也提供了一些例子。

2.2系统功能结构图

图1系统功能结构图

 

3.详细设计(算法、原理、仿真演示)

我们的总体思路是模块化程序设计。

将程序功能分割成时域变换、频域变换、复频域变换等几个模块,通过函数之间的调用实现总功能。

3.1时域变换仿真分析

3.1.1实验原理

(1)线性时不变(LTI)连续时间系统用常系数线性微分方程进行描述,系统的零状态响应就是在系统初始状态为零条件下微分方程的解。

MATLAB控制系统工具箱提供了一个lsim函数来求解连续时间系统的零状态响应。

设系统方程为:

f(t)b(t)fb(t)fb(t)fby(t)a(t)ya(t)ya(t)ya)()()()()()(01122330112233+++=+++,

该方程左边、右边的系数向量分别为][0123a,a,a,aa=,][0123b,b,b,bb=,所对应的系统模型sys可借助MATLAB中的tf函数得到:

sys=tf(b,a).

这样,系统的零状态响应为:

y=lsim(sys,f,t),其中f是输入信号向量,t是与f对应的时间变量。

(2)连续系统的冲激响应、阶跃响应分别是输入信号为)t(δ和所对应的零状态响应。

MATLAB控制系统工具箱专门提供了两个函数求解连续系统的冲激响应和阶跃响应。

冲激响应:

y=impulse(sys,t);

阶跃响应:

y=step(sys,t).

其中sys,t的含义同上。

3.12零状态响应

Y

(2)(t)+4y

(1)(t)+4y(t)=f

(1)(t)+3f(t),f(t)=e^u(t).求零状态响应y(t)

源程序见6.1.1

程序运行结果见下图2。

图2

3.1.2冲击和阶跃

冲激响应和阶跃响应的结果如下图3,源程序见6.1.2

图3

3.1.3卷积

卷积是信号与系统中一个最基本、也是最重要的概念之一。

在时域中,对于LTI连续时间系统,其零状态响应等于输入信号与系统冲激响应的卷积;而利用卷积定理,这种关系又对应频域中的乘积。

如实验一所述,我们用离散卷积来代替连续卷积,只要取样时间间隔足够小时,就可得到满意的效果。

MATLAB信号处理工具箱提供了一个计算两个离散序列卷积和的函数conv。

设向量a、b代表待卷积的两个序列,则c=conv(a,b)就是a与b卷积后得到的新序列。

1:

利用conv函数,编制一个函数文件dconv,其输出为两个序列卷积后的新序列以及与该新序列对应的时间变量。

function[f,k]=dconv(f1,f2,k1,k2)

%计算f1与f2的卷积,并返回与得到的新序列相对应的时间变量

%f1,f2为输入序列;k1,k2为f1,f2所对应的时间变量范围

f=conv(f1,f2);

k_start=k1

(1)+k2

(1);

k_end=length(f1)+length(f2)-2;

k=k_start:

(k_start+k_end);

2:

在dconv函数和(*)式的基础上,编制一个函数文件cconv,利用离散卷积和来近似计算连续卷积积分。

function[f,k]=cconv(f1,f2,k1,k2,td)

%计算f1与f2的连续卷积,并返回与得到的新序列相对应的时间变量

f=td*conv(f1,f2);%实验讲义中的(*)式计算

k_start=k1

(1)+k2

(1);

k_end=length(f1)+length(f2)-2;

k=k_start:

td:

(k_start+k_end*td);

详细源程序见6.1.3

3.2频域变换

类似于傅里叶级数正交展开,函数看做复指数函数在整个连续频率区间上

的积分和

G(f)称为g(x)的傅里叶变换,或频谱。

若g(x)表示某空间域的物理量,G(f)

则是该物理量在频率域的表示形式。

振幅与相位频谱

A(f)=|G(f)|,是g(x)的振幅频谱;φ(f)是g(x)的相位频谱。

1.函数绝对可积

2.在任一有限区域里,g(x,y)必须只有有限个间断点和有限个极大和极小点

3.g(x,y)必须没有无穷大间断点

若函数可以看作是某个可变换函数所组成的序列的极限,对序列中每一函数进行变换,组成一个新的变换式序列,这个新序列的极限就是原来函数的广义傅里叶变换根据存在条件知:

Delta函数、正、余弦函数、阶跃函数不存在FT

源程序见6.1.4

图4频域变换主页面

3.3复频域变换

我们知道,对于阶跃信号

,其拉普拉斯变换为

首先,利用两个向量来确定绘制曲面图的

平面的横、纵坐标的范围。

例如可定义绘制曲面图的横坐标范围向量x1和纵坐标范围向量y1分别为:

x1=-0.2:

0.03:

0.2;

y1=-0.2:

0.03:

0.2;

然后再调用meshgrid()函数产生矩阵s,并用该矩阵来表示绘制曲面图的复平面区域,对应的MATLAB命令如下:

[x,y]=meshgrid(x1,y1);

s=x+i*y;

上述命令产生的矩阵

包含了复平面

范围内以时间间隔0.03取样的所有样点。

最后再计算出信号拉普拉斯变换在复平面的这些样点上的值,即可用函数mesh()绘出其曲面图,对应命令为:

fs=abs(1./s);

mesh(x,y,fs);

surf(x,y,fs);

title('单位阶跃信号拉氏变换曲面图');

colormap(hsv);

axis([-0.2,0.2,-0.2,0.2,0.2,60]);

rotate3d;

执行上述命令后,绘制的单位阶跃信号拉普拉斯变换曲面图如图5-1所示。

 

 

例6-1:

已知连续时间信号

,求出该信号的拉普拉斯变换,并利用MATLAB绘制拉普拉斯变换的曲面图6—1。

解:

该信号的拉普拉斯变换为:

利用上面介绍的方法来绘制单边正弦信号拉普拉斯变换的曲面图,实现过程如下:

%绘制单边正弦信号拉普拉斯变换曲面图程序

 

4.总结

这次我的设计开发基于MATLAB下的信号与系统教学辅助系统的过程中,在王丽侠老师的细心指导和帮助下;我亲身体验到了如何运用MATLAB来进行实用性的开发工作,在开发过程中我对信号与系统这门课程以及MATLAB软件有了更加深入的认识,同时也对软件的开发过程得到了解,这对于我以后的学习与工作有着非常重要的意义。

与此同时,通过这次开发经历我也感受到自己存在着很多不足,比如说:

学科知识不够扎实,知识结构不够完善,软件操作与程序设计能力不高等等。

但是值得欣慰的是,在王老师的耐心指导下,我还是成功的完成了自己所负责的设计与实现,虽然还可能存在许多的问题,但是我觉得我在动手能力方面有了很大的提高,受益非浅。

 

5主要参考资料

[1]薛定宇,陈阳泉,基于matlab/Simulink的系统仿真技术与应用,清华大学出版社,2002

[2]钟麟,王峰,MATLAB仿真技术与应用教程,国防工业出版社,2005

[3]楼顺天,李博菡,基于MATLAB的系统分析与设计—信号处理,西安电子科技大学出版社,1998

[4]吴湘琪,信号、系统与信号处理的软硬件实现,电子工业出版社,2002

[5]吴大正等,信号与系统分析,高等教育出版社,2000;

[6]郑君里等,信号与系统,高等到教育出版社,2001;

[7]梁虹等,信号与系统及MATLAB实现,电子工业出版社,2002;

[8]MATLAB6.5联机帮助;

[9]张志涌等,精通MATLAB,北京航空航天大学出版社,2000;

[10]程卫国等,MATLAB应用指南,人民邮电出版社;

[11]姚东等,MATLAB命令大全,人民邮电出版社,2001;

[12]飞思科技,MATLAB6.5应用接口编程,电子工业出版社。

 

6附录:

源程序清单

6.1上面用到的程序

6.1.1

a=[144];

b=[13];

sys=tf(b,a);

td=0.01;

t=0:

td:

10;

f=exp(-t);

y=lsim(sys,f,t);

plot(t,y);

xlabel('t(sec)');

ylabel('y(t)');

gridon

6.1.2

clear;clc;

t=0:

0.001:

6;

sys=tf([1],[2,3,4]);

h=impulse(sys,t);

g=step(sys,t);

subplot(211)

plot(t,h),gridon

xlabel('Time(sec)'),ylabel('h(t)')

title('冲激响应')

subplot(212)

plot(t,g),gridon

xlabel('Time(sec)'),ylabel('g(t)')

title('阶跃响应')

6.1.3

function[f,t]=ctsconv(f1,f2,t1,t2,dt)

f=conv(f1,f2);

f=f*dt;

ts=min(t1)+min(t2);

te=max(t1)+max(t2);

t=ts:

dt:

te;

subplot(221)

plot(t1,f1);gridon

axis([min(t1),max(t1),min(f1)-abs(min(f1)*0.2),max(f1)+abs(max(f1)*0.2)])

title('f1(t)');xlabel('t');

subplot(222)

plot(t2,f2);gridon

axis([min(t2),max(t2),min(f2)-abs(min(f2)*0.2),max(f2)+abs(max(f2)*0.2)])

title('f2(t)');xlabel('t');

subplot(212)

plot(t,f);gridon

axis([min(t),max(t),min(f)-abs(min(f)*0.2),max(f)+abs(max(f)*0.2)])

title('f(t)=f1(t)*f2(t)');xlabel('t'

6.1.4

g(x,y)limrectxrecty

T=4;tao=2;w=2*pi/T;

a0=quadl(@singrect,-2,2)/T;%计算a0

N=10;an=zeros(1,N);bn=zeros(1,N);

fork=1:

N

30

an(k)=quadl(@rectcos,-2,2,[],[],k,w)*2/T;

%计算an.quadl中的[],[]表示以默认精度进行数值积分,k,w为

%rectcos函数中的后两个参数;

bn(k)=quadl(@rectsin,-2,2,[],[],k,w)*2/T;%计算bn;

end;

n=1:

1:

N;

figure

(1);

subplot(1,2,1);plot(n,an,'-o');gridon;

subplot(1,2,2);plot(n,bn,'-o');gridon;

t=-6:

0.01:

6;

x=pulstran(t,-8:

4:

8,'rectpuls',2);%生成周期矩形脉冲信号

figure

(2);subplot(6,2,1);

plot(t,x);

axis([-8,8,-1,2]);gridon;

%有限项级数逼近

A0=a0;

AN=sqrt(an.^2+bn.^2);

fiN=-atan(bn./an);

subplot(6,2,2);plot(t,A0/2);gridon;%直流项

wave=a0/2;

fork=1:

10

wave=wave+an(k)*cos(k*w*t+fiN(k));

subplot(6,2,k+2);plot(t,wave);gridon;

end

程序中“singrect”、“rectcos”和“rectsin”分别为所预先定义的函数文件。

其中singrect.m文件为:

functiony=singrect(t);

y=(abs(t)<=1);%定义单个矩形脉冲函数

rectcos.m文件为:

functiony=rectcos(t,n,w);

y=(abs(t)<=1).*cos(n*w*t);%定义了矩形脉冲与余弦函数的乘积

31

rectsin.m文件为:

functiony=rectsin(t,n,w);

y=(abs(t)<=1).*sin(n*w*t);%定义了矩形脉冲与正弦函数的乘积

运行结果:

傅里叶系数图形4:

12345678910

-0.5

0

0.5

1

12345678910

-1

-0.5

0

0.5

1

6.1.5

clf;

a=-0.5:

0.08:

0.5;

b=-1.99:

0.08:

1.99;

[a,b]=meshgrid(a,b);

d=ones(size(a));

c=a+i*b;%确定绘制曲面图的复平面区域

c=c.*c;

c=c+d;

c=1./c;

c=abs(c);%计算拉普拉斯变换的样值

mesh(a,b,c);%绘制曲面图

surf(a,b,c);

axis([-0.5,0.5,-2,2,0,15]);

title('单边正弦信号拉氏变换曲面图');

colormap(hsv);

6.2常用语句

Allnodes计算树结点

 appcoef提取一维小波变换低频系数

 appcoef2提取二维小波分解低频系数

 bestlevt计算完整最佳小波包树别可以实现一维、二维和N维DFT

 besttree计算最佳(优)树

 biorfilt双正交样条小波滤波器组

 biorwavf双正交样条小波滤波器Matlab

 centfrq求小波中心频率

 cgauwavfComplexGaussian小波

 cmorwavfcoiflets小波滤波器1.离散傅立叶变换的Matlab实现

 cwt一维连续小波变换

 dbauxDaubechies小波滤波器计算

 dbwavfDaubechies小波滤波器dbwavf(W)W='dbN'N=1,2,3,...,50别可以实现一维、二维和N维DFT

 ddencmp获取默认值阈值(软或硬)熵标准

 depo2ind将深度-位置结点形式转化成索引结点形式

 detcoef提取一维小波变换高频系数Matlab

 detcoef2提取二维小波分解高频系数

 disp显示文本或矩阵

 drawtree画小波包分解树(GUI)别可以实现一维、二维和N维DFT

 dtree构造DTREE类

 dwt单尺度一维离散小波变换

 dwt2单尺度二维离散小波变换别可以实现一维、二维和N维DFT

 dwtmode离散小波变换拓展模式

 dyaddown二元取样

dyadup二元插值1.离散傅立叶变换的Matlab实现

 entrupd更新小波包的熵值

 fbspwavfB样条小波

 gauswavfGaussian小波Matlab

 get获取对象属性值

 idwt单尺度一维离散小波逆变换

 idwt2单尺度二维离散小波逆变换

 ind2depo将索引结点形式转化成深度—位置结点形式

* intwave积分小波数

 isnode判断结点是否存在Matlab

 istnode判断结点是否是终结点并返回排列值

 iswt一维逆SWT(StationaryWaveletTransform)变换

 iswt2二维逆SWT变换Matlab

 leaves Determineterminalnodes

 mexihat墨西哥帽小波

 meyerMeyer小波别可以实现一维、二维和N维DFT

 meyerauxMeyer小波辅助函数

 morletMorlet小波

 nodease计算上溯结点

 nodedesc计算下溯结点(子结点)

 nodejoin重组结点

 nodepar寻找父结点别可以实现一维、二维和N维DFT

 nodesplt分割(分解)结点

 noleaves Determinenonterminalnodes

 ntnode Numberofterminalnodes函数fft、fft2和fftn分

 ntree ConstructorfortheclassNTREE

 orthfilt正交小波滤波器组

 plot绘制向量或矩阵的图形

 qmf镜像二次滤波器

 rbiowavf Reversebiorthogonalsplinewaveletfilters

 read读取二进制数据

 readtree读取小波包分解树

 scal2frq Scaletofrequency

 set Matlab

 shanwavf Shannonwavelets

 swt一维SWT(StationaryWaveletTransform)变换

 swt2二维SWT变换

 symaux Symletwaveletfiltercomputation.

 symwavfSymlets小波滤波器

 thselect信号消噪的阈值选择

 thodes References

 treedpth求树的深度

 treeord求树结构的叉数

 upcoef一维小波分解系数的直接重构

 upcoef2二维小波分解系数的直接重构

 upwlev单尺度一维小波分解的重构

 upwlev2单尺度二维小波分解的重构

 wavedec单尺度一维小波分解

 wavedec2多尺度二维小波分解Matlab

 wavedemo小波工具箱函数demo

 wavefun小波函数和尺度函数

 wavefun2二维小波函数和尺度函数别可以实现一维、二维和N维DFT

 wavemenu小波工具箱函数menu图形界面调用函数

 wavemngr小波管理函数

 waverec多尺度一维小波重构1.离散傅立叶变换的Matlab实现

 waverec2多尺度二维小波重构

 wbmpen Penalizedthresholdforwavelet1-Dor2-Dde-noising

 wcodemat对矩阵进行量化编码1.离散傅立叶变换的Matlab实现

 wdcbm Thresholdsforwavelet1-DusingBirge-Massartstrategy

 wdcbm2 Thresholdsforwavelet2-DusingBirge-Massartstrategy

 wden用小波进行一维信号的消噪或压缩

 wdencmp De-noisingorcompressionusingwavelets

 wentro

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 成人教育 > 远程网络教育

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1