基于MATLAB 的线性二次型最优控制设计
1. 引 言
最优控制问题就是寻找一个控制系统的最优控制方案或最优控制规律,使系统能最优地达到预期的目标。以状态空间理论为基础的最优控制算法是当前振动控制中采用最为普遍的控制器设计方法。本文所讨论的系统是完全可观测的,所以可以用线性二次型最优控制。
本实验介绍了线性二次型最优控制的基本原理,并给定了一个具体的控制系统,利用MATLAB 软件对其最优控制矩阵进行了求解,通过仿真实验,设计所得到的线性二次型最优控制效果比较好,达到了设计的目的。
2. 最优控制理论介绍
假设线性时不变系统的状态方程模型为 x ‘(t)=Ax(t)+Bu(t)
y(t)=Cx(t)+Du(t)
引入一个最优控制的性能指标,即设计一个输入量u,使得
J =
为最小。其中Q 和R 分别为对状态变量和输入变量的加权矩阵; t f 为控制作用的终止时间。矩阵S 对控制系统的终值也给出某种约束,这样的控制问题称为线性二次型(Linear Quadratic ,简称LQ )最优控制问题。 为了求解LQ 问题,我们取Hamilton 函数
其中一种较为简便的解法为: 令λ(t)=P(t)x(t)
而将对λ(t)的求解转化到对函数矩阵P(t)的求解`,特别的,将λ(t)=P(t)x(t)
代入
'
(,(),(),())0.5(()()()()()())()(()()()());
LQ ()(()()()());0(()()()()));
()()()()();
T
T T H t x t u t t x t Q t x t u t R t u t t A t x t B t u t H
t Q t x t A t t H Q t x t A t t u x t A t x t B t u t λλδλλδλ
δλδ=+++=-=-+=+=+并应用变分原理推导出问题解满足的必要条件:
上述式子中可得函数矩阵P(t)因满足的微分方程是
1
'()()()()()()()()()()();
().
T T P t P t A t A t P t P t B t R t B t P t Q t P tf S -=--+-= (1)
对它的求解可应用成熟的Euler 方法。假定方程(1)的唯一对称半正定解P(t),则LQ 问题的解u(t)由下式给出:
3. 问题的阐述与解决
3.1.问题的阐述:
dt t u t x t x J )]()()([222210++=?∞
极小[1],并仿真,输出x1、x2、J 的波形。
3.2.问题的求解:
根据系统的状态空间方程,可以看出A=[0 1;0 0], B=[0;1], Q=[1 0;0 1], R=[1]。
控制系统工具箱供了lqr( )函数[4],用来依照给定的加权矩阵设计LQ 最优控制器,该函数的调用格式为 :
[K,P]=lqr(A,B,Q,R)
式中:(A,B )为给定的的对象状态方程模型;(Q,R )分别为加权矩阵Q 和R;返回的向量K 为状态反馈向量,也就是控制器,P 为Riccati 代数方程的解。
^10
-1T ()()()()().
LQ u t)=-Kx(t).K J=(()()()()).
Q R ()`K=R B P P T T T T u t R t B t P t x t x t Qx t u t Ru t dt A P PA -∞
=-++?上述问题的一个特例是动态方程为定常的情形,即相应的控制向量取为(其中,为才是矩阵,而二次性能指标为
这里和是给定的实对称正定或半正定矩阵,它们规定了误差和控制信号能量消耗的模式,在这特别的情形,我们可求出这里满足方程:
10;T PBR B P Q --+=的唯一对称半正定矩阵解
在本题中,可用下面的MATLAB 代码求解K 和P: clear
A=[0 1;0 0]; B=[0;1]; Q=[1 0;0 1]; R=[1];
[K,P] = lqr(A,B,Q,R)
解得: K = [1.0000 1.7321]
?
?
?
???=7321.10000.10000.17321.1P 因此,最优控制信号为
?(t) = -Kx(t) = - x 1(t) - 1.7321x 2(t)
3.3.利用仿真给定的控制系统: 将给定的控制系统进行变形,如下: x1’(t)=x2(t)
x2’(t)=u(t)
u(t)= - x 1(t) - 1.7321x 2(t)
根据以上方程组,利用SIMULINK 对系统进行仿真[2],其中u(t)用x1(t),x2(t)负反馈[3]
表示,dt t u t x t x J )]()()([222210
++=?∞
.最终可做出仿真系统,如图
1所示。
根据状态空间方程,利用SIMULINK 可画出如图1所示的仿真图。
图1仿真图
当K =[1.0000 1.7321],即取最优控制时,运行该仿真,求得J=7.61 ,并得出了x1(t)、x2(t)、J的波形,如图2,图3,图4所示。
图 2 x1(t)的波形图 3 x2(t)的波形
图4 J的波形
由图2,图3可知,系统的状态向量[5][x1(t) ,x2(t)]T 最终趋于0,而二次性能指标J同时趋于稳定值7.61。至此,线性二次型最优控制系统已经仿真完成。
4.结论
本文介绍了线性二次型最优控制的基本原理,并给定了一个具体的控制系统,利用MATLAB软件对其最优控制矩阵进行了求解,最后用SIMULINK对所求解的系统进行了仿真。通过仿真实验,设计所得到的线性二次型最优控制效果比较好,达到了设计的目的。
线性系统理论Matlab实验报告 1、本题目是在已知状态空间描述的情况下要求设计一个状态反馈控制器,从而使得系统具 有实数特征根,并要求要有一个根的模值要大于5,而特征根是正数是系统不稳定,这样的设计是无意义的,故而不妨设采用状态反馈后的两个期望特征根为-7,-9,这样满足题目中所需的要求。 (1)要对系统进行状态反馈的设计首先要判断其是否能控,即求出该系统的能控性判别矩阵,然后判断其秩,从而得出其是否可控; 判断能控程序设计如下: >> A=[-0.8 0.02;-0.02 0]; B=[0.05 1;0.001 0]; Qc=ctrb(A,B) Qc = 0.0500 1.0000 -0.0400 -0.8000 0.0010 0 -0.0010 -0.0200 Rc=rank(Qc) Rc =2 Qc = 0.0500 1.0000 -0.0400 -0.8000 0.0010 0 -0.0010 -0.0200 得出结果能控型判别矩阵的秩为2,故而该系统是完全可控的,故可以对其进行状态反馈设计。 (2)求取状态反馈器中的K,设的期望特征根为-7,-9; 其设计程序如下: >> A=[-0.8 0.02;-0.02 0]; B=[0.05 1;0.001 0]; P=[-7 -9]; k=place(A,B,P) k = 1.0e+003 * -0.0200 9.0000 0.0072 -0.4500 程序中所求出的k即为所求状态反馈控制器的状态反馈矩阵,即由该状态反馈矩阵所构成的状态反馈控制器能够满足题目要求。 2、(a)要求求该系统的能控型矩阵,并验证该系统是不能控的。
目录 题目一 (2) (一)状态反馈加积分器校正的输出反馈系统设计 (2) (1)建立被控对象的状态空间模型,并判断系统性质 (2) (2)状态反馈增益矩阵和积分增益常数的设计 (4) (3)全维观测器设计 (6) (4)如何在闭环调速系统中增加限流环节 (8) (二)二次型最优全状态反馈控制和按负载扰动前馈补偿的复合控制系统设计 (8) (1)线性二次型最优全状态反馈设计 (8) (2)降维观测器设计 (13) 题目二 (15) (1)判断系统是否存在最优控制律 (15) (2)非零给定点的最优控制设计和仿真分析 (16) (3)权矩阵的各权值对动态性能影响分析 (17)
题目一 (一)状态反馈加积分器校正的输出反馈系统设计 (1)建立被控对象的状态空间模型,并判断系统性质 1)画出与题目对应的模拟结构图,如图1所示: 图1原始系统结构图 取状态变量为1x =n ,2x =d I ,3x =d u ,控制输入u=c u 1222212333375375111 T L e la la la s s s C x x T GD GD C x x x x RT T RT K x x u T T ?=-???=--+???=-+?? 将已知参数代人并设输出y=n=1x ,得被控对象的状态空间表达式为 L x Ax Bu ET y Cx =++= 其中,2 37500039.768011=-3.696-17.85727.05600-588.2351 00 T e la la la s C GD C A RT T RT T ???? ? ???????=- -?????? ??????-??? ? ,
一、主动控制简介 概念:结构主动控制需要实时测量结构反应或环境干扰,采用现代控制理论的主动控制算法在精确的结构模型基础上运算和决策最优控制力,最后作动器在很大的外部能量输入下实现最优控制力。 特点:主动控制需要实时测量结构反应或环境干扰,是一种需要额外能量的控制技术,它与被动控制的根本区别是有无额外能量的消耗。 优缺点:主动控制具有提高建筑物的抵抗不确定性地面运动,减少输入的干扰力,以及在地震时候自动地调整结构动力特征等能力,特别是在处理结构的风振反应具有良好的控制效果,与被动控制相比,主动控制具有更好的控制效果。但是,主动控制实际应用价格昂贵,在实际应用过程中也会存与其它控制理论相同的问题,控制技术复杂、造价昂贵、维护要求高。 组成:传感器、控制器、作动器 工作方式:开环、闭环、开闭环。 二、简单回顾主动控制的应用与MATLAB应用 1.主动变刚度A VS控制装置 工作原理:首先将结构的反应反馈至控制器,控制器按照事先设定好的控制算法并结合结构的响应,判断装置的刚度状态,然后将控制信号发送至电液伺服阀以操纵其开关状态,实现不同的变刚度状态。 锁定状态(ON):电液伺服阀阀门关闭,双出杆活塞与液压缸之间没有相对位移,斜撑的相对变形与结构层变形相同,此时结构附加一个刚度; 打开状态(OFF):电液伺服阀阀门打开,双出杆活塞与液压缸之间有相对位移,液压缸的压力差使得液体发生流动,此过程中产生粘滞阻尼,此时结构附加一个阻尼。 示意图如下: 2. 主动变阻尼A VD控制装置 工作原理:变孔径阻尼器以传统的液压流体阻尼器为基础,利用控制阀的开孔率调整粘性油对活塞的运动阻力,并将这种阻力通过活塞传递给结构,从而实现为结构提供阻尼的目的。 关闭状态(ON):开孔率一定,液体的流动速度受限,流动速度越小,产生的粘滞阻尼力越大,开孔率最小时,提供最大阻尼力,此时成为ON状态; 打开状态(OFF):控制阀完全打开,由于液体的粘滞性可提供最小阻尼力。 示意图如下:
线性系统理论实验报告 学院:电信学院 姓名:邵昌娟 学号:152085270006 专业:电气工程
线性系统理论Matlab实验报告 1、由分析可知系统的状态空间描述,因系统综合实质上是通过引入适当状态反馈矩阵K,使得闭环系统的特征值均位于复平面S的期望位置。而只有当特征根均位于S的左半平面时系统稳定。故当特征根是正数时系统不稳定,设计无意义。所以设满足题目中所需要求的系统的期望特征根分别为λ1*=-2,λ2*=-4。 (a) 判断系统的能控性,即得系统的能控性判别矩阵Q c,然后判断rankQ c,若rank Q c =n=2则可得系统可控;利用Matlab判断系统可控性的程序如图1(a)所示。由程序运行结果可知:rank Q c =n=2,故系统完全可控,可对其进行状态反馈设计。 (b) 求状态反馈器中的反馈矩阵K,因设系统的期望特征根分别为λ1*=-2,λ2*=-4;所以利用Matlab求反馈矩阵K的程序如图1(b)所示。由程序运行结果可知:K即为所求状态反馈控制器的状态反馈矩阵,即由该状态反馈矩阵所构成的状态反馈控制器能够满足题目要求。 图1(a) 系统的能控性图1(b) 状态反馈矩阵 2、(a) 求系统的能控型矩阵Q c,验证若rank Q c 线性二次型最优控制 一、最优控制概述 最优控制,又称无穷维最优化或动态最优化,是现代控制理论的最基本,最核心的部分。它所研究的中心问题是:如何根据受控系统的动态特性,去选择控制规律,才能使得系统按照一定的技术要求进行运转,并使得描述系统性能或品质的某个“指标”在一定的意义下达到最优值。最优控制问题有四个关键点:受控对象为动态系统;初始与终端条件(时间和状态);性能指标以及容许控制。 一个典型的最优控制问题描述如下:被控系统的状态方程和初始条件给定,同时给定目标函数。然后寻找一个可行的控制方法使系统从输出状态过渡到目标状态,并达到最优的性能指标。系统最优性能指标和品质在特定条件下的最优值是以泛函极值的形式来表示。因此求解最优控制问题归结为求具有约束条件的泛函极值问题,属于变分学范畴。变分法、最大值原理(最小值原理)和动态规划是最优控制理论的基本内容和常用方法。庞特里亚金极大值原理、贝尔曼动态规划以及卡尔曼线性二次型最优控制是在约束条件下获得最优解的三个强有力的工具,应用于大部分最优控制问题。尤其是线性二次型最优控制,因为其在数学上和工程上实现简单,故其有很大的工程实用价值。 二、线性二次型最优控制 2.1 线性二次型问题概述 线性二次型最优控制问题,也叫LQ 问题。它是指线性系统具有二次型性能指标的最优控制问题。线性二次型问题所得到的最优控制规律是状态变量的反馈形式,便于计算和工程实现。它能兼顾系统性能指标的多方面因素。例如快速性、能量消耗、终端准确性、灵敏度和稳定性等。线性二次型最优控制目标是使性能指标J 取得极小值, 其实质是用不大的控制来保持比较小的误差,从而达到所用能量和误差综合最优的目的。 2.2 线性二次型问题的提法 给定线性时变系统的状态方程和输出方程如下: ()()()()()()()() X t A t X t B t U t Y t C t X t ?=+? =? (2.1) Linear Systems Theory: A Structural Decomposition Approach 线性系统理论: 结构分解法 Ben M. Chen (陈本美) 新加坡国立大学 Zongli Lin(林宗利) 美国弗吉尼亚大学 Yacov Shamash (雅科夫 司马诩) 美国纽约州立大学石溪分校 此书献给我们的家人 前两位作者谨以这中译版献给他们的母校 厦门大学 目录 绪论 1 导论和预览 1.1 背景 1.2 各章预览 1.3 符号和术语 2 数学基础 2.1 导论 2.2 矢量空间和子空间 2.3 矩阵代数和特性 2.3.1 行列式、逆和求导 2.3.2 秩、特征值和约当型 2.3.3 特殊矩阵 2.3.4 奇异值分解 2.4 范数 2.4.1 矢量范数 2.4.2矩阵范数 2.4.3 连续时间信号范数 2.4.4 离散时间信号范数 2.4.5 连续时间系统范数 2.4.6 离散时间系统范数 3 线性系统理论复习 3.1 导论 3.2 动态响应 3.3 系统稳定性 3.4 可控性和可观性 3.5 系统可逆性 3.6 常态秩、有限零点和无限零点3.7 几何子空间 3.8 状态反馈和输出馈入的特性3.9 练习 4 无驱动和/或无检测系统的分解 4.1 导论 4.2 自治系统 4.3 无驱动系统 4.4 无检测系统 4.5 练习 5. 正则系统的分解 5.1 导论 5.2 SISO系统 5.3 严格正则系统 5.4 非严格正则系统 5.5 结构化分解特性的证明 5.6 系统矩阵的Kronecker型和Smith型5.7 离散时间系统 5.8 练习 6 奇异系统的分解 6.1 导论 6.2 SISO奇异系统 6.3 MIMO描述系统 6.4 定理6.3.1的证明和性质 6.5 离散时间奇异系统 6.6 练习 7 双线性变换的结构化映射 7.1 导论 7.2 连续到离散时间系统的映射 7.3 离散时间到连续时间系统的映射7.4 定理7.2.1的证明 7.5 练习 8 系统因子分解 8.1 导论 8.2 严格正则系统 8.3 非严格正则系统 8.4 离散时间系统 8.5 练习 9 通过选择传感器/执行器实现的结构配置9.1 导论 9.2 同时有限和无限零点结构配置 9.2.1 SISO系统 9.2.2 MIMO系统 线性二次型最优控制的MATLAB实现 一理论依据 应用经典控制理论设计控制系统,能够解决很多简单、确定系统的实际设计问题。但对于多输入多输出系统与阶次较高的系统,往往得不到满意的结果,这时就需要有在状态空间模型下建立的最优控制策略。 最优控制是现代控制理论的核心。最优控制理论的实现,离不开一系列的最优化方法,主要包括两个方面就是如何将最优化问题表示为数学模型,如何根据数学模型尽快求出其最优解。线性二次型最优控制设计是基于状态空间技术来设计一个优化的动态控制器,其目标函数是状态和控制输入的二次型函数。二次型问题就是在线性系统约束条件下选择控制输入使二次型目标函数达到最小。由于线性二次型最优控制问题的性能指标具有鲜明的物理意义,其最优解具有统一的解析表达式,且可导致一个简单的线性状态反馈控制律,易于构成闭环最优反馈控制,便于工程实现,因而在实际工程问题中得到了广泛的应用。 二MATLAB程序 >> clear >> syms x1 x2 x3; >> x=[x1;x2;x3]; >> A=[0 1 0;0 0 1;0 -2 -3]; >> B=[0;0;1]; >> R=1; >> Q=[1000 0 0;0 1 0;0 0 1]; >> N=0; >> [K,P,E]=lqr(A,B,Q,R) >> u=-inv(R)*B'*P*x K = 31.6228 19.0661 3.9377 P = 666.1690 219.3906 31.6228 219.3906 108.5284 19.0661 31.6228 19.0661 3.9377 u = -(5366634056803559*x2)/281474976710656 - (4433500461210591*x3)/1125899906842624 - 10*10^(1/2)*x1 三Simulink仿真图及其响应曲线 利用simulink仿真,画出系统反馈前后的仿真图、输出图像和性能指标图。分析分析反馈前后关系曲线。 图1 反馈前系统的仿真图 一. 极点配置原理 假设原系统的状态空间模型为: ???=+=Cx y Bu Ax x 若系统是完全可控的,则可引入状态反馈调节器,且: 这时,闭环系统的状态空间模型为: ()x A BK x Bv y Cx =-+?? =? 二. 状态观测器设计原理 假设原系统的状态空间模型为: ???=+=Cx y Bu Ax x 若系统是完全可观的,则可引入全维状态观测器,且: ??(y y)??x Ax Bu G y Cx ?=++-??=?? 设?x x x =-,闭环系统的状态空间模型为: ()x A GC x =- 解得: (A GC)t (0),t 0x e x -=≥ 由上式可以看出,在t 0≥所有时间内,如果(0)x =0,即状态估计值x 与x 相等。如果(0)0x ≠,两者初值不相等,但是()A GC -的所有特征值具有负实部,这样 x 就能渐进衰减至零,观测器的状态向量?x 就能够渐进地逼近实际状态向量x 。状态逼近的速度取决于G 的选择和A GC -的特征配置。 三. 状态观测的实现 为什么要输出y 和输入u 对系统状态x 进行重构。 u Kx v =-+ 证明 输出方程对t 逐次求导,并将状态方程x Ax Bu =+代入整理,得 2(n 1)(n 2)(n 3)21n n y Cx y CBu CAx y CBu CABu CA x y CBu CABu CA Bu CA x -----=??-=??--=????----=? 将等号左边分别用z 的各分量12,, ,n z z z 表示,有 121(n 1)(n 2)(n 3) 2 n n n y C z y CBu CA z z y CBu CABu x Qx z CA y CBu CABu CA Bu -----?? ???????? -?? ????? ? ? ?????==--==?? ????????????????????----?? ? 如果系统完全能观,则 rankQ n = 即 1?(Q Q)T T x Q z -= (类似于最小二乘参数估计) 综上所述,构造一个新系统z ,它是以原系统的输出y 和输入u ,其输出经过变 换1(Q Q)T T Q -后得到状态向量?x 。也就是说系统完全能观,状态就能被系统的输入输出以及各阶倒数估计出来。 四. 实例 给定受控系统为 再指定期望的闭环极点为12,341,1,2i λλλ*** =-=-±=-,观测器的特征值为 12,33,32i λλ=-=-±,试设计一个观测器和一个状态反馈控制系统,并画出系统 的组成结构图。 []0100000101000100 05 021000x x u y x ???? ????-????=+????????-???? = 连续线性二次型最优控制的MATLAB 实现 1.绪 论 最优控制问题就是在一切可能的控制方案中寻找一个控制系统的最优控制方案或最优控制规律,使系统能最优地达到预期的目标。随着航海、航天、导航和控制技术不断深入研究,系统的最优化问题已成为一个重要的问题。 本文介绍了最优控制的基本原理,并给定了一个具体的连续线性二次型控制系统,利用MATLAB 软件对其最优控制矩阵进行了求解,通过仿真实验,设计得到最优控制效果比较好,达到了设计的目的。 2.最优控制理论介绍 2.1最优控制问题 设系统状态方程为: ]00)(,),(),()(x t x t t u t x f t x ==? (2—1) 式中,x(t)是n 维状态向量;u(t)是r 维控制向量;n 维向量函数[]t t u t x f ),(),(是x(t)、u(t)和t 的连续函数,且对x(t)与t 连续可微;u(t)在[]f t t ,0上分段连续。所谓最优控制问题,就是要寻求最优控制函数,使得系统状态x(t)从已知初态0 x 转移到要求的终态)(f t x ,在满足如下约束条件下: (1)控制与状态的不等式约束 []0),(),(≥t t u t x g (2—2) (2)终端状态的等式约束 []0),(=f f t t x M (2—3) 使性能指标 [][]?+Θ=f f t t t t t u t x F t t x J f 0 d ),(),(),( (2—4) 达到极值。式中[]t t u t x g ),(),(是m 维连续可微的向量函数,r m ≤;[]f f t t x M ),(是s 维连续可微的向量函数,n s ≤;[]f t t x f ),(Θ和[]t t u t x F ),(),(都是x(t)与t 的连续可 《线性系统理论》 设计报告 专业: 学号: 姓名: 教师: 取状态变量为X=[U d,I d,n]T, 则系统的状态空间描述为:{X=AX+Bu+ET l Y=CX 其中A= [?1 T s 0 0 1 T la R ?1 T la ?C e T la R 0 375C T GD2 0] B=[ K s T S ]E=[ ?375 GD2 ] C=[0 0 1 ] 代入数据得:A=[?588.235 0 0 26.709 ?20.833 ?3.678 0 48.821 0 ]B=[ 23529.41 ] 通过matlab检测系统的能控能观性并求出系统的特征值: 对应的matlab程序如下: %原始系统能控能观性判断与特征值求解% A=[-588.235 0 0;26.709 -20.833 -3.678;0 48.821 0]; B=[23529.41 0 0]'; C=[0 0 1]; D=0; disp(eig(A)); % 计算并输出特征值 % sys1=ss(A,B,C,D); Qc=ctrb(A,B); %生成能控性判别矩阵% Qo=obsv(A,C); %生成能观性判别矩阵% if length(A)==rank(Qc) %系统能控性判别% disp('系统完全可控!'); else disp('系统不完全可控!'); end if length(A)==rank(Qo) %系统能观性判别% disp('系统完全可观!'); else disp('系统不完全可观!'); end 运行结果如下: 1.0e+002 * -0.104165000000000 + 0.084297191975771i -0.104165000000000 - 0.084297191975771i -5.882350000000000 系统完全可控! 系统完全可观! 系统特征值实部均为负,由此可知该系统为外部稳定的能控但不能观测系统,设负载转矩为0时,输入为阶跃信号,系统的simulink仿真如下: 兰州理工大学2015级线性系统理论大作业 线性系统理论Matlab 实验报告 1、在造纸流程中,投料箱应该把纸浆流变成2cm 的射流,并均匀喷洒在网状传送带上。为此,要精确控制喷射速度和传送速度之间的比例关系。投料箱内的压力是需要控制的主要变量,它决定了纸浆的喷射速度。投料箱内的总压力是纸浆液压和另外灌注的气压之和。由压力控制的投料箱是个耦合系统,因此,我们很难用手工方法保证纸张的质量。 在特定的工作点上,将投料箱线性化,可以得到下面的状态空间模型: u x x ?? ????+??????-+-=0001.0105.0002.002.08.0. []21,x x y = 其中,系统的状态变量x1=液面高度,x2=压力,系统的控制变量u1=纸浆流量u2=气压阀门的开启量。在上述条件下,试设计合适的状态变量反馈控制器,使系统具有实特征根,且有一个根大于5 解:本题目是在已知状态空间描述的情况下要求设计一个状态反馈控制器,从而使得系统具有实数特征根,并要求要有一个根的模值要大于5,而特征根是正数时系统不稳定,这样的设计是无意义的,故而不妨采用状态反馈后的两个期望特征根为-7,-6,这样满足题目中所需的要求。要对系统进行状态反馈的设计首先要判断其是否能控,即求出该系统的能控性判别矩阵,然后判断其秩,从而得出其是否可控。 Matlab 判断该系统可控性和求取状态反馈矩阵K 的程序,如图1所示,同时求得加入状态反馈后的特征根并与原系统的特征根进行了对比。 图1系统能控性、状态反馈矩阵和特征根的分析程序上述程序的运行结果如图2所示: 图2系统能控性、反馈矩阵和特征根的运行结果 实验二 用MATLAB 处理线性系统数学模型 [说明] 一个控制系统主要由被控对象、测量装置、控制器和执行器四大部分构成。MATLAB 软件的应用对提高控制系统的分析、设计和应用水平起着十分重要的作用。采用MATLAB 软件仿真的关键问题之一是在MATLAB 软件平台上怎样正确表示被控对象的数学模型。 [实验目的] 1.了解MATLAB 软件的基本特点和功能; 2.掌握线性系统被控对象传递函数数学模型在MATLAB 环境下的表示方法及转换; 3.掌握多环节串联、并联、反馈连接时整体传递函数的求取方法; 4. 掌握在SIMULINK 环境下系统结构图的形成方法及整体传递函数的求取方法; 5.了解在MATLAB 环境下求取系统的输出时域表达式的方法。 [实验指导] 一、被控对象模型的建立 在线性系统理论中,一般常用的描述系统的数学模型形式有: (1)传递函数模型——有理多项式分式表达式 (2)传递函数模型——零极点增益表达式 (3)状态空间模型(系统的内部模型) 这些模型之间都有着内在的联系,可以相互进行转换。 1、传递函数模型——有理多项式分式表达式 设系统的传递函数模型为 111011 1......)()()(a s a s a s a b s b s b s b s R s C s G n n n n m m m m ++++++++= =---- 对线性定常系统,式中s 的系数均为常数,且a n 不等于零。 这时系统在MATLAB 中可以方便地由分子和分母各项系数构成的两个向量唯一地确定,这两个向量常用num 和den 表示。 num=[b m ,b m-1,…,b 1,b 0] den=[a n ,a n-1,…,a 1,a 0] 实验一 用MATLAB 处理线性系统数学模型 [说明] 一个控制系统主要由被控对象、测量装置、控制器和执行器四大部分构成。MATLAB 软件的应用对提高控制系统的分析、设计和应用水平起着十分重要的作用。采用MATLAB 软件仿真的关键问题之一是在MATLAB 软件平台上怎样正确表示被控对象的数学模型。 [实验目的] 1.了解MATLAB 软件的基本特点和功能; 2.掌握线性系统被控对象传递函数数学模型在MATLAB 环境下的表示方法及转换; 3.掌握多环节串联、并联、反馈连接时整体传递函数的求取方法; 4. 掌握在SIMULINK 环境下系统结构图的形成方法及整体传递函数的求取方法; 5.了解在MATLAB 环境下求取系统的输出时域表达式的方法。 [实验指导] 一、被控对象模型的建立 在线性系统理论中,一般常用的描述系统的数学模型形式有: (1)传递函数模型——有理多项式分式表达式 (2)传递函数模型——零极点增益表达式 (3)状态空间模型(系统的内部模型) 这些模型之间都有着内在的联系,可以相互进行转换。 1、传递函数模型——有理多项式分式表达式 设系统的传递函数模型为 111011 1......)()()(a s a s a s a b s b s b s b s R s C s G n n n n m m m m ++++++++= =---- 对线性定常系统,式中s 的系数均为常数,且a n 不等于零。 这时系统在MATLAB 中可以方便地由分子和分母各项系数构成的两个向量唯一地确定,这两个向量常用num 和den 表示。 num=[b m ,b m-1,…,b 1,b 0] den=[a n ,a n-1,…,a 1,a 0] Optimal control for stochastic linear quadratic singular system using neural networks N. Kumaresan *, P. Balasubramaniam Journal of Process Control 19 (2009) :Page482–488 使用神经网络对随机线性二次型奇异系统的最优控制N.库玛瑞森博士,P.巴拉苏布拉马尼亚姆过程控制杂志19期(2009年):引用482—488页 摘要 在本文中,最优控制随机线性奇异系统与二次型已经在神经网络领域获得使用。其目的是提供最优控制和努力通过比较矩阵Riccati微分方程(MRDE)的解减少微积分获得了从众所周知的传统Runge-Kutta(RK)方法和传统神经网络 方法。为了获得最优控制,MRDE的解可以通过前向神经网络(FFNN)计算得到。更接近神经网络方法得到的精确解来解决这一问题性能更好。该方法的优点是,一旦网络运行起来,它可以瞬时计算出评估方案在任意点和任意少量的时间和记忆的支出,其计算时间的方法比传统RK方法更快、耗时更短。下面一个数值算例给出了该方法。 关键词:矩阵微分方程;神经网络;最优控制;龙格库塔法;随机奇异线性系统 1 简介 众多学者一直在研究随机线性二次型调节器(LQR)问题[文献2、6、8、15、34]。陈等人[文献12]的研究表明对于随机LQR问题是如果Riccati方程有解,那么可以得到最优反馈控制。关于LQR方面的问题,相关的研究Riccati方程,这是很自然的。然而,对于Riccati方程解的存在性和唯一性,一般来说,由于存在复杂的非线性项,这似乎成为一个很困难的问题。朱和李[文献36]采用迭代方法求解随机LQR问题中Riccati方程的随机性。常规Riccati方程有几种数值方法解,这些可能发生非线性过程基本误差积累。为了使误差最小,最近传统的Riccati方程分析了利用神经网络方法[文献3-5]。本文阐述了扩展的神经网络方法求解随机Riccati方程。 神经网络或简单的神经网络都是计算机系统,它可以通过训练学习两个或多个变量的某种复杂关系或数据集。具有类似于他们的生物学配对物的结构,经过神经网络处理信息和并行分布式简单处理节点连接的计算模型的组成形式[文献33]。神经网络技术已被成功地应用于许多领域,如函数逼近、信号处理和自适应或非线性系统的学习控制。利用神经网络,各式各样的对非线性系统离线学习控制算法已经开发出来[文献21,25]。为求解代数Riccati方程,各种数值算法[文献11]也已经随之开发出来。近年来,神经网络问题已经引起了越来越多的重视,许多研究人员进行了数值代数Riccati方程等方面的研究,见[文献16,17,32]。 奇异系统包含一个混合代数和微分方程组。从这个意义上说,代数方程组代表代数方程限定解的微分部分。这些系统也被称为退化、描述或半状态和广义状态空间系统。奇异系统的复杂本质导致在分析及数值处理这样的系统会遇到许多困难,尤其是在需要对它们的控制时。该系统自然演变成一个线性系统模型或者在许多领域应用的线性系统模型,如:电网、飞机动力学、中立型时滞系统、化学、热扩散过程、大型系统、机器人学、生物等。见[文献9,10,23]。 许多实际过程可以被建成为描述系统模型,如约束控制问题模型,电路模型,某些人口增长模型和奇异扰动模型。由于这样的事实,在过去的几年中,描述系统的稳定性问题以及控制问题已被广泛地研究,即描述系统能够比状态空间系统更好的描述某个物理系统。与状态空间系统相比,描述系统结构更复杂更完善。此外,由于描述系统通常有三种模式,即有限的动态模式、脉冲模式和非动态模式[文献13],研究描述系统的动态性能比对状态空间系统研究困难,而后者两个不出现在状态空间系统。 由于标准二次型性能线性系统的最优控制理论发展迅速,其结果在许多实际设计问题中是最完整、最接近使用。该理论的二次成本控制问题被视为一个更有趣的问题,最小成本最优反馈控制一直是用于求解Riccati方程。Da Prato 和 MATLAB是由美国MathWorks公司发布的主要面对科学计算、可视化以及交互式程序设计的高科技计算环境。MATLAB可以进行矩阵运算、绘制函数和数据、实现算法等,主要应用于工程计算、控制设计、信号处理与通讯、图像处理等领域。 本课程设计就是在MATLAB软件计算环境中,利用其元素集运算和矩阵的运算的功能,绘制出系统各个激励相应的响应图形,通过观察对比实现了对系统线性性质即其齐次性和可加性的验证。 关键词:MATLAB;齐次性;可加性;线性 1课题描述 (1) 2设计原理 (1) 3设计过程 (2) 3.1软件介绍 (2) 3.2设计内容 (3) 3.3设计步骤 (3) 4程序运行结果及分析 (4) 总结 (8) 参考文献 (9) 1课题描述 线性系统是一个既具有分解特性,又具有零状态线性和零输入线性的系统,线性性质(可加性和齐次性)是线性系统所具有的本质特性,线性离散系统的数学模型是线性差分方程。MATLAB 是MATrix LABoratory 的缩写,早期主要用于现代控制中复杂的矩阵、向量的各种运算。MATLAB 以矩阵作为基本编程单元,它提供了各种矩阵的运算与操作,并有较强的绘图功能。 本课题是利用MATLAB 元素集运算和矩阵的运算实现了对系统线性性质(齐次性和可加性)的验证。 开发工具:MATLAB 2设计原理 设计原理如下: 系统的激励()x n 与响应()y n 之间的关系可简记为 ()()y n T x n =???? 式中T 是算子,它的意思是()x n 经过算子T 所规定的运算,得到()y n 。它可理解为,激励()x n 作用于系统所引起的响应为()y n 。线性性质包含两个内容:齐次性和可加性。 设a 为任意常数,若系统的激励()x n 增大a 倍时,其响应()y n 也增大a 倍,即 ()()T ax n aT x n =???????? (2.1) 则称该系统是齐次的或均匀的。 若系统对于激励()1x n 、()2x n 之和的响应等于各个激励所引起的响应之和,即 摘要:本文主要讨论线性系统解集的几何结构与系统能观性、能控性和稳定性之间的关系。这一关系从两个方面来说明,第一部分讲述系统解集几何结构与特征值和特征向量之间的关系,通过Matlab 仿真例子说明这一关系;第二部分分别讲述特征值和特征向量与系统能观性、能控性和稳定性之间的关系,并讲述了能观性,能控性以及稳定性的定义和判据,通过以约旦标准型为例来讲述相同特征值和不同特征值情况下的能观性,能控性,最后在Simulink中仿真一定特征值条件下系统的稳定性。从以上两个方面来说明解集的几何结构与系统能观性、能控性和稳定性之间的关系。 1. 零输入响应解集与特征值和特征向量之间的关系 线性定常系统状态方程x Ax Bu y Cx Du =+?? =+? ,0(0),0x x t =≥的解为 ()00 ()(),0t At A t x t e x e Bu d t τττ-=+≥?。 为了研究线性定常系统状态方程解集的几何结构与线性系统的特征之间的关系,将系统简化,只考虑系统为零输入的状态响应,即x Ax y Cx =?? =? ,0(0),0x x t =≥的解为 0()At x t e x =。 所有的零输入状态响应组成了一个线性空间,且该线性空间中有n 个独立的元素,它们的线性组合决定了所有零输入响应。所以可以通过选择一组线性独立的初始条件得到一组零输入响应集中的基底。 下面先考虑最简单的零输入状态响应集的基底。 若12,,...n λλλ是A 的两两互异的特征值,且12,,...n v v v 是相应的单位特征向量,即,1,2,...i i i Av v i n λ==。选0,1,2,...i x v i n ==,则 0()(...)...... i At At i 2233 i 2233i i i i 2233i i i i i i i t i x t e x e v 11I +At + A t +A t +v 2!3!11 v Av t A v t A v t 2!3!11 v v t v t v t 2!3! e v λλλλ====++++=++++= 所以取01122...n n x v v v ααα=+++时,相应的零输入响应为 121122()...n t t t n n x t e v e v e v λλλααα=+++ 由此可以看出线性定常系统的零输入响应解集的几何结构可以由系统矩阵A 的特征值和特征向量来表征。即其解集由12,,...n v v v 构成的n 维坐标空间的线性组合。 上述结论的Matlab 仿真程序和结果如下: 系统的状态方程为()10122023x x u y x ?-????=+? ? ?-??????=? ,取初始状态x(0)=α1*V 1+α2 *V 2,其 中V 1、V 2为特征值对应的特征向量。 取[α1 α2]=[1 4]。 《线性系统理论基础》实验指导书 嵇启春 西安建筑科技大学信息与控制工程学院 第一章课程简介,实验内容及学时安排 一、课程简介 线性系统理论基础是自动化类专业的主要专业理论课,是现代控制理论的基础。它将使学生们系统地学习并掌握现代控制理论的基本分析和设计方法,为后续专业课程的学习打下良好的基础。教学目标:熟练掌握现代控制基本理论,能运用所学知识进行系统建模、性能分析和综合设计。 《线性系统理论基础实验》是《线性系统理论基础》课程的重要教学环节,是自动化类专业学生必须掌握的教学内容。其目的主要是使学生学习和掌握控制系统基本的分析、设计方法,加深理解线性系统理论的基本知识和原理,增强学生分析问题和解决问题的能力,培养学生的创新意识、创新精神和创新能力,为学生今后从事该领域的科学研究和技术开发工作打下扎实的基础。 二、实验内容及学时安排 本课程的实践环节由必作和选作两类实验构成,对能力较强的学生指导他们课外进行选作实验。目前实验主要基于MATLAB仿真软件进行仿真实验。必作实验为三个,每个实验2学时。要求学生一人一机,独立完成必作的实验,由此使学生得到较全面的基础训练。通过该课程的实验训练,应达到下列要求: 1. 使学生了解MATLAB仿真软件的使用方法,重点掌握MATLAB控制工具箱的使用方法; 2. 通过实验加强对所学理论知识的理解和应用; 3. 实验前预习,实验后按要求撰写实验报告。 第二章 《线性系统理论基础》课程实验 实验一 MATLAB 控制工具箱的应用及线性系统的运动分析 一、实验目的 1、学习掌握MATLAB 控制工具箱中的基本命令的操作方法; 2、掌握线性系统的运动分析方法。 二、实验原理、内容及步骤 1、学习掌握MATLAB 控制工具箱中基本命令的操作 设系统的模型如式(1-1)所示: p m n R y R u R x Du Cx y Bu Ax x ∈∈∈?? ?+=+= (1-1) 其中A 为n ×n 维系数矩阵;B 为n ×m 维输入矩阵;C 为p ×n 维输出矩阵;D 为p ×m 维传递矩阵,一般情况下为0。系统的传递函数阵和状态空间表达式之间的关系如式(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 降幂排列的后,各项系数用向量表示。 [例1.1] 已知SISO 系统的状态空间表达式为(1-3)式,求系统的传递函数。 (1-3) 程序: %首先给A 、B 、C 阵赋值; A=[0 1 0;0 0 1;-4 -3 -2];B=[1;3;-6];C=[1 0 0];D=0; %状态空间表达式转换成传递函数阵的格式为[num,den]=ss2tf(a,b,c,d,u) ,631234100010321321u x x x x x x ???? ??????-+????????????????????---=?????????? []?? ??? ?????=321001x x x y 2014级研究生《线性系统理论》作业 2015.03 一、 已知系统的状态方程为 01000 00010003123122 10 002x x u ???? ????????=+???????????? (1) 求2个不同的反馈阵K ,使得系统的特征值为:43,54j j -±-±; (2) 通过仿真结果说明,取不同反馈阵K 值时,系统的阶跃响应情况。 解: 由于rank[B AB A 2B]=4可知系统完全能控。 方法一:使用直接算法求解反馈阵k : 首先求取系统的特征多项式α(s)=det(sI-A)=s^4-2*s^3-s^2-6*s-6. α*(s)=s^4-18*s^3-146^2-578*s-1025. p=[2;1] 令b=Bp=[0;0;4;2] P=[A 3b A 2b A 1b b]*[1 0 0 0;α3 1 0 0;α2 α3 1 0;α1 α2 α3 1]=????? ???? ???2 4- 2 24 6 0 00 4 6 00 0 4 6 P -1=????? ???????0.2015 0.1493 0.0224- 0.0672- 0.1343- 0.0672 0.0149 0.0448 0.0896 0.0448- 0.1567 0.0299- 0.0597- 0.0299 0.1045- 0.1866 K=[α0*-α0 α1*-α1 α2*-α2 α3*-α3 ]P -1=[-178.4552 15.0149 -16.9328 25.8657] K 1=pk=??? ? ??25.8657 16.9328- 15.0149 178.4552 - 51.7313 33.8657- 30.0299 356.9104- 方法二:龙伯格能控规范型法: [B AB A 2B A 3B]=[b 1 b 2 Ab 1 Ab 2 A 2b 1 A 2b 2 A 3b 1 A 3b 2]= [0 0 0 0 1 2 2 10 0 0 1 2 2 10 5 22 1 2 2 10 5 22 18 66 0 2 0 0 1 2 4 14] 基于此,组成预变换阵P -1并且求出P ,有 P -1=[b 1 Ab 1 A 2b 1 A 3b 1]=[0 0 1 2 Chapter7 线性二次型最优控制 稳定性是控制系统的一个重要指标,还要考虑诸如调节时间、超调、振荡等动态特性以及控制器所消耗的能量等因素。通过极点配置可使系统具有期望的稳定性和动态性能,然而并没有考虑控制的能量代价。用Lyapunov 稳定性理论解决“参数优化问题”,通过选取一个适当的参数,可以在保证系统稳定的前提下,使二次型性能指标最小化,从而使系统的过渡过程具有较好的性能,有必要将这种方法推广到控制器设计。 7.1 二次型最优控制 在控制系统中,为了达到同一个控制目的,可以有多种方案(如多输入系统的极点配置状态反馈控制器是不唯一的),具有最小能量的控制方式更具实际意义。对于 Bu Ax x += Cx y = (7-1) 系统性能和控制能量的要求可以由下列二次型性能指标来描述: ?∞ +=0d ][t Ru u Qx x J T T (7-2) Q 是对称正定(半正定)加权矩阵,R 是对称正定加权矩阵,他们反映了设 计者对状态x 和控制u 中各分量重要性的关注程度。第一项反映控制性能,这一项越小,状态衰减到0的速度越快,振荡越小,控制性能越好;第二项反映对控制能量的限制。通常状态x 衰减速度越快,控制能量越大,这是一个矛盾,最优控制的目的就是寻找Q 、R ,调和上述矛盾,问题归结为,对给定系统(7-1)和保证一定性能指标(7-2)的前提下,,设计一个控制器u ,使J 最小。 若系统的状态是可以直接测量的,且考虑的控制器是状态反馈控制器,则可以证明,使性能指标(7-2)最小化的最优控制器具有以下线性状态反馈形式: Kx u -= (7-3) 将控制器(7-3)代入系统方程(7-1)可得 x BK A x )(-= (7-4) 若系统是渐近稳定的,矩阵BK A -所有特征值均具有负实部,根据线性时不变系统的Lyapunov 稳定性定理,(7-4)一定存在一个正定对称矩阵P 的二次线性二次型最优控制应用举例与仿真
线性系统理论
线性二次型最优控制的MATLAB实现
线性系统极点配置和状态观测器基于设计(matlab) - 最新版本
连续线性二次型最优控制的MATLAB实现
线性系统理论作业
线性系统理论MATLAB大作业.(DOC)
1_用MATLAB处理线性系统数学模型
用MATLAB处理线性系统数学模型
使用神经网络对随机线性二次型奇异系统的最优控制
用MATLAB对系统线性性质的验证
线性系统理论大作业2
线性系统理论基础
研究生线性系统理论
线性二次型最优控制