データを解析
使用シーン
主に、受信した生データを構造化して解析するために使用します。カスタム通信システム、データ形式変換、またはプロトコル解析に適しています。通常は データを受信 ステップの後に接続して使用します。また、データ処理ステップや結果表示ステップと組み合わせて使用することもできます。
基本概念
-
データ解析方式
このステップは、以下の2種類のデータ解析方式に対応しています。
-
テキスト解析:入力された文字列を、指定した区切り文字に基づいて複数のフィールドに分割します。プロトコルデータが表示可能な文字列形式の場合に適しています。例えば、外部機器から送信されたメッセージが
SN,001,98.5\nの場合、カンマ区切りで SN、001、98.5 の3つのフィールドに分割できます。 -
バイト解析:入力されたバイトストリームを、指定した開始位置と長さに基づいて複数のフィールドに分割し、指定したデータ型で解析します。プロトコルデータがバイナリ形式の場合に適しています。例えば、受信したバイトストリームが
0x12 0x34 0x56 0x78の場合、ビッグエンディアン順とデータ型(Int32 など)を組み合わせて、10進数値として解析できます。
-
-
ポートとフィールドのマッピング
カスタム出力ポートはデータフィールドと1対1でマッピングでき、構造化された出力設定を効率的に行えます。
-
バイト順
バイトストリーム解析時の順序(ビッグエンディアン、リトルエンディアンなど)は、数値やフィールドの実際の意味、および読み取り結果に影響します。
使用フロー
このステップの使用フローは以下の通りです。
-
解析するデータの入力ポートを接続し、使用する入力データを選択します。
-
解析方式 を設定し、適用する解析方式(テキスト解析またはバイト解析)を選択します。
-
テキスト解析を選択する場合:区切り文字 を設定し、カスタム出力ポート(ポート名、データ型)を設定します。
-
バイト解析を選択する場合:バイト順 を設定し、カスタム出力ポート(開始位置、バイト長、ポート名、データ型)を設定します。
-
-
実際の要件に応じて各パラメータを調整し、フィールド範囲が重複せず、データ型が正しく設定されていることを確認します。
-
ステップを実行し、各指定ポートに出力された解析結果を確認します。
パラメータ説明
| パラメータ | 説明 |
|---|---|
解析方式 |
データの解析方式を指定します。 オプション:
入力データの種類(文字列またはバイトストリーム)に応じて適切な解析方式を選択し、正しく解析できるようにしてください。 |
テキスト解析
| パラメータ | 説明 |
|---|---|
区切り文字 |
文字列を分割するための区切り文字を指定します。データはこの区切り文字に基づいて複数のフィールドへ分割されます。 オプション:
初期値:カンマ(,) 実際のデータ内容に応じて適切な区切り文字を選択し、フィールドが正しく解析されるようにしてください。 |
カスタム出力 |
データフィールドの解析ルールを設定し、各フィールドに対応する出力ポート名を指定できます。分割後のフィールド順(フィールド1、フィールド2……)に従って順番に設定してください。 各フィールドに対して明確なポート名とデータ型を設定し、解析構造の一貫性を保つことを推奨します。 |
ポート名 |
カスタム出力ポートの名称を指定します。この名称は、出力フィールドポートの識別子として使用されます。 出力の可読性向上のため、ポート名はフィールド内容に関連する名称にすることを推奨します。 |
データ型 |
現在のフィールドの解析タイプを指定します。 オプション:
初期値:文字列 解析するフィールド内容に応じて適切な型を選択し、型不一致によるデータ処理異常を防止してください。 |
バイト解析
| パラメータ | 説明 |
|---|---|
バイト順 |
複数バイトデータのバイトストリーム内での並び順を指定します。バイト順序が異なると、最終的に読み取られる数値結果も変化します。 オプション:
初期値:ABCD(ビッグエンディアン) 通信プロトコルまたはデータソース仕様に従ってバイト順序を設定し、データを正しく解釈できるようにしてください。 |
カスタム出力 |
データフィールドの解析ルールを設定し、各フィールドに対応する出力ポート名を指定します。システムは 開始位置 と バイト長 に基づいて読み取り範囲を決定し、指定された型で解析して出力します。フィールドのバイト範囲は重複してはいけません。 バイトストリーム構造に厳密に従ってフィールドを設定し、重複を避けて正しく解析できるようにすることを推奨します。 |
ポート名 |
カスタム出力ポートの名称を指定します。この名称は、出力フィールドポートの識別子として使用されます。 出力の可読性向上のため、ポート名はバイトデータ内容に関連する名称にすることを推奨します。 |
データ型 |
現在のフィールドのデータ解析型を指定します。複数の数値型および文字型解析に対応しています。 オプション:
初期値:Char8 実際の要件およびデータ構造に応じて適切な型を選択し、オーバーフローやデータ不一致を防止してください。 |
開始位置 |
現在のデータフィールドの、バイトストリーム内での開始バイトインデックス(0から開始)を指定します。 開始位置は適切に設定し、バイト順に従って各フィールドを順番に設定し、重複が発生しないようにしてください。 |
バイト長 |
現在のデータフィールドが占有するバイト数を指定します。開始位置 と バイト長 によって読み取り範囲が決定されます。 開始位置と必要なデータ型サイズを組み合わせて適切に設定し、オーバーフローやフィールド解析不足を防止してください。 |
トラブルシューティング
|