JP2676721B2 - 多関節型ロボットの制御装置 - Google Patents

多関節型ロボットの制御装置

Info

Publication number
JP2676721B2
JP2676721B2 JP58128929A JP12892983A JP2676721B2 JP 2676721 B2 JP2676721 B2 JP 2676721B2 JP 58128929 A JP58128929 A JP 58128929A JP 12892983 A JP12892983 A JP 12892983A JP 2676721 B2 JP2676721 B2 JP 2676721B2
Authority
JP
Japan
Prior art keywords
vector
joint
robot
hand
arm
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.)
Expired - Lifetime
Application number
JP58128929A
Other languages
English (en)
Other versions
JPS6020876A (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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP58128929A priority Critical patent/JP2676721B2/ja
Publication of JPS6020876A publication Critical patent/JPS6020876A/ja
Application granted granted Critical
Publication of JP2676721B2 publication Critical patent/JP2676721B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Control Of Position Or Direction (AREA)
  • Numerical Control (AREA)
  • Manipulator (AREA)

Description

【発明の詳細な説明】 (発明の技術分野) 本発明は、多関節型ロボットの手先位置及び姿勢の制
御装置に関する。 (従来技術と問題点) 従来において、例えば、多関節型ロボットは第1図に
示すように複数個のアーム10,11,12,……と、各アーム
を連結する屈曲関節21,22,……と、アームに組み込まれ
た回転関節31,32,……と、アーム先端に取り付けられた
手先40からなる。この他にアームにスライド機構を組み
込んでアームの長さを可変にしたものもある。作業内容
はある位置で部品を把持し、それを他の位置へ運んでそ
こへ置く若しくは取り付ける等であるが、かかる運動に
必要な自由度は手先位置決定用に3軸、手先の姿勢制御
用に3軸、合わせて6軸である。第1図の例では屈曲関
節が21,22,23の3つ、回転関節が31,32,33の3つあるの
で6関節型であり、上記作業が可能である。 各関節にある屈曲または回転角を与えれば、それに応
じて手先の位置および姿勢が定まる。各関節の屈曲、回
転角を知って手先の位置、姿勢を求めるという方法がロ
ボットの1制御法であり、これとは逆に、先ず手先の位
置、姿勢を定め、かかる位置、姿勢にするのに必要な各
関節の屈曲、回転角を求めるという方法が、ロボットの
他の制御法である。前者は計算が比較的容易であり、各
アームの長さ、各関節の屈曲回転角、座標変換行列など
を用いて手先の位置、姿勢を求めることができる。以下
に、手先の位置、姿勢を求める方法について説明する。 第1図において、O0−x0y0x0はロボットに対して定義
された絶対座標系、Oi−xiyizi(1≦i≦6;以下同様と
する)は各関節およびハンドに定義された座標系であ
る。θ12345は、アームをX0軸方向に
ねじれなく真直ぐに伸ばしたときを初期状態(θi=
0)とする、つまり屈曲関節θ、θ、θの各回転
中心軸が平行に整列した状態の時、各回転関節θ、θ
、θが回転していてもそれらの回転角度を0゜とし
て扱い、同時に各屈曲関節の回転角度を0゜とする、各
関節の回転角度を表し、L1,L2,L3+L4,L5+L6は、それ
ぞれ腰の高さを示すアーム10の長さ(回転関節31の上下
両側のアームを含む長さ)、上腕のアーム11の長さ、前
腕のアーム12の長さ、手首からハンドの根本までのアー
ム13の長さを表す。 手先の位置・姿勢のベクトルを (ここで、「α,β,γ角」=「オイラー角」であり、
は転置ベクトルを意味する。なお「オイラー角」の定
義は“合田周平、木下源一郎共著「ロボット工学」(コ
ロナ社,昭和52年8月10日発行)第159頁”の記載に従
い、絶対座標系であるO0−x0y0z0に対して姿勢ベクトル
がなす角をオイラー角としている)と表すと、関節角ベ
クトルΘ=(θ12345が与えられ
た時、 の値は次のようにして求められる。第2図にオイラー角
α,β,γを示す。Oi-1−xi-1yi-1zi-1からOi−xiyizi
への座標変換行列を とすると、Oi-1−xi-1yi-1zi-1でのある点の座標値を Oi−xiyiziでのそれを としたとき、 の関係が成り立つ。ここで は、次のような4×4行列である。 但し、Riは座標系の回転を表す3×3行列、 は座標系の平行移動を表す3次元ベクトル、 は3次元零ベクトルである。は次のようになる。 従って、O0−x0y0z0からO6−x6y6z6へのトータルな座
標変換行列 は、 と表されるから、絶対座標系O0−x0y0z0における手先の
位置 は、ハンドに定義された座標系O6−x6y6z6におけるその
位置を とすると、次のように計算される。 また、第2図に示すようにx0軸、y0軸、z0軸に対する
x6軸、y6軸、z6軸の方向余弦を順にH1,H2,H3とし、O6
x6y6z6の原点の座標値を とすると、前述した座標変換行列 とは、次の関係が成り立つ。 従って、絶対座標系O0−x0y0z0における手先の姿勢 を、ハンドに定義された座標系O5−x5y6z6の姿勢と同じ
であると定義することにより、α,β,γはオイラー角
の定義より、 と計算される。 以上のように、関節角ベクトルΘが与えられると、手
先の位置・姿勢ベクトル は一意に求めることができる。 しかしながら、ロボットの使用上からは後者の方法が
重要視される。 すなわち、ロボットにおいては、その動作指定は教示
データで行っている。 つまり、ティーチングボックス等を用い、またはロボ
ットの先端を持ってロボットを移動させ、各点の座標に
おける各アームの関節角を記憶させた後、この記憶させ
た教示データに基づいて、ロボットを動作させている。 しかしながら、このようなロボットのティーチング動
作は、時間がかかると共に、その操作は、大変煩わしい
という欠点がある。このため、近年、ロボットの動作指
定は、ロボット言語あるいは、CAD(Computer Aided De
sign)出力に応じて行おうとしている。 つまり、この出力は具体的な移動量だけの指令値であ
り、ロボットは、この指令値に応じた動作を行えること
が要求されている。しかしながら、この方法は、与えら
れた手先の位置、姿勢から各関節の回転角を求めなけれ
ばならず、計算が厄介である。 以下に、従来の手先の位置、姿勢のベクトルが与えら
れたときの各関節の回転角を行列を用いて求める方法に
ついて説明する。 前述したように、本発明ではオイラー角は絶対座標系
O0−x0y0z0で定義されるから、第1図に示すように、手
先の位置、姿勢ベクトル が与えられたとき、ハンドに定義された座標系の原点 は、次のように求められる。 オイラー角(α,β,γ)の定義より、絶対座標系O0
−x0y0z0におけるz0軸、y0軸、x0軸回りの回転の変換行
列は、順に である。 このとき、ハンドに定義された座標系O6−x6y6z6のX6
軸、Y6軸、Z6軸に対する方向余弦 となる。ここで、座標変換行列 とは、次の関係が成り立つ。 以上により、 が得られる。 上記得られた▲x0 6▼,▲y0 6▼,▲z0 6▼に関する
各式を用いて、各関節の関節角を求める。まず、 より第5関節に定義された座標系の原点 を求める。 これよりθは、 次に、 の第4列ベクトルは等値であるから、 これを変形して、次のようにする。 次に、の演算を行い、 を得る。 このに,を代入して を得る。 左辺に正弦・余弦の合成公式を適用して (ここで、φ=tan-1(Q/R)) ゆえに、θは、 また、,より、θは、 より得られる。 次に、X6軸に対するの第1列ベクトルは等値であるから、 次に、 cosθ×+sinθ×の演算を行い、 cos(α−θ)・cosβ= cos(θ+θ)・cosθ −sin(θ+θ)・cosθ・sinθ …… sin(θ+θ)×+cos(θ+θ)× sinβ・sin(θ+θ) +cos(α−θ)cosβ・cos(θ+θ) =cosθ … これより、θは、 θ=cos-1〔sinβ・sin(θ+θ) +cos(α−θ)・cosβ・cos(θ+θ)〕 次に、−sinθ×+cosθ×の演算を行い、 sin(α−θ)・cosβ=sinθ・sinθをに代入して sinβ・cos(θ+θ) −cos(α−θ)・cosβ・sin(θ+θ) =cosθ・sinθ これより、θは、 次に、 の第3行ベクトルの関係より、 次に、cosθ×−sinθ×の演算を行い、 cosβ・sin(θ−γ)= −cos(θ+θ)・sinθ 次に、sinθ×−cosθ×の演算を行い、 cosβ・cos(θ−γ)= cos(θ+θ)・cosθ・cosθ −sin(θ+θ)・sinθ これより、θは、 上述したように、θ〜θの計算は非常に厄介であ
り、ハードウェア化が困難であると共に、ソフトウェア
による処理時間が長大化するという欠点がある。また、
ハードウェア化したとしても専用化してしまい、他の関
節構成のロボットを作った時にこのハードウェアを利用
できないという欠点がある。 また関節型ロボットは6関節あれば手先の位置、姿勢
を所望通りにすることができるが、周囲に障害物があり
それは回避しながら任意の姿勢をとる、あるいは関節型
ロボットが2つあり、2本腕で強調動作をするなどの場
合には6関節では困難がある。これに対しては自由度を
更に増して、即ち冗長自由度を持たせた7関節型が有効
である。 (発明の目的) 本発明の目的は手先の位置、姿勢を所望通りにするた
めの各関節の屈曲、回転角を、ハードウェア化が容易で
計算機による演算時間が長大化することなく求めること
ができ、高速動作が可能で精度を向上し得る多関節ロボ
ットの制御方法を提供することにある。 (発明の構成) 本発明は複数個のアームを関節により連結して構成し
た多関節型ロボットの制御装置において、上位装置より
指示される前記複数個のアームのうちの手先の位置ベク
トル及び姿勢ベクトルに基づいて各アームの方向単位ベ
クトル及び各アームをそれぞれ含む複数の面の各法線単
位ベクトルを求めるベクトル算出手段と、前記方向単位
ベクトル及び前記法線単位ベクトルに基づいて各関節の
回転角を求める回転角算出手段と、前記求められた回転
角に応じて各関節を駆動する駆動手段とを具備してなる
ことを特徴とする。 (発明の実施例) 以下、本発明の多関節型ロボットの制御装置がその基
礎としている、多関節ロボットの制御方法の実施例を図
面を用いて詳細に説明する。 第3図は第1図に示す6関節型ロボットのベクトルの
定義を示す図である。第3図を用いてベクトルを用いた
関節角の算出方法について説明する。 (1)面ベクトルの導入による関節の拘束規約 第3図に示すように、各回転関節毎に対象とする面が
切り替わるので、回転関節の切れ目毎に、π123,
π面のように複数の面πiを設定し、各ベクトルを次の
ように定義する。 L1,L2,L3+L4,L5+L6:順に、腰の高さ、上腕の長さ、前
腕の長さ、手首からハンド根本までの長さ なお第3図において、 のベクトルはx6軸からずれた位置にあるが、これはロボ
ットのハンドにエアーガンやエアードライバーを取り付
けた場合、その先端位置がO6−x6y6z6の座標系から だけ平行移動した位置にあるからである。 (a)屈曲関節の拘束規約 第4図(a)に示すように屈曲関節は面を共有してい
るから、 と直交しているから、 また、関節角θkは次式で与えられる。 (b)回転関節の拘束規約 第4図(b)に示すように回転関節は軸を共有してい
るから、 と直交しているから、 また、関節角θkは次式で与えられる。 したがって、第3図に示す構成の6関節ロボットの場
合、 が求まれば、関節角ベクトルΘ=(θ1234
5を決定することができる。 (2)面ベクトル、方向ベクトルの決定条件 (a)面ベクトルと方向ベクトルの直交関係 上段に面ベクトル、下段に方向ベクトルを配置し、直
交しているベクトルを線で結んで表示した図を直交ダイ
ヤグラムと呼ぶ。第3図に示す構成の多完成ロボットの
場合、(1)で示した関節の拘束規約(,)を用い
て直交関係を摘出すると第5図に示す直交ダイヤグラム
となる。 (b)位置ベクトル と方向ベクトルの関係 (c)各アームの長さの規約 アームは回転関節、屈曲関節で連結して構成されてい
るから、各アームの長さは不変である。従って、 以上の3条件を用いて、面ベクトル、方向ベクトルを
決定する。 (3)関節角の導出(面ベクトル、方向ベクトルの決
定) (a)根本ベクトル は定義によって決められているベクトルであり、値は不
変である。 ここで、位置ベクトル は、第1図を用いて説明した、手先の位置、姿勢ベクト
が与えられたときのハンドに定義された座標系の原点 であり、 ハンドに定義された座標系における手先の位置 が与えられると、次式で求められる。 また、手先の姿勢ベクトル をハンドに定義された座標系の姿勢ベクトルと同じであ
ると定義しているので、 はオイラー角の定義から、 である。結果として は第3図のx6と同一の方向を持つ単位ベクトルとなり、 はy6と同一の方向を持つ単位ベクトルとなる。 (c)面ベクトル の決定 第3図に示すベクトル を導入する。 はπ面上に存在し、π面の法線ベクトルが である。そのためロボットの関節がどのように屈曲回転
しても、 と直交(直交ダイヤグラムは第5図に示す)している。
このベクトル は、次式で表される既知ベクトルである。 従って、 は次式で決定される。 (d)方向ベクトル の決定 前述した はπ面上にあるから、次のように表せる。 ここで、π面上に新たに、互いに直交するベクトル を定義する。 このとき、 を用いて表せる。 ,を,に代入して、 との内積を求めると A=L2a1+(L3+L4)・b1 …… 0=L2a2+(L3+L4)・b2 …… また、 であるから ,,より の係数を,に代入して、 が得られる。 (e) の決定 以上の を用いて関節角Θは決定される。 次に、第6図を用いて7関節型ロボットの場合につい
て説明する。第3図と比較すれば明らかなようにアーム
11にも回転関節を加えて屈曲関節3、回転関節4の7関
節としている。このロボットは人間の腕によく似た動作
を行うことができる。 図において、21,22,23は屈曲関節、31,32,33,34は回
転関節、 は夫々アーム10〜13の方向単位ベクトル、L1,L2+L7,L3
+L4,L5+L6は夫々アーム10〜13の長さ、θ〜θ
各関節の屈曲、回転(以下回転と称する)角、 はアームの手先40の目標位置、 は手先40の位置及び姿勢ベクトルである。 また、各回転関節毎に対象とする面が切り替わる(本
実施例の場合、屈曲関節は面が切り替わらないと定義し
て説明しているが、後で第7図(a)と共に説明するよ
うに面の定義の仕方により、屈曲関節毎に面が切り替わ
る)ので、回転関節の切れ目毎に、π1234
面とし、これらの法線ベクトルを とする。また、アーム11と12は腕と肘に相当するが、こ
れらのアーム及び屈曲関節21と23を結ぶ線分(このベク
トルをとする。 ベクトル は、不変ベクトルともいう)が構成する三角形の、 を軸とする傾斜角をη(η=0は関節22を上にして該三
角形がZ軸と整列した状態とする)とする。つまり第11
図(a)に示すように、ベクトル を軸としてθを右ネジの進む方向へ回転させたときの
回転角がηであり、このときの回転方向が回転角の増加
方向となる。第6図に示される構成のロボットでは、適
当な回転関節と屈曲関節の間のアームの長さを0にする
ことにより、ベクトル を軸にして関節22を回転させることができる。例えば第
6図において、回転関節θと屈曲関節θの間のアー
ムの長さを0として2自由度運動機構とすればよく、同
様にθとθの間あるいはθとθの間の各アーム
の長さを0にすれば、θは第11図(b)に示すように
ベクトル を軸にして回転することができる。 このロボットではアーム10の始端は直交座標軸の原点
0に固定され、アーム10は上向き(Z軸方向)に固定さ
れている。従って方向単位ベクトル 面πの法線単位ベクトル であり、アーム10をベクトル表示すると となる。 ここで との関係を第7図で説明するに、第7図(a)は屈曲関
節24,25が90゜方向を変えてアーム14〜16に取り付けら
れた例を示し、アーム14と15はπ面に、アーム15と16
はπ面にあるとしている。屈曲関節ではアーム例えば
14,15のなす角に拘わらず、該アーム14,15は同じ平面上
にあるから面πとπは直交しており、従って面π6,
πの法線単位ベクトル の内積は0即ち、 である。また方向単位ベクトル は面πとπを共有しているから の関係もある。ここで などの添字5,6,……はi,j,……(これらは1,2,3,……の
1つ)と一般化できるものであり、この点は以下でも同
様である。関節24における屈折角θは で与えられる。第7図(b)は回転関節35と屈曲関節24
を用いた例で、アーム14はπ面にあり、アーム15と16
はπ面にあるとしている。この場合の方向単位ベクト
ルは に直交しているから である。関節35の回転角θは である。 第7図(c),(d)はスライド関節を示し、(c)
は平行スライド、(d)は一般スライドである。45はス
ライドを示す。平行スライドでは であり、アームの長さはスライド量だけ伸縮する。一般
スライドでは などは構造により定まる値をとる。 なお一般的には、面ベクトルや方向ベクトルからスラ
イド関節のスライド量を演算することはできない。しか
し、スライド関節のスライド量が、他の関節角θ12,
θとは独立に定められる条件、即ち,面ベクトルや方
向ベクトルを用いることなくスライド関節のスライド量
を定められるような条件がある場合、例えば、スカラー
型(水平多関節型)ロボットで水平方向にはスライド関
節がなく先端部分にのみ鉛直方向のスライド関節を持っ
ている場合などには、本発明をスライド関節を有するロ
ボットに適用することが可能にある。 方向単位ベクトル(方向ベクトルと略) と法線単位ベクトル(面ベクトルと略す) とは直交し、多関節型ロボットではこれらが継続して行
くことになる。この関係は第8図に示すように上段に面
ベクトル、下段に方向ベクトルを配置し、直交関係にあ
るベクトルを直線で結んで表すと、全体の関係が一目で
分かるようになる。第8図(a)は第6図のロボットを
例にとったものである。 に直交し、 に直交し……という関係が一目瞭然である。第8図
(b)は同図(c)のロボットの 関係図である。このロボットでは回転関節のないアーム
があり、また90゜向きを変えた屈曲関節25があるので 関係は複雑であるが、第8図(b)の関係図を画いてみ
ると、 は同一平面上にあり、また、 は同一平面上にあり、 は正規直交系を形成する。等が直ちに分かる。この第8
図の直交ダイヤグラムはロボットのアーム方向及び全関
節間の規約を全て表している。 再び第6図に戻ると、アーム10のベクトルは であり、同様な方法でアーム11〜13を表すと、ハンドに
定義された座標系の原点を表すベクトルは である。これはベクトル ηにほかならず(なお手先ベクトル はハンドに取り付けられた塗装用エアーガンやネジ締め
ドライバーなどの先端を示す)、ハンドに定義された座
標系を表す方向ベクトルは ハンドに定義された座標系を表す面ベクトルは であり、これらより各部の方向ベクトル を求めることができる。式で示すと次の如くなる。 ハンドに定義された座標系、姿勢、傾き角 結果として、 は第3図のx6と同一の方向を持つ単位ベクトルとなり、 はy6と同一の方向を持つ単位ベクトルとなる。 (ただしZ1は+1または−1をとる符号であり、詳細は
後述される。) を軸にして関節22が回転しπ面が回転したときのπ
面の回転につれて回転したπ面の法線ベクトル を与える。 ところで第6図の7関節ロボットは1冗長関節を含ん
でおり、このままでは解析的に解くことはできない。そ
こでここではηを外部から与えた。そしてθ=0のと
きη=0とし、このときの とした。従ってηは とのなす角即ちcosηとなる。 と直交するので またベクトル に垂直な は同一平面に存在するので、これより上述の が得られる。 ここで の演算中に導入されている符号Z1はロボットを円滑に動
かすために有効なもので後で説明する の演算中にもそれぞれZ2,Z3として導入されている。こ
れらの符号Z(Z1,Z2,Z3)はたとえば第7図(a)の24
の如き屈曲関節なら、この関節24の屈曲角をθとして θ=Z|θ| により求まり、また第7図(b)の35の如き回転関節な
らばこの関節の回転角をθとして θ=Z|θ| により求まる。ここでSingは、 との内積の符号のみをとることを示す。 と同方向または逆方向であり、従ってその内積には正、
負があり、この正、負はθの正、負を示している。 次に の演算におけるZ1の意味を説明する。前述したように、 であり、これについて第12図(a),(b),(c)に
示すθ>0、θ=0、θ<0の3つの場合を考え
る。なお説明を簡単にするために、第6図においてθ
=0゜、θ=0゜、θ=0゜とする。これにより第
12図(a)の場合 の方向はY0軸の方向と同一になりり、第12図(b)の場
となる。また第12図(c)の場合 は−Y0軸の方向と同一になる。 ここで、ロボットが第12図(a)の状態から第12図
(c)の状態へ連続的に動いた場合を想定すると、 の方向はY0軸の方向を向いていたものが急に−Y0軸方向
へ向いてしまう。ところでθ=0゜のとき であり、符号Z1を考える前の であるから、符号Z1を考慮しない 用いてθを求めると、 であり、第12図(a)の場合θ=0゜なので、 となり、 θ=cos-1(1)=0゜ となる。次に第12図(c)の場合を考える。θ=0
゜, なので、 になり、 θ=cos-1(1)=180゜ となってしまい、最初の仮定であるθ=0゜を満足す
ることができず、矛盾を起こす。これは制御を不安定に
する要因となり得る。 そこでこのようなことにならないように、第12図
(a)の始点の状態の符号を保存しておいて、ロボット
が連続動作しているときの の符号が変化した時点で符号を元に戻している。符号Z1
はこのために用いられ、第12図(a)の状態でZ1=1と
しておき、 とする。そして の符号が変化した時点でZ=−1とし、 とすることにより、上述した矛盾が起こらないようにす
る。また第12図(b)の状態は一般に特異点といわれる
状態であり、θηの解が不定となる。しかしこの場合は を予め一意に決定することにより回避することができ
る。 の演算 a1={A2+(L2+L7−(L3+L4}/2A(L2+L
7 b2=−a2・L2/L3 (ただしZ2,Z3は+1または−1をとる符号であり、詳
細は後述される。) ここでZ2の意味を説明する。説明を簡単にするため、
第6図においてθ=0゜、θ=0゜と仮定し、θ
については、第13図(a),(b),(c)に示すよう
にθ>0,θ=0,θ<0の3つの場合を考える。第
13図(a)の場合、 の方向はY0の方向(0,1,0)と同一となり、第13図
(b)の場合は、 そして第13図(c)の場合 の方向は−Y0軸の方向(0,−1,0)と同一になる。θ
のなす角であり、 であるから、ここでロボットが第13図(a)の状態から
第13図(c)の状態へ連続に動いた場合、 の方向はY軸方向から−Y軸方向に変わり、θは0゜
から180゜に急に変化して、θ=0゜とした最初の仮
定との矛盾が起こる。Z2はこの の符号が変わった時点で符号を元に戻し、矛盾が起こら
ないようにする。 次にZ3の意味を説明する。この場合も説明を簡単にす
るためθ=0゜と仮定し、θについて、第14図
(a),(b),(c)の3つの場合を考える。第14図
(a)では はY0軸方向を向き、第14図(b)では 第14図(c)では−Y0軸方向を向く。Z1,Z2の場合と同
様にロボットが第14図(a)の状態から第14図(c)の
状態へ動い場合、 の向きが変わり、θ=0゜とした仮定との矛盾が生じ
るのでこれを回避するためにZ3が用いられている。 Z1,Z2,Z3の意味については上述した通りであり、今用
いる所の符号Zを記憶しておいて次に進むべき所の符号
Zと比較し、符号が変化した場合のみZの符号を元の符
号に強制的に戻すものであるが、このようなZを用いて
符号を強制的に元に戻すことをしなかった場合にどうな
るかというと、一般のロボットでは、ロボットの操作者
によって与えられた目標の位置・姿勢に到達すべく,現
在いる位置・姿勢と目標位置・姿勢の間を50msecから10
0msec位(この時間間隔は、ロボットの制御計算機の能
力による)のサンプリング間隔で補間しながら移動する
が、符号が反転したことによって50msecから100msec位
の間に180゜近い関節の回転が要求されることになり、
現在あるモータの性能ではとても回転しきれない値とな
ってしまう。つまり高速制御性能に悪影響が生じる。 θiの演算 上記演算状況をみれば明らかなように、殆どが単純な
計算で済みsin,cosが入り組んだ複雑な式ではない。従
って解析は容易で、短時間で済む。 例えば、 のような外積演算、 のような内積演算と逆三角関数の組み合わせ演算がほと
んどであり、この部分をハードウェア化することによ
り、高速演算が可能である。また、この演算は、6関節
でも7関節ロボットでも共通した部分でこの部分をハー
ドウェア化してもこのハードウェアを汎用的に使うこと
が出来る。ロボットは最終位置、姿勢の指定だけでな
く、中間点も幾つか指定し、該中間的の間は補間すると
いう方法で所望の軌跡に沿った運動をさせるので、計算
量は膨大である。従って迅速に計算できる関係式でない
とロボットの動きは遅く、鈍くならざるを得ないが、こ
れを改善することができる。また計算が迅速に済めば中
間点を多数指定でき、予定の軌跡に沿った正確なロボッ
ト制御が可能になる。 第9図は、本発明にかかる多関節型ロボットの制御装
置の実施例を説明するブロック図であり、第10図は、6
関節型ロボットの場合の各関節角を求めるブロック図で
ある。 図において、50は上位装置からの指令値に基づいて、
各関節の方向単位ベクトル、法線単位ベクトルを求める
ベクトル算出手段、60はベクトル算出手段により求めら
れた各ベクトルに基づいて、各関節の関節角度θiを求
める回転角算出手段、70はロボットアーム80に回転角算
出手段60により求めた関節角度をとらせるための駆動手
段である。 (発明の効果) 以上説明したように本発明では手先の目標位置及び姿
勢ベクトルから各アームの方向ベクトルおよび面ベクト
ルを求め、これらより各関節の回転角を求めるようにし
たので、計算を容易、迅速になし得、ひいてはロボット
の動作を正確、迅速にすることができる。尚、本発明は
上記実施例に示す構成のロボットに限られるものではな
く、各種適用できることは云うまでもない。
【図面の簡単な説明】 第1図は6関節型ロボットの概略説明図、第2図はオイ
ラー角を説明するための図、第3図は第1図に示す関節
型ロボットのベクトルの定義を示す図、第4図、第7図
は方向ベクトルと面ベクトルの説明図、第5図、第8図
は直交ダイヤグラムの説明図、第6図は7関節型ロボッ
トのベクトルの定義を示す図、第9図、第10図、第11図
は、本発明の実施例を説明するための第12図,第13図,
第14図は符号Zの説明図である。 図において、10〜13はアーム、21〜23は屈曲関節、31〜
34は回転関節、 θ〜θは各関節の回転角、40は手先、50はベクトル
算出手段、60は回転角算出手段、70は駆動手段、80はロ
ボットアームである。
───────────────────────────────────────────────────── フロントページの続き (72)発明者 荒木 誠 川崎市中原区上小田中1015番地 富士通 株式会社内 (56)参考文献 特開 昭52−25365(JP,A) 特開 昭57−3102(JP,A) 特開 昭57−33989(JP,A) 「機械の研究」第25巻 第7号 (1973)第76〜80頁

Claims (1)

  1. (57)【特許請求の範囲】 1.複数個のアーム(10〜13,40)を関節(21〜23,31〜
    34)により連結して構成した多関節型ロボットの制御装
    置において、 上位装置より指示される前記複数個のアーム(10〜13,4
    0)のうちの手先(40)の位置ベクトル 及び姿勢ベクトル 根本ベクトル 及びこれらのベクトルより求めた外側屈曲関節間の不変
    ベクトル に基づいて各アームの方向単位ベクトル を求め、該不変ベクトル 及び該方向単位ベクトル に基づいて回転関節で区切られた各アームを夫々含む複
    数の面(π〜π)の各法線単位ベクトルを求めるベクトル算出手段(50)と、 前記方向単位ベクトル に基づいて各屈曲関節の回転角(θ23)を求
    め、前記法線単位ベクトル に基づいて各回転関節の回転角(θ146)を
    求める回転角算出手段(60)と、 前記求められた回転角(θ〜θ)に応じて各関節を
    駆動する駆動手段とを具備してなる多関節型ロボットの
    制御装置。
JP58128929A 1983-07-15 1983-07-15 多関節型ロボットの制御装置 Expired - Lifetime JP2676721B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP58128929A JP2676721B2 (ja) 1983-07-15 1983-07-15 多関節型ロボットの制御装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP58128929A JP2676721B2 (ja) 1983-07-15 1983-07-15 多関節型ロボットの制御装置

Publications (2)

Publication Number Publication Date
JPS6020876A JPS6020876A (ja) 1985-02-02
JP2676721B2 true JP2676721B2 (ja) 1997-11-17

Family

ID=14996882

Family Applications (1)

Application Number Title Priority Date Filing Date
JP58128929A Expired - Lifetime JP2676721B2 (ja) 1983-07-15 1983-07-15 多関節型ロボットの制御装置

Country Status (1)

Country Link
JP (1) JP2676721B2 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6270913A (ja) * 1985-09-24 1987-04-01 Kobe Steel Ltd 多関節型ロボツト装置
JP5190983B2 (ja) * 2007-11-27 2013-04-24 株式会社安川電機 ロボットシステム
JP5473060B2 (ja) * 2010-01-26 2014-04-16 株式会社ダイヘン 溶接用ロボット

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6038721B2 (ja) * 1975-08-20 1985-09-03 株式会社日立製作所 工業用ロボットの制後方法
JPS573398A (en) * 1980-06-06 1982-01-08 Nippon Electric Co Strobe flasher controlling circuit
JPH0230041B2 (ja) * 1980-06-09 1990-07-04 Daihen Corp Kogyoyorobotsutonoseigyosochi

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
「機械の研究」第25巻 第7号(1973)第76〜80頁

Also Published As

Publication number Publication date
JPS6020876A (ja) 1985-02-02

Similar Documents

Publication Publication Date Title
JP3207728B2 (ja) 冗長マニピュレータの制御方法
JP3655083B2 (ja) ロボットの位置決めを行うインタフェース装置
US4680519A (en) Recursive methods for world-to-joint transformation for a robot manipulator
JP2694669B2 (ja) ロボットの動作制御方法
EP0086950A1 (en) Method of controlling an industrial robot
JPH0820894B2 (ja) 産業用ロボツトの動作制御方法
KR20110041950A (ko) 여유자유도 제어를 이용한 로봇의 교시 및 재현 방법
CN106844951B (zh) 基于分段几何法求解超冗余机器人逆运动学的方法及***
JP2874238B2 (ja) 多関節形ロボットの制御方法
JP2676721B2 (ja) 多関節型ロボットの制御装置
JPH01267706A (ja) ロボットの制御方法
JPH0693209B2 (ja) ロボツトの円弧補間姿勢制御装置
JPH0553590B2 (ja)
JP4230196B2 (ja) 位置決め演算方法および位置決め演算装置
JP3206765B2 (ja) マスタスレーブマニピュレータの制御方法
JPH035605B2 (ja)
JPH08155647A (ja) 溶接ロボットのウィービング制御装置
KR102520793B1 (ko) 로봇의 모션 경로 블렌딩 방법 및 그 장치
JPH0310781A (ja) 多関節型ロボット
JP3402378B2 (ja) 7軸マニピュレータの制御方法
JPH0468646B2 (ja)
RU2725930C1 (ru) Комплекс копирующего управления манипуляторами антропоморфного робота
JPH07132474A (ja) マニピュレータ制御装置
JP2576176B2 (ja) ロボットの制御方法
Petrenko et al. Mathematical method of mapping configuration space for manipulator master-slave teleoperation