Real-Time Workshop User's Guide    

プログラムのタイミング

リアルタイムプログラムは、他のタスクの実行が発生する前にモデルコードの実行を終了することを保証するために、(割り込みまたはリアルタイムオペレーティングシステムタスクによって)注意深くタスク実行のタイミングを設定する必要があります。これは、外部ハードウェアとのデータのやりとりの時間を含みます。

つぎの図は、割り込みのタイミングを説明します。

図 6-2: タスクのタイミング

サンプリング間隔は、タスク実行間のモデルコードの実行が可能な程度長くなければなりません。

上記の図で、2つの隣接する縦の矢印の間の時間がサンプリング間隔です。上の図の空のボックスは、1つのステップが時間内で終了するプログラムの例で、バックグランドタスクを行う時間があります。下の図のグレイのボックスは、サンプリング間隔が短いときに何が起こるかを示しています。タスクが終了する前に別のタスク実行が発生します。そのようなタイミングでは実行エラーになります。

リアルタイムプログラムが、永久に実行されるように設定されている場合(終了時間が0または無限大でwhileループから抜け出せない)は、シャットダウンコードは実行されません。


 モデルの実行 プログラムの実行