説明

垂直多関節ロボットのミラーイメージプログラム作成方法

【課題】従来のミラー変換方法では、位置と姿勢に対応する行列からロボットの各構成軸の角度を求める逆変換の際に、複数の可能性が存在することによって、所望の結果が得られない場合が生じている。
【解決手段】ミラー対称面を垂直多関節ロボットが設置される面に垂直な垂直多関節ロボットの第1の回転軸の軸心を通る平面とし、第1の回転軸の角度は、ミラー対称面からの角度差を正負反転した角度とし、第1の回転軸が基準値となる角度にある場合の第1の回転軸を通る平面内にある第1の回転軸とは異なる他の回転軸の角度は、各々の回転軸の基準値との差を正負反転した角度となるようにし、第1の回転軸が基準位置となる角度にある場合の第1の回転軸を通る平面に対して垂直な回転軸の角度はそのままとすることにより、元のプログラムからミラープログラムを作成する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、垂直多関節ロボットが作業対象物に対して行う作業の動作位置を表す位置データを、その作業対象物と右勝手と左勝手の関係(垂直面を対称面とする対称、すなわち、ミラー対称の関係)にある別の作業対象物に対する動作位置となるようにミラー変換する垂直多関節ロボットの元のプログラムに対するミラーイメージプログラムの作成に関するものである。
【背景技術】
【0002】
溶接作業や切断作業等に適用される産業用ロボットとして、垂直多関節ロボットが使用されることが多い。この垂直多関節ロボットの動作は、事前に作業対象物(一般の呼称にあわせて以下「ワーク」と呼ぶ)に合わせて作成されたプログラムを再生することにより行われる。このプログラムには、垂直多関節ロボットが作業を行う上で必要な情報(例えば、溶接条件等)と共に、垂直多関節ロボットが作業を行うために垂直多関節ロボットが到達すべき位置または複数の位置データの連なりがプログラムに登録されている。そして、垂直多関節ロボットが行う作業は、垂直多関節ロボットの動作を制御するロボット制御装置が、プログラムに登録されている一連の位置データが表す位置に順次垂直多関節ロボットを動作させ、垂直多関節ロボットに取り付けられた溶接トーチや切断トーチ等の作業ツールを作用させることで行われる。
【0003】
また、作業ツールの先端の実際に作業を行う作用点を一般的にTCP(Tool Center Point)と呼ぶ。このTCPは、垂直多関節ロボットの制御における重要な制御対象となっている。プログラムに登録されている位置データは、ワークに対する一動作ごとのTCPの位置および姿勢、すなわち、垂直多関節ロボットの各関節の回転軸の角度を決定する情報であり、ワークの形状や行う作業の内容に合わせて登録される必要がある。
【0004】
作業動作が複雑になれば多数のTCPの位置と姿勢が必要となり、TCPの位置や姿勢を決定する情報である位置データを多数登録する必要がある。これに伴い、登録を行う作業の手間は増大する。実際の作業現場では、プログラムを作成するために多くの時間を掛けており、その大半が一連の位置データの登録に費やされている。
【0005】
ワークには、右勝手/左勝手(垂直面を対称面とする対称)の関係になるものがある。これら2つのワークは、互いにミラー対称の関係を持った形状となっている。この場合、垂直多関節ロボットが一方のワークに対して行う作業の動作は、他方のワークに対して行う作業の位置や姿勢をミラー対称にしたものであればよい。すなわち、一方のワークに対して作業を行うプログラム(元プログラム)があれば、そのプログラム内に登録されている位置データをミラー対称になるように変換(ミラー変換)することにより他方のワークに対して作業を行うプログラム(ミラーイメージプログラム)を生成することができる。これにより、プログラムの作成、特に、位置データの登録の手間を削減することができる。このような考え方から、位置データに対するミラー変換方法が提案されている。
【0006】
ここで、垂直多関節ロボットの一般的な構成について図1を用いて説明する。なお、煩雑となることを避けるため明示はしないが、「直交」、「平行」、「垂直」、「面内」等の記載はいずれも、機構構成上の誤差を含むものである。
【0007】
通常、垂直多関節ロボットは、複数の構造材、および、構造材と構造材とをつなぐ関節とで構成されている。各関節は回転軸を有している。
【0008】
図1に示す垂直多関節ロボットの例では、垂直多関節ロボットの設置面から順に、第1の関節の回転軸であるRTと、第2の関節の回転軸であるUAと、第3の関節の回転軸であるFAと、第4の関節の回転軸であるRWと、第5の関節の回転軸であるBWと、第6の関節の回転軸であるTWの6つの回転軸を有している。
【0009】
RTは第1の回転軸であり、垂直多関節ロボットのベース1の設置面(図1に示す垂直多関節ロボットの下端)に対して垂直となる旋回軸である。そして、構造材2は、第1の回転軸RTを介してベース1に対して回転可能になっている。ここで、説明の便宜上、第1の回転軸RTを含み第1の回転軸RTの回転と共に回転する平面を考える。図1に示す状態では、この平面は紙面と一致しており、以下の図1についての説明ではこの平面のことを「紙面」と呼ぶ。
【0010】
UAは第2の回転軸であり、紙面に対して垂直となる旋回軸である。構造材3は、第2の回転軸UAを介して構造材2に対して回転可能になっている。
【0011】
FAは第3の回転軸であり、紙面に対して垂直となる旋回軸である。構造材4は、第3の回転軸FAを介して構造材3に対して回転可能になっている。
【0012】
RWは第4の回転軸であり、紙面内に存在する旋回軸である。構造材5は、第4の回転軸RWを介して構造材4に対して回転可能になっている。
【0013】
BWは第5の回転軸であり、紙面に対して垂直となる旋回軸である。構造材6は、第5の回転軸BWを介して構造材5に対して回転可能になっている。
【0014】
TWは第6の回転軸であり、紙面内にある旋回軸である。フランジ7には、図示していない作業に必要なツールを取り付ける。フランジ7およびフランジ7に取り付けられた図示していないツールは、第6の回転軸TWを介して構造材6に対して回転可能になっている。
【0015】
なお、垂直多関節ロボットの各関節は、図示していないモータや減速機や位置検出器などで構成されており、図示していない制御用および動力用のケーブルを介して図示していない制御装置に接続され、動作するようになっている。そして、各関節は第1の回転軸RTから第6の回転軸TWを回転中心として回転するものである。
【0016】
次に、図2を用いて、図1で示した垂直多関節ロボットの動作をさらに説明する。
【0017】
第1の回転軸RTは、垂直多関節ロボットの設置面に対して垂直な旋回軸である。図1の説明において、「紙面」としていた平面を、ここでは、平面fとして示している。第2の回転軸UAと第3の回転軸FAは平面fに対して垂直な旋回軸である。第4の回転軸RWは、平面f内にある旋回軸である。
【0018】
ここで、第4の回転軸RWを含み第4の回転軸RWの回転と共に回転する図2に示す平面gを考える。第5の回転軸BWは平面gと垂直な旋回軸である。第6の回転軸TWは、平面g内にある旋回軸である。
【0019】
なお、垂直多関節ロボットの各関節の回転軸の角度(以下、「各関節の角度」と呼ぶ)の基準となる値を基準値と呼ぶことにする。この基準値をどのように設定するかは任意である。しかし、以下の説明では、図1や図2に示すように垂直多関節ロボットが基準姿勢の状態にあるときの各関節の角度を基準値とする。例えば、図2において、平面fと平面gが一致するときの第4の回転軸RWの角度が第4の回転軸RWの基準値である。また、第1の回転軸RTの角度が基準値であるときの平面fを基準平面fsと呼ぶことにする。
【0020】
次に、従来のミラーイメージプログラムの作成について説明する。
【0021】
TCPの位置および姿勢は、それを所定の座標系上での、「座標(位置)と姿勢角」で表すことができる。しかし、従来から提案されている垂直多関節ロボットの位置データに対するミラー変換方法では、垂直多関節ロボットを構成する構造材と構造材とつなぐ回転軸との位置関係を示す同次行列を順次積算して積み上げた同次行列(以下、「位置と姿勢に対応する行列」と呼ぶ)を用いている(例えば、特許文献1参照)。すなわち、プログラムに登録される位置データを「位置と姿勢に対応する行列」に変換し、これを別途求めておいたミラー変換を行うための同次行列に掛けて、ミラー変換後の「位置と姿勢に対応する行列」を求める方法である。
【0022】
この方法は、ミラー変換を行うための同次行列を変えることで、任意の対称面に対して完全なミラー変換の解を求めることができる。そして、従来の垂直多関節ロボットのプログラムに対するミラー変換装置はこの方法を搭載したものとなっている。
【先行技術文献】
【特許文献】
【0023】
【特許文献1】特開平1−271804号公報
【発明の概要】
【発明が解決しようとする課題】
【0024】
従来の垂直多関節ロボットの位置データに対するミラー変換方法を使うことにより、一連の位置データに対して、完全なミラー変換の解としての「位置と姿勢に対応する行列」を求めることができる。しかし、実際には、このようにして求めたミラー変換後の一連の位置データを使ってそのまま作業を行うことができるとは限らない。
【0025】
つまり、従来の方法でミラー変換を行い、それに従って動作を行うと、あるTCPの位置から次のTCPの位置への動作を行うための「各関節の角度」が複数存在するため所望と異なる場合があり、垂直多関節ロボットがその周辺にある他のもの(例えば、ワークやワークを保持するための冶具)と衝突する等干渉して動作できない場合がある。この場合、位置データごとに干渉しないか否かを確認する手間が生じてしまい、また、干渉する場合には位置データを修正する手間が生じてしまい、ミラー変換せずに始めから登録する場合の手間と大差がない状態となってしまうといった課題を生じてしまう。
【0026】
また、垂直多関節ロボットでは、ミラー変換後の「位置と姿勢に対応する行列」は、「各関節の角度」に変換すること(以下、「逆変換」と呼ぶ)で、ミラー変換した後の位置と姿勢で作業動作を行うことができる。
【0027】
ところが、ある「位置と姿勢に対応する行列」で表されるTCPの位置と姿勢を実現するための垂直多関節ロボットを構成する「各関節の角度」の組み合わせとして、複数通りが可能となる場合がある。すなわち、逆変換は、必ずしも一意に決まるとは限らない。例えば、360度以上の可動範囲を持った軸であれば、360度異なる位置が採用可能となる。そのような軸が複数あれば、それらの組み合わせ全てが採用可能となる。これらを吟味して、その中のひとつを選ぶ必要があるが、その方法に絶対的なものがなく、実際に動作をさせてみなければ干渉するか否かを確認することができない。
【0028】
また、垂直多関節ロボットは、プログラムに登録された位置データを順次目標にして動作するものである。このことを考慮すれば、前後の教示位置と各回転軸の変位量が最小となるものを選択する方法が考えられる。しかし、これには全ての場合に正し選択をする保証はなく、やはり、実際に動作させなければ確認することができず、干渉を起こす場合は位置データの修正が必要となる。
【0029】
このように、従来のミラーイメージ作成方法の課題は、「位置と姿勢に対応する行列」から「各関節の角度」を求める逆変換の際に、複数の角度の可能性が存在することによって生じる。
【0030】
本発明は、ミラー対称面の決め方に制約を設けた上で、「位置と姿勢に対応する行列」を使用することなく、直接「各関節の角度」を求めることにより、複数の可能性を排除して唯一確定した結果を得ることができるミラーイメージ作成方法を提供することを目的とする。
【課題を解決するための手段】
【0031】
上記課題を解決するために、本発明の垂直多関節ロボットのミラーイメージプログラム作成方法は、複数の回転軸をもつ関節で構成される垂直多関節ロボットが所定の基準姿勢にある場合の前記垂直多関節ロボットの設置される面に垂直でかつ前記垂直多関節ロボットの第1の関節の回転軸を含む基準平面に対して、前記基準平面に含まれる回転軸をもつ関節と前記基準平面に垂直な回転軸をもつ関節とで前記垂直多関節ロボットは構成されている場合に、ミラー対称面が前記第1の関節の回転軸の軸心を通る平面である際に、前記垂直多関節ロボットを動作させる元となるプログラムから垂直多関節ロボットのミラーイメージプログラムを作成する方法であって、前記第1の関節の角度は、前記ミラー対称面からの角度差を正負反転した角度とし、前記垂直多関節ロボットが前記基準姿勢にある場合に前記基準平面に含まれる回転軸をもつ関節で前記第1の関節以外の関節の角度は、前記元となるプログラムの当該関節の角度と前記基準姿勢のときの角度である各々の回転軸の角度の基準値との差を正負反転した角度となるようにし、前記垂直多関節ロボットが前記基準姿勢にある場合に前記基準平面に垂直な回転軸をもつ関節の角度はそのままとすることにより、ミラーイメージプログラムを作成するものである。
【発明の効果】
【0032】
以上のように、本発明によれば、ミラー変換前のプログラムの「各関節の角度」からミラー変換後のミラーイメージプログラムの「各関節の角度」を直接求めることができ、行列式を用いずにミラーイメージプログラムを作成することができる。
【図面の簡単な説明】
【0033】
【図1】垂直多関節ロボットの概略構成を示す図
【図2】垂直多関節ロボットの動作を説明するための模式図
【図3】垂直多関節ロボットの位置データに対するミラー変換方法の処理を示す図
【図4】実施の形態におけるロボット制御装置の概略構成を示す図
【発明を実施するための形態】
【0034】
以下、本発明を実施するための最良の形態について、図1から図4を用いて説明する。
【0035】
(実施の形態1)
本実施の形態の垂直多関節ロボットの構成は、図1と図2に示すものと同様である。従って、背景技術で説明したものと同様の構成等については同一の符号を付して詳細な説明は省略する。ここで、図1および図2で示した垂直多関節ロボットの作業範囲内に、ミラー対称の関係にある一対の図示しないワークがあり、第1の回転軸RTを面内に持つ対称面に対して対称に設置されているものとする。
【0036】
以下に、前記一対のワークのうちの一方に対して垂直多関節ロボットが動作を行うために予めロボット制御装置に記憶されたプログラムを元のプログラムとし、前記一対のワークのうちの他方に対してのプログラムを元のプログラムに対するミラーイメージプログラムとして作成するミラー変換方法について説明する。なお、元プログラムには、一または複数の位置データが登録されている。そして、この位置データから、垂直多関節ロボットの「各関節の角度」を得ることができる。なお、位置データは、ワークに対する一動作ごとのTCPの位置および姿勢、すなわち、垂直多関節ロボットの各関節の回転軸の角度を決定する情報である。
【0037】
予め第1の回転軸RTを通る平面である任意に設定したミラー対称面と基準平面fs(第1の回転軸RTが基準値にあるときの平面f)との成す角をαとすると、ミラー変換前の「各関節の角度」(RT0,UA0,FA0,RW0,BW0,TWn0)と、ミラー変換後の「各関節の角度」(RT1,UA1,FA1,RW1,BW1,TWn1)との関係は、次の式で表すことができる。
【0038】
RT1=α−(RT0−α) (式1)
UA1=UA0 (式2)
FA1=FA0 (式3)
RW1=−RW0 (式4)
BW1=BW0 (式5)
TW1=−TW0 (式6)
【0039】
ただし、式1から式6における(RT0,UA0,FA0,RW0,BW0,TW0)および(RT1,UA1,FA1,RW1,BW1,TW1)の各角度は、各々の基準値(RTs,UAs,FAs,RWs,BWs,TWs)からの差である。そして、この基準値は、図1や図2に示すように、垂直多関節ロボットが基準姿勢の状態にあるときの各関節の角度である。このとき、RT0およびRT1の値は、各々の場合の平面fの基準平面fsからの角度を表している。
【0040】
上記した式は、ミラー対称面が垂直多関節ロボットの設置面に垂直な軸、すなわち、第1の回転軸RTを通る平面である場合においては、元のプログラムの「各関節の角度」からミラーイメージプログラムの「各関節の角度」を次のように計算することを意味している。
【0041】
1つ目の計算として、第1の回転軸RTの角度、すなわち、平面fのミラー対称面からの角度を正負反転した角度となるようにする。
【0042】
2つ目の計算として、第1の回転軸RTが基準位置である場合の第1の回転軸RTを通る平面内にある第4の回転軸RWと第6の回転軸TWの角度は、各々の回転軸の基準値との差を正負反転した角度となるようにする。
【0043】
3つ目の計算として、第1の回転軸RTが基準位置である場合の第1の回転軸RTを通る平面に垂直である第2の回転軸UAと第3の回転軸FAと第5の回転軸BWの角度はそのままとする。
【0044】
上記計算を行うことにより、垂直多関節ロボットに対して、ミラー変換前の元のプログラムの「各関節の角度」から、ミラー変換にて得られたミラーイメージプログラムの「各関節の角度」を直接求めることができる。
【0045】
次に、図3を用いて、本実施の形態の垂直多関節ロボットの「各関節の角度」のミラー変換処理の流れについて説明する。
【0046】
図3において、S090で、任意に指定されたミラー対称面と基準平面fsとの成す角αを取得する。なお、αの取得方法については後述する。またここで、ミラー対称面は第1の回転軸RTを面内に有するものである。
【0047】
S100で、未変換の対象位置データが残っているか否かを判断し、残っていなければ処理を終了する。残っていればS110に進み、S110で元のプログラムから1つの位置データを取り出す。
【0048】
S120で、位置データを垂直多関節ロボットの各回転軸の基準値からの差分で表した角度(RT0,UA0,FA0,RW0,BW0,TWn0)とする。これは、元のプログラムの角度が各回転軸の基準値からの差分で表されていれば、差分を行う必要はない。
【0049】
S130で、上記した(式1)から(式6)までの計算を行い、ミラー変換後の各回転軸の基準値からの差分で表したに角度(RT1,UA1,FA1,RW1,BW1,TWn1)を求める。
【0050】
S140で、それらを位置データに変換する。これも、元のプログラムの角度が各回転軸の基準値からの差分で表されていれば、変換を行う必要はない。
【0051】
S150で、変換先のプログラムにその位置データを格納する。
【0052】
以上により、元のプログラムからミラーイメージプログラムを作成することができる。
【0053】
なお、ミラー対称面と基準平面fsとの成す角αの指定する方法の一例として、図4では、図示しないロボット操作器の画面に設けた入力枠PNLに数値を設定するものを示している。ここでは、角度αとして10度を指定した例を示している。
【0054】
また、ミラー対称面と基準平面fsの成す角αを指定する方法の他の例としては、ミラー対称面内の位置を指定することで算出する方法や、平面fをミラー対称面に合わせたときの第1の回転軸RTの角度で指定する方法や、与えられたパラメータを元に計算して求める方法などが挙げられる。
【0055】
また、垂直多関節ロボットは天地を入れ替えた設置をする、すなわち、設置面が上になる場合もある。この場合、構造材5は、垂直多関節ロボットを床面に設置する場合と比べて、第4の回転軸RWを180度回転させた状態となる。これに伴い、回転軸RWの基準位置も180度回転させた位置となる。
【0056】
また、産業用ロボットである垂直多関節ロボットは、図4に示すように、図1や図2に示すようなマニピュレータ(図4では、401として示す)と、このマニピュレータ401の動作を制御するロボット制御装置400から構成されている。そして、ロボット制御装置400には、情報の処理等を行う演算部402と、元のプログラムを記憶するための第1の記憶部403と、ミラーイメージプログラムを記憶する第2の記憶部404と、ミラー対称面や平面fを設定するための設定部405と、角度αを入力するための入力部406を備えている。なお、この入力部406には、入力枠PNL(パネル)が設けられている。なお、マニュピレータ401は、ロボット制御装置400の構成要素である駆動部409を通じて接続されている。
【0057】
そして、演算部402が、第1の記憶部403や設定部405や入力部406などからの情報に基づいて、図3に示したミラー変換処理を行いミラーイメージプログラムを作成し、第2の記憶部404に記憶する。
【0058】
以上のように、本実施の形態によれば、ミラー対称面が垂直多関節ロボットの設置面に対して固定された垂直な回転軸をもつ軸を通る平面である場合、行列を使わず、一切の吟味が不要であり、ミラー変換前のプログラムから、ミラー対称面に対して正確にミラー対称となるプログラムを確実に生成することができる。
【0059】
そして、ミラー変換前の位置データを実現するための「各関節の角度」から、ミラー変換後の位置データを実現するための「各関節の角度」を直接求めることができる。
【産業上の利用可能性】
【0060】
本発明の方法によれば、元のプログラムからミラーイメージプログラムを作成することができ、ミラー対称となっている一対のワークに対して作業を行う産業用ロボットの動作プログラムの作成方法として産業上有用である。
【符号の説明】
【0061】
1 ベース
2 構造材
3 構造材
4 構造材
5 構造材
6 構造材
7 フランジ
RT 第1の回転軸
UA 第2の回転軸
FA 第3の回転軸
RW 第4の回転軸
BW 第5の回転軸
TW 第6の回転軸
f 平面(RTの回転軸を含みRTの回転と共に回転する平面)
fs 基準平面(RTの角度が基準値であるときの平面)
g 平面(RWの回転軸を含みRWの回転と共に回転する平面)
PNL 入力枠
400 ロボット制御装置
401 マニピュレータ
402 演算部
403 第1の記憶部
404 第2の記憶部
405 設定部
406 入力部
409 駆動部

