MATLAB 控制系统设计与仿真 - 33

状态反馈控制系统 -全维状态观测器的实现

状态观测器的建立解决了受控系统不能测量的状态重构问题,使得状态反馈的工程实现成为可能。

考虑到系统的状态方程表达式,如果{A,B}可控,{A,C}可观,且安装系统的性能指标,可以确定状况反馈控制律u=-Kx+v。为了实现状态反馈,还需要引入状态观测器以重构系统的状态。引入状态观测器之后的系统方框图如下所示:

所以观测器的状态方程为:

上述状态方程中L为未知数,如果能够确定L的参数,我们就可以得到状态的观测值。

根据系统方程:

观测器方程:

结合上述两个方程可知:

如果观测器的极点在复平面的左半平面,那么e渐进稳定。这样估算的状态变量就会无限逼近真实的状态变量。通常来讲,观测器的极点要比状态控制器的极点大2~6倍,这样观测器会更快的收敛。

例如

试用全维状态观测器和极点配置设计闭环系统。

MATLAB代码如下:

复制代码
clear all;clc;
A=[0 1;0 0];
B=[0;1];
C=[1 0];
D=0;
C0=[1 0 ;0 1];
D0=[0 ; 0];

Po=[-10 -20];
Px=[-2 -5];
K=place(A,B,Px);
L=(place(A',C',Po))';

Ao=A-L*C;
Bo=[B L];
Co=[1 0 ;0 1];
Do=[0 0; 0 0];

Simulink如下所示,文件下载这里

程序运行结果如下:

由上图可知:左边系统状态量和右手边估算的系统系统状态量一样。

所以状态观测器的建立解决了受控系统不能测量的状态重构问题,使得状态反馈的工程实现成为可能。

最后,欢迎大家有问题给我留言。

非常感谢小伙伴们的-点赞-收藏-加关注。

相关推荐
小扳26 分钟前
SpringBootWeb 篇-深入了解 ThreadLocal 存在内存泄漏问题
java·开发语言·spring boot·面试
THMAIL30 分钟前
机器学习从入门到精通 - 循环神经网络(RNN)与LSTM:时序数据预测圣经
人工智能·python·rnn·算法·机器学习·逻辑回归·lstm
CryptoPP32 分钟前
跨境金融数据对接实践:印度NSE/BSE股票行情API集成指南
开发语言·后端·金融
程序员Xu43 分钟前
【LeetCode热题100道笔记】二叉树的直径
笔记·算法·leetcode
superlls1 小时前
(数据结构)哈希碰撞:线性探测法 vs 拉链法
算法·哈希算法·散列表
陈敬雷-充电了么-CEO兼CTO1 小时前
具身智能模拟器:解决机器人实机训练场景局限与成本问题的创新方案
大数据·人工智能·机器学习·chatgpt·机器人·具身智能
KlipC1 小时前
特斯拉“宏图计划4.0”发布!马斯克:未来80%价值来自机器人
机器人
ShineWinsu1 小时前
对于单链表相关经典算法题:206. 反转链表及876. 链表的中间结点的解析
java·c语言·数据结构·学习·算法·链表·力扣
再睡一夏就好1 小时前
【C++闯关笔记】STL:list 的学习和使用
c语言·数据结构·c++·笔记·算法·学习笔记
要做朋鱼燕1 小时前
【C++】 list 容器模拟实现解析
开发语言·c++·笔记·职场和发展·list