控制理论是一门上个世纪诞生的很重要的理论,它基于信息的交互来实现目标的运动。一经诞生就备受人们重视,它启发和影响了诸如人工智能、认知科学、环境科学、现代经济理论等多个领域。经典控制理论已经广泛运用到工业自动化领域。用经典控制理论来实现控制器的设计思路十分成熟。不过在一些设计过程中只用根轨迹、伯德图设计系统控制器参数比较棘手,一开始对系统稳定性的判定就很繁琐,而且如果不适合又要完全从头开始作图,费时费力,很多时候系统阶数很高的时候又不便于直接求出极点。所幸现代控制理论找到了一种不错的方法,能够很快判断系统稳定性也很便于设计控制器。它就是基于状态空间描述的状态方程模型,由于状态方程模型基于矩阵,更便于现代的计算机求解。
那么就让我们来探讨一下关于状态空间方程的现代控制理论吧!我希望通过我的叙述,能够比较完整地整理一下所学内容,顺便与大家共同探讨和分享知识。
本系列内容均为我在Lehrstuhl für Regelungstechnik Technische Fakultät Friedrich-Alexander-Universität Erlangen-Nürnberg上课期间学习资料,由课程教授Prof. Dr.-Ing. Knut Graichen主编的关于Regelungstechnik B (Zustandsraummethoden) 的内容。
1.1动态系统的定义
在很多领域都有关于”系统“这个概念,系统往往描述了一个比较复杂的关系的总和,而我们要想很好控制这个系统,就需要先了解它。控制理论研究的是更加广义的系统,把一个系统先当作黑箱,那么这个黑箱和外界的交互关系,就对应了有不同时间的输入输出。
图1.1系统的输入输出
在t时刻,这m个会影响系统的输入量在控制理论里称为控制变量(Stellgrößen),而这p个系统输出的可以被传感器测量的量称为测量变量(Messgrößen)。现在我们做一些基本假设,限制一些条件,只研究连续时变的线性系统。而且系统的行为,即输出量,由描述系统的函数通过输入量,在时域上唯一确定。我们把系统的行为分为静态和动态两类。
用电路来举个例子, v(t) 现在是输出电压, i(t) 表示输入电流,那么电路系统有:
图1.2 含阻电路和含容电路
例a:带电阻的电路
(1.1) v(t)=R i(t)
例b:带电容的电路
(1.2) v(t)=v0+1C∫t0ti(τ)dτ
显然和不随时间变化的例a相比,例b里的初始条件 v0=v(t0),以及 i(τ) 在这个时间区间 [t0,t] 内的变化决定了输出电压。系统的状态受过去影响,随时间变化。这样的系统被称为动态系统。
1.2状态方程的引入
我们定义状态方程中的状态变量为
定义1.1 状态变量:
n个变量 x1,x2,…xn 被称为动态系统的状态变量(Zustandsgrößen),当且仅当它们的p个输出变量 y1,y2,…yp 完全由初始状态 x1(t0),x2(t0),…xn(t0) 以及m个输入量 u1(τ),u2(τ)…um(τ) 在 τ∈[t0,t] 内的历史决定。
那么状态方程可以由有限个一阶常微分方程组描述:
(1.3) x˙1=f1(x1,x2,…xn,u1,u2…um,t),x1(t0)=x1,0x˙2=f2(x1,x2,…xn,u1,u2…um,t),x2(t0)=x2,0….x˙n=fn(x1,x2,…xn,u1,u2…um,t),xn(t0)=xn,0
同时输出方程为
(1.4)y1=h1(x1,x2,…xn,u1,u2…um,t)y2=h2(x1,x2,…xn,u1,u2…um,t)….yp=hp(x1,x2,…xn,u1,u2…um,t)
当然我们可以向量形式来描述这些方程组
x=[x1 x2…xn]T 为总共n维状态变量;
u=[u1 u2…um]T 为总共m维输入列向量;
y=[y1 y2…yp]T 为总共p维输出行向量;
所以我们就可以用更加紧凑的方式来描述它
(1.5) x˙=f(x,u,t), x(t0)=x0y=h(x,u,t)
所以在t时刻,所有状态变量就可以用n维的向量空间描述,也即状态空间。在一个时间区间内,状态空间所有的状态量的点集就构成了一条轨迹。