JPH0146275B2 - - Google Patents
Info
- Publication number
- JPH0146275B2 JPH0146275B2 JP23421783A JP23421783A JPH0146275B2 JP H0146275 B2 JPH0146275 B2 JP H0146275B2 JP 23421783 A JP23421783 A JP 23421783A JP 23421783 A JP23421783 A JP 23421783A JP H0146275 B2 JPH0146275 B2 JP H0146275B2
- Authority
- JP
- Japan
- Prior art keywords
- sensor
- tangent
- distance
- point
- plane
- 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
Links
- 238000000034 method Methods 0.000 claims description 35
- 238000004364 calculation method Methods 0.000 claims description 11
- 230000001276 controlling effect Effects 0.000 claims description 3
- 230000001105 regulatory effect Effects 0.000 claims description 3
- 238000005070 sampling Methods 0.000 description 33
- 238000001514 detection method Methods 0.000 description 8
- 238000010586 diagram Methods 0.000 description 7
- 210000000707 wrist Anatomy 0.000 description 7
- 238000005452 bending Methods 0.000 description 6
- 238000005259 measurement Methods 0.000 description 4
- 238000010422 painting Methods 0.000 description 3
- 238000007796 conventional method Methods 0.000 description 2
- 210000004247 hand Anatomy 0.000 description 2
- 239000011248 coating agent Substances 0.000 description 1
- 238000000576 coating method Methods 0.000 description 1
- 230000010485 coping Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 238000007789 sealing Methods 0.000 description 1
- 238000010187 selection method Methods 0.000 description 1
- 238000003466 welding Methods 0.000 description 1
Landscapes
- Control Of Position Or Direction (AREA)
- Length Measuring Devices With Unspecified Measuring Means (AREA)
- Machine Tool Sensing Apparatuses (AREA)
- Machine Tool Copy Controls (AREA)
- Manipulator (AREA)
Description
【発明の詳細な説明】
〔産業上の利用分野〕
本発明は、工業用ロボツト等の作業機械のなら
い制御方法および装置に係り、特に、ならい動作
の対象物の曲率が変化しても常に円滑なならい動
作を行うに好適なならい制御方法および装置に関
する。
い制御方法および装置に係り、特に、ならい動作
の対象物の曲率が変化しても常に円滑なならい動
作を行うに好適なならい制御方法および装置に関
する。
従来から行われているならい制御方式は、なら
い動作の基本となる動作方向(以下、「基本動作
方向」という)を常に一定に保ち、これと直角な
方向の対象物の凹凸をセンサにより検出し、その
凹凸の形状に応じて作業機械に取付けられた作業
工具またはセンサを上記センサの検出方向に駆動
し、対象物形状にならわせる方式である。この場
合、対象物の形状の接線方向がセンサの検出方向
と一致するかほぼ一致する個所においては、なら
い動作が不可能となる欠点があつた。また、この
方式では、対象物に対する作業工具やセンサの姿
勢と対象物に沿つた動作速度とを一定に保つこと
が困難であるという欠点かあつた。この欠点は、
例えば塗装ロボツトでは、塗装むらを生じる原因
となる。
い動作の基本となる動作方向(以下、「基本動作
方向」という)を常に一定に保ち、これと直角な
方向の対象物の凹凸をセンサにより検出し、その
凹凸の形状に応じて作業機械に取付けられた作業
工具またはセンサを上記センサの検出方向に駆動
し、対象物形状にならわせる方式である。この場
合、対象物の形状の接線方向がセンサの検出方向
と一致するかほぼ一致する個所においては、なら
い動作が不可能となる欠点があつた。また、この
方式では、対象物に対する作業工具やセンサの姿
勢と対象物に沿つた動作速度とを一定に保つこと
が困難であるという欠点かあつた。この欠点は、
例えば塗装ロボツトでは、塗装むらを生じる原因
となる。
これらの欠点を解消する方策として、出願人は
既に特開昭55−18376号および特開昭58−34781号
に記載の方法を提案している。これらの方法で
は、センサの検出結果として得られる対象物の接
線方向情報に着目し、ならい動作の基本動作方向
を上記接線方向に一致させるように逐時変更する
という新しい考え方が導入されている。
既に特開昭55−18376号および特開昭58−34781号
に記載の方法を提案している。これらの方法で
は、センサの検出結果として得られる対象物の接
線方向情報に着目し、ならい動作の基本動作方向
を上記接線方向に一致させるように逐時変更する
という新しい考え方が導入されている。
しかし、この方式は、対象物の接線方向の変化
量すなわち対象物表面の曲率を一定タイミングま
たはならい動作移動距離ごとに検出し、その検出
ごとにならい動作の方向を変更するものであつ
て、対象物表面の曲率そのものまでも考慮したも
のではなかつた。言い換えると、上記提案の方法
は、対象物表面の曲率にかかわらず、一定長さ
ΔLの線分で対象物表面形状を折れ線近似するこ
とに相当するならい制御方法であつた。
量すなわち対象物表面の曲率を一定タイミングま
たはならい動作移動距離ごとに検出し、その検出
ごとにならい動作の方向を変更するものであつ
て、対象物表面の曲率そのものまでも考慮したも
のではなかつた。言い換えると、上記提案の方法
は、対象物表面の曲率にかかわらず、一定長さ
ΔLの線分で対象物表面形状を折れ線近似するこ
とに相当するならい制御方法であつた。
ところが、対象物表面の形状を折れ線近似する
にあたり常に同一長さの線分を用いると、対象物
表面の曲率半径が小さい個所すなわち対象物表面
の接線方向の変化が激しい個所においては、なら
い動作方向と実際の接線方向との誤差が大きくな
るという問題が依然として残つている。
にあたり常に同一長さの線分を用いると、対象物
表面の曲率半径が小さい個所すなわち対象物表面
の接線方向の変化が激しい個所においては、なら
い動作方向と実際の接線方向との誤差が大きくな
るという問題が依然として残つている。
また、このように対象物表面の接線方向の変化
が激しい部分においてもゆるやかな部分において
も、一定移動距離ごとに曲率を検出すると、はな
はだしい場合はならい動作中に対象物がセンサの
検出範囲を外れてしまい、ならい動作の継続に必
要なセンサ出力が得られなくなつたり、センサと
対象物との干渉のおそれがあるなど大きな問題が
残つていた。
が激しい部分においてもゆるやかな部分において
も、一定移動距離ごとに曲率を検出すると、はな
はだしい場合はならい動作中に対象物がセンサの
検出範囲を外れてしまい、ならい動作の継続に必
要なセンサ出力が得られなくなつたり、センサと
対象物との干渉のおそれがあるなど大きな問題が
残つていた。
本発明の目的は、対象物表面の接線方向の変化
量すなわち対象物表面の曲率がならい動作中に大
きく変化しても、これに適切に対処しながらなら
い動作を円滑に継続できるならい制御方法および
装置を提供することである。
量すなわち対象物表面の曲率がならい動作中に大
きく変化しても、これに適切に対処しながらなら
い動作を円滑に継続できるならい制御方法および
装置を提供することである。
[課題を解決するための手段]
本発明は、上記目的を達成するために、移動体
の先端に取付けられ対象物との相対距離を検出す
るセンサを対象物近傍で指定面内の接線の指定方
向に設定移動距離だけ移動させ、センサと対象物
との相対距離および移動体の3次元空間内の位置
に基づき対象物の位置およびこの対象物の位置に
おける指定面内の接線を演算し、その接線の指定
方向の延長上で前記設定移動距離だけ離れた点に
次の動作目標点を設定し、センサをその動作目標
点に向かつて移動させるならい制御方法におい
て、前記接線方向の変化量に応じて前記設定移動
距離を変更するならい制御方法を提案するもので
ある。
の先端に取付けられ対象物との相対距離を検出す
るセンサを対象物近傍で指定面内の接線の指定方
向に設定移動距離だけ移動させ、センサと対象物
との相対距離および移動体の3次元空間内の位置
に基づき対象物の位置およびこの対象物の位置に
おける指定面内の接線を演算し、その接線の指定
方向の延長上で前記設定移動距離だけ離れた点に
次の動作目標点を設定し、センサをその動作目標
点に向かつて移動させるならい制御方法におい
て、前記接線方向の変化量に応じて前記設定移動
距離を変更するならい制御方法を提案するもので
ある。
前記指定面と交わる面内に前記センサを複数個
設け、これらセンサの出力に基づき3次元形状の
対象物の前記交わる面内における法線方向を演算
し、前記3次元形状の対象物上の点における接平
面の法線を求め、この法線に対して一定の角度以
内となるように前記センサの方向を規制すること
もできる。
設け、これらセンサの出力に基づき3次元形状の
対象物の前記交わる面内における法線方向を演算
し、前記3次元形状の対象物上の点における接平
面の法線を求め、この法線に対して一定の角度以
内となるように前記センサの方向を規制すること
もできる。
前記センサは、前記接線に対する法線方向に正
確に向いている必要はなく、距離測定に所定値以
上の誤差を招かない範囲で一定の角度を保ちつつ
移動するようにしてもよい。
確に向いている必要はなく、距離測定に所定値以
上の誤差を招かない範囲で一定の角度を保ちつつ
移動するようにしてもよい。
本発明は、また、移動体の先端に取付けられ対
象物との相対距離を検出するセンサを対象物近傍
で接線方向に設定移動距離だけ移動させる駆動手
段と、前記センサと対象物との相対距離および移
動体の3次元空間内の位置に基づき対象物の位置
およびこの対象物の位置における指定面内の接線
を求め前記駆動手段に動作目標点を出力する第1
演算手段と、前記移動前後の位置における接線方
向の変化量に応じて前記設定移動距離を変更し前
記第1演算手段に出力する第2演算手段とを含む
ならい制御装置を提案するものである。
象物との相対距離を検出するセンサを対象物近傍
で接線方向に設定移動距離だけ移動させる駆動手
段と、前記センサと対象物との相対距離および移
動体の3次元空間内の位置に基づき対象物の位置
およびこの対象物の位置における指定面内の接線
を求め前記駆動手段に動作目標点を出力する第1
演算手段と、前記移動前後の位置における接線方
向の変化量に応じて前記設定移動距離を変更し前
記第1演算手段に出力する第2演算手段とを含む
ならい制御装置を提案するものである。
[作用]
本発明においては、センサを対象物表面の接線
方向に設定移動距離だけ移動させる際に、移動前
後の接線方向の変化量が所定値を超えて増加する
に従い、前記動作目標点を設定する距離を前記設
定移動距離よりも短く変更するので、接線の方向
が徐々に変わる比較的なだらかな対象物表面は勿
論のこと、接線の方向の変化量が大きいすなわち
曲率半径が小さいコーナ部等においても、常に安
定して正確なならい制御が可能となる。
方向に設定移動距離だけ移動させる際に、移動前
後の接線方向の変化量が所定値を超えて増加する
に従い、前記動作目標点を設定する距離を前記設
定移動距離よりも短く変更するので、接線の方向
が徐々に変わる比較的なだらかな対象物表面は勿
論のこと、接線の方向の変化量が大きいすなわち
曲率半径が小さいコーナ部等においても、常に安
定して正確なならい制御が可能となる。
また、このならい動作の指定面と交わる(例え
ば直交する)面内に複数のセンサを配置し、これ
らセンサの出力に基づき3次元形状の対象物の前
記交わる面内における法線方向を演算し、前記3
次元形状の対象物上の点における接平面の法線を
求め、この法線に対して一定の角度以内となるよ
うに前記センサの方向を規制すると、前記交わる
面方向にも曲面となつている3次元対象物のなら
い動作がより正確になされる。
ば直交する)面内に複数のセンサを配置し、これ
らセンサの出力に基づき3次元形状の対象物の前
記交わる面内における法線方向を演算し、前記3
次元形状の対象物上の点における接平面の法線を
求め、この法線に対して一定の角度以内となるよ
うに前記センサの方向を規制すると、前記交わる
面方向にも曲面となつている3次元対象物のなら
い動作がより正確になされる。
以下、図面を参照して本発明の実施例を具体的
に説明する。
に説明する。
第1図は、本発明によるならい制御装置の一実
施例を備えた作業機械として、曲面Wの形状を計
測するロボツト1を示す斜視図である。ロボツト
1は、油圧シリンダ2により第1コラム3の上を
水平方向(以下「X軸方向」という)に往復移動
する第1移動体4と、第1移動体4上に直立に設
けられた第2コラム5に沿つて油圧シリンダ6に
より上下方向(以下「Z軸方向」という)に移動
する第2移動体7と、第2移動体7に取付けられ
油圧シリンダ8によりX軸と直交する水平方向
(以下「Y軸方向」という)に往復移動する第3
移動体9と、第3移動体9の先端に取り付けられ
た手首機構10とからなる。
施例を備えた作業機械として、曲面Wの形状を計
測するロボツト1を示す斜視図である。ロボツト
1は、油圧シリンダ2により第1コラム3の上を
水平方向(以下「X軸方向」という)に往復移動
する第1移動体4と、第1移動体4上に直立に設
けられた第2コラム5に沿つて油圧シリンダ6に
より上下方向(以下「Z軸方向」という)に移動
する第2移動体7と、第2移動体7に取付けられ
油圧シリンダ8によりX軸と直交する水平方向
(以下「Y軸方向」という)に往復移動する第3
移動体9と、第3移動体9の先端に取り付けられ
た手首機構10とからなる。
手首機構10は第3移動体9に固定された垂直
軸11のまわりに回転する振りブロツク12と、
振りブロツク12に取付けられ水平軸13のまわ
りに回転する曲げブロツク14とからなる。
軸11のまわりに回転する振りブロツク12と、
振りブロツク12に取付けられ水平軸13のまわ
りに回転する曲げブロツク14とからなる。
曲げブロツク14には、作業対象物との近接距
離を検出する渦電流式センサ21が取付けられ、
その主軸線210が水平軸13と常に直交するよ
うになつている。曲げブロツク14にはまた、セ
ンサ21と同一型式のセンサ22がセンサ21と
平行に軸間距離Lsをもつて配置されている。セ
ンサ22は、センサ21の主軸線210が水平と
なるように曲げブロツク14を駆動して位置決め
した場合、センサ21の上方に位置するように配
置されている。
離を検出する渦電流式センサ21が取付けられ、
その主軸線210が水平軸13と常に直交するよ
うになつている。曲げブロツク14にはまた、セ
ンサ21と同一型式のセンサ22がセンサ21と
平行に軸間距離Lsをもつて配置されている。セ
ンサ22は、センサ21の主軸線210が水平と
なるように曲げブロツク14を駆動して位置決め
した場合、センサ21の上方に位置するように配
置されている。
第2図は、第1図のならい制御装置およびロボ
ツト1の制御系のブロツク図である。マイクロコ
ンピユータ等からなる制御用計算機51からの位
置指令は、インターフエース52においてロボツ
ト1の各軸にふり分けられ、各軸の位置決め装置
53〜57に送り出される。例えばX軸の位置決
め装置53に送られた位置指令は、減算回路53
1が位置検出器534から得られたロボツト1の
X軸の現在位置との差を算出する際に用いられ、
その算出結果はサーボ回路532に送られる。サ
ーボ回路532の出力は、油圧サーボ弁や油圧シ
リンダ2などからなるロボツトX軸機構533を
駆動させる。X軸機構533の位置は位置検出器
534により検出され、減算回路531に送られ
ると共に、計算機51にも読み込まれる。
ツト1の制御系のブロツク図である。マイクロコ
ンピユータ等からなる制御用計算機51からの位
置指令は、インターフエース52においてロボツ
ト1の各軸にふり分けられ、各軸の位置決め装置
53〜57に送り出される。例えばX軸の位置決
め装置53に送られた位置指令は、減算回路53
1が位置検出器534から得られたロボツト1の
X軸の現在位置との差を算出する際に用いられ、
その算出結果はサーボ回路532に送られる。サ
ーボ回路532の出力は、油圧サーボ弁や油圧シ
リンダ2などからなるロボツトX軸機構533を
駆動させる。X軸機構533の位置は位置検出器
534により検出され、減算回路531に送られ
ると共に、計算機51にも読み込まれる。
また、センサ21,22の信号はセンサインタ
ーフエース58により線形化して増幅され、計算
機51に読み込まれる。
ーフエース58により線形化して増幅され、計算
機51に読み込まれる。
次に、第3図〜第10図を用いて、本発明のな
らい制御装置のならい制御アルゴリズムを説明す
る。ここでは説明を容易にするために、ならい動
作は水平面内で行われるものとし、第3図〜第5
図においては水平面内での制御方法の原理を、第
6図〜第10図においては垂直平面内での制御方
法の原理を示しているが、ならい動作は水平面内
に限定されるものではなく、任意の平面内更には
曲面内において実行できるということはいうまで
もない。
らい制御装置のならい制御アルゴリズムを説明す
る。ここでは説明を容易にするために、ならい動
作は水平面内で行われるものとし、第3図〜第5
図においては水平面内での制御方法の原理を、第
6図〜第10図においては垂直平面内での制御方
法の原理を示しているが、ならい動作は水平面内
に限定されるものではなく、任意の平面内更には
曲面内において実行できるということはいうまで
もない。
なお、以下の説明では、ロボツト1の手先に取
付けられたセンサ21の主軸210上で、センサ
21の先端から距離Ssだけ離れた点Pをロボツ
トの手先位置とし、この手先位置に着目して動作
を説明する。また、センサ21の検出可能な近接
距離の最小値をSnioとし同じく最大値をSnaxとす
れば、Snio<Ss<Snaxなるように距離Ssを選び、
この距離Ssをセンサ21の標準検出距離と呼ぶ
ものとする。通常、距離SsはSnioとSnaxとの平均
値をとればよい。
付けられたセンサ21の主軸210上で、センサ
21の先端から距離Ssだけ離れた点Pをロボツ
トの手先位置とし、この手先位置に着目して動作
を説明する。また、センサ21の検出可能な近接
距離の最小値をSnioとし同じく最大値をSnaxとす
れば、Snio<Ss<Snaxなるように距離Ssを選び、
この距離Ssをセンサ21の標準検出距離と呼ぶ
ものとする。通常、距離SsはSnioとSnaxとの平均
値をとればよい。
ロボツト1の手先位置Pの座標(XP、YP、ZP)
を、ロボツト1の基台に固定された座標系により
表わせば、X、Y、Z軸の移動量をx、y、z、
また、Y軸方向から測つた手首振りブロツク12
の回転量をα、水平面から測つた手首曲げブロツ
ク14の回転量をβとし、垂直軸11と水平軸1
3の軸間距離をlA、水平軸13からセンサ21先
端までの距離をlPとすると、 XP=x−{lA+(lP+Ss) cosβ}sinα YP=y+{lA+(lP+Ss) cosβ}cosα] ZP=z+(lP+Ss)sinβ ……(1) と表わすことができる。
を、ロボツト1の基台に固定された座標系により
表わせば、X、Y、Z軸の移動量をx、y、z、
また、Y軸方向から測つた手首振りブロツク12
の回転量をα、水平面から測つた手首曲げブロツ
ク14の回転量をβとし、垂直軸11と水平軸1
3の軸間距離をlA、水平軸13からセンサ21先
端までの距離をlPとすると、 XP=x−{lA+(lP+Ss) cosβ}sinα YP=y+{lA+(lP+Ss) cosβ}cosα] ZP=z+(lP+Ss)sinβ ……(1) と表わすことができる。
まず、第3図〜第5図により水平面内でのなら
い制御について説明する。ロボツト1は最初にワ
ークWのならい開始点Q0の近傍に位置決めされ
ている。このとき、操作者が点Q0におけるワー
クWの接線とほぼ直角方向となるように、センサ
21を予め位置決めしておく。ロボツト1はここ
から動作を開始し、センサ21の出力がSsとな
つたところで一旦動作を停止する。このときのロ
ボツト1の手先位置PはQ0点と一致している。
い制御について説明する。ロボツト1は最初にワ
ークWのならい開始点Q0の近傍に位置決めされ
ている。このとき、操作者が点Q0におけるワー
クWの接線とほぼ直角方向となるように、センサ
21を予め位置決めしておく。ロボツト1はここ
から動作を開始し、センサ21の出力がSsとな
つたところで一旦動作を停止する。このときのロ
ボツト1の手先位置PはQ0点と一致している。
ならい動作は、センサ21の主軸線210と直
角方向すなわちワークWのおおよその接線方向に
ロボツト1を駆動することにより、開始される。
動作を開始し、移動距離L0となつた時のロボツ
トの手先点をR1とすると、ロボツトの手先がR1
点に到達した時点で再度センサ21のデータを入
力する。このときの測定距離をS1とすれば、ワー
クW上の点Q1の座標(X1、Y1、Z1)は、ロボツ
ト各軸の移動量x1、y1、z1、α1、β1を用いて X1=x1−{lA+(lP+S1) cosβ1}sinα1 Y1=y1+{lA+(lP+S1) cosβ1}cosβ1] Z1=z1+(lP+S1)sinβ1 ……(2) として求められる。
角方向すなわちワークWのおおよその接線方向に
ロボツト1を駆動することにより、開始される。
動作を開始し、移動距離L0となつた時のロボツ
トの手先点をR1とすると、ロボツトの手先がR1
点に到達した時点で再度センサ21のデータを入
力する。このときの測定距離をS1とすれば、ワー
クW上の点Q1の座標(X1、Y1、Z1)は、ロボツ
ト各軸の移動量x1、y1、z1、α1、β1を用いて X1=x1−{lA+(lP+S1) cosβ1}sinα1 Y1=y1+{lA+(lP+S1) cosβ1}cosβ1] Z1=z1+(lP+S1)sinβ1 ……(2) として求められる。
なお、以下では上記移動距離L0を基準サンプ
リング距離と呼ぶことにする。また、点Q0から
点R1への基準サンプリング距離L0分のロボツト
1の動きは、これらの点間を結ぶ直線上に微細な
距離ごとの中間点を設け、これらの点の座標に対
応するロボツト1各軸の位置を順次指令し、直線
上を手先Pが一定速度で移動するように制御す
る。以下の説明においても、ロボツト1の動きま
たはロボツト1を駆動するという表現は、上記の
ような直線上の一定速度での動作またはそれらの
組合わせ動作を意味する。
リング距離と呼ぶことにする。また、点Q0から
点R1への基準サンプリング距離L0分のロボツト
1の動きは、これらの点間を結ぶ直線上に微細な
距離ごとの中間点を設け、これらの点の座標に対
応するロボツト1各軸の位置を順次指令し、直線
上を手先Pが一定速度で移動するように制御す
る。以下の説明においても、ロボツト1の動きま
たはロボツト1を駆動するという表現は、上記の
ような直線上の一定速度での動作またはそれらの
組合わせ動作を意味する。
さて、ロボツト1が点R1に到着した時点で、
(2)式によりワークW上の点Q1が明らかとなる。
そこでワークWの近似的な接線が点Q0と点Q1と
を結ぶ直線として決まる。なお、このときの接線
の傾きは点Q0、点Q1の座標から容易に求められ
る。
(2)式によりワークW上の点Q1が明らかとなる。
そこでワークWの近似的な接線が点Q0と点Q1と
を結ぶ直線として決まる。なお、このときの接線
の傾きは点Q0、点Q1の座標から容易に求められ
る。
いま、ロボツト1のX軸正方向から測つた角度
を用いて接線の傾きをθ1と表わせば、Q0点の座
標を(X0、Y0、Z0)として、角度θ1は次のよう
になる。
を用いて接線の傾きをθ1と表わせば、Q0点の座
標を(X0、Y0、Z0)として、角度θ1は次のよう
になる。
θ1=tan-1Y1−Y0/X1−X0;X0≠X1のとき
=0 ;X0=X1のとき
本発明の制御方式は、このようにして得られた
接線の延長上にならい動作の目標点を設定しなが
ら動作していくことが基本となつている。すなわ
ち、点Q0、点Q1とを結ぶ直線の延長上に、点Q1
から距離L0の点R2を定め、これを目標として次
のサンプリング区間のならい動作が行われる。
接線の延長上にならい動作の目標点を設定しなが
ら動作していくことが基本となつている。すなわ
ち、点Q0、点Q1とを結ぶ直線の延長上に、点Q1
から距離L0の点R2を定め、これを目標として次
のサンプリング区間のならい動作が行われる。
なお、この場合、センサ21によるワークWの
位置測定のために、センサ21が点R2において
直線Q0R2と直角になるように駆動する。ここで
は、手首振りブロツク12の回転角αを用いてセ
ンサ21の姿勢を示し、例えばR2点における姿
勢をα2と表す。
位置測定のために、センサ21が点R2において
直線Q0R2と直角になるように駆動する。ここで
は、手首振りブロツク12の回転角αを用いてセ
ンサ21の姿勢を示し、例えばR2点における姿
勢をα2と表す。
ロボツトの手先が点R2に到達した時点でセン
サ21の出力を測定し、これをS2とすれば、(2)式
と同様にR2点におけるロボツト1の各軸の位置
をx2、y2、z2、α2、β2とすると、ワークW上の点
Q2の座標(X2、Y2、Z2)は、 X2=x2−{lA+(lP+S2) cosβ2}sinα2 Y2=y2+{lA+(lP+S2) cosβ2}cosβ2] Z2=z2+(lP+S2)sinβ2 ……(3) と表せられる。直線Q1Q2の傾きθ2は θ2=tan-1Y2−Y1/X2−X1;X2≠X1のとき =0 ;X2=X1のとき である。
サ21の出力を測定し、これをS2とすれば、(2)式
と同様にR2点におけるロボツト1の各軸の位置
をx2、y2、z2、α2、β2とすると、ワークW上の点
Q2の座標(X2、Y2、Z2)は、 X2=x2−{lA+(lP+S2) cosβ2}sinα2 Y2=y2+{lA+(lP+S2) cosβ2}cosβ2] Z2=z2+(lP+S2)sinβ2 ……(3) と表せられる。直線Q1Q2の傾きθ2は θ2=tan-1Y2−Y1/X2−X1;X2≠X1のとき =0 ;X2=X1のとき である。
近似的な接線は直線Q0Q1から直線Q1Q2に変化
し、その傾きはθ1からθ2となつた。この傾きの変
化は、実はワーク表面形状の曲率を表わしてい
る。すなわち、接線方向の変化量は曲率半径に対
応している。
し、その傾きはθ1からθ2となつた。この傾きの変
化は、実はワーク表面形状の曲率を表わしてい
る。すなわち、接線方向の変化量は曲率半径に対
応している。
本発明のならい動作は、ワーク表面の曲線を接
線により折れ線近似している。したがつて、同一
の精度で曲線を折れ線近似するためには、曲線半
径が小さいところでは、折れ線の長さを短くする
必要がある。すなわち、近似的なに得られた接線
の延長上に、サンプリング距離Lだけ離れた点を
ならい動作の動作目標点とするが、このサンプリ
ング距離Lを上記接線の傾きの変化量に応じて変
更する必要がある。
線により折れ線近似している。したがつて、同一
の精度で曲線を折れ線近似するためには、曲線半
径が小さいところでは、折れ線の長さを短くする
必要がある。すなわち、近似的なに得られた接線
の延長上に、サンプリング距離Lだけ離れた点を
ならい動作の動作目標点とするが、このサンプリ
ング距離Lを上記接線の傾きの変化量に応じて変
更する必要がある。
ここでは、接線の傾きの変化θ2−θ1の値に応じ
て、上記サンプリング距離Lを次のように変化さ
せる。
て、上記サンプリング距離Lを次のように変化さ
せる。
Δθ=θ2−θ1
とし、サンプリング距離Lを
L=ΔS0/tanΔθ;|Δθ|
≧Δθcのとき
L=L0 ;|Δθ|<Δθcのとき ……(4)
とする。ここで、ΔS0、L0、Δθcは定数であり、
L0は基準サンプリング距離、ΔS0はSs−Sminと
Smax−Ssのうちの小さい方よりも小さい値とす
る。一般的には(4)の連続性から、ΔS0=
L0tanΔθcとする方が良い。また、Δθcはならい
精度の所要値から定める。
L0は基準サンプリング距離、ΔS0はSs−Sminと
Smax−Ssのうちの小さい方よりも小さい値とす
る。一般的には(4)の連続性から、ΔS0=
L0tanΔθcとする方が良い。また、Δθcはならい
精度の所要値から定める。
このようにして次のサンプリング距離Lを決
め、ならい目標点を定める。目標点R3の決定は
(4)式により求めたLをL3とし、直線Q1Q2の延長
上にQ2から距離L3だけ離れた点として決定する。
点R3にロボツト1が到達すれば、点R3において
センサ21の出力からワーク上の点Q3の位置を
求め、今度は点Q2とQ3を結ぶ直線の延長上に次
の目標点R4を定める。直線Q2Q3の傾きをθ3とす
れば、R4点における目標センサ姿勢を直線Q2Q3
に直角な姿勢とするための手首振りブロツク12
の回転角α4が得られる。このような処理を繰返し
ながら、ならい動作を行うのが、本発明の制御方
法の特徴である。
め、ならい目標点を定める。目標点R3の決定は
(4)式により求めたLをL3とし、直線Q1Q2の延長
上にQ2から距離L3だけ離れた点として決定する。
点R3にロボツト1が到達すれば、点R3において
センサ21の出力からワーク上の点Q3の位置を
求め、今度は点Q2とQ3を結ぶ直線の延長上に次
の目標点R4を定める。直線Q2Q3の傾きをθ3とす
れば、R4点における目標センサ姿勢を直線Q2Q3
に直角な姿勢とするための手首振りブロツク12
の回転角α4が得られる。このような処理を繰返し
ながら、ならい動作を行うのが、本発明の制御方
法の特徴である。
これを一般化すると、第4図のようになる。い
ま、点Ri+1にロボツト1の手先が到達している時
点において、直線Qi-1Qiの傾きをθiとし、このと
きのセンサ姿勢をαi+1とする。点Ri+1においてワ
ークW上の位置を測定し、センサ21の出力Si+1
からワークW上の点Qi+1の座標を求め、直線Qi
Qi+1の傾きθi+1を決定する。これより、 Δθi+1=θi+1−θi が得られる。一方、点Q1、Ri+1間の距離すなわち
前回のサンプリング距離をLi+1とすれば、Li+1の
距離間に接線の傾きがΔθi+1変化したから、基準
サンプリング距離L0間の接線の傾き変化Δθ* i+1は、
曲率半径を一定と仮定して近似的に Δθ* i+1=2sin-1(L0/Li+1sinΔθi+1/2) ……(5) となる。そこで、次のサンプリング距離Li+2を、
(4)式にならつて Li+2=ΔS0/tanΔθ* i+1;|Δθ* i+1|≧Δθcのとき ……(6) Li+2=L0 ;|Δθ* i+1|<Δθcのとき として、次の区間のならい動作目標点Ri+2を直線
QiQi+1の延長上、点Qi+1から距離Li+2だけ離れた
点に設定し、かつRi+2においてセンサ姿勢が直線
QiQi+1と直角な姿勢となるような角度αi+2に設定
し、ならい動作を続ける。(6)式の関係を第5図に
示す。
ま、点Ri+1にロボツト1の手先が到達している時
点において、直線Qi-1Qiの傾きをθiとし、このと
きのセンサ姿勢をαi+1とする。点Ri+1においてワ
ークW上の位置を測定し、センサ21の出力Si+1
からワークW上の点Qi+1の座標を求め、直線Qi
Qi+1の傾きθi+1を決定する。これより、 Δθi+1=θi+1−θi が得られる。一方、点Q1、Ri+1間の距離すなわち
前回のサンプリング距離をLi+1とすれば、Li+1の
距離間に接線の傾きがΔθi+1変化したから、基準
サンプリング距離L0間の接線の傾き変化Δθ* i+1は、
曲率半径を一定と仮定して近似的に Δθ* i+1=2sin-1(L0/Li+1sinΔθi+1/2) ……(5) となる。そこで、次のサンプリング距離Li+2を、
(4)式にならつて Li+2=ΔS0/tanΔθ* i+1;|Δθ* i+1|≧Δθcのとき ……(6) Li+2=L0 ;|Δθ* i+1|<Δθcのとき として、次の区間のならい動作目標点Ri+2を直線
QiQi+1の延長上、点Qi+1から距離Li+2だけ離れた
点に設定し、かつRi+2においてセンサ姿勢が直線
QiQi+1と直角な姿勢となるような角度αi+2に設定
し、ならい動作を続ける。(6)式の関係を第5図に
示す。
次に、第6図〜第10図により、本発明の垂直
面内での姿勢制御について説明する。まず、第6
図に示すように、ロボツト1はワークWのならい
開始点Q0の近傍に位置決めされており、センサ
21,22は、点Q0におけるワークWの垂直面
内での接線とほぼ直角方向となるように、操作者
により予めセツトされる。ロボツト1はここから
動作を開始し、センサ21,22の出力がともに
一致するように姿勢を制御して、一旦動作を停止
する。なお、姿勢制御にあたつては、ロボツト1
の手先P点の位置が変化しないように(1)式に基づ
いてロボツト1の各軸を駆動する。また、このと
きのセンサ21の主軸211の傾きを水平面から
の仰角βで表わしてこれをβ0とし、ワーク表面の
接線の傾きを鉛直面からの角度φで表わしてQ0
点での傾きをφ0とする。このときはφ0=β0であ
る。ここでは、前述した水平面内におけるならい
制御方法から、センサ21の出力はSsとなるよ
うに制御される。したがつて、センサ21,22
の出力はともにSsとなつている。
面内での姿勢制御について説明する。まず、第6
図に示すように、ロボツト1はワークWのならい
開始点Q0の近傍に位置決めされており、センサ
21,22は、点Q0におけるワークWの垂直面
内での接線とほぼ直角方向となるように、操作者
により予めセツトされる。ロボツト1はここから
動作を開始し、センサ21,22の出力がともに
一致するように姿勢を制御して、一旦動作を停止
する。なお、姿勢制御にあたつては、ロボツト1
の手先P点の位置が変化しないように(1)式に基づ
いてロボツト1の各軸を駆動する。また、このと
きのセンサ21の主軸211の傾きを水平面から
の仰角βで表わしてこれをβ0とし、ワーク表面の
接線の傾きを鉛直面からの角度φで表わしてQ0
点での傾きをφ0とする。このときはφ0=β0であ
る。ここでは、前述した水平面内におけるならい
制御方法から、センサ21の出力はSsとなるよ
うに制御される。したがつて、センサ21,22
の出力はともにSsとなつている。
ならい動作が開始され、水平方向のならいが進
作して行くに従つて、センサ21,22の出力が
変化する。水平移動距離が第7図に示すように
L0′となつたところを点R1′とし、センサ21の出
力からワーク上の点Q1′の位置を求める。2つの
センサ21,22の出力をそれぞれSA1、SB1とす
れば、Q1′点におけるワークWの接線の傾きφ1は、
2つのセンサ21,22間の軸間距離Lsを用い
て表わすと、 φ1=φ0+tan-1SB1−SA1/Ls ……(7) となる。ここで、2つのセンサ21,22の出力
差をΔSH1=SB1−SA1とおき、tan-1ΔSH1/Ls=Δφ1と おく。
作して行くに従つて、センサ21,22の出力が
変化する。水平移動距離が第7図に示すように
L0′となつたところを点R1′とし、センサ21の出
力からワーク上の点Q1′の位置を求める。2つの
センサ21,22の出力をそれぞれSA1、SB1とす
れば、Q1′点におけるワークWの接線の傾きφ1は、
2つのセンサ21,22間の軸間距離Lsを用い
て表わすと、 φ1=φ0+tan-1SB1−SA1/Ls ……(7) となる。ここで、2つのセンサ21,22の出力
差をΔSH1=SB1−SA1とおき、tan-1ΔSH1/Ls=Δφ1と おく。
なお、以下の説明においては上記水平方向のな
らい動作距離L0′を基準姿勢サンプリング距離と
呼ぶことにする。
らい動作距離L0′を基準姿勢サンプリング距離と
呼ぶことにする。
さて、ロボツト1が点R1′に到着した時点では
センサ仰角はβ0である。次に、ならい動作を継続
する。いま、垂直面内のワーク表面曲率変化も、
前回のならい動作区間の曲率変化とほぼ同じであ
るとすれば、点Q1′からならい動作距離L′だけ移
動した点で、センサ21,22の出力差はΔSH1
になると予想される。垂直面内のならい姿勢制御
とは、このような予想にもとづいて次の姿勢サン
プリング距離L′を選択決定することである。ここ
では、 L′=Δφc×L0′/Δφ1;|Δφ1|≧Δφcのとき L′=L0′;|Δφ1|<Δφcのとき ……(8) となるように、すなわちセンサ出力差から求めた
姿勢サンプリング距離間の角度変化の値に反比例
させて、次の姿勢サンプリング距離L′を定める。
センサ仰角はβ0である。次に、ならい動作を継続
する。いま、垂直面内のワーク表面曲率変化も、
前回のならい動作区間の曲率変化とほぼ同じであ
るとすれば、点Q1′からならい動作距離L′だけ移
動した点で、センサ21,22の出力差はΔSH1
になると予想される。垂直面内のならい姿勢制御
とは、このような予想にもとづいて次の姿勢サン
プリング距離L′を選択決定することである。ここ
では、 L′=Δφc×L0′/Δφ1;|Δφ1|≧Δφcのとき L′=L0′;|Δφ1|<Δφcのとき ……(8) となるように、すなわちセンサ出力差から求めた
姿勢サンプリング距離間の角度変化の値に反比例
させて、次の姿勢サンプリング距離L′を定める。
ここに、Δφcは定数であり、1/2tan-1
Smax−Smin/Lsまたはtan-1Smax−Smin/2Lsよりも
小さくなるようにその値を定める。
このようにして次の姿勢サンプリング距離L′を
決め、次の姿勢サンプリング点R2′を定める。
R2′点は、(8)式により求めた距離L′をL2′として、
水平方向のならい動作の接線上にとつた道のりが
L2′になる点として決定する。こうしてロボツト
1が第8図に示すように点R2′に到達すれば、2
つのセンサデータを再度読み込み、垂直面内での
ワークWの傾きφ2及びセンサ仰角β2(=φ2)を計
算し、次の姿勢サンプリング点R3′を求め、R3′点
に到着したときにセンサ仰角がβ2となるようにな
らい動作を行う。このような処理を繰返して行く
ことが、本発明のもう一つの特徴である。
決め、次の姿勢サンプリング点R2′を定める。
R2′点は、(8)式により求めた距離L′をL2′として、
水平方向のならい動作の接線上にとつた道のりが
L2′になる点として決定する。こうしてロボツト
1が第8図に示すように点R2′に到達すれば、2
つのセンサデータを再度読み込み、垂直面内での
ワークWの傾きφ2及びセンサ仰角β2(=φ2)を計
算し、次の姿勢サンプリング点R3′を求め、R3′点
に到着したときにセンサ仰角がβ2となるようにな
らい動作を行う。このような処理を繰返して行く
ことが、本発明のもう一つの特徴である。
これを一般化すると、第9図のようになる。点
R1′にロボツト1の手先が到着している時点にお
いて、ワークWの表面の垂直面内接線の傾きを
φ1とすれば、この傾φ1は φi=φi-1+tan-1ΔSHi/Ls=φi-1+Δφi ……(9) である。ΔSHi=SBi−SAiであり、センサ姿勢の仰
角はβi-1=φi-1となつている。また、点Q′i-1から
点R1′までの水平方向ならい動作における接線上
にとつた道のりをLi′とすれば、この道のりが
L0′である場合の垂直面内ワーク接線の傾きφi *
は、曲率の変化が均一であると仮定して、近似的
に φi *=φi-1+L0′/L1′・Δφi ……(10) となる。よつて Δφi *=φi *−φi-1=L0/Li′・Δφi……(11) とおけば、次の姿勢サンプリング区間の道のり
L′i+1は、(8)式にならつて、 L′i+1=Δφc×L0′/Δφi * =Δφc×Li′/Δφi ;|Δφi *|≧Δφcのとき L′i+1=L0′ ;|Δφi *|<Δφcのとき ……(12) として求めることができる。これにより、次の姿
勢サンプリング点R′i+1の位置が得られる。そこ
で点R′i+1において、センサ仰角βiがβi=φiとなる
ように設定し、ならい動作の姿勢制御を行なう。
(12)式の関係を第10図に示す。
R1′にロボツト1の手先が到着している時点にお
いて、ワークWの表面の垂直面内接線の傾きを
φ1とすれば、この傾φ1は φi=φi-1+tan-1ΔSHi/Ls=φi-1+Δφi ……(9) である。ΔSHi=SBi−SAiであり、センサ姿勢の仰
角はβi-1=φi-1となつている。また、点Q′i-1から
点R1′までの水平方向ならい動作における接線上
にとつた道のりをLi′とすれば、この道のりが
L0′である場合の垂直面内ワーク接線の傾きφi *
は、曲率の変化が均一であると仮定して、近似的
に φi *=φi-1+L0′/L1′・Δφi ……(10) となる。よつて Δφi *=φi *−φi-1=L0/Li′・Δφi……(11) とおけば、次の姿勢サンプリング区間の道のり
L′i+1は、(8)式にならつて、 L′i+1=Δφc×L0′/Δφi * =Δφc×Li′/Δφi ;|Δφi *|≧Δφcのとき L′i+1=L0′ ;|Δφi *|<Δφcのとき ……(12) として求めることができる。これにより、次の姿
勢サンプリング点R′i+1の位置が得られる。そこ
で点R′i+1において、センサ仰角βiがβi=φiとなる
ように設定し、ならい動作の姿勢制御を行なう。
(12)式の関係を第10図に示す。
なお、上記実施例では、ならい動作方向の接線
決定のためのサンプリング距離Liの決定にあた
り、一般式として(5)式、(6)式を用いたがΔθiが微
小角度であるとすれば、近似的に(5)式は Δθ* i+1≒L0/Li・Δθi+1 ……(13) と簡略化してもよく、さらに(6)式においても、 Li+2≒ΔS0/Δθ* i+1 ;|Δθ* i+1|≧Δφc Li+2≒L0 ;|Δθ* i+1|<Δθc ……(14) と、tanΔθi+1≒Δθi+1の関係を用いて簡略化する
などの方法が考えられる。
決定のためのサンプリング距離Liの決定にあた
り、一般式として(5)式、(6)式を用いたがΔθiが微
小角度であるとすれば、近似的に(5)式は Δθ* i+1≒L0/Li・Δθi+1 ……(13) と簡略化してもよく、さらに(6)式においても、 Li+2≒ΔS0/Δθ* i+1 ;|Δθ* i+1|≧Δφc Li+2≒L0 ;|Δθ* i+1|<Δθc ……(14) と、tanΔθi+1≒Δθi+1の関係を用いて簡略化する
などの方法が考えられる。
これらの式(13)、(14)において、Δθ* i+1、
Δφ* iなどを計算しないで、Δθi+1、Δφiの値から直
接的に求める簡略化も考えられる。例えば、前区
間のサンプリング距離をLiとして、 Li+1=Li−kΔθi/Δθc 同様に前区間の姿勢サンプリング距離をL′iとし
て L′i+1=L′i−k′Δθi/Δθc を求めることなどは、k、k′を定数とした大まか
な線型近似であるが、これらによつても従来方式
よりはきめの細かい制御が可能であり、一つの簡
略法として有効である。さらに、(6)式において、
|Δθ* i+1|の値にかかわらずLi+2=ΔS0/tanΔθ* i
+1とし、また(2)式において、|Δφ* i|の値にかか
わらずL′i+1=Δφc・L′0/Δφi *とするような方法
であつてもよい。
Δφ* iなどを計算しないで、Δθi+1、Δφiの値から直
接的に求める簡略化も考えられる。例えば、前区
間のサンプリング距離をLiとして、 Li+1=Li−kΔθi/Δθc 同様に前区間の姿勢サンプリング距離をL′iとし
て L′i+1=L′i−k′Δθi/Δθc を求めることなどは、k、k′を定数とした大まか
な線型近似であるが、これらによつても従来方式
よりはきめの細かい制御が可能であり、一つの簡
略法として有効である。さらに、(6)式において、
|Δθ* i+1|の値にかかわらずLi+2=ΔS0/tanΔθ* i
+1とし、また(2)式において、|Δφ* i|の値にかか
わらずL′i+1=Δφc・L′0/Δφi *とするような方法
であつてもよい。
前記実施例においては、水平方向のならい動作
のならい動作方向決定のための接線演算を行うサ
ンプリング距離と、垂直面内での姿勢決定のため
の姿勢サンプリング距離とをそれぞれLi、L′iのよ
うに区別して示したが、これらはLi、Li′のうち
の小さい方を両者に共通したサンプリング距離と
して選び、センサ21,22のデータを読み出す
回数を削減することも可能である。また、例えば
垂直面内での姿勢を制御することが、作業の仕様
から見てそれほど重要でない場合は、水平方向の
サンプリング距離のみを前述の方法によつて決定
し、これに合わせて垂直面内での姿勢制御のため
の計算を行つたり、あるいは逆の選択方法をとる
などの方法を用いてもよい。
のならい動作方向決定のための接線演算を行うサ
ンプリング距離と、垂直面内での姿勢決定のため
の姿勢サンプリング距離とをそれぞれLi、L′iのよ
うに区別して示したが、これらはLi、Li′のうち
の小さい方を両者に共通したサンプリング距離と
して選び、センサ21,22のデータを読み出す
回数を削減することも可能である。また、例えば
垂直面内での姿勢を制御することが、作業の仕様
から見てそれほど重要でない場合は、水平方向の
サンプリング距離のみを前述の方法によつて決定
し、これに合わせて垂直面内での姿勢制御のため
の計算を行つたり、あるいは逆の選択方法をとる
などの方法を用いてもよい。
さらに、前述の実施例においては、水平面内に
おけるならい動作と、垂直面内における姿勢制御
の例を示したが、ならい動作は水平面内に限定さ
れるものではなく、任意の平面または曲面内にお
いて行うものであつても、本発明は有効である。
ただし、ならい動作を行う平面または曲面内に、
2本のセンサ21,22が同時に含まれないよう
にセンサを配置する必要がある。このために、ロ
ボツト1の手先にセンサ21,22をセンサ21
の主軸まわりに回転させるためのサーボ機構など
を追加する方法をとつてもよい。
おけるならい動作と、垂直面内における姿勢制御
の例を示したが、ならい動作は水平面内に限定さ
れるものではなく、任意の平面または曲面内にお
いて行うものであつても、本発明は有効である。
ただし、ならい動作を行う平面または曲面内に、
2本のセンサ21,22が同時に含まれないよう
にセンサを配置する必要がある。このために、ロ
ボツト1の手先にセンサ21,22をセンサ21
の主軸まわりに回転させるためのサーボ機構など
を追加する方法をとつてもよい。
上記実施例では、ロボツト1は直角座標形のロ
ボツトを例示しているが、多関節形、極座標形な
どのロボツトであつてもよく、またはレール上を
走行する走行台車などのような作業機械であつて
もよい。
ボツトを例示しているが、多関節形、極座標形な
どのロボツトであつてもよく、またはレール上を
走行する走行台車などのような作業機械であつて
もよい。
また、センサとして非接触式の近接距離センサ
を用いた例を示したが、センサとしては、ポテン
シヨメータ等をばねにより付勢した触針式セン
サ、超音波式距離センサ、レーザ光や赤外光など
によるスポツト光やスリツト光などをワーク表面
に照射しこれをイメージセンサやテレビカメラな
どでとらえて距離を検出する方式のセンサ、また
は画像処理によりワーク表面の位置を検出する方
式のセンサなど、種々の形式のセンサも用いるこ
とができる。
を用いた例を示したが、センサとしては、ポテン
シヨメータ等をばねにより付勢した触針式セン
サ、超音波式距離センサ、レーザ光や赤外光など
によるスポツト光やスリツト光などをワーク表面
に照射しこれをイメージセンサやテレビカメラな
どでとらえて距離を検出する方式のセンサ、また
は画像処理によりワーク表面の位置を検出する方
式のセンサなど、種々の形式のセンサも用いるこ
とができる。
また、前述の実施例においては、センサ21,
22の主軸210,220がワークWの表面に対
して常に垂直となる例を示したが、センサの姿勢
はワークの表面に対して一定の角度をなしても良
く、必ずしも完全に垂直な方向から距離検出を行
う必要はない。また、このようにセンサが一定の
姿勢を持つていても、本発明のならい動作制御は
有効である。
22の主軸210,220がワークWの表面に対
して常に垂直となる例を示したが、センサの姿勢
はワークの表面に対して一定の角度をなしても良
く、必ずしも完全に垂直な方向から距離検出を行
う必要はない。また、このようにセンサが一定の
姿勢を持つていても、本発明のならい動作制御は
有効である。
以上、本発明の一実施例と、そのいくつかの変
形例について述べたが、本発明によれば、曲率が
複雑に変化する対象物に対して、その曲率に応じ
てならい動作のサンプリング距離を変えながらな
らい動作を行うため、曲率半径の小さいワーク部
分についても、その曲率半径の値に対応した円滑
かつ高精度のならい動作を実現できる。また、接
線の傾きが変化しなくとも、(6)式、(12)式に見られ
るように、サンプリング距離の最大値をそれぞれ
L0、L0′としているが、これはならい動作におい
て、一定の長さ以下の折れ線により対象物を近似
するものであり、曲率半径が大きい個所において
も、このようなならい制御により、きめの細かい
高精度のならい動作が可能である。一方、常に微
小距離ごとに接線計算を行う従来の方式では、そ
の接線計算の精度に対するセンサの計測精度の誤
差をまぬがれず誤差が蓄積されるのに対し、本発
明の方法では安定したならい動作制御が可能であ
る。
形例について述べたが、本発明によれば、曲率が
複雑に変化する対象物に対して、その曲率に応じ
てならい動作のサンプリング距離を変えながらな
らい動作を行うため、曲率半径の小さいワーク部
分についても、その曲率半径の値に対応した円滑
かつ高精度のならい動作を実現できる。また、接
線の傾きが変化しなくとも、(6)式、(12)式に見られ
るように、サンプリング距離の最大値をそれぞれ
L0、L0′としているが、これはならい動作におい
て、一定の長さ以下の折れ線により対象物を近似
するものであり、曲率半径が大きい個所において
も、このようなならい制御により、きめの細かい
高精度のならい動作が可能である。一方、常に微
小距離ごとに接線計算を行う従来の方式では、そ
の接線計算の精度に対するセンサの計測精度の誤
差をまぬがれず誤差が蓄積されるのに対し、本発
明の方法では安定したならい動作制御が可能であ
る。
前述の実施例においては、その機能として、な
らい動作面内における接線検出およびならい動作
面と異なる面内(実施例では垂直面内)における
接線検出の2つが含まれているが、これらのうち
のならい動作平面内における機能のみを実現する
ものであつても、本発明の範囲内にあり、本発明
の簡略化例として十分実用になるものである。
らい動作面内における接線検出およびならい動作
面と異なる面内(実施例では垂直面内)における
接線検出の2つが含まれているが、これらのうち
のならい動作平面内における機能のみを実現する
ものであつても、本発明の範囲内にあり、本発明
の簡略化例として十分実用になるものである。
上記各実施例においては、それぞれの演算式か
らなる制御アルゴリズムを第3図計算機51のソ
フトウエアとして具体化してもよいし、専用の電
子回路を付加して演算処理時間を短縮することも
できる。
らなる制御アルゴリズムを第3図計算機51のソ
フトウエアとして具体化してもよいし、専用の電
子回路を付加して演算処理時間を短縮することも
できる。
前述の各実施例においては、作業工具を図示し
ていないが、例えば塗布用弾性体、塗装ガン、溶
接トーチ、グラインダ、シーリング工具などの作
業工具をロボツトの手先に配置し、これら工具の
作業点位置をロボツト1の手先位置Pと一致させ
るか、手先位置Pに対して一定の位置関係を持つ
ように配置し、工具の作業点位置をロボツト1の
手先位置とみなして演算制御すると、作業工具に
よる自動ならい作業が可能である。もちろん、作
業工具を特に備えず、センサによる検出データか
らワークWの形状を計算し、計測用ロボツトとし
て用いる用途に、または、このようにしてワーク
Wの形状をワーク上に沿つた点群の位置データと
して求め、産業用ロボツトにおけるテイーチング
作業に代え、このならい動作結果として得られた
動作経路に沿いプレイバツク動作制御によりロボ
ツトに作業を行わせる自動テイーチング方法に本
方法を応用することも可能である。
ていないが、例えば塗布用弾性体、塗装ガン、溶
接トーチ、グラインダ、シーリング工具などの作
業工具をロボツトの手先に配置し、これら工具の
作業点位置をロボツト1の手先位置Pと一致させ
るか、手先位置Pに対して一定の位置関係を持つ
ように配置し、工具の作業点位置をロボツト1の
手先位置とみなして演算制御すると、作業工具に
よる自動ならい作業が可能である。もちろん、作
業工具を特に備えず、センサによる検出データか
らワークWの形状を計算し、計測用ロボツトとし
て用いる用途に、または、このようにしてワーク
Wの形状をワーク上に沿つた点群の位置データと
して求め、産業用ロボツトにおけるテイーチング
作業に代え、このならい動作結果として得られた
動作経路に沿いプレイバツク動作制御によりロボ
ツトに作業を行わせる自動テイーチング方法に本
方法を応用することも可能である。
本発明によれば、指定面内方向ではセンサの移
動前後の出力から接線方向を検出するので、セン
サがひとつで済み、曲率が急激に変化する部分を
含めて、複雑な3次元形状を有する対象物を正確
にならい制御でき、対象物の最初の微小部分につ
いてならい動作を行なわせれば、そのならい動作
で得られた対象物の形状に関する情報に基づいて
形状を予測しながら自動的に測定するロボツトに
よる形状ならい制御方法が得られる。
動前後の出力から接線方向を検出するので、セン
サがひとつで済み、曲率が急激に変化する部分を
含めて、複雑な3次元形状を有する対象物を正確
にならい制御でき、対象物の最初の微小部分につ
いてならい動作を行なわせれば、そのならい動作
で得られた対象物の形状に関する情報に基づいて
形状を予測しながら自動的に測定するロボツトに
よる形状ならい制御方法が得られる。
第1図は本発明のならい制御装置の一実施例を
備えた作業機械としてのロボツトの一具体例を示
す斜視図、第2図は第1図ならい制御装置および
ロボツトの制御系の構成の一例を示すブロツク
図、第3図は第1図実施例における水平面内のな
らい動作制御方法を示す図、第4図は第3図方法
を一般化して示す図、第5図は本発明のならいサ
ンプリング距離Li+1の選択にあたつて用いる
tanΔθi *とLi+1の関係を示す図、第6図〜第8図
は第1図実施例における垂直面内の姿勢制御方法
を示す図、第9図は第6図〜第8図方法を一般化
して示す図、第10図は同じく姿勢サンプリング
距離L′i+1の選択に用いるΔφi *とL′i+1との関係を
示す図である。 W…対象物、P…ロボツトの手先位置、1…ロ
ボツト、21,22,31,32,41,42…
センサ、51…制御用計算機、58…センサ用イ
ンターフエース。
備えた作業機械としてのロボツトの一具体例を示
す斜視図、第2図は第1図ならい制御装置および
ロボツトの制御系の構成の一例を示すブロツク
図、第3図は第1図実施例における水平面内のな
らい動作制御方法を示す図、第4図は第3図方法
を一般化して示す図、第5図は本発明のならいサ
ンプリング距離Li+1の選択にあたつて用いる
tanΔθi *とLi+1の関係を示す図、第6図〜第8図
は第1図実施例における垂直面内の姿勢制御方法
を示す図、第9図は第6図〜第8図方法を一般化
して示す図、第10図は同じく姿勢サンプリング
距離L′i+1の選択に用いるΔφi *とL′i+1との関係を
示す図である。 W…対象物、P…ロボツトの手先位置、1…ロ
ボツト、21,22,31,32,41,42…
センサ、51…制御用計算機、58…センサ用イ
ンターフエース。
Claims (1)
- 【特許請求の範囲】 1 移動体の先端に取付けられ対象物表面との相
対距離を検出するセンサを指定面内における対象
物表面の接線に沿つて指定方向に設定移動距離だ
け移動させ、センサと対象物表面との相対距離お
よび移動体の3次元空間内の位置に基づいて対象
物表面の位置を求め、 前記設定移動距離両端に対応する対象物表面の
位置から当該対象物表面の指定面内における接線
を演算し直し、当該接線の指定方向の延長上で前
記設定移動距離だけ離れた点に次の動作目標点を
設定し、センサを当該動作目標点に向けて移動さ
せるならい制御方法において、 演算し直した接線とその前に演算された接線と
の方向の変化量に応じて前記設定移動距離を変更
することを特徴とするならい制御方法。 2 特許請求の範囲第1項に記載のならい制御方
法において、 前記指定面と交わる面内に前記センサを複数個
設け、当該センサの出力に基づき3次元形状の対
象物表面の前記交わる面内における法線方向を演
算し、前記3次元形状の対象物表面の法線に対し
て一定の角度以内となるように前記センサの方向
を規制することを特徴とするならい制御方法。 3 特許請求の範囲第1項に記載のならい制御方
法において、 前記センサの姿勢を前記指定面内における前記
接線に対して一定の角度となるように規制するこ
とを特徴とするならい制御方法。 4 移動体の先端に取付けられ対象物表面との相
対距離を検出するセンサと、 前記移動体を制御して前記センサを指定面内に
おける対象物表面の接線に沿つて動作目標点まで
移動させる制御手段と、 前記センサと対象物表面との相対距離および移
動体の3次元空間内の位置に基づき動作目標点に
対応した対象物表面の位置を求め、相続く2つの
動作目標点に対応する対象物表面の位置から指定
面内における対象物表面の接線を求め、当該接線
の指定方向の延長上で設定移動距離だけ離れた点
を次の動作目標点に設定して前記制御手段に出力
する第1演算手段と、 新たに演算する接線とその前に演算された接線
との方向の変化量に応じて前記設定移動距離を変
更し前記第1演算手段に出力する第2演算手段と を含むならい制御装置。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP23421783A JPS60127986A (ja) | 1983-12-14 | 1983-12-14 | ならい制御方法および装置 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP23421783A JPS60127986A (ja) | 1983-12-14 | 1983-12-14 | ならい制御方法および装置 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPS60127986A JPS60127986A (ja) | 1985-07-08 |
| JPH0146275B2 true JPH0146275B2 (ja) | 1989-10-06 |
Family
ID=16967529
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP23421783A Granted JPS60127986A (ja) | 1983-12-14 | 1983-12-14 | ならい制御方法および装置 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPS60127986A (ja) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2004294247A (ja) * | 2003-03-26 | 2004-10-21 | Jfe Steel Kk | 形鋼材の断面寸法測定装置及びその方法 |
Families Citing this family (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| DE19712029A1 (de) * | 1997-03-21 | 1998-09-24 | Zeiss Carl Fa | Verfahren zur Steuerung von Koordinatenmeßgeräten nach Solldaten |
| GB0508273D0 (en) * | 2005-04-25 | 2005-06-01 | Renishaw Plc | Method for scanning the surface of a workpiece |
| DE102006049957A1 (de) * | 2006-10-19 | 2008-04-24 | Abb Ag | System und Verfahren zur Kalibrierung einer Handhabungsvorrichtung |
| JP5089428B2 (ja) * | 2008-02-21 | 2012-12-05 | 株式会社ミツトヨ | 倣い測定装置 |
-
1983
- 1983-12-14 JP JP23421783A patent/JPS60127986A/ja active Granted
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2004294247A (ja) * | 2003-03-26 | 2004-10-21 | Jfe Steel Kk | 形鋼材の断面寸法測定装置及びその方法 |
Also Published As
| Publication number | Publication date |
|---|---|
| JPS60127986A (ja) | 1985-07-08 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US4831232A (en) | Industrial robot equipment capable of automatically terminating operation at a desired sensed location | |
| KR840000538B1 (ko) | 파지장치 | |
| Baeten et al. | Hybrid vision/force control at corners in planar robotic-contour following | |
| JP2787891B2 (ja) | レーザロボットの自動教示装置 | |
| JPS6062487A (ja) | 産業用ロボツト装置 | |
| EP0494314B1 (en) | Non-contact copy control device | |
| JPH09183087A (ja) | 作業ロボット装置 | |
| JPH0146275B2 (ja) | ||
| JPH0146276B2 (ja) | ||
| JPH01109058A (ja) | 非接触ならい制御装置 | |
| WO1992011974A1 (fr) | Procede de numerisation sans contact | |
| JPH04115854A (ja) | 非接触ならい制御装置 | |
| JPS5834781A (ja) | ロボツトによる形状ならい制御方法 | |
| JPS5946758B2 (ja) | 自動作業機械の動作制御方法 | |
| JP2654206B2 (ja) | タッチアップ方法 | |
| JPH09267282A (ja) | 多関節ロボットの作業対象物位置検出装置 | |
| JP3166316B2 (ja) | プレイバック型ロボットの教示・制御方法 | |
| JPH07195287A (ja) | 力制御ロボットの接触式位置検出装置 | |
| JPH03110087A (ja) | 三次元レーザ加工機の追従制御方法 | |
| JP2604838B2 (ja) | 工業用ロボットの制御方法 | |
| JPH01114907A (ja) | 3次元ロボットの教示装置 | |
| JP2936442B2 (ja) | 三次元レーザ加工機 | |
| JPH06270081A (ja) | 多関節ロボットのならい制御装置 | |
| JPH077303B2 (ja) | ロボット教示方法 | |
| JPS63245359A (ja) | 加工線テイ−チング方法 |