现代控制理论实验报告材料
现代控制理论实训报告
一、前言随着科技的飞速发展,自动化、智能化已成为现代工业生产的重要特征。
为了更好地掌握现代控制理论,提高自己的实践能力,我参加了现代控制理论实训课程。
本次实训以状态空间法为基础,研究多输入-多输出、时变、非线性一类控制系统的分析与设计问题。
通过本次实训,我对现代控制理论有了更深入的了解,以下是对本次实训的总结。
二、实训目的1. 巩固现代控制理论基础知识,提高对控制系统的分析、设计和调试能力。
2. 熟悉现代控制理论在工程中的应用,培养解决实际问题的能力。
3. 提高团队合作意识,锻炼动手能力和沟通能力。
三、实训内容1. 状态空间法的基本概念:状态空间法是现代控制理论的核心内容,通过建立状态方程和输出方程,描述系统的动态特性。
2. 状态空间法的基本方法:包括状态空间方程的建立、状态转移矩阵的求解、可控性和可观测性分析、状态反馈和观测器设计等。
3. 控制系统的仿真与实现:利用MATLAB等仿真软件,对所设计的控制系统进行仿真,验证其性能。
4. 实际控制系统的分析:分析实际控制系统中的控制对象、控制器和被控量,设计合适的控制策略。
四、实训过程1. 理论学习:首先,我对现代控制理论的相关知识进行了复习,包括状态空间法、线性系统、非线性系统等。
2. 实验准备:根据实训要求,我选择了合适的实验设备和软件,包括MATLAB、控制系统实验箱等。
3. 实验操作:在实验过程中,我按照以下步骤进行操作:(1)根据实验要求,建立控制系统的状态空间方程。
(2)求解状态转移矩阵,并进行可控性和可观测性分析。
(3)设计状态反馈和观测器,优化控制系统性能。
(4)利用MATLAB进行仿真,观察控制系统动态特性。
(5)根据仿真结果,调整控制器参数,提高控制系统性能。
4. 结果分析:通过对仿真结果的分析,我对所设计的控制系统进行了评估,并总结经验教训。
五、实训成果1. 掌握了现代控制理论的基本概念和方法。
2. 提高了控制系统分析与设计能力,能够独立完成实际控制系统的设计。
现代控制理论 实验报告
实验三典型非线性环节一.实验要求1.了解和掌握典型非线性环节的原理。
2.用相平面法观察和分析典型非线性环节的输出特性。
二.实验原理及说明实验以运算放大器为基本元件,在输入端和反馈网络中设置相应元件(稳压管、二极管、电阻和电容)组成各种典型非线性的模拟电路。
三、实验内容3.1测量继电特性(1)将信号发生器(B1)的幅度控制电位器中心Y测孔,作为系统的-5V~+5V输入信号(Ui):B1单元中的电位器左边K3开关拨上(-5V),右边K4开关也拨上(+5V)。
(2)模拟电路产生的继电特性:继电特性模拟电路见图慢慢调节输入电压(即调节信号发生器B1单元的电位器,调节范围-5V~+5V),观测并记录示波器上的U0~U i图形。
波形如下:函数发生器产生的继电特性①函数发生器的波形选择为‘继电’,调节“设定电位器1”,使数码管右显示继电限幅值为3.7V。
慢慢调节输入电压(即调节信号发生器B1单元的电位器,调节范围-5V~+5V),观测并记录示波器上的U0~U i图形。
实验结果与理想继电特性相符波形如下:3.2测量饱和特性将信号发生器(B1)的幅度控制电位器中心Y测孔,作为系统的-5V~+5V输入信号(Ui):B1单元中的电位器左边K3开关拨上(-5V),右边K4开关也拨上(+5V)。
(2)模拟电路产生的饱和特性:饱和特性模拟电路见图3-4-6。
慢慢调节输入电压(即调节信号发生器B1单元的电位器,调节范围-5V~+5V),观测并记录示波器上的U0~U i图形。
如下所示:函数发生器产生的饱和特性①函数发生器的波形选择为‘饱和’特性;调节“设定电位器1”,使数码管左显示斜率为2;调节“设定电位器2”,使数码管右显示限幅值为3.7V。
慢慢调节输入电压(即调节信号发生器B1单元的电位器,调节范围-5V~+5V),观测并记录示波器上的U0~U i图形。
波形如下:。
3.3测量死区特性模拟电路产生的死区特性死区特性模拟电路见图3-4-7。
现代控制理论实验报告
现代控制理论实验指导书实验一:线性系统状态空间分析1、模型转换图1、模型转换示意图及所用命令传递函数一般形式:)()(11101110n m a s a s a s a b s b s b s b s G n n n n m m m m ≤++++++++=----K KMATLAB 表示为:G=tf(num,den),其中num,den 分别是上式中分子,分母系数矩阵。
零极点形式:∏∏==--=n i j mi i ps z s K s G 11)()()( MATLAB 表示为:G=zpk(Z,P ,K),其中 Z ,P ,K 分别表示上式中的零点矩阵,极点矩阵和增益。
传递函数向状态空间转换:[A,B,C,D] = TF2SS(NUM,DEN);状态空间转换向传递函数:[NUM,DEN] = SS2TF(A,B,C,D,iu)---iu表示对系统的第iu个输入量求传递函数;对单输入iu为1;验证教材P438页的例9-6。
求P512的9-6题的状态空间描述。
>> A=[0 1;0 -2];>> B=[1 0;0 1];>> C=[1 0;0 1];>> D=[0 0;0 0];>> [NUM,DEN] = ss2tf(A,B,C,D,1)NUM =0 1 20 0 0DEN =1 2 0>> [NUM,DEN] = ss2tf(A,B,C,D,2)NUM =0 0 10 1 0DEN =1 2 0给出的结果是正确的,是没有约分过的形式P512 9-6>> [A,B,C,D]=tf2ss([1 6 8],[1 4 3])A =-4 -31 0B =1C =2 5D =12、状态方程求解单位阶跃输入作用下的状态响应:G=ss(A,B,C,D);[y,t,x]=step(G);plot(t,x). 零输入响应[y,t,x]=initial(G,x0)其中,x0为状态初值。
现代控制实验报告
现代控制理论实验报告系统的状态空间分析与全维状态观测器的设计一、实验目的1 •掌握状态反馈系统的极点配置;2 •研究不同配置对系统动态特性的影响。
二、实验仪器1 •计算机2. MATLAB 软件三、实验原理一个受控系统只要其状态是完全能控的,则闭环系统的极点可以任意配置。
极点配置有两种方法:①采用变换矩阵T,将状态方程转换成可控标准型,然后将期相等,从而决定状态反馈增益矩阵K;②基于Carlay-Hamilton理论,它指出矩阵㈡满足自身的特征方程,改变矩阵特征多项式:的值,可以推出增益矩阵K。
这种方法推出增益矩阵K的方程式叫Ackermann公式。
四、实验内容1 •试判别下列系统的可控性和可观性:(1) A=[1,2,3;1,4,6;2,1,7]B=[1,9;0,0;2,0];C=[1,0,0;2,1,0]实验程序:a=[1,2,3;1,4,6;2,1,7]b=[1,9;0,0;2,0]c=[1,0,0;2,1,0]n=size(a)uc=ctrb(a,b)uo=obsv(a,c)if ran k(uc)==ndisp('系统可控')elsedisp('系统不可控')end if ran k(uo )==ndisp('系统可观')elsedisp('系统不可观')End实验结果:a =1 2 31 4 62 1 7b =1 90 02 02 1 0n =3uc =1 9 7 9 81 810 0 13 9 155 1532 0 16 18 139 153 uo =1 0 02 1 01 2 39 13 3635 50 141系统可控系统可观(2) A=[-2,2,-1;0,-2,0;1,-4,0]B=[[0;0;1]C=[1,-1,1]程序:A=[-2,2,-1;0,-2,0;1,-4,0];B=[0;0;1];C=[1,-1,1];Qc=ctrb(A,B);n=ran k(Qc);if(n==3),disp('系统可控'); else,disp('系统不可控');end系统不可控Qo=obsv(A,C);m=ra nk(Qo);if(m==3),disp('系统可观');else,disp('系统不可观');end系统不可观2.全状态反馈极点配置设计:设系统的状态方程为:x=Ax+Bu其中,A=[0,1,0;0,0,1;-1,-5,-6]B=[0;0;1]p1=-2+j4、要求:利用状态反馈控制u=-Kx,将此系统的闭环极点配置成p2=-2-j4、p3=-10。
现代控制理论实验报告
倒立摆控制系统实验报告实验一建立一级倒立摆的数学模型一、实验目的学习建立一级倒立摆系统的数学模型,并进行Matlab仿真。
二、实验内容写出系统传递函数和状态空间方程,用Matlab进行仿真。
三、Matlab源程序及程序执行结果⑴Matlab源程序⑵给出系统的传递函数和状态方程传递函数gs(输出为摆杆角度)传递函数gspo(输出为小车位置)状态空间sys(A,B,C,D)⑶给出传递函数极点和系统状态矩阵A的特征值传递函数gs极点P传递函数gspo极点Po系统状态矩阵A的特征值E⑷给出系统开环脉冲响应和阶跃响应的曲线系统开环脉冲响应曲线系统开环阶跃响应曲线四、思考题(1) 由状态空间方程转化为传递函数,是否与直接计算传递函数相等?通过比较,可知传递函数gspo由状态空间方程转化为传递函数时,多了s的一次项,但是系数可以近似为0。
传递函数gs,则完全相等。
所以,状态空间方程转化为传递函数与直接计算传递函数可以认为是相等的。
(2) 通过仿真表明开环系统是否稳定?请通过极点(特征值)理论来分析。
开环系统不稳定。
根据极点理论可知,系统稳定的条件是极点均在左半平面。
但是,系统有一个极点5.4042不在左半平面。
因此,系统不稳定(3) 传递函数的极点和状态方程的特征值的个数、大小是否相等?如果不相等,请解释其原因。
传递函数gspo的极点和状态方程的特征值的个数、大小相等。
但是传递函数gs的极点和状态方程的特征值个数不相等。
因为存在零极点对消。
Matlab源程序:clear all;f1=0.001;%实际系统参数M=1.32;m=0.132;b=0.1;l=0.27;I=0.0032;g=9.8;T=0.02;%求传递函数gs(输出为摆杆角度)和gspo(输出为小车位置)q=(M+m)*(I+m*l^2)-(m*l)^2;num=[m*l/q 0];den=[1 b*(I+m*l^2)/q -(M+m)*m*g*l/q -b*m*g*l/q];gs=tf(num,den);numpo=[(I+m*l^2)/q 0 -m*g*l/q];denpo=[1 b*(I+m*l^2)/q -(M+m)*m*g*l/q -b*m*g*l/q 0];gspo=tf(numpo,denpo);%求状态空间sys(A,B,C,D)p=I*(M+m)+M*m*l^2;A=[0 1 0 0;0 -(I+m*l^2)*b/p m^2*g*l^2/p 0;0 0 0 1;0 -m*b*l/p m*g*l*(M+m)/p 0];B=[0;(I+m*l^2)/p;0;m*l/p];C=[1 0 0 0;0 0 1 0];D=[0;0];sys=ss(A,B,C,D);%通过传递函数求系统(摆杆角度和小车位置)的开环脉冲响应t=0:T:5;y1=impulse(gs,t);y2=impulse(gspo,t);figure(1);plot(t,y2,'b',t,y1,'r');xlabel('t/s');ylabel('Position/m or Angle/rad');axis([0 2 0 80]);legend('Car Position','Pendulum Angle');%将状态空间方程sys转化为传递函数gs0gs0=tf(sys);%通过状态方程求系统(摆杆角度和小车位置)的开环脉冲响应t=0:T:5;y=impulse(sys,t);figure(2);plot(t,y(:,1),t,y(:,2),'r');xlabel('t/s');ylabel('Position/m or Angle/rad');axis([0 2 0 80]);legend('Car Position','Pendulum Angle');%通过传递函数求系统(摆杆角度和小车位置)的开环阶越响应t=0:T:5;y1=step(gs,t);y2=step(gspo,t);figure(3);plot(t,y2,'b',t,y1,'r');axis([0 2.5 0 80]);xlabel('t/s');ylabel('Position/m or Angle/rad');legend('Car Position','Pendulum Angle');%通过状态方程求系统(摆杆角度和小车位置)的开环阶越响应t=0:T:5;y=step(sys,t);figure(4);plot(t,y(:,1),t,y(:,2),'r');xlabel('t/s');ylabel('Position/m or Angle/rad');axis([0 2.5 0 80]);legend('Car Position','Pendulum Angle');%求传递函数极点P=pole(gs);Po=pole(gspo);%求A的特征值E=eig(A);实验二倒立摆系统控制算法的状态空间法设计一、实验目的学习如何使用状态空间法设计系统的控制算法。
南昌大学现代控制理论实验报告
实验报告实验课程:现代控制理论姓名:学号:专业班级:2016年6月实验一系统的能控性与能观性分析一、实验设备PC计算机,MATLAB软件。
二、实验目的①学习系统状态能控性、能观测性的定义及判别方法;②通过用MATLAB编程、上机调试,掌握系统能控性、能观测性的判别方法,掌握将一般形式的状态空间描述变换成能控标准形、能观标准形。
三、实验原理说明参考教材利用MATLAB判定系统能控性”利用MATLAB判定系统能观测性”四、实验步骤①根据系统的系数阵A和输入阵B,依据能控性判别式,对所给系统采用MATLAB编程;在MATLAB界面下调试程序,并检查是否运行正确。
②根据系统的系数阵A和输出阵C,依据能观性判别式,对所给系统采用MATLAB编程;在MATLAB界面下调试程序,并检查是否运行正确。
③构造变换阵,将一般形式的状态空间描述变换成能控标准形、能观标准形。
五.实验例题验证1、已知系数阵A和输入阵B分别如下,判断系统的状态能控性与能观性,,2. 已知系统状态空间描述如下(1)判断系统的状态能控性;(2)判断系统的状态能观测性;(3)构造变换阵,将其变换成能控标准形;(4)构造变换阵,将其变换成能观测标准形;六、实验心得本实验运用MATLAB进行系统能控性与能观性分析,很直观的看到了结果,加深了自己对能控能观的理解,实验过程很顺利,第一个实验还是比较简单的。
实验二典型非线性环节一.实验要求1.了解和掌握典型非线性环节的原理。
2.用相平面法观察和分析典型非线性环节的输出特性。
二.实验原理及说明实验以运算放大器为基本元件,在输入端和反馈网络中设置相应元件(稳压管、二极管、电阻和电容)组成各种典型非线性的模拟电路,模拟电路见图3-4-5 ~ 图3-4-8所示。
1.继电特性理想继电特性的特点是:当输入信号大于0时,输出U0=+M,输入信号小于0,输出U0=-M。
理想继电特性如图3-4-1所示,模拟电路见图3-4-5,图3-4-1中M值等于双向稳压管的稳压值。
现代控制理论实验报告中南大学
中南大学现代控制实验报告指导老师设计者学号专业班级设计日期实验一 用MATLAB 分析状态空间模型1、实验设备PC 计算机1台,MATLAB 软件1套。
2、实验目的① 学习系统状态空间表达式的建立方法、了解系统状态空间表达式与传递函数相互转换的方法;② 通过编程、上机调试,掌握系统状态空间表达式与传递函数相互转换方法。
3、实验原理说明线性系统数学模型的常见的形式有,输入输出模式数学模型(传递函数和微分方程)和状态空间模式数学模型(状态空间表达式或动态方程)。
传递函数模型一般可表示为:若上式中分子分母各项系数为常数,则系统称为线性定常系统(linear time invariant,LTI) 利用下列命令可轻易地将传递函数模型输入MATLAB 环境中。
>>num=[b0,b1,…,bn]; >>den=[1,a1,a2,…,an];而调用tf()函数可构造出对应传递函数对象。
调用格式为: >>G=tf(num,den);其中(num,den)分别为系统的分子和分母多项式系数的向量,返回变量G 为系统传递函数对象。
线性定常系统的状态空间模型可表示为表示状态空间模型的基本要素是状态向量和常数矩阵A ,B ,C ,D 。
用类似的方法可将其输入MA TLAB 环境,对单输入单输出系统,>>A=[a11,a12,…a1n;a21,a22,…a2n;…;an1,an2,…ann]; >>B=[b1;b2;…;bn]; >>C=[c1,c2,…cn]; >>D=d;调用ss()状态方程对象可构造状态方程模型,调用格式如下: >>ss(A,B,C,D)对于两种模型之间的转换,则可分别调用tf()和ss()完成,即: >>G1=tf(G) >>G2=ss(G ’)4、实验步骤① 根据所给系统的传递函数或A 、B 、C 矩阵,依据系统的传递函数阵和状态空间表达式之间的关系式,采用MATLAB 编程。
现代控制理论基础实验报告
现代控制理论基础实验报告专业:年级:姓名:学号:提交日期:实验一系统能控性与能观性分析1、实验目的:1. 通过本实验加深对系统状态的能控性和能观性的理解;2. 验证实验结果所得系统能控能观的条件与由它们的判据求得的结果完全一致。
2、实验内容:1•线性系统能控性实验 2.线性系统能观性实验。
3、实验原理:系统的能控性是指输入信号u 对各状态变量x 的控制能力。
如果对于系统任意的初始状态,可以找到一个容许的输入量,在有限的时间内把系统所有的状态变量转移到状态空间的坐标原 点。
则称系统是能控的。
系统的能观性是指由系统的输出量确定系统所有初始状态的能力。
如果在有限的时间内,根据 系统的输出能唯一地确定系统的初始状态,则称系统能观。
(10-1)i Ly=U c =[01]U c由上式可简写为x Ax bU y cxR 3对于图10-1所示的电路系统,设i L 和u c 分别为系统的两个状态变量,如果电桥中旦R 2 &则输入电压U 能控制i L 和U c 状态变量的变化,此时,状态是能控的;状态变量i L 与U c 有耦合关系, 输出U c 中含有i L 的信息,因此对U c 的检测能确定i L 。
即系统能观的。
R 1 R 3反之,当」时, R 2 R 4变i L 的大小,故系统不能控; 即系统不能观。
Ri R 31.1当13时R 2 R 4电桥中的由于输出R 31( R 1R 2 L (R , R 2R 3 R 4R3R4R 2c 点和d 点的电位始终相等,U c 不受输入U 的控制,u 只能改U c 和状态变量i L 没有耦合关系,故 U c 的检测不能确定i L ,丄(亠亠)C R R 2R 3 R 41 ( R 1R2 L (R R 2R 3 R 4R3R4I L U C(10-2)I LR 2R 1 R 2 i L式中X U C1 (L R 1 R 21 R2 ( —— C R 1 R 2 R3 R 4)R3 R 4R 3 R 4R 1 R 2 1 (L R 1 R 21 1 -( CR 1R 2R3 R 4) R 4 1 )R 3 R 4[0 1]由系统能控能观性判据得 ran k[b Ab] =2c rank cA 故系统既能控又能观。
现代理论控制实验3
ans =3,所以系统是能控的
由Vo=obsv(a,c);rank(Vo)得
ans =3,所以系统是能观的
(2)
a.
选取K=[0 3 0] 为状态反馈矩阵,解得闭环ห้องสมุดไป่ตู้统的零点、极点和传递函数如下
由a=[-3 0 0;0 2 0;0 0 -1];b=[1 1 1]';k=[0 3 0];a1=a+b*k得
三、实验过程及结果
1. 已知系统
(1)求解系统的零点、极点和传递函数,并判断系统的能控性和能观测性。
(2)分别选取K=[0 3 0],K=[1 3 2],K=[0 16 /3–1/3]为状态反馈矩阵,求解闭环系统的零点、极点和传递函数,判断闭环系统的能控性和能观测性。它们是否发生改变?为什么?
(3)任选三个输出反馈矩阵,求解闭环系统的零点、极点和传递函数,并判断系统的能控性和能观测性。它们是否发生改变? 为什么?
[xo,x,t]=simobsv(g1,l);plot(t,x,'-k',t,xo,':r')
观测器观测到的状态如下
其中l=
(4)
三、实验结果
1(1)
系统的零点、极点和传递函数如下
由a=[-3 0 0;0 2 0;0 0 -1];b=[1 1 1]';c=[0.4 0.2667 0.3333];g1=ss(a,b,c,0);g1=tf(g1)得
g1=
由g1=zpk(g1)得
系统的零点为1,-2;系统的极点为-3,-1,2
系统的能控性和能观性判断如下
ans =3,所以系统是能控的
由Vo=obsv(a,c);rank(Vo)得
《现代控制理论》实验报告
.现代控制理论实验报告组员:院系:信息工程学院专业:指导老师:年月日实验1 系统的传递函数阵和状态空间表达式的转换[实验要求]应用MATLAB 对系统仿照[例1.2]编程,求系统的A 、B 、C 、阵;然后再仿照[例1.3]进行验证。
并写出实验报告。
[实验目的]1、学习多变量系统状态空间表达式的建立方法、了解系统状态空间表达式与传递函数相互转换的方法;2、通过编程、上机调试,掌握多变量系统状态空间表达式与传递函数相互转换方法。
[实验内容]1 设系统的模型如式(1.1)示。
p m n R y R u R x DCx y Bu Ax x ∈∈∈⎩⎨⎧+=+= (1.1)其中A 为n ×n 维系数矩阵、B 为n ×m 维输入矩阵 C 为p ×n 维输出矩阵,D 为传递阵,一般情况下为0,只有n 和m 维数相同时,D=1。
系统的传递函数阵和状态空间表达式之间的关系如式(1.2)示。
D B A SI C s den s num s G +-==-1)()()(()( (1.2)式(1.2)中,)(s num 表示传递函数阵的分子阵,其维数是p ×m ;)(s den 表示传递函数阵的按s 降幂排列的分母。
2 实验步骤① 根据所给系统的传递函数或(A 、B 、C 阵),依据系统的传递函数阵和状态空间表达式之间的关系如式(1.2),采用MATLA 的file.m 编程。
注意:ss2tf 和tf2ss 是互为逆转换的指令;② 在MATLA 界面下调试程序,并检查是否运行正确。
③ [1.1] 已知SISO 系统的状态空间表达式为(1.3),求系统的传递函数。
,2010050010000100001043214321u x x x x x x x x ⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡-+⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡-=⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡ []⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡=43210001x x x x y (1.3)程序:A=[0 1 0 0;0 0 -1 0;0 0 0 1;0 0 5 0]; B=[0;1;0;-2]; C=[1 0 0 0]; D=0;[num,den]=ss2tf(A,B,C,D,1)程序运行结果:num =0 -0.0000 1.0000 -0.0000 -3.0000 den =1.0000 0 -5.0000 0 0从程序运行结果得到:系统的传递函数为:24253)(ss s S G --= ④ [1.2] 从系统的传递函数式求状态空间表达式。
现代控制理论实验报告
现代控制理论实验指导书实验一:线性系统状态空间分析1、模型转换图1、模型转换示意图及所用命令传递函数一般形式:)()(1111110nmasasasabsbsbsbsGnnnnmmmm≤++++++++=----MATLAB表示为:G=tf(num,den),其中num,den分别是上式中分子,分母系数矩阵。
零极点形式:∏∏==--=nijmiipszsKsG11)()()(MATLAB表示为:G=zpk(Z,P,K),其中Z,P,K分别表示上式中的零点矩阵,极点矩阵和增益。
传递函数向状态空间转换:[A,B,C,D] = TF2SS(NUM,DEN);状态空间转换向传递函数:[NUM,DEN] = SS2TF(A,B,C,D,iu)---iu表示对系统的第iu个输入量求传递函数;对单输入iu为1;验证教材P438页的例9-6。
求P512的9-6题的状态空间描述。
>> A=[0 1;0 -2];>> B=[1 0;0 1];>> C=[1 0;0 1];>> D=[0 0;0 0];>> [NUM,DEN] = ss2tf(A,B,C,D,1)NUM =0 1 20 0 0DEN =1 2 0>> [NUM,DEN] = ss2tf(A,B,C,D,2)NUM =0 0 10 1 0DEN =1 2 0给出的结果是正确的,是没有约分过的形式P512 9-6>> [A,B,C,D]=tf2ss([1 6 8],[1 4 3])A =-4 -31 0B =1C =2 5D =12、状态方程求解单位阶跃输入作用下的状态响应:G=ss(A,B,C,D);[y,t,x]=step(G);plot(t,x).零输入响应[y,t,x]=initial(G,x0)其中,x0为状态初值。
验证P435的例9-4,P437的例9-5。
9-4A=[0 1;-2 -3];B=[0;0];C=[0 0];D=[0];G=ss(A,B,C,D);[y,t,x]=initial(G,[1;2]);plot(t,x)(设初始状态为[1 ;2])零输入响应00.20.40.60.81 1.2 1.4 1.6 1.82-1-0.50.511.529-5零输入响应A=[0 1;-2 -3];B=[0;1];C=[0 0];D=[0];G=ss(A,B,C,D);[y,t,x]=initial(G,[1;2]);plot(t,x)00.20.40.60.81 1.2 1.4 1.6 1.82-1-0.50.511.52零状态响应,阶跃信号激励下>> A=[0 1;-2 -3];B=[0;1];C=[0 0];D=[0];>> G=ss(A,B,C,D);[y,t,x]=step(G);plot(t,x)00.20.40.60.81 1.2 1.4 1.6 1.8200.050.10.150.20.250.30.350.4总响应>> A=[0 1;-2 -3];B=[0;1];C=[0 0];D=[0];G=ss(A,B,C,D);[y1,t1,x1]=step(G);[y2,t2,x2]=initial(G,[1;2]);>> x=x1+x2;>> plot(t1,x)00.20.40.60.81 1.2 1.4 1.6 1.82-0.500.511.523、系统可控性和可观测性可控性判断:首先求可控性矩阵:co=ctrb(A ,B)。
现代控制理论实验报告
现代控制理论实验报告学院:机电学院学号:XXXXX姓名:XXXXX班级:XXXX实验一 系统的传递函数阵和状态空间表达式的转换一、实验目的1.熟悉线性系统的数学模型、模型转换。
2.了解MATLAB 中相应的函数 二、实验内容及步骤 1.给定系统的传递函数为1503913.403618)(23++++=s s s s s G 要求(1)将其用Matlab 表达;(2)生成状态空间模型。
2.在Matlab 中建立如下离散系统的传递函数模型y (k + 2) +5y (k +1) +6y (k ) = u (k + 2) + 2u (k +1) +u (k ) 3.在Matlab 中建立如下传递函数阵的Matlab 模型⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡+++++++++++=726611632256512)(2322s s s s s s s s s s s s G 4.给定系统的模型为)4.0)(25)(15()2(18)(++++=s s s s s G求(1)将其用Matlab 表达;(2)生成状态空间模型。
5.给定系统的状态方程系数矩阵如下:[]0,360180,001,0100011601384.40==⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡=⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡---=D C B A用Matlab 将其以状态空间模型表示出来。
6.输入零极点函数模型,零点z=1,-2;极点p=-1,2,-3 增益k=1;求相应的传递函数模型、状态空间模型。
三、实验结果及分析 1. 程序代码如下:num = [18 36];den = [1 40.3 391 150]; tf(num,den) ss(tf(num,den))Transfer function:18 s + 36----------------------------s^3 + 40.3 s^2 + 391 s + 150a =x1 x2 x3x1 -40.3 -24.44 -2.344x2 16 0 0x3 0 4 0b =u1x1 1x2 0x3 0c =x1 x2 x3y1 0 1.125 0.5625d =u1y1 0Continuous-time model.2.2.程序代码如下:num=[1 2 1];den=[1 5 6];tf(num,den,-1)运行结果:Transfer function:z^2 + 2 z + 1-------------z^2 + 5 z + 6Sampling time: unspecified3.程序代码如下:num={[1 2 1],[1 5];[2 3],[6]};den={[1 5 6],[1 2];[1 6 11 6],[2 7]};tf(num,den)Transfer function from input 1 to output...s^2 + 2 s + 1#1: -------------s^2 + 5 s + 62 s + 3#2: ----------------------s^3 + 6 s^2 + 11 s + 6Transfer function from input 2 to output...s + 5#1: -----s + 26#2: -------2 s + 74. 程序代码如下:sys=zpk(-2,[-15 -25 -0.4],18)ss(sys)运行结果:1)Zero/pole/gain:18 (s+2)---------------------(s+15) (s+25) (s+0.4)2)a =x1 x2 x3x1 -0.4 1.265 0x2 0 -15 1x3 0 0 -25b =u1x1 0x2 0x3 8c =x1 x2 x3y1 2.846 2.25 0d =u1y1 0Continuous-time model.5.程序代码如下:A=[-40.4 -138 -160;1 0 0;0 1 0];B=[1 0 0]';C=[0 18 360];D=0;ss(A,B,C,D)运行结果:a =x1 x2 x3x1 -40.4 -138 -160x2 1 0 0x3 0 1 0b =u1x1 1x2 0x3 0c =x1 x2 x3y1 0 18 360d =u1y1 0Continuous-time model.6. 程序代码如下:sys=zpk([1 -2],[-1 2 -3],1) tf(sys)ss((sys)运行结果:Zero/pole/gain:(s-1) (s+2)-----------------(s+1) (s+3) (s-2)Transfer function:s^2 + s - 2---------------------s^3 + 2 s^2 - 5 s - 6a =x1 x2 x3x1 -1 2.828 1.414x2 0 2 2x3 0 0 -3b =u1x1 0x2 0x3 2c =x1 x2 x3y1 -0.7071 1 0.5d =u1y1 0Continuous-time model.四、实验总结本次实验主要是熟悉利用matlab建立线性系统数学模型以及模型间的相应转换(如状态空间、传递函数模型等)、并了解matlab中相应函数的使用,如tf、ss、zp2ss、ss2tf等。
现代控制理论实验报告河南工业大学
河南工业大学现代控制理论实验报告姓名:朱建勇班级:自动1306学号: 0601现代控制理论实验报告专业: 自动化 班级: 自动1306 姓名: 朱建勇 学号: 0601 成绩评定:一、实验题目:线性系统状态空间表达式的建立以及线性变换二、实验目的1. 掌握线性定常系统的状态空间表达式。
学会在MATLAB 中建立状态空间模型的方法。
2. 掌握传递函数与状态空间表达式之间相互转换的方法。
学会用MATLAB 实现不同模型之间的相互转换。
3. 熟悉系统的连接。
学会用MATLAB 确定整个系统的状态空间表达式和传递函数。
4. 掌握状态空间表达式的相似变换。
掌握将状态空间表达式转换为对角标准型、约当标准型、能控标准型和能观测标准型的方法。
学会用MATLAB 进行线性变换。
三、实验仪器个人笔记本电脑 Matlab R2014a 软件四、实验内容1. 已知系统的传递函数 (a) )3()1(4)(2++=s s s s G(b) 3486)(22++++=s s s s s G(c) 61161)(232+++++=z z z z z z G(1)建立系统的TF 或ZPK 模型。
(2)将给定传递函数用函数ss( )转换为状态空间表达式。
再将得到的状态空间表达式用函数tf( )转换为传递函数,并与原传递函数进行比较。
(3)将给定传递函数用函数jordants( )转换为对角标准型或约当标准型。
再将得到的对角标准型或约当标准型用函数tf( )转换为传递函数,并与原传递函数进行比较。
(4)将给定传递函数用函数ctrlts( )转换为能控标准型和能观测标准型。
再将得到的能控标准型和能观测标准型用函数tf( )转换为传递函数,并与原传递函数进行比较。
v1.0 可编辑可修改2. 已知系统的状态空间表达式(a) u x x⎥⎦⎤⎢⎣⎡+⎥⎦⎤⎢⎣⎡--=106510 []x y 11=(b) u x x ⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡+⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡---=7126712203010 []111=y (c) u x x ⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡+⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡--=357213********* []x y 101=(d) u x x ⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡+⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡---=011310301100 []x y 210-= (1)建立给定系统的状态空间模型。
现代控制理论试验报告
实验七 状态空间表达与求解的Matlab 实现1、 实验目的了解和熟悉Matlab 关于矩阵运算和状态空间表达及相关运算的常用命令和使用方法,以便在学习过程中能有效地应用Matlab 这个工具解决复杂系统的相关设计运算工作。
2、 实验内容(1)熟悉并使用以下常用的矩阵运算命令及运算符:det; eig; rank; inv; diag(v)和diag(v,k); poly; poly2symexp(A)和expm(A)A^n; A./B ; A.*B; A\B; A\B; A.’; A ’;(注:A ,B 均指任意矩阵)(2)熟悉系统的状态空间表达的Matlab 实现方法(SS 函数与tf 函数的应用和相互转换),并将相应的状态模型在Simulink 中表达成模拟结构图。
(3)利用实验(1)中的相关命令练习将一般的状态空间模型转换为约旦(Jordan )标准型;直接应用函数Jordan(A)求解状态空间的转换矩阵。
(4)利用符号变量和前述的相关函数计算状态方程的非齐次解,解题思路如下:若某系统的状态方程为:u B x A x +=,求系统在单位阶跃作用下的状态响应解,设初始状态为)0(x ,输入量为:)(1)(t t u = ,应用Matlab 的求解过程为:Syms t sExp1=expm(A*t)*x0;Exp2=int(expm(a*(t-s))*B*u,s,0,t);最后的总解:X=Exp1+Exp2;(5) 若只需知道已知系统各状态量随时间的响应曲线,则可以直接应用Simulink 进行仿真,也可以通过直接建立SS 模型,再利用系统响应函数(如:step,initial,lsim )获取状态响应值(曲线),后者代码可如下操作:已知系统为: u B x A x +=,u D x C y +=G=ss(A,B,C,D); [y,t,x]=lsim(G,u,t); //求任意输入响应,注:A,B,C,D,u,t 等应先赋值 G=ss(A,B,C,D); [y,t,x]=step(G,t); //阶跃响应G=ss(A,B,C,D); [y,t,x]=initial(G,x0,t); //零输入响应,x0为初始状态plot(t,x) //画出状态响应曲线实验报告(七)——状态空间表达于求解的Matlab 实现班级 自动化92 姓名 杨孝凌 学号32209209一、 已知系统的状态空间表达为:u x x ⎥⎦⎤⎢⎣⎡+⎥⎦⎤⎢⎣⎡--=023120 ,⎥⎦⎤⎢⎣⎡=11)0(x 试用Matlab 求出系统单位阶跃下的状态解,写出实现过程的相应代码。
(完整word版)现代控制理论实验报告(word文档良心出品)
现代控制理论实验报告二〇一六年五月实验一 线性定常系统模型一 实验目的1. 掌握线性定常系统的状态空间表达式。
学会在MATLAB 中建立状态空间模型的方法。
2. 掌握传递函数与状态空间表达式之间相互转换的方法。
学会用MATLAB 实现不同模型之间的相互转换。
3. 熟悉系统的连接。
学会用MATLAB 确定整个系统的状态空间表达式和传递函数。
4. 掌握状态空间表达式的相似变换。
掌握将状态空间表达式转换为对角标准型、约当标准型、能控标准型和能观测标准型的方法。
学会用MATLAB 进行线性变换。
二 实验内容1. 已知系统的传递函数)3()1(4)(2++=s s s s G (1)建立系统的TF 或ZPK 模型。
(2)将给定传递函数用函数ss( )转换为状态空间表达式。
再将得到的状态空间表达式用函数tf( )转换为传递函数,并与原传递函数进行比较。
(3)将给定传递函数用函数jordants( )转换为对角标准型或约当标准型。
再将得到的对角标准型或约当标准型用函数tf( )转换为传递函数,并与原传递函数进行比较。
(4)将给定传递函数用函数ctrlts( )转换为能控标准型和能观测标准型。
再将得到的能控标准型和能观测标准型用函数tf( )转换为传递函数,并与原传递函数进行比较。
2. 已知系统的传递函数u x x ⎥⎦⎤⎢⎣⎡+⎥⎦⎤⎢⎣⎡--=106510 []x y 11=(1)建立给定系统的状态空间模型。
用函数eig( ) 求出系统特征值。
用函数tf( ) 和zpk( )将这些状态空间表达式转换为传递函数,记录得到的传递函数和它的零极点。
比较系统的特征值和极点是否一致,为什么?(2)用函数canon( )将给定状态空间表达式转换为对角标准型。
用函数eig( )求出系统特征值。
比较这些特征值和(1)中的特征值是否一致,为什么? 再用函数tf( )和zpk( )将对角标准型或约当标准型转换为传递函数。
比较这些传递函数和(1)中的传递函数是否一致,为什么?(3)用函数ctrlss( )将给定的状态空间表达式转换为能控标准型和能观测标准型。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验一线性控制系统状态空间法分析第一部分 线性控制系统状态空间模型的建立及转换、实验目的例拎制系统傲分力程湖I ioy r 3 k SOy +- it \- 7ii \ 24/i r求共抉态空间表达式口1掌握线性控制系统状态空间模型的建立方法。
2掌握MATLAB^的各种模型转换函数。
二、 实验项目1已知系统的传递函数求取其状态空间模型。
2 MATLAB 中各种模型转换函数的应用。
3连续时间系统的离散化。
三、 实验设备与仪器1、 计算机2、 M ATLAB^件四、 实验原理及内容 (一) 系统数学模型的建立1、 传递函数模型一tf功能:生成传递函数,或者将零极点模型或状态空间模型转换成传递函数模型。
格式:G=tf(num,den)其中,(num,den )分别为系统的分子和分母多项式系数向量。
返回的变量G 为传递函数对象2、 状态方程模型 一ss功能:生成状态方程,或者将零极点模型或传递函数模型转换成状态方程模型。
格式:G=ss(A,B,C,D)其中,A,B,C,D 分别为状态方程的系统矩阵、输入矩阵、输出矩阵和前馈矩阵可以先将其转挽成传递函数j 4 + 1O.53 ++5OJ. + 24输入下列命令 [1 T 24 24] : den= [1 1O 35 50 24 ]: % 分子、分母参项式 Cnum, 壮7; 算趺禅徐统的侵遴函皴梗型E3<s= ss (G)语句执行结果为M 2X3一氢1B8-O 7813-0 1875O O O 4 O O 02OxZ sc3 ulO 010^00 XII3、零极点模型一zpk功能:生成零极点模型,或将状态方程模型或传递函数模型转换成零极点模型格式:G=zpk(z, p, K)其中,乙p,K分别表示系统的零点、极点和增益。
【例】:G=tf([-10 20 0],[1 7 20 28 19 5])sys=zpk(G);G=tf([-10 20 0],[1 7 20 28 19 5])Tran sfer fun cti on:-10 s A2 + 20 ss A5 + 7 sA4 + 20 sA3 + 28 sA2 + 19 s + 5 >> sys=zpk(G)Zero/pole/ga in:-10 s (s-2)(s+1)A3 (sA2 + 4s + 5)c = a =xi x2 x3yl 1 0 4375 0.375 0. 1875 y i 0Contimodel.(二)连续时间系统离散化函数名称:c2d格式:G=c2d(G1,Ts),其中Ts为采样周期。
功能:连续时间系统离散化。
要求:先进行理论求解,再与仿真结果相比较。
【例】试写出连续时间系统采样周期为T的离散化状态方程。
1、理论求解解:先求e At所以:2、M ATLAB仿真程序及运行结果(自己编写程序并调试运行)>> A=[0 1;0 -2];>> B=[0;1];>> T=0.1;>> [G1 H1]=c2d(A,B,T)G1 =1.0000 0.09060 0.8187H1 =0.00470.0906 3、分析这里T=0.1;综上所述说明用MATLAB 仿真与理论计算相同,MATLAB 仿真是正确的。
(三) 状态空间表达式的线性变换函数名称:ss2ss功能:完成状态空间表达式的线性变换。
例: >> a=[0 1 0;0 0 1;2 3 0];>> b=[0;0;1]; >> c=[1 0 0];>> p=[1 ;0 1;-1 1 2;1 -2 4]; >> G1= ss(a,b,c,0);d = u1 y1 0Con ti nuous-time model. >>五、思考题1 MATLAB 中的函数其实都是一些子程序,那么其 ss2tf ()函数是如何编写的? 答:A=;B=;C=;D=;Sys=ss(A,B,C,D); G=tf(Sys)2在MATLAB 中对连续系统进行离散化有何现实意义?答:用数字计算机求解连续系统方程或对连续的被控对象进行计算机控制时,由于数字计算机运算和处理均用数字量,这样就必须将连续系统方程离散化。
在MATLAB 中对连续系统进 行离散a = x1 x2 x3 x1-11 0 x2 1.665e-016 -1 0 x3 02b =u1x1 -0.1111x2 -0.3333x3 0.1111c = x1 x2 x3yi i>> G=ss2ss(G1,i nv(p)) 1 0格式:G=ss2ss(G1,inv(P)) 其中inv(p)为变换阵p 的逆阵。
化,能够使得计算机能求解连续系统方程或对连续的被控对象进行控制。
第二部分线性控制系统能控性、能观性和稳定性分析一、实验目的1掌握线性控制系统能控性和能观测性的判别方法,了解不可控系统或不可观测系统的结构分解方法。
2掌握控制系统在李亚普诺夫意义下的稳定性的分析方法。
二、实验项目1运用MATLA分析给定系统的能控性和能观测性。
2系统的结构分解。
3运用MATLA分析分析给定系统的稳定性。
三、实验设备与仪器1、计算机2、M ATLA软件四、实验原理及内容(一) 系统可控性和可观测性判别1、可控性判别⑴可控性判别矩阵co=ctrb(a,b)或co=ctrb(G)⑵如果rank(co)=n,则系统状态完全可控。
2、可观测性判别⑴可观测性判别矩阵ob=ctrb(a,c)或ob=ctrb(G)⑵如果rank(ob)=n,则系统状态完全可观测(二)稳定性分析设系统的状态方程为: 试确定系统在平衡状态处的稳定性。
五、实验报告要求将调试前的原程序及调试后的结果要一起写到实验报告上举例如下:>> A=[1 0 -1;-1 -2 0;3 0 1];>> B=[1 0;2 1;0 2];>> C=[1 0 0;0 -1 0];>> Q仁ctrb(A,B)Q1 =101-2-2-421-5-29602326-4>>Q2=obsv(A,C)Q=21000-1010-1120-20-2-1-4-1>>R1=ra nk(Q1)R1=3>>R2=ra nk(Q2)R2 =3从计算结果可以看出,系统能控性矩阵和能观测性矩阵的秩都是3,为满秩,因此该系统是能控的,也是能观测的。
六、实验总结:通过本次实验,我们学会线性控制系统状态空间模型的建立方法及MATLAB^的各种模型转换函数,以及线性控制系统能控性和能观测性的判别方法。
实验二状态反馈控制系统的设计第一部分基于MATLAI和极点配置法状态反馈控制系统的设计一、实验目的1掌握极点配置法的基本思想。
2利用MATLAB^的函数设计状态反馈控制系统。
二、实验项目运用MATLAB口极点配置法设计状态反馈控制系统。
三、实验设备与仪器1、计算机2、M ATLAB件四、实验原理及内容1、SISO系统极点配置一acker格式:k=acker(a,b,p)说明:acker函数可计算反馈增益矩阵K。
其中K为行向量,p为由期望极点构成的行向量。
【例】:已知系统动态方程为试用MATLAB编程设计反馈增益矩阵K,使闭环极点配置在-2,-1+j,-1-j。
解:首先判断系统的能控性,输入以下语句A=[0 1 0;0 0 1;0 -2 -3];>> B=[0;0;1];>> R=ra nk(ctrb(A,B))R = 3这说明系统能控性矩阵满秩,系统能控,可以应用状态反馈,任意配置极点。
A=[0 1 0;0 0 1;0 -2 -3];>> B=[0;0;1];>> C=[10 0 0];>> P=[-2 -1+j -1-j];>> K=place(A,B,P)K = 4.0000 4.0000 1.00002、MIMO系统极点配置一place格式:k=place(A,B,p)五、实验报告要求要从理论上分析极点配置的过程,并将调试前的原程序及调试后的结果要一起写到实验报告上。
六、思考题1极点配置法的基本思想和设计思路是什么?答:状态反馈系统的稳定性和瞬态性能主要是由系统极点决定的。
如果引入状态反馈将系统的极点配置在s左半平面的希望位置上,则可以得到满意的系统特性,一个系统引入状态反馈可以任意配置极点的条件是原系统能控。
2如何验证设计出的系统是否达到了设计要求?答:看配置的极点是否在s左半平面的希望位置上.第二部分极点配置全状态反馈控制系统的设计一、实验目的1学习并掌握用极点配置法来设计全状态反馈控制系统2用软件仿真方法研究参数对系统性能的影响。
二、实验仪器与设备计算机一台、MATLAB软件。
三、实验内容1设计典型二阶系统的极点配置全状态反馈控制系统,并进行软件仿真研究。
2设计典型三阶系统的极点配置全状态反馈控制系统,并进行软件仿真研究。
四、实验步骤1典型二阶系统(1)对一已知二阶系统(图5-1)用极点配置方法设计全反馈系数。
(2)参照图5-2,图5-3,软件仿真其阶跃响应。
(3)改变系统电路,使系统恢复到图5-1所示情况,软件仿真其阶跃响应。
(4)对实验结果进行比较、分析,并完成实验报告。
2典型三阶系统(1)对一已知三阶系统(图5-4)用极点配置方法设计全反馈系数。
(2)参照图5-7,图5-8,软件仿真其阶跃响应。
(3)改变系统电路,使系统恢复到图5-6所示情况,软件仿真其阶跃响应。
五、实验原理1典型二阶系统全状态反馈的极点配置设计方法(1)被控对象状态方程与能控性若被控系统(A、B、C)完全能控,则通过状态反馈可以任意配置极点,取图5-1所示系统为实验系统。
1由图可见系统的开环传递函数为G s 1,取图中X-X2为状态变量,将系统开环传s(0.05s +1 )递函数表示为被控对象状态方程S (A、B、C),可以得:故有:RankW c = Rank B ' AB 】=Rank |° 2°1 = 2c J 0 一可见状态完全能控。
(2)理想极点配置期望的性能指标为:超调量空25%,峰值时间t^ 0.5秒。
由经典控制理论可知:<25%,选择阻尼比上-0.707。
t p 0.5s,曾J i-纤系统的理想特征方程为:s •2',n S 」’n=S - 14.14s - 100。
(3)状态反馈系数的确定加入全状态反馈后的系统特征方程为: 配置理想极点,则有: 于是可以计算出:K = k10.9 -5.91按极点配置设计的具有全状态反馈的系统结构如图 5-2所示。