CSVログのファイル名を動的に変更する

<< Click to Display Table of Contents >>

マニュアル > 監視システム構築ガイド > 主要機能の構築 > ロギング/トレンドグラフ > ロガーアクションの利用 > ロガーアクションのサンプル集 >

CSVログのファイル名を動的に変更する

概要

CSVファイルでのロギングで、ログファイルのファイル名をランタイム中に目的に応じて変更しながらロギングを行いたい場合があります。

 

例えば、以下のようなケースです。

 

ワーク、段取り番号ごとにログのファイル名を変更したい

Panel Browserの画面からの指示でファイル名を指定したい

PLCのロジックによってファイル名を指定したい

 

そこで、ここでは、上記のような場面を想定して、ランタイム中にログファイルのファイル名を動的に変更する方法について解説します。この例では、SD0000~SD009までのデータを、ワーク番号ごとにファイル名を変更して保存します。具体的には、U02.F01.T01を文字列タグとして定義し、このタグの内容をファイル名として使用します。例えば、通信によってPLCからタグの内容を取得すれば、同様の処理方式によってPLCのラダーによるファイル名の制御が可能となります。また、このタグの内容をVisualBasicやSCADA等の外部アプリケーションからIPLinkやOPC/DDE経由で書き換える事によっても、ファイル名の制御が可能となります。

 

尚、このサンプルの例では、データログのタイミングとしてU02.F01.T02(ビットタグ)を定義し、TRUEに変化した時にSD0000からSD0009までのデータをロギングします。

 

 

サンプルのダウンロード

このページで紹介されている作成例には、サンプルが用意されています。

 

サンプルは以下からダウンロードすることができます。

 

 

 

設定手順

タグの設定

 

1.仮想デバイス「U01」を追加し、データ収集のためのタグ「U01.F01.SD0000」~「U01.F01.SD0009」を設定します。
 
c_action_logger_0108
 

 

2.仮想デバイス「U02」を追加し、ファイル名のためのタグ「U02.F01.T01」とデータ取得トリガのためのタグ「U02.F01.T02」を設定します。
 
c_action_logger_0109
 
ここで、「T01」は文字列タグとして、20ワードのアスキータイプとして設定します。
 
c_action_logger_0110

 

 


アクションの設定

 

1.ロガーアクション「A01」を追加し、時刻フィールド「F01」及び「SD0000~SD0009」のタグフィールドを追加します。
 
c_action_logger_0111
 
 

2.A01のテキスト設定タブから、ログファイルのファイル名、保存先を設定します。
 
ここで、ファイル名の「拡張」から「ファイル名にタグ値を付加する」を選択し、「タグ名」に「U02.F01.T01」を指定してください。
 
c_action_logger_0112

 

 


イベントの設定

 

1.タグイベントとして「U02.F01.T01」を追加します。
 
このイベントはロギング処理のためのものではなく、ログファイル名の変更をアクションに通知するためのものです。「U02.F01.T01」が変化した時に(すなわち、ファイル名の文字列が変更された時)、アクション名「A01」、パラメータ「SETFILENAME」を実行します。パラメータ「SETFILENAME」を指定することにより、ロガーアクションはファイル名の変更を認識します(なお、このパラメータを付与した呼び出しではロギングは行われません)。
 
c_action_logger_0113
 
c_action_logger_0114

 

2.タグイベント「U02.F01.T02」を追加し、実行アクションに「A01」を指定します。
 
この設定により、「U02.F01.T02」がONになったときに「A01」が実行されます。
 
c_action_logger_0115
 
c_action_logger_0116

 

 

解説

イベントの実行アクションの定義で「SETFILENAME」パラメータを指定すると、そのタイミングでログファイルのファイル名を変更することができます。このサンプルの場合「U02.F01.T01」の文字列が変化したとき、つまりファイル名が変化したときに、ログファイルのファイル名を変更しています。動作を確認するには、適当な文字を「U02.F01.T01」に設定後、「U02.F01.T02」をTRUEにしてみて下さい。

 

ファイル名を変更したい場合は「U02.F01.T01」に異なるファイル名を再設定した後に、再び「U02.F01.T02」をFALSEからTRUEへ変更する事によって、新しいファイル名によってロギングが行われます。

 

 

hint

ファイル名が設定されていない状態の場合、ログファイルは保存されません。

上例では、「U02.F01.T01」が空白文字のまま「A01」「SETFILENAME」を実行したとしても、ファイル名は設定されません。