JPH05303418A - 円筒座標ロボットの駆動制御方法 - Google Patents

円筒座標ロボットの駆動制御方法

Info

Publication number
JPH05303418A
JPH05303418A JP9886092A JP9886092A JPH05303418A JP H05303418 A JPH05303418 A JP H05303418A JP 9886092 A JP9886092 A JP 9886092A JP 9886092 A JP9886092 A JP 9886092A JP H05303418 A JPH05303418 A JP H05303418A
Authority
JP
Japan
Prior art keywords
arm
angle
equation
robot
axis
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
JP9886092A
Other languages
English (en)
Other versions
JP2923713B2 (ja
Inventor
Masakazu Kobayashi
正和 小林
Jiyunko Momozaki
潤子 桃崎
Shigeki Ochi
重貴 越智
Shunei Kuroda
俊英 黒田
Shigeki Fujinaga
茂樹 藤長
Masuo Kasai
増雄 笠井
Kiyoshi Takeuchi
清 武内
Ryuhei Mifuji
龍平 美藤
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.)
Shinmaywa Industries Ltd
Original Assignee
Shin Meiva Industry Ltd
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 Shin Meiva Industry Ltd filed Critical Shin Meiva Industry Ltd
Publication of JPH05303418A publication Critical patent/JPH05303418A/ja
Application granted granted Critical
Publication of JP2923713B2 publication Critical patent/JP2923713B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Numerical Control (AREA)
  • Manipulator (AREA)

Abstract

