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

ロボット制御装置

Info

Publication number
JPH09171402A
JPH09171402A JP7332247A JP33224795A JPH09171402A JP H09171402 A JPH09171402 A JP H09171402A JP 7332247 A JP7332247 A JP 7332247A JP 33224795 A JP33224795 A JP 33224795A JP H09171402 A JPH09171402 A JP H09171402A
Authority
JP
Japan
Prior art keywords
data
robot
work
area
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.)
Pending
Application number
JP7332247A
Other languages
English (en)
Inventor
Yoshiko Matsuoka
佳子 松岡
Masayoshi Takahashi
真義 高橋
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.)
Tokico Ltd
Original Assignee
Tokico 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 Tokico Ltd filed Critical Tokico Ltd
Priority to JP7332247A priority Critical patent/JPH09171402A/ja
Publication of JPH09171402A publication Critical patent/JPH09171402A/ja
Pending legal-status Critical Current

Links

Classifications

    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/02Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]

Abstract

(57)【要約】 【課題】 教示装置をロボットに設置したオンラインの
状態で実際にロボットを動作させつつ、リアルタイム
で、容易かつ確実に干渉チェックを行うことのできるロ
ボット制御装置を提供する。 【解決手段】 ワーク15を網塗り塗装するための教示
データと、リンク機構7、第1アーム10及び第2アー
ム12の長さに基づき、塗装ガン14のガン先を移動さ
せる作業範囲を決定する。そして、この作業範囲内でガ
ン先を移動させるように目標ガン先位置x4refを算出す
る。又、障害物が設置されている場合には、動作が制限
される動作制限区域を求め、該区域にマニピュレータ4
の各部分が侵入する場合には、動作を停止させ、又はガ
ン先位置を該区域との境界に沿って移動させるように目
標ガン先位置x4refを算出する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、産業用ロボットの
制御装置に関わり、特に狭い領域で動作するロボットに
用いて好適なロボット制御装置に関する。
【0002】
【従来の技術】従来、産業用ロボットの制御は、教示者
がロボットのアーム長さ(動作範囲)、設置条件、ブー
スの大きさを考慮した上でワークを設置し、教示を行う
ことによってなされていた。又、複数のロボットがそれ
ぞれの動作範囲を共有しながら作業を行う場合や、動作
範囲内に機器が設けられている場合、各ロボットのマニ
ピュレータや周辺機器が相互に干渉することがあるが、
かかる干渉を回避するため、従来においては、シミュレ
ーション等によりオフラインで画面上のロボットを動作
させて干渉チェックを行っていた。
【0003】
【発明が解決しようとする課題】ところで、上述した従
来のロボット制御においては、教示に要する工数が多
く、教示時間が長くなるという問題点を有していた。
又、これにより、教示者はマニピュレータ近傍に長時間
いなければならず、多大な労力を要していた。更に、実
際にロボットを動作させたとき、ワーク、周辺機器、近
傍のマニピュレータ等が相互に干渉してしまう場合もあ
り、かかる場合には教示データの修正を行う必要が生ず
る。従って、より長い教示時間が必要となる上に、干渉
することによって周辺機器やマニピュレータ等が破損す
るおそれもあるという問題点を有していた。
【0004】本発明はこのような事情に鑑みてなされた
もので、教示装置をロボットに設置したオンラインの状
態で実際にロボットを動作させつつ、リアルタイムで、
容易かつ確実に干渉チェックを行うことのできるロボッ
ト制御装置を提供することを目的とする。
【0005】
【課題を解決するための手段】請求項1記載の発明は、
作業対象物に応じたロボットの動作を指定する教示デー
タを入力する入力手段と、前記入力手段から入力された
前記教示データ及び前記ロボットの可動部分の形態に基
づいて、前記可動部分を動作させる空間領域を算出する
第1の演算手段と、前記教示データに基づいて前記可動
部分を動作させる目標位置データを算出する第2の演算
手段と、前記目標位置データによって表される位置を前
記第1の演算手段により算出された前記空間領域内に制
限し、各々の時刻において、前記可動部分の位置を前記
空間領域内で指定して前記可動部分を前記空間領域内で
動作させる制御データを算出する第3の演算手段とを有
することを特徴としている。
【0006】請求項2記載の発明は、請求項1記載のロ
ボット制御装置において、前記可動部分は、各々、一端
が回動軸に取り付けられ、該回動軸を中心に他端部が回
動移動する1つ以上のアームが各々の回動軸を介して連
結されたアーム部と、前記アーム部に取り付けられ、前
記アーム部全体の動作によって移動してロボットの作業
対象物に対して直接作業を施す作業実施手段とを有し、
前記第1の演算手段は、前記教示データ及び前記可動部
分の各々の前記アームの長さに基づいて前記空間領域を
算出する演算手段であり、前記第2の演算手段は、前記
教示データに基づいた前記アームの各々の連結部の位置
及び前記作業実施手段の位置を前記目標位置データとし
て算出する演算手段であり、前記第3の演算手段は、前
記目標位置データによって表される前記アームの各々の
連結部の位置及び前記作業実施手段の位置を前記第1の
演算手段により算出された前記空間領域内に制限し、各
々の時刻において、前記空間領域内に制限した位置に基
づいて前記作業実施手段を前記空間領域内で動作させる
ための各々の前記アームの回動移動方向における回転角
を前記制御データとして算出する演算手段であることを
特徴としている。
【0007】請求項3記載の発明は、作業対象物に応じ
たロボットの動作を指定する教示データ及び前記ロボッ
トの可動部分の動作領域内に存在する障害物についての
データを入力する入力手段と、前記入力手段から入力さ
れた前記障害物についてのデータに基づいて前記障害物
の領域を特定し、前記可動部分の移動を制限すべき動作
制限区域を特定する動作制限区域データを算出する第4
の演算手段と、前記第4の演算手段によって算出された
前記動作制限区域データを記憶する記憶手段と、前記教
示データに基づいて前記可動部分を動作させる目標位置
データを算出する第5の演算手段と、前記記憶手段から
前記動作制限区域データを読み出し、前記目標位置デー
タによって表される前記可動部分の位置が、前記動作制
限区域に侵入しているか否か判断し、侵入している場合
には、前記ロボットの動作を停止させる制御データを出
力する第6の演算手段とを有することを特徴としてい
る。
【0008】
【発明の実施の形態】以下に図面を参照して本発明の実
施の形態について説明する。図1は本発明の一実施形態
によるロボット制御装置を適用した塗装ロボットシステ
ムの構成を示す概略斜視図である。
【0009】図において、1は制御ユニットであり、テ
ィーチングペンダント2からの指示データを受けるとと
もに、接続線3を介してマニピュレータ4へ制御信号を
出力する。この制御ユニット1は、ロボットの制御プロ
グラム、教示データ、各種制御パラメータ等を記憶する
記憶装置と、それらプログラム等と前記指示データとに
基づいて制御演算及び軌道生成等を行う演算装置とを具
備しており、該演算装置による演算処理の結果に基づい
て前記制御信号を出力する。なお、この演算処理の詳細
については後述する。
【0010】ここに、ティーチングペンダント2は、教
示者の指示を入力するキーボード及び表示部等を有する
入出力装置である。又、接続線3は、ケーブル等により
構成された接続線であり、制御ユニット1とマニピュレ
ータ4とをオンラインで接続するものである。
【0011】マニピュレータ4は、固定ベース5、第1
モータ6、リンク機構7、第2ベース8、第2モータ
9、第1アーム10、モータケース11、第2アーム1
2及び手首13等により構成された本塗装ロボットシス
テムにおける塗装ロボットの主要部である。ここで、固
定ベース5は、ブース内の壁面又は天井に固定されてお
り、これにより、マニピュレータ4がブース内の所定位
置に設置されている。
【0012】第1モータ6は、固定ベース5に取り付け
られており、制御ユニット1からの制御信号に基づいて
駆動し、一端が第一モータ6の回転軸に取り付けられた
リンク機構7を図中θ1方向に回動移動させる。一方、
リンク機構7の他端は第2ベース8に回動可能な連結軸
を介して取り付けられており、第2ベース8は第1アー
ム10の上側に取り付けられている。すなわち、第1モ
ータ6の駆動により、第2ベース8、第1アーム10等
の部材が上下移動するような構成となっている。
【0013】又、第2ベース8には、第2モータ9が取
り付けられている。この第2モータ9は、制御ユニット
1からの制御信号に基づいて駆動し、その回転軸を中心
に第1アーム10を図中θ2方向に回動移動させる。更
に、第1アーム10の下側には、モータケース11が取
り付けられており、このモータケース11内に第3、第
4モータ(図示略)が収納されている。
【0014】第2アーム12は、第1アーム10の先端
部に回動可能な連結軸を介して連結されている。又、手
首13は、第2アーム12の先端部に回動可能な連結軸
を介して取り付けられており、その先端部に塗装ガン1
4が取り付けられている。そして、上記第3、第4モー
タが、第1、第2モータ同様、制御ユニット1からの制
御信号に基づいて駆動し、それぞれの伝達機構を介して
第3モータが第2アーム12を図中θ3方向に回動移動
させ、第4モータが塗装ガン14を図中θ4方向に回動
させるようになっている。
【0015】ここで、塗装ガン14は、一定の方向へ一
定の広がりを持って塗料を噴射するものである。又、1
5は塗装の対象とするワークである。なお、ワークには
種々の形状のものが考えられるが、本実施形態では説明
を簡明にするため、主として図示のような直方体のワー
ク15を例として以下の説明を進めるものとする。
【0016】次に、上記構成による塗装ロボットシステ
ムの動作について説明する。 <1.作業範囲の決定>最初に、教示データから作業範
囲を決定する動作について図2〜図6を参照して説明す
る。ここに、作業範囲とは、塗装ガン14の先端部(以
下、「ガン先位置」という)を移動させることができる
範囲であり、第1アーム10、第2アーム12の長さ
や、ワークの形状等によって制限される。ここでは、図
2に示すように、ワーク15の表面を網塗り塗装する場
合の作業範囲を決定する場合について述べる。
【0017】図2においては、原点O、XR軸、YR軸及
びZR軸で示したロボットベース座標系を定義する。こ
のロボットベース座標系は、第1モータ6の回転軸の中
心を原点Oとした座標系であり、図中の各点をこの座標
系に準じて表現するものとする。又、線分r1、r2、r
3は、それぞれリンク機構7、第1アーム10、第2ア
ーム12に相当し、位置ベクトルx1、x2、x3がそれ
ら部材の連結点又は先端部の位置(以下、「関節位置」
という)を表している。更に、ガン先位置を位置ベクト
ルx4で表し、ガン先の方向を下向きのときを基準(0
°)として上記回転角度θ4で表すものとする。この回
転角度θ4は、ワーク15の上面15aの塗装時にはθ4
≒0°、側面15bの塗装時には、例えば、θ4<−3
0°、側面15cの塗装時にはθ4>30°となる。
【0018】このような設定の下で、まず、ワーク15
を網塗り塗装するための教示データの読み込みを行う
(図3のステップS1参照)。この教示データは、例え
ば、図2中にp0、p1、…、p'0、p'1、…で表した点
の座標データからなるものであり、かかる座標データを
教示者がティーチングペンダント2から入力する。そし
て、教示データが読み込まれると、制御ユニット1にお
いて、図3のステップS2以下に示す手順による演算処
理が行われる。
【0019】ステップS2では、教示データをワーク1
5の各塗装面に対面する点の組に分割する。以下、この
ような点の組が存在するワーク15の各塗装面に対応し
た空間をブロックという。例えば、教示データが図2の
点p0、p1、…、p'0、p'1、…の座標データからなる
場合を考えると、教示データは、ワーク15の上面15
aに対応するブロック(p0〜p9)と側面15bに対応
するブロック(p'0〜p'3)の2ブロックに分割される
ことになる。ステップS2では、このようにして教示デ
ータをワーク15の各塗装面に対応する各ブロックへ分
割する。なお、図中の“ブロックn”は、塗装面の数を
(n+1)としたときのブロック数に相当するブロック
番号である。
【0020】次に、それぞれのブロック毎にガン先位置
の移動範囲を決定する演算処理が行われる。まず、演算
処理の対象とするブロックi(i=0、1、…、n)に
ついて、対応するワーク15の塗装面の方向から、塗装
ガン14のガン先が向く方向を判断する(ステップS
3)。いま、ブロックiがワーク15の上面15aに対
応するブロックであるとすると、ガン先方向は下向き、
すなわちθ4≒0°となり、ステップS4へ進む。
【0021】ステップS4では、ブロックiにおける作
業範囲決定のための初期化を行う。すなわち、上面15
aの教示データの始点から終点までの各方向(XR方
向、YR方向、ZR方向)についての最大値xmax、yma
x、zmax及び最小値xmin、ymin、zminを初期化する
のである。この初期化は、教示者がティーチングペンダ
ント2から最大値xmax、ymax、zmaxに十分小さい値
を入力し、最小値xmin、ymin、zminに十分大きい値
を入力することによって行われる。
【0022】上記初期化が完了すると、制御ユニット1
内の演算装置により、ブロックi内の点pj(j=0、1、
…、m)の座標データ(pjx,pjy,pjz)の各成分
と、最大値(xmax,ymax,zmax)及び最小値(xmi
n,ymin,zmin)の各成分との比較が行われる。そし
て、各成分について、pj成分が対応する最大値成分よ
り大きい場合には、その最大値成分をpj成分の値とす
る(ステップS5、S6、S7)。逆に、pj成分が対応す
る最小値成分より小さい場合には、その最小値成分をp
j成分の値とする(ステップS8、S9、S10)。この比
較演算をブロックi内の全ての点(p0〜pm)について
行い、各方向の最大値と最小値を決定する。
【0023】続いて、はみ出し量(dx,dy,dz)
を最大値に加算又は最小値に減算して、作業範囲を形成
する直方体空間の各頂点の座標を決定する(ステップS
11)。ここで、はみ出し量とは、ガン先位置x4が各方
向の最大値又は最小値を越えて移動し得る距離であり、
第1アーム10又は第2アーム12が特異点近傍を通過
することのないように図4に示す手順で算出される。
【0024】θ4≒0のとき、すなわち、上面15aの
塗装作業に関するブロックiにおいては、第1アーム1
0及び第2アーム12が伸びきった姿勢になることがな
いようなはみ出し量を算出する。まず、教示データのロ
ボットベース座標系の原点Oから最も遠い点と原点Oと
の間のXR-YR平面における距離Lを求める(ステップ
SS1)。
【0025】次いで、この塗装ロボットシステムでは塗
装ロボットが設置される位置が高いほど塗装面への到達
距離が長くなることを考慮して、ガン先位置x4のZR成
分を最小値zminとするときのリンク機構7の回転角度
θ1を算出し、そのときのリンク機構7(線分r1)先端
部の到達距離L1を求める(ステップSS2)。
【0026】この到達距離L1と、第1アーム10(線
分r2)及び第2アーム12(線分r3)の長さの和(L
1+r2+r3)がマニピュレータ4の最大到達距離とな
る。そこで、この最大到達距離と上記距離Lとの差をは
み出し量dx、dyとする。又、ガン先位置x4のZR成
分の制限値zlimと最大値zmaxとの差をはみ出し量dz
とする(ステップSS3)。
【0027】このようにして算出されたはみ出し量(d
x,dy,dz)を用い、図3のステップS11におい
て、上記直方体空間の頂点QAi、QBi、…、QHiの座標
が決定される。具体的には各頂点の座標を、 QAi=(xmax+dx,ymax+dy,zmax+dz) QBi=(xmax+dx,ymin−dy,zmax+dz) QCi=(xmin−dx,ymin−dy,zmax+dz) QDi=(xmin−dx,ymax+dy,zmax+dz) QEi=(xmax+dx,ymax+dy,zmin) QFi=(xmax+dx,ymin−dy,zmin) QGi=(xmin−dx,ymin−dy,zmin) QHi=(xmin−dx,ymax+dy,zmin) とする。これにより、上面15aにおける作業範囲を、
x=xmin−dx〜xmax+dxのXR軸に平行な4直線
と、y=ymin−dy〜ymax+dyのYR軸に平行な4
直線と、z=zmin〜zmax+dzのZR軸に平行な4直
線とで囲まれた直方体空間と決定する。
【0028】一方、ステップS3でブロックiがワーク
15の側面15bに対応するブロックである場合は、ガ
ン先はマニピュレータ4の前方を向くこととなるので、
θ4<−30°となり、ステップS12へ進む。
【0029】ステップS12では、ブロックiの教示デー
タを用い、上記ステップS4〜S10と同様の手順によっ
て、XR、YR、ZRの各方向の最大値(xmax,ymax,
zmax)及び最小値(xmin,ymin,zmin)を決定す
る。そして、ステップS13へ進み、側面15bに対応す
るブロックにおけるはみ出し量(dx,dy,dz)を
算出してから、上記ステップS11同様に作業範囲を決定
する。
【0030】この場合のはみ出し量は、第1アーム1
0、第2アーム12の干渉が生じないように図4のステ
ップSS4〜SS6の手順によって行われる。まず、ガン
先位置x4が原点Oに最も近くなるときのXR-YR平面に
おける距離L’を求める(ステップSS4)。
【0031】次いで、ガン先位置x4のZR成分を最大値
zmaxとするときのリンク機構7の回転角度θ1’を算出
し、そのときのリンク機構7(線分r1)先端部の到達
距離L1’を求める(ステップSS5)。
【0032】そして、第1アーム10、第2アーム12
が最も折れた姿勢になるとき、すなわち回転角度θ3が
最小となるときのガン先位置x4の原点からの距離(L
1’+r1−r2cosθ3min)と、上記距離L’との差
をはみ出し量dx、dyとする。又、ガン先位置x4の
ZR成分の制限値zlimと最大値zmaxとの差をはみ出し
量dzとする(ステップSS6)。
【0033】図3のステップS13での作業範囲の決定
は、具体的には、該作業範囲を形成する直方体空間の頂
点QAi、QBi、…、QHiの座標を、 QAi=(xmax,ymax+dy,zmax+dz) QBi=(xmax,ymin−dy,zmax+dz) QCi=(xmax,ymin−dy,zmin−dz) QDi=(xmax,ymax+dy,zmin−dz) QEi=(xmin−dx,ymax+dy,zmax+dz) QFi=(xmin−dx,ymin−dy,zmax+dz) QGi=(xmin−dx,ymin−dy,zmin−dz) QHi=(xmin−dx,ymax+dy,zmin−dz) とする。これにより、側面15bにおける作業範囲を、
x=xmin−dx〜xmaxのXR軸に平行な4直線と、y
=ymin−dy〜ymax+dyのYR軸に平行な4直線
と、z=zmin−dz〜zmax+dzのZR軸に平行な4
直線とで囲まれた直方体空間と決定する。
【0034】又、ステップS3でブロックiがワーク1
5の側面15cに対応するブロックである場合は、ガン
先方向はマニピュレータ4と向かい合う方向となるの
で、θ4>30°となり、ステップS14へ進む。
【0035】ステップS14では、上記同様、XR、YR、
ZRの各方向の最大値(xmax,ymax,zmax)及び最小
値(xmin,ymin,zmin)を決定する。そして、ステ
ップS15へ進み、側面15cに対応するブロックにおけ
るはみ出し量を算出してから、上記ステップS11、S13
同様に作業範囲を決定する。
【0036】この場合は、塗装ロボットの遠方の塗装面
を塗装ガン14が回り込んで塗装作業を行う場合である
ので、上記上面15aの塗装時同様に第1アーム10及
び第2アーム12が伸びきった姿勢になることがないよ
うに、上述した図4のステップSS1〜SS3の手順では
み出し量を算出する。
【0037】図3のステップS15での作業範囲の決定
は、具体的には、該作業範囲を形成する直方体空間の頂
点QAi、QBi、…、QHiの座標を、 QAi=(xmax+dx,ymax+dy,zmax+dz) QBi=(xmax+dx,ymin−dy,zmax+dz) QCi=(xmax+dx,ymin−dy,zmin) QDi=(xmax+dx,ymax+dy,zmin) QEi=(xmin,ymax+dy,zmax+dz) QFi=(xmin,ymin−dy,zmax+dz) QGi=(xmin,ymin−dy,zmin) QHi=(xmin,ymax+dy,zmin) とする。これにより、側面15cにおける作業範囲を、
x=xmin〜xmax+dxのXR軸に平行な4直線と、y
=ymin−dy〜ymax+dyのYR軸に平行な4直線
と、z=zmin−dz〜zmax+dzのZR軸に平行な4
直線とで囲まれた直方体空間と決定する。
【0038】このように、各ブロック毎について作業範
囲を決定することにより、ワーク15の全ての塗装面に
ついての作業範囲を決定する。
【0039】ここで、ワーク15が塗装ロボットの正面
でない位置に置かれている場合、すなわち、図5に示す
ように教示データがロボットベース座標系のXR、YR、
ZR軸と平行でない場合の作業範囲決定について説明す
る。
【0040】まず、教示データの始点p0から第2点p1
へ向かう方向余弦epを求め(図6のステップS20)、
この方向余弦epがYR軸又はXR軸となす角θyを求める
(ステップS21)。そして、ワーク座標系に準ずる座標
系として、ロボットベース座標系をZR軸を中心として
角度θy回転したワーク座標系XR’YR’ZR’を定義す
る(ステップS22)。
【0041】次いで、教示データを、ZR軸を中心にθy
回転する回転マトリクスを用いて座標変換し、ワーク座
標系から見た位置(座標)に置き換える(ステップS2
3)。更に、上記ガン先位置x4、最大値(xmax,yma
x,zmax)及び最小値(xmin,ymin,zmin)等につ
いても、この新たに定義したワーク座標系に準じて表す
ものとして、上述した図2に示す手順と同様にして作業
範囲を決定する(ステップS24)。
【0042】<2.ガン先の移動>次に、作業範囲内で
のガン先の移動について、図7及び図8を参照して説明
する。なお、以下に述べるガン先の移動は、ワーク15
が塗装ロボットの正面に置かれておらず、ロボットベー
ス座標系をθy回転したワーク座標系XR’YR’ZR’に
準じて作業範囲が決定されている場合である。
【0043】まず、リンク機構7、第1アーム10、第
2アーム12、手首13の各回動軸の回転角度θ1〜θ4
を読み込む(ステップS30)。この読み込みは、マニピ
ュレータ4側から接続線3を介して制御ユニット1へ各
軸の回転角度θ1〜θ4の値がフィードバックされること
によって行われる。そして、制御ユニット1において、
各軸角度のフィードバック値θ1〜θ4から現在のガン先
位置x4feedが算出される(ステップS31)。
【0044】この後、再生、教示等、塗装ロボットの動
作状態に基づいた目標軌道から、目標ガン先位置x4ref
を算出する(ステップS32)。ここで、算出される目標
ガン先位置x4refは、通常のロボットベース座標系に準
じた座標となっているので、ZR軸の周りにθy回転した
ワーク座標系の目標位置x4ref’に変換する(ステップ
S33)。
【0045】次いで、変換後の目標位置x4ref’の各方
向(XR’,YR’,ZR’)の成分が、制限値の範囲
(xmin’〜xmax’,ymin’〜ymax’,zmin’〜zm
ax’)内にあるか否かをチェックする(ステップS3
4)。ここに、制限値とは、ワーク座標系に準じて表さ
れた作業範囲における各方向の最大値(xmax’、yma
x’、zmax’)及び最小値(xmin’、ymin’、zmi
n’)である。
【0046】ステップS34において、目標位置x4ref’
のいずれかの成分が、対応する制限値の範囲を超えてい
る場合には、ステップS35へ進み、該成分に制限値の値
を入力した新たな目標位置x4ref’を求める。そして、
ステップS36へと進み、この新たに求めた目標位置x4r
ef’をZR’軸の周りに−θy回転させる変換を行い、ロ
ボットベース座標系における新たな目標ガン先位置x4r
efとする。
【0047】一方、ステップS34において、目標位置x
4ref’の全ての成分が、対応する制限値の範囲内にある
場合には、目標ガン先位置をステップS32で算出したx
4refのままとし、ステップS35及びS36の演算処理は行
わない。
【0048】このようにして求めた目標ガン先位置x4r
efと現在のガン先位置x4feedにより、塗装ロボットの
制御量を算出する(ステップS37)。この制御量の算出
は、通常の産業用ロボット制御と同様の手順によるが、
逆運動学変換を行わずに各軸の回転角速度dθ1〜dθ4
(“d”は各回転角度方向の角速度(回転角度の微分)
を表す。)を求める手順によって行う。
【0049】ここで、かかる制御量の算出について、図
8に示す本塗装ロボットの制御系ブロック図を参照して
概説する。図8に示すように、本塗装ロボットの制御に
おいては、目標ガン先位置x4refに現在ガン先位置x4f
eedをフィードバックし、ヤコビ行列Jの逆行列J-1
用いて制御量(x4ref−x4feed)を変換する。この変
換は、ロボットベース座標系に準じた制御量(x4ref−
x4feed)を、各軸回転角速度dθ1〜dθ4を要素とす
るいわゆるロボット座標系における制御量dθ´comに
変換するものである。そして、速度ループにおいて各軸
における回転を担う第1モータ6、第2モータ9等のモ
ータ回転速度制御量dθ´feedを算出し、積分演算子1
/Sによる積分演算を経て各軸回転角度制御量θoutを
算出する。
【0050】又、算出された各軸回転角度制御量θout
をフィードバックする際に、フィードバック値θfeed
(=θout)を運動学変換によってロボットベース座標
系に準じた現在ガン先位置x4feedに変換する。なお、
このロボットベース座標系への変換は、図7のステップ
S31における処理に相当する。
【0051】ステップS37では、このようにして塗装ロ
ボットの制御量θoutが算出され、この制御量θoutに基
づいて各軸の回転が制御される(ステップS38)。以
後、所定時間毎(例えば5ms毎)に上記ステップS30〜
S38の演算、制御を繰り返して行う。これにより、作業
範囲内においてガン先の移動が制御されると共に、目標
軌道から算出した目標ガン先位置x4refが作業範囲外と
なっても作業範囲の境界に沿ってガン先を移動させるの
で、動作制限に従いつつ、目標軌道に可能な限り忠実な
制御を行うことができる。
【0052】<3.干渉チェック>続いて、マニピュレ
ータ4の動作範囲内に障害物が設置されている場合の干
渉チェックを伴う制御について説明する。ここでは、随
時、図9中に一点鎖線で示した形状の障害物が設置され
ている場合を例に挙げて説明する。
【0053】動作制限区域の教示 障害物が設置されている場合には、該障害物と、第1ア
ーム10、第2アーム12等の干渉を防ぐため、マニピ
ュレータ4の動作範囲を制限する必要がある。そこで、
教示データを読み込む場合と同様にして障害物による動
作制限区域の教示を行う。
【0054】動作制限区域の教示は、図9中にA、Bで
示したような障害物が存在する領域の代表点の座標デー
タを、教示者がティーチングペンダント2から入力する
ことによって行う。例えば、領域Aについては、点p0
〜p3を代表点として、それらの座標データを入力す
る。そして、教示データをブロックへ分割したときのよ
うに、全ての領域についての代表点を入力した後で、代
表点の座標データを各領域毎に分割する。以下、この場
合の各領域を「障害物ブロック」という。
【0055】ここで、各障害物ブロックにおいて干渉チ
ェックに用いる動作制限区域用座標系を定義する。この
座標系について、障害物ブロックAを例として説明す
る。障害物ブロックAでは、ロボットベース座標系にお
ける原点Oを原点とし、代表点p0〜p3により決定され
る平面aをZX平面とする座標系XAYAZAを動作制限
区域用座標系とする。その後、この座標系に準じた表現
の下で、図10に示すように、代表点p0〜p3の座標デ
ータからXA、YA、ZAの各方向についての最大値成分
及び最小値成分を求めておくと共に、平面aがロボット
ベース座標系のXRZR平面となす角度θWを求めてお
く。
【0056】同様にして、他の全ての障害物ブロックに
おいても動作制限区域用座標系を定義し、最大値成分及
び最小値成分と、ロボットベース座標系となす角度θW
を求めておく。このように、各障害物ブロックにおいて
代表点の座標から制限値を定め、マニピュレータ4の動
作制限区域の教示が完了する。
【0057】干渉チェックと各軸の制御 次に、上述したようにして教示された動作制限区域によ
り、干渉チェックを行いつつ、マニピュレータ4の各軸
を制御する動作について、図11〜図13を参照して説
明する。尚、以下に述べる干渉チェックと各軸の制御に
おいては、動作制限区域用座標系をX’Y’Z’で表
し、座標系X’Y’Z’に準じた座標には「’」を付し
て表す。
【0058】まず、リンク機構7、第1アーム10、第
2アーム12、手首13の各回動軸の回転角度θ1〜θ4
を読み込む(図11のステップS40)。この読み込み
は、図7のステップS30同様、マニピュレータ4側から
接続線3を介して制御ユニット1へ各軸の回転角度θ1
〜θ4の値がフィードバックされることによって行われ
る。又、上記<2.ガン先の移動>において述べたよう
に、読み込みは所定時間毎に行われる。
【0059】そして、図11のステップS41で各軸角度
のフィードバック値θ1〜θ4から現在の各関節位置x1f
eed、x2feed、x3feedと、ガン先位置x4feedが算出さ
れ、ステップS42へ進む。ステップS42では、各障害物
ブロック1、2、…、i、…、nについて、前記各位置
(x1feed、x2feed、x3feed、x4feed)が侵入してい
ないか、すなわち、干渉が生じていないかがチェックさ
れる。このステップS42における侵入チェックは、図1
2に示す手順によって行われる。
【0060】図12の手順では、まず、ステップSS10
で前記各位置の座標を、チェック対象とする障害物ブロ
ックiにおける動作制限区域用座標系X’Y’Z’に準
じた座標(x1feed’、x2feed’、x3feed’、x4fee
d’)へ変換する。この座標変換には、ZR軸の周りに上
記角度θW回転させる回転マトリクスを用いる。
【0061】次いで、前記各位置の変換後の座標x1fee
d’、x2feed’、x3feed’、x4feed’について、各方
向(X’,Y’,Z’)の成分が最大値から最小値(x
min’〜xmax’,ymin’〜ymax’,zmin’〜zma
x’)の間に含まれているか否かチェックする。その結
果、全ての成分が最大値から最小値の間に含まれている
位置がある場合、該位置が表す関節又はガン先位置が障
害物ブロックiに侵入しているものとし(ステップSS
11)、図11のステップS42からステップS43へ進む。
【0062】ステップS43では、目標ガン先位置x4ref
を前記所定時間前(1サンプル前)の目標ガン先位置と
した後、ティーチングペンダント2の表示部に図13に
示すようなメッセージを出力し(ステップS44)、干渉
チェックを終了させる(ステップS45)。このように、
関節位置又はガン先位置が障害物ブロックiに侵入して
干渉が生じた場合の報知手段を設けることにより、教示
者等は素早く状況を把握することができる。
【0063】そして、目標ガン先位置x4refとガン先位
置x4feedとに基づき、ステップS47で上述した制御量
の算出手順(図8参照)と同様に塗装ロボットの制御量
が算出され、この制御量に基づいて各軸の回転が制御さ
れる(ステップS48)。ここで、このときの目標ガン先
位置x4refは1サンプル前の目標ガン先位置と同一であ
るので、ガン先位置は同一、すなわち、停止した状態と
なる。
【0064】一方、図12の前記各位置の変換後のチェ
ックにおいて、全ての成分が最大値から最小値の間に含
まれている位置がない場合には、前記各位置のいずれも
が障害物ブロックに侵入していないとされ、図11のス
テップS42からステップS46へ進む。
【0065】ステップS46では、塗装ロボットの動作状
態に基づいた目標軌道から、目標ガン先位置x4refを算
出し、ステップS47へ進む。そして、この算出された目
標ガン先位置x4refとガン先位置xf4eedに基づいて、
上記同様に制御量が算出され、各軸の回転が制御される
(ステップS48)。
【0066】尚、以上述べた干渉チェックと各軸の制御
によれば、連結されたアームからなる可動部分を有する
塗装ロボットに対し、干渉チェックをアームの関節位置
と塗装ガンのガン先位置とを用いて行うので、数個の点
の位置によって塗装ロボットの可動部分の動作を把握で
き、演算処理の簡略化、高速化等を図ることもできる。
【0067】動作制限区域へのガン先侵入時の制御 上記「干渉チェックと各軸の制御」において、ガン先
のみが動作制限区域に侵入している場合には、ガン先を
動作制限区域に沿って移動させるようにすることもでき
る。このときの動作を図14及び図15を参照して説明
する。尚、以下に述べるガン先侵入時の制御において
は、動作制限区域用座標系をX”Y”Z”で表し、座標
系X”Y”Z”に準じた座標には「”」を付して表す。
【0068】図14において、ステップS50、S51、S
52では、図11のステップS40、S41、S42と同様の動
作による処理が行われる。すなわち、各軸角度のフィー
ドバック値θ1〜θ4が読み込まれ(ステップS50)、該
フィードバック値から現在の各関節位置x1feed、x2fe
ed、x3feedとガン先位置x4feedが算出され(ステップ
S51)、各障害物ブロックについて前記各位置の侵入チ
ェックが行われる(ステップS52)。ここで、ステップ
S52での侵入チェックも図12に示す手順によって行わ
れる。
【0069】そして、ステップS52での侵入チェックの
結果、前記各位置のいずれかが障害物ブロックiに侵入
していると判断され、かつ、その侵入しているのがガン
先位置x4feedである場合には、ステップS53へと進
む。
【0070】ステップS53では、障害物ブロックiに沿
ってガン先を移動させるような目標ガン先位置x4refを
求める。このため、通常の目標ガン先位置x4refを算出
し、この目標ガン先位置x4refの各方向の座標を、図1
5に示す手順により、動作制限区域の各方向の最大値
(xmax”、ymax”、zmax”)及び最小値(xmin”、
ymin”、zmin”)に基づく制限値に制限する。
【0071】図15においては、まず、目標ガン先位置
x4refの座標を障害物ブロックiにおける動作制限区域
用座標系X”Y”Z”に準じた座標x4ref”(x”,
y”,z”)へ変換する(ステップSS20)。次いで、
この動作制限区域のX”方向の最大値xmax”と最小値
xmin”が等しい場合、すなわち、動作制限区域がZ”
Y”平面に平行な平面である場合には、Y”、Z”方向
成分y”、z”が最小値と最大値の間(ymin”〜yma
x”、zmin”〜zmax”)にある限り、X”方向成分
x”の値を最小値xmin”とする(ステップSS21)。
【0072】又、同様に、Y”方向の最大値ymax”と
最小値ymin”が等しく、動作制限区域がX”Z”平面
に平行な平面である場合には、X”、Z”方向成分
x”、z”が最小値と最大値の間にある限り、Y”方向
成分y”の値を最小値ymin”とする(ステップSS2
2)。更に、Z”方向の最大値zmax”と最小値zmin”
が等しく、動作制限区域がX”Y”平面に平行な平面で
ある場合には、X”、Y”方向成分x”、y”が最小値
と最大値の間にある限り、Z”方向成分z”の値を最小
値zmin”とする(ステップSS23)。
【0073】このようにして、目標ガン先位置x4ref”
の動作制限区域に侵入している方向の成分に制限値をセ
ットする。そして、この求めた目標ガン先位置x4refを
ステップSS24でロボットベース座標系の目標ガン先位
置x4refに変換し、図14のステップS53における演算
処理を完了する。
【0074】上述のように、ステップS53で目標ガン先
位置x4refを求めた後は、ステップS58、S59へと進
み、上記同様に制御量の算出、各軸の制御が行われる。
【0075】一方、ステップS52での侵入チェックの結
果、前記各位置のいずれかが障害物ブロックに侵入して
いると判断され、かつ、その侵入しているのがガン先位
置x4feedでない場合には、ステップS54、S55、S56
へと進む。これらのステップにおいては、図11のステ
ップS43、S44、S45同様に目標ガン先位置x4refを1
サンプル前の目標ガン先位置とし、ティーチングペンダ
ント2の表示部にメッセージを出力して干渉チェックを
終了させる。
【0076】又、ステップS52での侵入チェックの結
果、前記各位置のいずれもが障害物ブロックに侵入して
いないと判断された場合には、ステップS57へ進む。そ
して、塗装ロボットの動作状態に基づいた目標軌道か
ら、目標ガン先位置x4refを算出してステップS58、S
59へと進み、制御量の算出、各軸の制御が行われる。
【0077】このように、目標ガン先位置が動作制限区
域内に侵入していても、他の関節位置が動作制限区域内
に侵入していなければ、ガン先位置を動作制限区域の境
界に沿って移動させるので、障害物との干渉を生じるこ
となく、目標軌道に可能な限り忠実な制御を行うことが
できる。
【0078】
【発明の効果】以上説明したように本発明によれば、作
業対象物に応じた教示データを教示するだけで、ロボッ
トの動作領域をその可動部分の形態に基づいて制限する
ので、教示データを実際の動作に適合するように修正す
る時間を大幅に短縮することができる。そして、同時
に、教示者の労力を大幅に軽減することができ、作業効
率を向上させることができると共に、教示者がロボット
近辺で作業する時間が短縮されて安全性が向上するとい
う効果が得られる。
【0079】特に、請求項2記載の発明によれば、連結
されたアーム部からなる可動部分を有するロボットに対
し、作業対象物に実際に作業を施す作業実施手段の位置
を対象として動作領域を制限するので、迅速な教示、修
正のもとでより一層確実な作業を行うことができるとい
う効果が得られる。
【0080】又、請求項3記載の発明によれば、動作領
域に周辺機器、壁面等の障害物が設置されている場合、
それらの障害物についての情報を教示することによって
動作を制限すべき制限区域を求め、可動部分がその制限
区域へ侵入したときに動作を停止するので、リアルタイ
ムで可動部分、周辺機器等の干渉チェックを行うことが
できる。これにより、可動部分と周辺機器との衝突、更
には隣接するロボットの可動部分の衝突を回避すること
ができる。従って、安全性の向上、周辺機器やロボット
の破壊防止等を図ることができ、信頼性が向上し、損害
発生を防止することができるという効果が得られる。
【図面の簡単な説明】
【図1】 本発明の一実施形態によるロボット制御装置
を適用した塗装ロボットシステムの構成を示す概略斜視
図である。
【図2】 教示データから作業範囲を決定する場合のロ
ボットベース座標系を示す図である。
【図3】 教示データから作業範囲を決定する動作を示
す図である。
【図4】 はみ出し量dx、dy、dzを求める手順を
示す図である。
【図5】 ワーク位置がロボットベース座標系からずれ
ているときのワーク座標系を示す図である。
【図6】 ワーク座標系における作業範囲決定の手順を
示す図である。
【図7】 作業範囲内でのガン先の移動制御手順を示す
図である。
【図8】 本塗装ロボットの制御系の概略を示すブロッ
ク図である。
【図9】 本塗装ロボットの周辺に障害物が設置されて
いる場合の概念図である。
【図10】 動作制限区域用座標系における障害物の代
表点から各方向の最大値成分及び最小値成分を求める際
の参考図である。
【図11】 動作制限区域における干渉チェックの一例
を示す図である。
【図12】 図11のステップS42での侵入チェックの
手順を示す図である。
【図13】 動作制限区域に侵入している点がある場合
にティーチングペンダント2の表示部に表示されるメッ
セージの一例である。
【図14】 動作制限区域における干渉チェックの他の
例を示す図である。
【図15】 図14のステップS52での侵入チェックの
手順を示す図である。
【符号の説明】
1 制御ユニット 2 ティーチングペンダント 4 マニピュレータ 7 リンク機構 10 第1アーム 12 第2アーム 13 手首 14 塗装ガン 15 ワーク

