信 号 与 系 统
实 验 教 程(只有答案)
(实验报告)
这么玩!
目录
实验一 信号与系统的时域分析 ..................................................................................................... 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)')
信号x(t)的波形图 信号y(t) = x(1.5t+3) 的波形图
Q1-8:给定一个离散时间信号x[n] = u[n] – u[n-8],仿照示例程序Program1_5,编写程序
Q1_8,产生x[n]的左移序列x1[n] = x[n+6]和右移序列x2[n] = x[n-6],并在同一个图形窗口的三个子图中分别绘制这三个序列的图形。
编写的程序Q1_8如下:
编写产生x(t)的函数文件xx.m
function y=xx(n) y=u(n)-u(n-8); clear,close all, n = -10:15;
x =xx(n); % Generate the original signal x(n)
x1 = xx(n+6); % Shift x(t) to the left by 2 second to get x1(n+6) x2 =xx(n-6); % Shift x(t) to the right by 2 second to get x2(n-6) subplot(311)
stem(n,x,'.') % Plot x(t) grid on,
title ('Original signal x(n)') subplot (312)
stem (n,x1,'.') % Plot x1(t) grid on,
title ('Left shifted version of x(n)') subplot (313)
stem (n,x2,'.') % Plot x2(t) grid on,
title ('Right shifted version of x(n)') xlabel ('Time t (sec)')
信号波形图
Q1-9:编写程序Q1_9,使之能够接受以键盘方式输入的定义在不同时间段的两个不同连
续时间信号并完成卷积运算,分别绘制这两个信号及其卷积的结果的图形,图形按照2?2分割成四个子图。
编写的程序Q1_9如下:
clear;close all; dt = 0.01;
t0=input('Input first signal t0:');t1=input('Input first first signal t1:'); tx = t0:dt:t1;
x = input('Input first signal variable(tx) :');
t2=input('Input second signal t0:');t3=input('Input second signal t1:'); th=t2:dt:t3;
h = input('Input second signal variable(th) :')
y = dt*conv(x,h); % Compute the convolution of x(t) and h(t) subplot(221)
plot(tx,x), grid on, title('Signal x(t)') xlabel('Time t sec') subplot(222)
plot(th,h), grid on, title('Signal h(t)') xlabel('Time t sec') subplot(313) plot(y), grid on,
convolution of x(t) and xlabel('Time t sec')信号(t)*h(t)的波形图
title('The h(t)')
x (t)、h(t)和x
Q1-10:给定两个离散时间序列
x[n] = 0.5n{u[n]-u[n-8]} h[n] = u[n]-u[n-8]
编写程序Q1_10,计算它们的卷积,并分别绘制x[n]、h[n]和它们的卷积y[n]的图形。
编写的程序Q1_10如下:
n=0:10;
x = (0.5).^n.*(u(n)-u(n-8)); h = u(n)-u(n-8);
y =conv(x,h); % Compute the convolution of x(t) and h(t) subplot(221)
stem(n,x,'.'), grid on, title('Signal x(n)') subplot(222)
stem(n,h,'.'), grid on, title('Signal h(n)') subplot(212)
stem(y), grid on, title('The convolution of x(n) and h(n)'), xlabel('Time t sec');
信号x[n]、h[n]和y[n]的波形图
Q1-11已知一个序列为
x[n]???n,?0,0?n?4otherwise
编写MATLAB程序Q1_11,能够将x[n]以N = 8为周期进行周期延拓得到一个周期为N =8的周期序列y[n],并分别绘制x[n]和y[n]图形。
编写的程序Q1_11如下:
U4.m
function y=u4(n) y=n.*(u(n)-u(n-5));
Q1——11.m clear, close all; n =-16:32 x=u4(n); T = 8; y = 0; for k = -2:4;
y =y+u4(n-k*T); end
subplot(211) stem(n,x,'.'); grid on,
title ('Original signal x(n)') xlabel('Time t sec') subplot(212) stem(n,y);
title ('period signal x(n)') xlabel('Time t sec')
grid on,信号x[n]的波形图 信号y[n]的波形图
Q1-12 仿照范例程序Program1_7,编写程序Q1_12,计算并绘制由如下微分方程表示的系
统在输入信号为x(t) = (e-2t - e-3t)u(t)时的零状态响应和你手工计算得到的系统零状态响应曲线。
d2y(t)dy(t)?3?2y(t)?8x(t) 2dtdt手工计算得到的系统零状态响应的数学表达式是:
编写的程序Q1_12如下: 用MATLAB绘制的手工计算的系统响应
clear, close all;
num = input('Type in the right coefficient vector of differential equation:'); den = input('Type in the left coefficient vector of differential equation:'); t = 0:0.01:8;
x = input('Type in the expression of the input signal x(t):'); y=lsim(num,den,x,t);plot(t,y)
执行程序Q1_12得到的系统响应
Q1-13:利用程序Q1_9,验证卷积的相关性质。
(a) 验证性质:x(t)*?(t)?x(t)
选择信号x(t)的数学表达式为:sin(t)
x(t)、δ(t)和x(t)*δ(t)的波形
验证所得结论是:
(b) 验证性质:x(t)*?(t?t0)?x(t?t0)
选择信号x(t)的数学表达式为:sin(t) t0=2
x(t)、δ(t-t0) 和x(t)*?(t?t0)的波形
验证所得结论是:
(c) 验证性质:x(t?t1)*?(t?t2)?x(t?t2)*?(t?t1)?x(t?t1?t2)
选择信号x(t)的数学表达式为: sin(t) 选择的t1 = 2 3 秒。
秒,t2 =
执行程序Q1_9,输入信号x(t-t1) 和δ(t-t2) 的数学表达式,得到的信号及其卷积的波形图如
下:
执行程序Q1_9,输入信号x(t-t2) 和δ(t-t1) 的数学表达式,得到的信号及其卷积的波形图如
下:
验证所得结论是:
(d) 验证性质:x(t)*u(t)??t??x(?)d?
选择信号x(t)(建议选择一个时限信号)的数学表达式为:u(t)-u(t-3)
?t??x(?)d?的数学表达式为:
t手工绘制的???x(?)d?波形如下:
执行程序Q1_9,输入信号x(t) 和u(t) 的数学表达式,得到的信号及其卷积的波形图如下:
验证所得结论是:
(e) 验证性质:x(t)*h(t?t0)?x(t?t0)*h(t)
选择信号x(t)的数学表达式为: sin(t) 选择信号h(t)的数学表达式为:sin(t) 选择的t0=:1 执行程序
下:
Q1_9,输入信号x(t) 和h(t-t0) 的数学表达式,得到的信号及其卷积的波形图如
执行程序
下:
Q1_9,输入信号x(t-t0) 和h(t) 的数学表达式,得到的信号及其卷积的波形图如
验证所得结论
Q1-14:做如下总结:
是:
1、信号与系统分析,就是基于信号的分解,在时域中,信号主要分解成:
2、写出卷积的运算步骤,并谈谈你对卷积的一些基本性质的理解。利用MATLAB计算卷积的函数是什么?如何使用?
3、在时域中,描述一个连续时间LTI系统的数学模型有:
4、MATLAB是如何表示一个由微分方程描述的连续时间LTI系统的?求解连续时间LTI系统的单位冲激响应、单位阶跃响应以及系统在某一个输入信号作用下的零状态响应的MATLAB函数有哪些?
四、实验报告要求
1、按要求完整书写你所编写的全部MATLAB程序
2、详细记录实验过程中的有关信号波形图(存于自带的U盘中),图形要有明确的标题。全部的MATLAB图形应该用打印机打印,然后贴在本实验报告中的相应位置,禁止复印件。
3、实事求是地回答相关问题,严禁抄袭。
本实验完成时间: 年 月 日
实验二 连续时间信号的频域分析
三、实验内容及步骤
实验前,必须首先阅读本实验原理,读懂所给出的全部范例程序。实验开始时,先在计算机上运行这些范例程序,观察所得到的信号的波形图。并结合范例程序应该完成的工作,进一步分析程序中各个语句的作用,从而真正理解这些程序。 实验前,一定要针对下面的实验项目做好相应的实验准备工作,包括事先编写好相应的实验程序等事项。
Q2-1 编写程序Q2_1,绘制下面的信号的波形图:
?1n?11?0t) x(t)?cos?(0t)?cos3?(0t)?cos5?(0t)????sin()cosn(235n?1n其中,?0 = 0.5π,要求将一个图形窗口分割成四个子图,分别绘制cos(?0t)、cos(3?0t)、cos(5?0t)
和x(t) 的波形图,给图形加title,网格线和x坐标标签,并且程序能够接受从键盘输入的和式中的项数。
抄写程序Q2_1如下:
clear,close all
T = 2; dt = 0.00001; t = -2*pi:dt:2*pi; w0=0.5*pi; x1 = cos(w0*t);
x3=(-1/3)*cos(3*w0*t); x5=(1/5)*cos(5*w0*t);
N = input('Type in the number of the harmonic components N = :'); y=0;
for q = 1:N; % Synthesiz the periodic signal y(t) from the finite Fourier series y = y+(1/q).*sin((q*pi)/2).*cos(q*w0*t); end;
subplot(221),
plot(t,x1), title('The original signal cos(w0t)'); grid on; axis([-2*pi,2*pi,-1,1]), xlabel('Time t') subplot(223),
plot(t,x5), title('The original signal (1/5)cos(5w0t)'); grid on; axis([-2*pi,2*pi,-1,1]), xlabel('Time t') subplot(222)
plot(t,x3), title('The original signal (-1/3)cos(3w0t)'); grid on; axis([-2*pi,2*pi,-1,1]), xlabel('Time t') subplot(224)
plot(t,y), title('The synthesis signal of x(t)'); grid on; axis([-10,10,-1,1]), xlabel('Index N')
执行程序Q2_1所得到的图形如下:N=10
Q2-2 给程序Program2_1增加适当的语句,并以Q2_2存盘,使之能够计算例题2-1中的
周期方波信号的傅里叶级数的系数,并绘制出信号的幅度谱和相位谱的谱线图。
通过增加适当的语句修改Program2_1而成的程序Q2_2抄写如下:
clear,close all
T = 2; dt = 0.00001; t = -2:dt:2; x1 = u(t)-u(t-1-dt); x = 0;
for m = -1:1
x = x + u(t-m*T) - u(t-1-m*T-dt); % Periodically extend x1(t) to form a periodic signal end
w0 = 2*pi/T;
N = input('Type in the number of the harmonic components N = :'); L = 2*N+1; for k = -N:1:N;
ak(N+1+k) = (1/T)*x1*exp(-j*k*w0*t')*dt; end
phi = angle(ak); y=0;
for q = 1:L; % Synthesiz the periodic signal y(t) from the finite Fourier series y = y+ak(q)*exp(j*(-(L-1)/2+q-1)*2*pi*t/T); end;
subplot(221)
plot(t,x), title('The original signal x(t)'), axis([-2,2,-0.2,1.2]),grid on; subplot(222)
k=-N:N; stem(ak), title('The ak of x(t)'), axis([-1,1,-0.4,0.4]),grid on; subplot(223)
k=-N:N; stem(k,abs(ak),'k.'), title('The amplitude |ak| of x(t)'), axis([-N,N,-0.1,0.6]),grid on;
subplot(224)
stem(k,phi,'r.'), title('The phase phi(k) of x(t)'), axis([-N,N,-2,2]), xlabel('Index k'),grid on;
执行程序Q2_2得到的图形
Q2-3 反复执行程序Program2_2,每次执行该程序时,输入不同的N值,并观察所合成的
周期方波信号。通过观察,你了解的吉伯斯现象的特点是:
N=5 N=10
N=20 N=40
1、周期信号的傅里叶级数与GIBBS现象
给定如下两个周期信号:
x1(t)1x2(t)1t?2?1
t
12?2?0.20.22Q2-4 分别手工计算x1(t) 和x2(t) 的傅里叶级数的系数。 信号x1(t) 在其主周期内的数学表达式为:
t+1 -1 计算x1(t) 的傅里叶级数的系数的计算过程如下: k = -10:10;ak=0; ak = 1/2.* (sin((k)*pi/2)./((k)*pi/2)) N=-10:10; stem(k,ak); 通过计算得到的x1(t)的傅里叶级数的系数的数学表达式是:1/2.* (sin((k)*pi/2)./((k)*pi/2)) 信号x2(t) 在其主周期内的数学表达式为: 1 |t|<0.2 0 0.2<|t|<1 计算x2(t) 的傅里叶级数的系数的计算过程如下: k = -10:10;ak=0; ak =sin(k*pi*0.2)./(k*pi) N=-10:10; stem(k,ak); 通过计算得到的x1(t)的傅里叶级数的系数的数学表达式是:sin(k*pi*0.2)./(k*pi) 用MATLAB帮助你计算出你手工计算的傅里叶级数的系数ak从-10到10共21个系数。 从命令窗口上抄写x1(t)的21个系数如下: ak = Columns 1 through 8 0.0000 0.0354 -0.0000 -0.0455 0.0000 0.0637 -0.0000 -0.1061 Columns 9 through 16 0.0000 0.3183 NaN 0.3183 0.0000 -0.1061 -0.0000 0.0637 Columns 17 through 21 0.0000 -0.0455 -0.0000 0.0354 0.0000 从命令窗口上抄写x2(t)的21个系数如下: Columns 1 through 8 -0.0000 -0.0208 -0.0378 -0.0432 -0.0312 0.0000 0.0468 0.1009 Columns 9 through 16 0.1514 0.1871 NaN 0.1871 0.1514 0.1009 0.0468 0.0000 Columns 17 through 21 -0.0312 -0.0432 -0.0378 -0.0208 -0.0000 Q2-5 仿照程序Program2_1,编写程序Q2_5,以计算x1(t)的傅里叶级数的系数。 程序Q2_5如下: 编写函数x1.m function y=x1(t) y1=t+1;y2=1-t; y=y1.*(-1 Q2_5.m clear,close all T = 2; dt = 0.00001; t = -8:dt:8; x11 = x1(t); x = 0; for m = -8:8 x = x + x1(t-m*T); % Periodically extend x1(t) to form a periodic signal end w0 = 2*pi/T; N = 10; L = 2*N+1; for k = -N:1:N; ak(N+1+k) = (1/T)*x11*exp(-j*k*w0*t')*dt; end phi = angle(ak); y=0; for q = 1:L; % Synthesiz the periodic signal y(t) from the finite Fourier series y = y+ak(q)*exp(j*(-(L-1)/2+q-1)*2*pi*t/T); end; subplot(211), plot(t,x), title('The original signal x(t)'), axis([-8,8,-0.2,1.2]),grid on, subplot(212) k=-N:N; stem(k,ak,'k.'), title('The factor ak of x(t)'), axis([-N,N,-0.1,0.6]),grid on, 执行程序Q2_5所得到的x1(t)的傅里叶级数的ak从-10到10共21个系数如下: Columns 1 through 5 0.0000 + 0.0000i 0.0025 + 0.0000i 0.0000 + 0.0000i 0.0041 - 0.0000i 0.0000 - 0.0000i Columns 6 through 10 0.0081 + 0.0000i -0.0000 - 0.0000i 0.0225 - 0.0000i -0.0000 - 0.0000i 0.2026 + 0.0000i Columns 11 through 15 0.5000 0.2026 - 0.0000i -0.0000 + 0.0000i 0.0225 + 0.0000i -0.0000 + 0.0000i Columns 16 through 20 0.0081 - 0.0000i 0.0000 + 0.0000i 0.0041 + 0.0000i 0.0000 - 0.0000i 0.0025 - 0.0000i Column 21 0.0000 - 0.0000i 与你手工计算的ak相比较,是否相同,如有不同,是何原因造成的? 答: Q2-6 仿照程序Program2_1,编写程序Q2_6,以计算x2(t) 的傅里叶级数的系数(不绘图)。 程序Q2_6如下: 编写函数x2.m function y=x2(t) y1=1;y2=1; y=y1.*(-0.2 Q2_6.m clear,close all T = 2; dt = 0.00001; t = -8:dt:8; x11 = x2(t); x = 0; for m = -8:8 x = x + x2(t-m*T); % Periodically extend x1(t) to form a periodic signal end w0 = 2*pi/T; N = 10; L = 2*N+1; for k = -N:1:N; ak(N+1+k) = (1/T)*x11*exp(-j*k*w0*t')*dt; end phi = angle(ak); y=0; for q = 1:L; % Synthesiz the periodic signal y(t) from the finite Fourier series y = y+ak(q)*exp(j*(-(L-1)/2+q-1)*2*pi*t/T); end; subplot(211), plot(t,x), title('The original signal x(t)'), axis([-8,8,-0.2,1.2]),grid on, subplot(212) k=-N:N; stem(k,ak,'k.'), title('The factor ak of x(t)'), axis([-N,N,-0.1,0.6]),grid on, 执行程序Q2_6所得到的x2(t)的傅里叶级数的ak从-10到10共21个系数如下: Columns 1 through 5 0.0000 - 0.0000i -0.0208 + 0.0000i -0.0378 - 0.0000i -0.0432 + 0.0000i -0.0312 + 0.0000i Columns 6 through 10 -0.0000 + 0.0000i 0.0468 + 0.0000i 0.1009 + 0.0000i 0.1514 - 0.0000i 0.1871 + 0.0000i Columns 11 through 15 0.2000 0.1871 - 0.0000i 0.1514 + 0.0000i 0.1009 - 0.0000i 0.0468 - 0.0000i Columns 16 through 20 -0.0000 - 0.0000i -0.0312 - 0.0000i -0.0432 - 0.0000i -0.0378 + 0.0000i -0.0208 - 0.0000i Column 21 0.0000 + 0.0000i 与你手工计算的ak相比较,是否相同,如有不同,是何原因造成的? 答: Q2-7 仿照程序Program2_2,编写程序Q2_7,计算并绘制出原始信号x1(t) 的波形图,用 有限项级数合成的y1(t) 的波形图,以及x1(t) 的幅度频谱和相位频谱的谱线图。 编写程序Q2_7如下: clear,close all T = 2; dt = 0.00001; t = -8:dt:8; x11 = x1(t); x = 0; for m = -8:8 x = x + x1(t-m*T); % Periodically extend x1(t) to form a periodic signal end w0 = 2*pi/T; N = 5; L = 2*N+1; for k = -N:1:N; ak(N+1+k) = (1/T)*x11*exp(-j*k*w0*t')*dt; end phi = angle(ak); y=0; for q = 1:L; % Synthesiz the periodic signal y(t) from the finite Fourier series y = y+ak(q)*exp(j*(-(L-1)/2+q-1)*2*pi*t/T); end; phi = angle(ak); y=0; for q = 1:L; % Synthesiz the periodic signal y(t) from the finite Fourier series y = y+ak(q)*exp(j*(-(L-1)/2+q-1)*2*pi*t/T); end; subplot(221), plot(t,x), title('The original signal x(t)'), axis([-8,8,-0.2,1.2]), subplot(223), plot(t,y), title('The synthesis signal y(t)'), axis([-8,8,-0.2,1.2]), xlabel('Time t'), subplot(222) k=-N:N; stem(k,abs(ak),'k.'), title('The amplitude |ak| of x(t)'), axis([-N,N,-0.1,0.6]) subplot(224) stem(k,phi,'r.'), title('The phase phi(k) of x(t)'), axis([-N,N,-2,2]), xlabel('Index k') 执行程序Q2_7,输入N = 5所得到的图形如下: 反复执行程序Q2_7,输入不同的N值,观察合成的信号波形中,是否会产生Gibbs现象? 为什么?; 答: 2. 连续时间非周期信号的傅里叶变换 给定两个时限信号: ?2?t??1?t?2,??x1(t)??1,?1?t?1 x2(t)?cos(t)[u(t?1)?u(t?1)] 2??t?2,1?t?2?Q2-8 利用单位阶跃信号u(t),将x1(t) 表示成一个数学闭式表达式,并手工绘制x1(t) 和x2(t) 的时域波形图。 信号x1(t) 的闭式数学表达式为: x1(t) = :y1=t+2;y2=1;y3=-t+2;y=y1.*(-2<=t&t<-1)+y2.*(-1<=t&t<1)+y3.*(1<=t&t<2); 手工绘制的x1(t)的时域波形图 手工绘制的x2(t)的时域波形图 function y=x28(t) y1=t+2; y2=1; y3=-t+2; y=y1.*(-2<=t&t<-1)+y2.*(-1<=t&t<1)+y3.*(1<=t&t<2); clear,close all T = 2; dt = 0.00001; t = -5:dt:5; x1 = x28(t).*(u(t+2)-u(t-2)); x2=cos(pi/2*t).*(u(t+1)-u(t-1)); subplot(211), plot(t,x1,'.'),title('The original signal x1(t)'), axis([-5,5,-1,1]), xlabel('Time t') subplot(212), plot(t,x2,'.'),title('The original signal x2(t)'),axis([-5,5,-1,1]), xlabel('Time t') Q2-9手工计算x1(t) 和x2(t) 的傅里叶变换(如能够用傅里叶变换的性质计算最好),并手工 绘制出它们的幅度谱和相位谱; 计算x1(t) 的傅里叶变换的过程: 计算得到的x1(t) 的傅里叶变换的数学表达式为: clear,close all T = 0.01; dw = 0.1; %时间和频率变化的步长 t = -10:T:10; w = -4*pi:dw:4*pi; xx=x28(t); X=x28(t)*exp(-j*t'*w)*T; %傅里叶变换 X1=abs(X); %计算幅度谱 phai=angle(X); %计算相位谱 subplot(221); plot(t,xx),title('The original signal x1(t)'),axis([-10,10,-1,2]),xlabel('Time t'),grid on; subplot(222) plot(w,X),title('The Fourier Transform of x1(t) '),axis([-4*pi,4*pi,-1,3.5]),xlabel('f(jw)'),grid on; subplot(223); plot(w,X1), title('The amplitude of f(jw) )'), axis([-4*pi,4*pi,-1,3.5]),xlabel('f(jw)'),grid on; subplot(224); plot(w,phai),title('The phase of f(jw)'),axis([-pi,pi,-4,4]),xlabel('f(jw)'),grid on; 计算x2(t) 的傅里叶变换的过程: clear,close all T = 0.01; dw = 0.1; %时间和频率变化的步长 t = -10:T:10; w = -4*pi:dw:4*pi; xx=cos(pi/2*t).*(u(t+1)-u(t-1)); X=xx*exp(-j*t'*w)*T; %傅里叶变换 X1=abs(X); %计算幅度谱 phai=angle(X); %计算相位谱 subplot(221); plot(t,xx),title('The original signal x1(t)'),axis([-10,10,-1,2]),xlabel('Time t'),grid on; subplot(222) plot(w,X),title('The Fourier Transform of x1(t) '),axis([-4*pi,4*pi,-1,3.5]),xlabel('f(jw)'),grid on; subplot(223); plot(w,X1), title('The amplitude of f(jw) )'), axis([-4*pi,4*pi,-1,3.5]),xlabel('f(jw)'),grid on; subplot(224); plot(w,phai),title('The phase of f(jw)'),axis([-pi,pi,-4,4]),xlabel('f(jw)'),grid on; 计算得到的x2(t) 的傅里叶变换的数学表达式为: 手工绘制的x1(t)的幅度频谱图 手工绘制的x2(t)的幅度频谱图 Q2-10 编写MATLAB程序Q2_10,能够接受从键盘输入的时域信号表达式,计算并绘制出 信号的时域波形、幅度谱。 程序Q2_10抄写如下 clear,close all T = 0.01; dw = 0.1; %时间和频率变化的步长 t = -10:T:10; w = -4*pi:dw:4*pi; xx= input('Input the signal (t) :'); X=xx*exp(-j*t'*w)*T; %傅里叶变换 X1=abs(X); %计算幅度谱 phai=angle(X); %计算相位谱 subplot(211); plot(t,xx),title('The original signal x(t)'),axis([-10,10,-1,2]),xlabel('Time t'),grid on; subplot(223) plot(w,X1),title('The amplitude of f(jw) '),xlabel('f(jw)'),grid on; subplot(224); plot(w,phai),title('The phase of f(jw)'),axis([-pi,pi,-4,4]),xlabel('f(jw)'),grid on; 执行程序Q2_10,输入信号 下: X1(t)=exp(-t) x1(t)的数学表达式,得到的信号时域波形、幅度谱和相位谱如 执行程序Q2_10,输入信号 下: x2(t)的数学表达式,得到的信号时域波形、幅度谱和相位谱如 Q2-11 修改程序Q2_10,并以程 序受 Q2_11为文件名存盘,要求能够接从键盘输入的时域信号表达式,计 算其傅里叶变换,并分别绘制其傅里叶变换的实部、虚部、幅度频谱和相位频谱的图形。 编写的程序Q2_11如下: clear,close all T = 0.01; dw = 0.1; %时间和频率变化的步长 t = -10:T:10; w = -4*pi:dw:4*pi; xx= input('Input the signal (t) :'); X=xx*exp(-j*t'*w)*T; %傅里叶变换 X1=abs(X); %计算幅度谱 phai=angle(X); %计算相位谱 realx=real(X); imagx=imag(X); subplot(311); plot(t,xx),title('The original signal x(t)'),axis([-10,10,-1,2]),xlabel('Time t'),grid on; subplot(323) plot(w,realx),title('The real of f(jw) '),xlabel('f(jw)'),grid on; subplot(324); plot(w,imagx),title('The imag of f(jw)'),axis([-pi,pi,-4,4]),xlabel('f(jw)'),grid on; subplot(325) plot(w,X1),title('The amplitude of f(jw) '),xlabel('f(jw)'),grid on; subplot(326); plot(w,phai),title('The phase of f(jw)'),axis([-pi,pi,-4,4]),xlabel('f(jw)'),grid on; 选定适当的信号,该信号的时域表达式为:u(t)-u(t-3) 执行你编写好的MATLAB程序Q2_11,输入你选定的信号的数学表达式,绘制出的该信号 的傅里叶变换的图形如下: Q2-12 修改程序Q2_11,并以Q2_12存盘,要求程序能接受从键盘输入信号的时域表达式, 计算并绘制信号的时域波形、信号的幅度频谱和相位频谱图。 编写的程序Q2_12如下: clear,close all T = 0.01; dw = 0.1; %时间和频率变化的步长 t = -10:T:10; w = -4*pi:dw:4*pi; xx= input('Input the signal (t) :'); X=xx*exp(-j*t'*w)*T; %傅里叶变换 X1=abs(X); %计算幅度谱 phai=angle(X); %计算相位谱 subplot(211); plot(t,xx),title('The original signal x(t)'),axis([-10,10,-1,2]),xlabel('Time t'),grid on; subplot(223) plot(w,X1),title('The amplitude of f(jw) '),xlabel('f(jw)'),grid on; subplot(224); plot(w,phai),title('The phase of f(jw)'),axis([-pi,pi,-4,4]),xlabel('f(jw)'),grid on; Q2-13选择一个时限信号,执行程序Q2_12以验证---对偶性质。 选定适当的信号x1(t),该信号的时域表达式为:x1(t) =u(t+1/2)-u(t-1/2) 执行程序Q2_12,绘制出的该信号的傅里叶变换的图形如下: 选定适当的信号x2(t),要求其数学表达式与x1(t) 的傅里叶变换的数学表达式相同,该信号 的时域表达式为:x2(t) = 再一次执行程序Q2_12,绘制出的信号x2(t)的傅里叶变换的图形如下: 比较这两次执行的结果,简述对偶性质,并说明验证结论。 答: Q2-14选择一个时限信号,执行程序Q2_12以验证性质---时间尺度变换。 选定适当的信号x3(t),该信号的时域表达式为:x3(t) =: exp(-t) 执行程序Q2_12,绘制出的该信号的傅里叶变换的图形如下: 选定信号x4(t) = x3(2t),该信号的时域表达式为:x4(t) =: exp(-2t) ,再一次执行程序Q2_12,绘制出的信号x4(t)的傅里叶变换的图形如下: 比较这两次执行的结果,简述时间尺度变换性质,并说明验证结论。 答: Q2-15选择一个时限信号,执行程序Q2_12以验证性质---时移。 选定适当的信号 x1(t),该信号的时域表达式为:x1(t) = : exp(-t).*u(t) ,执行程序 Q2_12,绘制出的该信号的傅里叶变换的图形如下: 选定信号x2(t) = x1(t-1),该信号的时域表达式为:x2(t) = : exp(-t+3).*u(t-3) ,再一次 执行程序Q2_12,绘制出的信号x2(t) 的傅里叶变换的图形如下: 比较这两次执行的结果,简述时移性质,并说明验证结论。 答: Q2-16选择一个合适的信号,执行程序Q2_12以验证性质---频移(Multiplication by ej?0t)。 选定适当的信号x1(t),该信号的时域表达式为:x1(t) = : exp(-t).*u(t) ,执行程序Q2_12, 绘制出的该信号的傅里叶变换的图形如下: 选定信号x2(t) = ej?0tx1(t),其中?0 = 2 ,再一次执行程序Q2_12,绘制出的信号x2(t) 的傅里叶变换的图形如下: 比较这两次执行的结果,简述频移(Multiplication by ej?0t)性质,并说明验证结论。 答: Q2-17:回答如下问题: 1、从信号分解的角度,谈谈你对周期信号的傅里叶级数的理解。 答: 2、从信号分解的角度,谈谈你对傅里叶变换及其物理意义的理解,谈谈你对信号频谱概念的理解。 四、实验报告要求 1、按要求完整书写你所编写的全部MATLAB程序 2、详细记录实验过程中的有关信号波形图(存于自带的U盘中),图形要有明确的标题。全部的MATLAB图形应该用打印机打印,然后贴在本实验报告中的相应位置,禁止复印件。 3、实事求是地回答相关问题,严禁抄袭。 本实验完成时间: 年 月 日实验三 连续时间LTI系统的频域分析 三、实验内容及步骤 实验前,必须首先阅读本实验原理,了解所给的MATLAB相关函数,读懂所给出的全部范例程序。实验开始时,先在计算机上运行这些范例程序,观察所得到的信号的波形图。并结合范例程序所完成的工作,进一步分析程序中各个语句的作用,从而真正理解这些程序。 实验前,一定要针对下面的实验项目做好相应的实验准备工作,包括事先编写好相应的实验程序等事项。 给定三个连续时间LTI系统,它们的微分方程分别为 d2y(t)dy(t)dx(t)?1?25y(t)?系统1: Eq.3.1 dtdtdt2系统2: 系统3: dy(t)dx(t)?y(t)??x(t) Eq.3.2 dtdtd6y(t)d5y(t)d4y(t)d3y(t)d2y(t)dy(t)?10?48?148?306?401?262y(t)?262x(t)dtdt6dt5dt4dt3dt2 Q3-1 修改程序 Eq.3.3 Program3_1,并以Q3_1存盘,使之能够能够接受键盘方式输入的微分方 程系数向量。并利用该程序计算并绘制由微分方程Eq.3.1、Eq.3.2和Eq.3.3描述的系统的幅 度响应特性、相位响应特性、频率响应的实部和频率响应的虚部曲线图。 抄写程序Q3_1如下: 执行程序Q3_1,绘制的系统1的频率响应特性曲线如下: 从系统1的幅度频率响应曲线看,系统1是低通、高通、全通、带通还是带阻滤波器? 答: 执行程序Q3_1,绘制的系统2的频率响应特性曲线如下: 从系统2的幅度频率响应曲线看,系统2低通、高通、全通、带通还是带阻滤波器? 答: 执行程序Q3_1,绘制的系统3的频率响应特性曲线如下: 从系统3的幅度频率响应曲线看,系统3是低通、高通、全通、带通还是带阻滤波器? 答: 这三个系统的幅度频率响应、相位频率相应、频率响应的实部以及频率响应的虚部分别具 有何种对称关系?请根据傅里叶变换的性质说明为什么会具有这些对称关系? 答: Q3-2 编写程序 Q3_2,使之能够能够接受键盘方式输入的输入信号x(t)的数学表达式,系 统微分方程的系数向量,计算输入信号的幅度频谱,系统的幅度频率响应,系统输出信号y(t)的幅度频谱,系统的单位冲激响应h(t),并按照下面的图Q3-2的布局,绘制出各个信号的时域和频域图形。 图Q3-2 你编写的程序Q3_2抄写如下: 执行程序Q3_2,输入信号x(t) = sin(t) + sin(8t),输入由Eq.3.3描述的系统。得到的图形如下: 此处粘帖执行程序Q3_2所得到的图形 请手工绘制出信号x(t) = sin(t) + sin(8t) 的幅度频谱图如下: 你手工绘制的信号x(t) = sin(t) + sin(8t) 的幅度频谱图与执行程序Q3_2得到的x(t) = sin(t) + sin(8t) 的幅度频谱图是否相同?如不同,是何原因造成的? 答: 执行程序Q3_2得到的x(t) = sin(t) + sin(8t) 的幅度频谱图实际上是另外一个信号x1(t)的幅度 频谱,这个信号的时域数学表达式为 x1(t) = 请利用傅里叶变换的相关性质计算并绘制信号x1(t)的幅度频谱图。 计算过程: 手工绘制的x1(t) 的幅度频谱图如下: 结合所学的有关滤波的知识,根据上面所得到的信号的时域和频域图形,请从时域和频域 两个方面解释滤波的概念。 答: Q3-3 编写程序Q3_3,能够接受从键盘输入的系统微分方程系数向量,并分别绘制所给三 个系统的群延时曲线图。 抄写程序Q3_3如下: 系统Eq.3.1的群延时曲线图 系统Eq.3.3的群延时曲线图 根据上面的群延时曲线图可以看出,对系统 Eq.3.1,当频率为5弧度/秒时,群延时为 秒,当频率为10弧度/秒时,群延时为 秒,如何解释这两个群延时时间? 根据上面的群延时曲线图,说明这两个系统是否会造成对信号的相位失真?为什么? 从系统Eq.3.3的群延时曲线图中可以看出,当信号的频率为1弧度/秒时,系统Eq.3.3对这 一频率的信号的延时是 秒。所以,执行程序Q3_2时,当作用于系统Eq.3.3的输入信号为x(t) = sin(t) + sin(8t)时,其输出信号y(t)的数学表达式为: 四、实验报告要求 1、按要求完整书写你所编写的全部MATLAB程序 2、详细记录实验过程中的有关信号波形图(存于自带的U盘中),图形要有明确的标题。全部的MATLAB图形应该用打印机打印,然后贴在本实验报告中的相应位置,禁止复印件。 3、实事求是地回答相关问题,严禁抄袭。 本实验完成时间: 年 月 日 实验四 通信系统仿真 三、实验内容及步骤 实验前,必须首先阅读本实验原理,了解所给的MATLAB相关函数,读懂所给出的全部 范例程序。实验开始时,先在计算机上运行这些范例程序,观察所得到的信号的波形图。并结合范例程序所完成的工作,进一步分析程序中各个语句的作用,从而真正理解这些程序的编程算法。 实验前,一定要针对下面的实验项目做好相应的实验准备工作,包括事先编写好相应的实验程序等事项。 Q4-1 给范例程序Program4_1加注释。 Q4-2 范例程序Program4_1中的连续时间信号x(t) 是什么信号?它的数学表达式为: Q4-3 在1/2—1/10之间选择若干个不同Ts值,反复执行执行范例程序Program4_1,保 存执行程序所得到的图形。 Ts = 1/2时的信号时域波形和频谱图 Ts = 1/4时的信号时域波形和频谱图 Ts = 1/8时的信号时域波形和频谱图 根据上面的三幅图形,作一个关于抽样频率是怎样影响已抽样信号频谱的小结。 答: 程序Program4_1中的连续信号是否是带限信号?如果不是带限信号,是否可以选择一个抽 样频率能够完全消除已抽样信号中的频谱的混叠?如果不是带限信号,那么,这个连续时间信号在抽样前必须滤波,请你选择一个较为合适的频率作为防混叠滤波器的截止频率,你选 择的这个截止频率是多少?说明你的理由。 答: Q4-4 请手工计算升余弦信号x(t) = [1+cos(pi*t)].*[u(t+1)-u(t-1)] 的傅里叶变换的数学表达 式,手工绘制其幅度频谱图。 计算过程: 手工绘制的升余弦信号x(t) = [1+cos(pi*t)].*[u(t+1)-u(t-1)] 的幅度频谱图 从上图的幅度频谱上看,升余弦信号是否是带限信号?能否近似将它看作是一个带限信 号?如果可以,那么,估计信号的最高频率大约是多少? 答: Q4-5 阅读范例程序Program4_2,在这个程序中,选择的信号的最高频率是多少?这个频 率选择得是否恰当?为什么? 答: Q4-6 在1—8之间选择抽样频率与信号最高频率之比,即程序Program4_2中的a值,反 复执行范例程序Program4_2,观察重建信号与原信号之间的误差,通过对误差的分析,说明对于带限信号而言,抽样频率越高,则频谱混叠是否越小? 答: Q4-7 图Q4-7是一个RLC串联电路,在有些场合,可以把它用来作为一个滤波器使用, 如果选择不同的位置的信号作为输出信号,该电路具有不同的滤波特性。该电路的输出信号分别为y1(t)、y2(t)和y3(t)时,电路的输入输出微分方程和频率响应的数学表达式分别形如: ???选择y1(t)为输出信号时(可将电路看成系统1) d2y1(t)dy1(t)22?2????ny1(t)??nx(t) 微分方程为 n2dtdtR y3(t)???频率响应为 H(j?)? 2(j?)2?2??n(j?)??n2nx(t)L y2(t)??选择y2(t)为输出信号时(可将电路看成系统2) d2y2(t)dy2(t)d2x(t)2?2??n??ny2(t)?微分方程为 22dtdtdt?C y1(t)??图Q4-7 RLC串联电路 (j?)2频率响应为 H(j?)? 22(j?)?2??n(j?)??n选择y3(t)为输出信号时(可将电路看成系统3) d2y3(t)dy3(t)dx(t)2?2????y(t)?2??微分方程为 nn3ndtdtdt2频率响应为 H(j?)?2??n(j?) 2(j?)2?2??n(j?)??n请写出上面的微分方程和频率响应表达式中的参数?、?n与R、L、C之间的数学关系。 Q4-8 编写程序Q4_8,能够接受从键盘输入的?、?n之值,计算并在同一个图形窗口的三 个子图中绘制出这三个频率响应特性曲线,要求每个子图有标题,绘制的频率范围为0—40弧度/秒。图形布置如图Q4-8所示。 图Q4-8 图形布置(zeta = ?, wn = ?n) 抄写程序Q4_8如下: 执行程序Q4_8,输入zeta = 0.7,wn = 15,在图形中的空白处,标上zeta 和wn之值, 如图Q4-8所示。保存所得到的图形如下。 zeta = 0.7,wn = 15时的频率响应曲线图 根据上面的图形,请说明系统1、系统2和系统3分别具有何种滤波特性? 答: 固定zeta = 0.7,在2—30之间选择不同的wn值,反复执行程序Q4_8,保存zeta = 0.7, wn = 5和zeta = 0.7,wn = 20所得到的两幅图形。根据执行程序所得到的系统频率响应的形状,说明wn的不同取值分别对系统1、系统2和系统3的滤波特性(从通频带的带宽、过渡带宽和截止频率等方面作说明)的影响。 zeta = 0.7,wn = 5时的频率响应曲线图 zeta = 0.7,wn = 20时的频率响应曲线图 答: 固定wn = 15,在0.2—1之间选择不同的zeta值,反复执行程序Q4_8,保存zeta = 0.4, wn = 15和zeta = 0.8,wn = 15所得到的两幅图形。根据执行程序所得到的系统频率响应的形状,说明zeta的不同取值分别对系统1、系统2和系统3的滤波特性的影响。 zeta = 0.4,wn = 15时的频率响应曲线图 zeta = 0.8,wn = 15时的频率响应曲线图 答: Q4-9 调制与解调仿真实验。设调制信号为单频正弦信号x(t) = sin(t),其角频率为1 rad/s, 载波为c(t) = cos(10t),载频为10rad/s。 请按下面的图Q4-9建立仿真模型图: 图中共有三个信号源,其中: Sin Wave为调制信号源即调制信号,可设定其频率为1 rad/s ; Sin Wave1为载波信号,可设定其频率为30rad/s,Band-Limited White Noise为带限白噪声干扰信号,其频率可认为远大于1 rad/s; Product和Product1分别为调制器和解调器,完成信号的乘法运算。 图Q4-9 信号的调制与解调仿真模型图 第一个乘法器之后的Transfer Fun是一个带通滤波器,数学模型可给定为: H(j?)?2??n(j?) 22(j?)?2??n(j?)??n可以用Q4-7的RLC串联电路构成的系统3实现。 根据调制信号和载波的频率,以及实验结果,你认为图Q4-9中的带通滤波器的参数 ? 和 n ? 应该选择为: wn = ? = 第二个乘法器之后的Transfer Fun是一个低通滤波器,设定其系统函数为: 2?n H(j?)?22(j?)?2??n(j?)??n可以用Q4-7的RLC串联电路构成的系统1实现。 根据调制信号和载波的频率,以及实验结果,你认为图Q4-9中的低通滤波器的参数 ? 和 n ? 应该选择为: wn = ? = 四、实验报告要求 1、按要求完整书写你所编写的全部MATLAB程序 2、详细记录实验过程中的有关信号波形图(存于自带的U盘中),图形要有明确的标题。全部的MATLAB图形应该用打印机打印,然后贴在本实验报告中的相应位置,禁止复印