实验五 连续时间系统的复频域分析

实验五  连续时间系统的复频域分析

实验目的:

1、掌握利用Matlab计算拉普拉斯正反变换的方法;

2、掌握如何利用Matlab求部分分式展开的系数。

实验原理:

1、拉普拉斯正反变换

Matlab的符号数学工具箱中提供了计算Laplace正反变换的函数laplace和ilaplace,其调用形式分别为:

上述两个式中,右端的应分别为系统的时域表示式和s域表示式

符号表示式。

需要注意的是符号数学工具箱给出的结果也是解析表达式(其中可以带上尚为未知的参数符号),而并非一般的以向量来表示的数值结果。

2、 部分分式展开法求拉普拉斯逆变换

利用Matlab中的residue函数可以实现将s域表示式的部分分式展开式,其调用形式为:

其中,分别为分子多项式和分母多项式的系数向量(num=numerator,den=denominator),为所得部分分式展开项的系数量,为极点,为直流分量。

如果,则=[1 2];=[1 4 3 0];

运行的结果为:

r=-1/6        -1/2          2/3

p=-3          -1            0

k=[]

即得F(s)可以展开为:

再由基本得Laplace变换对可知,F(s)得反变换为:

 

注意:如果分母不是多项式而是因子相乘的形式,我们可以利用conv函数将其转换为多项式的形式,如分母为,则den=conv([1 1],[1 2])。

实验内容:

一、利用Matlab程序求的Laplace变换:

1、

2、

3、

二、利用Matlab程序求的Laplace反变换:

1、

2、

3、

三、用部分分式展开法将F(s)的展开,并求其反变换

1、

2、

3、

四、已知某线性是不变系统的系统函数为:

求该系统的单位阶跃响应表达式并画出其波形图。

思考题:

从信号分解的角度,谈谈对拉普拉斯变换及其物理意义的理解。

答:在拉普拉斯变换的收敛域内有无数条纵轴,在每一条纵轴上都可以写成一个不等幅正弦信号的叠加,可见傅立叶变换是拉普拉斯变换的特例,是一个信号可以表示成等幅的正弦信号的叠加!

实验总结:

通过本次实验更好的理解了拉普拉斯变换的意义和在MATLAB中的求法,掌握了MATLAB求系数的方法收获良多。

 

第二篇:实验2 连续时间系统的时域分析

 实验2 连续时间系统的时域分析

实验目的:

连续时间系统的时域分析以及如何用Matlab函数计算连续线性时不变系统的响应。

实验要求:

(1)熟悉连续时间系统时域分析用到的Matlab函数;

(2)求连续系统的单位阶跃响应和单位冲激响应;

(3)求连续系统对任意输入的零状态响应;

(4)求连续信号卷积的计算和用卷积求解连续系统的零状态响应;

(5)分析连续线性时不变系统。

实验内容:

1. 计算信号的卷积:

(1)

(2)

2. 求解微分方程的阶跃响应、冲激响应和零状态响应,其中输入信号为

参考程序:

(1)连续时间系统的时域分析涉及到的Matlab函数:

step:用于计算连续时间系统的单位阶跃响应。

impulse:用于计算连续时间系统的单位冲激响应。

lsim:用于计算连续系统在任意输入作用下的响应。

dsolve:Symbolic Math Toolbox中的函数,用于求解常微分方程。

conv

(2)求连续系统的单位阶跃响应和单位冲激响应

例1:求解微分方程的单位阶跃响应和单位冲激响应,并与用解析式表示的结果进行比较。

用Matlab函数求解响应的程序如下:

t = [0:0.1:10];

b = [1];

a = [1 3];

s = step(b,a,t);

s1 = (1/3)*(1-exp(-3*t));

plot(t,s,'o',t,s1,'r');

title('Step Response'); ylabel('y(t)'); xlabel('t');legend('step函数','解析式')

figure

h = impulse(b,a,t);

h1 = exp(-3*t);

plot(t,h,'o',t,h1,'r');

title('Impulse Response'); ylabel('y(t)'); xlabel('t');legend('impulse函数,解析式')

系统的阶跃响应波形如图1所示。

图1

系统的冲激响应波形如图2所示。

图2

(3)求连续系统在任意输入作用下的零状态响应

例2:求解微分方程的零状态响应,输入信号,并与用解析式表示的结果进行比较。

用Matlab函数求解响应的程序如下:

t = [0:0.1:10];

b = [1];

a = [1 3];

x = exp(-1*t);

s = lsim(b,a,x,t);

s1 = (1/2)*(x-exp(-3*t));

plot(t,s,'o',t,s1,'r');

ylabel('y_{st}(t)'); xlabel('t');legend('lsim函数','解析式')

图3

(4)连续信号的卷积和系统零状态响应的计算

例3:设信号,选取,在区间用Matlab计算,并与解析式求得的结果进行比较。

用Matlab函数求解响应的程序如下:

t = [0:0.01:6];

x = exp(-2*t);

h = ut(t)-0;

y = conv(x,h)*0.01;

y1 = 0.5*(1-exp(-2*t));

plot(t,y([1:length(t)]),'-.',t,y1,'r');

xlabel('t');ylabel('y(t)');

title('y(t)=x(t)*h(t)\Delta=0.01');

legend('近似值','解析式')

图4

这里选取的足够小,近似值很接近用解析式得到的值。

例4:用卷积法求微分方程的零状态响应,输入信号为

Matlab程序如下:

t = [0:0.01:10];

b = [1];

a = [1 3];

x = exp(-1*t);

h = impulse(b,a,t);

y = conv(x,h)*0.01;

plot(t,y([1:length(t)]));grid on

ylabel('y_{st}(t)'); xlabel('t');title('y_{zs}(t)=x(t)*h(t)\Delta=0.01');

相关推荐