Claims (3)

    【特許請求の範囲】
  1. 【請求項1】 作業対象物に応じたロボットの動作を指
    定する教示データを入力する入力手段と、 前記入力手段から入力された前記教示データ及び前記ロ
    ボットの可動部分の形態に基づいて、前記可動部分を動
    作させる空間領域を算出する第1の演算手段と、 前記教示データに基づいて前記可動部分を動作させる目
    標位置データを算出する第2の演算手段と、 前記目標位置データによって表される位置を前記第1の
    演算手段により算出された前記空間領域内に制限し、各
    々の時刻において、前記可動部分の位置を前記空間領域
    内で指定して前記可動部分を前記空間領域内で動作させ
    る制御データを算出する第3の演算手段とを有すること
    を特徴とするロボット制御装置。
  2. 【請求項2】 請求項1記載のロボット制御装置におい
    て、 前記可動部分は、各々、一端が回動軸に取り付けられ、
    該回動軸を中心に他端部が回動移動する1つ以上のアー
    ムが各々の回動軸を介して連結されたアーム部と、前記
    アーム部に取り付けられ、前記アーム部全体の動作によ
    って移動してロボットの作業対象物に対して直接作業を
    施す作業実施手段とを有し、 前記第1の演算手段は、前記教示データ及び前記可動部
    分の各々の前記アームの長さに基づいて前記空間領域を
    算出する演算手段であり、 前記第2の演算手段は、前記教示データに基づいた前記
    アームの各々の連結部の位置及び前記作業実施手段の位
    置を前記目標位置データとして算出する演算手段であ
    り、 前記第3の演算手段は、前記目標位置データによって表
    される前記アームの各々の連結部の位置及び前記作業実
    施手段の位置を前記第1の演算手段により算出された前
    記空間領域内に制限し、各々の時刻において、前記空間
    領域内に制限した位置に基づいて前記作業実施手段を前
    記空間領域内で動作させるための各々の前記アームの回
    動移動方向における回転角を前記制御データとして算出
    する演算手段であることを特徴とするロボット制御装
    置。
  3. 【請求項3】 作業対象物に応じたロボットの動作を指
    定する教示データ及び前記ロボットの可動部分の動作領
    域内に存在する障害物についてのデータを入力する入力
    手段と、 前記入力手段から入力された前記障害物についてのデー
    タに基づいて前記障害物の領域を特定し、前記可動部分
    の移動を制限すべき動作制限区域を特定する動作制限区
    域データを算出する第4の演算手段と、 前記第4の演算手段によって算出された前記動作制限区
    域データを記憶する記憶手段と、 前記教示データに基づいて前記可動部分を動作させる目
    標位置データを算出する第5の演算手段と、 前記記憶手段から前記動作制限区域データを読み出し、
    前記目標位置データによって表される前記可動部分の位
    置が、前記動作制限区域に侵入しているか否か判断し、
    侵入している場合には、前記ロボットの動作を停止させ
    る制御データを出力する第6の演算手段とを有すること
    を特徴とするロボット制御装置。
