place() 函数 极点配置法

MATLAB中place()函数,主要用于状态反馈控制或者状态观测器的极点配置,返回对应的状态反馈增益

极点布置是一种计算最佳增益矩阵的方法,用于将闭环极点分配到指定位置,从而确保系统的稳定性。闭环极点位置直接影响时间响应特性,如上升时间、响应时间和瞬态振荡。

进入翻译页面

1.含义:K = place(A,B,p)

考虑一个线性离散时间系统:
在这里插入图片描述
向量p是期望的自共轭闭环系统极点的位置,​​​place()​​​函数会计算反馈增益矩阵K,使状态反馈u=-Kx 将闭环极点放置在位置p。
在这里插入图片描述
其实,p就是闭环系统矩阵(A-BK)的特征值

2.举例:

考虑一个具有以下状态空间矩阵的简单二阶系统
在这里插入图片描述算计算开环极点,并检查开环系统的阶跃响应

>> eig([-1,-2;1,0])
ans =
  -0.5000 + 1.3229i
  -0.5000 - 1.3229i

开环系统阶跃响应曲线:
place() 函数 极点配置法_第1张图片
注意到:这里有一个不稳定的极点,结果系统是欠阻尼的。因此,在复平面的左半部分选择实极来去除振荡,选取闭环极点:p = [-1,-2];
利用极点布置求增益矩阵K,并检查系统的闭环极点。

K = place(A,B,p);
Acl = A-B*K;
>> eig(Acl)
ans =
   -2.0000
   -1.0000

闭环系统阶跃响应曲线:
place() 函数 极点配置法_第2张图片
因此,采用极点配置得到的闭环系统是稳定的,具有良好的稳态响应

3.reference

https://ww2.mathworks.cn/help/control/ref/place.html

你可能感兴趣的:(控制器)