SysmacStudioのデータトレースファイル形式で常時出力
概略
プログラムでSysmacStudioのデータトレースにインポートできるファイルを作成します
さらにファイル名を変えながら常時ファイル出力します
FastTaskではトレースしたいデータをリングバッファに追加していきます
SlowTaskではSysmacStudioのトレースのエクスポートファイルのフォーマットに合わせてファイルを作成します
1ファイルあたり10,000レコードとして、10,000レコード書き込んだら次のファイルに切替えてファイル名に000~199の連番を付けて繰り返すようにします
ファイルはヘッダ部分の後に各データが書き込まれているので、リングバッファからデータを読み出して書き込みます
ファイルへの書き込みはデータを文字列に変換した後に書込みバッファ(バイト配列)にカンマ区切りで格納します
書込みバッファには複数のレコードをまとめてからファイル書き込みを行います
ファイル書き込み処理は小さいデータを何度も繰り返すよりも大きなデータにまとめてから書き込むほうが高速に書き込むことができるため、複数のレコードをまとめてから書き込むようにします
トレースデータ(例)
RecTime | DATE_AND_TIME | トレース日時(必須) |
SamplingNo | UINT | 判別するための任意の数値 |
Idx | UINT | インデックス |
B | BOOL[16] | トレースデータ ビット 16個 |
INT16 | INT | トレースデータ INT型 |
INT32 | DINT | トレースデータ DINT型 |
INT64 | LINT | トレースデータ LINT型 |
R | REAL | トレースデータ REAL型 |
LR | LREAL | トレースデータ LREAL型 |