0

我正在使用 Matlab 对我正在使用的系统执行一些控制分析。我已经开发了一个状态空间表示的系统模型,并设计了一个反馈补偿器来产生我想要的闭环响应。

使用 Matlab place() 函数选择反馈增益 K 和估计器增益 L 的方法导致系统根轨迹在同一位置的 RHP 中显示一个极点和零点。理想情况下,这些应该完全相同,导致零极点消除,但系统的阶跃响应仍然不稳定。

查看组合补偿装置系统的极点和零点,闭环响应的极点和零点为:

波兰人

 1.0e+02 *    
      -2.5547 + 0.3423i
      -2.5547 - 0.3423i
      -0.0087 + 0.0000i
      -0.0003 + 0.0000i
      -0.0027 + 0.0000i
      -2.8542 + 0.0000i
      -2.2717 + 0.0000i
       0.2108 + 0.0000i
      -0.3119 + 0.3874i
      -0.3119 - 0.3874i
      -0.0200 + 0.0000i
      -0.0300 + 0.0000i
      -0.0400 + 0.0000i
      -0.0500 + 0.0000i
      -0.1200 + 0.0000i
      -0.2000 + 0.0000i
      -2.5500 + 0.0500i
      -2.5500 - 0.0500i
      -2.5500 + 0.0100i
      -2.5500 - 0.0100i

 1.0e+02 *
  -3.6118 + 0.0000i
  -2.1330 + 0.0000i
  -2.8542 + 0.0000i
  -2.5547 + 0.3423i
  -2.5547 - 0.3423i
  -2.2717 + 0.0000i
  -0.3119 + 0.3874i
  -0.3119 - 0.3874i
   0.2108 + 0.0000i
  -0.0022 + 0.0067i
  -0.0022 - 0.0067i
  -0.0100 + 0.0000i
  -0.0003 + 0.0000i
  -0.0027 + 0.0000i
  -0.0087 + 0.0000i

具体来看 RHP 值,在 1e+02*(0.2108 + 0.0000i) 处有一个极点以及一个零点。由于这是唯一不稳定的极点,因此阶跃响应应该是稳定的,但事实并非如此。

我猜这与重要数字或不正确的系统缩放有关,但我不确定。关于为什么这些零极点没有取消的任何想法?

4

1 回答 1

1

没有看到植物很难说什么,但阶跃响应在很大程度上取决于植物的调节。零极点消除不是在后台执行,而是希望在系统响应期间相互消除。

换句话说,matlab 不检查是否存在抵消,并且非常小的数值不匹配会随着时间的推移与微分方程求解器一起增长。无论这些极点和零点属于何处,都将其传递给 minreal() 并使用该植物。

于 2016-08-08T11:32:09.963 回答