控制系统数字仿真.docx

上传人:b****1 文档编号:2870812 上传时间:2023-05-04 格式:DOCX 页数:13 大小:420.70KB
下载 相关 举报
控制系统数字仿真.docx_第1页
第1页 / 共13页
控制系统数字仿真.docx_第2页
第2页 / 共13页
控制系统数字仿真.docx_第3页
第3页 / 共13页
控制系统数字仿真.docx_第4页
第4页 / 共13页
控制系统数字仿真.docx_第5页
第5页 / 共13页
控制系统数字仿真.docx_第6页
第6页 / 共13页
控制系统数字仿真.docx_第7页
第7页 / 共13页
控制系统数字仿真.docx_第8页
第8页 / 共13页
控制系统数字仿真.docx_第9页
第9页 / 共13页
控制系统数字仿真.docx_第10页
第10页 / 共13页
控制系统数字仿真.docx_第11页
第11页 / 共13页
控制系统数字仿真.docx_第12页
第12页 / 共13页
控制系统数字仿真.docx_第13页
第13页 / 共13页
亲,该文档总共13页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

控制系统数字仿真.docx

《控制系统数字仿真.docx》由会员分享,可在线阅读,更多相关《控制系统数字仿真.docx(13页珍藏版)》请在冰点文库上搜索。

控制系统数字仿真.docx

控制系统数字仿真

现代工程控制理论

实验报告

 

实验名称:

控制系统数字仿真技术

实验时间:

2015/5/3

 

 

一、实验目的

1、探究多阶系统状态空间方程的求解;

2、探究多种控制系统数字仿真方法并对之进行精度比较;

二、实验内容

1、对上面的系统进行仿真,运用分别离散法进行分析;

2、对上面的系统进行仿真,运用整体离散法进行分析;

3、对上面的系统进行仿真,运用欧拉法进行分析;

4、对上面的系统进行仿真,运用梯形法进行分析;

5、对上面的系统进行仿真,运用龙泽——库塔法进行分析;

6、对上面的几种方法进行总计比较,对他们的控制精度分别进行分析比较;

三、实验原理

1、控制系统状态空间方程整体离散法的求解;

控制系统的传递函数一般为

有两种控制框图简化形式如下:

KI控制器可以用框图表示如下:

惯性环节表示如下:

高阶系统

的框图如下

对于上面的框图可以简写传递函数

根据各环节间的关系可以列写出式子中出现的系数A、B、C和D,下面进行整体离散法求传递函数的推导

这样,如果知道系数,就可以知道高阶系统的传递函数和状态空间方程。

2、在控制系统的每一个环节都加一个采样开关,构成分别离散法求解系统的状态空间方程;

采样开关其实是一个零阶保持器

比例环节:

积分环节:

惯性环节:

四、实验方案

1、分别离散法;

系统框图

根据上面提到的分别离散法得到仿真的公式

已知系数:

K1=;

K2=;

T1=;

T2=;

n1=2;

n2=4;

kp1=;

ki1=;

kp2=2;

ki2=;

惯性环节的系数:

fai1=exp(-dt/T1);

faiM1=1-fai1;

fai2=exp(-dt/T2);

faiM2=1-fai2;

PID控制环节:

up1=e*kp1;

x

(1)=x

(1)+ki1*dt*e;

up2=e1*kp2;

x

(2)=x

(2)+ki2*dt*e1;

惯性环节:

x(3)=fai1*x(3)+K1*faiM1*u1;

x(4)=fai1*x(4)+faiM1*x(3);

x(5)=fai2*x(5)+K2*faiM2*x(4);

x(6)=fai2*x(6)+faiM2*x(5);

x(7)=fai2*x(7)+faiM2*x(6);

x(8)=fai2*x(8)+faiM2*x(7);

2、整体离散法;

将系统框图拆开

系统的状态空间方程为:

可以得到此时状态方程的系数

由上面的推导可知

求出

就可以得到系统的状态空间方程

在Matlab中仿真时为

fori=1:

n1*n2

faiM=faiM+(dt^i)*(a^(i-1))/factorial(i);

end

fai=faiM*a+eye(n1*n2);

faiM=faiM*b;

forj=1:

lp

x=fai*x+faiM*r;

y=c*x+d*r;

y1=[y1y];

t=[tj*dt];

end

3、欧拉法

由上面已经求出系统的状态空间方程,所以这里直接引用,欧拉法的求解过程如下:

在Matlab中的仿真程序如下:

fori=1:

lp

xk=a*x+b*r;

x=x+xk*dt;

y=c*x+d*r;

y1=[y1y];

t=[tdt*i];

end

4、梯形法

类似于欧拉法,梯形法的推导如下

在Matlab中仿真的程序如下:

fori=1:

lp

xk=a*x+b*r;

xk1=x+dt*xk;

xk2=a*xk1+b*r;

E=(xk+xk2)/2;

x=x+dt*E;

y=c*x+d*r;

y1=[y1y];

t=[tdt*i];

end

5、龙格——库塔法

推导如下:

在Matlab中的仿真程序如下:

fori=1:

lp

e1=a*x+b*r;

xk1=x+dt*e1/2;

e2=a*xk1+b*r;

xk2=x+dt*e2/2;

e3=a*xk2+b*r;

xk3=x+dt*e3/2;

e4=a*xk3+b*r;

E=(e1+e2+e3+e4)/6;

x=x+dt*E;

y=c*x+d*r;

y1=[y1y];

t=[tdt*i];

end

五、实验结论

5种方法仿真图形

放大后的图像

此时,可以看出,分别离散已经开始远离其他的线

继续放大

此时分别离散已经明显远离其他,并且欧拉法也开始远离其他的线

最终可以看出,龙格——库塔法与整体离散法得到的仿真曲线最接近。

小结:

利用不同的方法对多阶系统的状态方程进行求解,分别离散法,因为零阶保持器的缘故,所以误差比较大;欧拉法通过简单的取切线的端点作为下一步的起点,提升了精确性,但是本身也存在缺点,当步数增加时,误差在逐渐累积;

详细实例见附件;梯形法是欧拉法的升级版,首先可以由欧拉法求得下一时刻的值,再代入校正得到一个更精准的值,这样,可以较欧拉法得到更精准的值;龙格库塔法是至尊版,比梯形法更精准,运用不同阶数的龙格库塔法可以得到更精准的值,他运用不同预估值的斜率求取平均值,并赋予不同的权重,提高精度;

六、实验中存在的问题

没有明显的问题

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

当前位置:首页 > 法律文书 > 调解书

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2