説明

ロボットの制御装置及びロボットの姿勢決定方法

【課題】ティーチング作業が、一定の条件下でより簡単になるロボットの制御装置を提供する。
【解決手段】ロボットアームの手先座標におけるカメラ21の視線に一致するアプローチベクトルaが、常に目標点である撮像対象物22の1点を向くようにティーチングを行う場合、手先の位置が教示されると、ベース座標原点から目標点を示すベクトルBWと、手先を示すベクトルBTとからアプローチベクトルaを求める。オリエントベクトルoをノルムを「1.0」にして決定すると、ノーマルベクトルoをアプローチベクトルaとオリエントベクトルoとの外積で決定する。教示点での手先の姿勢を示す回転行列BTを、既知である手先座標系の姿勢を示す回転行列BWと、ノーマル,オリエント,アプローチの各ベクトルで記述される回転行列TWの逆行列とから求め、回転行列BTで決まる手先の姿勢を教示点での姿勢として設定する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、手先座標におけるアプローチベクトルが常に目標点を向くように、垂直多関節型のロボットについてティーチングを行うためのロボットの制御装置及びロボットの姿勢決定方法に関する。
【背景技術】
【0002】
ロボットをティーチングする場合には、一般に、ロボットの手先を移動させる軌跡に沿った位置を教示すると共に、その教示点においてロボットが取るべき姿勢も教示するようになっている。例えば、特許文献1には、ティーチング及びその後に行われる補間に関連する技術が開示されている。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2005−275484号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
ところで、ロボットの手先にカメラを取り付け、そのカメラを移動させてワークの画像を撮像する、という作業を行う場合については、ティーチングを行う際のロボットの姿勢は、当然にカメラの視線が固定されているワークを捉える方向となるように決定される。そのためには、例えば、各教示点をできるだけ至近距離で設定して各教示点における手先の座標と姿勢とを人力で設定し、教示点間を従来と同様の方式で補間する必要がある。或いは、各教示点をある程度距離を離すように設定し、同様に各教示点における手先の座標と姿勢とを人力で設定した後、教示点間の補間を、ツールを固定してロボットの手先がワークを把持して作業する形態の外部TCP(Tool Center Point;先端点)動作による補間とすることも考えられる。
【0005】
上記の何れのやり方であっても、各教示点について座標及び姿勢を決定する作業は必要であるが、座標を決定する作業については、ロボット本体の座標であるベース座標(基底座標)系によって行うため、教示点が増えるだけ手間はかかるが作業自体がやり難いということはない。しかしながら、姿勢を決定する作業については、ロボットの手先の座標系で行うことになり、手先の向きによりxyz方向が変化するため姿勢が把握し難く、1つ1つの作業が非常にやり難いという問題がある。
【0006】
本発明は上記事情に鑑みてなされたものであり、その目的は、ロボットの手先に取り付けたカメラによりワークを撮像する作業について、手先の姿勢を教示する作業をより容易にするロボットの制御装置及びロボットの姿勢決定方法を提供することにある。
【課題を解決するための手段】
【0007】
請求項1記載のロボットの制御装置によれば、ロボットの手先に取り付けたカメラによりワークを撮像するため、手先座標におけるアプローチベクトルが常に目標点を向くように、垂直多関節型のロボットについてティーチングを行うことを前提とする。この場合、第1ベクトル決定手段は、手先の位置が教示されると、ロボットの基底座標原点から目標点を示すベクトルと、基底座標原点から手先(教示点)を示すベクトルとからアプローチベクトルを求める。
【0008】
第2ベクトル決定手段は、手先座標のオリエントベクトル,ノーマルベクトルの一方を第2ベクトルとして決定するため、第2ベクトルのノルムを「1.0」に設定し、第2ベクトルの座標値を正規直交条件に基づいて決定する。そして、第3ベクトル決定手段は、残った第3ベクトルを、アプローチベクトルと第2ベクトルとの外積で決定するので、この段階で、手先座標のノーマル,オリエント,アプローチの各ベクトルが求められる。
【0009】
すると、手先姿勢決定手段は、教示点における手先の姿勢を、既知である基底座標系に基づく手先座標系の姿勢を示す回転行列と、ノーマル,オリエント,アプローチの各ベクトルで記述される回転行列の逆行列とから求め、教示姿勢設定手段は、手先姿勢決定手段により決定された手先の姿勢を、教示点における姿勢として自動的に設定する。すなわち、ロボットの手先に取り付けられたカメラの視線が常にワーク方向を向くように教示点を設定するためユーザが行う作業は、基底座標系に従い位置を与える座標を入力するだけで済むことになり、ユーザの作業負担を大きく軽減できる。そして、教示点におけるロボットの手先の姿勢は計算により求められ自動的に設定されるので、作業者は、各教示点について手先の姿勢を教示する必要が無くなり、作業時間を大きく短縮することができる。
【0010】
請求項2記載のロボットの制御装置によれば、請求項1と同様の条件でティーチングを行うことを前提とする。第1ベクトル決定手段は、手先の位置が教示されると、その教示点におけるカメラの撮像面と平行な平面内に存在する任意2つのベクトルの外積で求められる、教示点に立つ法線ベクトルを手先座標のアプローチベクトルとして決定する。アプローチベクトルが決定されれば、第2,第3ベクトル決定手段と、手先姿勢決定手段並びに教示姿勢設定手段が請求項1と同様に作用することで、教示点におけるロボットの手先の姿勢が自動的に設定される。したがって、作業者は、請求項1と同様に各教示点について手先の姿勢を教示する必要が無くなり、作業時間を大きく短縮することができる。
【0011】
請求項3記載のロボットの制御装置によれば、補間手段が2つの教示点の間を補間して1つ以上の補間点を決定すると、第1〜第3ベクトル決定手段は、補間点についてもアプローチベクトル,第2ベクトル,第3ベクトルをそれぞれ決定し、手先姿勢決定手段は補間点における手先の姿勢も求める。したがって、ロボットの手先の移動軌跡を補間する場合についても、各補間点における手先の姿勢を自動的に設定することが可能となる。
【図面の簡単な説明】
【0012】
【図1】第1実施例であり、ロボット本体のベース座標,手先の位置・姿勢,ワーク座標の位置・姿勢の関係を示す図
【図2】手先の姿勢を決定する処理を示すフローチャート
【図3】姿勢補間処理を示すフローチャート
【図4】各補間点の姿勢についても補間を行うイメージを示す図
【図5】ロボットを含む制御システムの構成を示す図
【図6】制御装置を中心とする機能ブロック図
【図7】第2実施例を示す図1相当図
【図8】図2相当図
【発明を実施するための形態】
【0013】
(第1実施例)
以下、本発明の第1実施例について図1ないし図6を参照して説明する。図5は、垂直多関節型(6軸)ロボットを含む制御システムの構成を示す。このロボット本体1は、ベース(回転軸)2上に、この場合6軸のアームを有し、そのアームの先端には、図示しないハンド等のツールや、後述するカメラなどが取り付けられる。前記ベース2上には、第1関節J1を介して第1のアーム3が回転可能に連結されている。この第1のアーム3には、第2関節J2を介して上方に延びる第2のアーム4の下端部が回転可能に連結され、さらに、この第2のアーム4の先端部には、第3関節J3を介して第3のアーム5が回転可能に連結されている。
【0014】
この第3のアーム5の先端には第4関節J4を介して第4のアーム6が回転可能に連結され、この第4のアーム6の先端には第5関節J5を介して第5のアーム7が回転可能に連結され、この第5のアーム7には第6関節J6を介して第6のアーム8が回転可能に連結されている。なお、各関節J1〜J6においては、図示しないサーボモータにより各アーム3〜8を回転駆動するようになっている。
【0015】
ロボット本体1と制御装置(コントローラ,第1〜第3ベクトル決定手段,手先姿勢決定手段,教示姿勢設定手段,補間手段)11との間は、接続ケーブル12によって接続されている。これにより、ロボット本体1の各軸を駆動するサーボモータは、制御装置11により制御される。パッドコントローラ(入力手段)13は、例えば横長の本体14の両端側に、ユーザが左右両手でそれぞれ把持するための把持部15L,15Rが設けられており、ユーザが把持部15L,15Rを両手で把持した状態で、親指により押圧操作可能なジョイパッド16L,16Rが配置されている。また、把持部15L,15Rの図中上方には、人差し指により押圧操作可能なボタン17L,17Rが配置されている。
【0016】
ロボット本体1のアーム8には、CCD(Charge Coupled Device)又はCMOSイメージセンサを用いたカメラ(撮像手段)21が取り付けられており、そのカメラ21により撮像対象物(ワーク)22を画像で捉える。制御装置11には、パーソナルコンピュータ(パソコン)23がケーブル24を介して接続されている。
【0017】
パソコン23には、メモリやハードディスクなどの記憶装置(記憶手段)が内蔵されている。パッドコントローラ13は、接続ケーブル18を経由してパソコン23に接続され、通信インターフェイスを介してパソコン23との間で高速のデータ転送を実行するようになっている。ジョイパッド16L,16R等が操作されて入力された操作信号等の情報は、パッドコントローラ13からパソコン23を介して制御装置11へ送信される。カメラ21は、ケーブル25を介してパソコン23に接続されており、カメラ21が捉えた画像のデータはパソコン23に送信されて、ディスプレイ23Dに表示される。
【0018】
図6に示すように、制御装置11は、制御部としてのCPU31、各関節のモータ30を駆動する駆動手段としての駆動回路32、検出回路33などを備えている。そして、CPU31には、ロボット全体のシステムプログラム等を記憶したROM34、ロボット本体1の動作プログラム等を記憶したRAM35および前記ティーチングペンダント3を接続するためのインターフェース36が接続されている。なお、図6では、ショルダ部5、下アーム6、上アーム7、手首8を可動部として一つのブロックで示し、これに応じてそれらの関節の駆動源であるモータ30も一台だけ示した。
【0019】
上記検出回路33は、各関節の現在位置(回転角度)および現在速度(回転速度)を検出するためのもので、この検出回路33には、各関節を駆動するモータ30に設けられたロータリエンコーダ37が接続されている。ロータリエンコーダ37は位置センサおよび速度センサを兼用するもので、各モータ30の回転角度に応じたパルス信号を出力し、そのパルス信号は検出回路33に与えられる。検出回路33は、各ロータリエンコーダ37からのパルス信号に基づいて各モータ30ひいては各関節の現在位置を検出すると共に、単位時間当たり各ロータリエンコーダ37から入力されるパルス信号数に基づいて各モータ30ひいては各関節の現在速度を検出し、その位置および速度の情報は、各モータ30の駆動回路32およびCPU31に与えられるようになっている。
【0020】
そして、各駆動回路32は、CPU31から与えられる位置指令値および速度指令値と検出回路33から与えられる現在位置および現在速度とを比較し、その偏差に応じた電流を各モータ30に供給してそれらを駆動する。これにより、ロボットアーム先端(手先)であるフランジ(図示せず)の中心部が指令位置を順に通る経路を辿って動作することで、種々の作業を行う。
【0021】
ロボットアーム先端の移動経路は、パッドコントローラ13(若しくは、図示しないティーチングペンダント)を用いて行う教示作業によって与えられる。この教示作業では、ロボットアーム先端が辿るべき軌跡上の複数の位置が指令位置として順に教示される。そして、従来の教示作業であれば、各指令位置でのロボットアーム先端の姿勢も教示するが、本実施例では、姿勢は後述のように決定される。そして教示された指令位置と決定された姿勢とは、RAM35に記憶される。制御装置11は、実際のロボット作業に際して、与えられた複数の指令位置間を曲線補間してそれら指令位置を順に滑らかに辿る曲線を設定し、ロボットアーム先端がその曲線上を移動するように制御する。
【0022】
なお、ロボットアーム先端の位置は、フランジに固定された3次元座標(ツール座標)の原点がロボット座標(基底座標,ベース座標)上でどの位置にあるかによって示される。また、ロボットアーム先端の姿勢は、フランジに固定のツール座標の3軸の単位ベクトル(ノーマル,オリエント,アプローチの各ベクトル)がロボット座標上で示す向きによって定義される。
【0023】
図5に示すように、ロボットアームの先端である手先に取り付けたカメラ21により撮像対象物22を捉える場合、手先の姿勢については、基本的にカメラ21の視線が常に撮像対象物(被写体)22を向くように教示するのが通常である。したがって、このような状況下では、作業者が教示せずとも、手先の姿勢は幾何学的に決定することができる。
【0024】
図1は、ロボット本体1の座標であるベース座標の原点を基準とする、手先;カメラ21(ツール座標)の位置・姿勢と、撮像対象物22(ワーク座標)の位置・姿勢との関係を示す図である。また、図2は、手先の姿勢を決定する処理を示すフローチャートである。ベース座標から見たワーク座標の位置はベクトルBW,姿勢は回転行列BWで示されるが(書式の制約上,ベクトル及び回転行列の表記は図中の表記と異なる)、撮像対象物22が固定されているのでこれらは既知である。また、ベース座標から見たツール座標の位置はベクトルBT,姿勢は回転行列BTで示され、ベクトルBTは手先の位置を教示することで決定される(ステップS1)。
【0025】
そして、カメラ21の視線が撮像対象物22を向く方向は、ツール座標のアプローチベクトルa(第1ベクトル)が示す方向に一致するので、当該ベクトルa=(ax,ay,az)は図1に示す各座標間の関係から(1)式で計算される(ステップS2,第1ベクトル決定手段)。
【0026】
【数1】

