<< Click to Display Table of Contents >> マニュアル > サーバ作成ガイド > アクション編 > アクションリファレンス > ロガーアクション(ロギングのみ) > 通信エラー発生時の設定 |
通信エラー発生時の動作設定について
ロガーアクションプロパティの「通信エラー発生時」の設定で、通信が失敗したときの動作を定義できます。
ロガーアクションは、アクションに定義されているタグフィールドの内、1つでも通信ができないタグがあった場合、通信エラーが発生していると認識します。この設定で「ロギングしない」を選択した場合、通信エラーが発生した場合にはログ出力を行いません。従って、データベースには通信が成功したデータのみがロギングされます。
ここで「ロギングする」を選択した場合、ロギング処理の振る舞いは各タグフィールド個別の設定に依存します。タグフィールド個別の設定は、以下の「タグフィールドのエラー時の動作設定」で定義します。
タグフィールドのエラー時の動作設定
タグフィールドプロパティの「タグフィールド」の設定で、タグフィールド毎に設定します。
この設定はタグフィールド毎に行う事が可能となっており、エラー時の動作をタグごとに個別に設定することができます。
各設定の挙動は以下の通りです。
項目 |
動作 |
前回値を書き込む(前回値がなければ「NULL」) |
通信エラーが発生した場合、前回取得に成功した値をロギングに使用します。前回値が存在しなければNULLを書き込みます。 ※ここで、前回値が存在しない状態とは、オンライン後1度も通信に成功していない状態を指します。 |
前回値を書き込む(前回値がなければ指定値) |
通信エラーが発生した場合、前回取得に成功した値をロギングに使用します。前回値が存在しなければ指定した値を書き込みます。 ※ここで、前回値が存在しない状態とは、オンライン後1度も通信に成功していない状態を指します。 |
「NULL」を書き込む |
通信エラーが発生した場合、NULLを書き込みます。
|
指定値を書き込む |
通信エラーが発生した場合、指定値を書き込みます。
|
CSVの場合、「NULL」とは空文字のことです。ODBCの場合、データベースがNULL値に対応していればNULL値を書き込みます。NULL値に対応していないデータベースの場合には、ブール型の場合はFALSE、数値型の場合は0(ゼロ)、文字型の場合は空文字を書き込みます。 |
PLCの値が範囲外の時の処理
PLCの値が範囲外だった場合に欠損値とするには、タグフィールドの「範囲外処理」の設定を行うことができます。
例えば、PLCとの通信は正常に行われているが実際の機器がオンラインになっていない状態の場合などに、本来は記録に含めるべきではないデータ(例えば「0」など)がロギングされることを避けたいときなどは、タグフィールドの「範囲外処理」をうまく利用することで、欠損値に置き換えてデータを保存することができます。例えば、CSVファイルへのロギングの場合、範囲外処理の最小値以下の設定で「指定値を書き込む」を選択し、最小値を「0」、指定値を「空白」と設定すると、PLCの値が0の時、CSVファイルには値が書き込まれません。
範囲外処理の設定は以下のとおりです。
項目 |
動作 |
特別な処理は行わない
|
特に処理は行いません。 |
「NULL」を書き込む
|
最大値・最小値を外れた場合、NULLを書き込みます。 |
指定値を書き込む
|
最大値・最小値を外れた場合、指定値を書き込みます。 |