通信方式
各ネットワークではマスタから定期的にコマンドを送信してレスポンスを待つ方式や、データを送信する権利(トークン)を順番に渡していく方式などさまざまな方式があり、それらの方式をそのまま使用したり組み合わせたりして通信しています。それぞれの方式な内容について説明します。
マスタ・スレーブ方式
複数台でデータの送受信を行なう際に、特定の機器(マスタ)からそのほかの機器(スレーブ)に対してコマンドを送信し、スレーブからのレスポンスを待つ方式です。
それぞれのスレーブに対して順番にコマンド・レスポンスを実施する方法や、スレーブ全体に対してコマンドを送信し、スレーブが順番にレスポンスを返す方法などネットワークによりさまざまです。
マルチマスタ方式
マルチマスタ方式とは同一ネットワーク内で複数のマスタがスレーブに対して通信する方式です。マルチマスタに対応しているネットワークでは、トポロジーを工夫したりタイミング同期などの仕組みを入れたりして、タイミング制御失敗によるデータの衝突を防止しています。
ポーリング方式
マスタ・スレーブ方式と組み合わされて使用されることが多い方式です。マスタからスレーブに対して順番に送信要求がないかを確認し、送信要求がある機器からはデータが送信されます。送信が完了したらマスタから次のスレーブに対して送信要求の確認が出されます。
トークンパッシング方式
トークンと呼ばれる発信権をネットワーク内で順番に回していくことで、送信データが衝突しないように管理しています。
トークンを周遊させる時間を管理することでリフレッシュサイクル時間を規定することができます。トークンを受け取った機器が離脱している場合は規定された時間が経過すると自動的に次の機器にトークンが移動します。
プロデューサ・コンシューマ方式
プロデューサ(生産者)とコンシューマ(消費者)の間でデータをやり取する方式で、プロデューサはデータを作成して次々に送信していきます。コンシューマ側では受信したデータの中に格納されたIDを確認し、自分に関連するID情報を順番に処理していきます。この方式では個別のスレーブ用に別々のコマンドを送信する必要がなく、関連するIDを確認してコンシューマ側で順番に処理していくことで送信するデータ数を削減できます。
オンザフライ方式
それぞれの機器に対して領域が割り振られており、各機器はデータを受信すると、自分のアドレスに対して割り当てられた読み出し領域のデータを読み出し、書き込み領域にデータを書き込んで次の機器にデータを送る方式です。一つのデータの情報を最大限に使用できるため、効率よく通信できるメリットがあります。