また、手先の姿勢を示す回転行列BTは、(2)式となる。
【0027】
【数2】

ワーク座標の姿勢である回転行列BWは既知であるから、ツール座標から見たワーク座標の姿勢である回転行列TWが決まれば、手先の姿勢が決まる。
【0028】
ここで、回転行列TWは、ツール座標の姿勢そのものであるから、ツール座標のノーマルベクトルn,オリエントベクトルo,アプローチベクトルaによって記述される。
【0029】
【数3】

アプローチベクトルaは(1)式で決まるが、手先の姿勢に関してはそれが必要な条件であり、ノーマルベクトルn,オリエントベクトルoについては任意で良い。
【0030】
そして、ノーマル,オリエント,アプローチの各ベクトルn,o,aについては正規直交条件がある。したがって、アプローチベクトルaとオリエントベクトルoとの内積はゼロであり、
xx+ayy+azz=0 …(4)
x2+oy2+oz2=0 …(5)
であるから、例えば、オリエントベクトルoのノルムを「1.0」(単位長)に決定すれば、(4),(5)式からオリエントベクトルo(第2ベクトル)が決まる(ステップS3,第2ベクトル決定手段)。
【0031】
すると、ノーマルベクトルn(第3ベクトル)については、アプローチベクトルaとオリエントベクトルoとの外積で求められるので、
【0032】
【数4】

