(57)【要約】【課題】複数の制御装置により構成される同期制御システムにおいて、同期運転を実現する際に、安全性を確保すると共に、システム全体として煩雑さを解消し、コストを低減する。【解決手段】サブマスタ及びスレーブの制御装置１０−２〜１０−ｎは、マスタの制御装置１０−１により送信された同期カウンタ値Ｖに基づいて、自らの基準カウンタ値Ｕを調整し、同期運転を行う。サブマスタの制御装置１０−２は、同期カウンタ値Ｖを受信することができない場合、サブマスタからマスタにモードを切り替え、自らのカウンタ１２２のカウンタ値をスレーブの制御装置１０−３〜１０−ｎへ送信する。スレーブの制御装置１０−３〜１０−ｎは、新たなマスタの制御装置１０−２からのカウンタ値に基づいて基準カウンタ値Ｕを調整し、制御装置１０−２〜１０−ｎの同期運転を維持する。【選択図】図６
2009153311.tif 000002
【特許請求の範囲】
【請求項１】
複数の制御装置により構成され、各制御装置が同期運転を行う同期制御システムにおいて、
前記複数の制御装置のうちの１台をマスタの制御装置とし、他の１台をサブマスタとし、前記マスタ及びサブマスタ以外をスレーブの制御装置とし、
前記マスタの制御装置は、
自らが保持するマスタカウンタからカウンタ値を同期カウンタ値として読み出し、前記同期カウンタ値を他の制御装置へ送信する送信部を備え、
前記サブマスタ及びスレーブの制御装置は、
前記マスタの制御装置の送信部から同期カウンタ値を受信する受信部、及び、
自らが保持するスレーブカウンタからカウンタ値を基準カウンタ値として読み出し、前記受信部により受信した同期カウンタ値と、前記読み出した基準カウンタ値とに基づいて、スレーブカウンタがマスタカウンタに同期するように、スレーブカウンタのカウンタ値を調整する制御部をそれぞれ備え、
前記サブマスタの制御装置は、同期カウンタ値を所定時間内に受信しない場合に、前記マスタの制御装置として動作する、
ことを特徴とする同期制御システム。
【請求項２】
請求項１に記載の同期制御システムにおいて、
前記サブマスタ及びスレーブの制御装置に備えた制御部は、前記受信した同期カウンタ値と、前記読み出した基準カウンタ値と、前記スレーブカウンタのカウント開始時点から基準カウンタ値を読み出した時点までの間の時間とに基づいて、前記マスタカウンタのカウンタ値とスレーブカウンタのカウンタ値との間のズレ時間を算出し、前記ズレ時間がゼロになるように、スレーブカウンタのカウンタ値を調整する、
ことを特徴とする同期制御システム。
【請求項３】
複数の制御装置により構成され、各制御装置が同期運転を行う同期制御システムにおける前記制御装置において、
マスタモード、サブマスタモード及びスレーブモードのうちのいずれかのモードに設定するモード設定部、
所定の下限値及び上限値の間をカウントしてカウンタ値を生成するカウンタ、
前記モード設定部によりマスタモードに設定されている場合、前記カウンタからカウンタ値を同期カウンタ値として読み出し、前記同期カウンタ値を他の制御装置へ送信し、前記モード設定部によりサブマスタモードまたはスレーブモードに設定されている場合、マスタモードに設定されている制御装置から同期カウンタ値を受信する通信部、及び、
前記モード設定部によりサブマスタモードまたはスレーブモードに設定されている場合、前記カウンタからカウンタ値を基準カウンタ値として読み出し、前記通信部により受信した同期カウンタ値と、前記読み出した基準カウンタ値とに基づいて、前記カウンタがマスタモードに設定されている制御装置のカウンタに同期するように、前記カウンタのカウンタ値を調整する制御部を備え、
前記モード設定部によりサブマスタモードに設定されている場合、前記通信部が、マスタモードに設定されている制御装置から同期カウンタ値を所定時間内に受信しないとき、前記モード設定部が、サブマスタモードからマスタモードの設定に切り替える、
ことを特徴とする制御装置。
【請求項４】
請求項３に記載の制御装置において、
前記モード設定部によりサブマスタモードまたはスレーブモードに設定されている場合、前記制御部は、前記受信した同期カウンタ値と、前記読み出した基準カウンタ値と、前記カウンタのカウント開始時点から基準カウンタ値を読み出した時点までの間の時間とに基づいて、マスタモードに設定されている制御装置のカウンタのカウンタ値と前記カウンタのカウンタ値との間のズレ時間を算出し、前記ズレ時間がゼロになるように、前記カウンタのカウンタ値を調整する、
ことを特徴とする制御装置。
【請求項５】
複数の制御装置により構成され、各制御装置が同期運転を行う同期制御システムにおける同期制御方法において、
前記複数の制御装置のうちの１台をマスタの制御装置とし、他の１台をサブマスタとし、前記マスタ及びサブマスタ以外をスレーブの制御装置とし、
前記マスタの制御装置が、自らが保持するマスタカウンタからカウンタ値を同期カウンタ値として読み出し、前記同期カウンタ値を他の制御装置へ送信する第１のステップと、
前記サブマスタ及びスレーブの制御装置が、マスタの制御装置から同期カウンタ値を受信する第２のステップと、
前記サブマスタ及びスレーブの制御装置が、自らが保持するスレーブカウンタからカウンタ値を基準カウンタ値として読み出し、前記受信した同期カウンタ値と、前記読み出した基準カウンタ値とに基づいて、前記スレーブカウンタがマスタカウンタに同期するように、前記スレーブカウンタのカウンタ値を調整する第３のステップと、
前記サブマスタの制御装置が、同期カウンタ値を所定時間内に受信しない場合に、自らが保持するスレーブカウンタをマスタカウンタとして、当該マスタカウンタからカウンタ値を同期カウンタ値として読み出し、前記同期カウンタ値を他の制御装置へ送信する第４のステップと、
を有することを特徴とする同期制御方法。
【請求項６】
請求項５に記載の同期制御方法において、
前記第３のステップは、前記受信した同期カウンタ値と、前記読み出した基準カウンタ値と、前記スレーブカウンタのカウント開始時点から基準カウンタ値を読み出した時点までの間の時間とに基づいて、前記マスタカウンタのカウンタ値とスレーブカウンタのカウンタ値との間のズレ時間を算出し、前記ズレ時間がゼロになるように、スレーブカウンタのカウンタ値を調整する、
ことを特徴とする同期制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数の制御装置が通信により接続されるシステムに関し、特に、複数の制御装置が互いに同期を維持した状態で動作する同期制御システム、制御装置及び同期制御方法に関する。
【背景技術】
【０００２】
従来、複数の制御装置が通信により接続され、互いに同期を維持した状態で動作する同期制御システムとして、特許文献１に記載のものが知られている。この同期制御システムは、モータを速度制御する電力変換システムであり、２台のユニットＡ，Ｂが、互いに同期したＰＷＭキャリア信号を生成し、そのＰＷＭキャリア信号をそれぞれインバータへ供給してモータを同期駆動させるものである。
【０００３】
図８は、従来の同期制御システムの構成を示す図である。図８を参照して、この同期制御システムは、モータ（図示せず）へ駆動電流をそれぞれ供給するユニットＡ，Ｂを備え、これらは通信線１０２２により接続されている。
【０００４】
ユニットＡは、電流指令演算部１０１０及びシリアル送信回路１０１４を有する速度制御部１００１と、ＡＣＲ制御（電流制御）部１０１１、ＰＷＭキャリア発生回路１０１６、ＰＷＭパターン発生回路１０１７、デッドタイム回路１０１８、ゲート駆動回路１０１９、インバータ１０１３及び電流検出器１０１２を有する電力変換ユニット１００２Ａとを備えている。また、ユニットＢは、シリアル受信回路１０１５、ＰＬＬ発振回路１０２０、位相補正回路１０２１、ＰＷＭキャリア発生回路１０１６、ＡＣＲ制御部１０１１、ＰＷＭパターン発生回路１０１７、デッドタイム回路１０１８、ゲート駆動回路１０１９、インバータ１０１３及び電流検出器１０１２を有する電力変換ユニット１００２Ｂを備えている。
【０００５】
ユニットＡの速度制御部１００１において、電流指令演算部１０１０は、速度指令と、モータ（図示せず）の回転角を計測するエンコーダ（図示せず）からの速度検出との間の偏差を入力し、速度制御を行い、電流指令を生成する。この電流指令は、シリアル送信回路１０１４及び電力変換ユニット１００２ＡのＡＣＲ制御部１０１１に出力される。シリアル送信回路１０１４は、電流指令演算部１０１０から電流指令を入力し、その電流指令をシリアル通信用のデータに変換し、通信線を介してユニットＢの電力変換ユニット１００２Ｂにおけるシリアル受信回路１０１５へ送信する。
【０００６】
ここで、ユニットＡは、当該ユニットＡ及びユニットＢを代表して速度制御を行うマスタユニットであり、ユニットＢは、マスタユニットであるユニットＡによる速度制御に従って動作するスレーブユニットである。
【０００７】
ユニットＡの電力変換ユニット１００２Ａにおいて、ＡＣＲ制御部１０１１は、電流指令演算部１０１０から電流指令を入力し、電流検出器１０１２により検出した電流を入力し、電流制御を行い、電圧指令を生成する。ユニットＢの電力変換ユニット１００２Ｂにおいて、ＡＣＲ制御部１０１１は、シリアル受信回路１０１５から電流指令を入力し、同様にして電圧指令を生成する。
【０００８】
電力変換ユニット１００２Ａにおいて、ＰＷＭキャリア発生回路１０１６は、三角波発生機能によるキャリア信号と、そのカウントアップ／ダウンの状態を示す２値信号のＰＷＭキャリア同期基準信号とを発生する。ＰＷＭパターン発生回路１０１７は、ＡＣＲ制御部１０１１から電圧指令を入力し、ＰＷＭキャリア発生回路１０１６からキャリア信号及びＰＷＭキャリア同期基準信号を入力し、電圧指令に応じたＰＷＭパターンを発生する。デッドタイム回路１０１８は、ＰＷＭパターン発生回路１０１７により発生したＰＷＭパターンに対しデッドタイム補正を行う。ゲート駆動回路１０１９は、デッドタイム回路１０１８からデッドタイム補正されたＰＷＭパターンを入力し、ゲート信号を生成する。そして、インバータ１０１３は、ゲート駆動回路１０１９からゲート信号を入力し、モータ（図示せず）へ駆動電流を供給する。ユニットＢの電力変換ユニット１００２Ｂにおいても同様である。ここで、ＰＷＭキャリア発生回路１０１６は、発生したＰＷＭキャリア同期基準信号を、通信線を介してユニットＢの電力変換ユニット１００２ＢにおけるＰＷＭキャリア発生回路１０１６へ出力する。
【０００９】
ユニットＢの電力変換ユニット１００２Ｂにおいて、位相補正回路１０２１には、通信線等の遅れ時間や、信号絶縁用のフォトカプラ（図示せず）等の遅れ時間等により予め補正用の位相が設定されている。ＰＬＬ発振回路１０２０及びＰＷＭキャリア発生回路１０１６は、ユニットＡの電力変換ユニット１００２Ａから通信線及びシリアル受信回路１０１５を介して送信されたＰＷＭキャリア同期基準信号と、自らのＰＷＭキャリア同期基準信号とを比較し、これらが同期するように、位相補正回路１０２１に設定された補正用の位相を用いてＰＬＬ制御を行い、キャリア信号の発振周波数を微調整する。
【００１０】
これにより、ユニットＡ，Ｂは、同期したキャリア信号をそれぞれ用いてインバータ１０１３を動作させ、同期した駆動電流をモータへそれぞれ供給することができるので、ユニットＡ，Ｂによる同期制御を実現することができる。このような同期制御を実現する理由の一つは、安全性を確保することにあり、同期が維持されない場合にはモータが誤作動し、モータに接続されている負荷を破損させてしまう可能性があるからである。
【００１１】
ところで、図８に示した同期制御システムにおいて、ユニットＢが電流指令またはＰＷＭキャリア同期基準信号をユニットＡから正しく受信できない場合には、ユニットＡ，Ｂ間で同期ズレが発生し、前述した同期が維持されない場合の不具合が生じることになる。このような不具合を回避するためには、冗長化した同期制御システムを構築することが考えられる。具体的には、図８に示したユニットＡ，Ｂを２組用意し、さらに、運転状態を監視する監視装置を用意し、通常は第１のユニットＡ，Ｂにより運転を行う。そして、監視装置が第１のユニットＡ，Ｂの異常を検出すると、第１のユニットＡ，Ｂから第２のユニットＡ，Ｂに切り替え、第２のユニットＡ，Ｂによる運転を行う。
【００１２】
【特許文献１】特開２００７−２４４００９号公報
【発明の開示】
【発明が解決しようとする課題】
【００１３】
しかしながら、前述した冗長化した同期制御システムでは、ユニットＡ，Ｂを２組用意する必要があることから、システム全体として煩雑になり、コストがかかるという問題があった。
【００１４】
そこで、本発明の目的は、複数の制御装置により構成される同期制御システムにおいて、同期運転を実現する際に、安全性を確保すると共に、システム全体として煩雑さを解消し、コストを低減することが可能な同期制御システム、制御装置及び同期制御方法を提供することにある。
【課題を解決するための手段】
【００１５】
上記目的を達成するため、本発明の同期制御システムは、複数の制御装置により構成され、各制御装置が同期運転を行う同期制御システムにおいて、前記複数の制御装置のうちの１台をマスタの制御装置とし、他の１台をサブマスタとし、前記マスタ及びサブマスタ以外をスレーブの制御装置とし、前記マスタの制御装置が、自らが保持するマスタカウンタからカウンタ値を同期カウンタ値として読み出し、前記同期カウンタ値を他の制御装置へ送信する送信部を備え、前記サブマスタ及びスレーブの制御装置が、前記マスタの制御装置の送信部から同期カウンタ値を受信する受信部、及び、自らが保持するスレーブカウンタからカウンタ値を基準カウンタ値として読み出し、前記受信部により受信した同期カウンタ値と、前記読み出した基準カウンタ値とに基づいて、スレーブカウンタがマスタカウンタに同期するように、スレーブカウンタのカウンタ値を調整する制御部をそれぞれ備え、前記サブマスタの制御装置が、同期カウンタ値を所定時間内に受信しない場合に、前記マスタの制御装置として動作する、ことを特徴とする。
【００１６】
また、本発明の同期制御システムは、前記サブマスタ及びスレーブの制御装置に備えたスレーブ制御部が、前記受信した同期カウンタ値と、前記読み出した基準カウンタ値と、前記スレーブカウンタのカウント開始時点から基準カウンタ値を読み出した時点までの間の時間とに基づいて、前記マスタカウンタのカウンタ値とスレーブカウンタのカウンタ値との間のズレ時間を算出し、前記ズレ時間がゼロになるように、スレーブカウンタのカウンタ値を調整する、ことを特徴とする。
【００１７】
また、本発明の制御装置は、複数の制御装置により構成され、各制御装置が同期運転を行う同期制御システムにおける前記制御装置において、マスタモード、サブマスタモード及びスレーブモードのうちのいずれかのモードに設定するモード設定部、所定の下限値及び上限値の間をカウントしてカウンタ値を生成するカウンタ、前記モード設定部によりマスタモードに設定されている場合、前記カウンタからカウンタ値を同期カウンタ値として読み出し、前記同期カウンタ値を他の制御装置へ送信し、前記モード設定部によりサブマスタモードまたはスレーブモードに設定されている場合、マスタモードに設定されている制御装置から同期カウンタ値を受信する通信部、及び、前記モード設定部によりサブマスタモードまたはスレーブモードに設定されている場合、前記カウンタからカウンタ値を基準カウンタ値として読み出し、前記通信部により受信した同期カウンタ値と、前記読み出した基準カウンタ値とに基づいて、前記カウンタがマスタモードに設定されている制御装置のカウンタに同期するように、前記カウンタのカウンタ値を調整する制御部を備え、前記モード設定部によりサブマスタモードに設定されている場合、前記通信部が、マスタモードに設定されている制御装置から同期カウンタ値を所定時間内に受信しないとき、前記モード設定部が、サブマスタモードからマスタモードの設定に切り替える、ことを特徴とする。
【００１８】
また、本発明の制御装置は、前記モード設定部によりサブマスタモードまたはスレーブモードに設定されている場合、前記制御部が、前記受信した同期カウンタ値と、前記読み出した基準カウンタ値と、前記カウンタのカウント開始時点から基準カウンタ値を読み出した時点までの間の時間とに基づいて、マスタモードに設定されている制御装置のカウンタのカウンタ値と前記カウンタのカウンタ値との間のズレ時間を算出し、前記ズレ時間がゼロになるように、前記カウンタのカウンタ値を調整する、ことを特徴とする。
【００１９】
また、本発明の同期制御方法は、複数の制御装置により構成され、各制御装置が同期運転を行う同期制御システムにおける同期制御方法において、前記複数の制御装置のうちの１台をマスタの制御装置とし、他の１台をサブマスタとし、前記マスタ及びサブマスタ以外をスレーブの制御装置とし、前記マスタの制御装置が、自らが保持するマスタカウンタからカウンタ値を同期カウンタ値として読み出し、前記同期カウンタ値を他の制御装置へ送信する第１のステップと、前記サブマスタ及びスレーブの制御装置が、マスタの制御装置から同期カウンタ値を受信する第２のステップと、前記サブマスタ及びスレーブの制御装置が、自らが保持するスレーブカウンタからカウンタ値を基準カウンタ値として読み出し、前記受信した同期カウンタ値と、前記読み出した基準カウンタ値とに基づいて、前記スレーブカウンタがマスタカウンタに同期するように、前記スレーブカウンタのカウンタ値を調整する第３のステップと、前記サブマスタの制御装置が、同期カウンタ値を所定時間内に受信しない場合に、自らが保持するスレーブカウンタをマスタカウンタとして、当該マスタカウンタからカウンタ値を同期カウンタ値として読み出し、前記同期カウンタ値を他の制御装置へ送信する第４のステップと、を有することを特徴とする。
【００２０】
また、本発明の同期制御方法は、前記第３のステップが、前記受信した同期カウンタ値と、前記読み出した基準カウンタ値と、前記スレーブカウンタのカウント開始時点から基準カウンタ値を読み出した時点までの間の時間とに基づいて、前記マスタカウンタのカウンタ値とスレーブカウンタのカウンタ値との間のズレ時間を算出し、前記ズレ時間がゼロになるように、スレーブカウンタのカウンタ値を調整する、ことを特徴とする。
【発明の効果】
【００２１】
以上説明したように、本発明によれば、冗長化システム等の煩雑なシステムを構築することなく、マスタの制御装置の故障等が発生したときに、マスタ以外の制御装置において、同期を維持することができる。そして、速やかに同期制御システムを停止することにより、誤動作等による不具合の発生を回避することができる。したがって、安全性を確保すると共に、システム全体として煩雑さを解消し、コストを低減することが可能な同期制御システム、制御装置及び同期制御方法を実現することが可能となる。
【発明を実施するための最良の形態】
【００２２】
以下、本発明を実施するための最良の形態について、図面を参照して詳細に説明する。
本発明の実施形態による同期制御システムは、マスタモードで動作する１台の制御装置（以下、「マスタの制御装置」という。）と、サブマスタモードで動作する１台の制御装置（以下、「サブマスタの制御装置」という。）と、スレーブモードで動作する１台以上の制御装置（以下、「スレーブの制御装置」という。）とにより構成される。各制御装置は同期運転を行うための信号を有している。マスタの制御装置は、同期運転のための同期信号を有しており、定期的にその同期信号をサブマスタ及びスレーブの制御装置へ送信する。サブマスタ及びスレーブの制御装置は、同期運転のための基準信号を有しており、マスタの制御装置から送信された同期信号に基づいて、同期信号と基準信号との位相及び周波数が一致するように、基準信号を調整する。
【００２３】
そして、サブマスタの制御装置は、マスタの制御装置が故障する等して、マスタの制御装置からの同期信号を受信できない場合に、モードをサブマスタからマスタに切り替え、その後、同期運転のための基準信号を同期信号として、スレーブの制御装置へ送信する。スレーブの制御装置は、新たなマスタの制御装置から送信された同期信号に基づいて、基準信号を調整する。このように、サブマスタの制御装置は、マスタの制御装置から同期信号を受信できなかった場合に、新たなマスタの制御装置として動作することにより、サブマスタ（新たなマスタ）の制御装置及びスレーブの制御装置において、同期運転を維持することができる。そして、全体の同期制御システムを停止させる。以下、本発明の実施形態による同期制御システム及び制御装置の構成、並びにそれらの動作について詳細に説明する。
【００２４】
〔１．同期制御システムの構成及び動作〕
まず、本発明の実施形態による同期制御システムの構成について説明する。図１は、本発明の実施形態による同期制御システムの構成を示す図である。この同期制御システム１は、個々のモータにより多軸を同期させる必要のあるシステムであり、マスタの制御装置１０−１と、サブマスタの制御装置１０−２と、スレーブの制御装置１０−３〜１０−ｎ等とにより構成される。例えば、トランスファーマシンの同期制御のために用いられる。制御装置１０−１〜１０−ｎ間は、通信線２により接続される。尚、同期制御システム１を構成する複数の制御装置１０−１〜１０−ｎのうち、マスタの制御装置１０−１は１台、サブマスタの制御装置１０−２も１台、スレーブの制御装置１０−３〜１０−ｎは１台以上とする。以下、個々の制御装置１０−１〜１０−ｎを指す場合、または、制御装置１０−１〜１０−ｎを総称する場合は、単に制御装置１０という。ここで、制御装置１０には、マスタ、スレーブ及びサブマスタのうちのいずれかのモードが予め設定される。
【００２５】
マスタに設定された制御装置１０−１は、自らが保持している同期運転用カウンタのカウンタ値（同期カウンタ値Ｖ）を、通信線２を介して他の制御装置１０−２〜１０−ｎへ送信する。サブマスタに設定された制御装置１０−２及びスレーブに設定された制御装置１０−３〜１０−ｎは、制御装置１０−１からの同期カウンタ値Ｖを受信し、自らが保持している同期運転用カウンタのカウンタ値（基準カウンタ値Ｕ）の位相及び周波数を、受信した同期カウンタ値Ｖの位相及び周波数に一致させる。このようにして、制御装置１０−１は、同期カウンタ値Ｖに基づいて運転を行い、制御装置１０−２〜１０−ｎは、基準カウンタ値Ｕに基づいて運転を行う。同期カウンタ値Ｖ及び基準カウンタ値Ｕは、同じ位相及び周波数になっているから、同期制御システム１全体として、同期運転を実現することができる。
【００２６】
サブマスタの制御装置１０−２は、マスタの制御装置１０−１が故障等して、マスタの制御装置１０−１からの同期カウンタ値Ｖを受信できなかった場合、サブマスタモードからマスタモードに切り替え、自らが保持している同期運転用カウンタのカウンタ値を同期カウンタ値Ｖとして、スレーブの制御装置１０−３〜１０−ｎへ送信する。制御装置１０−３〜１０−ｎは、新たなマスタの制御装置１０−２からの同期カウンタ値Ｖを受信し、自らが保持している同期運転用カウンタの基準カウンタ値Ｕの位相及び周波数を、受信した同期カウンタ値Ｖの位相及び周波数に一致させる。このようにして、サブマスタの制御装置１０−２は、マスタモードに切り替わった後、自らが保持しているカウンタの同期カウンタ値Ｖに基づいて運転を行い、スレーブの制御装置１０−３〜１０−ｎも、自らが保持しているカウンタの基準カウンタ値Ｕに基づいて運転を行う。したがって、マスタの制御装置１０−１が故障等した場合であっても、サブマスタがマスタとして動作するようにしたから、引き続き、新たなマスタの制御装置１０−２及びスレーブの制御装置１０−３〜１０−ｎは同期運転を維持することができる。そして、オペレータによる手動により、または自動的に同期制御システム１を停止させる。
【００２７】
〔２．制御装置の構成〕
次に、図１に示した同期制御システム１における制御装置１０の構成について説明する。図２は、制御装置１０の構成を示す図である。この制御装置１０は、通信部１１、同期制御部１２、速度指令設定部１３、速度制御部１４、電流制御部１５、ＰＷＭ回路１６、インバータ１７及び電流検出器１８を備えている。
【００２８】
通信部１１は、他の制御装置１０との間で通信を行う。具体的には、マスタモードに設定されている場合は、同期制御部１２の後述するカウンタ１２２からカウンタ値を読み出し、同期カウンタ値Ｖとして送信する。また、スレーブモードに設定されている場合は、マスタの制御装置１０から同期カウンタ値Ｖを受信し、同期制御部１２の後述する制御部１２３に出力する。また、サブマスタに設定されている場合は、スレーブと同様の処理を行うことに加え、さらに、マスタの制御装置１０から同期カウンタ値Ｖを正しく受信できたか否かを判断する。すなわち、同期カウンタ値Ｖを受信してから次に同期カウンタ値Ｖを受信するまでの時間をカウントし、その時間が予め設定されたタイムアウト時間を越えるか否かを判断する。タイムアウトを判断した場合、自らの制御装置１０をサブマスタからマスタに切り替えるために、通信ＮＧの信号を、同期制御部１２の後述するモード設定部１２１に出力する。
【００２９】
同期制御部１２は、同期制御システム１を同期運転させるために機能し、後述するカウンタ値に基づいて、自らの制御装置１０の速度指令設定部１３及びＰＷＭ回路１６で用いる同期信号をそれぞれ生成し、速度指令設定部１３及びＰＷＭ回路１６にそれぞれ出力する。
【００３０】
速度指令設定部１３は、モータ１９を所定の速度で運転させるための速度指令が予め設定されており、同期制御部１２から同期信号を入力し、この同期信号に基づいて速度指令を出力するタイミングを調整する。ここで、入力する同期信号は、各制御装置１０間で同期しているから、出力する速度指令も各制御装置１０間で同期することになる。
【００３１】
速度制御部１４は、図８に示した電流指令演算部１０１０に相当し、速度指令設定部１３から入力する速度指令と、モータ１９の回転角を計測するエンコーダ２０から入力する速度検出との間の偏差を算出し、速度制御を行い、電流指令を生成する。電流制御部１５は、図８に示したＡＣＲ制御部１０１１に相当し、速度制御部１４から電流指令を入力し、電流検出器１８により検出した電流を入力し、電流制御を行い、電圧指令を生成する。
【００３２】
ＰＷＭ回路１６は、図８に示したＰＷＭキャリア発生回路１０１６、ＰＷＭパターン発生回路１０１７、デッドタイム回路１０１８及びゲート駆動回路１０１９に相当し、電流制御部１５から電圧指令を入力し、同期制御部１２から同期信号を入力し、同期信号を用いて三角波発生機能によるキャリア信号の位相及び周波数を調整し、ゲート信号を生成する。ここで、入力する同期信号は、各制御装置１０間で同期しているから、出力するゲート信号も各制御装置１０間で同期することになる。
【００３３】
インバータ１７は、ＰＷＭ回路１６からゲート信号を入力し、モータ１９へ駆動電流を供給する。ここで、入力するゲート信号は、制御装置１０間で同期しているから、供給する駆動電流も各制御装置１０間で同期することになる。
【００３４】
このような同期制御システム１では、各制御装置１０からモータ１９へ供給する駆動電流が同期しているから、例えばトランスファーマシンの多軸を同期運転させることができる。
【００３５】
〔３．同期制御部〕
次に、図２に示した制御装置１０の同期制御部１２の構成について説明する。図３は、マスタの制御装置１０−１における同期制御部１２の構成を示す図であり、図４は、スレーブの制御装置１０−３等における同期制御部１２の構成を示す図であり、図５は、サブマスタの制御装置１０−２における同期制御部１２の構成を示す図である。図３、図４及び図５を参照して、この同期制御部１２は、モード設定部１２１、カウンタ１２２、制御部１２３及び同期信号生成部１２４を備えている。
【００３６】
同期制御部１２のモード設定部１２１は、自らの制御装置１０のモードを、図示しない入力部を介してオペレータの入力により予め設定し、そのモード情報を通信部１１及び制御部１２３に出力する。前述したように、モードにはマスタ、スレーブ及びサブマスタの３つがある。また、モード設定部１２１は、サブマスタモードに設定している場合、後述する所定の条件を満たす場合、モードを切り替えてマスタモードに設定し、そのモード情報を通信部１１及び制御部１２３に新たに出力する。
【００３７】
カウンタ１２２は、予め設定された時間で、０から予め設定された上限値まで徐々に増加し、上限値に達すると０にリセットするカウンタ値を生成する。すなわち、カウンタ１２２は、右肩上がりの、のこぎり波のカウンタ値を生成する。尚、各制御装置１０における同期制御部１２のカウンタ１２２には、同じ上限値が予め設定されているものとする。
【００３８】
制御部１２３は、モード設定部１２１からモード情報を入力し、そのモードに従った処理を行う。詳細については後述する。同期信号生成部１２４は、カウンタ１２２からカウンタ値（マスタの場合は同期カウンタ値Ｖ、スレーブ及びサブマスタの場合は基準カウンタ値Ｕ）を入力し、ＰＷＭ回路１６にて用いる同期信号及び速度指令設定部１３にて用いる同期信号を生成し、生成した同期信号をＰＷＭ回路１６及び速度指令設定部１３にそれぞれ出力する。
【００３９】
（３．１  マスタの制御装置）
まず、図３を参照して、マスタの制御装置１０−１における同期制御部１２について説明する。モード設定部１２１は、オペレータの入力により予め設定されたマスタモードの情報を通信部１１及び制御部１２３に出力する。これにより、通信部１１は、カウンタ１２２から定期的にカウンタ値を読み出し、同期カウンタ値Ｖとして送信する。また、制御部１２３は、マスタモードとしての処理を行う。尚、本発明の実施形態において説明する範囲内では、制御部１２３は、特に処理は行わない。
【００４０】
カウンタ１２２は、前述したように、０から予め設定された上限値までの、のこぎり波のカウンタ値を生成し、このカウンタ値は、通信部１１及び同期信号生成部１２４により読み出される。制御部１２３及び同期信号生成部１２４については前述したので説明を省略する。
【００４１】
（３．２  スレーブの制御装置）
次に、図４を参照して、スレーブの制御装置１０−３〜１０−ｎにおける同期制御部１２について説明する。モード設定部１２１は、オペレータの入力により予め設定されたスレーブモードの情報を通信部１１及び制御部１２３に出力する。これにより、通信部１１は、マスタの制御装置１０−１から同期カウンタ値Ｖを受信し、受信した同期カウンタ値Ｖを制御部１２３へ出力する。また、制御部１２３は、スレーブモードとしての処理を行う。詳細については後述する。
【００４２】
カウンタ１２２は、前述したように、０から予め設定された上限値までの、のこぎり波のカウンタ値を生成し、このカウンタ値は、制御部１２３及び同期信号生成部１２４により読み出される。制御部１２３は、通信部１１から同期カウンタ値Ｖを入力し、カウンタ１２２からカウンタ値（基準カウンタ値Ｕ）を読み出し、これらのカウンタ値Ｖ，Ｕに基づいて、同期ズレに相当する位相及び周波数を算出し、同期ズレをゼロにしたカウンタ設定値Ｖｓｅｔをカウンタ１２２に設定する。詳細については後述する。同期信号生成部１２４については前述したので説明を省略する。
【００４３】
（３．３  サブマスタの制御装置）
次に、サブマスタの制御装置１０−２における同期制御部１２について説明する。モード設定部１２１は、オペレータの入力により予め設定されたサブマスタモードの情報を通信部１１及び制御部１２３に出力する。これにより、通信部１１は、マスタの制御装置１０−１から同期カウンタ値Ｖを受信し、受信した同期カウンタ値Ｖを制御部１２３へ出力する。また、通信部１１は、前述したように、マスタの制御装置１０から同期カウンタ値Ｖを定期的に受信できたか否かを判断し、予め設定されたタイムアウト時間を越えた場合に、通信ＮＧの信号をモード設定部１２１に出力する。モード設定部１２１は、通信部１１から通信ＮＧを入力すると、設定しているモードをサブマスタからマスタに変更し、マスタの情報を通信部１１及び制御部１２３に出力する。これにより、通信部１１及び制御部１２３は、前述したようなマスタモードとしての処理を行う。一方、モード設定部１２１からサブマスタモードの情報を入力した制御部１２３は、サブマスタモードとしての処理を行う。このサブマスタモードとしての処理はスレーブとしての処理と同様である。詳細については後述する。
【００４４】
カウンタ１２２は、前述したように、０から予め設定された上限値までの、のこぎり波のカウンタ値を生成し、このカウンタ値は、制御部１２３及び同期信号生成部１２４により読み出される。制御部１２３は、通信部１１から同期カウンタ値Ｖを入力し、カウンタ１２２からカウンタ値（基準カウンタ値Ｕ）を読み出し、これらのカウンタ値Ｖ，Ｕに基づいて、同期ズレに相当する位相及び周波数を算出し、同期ズレをゼロにしたカウンタ設定値Ｖｓｅｔをカウンタ１２２に設定する。詳細については後述する。同期信号生成部１２４については前述したので説明を省略する。
【００４５】
〔４．同期制御処理〕
次に、同期制御処理について説明する。図６は、同期制御メイン処理を示すフロー図である。この処理は、図２に示した通信部１１及び同期制御部１２により行われる。図６を参照して、通信部１１及び同期制御部１２の制御部１２３は、モード設定部１２１から入力した情報に基づいてモードを判断し（ステップＳ６０１）、マスタモードの場合はステップＳ６０２へ処理を移行し、スレーブモードの場合はステップＳ６０５へ処理を移行し、サブマスタモードの場合はステップＳ６０７へ処理を移行する。各制御装置１０は、モードが予め設定されているから、ステップＳ６０２、ステップＳ６０５及びステップＳ６０７のいずれかの処理へ移行する。
【００４６】
ステップＳ６０１によりマスタモードに設定されていると判断した場合、通信部１１は、カウンタ１２２からカウンタ値を読み出し（ステップＳ６０２）、そのカウンタ値を同期カウンタ値Ｖとしてサブマスタ及びスレーブの制御装置１０へ送信する（ステップＳ６０３）。そして、オペレータによる操作入力や制御装置１０の電源がＯＦＦする等により、マスタモードとして機能しなくなるまで、ステップＳ６０２及びステップＳ６０３を定期的に繰り返す（ステップＳ６０４）。
【００４７】
一方、ステップＳ６０１によりスレーブモードに設定されていると判断した場合、制御部１２３は、同期処理を行い（ステップＳ６０５）、オペレータによる操作入力や制御装置１０の電源がＯＦＦする等により、スレーブモードとして機能しなくなるまで、ステップＳ６０５を繰り返す（ステップＳ６０６）。ステップＳ６０５の同期処理については後述する。
【００４８】
さらに、ステップＳ６０１によりサブマスタモードに設定されていると判断した場合、通信部１１は、前述したように、マスタの制御装置１０から同期カウンタ値Ｖを定期的に受信できたか否かを判断する（ステップＳ６０７）。そして、通信部１１は、予め設定されたタイムアウト時間を越えたと判断し、受信がＯＫでない場合（ステップＳ６０８：Ｎ）、通信ＮＧの信号をモード設定部１２１に出力する。モード設定部１２１は、通信部１１から通信ＮＧを入力すると、サブマスタからマスタにモードを変更し、マスタの情報を通信部１１及び制御部１２３に出力する（ステップＳ６１０）。これにより、通信部１１は、前述したようなマスタモードとしてステップＳ６０２及びステップＳ６０３の処理を行う。これに対し、通信部１１が、予め設定されたタイムアウト時間を越えていないと判断し、受信がＯＫである場合（ステップＳ６０８：Ｙ）、制御部１２３は、同期処理を行い（ステップＳ６０９）、オペレータによる操作入力や制御装置１０の電源がＯＦＦする等により、スレーブモードとして機能しなくなるまで、ステップＳ６０７、ステップＳ６０８及びステップＳ６０９を繰り返す（ステップＳ６０６）。ステップＳ６０９の同期処理については後述する。
【００４９】
次に、図６のステップＳ６０５及びステップＳ６０９に示した同期処理について説明する。図７（１）は同期処理を示すフロー図であり、図７（２）は同期処理のタイムチャート図である。この処理は、図２に示した同期制御部１２の制御部１２３により行われる。図７（１）及び図７（２）を参照して、同期制御部１２の制御部１２３は、カウンタ１２２からカウンタ値（基準カウンタ値Ｕ）を読み出し（ステップＳ７０１）、通信部１１から受信した同期カウンタ値Ｖを入力し（ステップＳ７０２）、時刻Ｔ１における基準カウンタ値Ｕ１及び同期カウンタ値Ｖ１をそれぞれ特定する。
【００５０】
ここで、図７（２）において、Ｓ１は、同期カウンタ値Ｖの波形であるのこぎり波のスタート時点、Ｓ２は、基準カウンタ値Ｕの波形であるのこぎり波のスタート時点、ｔ０は、同期カウンタ値Ｖのスタート時点Ｓ１から基準カウンタ値Ｕのスタート時点Ｓ２までの間の時間、すなわち同期ズレの位相である。また、ｔ１は、基準カウンタ値Ｕのスタート時点Ｓ２から時刻Ｔ１までの時間（サンプリング時間）、Ｖ１は、時刻Ｔ１における同期カウンタ値、Ｕ１は、時刻Ｔ１における基準カウンタ値、すなわち、サンプリング時間ｔ０における基準カウンタ値である。また、同期カウンタ値Ｖ及び基準カウンタ値Ｕの下限値（最小カウンタ値：本例の場合は０）及び上限値（最大カウンタ値）は同じ値であり、単位時間あたりのカウンタ値の変化量（傾き）も同じであるとする。つまり、周波数は同じであるとする。図７（２）から、基準カウンタ値Ｕの位相を時間ｔ１だけ左へずらすことにより、基準カウンタ値Ｕの位相及び周波数が同期カウンタ値Ｖの位相及び周波数に一致することがわかる。
【００５１】
図７（１）を参照して、制御部１２３は、時刻Ｔ１における基準カウンタ値Ｕ１と同期カウンタ値Ｖ１とを比較し、同じ値の場合（ステップＳ７０３：Ｙ）、同期が完了したものとして（ステップＳ７０４）処理を終了する。一方、同じ値でない場合（ステップＳ７０３：Ｎ）、時間ｔ０を算出する。具体的には、制御部１２３は、基準カウンタ値Ｕ＝０のスタート時点Ｓ２を開始時刻として時刻Ｔ１までの間の時間ｔ１を算出し、このサンプリング時間ｔ１、基準カウンタ値Ｕ１及び同期カウンタ値Ｖ１に基づいて、時間ｔ０を以下のように算出する。
ｔ０＝｛（Ｖ１−Ｕ１）／Ｕ１｝×ｔ１
【００５２】
そして、制御部１２３は、基準カウンタ値Ｕの位相が時間ｔ０だけずれるように（時間軸のマイナス方向にシフトするように）、カウンタ１２２にカウンタ設定値Ｖｓｅｔを設定し、処理をステップＳ７０１に移行する。これにより、制御部１２３は、基準カウンタ値Ｕの位相及び周波数を同期カウンタＶの位相及び周波数に一致させることができるから、同期制御システム１全体として、同期運転を実現することができる。
【００５３】
以上のように、本発明の実施形態によれば、マスタの制御装置１０−１、サブマスタの制御装置１０−２、及びスレーブの制御装置１０−３〜１０−ｎにより構成され、マスタの制御装置１０−１が、同期カウンタ値Ｖをサブマスタ及びスレーブの制御装置１０−２〜１０−ｎへ送信し、サブマスタ及びスレーブの制御装置１０−２〜１０−ｎが、受信した同期カウンタ値Ｖに基づいて自らの基準カウンタ値Ｕを調整することにより、同期制御システム１全体として同期運転を行う。そして、サブマスタの制御装置１０−２は、マスタの制御装置１０−１が故障する等して同期カウンタ値Ｖを受信することができない場合、サブマスタからマスタにモードを切り替え、カウンタ１２２からカウンタ値を読み出し、同期カウンタ値Ｖとしてスレーブの制御装置１０−３〜１０−ｎへ送信する。スレーブの制御装置１０−３〜１０−ｎは、新たなマスタの制御装置１０−２から受信した同期カウンタ値Ｖに基づいて自らのカウンタ値Ｕを調整することにより、制御装置１０−２〜１０−ｎの同期運転を行う。これにより、マスタの制御装置１０−１が故障する等した場合であっても、制御装置１０−２〜１０−ｎの同期運転を維持することができる。そして、同期制御システム１を速やかに停止させることにより、モータの誤作動を最小限に抑えることができ、モータに接続されている負荷の破損を最小限に抑えることができる。また、マスタの制御装置１０−１の故障等に対応するために冗長化の同期制御システム１を構成する必要がないから、システム全体として簡易な構成で安全性を確保することができると共に、煩雑さを解消し、コストを低減することが可能となる。
【００５４】
また、本発明の実施形態によれば、同期制御システム１を構成する複数の制御装置１０のうちの１台をサブマスタモードに設定し、そのサブマスタの制御装置１０−２における通信部１１が、マスタの制御装置１０−１が故障する等して同期カウンタ値Ｖを受信することができない場合、通信ＮＧをモード設定部１２１に出力し、モード設定部１２１が、通信ＮＧを受信することにより、制御装置１０−２のモードをサブマスタからマスタに切り替えるようにした。これにより、制御装置１０−２はマスタとして動作するから、制御装置１０−２〜１０−ｎの同期運転を維持させることができる。したがって、簡単な構成により、マスタの制御装置１０−１の故障等に対応することができる。
【００５５】
以上、実施形態を挙げて本発明を説明したが、本発明は前記実施形態に限定されるものではなく、その技術思想を逸脱しない範囲で種々変形可能である。前記実施形態の同期制御システム１は、個々のモータにより多軸を同期させる必要のあるシステムを例にして説明したが、その他のシステムにも適用がある。要するに、複数の制御装置１０が同期運転を行う必要のある同期制御システム１であれば、本発明を適用することができる。
【００５６】
また、前記実施形態の同期制御システム１では、図７に示したように、サブマスタ及びスレーブの制御装置１０−２〜１０−ｎの同期制御部１２における制御部１２３が、基準カウンタ値Ｕの位相を同期カウンタＶの位相に合わせることにより、同期ズレをなくすようにしたが、周波数が一致していない場合には、基準カウンタ値Ｕの基点（最小のカウンタ値となる時点）及び同期カウンタ値Ｖの基点をそれぞれ検出し、基準カウンタ値Ｕの基点間の時間から周波数を算出し、同様に、同期カウンタ値Ｖの基点間の時間から周波数を算出する。そして、周波数が異なる場合は、基準カウンタ値Ｕの周波数を同期カウンタ値Ｖの周波数に合わせることにより、同期ズレをなくすようにしてもよい。例えば、サブマスタ及びスレーブの制御装置１０−２〜１０−ｎの同期制御部１２における制御部１２３は、カウンタ１２２に対し、基準カウンタ値Ｕを生成するためのクロックの周期を変更する等して、基準カウンタ値Ｕの周波数を同期カウンタ値Ｖの周波数に合わせることにより、同期ズレをなくす。
【００５７】
また、サブマスタ及びスレーブの制御装置１０−２〜１０−ｎの同期制御部１２における制御部１２３は、前述した計算により、基準カウンタ値Ｕの位相がずれている時間ｔ０を複数回求めて平均値を算出し、その平均値の時間がゼロになるように、カウンタ１２２を設定するようにしてもよい。同様に、周波数が一致しない場合には、基準カウンタ値Ｕの周波数及び同期カウンタ値Ｖの周波数を複数回求めてそれぞれ平均値を算出し、その平均値の周波数の差がゼロになるように、カウンタ１２２を設定するようにしてもよい。
【図面の簡単な説明】
【００５８】
【図１】本発明の実施形態による同期制御システムの構成を示す図である。
【図２】図１における制御装置の構成を示す図である。
【図３】マスタの同期制御部を説明する構成図である。
【図４】スレーブの同期制御部を説明する構成図である。
【図５】サブマスタの同期制御部を説明する構成図である。
【図６】同期制御メイン処理を示すフロー図である。
【図７】（１）は同期処理を示すフロー図であり、（２）は同期処理のタイムチャート図である。
【図８】従来の同期制御システムの構成を示す図である。
【符号の説明】
【００５９】
１  同期制御システム
２  通信線
１０  制御装置
１１  通信部
１２  同期制御部
１３  速度指令設定部
１４  速度制御部
１５  電流制御部
１６  ＰＷＭ回路
１７  インバータ
１８  電流検出器
１９  モータ
２０  エンコーダ
１２１  モード設定部
１２２  カウンタ
１２３  制御部
１２４  同期信号生成部
１００１  速度制御部
１００２  電力変換ユニット
１０１０  電流指令演算部
１０１１  ＡＣＲ制御部
１０１２  電流検出器
１０１３  インバータ
１０１４  シリアル送信回路
１０１５  シリアル受信回路
１０１６  ＰＷＭキャリア発生回路
１０１７  ＰＷＭパターン発生回路
１０１８  デッドタイム回路
１０１９  ゲート駆動回路
１０２０  ＰＬＬ発振回路
１０２１  位相補正回路
１０２２  通信線
【図１】
2009153311.tif 000003
【図２】
2009153311.tif 000004
【図３】
2009153311.tif 000005
【図４】
2009153311.tif 000006
【図５】
2009153311.tif 000007
【図６】
2009153311.tif 000008
【図７】
2009153311.tif 000009
【図８】
2009153311.tif 000010