主要内容

このペ,ジの翻訳は最新ではありません。ここをクリックして,英語の最新版を参照してください。

非線形プラントの周波数応答のオンラ@ @ン推定

この例では,频率响应估计ブロックを使用してプラントの周波数応答のオンライン推定を実行する方法を説明します。非線形プラントの場合,異なる定格操作点での推定により,さまざまな周波数応答が得られます。

周波数応答のリアルタ@ @ムの推定

“周波数応答”は,正弦波入力信号に対するシステムの定常状態応答を表します。システムが線形のG年代)の場合,出力信号は異なる振幅と位相シフトをも同じ周波数の正弦波です。複数の周波数での周波数応答情報が保存された周波数応答デタ(的朋友)モデルは,プラントダイナミクスの解析,線形化結果の検証,制御システムの設計,パラメトリックモデルの推定などのタスクに役立ちます。

金宝appSimulink環境で的朋友モデルを取得するにはいくか異なった方法があります。最も一般的な方法は,金宝app仿真软件モデルを線形化し,取得した状態空間システムから周波数応答を直接計算することです。金宝appSimulinkモデルが線形化できない場合は,frestimateコマンドまたはモデル線形化器アプリを使用して,摂動信号を使ったシミュレ,ションを実行できます。その後,収集した実験デ,タに基づいてプラントの周波数応答をオフラ,ンで推定します。この方法は“オフラaapl . exeン推定”と呼ばれます。

この例では,これに代わる“オンラaapl . exeン推定”の手法を説明します。频率响应估计ブロックを使用して実験を行い,シミュレーション中に周波数応答を推定します。この例では仿金宝app真软件でモデル化されたプラントを使用しますが,仿真软件にプラントモデルがない場合は,ブロックをターゲットシステムに展開し,物理プラントに対しリアルタイムで周波数応答の推定を行うことも可能です。詳細にいては,周波数応答のオンラ@ @ン推定の基礎を参照してください。

非線形プラントモデル

この例では安定した非線形sisoプラントを使用します。プラントには2の状態があります。モデルを平衡化して、プラント出力がゼロである最初の定常状態操作点を見つけます。

plantMDL =“scdfrePlant”;Y0 = 0;op = operspec(plantMDL);op.Outputs.Known = true;op.Outputs.y = y0;选项= findopOptions(“DisplayReport”“关闭”);[op_point, op_report] = findop(plantMDL,op,options);x0 = [op_report.States(1).x;op_report.States(2).x];y0 = op_report.Outputs.y;u0 = op_report. input .u;

この例の目標の1つは,0.1 ~ 10 rad / sのプラント周波数応答を,プラント出力が0.5と-0.5である他の2つの定常状態操作点で取得することです。プラントをこれらの操作点に近づけるため,離散pidコントロ,ラ,を最初の操作点で設計します。コントローラーのサンプル時間には0.01秒,開ループ帯域幅には20 rad / sを使用します。

Ts = 0.01;G0 = c2d(线性化(plantMDL,op_point),Ts);c = pidtune(G0,“pidf”, 20);

Sinestreamモ,ドを使用したオンラ,ン推定

モデルscdfreSinestreamには,コントロ,ラ,cを使用するpid制御ル,プ内のプラントが含まれます。また,[制御動作 + 摂動]出力構成に频响估计器ブロックを含んでいます。この構成では,ブロックをコントロ,ラ,とプラントの間の制御ル,プに挿入します。

mdls =“scdfreSinestream”;open_system (mdls等);

启动/停止信号を使用してオンラ@ @ン推定実験の開始と終了ができます。ブロックがアイドル状態の場合、制御信号は変更なしでブロックを通過します。

実験中は,[実験モ,ド](Sinestream)の場合,ブロックは最低周波数から最高周波数まで1周波数ず,プラントに正弦波信号を挿入します。[重ね合わせ]モ,ドに比べてsinestreamの実験の方が割り込みが少なく,正確です。ただし,実験の実施にずっと長い時間を要します。

