(57)【特許請求の範囲】
【請求項１】
サーボモータを制御するサーボアンプが通信可能に接続される制御装置において、
複数の前記サーボアンプがシリアル接続可能なシリアル通信用のインタフェースであって、通信プロトコルが互いに異なる、複数のインタフェースと、
各々の前記インタフェースと、各々の前記インタフェースに前記サーボアンプを介して接続されているサーボモータと、の関係を示す接続情報を記憶する記憶部と、
前記サーボモータの制御内容が決定した場合に、前記記憶部に記憶された前記接続情報を参照して各々の前記サーボモータに対応する通信プロトコルをそれぞれ特定する特定部と、
前記インタフェースを介して前記サーボアンプに制御指令を出力する出力部と、
前記サーボアンプから受信した接続確認信号と、前記記憶部に記憶された前記接続情報と、に基づいて、各々の前記インタフェースと、各々の前記サーボモータと、の関係が前記接続情報通りか否かを確認する確認部と、
を備えた制御装置。
【請求項２】
前記特定部が特定した通信プロトコルにしたがって、前記制御内容を前記サーボモータ毎の制御指令に変換する変換部を備え、
前記出力部は前記変換部により変換された制御指令を出力する請求項１に記載の制御装置。
【請求項３】
前記制御装置が、
前記記憶部、前記特定部、前記変換部及び前記出力部を含む主回路基板と、
前記主回路基板に対して着脱可能に実装される、少なくとも一つの増設回路基板と、を備え、
前記複数のインタフェースのうちの少なくとも一つが、前記増設回路基板に含まれる請求項２に記載の制御装置。
【請求項４】
前記サーボモータがロボット駆動用のサーボモータであり、
前記ロボットの目標動作に基づいて、各サーボモータの前記制御内容を決定する請求項１に記載の制御装置。
【請求項５】
サーボモータを制御するサーボアンプが通信可能に接続される制御装置における処理方法において、
前記制御装置は、
複数の前記サーボアンプがシリアル接続可能なシリアル通信用のインタフェースであって、通信プロトコルが互いに異なる、複数のインタフェースを備え、
前記処理方法は、
各々の前記インタフェースと、各々の前記インタフェースに前記サーボアンプを介して接続されているサーボモータと、の関係を示す接続情報を記憶する記憶工程と、
前記サーボモータの制御内容が決定した場合に、前記記憶工程で記憶した前記接続情報を参照して各々の前記サーボモータに対応する通信プロトコルをそれぞれ特定する特定工程と、
前記インタフェースを介して前記サーボアンプに制御指令を出力する出力工程と、
前記サーボアンプから接続確認信号を受信する受信工程と、
前記受信工程で受信した前記接続確認信号と、前記記憶工程で記憶した前記接続情報と、に基づいて、各々の前記インタフェースと、各々の前記サーボモータと、の関係が前記接続情報通りか否かを確認する確認工程と、
を備えた処理方法。
【請求項６】
前記特定工程で特定した通信プロトコルにしたがって、前記制御内容を前記サーボモータ毎の制御指令に変換する変換工程を備え、
前記出力工程では前記変換工程で変換した制御指令を出力する請求項５に記載の処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、サーボモータの制御技術に関する。
【背景技術】
【０００２】
一つのコントローラに複数のサーボアンプを接続し、複数のモータを制御するシステムが知られている。そして、コントローラに対する複数のサーボアンプの接続方式として、並列接続方式と、直列接続方式とが提案されている。特許文献１には並列接続方式を採用したシステムが開示されている。また、特許文献２には直列接続方式を採用したシステムが開示されている。並列接続方式では、サーボアンプ毎に接続ポートが必要とされる。したがって、いわゆる多軸制御の場合のように、より多くのモータを制御する場合には直列接続方式の方が適している。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００３−１７７８２２号公報
【特許文献２】特開２００６−２５２３６３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
直列接続方式におけるコントローラとサーボアンプとの間の通信プロトコルは、複数種類存在する。例えば、SSC-NetやGA1060等がある。各コントローラで採用される通信プロトコルはコントローラのメーカによって定められ、そのコントローラで採用されている通信プロトコルに対応したサーボアンプのみが、利用可能である。この結果、利用可能なサーボアンプやサーボモータの選択に制約が生じていた。
【０００５】
本発明の目的は、利用可能なサーボアンプやサーボモータの選択の自由度を向上することにある。
【課題を解決するための手段】
【０００６】
本発明によれば、サーボモータを制御するサーボアンプが通信可能に接続される制御装置において、複数の前記サーボアンプがシリアル接続可能なシリアル通信用のインタフェースであって、通信プロトコルが互いに異なる、複数のインタフェースと、各々の前記インタフェースと、各々の前記インタフェースに前記サーボアンプを介して接続されているサーボモータと、の関係を示す接続情報を記憶する記憶部と、前記サーボモータの制御内容が決定した場合に、前記記憶部に記憶された前記接続情報を参照して各々の前記サーボモータに対応する通信プロトコルをそれぞれ特定する特定部と、前記インタフェースを介して前記サーボアンプに制御指令を出力する出力部と、前記サーボアンプから受信した接続確認信号と、前記記憶部に記憶された前記接続情報と、に基づいて、各々の前記インタフェースと、各々の前記サーボモータと、の関係が前記接続情報通りか否かを確認する確認部と、を備えた制御装置が提供される。
【０００７】
また、本発明によれば、サーボモータを制御するサーボアンプが通信可能に接続される制御装置における処理方法において、前記制御装置は、複数の前記サーボアンプがシリアル接続可能なシリアル通信用のインタフェースであって、通信プロトコルが互いに異なる、複数のインタフェースを備え、前記処理方法は、各々の前記インタフェースと、各々の前記インタフェースに前記サーボアンプを介して接続されているサーボモータと、の関係を示す接続情報を記憶する記憶工程と、前記サーボモータの制御内容が決定した場合に、前記記憶工程で記憶した前記接続情報を参照して各々の前記サーボモータに対応する通信プロトコルをそれぞれ特定する特定工程と、前記インタフェースを介して前記サーボアンプに制御指令を出力する出力工程と、前記サーボアンプから接続確認信号を受信する受信工程と、前記受信工程で受信した前記接続確認信号と、前記記憶工程で記憶した前記接続情報と、に基づいて、各々の前記インタフェースと、各々の前記サーボモータと、の関係が前記接続情報通りか否かを確認する確認工程と、を備えた処理方法
が提供される。
【発明の効果】
【０００８】
本発明によれば、利用可能なサーボアンプやサーボモータの選択の自由度を向上することができる。また、インタフェースとサーボモータとの接続関係を確認できる。
【図面の簡単な説明】
【０００９】
【図１】本発明の一実施形態に係る制御装置及びその周辺の装置のブロック図。
【図２】コネクタの例を示す図。
【図３】サーボアンプのブロック図。
【図４】処理部と記憶部の機能ブロック図。
【図５】接続情報の説明図。
【図６】電源投入時の制御装置及びサーボアンプの処理例を示すフローチャート。
【図７】制御装置の処理例を示すフローチャート。
【発明を実施するための形態】
【００１０】
図１は本発明の一実施形態に係る制御装置１０及びその周辺の装置のブロック図である。制御装置１０はサーボアンプ２０、２０Ａ、２０Ｂを介してサーボモータ（図１において不図示）を制御するコントローラであり、サーボアンプ２０、２０Ａ、２０Ｂは制御装置１０に通信可能に接続されている。
【００１１】
＜制御装置の構成＞
制御装置１０は、主回路基板１１と、増設回路基板１２Ａ、１２Ｂと、を備える。増設回路基板１２Ａ、１２Ｂはユーザが必要に応じて選択的に主回路基板１１に接続する基板である。以下、増設回路基板１２Ａ、１２Ｂを総称する場合には増設回路基板１２という。
【００１２】
主回路基板１１は、処理部１１１、記憶部１１２、通信インタフェース部１１３、１１４、アドレスデコーダ部１１５及びコネクタ部１１６を備える。
【００１３】
処理部１１１はＣＰＵ等のプロセッサであり、記憶部１１２に記憶されたプログラムを実行する。記憶部１１２は、例えば、ＲＡＭ、ＲＯＭ、ハードディスク等である。通信インタフェース部１１３は上位コンピュータ１と処理部１１１との通信を司る通信用ＩＣである。通信インタフェース部１１４は複数のサーボアンプ２０と処理部１１１との通信を司るシリアル通信用ＩＣである。複数のサーボアンプ２０（図１では２つ）は、通信インタフェース部１１４にシリアル接続されている。
【００１４】
通信インタフェース部１１３、１１４には、それぞれ、固有のアドレスが割り当てられている。アドレスデコーダ部１１５は、処理部１１１がアドレスバス上に出力した信号が通信インタフェース部１１３を指定している場合には、通信インタフェース部１１３に選択信号を出力し、通信インタフェース部１１４を指定している場合には、通信インタフェース部１１４に選択信号を出力する。これにより処理部１１１は、通信インタフェース部１１３や通信インタフェース部１１４にアクセス可能となる。
【００１５】
コネクタ部１１６には増設回路基板１２が接続される。増設回路基板１２はコネクタ部１２４を備える。図２はコネクタ部１１６、１２４の一例を示す。コネクタ部１１６は雌型のコネクタである。コネクタ部１２４は複数のピン電極からなる雄部１２４ａと、雌部１２４ｂとを備え、雄部１２４ａは基板を貫通している。
【００１６】
そして、例えば、図２に示すように、増設回路基板１２Ａのコネクタ部１２４の雄部１２４ａをコネクタ部１１６に挿入して接続する。これにより、主回路基板１１のバスと増設回路基板１２Ａのバスとを電気的に接続できる。更に増設回路基板１２Ｂの雄部１２４ａを増設回路基板１２Ａのコネクタ部１２４の雌部１２４ｂに挿入して接続する。これにより、主回路基板１１のバスと増設回路基板１２Ａ及び１２Ｂの各バスとを電気的に接続できる。
【００１７】
こうして主回路基板１１のバスに対して、複数の増設回路基板１２を並列に接続することができる。ここでは２つの増設回路基板１２Ａ及び１２Ｂを例示しているが、３以上の増設回路基板１２を順次接続することが可能である。そして、主回路基板１１のコネクタ部１１６を一つとしながら、複数の増設回路基板１２を着脱可能に実装することができる。尤も、増設回路基板１２を個別に着脱可能とするよう、複数のコネクタ部１１６を主回路基板１１に設けてもよい。
【００１８】
図１に戻り、増設回路基板１２Ａは、通信インタフェース部１２１Ａ、アドレスデコーダ部１２２、ＩＤ保持部１２３及びコネクタ部１２４を備える。通信インタフェース部１２１Ａは複数のサーボアンプ２０Ａと処理部１１１との通信を司るシリアル通信用ＩＣである。複数のサーボアンプ２０Ａ（図１では２つ）は、通信インタフェース部１２１Ａにシリアル接続されている。ＩＤ保持部１２３は増設回路基板１２Ａに固有のＩＤを記憶している。
【００１９】
通信インタフェース部１２１Ａ及びＩＤ保持部１２３には、それぞれ、固有のアドレスが割り当てられている。アドレスデコーダ部１２２は、処理部１１１がアドレスバス上に出力した信号が通信インタフェース部１２１Ａを指定している場合には、通信インタフェース部１２１Ａに選択信号を出力する。これにより処理部１１１は、通信インタフェース部１２１Ａにアクセス可能となる。
【００２０】
アドレスデコーダ部１２２は、処理部１１１がアドレスバス上に出力した信号がＩＤ保持部１２３を指定している場合には、ＩＤ保持部１２３に選択信号を出力する。選択信号を受信したＩＤ保持部１２３は、自分が記憶しているＩＤをデータバス上に出力する。処理部１１１はデータバス上に出力されたＩＤを取得することで、増設回路基板１２Ａが主回路基板１１に接続されていることを確認することができる。
【００２１】
増設回路基板１２Ｂは増設回路基板１２Ａと同様の構成となっている。つまり、増設回路基板１２Ｂは通信インタフェース部１２１Ｂ、アドレスデコーダ部１２２、ＩＤ保持部１２３及びコネクタ部１２４を備える。通信インタフェース部１２１Ｂは複数のサーボアンプ２０Ｂと処理部１１１との通信を司るシリアル通信用ＩＣである。複数のサーボアンプ２０Ｂ（図１では３つ）は、通信インタフェース部１２１Ｂにシリアル接続されている。
【００２２】
ＩＤ保持部１２３は増設回路基板１２Ｂに固有のＩＤを記憶している。通信インタフェース部１２１Ｂ及びＩＤ保持部１２３に、それぞれ、固有のアドレスが割り当てられている点や、その機能並びにアドレスデコーダ部１２２の機能は増設回路基板１２Ａの場合と同様である。
【００２３】
通信インタフェース部１１４、１２１Ａ及び１２１Ｂは互いに異なる通信プロトコルに基づいている。通信インタフェース部１１４とサーボアンプ２０の組みは通信プロトコルを共通としている。同様に、通信インタフェース部１２１Ａとサーボアンプ２０Ａの組みや、通信インタフェース部１２１Ｂとサーボアンプ２０Ｂとの組みも、それぞれ通信プロトコルを共通としている。
【００２４】
通信プロトコルの違いはソフトウエアの違いだけでなく、ハードウエアも違う場合があり得る。ハードウエアの違いには、サーボアンプに対する配線の接続ポートの違いも含まれ得る。図２は、増設回路基板１２Ａの接続ポート１２５Ａと増設回路基板１２Ｂの接続ポート１２５Ｂとの物理的な構成が異なっている場合を例示している。
【００２５】
ここで、例えば、サーボアンプのメーカとして、Ｘ社、Ｙ社、Ｚ社が存在し、互いに異なる通信プロトコルを採用している場合を想定する。この場合、例えば、通信インタフェース部１１４はＸ社の通信プロトコルに基づくものとし、通信インタフェース部１２１ＡはＹ社の通信プロトコルに基づくものとし、通信インタフェース部１２１ＢはＺ社の通信プロトコルに基づくものとする。そうすると、制御装置１０にはＸ社、Ｙ社、Ｚ社の各サーボアンプが接続可能となる。
【００２６】
通信インタフェース部１２１Ａ、１２１Ｂはそれぞれ増設回路基板１２Ａ、１２Ｂに実装したので、Ｘ社のサーボアンプのみを利用したいユーザは主回路基板１１のみを準備すればよいことになる。また、Ｘ社とＺ社のサーボアンプを利用したいユーザは主回路基板１１と増設回路基板１２Ｂを準備すればよいことになる。
【００２７】
本実施形態では、サーボアンプとの通信用のインタフェース部として、主回路基板１１には一つの通信インタフェース部１１４のみを実装し、他の通信インタフェース部１２１Ａ、１２１Ｂは増設回路基板１２Ａ、１２Ｂにそれぞれ実装した。しかし、増設回路基板１２を用いず、主回路基板１１に全ての通信インタフェース部を実装する構成も採用可能である。但し、この場合はユーザにとって不要な通信インタフェース部が存在する場合があり得る。逆に、主回路基板１１には、サーボアンプとの通信用のインタフェース部を実装せず、増設回路基板１２のみに実装する構成も採用可能である。この場合はユーザにとって不要な通信インタフェース部が存在する場合は無くなるが、主回路基板１１を準備しただけでは、いずれのサーボアンプも接続できなくなる。
【００２８】
また、主回路基板１１や増設回路基板１２に実装する通信インタフェース部は必ずしも１種類である必要はなく、２種類以上実装してもよい。増設回路基板１２の数も２つに限られず、１つであってもよいし３以上であってもよい。
【００２９】
＜サーボアンプの構成＞
図３はサーボアンプ２０のブロック図である。ここではサーボアンプ２０を例に挙げるが、サーボアンプ２０Ａ、２０Ｂも同様の構成を備えている。
【００３０】
サーボアンプ２０は、処理部２１、記憶部２２、通信インタフェース部２３、ドライブ回路２４及び信号処理部２５を備える。
【００３１】
処理部２１はＣＰＵ等のプロセッサであり、記憶部２２に記憶されたプログラムを実行する。記憶部２２は、例えば、ＲＡＭ、ＲＯＭ、ハードディスク等である。通信インタフェース部２３は制御装置１０と処理部２１との通信を司る通信用ＩＣである。
【００３２】
ドライブ回路２４は処理部２１からの制御指令に基づきサーボモータＭに駆動電力を供給する。エンコーダＥはサーボモータＭの回転量を検出するセンサである。信号処理部２５はＡ／Ｄ変換器等を備え、エンコーダＥの出力信号に基づく検出結果を処理部２１へ出力する。処理部２１はエンコーダＥの検出結果に基づきサーボモータＭを制御する。本実施形態では一つのサーボアンプ２０が一つのサーボモータＭを制御する場合を想定している。
【００３３】
＜異なる通信プロトコルへの対応＞
本実施形態における、異なる通信プロトコルへの対応について説明する。図４は制御装置１０の処理部１１１の機能ブロック図及び記憶部１１２に記憶される情報を示す。
【００３４】
処理部１１１は、記憶部１１２に記憶された演算プログラム１１２ａを実行することで制御内容演算部１１１ａとして機能する。制御内容演算部１１１ａは上位コンピュータ１からの指示にしたがい、各々のサーボモータＭの制御内容を決定する。
【００３５】
処理部１１１は、また、記憶部１１２に記憶された接続情報１１２ｂを参照して各々のサーボモータＭに対応する通信プロトコルをそれぞれ特定する特定部１１１ｂとして機能する。図５は接続情報１１２ｂの一例を示す。接続情報１１２ｂはユーザが適宜設定、変更することが可能である。
【００３６】
接続情報１１２ｂは、各々の通信インタフェース部１１４、１２１Ａ、１２１Ｂと、これらにサーボアンプ２０、２０Ａ、２０Ｂを介して接続されているサーボモータＭと、の関係を示す情報である。換言すれば、各サーボモータＭと通信プロトコルの種類との関係を示している。図５の接続情報１１２ｂでは、モータＩＤに、通信インタフェースＩＤと配置ＩＤとが関連付けられている。
【００３７】
モータＩＤは各サーボモータＭを個別に識別するためのＩＤである。本実施形態の場合、上記の通り、本実施形態では一つのサーボアンプ２０が一つのサーボモータＭを制御する場合を想定している。したがって、モータＩＤはサーボアンプ２０、２０Ａ、２０Ｂを識別するためのＩＤでもある。
【００３８】
通信インタフェースＩＤは、通信インタフェース部１１４、１２１Ａ、１２１Ｂを識別するためのＩＤであり、通信プロトコルの種類を識別するＩＤ（或いは主回路基板１１や増設回路基板１２Ａ、１２Ｂを識別するＩＤ）でもある。接続情報１１２ｂにおいて通信インタフェースＩＤはサーボモータＭのサーボアンプの接続先の通信インタフェース部を示す。例えば、図１において、サーボアンプ２０に接続されているサーボモータＭであれば、通信インタフェース部１１４を示すＩＤが関連付けられる。また、サーボアンプ２０Ａに接続されているサーボモータＭであれば通信インタフェース部１２１Ａを示すＩＤが関連付けられる。
【００３９】
配置ＩＤは、サーボモータＭの配設部位を識別するためのＩＤである。図５は、一例としてサーボモータＭがロボット２の駆動用のサーボモータである場合を想定し、ロボット２におけるサーボモータＭの配設部位を例示している。例えば、モータＩＤが”ａ”のサーボモータはロボット２のエンドエフェクタを駆動するモータである。
【００４０】
図４に戻り、処理部１１１は、記憶部１１２に記憶された変換プログラム１１２ｃを実行することで変換部１１１ｃとして機能する。変換プログラム１１２ｃは、通信プロトコルの種類毎に用意される。変換部１１１ｃは、特定部１１１ｂが特定した通信プロトコルにしたがって、変換プログラム１１２ｃを選択して実行し、制御内容演算部１１１ａが決定したサーボモータＭ毎の制御内容を、対応する通信プロトコルの種類に応じたサーボモータＭ毎の制御指令に変換する。
【００４１】
例えば、サーボアンプ２０Ａに接続されているサーボモータＭであれば、通信インタフェース部１２１Ａの通信プロトコルに対応した変換プログラム１１２ｃが実行され、制御内容演算部１１１ａで決定した制御内容が制御指令に変換される。同様に、サーボアンプ２０Ｂに接続されているサーボモータＭであれば、通信インタフェース部１２１Ｂの通信プロトコルに対応した変換プログラム１１２ｃが実行され、制御内容演算部１１１ａで決定した制御内容が制御指令に変換される。
【００４２】
処理部１１１は、また、出力部１１１ｄとして機能する。出力部１１１ｄは変換部１１１ｃで変換した制御指令を、対応する通信インタフェース部１１４、１２１Ａ又は１２１Ｂを介してサーボアンプ２０、２０Ａ又は２０Ｂに出力する。例えば、サーボアンプ２０Ａに接続されているサーボモータＭの制御指令を出力する場合には、通信インタフェース部１２１Ａを介して制御指令を出力する。制御指令には、モータＩＤによって、制御対象となるサーボモータＭが指定される。サーボアンプ２０Ａは自身に接続されたサーボモータＭが指定された場合にその制御指令を受信して実行することになる。
【００４３】
＜処理例＞
図６は電源投入時の制御装置１０及び各サーボアンプ２０、２０Ａ、２０Ｂの初期処理例を示すフローチャートである。電源が投入されると制御装置１０の処理部１１１、及び、各サーボアンプ２０、２０Ａ、２０Ｂの処理部２１は、同図の処理を実行する。
【００４４】
処理部１１１はＳ１で起動処理を行う。また、各処理部２１もＳ１１で起動処理を行う。処理部１１１は、Ｓ２で増設基板の接続確認処理を行う。ここでは、接続情報１１２ｂを読み出し、接続情報１１２ｂの通信インタフェースＩＤで示される通信インタフェース部を有する増設回路基板（１２Ａや１２Ｂ）が主回路基板１１に接続されているかを確認する処理を行う。
【００４５】
詳細には、各ＩＤ保持部１２３に固有のアドレスを順次指定し、ＩＤ保持部１２３からＩＤが出力されれば接続されていると判断し、出力されなければ接続されていないと判断する。接続情報１１２ｂの通信インタフェースＩＤで示される全通信インタフェース部について接続が確認されればＳ３へ進み、確認できなければエラー処理を行う。
【００４６】
Ｓ３〜Ｓ５で処理部１１１は、接続情報１１２ｂのモータＩＤで示される各サーボモータＭの接続確認を行う。具体的には、各サーボアンプ２０、２０Ａ、２０Ｂへ、対応する通信インタフェース部１１４、１２１Ａ、１２１Ｂを介して順番にモータＩＤを指定して接続確認信号を送信する（Ｓ３）。制御装置１０からの接続確認信号を受信した各サーボアンプ２０、２０Ａ、２０Ｂの処理部２１は、折り返し接続確認信号を制御装置１０へ送信する（Ｓ１２）。接続確認信号を受信すると、処理部１１１はそのサーボアンプとの通信接続を確立する（Ｓ４）。接続確認信号を受信しなかった場合、処理部１１１はエラー処理を行う。Ｓ５では接続情報１１２ｂで示される全てのモータＩＤについて、サーボアンプと通信接続が確立したか否かを判定し、全て確立していれば（Ｙｅｓ）一単位の処理を終了し、全て確立していなければ（Ｎｏ）Ｓ３へ戻って次のサーボアンプとの通信接続確認を行う。こうして、処理部１１１はサーボアンプから受信した接続確認信号と、接続情報１１２ｂと、に基づいて、各々の通信インタフェース部１１４、１２１Ａ、１２１Ｂと、各々のサーボモータＭと、の関係が接続情報１１２ｂ通りか否かを確認することができる。
【００４７】
次に、上位コンピュータ１から制御指令を受信した場合の制御装置１０の処理例を図７を参照して説明する。
【００４８】
図５に例示した、サーボモータＭがロボット２の駆動用のサーボモータである場合を想定すると、上位コンピュータ１からは例えばエンドエフェクタを所定の位置へ移動する制御指令が目標動作として制御装置１０に与えられる。
【００４９】
このような場合に、制御装置１０の処理部１１１は図７の処理を実行する。図７の処理のうち、Ｓ２１〜Ｓ２３の処理は図４の制御内容演算部１１１ａとしての処理に相当し、Ｓ２４の処理は特定部１１１ｂとしての処理に相当する。また、Ｓ２５の処理は変換部１１１ｃとしての処理に相当し、Ｓ２６の処理は出力部１１１ｄとしての処理に相当する。
【００５０】
Ｓ２１では、目標動作を達成するのに必要な各サーボモータＭの回転量を演算する。Ｓ２２では軌道計画を行う。例えば、ロボットのエンドエフェクタを目標位置に移動する場合にはその移動軌道を決定する。Ｓ２３では各サーボモータＭの制御内容を決定する。制御内容は、例えばサーボモータＭを単位時間に回転させる位置データである。
【００５１】
Ｓ２４では接続情報１１２ｂを参照して各々のサーボモータＭに対応する通信プロトコルをそれぞれ特定する。Ｓ２５では、サーボモータＭに対応する通信プロトコルに対応した変換プログラムにより、Ｓ２３で決定した個々のサーボモータＭの制御内容を、対応通信プロトコルに適合した制御指令に変換する。Ｓ２６ではＳ２５で変換した制御指令を、対応する通信インタフェース部１１４、１２１Ａ又は１２１Ｂを介してサーボアンプ２０、２０Ａ又は２０Ｂに出力する。ここでは、例えば、サーボモータＭの駆動タイミングと回転量が指定された制御指令が出力される。
【００５２】
以上により一単位の処理が終了する。処理部１１１は、例えば、一定時間毎に同期用のデータが各サーボアンプに送信され、各サーボアンプは受信した同期用のデータを契機として制御指令を実行することになる。
【００５３】
以上述べたとおり、本実施形態では互いに通信プロトコルが異なる通信インタフェース部１１４、１２１Ａ及び１２１Ｂを備えたことで、利用可能なサーボアンプやサーボモータの選択の自由度を向上することが可能となる。言い換えると、サーボアンプやサーボモータを自由に選定することが可能なコントローラ（制御装置）が得られる。通信インタフェース部１１４、１２１Ａ及び１２１Ｂと、サーボモータＭとの対応関係は接続情報１１２ｂで管理されるので、通信プロトコルの種類を識別してサーボモータＭの制御が可能となる。また、変換部１１１ｃにより、制御内容演算部１１１ａが決定した制御内容を、自動的に各通信プロトコルに対応した制御指令に変換できる。これにより、ロボット等のモーション制御にあたって、サーボアンプの通信プロトコルを統一する必要を無くすことを可能とした。
【図１】
0005877742.tif 000002
【図２】
0005877742.tif 000003
【図３】
0005877742.tif 000004
【図４】
0005877742.tif 000005
【図５】
0005877742.tif 000006
【図６】
0005877742.tif 000007
【図７】
0005877742.tif 000008