您好,欢迎访问三七文档
当前位置:首页 > 临时分类 > 控制系统数字仿真与CAD第二章习题答案
12-1思考题:(1)数学模型的微分方程,状态方程,传递函数,零极点增益和部分分式五种形式,各有什么特点?(2)数学模型各种形式之间为什么要互相转换?(3)控制系统建模的基本方法有哪些?他们的区别和特点是什么?(4)控制系统计算机仿真中的“实现问题”是什么含意?(5)数值积分法的选用应遵循哪几条原则?答:(1)微分方程是直接描述系统输入和输出量之间的制约关系,是连续控制系统其他数学模型表达式的基础。状态方程能够反映系统内部各状态之间的相互关系,适用于多输入多输出系统。传递函数是零极点形式和部分分式形式的基础。零极点增益形式可用于分析系统的稳定性和快速性。利用部分分式形式可直接分析系统的动态过程。(2)不同的控制系统的分析和设计方法,只适用于特定的数学模型形式。(3)控制系统的建模方法大体有三种:机理模型法,统计模型法和混合模型法。机理模型法就是对已知结构,参数的物理系统运用相应的物理定律或定理,经过合理的分析简化建立起来的各物理量间的关系。该方法需要对系统的内部结构和特性完全的了解,精度高。统计模型法是采用归纳的方法,根据系统实测的数据,运用统计规律和系统辨识等理论建立的系统模型。该方法建立的数学模型受数据量不充分,数据精度不一致,数据处理方法的不完善,很难在精度上达到更高的要求。混合法是上述两种方法的结合。(4)“实现问题”就是根据建立的数学模型和精度,采用某种数值计算方法,将模型方程转换为适合在计算机上运行的公式和方程,通过计算来使之正确的反映系统各变量动态性能,得到可靠的仿真结果。(5)数值积分法应该遵循的原则是在满足系统精度的前提下,提高数值运算的速度和并保证计算结果的稳定。22-2.用matlab语言求下列系统的状态方程、传递函数、零极点增益、和部分分式形式的模型参数,并分别写出其相应的数学模型表达式:(1)G(s)=324327242410355024sssssss(2).X=2.25-5-1.25-0.542.25-4.25-1.25-0.2520.25-0.5-1.25-121.25-1.75-0.25-0.750Xuy=[0202]X(1)解:(1)状态方程模型参数:编写matlab程序如下num=[172424];den=[110355024];[ABCD]=tf2ss(num,den)得到结果:A=-10-35-50-24100001000010,B=1000,C=172424,D=[0]所以模型为:.X=-10-35-50-24100001000010X+1000u,y=172424X(2)零极点增益:编写程序num=[172424];den=[110355024];[ZPK]=tf2zp(num,den)得到结果Z=-2.7306+2.8531,-2.7306-2.8531i,-1.5388P=-4,-3,-2,-1K=1(3)部分分式形式:编写程序num=[172424];den=[110355024];[RPH]=residue(num,den)得到结果R=4.0000,-6.0000,2.0000,1.0000P=-4.0000,-3.0000,-2.0000,-1.0000H=[]3G(s)=46214321ssss(2)解:(1)传递函数模型参数:编写程序A=[2.25-5-1.25-0.52.25-4.25-1.25-0.250.25-0.5-1.25-11.25-1.75-0.25-0.75];B=[4220]';C=[0202];D=[0];[numden]=ss2tf(A,B,C,D)得到结果num=04.000014.000022.000015.0000den=1.00004.00006.25005.25002.2500324324s+14s+22s+15()s+4s+6.25s+5.25s+2.25Gs(2)零极点增益模型参数:编写程序A=[2.25-5-1.25-0.52.25-4.25-1.25-0.250.25-0.5-1.25-11.25-1.75-0.25-0.75];B=[4220]';C=[0202];D=[0];[Z,P,K]=ss2zp(A,B,C,D)得到结果Z=-1.0000+1.2247i-1.0000-1.2247i-1.5000P=-0.5000+0.8660i-0.5000-0.8660i-1.5000-1.5000K=4.0000表达式4s+1-1.2247is+1+1.2247i()s+0.5-0.866is+0.5+0.866is+1.5Gs(3)部分分式形式的模型参数:编写程序A=[2.25-5-1.25-0.52.25-4.25-1.25-0.250.25-0.5-1.25-11.25-1.75-0.25-0.75];4B=[4220]';C=[0202];D=[0];[numden]=ss2tf(A,B,C,D)[R,P,H]=residue(num,den)得到结果R=4.0000-0.00000.0000-2.3094i0.0000+2.3094iP=-1.5000-1.5000-0.5000+0.8660i-0.5000-0.8660iH=[]42.30942.3094()1.50.50.8660.50.866iiGsssisi2-3.用欧拉法求下面系统的输出响应y(t)在0≤t≤1上,h=0.1时的数值。',(0)1yyy要求保留4位小数,并将结果与真解()tyte比较。解:欧拉法1'00*(,)(,)()kkkkkkyyhftyyftyyty(前向欧拉法,可以自启动)其几何意义:把f(t,y)在[,kkty]区间内的曲边面积用矩形面积近似代替。利用matlab提供的m文件编程,得到算法公式。如下所示(1)m文件程序为h=0.1;disp('函数的数值解为');%显示‘’中间的文字%disp('y=');%同上%y=1;fort=0:h:1m=y;disp(y);%显示y的当前值%y=m-m*h;end保存文件q2.m在matalb命令行中键入q25得到结果函数的数值解为y=10.90000.81000.72900.65610.59050.53140.47830.43050.38740.3487(2)另建一个m文件求解tye在t[0,1]的数值(%tye是',(0)1yyy的真解%)程序为h=0.1;disp('函数的离散时刻解为');disp('y=');fort=0:h:1y=exp(-t);disp(y);end保存文件q3.m在matalb命令行中键入q3函数的离散时刻解为y=10.90480.81870.74080.67030.60650.54880.49660.44930.40660.3679比较欧拉方法求解与真值的差别欧拉10.90000.81000.72900.65610.59050.53140.47830.43050.38740.3487真值10.90480.81870.74080.67030.60650.54880.49660.44930.40660.3679误差0-0.0048-0.0007–0.0118–0.0142–0.0160–0.0174–0.0183–0.0188-0.0192-0.0192显然误差与2h为同阶无穷小,欧拉法具有一阶计算精度,精度较低,但算法简单。2-4用二阶龙格库塔法求解2-3的数值解,并于欧拉法求得的结果比较。解:我们经常用到预报-校正法的二阶龙-格库塔法,112121'()2(,)(,)(,)kkkkkkhyykkkftykfthyhkftyy此方法可以自启动,具有二阶计算精度,几何意义:把f(t,y)在[,kkty]区间内的曲边面积用上下底为kf和1kf、高为h的梯形面积近似代替。利用matlab提供的m文件编程,得到算法公式。如下所示6(1)m文件程序为h=0.1;disp('函数的数值解为');disp('y=');y=1;fort=0:h:1disp(y);k1=-y;k2=-(y+k1*h);y=y+(k1+k2)*h/2;end保存文件q4.m在matlab的命令行中键入q4显示结果为函数的数值解为y=10.90500.81900.74120.67080.60710.54940.49720.45000.40720.3685(2)比较欧拉法与二阶龙格-库塔法求解.(误差为绝对值)真值10.90480.81870.74080.67030.60650.54880.49660.44930.40660.3679龙库10.90500.81900.74120.67080.60710.54940.49720.45000.40720.3685误差00.00020.00030.00040.00050.00060.00060.00060.00070.00060.0006明显误差为3h得同阶无穷小,具有二阶计算精度,而欧拉法具有以阶计算精度,二阶龙格-库塔法比欧拉法计算精度高。2-5.用四阶龙格-库塔法求解题2-3数值解,并与前两题结果相比较。解:四阶龙格-库塔法表达式112341213243(22)6(,)(,)22(,)22(,)kkkkkkkkkkhyykkkkkftyhhkftykhhkftykkfthyhk,其截断误差为5h同阶无穷小,当h步距取得较小时,误差是很小的.(1)编辑m文件程序h=0.1;7disp('四阶龙格-库塔方法求解函数数值解为');disp('y=');y=1;fort=0:h:1disp(y);k1=-y;k2=-(y+k1*h/2);k3=-(y+k2*h/2);k4=-(y+k3*h);y=y+(k1+2*k2+2*k3+k4)*h/6;end保存文件q5.m在matlab命令行里键入q5得到结果四阶龙格-库塔方法求解函数数值解为y=10.90480.81870.74080.67030.60650.54880.49660.44930.40660.3679(2)比较这几种方法:对于四阶龙格-库塔方法真值10.90480.81870.74080.67030.60650.54880.49660.44930.40660.3679龙库10.90480.81870.74080.67030.60650.54880.49660.44930.40660.3679误差00000000000显然四阶龙格-库塔法求解精度很高,基本接近真值。三种方法比较可以得到精度(四阶)〉精度(二阶)〉精度(欧拉)2-6.已知二阶系统状态方程为.1111210111.2222021222(0);;(0)xaaxxbxuxbxxaax写出取计算步长为h时,该系统状态变量X=[12,xx]的四阶龙格-库塔法递推关系式。解:四阶龙格-库塔法表达式112341213243(22)6(,)(,)22(,)22(,)kkkkkkkkkkhyykkkkkftyhhkftykhhkftykkfthyhk所以状态变量的递推公式可以写作:8A=11122122aaaa,B=12bb,12xxx可以写成.XAXBu则递推形式112341213243*(22)6(*/2)(*/2)(*)kkkkkkhXXkkkkkAXBukAXkhBukAX
本文标题:控制系统数字仿真与CAD第二章习题答案
链接地址:https://www.777doc.com/doc-2452913 .html