vssp_capture_jp

VSSPコマンドの解説へ戻る
English | Japanese

VSSP 計測データ取得コマンドの解説

YVT から計測データ取得を行うコマンドの説明です。
計測データ連続取得の開始/停止はDATコマンドで行います。

計測開始/停止

DATコマンドで取得できるデータには3つの種類があり、どの種類のデータを取得するかは要求コマンドで指定します。

ri:距離+強度(range and intensity)
ro:距離(range only)
ax:補助センサのデータ(auxiliary)

(例)距離+強度の連続取得
開始要求コマンド: "DAT:ri=1\n"
停止要求コマンド: "DAT:ri=0\n"

取得データ

連続取得開始要求コマンドにより、センサから指定したデータが連続取得形式で送信されます。
以下、riコマンド(距離+強度)を例に応答コマンドの形式を説明します。

応答コマンドはVSSP共通ヘッダ、距離測定データヘッダ、エコーインデックス配列、計測データ配列の
4つで構成されます。
初回のみ、VSSP共通ヘッダ+エコーバックが送信されます。
なお、VSSP共通ヘッダの①②以外はすべてバイナリデータであり、マルチバイトのデータはすべてリトルエンディアンになります。

エコーインデックス配列の後ろに距離[mm](2byte)+強度(2byte)が合計エコー数個分並びます。

【データ例】

ライン番号 line = 2
データ先頭スポット番号 spot = 0
エコーインデックス配列 index[] = {0, 1, 3, 5, 5, …}
距離+強度測定データ配列 data[] = {100, 30, 150, 20, 105, 35, 102, 22, 103, 31, 111, 27, …}

【任意スポットデータ取得手順】

〇 スポットデータi のエコー数

index[ i + 1 ] - index[ i ]

エコーインデックスが1つ後の値と重複している場合は、そのスポットはエコー無しとなります。(データ例のスポット3番)

〇 特定スポットの全エコーデータにアクセス

for (p = index[ i ], echo=0; p < index[ i + 1 ]; ++p, ++echo){
// 距離 data[p * 2]
// 強度 data[p * 2 + 1]
}

Related

Wiki: top_jp
Wiki: vssp_capture_en
Wiki: vssp_capture_jp
Wiki: vssp_jp