信号与系统实验教程(只有答案) 下载本文

信 号 与 系 统

实 验 教 程(只有答案)

(实验报告)

这么玩!

目录

实验一 信号与系统的时域分析 ..................................................................................................... 2

三、实验内容及步骤 ............................................................................................................... 2 实验二 连续时间信号的频域分析 ............................................................................................. 14

三、实验内容及步骤 ............................................................................................................. 14 实验三 连续时间LTI系统的频域分析 .................................................................................... 35

三、实验内容及步骤 ............................................................................................................. 35 实验四 通信系统仿真 ................................................................................................................. 41

三、实验内容及步骤 ............................................................................................................. 41 实验五 连续时间LTI系统的复频域分析 .................................................................................. 51

三、实验内容及步骤 ............................................................................................................. 51

实验一 信号与系统的时域分析

三、实验内容及步骤

实验前,必须首先阅读本实验原理,读懂所给出的全部范例程序。实验开始时,先在计算机上运行这些范例程序,观察所得到的信号的波形图。并结合范例程序应该完成的工作,进一步分析程序中各个语句的作用,从而真正理解这些程序。

实验前,一定要针对下面的实验项目做好相应的实验准备工作,包括事先编写好相应的实验程序等事项。

Q1-1:修改程序Program1_1,将dt改为0.2,再执行该程序,保存图形,看看所得图形

的效果如何?

dt = 0.01时的信号波形 dt = 0.2时的信号波形

这两幅图形有什么区别,哪一幅图形看起来与实际信号波形更像? 答:

Q1-2:修改程序Program1_1,并以Q1_2为文件名存盘,产生实指数信号x(t)=e-0.5t。 要

求在图形中加上网格线,并使用函数axis()控制图形的时间范围在0~2秒之间。然后执行该程序,保存所的图形。

修改Program1_1后得到的程序Q1_2如下: 信号x(t)=e-0.5t的波形图

clear, % Clear all variables

close all, % Close all figure windows dt = 0.2; % Specify the step of time variable t = -2:dt:2; % Specify the interval of time x = exp(-0.5*t); % Generate the signal plot(t,x) grid on;

axis ([0 2 0 1 ]) title('Sinusoidal signal x(t)')

xlabel('Time t (sec)')

Q1-3:修改程序Program1_1,并以Q1_3为文件名存盘,使之能够仿真从键盘上任意输入

的一个连续时间信号,并利用该程序仿真信号x(t)=e-2t。

修改Program1_1后得到的程序Q1_3如下: 信号x(t)=e-2t的波形图

clear, close all, dt = 0.2; t = -2:dt:2; x=input('Input x(t):');

plot(t,x) grid on;

axis ([0 2 -1 1 ]) title('Sinusoidal signal x(t)') xlabel('Time t (sec)')

Q1-4:将实验原理中所给的单位冲激信号和单位阶跃信号的函数文件在MATLAB文件编辑

器中编写好,并分别以文件名delta和u存入work文件夹中以便于使用。

抄写函数文件delta如下: 抄写函数文件u如下:

function y = delta(t) % Unit step function dt = 0.01; function y = u(t)

y = (u(t)-u(t-dt))/dt; y = (t>=0); % y = 1 for t > 0, else y = 0

Q1-5:修改程序Program1_4,并以Q1_5为文件名存盘,利用axis()函数,将图形窗口的

横坐标范围改为-2≤n≤5,纵坐标范围改为-1.5≤ x ≤1.5。

修改Program1_4后得到的程序Q1_5如下: 信号的波形图

clear, close all, n = -5:5;

x = [zeros(1,4), 0.1, 1.1, -1.2, 0, 1.3, zeros(1,2)]; stem (n,x,'.') grid on,

axis([-2 5 -1.5 1.5]);

title ('A discrete-time sequence x[n]') xlabel ('Time index n')

Q1-6:仿照前面的示例程序的编写方法,编写一个MATLAB程序,以Q1_6为文件名存盘,

使之能够在同一个图形窗口中的两个子图中分别绘制信号x[n]=0.5|n| 和x(t)=cos(2πt)[u(t)-u(t-3)]。要求选择的时间窗能够表现出信号的主要部分(或特征)。

编写的程序Q1_6如下: 信号x[n]=0.5|n| 的波形图和信号x(t)=cos(2πt)[u(t)-u(t-3)]的波形

clear,close all, t = -1:0.01:4;

xt = cos(2*pi*t).*(u(t)-u(t-3)); n=-5:5;

xn=(0.5).^abs(n); subplot(211)

plot(t,xt) grid on,

title ('Original signal x(t)') subplot(212)

stem(n,xn,'.') grid on,

title ('Original signal x(n)') xlabel ('Time t (sec)')

Q1-7:根据示例程序的编程方法,编写一个MATLAB程序,以Q1_7为文件名存盘,由给

定信号x(t) = e-0.5tu(t) 求信号y(t) = x(1.5t+3),并绘制出x(t) 和y(t)的图形。

编写的程序Q1_7如下:

编写产生x(t)的函数文件x.m function y=x(t) y=exp(-0.5*t).*u(t);

clear,close all, t = -3:0.01:4;

xt = x(t); % Generate the original signal x(t) yt=x(1.5*t+3); subplot(211)

plot(t,xt) % Plot x(t) grid on,

title ('Original signal x(t)') subplot(212)

plot(t,yt) % Plot x(t) grid on,

title ('Original signal y(t)') xlabel ('Time t (sec)')