主な機能

  • 時間領域と周波数領域の応答データを使用した、伝達関数、プロセス モデルおよび状態空間モデルの同定
  • 最尤推定、PEM (予測誤差法)、部分空間法を使用した、自己回帰 (ARX、ARMAX)、Box-Jenkins および出力誤差モデルの推定
  • オンライン モデル パラメーターの推定
  • 時系列のモデリング (AR、ARMA) および予測
  • 飽和や不感帯などの入出力非線形性をもつ非線形 ARX モデルと Hammerstein-Wiener モデルの同定
  • ユーザー定義モデルの推定のための、線形および非線形グレーボックス システム同定
  • 遅延の推定、トレンド除去、フィルタリング、リサンプリングおよび欠損データの再構築

このツールボックスの主な設計は、システム同定の分野で世界的な権威である Lennart Ljung 博士によるものです。

System Identification Toolbox (上) を使用して、データをインポート、解析、前処理 (左) し、線形および非線形のモデルを推定 (下) し、推定したモデルを検証 (右)。

データからのモデルの同定

System Identification Toolbox では、測定された入出力データからモデルを作成できます。以下を行うことができます。

  • データの解析と処理
  • 適したモデル構造および次元の決定と、モデル パラメーターの推定
  • モデル精度の検証
System Identification Toolbox™ の基礎概要。

同定した線形モデルは、Control System Toolbox™ で解析と制御システムの設計に使用できます。同定したモデルのほとんどは、ツールボックスに用意されているブロックを使用して Simulink に組み込むことができます。また、同定したモデルを予測に使用することもできます。

周波数領域テスト データからの伝達関数モデルの同定 (上) と、同定したモデルの Simulink での使用 (下)。

データの解析と処理

モデル同定用のデータを準備する際には、入出力チャンネル名、サンプリング時間、サンプル間挙動などの情報を定義する必要があります。このツールボックスでは、この情報をデータに付加することができるため、データの可視化、領域変換、およびさまざまな前処理タスクが簡単になります。

測定データには、オフセット、緩やかなドリフト、外れ値、欠損値、およびその他の異常データが含まれている場合があります。このツールボックスでは、トレンド除去、フィルタリング、リサンプリング、欠損データの再構築といった操作を行なうことにより、このような異常データを取り除くことができます。さらに、同定データの適合性を解析し、持続的励振、フィードバック ループの存在、および非線形性の存在に関する診断を行うことができます。

このツールボックスは、測定データから直接システムのインパルスと周波数応答の推定を行います。これらの応答を使用して、主要な時定数、入力遅延、および共振周波数などのシステム特性を解析できます。また、推定中にこれらの特性を使用して、パラメトリック モデルを構成することもできます。

モデルの推定と結果検証のためのテストデータのインポート。
テストデータの表示、ノイズのフィルターによる除去、およびオフセットの除去。

モデル パラメーターの推定

伝達関数や状態空間モデルなどのパラメトリック モデルでは、少数のパラメーターを使用してシステム ダイナミクスをとらえます。System Identification Toolbox では、時間応答と周波数応答のデータから、モデルのパラメーターや不確かさを推定します。これらのモデルは、ステップ応答、インパルス応答、ボード線図、極/零点図などの時間応答や周波数応答のプロットを使用して解析できます。

複数のモデルを推定し、データセットに対する検証をおこなう。

結果の検証

System Identification Toolbox では、実機から計測された一連の独立したデータを使用して、同定されたモデルの精度を検証できます。与えられた一連の入力データに対し、同定モデルの出力が計算され、実機から計測された出力と比較することができます。また、予測誤差の表示や、信頼区間を含めた時間応答と周波数応答プロットを生成でき、モデル応答上でパラメーターの不確かさの影響を可視化できます。


線形モデルの同定

System Identification Toolbox では、指定した数の極と零点をもつ、多入力多出力の連続時間/離散時間伝達関数を推定できます。むだ時間は、ユーザーが指定することも、ツールボックスに自動的に決定させることもできます。極-零点型の低次元連続時間モデルを必要とする場合は、3 つ以下の極と、オプションとしてゼロ点、時間遅延、積分を含むシンプルな伝達関数である、プロセス モデルを推定できます。

連続時間、離散時間伝達関数および低次のプロセスモデルを推定。推定モデルを解析や制御設計に使用。

このツールボックスに用意されている推定ルーチンを使用すると、多項式モデルや状態空間モデルを同定することができます。これらのルーチンには、自己回帰モデル (ARX、ARMAX)、Box-Jenkins モデル、出力誤差モデルおよび状態空間パラメーター化が含まれます。推定手法には、最尤法、予測誤差法および N4SID、CVA、MOESP アルゴリズムに基づいた部分空間法が含まれます。また、観測するシステムに影響を及ぼすノイズのモデルを推定することも可能です。すべての推定において、固定のモデル パラメーターを指定したり、フリー パラメーターの境界を指定することができます。

