- Jelina 概要
- CommBridge
- データ収集
CAN 収集
1. ノードの作成
Section titled “1. ノードの作成”(1) CommBridge の【スマートツイン】を開き、左側で【デバイス接続】に切り替えます。

(2) SocketCAN、データ処理、MQTT アップロードの各プラグインをプラグインワークスペースへ順にドラッグし、3 つのノードを作成します。

(3) SocketCAN → データ処理 → MQTT アップロードの順に 3 つのノードを接続します。

2. プランの作成
Section titled “2. プランの作成”(1) SocketCAN をダブルクリックし、【プランを追加】をクリックします。

(2) 接続設定を入力し、dbc ファイルをインポートして【次へ】をクリックします。

(3) グループとデータポイントの情報を確認します。

(4) 【完了】をクリックし、収集プランの追加を完了します。

(5) プランのスイッチをオンにし、【保存】をクリックします。

3. 結果の確認
Section titled “3. 結果の確認”(1) 【デバイス接続】の【デプロイ】をクリックし、デプロイを完了します。

(2) 【スマートツイン】に切り替え、SocketCAN ノードにマウスポインターを合わせると、ノード情報の一覧が表示されます。

(3) プランをクリックし、そのプランの各グループに含まれるデータポイントのリアルタイムデータと履歴データを確認します。