となる(ステップS4,第3ベクトル決定手段)。
【0033】
ステップS2〜S4により、ノーマル,オリエント,アプローチの各ベクトルn,o,aが決まるので、回転行列TWが決定され(ステップS5)、(2)式により、手先の姿勢である回転行列BTが計算される(ステップS6,手先姿勢決定手段)。以上の処理により、手先の位置を教示により決定したことに基づいて、手先の姿勢が計算で自動的に決定される。
【0034】
手先の位置を教示して手先の姿勢を計算により決定すると、次に、複数の教示位置(指令位置)の間をスプライン曲線により補間する(補間手段)。スプライン補間方式の詳細については、例えば特開2007−42021号公報等に開示されているので、ここでは説明を省略する。
【0035】
そして更に、指令位置について行った補間を手先の姿勢についても同様に適用して補間を行う。図3は、姿勢補間処理を示すフローチャートである。位置及び姿勢について教示点が設定されると(ステップS11)、ロボット本体1の手先を撮像対象物22周りで動作させるため、教示点(ベース座標から見たツール座標)が、ツール(手先)から見た撮像対象物22への位置,姿勢(ツール座標から見たワーク座標)となるように座標変換する(ステップS12)。
【0036】
次に、各教示位置におけるそれぞれの教示姿勢を座標値として特定する。教示された姿勢は回転角度値(X方向回転成分,Y方向回転成分,Z方向回転成分)で与えられているので、回転行列を用いて空間座標値(X方向姿勢座標値,Y方向姿勢座標値,Z方向姿勢座標値)に変換する(回転行列変換処理,姿勢座標変換処理手段)。各位置における手先の姿勢に対応する回転行列が、変換された座標によって表現される。すなわち、この回転行列が、手先の姿勢を特定するノーマルベクトルn(X軸),オリエントベクトルo(Y軸),アプローチベクトルa(Z軸)を、それぞれベース座標上で表現した3次元座標値となる。また、各教示位置の各方向座標値と、当該教示位置における各方向姿勢座標値とからなるものが移動目標位置に対応する。
【0037】
そして、教示位置を原点とするX,Y,Zの各軸方向に、任意の長さを伸ばして仮想した点を姿勢点(増幅X方向姿勢座標値,増幅Y方向姿勢座標値,増幅Z方向姿勢座標値)とする(ステップS13,姿勢ベクトル増幅処理手段)。すなわち、図4に示すように、教示姿勢を、教示位置(SC)を原点にして立つ方向ベクトルと考えれば、その方向ベクトルの3次元座標値(SN,SO,SA)を決定することで教示姿勢が特定される(ただし、図4では、SO,SAのみ図示)。尚、「任意の長さ」は教示姿勢を特定可能な長さであれば良いので、例えば上記座標系の単位ベクトルのn(>2)倍等とする。
【0038】
ここで、回転行列を用いて表わされた姿勢を示す座標値は、ゼロに近い値となる。補間を行うための演算は、制御装置11に内蔵されるCPU31で行われるが、CPU31には計算限界桁があるので、最初からゼロに近い値を用いるとその計算限界桁を超えた部分に各教示点での姿勢に影響を与える値が存在することになる。しかし、CPU31の計算上ではその微妙な差が計算誤差として飲み込まれてしまうので、姿勢が滑らかに変化するように補間値を演算できなくなる。そこで、そのような事態を回避するためベクトルの長さをn倍して、CPU31の計算限界桁内で姿勢を滑らかに変化させるように演算するための値を取り込むようにする。
【0039】
ステップS13の処理により、1つの教示姿勢について3つの姿勢点がそれぞれ3次元座標値として決定されるが、これらを「位置」と同様に扱うことで教示姿勢を補間することができる。すなわち、X,Y,Zそれぞれの姿勢点を,例えば上述した教示位置のようにスプライン曲線によって、滑らかな軌跡としてそれぞれ連結するように軌跡処理を行い補間する(ステップS14,増幅姿勢座標値連結処理手段)。
【0040】
ここで、図4は、教示位置並びに教示姿勢を補間する処理をイメージ的に示している。尚、図示が煩雑になるのを避けるため、上述のように姿勢点についてはY,Zの2軸分だけ示している。図4(a),(b)は、各教示位置を曲線補間した場合を示し、図4(c)は、各教示位置における教示姿勢についてY方向姿勢点及びZ方向姿勢点を決定した場合であり、各矢印がオリエントベクトル,アプローチベクトルに対応する。そして、図4(d)はY方向姿勢点を曲線補間した場合、図4(e)はZ方向姿勢点を曲線補間した場合である。また、図示しないX方向(ノーマルベクトルo)姿勢点についても同様に曲線補間する。
【0041】
ステップS14では、X,Y,Zの各方向について姿勢点を独立に補間したが、これらの各方向の補間点については3次元座標の各軸に対応することから、互いの関係が正規直交条件を満たす必要がある。したがって、その条件を満たすように修正を行う(ステップS15)。以上で教示姿勢の補間処理が完了する。
それから、ステップS15で得た補間点を、ベースから見たツールの位置・姿勢となるように座標変換すると(ステップS16)、補間点を加えて得られた手先の軌道(X,Y,Z各方向姿勢点の軌道)を、各軸J1〜J6の角度に変換する(ステップS17,教示姿勢決定手段)。以上で姿勢の補間処理が終了する。
【0042】
以上のように本実施例によれば、制御装置11は、ロボットアームの手先座標におけるカメラ21の視線に一致するアプローチベクトルaが、常に目標点である撮像対象物22の1点を向くようにティーチングを行う場合、手先の位置が教示されると、ロボット本体1のベース座標原点から目標点を示すベクトルBWと、ベース座標原点から手先を示すベクトルBTとからアプローチベクトルaを求める。また、オリエントベクトルoを決定するためそのノルムを「1.0」に決定し、その他の2つの座標値を正規直交条件に基づき決定すると、ノーマルベクトルoを、アプローチベクトルaとオリエントベクトルoとの外積で決定する。
【0043】
そして、教示点における手先の姿勢を示す回転行列BTを、既知であるベース座標系に基づく手先座標系の姿勢を示す回転行列BWと、ノーマル,オリエント,アプローチの各ベクトルで記述される回転行列TWの逆行列とから求め、回転行列BTで決まる手先の姿勢を、教示点における姿勢として自動的に設定する。
【0044】
すなわち、手先座標におけるアプローチベクトルaを常に目標点の方向に向かせるという状況下では、教示点におけるロボット本体1の手先の姿勢は計算により求められるので自動的に設定できる。したがって、作業者は、ベース座標系において各教示点の座標値を入力するだけで良く、各教示点について手先の姿勢を教示する必要が無くなり、作業時間を大きく短縮することができる。また、制御装置11は、2つの教示点の間を補間して1つ以上の補間点を決定すると、補間点についてもアプローチベクトルa,オリエントベクトルo,ノーマルベクトルnをそれぞれ決定して補間点における手先の姿勢を求めて手先の姿勢も自動的に設定するので、各補間点における手先の姿勢についても、カメラ21の視線が撮像対象物22を捉えるように設定できる。
【0045】
従来、手先の教示点毎に、位置を示す座標値を付与する作業と姿勢を付与する作業とが必要であったが、本実施例の方法,方式によれば「姿勢を付与する作業」が不要となるので、教示点毎に座標値を付与する作業と、撮像対象物22(ワーク)の座標を付与する作業だけとなる。「姿勢を付与する作業」が非常に煩雑であることを鑑みれば、実質的な作業量は1/2以下になると言って良い。
【0046】
(第2実施例)
図7及び図8は第2実施例であり、第1実施例と同一部分には同一符号を付して説明を省略し、以下異なる部分について説明する。第2実施例では、第1実施例とは異なる方法でアプローチベクトルaを決定する。すなわち、カメラ21の形状は既知であり、その形状より、カメラ21の外形において撮像面と平行になる平面は予め特定される。この平面に含まれる任意の異なる2つのベクトルを面ベクトルs1,s2とすると、法線ベクトルaは(7)式となる。
【0047】
【数5】