(57)【要約】 【目的】 円筒座標ロボットの駆動出力を全領域にわた
って高確度で決定することができる制御方法を提供す
る。 【構成】 CPU511は、ティーチング点又は補間点
の姿勢(天頂角)が特定領域内か特定領域外かを判断す
る。特定領域外の場合には、CPU511は交差角の余
弦の4次方程式の厳密解を算出し、当該解より旋回角を
算出する。特定領域内の場合には、交差角の余弦の逆数
の4次方程式の厳密解より旋回角を算出する。更にCP
U511は旋回角より他の駆動量を決定し、駆動信号D
1 〜D5 を算出するとともに、駆動信号D1 〜D5 をデ
ータバス57を介して駆動機構531〜535へ送信す
る。その結果、トーチ先端はティーチング点又は補間点
へ正確に移動する。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】この発明は、産業用ロボット、特
に円筒座標ロボットの駆動制御方法に関するものであ
る。
【0002】
【従来の技術】産業用ロボットに所望の動作を行わせる
方法として、ロボットのエンドエフェクタの先端がたど
るべき経路上の点を順次ティーチングし、これらのティ
ーチング点を滑らかに結ぶ曲線又は直線で補間する方法
が広く知られている(ティーチングプレイバック)。従
って、この方法を用いてロボットの駆動を制御するに
は、ロボットのエンドエフェクタの先端の位置と姿勢を
表現するXYZ絶対座標系(X系)からロボットの関節
変位(並進自由度と回転自由度を含む。)を表現する関
節座標系(α系)への座標変換が、即ち逆変換が必要と
なる。しかも、この逆変換をロボットの動作に同期して
実時間で行う必要性があるため、効率の良い逆変換の方
法が求められる。
【0003】一般にロボットの座標変換には、α系から
x系への順変換と、前述の逆変換がある。前者は、ロボ
ットの軸構成がどのうようなものであっても解析的に厳
密解を求めることができることが知られている。同様
に、後者に関しても解析的に厳密解を求める方法が試み
られており、例えばR.C.Paul,"Robot Manipulators;Mat
hematics, Programming and Control" MIT Press (198
1) にその具体例が示されている。即ち、順変換の変換
式から代数学的に逆変換の変換式を求めるわけである。
【0004】しかし、ロボットの軸構成いかんによって
は厳密な解析解の求まる場合と求まらない場合があり、
一般的には解析的に厳密解を求めることができない場合
が大部分である。そのため、数値解析による手法たとえ
ば収束演算法を用いて逆変換の解を近似的に求めること
が行われている。
【0005】また、逆変換の解を近似的に求める別の試
みも行われている。例えば、特開昭64−8407号公
報に示された方法がある。この方法では、ロボットのエ
ンドエフェクタの先端の位置及び姿勢を示すパラメータ
群を、ロボットの作業内容から判断して正確に制御する
ことを必要とする第1のパラメータ群と必要としない第
2のパラメータ群に分類し、第1のパラメータ群に影響
を与えないロボットの関節変位の中から少なくとも一つ
の変位について、次式に示す用にヤコビ行列(ヤコビア
ン)を用いてその近似解を求める。即ち、ロボットのエ
ンドエフェクタ先端の現在の位置と姿勢及び次の移動す
べき位置とその位置での姿勢を表わすベクトルをそれぞ
れベクトルX0 及びベクトルX1 とし、ベクトルX0
びベクトルX1 に対応するロボットの関節変位を示すベ
クトルをそれぞれベクトルθ0 及びベクトルθ1 、ヤコ
ビアンをJ(ベクトルθ)として表わすとすれば、上述
の近似解ベクトルθ1 は、
【0006】
【数1】
【0007】として求められる。そして、この様にして
求めた関節変位の一部の近似解ベクトルθ1 を用いて、
前記第1のパラメータの値を満たすように残りの関節変
位の解を求めるものである。この場合、逆変換の変換式
から近似解として求めた関節変位を除外することにより
その分の数だけ逆変換の変換式の未知数を減少させるこ
とができ、多くの場合残りの関節変位について解析的に
解を求めることができるようになる。
【0008】
【発明が解決しようとする課題】前記第1の方法、即ち
収束演算法による数値解析解を求める方法は、位置誤
差,姿勢誤差の小さい精度の高い解を求め得る利点を有
するが、かなり長い処理時間を必要とするため、実時間
でのロボットの駆動・制御には、適していないという問
題点がある。又、ロボットの軸構成によっては、解が収
束しない範囲が存在するという問題点もある。実際、後
述するような構成からなる円筒座標ロボットについて収
束演算法により解を求めようとしても、収束しない範囲
がある。
【0009】又、第2の方法、即ち、ヤコビアンを用い
て関節変位のうち一部の変位の解のみ別個に近似解を求
める方法では、残りの関節変位については、逆変換の変
換式の近似解を容易に求めることができる利点を有す
る。しかしながら、近似解を求めるにはエンドエフェク
タが移動するごとにヤコビアンの逆行列を求める必要が
あるので、計算プロセスが複雑となり必ずしも簡便な計
算方法とは言い難い。又、ロボットのエンドエフェクタ
先端の位置,姿勢共に誤差を持つという問題点がある。
【0010】尚、以上の様な問題点は産業用ロボット全
般における問題点であって、当然ながらこの発明が対象
とする円筒座標ロボットについても同様に解決すべき問
題点となっている。
【0011】この発明は、円筒座標ロボットについて、
上述した問題点を解決するためになされたものであり、
ロボットのエンドエフェクタ先端を指定された位置及び
姿勢に正確に且つ短時間で移動させることがてきる円筒
座標ロボットの駆動制御方法を提供することを目的とす
る。
【0012】
【課題を解決するための手段】この発明の第1の方法で
は、ロボット設置面に略垂直に設置された第1アーム
と、第1アームに結合してロボット設置面に略平行な平
面内に並進自由度を有するとともに、第1アームに対し
て定まる所定の平面内に直接的又は間接的に回転自由度
を有する第2アームと、第2アームの先端部に略直角に
結合して第2アームの軸方向まわりの回転自由度とそれ
自身の軸まわりの回転自由度とを有する第3アームと、
第3アームの先端部に略直角に結合したエンドエフェク
タとを有する円筒座標ロボットの駆動制御方法に関し、
(a)エンドエフェクタの先端の位置及び姿勢を指定す
るステップと、(b)エンドエフェクタの軸を含み且つ
所定の平面に垂直な平面がエンドエフェクタの軸方向を
法線方向とする平面と交差する際の交線と第3アームの
軸方向とのなす角度の余弦の逆数、又は当該角度の正弦
の逆数のうち、いずれかを選択するステップと、(c)
ステップ(b)で選択された逆数を変数とする4次方程
式の解を算出するステップと、(d)4次方程式の解よ
り位置及び姿勢に対応する当該角度の値を求めるステッ
プと、(e)当該角度の値を用いて第1、第2及び第3
アームの各駆動量を決定するステップと、(f)駆動量
に応じた駆動出力をそれぞれ第1、第2及び第3アーム
の各駆動機構に与えることにより第1、第2及び第3ア
ームの駆動を行うステップとを備える様にしたものであ
る。
【0013】また、第2の方法では、第1の方法に於け
るロボットと同様の第1、第2及び第3アームとエンド
エフェクタとを有する円筒座標ロボットの駆動制御方法
に関し、(a)エンドエフェクタの先端の位置及び姿勢
を複数指定するステップと、(b)姿勢が予め定められ
た特定領域内に有るか否かを判断するステップと、
(c)姿勢が前記特定領域内に有る場合には、エンドエ
フェクタの軸を含み且つ所定の平面に垂直な平面がエン
ドエフェクタの軸方向を法線方向とする平面と交差する
際の交線と第3のアームの軸方向とのなす角度の余弦の
逆数、又は角度の正弦の逆数のうち、いずれかを選択
し、選択された逆数を変数とする4次方程式の解を算出
するとともに、当該4次方程式の解より位置及び姿勢に
対応する角度の値を求めるステップと、(d)姿勢が前
記特定領域外に有る場合には、当該角度の余弦、又は前
記角度の正弦のうち、いずれかを変数に選択し、変数に
関する4次方程式の解を算出するとともに、当該4次方
程式の解より位置及び姿勢に対応する当該角度の値を求
めるステップと、(e)当該角度の値を用いて第1、第
2及び第3アームの各駆動量を決定するステップと、
(f)駆動量に応じた駆動出力をそれぞれ第1、第2及
び第3アームの各駆動機構に与えることにより第1、第
2及び第3アームの駆動を行うステップとを備える様に
したものである。
【0014】
【作用】この発明に係る駆動制御方法では、エンドエフ
ェクタの軸を含み第1アームに対して定まる所定の平面
に垂直な平面がエンドエフェクタの軸方向を法線方向と
する平面と交差する際の交線と第3アームの軸方向との
なす仮想的な角度と、第2アームの当該所定の平面内に
於ける旋回角度との幾何学的関係に着眼している。
【0015】即ち、第1の方法では、仮想的な角度の正
弦の逆数又は余弦の逆数について成立する4次方程式を
直接解析的に解き、得られた解より旋回角度を決定す
る。そして、この旋回角度値をエンドエフェクタの位置
と姿勢とに関する逆変換式に代入することにより、各ア
ームの駆動量を厳密に決定している。更に、得られた各
アームの駆動量に基づいて各アームを駆動する。その結
果、エンドエフェクタの先端は、指定された位置へ誤差
なく正確に移動し、しかも指定された姿勢を保ってい
る。
【0016】又、第2の方法では、指定された複数の姿
勢の内、姿勢が所定の範囲内にあると判断された場合に
は、仮想的な角度の正弦の逆数又は余弦の逆数について
成立する4次方程式を直接解析的に解き、得られた解よ
り旋回角度が決定される。一方、姿勢が所定の範囲外に
あると判断された場合には、仮想的な角度の正弦又は余
弦について成立する4次方程式を直接解析的に解き、得
られた解より旋回角度が決定される。従って、指定され
た位置が絶対座標系内のいずれの位置であっても、エン
ドエフェクタの先端は、その指定された位置へ誤差なく
正確に移動し、しかも指定された姿勢を保っている。
【0017】
【実施例】
A.装置の機械的構成 図1及び図2は、それぞれこの発明の一実施例である円
筒座標ロボットとしてのレーザ溶接ロボットRBの機械
的構成を示す斜視図及び模式的側面図であり、図2には
レーザ溶接ロボットRBの各自由度が模式的に表わされ
ている。
【0018】両図において、ロボットRBの設置面10
上に固定された絶対座標系としてX系が定義され、ロボ
ットRBの基台11より第1アーム21がZ軸にそって
延びている。この第1アーム21は、Z軸まわりに、即
ち第1アーム21の軸A1のまわりに、第1アーム21
内部に備えつけられた第1の駆動機構によってΘ方向に
旋回することができる。
【0019】又、第2アーム22が第1アーム21に略
直角に交差して備えつけられており、第1アーム21の
旋回と共にΘ方向に旋回する。従って、第2アーム22
は、第1アーム21の旋回を通じて間接的にXY平面内
に旋回自由度を有しているものと言うことができる。し
かも第2アーム22は、第1アーム21内部に備えつけ
られた第2の駆動機構によってZ軸に平行に昇降するこ
とができ、更に第2アーム22内部に備えつけられた第
3の駆動機構によって、XY平面内を並進運動すること
ができる。尚、第1アーム21の軸A1と第2アーム2
2の軸A2との交点MのX系に対する位置座標を点M
(0,0,zs )とする。
【0020】又、第2アーム22の先端部31には、第
3アーム23が第2アーム22に略直角に結合されてお
り、第3アーム23は第2アーム22の先端部31の内
部に備えつけられた第4の駆動機構によって、第2アー
ム22の軸A2のまわりのα方向に回転することができ
る。ここで、軸A2と第2アーム22の先端の点Pと点
Mとの相対距離を変数xs で表わす。
【0021】更に、第3アーム23は、それ自身の先端
部32の内部に備えつけられた第5の駆動機構によっ
て、それ自身の軸A3のまわりのβ方向に回転すること
もできる。尚、第3アーム23の長さは一定値d1 に固
定されている。
【0022】また、エンドエフェクタとしてのトーチ4
0が第3アーム23の先端部32に略直角に結合されて
おり、トーチ40の長さ、即ちトーチ40の先端の点N
とトーチ40の軸A4と第3アーム23の先端の点Qの
距離は、一定値d2 である。
【0023】尚、トーチ40にはワーク検知用センサ
(図示せず)が備えつけられており、トーチ40自身
は、自身の軸A4を回転軸としてγ方向に回転すること
ができる。トーチ40自身はその軸A4まわりに完全回
転対称性を有しており、そのロール角に相当する角度γ
は上記センサの位置を定めるためにのみ意味を持つ。こ
のため、角度γは座標変換によって決定される値ではな
く、別個独立に指定すべき角度である。後述する座標変
換において角度γを決定する式がないのはこのような事
情による。
【0024】以上述べた各アームの自由度の内、トーチ
40自身の回転自由度を除いた全ての自由度の範囲を表
1に例示する。尚、表1における記号z0 は、第2のア
ーム22が基盤11と接した際の点Mの高さである。
【0025】
【0026】一方、図3はトーチ40の先端(点N)の
位置及び姿勢を示す説明図であり、ここでは点Qを原点
としたx’系により表わされている。同図に於いて、
x’系の各軸方向は、X系の各軸方向に対応する様に設
定されている。即ち、x’軸,y’軸及びz’軸は、そ
れぞれX軸,Y軸及びZ軸に平行である。ここで原点Q
の位置は、X系表示ではQ(xQ ,yQ ,zQ )として
表される。
【0027】先ず、点Nの姿勢は、ベクトルQNとz’
軸とのなす角度(天頂角)θ及びベクトルQNのx’
y’平面への射影ベクトルとx’軸とのなす角度(方位
角)φにより決定される。
【0028】又、その位置は、位置座標(x’,y’,
z’)により決定される。従って、X系表示の点Nの位
置座標(x,y,z)とx’系表示の位置座標(x’,
y’,z’)との間には、x=xQ +x’,y=yQ
y’及びz=zQ +z’の関係が成立する。
【0029】B.装置の電気的構成 図4は、レーザ溶接ロボットRBの制御系の電気的構成
を示すブロック図である。この制御系は、CPU511
やメモリ512等からなるコントローラ51を有してお
り、ソフト的に制御される。又、ティーチングボックス
52を操作することによってティーチングデータの取込
みなどが行なわれる。コントローラ51からの各種指令
信号(駆動信号D1 等)は、データバス57を介して各
構成部分(第1の駆動機構531等)に与えられる。
【0030】又、オペレータは、キーボード等の入出力
装置56を用いて、コントローラ51のソフト制御に必
要な各種データを設定することができる。
【0031】一方、第1の駆動機構531を構成するモ
ータM1 に駆動信号D1 が送信され、モータM1 が動作
するとともに、モータM1 に取付けられたエンコーダE
1 が第2のアーム22の軸A1のまわりの旋回角Θを検
出する。同様に、第2〜第5の駆動機構532〜535
にそれぞれ駆動信号D2 〜D5 が送信され、各モータM
2 〜M5 が動作し、変位zs ,xs 及び回転角度α,β
がそれぞれエンコーダE2 〜E5 によって検出される。
【0032】又、レーザー電源54はレーザー発振器5
5に電力を供給するための電源であり、コントローラ5
1からの指令に応じて作動する。そして、レーザー発振
器55で発生したレーザービームLBは、ロボットRB
の各アーム内に設けたミラーによって順次に反射されつ
つトーチ40の先端からワークに向けて照射される。
【0033】C.駆動制御方法 図5及び図6は、ロボットRBを駆動制御するためのス
テップを示すフローチャートであり、図7〜図9は図5
におけるステップS6を詳細に説明するフローチャート
である。
【0034】(C−1) ステップS1 先ず、特定領域の設定が行われる。即ち、オペレータ
は、入出力装置56を用いて、予めコントローラ51に
特定領域のデータを与える。この特定領域とは姿勢の
内,天頂角θに関して特別に定められた領域であり、テ
ィーチング点又は補間点の天頂角θがこの領域内に該当
する場合には、後述する改良g法が適用されることとな
る。尚、この様な特定領域を設定する理由については後
述する。本実施例では、特定領域は0°〜(0°+Δ
θ)又は(180°−Δθ)〜180°である。
【0035】(C−2) ステップS2(ティーチング
工程) ティーチングデータXi (i=1,2,…,n)の作成
と記憶とが行われる。尚、ティーチングデータXi
は、ティーチング点Pi の位置(x,y,z)及び姿勢
(θ,φ)と、それらの位置等を与える各アームの駆動
量(実測値)とを含む概念として用いられている。
【0036】先ず、オペレータは、各ティーチング点P
i 毎にマニュアルでトーチ40の先端の位置決めを行
う。その際、各ティーチング点Pi 毎の各アームの駆動
量(α系の値)が、エンコーダE1 〜E5 により読込ま
れる。
【0037】そして、各アームの駆動量を順変換するこ
とにより、各ティーチング点Pi の位置(xi ,yi
i )と姿勢(θi ,φi )とが計算される。ここで順
変換に関しては、既述した通り厳密解を解析的に求める
ことが可能であり、順変換の手順は予めコントローラ5
1内にプログラミングされている。そして計算された位
置(xi ,yi ,zi )と姿勢(θi ,φi )とは、テ
ィーチングデータXiとしてメモリに格納される。
【0038】(C−3) ステップS3 以上の準備ステップが終了すると、CPU511は発振
指令信号をレーザー電源54に対して発する。これによ
り、レーザー電源54はレーザー発振器55をオン状態
にする。
【0039】次のステップ群S10は、いわゆる再生動
作に対応している。
【0040】(C−4) ステップS4 ティーチング点Pi に関するティーチングデータXi
読出しが行われる。そして、読出された各アームの駆動
量に基づき、コントローラ51は各駆動機構531〜5
35に対して駆動信号D1 〜D5 を発する。その結果、
トーチ40の先端(点N)は、ティーチング点Pi に移
動する。
【0041】(C−5) ステップS5 ティーチング点Pi と該点Pi に隣接するティーチング
点Pi+1 との間を補間し、補間点PijのデータXij〔位
置(xij,yij,zij),姿勢(θij,φij)〕が計算
される。このような補間方法としては、よく知られてい
る通り、線型補間や二次曲線で補間する方法等がある。
これらの補間方法の説明については、省略する。尚、補
間点PijのデータXijはX系の値である。従って、トー
チ40の先端を補間点Pijへ移動するための適切な各ア
ームの駆動量(α系)を決定する必要がある。
【0042】(C−6) ステップS6 X系からα系への逆変換が行われる。
【0043】この逆変換のプロセスを説明する前に、先
ず、トーチ40と第2アーム22及び第3アーム23と
の関係を幾何学的に考察する。図18は、図2で示した
4点M,N,P,Qの位置関係を、XYZ空間において
示した立体図である。
【0044】今、第2アーム22が軸A1のまわりに角
度Θで旋回し、第3アーム23が軸A2のまわりに角度
αで回転し、更に軸A3のまわりに角度βで回転した状
態にある場合を考える。
【0045】図18において、トーチ40の先端の位置
Nと姿勢とが与えられると、自動的に点Qの位置も定ま
る。
【0046】ここで、次の(i)〜(iii)の条件を
満足する円Cを定義する。
【0047】(i) その中心が点Qであること。
【0048】(ii) 半径がdであること。
【0049】(iii) ベクトルQNを法線とする平
面内に存在すること。
【0050】その結果、点Pは円Cの円周上に存在し、
ベクトルQPは円Cの半径ベクトルとなっている。そし
て、ロボットRBの各軸構成から明らかなように、点P
について、
【0051】
【数2】
【0052】
【数3】
【0053】の関係が成立する。
【0054】今、ベクトルQNを含みXY平面に垂直な
平面Sが円Cと交差している場合を考え、平面Sと円C
との交点をそれぞれ点R及び点Tとする。そして、ベク
トルQRとベクトルQPとのなす角を、交差角δと定義
することとする。
【0055】又、ベクトルQN及び円CをXY平面へ射
影する場合を考える。即ち、ベクトルQNのXY平面へ
の射影ベクトルをベクトルQ′N′、円CをXY平面へ
射影した場合にできる楕円を楕円E′とし、各点P,
R,Tに対応するXY平面上の各点をそれぞれ点P′,
R′,T′とする。
【0056】次に、以上述べた幾何学的関係を基にし
て、逆変換の厳密解を求めることとなるのであるが、こ
こでは図7及び図8に示すフローチャートに従って、図
18とともに以後のステップを説明することとする。
【0057】(C−6−1) ステップS61 補間点Pijの天頂角θijが特定領域内に有るか否かが判
断される。その際、天頂角θijが特定領域内に有ると判
断された場合には、ステップS6Bで詳述する改良g法
が適用されることとなる。ここでは、先ず、天頂角θij
が特定領域外である場合について詳述する。この場合に
は、ステップS62〜S69及びS6Aで示されるg法
が適用されることとなる。
【0058】(C−6−2) g法 (C−6−2−1) g− cosδ法 ステップS62 パラメータy0 が−Δy0 から+Δy0 の範囲内の値で
あるか否か(0近傍値であるか否か)が判断される。こ
の判断が必要とされる理由については後述説明で明らか
となるが、本ステップ自身は後述するg法の形式を定め
る点で意義がある。尚、Δy0 は予めオペレータにより
定められた一定値(1より十分に小さな値)であり、そ
の値は使用するCPU511の計算容量を考慮して決定
される。
【0059】ここでは、先ず、パラメータy0 が0近傍
値でない一般的な場合(ステップS63〜S69)につ
いて詳述することにする。本出願人は、この様なケース
に対する制御方法をg法乃至はg− cosδ法と呼んでい
る。
【0060】尚、パラメータy0 は後述する数49によ
り決定されるので、本ステップは判断の前段階としてパ
ラメータy0 の算出ステップを含んでいる(図示せ
ず)。
【0061】 ステップS63 第2アーム22をZ軸のまわりに仮想的に旋回すること
を考える。即ち、第2アーム22の先端の点が点Pにあ
る状態から仮想的な角度φ(図18の例においては、角
度Θとは逆まわりとなっている。)だけ旋回することに
よって、トーチ40の軸A4方向のベクトルQ1 1
XY平面への射影ベクトルQ1 ′N1 がX軸に平行にな
ったものとする。この状態における円Cに対応する円を
円C1 、円C1 のXY平面への射影により生じる楕円を
楕円E1 ′とする。又、ベクトルQ1 1 を含みXY平
面に垂直な平面S1 が円C1 と交差する点を点R1 ,T
1とし、円C1 上の3点P1 ,P1 ,T1 の楕円E1
上の対応する点を、それぞれ点P1 ′,R1 ′,T1
とする。
【0062】以上の様に仮想的にベクトルMPを角度φ
だけ旋回することにより、点Pと点Qとの幾何学的関係
式を導出することが容易となる。この点について、以下
に説明する。
【0063】図19は、ベクトルQ1 1 及び円C1
XZ平面へ射影した場合を示す説明図である。同図に於
いて、ベクトルQ1 ″N1 ″がベクトルQ1 1 のXZ
平面への射影ベクトルを、楕円E1 ″が円C1 をXZ平
面へ射影した結果生ずる楕円を,点P1 ″,R1 ″,T
1 ″が点P1 ,R1 ,T1 のXZ平面への射影点を示し
ている。ベクトルQNについて図3に示した様に、トー
チ40、即ちベクトルQ1 1 の姿勢のうち、ベクトル
1 1 とZ軸とのなす角度が角度θであるから、図1
9において、ベクトルQ1 ″N1 ″とZ軸とのなす角度
もまた角度θで表わされる。従って、直線R1 ″T1
とX軸とのなす角もまた角度θである。
【0064】そこで、話を図18に戻し、平面S1 と円
1 を含む平面との交線を交線CLとすると、ベクトル
1 1 の交線CL方向の成分ベクトル(大きさは、d
1 ′cos δ)はXZ平面に平行であり、ベクトルP1
1 の面S1 の法線方向の成分ベクトル(大きさは、
1 ′sin δ)はY軸に平行である。従って、点Q1
び点P1 の位置座標をそれぞれ点Q1 (x0 ,y0 ,z
0 )及び点P1 (x,y,z)として表し、更に図18
においては余弦 cosδが負、正弦 sinδが正であること
を考慮すれば、点P1 と点Q1 との関係は数4〜数6に
より表わされる。
【0065】
【数4】
【0066】
【数5】
【0067】
【数6】
【0068】ここでは、余弦,正弦の記載に関して、数
7,数8の様な簡略形が用いられている。以後の説明に
おいてもこれらの簡略形が使用されている。
【0069】
【数7】
【0070】
【数8】
【0071】 ステップS64 cosδの4次方程式の解が導出される。その様な cosδ
の4次方程式は、図18の位置関係より容易に導き出さ
れる。
【0072】即ち、ベクトルQ1 1 とベクトル MP
1 とは直交しているので、
【0073】
【数9】
【0074】及び
【0075】
【数10】
【0076】の関係式が成立する。従って、数9に数4
〜数6及び数10を代入し、x0 及びy0 をd1 により
正規化すると、数9は、
【0077】
【数11】
【0078】
【数12】
【0079】
【数13】
【0080】に変形される。更に数11の両辺を2乗
し、2乗後の関係式を
【0081】
【数14】
【0082】の関係を用いて展開すると、数15に示す
様なCδに関する4次方程式が得られる。
【0083】
【数15】
【0084】ここで、変数XC ,係数a,b,c及びd
は、それぞれ
【0085】
【数16】
【0086】
【数17】
【0087】
【数18】
【0088】
【数19】
【0089】
【数20】
【0090】によって表される。
【0091】数15の4次方程式は、よく知られたデカ
ルトの方法によって解析的に求められる。即ち、解XC1
〜XC4は、以下に示す数21〜数24により与えられ
る。従って、これらの関係式(数21〜数24)を予め
プログラミングしておけば、図4に示すコントローラ5
1によって厳密解XC1〜XC4を容易に算出することがで
きる。
【0092】
【数21】
【0093】
【数22】
【0094】
【数23】
【0095】
【数24】
【0096】尚、数21〜数24の右辺第2項の符号に
関しては、a≧0のとき上側の符号が採用され、a<0
のとき下側の符号が採用されるものと約束されている。
また、定数U,V,Wは、数17〜数20で与えられる
係数a〜dによって与えられるものであり、ここではそ
れらの具体的記載は省略されている。
【0097】 ステップS65〜S68 ステップS64で求められた余弦Cδの解XC1〜XC4
基づき正弦Sδが求められる(ステップS65)。そし
て、これらの値(Cδ,Sδ)より、交差角δが算出さ
れる(ステップS66)。
【0098】更にステップS67及びS68では、ベク
トルOP1 ′とX軸とのなす角度Θ′(図18参照)が
求められた後、角度Θ′(仮想的な旋回角)から角度Θ
(旋回角)への変換が行われる。この変換により、第2
アーム22の本来の旋回角Θが求められる。尚、角度
Θ′を求めるためには点P1 ′(x,y,0),従って
点Q1 ′(x0 ,y0 ,0)の位置座標を求める必要が
ある。この点Q1 ′の位置座標は、以下で述べる様に、
トーチ40の先端の位置より求められる。そこで、以下
においては、ステップS65〜S68に於ける原理の説
明及び当該ステップで必要な諸式の導出を行う。
【0099】今、α系からx系への順変換を考えること
とする。即ち、トーチ40の先端の位置ベクトルをベク
トルp、姿勢を(ベクトルn,ベクトルo,ベクトル
a)で表わすとすれば、α系からx系への座標変換マト
リックスTは数25,数26により表わされる。
【0100】
【数25】
【0101】
【数26】
【0102】ここで、各マトリックスAΘ,Azxα,A
β及びAγは、ロボットRBの各アームの自由度に伴う
座標変換マトリックスであり、数27〜数30により表
わされる。
【0103】
【数27】
【0104】
【数28】
【0105】
【数29】
【0106】
【数30】
【0107】従って、数27〜数30を用いて数26を
展開すれば、座標変換マトリックスTの各要素を求める
ことができる。ここでは、ベクトルaとベクトルpとの
各要素のみを以下に示す。
【0108】
【数31】
【0109】
【数32】
【0110】
【数33】
【0111】
【数34】
【0112】
【数35】
【0113】
【数36】
【0114】このようにして得られた順変換の式(数3
1〜数36)より、逆変換の解(Θ,xs ,zs ,α,
β)が求められる。
【0115】そこで、数31〜数33を数34〜数36
に代入すると、
【0116】
【数37】
【0117】
【数38】
【0118】
【数39】
【0119】が得られる。ここで、位置ベクトルp
m は、
【0120】
【数40】
【0121】
【数41】
【0122】
【数42】
【0123】と定義されている。即ち、位置ベクトルp
m の各成分pxm,pym,pzmは、図18における点Qの
位置座標を与える。
【0124】再び、図18に目を向ければ、数43〜数
45で与えられる幾何学的関係が成立していることが理
解される。
【0125】
【数43】
【0126】
【数44】
【0127】
【数45】
【0128】ここで、角度ψはベクトルOQ1 ′とX軸
とのなす角度である。又、点Qの位置座標(pxm
ym,pzm)を用いれば、
【0129】
【数46】
【0130】が得られる。従って、
【0131】
【数47】
【0132】
【数48】
【0133】
【数49】
【0134】
【数50】
【0135】で与えられる関係式が成立し、角度ψ,点
1 (したがって点Q1 ′)の位置座標がトーチ40の
先端の位置より求められる。
【0136】ここでatan2(pym,pxm)は、
【0137】
【数51】
【0138】
【数52】
【0139】となる角度ξを一意に与える関数である。
【0140】一方、交差角δは次の手順により求められ
る。即ち、余弦Cδは既にステップS64に於いて算出
されており(数21〜数24)、正弦Sδは数11によ
り算出される(ステップS65)。従って、数48,数
49で求めたx0 ,y0 の値を用いることより、交差角
δは、
【0141】
【数53】
【0142】より決定される(ステップS66)。
【0143】次に、以上求められた点Q1 の位置座標Q
1 (x0 ,y0 ,z0 )及び交差角δに基づき、角度
Θ′が求められる。即ち、数48〜数50を数4〜数6
へ代入すれば、点P1 の位置座標P1 (x,y,z)な
いしは点P1 ′の位置座標(x,y,0)が求められ
る。その結果、角度Θ′は数54により決定される(ス
テップS67)。
【0144】
【数54】
【0145】そして、ベクトルMP1 を角度−φだけZ
軸のまわりに旋回することにより、角度Θが求められる
こととなる(図18参照)。故に、角度Θは、
【0146】
【数55】
【0147】により決定される(ステップS68)。
【0148】(C−6−2−1) g− sinδ法 ステップS62 パラメータy0 が0近傍の値である場合には、ステップ
S6Aのg− sinδ法の適用により旋回角Θが求められ
る。これは、次の様な理由によるものである。
【0149】即ち、g− cosδ法では、先ず余弦Cδを
求め、次に正弦Sδを求めた上で交差角δの算出を行っ
ていた。しかし、数11より明らかな様に、パラメータ
0が極めて0に近い値のときにはCPU511内の計
算過程で桁落ちが大きくなり、各アームの駆動制御が困
難となる問題が生じる。実際、パラメータy0 の値が1
-3のオーダーのときには、逆変換による駆動誤差は数
mmにもなっていた。
【0150】そこで、この様な問題点の解決手段として
考えだされたのが本g− sinδ法であり、本方法は、先
に正弦Sδを求めておき、次に余弦Cδを求めることに
より交差角δを求めようとするものである。この方法に
よれば、前述の桁落ちという問題は発生せず、正確な駆
動制御が可能となる。以下、図9に示す各ステップに基
づき、本g− sinδ法の詳細を説明する。
【0151】 ステップS6A1〜6A2 ステップS6A1は図7のステップS63と同一である
ため、本ステップの詳細な記述を省略する。
【0152】ステップS6A2では、正弦Sδに関する
4次方程式の解が算出される。この正弦Sδに関する4
次方程式は、余弦Cδの場合と同様の考察により導出さ
れる。即ち、数14を用いて数11を変形すれば、
【0153】
【数56】
【0154】が得られる。そして、数56の両辺を自乗
し、
【0155】
【数57】
【0156】とおけば、次の関係式
【0157】
【数58】
【0158】が得られる。ここで、各係数a’,b’,
c’及びd’は、それぞれ
【0159】
【数59】
【0160】
【数60】
【0161】
【数61】
【0162】
【数62】
【0163】で表される。
【0164】数58の解XS1〜XS4は、数15と同様
に、デカルトの方法により求められる。即ち、数21〜
数24に基づいて解XS1〜XS4を与えるプログラムを同
様に作成し、このプログラムをメモリ512に記憶して
おくことにより、解XS1〜XS4をソフト処理により求め
ることが可能となる。しかも、数59〜数62はパラメ
ータy0 をその分母に含んでいないため、パラメータy
0 が0近傍値であっても、解XS1〜XS4の算出に際して
十分良好な計算精度が得られる。
【0165】 ステップS6A3 前ステップにより算出された正弦Sδの値を用いて、余
弦Cδの値が算出される。余弦Cδの導出は数11及び
数14より得られる。即ち、余弦Cδは、
【0166】
【数63】 として表され、その分母にパラメータy0 を含まない。
従って、パラメータy0の値如何に係わらず、正確に余
弦Cδを算出することが可能となる。尚、数63は、そ
の分母に(xo Cθ)を含んでいる。しかし、パラメー
タy0 が0近傍(−Δy0 〜+Δy0 )となる範囲にお
いては(xo Cθ)が0近傍となる様なケースが発生し
ないことが、シミュレーションや実験等により確認され
ている。従って、(xo Cθ)を考慮する必要はない。
この点は、後述するパラメータy0 が1近傍又は−1近
傍の値となる場合についても成立する。
【0167】 ステップS66〜S68 ステップS6Aにより正弦Sδと余弦Cδとが正確に算
出されたので、交差角δをも正確に算出することが可能
となる。従って、本g− sinδ法についても同様に、数
47に基づき交差角δが算出された後(ステップS6
6)、ステップS67及びS68により旋回角Θが算出
される。
【0168】(C−6−3) 改良g法 ステップS61 天頂角θが特定領域内にあると判断された場合には、ス
テップS6Bの改良g法が適用される。この理由は次の
通りである。
【0169】即ち、g− cosδ法によれば、余弦Cδの
4次方程式(数15)を解くことによって交差角δが算
出される。
【0170】しかし、上記4次方程式の各係数a,b,
c及びd(数17〜数20)は、その分母に正弦Sδを
含んでいる。従って、天頂角θが特定領域内(0≦θ≦
Δθ,180−Δθ≦θ≦180)にある場合には、係
数a〜dの全てが大きな値となる。しかも数15の解
(数21〜数24)の算出に際しては、数64〜数70
に示される通り、各係数a〜dについて2乗、3乗等
(a2 〜d2 等)の複雑な計算が必要とされる。尚、数
68〜数70の量u,v及びwは、それぞれ数21〜数
24で示された量u,v及びwである。
【0171】
【数64】
【0172】
【数65】
【0173】
【数66】
【0174】
【数67】
【0175】
【数68】
【0176】
【数69】
【0177】
【数70】
【0178】その結果、特定領域内において数15の解
c1〜Xc4を求めようとする場合には、CPU511に
於ける演算がオーバーフローするという問題点が生ず
る。即ち、解Xc1〜Xc4の精度が極端に低下することと
なる。この点に関しては、g−sinδ法についても同様
である。
【0179】勿論、この様な問題点はCPU511の計
算容量とも密接に関係しているため、計算容量を大きく
することによって係る問題点の発生を抑制することも可
能である。しかし、汎用的なCPU511を用いても該
問題点を生じさせない様なフレシキブルな解決方法が求
められるのである。
【0180】そこで本発明では、係る解決方法として、
改良g法が適用される。以下、改良g法に於ける各ステ
ップを、図10〜図12に基づき説明する。
【0181】尚、本実施例では、特定領域を定めるΔθ
の値は3deg.〜10deg.の範囲内で選択されて
いる。勿論、このΔθの設定可能範囲は、上記範囲に限
定されるものではない。即ち、設計者は、CPU511
の計算容量や量x0 ,y0 の値等を考慮しながら、Δθ
の値を任意に定めることができる。
【0182】 ステップS6B1 パラメータy0 が0近傍値か1近傍値かそれとも−1近
傍値か否かが判断される。即ち、パラメータy0 が、−
Δy01≦y0 ≦Δy01,1−Δy02≦y0 ≦1+Δy02
又は−1−Δy03≦y0 ≦−1+Δy03(Δy01,Δy
02,Δy03は1よりも十分に小さな値)の範囲内にある
か否かが判断される。本ステップもまた、計算精度の低
下による駆動量の誤差発生を回避するために適用可能な
改良g法のモードを選択するという意義を有する。尚、
Δy01,Δy02,Δy03もまた、CPU511の計算容
量を考慮して任意に定められる。
【0183】即ち、上記範囲内にパラメータy0 が存在
しないと判断された場合には、ステップS6B2の改良
g− cosδ法が適用される。しかし、パラメータy0
上記範囲内にあると判断された場合には、改良g− cos
δ法ではパラメータy0 の値による計算精度の低下が発
生するため、ステップS6B3の改良g− sinδが適用
される。以下、ステップS6B2の改良g− cosδ法か
ら説明することにする。
【0184】 改良g− cosδ法 図11は改良g− cosδ法の主要部分を示すフローチャ
ートであり、本図に基づき説明する。
【0185】−1 ステップS6B21 第1アーム22がZ軸のまわりに仮想的に旋回される。
このステップ自体はステップS63と同一である。
【0186】−2 ステップS6B22 ( cosδ)-1の4次方程式の解が算出される。即ち、特
定領域では、 cosδの逆数を変数とする4次方程式を導
出し、この4次方程式を解くことによって、天頂角θの
値による上記問題点が克服される。その様な4次方程式
は、
【0187】
【数71】 で表される新たな変数Xc ’について数15を変形する
ことにより得られる。即ち、導出すべき4次方程式は、
【0188】
【数72】 として与えられる。ここで、各係数A〜Dは、それぞれ
【0189】
【数73】
【0190】
【数74】
【0191】
【数75】
【0192】
【数76】 として表される。
【0193】数73〜数76より明白な通り、各係数A
〜Dの分母には正弦Sδが含まれていない。従って、天
頂角θが特定領域内の値であっても、CPU511の動
作がオーバーフローすることはない。即ち、天頂角θが
0deg.又は180deg.に限りなく近くなるケー
スにおいても、正確に解Xc ’及び解Xc を算出するこ
とが可能となる。
【0194】尚、数72の解Xc ’の算出に当たって
も、数15と同様の方法(デカルト法)が適用される。
即ち、解Xc ’は、数21〜数24の関係式に基づき定
められるCPU511内のソフト処理により算出され
る。
【0195】−3 ステップS6B23 本ステップでは、前記ステップS6B22で求められた
解Xc ’に基づき、余弦Cδの値が求められる。余弦C
δは、数77により算出される。
【0196】
【数77】
【0197】−4 ステップS6B24 改良g法においても同様に、余弦Cδの値を用いて数1
1より正弦Sδが算出される。
【0198】 改良g− sinδ法 パラメータy0 が0近傍値の場合には、数11より明ら
かな様に正弦Sδを正確に算出することができない。
又、パラメータy0 が1近傍値か又は−1近傍値の場合
には、数73〜数76より明らかな様に、余弦Cδを正
確に算出することができない。従って、本ケースでは、
改良g− sinδ法を適用することにより、天頂角θによ
る上記問題点とパラメータy0 による上記問題点とを同
時に解決するものである。以下、図12に基づき、改良
g− sinδ法の主要部を説明する。
【0199】同図に示す様に、第1アームの仮想的旋回
の想定(ステップS6B31)に基づき、正弦Sδの逆
数に関する4次方程式の解が求められる(ステップS6
B32)。この4次方程式は、数78で表される関係式
を用いて正弦Sδに関する4次方程式(数58)を変形
することにより導出される。即ち、正弦Sδの逆数に関
する4次方程式は数79として与えられる。
【0200】
【数78】
【0201】
【数79】
【0202】ここで各係数A’〜D’は、それぞれ数8
0〜数83により表される。
【0203】
【数80】
【0204】
【数81】
【0205】
【数82】
【0206】
【数83】
【0207】本4次方程式についても同様にデカルトの
方法を適用することができ、解XS1’〜XS4’をソフト
処理により求めることが可能となる。しかも、各係数
A’〜D’はパラメータy0 をその分母に含んでいない
ため、本ソフト処理はパラメータy0 の値による影響を
受けることはない。
【0208】次にステップS6B33では、本来求める
べき正弦Sδの値が数84に基づき算出される。
【0209】
【数84】
【0210】更にステップS6B34では、数63に基
づき余弦Cδの値が算出されるが、同様に、本ステップ
もパラメータy0 の値による影響を受けることはない。
【0211】 ステップS66〜S68 改良g− cosδ法又は改良g− sinδ法により余弦Cδ
及び正弦Sδの値が求められた後は、同様に交差角δが
算出され(ステップS66)、更に旋回角Θが算出され
る(ステップS67〜S68)。
【0212】(C−6−4) ステップS69 i) 旋回角Θの厳密解が求められたので、該厳密解を
座標変換式(数37〜数39)に代入することにより、
第2のアーム22のXY平面内の並進量xs 及び軸A2
まわりの回転角αが求められる。これらの算出は、次の
様にして行われる。
【0213】即ち、pzm=z0 であるから、数39及び
数50より、
【0214】
【数85】
【0215】であり、又、数6は
【0216】
【数86】
【0217】で表わされる。従って、数85及び数86
より
【0218】
【数87】
【0219】となる。
【0220】一方、数37及び数38より並進自由度x
s は、
【0221】
【数88】
【0222】により求められる。又、数88を数37に
代入すれば、
【0223】
【数89】
【0224】が得られる。よって、角度αは、数87及
び数89より導かれる数90により決定される。
【0225】
【数90】
【0226】ii) 次に、第2アーム22のZ軸方向
への並進自由度zs と軸A3のまわりの回転角βとが決
定される。即ち、並進自由度zs は数50及び数85に
より決定され、回転角βは、数31〜数33より導かれ
る数91又は数92により決定される。
【0227】
【数91】
【0228】
【数92】
【0229】以上のステップにより、逆変換の解、即
ち、各アームの駆動量Θ,xs ,zs,α,βが全て厳
密に決定されたことになり、g− cosδ法によるステッ
プS6は終了する。
【0230】(C−7) ステップS7 ステップS6で決定された各アームの駆動量Θ,xs
s ,α,βはそれぞれ、駆動信号D1 ,D2 ,D3
4 ,D5 に変換される。この変換処理は、CPU51
1により行われる。そして、各駆動信号D1 〜D5 は、
データバス57を介して各駆動機構531〜535に伝
達される。
【0231】一方、各駆動機構531〜535は各駆動
信号D1 〜D5 に応じた量だけ各アームを駆動する。そ
の結果、トーチ40の先端はステップS5の計算により
求められた補間点Pijへ移動する。その際のトーチ40
の先端の位置及び姿勢は、勿論その補間点Pijにおける
補間データXijと厳密に一致する。従って、トーチ40
の先端より溶接部に向けて発射されたレーザビームLB
は、その前の補間点Pij-1と目標の補間点Pij間をワー
ク線に沿って正確に移動することとなる。
【0232】(C−8) ステップS8 本ステップでは、その補間点Pijが最後の補間点か否か
が判断される。尚、その判断はソフト的にコントローラ
51によって行われる。そして、補間点Pijが最後の補
間点でないと判断されたときにはステップS5へ戻り、
次の補間点Pij +1の補間データXij+1が計算され、一連
のステップS6〜S8が同様に行われる。
【0233】それに対して、補間点Pijが最後の補間点
であると判断されたときには、ステップS9へと進めら
れる。
【0234】(C−9) ステップS9 本ステップでは、ティーチング点Pi が最後のティーチ
ング点か否かが判断される。この判断も又、コントロー
ラ51によって行われる。そして、ティーチング点Pi
が最後のティーチング点でないと判断されたときにはス
テップS4へ戻り、次のティーチング点Pi+1 のティー
チングデータXi+1 が読出され、一連のステップS5〜
S9が再び行われる。
【0235】それに対して、ティーチング点Pi が最後
のティーチング点であると判定されたときには、レーザ
溶接ロボットRBの全ての動作が終了する。
【0236】以上の説明から明らかな通り、本実施例の
ポイントは、次の様に理解される。即ち、幾何学的に想
定された角度δ(交差角)という概念を導入し、特定領
域外では余弦Cδの4次方程式の厳密解をソフト的に処
理する。但し、バラメータy0 の値によっては余弦Cδ
に代えて正弦Sδを選択し、正弦Sδの4次方程式の厳
密解をソフト的に処理する。一方、特定領域内では余弦
Cδの逆数の4次方程式の厳密解をソフト的に処理す
る。但し、バラメータy0 の値によっては同様に正弦S
δを選択し、正弦Sδの逆数の4次方程式の厳密解をソ
フト的に処理することとする。これらの方法により、ト
ーチの移動点の全てについて、近似することなく厳密に
しかも簡単に逆変換を行えるようにした点である。
【0237】なお、参考として、既述解析による逆変換
アルゴリズムの流れを図20(g法)及び図21(改良
g法)に示す。両図において、カッコ付きの数字は上記
説明中において用いられた数式の番号を示している。ま
た、(*)印はティーチングデータから直ちに得られる
X系の量であり、(**)印は逆変換によって求めるべ
きα系の量を示している。
【0238】D.変形例 (D−1) その1 以上のレーザー溶接ロボットRBでは、基本的には、特
定領域外では余弦Cδに関する4次方程式の解を算出す
ることにより(g− cosδ法)、特定領域内では余弦C
δの逆数に関する4次方程式の解を算出することにより
(改良g− cosδ法)、各アームの駆動信号D1 〜D5
が決定されていた。但し、パラメータy0 が0近傍値,
1近傍値乃至は−1近傍値の場合には、g− sinδ法や
改良g−sinδ法を選択的に用いていた。
【0239】しかし、正弦Sδを基本としてg法及び改
良g法を展開することも可能である。即ち、特定領域外
では正弦Sδに関する4次方程式の解より駆動信号D1
〜D5 を決定し、特定領域外では正弦Sδの逆数に関す
る4次方程式の解より駆動信号D1 〜D5 を決定するこ
とができる。この場合には、パラメータy0 の値を考慮
する必要がなく、天頂角θが特定領域内か否かを考慮す
れば足りるという利点がある。尚、この場合の特定領域
もまた、0deg.≦θ≦(0deg.+Δθ),(180deg.
−Δθ)≦θ≦180deg.である。
【0240】その様な正弦Sδを基本としたg法及び改
良g法を用いた制御方法を、図13及び図14に示す。
但し、本制御方法と図5及び図6で示された制御方法と
の相違点は、X系からα系への逆変換のステップ(S
6)の部分だけのみである。従って、図13及び図14
には、図5のステップS6に対応するステップのみが示
されている。
【0241】尚、本変形例に於ける電気的及び機械的構
成もまた、上述レーザー溶接ロボットRBにおける構成
と同一である。
【0242】 ステップS6C1 天頂角θが特定領域内に有るか否かが判断される。
【0243】 ステップS6C2〜S6C3 天頂角θが特定領域内であると判断された場合には、g
− sinδ法が適用され、正弦Sδが先ず算出される。
【0244】 ステップS6C4 特定領域内においては、改良g− sinδ法が適用され
る。改良g− sinδ法の詳細を図15に示すが、内容は
既述した通りである。
【0245】 ステップS6C5〜S6C9 g− sinδ法または改良g− sinδ法により算出された
正弦Sδの値より、余弦Cδの値が算出される。更に、
交差角δが算出される。その後、旋回角Θを始めとして
各駆動量が算出されるが、これらのソフト処理も既述し
た通りである。
【0246】以上述べた様に、本変形例では、特定領域
内では正弦Sδの逆数を算出することにより、特定領域
外では正弦Sδを算出することにより、全ての点Pi
点Pijにおいて各駆動量を正確に決定することができ
る。
【0247】(D−2) その2 前述した各実施例では、トーチを移動すべき点が特定領
域内にあると判断された場合にのみ、改良g法が適用さ
れていた。しかし、トーチを移動すべき点が特定領域内
のみならず特定領域外にある場合にも、改良g法を適用
することも可能である。
【0248】 改良g− sinδ法を適用する場合 天頂角θの全範囲にわたって改良g− sinδ法を適用す
る。この場合には、天頂角θが90°近傍となる場合及
びCθ3 2 =x0 2 を満足する角度近傍となる場合を除
いて、既述した特定領域という概念が存在しないことと
なる。この点に関しては、数65〜数68の各係数A〜
Dの分母を参照することによって理解することができ
る。
【0249】その様なステップS6Dを例示したのが、
図16のフローチャートである。図16もまた、図5の
ステップS6に相当するステップのみを示しており、本
変形例は図7のステップS6からステップS61及びS
62を除いた制御方法に相当している。本変形例では、
天頂角θの値によってg法と改良g法とを使い分ける必
要がなく(上記例外を除く。)、しかもパラメータy0
の値をも考慮する必要がないため、駆動量決定の手順を
簡易化できる効果がある。
【0250】 改良g− cosδ法を主として適用する
場合 改良g− cosδ法を主として適用する場合を図17のス
テップS6Eに示す。本変形例でも既述した特定領域と
いう概念はなく、天頂角θの値によってg法と改良g法
とを使い分ける必要はない。
【0251】しかし、パラメータy0 の値により改良g
− cosδ法と改良g− sinδ法とを使い分ける必要が生
じ、本変形例は改良g− sinδ法と改良g− cosδ法と
の併用型となる。即ち、パラメータy0 が0近傍値か1
近傍値か、又は−1近傍値となる場合には改良g− sin
δ法を適用することとし(ステップS6E2)、パラメ
ータy0 が上記範囲外である限りは、改良g− cosδ法
を適用して交差角δを算出するものである(ステップS
6E3)。
【0252】(D−3) その3 特定領域内では改良g− cosδ法を基本的に用い、
特定領域外ではg− sinδ法を基本的に用いることもで
きる。
【0253】 逆に、特定領域内では改良g− sinδ
法を基本的に用い、特定領域外ではg− cosδ法を基本
的に用いることもできる。
【0254】尚、既述制御方法に於いて用いられた改良
g法とg法との組合せ及び改良g法同士の組合せを、図
22に示す。同図に於いて、No.1は図7〜図12に
示した方法であり、No.2は変形例(D−1)であ
り、No.2〜No.4はそれぞれ変形例(D−2)
、を示している。又、No.5〜No.6はそれぞ
れ変形例(D−3)、を示している。
【0255】(D−4) その4 ところで、上記実施例ではXY平面へのトーチ40
の射影がX軸に平行となるような状態を想定した。しか
し、X軸とY軸とを相互に入れ換えて定義したときに
は、上記射影がY軸に平行となるような仮想的状態を想
定してもよいことになる。
【0256】 また、図20及び図21から理解され
るように、仮想的φ回転は演算プロセスの途中に現われ
るのみであって、最終的にはその仮想的φ回転を行なっ
ていない現実の状態についてのα系の値が、コントロー
ラ内のCPUによって求めらる。したがって、上記各式
を組合せることによって、仮想的φ回転に対応して現わ
れてくる量(例えば仮想的な旋回角Θ′)を消去した式
を作れば、その式中には仮想的φ回転に関する量は現れ
ないこととなる。つまり、この場合には途中のプロセス
として仮想的φ回転を行わない演算式が得られるのであ
り、その様な演算式に基づいてα系の各値を求めること
が可能となる。即ち、このような変形もこの発明の範囲
に含まれる。しかも角度δはスカラー量であって座標軸
の回転の影響を受けない。従ってこの様な場合に於いて
も、Cδ若しくはSδについての4次方程式の解、又は
Cδの逆数若しくはSδの逆数についての4次方程式の
解より、角度δを決定することが可能となる。
【0257】 上記実施例では余弦Cδと正弦Sδと
を求めた上で、交差角δの値を求めていた。しかし、余
弦Cδから、又は正弦Sδから直接的に交差角δの値を
求めても良い。
【0258】(D−5) その5 この発明は、以上説明したレーザー溶接ロボットRB等
に限らず、図2に示す座標系と等価な構成を有する円筒
座標ロボット全般について適用できるものである。即
ち、図2に示したXYZ座標系を座標変換して得られる
新たなXYZ座標系を有する円筒座標ロボットに関して
も、本制御方法を適用することが出来る。
【0259】その様な一例を示したのが、図23及び図
24に記載されたレーザー溶接ロボットRB1である。
ここで図24は、レーザー溶接ロボットRB1のα系を
示す模式図であり、図23に示したレーザー溶接ロボッ
トRB1を同図の矢印ARの方向から眺めた側面図に対
応している。本ロボットRB1の構成を概観すれば、次
の通りである。
【0260】XY平面に平行なロボット設置面10’に
は第1アーム21’が垂直に設置されており、第1アー
ム21’自身が有する駆動機構(図示せず)の駆動力を
受けて第1アーム21’は、ガイド12に沿ってX方向
に並進運動する(第1軸、駆動量xs )。尚、第1アー
ム21’にはジャバラ機構13が設けられている。
【0261】又、第1アーム21’の一面に取り付けら
れた第2アーム22’は、自身が有する駆動機構(図示
せず)の駆動力を受けてY方向に並進運動するとともに
(第3軸、駆動量ys )、点M’を旋回中心としてYZ
平面内を旋回運動する(第2軸、旋回角Θ)。従って、
第2アーム22’は、第1アーム21’に対して直接的
にYZ平面内に旋回自由度を有しているものと言える。
【0262】更に第3アーム23’は、第4軸と第5軸
とによる回転運動を有している(回転角α、β)。
【0263】以上の構成より、本ロボットRB1は、図
1のロボットRBを図2のX軸のまわりに90度回転し
た構成に対応していることが理解される。その様な座標
変換を図25に示す。尚、図25(a)は図2のXYZ
座標系のX軸まわりの回転を示しており、同図(b)は
回転後の座標系を本ロボットRB1のデカルト座標系と
して適用した場合を示している。本図に示される通り、
本ロボットRB1のX軸、Y軸、Z軸はそれぞれ、図2
のZ軸、X軸、Y軸に対応している。従って、本ロボッ
トRB1の旋回角Θは図2の旋回角Θに対応しており、
本ロボットRB1にg法又は改良g法を適用した場合に
は、第2アーム22’をX軸の周りに仮想的に旋回する
こととなる。この点は、図1のロボットRBと異なる点
である。
【0264】ここで、本ロボットRB1に於ける逆変換
の方法の一例を図27及び図28に示す。このステップ
S6Fは、図7,図8のステップS6に対応している。
尚、図7,図8で示した方法(プログラム)をそのまま
使用して先ず図1、図2に適応した各駆動量を決定して
おき、その後、これらの駆動量を図25の座標変換に従
って変換することにより、本ロボットRB1に適応した
駆動量(xs ,ys ,Θ,α,β)を決定することもで
きる。この場合には、ロボットの軸構成が変わる毎にプ
ログラムを改めて構築する必要がなくなり、一つのプロ
グラムに簡単な座標変換用のプログラムを付加するだけ
で足りるという利点がある。
【0265】更に、本ロボットRB1に於けるトーチ4
0の姿勢角を図26に参考として示す。
【0266】
【発明の効果】
(1) 請求項1記載の発明によれば、角度δの正弦又
は余弦の逆数の4次方程式を解き、角度δと旋回角Θと
の位置関係より旋回角Θを厳密に求め、この旋回角Θの
値を用いて順次残りの各アームの駆動量をも厳密に求め
ることができる。即ち、本発明は、エンドエフェクタ先
端の位置決めを誤差なく正確に行うことができる効果が
ある。
【0267】請求項2記載の発明によれば、エンドエフ
ェクタの先端の姿勢に応じて旋回角Θを厳密に求めるこ
とができ、順次残りの各アームの駆動量をも厳密に求め
ることができる。従って、本発明もまた、エンドエフェ
クタ先端の位置決めを誤差なく正確に行うことができ
る。
【0268】(2) 更に請求項1及び請求項2記載の
発明によれば、角度δに関して成立する4次方程式の解
の形式は定まっているので、上記4次方程式を解くステ
ップを系統的に処理することができる。従って、各アー
ムの駆動制御を短時間で行える効果もある。
【0269】(3) 尚、次の様な実施例特有の効果が
ある。即ち、第1のアームをZ軸のまわりに角度φだけ
旋回することによりエンドエフェクタのXY平面への射
影がX軸と平行になる様な仮想的な状態が導入されてい
るので、角度δの正弦又は余弦の4次方程式及び角度δ
の正弦又は余弦の逆数の4次方程式を簡単な形にするこ
とができ、厳密な旋回角Θの値を容易に決定することが
できる効果がある。
【図面の簡単な説明】
【図1】この発明の一実施例であるレーザ溶接ロボット
の機械的構成を示す斜視図である。
【図2】この発明の一実施例であるレーザ溶接ロボット
の機械的構成を示す模式的側面図である。
【図3】トーチの先端の位置及び姿勢を示す説明図であ
る。
【図4】レーザ溶接ロボットの制御系の電気的構成を示
すブロック図である。
【図5】レーザ溶接ロボットを駆動制御するためのステ
ップを示すフローチャートである。
【図6】レーザ溶接ロボットを駆動制御するためのステ
ップを示すフローチャートである。
【図7】X系からα系への逆変換のステップを詳細に説
明するフローチャートである。
【図8】X系からα系への逆変換のステップを詳細に説
明するフローチャートである。
【図9】逆変換に於けるg− sinδ法のステップを詳細
に説明するフローチャートである。
【図10】逆変換に於ける改良g法のステップを説明す
るフローチャートである。
【図11】逆変換に於ける改良g− cosδ法のステップ
を詳細に説明するフローチャートである。
【図12】逆変換に於ける改良g− sinδ法のステップ
を詳細に説明するフローチャートである。
【図13】この発明の他の実施例に於ける逆変換のステ
ップを詳細に説明するフローチャートである。
【図14】この発明の他の実施例に於ける逆変換のステ
ップを詳細に説明するフローチャートである。
【図15】この発明の他の実施例に於ける改良g− sin
δ法のステップを詳細に説明するフローチャートであ
る。
【図16】この発明の更に他の実施例に於ける逆変換の
ステップを詳細に説明するフローチャートである。
【図17】この発明の更に他の実施例に於ける逆変換の
ステップを詳細に説明するフローチャートである。
【図18】位置関係を明確化するための立体図である。
【図19】XZ平面への射影を示す説明図である。
【図20】g法における逆変換アルゴリズムの流れを示
す説明図である。
【図21】改良g法における逆変換アルゴリズムの流れ
を示す説明図である。
【図22】g法と改良g法との組合せ及び改良g法同士
の組合せを示す説明図である。
【図23】この発明の更に他の実施例であるレーザ溶接
ロボットの機械的構成を示す斜視図である。
【図24】この発明の更に他の実施例であるレーザ溶接
ロボットのα系を示す説明図である。
【図25】座標変換を示す説明図である。
【図26】トーチ40の姿勢角を示す説明図である。
【図27】この発明の更に他の実施例であるレーザ溶接
ロボットの逆変換のステップを詳細に説明するフローチ
ャートである。
【図28】この発明の更に他の実施例であるレーザ溶接
ロボットの逆変換のステップを詳細に説明するフローチ
ャートである。
【符号の説明】
RB レーザ溶接ロボット 10 ロボットの設置面 21 第1のアーム 22 第2のアーム 23 第3のアーム 31 第2のアームの先端部 32 第3のアームの先端部 40 トーチ A1 第1のアームの軸 A2 第2のアームの軸 A3 第3のアームの軸 A4 トーチの軸
───────────────────────────────────────────────────── フロントページの続き (72)発明者 黒田 俊英 兵庫県西宮市田近野町6番107号 新明和 工業株式会社開発技術本部内 (72)発明者 藤長 茂樹 兵庫県西宮市田近野町6番107号 新明和 工業株式会社開発技術本部内 (72)発明者 笠井 増雄 兵庫県西宮市田近野町6番107号 新明和 工業株式会社開発技術本部内 (72)発明者 武内 清 兵庫県西宮市田近野町6番107号 新明和 工業株式会社開発技術本部内 (72)発明者 美藤 龍平 兵庫県宝塚市新明和町1番1号 新明和工 業株式会社産業機械事業部内

