JP2019093486A - ロボットの制御装置及びロボットの逆変換処理方法 - Google Patents

ロボットの制御装置及びロボットの逆変換処理方法 Download PDF

Info

Publication number
JP2019093486A
JP2019093486A JP2017225909A JP2017225909A JP2019093486A JP 2019093486 A JP2019093486 A JP 2019093486A JP 2017225909 A JP2017225909 A JP 2017225909A JP 2017225909 A JP2017225909 A JP 2017225909A JP 2019093486 A JP2019093486 A JP 2019093486A
Authority
JP
Japan
Prior art keywords
axis
angle
robot
arm
shaft
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.)
Granted
Application number
JP2017225909A
Other languages
English (en)
Other versions
JP6897520B2 (ja
Inventor
大介 川瀬
Daisuke Kawase
大介 川瀬
晶則 佐藤
Akinori Sato
晶則 佐藤
勇登 河地
Yuto Kawachi
勇登 河地
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 JP2017225909A priority Critical patent/JP6897520B2/ja
Priority to US16/196,751 priority patent/US10919149B2/en
Priority to DK18207587.9T priority patent/DK3511127T3/da
Priority to EP18207587.9A priority patent/EP3511127B1/en
Priority to CN201811406565.4A priority patent/CN110000773B/zh
Publication of JP2019093486A publication Critical patent/JP2019093486A/ja
Application granted granted Critical
Publication of JP6897520B2 publication Critical patent/JP6897520B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Manipulator (AREA)

Abstract

【課題】オフセットアームを備えるロボットについても、逆変換処理を行うことができるロボットの制御装置を提供する。【解決手段】コントローラ3は、5軸が配置され4軸と6軸とを連結するリンク長d5の第3オフセットアーム8を有し、4軸の軸心と6軸の軸心とが平行となる構造の垂直6軸型のアームを備えるロボット2を制御対象とする。アームの先端部である手先を制御点とし、制御点の目標となる位置及び姿勢を逆変換処理して各軸の角度を算出する。第6軸の角度を仮決めしてθ6Aすると、その角度からオフセットアーム8の方向を求め、第6軸の目標位置P6からリンク長d5を減じた仮目標位置P6Aを求めると、仮目標位置PAに対しリンク長d5を「0」に設定して逆変換処理を行う。逆変換処理の結果を評価関数により評価することで、求められた6軸の角度θ6と仮決めした第6軸の角度θ6Aとの差が所定値以下となるまで、6軸角度の仮決めから処理を繰り返し実行する。【選択図】図7

Description

本発明は、第4軸と第6軸とを連結するオフセットアームを有するロボットの動作を制御する装置,及び手先位置を逆変換処理する方法に関する。
一般的な垂直6軸型のロボットアームは、第4軸〜第6軸の各軸心が一点で交差する構造となっている。このようなロボットアームでは、第5軸を回転させて第6軸を含む手首部分を変位させるため、アームの先端部において手首を保持している部分に隙間が形成されている。そのような隙間があると、異物を挟み込んでしまう可能性が有る。そこで、第4軸と第6軸とを連結するオフセットアームを備えることで、手首が変位する部分の隙間をなくした形態の産業用ロボットが、例えば意匠登録1583755等に開示されている。この形態では、オフセットアームの存在により、第4軸の軸心と第6軸の軸心とが交差することなく互いに平行な関係となっている。
このような形態のアームについて、手先の位置・姿勢から各軸の角度を求める逆変換処理を行うことを想定すると、従来の手法では困難である。例えば特許文献1に開示されているのは、ロボット組み付け時の誤差を含む場合でもDHパラメータに基づく逆変換処理を行うことを可能にした技術である。特許文献1では、オフセットアームの長さをd5とすると、d5=0であることを前提に、前記誤差に対応する微小領域を仮定して線形化することで収束演算を行っている。
特開2017−61022号公報
d5≠0のロボットに特許文献1の手法を適用することを想定すると、収束演算の初期誤差としてのd5が大きな値となるため、演算の繰り返し回数が膨大になったり、演算が収束せずに発散する可能性が有る。また、オフセット分があることで、本来はリーチが届く範囲であってもオフセット分が正しく反映されず、リーチが届かないと誤判定される可能性がある。
本発明は、上記実情に鑑みてなされたものであり、その目的は、オフセットアームを備えるロボットについても、逆変換処理を行うことができるロボットの制御装置,及びロボットの逆変換処理方法を提供することにある。
請求項1記載のロボットの制御装置は、第5軸が配置され、第4軸と第6軸とを連結するリンク長d5のオフセットアームを有することで、第4軸の軸心と第6軸の軸心とが平行となる構造の垂直6軸型のアームを備えるロボットを制御対象とする。そして、アームの先端部を制御点とし、その制御点の目標となる位置及び姿勢を逆変換処理することで各軸の角度を算出する。
角度仮決め部が第6軸の角度を仮決めすると、方向算出部は、前記角度からオフセットアームの方向を求め、仮目標位置算出部は、第6軸の目標位置から、リンク長d5を減じた仮目標位置を求める。逆変換処理部は、仮目標位置に対し、リンク長d5を「0」に設定して逆変換処理を行う。そして、評価部は、逆変換処理の結果を評価関数により評価することで、求められた第6軸の角度と、仮決めした第6軸の角度との差が所定値以下となるまで、角度仮決め部による仮決めから処理を繰り返し実行する。
このように構成すれば、第6軸の角度を仮決めすることで、第4軸と第6軸とを連結するリンク長d5のオフセットアームを有するロボットについても、逆変換処理を行うことが可能になる。
請求項2記載のロボットの制御装置によれば、第3軸,第4軸のアプローチベクトルをそれぞれa3,a4とすると、評価部は、内積a3・a4を評価関数して用いる。すなわち、逆変換処理が適切に行われていれば、アプローチベクトルa3とa4とが直交しておりそれらの内積がゼロになるはずである。したがって、逆変換処理の結果を適切に評価できる。
請求項3記載のロボットの制御装置によれば、形態決定部は、同一の手先位置について第4軸から第6軸の何れかの複数の角度を予め採番しておくことで、逆変換処理結果の手首形態を決定する。すなわち、リンク長d5のオフセットアームを有するロボットは、同一の手先位置について最大で4つの手首形態を採り得る。そこで、複数の手首形態のうち、採用する手首形態に対応する第4軸から第6軸の何れかの角度を、小ささ順又は大きさ順に予め採番しておく。そして、逆変換結果として得られた対応する軸の角度が、予め採番した大きさに対応するものに一致すれば、その逆変換結果を採用する。これにより、手首形態を一意に決定できる。
請求項4記載のロボットの制御装置によれば、形態決定部は、逆変換処理の結果についてヤコビ行列の行列式を演算する。そして、行列式の符号が予め指定された手首形態に合致するか否かにより、逆変換処理結果の手首形態を決定する。例えば、各軸の可動範囲が−180度〜180度である場合に、5軸を動かして手首形態を目視で確認すると、最大で2つの腕形態,2つの肘形態及び4つの手首形態の組み合わせとなることが分かる。
そして、4つの手首形態の境界を分ける点は特異点となるはずであり、ヤコビ行列は、特異点において行列式がゼロとなる。そこで、各形態の組み合わせについて、逆変換処理結果の手首形態とヤコビ行列の行列式の符号とが対応するか否かにより、その形態が指定したものとなっているか否かを判定できる。すなわち、4軸の角度が−90度〜90度,−180度〜−90度又は90度〜180度の何れに属するかと組み合わせることで、最大で4つの手首形態を判別できる。
第1実施形態であり、ロボットシステムの構成を示す図 ロボットの座標系を示す図 ロボットの構成を、xz平面及びyz平面で示す図 ロボットのアーム形態をxy座標及びαr座標で示す図 ロボットのアーム形態をαz座標で示す図 αz座標で定義したアームの各形態を示す図 コントローラが行う逆変換処理を示すフローチャート d2=d3である場合の動作範囲を説明する図 同一の手先位置についてロボットアームが取り得る4つの手首形態を説明する図 第2実施形態であり、コントローラが行う逆変換処理を示すフローチャート 第3実施形態であり、コントローラが行う逆変換処理を示すフローチャート
(第1実施形態)
以下、第1実施形態について図1から図9を参照して説明する。図1に示すように、ロボットシステム1は、垂直多関節型のロボット2、ロボット2を制御するコントローラ3をベース4の内部に備えている。このロボットシステム1は、一般的な産業用に用いられている。ロボット2は、いわゆる6軸の垂直多関節型ロボットである。ベース4上に、z方向の軸心を持つ第1軸;J1を介してショルダ5が水平方向に回転可能に連結されている。ショルダ5には、y方向の軸心を持つ第2軸;J2を備え、y方向に伸びる第2オフセットアーム6を介して、上方に延びる第1アーム7の下端部が垂直方向に回転可能に連結されている。第1アーム7の先端部には、Y方向の軸心を持つ第3軸;J3を備え、−y方向に伸びる第3オフセットアーム8を介して、第2アーム9が垂直方向に回転可能に連結されている。第2アーム9は、基部9a及び先端部9bからなる。
第2アーム9は、x方向の軸心を持つ第4軸;J4を備え、基部9aに対して先端部9bが捻り回転可能に連結されている。第2アーム9の先端部には、y方向の軸心を持つ第5軸;J5を備え、−y方向に伸びる第5オフセットアーム10を介して、手首11が垂直方向に回転可能に連結されている。手首11には、x方向の軸心を持つ第6軸;J6を介して、図2に示すフランジ及びハンド12が捻り回転可能に連結されている。ロボット2に設けられている各軸;J1〜J6には、それぞれに対応して駆動源となる図示しないモータが設けられている。
コントローラ3は、ロボット2の制御装置であり、図示しないCPU、ROMおよびRAM等で構成されたコンピュータからなる制御手段においてコンピュータプログラムを実行することで、ロボット2を制御している。具体的には、コントローラ3は、インバータ回路等から構成された駆動部を備えており、各モータに対応して設けられているエンコーダで検知したモータの回転位置に基づいて例えばフィードバック制御によりそれぞれのモータを駆動する。
コントローラ3は、CPU、ROM、RAM、駆動回路、及び位置検出回路等を備えている。ROMは、ロボット2のシステムプログラムや動作プログラム等を記憶している。RAMは、これらのプログラムを実行する際にパラメータの値等を記憶する。コントローラ3は、角度仮決め部,方向算出部,仮目標位置算出部,逆変換処理部,評価部及び形態決定部に相当する。位置検出回路には、ロボット2の各関節に設けられた図示しない各エンコーダの検出信号がそれぞれ入力される。位置検出回路は、各エンコーダの検出信号に基づいて、各関節に設けられたモータの回転角度位置を検出する。
コントローラ3は、予め設定された動作プログラムを実行することにより、位置検出回路から入力される位置情報に基づいて、アーム先端部の制御点の位置及び姿勢を制御する。本実施形態において、コントローラ3は、CP(Continuous Path)制御を行う。CP制御では、アーム先端部の制御点を目標まで動作させる際に制御点の目標となる位置及び姿勢,つまり動作軌道が時間関数として設定される。目標となる位置及び姿勢には、教示された位置及び姿勢に加えて、教示された位置及び姿勢に基づいて補間された位置及び姿勢も含まれる。コントローラ3は、CP制御により、制御点の位置及び姿勢が動作軌道に沿うように、アームにおける各関節の角度を制御する。コントローラ3は、位置及び姿勢の制御において、現在指示されている目標となる位置及び姿勢を実現するための第1軸〜第6軸の角度を算出する逆変換処理を行う。
図2に示すように、ロボット2の各関節には、3次元の直交座標系である第1〜第6座標系Σ1〜Σ6が規定されている。各座標系Σ1〜Σ6の原点は、第1〜第6軸線J1〜J6上の所定位置に定められている。各座標系Σ1〜Σ6のz軸であるz1〜z6軸は、第1〜第6軸線J1〜J6と一致している。
ベース4には、ロボット座標系である第0座標系Σ0が規定されている。第0座標系Σ0は、第1軸〜第6軸が回転しても変化しない座標系である。本実施形態において、座標系Σ0の原点は、第1軸線J1上に定められている。また、座標系Σ0のz軸であるz0軸は、第1軸線J1に一致している。
図2に示すd1〜d6,a2及びa3は、以下のように定義される。
d1:第0座標系Σ0の原点から第1座標系Σ1の原点までのリンク長
d2:第1座標系Σ1の原点から第1アーム7の基部までのリンク長
a2:第1アーム7の基部から同先端部,第2座標系Σ2の原点までのリンク長
d3:第2座標系Σ2の原点から第3オフセットアーム8の先端部までのリンク長
a3:第3軸J3,第4軸J4の軸心間距離
d4:第3座標系Σ3の原点から第4座標系Σ4の原点までのリンク長
d5:第4座標系Σ4の原点から第5座標系Σ5の原点までのリンク長
d6:第5座標系Σ5の原点から第6座標系Σ6の原点までのリンク長
a3については図3を参照。そして、上記d5が第5オフセットアーム10のリンク長に相当する。
先ず、本実施形態における逆変換処理を説明するための前提として、順変換処理について説明する。
<順変換処理>
先ず、z軸回転、z軸移動、x軸移動、x軸回転の順の座標変換で、DHパラメータを表1のように決定した。θiが、図2の状態からの各関節の回転角度になる。
Figure 2019093486
ベース座標であるΣ0からメカニカルインターフェース座標Σ6までの同次変換行列は次のようになる。n,o,aは、それぞれノーマルベクトル,オリエントベクトル,アプローチベクトルを示す。尚、表記を簡略化するため、sinθi,cosθiそれぞれsi,ciと表記している。また、例えばS23はsin(θ2+θ3)を示す。
Figure 2019093486
Figure 2019093486
(8)〜(10)式を展開すると、(13)〜(15)式となる。
Figure 2019093486
また、第5軸,第6軸についてのノーマル,オリエント,アプローチの各ベクトル及び位置座標については以下のようになる。
Figure 2019093486
同次変換行列であるから、ツール座標上での位置ベクトルに左からかけて積をとることで、ベース座標Σ0での位置ベクトルに変換できる。つまり、関節角とDHパラメータとからベース座標での先端位置を求めることができる。姿勢角は、第6軸のノーマル,オリエント,アプローチの各ベクトルn6,o6,a6で表されている。
<逆変換処理>
次に、逆変換処理について説明する。ロボットアームの手先の位置姿勢が、同時変換行列で与えられているとする。図2におけるベース座標Σ0での位置ベクトルをpiとする。まず、アプローチベクトルa6から、手首位置p5を求める。
5=p6−d66 …(20)
従来の6軸ロボットの場合は、手首位置で4,5,6各軸の回転軸が直交する構造であるため、手首位置に対して先に1,2,3軸を解析的に求めることで全ての関節角を求めることができる。すなわち、手首位置は4,5,6各軸の回転軸上にあるので、4,5,6軸の角度を変化させても手首位置は変化しないからである。これに対して本実施形態の6軸ロボット2の場合は、4,5,6軸角度によってp4が変化してしまうため、従来と同様の方法では解くことができない。
そこで、6軸角度を仮定して解く方法を示す。6軸の回転範囲を例えば−180度から180度とすると、その範囲内で適当な刻み幅で仮定して探索を行う。この回転範囲をSINGLEと称する場合がある。6軸角度が決まれば、(11),(12)式からp4を決定できる。
4=a46+p6
=o66+p6
=(o66+o66)d6+p6 …(21)
ここで、図4に示すように、xy軸を1軸角度だけ回転した軸にαr座標をとる。ただし、リンクパラメータa1=0としているので、a1≠0の場合には数式が異なる。p4が決まっているので、1軸角度を用いない式でp4のα座標を表すことができる。またここで、α14≧0の腕形態をLEFTY,α14<0の腕形態をRIGHTYと定義する。α14が虚数となる場合は、リーチが届かないため解なしとなる。
Figure 2019093486
尚、(24)式中のl14は、αr座標の原点からp4までの距離である。よって、軸角度の三角関数を、(25)〜(28)式のように求めることができる。
Figure 2019093486
次に、図5に示すように、ロボット2を側面からみたαz平面で考える。p4を満たす2,3軸角度は2組存在する。p1からp2のアーム長と、p2からp4のアーム長とから、(29),(30)式が成立する。
Figure 2019093486
(30)式を展開して(29)式により整理すると、p2を求めることができる。
Figure 2019093486
2<0の場合はリーチが届かないため解なしとなる。z12も同様に求められる。
Figure 2019093486
(29)式に(44),(45)式を代入すると、(52)式の等号成立が条件となるため、符号と絶対値を外して下記の複合同順の組み合わせとなる。
Figure 2019093486
図5から下記の式が成立するため、2,3軸の三角関数を求めることができる。
atan2(y,x)を用いれば、1,2,3軸角度を求めることができる。
Figure 2019093486
次に、図6に示すように、アーム形態BELOW,ABOVEを定義した場合、
LEFTYの場合はθ3>φ3でABOVE,θ3<φ3でBELOWとなる。また、
RIGHTYの場合はθ3>φ3でBELOW,θ3<φ3でABOVEとなる。z12の符号でも判定可能である。φ3は(64)式で表される。
φ3=atan2(a3,d4) …(64)
ここまでで1,2,3軸角度が決定し、先端からはp4,p5,p6が求められている。これらがp4で合流しているため、ここでa3とa4とが直交し内積がゼロという条件が成り立たなくてはならない。よって、次の評価式がゼロになる6軸角度であれば、与えられた先端の位置姿勢を満たすことになる。
Figure 2019093486
6軸角度を探索する刻みの都合で評価式がゼロになることは殆どないため、補間によりゼロクロス点を求める。ゼロクロス点として求めた6軸角度で1,2,3軸角度を求め直し、残りの4,5軸角度を決定すればよい。(18)式から、分母がゼロにならないように注意してs5,c5を求める。
Figure 2019093486
同様に、s4,c4を求める。
Figure 2019093486
(*7),(*8)式によりsinθ4とcosθ4とが求められるので、これにより角度θ4が求められる。また、先に角度θ5が求められているので、(*8)式をcosθ5で除算しても良いし、これらに替えて(*9),(*10)式を用いても良い。
Figure 2019093486
以上が逆変換処理の概略である。次に、本実施形態の作用について図7及び図8を参照して説明する。図7は、コントローラ3が行う逆変換処理の内容を示すフローチャートである。先ず、6軸の動作範囲を計算する(S1)。図8は、前記動作範囲を説明する図であるが、これはd2=d3である場合を前提としている。ここでは、3軸J3を、第1アーム7及び第2アーム9を最大限に伸ばした状態での角度に設定し、1軸J1及び2軸J2を変化させて、ベース4から計算した4軸位置P4がとり得る球Aを求める。次に、6軸J6の角度を変化させて、図2に示す「フランジ」から計算した4軸位置P4がとり得る円Bを求める。
そして、円Bの領域のうち、球Aの外側にあるものは動作範囲外となり(S2;YES)、この場合、逆変換処理は失敗となる。円B∧球Aであれば(S2;NO)6軸角度の初期値θ6INTを計算し、θ6Aとして仮決めする(S3)。初期値θ6INTは、例えば動作範囲中で取り得る6軸角度の下限値とする。その他、例えばその時点の6軸角度を用いたり、前記角度が動作範囲外にあれば、前記角度から最も近い動作範囲内の角度を採用しても良い。また、円Bの中心に設定しても良い。
また、d2≠d3である場合は、以下のように動作範囲内外の判定を行う。ステップS2で動作範囲外となるのは、(24)式又は(44)式における平方根の内部が負となる場合である。ここで、動作範囲内となるように修正を加えるとすれば、(24)式のケースでは
14 2=r14 2
とすれば良い。そこで、L=|r14|−|l14|とすると、
w=L/|l14|,[wx4 wy4 0]T
だけ位置を補正すれば良い。
また、(44)式のケースでは
Figure 2019093486
それから、手首形態を決定するための変数nにゼロを代入すると(S4)仮目標位置pAを計算する(S5)。pは位置ベクトル[x,y,z]Tであり、仮目標位置pAは、(21)式より
p+(nsinθ6A+ocosθ6A)d5
となる。同時変換行列TAは、回転行列Rと目標位置pAとから決まる。ここで、仮目標位置p6Aは、目標位置p6に対し、
6A=p6+(n6sinθ6A+o6cosθ6A)d5
という関係にある。すなわち、目標位置p6より、オフセット距離d5分だけ引いたものが仮目標位置p6Aとなっている。
尚、変数nは、6軸角度の大きさ順に手首形態を採番しておき、後述するように、何番目の手首形態で逆変換処理を確定するかを決定するために使用される。
次に、目標位置pAに基づき逆変換処理を行う(S6)。ここで、
関数g(θ)=(T,F)は、d5=0として
角度θ=[θ1,θ2,θ3,θ4,θ5,θ6Tから、同時変換行列T及びロボット2の形態Fを求める関数である。そして、g-1(T,F)は、d5=0として同時変換行列T及び形態Fより逆変換して角度θを求める関数である。
次に、逆変換の結果を、評価関数Q(θ,θ6A)により評価した値vを求める(S7)。ここで、評価関数Qとしては、例えば前述した(65)式により内積を演算する。そして、評価値vの絶対値が、ゼロ近傍に設定される閾値vM以下か否かを判断する(S8)。前記絶対値が閾値vMを超えていれば(NO)、例えば6軸角度θ6Aにβ(>0)を加えて更新する(S11)。ここで、角度θ6Aが動作範囲内となる角度かをチェックし(S12)、動作範囲内であれば(YES)ステップS5に戻る。角度θ6Aが動作範囲外であれば(NO)逆変換処理は失敗となる。
尚、角度θ6Aは、6軸角度の全範囲内を探索するように変化させる。また、初期値θ6INTを、動作範囲中で取り得る6軸角度の上限値として、βを減じて更新しても良い。その他、
θ6A←θ6A+α(θ6−θ6A),0<α≦1
のように更新しても良い。また、β,αを繰り返し演算毎に変化させても良いし、黄金分割法やシンプレックス法等の最適化手法を用いても良い。
ここで、図9に示すように、本実施形態のように第3オフセットアーム8を有することでd5≠0であるロボットの場合、1つの手先位置に対して最大で4つの手首形態があり、ステップS9における評価を満たす6軸角度も最大で4つ存在する。そこで、ステップS8において評価値vの絶対値が閾値vM以下になると(YES)変数nをインクリメントし(S9)、変数nの値が、予め指定したN番目の6軸角度に一致しているか否かを判断する(S10)。n=Nであれば(YES)逆変換処理を終了し、n≠Nであれば(NO)ステップS11に移行する。尚、ステップS8で(YES)と判断するケースは、逆変換した結果の6軸角度θ6が、仮決めした角度θ6Aに略等しくなったことを意味する。
以上のように本実施形態によれば、コントローラ3は、5軸が配置され、4軸と6軸とを連結するリンク長d5の第3オフセットアーム8を有することで、4軸の軸心と6軸の軸心とが平行となる構造の垂直6軸型のアームを備えるロボット2を制御対象とする。そして、コントローラ3は、アームの先端部である手先を制御点とし、その制御点の目標となる位置及び姿勢を逆変換処理することで各軸の角度を算出する。
第6軸の角度を仮決めしてθ6Aとすると、その角度からオフセットアーム8の方向を求め、第6軸の目標位置P6から、リンク長d5を減じた仮目標位置P6Aを求めると、仮目標位置PAに対しリンク長d5を「0」に設定して逆変換処理を行う。そして、逆変換処理の結果を評価関数により評価することで、求められた6軸の角度θ6と仮決めした第6軸の角度θ6Aとの差が所定値以下となるまで、6軸角度仮決めから処理を繰り返し実行する。このように構成すれば、リンク長d5のオフセットアーム8を有するロボット2についても、逆変換処理を行うことが可能になる。
そして、コントローラ3は、内積a3・a4を評価関数して用いる。すなわち、逆変換処理が適切に行われていれば、アプローチベクトルa3とa4とが直交しておりそれらの内積がゼロになるはずである。したがって、逆変換処理の結果を適切に評価できる。
また、コントローラ3は、同一の手先位置について第6軸の角度を大きさ順に予め採番しておくことで、逆変換処理結果の手首形態を決定するので、手首形態を一意に決定できる。
(第2実施形態)
以下、第1実施形態と同一部分には同一符号を付して説明を省略し、異なる部分について説明する。第2実施形態では、6軸ではなく、第4軸又は第5軸の角度について、大きさの順に手首形態を採番する。すなわち、k(=4,5)軸角度についてN番目の角度を指定する。図10に示すように、ステップS9で「YES」と判断すると、その時点の逆変換結果である角度θをメモリ等に保存する(S13)。そして、ステップS12で「NO」と判断すると、その時点までに保存されていた角度θのうち、k軸角度を、その大きさの順に並び替える(S14)。そして、それらのN番目の角度を開として採用する(S15)。
以上のように第2実施形態によれば、第1実施形態と同様に、逆変換処理結果の手首形態を一意に決定できる。
(第3実施形態)
第3実施形態では、逆変換処理で得られた手首形態を一意に決定するため、ヤコビ行列Jを用いる。第1実施形態において、「ステップS9における評価を満たす6軸角度は最大で4つ存在する」としたが、これらの境界を分ける点は特異点となるはずであり、ヤコビ行列Jは、特異点において行列式がゼロとなる。
すなわち、腕形態RIGHTY,LEFTYと肘形態ABOVE,BELOWに加えて、手首形態FLIP+,FLIP-,NONFLIP+,NONFLIP-の組み合わせがある。そこで、図11に示すフローチャートでは、ステップS9で「YES」と判断するとヤコビ行列Jの行列式を計算する(S16)。ヤコビ行列Jは、(87)式〜(99)式で表される。
Figure 2019093486
Figure 2019093486
Figure 2019093486
そして、計算した行列式の符号が、指定した手首形態に合致するか否かを判断する(S17)。
以上のように第3実施形態によれば、コントローラ3は、逆変換処理の結果についてヤコビ行列Jの行列式を演算する。そして、行列式の符号が予め指定された手首形態に合致するか否かにより、逆変換処理結果の手首形態を一意に決定できる。
本発明は上記した、又は図面に記載した実施形態にのみ限定されるものではなく、以下のような変形又は拡張が可能である。
コントローラ3を、ロボット2のベース4の外に配置しても良い。
逆変換処理の結果については、その他、逆変換した後に、d5を含めて順変換した結果についての位置誤差がゼロになるか否かを評価しても良い。
また、フランジから求めた5軸の方向Z4Aと、逆変換で求めた5軸の方向Z4とが一致するか,つまりそれらの内積が「1」となるか否かを評価しても良い。
また、上記5軸の方向Z4Aと、逆変換で求めた4軸の方向Z3とが直交するか,つまりそれらの内積が「0」となるか否かを評価しても良い。
繰り返し演算については、動作範囲を複数に分割し、分割した各角度範囲について評価値を求めても良い。
また、動作範囲を分割した場合、評価値より求められた解の近辺で、求めた評価値から評価関数の近似関数を求め、その近似関数を用いて確からしい角度を求めても良い。
図面中、1はロボットシステム、2はロボット、3はコントローラ、4はベース、5はショルダ、6は第2オフセットアーム、7は第1アーム、8は第3オフセットアーム、9は第2アーム、10は第5オフセットアーム、11は手首、12はハンドを示す。

Claims (8)

  1. 第5軸が配置され、第4軸と第6軸とを連結するリンク長d5のオフセットアームを有することで、第4軸の軸心と第6軸の軸心とが平行となる構造の垂直6軸型のアームを備えるロボットに適用され、前記アームの先端部を制御点とし、前記制御点の目標となる位置及び姿勢を逆変換処理することで各軸の角度を算出するもので、
    第6軸の角度を仮決めする角度仮決め部と、
    仮決めした第6軸の角度から、前記オフセットアームの方向を求める方向算出部と、
    第6軸の目標位置から、リンク長d5を減じた仮目標位置を求める仮目標位置算出部と、
    前記仮目標位置に対し、リンク長d5を「0」に設定して逆変換処理を行う逆変換処理部と、
    前記逆変換処理の結果を評価関数により評価することで、求められた第6軸の角度と、仮決めした第6軸の角度との差が所定値以下となるまで前記角度仮決め部による仮決めから処理を繰り返し実行する評価部とを備えるロボットの制御装置。
  2. 第3軸,第4軸のアプローチベクトルをそれぞれa3,a4とすると、
    前記評価部は、内積a3・a4を前記評価関数とする請求項1記載のロボットの制御装置。
  3. 同一の手先位置について、第4軸から第6軸の何れかの複数の角度を予め採番しておくことで、逆変換処理結果の手首形態を決定する形態決定部を備える請求項1又は2記載のロボットの制御装置。
  4. 逆変換処理の結果についてヤコビ行列の行列式を演算し、その行列式の符号が、予め指定された手首形態に合致するか否かにより、逆変換処理結果の手首形態を決定する形態決定部を備える請求項1又は2記載のロボットの制御装置。
  5. 第5軸が配置され、第4軸と第6軸とを連結するリンク長d5のオフセットアームを有することで、第4軸の軸心と第6軸の軸心とが平行となる構造の垂直6軸型のアームを備えるロボットに適用され、前記アームの先端部を制御点とし、前記制御点の目標となる位置及び姿勢を逆変換処理することで各軸の角度を算出するもので、
    第6軸の角度を仮決めするステップと、
    仮決めした第6軸の角度から、前記オフセットアームの方向を求めるステップと、
    第6軸の目標位置から、リンク長d5を減じた仮目標位置を求めるステップと、
    前記仮目標位置に対し、リンク長d5を「0」に設定して逆変換処理を行うステップと、
    前記逆変換処理の結果を評価関数により評価することで、求められた第6軸の角度と、仮決めした第6軸の角度との差が所定値以下となるまで前記仮決めするステップから処理を繰り返し実行するロボットの逆変換処理方法。
  6. 第3軸,第4軸のアプローチベクトルをそれぞれa3,a4とすると、
    内積a3・a4を前記評価関数とする請求項5記載のロボットの逆変換処理方法。
  7. 同一の手先位置について、第4軸から第6軸の何れかの複数の角度を予め採番しておくことで、逆変換処理結果の手首形態を決定する請求項5又は6記載のロボットの逆変換処理方法。
  8. 逆変換処理の結果についてヤコビ行列の行列式を演算し、その行列式の符号が、予め指定された手首形態に合致するか否かにより、逆変換処理結果の手首形態を決定する形態決定部を備える請求項5又は6記載のロボットの逆変換処理方法。
JP2017225909A 2017-11-24 2017-11-24 ロボットの制御装置及びロボットの逆変換処理方法 Active JP6897520B2 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP2017225909A JP6897520B2 (ja) 2017-11-24 2017-11-24 ロボットの制御装置及びロボットの逆変換処理方法
US16/196,751 US10919149B2 (en) 2017-11-24 2018-11-20 Controller for robot and inverse transforming method for robot
DK18207587.9T DK3511127T3 (da) 2017-11-24 2018-11-21 Styreenhed til robot og invers transformationsproces til robot
EP18207587.9A EP3511127B1 (en) 2017-11-24 2018-11-21 Controller for robot and inverse transform method for robot
CN201811406565.4A CN110000773B (zh) 2017-11-24 2018-11-23 机器人的控制装置及机器人的逆变换处理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017225909A JP6897520B2 (ja) 2017-11-24 2017-11-24 ロボットの制御装置及びロボットの逆変換処理方法

Publications (2)

Publication Number Publication Date
JP2019093486A true JP2019093486A (ja) 2019-06-20
JP6897520B2 JP6897520B2 (ja) 2021-06-30

Family

ID=66970546

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017225909A Active JP6897520B2 (ja) 2017-11-24 2017-11-24 ロボットの制御装置及びロボットの逆変換処理方法

Country Status (1)

Country Link
JP (1) JP6897520B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114555301A (zh) * 2019-08-15 2022-05-27 因思创新有限责任公司 用于腕部偏置机器人的逆运动学求解器

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4680519A (en) * 1985-09-23 1987-07-14 General Electric Co. Recursive methods for world-to-joint transformation for a robot manipulator
JPS62193786A (ja) * 1986-02-17 1987-08-25 株式会社安川電機 ロボツトの制御方法
JPS648407A (en) * 1987-07-01 1989-01-12 Hitachi Ltd Method for controlling operation of industrial robot
JPH04313105A (ja) * 1990-11-28 1992-11-05 Shin Meiwa Ind Co Ltd ロボットの駆動制御装置
JP2008036742A (ja) * 2006-08-03 2008-02-21 Tokyo Institute Of Technology 逐次検索法による6自由度ロボットアームの逆運動学、およびそれを使用するロボットのシステム、制御方法、プログラム
JP2013132731A (ja) * 2011-12-27 2013-07-08 Seiko Epson Corp ロボット制御システム、ロボットシステム及びロボット制御方法
JP2013166222A (ja) * 2012-02-16 2013-08-29 Seiko Epson Corp ロボット制御装置、ロボット制御方法およびロボット制御プログラムならびにロボットシステム

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4680519A (en) * 1985-09-23 1987-07-14 General Electric Co. Recursive methods for world-to-joint transformation for a robot manipulator
JPS62193786A (ja) * 1986-02-17 1987-08-25 株式会社安川電機 ロボツトの制御方法
JPS648407A (en) * 1987-07-01 1989-01-12 Hitachi Ltd Method for controlling operation of industrial robot
JPH04313105A (ja) * 1990-11-28 1992-11-05 Shin Meiwa Ind Co Ltd ロボットの駆動制御装置
JP2008036742A (ja) * 2006-08-03 2008-02-21 Tokyo Institute Of Technology 逐次検索法による6自由度ロボットアームの逆運動学、およびそれを使用するロボットのシステム、制御方法、プログラム
JP2013132731A (ja) * 2011-12-27 2013-07-08 Seiko Epson Corp ロボット制御システム、ロボットシステム及びロボット制御方法
JP2013166222A (ja) * 2012-02-16 2013-08-29 Seiko Epson Corp ロボット制御装置、ロボット制御方法およびロボット制御プログラムならびにロボットシステム

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114555301A (zh) * 2019-08-15 2022-05-27 因思创新有限责任公司 用于腕部偏置机器人的逆运动学求解器
JP2022544650A (ja) * 2019-08-15 2022-10-20 イントリンジック イノベーション エルエルシー 手首オフセットロボットのための逆運動学ソルバ

Also Published As

Publication number Publication date
JP6897520B2 (ja) 2021-06-30

Similar Documents

Publication Publication Date Title
WO2018090323A1 (zh) 一种坐标系标定方法、系统及装置
CN110000773B (zh) 机器人的控制装置及机器人的逆变换处理方法
JP2006334774A (ja) エフェクタの軌道を制御するための方法
US20130213172A1 (en) Manipulator system
KR20130066689A (ko) 7축 다관절 로봇의 제어 장치 및 교시 방법
CN110914020B (zh) 具有机器人的操纵装置以及方法和计算机程序
Li et al. Solving inverse kinematics model for 7-DoF robot arms based on space vector
WO2011086032A1 (en) Method of finding feasible joint trajectories for an n-dof robot with rotation invariant process (n>5)
JP6891773B2 (ja) ロボットの制御装置及びロボットの逆変換処理方法
JP7144754B2 (ja) 多関節ロボットおよび多関節ロボットシステム
JP5464998B2 (ja) ロボットアームの干渉回避方法
JP2019093486A (ja) ロボットの制御装置及びロボットの逆変換処理方法
Zhu et al. Inverse kinematics solution of a new circumferential drilling machine for aircraft assembly
JP6891774B2 (ja) ロボットの制御装置及びロボットの逆変換処理方法
Taki et al. A novel singularity-consistent inverse kinematics decomposition for SRS type manipulators
JPH02168303A (ja) ロボットの制御方法
Chen et al. An analytical solution of inverse kinematics for a 7-DOF redundant manipulator
JPS62194513A (ja) ロボツトの円弧補間姿勢制御装置
JP2009056593A (ja) 把持制御装置
JP2656180B2 (ja) ツール先端位置調整方法
JP5371733B2 (ja) 7軸多関節ロボットの制御方法及び制御プログラム
JP6252273B2 (ja) ロボットの制御方法、ロボットの制御装置
JP6281351B2 (ja) ロボットの制御方法、ロボットの制御装置
JP6252278B2 (ja) ロボットの制御方法、ロボットの制御装置
Lin Path generation for robot polishing system based on cutter location data

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200820

TRDD Decision of grant or rejection written
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210421

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20210511

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210524

R150 Certificate of patent or registration of utility model

Ref document number: 6897520

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250