《线性系统理论大作业小组报告-汽车机器人建模.docx》由会员分享,可在线阅读,更多相关《线性系统理论大作业小组报告-汽车机器人建模.docx(39页珍藏版)》请在课桌文档上搜索。
1、实用文档审定成绩:重庆邮电大学硕士研究生课程设计报告(线性系统理论)设计题目:汽车机器人建模学院名称:自动化学院学生姓名:专业:控制科学与工程仪器科学与技术班级:自动化1班、2班指导教师:蔡林沁填表时间:2017年12月实用文档重庆邮电大学实用文档摘要汽车被广泛的应用于城市交通中,它的方便、快速、高效给人们带来了很大便利,这大大改变了人们的生活.研制出一种结构简单、控制有效、行驶安全的城市用无人智能驾驶车辆,将驾驶员解放出来,是大大降低交通事故的有效方法之一,应用现代控制理论设计出很多控制算法,对汽车进行控制是非常必要的,本文以汽车机器人为研究对象,对其进行建模和仿真,研究了其模型的能控能观性
2、、稳定性,并通过极点配置和状态观测器对其进行控制,达到了一定的性能要求。这些研究为以后研究汽车的自动驾驶和路径导航,打下了一定的基础。关键字:建模、能控性、能观性、稳定性、极点配置、状态观测器实用文档目录第一章绪论1第一节概述1第二节任务分工2第二章系统建模22系统建模22.1 运动学模型22.2 自然坐标系下模型42.3 具体数学模型6第三章系统分析73.1 能控性73.1.1 能控性判据73.1.2 能控性的判定83.2 能观性103.2.1 能观性判据103.2.2 能观测性的判定123.3 稳定性133.3.1 稳定性判据133.3.2 稳定性的判定14第四章极点配置154.1 极点配
3、置概念154.2 极点配置算法154.3 极点的配置164.4 极点配置后的阶跃响应17第五章状态观测器185.1 概念195.2 带有观测器的状态反馈20实用文档5.3 代码实现215.4 极点配置和状态观测器比较23第六章总结25参考文献26附件(设计程序)27第一章绪论第一节概述进入20世纪,汽车被广泛的应用于城市交通中,它的方便、快速、高效给人们带来了很大便利,这大大改变了人们的生活.但是随着汽车数量的增加,交通事故的数量每年也不断增长,这严重威胁了人们的生命、财产安全,究其主要原因是由于驾驶员的疲劳驾驶造成的.研制出一种结构简单、控制有效、行驶安全的城市用无人智能驾驶车辆,将驾驶员解
4、放出来,是大大降低交通事故的有效方法之一,也是国内外研究的热点之一。汽车机器人,其模型可简化成两轮的自行车模型,国内的学者在这方面作了很多深入的研究,应用现代控制理论设计出很多控制算法,取得很多成绩,但其中绝大多数应用环境是在室内,被跟踪轨迹已知,并且其控制方法是将车体的横向位移、纵向位移、纵向速度和转动的角速度等作为被控量,这在应用环境异常复杂城市交通系统中是难实现的。城市环境下的无人驾驶车由于速度较慢,因此比较安全可靠,它有广阔的应用前景,短期内,可作为城市大容量公共交通(如地铁等)的一种补充,解决城市区域交通问题,因此,城市环境下的无人驾驶车辆系统的研究已经成为目前的研究热点,但是,由于
5、城市环境非常复杂,对感知和控制算法提出了很高的要求.第二节任务分工本设计由4位同学分工完成,每位同学的任务分工如表1-1所示:姓名学号班级设计分工自动化1班系统建模自动化2班能控性、能观性、稳定性分析自动化2班极点配置自动化1班状态观测器表1-1任务分工表第二章系统建模2系统建模汽车机器人是一种非线性、多变量、强耦合、参数不确定的复杂系统,是检验各种控制方法的一个理想装置,受到广大研究人员的重视,成为具有挑战性的课题之一。为了对其运动进行控制,就需要对汽车机器人进行数学建模。2.1 运动学模型汽车机器人其运动模型如图2-1:图21汽车机器人模型模型中相关参数及意义如下:前后轮间距离;入(力.两
6、前轮中心点的速度;(力)两后轮中心”点的速度;6(0-前轮转向角;。(1)一为车体航向角;(力)-后轮中心点/距X轴距离;y(1)-后轮中心点AZ距y轴距离。假设两个轮子有相同的速度V(尽管在实际情况中,转弯时内轮比外轮慢),一切情况似乎只在位于车轴中心线的两个虚拟轮子上发生口。如下图2-2:由速度合成规则有:VM(O=(Ocos(i)cos(0(1)系统演化的基本方程:6(t)=1va0)sin5(0i(2)方Q)=OMCoSeQ)(3)沙Q)=)sin。)(4)由于前轮加速度和前轮转角的角速度不能无穷大,所以有增补方程:i)S=UiS(5)5(0=u2(t)(6)2.2 自然坐标系下模型自
7、然坐标系的描述如下:原点:在被跟踪轨线上的某一被测到的点;X轴:按右手定则垂直X轴;Y轴:与过该被测点的切线重合,正方向与车体正方向相同。图23自然坐标系下的汽车机器人模型在汽车的运动过程中,能给予直接控制的有两种:前轮的加速度和方向盘的角度。此处6表示前轮与汽车中轴线之间的夹角,也就是方向盘的角度;汽车的位置需要3个量来表示:为汽车中轴线与水平轴线之间的夹角;汽车的位置(立用)(汽车后桥中心的位置);以及汽车方向盘角度6。当汽车在未知道路形状时,切没有GPS可以定位时,对汽车的模型进一步研究。此时,没有了定位系统,只能以自身建立坐标系,y失去了意义,X仍然是与边缘的距离,将上页(1)式子代入
8、(3)(4)式,并去掉y(t),得到:x(t)=VaCOS(Z)COS(Z)(1)A(t)=。4(I)Sin6()/(2)方Q)=3(%)(3)6(。二为(4)2.3具体数学模型取状态变量如下:X1 (i)=叫=。的=。)X4 (i) =5 Q)输入为:前轮加速度功 (力)前轮转角角速度“2 (力)输出为:后轮中心点M距X轴距离UiQ) =CG)Sin0)前轮速度加=。(1)方向盘角度加= 6(。得到状态空间表达式为:AlQ) (0 勾Q) 勿4)0va Q) cos COS。00000Va SilIb 00000000UlQ)_g)_1/sin 0 (Z)0-1的 右 的 l40 0 001
9、 00 1u1 (ty若在元=(5,r2,7,0)m=(0,0)附近线性化该系统,并代入参数v = 7kmhL = 3m ,此时具体的状态空间模型为:FQ-0 7 02 (00 0 0 (00 0 0.14(力)._0 0 00 - 7/300为Q)- 2(t) 的Q) /4。).-0 00 01 00 1_的。)_gQ)- 22。) 的 KIQ) _-100y(t)=Ool000第三章系统分析在本章中,主要对系统进行能控性、能观性及稳定性的判定。其中,能控、能观性有三种判据,本文主要采用了秩判据和约当规范形判据来判定汽车机器人模型是否能控、能观。在稳定性判定中,有很多判定方法,如:特征值判据
10、、李雅普罗夫判据、变量梯度法等,而本文主要采用的是特征值及极点是否有负实部来判定系统是否稳定。3.1 能控性能控性,如果系统内部每个状态变量都可以由输入完全影响,则系统的状态为能控。3.1.1 能控性判据(1)能控性格拉姆矩阵判据考虑连续时间线性时不变系统,状态方程为:i=x+fcu,x(0)=30为完全能控的充分必要条件是,存在时刻tBO,使如下定义的格拉姆(Gram)矩阵JlBBetdt为非奇异。(2)能控性秩判据对n维连续时间线性时不变系统,构成能控性判别矩阵:Q=B:j4B:Ji-1B则系统完全能控的充分必要条件为:ankQc=rankB:AB:-:A1B=Tl(3)能控性PHB秩判据
11、对n维连续时间线性时不变系统,完全能控的充分必要条件为:ranksJ-A,Bn,VsEprankllA,B=,i=lj2,-jn其中,和为复频域,(A=12,,n)为系统特征值。(4)能控性约当规范形判据对n维连续时间线性时不变系统,设n个特征值为;1”小,九为两两相异,则系统完全能控的充分必要条件为,对状态方程通过线性非奇异变换导出的约当规范形为:A100O00。一小00、OT000lv矩阵E不包含零行向量,即B的各个行向量满足:50J=IZIn3.1.2能控性的判定在本文汽车机器人建模的分析中,主要是用MATLAB对系统进行分析。在判断所建模型是否能控方面。MaHab仿真代码如下:Size
12、ofA=Size(八);Tc=ctrb(A,B);电能控性判定矩阵rTc=rank(Tc);电能控性判定矩阵的秩disp(能控性判定矩阵的秩,);rTcdispA的维数,);SizeofAif(rTc=SizeofA)disp(Thesystemiscontrollable,)elsedisp(,Thesystemisuncontrollable,)end其代码运行结果如图3.1所示。能控性判定矩陈的秩:A的维数:SizeofA=Thesystemiscontrollable图3.1能控性MATLAB判定结果由图3.1可得,矩阵A的维数和能控性判定矩阵的维数都是4,因此这个系统是能控的。同时,
13、本文还采用了约当规范形判据,但是由于MATLAB运行出来的约当规范形矩阵不是标准型,无法判断系统的能控性,因此,在本小节中,得出的是进行极点配置后的系统的约当规范形矩阵,如图3.2所示。Gctrljordan=A=Xlx2x3x4Xl-2000x2O-1020Xlx2x3x4x3O-2-100yl0.32820.07110.024030x4O00-2y20001y30.080370.4767-0.032890B=ulu2D=Xl00.7319ulu2x201.067yl00x30-13.15y200x410y300图3.2极点配置后系统的约当规范形由图3.2可得,矩阵A分成了三个约当块。在判断
14、能控性时,是观察每个约当块的末行,对应的B矩阵中的相应行,组成的矩阵是否满足行满秩。若满足,这表示系统完全能控;反之则不可控。根据图中的A、B矩阵,易得该系统是完全可控的。3.2能观性能观测性,如果系统内部每个状态变量都可以由输出完全反映,则系统的状态为能观测。3.2.1能观性判据(1)能观测性格拉姆矩阵判据考虑连续时间线性时不变系统,状态方程为:i=x,x(0)=xft,t0y=Cx为完全能控的充分必要条件是,存在时刻t0,使如下定义的格拉姆(Gram)矩阵WO,t1AJtCCesdt为非奇异。(2)能观测性秩判据对n维连续时间线性时不变系统,构成能控性判别矩阵:CQo=CA或0=C7/C口
15、WTClCAn-则系统完全能控的充分必要条件为:CCArankQo-rank.=nCAnx(4)能观测性PHB秩判据对n维连续时间线性时不变系统,完全能控的充分必要条件为:rankC=w,V5p或4/一/rank=n,i=l,2,w其中,口为复频域,(A=L2,n)为系统特征值。(4)能观测性约当规范形判据对n维连续时间线性时不变系统,设n个特征值为七,小,七为两两相异,则系统完全能控的充分必要条件为,对状态方程通过线性非奇异变换导出的约当规范形为:A100o0A200.00X0000Ae矩阵。不包含零行向量,即。的各个行向量满足:Ci0,i=1,2,-fn3.2.2能观测性的判定能观测性的判
16、定和能观性一样,也是在MATLAB上根据程序进行仿真。以下为MaHab仿真代码:To=obsv(A,C);%能观性判定矩阵rTo=rank(To);告能观性判定矩阵的秩disp能观性判定矩阵的秩,);rTodisp(,A的维数:;SizeofAif(rTo=SizeofA)disp(,Thesystemisobservable)elsedisp(,Thesystemisunobservable,)end代码运行结果如图3.3所示。能观性判定矩陈的秩:rTo=4A的维数:SizeofA=44TheSyStemisobservable图3.3能观测性MATLAB判定结果由图3.3可得,矩阵A的维数
17、和能观测性判定矩阵的维数都是4,因此这个系统是能观测的。采用约当规范形判定能观测性与能控性的判定类似,不过它采用的是A、C矩阵。此时,是观察每个约当块的首列,并取出C矩阵中的相应列,判断组成的矩阵是否列线性无关,若满足列线性无关,则表示系统完全能观测;反之。不能完全观测。由图3.2中的A、C矩阵,容易判断出系统是完全能观测的。3.3稳定性稳定性也是系统的一个基本结构特性,它又可分为基于输入输出描述的外部稳定性,也称BlBO稳定性;和基于状态空间的内部稳定性。其中,对于灵初始条件P维输入和q维输出连续时间线性时不变系统,令初始时刻G=0,则系统BIBO稳定的充分必要条件为:真或严真传递函数矩阵G
18、(三)所有极点均具有负实部。对于内部稳定性,其渐进稳定的充分必要条件为:系统矩阵A所有特征值4(4),1=IZ,U均具有负实部,即下式成立:Re(2,(4)=0z1)disp(Thesystemisunstable!,)re(reO)elsedisp(,Thesystemisstable!,);end名用极点是否具有负实部判断P=poly(八);v=roots(P);Re=real(v);if(isempty(find(Re=0,1)disp(,Thesystemisunstable!,)v(Re0)elsedisp(Thesystemisstable!);end运行结果如图3.4所示。The
19、SySteIIisunstable!ans=空的0X1double列矢里Thesystemisunstable!ans=空的0X1double列矢里图3.4稳定性MATLAB判定结果由图3.4可得,系统的特征值均为0,可判定系统是不稳定的。因此,就需要对系统进行极点配置。后续部分就是对系统进行极点配置以及状态观测器的设置。第四章极点配置4.1 极点配置概念通过比例环节的反馈把定常线性系统的极点移置到预定位置的一种综合原理。极点配置的实质是用比例反馈去改变原系统的自由运动模式,以满足设计规定的性能要求。传统的输出反馈方法虽然也能改变系统极点的位置,但有很大的局限性。对于单输入单输出情况,输出反馈
20、只能使极点在根轨迹曲线上变动,而不能把它们移到其他位置上去(见根轨迹法)。采用状态反馈方法可以实现极点的任意配置。4.2 极点配置算法在MATLAB中常见的极点配置算法有以下四种:(1) acker函数:用法为:K=acker(A,B,P).其中,A、B为系统的状态空间模型矩阵,向量P中是期望的闭环极点位置,返回值是增益向量。(2) PlaCe函数:用法为:K=PlaCe(A,B,P)或K,prec,message=place(A,B,P)其中,A、B为系统的状态空间模型矩阵,向量P中是期望的闭环极点位置,返回值是增益向量。(3)estim函数:用法为:est=estim(sys,L)或est
21、=estim(sys,L,sensors,known)。其中,L是估计器增益矩阵,sys是线性定常系统的状态空间模型,返回值est是模型SyS的状态估计器。参数SenSor和known是向量,它们指定可以测定的输出和已知的输入,产生的估计器est用它们计算输出和状态的估计。(4) reg函数:用法为:rsys=reg(sys,K,L)和rsys=reg(sys,K,L,sensors,known,controls)o其中,K和L分别是状态反馈增益矩阵和估计器增益矩阵.返回值rsys是模型SyS的动态补偿器。向量SenSor和known的作用与函数estim中的参数相同,参数controls指定
22、可控的输入。4.3 极点的配置本系统是多输入多输出系统,所以采用MATLAB中调用PlaCe函数来进行极点配置。其中,将期望极点设置为P=-10+2j,-10-2j,-2,-20以下为实现极点配置的代码:P=-10+2j,-10-2j,-2,-2;K=place(A,B,P);3K为状态反馈矩阵Gpoleconfig=SS(A-B*K,B,C,D);Gpoleconfigminreal=Zpk(minreal(Gpoleconfig);其中ss函数为将线性时不变系统转成状态空间表达,minreal函数消除相同零极点为后面-14-和状态观测器的最小实现使用,ZPk函数为用零点和极点来表示系统的传
23、递函数。可以得到以下结果。8statesremoved.Gpoleconfigniinreal=Frominput2tooutput.16.3331:Frominput1tooutput.(s+2)(s2+20s+104)1:2:s22:3:3:(s+2)(s+2)(s*2+20s+104)Continuous-timezero/pole/gainmodel.图3.2配置后输出结果从上图可以看出,经过极点配置后的极点为10+2j,J0-2j,-2,实现了极点配置。4.4极点配置后的阶跃响应当系统不稳定时,需要配置极点来使其达到稳定状态,当配置完成后是否真正稳定还可以从配置后系统的阶跃响应来得到
24、。以下代码为实现配置后阶跃响应代码:需系统初始化yl_poleconfig,tl_poleconfig,xl_poleconfig=initial(Gpoleconfig,xO_poleconfig,10)官阶跃信号激励y2_poleconfig,t2_poleconfigzx2_poleconfig=step(Gpoleconfigz10);y_poleconfig=yl_poleconfig+y2_poleconfig;t_poleconfig=tl_poleconfig;x_poleconfig =xl_poleconfig+x2_poleconfig;号阶跃响应曲线figure(1);
25、plot(x_poleconfig(:,:,1);gridon;legend(1后轮中心点M距X轴距离I,车体航向角,两前轮中心点的速度,前轮转向角,);xlabel(,t*);ylabel(状态变量阶跃响应,);title(,极点配置状态变量阶跃响应(输入1L);figure(2);plot(x_poleconfig(:,:,2);gridon;legend(后轮中心点M距X轴距离I,车体航向角,两前轮中心点的速度,前轮转向角,);xlabel(,t,);ylabel(状态变量阶跃响应,);Ttler极点配置状态变量阶跃响应(输入2),);下面为运行结果:极点配状态变fit阶跃响位(输入1)
26、2 O?-惠盟 9图4-1输入为前轮加速度时系统的阶跃响应极点但置枳态变盘阶状响应(0入2)6 4 2 0H出含Cra国予O200400600600101200t图4-2输入为前轮转角速度时系统的阶跃响应从图4-1和图4-2可以看出,当系统的加速度变而系统的速度在增加时,系统的各个变量的阶跃响应很快便趋于稳定,由此可以的出本系统是稳定的。第五章状态观测器51概念在实际应用中,并不是所有状态变量的值都是可测的,所以不能直接使用状态变量的反馈。显然地,可以创建一个附加的状态空间模型,使得该模型与对象的状态空间模型(A,B,C,D)完全一致,来重构原系统模型的状态。这样对两个系统施加同样的输入信号,
27、可以指望重构的系统与原系统的状态完全一致。然而,若系统存在某些扰动,或原系统的模型参数有变化时,则重构模型的状态可能和原系统的状态不一致,这样在模型结构中,除了使用输入信号外,还应该使用原系统的输出信号,状态观测器即就是是基于输出的测量和控制变量来估计状态变量2,下图为状态观测器的典型结构:图5-1状态观测器典型结构状态观测器的状态空间表达:X=Ax(t)+Bu-L(Cx+Du-y)=(A-LC)x+(B-LD)u+Ly其中:观测状态变量;权矩阵,用来修正观测状态变量。误差向量:x-x=(A-LC)(i-x)该方程的解析解为兔(力)一2(力)=ed叫娄Qo)-r(i0),因为(4稳定,可以看出
28、巴金。)一“)=。这样,观测出的状态可以逼近原系统的状态。5.2 带有观测器的状态反馈下图为带有观测器的状态反馈控制:图5-2带观测器的状态反馈为了计算出带有观测器的状态反馈控制的状态空间表达,需要将其简化,将状态反馈肠写成两个子系统,分别由和V驱动:图5-3化简过程1结构图中,GI(三)可写成:kl=(A-LC)X,+(B-LD)U7=心IG2(s)可写成:Ii2=(A-LC)X2+Lyy=i2G(三)为被控对象。再进一步化简:图5-4化简过程2GC(三)=/+C;H(三)=G2(三)从而得到:Gc(s)=I-K(sl-A+BK+LC-LDKyBH=G2(s)进而GC(三)的状态空间可写为:
29、x=(A-BK-LC+LDK)x+Bu2 O M 善M*vO200400600a100O1200I图5-6观测器状态变量阶跃响应图(输入为前轮转角角速度)5.4极点配置和状态观测器比较Matlab代码如下:%比较两者的阶跃响应figure(5);plot(tpoleconfig,y2poleconfig(:,2,1),r,tstateobserver,y2stateobserver(:,2,1)b,);gridon;legend(,ypoleconfig,ystateobserver,);xlabel(,t,);ylabel(状态变量阶跃响应,);title(,状态变量阶跃响应,;名比较两者的
30、最小实现Gpoleconfigminreal=Zpk(minreal(Gpoleconfig);Gstateobserverininreal=Zpk(minreal(Gstateobserver);运行结果如下:8statesremoved.Gpoleconfigjninreal=Frominput1tooutput.1: O12: (s+2)3: O图5-7Gstateobserveriiinreal=Frominput1tooutput.2.6237e-15(s+31.46)(s-21.38)(s+2)2(s2+20s+104)(s+2)(s2+20s+104)(s+2)2(s*2+20s
31、+104)-2.8304e-15(s+52.38)(s2+1.09s+1.284)(s+2)2(s2+20s+104)Frominput2tooutput.16.333(s+2)(s*2+20s+104)s2(s+2)(s2+20s+104)Continuous-tiezero/pole/gainModel.极点配置的最小实现Fromirut2toOUtPUt2.2436e-15(s+2)(s2-15.84s+7.28el5)(s+2)2(s2+20s+104)-4.086e-15(s+2)2(s2+20s+104)(s-1.938e-07)(s+l.938e-07)(s+2)3:(s+2)*
32、2(s*2+20s+104)Continuous-timezero/pole/gainmodel.图5-8状态观测器的最小实现由图5-7和图5-8可知,状态观测器比极点配置的最小实现忽略了三个零点,他们的传递函数几乎是一样的,控制效果一致。状痣变成阶跃响度0.450.40.360.30.250.20.151年当WS赵福书图5-9极点配置和状态观测器的阶跃响应从图5-9可以得到,极点配置的阶跃响应和状态观测器的阶跃响应几乎一致,通过状态观测器的状态反馈控制可以和极点配置达到几乎相同的控制效果。第六章总结本次课程设计小组成员都付出了辛勤的努力,从建模到能控性,能观性的分析,从稳定性到极点配置,最后
33、到状态观测器。大家都积极查阅资料并探讨,对线性控制系统这门课程了解更加深入,发现并解决了许多问题。通过本次课程设计,大家也学到了许多知识,如matlab仿真等,每个人都非常有收获。参考文献1法吕克若兰著黄心汉等译.机器人自动化:建模、仿真与控制M.北京:机械工业出版社,2017.5.2薛定宇.控制系统计算机辅助设计一MATLAB语言与应用(第三版)M.北京:清华大学出版社,2012.12.3张志涌,杨祖樱.MATLAB教程M.北京:北京航空航天大学出版社,2015.1.附件(设计程序)%数学模型%A=0,7,0,0;0,0,0,7/3;0,0,0,0;0,0,0,0;B=O,O;O,O;1,O
34、;O,1;C=l,0,0,0;0,0,l,0;050,0,l;D=O;x0-poleconfig=5,pi2,7,0;x0_stateobserver=5,pi/2,7,0,5,pi2,7,0,5,pi2,7,0;G=ss(A,B,C,D);Gl=tf(G);%稳定性%key=isstable(G);%是否稳定1稳定0不稳定%用特征根来判断VV,DD=eig(八);V=diag(DD);re=real(V);if(-isempty(find(re=O,1)disp(,Thesystemisunstable!*)re(reO)elsedisp(,Thesystemisstable!1);end%
35、用极点是否具有负实部判定是否稳定P=poly(八);V=FOOts(P);Re=real(v);if(-isempty(find(Re=O,1)disp(,Thesystemisunstable!*)v(Re0)elsedisp(,Thesystemisstable!*);end%能控性%SizeofA=Size(八);%能控性第一个判据:能控性判定矩阵Tc=ctrb(A,B);%能控性判定矩阵rTc=rank(Tc);%满秩可控,反之不可控%显示能控性判定矩阵的秩dispC能控性判定矩阵的秩:);rTcdisp(,A的维数:);SizeofAif(rTc=SizeofA)disp(,Thes
36、ystemiscontrollable1)elsedisp(,Thesystemisuncontrollable*)end%约旦标准型判据矩阵B不含零行向量%求约旦标准型%Gctrljordan,Tctrl=canon(G,moda);%dispC能控性约旦标准型判据:);GCtrIjOrdan%求能控标准型%Gctrlnorm=sscanfbrm(G,ctr);%能观性%与能控是对偶关系To=obsv(A,C);%能观性判定矩阵rTo=rank(To);%满秩能观,反之不能观dispC能观性判定矩阵的秩:)KTodisp(,A的维数:);SizeofAif(rTo=SizeofA)disp(
37、,Thesystemisobservable)elsedisp(,Thesystemisunobservable)end%约旦标准型判据矩阵C不含零列向量%求约旦标准型%Gobsvjordan,Tobsv=canon(Gmoda);%dispC能观性约旦标准型判据J);GobSvjOrdan%求能观标准型%Gobsvnorm=sscanfbrm(G,obsv,);%极点配置控制器设计%通过向量配置闭环系统极点,P为期望极点稳定性P=-10+2j,-10-2j,-2,-2;K=PlaCe(A,B,P);%状态反馈矩阵GPOleConfig=SS(A-B*K,B,C,D);y1_poleconfig,tl_poleconfig,x1_