この例では,モデルの正確な線形化を取得できます。したがって,これをブロックのベースラインに使用して,これを“真”として実行時に推定結果を直接比較することが可能です。ブロックは、その生成するボ、ド線図のベ、スラ、ンとしてモデルG1を使用するように構成されます。プラント出力が0.5である定常状態の操作点を見け,この操作点で線形化を行ってG1を取得します。

op.Outputs.y = 0.5;op_point = findop(plantMDL,op,options);G1 = c2d(线性化(plantMDL,op_point),Ts);

実験はPIDコントローラーがプラントを新しい操作点(y = 0.5)に移動させてから10秒後に開始されます。実験が開始すると,PIDコントローラーは挿入される正弦波(実質的には負荷外乱)を抑制しようとします。したがって,コントローラーによってプラントが実験中に定格操作点からあまり離れすぎないようになり,推定結果に対するプラントの非線形性の影響が緩和されます。モデルをシミュレ,トして,推定された応答が実験中どのように変化するかをボ,ド線図で観察します。推定結果はベスランと非常によく一致します。

sim (mdls等);figSS = gcf;持有

重ね合わせモドを使用したオンラン推定

もう1のモデルscdfreeSuperpositionを開きます。このモデルでは,频响估计器ブロックが[摂動のみ]の出力用に構成されています。この構成では,ブロックを制御ル,プの外に配置することができます。ブロックがアイドル状態の場合、Sum ブロックに入る摂動信号は 0 なので、ループに影響はありません。

mdlSP =“scdfreSuperposition”;open_system (mdlSP);

このモデルには同じプラントとコントロ,ラ,があります。ただし,このモデルの频响估计器ブロックは[重ね合わせ]実験モ,ドを使用するように構成されています。このモ,ドでは,すべての正弦波が加算されてプラントに同時に挿入されます。年代inestream モードの実験と比べ、重ね合わせモードの実験はずっと高速です (低周波数をターゲットとする場合は特に)。

プラント出力が-0.5である定常状態の操作点を見けます。プラントを線形化して、この操作点でのベ、スラ、ン応答(G2)を見けます。频率响应估计ブロックはこのベースラインを使用してボード線図を生成するように構成されます。

op.Outputs.y = -0.5;op_point = findop(plantMDL,op,options);G2 = c2d(线性化(plantMDL,op_point),Ts);

実験は,PIDコントローラーがプラントを新しい操作点(y = -0.5)に移動させてから10秒後に開始されます。推奨される実験の長さは377秒であり,sinestreamの実験で使用された1738秒よりもずっと短いことに注意してください。モデルをシミュレ,トして,再びボ,ド線図で推定の進行状況を観察します。

sim (mdlSP);figSP = gcf;持有

ログに記録された実験デタを使用したオフラン推定

频响估计器ブロックには数据出力端子があり,シミュレションからの実験デタやリアルタムでの実験デタをログに記録できます。このデ,タセットは,的朋友オブジェクトを生成するためにfrestimateコマンドを使ってオフラ@ @ンで処理することができます。

W = logspace(-1,1,20);

Sinestream実験からのオンラaapl . cerン推定とオフラaapl . cerン推定の結果を比較します。

G1frd = fretifate (dataSS,w,“rad / s”);图(无花果);甘氨胆酸bodeplot (G1frd w,“o”);传奇(“真相”“在线”“离线”

重ね合わせ実験からのオンラ▪▪ン推定とオフラ▪▪ン推定の結果を比較します。

G2frd = frestual (dataSP,w,“rad / s”);图(figSP);甘氨胆酸bodeplot (G2frd w,“o”);传奇(“真相”“在线”“离线”

オフラン推定での実験デタ使用の詳細にいては,オフラ▪▪ン推定のための周波数応答実験デ▪▪タの収集を参照してください。

参考

関連するトピック