Simulink Functionを使用した、非線形状態空間モデルの作成方法が分かりません。
5 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
史晃 出口
el 26 de Oct. de 2020
Respondida: Toshinobu Shintai
el 26 de Oct. de 2020
Simulink Functionを使用して非線形状態空間モデルを作りたいのですが、その作成方法が分かりません。
具体的には、4つの伝達関数(うち1つはむだ時間を伴う)から、4入力1出力の状態空間モデルを作成し、線形カルマンフィルタを使用した解析を行っておりました。
U = tf(-0.607735,[86440 1],'inputdelay',11840);
V1 = tf(0.000520059,[114410 1]);
V2 = tf(0.002600792,[60160 1]);
V3 = tf(0.000801016,[113840 1]);
Ys = [U V1 V2 V3];
plant = ss(Ys);
[A,B,C,D] = ssdata(plant);
しかし今回、この状態空間モデルのパラメータの更新を行うため、拡張カルマンフィルタ(Extended Kalman Filter)を用いてモデル作成に取り組んでいるのですが、自分の理解が追い付かず苦戦しております。
- 状態遷移関数が複数の追加の入力をもつ場合、Simulink Function (Simulink) ブロックを使用して関数を指定します。Simulink Function ブロックを使用する際、追加の入力は Inport (Simulink) ブロックを使って Simulink Function ブロックに直接提供します。Extended Kalman Filter ブロック内に追加の入力用の入力端子は生成されません。
と書かれているため、添付画像のように作成していますが、そもそも作り方があっているのかもわかりません。
どのように作成すればよいでしょうか?
0 comentarios
Respuesta aceptada
Toshinobu Shintai
el 26 de Oct. de 2020
以下のサンプルモデルを参考に、真似して作成してみてはいかがでしょうか。
出口さんのモデルでは、ヤコビアンが計算できるタイプのモデルですので、ブロックパラメータの「ヤコビアン」にチェックを入れて、A行列などを計算するモデルをSimulink Function内に作れば良いのではないかと思います。
0 comentarios
Más respuestas (0)
Ver también
Categorías
Más información sobre 状態空間の制御設計と推定 en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!