4 CANopen
4.3 ネットワーク通信
4.3.3 ネットワーク管理オブジェクト
4.3.3.1 モジュール制御プロトコル
NMT(ネットワーク管理)マスタはこのプロトコルを用いてネットワーク上の全てのNMT
ス レ ー ブ の ス テ ー タ ス を 調 べ る こ と が で き ま す 。 定 義 さ れ た ス テ ー タ ス に は 、 INITIALIZING、PRE-OPERATIONAL、OPERATIONAL、STOPPEDの4ステータスが あります。全てのノードのステータスを1コマンドで変えたり、また各ノードのステータス を個別に変更したりすることもできます。
4.3.3.1.1 リモートノードスタート
このサービスにより、NMTスレーブ(バスカプラ)のステータスをOPERATIONAL に変 更します。
図4-12:リモートノードスタート g012415x
ノードID=0:存在する全てのノードのステータスをOPERATIONALに変更します。
4.3.3.1.2 リモートノードストップ
このサービスにより、NMTスレーブ(バスカプラ)のステータスをSTOPPEDに変更しま す。
図4-12:リモートノードストップ g012416x
ノードID=0:存在する全てのノードのステータスをSTOPPEDに変更します。
リモートノードスタート
NMTマスタ NMTスレーブ
リモートノードストップ
NMTマスタ NMTスレーブ
86 CANopen
ネットワーク通信
4.3.3.1.3 PRE-OPERATIONAL移行
このサービスにより、NMTスレーブ(バスカプラ)のステータスをPRE-OPERATIONAL に変更します。
図4-14:PRE-OPERATIONAL移行 g012417x
ノードID=0:存在する全てのノードのステータスをPRE-OPERATIONALに変更します。
4.3.3.1.4 ノードリセット
このサービスにより、NMTスレーブ(バスカプラ)はリセットされます。
図4-15:ノードリセット g012418x
ノードID=0:存在する全てのノードがリセットされます。
4.3.3.2 エラー制御プロトコル
このプロトコルにより、ネットワーク上で起こりうるエラーの検出ができます。マスタはノ ードが定義されたステータスにまだいるかどうか、または例えばリセット後に別のステータ スに移ったかを調べることができます。
PRE-OPERATIONAL 移行
NMTマスタ NMTスレーブ
ノード・リセット
NMTスレーブ NMTマスタ
4.3.3.3 ノードガーディング・プロトコル
ノードガーディングが使用された場合、NMTスレーブはマスタからのRTRフレームによっ て周期的に現在の状態を送るように要求されます。追加のトグルビットのオンオフにより、
マスタはNMTスレーブがまだ正しく動作しているかどうかを検出できます。
図4-16:ノードガーディング・プロトコル
4.3.3.4 ハートビート・プロトコル
このプロトコルを用いると、RTRフレームなしにモニタすることが可能になります。ハート ビート生成ノード(プロデューサ)は周期的にハートビート・メッセージを送信し、複数の 他のノード(コンシューマ)がこれを受信します。ハートビート・メッセージは現在のプロ デューサの状態コードを含んでいます。
図4-17:ハートビート・プロトコル g012420x
ハートビート・メッセージの中身:
ビット7= 常に0 ビット6〜0= 0:BOOTUP
4:STOPPED
5:OPERATIONAL
127:PRE-OPERATIONAL ノードガーディング・プロトコル
NMTマスタ NMTスレーブ
ハートビート・プロトコル
ハートビート・プロデューサ ハートビート・コンシューマ
88 CANopen
ネットワーク通信
4.3.3.5 ブートアップ・プロトコル
こ の プ ロ ト コ ル は NMT ス レ ー ブ か ら 、 そ の ノ ー ド 状 態 が INITIALIZING か ら
PRE-OPERATIONALに変わったことを伝えるのに用いられます。この機能はハードウェア
/ソフトウェア・リセットまたはサービスリセット・コードの発行後実行されます。
NMTスレーブ NMTマスタ
図4-18:ブートアップ・プロトコル g012421x