JPS59110581A - 多関節ロボツトの制御方法 - Google Patents
多関節ロボツトの制御方法Info
- Publication number
- JPS59110581A JPS59110581A JP22235482A JP22235482A JPS59110581A JP S59110581 A JPS59110581 A JP S59110581A JP 22235482 A JP22235482 A JP 22235482A JP 22235482 A JP22235482 A JP 22235482A JP S59110581 A JPS59110581 A JP S59110581A
- Authority
- JP
- Japan
- Prior art keywords
- arm
- robot
- joint
- obstacle
- interference
- 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.)
- Pending
Links
Landscapes
- Numerical Control (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
産業上の利用分野
この発明は多関節ロボットにおいて、動作時に凸平面よ
り構成される障害物(以下、凸障害物という)との干渉
のおそれのある場合、そのロボットの特性たとえばアー
ム長さ・アーム太さに合わせて、自動的にロボットを停
止させる方式に関するものである。
り構成される障害物(以下、凸障害物という)との干渉
のおそれのある場合、そのロボットの特性たとえばアー
ム長さ・アーム太さに合わせて、自動的にロボットを停
止させる方式に関するものである。
従来例の構成とその問題点
従来は多関節ロボットと、凸障害物の干渉を防ぐ方法と
して、ある定められた点から所定の点まで、ロボットを
人間が注意深く動かすことにより干渉を防きながら、動
作プログラムを作成していた。しかし、この様な方法で
は動作プログラムの作成に手間かかかるのみならず、オ
フラインで教示のだめの動作プログラムを作成して、実
際にロボットを動かす時、凸障害物との干渉の発生する
危険性を回避することは出来なかった。
して、ある定められた点から所定の点まで、ロボットを
人間が注意深く動かすことにより干渉を防きながら、動
作プログラムを作成していた。しかし、この様な方法で
は動作プログラムの作成に手間かかかるのみならず、オ
フラインで教示のだめの動作プログラムを作成して、実
際にロボットを動かす時、凸障害物との干渉の発生する
危険性を回避することは出来なかった。
発明の目的。
そこでこの発明は、凸障害物との干渉を動作時に自動判
定し、干渉のおそれのある場合は自動的にロボットを停
止させる手段を提供し、凸障害物とロボットが互いに干
渉しないようにすることを目的とする。
定し、干渉のおそれのある場合は自動的にロボットを停
止させる手段を提供し、凸障害物とロボットが互いに干
渉しないようにすることを目的とする。
発明の構成
この発明のロボットに示す様に、ロボットの特性、たと
えばアーム長さ、太さを入力する手段と、6障害物の端
点を入力する手段と、動作時各関節の回転角を測定する
手段と、アーム先端座標および各関節中心座標を計算す
る手段と、それらから6障害物への最小距離を計算し、
6障害物との干渉の可能を判定する手段と、判定結果よ
り、ロボットへ停止信号を出す手段より成り立っている
。
えばアーム長さ、太さを入力する手段と、6障害物の端
点を入力する手段と、動作時各関節の回転角を測定する
手段と、アーム先端座標および各関節中心座標を計算す
る手段と、それらから6障害物への最小距離を計算し、
6障害物との干渉の可能を判定する手段と、判定結果よ
り、ロボットへ停止信号を出す手段より成り立っている
。
実施例の説明
以下、この発明を第2図の実施例に基づいて詳述する。
第2図において、1は6軸よりなる多関節ロボット本体
である。
である。
第1軸は、Z軸回りに回転し、第2.3.4軸はy軸回
りに回転し、第5軸は、X軸回りに回転する。
りに回転し、第5軸は、X軸回りに回転する。
各アーム共、形状は、概略、円筒形状をしている。
7はロボット制御装置である。8は押ボタンSWの様な
入力装置であり、それらを押すことにより、多関節ロボ
ットの特性(アーム長・アーム太さ)が、又9は押ボタ
ンSWの様な入力装置であり、それらを押すことにより
、6障害物の端点が随時インタフェイス10を介して、
CPU11へ入力。
入力装置であり、それらを押すことにより、多関節ロボ
ットの特性(アーム長・アーム太さ)が、又9は押ボタ
ンSWの様な入力装置であり、それらを押すことにより
、6障害物の端点が随時インタフェイス10を介して、
CPU11へ入力。
記憶出来る様になっている。又、多関節ロボットの関節
部2〜6には、回転検出器がそれぞれついており、回転
角に対応する電気信号がインタフェイス10を介してC
PUI 1へ取り込まれる。
部2〜6には、回転検出器がそれぞれついており、回転
角に対応する電気信号がインタフェイス10を介してC
PUI 1へ取り込まれる。
CPU11では、上記により記憶されているロボット特
性(アーム長・アーム太さ)、父周期的に入力されてく
る回転角を基にして、6障害物との干渉を判定する演算
がなされる。
性(アーム長・アーム太さ)、父周期的に入力されてく
る回転角を基にして、6障害物との干渉を判定する演算
がなされる。
次に6障害物との干渉を判定する割算手続きについて、
ステップを追って詳述する。
ステップを追って詳述する。
(第1ステツプ)
あらかじめ押ボタ/SWsより入力されているロボット
の特性(アーム長さ・太さ)と、周期的に回転検出器2
〜6より入力されてくる回転角を基にして、アーム先端
座標及び各関節中心座標を求める。
の特性(アーム長さ・太さ)と、周期的に回転検出器2
〜6より入力されてくる回転角を基にして、アーム先端
座標及び各関節中心座標を求める。
θl を第i関節の回転角、ρl をそれに対応するア
ームの長さとし、Ji(X)、 Ji(Y)、 Ji(
Z)を第1関節のX座標、Y座標、2座標とすると、各
関節の中心座標及びアーム先ψ11.;座標は次の様に
なる。
ームの長さとし、Ji(X)、 Ji(Y)、 Ji(
Z)を第1関節のX座標、Y座標、2座標とすると、各
関節の中心座標及びアーム先ψ11.;座標は次の様に
なる。
〔関節1中心座標〕
Jl(x)=○
Jl(Y)二〇
Jl(z)=p1
〔関節2中心座標〕
■2(X)−〇
l2(Y)二〇
J2 (Z’) −Jl(Z)十ρ2
〔関節3中心座標〕
13(X) = 12sin 02t:osσ1T、
(Y) = It2sin θ2sil+ 0113(
Z ) 二J2 (Z ) + R2coso 2〔関
節4中心座標〕 J 4 (X ) =J3(X ) ” 13sinθ
3cosθ114(Y)= J3(Y) + f1
3 sin θ3 sin 01J4(Z)=J3
(Z) +fi3cosθ3〔関節5中心座標〕 J 5 (X)= J4(X) + 424 si
n 04 COs θ1J6(Y)二J 4(Y
) +1!、4\団//4sin1J s (Z )
=J 4(Z ) +1A cos 04〔アーム先端
座標〕 J6(X)=J5(X)十ρ5(CO5θ1CO5θ5
sinθ4−8inθ1sinθ5)J6(Y)= J
5(Y)+f15(coso1sinθ5+sinθ1
rosθs S I nθ4)J 6(Z ) =J
5(Z ) 十Q 5cosθ5cosθ4となる。
(Y) = It2sin θ2sil+ 0113(
Z ) 二J2 (Z ) + R2coso 2〔関
節4中心座標〕 J 4 (X ) =J3(X ) ” 13sinθ
3cosθ114(Y)= J3(Y) + f1
3 sin θ3 sin 01J4(Z)=J3
(Z) +fi3cosθ3〔関節5中心座標〕 J 5 (X)= J4(X) + 424 si
n 04 COs θ1J6(Y)二J 4(Y
) +1!、4\団//4sin1J s (Z )
=J 4(Z ) +1A cos 04〔アーム先端
座標〕 J6(X)=J5(X)十ρ5(CO5θ1CO5θ5
sinθ4−8inθ1sinθ5)J6(Y)= J
5(Y)+f15(coso1sinθ5+sinθ1
rosθs S I nθ4)J 6(Z ) =J
5(Z ) 十Q 5cosθ5cosθ4となる。
(第2ステツプ)
あらかじめ、押ボタンSW9より入力されている6障害
物の端点と、(第1ステツプ)により求められたアーム
先端座標および関節中心座標よりアームと凸障害物間の
距離を求める。アームと凸障害物間の距離を求めるに当
り、6障害物の一つの面と、アームとの距離算出方法を
述べる。6障害物より1つの凸子面を取り出し、その面
の−っの端点をSとし、Sを起点とする2つの稜を、ア
ームの直径長さくL)づつで区切り、2つの稜に対応す
る区分点をそれぞれ、n4 (i=1.2 、・・・)
。
物の端点と、(第1ステツプ)により求められたアーム
先端座標および関節中心座標よりアームと凸障害物間の
距離を求める。アームと凸障害物間の距離を求めるに当
り、6障害物の一つの面と、アームとの距離算出方法を
述べる。6障害物より1つの凸子面を取り出し、その面
の−っの端点をSとし、Sを起点とする2つの稜を、ア
ームの直径長さくL)づつで区切り、2つの稜に対応す
る区分点をそれぞれ、n4 (i=1.2 、・・・)
。
ni/(i=1.2.・・・)とする。
ni・L(n□′・L)が、それぞれの稜の長さを超え
る時、n工(n□′)に対応する区分点を、他方の端点
とし、区分を中止する。両方の稜の区分が中止された時
、それぞれの他方の端点を起点として、それぞれの稜を
前記と同様の手続きでアーム直径の長さ向づつで区切る
。
る時、n工(n□′)に対応する区分点を、他方の端点
とし、区分を中止する。両方の稜の区分が中止された時
、それぞれの他方の端点を起点として、それぞれの稜を
前記と同様の手続きでアーム直径の長さ向づつで区切る
。
この様な手続きを繰り返すことにより、対応する2つの
区分点が最終的には1つの端点(均あるいは2つの端点
(E 、 E/)に集約され、凸障害物の1つの面が順
次三角形および四角形・・・・・。
区分点が最終的には1つの端点(均あるいは2つの端点
(E 、 E/)に集約され、凸障害物の1つの面が順
次三角形および四角形・・・・・。
Δ5n1n、’、ロn i n 1’ n 2’
口n2 n2’ n3 n3 、 ”1’121 △nEnE/ Eと、分割される。
口n2 n2’ n3 n3 、 ”1’121 △nEnE/ Eと、分割される。
この様にして、分割された三角形および四角形とアーム
の干渉を順次検証して行くことにより、1つの凸障害物
の面とアームの干渉が検証出来る。
の干渉を順次検証して行くことにより、1つの凸障害物
の面とアームの干渉が検証出来る。
次に計算の基本となる前記分割された四角形と1つのア
ームの干渉の具体的!1痺手段を1例として説明する。
ームの干渉の具体的!1痺手段を1例として説明する。
前記手続により分割されたある四角形の区分点を、n4
.n4’ ”i+1+”i+1とし、2つの区分点n
□+ ”i+I Q中点をW、n/、+”i+1 の
中点をW、′とする。線分WLW工′上の任意の点を、
W(XW、VW。
.n4’ ”i+1+”i+1とし、2つの区分点n
□+ ”i+I Q中点をW、n/、+”i+1 の
中点をW、′とする。線分WLW工′上の任意の点を、
W(XW、VW。
ZW)、1つのアーム中心線分の任意の点をA(MA、
YAIZA )とする。
YAIZA )とする。
WA間の距離は、
一方、アーム中心線の一方の端点の座標を、(XAS、
)’AS+zAS )lそこからのアーム中心線の方向
余弦を、(Q A、 rnA、 n A)とする。他方
、四角形 ”i + ”i+1の中点W0の座標を(x
ws。
)’AS+zAS )lそこからのアーム中心線の方向
余弦を、(Q A、 rnA、 n A)とする。他方
、四角形 ”i + ”i+1の中点W0の座標を(x
ws。
5’WS、zWS) とし、” i’ + ” i’
+1の中点Wi′への方向余弦を(Qw、mw、nw)
とすると、XA=xAS”A6kA!YA=YAS
A AlzA””As A A (O≦kA≦1) xW”” xWS +’W’ kW +yw=yws
+mw”Wzw−2ws+nwOkw (〇−、、、、kw;(、,1) となり、距離は、kw、kAの関数となる。
+1の中点Wi′への方向余弦を(Qw、mw、nw)
とすると、XA=xAS”A6kA!YA=YAS
A AlzA””As A A (O≦kA≦1) xW”” xWS +’W’ kW +yw=yws
+mw”Wzw−2ws+nwOkw (〇−、、、、kw;(、,1) となり、距離は、kw、kAの関数となる。
WA をf(kW、kA)とおくと、1つのアーム中
心線と、前記区分された四角形口nln工”’=+*
”i+1の最/」・距離は、○=≦kw≦i、o≦kA
≦1で、/(kW、kA)を最小にすればよい。
心線と、前記区分された四角形口nln工”’=+*
”i+1の最/」・距離は、○=≦kw≦i、o≦kA
≦1で、/(kW、kA)を最小にすればよい。
k A−(fl Aj2w+”AmW+np、nw)k
w= [RA(xA−xw)十mAcyA−yW”
nA(zA−ZW)]−(l ARw+mAmwlnA
”W)kA+ kw−”W(xA−XW) 十mW(V
A−VW)” nA(ZA−2W)上記、連立方程式の
解を、kA、kwとする。
w= [RA(xA−xw)十mAcyA−yW”
nA(zA−ZW)]−(l ARw+mAmwlnA
”W)kA+ kw−”W(xA−XW) 十mW(V
A−VW)” nA(ZA−2W)上記、連立方程式の
解を、kA、kwとする。
又、前記、f(kw、kA)は、凹関数で、あることに
より、mm(WA)は、kA、kw(D範囲により、次
表の如くなる。
より、mm(WA)は、kA、kw(D範囲により、次
表の如くなる。
以下余白
次に、前記手続きにより分割された四角形と、1つのア
ームの干渉の判定の手続きを行なう。
ームの干渉の判定の手続きを行なう。
前記、手続きにより、分割された四角形口Sと、1つの
アームAの間の]゛し小距離を”AS とし、アーム
の半径をrA とすると、 QIS≦ ・A の時、分割された四角形口Sと、1つのアームAは、干
渉するおそれがある。
アームAの間の]゛し小距離を”AS とし、アーム
の半径をrA とすると、 QIS≦ ・A の時、分割された四角形口Sと、1つのアームAは、干
渉するおそれがある。
全てのアームと、全ての分割された四角形について、
QAB = xA+ e
の時、干渉するおそれありと見なす。
前記の手続きよp、CPU11より干渉する可能がある
と見なされた場合、CPU11よりロボット制御装置7
へ停止信号を送り、ロボットを停止させる。
と見なされた場合、CPU11よりロボット制御装置7
へ停止信号を送り、ロボットを停止させる。
発明の効果
この発明によれば、
(1) ティーチング時、ロボットアームと、凸障害
物との干渉を気にせず、動作プログラムが作成できる。
物との干渉を気にせず、動作プログラムが作成できる。
(2)外部系で、動作プログラムを作成しても、実際に
ロボットを動作させる場合、アームと凸障害物の干渉の
危険性か少ない。
ロボットを動作させる場合、アームと凸障害物の干渉の
危険性か少ない。
(3)アームの長さ、太さを変えても、それに対応して
、アーム間の相堡十渉が回避出来る。
、アーム間の相堡十渉が回避出来る。
(4) アームが他の断面形状であっても、円筒で近
似することにより、容易に拡張ができる。
似することにより、容易に拡張ができる。
(5)障害物が凸・V−而より構成されていなくても凸
子面より構成されている様、近似することにより、容易
に他の障害物への拡張ができる。
子面より構成されている様、近似することにより、容易
に他の障害物への拡張ができる。
第1図は本発明の一実施例における多関節ロボットの制
御方法を示す説明図、第2図は同多関節ロボットの装置
の構成および制御系統を示す説明図、第3〜4図は凸障
害物の4角形および3角形への分割分法を示す説明図、
第5図は本発明方法および演算手段を示すフローチャー
ト図である。 1 ・・・多関節ロボット本体、2・・・・・・第1関
節、3・・・・・第2関節、4・・・・・第3関節、5
・・・・第4関節、6・・・・第6関節、7・・・・ロ
ボット制御装置、8− アームの長さ、太さの入力装置
、9・−・・・凸障害物の端点の入力装置、10・・・
・・インターフェイス、11・・ 小形計算機(CPU
)。 代理人の氏名 弁理士 中 尾 敏 男 ほか1名f!
H1園 第 2 図 第3図 4図
御方法を示す説明図、第2図は同多関節ロボットの装置
の構成および制御系統を示す説明図、第3〜4図は凸障
害物の4角形および3角形への分割分法を示す説明図、
第5図は本発明方法および演算手段を示すフローチャー
ト図である。 1 ・・・多関節ロボット本体、2・・・・・・第1関
節、3・・・・・第2関節、4・・・・・第3関節、5
・・・・第4関節、6・・・・第6関節、7・・・・ロ
ボット制御装置、8− アームの長さ、太さの入力装置
、9・−・・・凸障害物の端点の入力装置、10・・・
・・インターフェイス、11・・ 小形計算機(CPU
)。 代理人の氏名 弁理士 中 尾 敏 男 ほか1名f!
H1園 第 2 図 第3図 4図
Claims (1)
- 多関節ロボットの各関節の長さ、太さ等の特性を入力す
る手段と、凸平面より構成される障害物の端点を入力す
る手段と、前記各関節の回転角を検出する回転検出器と
、前記回転検出器が検出した回転角を入力信号として、
アーム先端座標およ−び各関節中心座標を計算する手段
と、前記障害物との最小距離を計算する手段と、前記障
害物との干渉の判定手段を持ち、前記障害物との干渉判
定手段からロボットへの動作命令を制御し、前記障害物
との干渉を回避するよう構成した多関節ロボットの制御
方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP22235482A JPS59110581A (ja) | 1982-12-17 | 1982-12-17 | 多関節ロボツトの制御方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP22235482A JPS59110581A (ja) | 1982-12-17 | 1982-12-17 | 多関節ロボツトの制御方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPS59110581A true JPS59110581A (ja) | 1984-06-26 |
Family
ID=16781022
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP22235482A Pending JPS59110581A (ja) | 1982-12-17 | 1982-12-17 | 多関節ロボツトの制御方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPS59110581A (ja) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS61253510A (ja) * | 1985-05-01 | 1986-11-11 | Kawasaki Heavy Ind Ltd | ロボツト制御デ−タの確認方法 |
JPS61253509A (ja) * | 1985-05-01 | 1986-11-11 | Kawasaki Heavy Ind Ltd | ロボツト制御デ−タの作成方法 |
JPS6270910A (ja) * | 1985-09-24 | 1987-04-01 | Fanuc Ltd | 干渉物特定方法 |
JPS6464014A (en) * | 1987-09-04 | 1989-03-09 | Mitsubishi Heavy Ind Ltd | Action simulator for robot arm |
-
1982
- 1982-12-17 JP JP22235482A patent/JPS59110581A/ja active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS61253510A (ja) * | 1985-05-01 | 1986-11-11 | Kawasaki Heavy Ind Ltd | ロボツト制御デ−タの確認方法 |
JPS61253509A (ja) * | 1985-05-01 | 1986-11-11 | Kawasaki Heavy Ind Ltd | ロボツト制御デ−タの作成方法 |
JPS6270910A (ja) * | 1985-09-24 | 1987-04-01 | Fanuc Ltd | 干渉物特定方法 |
JPS6464014A (en) * | 1987-09-04 | 1989-03-09 | Mitsubishi Heavy Ind Ltd | Action simulator for robot arm |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2874238B2 (ja) | 多関節形ロボットの制御方法 | |
JPS59110581A (ja) | 多関節ロボツトの制御方法 | |
JPS62194513A (ja) | ロボツトの円弧補間姿勢制御装置 | |
JPH08287291A (ja) | 画像表示方式 | |
JPS61240304A (ja) | 産業用ロボツトのエンド・エフエクタ取付け誤差演算装置 | |
JP3000101B2 (ja) | 軌跡制御補間方法 | |
WO1991003779A1 (en) | Robot control method | |
JPH035605B2 (ja) | ||
JP2001328092A (ja) | ロボットの干渉回避装置及び方法 | |
JPS5973289A (ja) | 多関節ロボツトの制御方法 | |
JP2000015593A (ja) | マニピュレータ軌道生成装置及びマニピュレータ軌道生成プログラムを記録した記録媒体 | |
JPS60262212A (ja) | 産業用ロボツトの運動制御方法 | |
JP2676721B2 (ja) | 多関節型ロボットの制御装置 | |
JPH0312323B2 (ja) | ||
JPH058187A (ja) | ロボツト | |
JPH0468646B2 (ja) | ||
JPH03170282A (ja) | ロボットの制御方法 | |
JP2613076B2 (ja) | 倣い教示制御方式 | |
JP2932443B2 (ja) | ロボットの円弧補間姿勢制御方法 | |
JPH068169A (ja) | プレイバック型ロボットの教示・制御方法 | |
JPH0713642A (ja) | マニピュレータのコンプライアンス制御装置 | |
JPS62295115A (ja) | ロボツトの制御方法 | |
JP3196972B2 (ja) | ロボットダイレクト教示装置 | |
JP2582445B2 (ja) | 関節形マニュピュレータの手先方向演算装置 | |
Andersson | Computing the feasible configurations of a 7-DOF arm subject to joint limits |