最適なモデル次数を決定し、状態空間モデルを推定。ARX、ARMAX、Box-Jenkins、および出力誤差モデルを推定。

Control System Toolbox の PID 調整器 アプリ内で測定された入出力データからプロセス モデルを同定することもできます。モデルの応答が測定された出力と一致するようにゲインや極配置などのシステム パラメーターを対話的に調整できます。System Identification Toolbox はこれらのパラメーター値を初期の推測値として使用して、モデルと測定データが最も適合するパラメーター値を自動的に検出できます。プロセス モデルが作成されると、PID 調整器 アプリはこのモデルを使用して自動的に PID Controller のゲインをチューニングします。

測定された入出力データからプラント モデルを特定し、このモデルを使用して PID コントローラーのゲインをチューニングします。

また、PID Controller ブロックのゲインをチューニングするときは、System Identification Toolbox を Simulink Control Design™ と共に使用できます。Simulink モデルによってゼロに線形化される場合、System Identification Toolbox は PID 調整器 のシミュレーションの入出力データからプロセス モデルを推測できます。プロセス モデルが作成されると、PID 調整器 はこのモデルを使用して PID Controller ブロックのゲインをチューニングします。

線形化できないモデルに対して PID コントローラーを設計します。システム同定を使用してシミュレーションの入出力データからプラント モデルを同定します。

非線形モデルの同定

線形モデルがシステムのダイナミクスを十分に表現できない場合、System Identification Toolbox を使用して、非線形 ARX モデルや Hammerstein-Wiener モデルなどの非線形モデルを推定することができます。

非線形 ARX モデルでは、ウェーブレット ネットワーク、ツリーパーティショニング、シグモイド ネットワーク、ニュートラル ネットワーク (Deep Learning Toolbox™ を使用) を使用して、非線形性をモデル化できます。Hammerstein-Wiener モデルでは、線形システムに加えて、入力や出力に存在する静的な非線形歪みを推定することができます。たとえば、DCモータの入力電流に影響を及ぼす飽和レベルの推定や区分的線形な非線形性を使用し、出力での複雑な非線形性をとらえることができます。

非線形 ARX および Hammerstein-Wiener モデルの推定。

ユーザー定義モデルのパラメーターの推定

ユーザー定義 (グレーボックス) モデルとは、いくつかの未知のパラメーターをもつ一連の微分または差分方程式です。システムの物理特性を理解していて、システムをグレーボックス モデルとして表現できる場合は、System Identification Toolbox でモデル構造を指定し、非線形最適化手法を使用してパラメーターを推定できます。線形モデルの場合、明示的に状態空間行列の構造を指定でき、同定されるパラメーターに制約を課すことができます。微分方程式は MATLAB、C、または Fortran のコードとして指定できます。


オンライン パラメーター推定

System Identification Toolbox はオンライン パラメーター推定のための Simulink ブロックを提供します。オンライン パラメーター推定の用途には障害監視や適応制御などがあります。

System Identification Toolbox では 2 種類のオンライン パラメーター推定を実行できます。 逐次多項式モデル推定と逐次最小二乗推定です。

Recursive Polynomial Model Estimator ブロックは、このブロックへの入力として与えられた入出力データから ARX または ARMAX 構造の離散時間多項式モデルを推定します。モデルの次数の指定や、使用する推定方法の選択ができます。

Recursive Least Squares Estimator ブロックは、モデルの入力 (リグレッサー) をモデルの出力に対応させるモデルのパラメーターを推定します。モデルはリグレッサーの線形結合である必要がありますが、非線形システムの記述に使用できます。

オンライン パラメーター推定ブロックはシミュレーションや実装に使用できます。これらのブロックをシミュレーションで使用すると、アルゴリズムを評価してアプリケーションに最適なモデル構造を選択できます。

その後 Simulink Coder™Embedded Coder® または Simulink PLC Coder™ の自動コード生成を使用して、このアルゴリズムを組み込みターゲットに展開できます。

Program embedded processors to estimate parameters and detect changes in motor dynamics in real time using System Identification Toolbox™.

時系列データのモデリング

時系列は、1 つ以上の測定された出力チャンネルで、測定された入力は伴いません。System Identification Toolbox では、時系列データ モデルを作成し、過去の信号値に基づいて将来の信号値を予測できます。時系列モデルは、時間領域データと周波数領域データの両方を使用して推定できます。

時系列データの変動を記述する時系列スペクトルは、周期的成分を異なる周波数で使用して推定できます。また、パラメトリック自己回帰 (AR) モデル、自己回帰移動平均 (ARMA) モデル、自己回帰和分移動平均 (ARIMA) モデルおよび状態空間時系列モデルを推定することもできます。

時系列データ モデルを作成する MATLAB コードと、このモデルを使用した将来の信号値の予測。