そして、前記法線ベクトルaの方向は、手先の姿勢を決定するアプローチベクトルaの方向、すなわちカメラ21の視線方向に一致する(ここでは、両者を同一視している)。したがって、上記法線ベクトルaが、例えば撮像対象物22の先端方向を向くようにロボットアームの手先の姿勢を決定すれば良い。この場合も、ノーマルベクトルn,オリエントベクトルoが任意であることは第1実施例と同様である。
【0048】
図8に示すフローチャートでは、ステップS2に替わるステップS2’(第1ベクトル決定手段)において、(7)式によりアプローチベクトルaを決定すれば、後は第1実施例と全く同様にして手先の姿勢である回転行列BTを計算できる。
【0049】
以上のように第2実施例によれば、手先の位置が教示されると、その教示点におけるカメラ21の撮像面と平行な平面内に存在する任意2つのベクトルs1,s2の外積で求められる、教示点に立つ法線ベクトルを手先座標のアプローチベクトルaとして決定する。そして、オリエントベクトルo,ノーマルベクトルnについては第1実施例と同様にして決定し、教示点における手先の姿勢を自動的に設定するようにした。すなわち、教示点におけるロボット本体1の手先の姿勢は、やはり計算により求めることが可能であるから自動的に設定できる。したがって、作業者は、第1実施例と同様に各教示点について手先の姿勢を教示する必要が無くなり、作業時間を大きく短縮することができる。
【0050】
本発明は上記し、又は図面に記載した実施例にのみ限定されるものではなく、以下のような変型又は拡張が可能である。
第2ベクトルとしてノーマルベクトルnを先に計算し、第3ベクトルとしてオリエントベクトルoを、アプローチベクトルaとノーマルベクトルnとの外積により計算しても良い。
6軸ロボットに限ることなく、その他の多軸ロボットについても適用可能である。
【符号の説明】
【0051】
図面中、1はロボット本体、11は制御装置(第1〜第3ベクトル決定手段,手先姿勢決定手段,教示姿勢設定手段,補間手段)、21はカメラを示す。

