タスクコントロール

Note

回路ファイルはTOPページからダウンロードできます。


Example

task_control/task_control.cvt2

タスクコントロールとは

複数のPRC素子やDSP素子に対し、異なる周波数でこれらを実行したり、実行順序を設定することができます。
また、異なるタスク間での変数の受け渡し等も可能です。
サンプルは下図のようになります。


ポイント

実行周波数の変更

各PRC素子の実行周波数はFRD素子を用いて設定することが可能です。
例では、PRC1、PRC2の実行周期はFRD素子を用いて設定していませんので、メイン周波数が適用されます。
PRC3、PRC4はFRD素子を用いて実行周期を50kHzに設定しています。

実行順序の変更

実行順序の設定は、FRD素子で実行周期を設定している場合と、していない場合で異なります。
まず、メイン周期100kHzで動作しているPRC1、PRC2については、メニューバーのParameter:Control Order:PRC...をクリックし表示されるウィザードから、順番を決定します。

次に、FRD素子を用いて設定しているPRC3、PRC4についてはFRD素子に登録している順番の通りに実行されます。

この例では、PRC3, PRC4の順番で実行されます。


シミュレーション

SCALEでシミュレーションを行い、それぞれのPRC素子での変数の受け渡しや実行順序を確認しましょう。 シミュレーション時間は0.5mとしてください。

結果は以下となります。

100kHzのタスクと、50kHzのタスクが実行されていることが分かります。