(57)【要約】【課題】ネットワークで接続された複数の制御装置を用いて高精度な協調動作を実現すること。【解決手段】マスタとなる第１の制御装置である第１のロボットコントローラ１０と、スレーブとなる１つ又は複数の第２の制御装置である第２のロボットコントローラ２０とがネットワークで接続され、第１及び第２の制御装置の各々が位置指令に基づいて、１つ又は複数のアクチュエータと該アクチュエータに連結された機械系とを含む制御対象を駆動するモーション制御システムにおいて、第１のロボットコントローラ１０は、基準指令生成部１１と、基準応答生成部１２と、通信遅延補償部１３と、基準信号送信部１４と、第１の補間処理部１５と、第１の応答補償部１６と、第１のサーボ制御部１７とを備え、第２のロボットコントローラ２０は、基準信号受信部２１と、第２の補間処理部２２と、第２の応答補償部２３と、第２のサーボ制御部２４とを備える。【選択図】図１
2018018131.tif 000002
【特許請求の範囲】
【請求項１】
マスタとなる第１の制御装置と、スレーブとなる１つ又は複数の第２の制御装置とがネットワークで接続され、前記第１及び第２の制御装置の各々が位置指令に基づいて、１つ又は複数のアクチュエータと該アクチュエータに連結された機械系とを含む制御対象を駆動するモーション制御システムにおいて、
前記第１の制御装置は、
前記位置指令に基づき基準指令を生成する基準指令生成部と、
前記基準指令にローパス特性を持つ第１のフィルタ演算を行うことで基準応答を生成する基準応答生成部と、
前記位置指令と前記基準指令と前記基準応答とに対して、前記第２の制御装置との通信の遅延を補償することで遅延補償後位置指令と遅延補償後基準指令と遅延補償後基準応答とを出力する通信遅延補償部と、
前記遅延補償後位置指令と前記遅延補償後基準指令と前記遅延補償後基準応答とを入力とし、同一時刻の前記遅延補償後位置指令と前記遅延補償後基準指令との対応関係を第１の関数とし、前記第１の関数の前記遅延補償後基準応答に対応する点を第１の補間処理によって演算することで第１の補間処理後位置指令を出力する第１の補間処理部と、
前記第１の補間処理後位置指令に対して前記アクチュエータの各々の追従遅れを補償するための第２のフィルタ演算を適用することで第１の補正後位置指令を演算する第１の応答補償部と、
前記第１の制御装置に接続された前記アクチュエータの位置が前記第１の補正後位置指令に追従するように前記アクチュエータの制御を行う第１のサーボ制御部と、
前記基準指令と前記基準応答を前記第２の制御装置に送信する基準信号送信部とを備え、
前記第２の制御装置は、
前記第１の制御装置の前記基準信号送信部が送信した前記基準指令及び前記基準応答を受信して出力する基準信号受信部と、
前記位置指令と、前記基準信号受信部が出力した前記基準指令及び前記基準応答とを入力とし、同一時刻の前記位置指令と前記基準指令との対応関係を第２の関数とし、前記第２の関数の前記基準応答に対応する点を第２の補間処理によって演算することで第２の補間処理後位置指令を出力する第２の補間処理部と、
前記第２の補間処理後位置指令に対して前記アクチュエータの各々の追従遅れを補償するための第３のフィルタ演算を適用することで第２の補正後位置指令を演算する第２の応答補償部と、
前記第２の制御装置に接続された前記アクチュエータの位置が前記第２の補正後位置指令に追従するように前記アクチュエータの制御を行う第２のサーボ制御部とを備えることを特徴とするモーション制御システム。
【請求項２】
前記第２のフィルタ演算は前記第１のサーボ制御部の伝達関数の逆システムの伝達関数に基づくフィルタ演算であり、
前記第３のフィルタ演算は前記第２のサーボ制御部の伝達関数の逆システムの伝達関数に基づくフィルタ演算であることを特徴とする請求項１に記載のモーション制御システム。
【請求項３】
前記第１の制御装置及び前記第２の制御装置がロボットコントローラであり、
前記制御対象がロボットであることを特徴とする請求項２に記載のモーション制御システム。
【請求項４】
前記第１の制御装置がモーションコントローラであり、前記第２の制御装置がロボットコントローラであり、
前記制御対象がロボット及び外部装置を含む機械系であることを特徴とする請求項２に記載のモーション制御システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワークで接続された複数の制御装置を用いて協調動作を行うモーション制御システムに関する。
【背景技術】
【０００２】
従来、制御装置であるロボットコントローラの一つをマスタとし、マスタ以外のロボットコントローラをスレーブとし、これら複数のロボットコントローラをネットワークで接続して同期制御を行う際に、複数のロボットを協調動作させることで、対象物の搬送作業を行うモーション制御システムが知られている。また、複数のロボット同士ではなく、汎用サーボで駆動するターンテーブルに代表されるロボット以外の機械系とロボットとを協調動作させるモーション制御システムも存在する。
【０００３】
このような複数の機械系を協調動作させるモーション制御システムを実現するために、複数の制御装置間の同期制御を実現する技術の開発が進められている。一例として、スレーブユニットのタイミング信号をマスタユニットのタイミング信号に合わせるための補正を行うことによって、マスタスレーブ間の同期制御を実現する技術がある。しかしながら、ロボットのような複数の可動軸から構成される機械系では、各可動軸のサーボ制御系の応答遅れに起因する誤差によって、機械系の実際の応答の軌跡が指令された軌跡からずれてしまう。指令の軌跡と機械系の実際の応答の軌跡との誤差である軌跡誤差は、一般に、機械系の機構の違い、位置及び姿勢によって発生の仕方が異なる。そのため、複数の機械系を高精度に協調動作させるためには、制御装置の動作タイミングを一致させるだけではなく、サーボ制御系の応答遅れを考慮して軌跡誤差を抑制する必要がある。
【０００４】
そこで、サーボ制御系の応答遅れを考慮して指令を補正することにより軌跡誤差を低減すべく、特許文献１には、ロボットの手先位置の制御において、サンプリング時刻先のロボットの手先位置を推定し、推定した手先位置から目標軌道上に下ろした垂線ベクトルの分だけ指令位置を補正する技術が開示されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００６−１５４３１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、上記の従来技術によれば、ロボットの手先が指令軌跡上を進む速度が元の指令の速度から変化する。そのため、複数の制御装置を含むモーション制御システムの協調動作に適用した場合には、制御装置間の動作タイミングを一致させるのが困難である、という問題があった。
【０００７】
本発明は、上記に鑑みてなされたものであって、ネットワークで接続された複数の制御装置を用いて高精度な協調動作を実現するモーション制御システムを得ることを目的とする。
【課題を解決するための手段】
【０００８】
上述した課題を解決し、目的を達成するために、本発明は、マスタとなる第１の制御装置と、スレーブとなる１つ又は複数の第２の制御装置とがネットワークで接続され、前記第１及び第２の制御装置の各々が位置指令に基づいて、１つ又は複数のアクチュエータと該アクチュエータに連結された機械系とを含む制御対象を駆動するモーション制御システムにおいて、前記第１の制御装置は、前記位置指令に基づき基準指令を生成する基準指令生成部と、前記基準指令にローパス特性を持つ第１のフィルタ演算を行うことで基準応答を生成する基準応答生成部と、前記位置指令と前記基準指令と前記基準応答とに対して、前記第２の制御装置との通信の遅延を補償することで遅延補償後位置指令と遅延補償後基準指令と遅延補償後基準応答とを出力する通信遅延補償部と、前記遅延補償後位置指令と前記遅延補償後基準指令と前記遅延補償後基準応答とを入力とし、同一時刻の前記遅延補償後位置指令と前記遅延補償後基準指令との対応関係を第１の関数とし、前記第１の関数の前記遅延補償後基準応答に対応する点を第１の補間処理によって演算することで第１の補間処理後位置指令を出力する第１の補間処理部と、前記第１の補間処理後位置指令に対して前記アクチュエータの各々の追従遅れを補償するための第２のフィルタ演算を適用することで第１の補正後位置指令を演算する第１の応答補償部と、前記第１の制御装置に接続された前記アクチュエータの位置が前記第１の補正後位置指令に追従するように前記アクチュエータの制御を行う第１のサーボ制御部と、前記基準指令と前記基準応答を前記第２の制御装置に送信する基準信号送信部とを備え、前記第２の制御装置は、前記第１の制御装置の前記基準信号送信部が送信した前記基準指令及び前記基準応答を受信して出力する基準信号受信部と、前記位置指令と、前記基準信号受信部が出力した前記基準指令及び前記基準応答とを入力とし、同一時刻の前記位置指令と前記基準指令との対応関係を第２の関数とし、前記第２の関数の前記基準応答に対応する点を第２の補間処理によって演算することで第２の補間処理後位置指令を出力する第２の補間処理部と、前記第２の補間処理後位置指令に対して前記アクチュエータの各々の追従遅れを補償するための第３のフィルタ演算を適用することで第２の補正後位置指令を演算する第２の応答補償部と、前記第２の制御装置に接続された前記アクチュエータの位置が前記第２の補正後位置指令に追従するように前記アクチュエータの制御を行う第２のサーボ制御部とを備えることを特徴とする。
【発明の効果】
【０００９】
本発明によれば、ネットワークで接続された複数の制御装置を用いて高精度な協調動作を実現するモーション制御システムを得ることができるという効果を奏する。
【図面の簡単な説明】
【００１０】
【図１】実施の形態１に係るモーション制御システムの全体の一構成例を示すブロック図
【図２】実施の形態１において図１に示す基準指令生成部の一構成例を示すブロック図
【図３】実施の形態１において基準指令及び基準応答の時系列波形の一例を示す図
【図４】実施の形態１において図１に示す第１の補間処理部の一構成例を示す図
【図５】実施の形態１において遅延補償後位置指令から第１の補間処理後位置指令への変換の例を示す図
【図６】実施の形態２に係るモーション制御システムの全体の一構成例を示すブロック図
【発明を実施するための形態】
【００１１】
以下に、本発明の実施の形態に係るモーション制御システムを図面に基づいて詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。
【００１２】
実施の形態１．
図１は、本発明の実施の形態１に係るモーション制御システムの全体の一構成例を示すブロック図である。図１に示すモーション制御システム１は、第１のロボットコントローラ１０と、第２のロボットコントローラ２０と、第１のロボット３０と、第２のロボット４０とを備える。第１のロボットコントローラ１０はマスタとなる第１の制御装置であり、第２のロボットコントローラ２０はスレーブとなる１つ又は複数の第２の制御装置である。第１のロボットコントローラ１０と第２のロボットコントローラ２０とはネットワークで接続され、第１のロボットコントローラ１０及び第２のロボットコントローラ２０は、位置指令に基づいて、制御対象である第１のロボット３０及び第２のロボット４０を駆動する。
【００１３】
第１のロボット３０は、第１のアクチュエータ３１と、第１のロボットアーム３２とを含み、第１のロボットアーム３２の各可動軸には第１のアクチュエータ３１が備えられ、第１のアクチュエータ３１は後述する第１のロボットコントローラ１０の第１のサーボ制御部１７によって駆動される。
【００１４】
第２のロボット４０は、第２のアクチュエータ４１と、第２のロボットアーム４２とを含み、第２のロボットアーム４２の各可動軸には第２のアクチュエータ４１が備えられ、第２のアクチュエータ４１は後述する第２のロボットコントローラ２０の第２のサーボ制御部２４によって駆動される。
【００１５】
第１のロボットコントローラ１０は、基準指令生成部１１と、基準応答生成部１２と、通信遅延補償部１３と、基準信号送信部１４と、第１の補間処理部１５と、第１の応答補償部１６と、第１のサーボ制御部１７とを備える。
【００１６】
図２は、図１に示す基準指令生成部１１の一構成例を示すブロック図である。図２に示す基準指令生成部１１は、前回指令記憶部１１１と、減算器１１２と、距離演算部１１３と、積分器１１４とを備え、第１のロボットコントローラ１０内の図示しない指令生成部によって生成された位置指令に基づき基準指令を生成する。
【００１７】
前回指令記憶部１１１は、一サンプリング時刻前の位置指令を記憶する。減算器１１２は、現在時刻の位置指令と前回指令記憶部１１１に記憶された一サンプリング時刻前の位置指令との差分を演算する。距離演算部１１３は、減算器１１２で演算した位置指令の差分のユークリッド距離を演算することで、現在時刻の位置指令と一サンプリング時刻前の位置指令との距離を演算する。積分器１１４は、距離演算部１１３が演算した位置指令の距離を積算することで指令軌跡の始点からの長さを演算して基準指令とし、この基準指令を出力する。なお、指令軌跡の距離の演算は、関節座標系で演算した距離を演算してもよいし、直交座標系で演算した距離を演算してもよい。
【００１８】
図１に示す基準応答生成部１２は、基準指令生成部１１が出力した基準指令に対して予め設定されたローパスフィルタによるフィルタ演算を行うことで基準応答を生成する。このフィルタ演算を第１のフィルタ演算と記載する。図３は、基準指令及び基準応答の時系列波形の一例を示す図である。図３に示すように、基準指令に対してローパスフィルタを適用すると、基準応答は基準指令に対して遅れて追従する信号となる。また、高次のローパスフィルタを適用すると、変化率が小さくなるような基準応答の波形が生成される。
【００１９】
図１に示す通信遅延補償部１３は、後述する基準信号送信部１４によって基準指令と基準応答とを第２の制御装置である第２のロボットコントローラ２０に送信する際の通信遅延を補償するために、位置指令と基準指令と基準応答とを通信遅延分だけ遅らせて通信の遅延を補償した信号である、遅延補償後位置指令と遅延補償後基準指令と遅延補償後基準応答とを出力する。通信遅延補償部１３の構成方法の一例には、遅延時間に相当するサンプル点数分だけデータを逐次記憶しておき、遅延させたい時間分だけ前のデータを出力する方法がある。
【００２０】
図１に示す基準信号送信部１４は、第２の制御装置であり後述する第２のロボットコントローラ２０に対して、基準指令生成部１１が出力した基準指令と基準応答生成部１２が出力した基準応答をネットワークを介して送信する。
【００２１】
図４は、図１に示す第１の補間処理部１５の一構成例を示す図である。図４に示す第１の補間処理部１５は、位置指令リングバッファ１５１と、基準指令リングバッファ１５２と、探索部１５３と、補間演算部１５４とを備え、通信遅延補償部１３が出力した遅延補償後位置指令と遅延補償後基準指令と遅延補償後基準応答とを入力とし、同一時刻の遅延補償後位置指令と遅延補償後基準指令との対応関係を第１の関数とし、第１の関数の遅延補償後基準応答に対応する点を第１の補間処理によって演算することで第１の補間処理後位置指令を出力する。
【００２２】
図１に示す第１の補間処理部１５に入力された遅延補償後位置指令及び遅延補償後基準指令は、位置指令リングバッファ１５１と基準指令リングバッファ１５２に各々入力される。次に、探索部１５３は、遅延補償後基準応答を入力とし、基準指令リングバッファ１５２中の下記の式（１）を満たすインデックスｉを探索して出力する。
【００２３】
基準指令リングバッファ［ｉ］≦基準応答＜基準指令リングバッファ［ｉ＋１］…（１）
【００２４】
補間演算部１５４では、探索部１５３が出力したインデックスｉに基づき、下記の式（２）及び式（３）を用いて補間演算を行うことで第１の補間処理後位置指令を演算する。
【００２５】
第１の補間処理後位置指令＝（１−α）×位置指令リングバッファ［ｉ］＋α×位置指令リングバッファ［ｉ＋１］  …（２）
【００２６】
α＝（基準応答−基準指令リングバッファ［ｉ］）／（基準指令リングバッファ［ｉ＋１］−基準指令リングバッファ［ｉ］）  …（３）
【００２７】
上記の式（１）では遅延補償後基準応答の現在値と過去の遅延補償後基準指令の値との比較を行い、遅延補償後基準応答の現在値に対応する遅延補償後基準指令の時刻を探索している。また、上記の式（２）では、上記の式（１）で探索した遅延補償後基準指令に対応する時刻の遅延補償後位置指令に対して上記の式（３）で演算した比率αで線形補間を行うことで第１の補間処理後位置指令を演算している。このような方法で第１の補間処理後位置指令を演算することにより、同一時刻の遅延補償後位置指令と遅延補償後基準指令との対応関係を関数とした場合の、その関数の遅延補償後基準応答に対応する点を演算することができる。
【００２８】
図５は、遅延補償後位置指令から第１の補間処理後位置指令への変換の例を示す図である。第１の補間処理後位置指令は、元の遅延補償後位置指令が補間処理されることによって生成されているので、第１の補間処理後位置指令の軌跡は、元の遅延補償後位置指令と一致する。また、基準応答生成部１２のローパスフィルタによって変化率を小さくした基準応答に基づいて補間処理が行われるため、指令の変化率を小さくした滑らかな指令を生成することができる。
【００２９】
図１に示す第１の応答補償部１６は、第１の補間処理部１５が出力した第１の補間処理後位置指令を入力とし、第１の補間処理後位置指令に対してアクチュエータの追従遅れを補償するために後述する第１のサーボ制御部１７の伝達関数の逆伝達関数のフィルタを適用してフィルタ演算を行うことで第１の補正後位置指令を演算する。このフィルタ演算を第２のフィルタ演算と記載する。なお、この逆伝達関数は、逆システムの伝達関数であり、第１のサーボ制御部１７の出力から入力に至る系を想定した場合の伝達関数である。第１のサーボ制御部１７の逆システムの伝達関数に基づくフィルタ演算で指令の補正を行うことによって、第１のサーボ制御部１７の応答遅れを効果的に補償することができる。
【００３０】
図１に示す第１のサーボ制御部１７は、第１の応答補償部１６が出力した第１の補正後位置指令を入力とし、第１の制御装置である第１のロボットコントローラ１０に接続された第１のアクチュエータ３１の位置が第１の応答補償部１６が出力した第１の補正後位置指令に追従するようにサーボ制御を行い、第１のアクチュエータ３１の駆動及び制御を行う。
【００３１】
図１に示す第２のロボットコントローラ２０は、基準信号受信部２１と、第２の補間処理部２２と、第２の応答補償部２３と、第２のサーボ制御部２４とを備える。
【００３２】
図１に示す基準信号受信部２１は、第１の制御装置である第１のロボットコントローラ１０の基準信号送信部１４が送信した基準指令及び基準応答を受信し、第２の補間処理部２２に出力する。
【００３３】
図１に示す第２の補間処理部２２は、基準信号受信部２１が出力した基準指令及び基準応答と、図示しない指令生成部が出力した位置指令とを入力とし、同一時刻の位置指令と基準指令との対応関係を第２の関数とし、第２の関数の基準応答に対応する点を第２の補間処理によって演算することで第２の補間処理後位置指令を出力する。第２の補間処理部２２は、図４に示す第１の補間処理部１５の構成と同様であり、第１の補間処理部１５と同様に、同一時刻の位置指令と基準指令との対応関係を関数とした場合の、その関数の基準応答に対応する点を演算することができる。
【００３４】
第２の補間処理後位置指令は、元の位置指令を補間処理することによって生成されているので、第２の補間処理後位置指令の軌跡は、元の位置指令と一致する。また、第１のロボットコントローラ１０が生成した基準指令及び基準応答に基づいて補間処理を行うことにより、第１のロボットコントローラ１０と同様に、指令の変化率を小さくした滑らかな指令を生成することができる。
【００３５】
図１に示す第２の応答補償部２３は、第２の補間処理部２２が出力した第２の補間処理後位置指令を入力とし、第２の補間処理後位置指令に対してアクチュエータの追従遅れを補償するために後述する第２のサーボ制御部２４の応答特性の伝達関数の逆伝達関数のフィルタを適用してフィルタ演算を行うことで第２の補正後位置指令を演算する。このフィルタ演算を第３のフィルタ演算と記載する。
【００３６】
図１に示す第２のサーボ制御部２４は、第２の応答補償部２３が出力した第２の補正後位置指令を入力とし、第２の制御装置である第２のロボットコントローラ２０に接続された第２のアクチュエータ４１の位置が第２の応答補償部２３が出力した第２の補正後位置指令に追従するようにサーボ制御を行い、第２のアクチュエータ４１の駆動及び制御を行う。
【００３７】
次に、実施の形態１のモーション制御システム１の動作について説明する。第１のロボットコントローラ１０は、基準指令生成部１１と基準応答生成部１２と第１の補間処理部１５とを組み合わせることにより、前述の通り、元の位置指令に対して指令の軌跡を変化させることなく指令の変化率を小さくした第１の補間処理後位置指令を生成することができる。また、第１の応答補償部１６によって第１のサーボ制御部１７の応答遅れを補償することにより、第１のアクチュエータ３１の応答を第１の応答補償部１６に入力される第１の補間処理後位置指令に一致させることができる。前述の通り、第１の補間処理後位置指令の軌跡は元の位置指令と一致しているため、第１のアクチュエータ３１の応答の軌跡を元の位置指令の軌跡と一致させることができる。このとき、第１の補間処理部１５によって指令の変化率を減少させることにより、第１のアクチュエータ３１に過大なトルクを発生させることなく制御を行うことができる。
【００３８】
また、第２のロボットコントローラ２０も同様に、第２の補間処理部２２によって元の位置指令の軌跡を変化させずに指令の変化率を小さくした第２の補間処理後位置指令を生成することができ、また、第２の応答補償部２３によって第２のサーボ制御部２４の応答遅れを補償することができるので、第２のアクチュエータ４１の応答の軌跡を元の位置指令の軌跡と一致させることができる。また、第２の補間処理部２２によって指令の変化率を減少させることにより、第２のアクチュエータ４１に過大なトルクを発生させることなく制御を行うことができる。
【００３９】
第１のロボットコントローラ１０及び第２のロボットコントローラ２０は、基準信号送信部１４と基準信号受信部２１とによって基準指令と基準応答とを共有しており、これらの同一の信号を使って指令の補間処理を行っているため、元の位置指令に対する補間処理後位置指令の遅延量を第１のロボットコントローラ１０と第２のロボットコントローラ２０とで一致させることができる。更には、第１の応答補償部１６と第２の応答補償部２３とによって第１のサーボ制御部１７及び第２のサーボ制御部２４の各々の応答遅れを補償しているため、元の位置指令に対するロボットの応答の遅延量を第１のロボット３０と第２のロボット４０とで一致させることができる。
【００４０】
以上説明したように、各ロボットコントローラが制御する各ロボットの応答の軌跡を元の位置指令の軌跡と一致させることができ、且つ元の位置指令に対する応答の遅延量を制御装置であるロボットコントローラ間で一致させることができる。そのため、ネットワークで接続された２台のロボットコントローラとロボットを用いて高精度な協調動作を実現することができる。すなわち、実施の形態１のモーション制御システムによれば、複数の制御装置を用いて機械同士の協調作業を行う場合において、サーボ制御の応答遅れを補償することで指令の軌跡と実際の応答の軌跡とを一致させることができ、更には、複数の制御装置間の指令に対する応答の遅延量を一致させることができるため、複数の制御装置間の協調作業を高精度に行うことができる。
【００４１】
なお、実施の形態１では、２台のロボットと２台のロボットコントローラとを協調動作させる場合について説明したが、第２のロボットコントローラ及び第２のロボットを２台以上とすることも可能であり、すなわち、実施の形態１は、３台以上のロボットを協調動作させるモーション制御システムにも適用可能であり、３台以上のロボットを協調動作させるモーション制御システムであっても異なるロボットコントローラで制御するロボットの動作軌跡と動作タイミングとを完全に一致させることができるため、複数のロボット同士の協調作業を高精度に行うことができる。
【００４２】
実施の形態２．
図６は、本発明の実施の形態２に係るモーション制御システムの全体の一構成例を示すブロック図である。図６に示すモーション制御システム１ｂは、モーションコントローラ１０ｂと、ロボットコントローラ２０ｂと、第２のロボット４０と、機械系５０とを備える。すなわち、図６に示すモーション制御システム１ｂは、図１に示すモーション制御システム１における第１のロボットコントローラ１０に代えてモーションコントローラ１０ｂを備え、第２のロボットコントローラ２０に代えてロボットコントローラ２０ｂを備え、第１のロボット３０に代えて機械系５０を備える。図６においては、実施の形態１と同等の機能を有する構成要素は、実施の形態１と同一の符号を付して重複する説明を省略する。
【００４３】
機械系５０は、可動部５２と、可動部５２の可動軸に連結された第３のアクチュエータ５１とを含み、第３のアクチュエータ５１は後述するモーションコントローラ１０ｂの第１のサーボ制御部１７によって駆動される。また、第２のロボット４０の第２のロボットアーム４２の各可動軸には第２のアクチュエータ４１が備えられ、第２のアクチュエータ４１は後述するロボットコントローラ２０ｂの第２のサーボ制御部２４によって駆動される。
【００４４】
モーションコントローラ１０ｂは、基準指令生成部１１と、基準応答生成部１２と、通信遅延補償部１３と、基準信号送信部１４と、第１の補間処理部１５と、第１の応答補償部１６と、第１のサーボ制御部１７と、指令生成部１８と、ロボット指令演算部１９Ａと、ロボット指令送信部１９Ｂとを備える。
【００４５】
指令生成部１８は、予め設定された指令のプロファイル情報に基づき、機械系位置指令を演算する。
【００４６】
ロボット指令演算部１９Ａは、予め設定された機械系５０と第２のロボット４０との位置関係と指令生成部１８が出力した機械系位置指令とに基づく座標演算により、第２のロボット４０が機械系５０と協調動作を行うための直交座標系のロボットの位置指令であるロボット指令を演算する。
【００４７】
ロボット指令送信部１９Ｂは、ロボット指令演算部１９Ａが出力したロボットの位置指令であるロボット指令をロボットコントローラ２０ｂに送信する。
【００４８】
基準指令生成部１１、基準応答生成部１２、通信遅延補償部１３、基準信号送信部１４、第１の補間処理部１５、第１の応答補償部１６及び第１のサーボ制御部１７は実施の形態１と同様である。
【００４９】
ロボットコントローラ２０ｂは、ロボット指令受信部２５と、座標変換部２６と、基準信号受信部２１と、第２の補間処理部２２と、第２の応答補償部２３と、第２のサーボ制御部２４とを備える。
【００５０】
ロボット指令受信部２５は、モーションコントローラ１０ｂのロボット指令送信部１９Ｂが送信したロボット指令を受信し、受け取ったロボット指令を出力する。座標変換部２６は、ロボット指令受信部２５が出力したロボット指令を入力とし、直交座標系で表わされたロボット指令を関節座標系で表わされたロボット指令に変換し出力する。
【００５１】
基準信号受信部２１、第２の補間処理部２２、第２の応答補償部２３及び第２のサーボ制御部２４は、実施の形態１と同様である。
【００５２】
次に、実施の形態２のモーション制御システムの動作について説明する。実施の形態２のモーションコントローラ１０ｂは、実施の形態１の第１のロボットコントローラ１０と同様に、基準指令生成部１１と、基準応答生成部１２と、通信遅延補償部１３と、基準信号送信部１４と、第１の補間処理部１５と、第１の応答補償部１６と、第１のサーボ制御部１７と、を備える。また、実施の形態２のロボットコントローラ２０ｂは、実施の形態１の第２のロボットコントローラ２０と同様に、基準信号受信部２１と、第２の補間処理部２２と、第２の応答補償部２３と、第２のサーボ制御部２４とを備える。従って、機械系５０の応答の軌跡及び第２のロボット４０の応答の軌跡を、指令生成部１８及びロボット指令演算部１９Ａで生成した指令の軌跡と一致させることができ、且つ元の指令に対する応答の遅延量を機械系５０と第２のロボット４０との間で一致させることができるため、機械系５０と第２のロボット４０との高精度な協調動作を行うことができる。
【００５３】
なお、実施の形態２では、モーションコントローラ１０ｂをマスタとし、ロボットコントローラ２０ｂをスレーブとしたが、ロボットコントローラ２０ｂをマスタとし、モーションコントローラ１０ｂをスレーブとしてもよい。
【００５４】
また、実施の形態２のモーション制御システムは、複数のモーションコントローラの協調動作にも適用することが可能である。また、スレーブとなる制御装置を２台以上とすると、３台以上の制御装置による協調動作も行うことができ、異なる制御装置で制御するロボット及び外部装置の動作軌跡と動作タイミングとを完全に一致させることができるため、複数の機械の協調作業を高精度に行うことができる。
【００５５】
以上説明したように、制御装置の種類及び機械系の種類の違いに依らずに、機械系同士の高精度な協調動作を実現することができる。また、以上説明したモーション制御システムは、ネットワークで接続された複数の制御装置を用いて高精度な協調動作を実現することができる。
【００５６】
以上の実施の形態に示した構成は、本発明の内容の一例を示すものであり、別の公知の技術と組み合わせることも可能であるし、本発明の要旨を逸脱しない範囲で、構成の一部を省略、変更することも可能である。
【符号の説明】
【００５７】
１０  第１のロボットコントローラ、１０ｂ  モーションコントローラ、１１  基準指令生成部、１２  基準応答生成部、１３  通信遅延補償部、１４  基準信号送信部、１５  第１の補間処理部、１６  第１の応答補償部、１７  第１のサーボ制御部、１８  指令生成部、１９Ａ  ロボット指令演算部、１９Ｂ  ロボット指令送信部、２０  第２のロボットコントローラ、２０ｂ  ロボットコントローラ、２１  基準信号受信部、２２  第２の補間処理部、２３  第２の応答補償部、２４  第２のサーボ制御部、２５  ロボット指令受信部、２６  座標変換部、３０  第１のロボット、３１  第１のアクチュエータ、３２  第１のロボットアーム、４０  第２のロボット、４１  第２のアクチュエータ、４２  第２のロボットアーム、５０  機械系、５１  第３のアクチュエータ、５２  可動部、１１１  前回指令記憶部、１１２  減算器、１１３  距離演算部、１１４  積分器、１５１  位置指令リングバッファ、１５２  基準指令リングバッファ、１５３  探索部、１５４  補間演算部。
【図１】
2018018131.tif 000003
【図２】
2018018131.tif 000004
【図３】
2018018131.tif 000005
【図４】
2018018131.tif 000006
【図５】
2018018131.tif 000007
【図６】
2018018131.tif 000008