確定的タスクは、非確定的タスクから分離して、RTターゲットVIの個別のループ内にそれぞれ配置します。これにより、確定的タスクに十分なプロセッサリソースが割り当てられます。タイミングループは、各反復で、指定した周期と優先度でサブダイアグラムを実行します。タイミングループの優先度が高いほど、ブロックダイアグラム上の他のタイミングストラクチャに対する優先度が高くなります。確定的なタイミングループのデータをローカルで共有したり、ネットワーク上でデータをリモート共有する際は、確定的なデータの通信方法を使用する必要があります。

メモ RTアプリケーションでタイミングループを使用する際は、ジッタを回避してください。

以下のブロックダイアグラムは、タイミングループとWhileループによってデータ収集とロギングアプリケーションを制御するRTターゲットVIを示しています。

優先度が100に設定された確定的ループには、データ収集タスクを実行するサブVIが含まれており、このサブVIはループが反復する度に実行されます。確定的ループは、シェア変数であるdataによって、集録データを非確定的ループと共有します。シェア変数のReal-Time FIFOを有効にすると、RTターゲットで実行されているVIのデータを、VIの確定性を損なうことなく確定的に共有できます。非確定的ループは、シェア変数dataからRTターゲットのディスクに読み取った集録データをログします。

タイミングループを協調的に実行する

タイミングループは他の動作に先行するため、プロセッサリソースを占有する場合があります。タイミングループは、すべてのプロセッサリソースを使用し、ブロックダイアグラム上のより低い優先度のタスクを実行させない可能性があります。

確定的タイミングループには、確定的タスクを実行するために必要な時間に加え、優先度が低いタスクを実行するための待機時間を考慮した反復周期を設定する必要があります。タイミングループのタイミングを設定することで、確定的タスクを協調的に実行し、プロセッサリソースを優先度が低い他のタスクのために適宜明け渡すことができます。

メモ マルチCPUシステムでRTアプリケーションを実行する場合は、タイムクリティカルなタイミングループを専用のCPUに割り当てることをお勧めします。