【现代控制理论笔记】——第三章:状态反馈

现代控制理论

第三章

说明:

介绍了状态反馈的形式,以及引入状态反馈配置极点的问题,进一步引出镇定问题

其中可能涉及到四阶行列式的计算,可以用“ Σ \Sigma Σ矩阵某一行元素*代数余子式”的方法算。

1. 状态反馈

对系统:

x ˙ = A x + B u y = C x \dot x=Ax+Bu\\ y=Cx x˙=Ax+Buy=Cx

引入状态正反馈:

u = K x + v u=Kx+v u=Kx+v

得到状态反馈系统

x ˙ = ( A + B K ) x + B v y = C x \dot{x}=(A+BK)x+Bv\\y=Cx x˙=(A+BK)x+Bvy=Cx

框图:

在这里插入图片描述
可以看出,状态反馈的引入改变了系统矩阵,但不改变能控性:

在这里插入图片描述

2. 状态反馈的闭环极点配置问题

目标:

通过状态反馈的引入,改变系统矩阵,使闭环极点定位于目标位置。

状态反馈极点配置的前提:

系统是能控的。

2.1 单输入系统的极点配置步骤:

① 根据A求出原系统的特征多项式: d e t ( s I − A ) = a 0 + . . . + a n − 1 s n − 1 + s n det(sI-A)=a_0+...+a_{n-1}s^{n-1}+s^n det(sIA)=a0+...+an1sn1+sn

② 根据闭环极点求出目标多项式: α ( s ) = a ˉ 0 + . . . + a ˉ n − 1 s n − 1 + s n \alpha(s)=\bar a_0+...+\bar a_{n-1}s^{n-1}+s^n α(s)=aˉ0+...+aˉn1sn1+sn

③ 求出 K ^ = [ a 0 − a ˉ 0 , . . . , a n − 1 − a ˉ n − 1 ] \hat K=[a_0-\bar a_0,...,a_{n-1}-\bar a_{n-1}] K^=[a0aˉ0,...,an1aˉn1]

④ 计算变换矩阵,并求逆 T − 1 T^{-1} T1

T = [ A n − 1 b ⋯ A b b ] [ 1 a n − 1 ⋱ ⋮ ⋱ ⋱ a 1 ⋯ a n − 1 1 ] T=\begin{bmatrix}A^{n-1}b&\cdots&Ab&b\end{bmatrix}\begin{bmatrix}1\\a_{n-1}&\ddots\\\vdots&\ddots&\ddots\\a_1&\cdots&a_{n-1}&1\end{bmatrix} T=[An1bAbb] 1an1a1an11

⑤ 确定反馈增益矩阵: K = K ^ T − 1 K=\hat KT^{-1} K=K^T1

2.2 多输入系统的极点配置

情况相对复杂,需要对A进行分类讨论

1)A为循环矩阵时:

在这里插入图片描述

2)A不是循环矩阵时:

在这里插入图片描述

因此,只要 ( A , B ) (A,B) (A,B)能控,则一定存在状态反馈使闭环系统 ( A + B K , B ) (A+BK,B) (A+BK,B)有任意配置的极点。

同时,有:

在这里插入图片描述

说明:

对于多输入的系统(其实对于单输入系统也可),其可以采用“偷懒”的方法进行状态反馈配置,思路为:

根据期望配置的极点求出的特征多项式 α ( s ) = s 4 + 6 s 3 + 14 s 2 + 16 s + 8 \alpha(s)=s^4+6s^3+14s^2+16s+8 α(s)=s4+6s3+14s2+16s+8,我们可以得到期望的系统矩阵 A + B K A+BK A+BK为:

A + B K = [ 0 1 0 0 0 0 1 0 0 0 0 1 − 8 − 16 − 14 − 6 ] A+BK=\begin{bmatrix}0&1&0&0\\0&0&1&0\\0&0&0&1\\-8&-16&-14&-6\end{bmatrix} A+BK= 000810016010140016

