J1939プロトコルは、国際的な協会であるSAE (Society of Automotive Engineers) から提供されており、物理レイヤーにISO11898準拠の高速CANを使用して動作します。主な応用範囲は、商用車のディーゼルエンジン、パワー トレイン、シャーシ系機能などの制御です。このプロトコルは、オンロード用の商用車両やオフロード用の建設機械や特殊車両に使用されます。J1939プロトコルからの派生として、ISO11783に基づく農業機械用のISOBUS、舶用機器のNMEA2000、Truck & Trailerインターフェイス用のISO11992があります。また、FMS標準規格もJ1939通信がベースとなっています。
J1939は、チャンネル ベース通信ではなく、分散化ネットワーク マネジメントを使用するマルチマスター システムです。1つのネットワーク セグメント当たり、最高254個の論理ノードと30個の物理ECUをサポートします。ネットワーク上で扱う情報は、パラメータ (シグナル) として定義され、4つのデータ ページでパラメータ グループ (PG) ごとに組み合わされます。各パラメータ グループは、一意の数字であるパラメータ グループ ナンバー (PGN) によって特定できます。PGNに関係なく、各シグナルには一意のサスペクト グループ ナンバー (SPN) が割り当てられます。
通常、ほとんどのデータ通信は周期的に行われるので、個々のデータ リクエストは必要とせずにすべてのECUが受信できます (ブロードキャスト通信) 。また、通常のデータ通信に使うパラメータ グループのほとんどが、データ長が8バイトに最適化されています。そのため、CANプロトコルを非常に効率良く使用できます。コンフィギュレーション データや診断データなどの特定の情報は、2つのECU間 (ピアツーピア) で排他的に送受信できます。通信タイプ (ブロードキャストまたはピアツーピア) は、使用するパラメータ グループ毎に予め決められているプロパティです。つまり、どのパラメータを送信するかという定義だけでなく、送信タイプもパラメータ グループによって異なります。
データのボリュームが大きい(8バイトを超える)場合は、トランスポート プロトコル (TP) を使用して送信します。TPは、BAM (Broadcast Announce Message) または CMDT (Connection Mode Data Transfer) のいずれかです。BAM TPを使用すると、ブロードキャストによるデータの分割送受信が行われます。送信側と受信側の間のコントロール データ フロー (ハンドシェイク) はありません。CMDT TPを使用すると、2つのECU間でデータの分割送受信が行われます。途中でエラーが発生した場合、データ送信を最初からやり返さなくとも、受信側のフロー コントロールにって必要な部分のデータ通信だけを再送信できます。また、CMDT TPでは、受信側でデータの受信確認ができます。
CANネットワークでピアツーピア通信ができるように、J1939の各ECUには、0〜253の一意のアドレスを割り当てます。同じアドレスを持つ2つのECUが混在して動作中に誤った通信が行われないように、ネットワーク マネジメント (NM) という巧妙なプロトコルを用いる必要があります。J1939の場合、NMはネットワーク上の各ECUに分散して構成されます。つまり、各ECUはNMの最小限の機能を実装する必要があります。NMのタスクは次のとおりです。
- アドレス競合の解決 (最小要件)
- ECUアドレスが1つのネットワークで重複していないか常にチェック (最小要件)
- 実行時のECUアドレス変更
- ワールドワイドで唯一の識別子となるECU個別の64bitネーム
- この64bitネームは、ECUがネットワークでどのような機能を担うかを特定する場合にも使用されます。

資料請求