<< Click to Display Table of Contents >> マニュアル > サーバ作成ガイド > イベント編 > イベントの応用 > イベントを条件により切り替える |
概要
ここでは、イベントそのものを条件に応じて切り替えたい場合の設定方法について解説します。
例として、2つの定周期イベント(1秒周期、10秒周期)を用意し、「U01.F01.T01」のON・OFFによりそれぞれのイベントを有効・無効に切り替えを行います。
「U01.F01.T01」がONの間、イベント「E02」を有効にし、OFFの間、イベント「E03」を有効にします。
サンプルのダウンロード
このページで紹介されている作成例には、サンプルが用意されています。
サンプルは以下からダウンロードすることができます。
設定ファイル: event_sample03.txt
設定内容
タグの設定
イベントを有効・無効にするトリガとなるビットタグを設定します。
ここでは、「U01.F01.T01」を設定します。
アクションの設定
スクリプトアクション「A01」を追加し、スクリプトを以下のように設定する。
//Event/E02!Enable = U01.F01.T01 //Event/E03!Enable = Not U01.F01.T01 |
つまり、「U01.F01.T01」がTRUE時E02を有効にし、FALSEの時E03を有効にします。
イベントの設定
タグイベント「E01」及び定周期イベント「E02」「E03」を追加します。
E01:
•タグ「U01.F01.T01」
•比較条件「タグ値が変化した」
•実行アクション「A01」
E02:
•周期を1秒に設定
•初期状態を無効にするために「無効にする」をチェック
E03:
•周期を10秒に設定
•初期状態を無効にするため、「無効にする」をチェック
解説
▪ビットON時
1.U01.F01.T01がTRUEになるとタグイベント「E01」が発生し、スクリプトVer1アクション「A01」が実行される
2.「A01」では「//Event/E02!Enable = U01.F01.T01」の式が実行され、イベント「E02」が有効になる
3.同時に「//Event/E03!Enable = Not U01.F01.T01」の式が実行され、イベント「E03」が無効になる
▪ビットOFF時
1.U01.F01.T01がFALSEになるとタグイベント「E01」が発生し、スクリプトVer1アクション「A01」が実行される
2.「A01」では「//Event/E02!Enable = U01.F01.T01」の式が実行され、イベント「E02」が無効になる
3.同時に「//Event/E03!Enable = Not U01.F01.T01」の式が実行され、イベント「E03」が有効になる
※スクリプト中の「Not」とは、TRUE/FALSEを反転します。