Claims (2)

    【特許請求の範囲】
  1. 【請求項1】 ロボット設置面に略垂直に設置された第
    1アームと、前記第1アームに結合して前記ロボット設
    置面に略平行な平面内に並進自由度を有するとともに、
    前記第1アームに対して定まる所定の平面内に直接的又
    は間接的に旋回自由度を有する第2アームと、前記第2
    アームの先端部に略直角に結合して前記第2アームの軸
    方向まわりの回転自由度とそれ自身の軸まわりの回転自
    由度とを有する第3アームと、前記第3アームの先端部
    に略直角に結合したエンドエフェクタとを有する円筒座
    標ロボットの駆動制御方法であって、 (a) 前記エンドエフェクタの先端の位置及び姿勢を
    指定するステップと、 (b) 前記エンドエフェクタの軸を含み且つ前記所定
    の平面に垂直な平面が前記エンドエフェクタの軸方向を
    法線方向とする平面と交差する際の交線と前記第3アー
    ムの軸方向とのなす角度の余弦の逆数、又は前記角度の
    正弦の逆数のうち、いずれかを選択するステップと、 (c) 前記ステップ(b)で選択された逆数を変数と
    する4次方程式の解を算出するステップと、 (d) 前記4次方程式の解より前記位置及び姿勢に対
    応する前記角度の値を求めるステップと、 (e) 前記角度の値を用いて前記第1、第2及び第3
    アームの各駆動量を決定するステップと、 (f) 前記駆動量に応じた駆動出力をそれぞれ前記第
    1、第2及び第3アームの各駆動機構に与えることによ
    り前記第1、第2及び第3アームの駆動を行うステップ
    とを備えた円筒座標ロボットの駆動制御方法。
  2. 【請求項2】 ロボット設置面に略垂直に設置された第
    1アームと、前記第1アームに結合して前記ロボット設
    置面に略平行な平面内に並進自由度を有するとともに、
    前記第1アームに対して定まる所定の平面内に直接的又
    は間接的に旋回自由度を有する第2アームと、前記第2
    アームの先端部に略直角に結合して前記第2アームの軸
    方向まわりの回転自由度とそれ自身の軸まわりの回転自
    由度とを有する第3アームと、前記第3アームの先端部
    に略直角に結合したエンドエフェクタとを有する円筒座
    標ロボットの駆動制御方法であって、 (a) 前記エンドエフェクタの先端の位置及び姿勢を
    複数指定するステップと、 (b) 前記姿勢が予め定められた特定領域内に有るか
    否かを判断するステップと、 (c) 前記姿勢が前記特定領域内に有る場合には、 前記エンドエフェクタの軸を含み且つ前記所定の平面に
    垂直な平面が前記エンドエフェクタの軸方向を法線方向
    とする平面と交差する際の交線と前記第3のアームの軸
    方向とのなす角度の余弦の逆数、又は前記角度の正弦の
    逆数のうち、いずれかを選択し、 選択された逆数を変数とする4次方程式の解を算出する
    とともに、 当該4次方程式の解より前記位置及び姿勢に対応する前
    記角度の値を求めるステップと、 (d) 前記姿勢が前記特定領域外に有る場合には、 前記角度の余弦、又は前記角度の正弦のうち、いずれか
    を変数に選択し、 前記変数に関する4次方程式の解を算出するとともに、 当該4次方程式の解より前記位置及び姿勢に対応する前
    記角度の値を求めるステップと、 (e) 前記角度の値を用いて前記第1、第2及び第3
    アームの各駆動量を決定するステップと、 (f) 前記駆動量に応じた駆動出力をそれぞれ前記第
    1、第2及び第3アームの各駆動機構に与えることによ
    り前記第1、第2及び第3アームの駆動を行うステップ
    とを備えた円筒座標ロボットの駆動制御方法。
