0

私はMatlabを使用して、使用しているシステムで制御分析を実行しています。状態空間表現でシステムのモデルを開発し、必要な閉ループ応答を生成するフィードバック補償器を設計しました。

Matlab の place() 関数を使用してフィードバック ゲイン K と推定器ゲイン L を選択する方法は、同じ位置で RHP の 1 つの極と零点を示すシステムの根軌跡になります。理想的には、これらがまったく同じで極ゼロ キャンセレーションが発生する必要がありますが、システムのステップ応答は依然として不安定です。

結合された補償器とプラントのシステムの極と零点を見ると、閉ループ応答の極と零点は次のようになります。

 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 に答える