JP7332247A 1995-12-20 1995-12-20 ロボット制御装置 Pending JPH09171402A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP7332247A JPH09171402A (ja) 1995-12-20 1995-12-20 ロボット制御装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP7332247A JPH09171402A (ja) 1995-12-20 1995-12-20 ロボット制御装置

Publications (1)

Publication Number Publication Date
JPH09171402A true JPH09171402A (ja) 1997-06-30

Family

ID=18252823

Family Applications (1)

Application Number Title Priority Date Filing Date
JP7332247A Pending JPH09171402A (ja) 1995-12-20 1995-12-20 ロボット制御装置

Country Status (1)

Country Link
JP (1) JPH09171402A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20160093287A (ko) * 2015-01-29 2016-08-08 한남대학교 산학협력단 물품 분류용 로봇 시스템
JP2017087302A (ja) * 2015-11-02 2017-05-25 セイコーエプソン株式会社 制御装置、ロボットおよびロボットシステム
CN115847384A (zh) * 2023-03-01 2023-03-28 深圳市越疆科技股份有限公司 机械臂安全平面信息显示方法及相关产品

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20160093287A (ko) * 2015-01-29 2016-08-08 한남대학교 산학협력단 물품 분류용 로봇 시스템
JP2017087302A (ja) * 2015-11-02 2017-05-25 セイコーエプソン株式会社 制御装置、ロボットおよびロボットシステム
CN115847384A (zh) * 2023-03-01 2023-03-28 深圳市越疆科技股份有限公司 机械臂安全平面信息显示方法及相关产品

