タスクコントロール
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のタスクが実行されていることが分かります。