JPH08328637A - ロボット制御装置 - Google Patents

ロボット制御装置

Info

Publication number
JPH08328637A
JPH08328637A JP13006595A JP13006595A JPH08328637A JP H08328637 A JPH08328637 A JP H08328637A JP 13006595 A JP13006595 A JP 13006595A JP 13006595 A JP13006595 A JP 13006595A JP H08328637 A JPH08328637 A JP H08328637A
Authority
JP
Japan
Prior art keywords
robot
target position
movement
speed
moving
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
Application number
JP13006595A
Other languages
English (en)
Inventor
Yoji Yoshida
洋二 吉田
Yoshiji Yamamoto
吉二 山本
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.)
Toyoda Koki KK
Original Assignee
Toyoda Koki KK
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 Toyoda Koki KK filed Critical Toyoda Koki KK
Priority to JP13006595A priority Critical patent/JPH08328637A/ja
Publication of JPH08328637A publication Critical patent/JPH08328637A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Numerical Control (AREA)
  • Manipulator (AREA)

Abstract

(57)【要約】 【目的】 ワークを把持して移動する際等の動作プログ
ラムの作成や修正変更が容易なロボット制御装置を提供
することを目的とする。 【構成】 mover命令が実行されると、目標位置P
2が設定されるとともに、オフセット移動パラメータ
a,b,cに基づいて中間目標位置P(1+a),P
(2+b)およびオフセット移動時のオフセット移動速
度Vtが設定される。そして、現在位置P1を移動開始
位置として、中間目標位置P(1+a)まで、通常の移
動速度Vmのc%であるオフセット移動速度Vtで移動
し、中間目標位置P(1+a)から中間目標位置P(2
+b)までは、通常の移動速度Vmで移動する。また、
中間目標位置P(2+b)から目標位置である教示点P
2までは、オフセット移動速度Vtで移動して動作を完
了する。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、ロボットによってワー
クの把持等を行って移動する動作プログラムを容易に作
成できるロボット制御装置に関する。
【0002】
【従来の技術】従来、図12に示すように、ロボットの
ハンドを原位置P0より移動させて位置X1にてワーク
を把持した後、このワークを位置X1から位置X2へ移
動させる場合には、位置X1,X2に対応する教示点P
1,P6を含めてP1〜P6の6つの教示点を必要とし
ていた。そして、図13に示すような動作プログラムを
作成する必要があった。即ち、まず、原位置P0より教
示点P1上方の教示点P3まで移動し、この教示点P3
から垂直に教示点P1へと移動する。同様に教示点P1
から教示点P6まで移動する過程では、教示点P1から
教示点P3を介して教示点P6上方の教示点P4まで移
動した後、教示点P6まで移動する。このような移動過
程において、教示点P1で停止させる少し前の教示点P
2と、教示点P6で停止させる少し前の教示点P5を余
分に教示する必要があった。これは、ロボットの停止時
の衝撃を減少させるために、教示点P1と教示点P6の
手前で、移動速度を一旦低下させるためである。このた
め、行番号1,2のmoves命令によって、原位置P
0より教示点P3、P2まで移動した後、行番号3のs
peed命令によって移動速度を所定の停止準備速度
(図13では最高速度の30%)まで減速させる。そし
て、この停止準備速度の状態で、次のmoves命令に
よって教示点P1へ移動していた。また、教示点P1の
位置においてワークを把持した後(行番号5)、教示点
P1から教示点P3に戻る過程においては、教示点P2
までは、停止準備速度で移動した後、速度を再び通常の
移動速度に戻して教示点P3まで移動する(行番号6〜
8)。教示点P3から教示点P4まで移動した後の教示
点P4と教示点P6との間を移動する場合においても同
様である(行番号9〜12)。このように教示点P6ま
でロボットが移動すると、教示点P6の位置において把
持しているワークを載置する(行番号13)。このよう
な動作プログラムを作成することによって、ロボットが
把持したワークを良好に移載することができる。
【0003】
【発明が解決しようとする課題】しかし、上記のように
教示した動作プログラムでは、教示点P1のような1つ
の停止位置に対して、教示点P2のような停止準備位置
まで移動するmoves命令を余分に教示する必要があ
った。さらに、教示点P2のような停止準備用の教示点
において速度を停止準備速度に変更するspeed命令
を余分に教示する必要があった。このため、動作プログ
ラムの作成が煩雑になるという問題があった。また、教
示点P2のような停止準備位置とこの停止準備位置から
の停止準備速度は作業者によって異なってしまい、効率
の良い動作プログラムを作成するには、熟練が必要であ
るという問題があった。
【0004】このような問題に対して、本願出願人は、
特願平5−269562号によって、簡単に動作プログ
ラムの作成を行うことができるロボットの制御装置の提
案を行っている。これによれば、上記したような停止準
備用の教示点P2,P5をプログラムしなくても、簡単
に停止位置から所定の位置まで達した時に減速を行うプ
ログラムを作成することができる。
【0005】しかし、作業者が共通に認識している位置
は、位置X1,X2に対応する教示点P1,P6のみで
ある。このため、上記した技術を用いても作業者によっ
て、教示点P3と教示点P4の設定する位置に大きな差
ができてしまうという問題があった。また、この教示点
P3と教示点P1の距離および教示点P4と教示点P6
の距離が適切に定めることができれば、教示点P2,P
5を設けなくとも教示点P3,P4から速度を変化させ
れば良いのであるが、現実には、作業者の熟練不足等か
らこのような適切な動作プログラムを作成することは困
難であった。
【0006】さらに、教示点P3,P4は、教示によっ
て記憶する位置であるため、教示位置に問題があった場
合、変更する作業は面倒であった。本発明は以上のよう
な問題点を解決するためになされたものであり、ワーク
を把持して移動する際等の動作プログラムの作成や修正
変更が容易なロボット制御装置を提供することを目的と
する。
【0007】
【課題を解決するための手段】本発明は上述した目的を
達成する請求項1に記載された手段は、あらかじめ複数
の教示点を記憶するとともに、この複数の教示点間に沿
ってロボットが所定の動作を行うための動作プログラム
を記憶し、前記教示点と前記動作プログラムに基づいて
前記ロボットの制御を行うロボット制御装置において、
オフセット移動パラメータが設定可能な特定の目標位置
に対する動作命令を記憶する動作命令記憶手段と、前記
オフセット移動パラメータが設定された動作命令を実行
する際に、前記ロボットの移動開始位置および前記目標
位置の少なくとも一方を基準とした中間目標位置を設定
する中間目標位置設定手段と、この中間目標位置設定手
段によって設定された前記中間目標位置の方向へ前記ロ
ボットを移動させた後、前記目標位置への移動を行う移
動実行手段とを備えたことものである。
【0008】請求項2に記載された手段は、あらかじめ
複数の教示点を記憶するとともに、この複数の教示点間
に沿ってロボットが所定の動作を行うための動作プログ
ラムを記憶し、前記教示点と前記動作プログラムに基づ
いて前記ロボットの制御を行うロボット制御装置におい
て、オフセット移動パラメータが設定可能な特定の目標
位置に対する動作命令を記憶する動作命令記憶手段と、
前記オフセット移動パラメータが設定された動作命令を
実行する際に、前記ロボットの移動開始位置および前記
目標位置の少なくとも一方を基準とした中間目標位置を
設定する中間目標位置設定手段と、この中間目標位置設
定手段によって設定された前記中間目標位置の方向へ前
記ロボットを第1の移動速度で移動させる第1の移動実
行手段と、前記中間目標位置から前記目標位置へ向かう
方向へ前記ロボットを第2の移動速度で移動させる第2
の移動実行手段とを備えたものである。
【0009】
【作用】請求項1に記載された手段において、動作命令
記憶手段は、オフセット移動パラメータが設定可能な特
定の目標位置に対する動作命令を記憶する。ロボットが
この動作命令に従って動作する時には、まず中間目標位
置設定手段によって、動作命令にオフセット移動パラメ
ータに設定されていることからロボットの移動の開始位
置および前記目標位置の少なくとも一方を基準とした中
間目標位置が設定される。そして、移動実行手段は、こ
の中間目標位置へ一旦ロボットを向かわせた後、目標位
置へロボットを移動させる。
【0010】請求項2に記載された手段では、第1の移
動実行手段によって、中間目標位置へロボットを移動さ
せる際には、第1の移動速度で移動させ、第2の移動実
行手段によって、中間目標位置から目標位置へロボット
を移動させる際には、第2の移動速度で移動させる。従
って、目標位置へのロボットの移動において、速度を途
中で変化させることができる。
【0011】
【実施例】本発明の実施例について図面を参照して説明
する。図1は、6軸多関節ロボット10(以下単にロボ
ット10という)の機構を示した図である。床面にベー
ス13が配設され、ベース13上には、ローテータ12
が回転自在に配設されている。ローテータ12は、第1
アーム15を揺動自在に軸支し、第1アーム15は、第
2アーム16を回転自在に軸支している。ローテータ1
2、第1アーム15および第2アーム16は、それぞれ
サーボモータM1,M2,M3(図3参照)によって、
軸a,b,c回りに回転駆動されるようになっている。
そして、この回転角は、エンコーダE1,E2,E3に
よって検出されるようになっている。
【0012】第2アーム16の先端部には、ツイストリ
スト17がd軸回りに回転可能に軸支され、ツイストリ
スト17には、ベンドリスト9がe軸回りに回転可能に
軸支されている。ベンドリスト9には、先端にフランジ
18aを有するスイベルリスト18がf軸回りに回転可
能に軸支されている。また、フランジ18aには、ハン
ド19が取り付けられている。ツイストリスト17、ベ
ンドリスト9およびスイベルリスト18は、それぞれサ
ーボモータM4,M5,M6によって回転駆動されるよ
うなっている。そして、その回転角は、エンコーダE
4,E5,E6によって検出されるようになっている。
ハンド19の開閉動作は、工具駆動回路23によって制
御されるようになっている。
【0013】また、このロボット10におけるハンド1
9の位置および姿勢は、図1,2のように表される。即
ち、ハンド19が有する2つの把持爪19a,19bの
中間に座標原点Pが設定されている。そして、座標原点
Pに対して3つの姿勢ベクトルが設定されている。即
ち、ハンド19がワークに接近する方向にアプローチベ
クトルav、一方の把持爪19aから他方の把持爪19
bに向かう方向にオリエントベクトルov、これらの両
ベクトルに直交し、右手系をなす方向にノーマルベクト
ルnvが設定されている。
【0014】図3は、本実施例のロボット制御装置の電
気的構成を示した図である。CPU20には、メモリ2
5、サーボモータM1〜M6を駆動するためのサーボC
PU22a〜22f、動作開始指令、ジョグ運転の指
令、教示点の指示等を行う操作盤26が接続されてい
る。サーボモータM1〜M6は、それぞれサーボCPU
22a〜22fによって駆動される。
【0015】サーボCPU22a〜22fのそれぞれ
は、CPU20から出力される各軸の角度指令値θ1〜
θ6、慣性モーメントD1〜D6、重力トルクT1〜T
6に基づいてサーボモータM1〜M6の出力トルクを制
御する。各駆動軸に連結されたエンコーダE1〜E6の
出力する検出角度α1〜α6はCPU20およびサーボ
CPU22a〜22fに入力しており、CPU20によ
る各軸の慣性モーメントおよび重力トルクの演算および
サーボCPU22a〜22fによる位置フィードバック
制御、速度フィードバック制御、電流フィードバック制
御に用いられる。
【0016】メモリ25には、ロボット10の手首部先
端(フランジ18a)の位置と姿勢を表わす教示点デー
タを記憶するPDA領域、ロボット10を教示点データ
に従って動作させるための動作プログラムが記憶された
PA領域と、補間演算により求められた補間点における
各軸の角度指令値θ1〜θ6を記憶するINA領域、動
作プログラムを実行するための主プログラム等の各シス
テムプログラムを記憶するSPA領域等が形成されてい
る。
【0017】次に以上の構成に基づいて本実施例の作用
を説明する。本実施例のロボット10の動作を実行する
前作業として、作業者による教示作業が行われる。これ
は、作業者が操作盤26を操作してロボット10をジョ
グ運転によって実際に移動させながら行われる。図4に
示す本実施例の場合、作業者は教示位置X1の位置まで
ロボット10のハンド19を移動させ、ハンド19に適
切な姿勢を取らせる。そして、操作盤26上の図略の記
憶ボタンを押すことによって、図2で示された座標原点
Pの位置(教示点P1の位置)と、この時のハンド19
の姿勢を示す各姿勢ベクトルav,ov,nv(教示点
P1における姿勢)が教示データとして記憶される。こ
の後、同様に教示位置X2の位置までロボット10のハ
ンド19を移動させて教示点P2における教示データを
記憶する。また、作業者はこの教示作業とは別に、ロボ
ット10に各教示点間をどの様に移動させて、どのよう
な作業を実行させるかを示す図5に示す動作プログラム
を操作盤26によって作成し、記憶させておく。
【0018】図5はRAM25のPA領域に記憶されて
いる動作プログラムである。この動作プログラムによ
り、ロボット10のハンド19は、図4に示すように移
動する。行番号1のaccel命令は、ロボット10の
開始位置から目標速度へ移行する加速過程における加速
度と、目標速度から目標位置へ移行する減速過程におけ
る減速度を指令する命令語である。即ち、accel命
令は、ロボット10の出力し得る最大加速度Aに対する
割合u%(図5ではu=80%)を指定するものであ
る。
【0019】行番号2のspeed命令は、ロボット1
0が移動する際の目標速度(通常の移動速度)を指定す
る命令語である。即ち、speed命令は、ロボット1
0の出力し得る最大速度Vに対する割合w%(図5では
w=80%)を指定するものである。行番号3のorg
命令は、ロボット10を原位置P0に位置決めする命令
語である。
【0020】行番号4および行番号6のmover命令
は、本実施例の特徴となるロボット10の教示点への移
動命令である。即ち、mover命令は、下記に示すよ
うに表される。 mover Pi,a,b,c Piは、ロボット10が目標とする教示点を示してい
る。即ち、行番号4,6では、それぞれ教示点P1,P
2が目標位置となる。aは移動開始時のオフセット量で
あり、移動を開始する教示点(開始位置)からオフセッ
ト移動を行う距離を示している。これによって、移動を
開始する教示点からロボット10が移動する時には、こ
の教示点におけるアプローチ方向、即ち、ロボット10
のアプローチベクトルavの方向へオフセット量分だけ
直線的に移動するオフセット移動を行う。bは移動終了
時のオフセット量であり、移動を終了する教示点の手前
からオフセット移動を行う距離を示している。これによ
って、移動が終了する教示点(目標位置)へロボット1
0が移動する時には、移動を完了する手前から、この教
示点におけるアプローチ方向へオフセット量分だけ直線
的に移動するオフセット移動を行う。cはaまたはbで
指定されたオフセット移動時の移動速度(オフセット移
動速度)の割合を示している。つまり、ロボット10が
オフセット量を移動する時には、上記したspeed命
令によって指定された速度のc%で移動することを示し
ている。
【0021】従って、行番号4の場合は、a=0である
ため、移動開始時のオフセット移動は行わない。しか
し、b=−100であるため、移動を終了する教示点P
1から100mmだけアプローチ方向と反対方向にある
中間目標位置である位置P(1+100)の位置からオ
フセット移動を行う。このオフセット移動においては、
c=30であるため、設定された移動速度の30%のオ
フセット移動速度で移動する。そして、教示点P1にお
いてアプローチ方向を垂直下向きとして教示した場合、
位置P(1+100)は、教示点P1から真上に100
mmの位置となる。従って、ロボット10は、原位置P
0から位置P(1+100)までspeed命令によっ
て指定された通常の移動速度で移動し(矢印A1)、位
置P(1+100)に達すると、真下に方向を変えて、
速度を30%まで減速した後、教示点P1に移動する
(矢印A2)。
【0022】一方、行番号6の場合は、a=−100で
あるため、移動開始時である教示点P1から100mm
だけアプローチ方向と反対方向にある中間目標位置まで
オフセット移動を行う。この位置は、上記した位置P
(1+100)となり、オフセット移動速度はc=30
であるため、通常の移動速度の30%である。また、b
=−100であるため、移動を終了する教示点P2から
100mmだけアプローチ方向と反対方向にある中間目
標位置である位置P(2+100)からオフセット移動
を行う。このオフセット移動においても、c=30であ
るため、設定された移動速度の30%の速度で移動す
る。そして、教示点P2におけるアプローチ方向を垂直
下向きとして教示した場合、位置P(2+100)は、
教示点P2から真上に100mmの位置となる。従っ
て、ロボット10は、教示点P1から位置P(1+10
0)まで真上に30%の速度で移動した後(矢印B
1)、位置P(1+100)から位置P(2+100)
まではspeed命令によって指定された通常の移動速
度で移動する(矢印B2)。そして、位置P(2+10
0)に達すると、真下に方向を変えて、速度を30%ま
で減速した後、教示点P2に移動する。なお、このmo
ver命令におけるパラメータa,b,cは、a,b共
に0の時には、a,b,cが全て省略できるようになっ
ている。
【0023】行番号5および行番号7のhand命令
は、ハンド19の把持爪を開閉するものである。行番号
5のようにhand on命令の場合は、その位置にお
いてハンド19の把持爪を閉じ、ワークを把持する。ま
た、行番号7のようにhandoff命令の場合は、そ
の位置においてハンド19の把持爪を開き、ワークを放
置する。
【0024】行番号8のorg命令は、基本的には、行
番号3のものと同じロボット10を原位置P0に位置決
めする命令語である。しかし、下記のように指定された
場合は、上記したmover命令と同様にオフセット移
動を行うことができる。 org d,e,f dは移動開始時のオフセット量であり、移動を開始する
教示点からオフセット移動を行う距離を示している。こ
れによって、移動を開始する教示点からロボット10が
移動する時には、この教示点におけるアプローチ方向へ
オフセット量分だけ直線移動を行う。また、eは移動終
了時のオフセット量であり、移動を終了する原位置P0
の手前からオフセット移動を行う距離を示している。こ
れによって、原位置P0へロボット10が移動する時に
は、移動を完了する手前から、原位置P0におけるアプ
ローチ方向へオフセット量分だけ直線移動を行う。fは
dまたはeで指定されたオフセット量をロボット10が
移動する時の移動速度の割合を示しており、オフセット
移動時には、上記したspeed命令によって指定され
た速度のf%で移動することを示している。
【0025】従って、行番号8の場合は、d=−100
であるため、移動開始時である教示点P2から100m
mだけアプローチ方向と反対方向にある中間目標位置ま
でオフセット移動を行う(矢印C1)。この時の移動速
度は、f=30であるため、通常の移動速度の30%で
移動する。このオフセット移動の終了位置は、上記した
位置P(2+100)となる。また、e=0であるた
め、移動を終了する原位置P0の手前の位置でのオフセ
ット移動は行わない。このため、位置P(2+100)
から原位置P0まで通常の速度で移動する。なお、この
org命令におけるパラメータは、d=e=0の時は、
d,e,f共に省略できるようになっており、行番号3
と同じとなる。
【0026】以上のような図5の動作プログラムによっ
て、ロボット10は、図4に示すように原位置P0から
位置P(1+100)まで通常速度で移動した後(矢印
A1)、30%の速度まで減速し、教示点P1でのアプ
ローチ方向(真下)に向かって、教示点P1に達する
(矢印A2)。そして、ワークを把持して再び位置P
(1+100)まで30%の速度で移動した後(矢印B
1)、通常の速度まで増速し、位置P(2+100)ま
で移動する(矢印B2)。そして、この位置で30%の
速度まで減速し、教示点P2でのアプローチ方向(真
下)に向かって、教示点P2に達する(矢印B3)。こ
の教示点P2においてワークを載置し、再び位置P(2
+100)まで30%の速度で移動する(矢印C1)。
この後、通常の速度に増速して原位置P0に戻る(矢印
C2)。
【0027】図8は、CPU20による動作プログラム
を解読するための主プログラムのフローチャートであ
る。ステップ100においてmover命令が解読され
ると、、ステップ102において、現在位置より指定さ
れた教示点までロボット10を移動させるための補間演
算がなされる。そして、補間演算によって求められた各
軸の角度指令値θ1〜θ6は、サーボCPU22a〜2
2fに出力される。この時、mover命令に指定され
ているオフセット移動パラメータからオフセット移動量
とオフセット移動速度が求められオフセット移動が行わ
れる。この処理については後述する。また、ステップ1
04においてorg命令が解読されると、ステップ10
6において、現在位置より原位置P0までロボット10
を移動させるための補間演算がなされる。ここでの作用
は、基本的にはmover命令の場合と同様である。
【0028】ステップ108でhand off命令が
解読されると、ステップ110において、工具駆動回路
23にハンド19を開く指令を与える。また、ステップ
112でhand on命令が解読されると、ステップ
114において、工具駆動回路23にハンド19を閉じ
る命令を与える。ステップ116においてaccelま
たはspeed命令が解読されると、ステップ118に
おいて加速度の指令値uおよび目標速度の指令値wが設
定される。
【0029】次に図6,7,9,10,11に基づいて
mover命令の説明をする。説明を一般化するために
mover命令が以下の様に与えられた場合を考える。 mover P2,a,b,c これは、図6に示すように教示点P1から教示点P2に
移動する際に、移動開始時のオフセット移動を距離a行
い、移動終了時のオフセット移動を距離b行い、オフセ
ット移動速度が通常速度のc%であることを示してい
る。この場合、ロボット10は、教示点P1から距離a
の位置P(1+a)と教示点P2から距離bの位置P
(2+b)の2つの中間目標位置を経て教示点P2に至
る。
【0030】まず、このmover命令の概要を図9の
フローチャートに基づいて説明する。mover命令が
実行されると、ステップ200において目標位置P2が
設定されるとともに、現在位置P1、目標位置P2、こ
の2つの位置で教示されたアプローチ方向、speed
命令によって指定された通常の移動速度Vmおよびオフ
セット移動パラメータa,b,cに基づいて中間目標位
置P(1+a),P(2+b)およびオフセット移動時
のオフセット移動速度Vtが設定される。
【0031】ステップ202以降では、実際の移動が開
始されるが、この時実際には、この1つのmover命
令は、従来技術で説明したmoves命令が3つあるも
のとして実行される。ステップ202では、現在位置P
1を移動開始位置として、中間目標位置P(1+a)ま
で、通常の移動速度Vmのc%であるオフセット移動速
度Vtで移動する。
【0032】ステップ204では、中間目標位置P(1
+a)から中間目標位置P(2+b)まで、通常の移動
速度Vmで移動する。ステップ206では、中間目標位
置P(2+b)から目標位置である教示点P2まで、オ
フセット移動速度Vtで移動して動作を完了する。以上
の過程においてロボット10は、位置P(1+a)と位
置P(2+b)において、上記したようにアプローチ方
向に基づいて移動方向を変化させる。従って、実際の移
動においてはロボット10を滑らかに移動させるために
位置P(1+a)と位置P(2+b)には現実には到達
せず、K1,K2で示すように円弧を描いて移動する。
このようなロボット10の移動過程の速度パターンを示
したものが図7である。以下はこの過程について詳しく
説明する。
【0033】速度パターンを形成するに当たり、上記し
たmover命令の解読が行われる。即ち、上記したm
over命令より、教示点P1、位置P(1+a)、P
(2+b)および教示点P2の4つの教示点があるもの
と見なされる。従って、 移動開始時のオフセット移動
であるP1,P(1+a)間の移動量aより台形n0,
n1,n2,n3で示される速度パターンN1が形成さ
れる。次にこの速度パターンN1について説明する。
【0034】速度パターンN1における速度Vtは、ロ
ボット10の最高速度をV、speed命令によって指
定された通常移動速度Vmが最高速度Vのw%とする
と、オフセット移動時のオフセット移動速度Vtは速度
Vmのc%であるから以下の様に示される。 Vt=Vm・c=V・w・c 同様にこの時の加速度Amは、ロボット10の最高加速
度をAとし、accel命令によって指定されたパラメ
ータがuの時、以下の様に示される。
【0035】Am=A・u この通常の加速度Amは、オフセット移動時も通常の移
動の時も同じである。また、教示点P1から加速を開始
し、速度Vtに達するまでの加速終了距離S1は、三角
形n0,n1,n12の面積であるから、以下の様に示
される。 S1=Vt2 / 2Am 同様にオフセット移動速度Vtから減速を開始すべき減
速開始距離Q1は、オフセット移動量aから、三角形n
4,n2,n3の面積を減算したものであるから、以下
の様に示される。
【0036】Q1=a−Vt2 / 2Am このように速度パターンN1は形成される。同様に通常
速度で移動するP(1+a)、P(2+b)間の速度パ
ターンN2(台形n4,n5,n6,n7)と、移動終
了時のオフセット移動であるP(2+b)、P2間の速
度パターンN3(台形n8,n9,n10,n11)が
形成される。しかし、上記したように位置P(1+
a)、P(2+b)では、円弧移動を行うため、上記3
つの速度パターンN1,N2,N3は合成される。即
ち、速度パターンN1において上記減速開始距離Q1に
達し、減速が開始された時に、速度パターンN2の加速
が開始されるように合成される。また、速度パターンN
2において減速が開始され、P(1+a)からP(2+
b)への減速が終了するタイミングと速度パターンN3
の加速が完了するタイミングが一致するように合成され
る。従って、教示点P1から教示点P2への速度パター
ンは多角形n0,n1,n14,n5,n6,n15,
n10,n11で表される。
【0037】以上のような速度パターンでロボット10
を移動させるフローチャートが図10,11である。ス
テップ300において、mover命令の実行が開始さ
れると、ステップ102において、各パラメータP2,
a,b,cが読み込まれ、中間目標位置P(1+a),
P(2+b)が演算されるととに、オフセット移動時の
オフセット移動速度速度Vtが演算される。なお、加速
度Amはaccel命令によってすでに演算されてい
る。
【0038】ステップ302では、対象となる移動区間
における速度パターンNi(i=1,2,3)の補間変
数が演算される。即ち、移動量Lt、加速終了距離S
i、減速開始距離Qi等が演算される。最初に対象とな
る移動区間はP1,P(1+a)間となる。そして、移
動量Ltは、図6に示すように最初の区間においては教
示点P1から位置P(1+a)の方向にロボット10が
移動して点pにある時の教示点P1から点pまでの距離
である。加速終了距離Si、減速開始距離Qiは、最初
の区間P1,P(1+a)においては、上記したS1,
Q1で求められる。
【0039】ステップ304では、現在の移動量Ltが
加速終了距離Siに達したかを判断する。達しているな
らば(YES)、加速区間が終了し、等速状態となるた
め、ステップ308以降に移行する。また、移動量Lt
が加速終了距離Siに達していないならば(NO)、加
速移動を行うためにステップ306に移行する。最初の
状態では、まだ移動を開始したばかりなので、加速中で
あり、ステップ306に移行する。
【0040】ステップ306では、移動開始位置から次
の目標位置に向かう速度成分について単独に加速を行
う。図6の例では、実際にこの単独の加速を行うのは、
最初の区間P1,P(1+a)のみである。ここでは、
補間周期毎にロボット10を移動させる各軸毎の目標値
を演算し、この目標値を基にサーボCPU22a〜22
fに出力を行い、ロボット10を移動させる。1補間周
期分の演算が行われ、サーボCPU22a〜22fへの
出力が終了するとステップ302に戻る。
【0041】ステップ302において、再び移動量Lt
の演算が行われ、ステップ304で再び加速区間が終了
したかが判別される。そして、加速区間が終了していれ
ば、ステップ308に移行する。加速区間が終了してい
ないならば、ステップ306を繰り返す。ステップ30
8では、現在の移動量Ltが減速開始距離Qiに達した
かを判断する。達しているならば(YES)、等速区間
が終了し、減速状態となるため、ステップ312以降
(図11)に移行する。また、移動量Ltが減速開始距
離Qiに達していないならば(NO)、等速移動を行う
ためにステップ310に移行する。最初の状態では、ま
だ等速移動を開始したばかりなので、等速中であり、ス
テップ310に移行する。
【0042】ステップ310では、移動開始の教示点P
1から次の目標位置である位置P(1+a)に向かう速
度成分について等速移動を行う。即ち、補間周期毎にロ
ボット10を移動させる各軸毎の目標値を演算し、この
目標値を基にサーボCPU22a〜22fに出力を行
い、ロボット10を移動させる。1補間周期分の演算が
行われ、サーボCPU22a〜22fへの出力が終了す
るとステップ302に戻る。この等速移動は、最初の区
間P1,P(1+a)および最後の区間 P(2+
b),P2の場合はオフセット移動速度Vtとなり、中
間の区間P(1+a),P(2+b)の場合は通常の移
動速度Vmとなる。
【0043】そして、ステップ302、304を経てス
テップ308で再び等速区間が終了したかが判別され
る。等速区間が終了していれば、ステップ312に移行
する。等速区間が終了していなければ、ステップ310
を繰り返す。 ステップ312では、次の目標位置が設
定されているかを判別する。次の目標位置が設定されて
いるならば(YES)、次の目標位置に滑らかに移動す
るために移動速度の合成を行う必要があるため、ステッ
プ314に移行する。また、現在の移動区間が最終の区
間であり、次の目標位置が設定されていないならば(N
O)、そのまま単独に減速を行い、最終の目標位置に停
止するために、ステップ320に移行する。
【0044】現在は、最初の区間P1,P(1+a)を
移動中であるため、次の目標位置は位置P(2+b)で
あることがステップ300で既に設定されている。従っ
て、ステップ314に移行する。ステップ314におい
ては、合成速度パターン変数を演算する。最初の区間P
1,P(1+a)を移動中の場合では、合成速度パター
ンは、多角形n4,n2,n14,n5,n13で示さ
れる。この速度パターンでは、教示点P1から位置P
(1+a)に向かう速度を徐々に減速し、位置P(1+
a)から位置P(2+b)に向かう速度を徐々に加速す
る。即ち、ステップ314では、教示点P1から位置P
(1+a)に向かう速度成分に、位置P(1+a)から
位置P(2+b)に向かう速度成分を加えていくことに
よって、ロボット10の移動方向と速度成分を演算す
る。
【0045】そして、ステップ316では、この算出さ
れた合成速度パターン変数に従って、補間周期毎にロボ
ット10を移動させる各軸毎の目標値を演算し、この目
標値を基にサーボCPU22a〜22fに出力を行い、
ロボット10を移動させる。この時のロボット10の移
動する区間は、減速開始距離Q1から円弧区間K1を経
て速度パターンN2における加速終了距離S2に至るま
での区間である。
【0046】従って、ステップ318では、合成区間が
終了し、次の速度パターンにおける加速終了距離(現在
の場合は加速終了距離S2)まで達したか否かが判別さ
れる。次の速度パターンにおける加速終了距離まで達し
ており、合成パターンを終了するならば、(YES)、
再び等速移動に移行するためステップ302に戻る。ま
た、まだ次の速度パターンにおける加速終了距離まで達
しておらず、合成パターンが終了していないならば(N
O)、ステップ314に戻り、引き続き合成パターンに
おける移動を実行する。
【0047】ステップ302では、対象となる移動区間
をP(1+a),P(2+b)とし、速度パターンN2
を演算する。しかし、この時、既に合成パターンによっ
て加速を終了しているため、移動量Ltは、加速終了距
離S2から開始される。従って、ステップ304はYE
S、ステップ308はNOとなり、ステップ310にお
いて速度パターンN2における等速移動を実行する。等
速移動を終了すると上記した速度パターンN1と同様に
減速開始距離Q2に達した位置より合成パターンによる
円弧移動が開始される。即ち、減速開始距離Q2に達す
ると、ステップ308がYESとなり、ステップ312
は、次の目標位置は位置P2が存在するため、YESと
なる。従って、減速開始距離Q2から円弧区間K2を経
て速度パターンN3における加速終了距離S3に至るま
での区間の合成パターンの移動を行う。
【0048】この合成パターンが終了した後は、速度パ
ターンN3における等速移動が行われる。そして、速度
パターンN3における減速開始距離Q3に達すると、ス
テップ308はYESとなる。この後、ステップ312
では、次の目標位置は設定されていないため、NOとな
り、ステップ320に移行する。ステップ320では、
次の目標位置まで単独に減速を行う。図6の例では、実
際にこの単独の減速を行うのは、最後の区間P(2+
b),P2のみである。ここでは、補間周期毎にロボッ
ト10を移動させる各軸毎の目標値を演算し、この目標
値を基にサーボCPU22a〜22fに出力を行い、ロ
ボット10を移動させる。1補間周期分の演算が行わ
れ、サーボCPU22a〜22fへの出力が終了すると
ステップ322に移行する。
【0049】ステップ322では、最終目標位置の出力
が完了したか否かを判別する。最終目標位置の出力が完
了したならば(YES)、ロボット10は目標位置であ
る教示点P2まで到達したことになるため、このmov
er命令を終了する。また、最終位置の出力が完了して
いないならば(NO)、ステップ302に戻り、減速区
間が終了して目標位置に達するまで減速移動を実行す
る。
【0050】以上のステップによって、mover命令
は実行される。org命令の場合は、目標位置が原位置
P0となるのみで同様である。以上述べたように本実施
例のロボット制御装置は、mover命令およびorg
命令を1つ設定するだけで、目標位置の途中に中間目標
位置を設定できるだけでなく、その中間目標位置の前後
で速度を任意に変化させることができる。従って、ロボ
ット10によって、ワークを把持し、移載するという作
業を行う場合等では、各作業者に共通に認識される目標
位置のみを教示しておけば、簡単に目標位置へ接離し、
速度を増減する動作プログラムが作成できる。また、m
over命令およびorg命令のオフセット移動パラメ
ータa,b,c,d,e,fを省略すれば従来の動作命
令と同じとなるため、作業者のプログラミング作業が複
雑になることを防止できる。本実施例の動作プログラム
と従来技術の欄で説明した動作プログラムとを比較する
と、図13で示す従来の動作プログラムにおける行番号
1〜13が図5で示す本実施例の動作プログラムにおけ
る行番号4〜7に相当する。従って、従来13行必要で
あった動作命令が4行となり、大幅にプログラム作成が
簡単になる。
【0051】以上述べた実施例では、mover命令が
1つの場合であるため、目標位置P2において移動を完
了し、停止している。しかし、mover命令が複数個
連続する場合は、設定した各教示点で停止することな
く、上記したP(1+a),P(2+b)のように円弧
状の軌跡を描いて連続的に移動するようにしても良い。
また、上記した実施例では、加速、等速、減速を変化さ
せる速度変化のタイミングを速度パターンから得られる
距離に基づいて行っているが、速度パターンから得られ
る各速度変化を行うべき時間に基づいて制御を行うよう
にしても良い。
【0052】上記した実施例におけるmover命令お
よびorg命令におけるオフセット移動パラメータは、
直接オフセット移動量を設定する形式としているが、あ
らかじめ定められた距離だけオフセット移動する形式と
しても良い。また、上記した実施例では、移動速度を通
常の速度に対する割合で設定する形式としているが、あ
らかじめ定められた速度としても良い。また、直接速度
を指定する形式としても良い。
【0053】
【発明の効果】請求項1に記載された手段では、1つの
動作命令にオフセット移動パラメータを付加して指定す
るのみで、中間目標位置が設定され、ロボットが目標位
置に移動する際に、一旦中間目標位置に向かった後、目
標位置に到達するようにした。このため、目標位置に向
かう途中で向きを変化させる必要がある時にも、教示点
を余分に設ける必要がなく、簡単に動作プログラムが作
成できる。また、中間目標位置は教示点ではないため、
中間目標位置の設定を変化させれば簡単に動作軌跡を変
化させることができる。
【0054】請求項2に記載された手段では、中間目標
位置へロボットを移動させる際には、第1の移動速度で
移動させ、中間目標位置から目標位置へロボットを移動
させる際には、第2の移動速度で移動させるようにし
た。このため、目標位置へのロボットの移動において、
速度を途中で変化させることができる。これによって、
目標位置に接近する時や、移動開始位置から離れる時に
ロボットの移動速度を通常の移動速度よりも減速させる
ことによって、ワークを載置する時等の衝撃を回避でき
る動作プログラムを簡単に作成することができる。
【0055】請求項3に記載された手段では、オフセッ
ト移動パラメータをロボットの移動の開始位置または目
標位置から中間目標位置までの距離で示すことによっ
て、簡単に中間目標位置を変化させることができる。こ
のため動作プログラムの変更が容易となる。請求項4に
記載された手段では、中間目標位置をロボットの移動の
開始位置または目標位置におけるロボットのアプローチ
方向に設定するようにした。このため、移動の開始位置
におけるアプローチ方向を基準とした場合には、開始位
置において特定の作業を終了した時のハンドの方向にロ
ボットを一旦移動させてから目標位置への移動を開始す
ることができる。このため、作業台やワークとの干渉を
防止するための動作プログラムが簡単に作成できる。
【0056】また、目標位置におけるアプローチ方向を
基準とした場合には、目標位置において特定の作業を開
始する時のハンドの方向から目標位置に対して接近する
ことが可能となる。このため、迅速に作業を開始できる
とともに、作業台やワークとの干渉を防止するための動
作プログラムが簡単に作成できる。請求項5に記載され
た手段では、オフセット移動パラメータをロボットの移
動の開始位置または目標位置から中間目標位置までの距
離と、第1の移動速度と第2の移動速度との割合で指定
するようにした。このため、ロボットが移動を開始する
時や、目標位置に接近する時の移動速度を任意に変化さ
せることが可能となるだけでなく、この時の移動速度を
実行する距離を任意に変化させることができる。
【図面の簡単な説明】
【図1】本実施例のロボットを示した図である。
【図2】本実施例のハンドを示した図である。
【図3】本実施例の電気的構成を示した図である。
【図4】本実施例のロボットの動作を説明するための図
である。
【図5】本実施例の動作プログラムを示した図である。
【図6】本実施例のmover命令を説明するための図
である。
【図7】本実施例の速度パターンを示した図である。
【図8】本実施例の主プログラムを説明するためのフロ
ーチャートである。
【図9】本実施例のmover命令の概要を説明するた
めフローチャートである。
【図10】本実施例のmover命令を説明するためフ
ローチャートである。
【図11】図10の続きを示したフローチャートであ
る。
【図12】従来技術の動作を示した図である。
【図13】従来技術の動作プログラムを示した図であ
る。
【符号の説明】
10 ロボット 20 CPU 22a〜22f サーボCPU 25 メモリ 26 操作盤 M1〜M6 サーボモータ

