Controller Area Network
低速CANは、ノードのグループを一緒に接続する必要がある場合によく使用される。
ISO仕様では、バスを最小コモンモードバス電圧内に維持する必要があるが、この範囲内でバスを保持する方法は定義していない。
CANバスは終端される必要がある。終端抵抗は、反射を抑制し、バスをレセッシブまたはアイドル状態に戻すために必要である。
高速CANはリニアバスの両端で120 Ωの抵抗を使用する。低速CANは各ノードで抵抗を使用する。ISO 11783(英語版)に定義されている終端バイアス回路のような他のタイプの終端が使用される場合もある。
終端バイアス回路は、4線式ケーブル上のCANシグナリングに加えて、電力と接地を提供する。これにより、各バスセグメントの両端で自動バイアスと終端が自動的に行われる。 ISO 11783ネットワークは、ホットプラグインとバスセグメントとECUの取り外し用に設計されている。
各ノードには以下のものが必要である。
CPU、マイクロプロセッサ、またはホストプロセッサ ホストプロセッサは、受信したメッセージが何を意味し、どのメッセージを送信するかを決定する。 センサ、アクチュエータ、制御デバイスをホストプロセッサに接続することができる。
CANコントローラ(通常はマイクロコントローラの一部) 受信: CANコントローラは、メッセージ全体が利用可能になるまで、バスから受け取ったシリアルビットを格納する。
CANネットワーク上の全てのノードは、同じ公称ビットレートで動作する必要があるが、ノイズ、位相シフト、オシレータ公差、オシレータドリフトなどにより、実際のビットレートが公称ビットレートと同じでない可能性がある。別のクロック信号が使用されないので、ノードを同期させる手段が必要である。アービトレーション中のノードは、自身の送信データと他のノードの送信データの両方を同時に観測することができなければならないため、アービトレーション中には同期が重要である。同期は、ノード間の発振器タイミングの変動によってエラーが発生しないようにするためにも重要である。
同期は、バスアイドル期間(開始ビット)の後、最初のリセッシブからドミナントへの遷移時のハード同期から開始される。再同期は、フレーム中の全てのリセッシブからドミナントへの遷移時に行われる。CANコントローラは、公称ビット時間の倍数で遷移が発生することを期待している。コントローラが期待する正確な時間に遷移が発生しない場合、コントローラはそれに応じて公称ビット時間を調整する。