次に、リモートフレームについて紹介する。
リモートフレームはデータフレームの要求に使用され、基本構造はデータフレームからデータフィールドを除いたもの(もしくは、データフレームでDLCを0、データフィールドが0バイトのもの)と同一になっている(図3)。
リモートフレームのIDは、要求するデータフレームのIDを設定し、リモートフレームのDLCは要求するデータフレームのDLCを設定する。データフレームと違う部分は、RTRがリセッシブ固定となることである。この違いにより、RTRを使用しデータフレームとリモートフレームの識別を行うことが可能となっている。
CAN通信における通信方法の基本は、データを必要としているノードからリモートフレームを送信し、それに対して該当するノードからデータフレームを返すという形になっている。リモートフレームはデータの要求、データフレームは要求に対してのデータの返信を行う(図4)。
この方式を使用すると、ノード内マイコンのリソースを送受信に占有されず、必要なときのみリソースを使用でき、バス占有率も下がることになる。しかし、頻繁なデータのやりとりにおいては、必要なデータフレーム数と同じリモートフレームが必要となるため、かえってバス占有率が上がってしまう可能性もある。
このため、制御の高度化により各ノード間の情報交換が非常に多くなってくるに従って、従来方式と違った方法で通信を行うことが考え出された。
以下で、その“従来方式と違う方法”について見ていこう。
例えば、各ノードから自由にデータフレームを送信し、データフレームを必要とするノードが自由に受信する方式であれば、リモートフレームを使用せず、データフレームのみで各ノードで情報交換が実現可能となる。
リモートフレームとデータフレームによるやりとりを
“オーダーしてから料理が運ばれてくるレストラン”
とすると、各ノードがデータフレームを送信して必要なときにノードがデータフレームを受信する方法は、
“回転寿司”
のようなものといえるだろう。いわば、各ノードはベルトコンベアに載せられて運ばれてきたデータフレームを必要なときに受信していることになる。
Copyright © ITmedia, Inc. All Rights Reserved.