Claims (5)

    【特許請求の範囲】
  1. 【請求項1】 あらかじめ複数の教示点を記憶するとと
    もに、この複数の教示点間に沿ってロボットが所定の動
    作を行うための動作プログラムを記憶し、前記教示点と
    前記動作プログラムに基づいて前記ロボットの制御を行
    うロボット制御装置において、 オフセット移動パラメータが設定可能な特定の目標位置
    に対する動作命令を記憶する動作命令記憶手段と、 前記オフセット移動パラメータが設定された動作命令を
    実行する際に、前記ロボットの移動開始位置および前記
    目標位置の少なくとも一方を基準とした中間目標位置を
    設定する中間目標位置設定手段と、 この中間目標位置設定手段によって設定された前記中間
    目標位置の方向へ前記ロボットを移動させた後、前記目
    標位置への移動を行う移動実行手段とを備えたことを特
    徴とするロボット制御装置。
  2. 【請求項2】 あらかじめ複数の教示点を記憶するとと
    もに、この複数の教示点間に沿ってロボットが所定の動
    作を行うための動作プログラムを記憶し、前記教示点と
    前記動作プログラムに基づいて前記ロボットの制御を行
    うロボット制御装置において、 オフセット移動パラメータが設定可能な特定の目標位置
    に対する動作命令を記憶する動作命令記憶手段と、 前記オフセット移動パラメータが設定された動作命令を
    実行する際に、前記ロボットの移動開始位置および前記
    目標位置の少なくとも一方を基準とした中間目標位置を
    設定する中間目標位置設定手段と、 この中間目標位置設定手段によって設定された前記中間
    目標位置の方向へ前記ロボットを第1の移動速度で移動
    させる第1の移動実行手段と、 前記中間目標位置から前記目標位置へ向かう方向へ前記
    ロボットを第2の移動速度で移動させる第2の移動実行
    手段とを備えたことを特徴とするロボット制御装置。
  3. 【請求項3】 前記請求項1または前記請求項2に記載
    のロボット制御装置において、 前記オフセット移動パラメータは、前記移動開始位置ま
    たは前記目標位置から前記中間目標位置までの距離であ
    ることを特徴とするロボット制御装置。
  4. 【請求項4】 前記請求項1または前記請求項2に記載
    のロボット制御装置において、 前記オフセット移動パラメータによって指定される前記
    中間目標位置は、前記移動開始位置または前記目標位置
    における前記ロボットのアプローチ方向に設定されてい
    ることを特徴とするロボット制御装置。
  5. 【請求項5】 前記請求項2に記載のロボット制御装置
    において、 前記オフセット移動パラメータは、前記移動開始位置ま
    たは前記目標位置から前記中間目標位置までの距離と、
    前記第1の移動速度と前記第2の移動速度との割合であ
    ることを特徴とするロボット制御装置。
