下図は、CANopen NMT(Network Management:ネットワーク管理)のグローバルデバイスステートマシンを示したものです。このステートマシンは、CANopenスレーブ局(サーボモータ/I/Oモジュール)の電源投入、設定、運転、およびシャットダウン時の完全な状態遷移プロセスを定義しています。これは、モーション制御の安全手順の基礎となります。
(画像提供: Microchip)
I. 5つの主要な状態の分類
1. Initialization(初期化)(点線枠内、電源投入時の自動プロセス)
このフェーズは、自動的に進行する2つのサブ状態で構成されています。デバイスは、外部コマンドを必要とせず、電源投入時にReset Application状態に直接移行します。
Reset Application(アプリケーションのリセット)
動作: アプリケーション層のデータ、モータの閉ループ変数、I/O信号、DS402のモーション状態、およびフォールトフラグをクリアし、オブジェクトディクショナリを工場出荷時のデフォルト設定に復元します。
自動遷移: 外部信号を必要とせず、濃色の矢印にしたがってReset Communicationに自動的に移行します。
Reset Communication(通信のリセット)
動作: CAN通信ハードウェア、PDO/SDO/SYNCの設定、COB-ID、ハートビートパラメータ、およびバスフィルタをリセットします。
自動遷移: 初期化の完了後、Preoperational状態に自動的に移行します。
技術的なヒント:マークのない濃色の矢印は自動状態遷移を示しており、マスター局によるNMTコマンドの発行を必要としません。
2. Preoperational状態(パラメータ設定状態)
デバイスは、電源投入時の初期化後、デフォルトでこの状態になります。モーション制御に関するすべての電源投入時の設定手順は、この状態で実行されます。
使用可能な機能: SDOによるオブジェクトディクショナリへの読み出し/書き込みアクセス(モータパラメータ、PDOマッピング、加速/減速、リミットスイッチ、DS402動作モードの設定)。ハートビートおよびEMCY緊急メッセージは正常に動作します。
無効な機能: リアルタイムPDOメッセージの送受信は行われません。位置/速度のモーションコマンドは発行できません。モータはスタンバイ状態になります(動作なし)。
適用例: マスター局は、デバイスの電源投入後、SDOを介してドライバのすべてのモーションパラメータを設定します。
3. Operational状態(リアルタイムモーション制御の中核となる状態)
この状態は、マスター局がStart Remote Node NMTコマンドを発行した後に有効になり、リアルタイムでモータ動作を実行できる唯一の状態です。
全機能が有効: SDO、PDO、SYNC同期、ハートビート、およびEMCYフォールトメッセージが正常に動作します。
モーションロジック: RPDOはマスター局から目標位置/制御ワードを受信し、TPDOはエンコーダのフィードバックデータを送信します。SYNC信号のサポートにより、多軸同期閉ループ制御が実現されます。
安全規則: デバイスがOperational状態から移行すると、PDOの送信は直ちに停止します。モータはリアルタイムのコマンドを受信できなくなり、シャットダウン保護機能が作動します。
4. Stopped状態(バススリープ状態)
マスター局がStop Remote Nodeコマンドを発行すると、この状態に移行し、すべてのサービス通信が完全に無効になります。
維持される機能: NMTネットワーク管理メッセージとハートビート信号のみが有効なままとなります。
無効な機能: SDO、PDO、SYNC、およびEMCYの各機能はすべて無効になり、パラメータの読み出し/書き込みおよびモータ制御は使用できません。
適用例: 設備の保守時や、全軸を一時的に停止させる時に使用し、バスはノードのオンライン状態のみを維持します。
II. 状態遷移コマンド(NMTマスター局コマンド)
ステートマシン図で示されているすべての状態遷移のトリガは、マスター局から送信されるNMTメッセージによって実行されます。
Start Remote Node
Preoperational → Operational(リアルタイムモーション制御を有効化)
Stopped → Preoperational
Stop Remote Node
Operational → Stopped
Preoperational → Stopped
Enter Preoperational
Operational → Preoperational(PDO送信を停止し、SDOを介してパラメータを再設定)
Stopped → Preoperational
Reset Application
任意の状態 → Reset Communication(バス通信の設定のみをリセットし、自動的にPreoperational状態に戻ります)
Reset Communication
任意の状態 → Reset Communication(バス通信の設定のみをリセットし、自動的にPreoperational状態に戻ります)
III. モーション制御の標準的な電源投入手順(ステートマシンの実行フロー)
1. デバイスの電源投入および起動 → Reset Application状態へ自動的に移行 → Reset Communication状態へ自動的に移行 →Preoperational状態へ自動的に移行します。
2.マスター局は、動作モード(位置モード)、加速/減速、PDOマッピング、およびリミットパラメータを含むDS402のモーションパラメータを、SDOを介して一括して設定します。
3. マスター局は、Start Remote Node NMTコマンドを送信し、Operational状態へ移行します。
4. マスター局はSYNC信号およびRPDOメッセージを周期的に送信し、リアルタイムのモータ位置閉ループモーション制御を実行します。
5. モーションパラメータの変更:Enter Preoperationalコマンドを発行してPDOの送信を停止した後、SDOを介してパラメータを変更します。
6. 保守のための機器の停止:Stop Remote Nodeコマンドを発行して、Stopped状態へ移行します。
7. 工場出荷時パラメータへの復元:Reset Applicationコマンドを発行して、初期化プロセス全体を再実行します。
その他の資料::
Microchipのアプリケーションノート
関連技術トピック
- 単純な産業用制御プロジェクトにModbus、CAN、EtherCATが必要なのはなぜですか?
- モーション制御にはCANだけでは不十分で、完全なCANopenアーキテクチャが必須なのはなぜですか?
- CANopenモーション制御の安全手順の基礎
- EtherCATはどのようにして低遅延を実現するのか?
- EtherCAT低遅延通信:物理層リファレンス回路
- Modbus RTUの動作原理:マスタースレーブアーキテクチャとポーリング方式
- Modbus RTUの通信プロセス