4. 設定項目の説明
Section titled “4. 設定項目の説明”| パラメーター | 説明 | 形式 | 例 | 備考 |
|---|---|---|---|---|
| プラン名 | ユーザーが設定するプランの名前 | 必須 | can 収集 | |
| Can インターフェース | デバイスに実装されている CAN ポートに応じて選択します | ドロップダウンから選択 | vcan0 | |
| DBC | 下記を参照 | DBC ファイル | testType.dbc | |
| 返却データ型 | 収集するリアルタイムデータの型 | ドロップダウンから選択 | Phy | |
| スロットリング時間 | 指定時間が経過するかデータが変化するまで、その時間内の重複フレームをスキップします。0 を設定するとスロットリングしません | 必須、数値、範囲:[0,2147483647] | Phy | |
| Socketcand | socketcand を有効にするかどうか。Socketcand はネットワークインターフェース経由でコンピューターの CAN インターフェースにアクセスできます | Yes、No | No | |
| Socketcand ポート | データのリモートデバッグに使用します | 数値 |
注意:
- DBC は元のデータ構造を定義します。以降に行うグループ(メッセージ)とデータ(シグナル)の変更は、すべてこの dbc 構造へマージされます。
- 返却データ型:Raw は生値、Phy は物理値、PhyWIthUnit は単位付きの物理値を返します。
- 通信には TCP/IP 接続と専用プロトコルを使用し、CAN フレームと制御コマンドを送信します。現在はクラシカル CAN のみに対応し、CAN FD には対応していません。
グループの追加
Section titled “グループの追加”| パラメーター | 説明 | 形式 | 例 |
|---|---|---|---|
| グループ名 | ユーザーが設定するグループの名前 | 必須 | t_msg_1_unsigned |
| メッセージ名 | メッセージの機能や用途を表す名前 | 必須。英数字とアンダースコアのみ使用可。数字で始めることは不可 | t_msg_1_unsigned |
| メッセージ ID | CAN バス上でメッセージを識別する一意の識別子 | 必須、数値または 16 進数、範囲:[0x0-0xffffffff] | 0 |
| データ長コード | データ長コード(DLC):クラシカル CAN の DLC 0 |
数値、範囲:[0,8] または [0,15] | 8 |
| 送信ノード | メッセージの送信元(Transmitter)、つまりそのメッセージを送信するデバイス(Node) | ドロップダウンから選択、既定値は Vector__XXX |
Vector__XXX |
| メッセージの説明 | メッセージの役割や機能を説明し、理解しやすくするための任意の項目 | 文字列 |
注意:
- グループは dbc ファイルのメッセージ(Message)に相当します。
- メッセージ ID は通常、11 ビット(標準フレーム)または 29 ビット(拡張フレーム)の数値です。
- メッセージ(グループ)に送信ノードを指定しない場合は、
Vector__XXXを設定する必要があります。
データの追加
Section titled “データの追加”| パラメーター | 前提条件 | 説明 | 形式 | 例 |
|---|---|---|---|---|
| シグナル名 | データの機能を表す、ユーザー定義のシグナル名 | |||
| シグナルモード | シグナルの伝送モード | ドロップダウンから選択 | ||
| 開始ビット | メッセージ内でシグナルが始まる位置(Start Bit)。0 から数え、CAN フレーム内の格納位置を決定します | 単位:bit | 0 | |
| 値の型 | シグナルのデータ型 | ドロップダウンから選択 | Intel | |
| バイトオーダー | メッセージ内でのシグナルの格納順序 | ドロップダウンから選択 | ||
| スケーリング係数 | 生値を実際の物理値に変換するための係数 | 浮動小数点数 | ||
| オフセット | データの物理値を計算する際のオフセット(offset) | 浮動小数点数 | ||
| 最小値 | シグナルの範囲を制限するための物理値の最小値 | 浮動小数点数 | ||
| 最大値 | シグナルの範囲を制限するための物理値の最大値 | 浮動小数点数 | ||
| 単位 | シグナルの物理単位 | 文字列 | ||
| 受信ノード | シグナルを受信するノード名(receiver)。1 つ以上を指定し、シグナルの宛先デバイスを表します | ドロップダウンから選択、既定値は Vector__XXX |
||
| 説明 | シグナルの物理単位。例:km/h、°C、m/s | 文字列 | ||
| 計算 | データのエイリアスを使用してユーザーが定義する式 | |||
| 長さ | 値の型が Unsigned/Signed | シグナルが占めるビット数(ビット長) | 単位:bit、[1,64] | |
| 多重化値 | シグナルモードが Signal 以外 | 多重化シグナルがどの値になったときに、このシグナルを有効にするかを設定します |
注意:
- シグナルモード:Signal、Multiplexor、Multiplexed。
- 値の型:Unsigned(符号なし整数)、Signed(符号付き整数)、Float(単精度浮動小数点数)、Double(倍精度浮動小数点数)。
- バイトオーダー:Intel バイトオーダー(リトルエンディアン)、Motorola バイトオーダー(ビッグエンディアン)。
- 開始ビット:シグナルの最下位ビット(LSB、Least Significant bit)の位置。
- 終了ビット:シグナルの最上位ビット(MSB、Most Significant bit)の位置。
- 分解能とオフセット:物理値とネットワーク値の変換に使用します。ネットワーク値 = (物理値 - オフセット) ÷ 分解能。
- シグナルに受信ノードを指定しない場合は、
Vector__XXXを設定する必要があります。
5. DBC ファイルの関連パラメーター
Section titled “5. DBC ファイルの関連パラメーター”DBC ファイル(CAN Database File)は、CAN(Controller Area Network)バス上のメッセージとシグナルの定義を記述する標準ファイル形式です。
(1) Node(ノード)
ノードは、ネットワーク内のデバイスを論理的に表したものです。各ノードはメッセージの送信元または受信先になります。
1). DBC ファイルの形式:
BU_: Node1 Node2 Node3BU_:ノード一覧を定義します。- その後に、すべてのノード名を空白で区切って記述します。
(2) Message(メッセージ)
メッセージは CAN ネットワークで伝送する最小のデータ単位です。複数のシグナルを含み、固定の ID と長さを持ちます。
1). DBC ファイルの形式:
BO_ <メッセージ ID> <メッセージ名>: <データ長コード> <送信ノード>2). 例:
BO_ 1001 SpeedMessage: 8 Node1BO_:メッセージを表します。1001:メッセージ ID。SpeedMessage:メッセージ名。8:データ長コード(DLC)。Node1:送信ノード。
(3) Signal(シグナル)
シグナルはメッセージ内のデータ単位であり、速度、回転数、温度などの具体的な物理量を表します。
1). DBC ファイルの形式:
SG_ <シグナル名> : <開始ビット>|<長さ>@<バイトオーダー><値型の符号> (<スケーリング係数>,<オフセット>) [<最小値>|<最大値>] "<単位>" <受信ノード>2). 例:
SG_ Speed : 0|16@1+ (0.1,0) [0|200] "km/h" Node2BO_:メッセージを表します。
主なパラメーターの説明
Section titled “主なパラメーターの説明”(1) シグナルモード
| シグナルモード | 意味 |
|---|---|
| Signal | 特別なマーカーや関係を持たず、データを直接格納する通常のシグナル。 |
| Multiplexor | 多重化の識別に使用するマルチプレクサーシグナル。メッセージに含める他のシグナルのグループを決定します。例えば、1 つのメッセージに複数のデータ形式を格納できる場合に、使用する形式を選択します。 |
| Multiplexed | マルチプレクサーシグナルに紐付けられた多重化シグナル。マルチプレクサーシグナルの値によって、そのシグナルを伝送するかどうかが決まります。例えば、多重化値が 1 の場合に、特定の多重化シグナルのグループを伝送します。 |