JP13006595A 1995-05-29 1995-05-29 ロボット制御装置 Pending JPH08328637A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP13006595A JPH08328637A (ja) 1995-05-29 1995-05-29 ロボット制御装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP13006595A JPH08328637A (ja) 1995-05-29 1995-05-29 ロボット制御装置

Publications (1)

Publication Number Publication Date
JPH08328637A true JPH08328637A (ja) 1996-12-13

Family

ID=15025179

Family Applications (1)

Application Number Title Priority Date Filing Date
JP13006595A Pending JPH08328637A (ja) 1995-05-29 1995-05-29 ロボット制御装置

Country Status (1)

Country Link
JP (1) JPH08328637A (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013175666A1 (ja) * 2012-05-25 2013-11-28 大日本スクリーン製造株式会社 把持機構の軌道生成装置、把持機構の軌道生成方法、把持機構の軌道生成プログラム、記録媒体、ロボットプログラム作成装置
EP3093108A2 (en) 2015-05-12 2016-11-16 Canon Kabushiki Kaisha Information processing method and information processing apparatus
CN112413541A (zh) * 2020-11-19 2021-02-26 广州市雅江光电设备有限公司 一种摇头灯具的传动机件控制方法及系统
WO2022239106A1 (ja) * 2021-05-11 2022-11-17 ファナック株式会社 数値制御装置及び記憶媒体
US11839971B2 (en) 2020-07-22 2023-12-12 Seiko Epson Corporation Teaching control method for robot, robot system, and computer program

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013175666A1 (ja) * 2012-05-25 2013-11-28 大日本スクリーン製造株式会社 把持機構の軌道生成装置、把持機構の軌道生成方法、把持機構の軌道生成プログラム、記録媒体、ロボットプログラム作成装置
EP3093108A2 (en) 2015-05-12 2016-11-16 Canon Kabushiki Kaisha Information processing method and information processing apparatus
US10011011B2 (en) 2015-05-12 2018-07-03 Canon Kabushiki Kaisha Information processing method and information processing apparatus
US11090804B2 (en) 2015-05-12 2021-08-17 Canon Kabushiki Kaisha Information processing method and information processing apparatus
EP4094901A1 (en) 2015-05-12 2022-11-30 Canon Kabushiki Kaisha Information processing method and information processing apparatus
US11958190B2 (en) 2015-05-12 2024-04-16 Canon Kabushiki Kaisha Information processing method and information processing apparatus
US11839971B2 (en) 2020-07-22 2023-12-12 Seiko Epson Corporation Teaching control method for robot, robot system, and computer program
CN112413541A (zh) * 2020-11-19 2021-02-26 广州市雅江光电设备有限公司 一种摇头灯具的传动机件控制方法及系统
CN112413541B (zh) * 2020-11-19 2022-08-30 广州市雅江光电设备有限公司 一种摇头灯具的传动机件控制方法及系统
WO2022239106A1 (ja) * 2021-05-11 2022-11-17 ファナック株式会社 数値制御装置及び記憶媒体

Similar Documents

Publication Publication Date Title
JP4060393B2 (ja) ロボットの速度演算装置、およびロボットの速度演算方法
JPH079606B2 (ja) ロボット制御装置
WO2002066210A1 (fr) Dispositif de commande de robot
WO1989008878A1 (en) Method of controlling tool attitude of a robot
CN117157596A (zh) 数值控制装置及数值控制系统
JPH06332510A (ja) 数値制御装置
JPH07319547A (ja) ロボットの倣い制御方法
JPH08328637A (ja) ロボット制御装置
JP6123595B2 (ja) 2軸ロボットの速度制御方法
JP2015231659A (ja) ロボット装置
US20230035296A1 (en) Method of suppressing vibrations of a robot arm with external objects
JP5633268B2 (ja) ロボットの制御装置
JP3194829B2 (ja) ロボットの動作プログラム生成装置
JPH07200018A (ja) ロボットの制御装置
US20230286152A1 (en) Robot system and controller
JPH08155647A (ja) 溶接ロボットのウィービング制御装置
JPH0677910B2 (ja) 産業用ロボツトの制御方法
JPH07104826A (ja) ロボットの制御装置
JP2002331479A (ja) 産業用ロボットの制御方法
JPH07104825A (ja) ロボットの制御装置
JPH06190750A (ja) ロボットの制御装置
JPH1177572A (ja) ロボット制御装置
JPH0957671A (ja) 多関節型移動体の制御装置及びその制御方法
JPH09155776A (ja) ロボットの制御装置
JP2566475B2 (ja) ロボットの回動軸速度制御装置