構造体からトレースデータ用csvファイルへ変換

概略

プライマリタスク(FastTask)で記録したいデータを毎スキャン構造体に追加していき、構造体が一杯になったらSDに保存します
保存したバイナリファイルはPCでRecSSConverterを使ってSysmacStudioのトレース用CSVファイルへ変換してSysmacStudioのデータトレースにインポートしてグラフ表示できます

イメージ ファイル名:
Rec001.dat
Rec002.dat
Rec003.dat
...
ファイル名:
Rec001.dat
Rec002.dat
Rec003.dat
...
イメージ

1.準備

レコードする構造体のルール

  • 変数の最大数とデータ型
  • 形式 変数の最大数 データ型
    NX701
    NJ501
    192 基本データ型(文字列を除く)
    配列
    NX102
    NX1P2
    NJ301
    NJ101
    48
  • 先頭の項目にDATE_AND_TIME型を設定する
  • オフセット種別を"CJ"にする
  • 例:

  • 格納するための構造体の配列を2つ作成する
  • 例:

2.PLCでデータ収集

データを集めて(レコーディングして)CSVファイルに書き出す流れ

  1. 構造体sDataの単体の変数RecDataにデータを入れます
  2. 格納先である構造体Data0の配列に順番にRecDataを挿入します
  3. 次のスキャンからも1,2繰り返します
  4. Data0がいっぱいになったらFileWriteVar命令でSDカードに書込む指示を出します
  5. と同時に格納先をData1に切り替えます
    (保存には複数スキャンかかるのでData1側にデータを追加します)
  6. Data1がいっぱいになったら格納先をData0に切り替えてData1をSDカードにファイル名を変えて書き込みます
  7. これを繰り返します

3.変換

バイナリファイル

PLCで作成したファイルはこんな感じです

バイナリファイルをSysmacStudioトレース用CSVファイルに変換

  1. RecSSConverterを起動します
  2. 変換するレコードがファイルにPLCで保存したバイナリファイルを指定します
  3. レコードの構造体エリアにSysmacStudioで設定した構造体の形をコピペします
  4. [変換]ボタンを押すとバイナリファイルと同じフォルダに同じファイル名で拡張子が.csvのファイルが作られます

SysmacStudio データトレースへインポート

変換したcsvファイルはSysmacStudioのデータトレース画面でインポートすることができます

ダウンロード

RecSSConverter.zip

ダウンロードされたときは利用規約に同意したものとみなします