《控制系统数字仿真.pdf》由会员分享,可在线阅读,更多相关《控制系统数字仿真.pdf(15页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、 现代工程控制理论 实验报告 实验名称:控制系统数字仿真技术 实验时间:2015/5/3 目录 一、实验目的.错误!未定义书签。二、实验内容.错误!未定义书签。三、实验原理.错误!未定义书签。四、实验方案.错误!未定义书签。1、分别离散法;.错误!未定义书签。2、整体离散法;.错误!未定义书签。3、欧拉法.错误!未定义书签。4、梯形法.错误!未定义书签。5、龙格库塔法.错误!未定义书签。五、实验结论.错误!未定义书签。小结:.错误!未定义书签。一、实验目的 1、探究多阶系统状态空间方程的求解;2、探究多种控制系统数字仿真方法并对之进行精度比较;二、实验内容 1PI2PI111(1)nKTs22
2、2(1)nKT sR 1、对上面的系统进行仿真,运用分别离散法进行分析;2、对上面的系统进行仿真,运用整体离散法进行分析;3、对上面的系统进行仿真,运用欧拉法进行分析;4、对上面的系统进行仿真,运用梯形法进行分析;5、对上面的系统进行仿真,运用龙泽库塔法进行分析;6、对上面的几种方法进行总计比较,对他们的控制精度分别进行分析比较;三、实验原理 1、控制系统状态空间方程整体离散法的求解;控制系统的传递函数一般为 xAxBuYCxDu 有两种控制框图简化形式如下:KI 控制器可以用框图表示如下:pKiK1s 惯性环节表示如下:KT1s1T 高阶系统(s)(1)nKGT的框图如下 对于上面的框图可以
3、简写传递函数 xAxBuYCxDu 根据各环节间的关系可以列写出式子中出现的系数 A、B、C和 D,下面进行整体离散法求传递函数的推导 00000()00.*().()(t)(0).*(t)(0)(t)(0)()(0)AtAtAtAtAtttAtttAATtATAAtttAtAtAAtA txAxBueexeAxeBud exdtBuedtdtexBuedtexxBuedexxeeBuedxxeBuedtKTx kTxe得得令()0(1)(1)(1)0(1)(1)00.(1)(1)(0).*(1)()(1)T(1)()()(),kTA kTA kTkTA kTAkTATkTATAkTkTTTA
4、TAtATAtATBuedtKTx kTxeBuedex kex kBuedktx kex keBudtex keBdt u ke 令得令令0(1)()(1)TAtmmeBdtx kx kx k 得 这样,如果知道系数,就可以知道高阶系统的传递函数和状态空间方程。2、在控制系统的每一个环节都加一个采样开关,构成分别离散法求解系统的状态空间方程;采样开关其实是一个零阶保持器(t)(kT)(1)uukTtkT 比例环节:(s)(1)*(1)(s)xkpx kkpu ku 积分环节:(s)(1)()*()(s)xkix kx kkidtu kus 惯性环节:(s)(1)exp(/)()1 exp(/
5、)()(s)1xkx kdx kkdu kus 四、实验方案 1、分别离散法;系统框图 R11P I22P I20.93(173.3s)42.086(196.1s)根据上面提到的分别离散法得到仿真的公式 已知系数: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)
6、=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、整体离散法;将系统框图拆开 系统的状态空间方程为:xAx BuYCx Du 1181221241281212121121121312348111111434112545226562276722878221111111111iiiipipippppppxkxk RxkxkxkkxkkR
7、K kK kK kkK kkKxxxxxxRTTTTTTxxxTTKxxxTTxxxTTxxxTTxxxTT 此时 可以得到此时状态方程的系数 122212212111111111112222222220000000000001000110000001000000110000001100000011000000iiiipppppKKKKKK KK KKKKKTTTTTTTKATTTTTTTT 112121100000ipippKKKKKKTB 000000010CD 由上面的推导可知(1)()(1)mx kx kx k 求出m和就可以得到系统的状态空间方程 22312231111(.)2!3!
8、111(.)B2!3!ATkkkkmeIA TATA TATkTATA TATk 在 Matlab 中仿真时为 for i=1:n1*n2 faiM=faiM+(dti)*(a(i-1)/factorial(i);end fai=faiM*a+eye(n1*n2);faiM=faiM*b;for j=1:lp x=fai*x+faiM*r;y=c*x+d*r;y1=y1 y;t=t j*dt;end 3、欧拉法 由上面已经求出系统的状态空间方程,所以这里直接引用,欧拉法的求解过程如下:()()(),(1)()()()()()()()()xAxBux kAx kBu kx kx kdt x kx
9、 kdt Ax kBu kIdtA x kdtBu k 在 Matlab 中的仿真程序如下:for i=1:lp xk=a*x+b*r;x=x+xk*dt;y=c*x+d*r;y1=y1 y;t=t dt*i;end 4、梯形法 类似于欧拉法,梯形法的推导如下 111122()()(),(1)()()(1)(1)(1)()(1)()2(1)()()()()()()(1)2222xAxBux kAx kBu kx kx kdt x kx kAx kBu kx kx kx kx kx kdt x kdtdtdtdtIdtAAx kA Bu kBu k平均一下得 在 Matlab 中仿真的程序如下:
10、for i=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=y1 y;t=t dt*i;end 5、龙格库塔法 推导如下:120031141234234234234234()()11()(),2211()()22(1)(1)22()6(1)()()()()2!3!4!()()23624xAxBueAx kBu keAx kBu keAx kBu keAx kBu keeeeE kx kx kdtE kdtdtdtIdtAAAAx kdtdtdtdtAAAABu k 在 Matlab中的仿真
11、程序如下:for i=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=y1 y;t=t dt*i;end 五、实验结论 5 种方法仿真图形 050010001500200025003000350040004500500000.20.40.60.811.21.4 整体离散ts=1411,Mp=14.8753,FAI=0.96784,tr=739,tp=1038,ys=1.0
12、048分别离散ts=1403,Mp=14.4608,FAI=0.96887,tr=739,tp=1036,ys=1.0048梯形法ts=1411,Mp=14.8751,FAI=0.96784,tr=739,tp=1038,ys=1.0048龙格库塔法ts=1411,Mp=14.8753,FAI=0.96784,tr=739,tp=1038,ys=1.0048欧拉法ts=1410,Mp=15.018,FAI=0.9674,tr=738,tp=1036,ys=1.0048 放大后的图像 3040304130423043304430453046304730481.0061.00651.0071.00
13、751.008 整体离散ts=1411,Mp=14.8753,FAI=0.96784,tr=739,tp=1038,ys=1.0048分别离散ts=1403,Mp=14.4608,FAI=0.96887,tr=739,tp=1036,ys=1.0048梯形法ts=1411,Mp=14.8751,FAI=0.96784,tr=739,tp=1038,ys=1.0048龙格库塔法ts=1411,Mp=14.8753,FAI=0.96784,tr=739,tp=1038,ys=1.0048欧拉法ts=1410,Mp=15.018,FAI=0.9674,tr=738,tp=1036,ys=1.0048
14、 此时,可以看出,分别离散已经开始远离其他的线 继续放大 3039.43039.63039.830403040.23040.41.0071.0071.00711.00711.00721.00721.0073 整 体 离 散 ts=1411,Mp=14.8753,FAI=0.96784,tr=739,tp=1038,ys=1.0048分 别 离 散 ts=1403,Mp=14.4608,FAI=0.96887,tr=739,tp=1036,ys=1.0048梯 形 法 ts=1411,Mp=14.8751,FAI=0.96784,tr=739,tp=1038,ys=1.0048龙 格 库 塔 法
15、 ts=1411,Mp=14.8753,FAI=0.96784,tr=739,tp=1038,ys=1.0048欧 拉 法 ts=1410,Mp=15.018,FAI=0.9674,tr=738,tp=1036,ys=1.0048 此时分别离散已经明显远离其他,并且欧拉法也开始远离其他的线 3039.473039.47053039.4713039.47153039.4721.00721.00721.00721.00721.00721.00721.0072 整 体 离 散 ts=1411,Mp=14.8753,FAI=0.96784,tr=739,tp=1038,ys=1.0048分 别 离 散
16、 ts=1403,Mp=14.4608,FAI=0.96887,tr=739,tp=1036,ys=1.0048梯 形 法 ts=1411,Mp=14.8751,FAI=0.96784,tr=739,tp=1038,ys=1.0048龙 格 库 塔 法 ts=1411,Mp=14.8753,FAI=0.96784,tr=739,tp=1038,ys=1.0048欧 拉 法 ts=1410,Mp=15.018,FAI=0.9674,tr=738,tp=1036,ys=1.0048 3185.3073185.3073185.3073185.3073185.3073185.3073185.3071.
17、00581.00581.00581.00581.00581.00581.00581.00581.00581.00581.0058 整 体 离 散 ts=1411,Mp=14.8753,FAI=0.96784,tr=739,tp=1038,ys=1.0048分 别 离 散 ts=1403,Mp=14.4608,FAI=0.96887,tr=739,tp=1036,ys=1.0048梯 形 法 ts=1411,Mp=14.8751,FAI=0.96784,tr=739,tp=1038,ys=1.0048龙 格 库 塔 法 ts=1411,Mp=14.8753,FAI=0.96784,tr=739,
18、tp=1038,ys=1.0048欧 拉 法 ts=1410,Mp=15.018,FAI=0.9674,tr=738,tp=1036,ys=1.0048 最终可以看出,龙格库塔法与整体离散法得到的仿真曲线最接近。小结:利用不同的方法对多阶系统的状态方程进行求解,分别离散法,因为零阶保持器的缘故,所以误差比较大;欧拉法通过简单的取切线的端点作为下一步的起点,提升了精确性,但是本身也存在缺点,当步数增加时,误差在逐渐累积;详细实例见附件;梯形法是欧拉法的升级版,首先可以由欧拉法求得下一时刻的值,再代入校正得到一个更精准的值,这样,可以较欧拉法得到更精准的值;龙格库塔法是至尊版,比梯形法更精准,运用不同阶数的龙格库塔法可以得到更精准的值,他运用不同预估值的斜率求取平均值,并赋予不同的权重,提高精度;六、实验中存在的问题 没有明显的问题