当前位置: 首页 > news >正文

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

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

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

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

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

\dot{\hat{x}}=(A-LC)\hat{x}+\begin{bmatrix} B & L \end{bmatrix}\begin{bmatrix} u\\ y \end{bmatrix} \\ y_{\hat{x}}=\hat{x}

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

根据系统方程:

\dot{x}=Ax+Bu \\ y=Cx

观测器方程:

\dot{\hat{x}}=A\hat{x}+Bu+L(y-\hat{y}) \\ \hat{y}=C\hat{x}

结合上述两个方程可知:

\dot{e}=\dot{x}-\dot{\hat{x}}=(A-LC)e \\ e=x-\hat{x}

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

例如

\left\{\begin{matrix} \dot{x}(t)=\begin{bmatrix} 0 &1 \\ 0 & 0 \end{bmatrix} x(t)+ \begin{bmatrix} 0\\ 1 \end{bmatrix}u(t)\\ y(t)=\begin{bmatrix} 1 & 0\displaystyle \displaystyle \end{bmatrix}x(t)\displaystyle \end{matrix}\right.

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

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如下所示,文件下载这里

程序运行结果如下:

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

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

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

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

相关文章:

  • 【C#】构造协议帧通过串口下发
  • 为什么需要开源成分分析?库博同源分析工具介绍
  • CSS3学习教程,从入门到精通, 学院网站完整项目 - HTML5 + CSS3 实现(25)
  • 为什么制造企业需要用MES管理系统升级改造车间
  • html5时钟升级!支持切换深浅模式 Canvas实现现代化动态时钟
  • UniApp快速表单组件
  • Ansible内置模块之service
  • MOE-1 基本认识
  • 力扣HOT100之矩阵:54. 螺旋矩阵
  • 区块链技术之分布式数字身份:构建数字世界的信任基石
  • 青少年编程与数学 02-013 初中数学知识点 01课题、小学数学回顾
  • Ubuntu / Debian 创建快捷方式启动提权
  • 开发体育赛事直播系统:炫彩弹幕直播间界面技术实现方案
  • PE文件导入表解析
  • Spring-事务属性
  • 一条命令配置移动端(Android / iOS)自动化环境
  • 9、Linux C 消息队列和信号灯
  • leetcode 2360. 图中的最长环 困难
  • 什么是动态代理?动态代理和静态代理的区别
  • 轮询、WebSocket 和 SSE:实时通信技术全面指南(含C#实现)
  • 手机上如何做微电影网站/网站平台搭建
  • aspcms上传到虚拟主机后打开网站/个人推广app的妙招
  • 德州疫情最新消息今天/seo查询官方网站
  • inititle 网站建设/手机优化大师
  • 永嘉网站制作系统/百度目前的推广方法
  • wordpress 百度分享按钮/久久seo正规吗