1 问题描述

(1)将扩张状态观测器的极点统一配置在s平面负实轴-wo处,可以缩减待调节的参数;

(2)计算机计算出来的LESO特征根的数值解,含有一个极小的虚部,导致LESO的状态量输出含有振荡。

2 计算过程

LESO方程:(1){x^=Ax^+Bu+G(yy^),y^=Cx^.

误差系统的近似:(2)x~=(AGC)x~.

极点配置:

选取矩阵G保证(A-GC)的特征根全为-wo,此时由于

(3)nrank(λI(AGC))=1.

所以矩阵(A-GC)只有一个线性无关的特征向量,因此矩阵(A-GC)不能对角化。因此不能做一定的修正,虽然可以将矩阵(A-GC)变换为Jordan矩阵。

3 Matlab给出的(A-GC)特征值的数值解

(1)计算程序

function pa = parameters
%UNTITLED 此处显示有关此函数的摘要
%   此处显示详细说明
clear,clc
wo=100;
pa.A1=[-3*wo,1,0;-3*wo^2,0,1;-wo^3,0,0];
[v,d]=eig(pa.A1);
pa.d1=diag(d);

% pa.A01=v\pa.A1*v;
% pa.A02=real(pa.A01);
% pa.P=v;
% pa.A03=diag([-wo, -wo, -wo]);
% pa.x01=[1,3,2]';
% pa.x03=pa.P\pa.x01;
% pa.B1=diag( real(pa.d1) );
% 
% wo=1000;
% pa.A2=[-3*wo,1,0;-3*wo^2,0,1;-wo^3,0,0];
% [v,d]=eig(pa.A2);
% pa.d2=diag(d);
% pa.B2=diag( real(pa.d2));
% 
% wo=2000;
% pa.A3=diag([-wo, -wo, -wo]);
% [v,d]=eig(pa.A3);
% pa.d3=diag(d);
% pa.B3=diag(real(pa.d3));

end

(2)计算结果

pa = 

  包含以下字段的 struct:

    A1: [3×3 double]
    d1: [3×1 double]

>> pa.d1

ans =

   1.0e+02 *

 -0.999998906304313 + 0.000001893914034i
 -0.999998906304313 - 0.000001893914034i
 -1.000002187391376 + 0.000000000000000i

>> 

(3)分析

由于计算出的特征值含有误差,即存在一定的虚部项,反映在时域上,必然会存在一个正弦函数,即时域上的解是衰减振荡的。

计算机数值计算导致的误差,导致LESO暂态时的跟踪误差很大!