【特許請求の範囲】
【請求項1】
複数の回転軸をもつ関節で構成される垂直多関節ロボットが所定の基準姿勢にある場合の前記垂直多関節ロボットの設置される面に垂直でかつ前記垂直多関節ロボットの第1の関節の回転軸を含む基準平面に対して、前記基準平面に含まれる回転軸をもつ関節と前記基準平面に垂直な回転軸をもつ関節とで前記垂直多関節ロボットは構成されている場合に、ミラー対称面が前記第1の関節の回転軸の軸心を通る平面である際に、前記垂直多関節ロボットを動作させる元となるプログラムから垂直多関節ロボットのミラーイメージプログラムを作成する方法であって、
前記第1の関節の角度は、前記ミラー対称面からの角度差を正負反転した角度とし、
前記垂直多関節ロボットが前記基準姿勢にある場合に前記基準平面に含まれる回転軸をもつ関節で前記第1の関節以外の関節の角度は、前記元となるプログラムの当該関節の角度と前記基準姿勢のときの角度である各々の回転軸の角度の基準値との差を正負反転した角度となるようにし、
前記垂直多関節ロボットが前記基準姿勢にある場合に前記基準平面に垂直な回転軸をもつ関節の角度はそのままとすることにより、
ミラーイメージプログラムを作成する垂直多関節ロボットのミラーイメージプログラム作成方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate


【公開番号】特開2011−20206(P2011−20206A)
【公開日】平成23年2月3日(2011.2.3)
【国際特許分類】
【出願番号】特願2009−166546(P2009−166546)
【出願日】平成21年7月15日(2009.7.15)
【出願人】(000005821)パナソニック株式会社 (73,050)
【Fターム(参考)】