1. ホーム
  2. 製品・技術情報
  3. KVASER CANプロトコルとは?(CANプロトコルチュートリアル)

製品・技術情報

KVASER CANプロトコルとは?(CANプロトコルチュートリアル)

  • 2022.02.22
PART 4:CAN物理層
CAN bus

CAN busは、bit-stuffingを使用したNon-Return To Zero(NRZ)を使用しています。ドミナント(論理的に0)とレセッシブ(論理的に1)がある2つの異なるシグナル状態があります。これらは、使用される物理層(いくつかあります)に依存する特定の電気レベルに対応しています。モジュールは、有線でバスに接続されています。1つのノードがバスをドミナント状態に駆動している場合、リセッシブ状態を送信するノードの数に関係なくバス全体がその状態になります。

異なる物理層

物理層は、バス上の電気レベルと信号方式、ケーブルインピーダンスおよび類似の情報を定義します。
いくつかの異なる物理層があります:

  • 最も一般的なタイプは、CAN規格、part ISO 11898-2、および2線式平衡型信号方式で定義されたタイプです。これは、"high-speed CAN"とも呼ばれます。
  • 同じISO規格の別のパートであるISO 11898-3は、低スピードバスのための別の2線式平衡信号方式を定義します。これはフォールトトレラントなので1本のバスラインが切断、グランドまたはVbatに短絡しても信号が継続できます。これは、"low-speed CAN"と呼ばれます。
  • J2411は、シングルワイヤ(勿論、接地を含む)物理層を定義します。例えば、主に自動車で使用されているGM-LANがあります。
  • いくつかの独自(proprietary)の物理層が存在します。
  • RS485の改造は、CANドライバが存在しない古い時代に使用されていました。
  • メッセージの詳細に興味のある方は、Page 6のオシロスコープの写真をいくつかご覧ください。

異なる物理層は、原則として相互運用ができません。いくつかの組み合わせは、優れた条件の下で動作するかもしれませんし、動作するように見える場合があります。例えば、同じバス上で"low-speed"および"low-speed"の両方のトランシーバを使用すると、うまく動作することがあります。

非常に多くのCANトランシーバチップは、NXPによって製造されています。代替ベンダとしては、Bosch, Infineon, Texas Instruments ,Vishay Siliconixが含まれます。

非常に一般的なタイプは、ISO 11898で定義された物理層を実装する82C250トランシーバです。82C251は、改良版です。
"low-speed CAN"の一般的なトランシーバは、NXPのTJA1054があります。

最大Busスピード

規格に従ってCAN busの最大Busスピードは、1 Mbit/sです。一部のCANコントローラは、1Mbit/sよりも高速に対応し、特別なアプリケーションのために考慮されています。

Low-speed CAN(ISO 11898-3、上記参照)は、最大125 kbit/sが可能です。

シングルワイヤCANは、標準モードで最大約50 kbit/s、ECUプログラミングなどに使用される特別な高速モードを使用すると最大約100 kbit/sになります。

最小Busスピード

バストランシーバの中には、特定のビットレート以下にはできないものがあることに注意してください。例えば、82C250や82C251を使用しても問題なく10kbit/sまで下げることができますが、代わりにTJA1050を使用した場合は50kbit/sを下回ることができません。データシートを確認してください。

最大ケーブル長

1Mbit/sのスピードで最大で約40mのケーブル長を使用することができます。これは、調停スキームでは、ビットがサンプリングされる前に信号の波面(wave front of the signal)が最も離れたノードまで伝搬し再び戻ってくる必要があるためです。言い換えれば、ケーブル長は光速によって制限されます。
その他の最大ケーブル長は次のとおりです(これらの値は近似値です):

  • 500 kbit/s:(330 ft)100 m
  • 250 kbit/s:(650 ft)200 m
  • 125 kbit/s:(1600 ft)500 m
  • 110 kbit/s: (20000 ft)6 km

ガルバニ絶縁を提供するためにオプトカプラを使用する場合は、それに応じて最大バス長が減少します。ヒント:高速のオプトカプラを使用し、指定された最大ビットレートではなく、デバイスを介した遅延を見てください。

Busターミネーション(終端)

ISO 11898 CAN busは、ターミネーションする必要があります。これは、バスのそれぞれの端に120Ωの抵抗を使用して終端します。このターミネーションは、次の2つの目的があります:

  1. バスの終端での信号の反射を除去
  2. バスが正しいDCレベルであることを保証

ISO 11898 CAN busは、スピードに関係なく常にターミネーションする必要があります。繰り返しになりますがISO 11898 CAN busは、そのスピードに関係なく常にターミネーションする必要があります。実験室の作業レベルでは、ターミネータが1つあれば十分であるかもしれません。ターミネータを接続しなくてもCAN busが動作する場合は、運が良いだけです。

"low-speed CAN"、シングルワイヤCAN、その他の物理層は、ターミネータを必要とする場合としない場合があります。しかし、vanilla high-speed ISO 11898 CAN busは、常に少なくとも1つのターミネータを必要とします。
詳細については、CAN busターミネーションをご覧ください:

ケーブル

ISO 11898では、ケーブルのインピーダンスは公称120Ωと規定されていますが、[108~132]Ω間のインピーダンスが許可されています。今日の市場において、この要件を満たすケーブルは多くはありませんが存在します。将来的には、許容インピーダンス間隔が拡大される可能性が高くなります。
ISO 11898 は、シールド付きまたはシールドなしのツイストペアケーブルについて定義されています。シングルワイヤ規格SAE J2411の作業が進行中です。

CANコネクタ

CAN busコネクタの規格は、特に定められていません! 通常、各上位層プロトコル(!)では、1つまたはいくつかのCAN busコネクタのタイプを定義しています。一般的なタイプとしては下記のがあります:

  • 9-pin DSUB、CiAが提案。
  • 5-pin Mini-Cおよび/または Micro-C、DeviceNetおよびSDSで使用されています。
  • 6-pin Deutchコネクタ、モバイル油圧機器用にCANHUGにより提案されたもの。Page 7では、いくつかの異なるコネクタレイアウトを表示します。