状态空间基本方程
$$\dot{x}= Ax + Bu, \quad y = Cx + Du$$
能控性矩阵:$\mathcal{C}= [B \;|\; AB \;|\; A^2B \;|\; \ldots]$,需满秩
能观性矩阵:$\mathcal{O}= [C;\; CA;\; CA^2;\; \ldots]^T$,需满秩
传递函数:$H(s) = C(sI-A)^{-1}B + D$
输入矩阵A、B、C、D,自动判断能控性与能观性,在s平面绘制特征值,通过Ackermann公式设计状态反馈,并仿真闭环阶跃响应。
$$\dot{x}= Ax + Bu, \quad y = Cx + Du$$
能控性矩阵:$\mathcal{C}= [B \;|\; AB \;|\; A^2B \;|\; \ldots]$,需满秩
能观性矩阵:$\mathcal{O}= [C;\; CA;\; CA^2;\; \ldots]^T$,需满秩
传递函数:$H(s) = C(sI-A)^{-1}B + D$
状态空间模型是描述动态系统的核心框架,它用一组一阶微分方程来表达系统内部状态的变化与外部输入、输出的关系。
$$\dot{x}(t) = A x(t) + B u(t)$$ $$y(t) = C x(t) + D u(t)$$其中,$x$是状态向量(如位置、速度),$u$是输入向量,$y$是输出向量。$A$是系统矩阵(决定系统固有动态),$B$是输入矩阵,$C$是输出矩阵,$D$是前馈矩阵(通常为零)。
能控性与能观性的判断依赖于两个关键矩阵的秩条件。极点配置则通过Ackermann公式计算状态反馈增益。
$$\text{能控性矩阵: }\mathcal{C}= [B \quad AB \quad A^2B \quad \ldots \quad A^{n-1}B]$$ $$\text{能观性矩阵: }\mathcal{O}= [C^T \quad (CA)^T \quad (CA^2)^T \quad \ldots \quad (CA^{n-1})^T]^T$$ $$\text{Ackermann公式 (SISO): }K = e_n^T \mathcal{C}^{-1}\phi_d(A)$$$\mathcal{C}$或$\mathcal{O}$满秩(秩等于状态维数$n$)是系统完全能控或能观的充要条件。$K$是状态反馈增益向量,$e_n$是第$n$个标准基向量,$\phi_d(A)$是将期望闭环特征多项式中的变量$s$替换为矩阵$A$后得到的矩阵多项式。
主动振动控制:在航空航天结构(如飞机机翼、卫星太阳能板)中,利用压电陶瓷片作为执行器(输入u)和传感器(输出y)。通过状态反馈控制,将代表结构振动模态的极点配置到阻尼更大的位置,从而快速抑制有害振动。
汽车底盘控制:在高级驾驶辅助系统(ADAS)中,状态空间模型用于描述车辆的横摆和侧向动力学。通过能控性分析确定转向和制动的控制能力,并设计状态反馈实现期望的车辆动态响应,提高稳定性。
化工过程控制:在连续搅拌釜式反应器(CSTR)中,温度、浓度等关键变量构成状态x。能观性分析确保通过有限的传感器(如温度计)可以估计所有关键状态,进而通过极点配置设计控制器,使反应过程快速稳定在设定点。
机器人轨迹跟踪:对于多关节机械臂,其动力学方程可转化为状态空间形式。能控性保证了我们可以通过各关节的电机力矩(u)精确控制所有关节的位置和速度(x)。极点配置则用于设计控制器,使机械臂末端能够快速、准确且平稳地跟踪预定轨迹。
首先,要明确“能控/能观”并不等同于“性能优良”。这是一个关于“原理上是否可控/可观”的二值判定。例如,即使系统能控,若通过极点配置将极点设在-1和-2,响应速度会很慢;若设在-10和-20,响应虽快但控制输入可能过大而无法实现。性能取决于增益设计。
其次,注意数值计算的局限性。本工具内部也会计算矩阵的秩,但当状态数增多或矩阵病态(ill-conditioned)时,即使数学上是满秩的,数值计算上也可能被判定为秩亏。例如,对于具有两个极其接近特征值的系统需要特别小心。在实际工程中,常通过观察能控性/能观性矩阵的奇异值来评估系统“在何种程度上”能控/能观(即可控/可观格拉姆矩阵)。
最后,模型维度与现实的偏差。输入工具的A、B、C矩阵是你所构想的“模型”的表示。如果它不能准确反映现实物理系统,那么即使在工具中设计完美,实际也可能无法良好运行。例如,忽略摩擦和齿隙的机器人手臂模型,在仿真中可能表现完美,但实物却可能产生振动。