<< Click to Display Table of Contents >> マニュアル > サーバ作成ガイド > アクション編 > アクションリファレンス > ロガー |
本アクションの特長
ロガーアクションは、PLCから収集したデータをCSVやODBCデータベース(対応データーベースについてはこちら)へ履歴データとして保存するためのアクションです。また、ロガーアクションはヒストリカルデータサーバ機能も含んでおり、本アクション経由で保存したロギングデータを取得できます。ヒストリカルデータサーバ機能については、ヒストリカルデータサーバアクションを参照して下さい。
ロガーアクションによるロギング処理は、トリガとなるイベントから実行される事によって行われます。
このイベントの発生条件をどのような設定にするのかによって(定周期的なロギングを行うのか、タグ値がある条件を満たす時のみイベントログを出力したいのか等)、ロギングに関する様々な要件を満たすことができます。
下図は、ロギング処理のフローです。
①イベント発生
ロガーアクションはイベントの発生をトリガとして実行されます。ロガーアクション1回の実行で、1レコードがDBへ保存されます。イベントには「定周期イベント」「定刻イベント」「タグイベント」の3種類があります。各イベントとロガーアクションの関係は以下となります。
オンライン開始から、指定周期でロギングを行います。 |
|
決まった時刻にロギングを行います。毎分や毎正時などの時刻でロギングが可能です。 |
|
タグ値の評価によってロギングを行います。 |
②データ収集
ロガーアクションがイベントにより実行されると、必要なデータを収集します。デバイス値によるロギング、又はタグキャッシュ値によるロギングのいずれかを選択できます。設定はタグフィールドの設定で切り替えます。
③ログデータのキャシュへの保存
データ収集で集められたログデータは、DBへ保存する前に一旦メモリ上のキャシュに保存されます。その後、随時DBへ保存されます。
この仕組みにより、DBの負荷に影響されない安定したロギングが可能となります。例えば、イベント型のログをとる場合、大量のデータが同時に変化すると一時的にログの負荷が増えますが、そのような場合でもキャシュを介した仕組みにより安定したロギングが行われます。設定はロガーアクションのログ詳細で設定します。
④DBへの保存
キャッシュ値をDBに保存します。CSVファイルへのロギングの場合、1件毎にディスクに書き出す以外にも、ハードディスクへの負荷を軽減する目的で複数レコード分まとめてハードディスクに書き出す機能(フラッシュ設定)が用意されています。
サマリアクションとの違い
ロガーアクションはVer4以前のバージョンで開発された機能であり、ロギング処理のみに特化した機能です。一方、サマリアクションはVer5から新たに追加された機能であり、ロギング機能と集計処理、レポート作成機能が統合された機能構成となっております。
もし、タグの値をロギングする処理のみを構築したい場合は、ロガーアクション、サマリアクションのどちらを使用してもロギングを実現することができますが、両者にはそれぞれ以下のような特徴があります。どちらのアクションを選択するべきかは、それぞれの仕様と用途により選択してください。
ロガーアクションとの比較
ロガーアクション |
サマリアクション |
|
ログ機能の高速性 |
ミリ秒単位でのロギングが可能です。 例えばCSVファイルへの保存の場合、HDDの書き込み速度やPLCとの通信速度等に異存しますが、数十ミリ秒程度でのロギングが行えます。 |
最速で1秒周期のロギングが行えます。ミリ秒周期のロギングには対応していません。 |
ロギング対象タグの設定方法 |
Panel Serverの画面上で、目的のタグをドラックアンドドロップする等の操作により設定することができます。 尚、1つのアクションにつき1つのデータベース(CSVの場合1ファイル、ODBCの場合1テーブル)に対応します。複数のCSVファイルやテーブルに保存したい場合は、複数のアクションを並列して定義する必要があります。 |
サマリアクションの設定ファイル「タグフィールドマスタ」(テキストファイル)に、ロギング対象のタグパスを設定します。 タグフィールドマスタは、Excelやメモ帳などを用いて手動で設定します。 尚、あらかじめデータベースの最大列数を定義しておく事で、実行時に自動的に複数のデータベース(CSVの場合複数ファイル、ODBCの場合複数テーブル)に分割して生成されます。 |
ログ形式 |
時系列の一般型ログの他、イベント型ログの生成も可能。
|
時系列の一般型ログにのみ対応。
|
集計機能 |
無し。
本アクションはロギングのみ行えます。また、本アクションで生成されたヒストリカルデータをサマリアクションで集計することはできません。
|
有り。
サマリアクション自身が生成したヒストリカルデータ(ロギングデータ)をもとに、合計、平均、最大、最小などの各種統計方法での集計処理を自動的に行います。 又、各フィールドの集計データ同士で演算を行い、演算結果を集計データとして保存する事などができます。
|
レポート機能 |
無し。
本アクションはロギングのみ行えます。また、本アクションで生成されたヒストリカルデータをサマリアクションで集計することはできません。
|
有り。
レポート作成機能を内蔵。サマリアクション自身が集計した集計データをもとに、レポート作成を行います。
|
ヒストリカルデータサーバ機能 |
有り。
クライアントとなるPanel Browserから、ヒストリカルグラフコントロールやヒストリカルデータコントロールを介してヒストリカルデータへのアクセスを受け付けます。
|
有り。
(同左) |
ミリ秒単位などの高速周期でロギングを行いたい場合や、単にロギングのみを行いたい場合はロガーアクションを用います。一方、ロギング周期が1秒以上でOKでかつ日報集計などを行う必要がある場合は、サマリアクションを使用します(※日報集計を行う必要がある場合はサマリアクションを選択する必要があります)。サマリアクションに関する詳細は、「サマリ」を参照して下さい。 |
ログデータの保存形式には、大きく分けて「一般型ログ」と「イベント型ログ」の2つの形式があります。一般型ログは一定周期、あるいは定刻にログデータをフィールド毎に保存していく方法です。イベント型ログはタグ値の変化や、タグ値がリミット値を超えた時などをトリガとしてログデータを保存していく方法です。また、前述の2つの形式を混在させて出力することもできます。この方式のことを「混在型ログ」と呼びます。
1.一般型ログ
時刻 |
ms |
温度1 |
温度2 |
温度3 |
圧力 |
バルブ1 |
バルブ2 |
2003/1/1 10:12:00 |
10 |
10.5 |
32.8 |
40.7 |
5.5 |
TRUE |
FALSE |
2003/1/1 10:12:10 |
10 |
10.7 |
32.6 |
40.6 |
5.4 |
FALSE |
TRUE |
2003/1/1 10:12:20 |
10 |
10.8 |
32.4 |
40.8 |
5.3 |
TRUE |
FALSE |
・・・ |
・・・ |
・・・ |
・・・ |
・・・ |
・・・ |
・・・ |
・・・ |
2.イベント型ログ
時刻 |
タグ |
値 |
コメント |
2003/1/1 15:11:12 |
温度1 |
15.1 |
上限値を超えました。装置をチェックして下さい。 |
2003/1/1 15:21:18 |
圧力 |
5 |
正常値に戻りました。 |
2003/1/1 15:23:25 |
バルブ1 |
1 |
バルブOPEN。 |
2003/1/1 15:28:12 |
温度1 |
15 |
正常値に戻りました。 |
・・・ |
・・・ |
・・・ |
・・・ |
3.混在型ログ
時刻 |
タグ |
値 |
コメント |
バルブ1 |
バルブ2 |
2003/1/1 15:11:12 |
温度1 |
15.1 |
上限値を超えました。装置をチェックして下さい。 |
FALSE |
FALSE |
2003/1/1 15:21:18 |
圧力 |
5 |
正常値に戻りました。 |
FALSE |
FALSE |
2003/1/1 15:23:25 |
バルブ1 |
1 |
バルブOPEN。 |
TRUE |
FALSE |
2003/1/1 15:28:12 |
温度1 |
15 |
正常値に戻りました。 |
TRUE |
FALSE |
・・・ |
・・・ |
・・・ |
・・・ |
・・・ |
・・・ |
ロガーアクションの利用手順
以下は、ロガーアクションを利用するための基本的な手順です。
1)タグ設定
PLCのどのエリアと通信するのかを定義します。また、必要に応じてPLCとのハンドシェイク用のタグや計算用のタグを作成します。
2)アクション設定
ロガーアクションの設定を行います。データベース(CSVファイルによるファイル保存か、ODBC経由によるDB保存)の基本設定及びフィールドのレイアウトを定義します。フィールドのレイアウトは、ロガーアクションにロガーフィールドを登録することでレイアウトの作成ができます。
3)イベント設定
ロガーアクションを実行するトリガとなるイベントを設定します。
4)オンライン
オンラインにするとロギングが開始されます。ログの開始、終了、ログの周期設定などの制御も可能です。
5)オフライン
オフラインにするとロギングが終了します。
実際の設定例としましては、以下を参照して下さい。
ロガーアクションを使ったサンプル
以下の機能を持ったサンプルを提供しています。アプリケーションを作成する際の参考としてご活用ください。
グイベントをトリガとしてロギングを行うための設定方法について解説します。 |
|
タグイベントによってロギングの開始と停止を制御する設定方法について解説します。 |
|
PLCから読み込んだデバイス値を演算によって加工してロギングする方法について解説します。 |
|
配列タグを使って大量データのロギングを行う方法について解説します。 |
|
イベント型ログの利用により、アラームコメントなどの付属情報をログに出力する方法について解説します。 |
|
ODBCデータベースへのロギングについて解説します。 |
|
イベントログのトリガをハンドシェイク用ビットタグによって発生させる方法について解説します。 |
|
イベント型ログフォーマットで定周期にロギングを行うための方法について解説します。 |
|
ランタイム中にログファイルのファイル名を動的に変更する方法について解説します。 |
設定仕様
アクション仕様 |
|||||||||
---|---|---|---|---|---|---|---|---|---|
パラメータ
|
アクションのパラメータは、イベントの実行アクション登録時に指定します。以下のパラメータ文字列を入力して下さい。
|
||||||||
ダイアログ |
■テキスト設定<ロガー(CSV)の場合> ▪ファイル名
▪拡張
▪見出しを書き出す
▪データを""で括る
▪同名ファイル存在時
▪フラッシュ設定
|
||||||||
■ログ詳細
▪データベースのメンテナンスを行う ▪ログデータのキャッシュ
▪通信エラー発生時
▪定刻イベントの場合、スケジュールされた時刻を時刻フィールドに保存する ▪PCの時刻が戻った時の処理(最終保存時刻より古いデータ保存要求があった時)
|
|||||||||
■ヒストリカルデータサーバ ロガーアクションはヒストリカルデータサーバ機能を持っています。「ヒストリカルデータサーバ」タブで設定する項目は自動的に判別されるため、通常は指定する必要はありません。この設定は、データ項目に「日付・時刻フィールド」が2つ以上含まれる場合に、どちらのフィールドを時系列として使用するのかを明示したい場合のみ指定して下さい。また、MSフィールドは、データベースにミリ秒のフィールドが存在するときのみ指定して下さい。MSフィールドを含めると、ヒストリカルトレンドグラフ上にミリ秒単位でグラフ表示が行えます。
|
|||||||||
■詳細設定
ロガーアクションの「処理が成功した時」と「処理が失敗した時」とは、ログデータがデータベースに正しく書き込まれたか否かを表すものです。この動作は、ログデータのキャッシュの設定内容によって以下のような動作となります。
•キャッシュの指定が0の時
•キャッシュの指定が1以上の時
|
|||||||||
■ODBC設定<ロガー(ODBC)の場合> ▪データソース・テーブル名
▪ODBCエラー時
▪ODBCタイムアウト
|
タグフィールド |
タグの値を保存したいとき、タグフィールドを選択します。
▪タグ
▪キャッシュ値でログをとる
▪通信エラー時の処理
|
||||||||||||||||||||||||
時刻フィールド |
時刻の情報を保存したいとき、時刻フィールドを選択します。
▪コントロールパネルの設定を使用
▪フォーマットを指定する
▪システムタイマーを使用する
▪「ms」を使用する
▪秒インデックスを保存する
|
||||||||||||||||||||||||
定数フィールド |
指定した値や空文字を保存したいとき、定数フィールドを選択します。
▪NULLを書き込む
▪指定値を書き込む |
||||||||||||||||||||||||
発生したイベントの情報を保存したいときイベントフィールドを選択します。
▪フィールドタイプ
|