系统数学模型与仿真集成环境
信号与系统仿真综合实验内容
实验:9 实验名称:系统数学模型与仿真集成环境
一、实验目的
1) 熟悉MATLAB 及其在控制系统中的应用
2) 实现典型环节的时间响应仿真
3) 利用MATLAB 工具箱simulink 建立系统的仿真模型并调整并调整系统参数和观察
二、实验过程及程序设计
1. 有一连续信号 ,要求:
a .求信号f (t )的傅立叶变换F (jw );
b .用频率fs=5000Hz对f (t )进行采样,求出采样所得离散时间信号f1[n]的傅立叶变换 ;再用频率fs=1000Hz对f (t )进行采样,求出采样所得离散时间信号f2[n]的傅立叶变换 ;c .分别针对b 中的采样所得离散时间信号f1[n]和f2[n],重建出对应的连续时间信号f1(t )和f2(t ),并分别与原连续信号f (t )进行比较;根据抽样定理的知识,说明采样频率对信号重构的影响。 程序设计代码:
a .程序设计代码:
syms t ;f=fourier(exp(-1000*abs(t)));
结果f =2000/(1000000+w^2)
b .用频率fs=5000Hz对f (t )进行采样,求出傅立叶变换F 1(e j ) ;
fs=5000;
n1=-0.005:1/fs:0.005;
xa1=exp(-1000*abs(n1));
subplot(2,1,1);stem(n1,xa1);
title(' 采样所得信号f1[n]');xlabel('n1' );ylabel('f1[n]');
xk1=fft(xa1);xk1=abs(xk1);
subplot(2,1,2)
stem(n1,xk1);
title(' 采样信号f1[n]的傅里叶变化' );
xlabel('n1' );ylabel('FW1' );
再用频率fs=1000Hz对f (t )进行采样,求出采样所得离散时间信号f2[n]的傅立叶变换F 2(e j ) ; fs=1000;
n2=-0.005:1/fs:0.005;
xa2=exp(-1000*abs(n1));
subplot(2,1,1);
stem(n2,xa2);
title(' 采样所得信号f2[n]');
xlabel('n2' );ylabel('f2[n]');
xk2=fft(xa2);xk2=abs(xk2);
subplot(2,1,2)
stem(n2,xk2);
title(' 采样信号f2[n]的傅里叶变化' );
xlabel('n2' );ylabel('FW2' );
c .根据抽样定理的知识,说明采样频率对信号重构的影响。
T=1/1000;
n=(-0.1:T:0.1)';
xs=exp(-1000*abs(n));
t=linspace(-0.5,1.5,201)';
ya=sinc((1/T)*t(:,ones(size(n)))-(1/T)*n(:,ones(size(t)))')*xs;
plot(n,xs,'o' ,t,ya);grid;
xlabel(' 时间,mseec' );ylabel(' 幅值' );
title(' 重构信号f1(t)');
axis([-0.01 0.01 -1 2])
figure
T=1/5000;
n=(-0.1:T:0.1)';
xs=exp(-1000*abs(n));
t=linspace(-0.5,1.5,1001)';
ya=sinc((1/T)*t(:,ones(size(n)))-(1/T)*n(:,ones(size(t)))')*xs;
plot(n,xs,'o' ,t,ya);grid;
xlabel(' 时间,mseec' );ylabel(' 幅值' );
title(' 重构信号f2(t)');
axis([-0.01 0.01 -1 2])
2.一个控制系统有5个子系统组成
一个控制系统有5个子系统组成,组成结构如图所示:
各子系统的传递函数分别为:
10s +1s 2+5s +14(s +6) G 1(s ) =2,G 2(s ) =,G 3(s ) =,G 4(s ) =2, s +10s +3s +6(s +2)(s +20) 2s +15s +6
H (s ) =0. 1
要求:
a .运用Matlab 语言中的串联series 、并联parallel 、反馈feedback 和闭环cloop 连接函数,求系统的传递函数模型;
b .运用Matlab 语言编写仿真程序,求出系统输入为阶跃信号时的响应曲线;
c .运用控制系统的时域分析法分析系统的响应的性能指标(上升时间 t r 峰值时间 t p 超调量M p 调节时间 t s );
d .运用Simunlink 工具建立系统仿真结构图,求出系统输入为阶跃信号时的响应曲线,并将响
应曲线送入示波器显示,据响应曲线分析系统的性能指标,与运用Matlab 语言编写仿真程序求出的结果比较,给出系统参数比较结果及系统的特性。
a .程序设计代码
num1=[1,5,1]
den1=[2,15,6]
num2=[4,24]
den2=[1,22,40]
[num6,den6]=series(num1,den1,num2,den2)
g1_tf=tf(num6,den6)
num3=[10]
den3=[1,10]
[num7,den7]=parallel(num6,den6,num3,den3)
g2_tf=tf(num7,den7)
num4=[1,1]
den4=[1,3,6]
[num8,den8]=series(num7,den7,num4,den4)
g3_tf=tf(num8,den8)
num5=[0.1]
den5=[1]
[num9,den9]=feedback(num5,den5,num8,den8)
g4_tf=tf(num9,den9)
结果:g4_tf
Transfer function:
0.2 s^7 + 8.5 s^6 + 125.5 s^5 + 838.4 s^4 + 2827 s^3 + 5443 s^2 + 5256 s + 1440
-----------------------------------------------------------------------------------
2 s^7 + 85 s^6 + 1257 s^5 + 8454 s^4 + 2.881e004 s^3 + 5.576e004 s^2 + 5.368e004 s + 14664
b .求出系统输入为阶跃信号时的响应曲线;
num1=[1,5,1];
den1=[2,15,6];
num2=[4,24];
den2=conv([1,2],[1,2]);
[num,den]=series(num1,den1,num2,den2);
num3=[0,10];
den3=[1,10];
[num,den]=parallel(num,den,num3,den3);
num4=[1,1];
den4=[1,3,6];
[num,den]=series(num,den,num4,den4);
numH=[0,0.1];
denH=[0,1];
[num,den]=feedback(num,den,numH,denH);
Y=tf(num,den);
step(Y)
title(' 阶跃响应'
);
c .运用控制系统的时域分析法分析系统的响应的性能指标(上升时间 t r 峰值时间 t p 超调量
M p 调节时间 t s );
d .运用Simunlink 工具建立系统仿真结构图
思考题
1.控制系统时域响应性能指标包括哪几个指标?各指标主要衡量系统那些性能?
答:1稳态性能指标
利用稳态误差来衡量,当时间t 趋于无穷时,系统输出响应的期望值与实际值之差。
2动态性能指标
1) 上升时间Tr :从零时刻首次到达稳态值的时间。
2) 峰值时间Tp :想哦哪个零时刻到达峰值的时机,即阶跃响应曲线从t=0开始上升到第一个峰
值所需的时间
3) 最大超调量Mp :阶跃响应曲线的最大峰值与稳态值的差与稳态值之比
4) 调整时间Ts:阶跃响应曲线进入允许的误差带并不再超出该误差带的最小时间
5) 振荡次数:在调整时间内响应曲线振荡的次数
2.运用Matlab 语言编写程序实现仿真方法与利用Simunlink 进行仿真法其结果是相同的,试比较两种方法的优缺点。
Simulink 是Matlab 中动态系统建模、仿真和分析的一个集成环境, 根据双极型码可以在电缆等无接地的传输线上传输, 并且双极型码也得到较多的应用,利用离散滤波器, 模拟码间串扰, 在对数字基带传输系统进行分析基础上, 分析了双极性基带信号的误码率问题,利用Simulink 描述了双极型无码间干扰的数字基带系统和有码间数字基带系统, 并进行仿真结果的分析,仿真结果和理论基本一致. 。Simunlink 仿真法比较直观,缺乏准确数据。而Matlab 语言需要编译函数,没有直观表现。