JP9886092A 1992-02-27 1992-03-24 円筒座標ロボットの駆動制御方法 Expired - Lifetime JP2923713B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP7858392 1992-02-27
JP4-78583 1992-02-27

Publications (2)

Publication Number Publication Date
JPH05303418A true JPH05303418A (ja) 1993-11-16
JP2923713B2 JP2923713B2 (ja) 1999-07-26

Family

ID=13665934

Family Applications (1)

Application Number Title Priority Date Filing Date
JP9886092A Expired - Lifetime JP2923713B2 (ja) 1992-02-27 1992-03-24 円筒座標ロボットの駆動制御方法

Country Status (1)

Country Link
JP (1) JP2923713B2 (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11514599A (ja) * 1995-10-30 1999-12-14 コンピュークラフト リミテッド 電気溶融サドルカプラならびに電気溶融サドルカプラ製造方法および装置
JP2009142903A (ja) * 2007-12-11 2009-07-02 Denso Wave Inc ロボット制御装置
JP2011131362A (ja) * 2009-12-25 2011-07-07 Kawasaki Heavy Ind Ltd 7軸多関節ロボットの制御方法及び制御プログラム
CN103862474A (zh) * 2012-12-12 2014-06-18 北京赛佰特科技有限公司 机器人关节初始参数的辨识方法
CN103909521A (zh) * 2013-01-07 2014-07-09 北京赛佰特科技有限公司 利用托盘对角线辨识码垛机器人关节初始参数的方法

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11514599A (ja) * 1995-10-30 1999-12-14 コンピュークラフト リミテッド 電気溶融サドルカプラならびに電気溶融サドルカプラ製造方法および装置
JP2009142903A (ja) * 2007-12-11 2009-07-02 Denso Wave Inc ロボット制御装置
JP2011131362A (ja) * 2009-12-25 2011-07-07 Kawasaki Heavy Ind Ltd 7軸多関節ロボットの制御方法及び制御プログラム
CN103862474A (zh) * 2012-12-12 2014-06-18 北京赛佰特科技有限公司 机器人关节初始参数的辨识方法
CN103909521A (zh) * 2013-01-07 2014-07-09 北京赛佰特科技有限公司 利用托盘对角线辨识码垛机器人关节初始参数的方法
CN103909521B (zh) * 2013-01-07 2016-08-10 北京赛佰特科技有限公司 利用托盘对角线辨识码垛机器人关节初始参数的方法

Also Published As

Publication number Publication date
JP2923713B2 (ja) 1999-07-26

Similar Documents

Publication Publication Date Title
EP1592536B1 (en) A method and a system for programming an industrial robot to move relative to defined positions on an object, including generation of a surface scanning program
US4594671A (en) Velocity method of controlling industrial robot actuators
EP0123214B1 (en) Operation teaching method and apparatus for industrial robot
US7571027B2 (en) Kinematic singular point compensation systems and methods
JP3207409B2 (ja) ロボットのツール姿勢制御方法
JP2008269316A (ja) 数値制御工作機械及び数値制御装置
US5765976A (en) Method of controlling the normal direction of the main shaft of the numerical control machine tool
JPH06131032A (ja) ロボット装置およびロボット装置のティ−チング方法。
JP2923713B2 (ja) 円筒座標ロボットの駆動制御方法
JPH07237158A (ja) 位置・姿勢検出方法及びその装置並びにフレキシブル生産システム
JP3380028B2 (ja) 力制御ロボットによるパイプ表面の倣い制御方法
JP2703767B2 (ja) ロボットの教示データ作成方法
JPH0746288B2 (ja) 手先視覚を持つロボットの制御方法とその装置
Baeten et al. Improving force controlled planar contour following using online eye-in-hand vision based feedforward
JP2750634B2 (ja) 円筒座標ロボットの駆動制御方法
JP2923712B2 (ja) 円筒座標ロボットの駆動制御方法
JPH08155647A (ja) 溶接ロボットのウィービング制御装置
JP2750635B2 (ja) 円筒座標ロボットの駆動制御方法
JP2001018182A (ja) ロボット機構較正演算方法及びシステム
JP3030565B2 (ja) ロボットの駆動制御装置
JPH0310781A (ja) 多関節型ロボット
JPH07132435A (ja) ロボット作業算出教示方法
JPH0512111B2 (ja)
JPH0724762A (ja) ロボット制御装置
JPH01121188A (ja) 自動工作機器の制御方法