Real-Time Workshop User's Guide    

リアルタイムオブジェクト

他のReal-Time Workshopコードフォーマットと異なり、ERT生成コードは、SimStructを使いません。代わりに、ERTターゲットは、リアルタイムオブジェクトと呼ばれるデータ構造体を使います。リアルタイムオブジェクトは、SimStructのように、モデルの情報と共に、基本的なタイミングとスケジューリングデータを含みます。リアルタイムオブジェクトは、SimStructよりもコンパクトで、コードサイズが著しく削減されます。

リアルタイムオブジェクトは、モデル固有のデータ構造体です。特定のモデルに対するリアルタイムオブジェクトは、model_export.hで定義されます。

ユーザコードは、リアルタイムオブジェクトのフィールドを直接参照しません。Real-Time Workshopは、リアルタイムオブジェクトに対するアクセスマクロを提供します。これらのマクロは、matlabroot/rtw/c/ert/ertformat.hに定義されています。マクロは、他のコードフォーマットと共に用いられるSimStructと文法的かつ機能的に同じです。ユーザコードと単一のモデルとのインタフェースを行う場合には、一般的にリアルタイムオブジェクトをRT_OBJとして参照し、以下のコードのようにマクロを使ってRT_OBJにアクセスします。

ユーザコードと複数のモデルのリアルタイムオブジェクトとのインタフェースの方法の例は、「エントリポイントを直接呼び出す方法」を参照してください。

ロギングオブジェクトは、リアルタイムオブジェクトのサブオブジェクトです。このデータ構造体は、MAT-file logging コード生成オプションが利用可能な場合に生成コード内で用いられます。


 ERTデータ構造体とコードモジュール ERTコードモジュール