Real-Time Workshop User's Guide    

ラピッドプロトタイピングと組み込みモデルの実行の違い

ラピッドプロトタイピングプログラムの枠組みは、モデルの定義間で変わらない共通のアプリケーションプログラミングインタフェース(API)を提供します。対照的に、組み込みプログラムの枠組みは、モデルに対して用意された最適化されたAPIを提供します。生成コードの組み込みスタイルを使うときに、組み込みシステム内でコードをどのように実行したいかをモデリングすることを意図しています。そのため、モデル内で定義された定義は、組み込みターゲットに固有です、モデル名、パラメータ、信号のストレージクラスのような項目は、組み込みスタイルのコードに対してはAPIの部分として含まれます。

生成コードのラピッドプロトタイピングと組み込みシステムの1つの大きな違いは、組み込みコードがSimStructデータ構造体を含まないことです。SimStructは、生成コードのラピッドプロトタイピングスタイルが強く依存する共通のAPIを定義します。しかし、SimStructデータ構造体は、多くのオプションをサポートするため、組み込みアプリケーションにおいては必要でないメモリを消費します。

生成コードのラピッドプロトタイピングと組み込みスタイルとのその他の大きな違いは、後者は前者よりも含まれるエントリポイント関数が少ないことです。コードの組み込みスタイルは、1つのランタイム関数model_stepのみを含むように設定することができます。組み込みターゲットシステムでは、以下の理由により、1つのランタイム関数を定義できます。

そのため、この章の前半で示したモデル実行コードを見ると、Loop...EndLoopステートメントを削除し、ModelOutputs, LogTXY, ModelUpdateを1つのステートメントmodel_stepにグループ化することができます。

生成された組み込みコードがどのように実行されるかについては、「ERTプログラムの実行」を参照してください。


 シングルタスクおよびマルチタスクモデル実行でのデータロギング ラピッドプロトタイピングモデル関数