logo资料库

MATLAB实现状态观测器.pdf

第1页 / 共6页
第2页 / 共6页
第3页 / 共6页
第4页 / 共6页
第5页 / 共6页
第6页 / 共6页
资料共6页,全文预览结束
实验 5 利用 MATLAB 设计状态观测器 5.1 实验设备 同实验 1。 5.2 实验目的 1、学习观测器设计算法; 2、通过编程、上机调试,掌握基于观测器的输出反馈控制系统设计方法。 5.3 实验原理说明 5.3.1 全阶观测器设计 考虑如下的线性时不变系统 + Bu x& y = = Ax Cx (5.1) ⎧ ⎨ ⎩ y 和 分别是系统的 维状态向量、 m 维控制输入向量和 维测量输出向量, ux, 其中: CBA, 和 是已知的适当维数常数矩阵。根据系统模型(5.1)和输入输出信息来人为地构 造一个系统,使得其输出 随着时间的推移逼近系统的真实状态 p n ,即 )(~ tx )(tx )(~[ x t lim t ∞→ − x ( t )] = 0 )(~ tx 通常称 观测器。 为 )(tx 的重构状态或状态估计值,而这个用以实现系统状态重构的系统为状态 龙伯格观测器具有以下结构: u y + Bu x =& y = Ax Cx L = ~ ~& xAx + Bu x~ y~ C - 图 5.1 状态估计的闭环处理方法 L 其中的矩阵 是误差信号的加权矩阵。观测器模型是 ( − Bu ~ ~& xAx A + − = = ( )~ xCyL Ly + Bu + ~) xLC pn× 维的待定矩阵。 + x~ e 状态估计误差 n ~−= xx e & 其中: 是观测器的 维状态, L 是一个 的动态方程: ~ xx −= & & Ax = + Ax = − A ( = − Bu − A ( − eLC ) 16 (5.2) ~) A xLC ( − − ~) xLC LCx − Bu − Ly (5.3)
A − LC 根据线性时不变系统的稳定性结论,若矩阵 A − LC 矩阵 任意的初始误差 的所有特征值均在左半开复平面中,即 的所有特征值都具有负实部,则误差动态系统(5.3)是渐近稳定的,从而对 ,误差向量 都将趋向于零。即无论系统的初始状 ,随着时间 ∞→t )0(e )0(x 是什么,状态估计模型(5.2)的初始状态 态 态估计模型(5.2)的状态 LC L 只要通过适当选取矩阵 ,使得矩阵 型(5.2)就是系统(5.1)的一个状态观测器。 可以任意选取,随着时间的推移,状 x~ 将趋于系统的实际状态,从而实现系统状态的重构。由此可见, 的所有特征值都具有负实部,则状态估计模 A − )(te )0(~x 由极点配置和观测器设计问题的对偶关系,也可以应用 MATLAB 中极点配置的函数来 确定所需要的观测器增益矩阵。例如,对于单输入单输出系统,观测器的增益矩阵可以由函 数 L=(acker(A’,C’,V))’ 得到。其中的 V 是由期望的观测器极点所构成的向量。类似的,也可以用 L=(place(A’,C’,V))’ 来确定一般系统的观测器矩阵,但这里要求 V 不包含相同的极点。 5.3.2 降阶观测器设计 假定系统(5.1)的矩阵C 具有形式 1[ 0 ](对一般结构的矩阵 ,需要作适当的变换)。 C 根据矩阵C 的结构,将系统状态 分划成两部分: ⎤ ⎥ ⎦ ax x b ⎡ ⎢ ⎣ = x x 其中的 是一个标量。由 ax y = Cx = ⎡ ]01[ ⎢ ⎣ x x a b ⎤ =⎥ ⎦ x a ax 可知: 恰好是系统的输出,它能被直接测量得到。 是bx 1−n 维向量,是状态向量中不能 A B 直接测量的部分。将状态空间模型(5.1)中的矩阵 和 作相应的分块,则该状态空间模 型可以写成 x & x & ⎡ ⎢ ⎣ a b ⎤ =⎥ ⎦ A aa A ba ⎡ ⎢ ⎣ A A ab bb x x ⎤ ⎥ ⎦ ⎡ ⎢ ⎣ a b ⎤ +⎥ ⎦ B B ⎡ ⎢ ⎣ a b ⎤ ⎥ ⎦ u (5.4) bx 其中的 是要估计的状态,将已知信号和未知信号分离,可以得到 ) Α + + x ( uB b ba a b x & xA bb xAuB ab = = a b b x & a − xA aa a − 进而,将其和全阶观测器设计时的标准模型(5.2)相比较,可得以下对应项之间的关系: 表 5.1 状态空间模型的对应关系 全阶观测器 降阶观测器 x~ A Bu y bx~ bbA A bax + a uB b x −& a xA aa a − uBa 17
C L ( 1×n 维矩阵) abA ×−n 1)1 L ( ( 维矩阵) 根据上表给出的对应关系及全阶观测器的模型 ~) xLC − + Bu + yL (~& Ax = bx 可以得到估计不可直接测量状态 的观测器 x ~) Ax b LA A ~ x & − = + bb ( b + LuB + ( ab ( 5.5) ax 然而,方程(5.5)还不是所要的降阶观测器。因为在方程(5.5)中,用到了 的微分。 ax 由于 就是测量输出信号,而测量信号往往含有噪声和误差,对这样的信号进行微分会放 大噪声和误差,这在实际应用中是应该避免的。因此有必要消除式(5.5)中的 。 ax& 通过将式(5.5)中的微分项放在一起可以克服上面讲到的困难,即得到: ba a a b a xA aa − uB a ) x & − x &% b − y L & = 定义 则式(5.6)可以写成 (A − bb (B + b LA )(x % b ab LB )u − a − y L ) + [(A − bb LA )L A + ab − A y L ] aa ba ( 5.6) b x L y = − ~ L x y − = b LA A − ˆ ALA + ba LB B − bb a b w ~ w ˆ A = ab L A − aa ˆ F = ˆ B = ~ ˆ BwAw & ~ˆ + = y + ˆ uF (5.7) 式(5.7)就是要设计的降阶观测器,不可直接测量的状态分量 的估计量由下式给出: bx ~ x b = ~ Lw + y 由于 记 则 ~ x = x ~ x ⎡ ⎢ ⎣ a b ⎤ =⎥ ⎦ ⎡ ⎢ ⎣ y + ~ Lw y ⎤ =⎥ ⎦ ~0 ⎤ w +⎥ I ⎦ ⎡ ⎢ ⎣ 1 L ⎡ ⎢ ⎣ ⎤ ⎥ ⎦ y ˆ C = 0 I ⎡ ⎢ ⎣ ⎤ ⎥ ⎦ , ˆ D = 1 L ⎡ ⎢ ⎣ ⎤ ⎥ ⎦ 上式用降阶观测器的状态 和测量值 给出了系统状态 的估计值 x~ 。 w~ = ~ˆ ~ ˆ yDwCx y + x 基于状态估计值的反馈控制器是 = − = − − 因此,基于降阶观测器的输出反馈控制器是 Kx % K w (K u % b + K L) b y a ~ ⎧ LKKFBwKFAw& ⎪ ⎨ u ⎪⎩ ˆ( = − LKKwK −= ˆ − (~ − ˆ[~) (ˆ y ) + + + b a b b a b 18 )] y (5.8)
基于降阶观测器的输出反馈控制系统结构图如下: u B x ∫ y C A Fˆ ∫ Aˆ w~ Bˆ 降 阶 观 测 器 x~ -K Cˆ Dˆ 图 5.2 基于降阶观测器的反馈控制系统 容易证明,误差向量 e = x b − ~ ~ wwx = − b Ae =& bb − ( 满足方程 e LA ) ( A (5.9) 完全能观,则一定可以通过选取一个适当的矩阵 L ,使得误差动态系 因此,若 统(5.9)具有任意给定的极点,这样的矩阵 L 可以应用全阶观测器的设计方法来设计。矩 阵 也称为是系统的降阶观测器增益矩阵。 ab A , ab bb ) L 对于降阶观测器的设计,使用 MATLAB 软件中的函数 L=(acker(Abb’,Aab’,V))’ 或 L=(place(Abb’,Aab’,V))’ 可以得到观测器的增益矩阵 。其中的 V 是由降阶观测器的期望极点所组成的向量。 5.4 实验步骤 L 1、基于观测器的输出反馈控制系统的设计,采用 MATLAB 的 m-文件编程; 2、在 MATLAB 界面下调试程序,并检查是否运行正确。 例 5.1 给定线性定常系统 0 0 ⎡ ⎢ ⎢ 244.1 ⎢ ⎣ [ 001 x =& y = 1 0 3965 .0 ]x 0 ⎤ ⎥ 1 ⎥ 145.3 ⎥ ⎦ − x + 0 0 ⎡ ⎢ ⎢ 244.1 ⎢ ⎣ ⎤ ⎥ ⎥ ⎥ ⎦ u 试应用 MATLAB 软件,设计一个全维观测器,使得观测器极点是 j−−=μ −=μ 35 10 。 , 5 1 3 j+−=μ 5 1 35 , 配置全阶观测器极点的M-文件为: a=[0 1 0;0 0 1;1.244 0.3965 -3.145]; 19
b=[0;0;1.244]; c=[1 0 0]; v=[-5+j*5*sqrt(3) -5-j*5*sqrt(3) -10]; l=(acker(a',c',v))' 执行以上程序可得: L 16.855 ⎡ ⎢ 147.3875 = ⎢ 544.3932 ⎢ ⎣ ⎤ ⎥ ⎥ ⎥ ⎦ % ) = = + 相应的全维观测器是: x + &% 1 0 − 0 0 A LC x Bu Ly ( ⎛ ⎡ ⎜ ⎢ ⎜ ⎢ ⎜ 1.244 0.3965 ⎢ ⎣ ⎝ 16.855 −⎡ ⎢ 147.3875 = − ⎢ 543.1492 0.3965 ⎢ − ⎣ 1 0 0 1 3.145 − ] [ − + x % 0 0 ⎤ ⎥ ⎥ ⎥ ⎦ 0 1 3.145 16.855 ⎤ ⎡ ⎥ ⎢ 147.3875 1 0 0 ⎥ ⎢ 544.3932 ⎥ ⎢ ⎦ ⎣ 0 ⎤ ⎥ 0 ⎥ ⎥ ⎦ ⎡ ⎢ ⎢ 1.244 ⎢ ⎣ ⎞ ⎡ ⎟ ⎢ ⎟ ⎢ ⎟ 1.244 ⎢ ⎣ ⎠ 16.855 ⎤ ⎡ ⎥ ⎢ 147.3875 ⎥ ⎢ 544.3932 ⎢ ⎥ ⎣ ⎦ ⎤ ⎥ ⎥ ⎥ ⎦ x % + + u y − u + ⎤ ⎥ ⎥ ⎥ ⎦ 16.855 ⎡ ⎢ 147.3875 ⎢ 544.3932 ⎢ ⎣ ⎤ ⎥ ⎥ ⎥⎦ y 例 5.2 考虑例 5.1 给出的系统。假设输出 y 可准确量测。试应用 MATLAB 软件,设计一个 降阶观测器,使得其极点是 35 。 0 0.3965 ⎡ = ⎢ ⎣ 1 3.145 − ⎤ ⎥ ⎦ , j−−=μ35 5 ,因此可得: 1 0 , ⎤ ⎥ ⎦ ⎡ = ⎢ 1.244 ⎣ ⎡ bB = ⎢ 1.244 ⎣ 0 , bbA ⎤ ⎥ ⎦ y 由于输出 可准确量测,同时 ] aaA = abA = [ ]0 , 1 5 y j+−=μ x= 1 baA [ 1 0 , aB = 0 执行以下的M-文件: Aaa=[0]; Aab=[1 0]; Aba=[0;1.244]; Abb=[0 1;0.3965 -3.145]; Ba=[0]; Bb=[0;1.244]; v=[-5+j*5*sqrt(3) -5-j*5*sqrt(3)]; l=(acker(Abb',Aab',v))' Ahat=Abb-l*Aab Bhat=Ahat*l+Aba-l*Aaa Fhat=Bb-l*Ba 可得: 20
L ⎡ = ⎢ ⎣ 6.855 78.8375 6.855 −⎡ = ⎢ 78.441 − ⎣ 即所设计的降阶观测器为: ⎤ ⎥ ⎦ ˆ A , ˆ w Aw By Fu &% = + + ˆ % ˆ = 5.5 实验要求 6.855 −⎡ ⎢ 78.441 − ⎣ 1 3.145 − ⎤ ⎥ ⎦ , B ⎡ ˆ = ⎢ −⎣ 31.8465 784.4132 ⎤ ⎥ ⎦ , 0 F ⎡ ˆ = ⎢ 1.244 ⎣ ⎤ ⎥ ⎦ 1 3.145 ⎤ ⎥ ⎦ − w % + 31.8465 784.4132 − ⎤ ⎥ ⎦ ⎡ ⎢ ⎣ y + 0 ⎡ ⎢ 1.244 ⎣ ⎤ ⎥ ⎦ u 在运行以上例程序的基础上,考虑图 5.3 所示的调节器系统,试针对被控对象设计基于 全 阶 观 测 器 和 降 阶 观 测 器 的 输 出 反 馈 控 制 器 。 设 极 点 配 置 部 分 希 望 的 闭 环 极 点 是 j±−=λ 2,1 32 2 (a) 对于全阶观测器, (b) 对于降阶观测器, ,希望的观测器极点是 8 −=μ 8−=μ 1 和 。 8 −=μ 2 ; 比较系统对下列指定初始条件的响应: (a) 对于全阶观测器: ,1)0( (b ) 对于降阶观测器: )0( x 1 ,0 = = x 2 ,1)0( = 进一步比较两个系统的带宽。 x 1 e 1 ,1)0( = e 2 )0( = 0 = ,0 e 1 ,1)0( = x 2 )0( 0r = y− − u 控制器 y 4 s s + ( 2) 图 5.3 调节器系统 21
分享到:
收藏