SSレコーダの作り方 (2/4)
レコードの設定
-
ここでは以下のようなデータをトレースしてファイル出力後にSysmacStudioのデータトレースへインポートします
トレースするデータ ビットを16個、INT型、DINT型、LINT型、REAL型、LREAL型をそれぞれ1個づつ リングバッファの容量 65535個 トレースする周期 2ms -
レコード開始フラグでリングバッファにデータを溜めます
そのまま放置でリングバッファに最新データが随時上書きされていきます
任意のタイミングでレコード書き込みフラグをONにして溜めたデータをファイルに書き出すようにします
手順1:リングバッファの作成
-
1-1. リングバッファ用構造体の作成
画像クリックで大きくなります
-
トレースしたいデータを入れるsData構造体を作成します
Data構造体をリングバッファ用の構造体に入れてバッファリングに必要なサイズだけ配列を設定します
この配列の数がバッファサイズになります
名称 データ型 内容 sRingBuffer Top
UINT 追加位置 Bottom
UINT 読出し位置 Count
UINT 格納数 Data
sData[65535] バッファ RecTime
DATE_AND_TIME SamplingNo
UINT Idx
UINT B
BOOL[16] INT16
INT INT32
DINT INT64
LINT R
REAL LR
LREAL
-
1-2. サンプルからファンクションをコピー
-
ファンクションにRingBufPutファンクションとRingbufGetファンクションをリングバッファのサンプルからコピーしておきます