【特許請求の範囲】
【請求項1】
ロボットの手先に取り付けたカメラによりワークを撮像するため、手先座標におけるアプローチベクトルが常に目標点を向くように、垂直多関節型のロボットの動作軌跡をティーチングする際に、
前記手先の位置が教示されると、前記ロボットの基底座標原点から前記目標点を示すベクトルと、前記基底座標原点から前記手先(教示点)を示すベクトルとから前記アプローチベクトルを求める第1ベクトル決定手段と、
前記手先座標のオリエントベクトル,ノーマルベクトルの一方を第2ベクトルとして決定するため、前記第2ベクトルのノルムを「1.0」に設定し、前記第2ベクトルの座標値を正規直交条件に基づいて決定する第2ベクトル決定手段と、
前記オリエントベクトル,前記ノーマルベクトルの他方である第3ベクトルを、前記アプローチベクトルと前記第2ベクトルとの外積で決定する第3ベクトル決定手段と、
前記教示点における手先の姿勢を、前記基底座標系に基づく前記手先座標系の姿勢を示す回転行列と、前記ノーマル,オリエント,アプローチの各ベクトルによって記述される回転行列の逆行列とから求める手先姿勢決定手段と、
前記手先姿勢決定手段により決定された手先の姿勢を、前記教示点における姿勢として自動的に設定する教示姿勢設定手段とを備えたことを特徴とするロボットの制御装置。
【請求項2】
ロボットの手先に取り付けたカメラによりワークを撮像するため、手先座標におけるアプローチベクトルが常に目標点を向くように、垂直多関節型のロボットの動作軌跡をティーチングする際に、
前記手先の位置が教示されると、その教示点における前記カメラの撮像面と平行な平面内に存在する任意の2つのベクトルの外積で求められる、前記教示点に立つ法線ベクトルを前記手先座標のアプローチベクトルとして決定する第1ベクトル決定手段と、
前記手先座標のオリエントベクトル,ノーマルベクトルの一方を第2ベクトルとして決定するため、前記第2ベクトルのノルムを「1.0」に設定し、前記第2ベクトルの座標値を正規直交条件に基づいて決定する第2ベクトル決定手段と、
前記オリエントベクトル,前記ノーマルベクトルの他方である第3ベクトルを、前記アプローチベクトルと前記第2ベクトルとの外積で決定する第3ベクトル決定手段と、
前記教示点における手先の姿勢を、前記基底座標系に基づく前記手先座標系の姿勢を示す回転行列と、前記ノーマル,オリエント,アプローチの各ベクトルによって記述される回転行列の逆行列とから求める手先姿勢決定手段と、
前記手先姿勢決定手段により決定された手先の姿勢を、前記教示点における姿勢として自動的に設定する教示姿勢設定手段とを備えたことを特徴とするロボットの制御装置。
【請求項3】
2つの教示点の間を補間して1つ以上の補間点を決定する補間手段を備え、
前記第1〜第3ベクトル決定手段は、前記補間点についても前記アプローチベクトル,前記第2ベクトル,前記第3ベクトルをそれぞれ決定し、
前記手先姿勢決定手段は、前記補間点における手先の姿勢も求めることを特徴とする請求項1又は2記載のロボットの制御装置。
【請求項4】
ロボットの手先に取り付けたカメラによりワークを撮像するため、手先座標におけるアプローチベクトルが常に目標点を向くように、垂直多関節型のロボットの動作軌跡をティーチングする際に、
前記手先の位置が教示されると、前記ロボットの基底座標原点から前記目標点を示すベクトルと、前記基底座標原点から前記手先(教示点)を示すベクトルとから前記アプローチベクトルを求め、
前記手先座標のオリエントベクトル,ノーマルベクトルの一方を第2ベクトルとして決定するため、前記第2ベクトルのノルムを「1.0」に設定し、前記第2ベクトルの座標値を正規直交条件に基づいて決定し、
前記オリエントベクトル,前記ノーマルベクトルの他方である第3ベクトルを、前記アプローチベクトルと前記第2ベクトルとの外積で決定し、
前記教示点における手先の姿勢を、前記基底座標系に基づく前記手先座標系の姿勢を示す回転行列と、前記ノーマル,オリエント,アプローチの各ベクトルによって記述される回転行列の逆行列とから求め、
前記決定された手先の姿勢を、前記教示点における姿勢として自動的に設定することを特徴とするロボットの姿勢決定方法。
【請求項5】
ロボットの手先に取り付けたカメラによりワークを撮像するため、手先座標におけるアプローチベクトルが常に目標点を向くように、垂直多関節型のロボットの動作軌跡をティーチングする際に、
前記手先の位置が教示されると、その教示点における前記カメラのの撮像面と平行な平面内に存在する任意の2つのベクトルの外積で求められる、前記教示点に立つ法線ベクトルを前記手先座標のアプローチベクトルとして決定し、
前記手先座標のオリエントベクトル,ノーマルベクトルの一方を第2ベクトルとして決定するため、前記第2ベクトルのノルムを「1.0」に設定し、前記第2ベクトルの座標値を正規直交条件に基づいて決定し、
前記オリエントベクトル,前記ノーマルベクトルの他方である第3ベクトルを、前記アプローチベクトルと前記第2ベクトルとの外積で決定し、
前記教示点における手先の姿勢を、前記基底座標系に基づく前記手先座標系の姿勢を示す回転行列と、前記ノーマル,オリエント,アプローチの各ベクトルによって記述される回転行列の逆行列とから求め、
前記決定された手先の姿勢を、前記教示点における姿勢として自動的に設定することを特徴とするロボットの姿勢決定方法。
【請求項6】
2つの教示点の間を補間して1つ以上の補間点を決定すると、
前記補間点についても前記アプローチベクトル,前記第2ベクトル,前記第3ベクトルをそれぞれ決定し、
前記補間点における手先の姿勢も求めることを特徴とする請求項4又は5記載のロボットの姿勢決定方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate


【公開番号】特開2013−49102(P2013−49102A)
【公開日】平成25年3月14日(2013.3.14)
【国際特許分類】
【出願番号】特願2011−187343(P2011−187343)
【出願日】平成23年8月30日(2011.8.30)
【出願人】(501428545)株式会社デンソーウェーブ (1,155)
【Fターム(参考)】