JP6252278B2 - ロボットの制御方法、ロボットの制御装置 - Google Patents

ロボットの制御方法、ロボットの制御装置 Download PDF

Info

Publication number
JP6252278B2
JP6252278B2 JP2014058121A JP2014058121A JP6252278B2 JP 6252278 B2 JP6252278 B2 JP 6252278B2 JP 2014058121 A JP2014058121 A JP 2014058121A JP 2014058121 A JP2014058121 A JP 2014058121A JP 6252278 B2 JP6252278 B2 JP 6252278B2
Authority
JP
Japan
Prior art keywords
posture
rotation
vector
euler
robot
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2014058121A
Other languages
English (en)
Other versions
JP2015182147A (ja
Inventor
慧 井手
慧 井手
尚哉 香川
尚哉 香川
大介 川瀬
大介 川瀬
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Denso Wave Inc
Original Assignee
Denso Wave Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Denso Wave Inc filed Critical Denso Wave Inc
Priority to JP2014058121A priority Critical patent/JP6252278B2/ja
Publication of JP2015182147A publication Critical patent/JP2015182147A/ja
Application granted granted Critical
Publication of JP6252278B2 publication Critical patent/JP6252278B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、多関節型のロボットを制御するためのロボットの制御方法、ロボットの制御装置に関する。
多関節型のロボットにおいて、ユーザにより教示された複数の教示点間を曲線で補間し、その曲線に沿ってロボットを回転駆動する制御が行われている。具体的には、例えば始点、経由点および終点が教示された場合にそれら3つの教示点間を曲線で補間する制御が行われている。このような制御を可能とすることで、小数の教示点を設定するだけでロボットの動作軌跡全体を設定できるというメリットを受けることができる。
さて、産業用途においては、ロボットは、一般的に繰り返し作業を行うために設けられている。その場合、繰り返し作業一回当たりの動作時間を短縮することができれば、生産性を向上させることができる。そのため、例えば特許文献1のものは、始点から終点までロボットを回転駆動させる際の所要時間が最短となるように制御を行っている。
特開平11−198072号公報
ところで、ロボットは、例えばフランジ構造の手先を回転駆動するとき、その回転方向を2つ設定することができる。具体的には、現在位置から例えば+90°となる回転位置まで回転駆動する際には、現在位置から+90°回転駆動する回転方向と、現在位置から−270°回転駆動する回転方向とが存在している。そして、いずれの回転方向で回転駆動されたとしても、最終的には、手先は現在位置から+90°の回転位置まで回転駆動されることになる。
しかしながら、従来では、上記したように所要時間を短縮するために、始点から終点までの姿勢の変化量が少なくなる回転方向が選択されていた。つまり、従来では、始点、経由点および終点の3点が教示された場合であっても、経由点での姿勢を考慮せずに、始点での姿勢から終点での姿勢まで回転駆動する際の回転量が小さくなる回転方向が選択されていた。その結果、180°を超えるような回転を行うことができず、実際に回転駆動されたときの経由点での姿勢が、教示された姿勢から大きくずれてしまうことがあった。
この場合、教示点の数を増やせば姿勢を細かく制御することが可能であるものの、そのようにしてしまうと、小数の教示点を設定するだけでロボットの動作軌跡全体を設定できるという補間による制御を行うメリットがなくなってしまう。
本発明は、上記事情に鑑みてなされたものであり、その目的は、補間による制御を行う場合において、教示点の数が少なくとも経由点での姿勢を教示されて姿勢に近づけることができるロボットの制御方法、ロボットの制御装置を提供することにある。
請求項1記載のロボットの制御方法の発明では、教示された始点、経由点および終点の3点の教示点間を曲線で補間して多関節型のロボットの動作軌跡を求める際に、始点から終点までの姿勢変化を表すオイラーベクトルV1と、始点から経由点までの姿勢変化を表すオイラーベクトルV2とを求め、オイラーベクトルV1とオイラーベクトルV2との内積を求めて内積の正負を判定する。
オイラーベクトルは、回転軸となるベクトル成分と、その回転軸周りの回転量成分とにより表される。このとき、2つのオイラーベクトルの内積が正であるか負であるかは、オイラーベクトルによって示された回転軸の向きが一致しているか否か、すなわち、回転量成分だけ回転させる際の回転方向が一致するか否かを示している。つまり、内積の正負によって、姿勢を変化させた際の回転方向が一致するか否かを判定することができる。
そして、上記したオイラーベクトルV1とオイラーベクトルV2の場合では、内積が負となるのは、始点から終点まで最短で回転駆動する場合の回転方向と、始点から経由点まで最短で回転駆動する場合の回転方向とが一致しない場合である。一方、内積が正となるのは、始点から終点まで最短で回転駆動する場合の回転方向と、始点から経由点まで最短で回転駆動する場合の回転方向とが一致する場合である。
そのため、オイラーベクトルV1とオイラーベクトルV2との内積が負であれば、始点から終点まで最短で回転させた場合の回転方向と始点から経由点まで最短で回転駆動する場合の回転方向とが一致していないことから、始点から終点までを最短動作させた場合に経由点の姿勢を経由しない状態、すなわち、始点から終点までの動作中の任意の場所でも経由点で教示した姿勢に近い姿勢が出現しない状態となるので、始点から終点まで姿勢を変化させた際の姿勢の変化量が相対的に大きくなる回転方向、つまり、始点から終点まで最短で回転駆動する場合とは逆向きの回転方向を、実際にロボットを回転駆動する際の回転方向に設定する。逆向きの回転方向ということは、そもそも姿勢変化というのが360°の値で表現されることから、始点から終点までを最短動作させた場合に経由点の姿勢を経由しない(つまり、教示された姿勢に近い姿勢が出現しない)ことを考えれば、逆に始点から終点までの動作の中に経由点の姿勢に近い姿勢を含むということである。これにより、実際に回転駆動した際の経由点での姿勢を教示された経由点での姿勢に近づけることができる。そして、遠回りの回転方向が選択可能であるため、180°を超えるような回転が可能となる。したがって、補間による制御を行う場合において経由点での姿勢が教示された姿勢から大きくずれることを抑制できる。
さて、オイラーベクトルV1とオイラーベクトルV2との内積が正であれば、始点から終点まで最短で回転駆動する場合の回転方向と始点から経由点まで最短で回転駆動する場合の回転方向とが一致していることになる。ただし、内積が正になったとしても、必ずしも始点から終点までを最短動作させた場合に経由点の姿勢を経由する(つまり、教示された姿勢に近い姿勢が出現する)とは限らない。これは、経由点とは終点までに経由すべき点として教示される点であるものの、始点での姿勢から経由点での姿勢までの回転量成分が、始点での姿勢から終点での姿勢までの回転量成分よりも大きく変化していることもあり得るためである。
そこで、内積が正であった場合には、オイラーベクトルV1の回転量成分θαとオイラーベクトルV2の回転量成分θβとの大小関係を比較する。
このとき、回転量成分θαが回転量成分θβよりも大きければ、始点から終点まで姿勢を変化させた際の姿勢の変化量が相対的に小さくなる回転方向、つまり、始点から終点まで最短で回転駆動する場合と同じ回転方向を、実際にロボットを回転駆動する際の回転方向に設定する。これは、平易に言えば、始点から終点まで最短で姿勢を変化させる回転方向に回転駆動すれば、その途中で経由点での姿勢を取ることができるためである。
一方、回転量成分θαが回転量成分θβよりも小さければ、始点から終点まで姿勢を変化させた際の姿勢の変化量が相対的に大きくなる回転方向、つまり、始点から終点まで最短で回転駆動する場合とは逆向きの回転方向を、実際にロボットを回転駆動する際の回転方向に設定する。これは、平易に言えば、始点から終点まで最短で姿勢を変化させる回転方向に回転駆動すると、その途中では経由点での姿勢を取ることができないためである。
このように、オイラーベクトルの内積および回転量成分の大小関係に基づいてロボットを回転駆動する際の回転方向を設定することにより、遠回りの回転方向が選択肢に組み込まれ、180°を超えるような回転が可能となる。そして、経由点での姿勢に近づける方向に回転方向を設定するので、教示された経由点での姿勢に近くなり、補間による制御を行う場合において、経由点での姿勢を教示された姿勢に近づけることができる。つまり、経由点での姿勢が教示された姿勢から大きくずれることを抑制することができる。
この場合、回転量成分のスカラー値を直接用いて大小関係を判定しているので、処理を簡略化することができ、判定を短期間で行うことができる。
また、教示点の数を増やすことなく経由点での姿勢を教示された姿勢に近づけることができるため、小数の教示点を設定するだけでロボットの動作軌跡全体を設定できるというメリットが損なわれることもない。
請求項2記載のロボットの制御方法の発明では、手先軸の座標系を対象として回転方向の判定を行う。手先軸の座標系は、手先つまりツールの向きを示すものである。そこで、手先軸の座標系を対象として回転方向を判定すれば、手先軸の向きを教示された経由点での向きに近づけることができる。すなわち、実際の動作軌跡における経由点での姿勢を、教示された姿勢つまりはユーザが所望する姿勢に近づけることができる。
請求項3記載のロボットの制御装置の発明は、オイラーベクトルを求めるベクトル取得手段と、オイラーベクトルの内積を求めて内積の正負を判定する判定手段と、オイラーベクトルの回転量成分の大小関係を比較する比較手段と、判定手段の判定結果および比較手段の比較結果に基づいてロボットを回転駆動する際の回転方向を設定する設定手段と、を備える。これにより、上記した請求項1記載のロボットの制御方法を採用したロボットの制御装置を実現できる。そして、上記した請求項1記載のロボットの制御方法で述べたような効果を得ることができる。
請求項4記載のロボットの制御装置の発明では、ベクトル取得手段は、手先軸に対応する座標系における姿勢行列を対象としてオイラーベクトルを求める。つまり、手先軸を対象として回転方向の判定を行う。これにより、上記した請求項2記載のロボットの制御方法で述べたような効果を得ることができる。
本発明の一実施形態によるロボットの構成を概略的に示す図 従来の補間制御におけるロボットの姿勢の変化を模式的に示す図 ロボットの回転方向を模式的に示す図 姿勢の異なる2つの座標系における各ベクトルを模式的に示す図 制御装置による回転方向設定処理の流れを示す図 経由点姿勢とオイラーベクトルとの関係を模式的に示す図 経由点および終点に対する回転量成分の大小関係を模式的に示す図 回転方向設定処理を行った場合の経由点姿勢を模式的に示す図
以下、本発明の一実施形態について、図1から図8を参照しながら説明する。
図1に示すように、ロボットシステム1は、多関節型のロボット2、ロボット2を制御するコントローラ3、コントローラ3に接続されたティーチングペンダント4を備えている。このロボットシステム1は、一般的な産業用に用いられている。
ロボット2は、いわゆる6軸の垂直多関節型ロボットとして周知の構成を備えており、ベース5上に、Z方向の軸心を持つ第1軸(J1)を介してショルダ6が水平方向に回転可能に連結されている。ショルダ6には、Y方向の軸心を持つ第2軸(J2)を介して上方に延びる下アーム7の下端部が垂直方向に回転可能に連結されている。下アーム7の先端部には、Y方向の軸心を持つ第3軸(J3)を介して第一上アーム8が垂直方向に回転可能に連結されている。第一上アーム8の先端部には、X方向の軸心を持つ第4軸(J4)を介して第二上アーム9が捻り回転可能に連結されている。第二上アーム9の先端部には、Y方向の軸心を持つ第5軸(J5)を介して手首10が垂直方向に回転可能に連結されている。手首10には、X方向の軸心を持つ第6軸(J6)を介してフランジ11が捻り回転可能に連結されている。以下、第6軸を、便宜的に手先軸とも称する
ベース5、ショルダ6、下アーム7、第一上アーム8、第二上アーム9、手首10およびフランジ11は、ロボット2のアームとして機能し、アームの先端となるフランジ11には、図示は省略するが、ハンド(エンドエフェクタとも呼ばれる)が取り付けられる。ハンドは、例えば図示しないワークを保持して移送したり、ワークを加工する工具等が取り付けられたりする。ロボット2に設けられている各軸(J1〜J6)には、それぞれに対応して駆動源となるモータ(図示省略)が設けられている。
コントローラ3は、ロボットの制御装置に相当し、図示しないCPU、ROMおよびRAM等で構成されたコンピュータからなる制御部においてコンピュータプログラムを実行することで、ロボット2を制御している。具体的には、コントローラ3は、インバータ回路等から構成された駆動部を備えており、各モータに対応して設けられているエンコーダで検知したモータの回転位置に基づいて例えばフィードバック制御によりモータを駆動する。
また、コントローラ3は、詳細は後述するが、姿勢変化を表すオイラーベクトルを求めるベクトル取得手段、オイラーベクトルの内積を求めて内積の正負を判定する判定手段、オイラーベクトルの回転量成分の大小関係を比較する比較手段、および、判定手段の判定結果および比較手段の比較結果に基づいてロボット2を回転駆動する際の回転方向を設定する設定手段を構成している。
ティーチングペンダント4は、例えば概ね略矩形箱状に形成されており、ユーザが所持したまま操作可能な程度の大きさに形成されている。このティーチングペンダント4には、各種キースイッチやタッチパネル等が設けられており、ユーザは、それらキースイッチやタッチパネル等を用いてティーチングを行う。
このような構成のロボットシステム1では、ロボット2を制御する際の基準となる座標系が設定されている。本実施形態の場合、ベース5に対応する座標系が、基準座標系Σとなる。この基準座標系Σは、ロボット2がどのような姿勢を取ったとしても変化することがない座標系である。この基準座標系Σには、互いに直交するX軸、Y軸およびZ軸が設定されている。なお、Z軸は設置面に垂直な軸となっている。
また、ロボット2では、手先軸(J6)に対応する座標系Σが設定されている。この座標系Σは、フランジ11の向きを手先軸の原点を基準として示す座標系であり、互いに直交するX軸、Y軸およびZ軸が設定されている。このうち、Z軸は、手先軸と同軸に設定されている。つまり、Z軸の向きが、フランジ11の向き、つまり、手先の向きを示すことになる。
また、ロボット2の姿勢を表す際には、基準座標系Σからみた手先の向きを表すベクトルが用いられる。具体的には、座標系ΣのX軸方向を表す3次元ベクトルであるノーマルベクトル(N)、基準座標系Σからみた座標系ΣのY軸方向を表す3次元ベクトルであるオリエントベクトル(O)、および、基準座標系Σからみた座標系ΣのZ軸方向を表す3次元ベクトルであるアプローチベクトル(A)が制御に用いられる。
これら各ベクトルは、以下の(1)式〜(3)式にて表される。
Figure 0006252278
上記した(1)式〜(3)式に付されているTは、以下の(4)式に示すように、基準座標系Σから座標系Σへの座標変換を行う4行4列の行列であり、同次変換行列と称される。この同次変換行列は、ロボット2の手先の位置と姿勢を表すために用いられる。
Figure 0006252278
なお、(4)式に示されているRは、ノーマルベクトル、オリエントベクトルおよびアプローチベクトルを纏めた3行3列の行列であり、R=(N O A)として表される。また、(4)式に示されているPは、座標系Σの原点の位置を基準座標系Σで表した3次元ベクトルである。
ここで、始点、経由点および終点の3点が教示点として示された場合における従来の補間による制御について、図2を参照しながら説明する。以下、複数の教示点間を曲線にて補間する制御を、便宜的に補間制御と称する。なお、この補間制御は、一般的には円弧制御とも称されるが、必ずしも円弧に限らず、スプライン曲線等で補間されることもある。
例えば図2(a)に示すように、互いに異なり、且つ、直線上にない始点(K1)、経由点(K2)および終点(K3)の3点が、ユーザにより教示点として設定されたとする。このとき、各教示点での姿勢は、図2(b)に示したようになっているものとする。なお、図2(b)では、説明の簡略化のために、K1〜K3におけるアプローチベクトル(A1〜A3)にのみ符号を付している。以下、便宜的に、始点での姿勢を始点姿勢と称し、終点での姿勢を終点姿勢と称し、経由点での姿勢を経由点姿勢と称する。
このとき、従来の補間制御では、図2(c)に示すように、経由点姿勢を考慮せずに、始点姿勢から終点姿勢となるまでの時間が最短となるようにロボット2を回転駆動していた。その結果、図2(d)に示すように、回転駆動される際の経由点のアプローチベクトル(A4)が、図2(a)に示した教示された経由点のアプローチベクトル(A2)と一致しない状態、つまり、回転駆動した際の経由点姿勢が教示された姿勢から大きくずれた状態となることがあった。
これは、ロボット2を回転駆動する際には、その回転方向が2つ存在するためである。例えば、図3(a)に示すように、手先軸のアプローチベクトルがA1である始点姿勢から、アプローチベクトルがA3である終点姿勢となるように回転駆動する場合を考えてみる。この場合、始点から終点まで回転駆動する回転方向としては、相対的に回転量が少なく、回転駆動に要する時間が最短時間となる姿勢回転方向D1(以下、近回り方向と称する)と、相対的に回転量が多く始点から終点まで回転駆動するのに要する最短時間とはならない姿勢回転方向D2(以下、遠回り方向と称する)とが存在する。なお、図3では、説明の簡略化のために、アプローチベクトルA1、A3の基点を重ねている。
このとき、従来では、始点姿勢と終点姿勢とだけを考慮し、始点から終点まで回転駆動させたときの時間が最短時間となるように、近回り方向が選択されていた。その結果、図3(b)に示すように、実際に回転駆動されたときの経由点でのアプローチベクトル(A4)が、教示された経由点でのアプローチベクトル(A2)に対して例えば逆向きになる等、経由点での姿勢が大きくずれるおそれがあった。そして、ロボット2の手先にはツールが取り付けられることから、手先の向きがずれてしまうと、ツールの向きもずれてしまう。その結果、ワークが意図しない形状に加工されたりするおそれがあった。
この場合、教示点の数を増やし、ロボット2の軌跡を細かく制御することで、上記したずれが生じることを防止することができると考えられる。しかし、そのような対処方法は、少ない教示点を設定することで軌跡全体を設定できるという補間制御の意義が薄れてしまう。
そこで、本実施形態では、補間制御を行う場合において、実際に回転駆動されたときの経由点姿勢とユーザにより教示された経由点姿勢とが大きくずれることを抑制している。
まず、姿勢行列を用いて2つの座標間の姿勢変化を表す手法について、図4を参照しながら説明する。図4に示すように、基準座標系Σに任意の2点が存在し、一方が座標系ΣF1で表される例えば始点であり、他方が座標系ΣF2で表される例えば終点であるとする。このとき、始点からみた終点の姿勢行列をF1F2とすると、姿勢行列F1F2は、以下の(5)式で表すことができる。
Figure 0006252278
ただし、(5)式において、F1は、基準座標系Σから座標系ΣF1への同次変換行列F1に含まれる姿勢行列であり、F2は、基準座標系Σから座標系ΣF2への同次変換行列F2に含まれる姿勢行列である。
そして、座標系ΣF1から座標系ΣF2への姿勢の変化量ΔRは、座標系ΣF1から座標系ΣF2への姿勢行列F1F2と同義であるので、上記した(5)式から、姿勢の変化量ΔRは、以下の(6)式にて表される。
Figure 0006252278
さて、本実施形態では、後述するように、回転駆動する際の回転方向を、オイラーベクトル表現した際の回転量成分θにより判定する。オイラーベクトルは、周知のように、オイラーベクトルはある姿勢行列Rを、回転軸となる以下の(7)式で示される単位ベクトルのベクトル成分V(v,v,v)と、回転量成分θとで表現する手法である。
Figure 0006252278
そして、上記した(6)式をオーラ−ベクトルの公式に適用することで、以下の(8)式および(9)式に示すように、座標系ΣF1と座標系ΣF2との間の姿勢の変化量(ΔR)を、ベクトル成分と回転量成分とで表現することができる。
Figure 0006252278
これら姿勢変化をオイラーベクトル表現するための処理は、コントローラ3によって行われている。そして、コントローラ3は、姿勢変化をオイラーベクトル表現した際のベクトル成分(v)と回転量成分(θ)とに基づいて、補間制御を行う際の回転駆動の回転方向を上記した近回り方向とするか遠回り方向とするかを判定する。より具体的には、本実施形態の場合、コントローラ3は、図2に示したような互いに異なり、且つ、直線上にない始点(K1)、経由点(K2)および終点(K3)の3点が教示点として設定されたとき、図5に示す回転方向設定処理を実行することで回転方向を判定する。
本実施形態の場合、コントローラ3は、手先軸の座標系を対象として回転方向設定処理を実行する。これは、手先軸の座標系は手先つまりツールの向きを示すものであり、ワークを加工する際に重視されると考えられるためである。
この回転方向設定処理において、コントローラ3は、まず教示された始点、経由点および終点での姿勢を取得し、姿勢行列に基づいて、始点姿勢から終点姿勢への変化をオイラーベクトル表現した際のベクトルV1と、始点姿勢から経由点姿勢への変化をオイラーベクトル表現した際のベクトルV2とを求める。つまり、コントローラ3は、姿勢変化を表すオイラーベクトルを求めるベクトル取得手段として機能する。
オイラーベクトルを求めると、コントローラ3は、それらの内積(V1・V2)が負であるかを判定する(S1)。このステップS1では、始点から終点まで回転駆動する際の回転方向と、始点から経由点まで回転駆動する際の回転方向とが一致するか否かが判定されている。つまり、コントローラ3は、オイラーベクトルの内積を求めて内積の正負を判定する判定手段として機能する。
例えば、図6(a)に模式的に示すように、始点から終点まで最短で、つまり、回転量が少ない方向に回転駆動する際の回転方向D3と、始点から経由点まで最短で回転駆動する際の回転方向D4とが一致すれば、内積(V1・V2)は正となる。一方、図6(b)に模式的に示すように、始点から終点まで回転駆動する際の回転方向D3と、始点から経由点まで回転駆動する際の回転方向D4とが一致していなければ、内積(V1・V2)は負となる。つまり、内積(V1・V2)の正負によって、経由点姿勢に近づけるための回転方向を判断することができる。
そのため、コントローラ3は、内積(V1・V2)が負である場合には(S1:YES)、姿勢回転方向を、遠回り方向つまり終点まで最短となる回転方向とは逆向きの回転方向に設定する(S4)。これにより、180°を超えるような回転方向を選択できるようになり、実際に回転駆動した際における経由点姿勢を、教示された経由点姿勢に近づけることができる。
これに対して、コントローラ3は、内積(V1・V2)が負でない場合には(S1:NO)、回転量θに基づいて回転方向を判定する。具体的には、コントローラ3は、始点姿勢から終点姿勢への変化をオイラーベクトル表現した際の回転量成分θαと、始点姿勢から経由点姿勢への変化をオイラーベクトル表現した際の回転量成分θβとを求め、その大小関係に基づいて回転方向を判定する。つまり、コントローラ3は、オイラーベクトルV1の回転量成分θαとオイラーベクトルV2の回転量成分θβとの大小関係を比較する比較手段として機能する。
コントローラ3は、図7(a)に示すように回転量成分θαが回転量成分θβよりも大きい場合には(S2:NO)、姿勢回転方向を、近回り方向つまり終点まで最短となる回転方向と同じ向き回転方向に設定する(S3)。この状態は、より平易に言えば、始点姿勢から終点姿勢まで回転駆動する途中で、経由点姿勢と同じあるいは近似する姿勢を取ることができる状態である。そのため、回転方向を近回り方向に設定することで、実際に回転駆動する際の経由点姿勢を教示された経由点姿勢に近づけることができる。
一方、コントローラ3は、図7(b)に示すように回転量成分θαが回転量成分θβよりも小さい場合には(S2:YES)、姿勢回転方向を、遠回り方向に設定する(S4)。この場合、始点姿勢から終点姿勢まで最短で回転駆動すると、その途中において経由点姿勢と同じあるいは近似する姿勢を取ることができない。そのため、コントローラ3は、回転方向に遠回り方向を設定する。これにより、実際に回転駆動した際における経由点姿勢を、教示された経由点姿勢に近づけることができる。
このように、コントローラ3は、オイラーベクトルの内積および回転量成分の大小関係に基づいて、ロボット2を回転駆動する際の回転方向を設定する設定手段として機能する。
いずれかの回転方向を設定すると、コントローラ3は、回転方向設定処理を終了する。その後、教示点間を補間して動作軌跡を設定し、その動作軌跡に沿うようにロボット2を制御する。
これにより、例えば図8(a)に示すような教示点つまり姿勢がユーザにより教示されたとき、回転方向設定処理によって180°を超える回転方向を選択できるようになり、教示された経由点姿勢に近づく回転方向が選択されて、例えば図8(b)に示すように教示されたアプローチベクトル(A2)と実際に回転駆動する際のアプローチベクトル(A4)が一致する等、実際の軌道における経由点姿勢を教示された経由点姿勢と同じあるいは近似した姿勢にすることができる。
以上説明した本実施形態によれば、次のような効果を得ることができる。
実施形態の制御方法では、始点から終点までの姿勢変化を表すオイラーベクトルV1と、始点から経由点までの姿勢変化を表すオイラーベクトルV2とを求め、オイラーベクトルV1とオイラーベクトルV2との内積を求め、まず、姿勢を変化させた際の回転方向が一致するか否かを判定する。そして、オイラーベクトルV1とオイラーベクトルV2との内積が負であれば、始点から終点まで最短で回転させた場合の回転方向と始点から経由点まで最短で回転させた場合の回転方向とが一致していないことから、始点から終点まで最短で回転させた場合とは逆向きの回転方向(遠回り方向)を、実際にロボットを回転駆動する際の回転方向に設定する。これにより、実際に回転駆動した際の経由点での姿勢を教示された経由点での姿勢に近づけることができる。そして、遠回りの回転方向が選択された場合には、180°を超えるような回転が可能となる。したがって、補間による制御を行う場合において経由点での姿勢が教示された姿勢から大きくずれることを抑制できる。
一方、オイラーベクトルV1とオイラーベクトルV2との内積が正であれば、始点から終点まで最短で回転させた場合の回転方向と始点から経由点まで最短で回転させた場合の回転方向とが一致することになるため、オイラーベクトルV1の回転量成分θαとオイラーベクトルV2の回転量成分θβとの大小関係を比較する。そして、回転量成分θαが回転量成分θβよりも大きければ、始点から終点まで最短で回転させた場合と同じ回転方向(近回り方向)を、実際にロボットを回転駆動する際の回転方向に設定する。また、回転量成分θαが回転量成分θβよりも小さければ、始点から終点まで最短で回転させた場合とは逆向きの回転方向(遠回り方向)を、実際にロボットを回転駆動する際の回転方向に設定する。
このように、オイラーベクトルの内積および回転量成分の大小関係に基づいてロボットを回転駆動する際の回転方向を経由点姿勢に近づける方向に設定することで、遠回りの回転方向が選択肢に組み込まれ、180°を超えるような回転が可能となる。そして、実際に回転駆動した際の経由点での姿勢を教示された経由点での姿勢に近づけることができる。したがって、補間による制御を行う場合において経由点での姿勢が教示された姿勢から大きくずれることを抑制できる。
また、回転量成分のスカラー値を直接用いて大小関係を判定している。これは、オイラーベクトル表現とすれば、回転量成分が負の値を取ることはないためである。そのため、絶対値を取る等の処理が不要となり、純粋に回転量成分のスカラー値の大小関係で判定を行うことができ、処理を簡略化することができる。そして、処理が簡略化されることで、判定を短期間で行うことができる。
また、教示点の数を増やすことなく経由点での姿勢を教示された姿勢に近づけることができるため、小数の教示点を設定するだけでロボットの動作軌跡全体を設定できるというメリットを享受することができる。つまり、ユーザの負担を増やすことなく、補間制御のためのティーチングを行うことができる。
また、本実施形態では、手先軸に対応する座標系を対象として回転方向の判定を行っている。このため、手先軸の向きが教示された経由点での手先軸の向きに近づくように回転方向を設定することで、教示された姿勢に近づけることができる。すなわち、実際の動作軌跡における経由点での姿勢を、よりユーザが希望する姿勢に近づけることができる。
実施形態のコントローラ3は、オイラーベクトルを求めるベクトル取得手段と、オイラーベクトルの内積を求めて内積の正負を判定する判定手段と、オイラーベクトルの回転量成分の大小関係を比較する比較手段と、判定手段の判定結果および比較手段の比較結果に基づいてロボットを回転駆動する際の回転方向を設定する設定手段として機能する。これにより、上記した制御方法を採用したロボットの制御装置を実現でき、実際にロボット2を制御する際に180°を超える回転方向を選択でき、教示された姿勢に近づけることができる等、上記した制御方法で述べたような効果を得ることができる。
る。つまり、上記した制御方法で得られる効果を得ることができる。
また、コントローラ3は、手先軸の座標系を対象として回転方向の判定を行っているため、上記したように、手先の姿勢を教示された姿勢に近づけることができる。
なお、本発明は一実施形態に限定されるものではなく、その要旨を逸脱しない範囲で任意に変形または拡張することができる。
図面中、2はロボット、3はコントローラ(ロボットの制御装置、ベクトル取得手段、判定手段、比較手段、設定手段)を示す。

Claims (4)

  1. 教示された始点、経由点および終点の3点の教示点間を曲線で補間して多関節型のロボットの動作軌跡を求める際に、
    始点から終点までの姿勢変化を表すオイラーベクトルV1と、始点から経由点までの姿勢変化を表すオイラーベクトルV2とを求め、
    オイラーベクトルV1とオイラーベクトルV2との内積を求めて内積の正負を判定し、
    オイラーベクトルV1とオイラーベクトルV2との内積が負であれば、始点から終点まで姿勢を変化させた際の姿勢の変化量が相対的に大きくなる回転方向を、ロボットが回転駆動する際の回転方向に設定し、
    オイラーベクトルV1とオイラーベクトルV2との内積が正であれば、オイラーベクトルV1の回転量成分θαとオイラーベクトルV2の回転量成分θβとの大小関係を比較し、
    回転量成分θαが回転量成分θβよりも大きければ、始点から終点まで姿勢を変化させた際の姿勢の変化量が相対的に小さくなる回転方向を、ロボットが回転駆動する際の回転方向に設定する一方、回転量成分θαが回転量成分θβよりも小さければ、始点から終点まで姿勢を変化させた際の姿勢の変化量が相対的に大きくなる回転方向を、ロボットが回転駆動する際の回転方向に設定することを特徴とするロボットの制御方法。
  2. 手先軸の座標系を対象として回転方向の判定を行うことを特徴とする請求項1記載のロボットの制御方法。
  3. 多関節型のロボットを制御するロボットの制御装置であって、
    始点から終点までの姿勢変化を表すオイラーベクトルV1と、始点から経由点までの姿勢変化を表すオイラーベクトルV2とを求めるベクトル取得手段と、
    オイラーベクトルV1とオイラーベクトルV2との内積を求めて内積の正負を判定する判定手段と、
    オイラーベクトルV1の回転量成分θαとオイラーベクトルV2の回転量成分θβとの大小関係を比較する比較手段と、
    前記判定手段の判定結果および前記比較手段の比較結果に基づいて、オイラーベクトルV1とオイラーベクトルV2との内積が負であれば、始点から終点まで姿勢を変化させた際の変化量が相対的に大きくなる回転方向を、ロボットを回転駆動する際の回転方向に設定し、オイラーベクトルV1とオイラーベクトルV2との内積が正であれば、オイラーベクトルV1の回転量成分θαとオイラーベクトルV2の回転量成分θβとの大小関係を比較し、回転量成分θαが回転量成分θβよりも大きければ、始点から終点までの姿勢の変化量が相対的に小さくなる回転方向をロボットが回転駆動する際の回転方向に設定する一方、回転量成分θαが回転量成分θβよりも小さければ、始点から終点までの姿勢の変化量が相対的に大きくなる回転方向をロボットが回転駆動する際の回転方向に設定する設定手段と、
    を備えることを特徴とするロボットの制御装置。
  4. 前記ベクトル取得手段は、手先軸に対応する座標系における姿勢行列を対象としてオイラーベクトルを求めることを特徴とする請求項3記載のロボットの制御装置。
JP2014058121A 2014-03-20 2014-03-20 ロボットの制御方法、ロボットの制御装置 Active JP6252278B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2014058121A JP6252278B2 (ja) 2014-03-20 2014-03-20 ロボットの制御方法、ロボットの制御装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014058121A JP6252278B2 (ja) 2014-03-20 2014-03-20 ロボットの制御方法、ロボットの制御装置

Publications (2)

Publication Number Publication Date
JP2015182147A JP2015182147A (ja) 2015-10-22
JP6252278B2 true JP6252278B2 (ja) 2017-12-27

Family

ID=54349304

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014058121A Active JP6252278B2 (ja) 2014-03-20 2014-03-20 ロボットの制御方法、ロボットの制御装置

Country Status (1)

Country Link
JP (1) JP6252278B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7455077B2 (ja) 2015-05-20 2024-03-25 日亜化学工業株式会社 発光装置

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0693209B2 (ja) * 1986-02-21 1994-11-16 株式会社小松製作所 ロボツトの円弧補間姿勢制御装置
JP2632864B2 (ja) * 1987-09-02 1997-07-23 富士通株式会社 ロボットにおける方向ベクトルの決定方法
JPH079606B2 (ja) * 1988-09-19 1995-02-01 豊田工機株式会社 ロボット制御装置
JPH08123536A (ja) * 1994-10-25 1996-05-17 Fanuc Ltd 溶接トーチ姿勢の教示方法
DE10251600A1 (de) * 2002-11-06 2004-05-27 Kuka Roboter Gmbh Verfahren und Vorrichtung zum Steuern von Bewegungen bei Handhabungsgeräten
JP4133887B2 (ja) * 2004-03-23 2008-08-13 株式会社不二越 産業用ロボットの動作軌跡生成方法
JP4196911B2 (ja) * 2004-09-06 2008-12-17 セイコーエプソン株式会社 軌道決定システムおよび軌道決定方法
DE102005061618B4 (de) * 2005-12-21 2018-12-27 Abb Ag System und Verfahren zur Ausrichtungs- und Lagekontrolle eines Roboterwerkzeugs
JP5458769B2 (ja) * 2009-09-18 2014-04-02 株式会社デンソーウェーブ ロボットの制御装置
JP2012096307A (ja) * 2010-10-29 2012-05-24 Yaskawa Electric Corp ロボット制御装置、ロボット制御方法およびロボットシステム
JP2013049102A (ja) * 2011-08-30 2013-03-14 Denso Wave Inc ロボットの制御装置及びロボットの姿勢決定方法
JP5729226B2 (ja) * 2011-09-12 2015-06-03 株式会社デンソーウェーブ ロボットの位置姿勢補間方法及びロボットの制御装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7455077B2 (ja) 2015-05-20 2024-03-25 日亜化学工業株式会社 発光装置

Also Published As

Publication number Publication date
JP2015182147A (ja) 2015-10-22

Similar Documents

Publication Publication Date Title
JP6924145B2 (ja) ロボット教示方法及びロボットアーム制御装置
JP5895628B2 (ja) ロボットの制御方法及びロボット制御装置、並びにロボット制御システム
JP5547626B2 (ja) 7軸多関節ロボットの制御装置および教示方法
JP6477877B2 (ja) ロボットシステム
JP5701055B2 (ja) 7軸多関節ロボットの制御方法、制御プログラム及びロボット制御装置
JP5458769B2 (ja) ロボットの制御装置
JP2006334774A (ja) エフェクタの軌道を制御するための方法
JP7339806B2 (ja) 制御システム、ロボットシステム及び制御方法
JP2017094440A (ja) ロボットのダイレクト教示方法
WO2018016568A1 (ja) ロボットの運転方法、コンピュータプログラム、及びロボットシステム
US10315305B2 (en) Robot control apparatus which displays operation program including state of additional axis
JP7238450B2 (ja) ロボットの制御装置およびロボットの制御方法
JP6252278B2 (ja) ロボットの制御方法、ロボットの制御装置
KR101787865B1 (ko) 다관절 링크 기구의 역운동학 해법, 및 이 역운동학 해법을 이용한 교시 데이터 작성 장치
JP6697544B2 (ja) 最適化装置及びそれを備えた垂直型多関節ロボット
JP6252273B2 (ja) ロボットの制御方法、ロボットの制御装置
JP6281351B2 (ja) ロボットの制御方法、ロボットの制御装置
JP2019093487A (ja) ロボットの制御装置及びロボットの逆変換処理方法
JP7387999B2 (ja) 多関節ロボット装置
JP2010036293A (ja) 多関節ロボット
JP2019093488A (ja) ロボットの制御装置及びロボットの逆変換処理方法
JP2019093486A (ja) ロボットの制御装置及びロボットの逆変換処理方法
JP7424097B2 (ja) ロボットの制御装置及びロボットの制御方法
JP2016112655A (ja) 制御装置、制御方法、および制御プログラム
JP2016083706A (ja) ロボット及び制御装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170116

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20171031

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20171113

R150 Certificate of patent or registration of utility model

Ref document number: 6252278

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250