(57)【特許請求の範囲】
【請求項１】
複数のロボットと、
前記ロボットが共有する可動軸である少なくとも１つの外部軸と、
前記外部軸および前記ロボットの各軸にそれぞれ対応付けて設けられる位置検出器と、
１つの前記ロボットについてすべての前記外部軸が連結された仮想ロボットを仮定し、前記仮想ロボットごとに取得した前記位置検出器からの取得値それぞれを所定の基準座標系における絶対位置を示す変換値へ変換する変換部と
を備えることを特徴とするロボット制御システム。
【請求項２】
前記変換部は、
前記変換値に基づき、前記ロボットおよび前記外部軸が所定の動作領域内にあるか否かを判定することを特徴とする請求項１に記載のロボット制御システム。
【請求項３】
１つの前記変換部は、
前記外部軸に対応付けられた前記位置検出器すべてと接続されることを特徴とする請求項１に記載のロボット制御システム。
【請求項４】
前記変換部は、
前記仮想ロボットについて、前記ロボットを始端とする数珠つなぎに前記外部軸を連結したものとして仮定し、前記数珠つなぎの終端に位置する前記外部軸をベースとした場合のベース座標系を前記基準座標系とすることを特徴とする請求項１に記載のロボット制御システム。
【請求項５】
前記外部軸は少なくとも、
前記ロボットそれぞれをあわせて支持する胴部を旋回させる旋回軸、および、前記胴部ごと前記ロボットを走行させる走行軸のいずれか一方であることを特徴とする請求項１〜４のいずれか一つに記載のロボット制御システム。
【請求項６】
可動軸である少なくとも１つの外部軸を共有する複数のロボットのうちの１つの前記ロボットについてすべての前記外部軸が連結された仮想ロボットを仮定し、前記仮想ロボットごとに取得した前記外部軸および前記ロボットの各軸にそれぞれ対応付けて設けられる位置検出器からの取得値それぞれを所定の基準座標系における絶対位置を示す変換値へ変換する変換工程
を含むことを特徴とするロボット制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
開示の実施形態は、ロボット制御システムおよびロボット制御方法に関する。
【背景技術】
【０００２】
従来、多軸ロボットを制御するロボット制御システムが知られている。かかるロボット制御システムは、たとえば、エンコーダなどの位置検出器を用いて検出した各軸の位置情報に基づき、多軸ロボットが周囲の障害物へ干渉することを防止する干渉防止制御などを行う（たとえば、特許文献１参照）。
【０００３】
また、１つの胴部に１対の多軸ロボットを双腕として備える双腕ロボットも知られている。かかる双腕ロボットの場合には、ロボット制御システムは、腕ごとに、すなわち、多軸ロボットごとに個別に、前述の位置検出に基づく干渉防止制御を行う。
【０００４】
また、双腕ロボットの胴部が、たとえば、床面などの固定面ではなく、旋回軸や走行軸といった可動する外部軸に固定されている場合には、ロボット制御システムは、かかる外部軸についても個別に取り扱うのが一般的である。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００９−９０４０３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、従来のロボット制御システムでは、上述のように、多軸ロボットおよび外部軸ごとに個別の干渉防止制御を行うため、システム全体の処理が複雑化しやすいという問題があった。
【０００７】
なお、多軸ロボットの動作には、確実性が求められるのが通常である。したがって、かかる確実性を担保するためにも、システム全体へ影響を与える複雑化を回避することが好ましい。
【０００８】
また、かかる課題は、双腕ロボットの干渉防止制御だけでなく、相互に連結された複数のロボットの制御全般についても同様に生じる課題である。
【０００９】
実施形態の一態様は、上記に鑑みてなされたものであって、相互に連結された複数のロボットを容易かつ確実に制御することができるロボット制御システムおよびロボット制御方法を提供することを目的とする。
【課題を解決するための手段】
【００１０】
実施形態の一態様に係るロボット制御システムは、複数のロボットと、前記ロボットが共有する可動軸である少なくとも１つの外部軸と、位置検出器と、変換手段とを備える。位置検出器は、前記外部軸および前記ロボットの各軸にそれぞれ対応付けて設けられる。変換手段は、１つの前記ロボットについてすべての前記外部軸が連結された仮想ロボットを仮定し、前記仮想ロボットごとに取得した前記位置検出器からの取得値それぞれを所定の基準座標系における絶対位置を示す変換値へ変換する。
【発明の効果】
【００１１】
実施形態の一態様によれば、相互に連結された複数のロボットを容易かつ確実に制御することができる。
【図面の簡単な説明】
【００１２】
【図１】図１は、実施形態に係るロボット制御システムの構成例を示す図である。
【図２Ａ】図２Ａは、実施形態に係るロボット制御システムにおける各軸の模式図である。
【図２Ｂ】図２Ｂは、実施形態に係るロボット制御システムにおいて擬制される仮想ロボットを示す図である。
【図３】図３は、実施形態に係るロボット制御システムの構成例を示すブロック図である。
【図４Ａ】図４Ａは、実施形態に係るロボット制御システムの接続関係を示す図である。
【図４Ｂ】図４Ｂは、実施形態に係るロボット制御システムの接続構成例を示す図である。
【図５】図５は、実施形態に係るロボット制御システムが実行する処理手順を示すフローチャートである。
【図６Ａ】図６Ａは、一般的な干渉防止制御手法の概要を示す図である。
【図６Ｂ】図６Ｂは、従来の干渉防止制御手法における各軸の模式図である。
【発明を実施するための形態】
【００１３】
以下、添付図面を参照して、本願の開示するロボット制御システムおよびロボット制御方法の実施形態を詳細に説明する。なお、以下に示す実施形態によりこの発明が限定されるものではない。
【００１４】
図１は、実施形態に係るロボット制御システム１の構成例を示す図である。なお、説明を分かりやすくするために、図１には、鉛直上向きを正方向とするＺ軸を含む３次元の直交座標系を図示している。かかる直交座標系は、以下の説明に用いる他の図面においても示す場合がある。
【００１５】
図１に示すように、ロボット制御システム１は、ロボット１０と、ロボット制御装置２０と、入力装置３０とを備える。
【００１６】
ロボット１０は、ロボットＲ１と、ロボットＲ２と、胴部１１と、基部１２とを備える。ここで、図１に示すように、ロボット１０は、ロボットＲ１およびロボットＲ２を双腕として備える、いわゆる双腕ロボットである。
【００１７】
また、ロボットＲ１およびロボットＲ２は、それぞれが多軸ロボット（図１では７軸ロボット）であり、双方の終端可動部にはエンドエフェクタ（図示せず）が設けられる。
【００１８】
また、図１に示すように、胴部１１は、ロボットＲ１およびロボットＲ２をそれぞれ支持する。また、基部１２は、胴部１１を旋回軸ＡＺまわりに旋回可能に支持する（図中の両矢印１００参照）。そして、基部１２は、レール部１３上に配置される。
【００１９】
また、基部１２は、図示しない走行機構を備えており、配置されたレール部１３上を走行軸ＡＹに沿って走行する（図中の両矢印２００参照）。なお、ここで、旋回軸ＡＺおよび走行軸ＡＹは、ロボットＲ１およびロボットＲ２が共有する外部軸であるということができる。
【００２０】
ロボット制御装置２０は、ロボット１０の制御全般を行うコントローラである。なお、以下では、ロボット制御装置２０が、主に干渉防止制御を行う場合を例に挙げて説明することとする。また、ロボット制御装置２０の構成例については、図３を用いて後述する。      
【００２１】
かかるロボット制御装置２０は、たとえば、有線ＬＡＮ（Local  Area  Network）や無線ＬＡＮといった通信ネットワークを介してロボット１０へ接続される。
【００２２】
入力装置３０は、操作者からの操作を受け付ける装置である。なお、入力装置３０もまた、有線ＬＡＮや無線ＬＡＮといった通信ネットワークを介してロボット制御装置２０へ接続される。操作者は、かかる入力装置３０を介して、ロボット１０へのティーチングや、ロボット１０の動作領域の設定などを行う。
【００２３】
ここで、干渉防止制御手法について、図６Ａおよび図６Ｂを用いて説明しておく。図６Ａは、一般的な干渉防止制御手法の概要を示す図であり、図６Ｂは、従来の干渉防止制御手法における各軸の模式図である。
【００２４】
なお、図６Ａおよび図６Ｂに示すロボット１０’は、実施形態に係るロボット制御システム１のロボット１０と同軸構成であるものとする。
【００２５】
また、図６Ａには、紙面左側にロボット１０’の動作前の様子を、紙面右側にロボット１０’の動作後の様子をそれぞれ示しており、動作前においては、ロボット１０’は、所定の動作領域５００の領域内にあるものとする。
【００２６】
図６Ａに示すように、一般的な干渉防止制御手法は、ロボット１０’へ動作指示を与える場合に、かかる動作指示によってロボットＲ１またはロボットＲ２が動作領域５００の領域外へ出ることとなるか否かを判定する。
【００２７】
ここで、図６Ａの紙面右側に示すように、ロボットＲ１またはロボットＲ２が動作領域５００の領域外へ出ると判定された場合、たとえば、動作領域５００の領域内に収めるように、動作指示に対して修正が加えられる。なお、以下では、かかる処理を動作指示の「事前チェック処理」と記載する。
【００２８】
また、動作指示のタイムラグや誤差を考慮して、動作後のロボットＲ１およびロボットＲ２に対しても動作領域５００の領域内にあるか否かの判定が行われる。かかる判定は、ロボットＲ１およびロボットＲ２が備えるエンコーダなどの位置検出器による実測値に基づいて行われる。なお、以下では、かかる処理を動作指示の「事後チェック処理」と記載する。
【００２９】
ところで、図６Ｂに示すように、従来の干渉防止制御手法においては、ロボット１０’が備えるロボットＲ１およびロボットＲ２の位置を、それぞれ個別の座標系において取得していた。
【００３０】
同様に、たとえば、図１に示した旋回軸ＡＺの位置（具体的には、回転角など）についても、個別の座標系において取得していた。
【００３１】
なお、図６Ｂの破線の閉曲線で囲まれた部分は、ロボットＲ１、ロボットＲ２および旋回軸ＡＺの位置が、それぞれ個別に取得されることをあらわしている。なお、図示していないが、かかる点は走行軸ＡＹについても同様である。
【００３２】
したがって、従来の干渉防止制御手法においては、ロボットＲ１、ロボットＲ２および旋回軸ＡＺの相互の位置を把握しづらかった。すなわち、干渉防止制御処理が複雑化しやすいため、たとえば、ロボット１０’に対してティーチングを行う操作者に対しても高い熟練度が求められていた。
【００３３】
そこで、実施形態に係るロボット制御システム１では、ロボットＲ１、ロボットＲ２およびこれらが共有する外部軸の位置を、共通する所定の基準座標系において取得することとした。
【００３４】
かかる点の詳細について、図２Ａおよび図２Ｂを用いて説明する。図２Ａは、実施形態に係るロボット制御システム１における各軸の模式図であり、図２Ｂは、実施形態に係るロボット制御システム１において擬制される仮想ロボットを示す図である。
【００３５】
図２Ａに示すように、実施形態に係るロボット制御システム１では、ロボットＲ１およびロボットＲ２に加えて、外部軸である旋回軸ＡＺおよび走行軸ＡＹ（図１参照）を、それぞれロボットＲ３およびロボットＲ４として取り扱うこととした。
【００３６】
そして、これらロボットＲ１〜ロボットＲ４それぞれの位置を、共通する所定の基準座標系において取得することとした。なお、図２Ａの破線の閉曲線で囲まれた部分は、ロボットＲ１〜ロボットＲ４それぞれの位置が、たとえば、ロボットＲ４のベース座標系（図中のＸＹＺ座標参照）を基準座標系として取得されることをあらわしている。
【００３７】
具体的には、実施形態に係るロボット制御システム１では、１つの多軸ロボットについてすべての外部軸が数珠つなぎに連結された仮想ロボットを擬制する。たとえば、図２Ｂの閉曲線３００に囲まれた部分に示すように、ロボットＲ１については、ロボットＲ３およびロボットＲ４が数珠つなぎに連結された仮想ロボットを擬制する。
【００３８】
また、図２Ｂの閉曲線４００に囲まれた部分に示すように、ロボットＲ２についても、ロボットＲ３およびロボットＲ４が数珠つなぎに連結された仮想ロボットを擬制する。
【００３９】
そして、実施形態に係るロボット制御システム１では、これら仮想ロボットのそれぞれについて、仮想ロボットを構成する各軸（すなわち、各ロボット）の位置を取得する。そして、仮想ロボットごとに取得した位置についての取得値それぞれを所定の基準座標系における絶対位置を示す変換値へ変換する。
【００４０】
このとき、所定の基準座標系は、ロボットＲ１またはロボットＲ２を始端とする数珠つなぎの終端に位置付けられる外部軸のベース座標系が設定される。すなわち、図２Ｂに示した例の場合、終端にはロボットＲ４が位置付けられるので、かかるロボットＲ４のベース座標系が基準座標系となる。
【００４１】
これにより、仮想ロボットを構成する各軸の所定の基準座標系における位置が、少なくとも仮想ロボット単位で共有される。すなわち、ロボットＲ１およびロボットＲ２のそれぞれは、ロボットＲ３およびロボットＲ４の位置情報を得ることができる。
【００４２】
そして、実施形態に係るロボット制御システム１では、最終的にこれら仮想ロボットごとの位置情報を統合し、ロボット１０全体の各軸の絶対位置を把握する。すなわち、個別の座標系を制御することによる処理の複雑化を回避することができるので、相互に連結された多軸ロボットである双腕ロボットを容易かつ確実に制御することができる。
【００４３】
なお、上述した例では、仮想ロボットの終端に位置付く外部軸のベース座標系を基準座標系とする場合を示したが、基準座標系を、地面または作業床面に設定したワールド座標系につねに固定することとしてもよい。
【００４４】
次に、実施形態に係るロボット制御システム１の構成例について、図３を用いてさらに詳細に説明する。図３は、実施形態に係るロボット制御システム１の構成例を示すブロック図である。
【００４５】
なお、図３では、ロボット制御システム１の説明にあたり必要な構成要素のみを示しており、一般的な構成要素についての記載を省略している。また、図３に示す構成要素は、あくまで機能などに基づいて抽象化された論理ブロックであって、ロボット制御システム１のハードウェア構成などを限定するものではない。
【００４６】
図３に示すように、ロボット制御システム１は、ロボットＲ１〜ロボットＲ４と、ロボット制御装置２０とを備える。なお、図１に示した入力装置３０は、ここでの記載を省略している。
【００４７】
また、ロボットＲ１は、位置検出器であるエンコーダｅｎＲ１を備える。同様に、ロボットＲ２はエンコーダｅｎＲ２を、ロボットＲ３はエンコーダｅｎＲ３を、ロボットＲ４はエンコーダｅｎＲ４を、それぞれ備える。
【００４８】
なお、ロボットＲ１およびロボットＲ２は多軸ロボットであるので、実際には、多軸ロボットの各軸に対応したエンコーダを有するが、ここでは所定の代表位置を検出するエンコーダｅｎＲ１およびエンコーダｅｎＲ２のみを示している。
【００４９】
また、ロボット制御装置２０は、制御部２１と、記憶部２２とを備える。また、制御部２１は、ロボットＲ１に対応する仮想ロボット変換部２１ａ−１と、ロボットＲ２に対応する仮想ロボット変換部２１ａ−２と、統合部２１ｂと、サーボ制御部２１ｃとを備える。また、記憶部２２は、構成定義情報２２ａを記憶する。
【００５０】
仮想ロボット変換部２１ａ−１は、ロボットＲ１について、ロボットＲ３およびロボットＲ４が連結された仮想ロボットを擬制し、かかる仮想ロボットの各軸であるロボットＲ１、ロボットＲ３およびロボットＲ４の位置を取得する処理部である。
【００５１】
具体的には、仮想ロボット変換部２１ａ−１は、エンコーダｅｎＲ１の出力値をロボットＲ１の位置を示す取得値として取得する。また、同様に、エンコーダｅｎＲ３の出力値をロボットＲ３の位置を示す取得値として、エンコーダｅｎＲ４の出力値をロボットＲ４の位置を示す取得値として、それぞれ取得する。
【００５２】
また、仮想ロボット変換部２１ａ−１は、取得した取得値それぞれを所定の基準座標系における絶対位置を示す変換値へ変換する。かかる変換には、いわゆる順キネマティクス演算などを用いることができる。また、変換された変換値は、後述する統合部２１ｂへ出力される。
【００５３】
なお、仮想ロボット変換部２１ａ−１は、記憶部２２の構成定義情報２２ａにあらかじめ登録された仮想ロボットの構成に関する定義情報を参照して、所定の基準座標系などを決定する。かかる定義情報には、たとえば、ロボットＲ１、ロボットＲ３およびロボットＲ４のいずれが上位に位置付くかといった接続関係を示す情報などが含まれる。
【００５４】
また、仮想ロボット変換部２１ａ−１は、変換した変換値に基づき、上述した動作指示の事後チェック処理をあわせて行う。
【００５５】
仮想ロボット変換部２１ａ−２は、ロボットＲ２について、ロボットＲ３およびロボットＲ４が連結された仮想ロボットを擬制し、かかる仮想ロボットの各軸であるロボットＲ２、ロボットＲ３およびロボットＲ４の位置を取得する処理部である。
【００５６】
なお、仮想ロボット変換部２１ａ−２の処理は、ロボットＲ１がロボットＲ２と置き換わる以外は仮想ロボット変換部２１ａ−１の処理と同様であるので、ここでの記載を省略する。
【００５７】
また、図３には、仮想ロボット変換部が、仮想ロボット変換部２１ａ−１および仮想ロボット変換部２１ａ−２の２個である場合を示しているが、擬制する仮想ロボットの個数にあわせて任意の個数とすることができる。
【００５８】
統合部２１ｂは、仮想ロボット変換部２１ａ−１および仮想ロボット変換部２１ａ−２から入力された各仮想ロボットの各軸の位置を示す変換値に基づき、ロボット１０（図１参照）全体の各軸の位置を所定の基準座標系において統合する処理を行う処理部である。
【００５９】
また、統合部２１ｂは、統合したロボット１０の各軸の位置に基づき、上述した動作指示の事前チェック処理をあわせて行う。
【００６０】
また、統合部２１ｂは、事前チェック処理を介した後、サーボ制御部２１ｃに対して動作指示を出力する。なお、動作指示を監視することで、ロボットＲ１とロボットＲ２の干渉をチェックすることも可能である。
【００６１】
サーボ制御部２１ｃは、統合部２１ｂから入力された動作指示に基づき、ロボットＲ１〜ロボットＲ４がそれぞれ備えるサーボ（図示せず）の制御信号を、各サーボに対して出力する処理を行う処理部である。
【００６２】
そして、各サーボは、かかるサーボ制御部２１ｃからの制御信号に基づき、ロボットＲ１〜ロボットＲ４をそれぞれ駆動することとなる。
【００６３】
記憶部２２は、不揮発性メモリやハードディスクドライブといった記憶デバイスで構成され、構成定義情報２２ａを記憶する。構成定義情報２２ａについては上述したため、ここでの記載を省略する。
【００６４】
次に、実施形態に係るロボット制御システム１の接続構成について、図４Ａおよび図４Ｂを用いて説明する。図４Ａは、実施形態に係るロボット制御システム１の接続関係を示す図であり、図４Ｂは、実施形態に係るロボット制御システム１の接続構成例を示す図である。
【００６５】
なお、図４Ａおよび図４Ｂに示す仮想ロボット変換ユニット２１０ａ−１は、図３に示した仮想ロボット変換部２１ａ−１に対応する部品である。また、仮想ロボット変換ユニット２１０ａ−２は、図３に示した仮想ロボット変換部２１ａ−２に対応する部品である。
【００６６】
同様に、メインＣＰＵ基板２１０ｂは、図３に示した統合部２１ｂに対応する部品である。また、同様に、サーボ制御基板２１０ｃ−１およびサーボ制御基板２１０ｃ−２は、図３に示したサーボ制御部２１ｃに対応する部品である。
【００６７】
ここで、図４Ａおよび図４Ｂに示すサーボ制御基板２１０ｃ−１は、ロボットＲ１およびロボットＲ３の各軸を駆動するものとする。また、サーボ制御基板２１０ｃ−２は、ロボットＲ２およびロボットＲ４の各軸を駆動するものとする。
【００６８】
かかる場合、図４Ａに示すように、エンコーダｅｎＲ１は、サーボ制御基板２１０ｃ−１および仮想ロボット変換ユニット２１０ａ−１と接続される（図中の「○」印参照。以下、同様）。また、エンコーダｅｎＲ２は、サーボ制御基板２１０ｃ−２および仮想ロボット変換ユニット２１０ａ−２と接続される。
【００６９】
また、図４Ａに示すように、エンコーダｅｎＲ３は、サーボ制御基板２１０ｃ−１、仮想ロボット変換ユニット２１０ａ−１および仮想ロボット変換ユニット２１０ａ−２と接続される。また、エンコーダｅｎＲ４は、仮想ロボット変換ユニット２１０ａ−１、サーボ制御基板２１０ｃ−２および仮想ロボット変換ユニット２１０ａ−２と接続される。
【００７０】
すなわち、外部軸であるロボットＲ３のエンコーダｅｎＲ３は、仮想ロボット変換ユニット２１０ａ−１および仮想ロボット変換ユニット２１０ａ−２のいずれにも接続される。これは、同じく外部軸であるロボットＲ４のエンコーダｅｎＲ４もまた同様である。
【００７１】
言い換えるならば、１つの仮想ロボットを擬制するユニット（ここでは、仮想ロボット変換ユニット２１０ａ−１または仮想ロボット変換ユニット２１０ａ−２のいずれか）は、外部軸に対応付けられたエンコーダすべてと接続される。
【００７２】
かかる図４Ａに示した接続関係を前提とした接続構成例を図４Ｂに示す。図４Ｂに示すように、たとえば、エンコーダｅｎＲ１は、仮想ロボット変換ユニット２１０ａ−１の入力ポートおよび出力ポートを介して、サーボ制御基板２１０ｃ−１へ接続される。
【００７３】
同様に、エンコーダｅｎＲ２は、仮想ロボット変換ユニット２１０ａ−２の入力ポートおよび出力ポートを介して、サーボ制御基板２１０ｃ−２へ接続される。
【００７４】
また、たとえば、エンコーダｅｎＲ３は、仮想ロボット変換ユニット２１０ａ−２および仮想ロボット変換ユニット２１０ａ−１を数珠つなぎに介して、サーボ制御基板２１０ｃ−１へ接続される。
【００７５】
同様に、エンコーダｅｎＲ４は、仮想ロボット変換ユニット２１０ａ−１および仮想ロボット変換ユニット２１０ａ−２を数珠つなぎに介して、サーボ制御基板２１０ｃ−２へ接続される。
【００７６】
なお、図４Ｂに示したのは、接続構成のあくまで一例であり、実際の接続構成を限定するものではない。したがって、ロボット制御システム１を構成する各ユニットの物理的な仕様などに応じて適宜変更可能である。
【００７７】
次に、実施形態に係るロボット制御システム１が実行する処理手順について、図５を用いて説明する。図５は、実施形態に係るロボット制御システム１が実行する処理手順を示すフローチャートである。
【００７８】
なお、図５には、ロボット制御システム１において実行される位置計算処理の処理手順を示している。かかる位置計算処理は、上述した仮想ロボット変換部２１ａ−１、仮想ロボット変換部２１ａ−２および統合部２１ｂのいずれにおいても実行可能である。
【００７９】
図５に示すように、ロボット制御システム１は、各エンコーダｅｎＲ１〜ｅｎＲ４を介してロボットＲ１〜ロボットＲ４の位置を取得する（ステップＳ１０１）。
【００８０】
そして、ロボット制御システム１は、取得したロボットＲ１〜ロボットＲ４の位置についての取得値に基づき、ロボットＲ１〜ロボットＲ４の位置を計算する（ステップＳ１０２）。なお、ここでの計算は、各エンコーダｅｎＲ１〜ｅｎＲ４の端的な出力値である取得値を、それぞれ個別の座標系において位置換算するものである。
【００８１】
そして、ロボット制御システム１は、ロボットＲ３がロボットＲ４の上位へ連結されているか否かを判定する（ステップＳ１０３）。ここで、ロボットＲ３がロボットＲ４の上位へ連結されていると判定された場合（ステップＳ１０３，Ｙｅｓ）、ロボットＲ４のベース座標系を基準としてロボットＲ３の位置を再計算する（ステップＳ１０４）。
【００８２】
また、ステップＳ１０３の判定条件を満たさない場合（ステップＳ１０３，Ｎｏ）、ステップＳ１０５の処理へ制御を移す。
【００８３】
つづいて、ロボット制御システム１は、ロボットＲ１がロボットＲ３の上位へ連結されているか否かを判定する（ステップＳ１０５）。ここで、ロボットＲ１がロボットＲ３の上位へ連結されていると判定された場合（ステップＳ１０５，Ｙｅｓ）、ロボットＲ３のベース座標系を基準としてロボットＲ１の位置を再計算する（ステップＳ１０６）。
【００８４】
なお、前述のステップＳ１０４においてロボットＲ３の位置が再計算されていたならば、かかるステップＳ１０６におけるロボットＲ１の位置の再計算は、ロボットＲ４のベース座標系を基準としていることとなる。かかる点は、後述するステップＳ１０８についても同様である。
【００８５】
また、ステップＳ１０５の判定条件を満たさない場合（ステップＳ１０５，Ｎｏ）、ステップＳ１０７の処理へ制御を移す。
【００８６】
つづいて、ロボット制御システム１は、ロボットＲ２がロボットＲ３の上位へ連結されているか否かを判定する（ステップＳ１０７）。ここで、ロボットＲ２がロボットＲ３の上位へ連結されていると判定された場合（ステップＳ１０７，Ｙｅｓ）、ロボットＲ３のベース座標系を基準としてロボットＲ２の位置を再計算し（ステップＳ１０８）、処理を終了する。
【００８７】
また、ステップＳ１０７の判定条件を満たさない場合（ステップＳ１０７，Ｎｏ）、処理を終了する。
【００８８】
ところで、これまでは、２つの多軸ロボットを双腕とする双腕ロボットを例に挙げて説明を行ってきたが、ロボットの形態を限定するものではない。たとえば、多軸ロボットが単軸ロボットであってもよいし、３つ以上の腕を有する多腕ロボットであってもよい。
【００８９】
すなわち、実施形態に係るロボット制御システムは、外部軸を介して相互に連結された複数のロボットに対して適用することができる。
【００９０】
上述してきたように、実施形態に係るロボット制御システムは、複数のロボットと、かかるロボットが共有する可動軸である少なくとも１つの外部軸と、変換部とを備える。そして、変換部は、１つのロボットについてすべての外部軸が連結された仮想ロボットを擬制し、かかる仮想ロボットごとに取得したロボットおよび外部軸の位置についての取得値それぞれを所定の基準座標系における絶対位置を示す変換値へ変換する。
【００９１】
したがって、実施形態に係るロボット制御システムによれば、相互に連結された複数のロボットを容易かつ確実に制御することができる。
【００９２】
なお、上述した実施形態では、エンコーダを介して取得した取得値に基づいてロボットおよび外部軸の所定の基準座標系における「位置」を求める場合について主に説明したが、かかる「位置」に基づいて示される「姿勢」に応用できることは言うまでもない。なお、かかる「姿勢」は、「向き」と言い換えてもよい。
【００９３】
さらなる効果や変形例は、当業者によって容易に導き出すことができる。このため、本発明のより広範な態様は、以上のように表しかつ記述した特定の詳細および代表的な実施形態に限定されるものではない。したがって、添付の特許請求の範囲およびその均等物によって定義される総括的な発明の概念の精神または範囲から逸脱することなく、様々な変更が可能である。
【符号の説明】
【００９４】
１    ロボット制御システム
１０    ロボット
１１    胴部
１２    基部
１３    レール部
２０    ロボット制御装置
２１    制御部
２１ａ−１、２１ａ−２  仮想ロボット変換部
２１ｂ  統合部
２１ｃ  サーボ制御部
２２    記憶部
２２ａ  構成定義情報
３０    入力装置
２１０ａ−１、２１０ａ−２  仮想ロボット変換ユニット
２１０ｂ  メインＣＰＵ基板
２１０ｃ−１、２１０ｃ−２  サーボ制御基板
Ｒ１、Ｒ２、Ｒ３、Ｒ４  ロボット
ｅｎＲ１、ｅｎＲ２、ｅｎＲ３、ｅｎＲ４  エンコーダ
【図１】
0005488549.tif 000002
【図２Ａ】
0005488549.tif 000003
【図２Ｂ】
0005488549.tif 000004
【図３】
0005488549.tif 000005
【図４Ａ】
0005488549.tif 000006
【図４Ｂ】
0005488549.tif 000007
【図５】
0005488549.tif 000008
【図６Ａ】
0005488549.tif 000009
【図６Ｂ】
0005488549.tif 000010