メインコンテンツ

リアルタイム モデルの準備

参照結果の取得、パフォーマンスの最適化

Simscape モデルをリアルタイム用に準備するには、ターゲット マシンにとって十分に小さなコストとタイム ステップで正確な結果が得られるように、パフォーマンスと忠実度のバランスを繰り返し取る必要があります。まず、モデルから参照結果を取得することから始めます。固定ステップ ソルバーを使用して参照結果と比較して正確な結果がモデルで生成されたら、リアルタイム ターゲットへのモデルの展開を試行できます。パフォーマンスと忠実度のバランスを取るために、必要に応じて次のステップを実行します。

  • 複雑なブロックおよびパラメーター化の代わりに、最適なブロックまたはシステムレベルのブロックおよび最適なパラメーター化を使用する。

  • 高速ダイナミクスのソースを取り除く。

  • 数値的剛性のソースを取り除く。

  • ゼロクロッシングのソースを取り除く。

  • 分割ソルバーを使用する。

  • モデルを分割する。

  • ソルバーの反復回数を最小化する。

  • FPGA への展開では、モードのソースを削減する。

高速ダイナミクスおよび数値的剛性に関するソルバーのパフォーマンスを解析するには、ソルバー プロファイラー ツールを使用します。固定ステップ、固定コストに変換する準備ができたら、simscape.getLocalSolverFixedCostInfo 関数を使用して、実行する非線形反復回数を判別します。

ツール

ソルバー プロファイラーソルバー性能のボトルネックを特定します。

関数

simscape.getLocalSolverFixedCostInfoDetermine iteration requirement when transitioning to fixed cost (R2021b 以降)

トピック

固定ステップ、固定コストの設定

パフォーマンスの最適化

  • ゼロクロッシングの削減
    ゼロクロッシングを引き起こすコンポーネントを排除することで、固定ステップ シミュレーションの最小ステップ サイズを大きくし、Simscape モデルをリアルタイム対応にします。
  • 分割ソルバーを使用したシミュレーションの高速化
    Simscape 分割ソルバーを使用して、大規模な連立方程式を、解きやすい複数の小規模な連立方程式に変換することにより、パフォーマンスを改善する。

FPGA への展開

汎用プラットフォーム

  • 代替プラットフォームを使用する場合の要件
    ハードウェア、ソフトウェア、コンパイラの最低限の推奨仕様に従い、カスタム スタンドアロン アプリケーションを使用してハードウェアインザループ (HIL) シミュレーション用の Simscape モデルを展開する。
  • 組み込みおよび汎用リアルタイム リソース
    Simulink® Coder™ および Embedded Coder® では、システム ターゲット ファイル (STF) を使用して、特定のリアルタイム オペレーティング システムとのインターフェイスに用いるコードを生成します。

注目の例