由已知的 ( A , B ) (A,B) (A,B)可以反求出 K = . . . K=... K=...

2.3 状态反馈对传函零点的影响

在这里插入图片描述

对于多输入系统整体的零点也不变,但是状态反馈的引入可能改变某一元的零点。

3. 线性定常系统的镇定问题

定义:

对于引入状态反馈的系统,若增益阵 K K K使 A + B K A+BK A+BK的特征值全部位于左半平面,则称系统是能稳的。

→ 能控,则状态反馈可以任意配置极点,则一定能稳。

→ 需能控分解时,系统特征值是可控和不可控部分的组合,因此:

在这里插入图片描述

在这里插入图片描述

进一步,若系统能通过状态反馈构成的闭环系统,使之渐近稳定(特征值全部位于左半平面),则称是状态反馈可镇定的。

在这里插入图片描述

### 使用反演法求解最优增益矩阵 K 在控制系统设计中,使用反演法(也称为逆方法)来计算最优增益矩阵 \( \mathbf{K} \),通常涉及通过状态反馈使闭环系统的特征值位于期望位置。这种方法的核心在于解决一个代数黎卡提方程 (ARE) 或者其他形式的优化问题。 对于线性时不变系统: \[ \dot{\mathbf{x}}(t)=\mathbf{A}\mathbf{x}(t)+\mathbf{B}\mathbf{u}(t), \] 其中 \( \mathbf{x}(t)\in\mathbb{R}^{n} \) 是状态向量, \( \mathbf{u}(t)\in\mathbb{R}^{m} \) 是控制输入向量, 而 \( \mathbf{A},\mathbf{B} \) 分别代表系统矩阵和输入矩阵。为了找到使得性能指标最小化的控制器增益 \( \mathbf{K}=\left[\begin{array}{ccc} k_{1}&...& k_{m} \end{array}\right] \),可以通过以下方式实现: #### 解决方案概述 定义二次型性能指数函数如下: \[ J(\mathbf{u})= \int_0^\infty (\mathbf{x}^T(t)\mathbf{Q}\mathbf{x}(t)+\mathbf{u}^T(t)\mathbf{R}\mathbf{u}(t))dt , \] 这里 \( \mathbf{Q}>0,\mathbf{R}>0 \) 表示权重矩阵。目标是最小化上述积分成本函数的同时保持稳定性。这相当于解决了所谓的无限时间范围内的线性二次调节器(LQR)问题[^2]. #### 反演法的具体应用 具体来说,在LQR框架下,\( \mathbf{K}=-\mathbf{R}^{-1}\mathbf{B}^TP \),这里的 P 来自于下面这个连续时间代数黎卡提方程(CARE): \[ \mathbf{PA+A}^T\mathbf{P}-\mathbf{PB(R+B}^T\mathbf{PB)}^{-1}\mathbf{B}^T\mathbf{P+Q}=0 .\] 因此,解决问题的关键变成了数值上求解 CARE 方程获得正定对称矩阵 \( \mathbf{P} \). #### Python 实现例子 下面是利用Python库`scipy`中的`solve_continuous_are()` 函数来完成这一过程的一个简单实例: ```python import numpy as np from scipy.linalg import solve_continuous_are # 定义 A 和 B 矩阵作为给定系统的参数 A = np.array([[0., 1.], [-5., -6.]]) B = np.array([[0.], [1.]]) # 设计 Q 和 R 的权衡因子 Q = np.eye(A.shape[0]) * 1e-3 # 对角线上为较小正值表示更关注稳定而非快速响应 R = [[1]] # 控制力度惩罚项 # 求解 ARE 得到 P P = solve_continuous_are(A, B, Q, R) # 计算最优增益 K K = np.dot(np.linalg.inv(R), np.dot(B.T, P)) print("Optimal gain matrix K:\n", K) ``` 此代码片段展示了如何设置并求解连续时间下的代数黎卡提方程以获取用于状态反馈的最佳增益矩阵 \( \mathbf{K} \).
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值