Similar Documents

Publication Publication Date Title
Gambao et al. Robot assembly system for computer-integrated construction
US6845295B2 (en) Method of controlling a robot through a singularity
US9327401B2 (en) Method of controlling a redundant robot
US7734358B2 (en) Data processing apparatus for arc welding
JPS59218513A (ja) 工業用ロボツトの円弧制御法
JPH09265313A (ja) ロボットの速度演算装置、およびロボットの速度演算方法
US7248012B2 (en) Teaching data preparing method for articulated robot
JP2007136590A (ja) 冗長関節部を有する冗長ロボットの制御装置および制御方法
JPH09171402A (ja) ロボット制御装置
KR101787865B1 (ko) 다관절 링크 기구의 역운동학 해법, 및 이 역운동학 해법을 이용한 교시 데이터 작성 장치
JPH01209505A (ja) 遠隔操作ロボットの教示装置
EP0353305A1 (en) Industrial robot capable of automatically changing operating conditions depending on its attitude of installation
JP2703767B2 (ja) ロボットの教示データ作成方法
JP3552076B2 (ja) ロボット制御方法
JP7294856B2 (ja) ロボット装置
JP3927482B2 (ja) シミュレーション装置
JPH11191005A (ja) ロボット制御装置
JPH0889859A (ja) 塗装用ロボットの動作教示方法及び装置
JP2000039911A (ja) ロボット制御装置
JPS61253510A (ja) ロボツト制御デ−タの確認方法
JPH11345018A (ja) ロボット制御装置
JP2020192621A (ja) ロボットに教示点を教示するための装置、ロボットシステム、及びロボットの教示方法
KR102267943B1 (ko) 6축 다관절로봇의 모니터링 장치
JPH11188686A (ja) ロボット制御装置
WO2023037456A1 (ja) シミュレーション装置

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040428

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040623

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20040714