JP3552076B2 - Robot control method - Google Patents
Robot control method Download PDFInfo
- Publication number
- JP3552076B2 JP3552076B2 JP16032696A JP16032696A JP3552076B2 JP 3552076 B2 JP3552076 B2 JP 3552076B2 JP 16032696 A JP16032696 A JP 16032696A JP 16032696 A JP16032696 A JP 16032696A JP 3552076 B2 JP3552076 B2 JP 3552076B2
- Authority
- JP
- Japan
- Prior art keywords
- torque
- motor
- robot
- command signal
- teaching
- 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 - Fee Related
Links
Images
Classifications
-
- Y—GENERAL 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
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P70/00—Climate change mitigation technologies in the production process for final industrial or consumer products
- Y02P70/10—Greenhouse gas [GHG] capture, material saving, heat recovery or other energy efficient measures, e.g. motor control, characterised by manufacturing processes, e.g. for rolling metal or metal working
Landscapes
- Numerical Control (AREA)
- Manipulator (AREA)
- Control Of Position Or Direction (AREA)
Description
【0001】
【発明の属する技術分野】
本発明は、教示再生形の工業用ロボットに用いて好適なロボット制御装置及びその制御方法に関する。
【0002】
【従来の技術】
従来の工業用ロボット制御においては、消費電力を低減する手法として、ロボットの動作停止時に発生する熱エネルギーを電力に変換するものが提案されている。又、特開平5−138562号公報では、ロボットの静止状態において、その待機姿勢を重力トルクが小さい姿勢とすることによって消費電力を低減するロボット制御方法が開示されている。
【0003】
【発明が解決しようとする課題】
ところが、上述の熱エネルギーを電力に変換するものにおいては、積極的な発電を行うために、モータアンプ部に各々発電機を設けなければならない。このため、コントローラが大形化する上に、コスト上昇にもつながるという問題点を有していた。
【0004】
一方、待機姿勢を変更するロボット制御方法では、待機姿勢を重力トルクが小さい姿勢とするために、ワークやその供給装置又はその他の周辺機器等の環境と干渉する場合がある。従って、かかる場合には特開平5−138562号公報に開示された方法は適用することができない。又、このような方法においては、ロボットが、教示者が教示した姿勢と異なる姿勢をとることにもなるという問題点を有していた。
【0005】
更に、一般の工業用ロボットに用いる減速機は、回転開始時の摩擦抵抗により起動トルクが非常に大きくなるという問題もある。
【0006】
本発明はこのような事情に鑑みてなされたもので、減速機の摩擦抵抗を逆に利用し、ロボットの動作停止時における待機姿勢を教示された姿勢に保ちつつ、そのときの保持トルクを減少させ、消費電力を低減してランニングコストを下げることができるロボット制御装置及びその制御方法を提供することを目的とする。
【0007】
【課題を解決するための手段】
上記問題点の解決のために、本発明を次のように構成した。
【0008】
請求項1記載の発明は、減速機を介して伝達されるモータのトルクによって可動部分を動作させるロボットを、教示データに基づいて制御するロボット制御方法において、前記ロボットに対して前記教示データに基づく第1の指令信号を出力する第1の指令信号出力手段と、前記第1の指令信号に基づく前記ロボットの動作中において、前記ロボットの動作が一定の待機姿勢を保持する待機状態か否かを判断する判断処理手段と、前記判断処理手段により待機状態であると判断されたときに、前記モータのトルクを、当該トルクと前記減速器の摩擦トルクとによって前記可動部分が静止状態に維持される範囲で減少させる第2の指令信号を出力する第2の指令信号出力手段とを有するロボット制御装置によるロボット制御方法であって、前記教示データの教示点へ前記ロボットを移動させる第1の過程と、前記ロボットが教示点へ移動してきたときに、当該教示点が待機姿勢をとるべき位置であるか否か判断する第2の過程と、前記第2の過程において待機姿勢をとるべき位置と判断された場合に、前記モータのトルクを一定方向に微小量ずつ変化させる第3の指令信号を出力する第3の過程と、前記第3の指令信号により、前記可動部分が静止状態から動作した直前の当該第3の指令信号を記憶する第4の過程と、前記モータのトルクを前記第3の過程における一定方向と逆の方向に微小量ずつ変化させる第4の指令信号を出力する第5の過程と、前記第4の指令信号により、前記可動部分が静止状態から動作した直前の当該第4の指令信号を記憶する第6の過程と、前記第4及び第6の過程において記憶した当該第4及び第5の指令信号のうち、前記モータに対して少ないトルクを指示する指令信号を当該教示点における前記第2の指令信号とする第7の過程とにより決定された前記第2の指令信号に基づいて前記ロボットを制御することを特徴としている。
【0009】
請求項2記載の発明は、請求項1記載のロボット制御方法において、前記ロボットを各教示点へ移動させて前記第2〜第7の過程を繰り返し、待機姿勢を保持するすべての教示点における前記第2の指令信号を決定して記憶し、前記教示データ及び記憶した前記第2の指令信号に基づいて前記ロボットを制御することを特徴としている。
【0010】
請求項3記載の発明は、前記第1及び第2の指令信号は、前記モータに対する前記可動部分の動作速度を指示する速度指令信号である請求項1記載のロボット制御方法であって、前記判断処理手段により待機状態であると判断されたときに、前記可動部分の動作量に基づいて前記可動部分を静止状態に維持させるに必要な前記モータのトルクを求める第10の過程と、前記第10の過程において求めた前記必要な前記モータのトルクが0であった場合、前記可動部分を微小範囲で動作させて静止状態における前記モータのトルクを0とする前記微小範囲の動作における前記可動部分の動作速度を指示する前記第2の指令信号を出力し、前記可動部分を前記微小範囲で動作させる第11の過程と、前記第10の過程において求めた前記必要な前記モータのトルクが0でなかった場合、前記モータのトルクが減少して前記可動部分が動作する直前まで前記第2の指令信号を微小量ずつ変更する第12の過程とを有することを特徴としている。
【0011】
【発明の実施の形態】
<構成>
A.全体構成
以下に図面を参照して本発明の実施の形態について説明する。図1は本発明の一実施形態によるロボット制御装置を適用した塗装ロボットシステムの構成を示す図である。
【0012】
図において、1はコントローラであり、ティーチングペンダント2からの指示データを受けると共に、ケーブル3を介してマニピュレータ4と動作信号及び電流の授受を行い、これによりマニピュレータ4を制御する。このコントローラ1は、マニピュレータ4の制御プログラム、教示データ、各種制御パラメータ等を記憶する記憶装置と、それらプログラム等と前記指示データとに基づいて各種演算処理を行う演算処理装置とを有しており、該演算処理装置による演算処理の結果に基づいてマニピュレータ4への各種動作指令信号及び電流の供給を行う。尚、ここにいう演算処理の具体的内容については、後述の動作説明において明らかにする。
【0013】
ティーチングペンダント2は、操作者がマニピュレータ4の動作を指示するための指示データを入力する入力装置であり、入力された指示データをコントローラ1へ出力する。又、ケーブル3は、コントローラ1とマニピュレータ4とを接続する部材であり、上記動作信号及び電流を伝達する。
【0014】
マニピュレータ4は、本塗装ロボットシステムにおける塗装ロボットの主要部であって、床面に固定された固定ベース5によって床面の所定位置に取り付けられており、図中の符合6〜17で示す旋回ベース、モータ、アーム等の構成要素によって構成されている。以下にこれらの各構成要素について説明する。尚、この図においては、各モータの出力軸の連結部分(マニピュレータ4の関節部分)に設けた減速機は省略することとし、減速機を設けた連結部分の構造の詳細については後述することとする。
【0015】
6は固定ベース5に取り付けられた第1モータであり、その出力軸が減速機を介して旋回ベース7と連結されている。この第1モータ6は、コントローラ1から供給される動作指令信号に基づいて駆動され、旋回ベース7を図中の矢印θ1方向に回動させる。
【0016】
又、旋回ベース7の図中上側部分には、第2モータ8が取り付けられており、この第2モータ8の出力軸が減速機を介して第1アーム9の一端と連結されている。そして、第2モータ8がコントローラ1から供給される動作指令信号に基づいて駆動され、第1アーム9が第2モータ8の回転軸を中心に図中の矢印θ2方向に回動移動するようになっている。
【0017】
一方、第1アーム9の先方端側には、第3モータ10が取り付けられており、この第3モータ10の出力軸が減速機を介して第2アーム11と連結されている。そして、第3モータ10がコントローラ1から供給される動作指令信号に基づいて駆動され、第2アーム11が第3モータ10の回転軸を中心に図中の矢印θ3方向に回動移動するようになっている。
【0018】
第2アーム11には、上記第3モータ10の回転軸との連結部側に手首モータケース12が取り付けられており、先方端側に第1手首ユニット13、第2手首ユニット14及び第3手首ユニット15が取り付けられている。
【0019】
ここで、手首モータケース12内には、第4、第5及び第6モータ(図示略)が収納されており、これら第4、第5、第6モータの各駆動力をそれぞれ第1手首ユニット13、第2手首ユニット14、第3手首ユニット15へ伝達する伝達機構(図示略)が第2アーム11の内部に設けられている。又、第1手首ユニット13、第2手首ユニット14、第3手首ユニット15は、それぞれ、図中の矢印θ4、θ5、θ6方向に回動自在な連結軸を介して順次取り付けられている。そして、上記同様、第4、第5、第6モータがコントローラ1から供給される動作指令信号に基づいて駆動され、これにより、第1手首ユニット13、第2手首ユニット14、第3手首ユニット15が、それぞれθ4、θ5、θ6方向に回動する。
【0020】
16は第3手首ユニット15に取り付けられたブラケットであり、このブラケット16を介して塗装ガン17が取り付けられている。塗装ガン17は、一定の方向へ一定の広がりをもって塗料を噴射する塗装用具であり、上記第1、第2アーム及び第1、第2、第3手首ユニットの回転角度θ1〜θ6に基づく所定位置及び所定方向にて塗料を噴射し、ワーク(図示略)を塗装する。
【0021】
このように、本塗装ロボットシステムにおいては、第1アーム9、第2アーム11、第1手首ユニット13、第2手首ユニット14及び第3手首ユニット15の回転角度θ1〜θ6によって、塗装ガン17の位置(x)とマニピュレータ4の姿勢(R)とが決定される。そして、これらの位置、姿勢及び回転角度等は、コントローラ1における演算処理により決定され、その決定に基づく第1〜第6モータへの動作指令信号によって制御される。
【0022】
B.関節部分の構造
ここで、減速機を設けたモータ出力軸の連結部分、すなわち、マニピュレータ4の関節部分の構造について説明する。図2にその関節部分の一例としてθ2方向に回動する第2モータ8と第1アーム9との関節部分の構造を示す。尚、この図はマニピュレータ4を図1中の矢印A方向から見たものに相当する。
【0023】
図2において、18は第2モータ8の出力軸である。そして、19が出力軸18に取り付けられた減速機である。この減速機19は、出力軸18の回転速度(角速度)を所定の比率で減速(例えば1/100に減速)して第1アーム9へ増幅した(例えば100倍とした)トルクを伝達し、これにより、第1アーム9の回転角度θ2を所定量変位させる。尚、マニピュレータ4の他の関節部分(θ1、θ3〜θ6方向に回動する関節部分)についても同様に減速機が設けられている。
【0024】
<保持トルク>
ここでは、まず、上記減速機の起動トルク及びランニングトルクについて、図3を参照して説明する。この図において、横軸のθ′は減速機を介して伝達される回転速度を、縦軸のτはそのときに必要とされるモータトルクを表している。
【0025】
このグラフに示すように、伝達回転速度θ′=0(静止時)におけるモータトルク(保持トルク)は、+τa〜−τaの間のどの値でもよい。ここで、τaは減速機の摩擦抵抗による摩擦トルクの大きさである。又、θ′がある所定の範囲+θ′c〜−θ′cを越えると、ランニングトルクτは、
【数1】
と表すことができる。
【0026】
続いて、上記マニピュレータ4の関節におけるアーム及び手首ユニットの保持トルクについて説明する。ここでは、図4に示すように、第1アーム9と第2アーム11が90°をなす状態(θ3=90°)において、第1アーム9の回転角度θ2が−20°(図中一点鎖線Ι)から+90°(一点鎖線Π)まで変化する場合の第2モータ8の保持トルクを例として説明する。尚、ここでの回転角度は、図中鉛直方向から左側への回転角度を+、右側への回転角度を−としている。
【0027】
図において、20は第1モータ6と旋回ベース7の連結部分の関節を、21は第2モータ8と第1アーム9の連結部分の関節を、22は第3モータ10と第2アーム11の連結部分の関節を、それぞれ表している。以下においては、便宜上、これらの関節をそれぞれの回転角度θ1、θ2、θ3に付した添え字に応じて第1関節、第2関節、第3関節と呼ぶこととする。又、上記第4〜第6モータと第1〜第3手首ユニットの連結部分についても同様に第4関節、第5関節、第6関節と呼ぶ。
【0028】
23は第2及び第3関節間のアームの質量中心を表す。ここで、質量中心23と第2関節との間の距離はg2とし、このアームの質量はm2、長さはl2とする。24は第3及び第4関節間のアームの質量中心を表す。ここで、この質量中心24のx,z方向における位置はそれぞれxm3,zm3、第3関節との間の距離はg3とし、このアームの質量はm3、長さはl3とする。25は第4関節前方のアームの質量中心を表す。この質量中心25のx,z方向における位置はそれぞれxm4,zm4とする。
【0029】
このように各距離や質量等を設定すると、マニピュレータ4の姿勢を保持するために必要な対重力トルクτgは、
【数2】
と表すことができる。尚、ここで、
【数3】
であり、G=−9.8m/s2(重力加速度)である。
【0030】
数2の対重力トルクτgをグラフに示すと、図5の実線▲1▼のようになる。そして、この実線▲1▼に上述の摩擦トルク+τa、−τa(図3参照)を加えると、図5の点線▲2▼、▲3▼に示すトルク曲線となる。すなわち、この2つの点線▲2▼及び▲3▼で囲まれた領域が、第1アーム9を静止させてマニピュレータ4の姿勢を保持するために第2モータ8に要求される保持トルクとなる。この保持トルクの最小値は、実線▲4▼で示すような曲線となる。
【0031】
ここで、モータによるマニピュレータの動作や姿勢の保持に必要な電流は、トルクτと比例関係にあるので、トルクτの絶対値又は実効値が小さいほど消費電力は少なくなる。従って、マニピュレータ4の静止時においては、第2モータ8を上述の実線▲4▼上のトルクにて駆動させることが消費電力を必要最小限に抑えることになる。
【0032】
尚、ここでは、回転角度θ2、θ3が所定の範囲内である場合の第2モータ8の保持トルクについて説明したが、他の回転角度範囲及び他のモータについても、上記同様の幾何学的解析によって、静止時における必要最小限の保持トルクを求めることができる。
【0033】
<動作>
A.教示データ及び目標位置
次に、本塗装ロボットシステムの動作について説明する。まず、動作説明の前提となるロボットの教示データについて説明する。通常、ロボットの教示データは、軌道の折り返し点又は代表点と、連続した複数の教示点間の補間条件と、移動速度とにより決定される。例えば、図6の軌道では、P0、P1、P2、…で示す点が教示点である。本塗装ロボットシステムにおいては、塗装ガン17の軌道上の点を教示者がティーチングペンダント2から入力し、これを教示点としてコントローラ1の記憶装置に記憶する。
【0034】
又、塗装ロボットの実際の動作においては、コントローラ2の演算処理装置によって、図6中にk、k+1、…で示したような目標位置を単位時間毎に算出して動作制御が行われる。ここにいう単位時間とは、離散時間形の制御系では現在位置等の信号と指令信号の授受が行われるサンプリングタイムがこれに当たり、本塗装ロボットシステムにおいては、コントローラ1の演算処理装置により、5msのサンプリングタイム毎に目標位置を算出することとする。
【0035】
又、以下においては、教示点のカウンタをi(i=0、1、2、…、n)、目標位置のカウンタをk(k=0、1、2、…、N)とし、教示点PiとPi+1との間の目標位置xrを5ms毎にコントローラ1の演算処理装置によって求めるものとする。尚、カウンタkの最大値Nは、教示点PiからPi+1までの移動時間をT、サンプリングタイムをTsとすると、N=T/Tsとなる。これは、教示点間を分割する目標位置の総数(以下、総分割数という)に相当する。
【0036】
B.第1動作モード
次に、本塗装ロボットシステムにおいて実際にモータの保持トルクを減少させる手法による動作について説明する。まず、第1の動作モードとして、コントローラ1が第1〜第6の各モータから各関節の現在位置回転角度θf(θf=[θf1,θf2,…,θf6]T)及び各モータのトルクτf(τf=[τf1,τf2,…,τf6]T)の信号を受けると共に、コントローラ1が第1〜第6の各モータへ回転速度指令θr′(θr′=[θr1′,θr2′,…,θr6′]T)及びトルク指令τr(τr=[τr1,τr2,…,τr6]T)の指令信号を出力する場合について説明する。
【0037】
(1)動作制御の態様
図7に第1動作モードにおける塗装ロボットの制御ブロック図を示す。この図に示すように、本動作モードにおいては、目標位置回転角度θr(θr=[θr1,θr2,…,θr6]T)に現在位置回転角度θf(θf=[θf1,θf2,…,θf6]T)を、目標トルク指令τr(τr=[τr1,τr2,…,τr6]T)に現在モータトルクτfを、それぞれフィードバックし、以下のように各モータへの動作指令信号及び電流値を算出する。
【0038】
まず、現在位置回転角度θfの目標位置回転角度θrからの偏差に基づき、位置補償器Gp(z)において目標位置回転角度θrに各関節を保持するような回転速度指令θr′を算出する。そして、この回転速度指令θr′からの現在回転速度θf′の偏差により、各関節を回転速度θr′で回転させるために各モータへ供給すべき電流値を速度補償器Gv(z)にて算出し、モータ及びアーム等からなる制御対象へ出力する。
【0039】
一方、図中のトルク補償器は、必要に応じて現在モータトルクτfの目標トルクτrからの偏差に基づく電流指令を算出し、各モータへ出力する。尚、積分演算器z/z−1では、各モータからの回転速度θf′(θf′=[θf1′,θf2′,…,θf6′]T)が積分され、現在位置回転角度θfとしてフィードバックされる。本動作モードにおいてはこのようにして塗装ロボットの動作を制御する。
【0040】
(2)目標保持トルクの算出
ここでは、教示データに対する待機時の待機姿勢における目標トルクτrを算出する処理手法について説明する。ここで、待機姿勢とは、所定時間、一定姿勢を保持することをいい、該所定時間中位置フィードバック値に変化がない状態である。以下、かかる待機姿勢を保持するに必要な最小限の目標トルクを目標保持トルクといい、符合τgr(τgr=[τgr1,τgr2,…,τgr6]T)で表す。この目標保持トルクτgrを求める処理は、教示者により与えられた教示データに基づき、以下に述べるように教示点間の移動及び待機時における待機姿勢を上記制御態様によって制御しつつ行う。
【0041】
図8に目標保持トルクτgrの算出処理方法の手順を示す。図示のように、まず、コントローラ1の演算処理装置にて記憶装置内の教示データの読み込みを行い(ステップS1)、教示点総数nを決定する(ステップS2)。そして、初期位置(P0)から最終教示点(Pn)までの各教示点Pi(i=0、1、2、…、n)について、順次ステップS3以下に示す手順による処理を行う。
【0042】
ステップS3では、教示点Piの位置及び該位置での姿勢へ塗装ロボットを移動させる。尚、この移動は、5msのサンプリングタイム毎に目標位置xrを算出して上記制御態様により行われるが、詳細は目標保持トルクτgr算出後の確定した動作制御(後述の(3))において説明する。そして、教示点Piにおいて塗装ロボットの姿勢変化が一定時間ない場合には、ステップS4で塗装ロボットが待機する位置であると判断し、ステップS5へ進む。
【0043】
ステップS5では、各関節の目標位置回転角度を微小量ずつ変化させることにより、塗装ロボットの姿勢を静止状態からゆっくりと前後(正方向及び負方向)に動作させ、このときの動作する直前のモータトルクにより、姿勢保持トルクτa+(τa+=[τa1+,τa2+,…,τa6+]T)及びτa−(τa−=[τa1−,τa2−,…,τa6−]T)を求める。この姿勢保持トルクτa+、τa−は、正方向、負方向についての姿勢を保持し得る限界のモータトルクである。
【0044】
ここで、上記姿勢保持トルクτa+及びτa−を求める処理について、図9を参照して詳述する。尚、図9においては、第1、第2、…、第6の関節番号をj(j=1、2、…、6)で表す。
【0045】
まず、ステップS10で教示点Piの位置及び該位置での姿勢を目標値xr0、Rr0とし、この目標値により各関節の目標位置回転角度θr1,θr2,…,θr6を算出する(ステップS11)。そして、第1〜第6のぞれぞれの関節について、順次、ステップS12〜S15の処理を行う。
【0046】
初めに、第j関節が正方向へ動作し始めるまで(θf>0となるまで)目標位置回転角度θrjを微小量dθjずつ増加させ(ステップS12)、動作直前の保持トルクτfjを正方向の姿勢保持トルクτaj+として記憶する(ステップS13)。
【0047】
次いで、同関節が負方向へ動作し始めるまで(θf<0となるまで)目標位置回転角度θrjを微小量dθjずつ減少させ(ステップS14)、動作直前の保持トルクτfjを負方向の姿勢保持トルクτaj−として記憶する(ステップS15)。このようにして、第1〜第6関節それぞれについて正方向及び負方向の姿勢保持トルクτa+及びτa−を求め、図8のステップS6へと進む。
【0048】
次に、上述のようにして求めた姿勢保持トルクτa+及びτa−の大きさについてステップS6で大小比較を行う。つまり、各関節における正方向と負方向の姿勢保持トルクの絶対値|τaj+|及び|τaj−|を比較するのである。そして、|τaj+|の方が大きい場合には、この点(教示点Pi)における第j関節の目標保持トルクτgr(i)jをτaj−とし(ステップS7)、|τaj−|の方が大きい場合には、目標保持トルクτgr(i)jをτaj+とする(ステップS8)。ここに、目標保持トルクτgr(i)jの添え字(i)は、教示点Piにおける目標保持トルクであることを表す。このように、教示点Piにおける目標保持トルクτgr(i)([τgr(i)1,τgr(i)2,…,τgr(i)6]T)を求める。
【0049】
尚、ステップS4において、教示点Piで塗装ロボットの姿勢が変化する場合には、塗装ロボットが待機する場合でないと判断し、ステップS5以降の処理は行わない。
【0050】
以上述べた処理により、塗装ロボットが待機するすべての教示点における目標保持トルクτgrを求める。尚、上述の処理は、所定時間(例えば100時間)毎に行い、適宜τgr(i)の値を更新する。これにより、部材の摩耗による摩擦トルク(τa)の減少に対しての補正をする。
【0051】
(3)目標保持トルクτgrを取り入れた動作制御
次に、上記目標保持トルクτgrを取り入れた本動作モードにおける動作制御方法について、図10を参照して説明する。尚、この図は、上記5msのサンプリングタイム毎に行われる動作制御の処理手順を示したものである。
【0052】
まず、ステップS20で教示点間を分割した目標位置のカウンタkを1増加させ、ステップS21へ進む。そしてこのときにkの値が上記教示点間の総分割数Nと等しくなったとすると、ステップS22へ進む。この場合は、既に通過した教示点Piの次の教示点Pi+1にマニピュレータ4が移動してきた場合である。
【0053】
ステップS22では、教示点に対応するカウンタiを1増加させる。次いで、ステップS23で現在通過中の教示点Pi及び次の教示点Pi+1の目標位置と補間情報とにより、教示点Pi、Pi+1の2点間を結ぶ目標位置xrの補間式を決定する。この補間式は通常時刻tの多項式で
【数4】
のように表される。
【0054】
更に、ステップS23では、次の教示点Pi+1までの移動時間Tを本制御系における単位時間、すなわち、サンプリングタイムTsで除し、その値を新たな総分割数Nとする。又、ステップS24でkに0を代入し、教示点間の目標位置のカウンタkをリセットする。
【0055】
一方、ステップS21でkの値が未だ総分割数Nに満たなかったとすると、ステップS22〜S24の処理は行わず、ステップS25へ進む。これは、既に通過した教示点Piと次の教示点Pi+1の間をマニピュレータ4が移動している場合である。この場合には、ステップS25で現在通過中の教示点間の補間式において時刻tをk/N × Tとして目標位置xrを算出する。
【0056】
続いて、ステップS26で塗装ロボットを目標位置及び該位置での姿勢へ移動する。ここでは、ステップS22〜S24の処理を経た場合には、塗装ガン17を教示点Piの位置として姿勢を保持し、ステップS25の処理を経た場合には、補間式から導かれる目標位置及び該位置での姿勢に塗装ガン17の位置及び塗装ロボットの姿勢を移動させる。
【0057】
次に、ステップS27でkの値が0であるか否か、すなわち、マニピュレータ4が教示点上にあるか否かを判断する。そして、kの値が0であった場合、その教示点が待機姿勢をとるべき位置であるか否かを判断し(ステップS28)、待機姿勢をとるべき位置であった場合にはステップS29へ進む。
【0058】
ステップS29では、各関節における各モータのトルクが、上述の求めた目標保持トルクτgrのうち、当該教示点Piにおける目標保持トルクτgr(i)となるように、上記トルク補償器によってトルク指令τrを変更し、すべての関節における保持トルクを必要最小限の保持トルクとする。これにより、最小限の消費電力によって当該教示点Piでの待機姿勢を保持するようにする。尚、kの値が0でなかった場合は、ステップS28、S29の処理は行わない。
【0059】
このようにして1サンプリングタイムの動作制御が終了する。以後においては、サンプリングタイムTs毎に上記ステップS20以下の処理手順による動作制御を繰り返し行い、これにより、塗装ロボットの動作制御を行う。
【0060】
C.第2動作モード
次に、第2の動作モードとして、コントローラ1が第1〜第6の各モータから各関節の回転角度θfのみのフィードバック信号を受けると共に、コントローラ1が第1〜第6の各モータへ回転速度指令θr′のみの指令信号を出力する場合について説明する。
【0061】
(1)動作制御の態様
図11に第2動作モードにおける塗装ロボットの制御ブロック図を示す。この図に示すように、本動作モードにおいても、目標位置回転角度θrに現在位置回転角度θfをフィードバックし、位置補償器Gp(z)及び速度補償器Gv(z)によって上記第1動作モード同様に各モータへの供給電流値を算出して出力する。そして、本動作モード特有の制御態様は、かかる第1動作モード同様の制御に加え、塗装ロボットが待機姿勢にあるときにのみ、図中の点線で囲まれた部分の制御機構f(θr,θf)により算出された回転角度を指令信号に加えて制御を行うところにある。
【0062】
(2)第2動作モードにおける動作制御
図12に第2動作モードにおける動作制御方法の処理手順を示す。この図は、図10同様、サンプリングタイム毎に行われる動作制御の処理手順を示したものである。
【0063】
まず、図12のステップS30で目標位置のカウンタkを1増加させ、ステップS31へ進み、このときにkの値が総分割数Nと等しくなっていたとすると、ステップS32へ進む。これは、上記ステップS20〜S22の場合同様、既に通過した教示点Piの次の教示点Pi+1にマニピュレータ4が移動してきた場合である。
【0064】
ステップS32では、教示点に対応するカウンタiを1増加させる。次いで、現在通過中の教示点Piと次の教示点Pi+1との位置関係を判断し(ステップS33)、両教示点の位置が異なる場合にはステップS34へ進む。そして、ステップS34では、教示点Pi、Pi+1の位置と補間情報とにより、両教示点を結ぶ目標位置xrの補間式を決定する。尚、この補間式は、上記数4同様、時刻tの多項式で表される。
【0065】
一方、ステップS33で教示点Pi、Pi+1の位置が同一であった場合には、この位置で姿勢を保持するものと判断し(ステップS35)、ステップS36へ進んでkに0を代入してカウンタkをリセットする。
【0066】
続いて、ステップS37でカウンタkに対応した塗装ロボットの目標位置xr及び姿勢Rrを算出する。ここでの目標位置及び姿勢の算出は、ステップS34の処理を経た場合(教示点間移動中の場合)には上記補間式に基づいて算出し、ステップS35の処理を経た場合(当該教示点で姿勢保持の場合)には教示点Piを目標位置とする。そして、ステップS38で、塗装ガン17の位置が算出した目標位置となるように塗装ロボットの姿勢を移動させる。
【0067】
次に、現在の塗装ロボットが待機姿勢にある場合、すなわち、上記ステップS33からS35の処理を行い、姿勢を保持することとされている場合には、ステップS39からS40へと進み、以下に述べる処理によって待機姿勢を保持するようにする。尚、ここでの処理は、上記制御機構f(θr,θf)によるものに相当する。
【0068】
まず、ステップS40において、現在の塗装ガン17の位置xf及びマニピュレータ4の姿勢Rfにより各関節の回転角度θ1〜θ6を算出し、それらの算出した値に基づき、上記数2及び数3により、各関節(j)の対重力トルクτgjを算出する。次いで、それぞれの関節について、必要とされるモータトルクτjが0であるか否か、すなわち、対重力トルクτgjが減速器の摩擦トルクの範囲内にあるか否かを判断し(ステップS41)、その判断結果に応じた以下の処理へと進む(ステップS42又はS43)。
【0069】
ここで、第j関節のモータトルクτjが0であったとすると、ステップS42の処理Aが行われる。図13に処理Aの手順を示す。この図に示すように、処理Aにおいては、まず、1サンプリングタイム前の目標位置回転角度(θrj(k−1)とする)と現在の目標位置回転角度(θrj(k)とする)から塗装ロボットの動作制動方向を求める。この演算処理では、目標位置回転角度θrj(k−1)からθrj(k)を減算し、それによって得られた値の符合を変数signとして記憶する(ステップS50)。ここに、signの符合は、塗装ロボットが停止するための角加速度の方向(制動方向)となる。尚、1サンプリングタイム前の目標位置回転角度θrj(k−1)は、例えば、コントローラ2の記憶装置の1つのアドレスに順次上書きする形で記憶する等、適宜参照できるようにしておき、上記演算処理において使用する。
【0070】
次に、ステップS51へ進み、目標位置回転角度をθrj−signΔθrjとして制動方向を微小量逆方向に戻し、第j関節の回転角度を制動方向と反対の方向へ微小角度Δθrjだけ戻してステップS52へ進む。
【0071】
ステップS52では、ステップS51で回転角度を変化させた状態から待機姿勢における真の目標位置回転角度まで第j関節を移動させる場合の摩擦トルク(τa)を含まないモータトルクτjを算出し、その算出したモータトルク値により、制動時の角加速度、角速度(回転速度)を算出する。そして、ステップS53で該角速度を積分して目標位置回転角度の時間的変化を算出し、この算出した目標位置回転角度に従って待機姿勢までの移動を行う(ステップS54)。これにより、真の待機姿勢へ移動してきた状態におけるモータトルクτjを0とする。
【0072】
一方、図12のステップS41において、第j関節のモータトルクτjが0でなかったとすると、ステップS43の処理Bが行われる。図14に処理Bの手順を示す。この図に示すように、処理Bにおいては、まず、重力トルクの符合(0−τgjの符合)を求め、変数signとして記憶する(ステップS60)。
【0073】
次いで、ステップS61で目標位置回転角度θrj(k−1)からθrj(k)を減算した値の符合がsignと同一か否か判断する。すなわち、重力トルクと制動方向とが同じかどうかを判断するのである。そして、両者が異なる場合にはステップS62へ進み、制御系の積分演算器による積分演算を省くこととする。
【0074】
ステップS62で積分演算を省くこととしたあとは、現在位置回転角度が変動するまで(ステップS63)、目標位置角度θrjを重力トルクと反対方向に微小量Δθjずつ変化させる(ステップS64)。これにより、徐々にモータトルクτを減少させ、第j関節の回転角度を保つことができる最小のモータトルクで待機姿勢を保持するようにする。尚、このようなトルク制御を行ったときには、モータトルクτが0を越えて変化する場合もあるので、モータトルクτをモニタリングしてτ=0となったときに処理Bを終了するものとしてもよい。
【0075】
このようにして1サンプリングタイムの動作制御が終了する。以後においては、サンプリングタイムTs毎に上記同様の処理手順による動作制御が繰り返し行われ、塗装ロボットの動作制御がなされる。
【0076】
C.第3動作モード
次に、第3の動作モードとして、上記第2動作モード同様、コントローラ1が各関節の回転角度θfのみのフィードバック信号を受け、回転速度指令θr′のみの指令信号を出力する場合(図11の制御ブロック図参照)において、待機姿勢の目標位置回転角度を微小に変化させて保持トルクを少なくする動作モードについて説明する。
【0077】
(1)目標位置回転角度の決定
ここでは、待機時の回転速度指令を微小に変化させて保持トルクを減少させる場合の目標位置回転角度の決定方法について説明する。ここで決定される目標位置回転角度は、教示データに基づく塗装ロボットの姿勢に対し、微小量ずれた目標姿勢における目標位置回転角度となる。以下、このずれた目標位置回転角度を符合θrpaus(θrpaus=[θrpaus1,θrpaus2,…,θrpaus6]T)で表す。
【0078】
図15に目標位置回転角度決定の処理手順を示す。図示のように、まず、コントローラ1の演算処理装置にて記憶装置内の教示データの読み込みを行い(ステップS70)、教示点総数nを決定する(ステップS71)。そして、初期位置(P0)から最終教示点(Pn)までの各教示点Piについて、順次ステップS72以下に示す手順による処理を行う。尚、これらの処理の流れは、上記第1動作モードにおける目標保持トルクの算出と同様である。
【0079】
ステップS72では、教示点Piの位置及び該位置での姿勢へ塗装ロボットを移動させる。尚、この移動は、サンプリングタイム毎に目標位置を算出して行われるが、詳細は目標位置回転角度θr決定後の確定した動作制御(後述の(2))において説明する。そして、教示点Piにおいて塗装ロボットの姿勢変化が一定時間ない場合には、ステップS73で塗装ロボットが待機する位置であると判断し、ステップS74へ進む。
【0080】
ステップS74では、各関節の目標位置回転角度を微小量ずつ変化させることにより、塗装ロボットの姿勢を静止状態からゆっくりと前後に動作させ、このときの動作を開始する直前までの起動時間T+(正方向)及びT−(負方向)を求める。
【0081】
ここで、この起動時間T+及びT−を求める処理について、図16を参照して詳述する。尚、図16においては、第1、第2、…、第6の関節番号をj(j=1、2、…、6)で表し、時間計測のためのカウンタをCとする。
【0082】
まず、ステップS80で教示点Piの位置及び該位置での姿勢を目標値xr0、Rr0とし、この目標値により各関節の目標位置回転角度θr1,θr2,…,θr6を算出する(ステップS81)。そして、第1〜第6のぞれぞれの関節について、順次、ステップS82〜S92の処理を行い、正方向及び負方向の起動時間Tj+及びTj−を求める。尚、ここでの処理においては、上記積分演算器による積分演算を行わないものとする。
【0083】
初めに、第j関節が正方向へ動作し始めるまで目標位置回転角度θrjを微小量dθjずつ増加させる(ステップS82)。その後、第j関節を、動作した直前の姿勢に保持すると共に、カウンタCに0を代入してリセットする(ステップS83)。
【0084】
次に、同関節が負方向へ動作し始めるまで目標位置回転角度θrjを微小量dθjずつ減少させ(ステップS84)、減少の度にカウンタCを1増加させる(ステップS85)。そして、該関節が動作したときのカウンタCの値を負方向の起動時間Tj−として記憶し、その後、カウンタCを0としてリセットする(ステップS86)。又、この動作直前(微小量変化ステップにおける1ステップ前)の目標位置回転角度をθrj−とする。
【0085】
続いて、該関節が上記負方向への動作直前の状態から正方向へ動作し始めるまで目標位置回転角度θrjを微小量dθjずつ増加させ(ステップS87)、増加の度にカウンタCを1増加させる(ステップS88)。そして、該関節が動作したときのカウンタCの値を正方向の起動時間Tj+として記憶する(ステップS89)。又、この動作直前の目標位置回転角度をθrj+とする。このようにして、第1〜第6関節それぞれについて正方向及び負方向の起動時間T+及びT−を求め、図15のステップS75へと進む。
【0086】
次に、上述のようにして求めた起動時間Tj+及びTj−の大きさについてステップS75で大小比較を行う。そして、起動時間Tj+の方が大きい場合には、この点(教示点Pi)における第j関節の目標位置回転角度θrpaus(i)jを負方向動作直前の回転角度θrj−とし(ステップS76)、起動時間Tj−の方が大きい場合には、目標位置回転角度θrpaus(i)jを正方向動作直前のθrj+とし(ステップS77)、両起動時間が等しい場合には、目標位置回転角度θrpaus(i)jを教示データに基づく目標位置回転角度θr(i)jとする(ステップS78)。ここに、目標位置回転角度θrpaus(i)jの添え時(i)は、教示点Piにおける目標位置回転角度であることを表す。このように、教示点Piにおける目標位置回転角度θrpaus(i)が求まる。
【0087】
尚、ステップS73において、教示点Piで塗装ロボットの姿勢が変化する場合には、塗装ロボットが待機する場合でないと判断し、ステップS74以降の処理は行わない。以上述べた処理により、塗装ロボットが待機するすべての教示点における目標位置回転角度θrpausを求める。
【0088】
(2)目標位置回転角度θrpausを取り入れた動作制御
次に、上記目標位置回転角度θrpausを取り入れた本動作モードにおける動作制御方法について、図17を参照して説明する。尚、この図は、上記サンプリングタイム毎に行われる動作制御の処理手順を示したものであり、該処理の流れは、上記第1動作モードにおける動作制御と同様なものとなっている。
【0089】
まず、ステップS90で教示点間を分割した目標位置のカウンタkを1増加させ、ステップS91へ進み、このときのkの値が上記総分割数Nと等しくなっていたとすると、ステップS92へ進む。この場合は、次の教示点Pi+1にマニピュレータ4が移動してきた場合である。
【0090】
ステップS92では、教示点に対応するカウンタiを1増加させると共に、現在通過中の教示点Pi及び次の教示点Pi+1の目標位置と補間情報とにより、教示点Pi、Pi+1の2点間を結ぶ目標位置xrの補間式を決定する。この補間式は上記数4同様、時刻tの多項式で表される。又、ステップS93でkに0を代入し、教示点間の目標位置のカウンタkをリセットする。
【0091】
一方、ステップS91でkの値が未だ総分割数Nに満たなかったとすると、ステップS92及びS93の処理は行わず、ステップS94へ進む。これは、既に通過した教示点Piと次の教示点Pi+1の間をマニピュレータ4が移動している場合である。この場合には、ステップS94で現在通過中の教示点間の補間式により、目標位置xrを算出する。
【0092】
続いて、ステップS95で塗装ロボットを目標位置及び該位置での姿勢へ移動する。ここでは、ステップS92、S93の処理を経た場合には、塗装ガン17を教示点Piの位置として姿勢を保持し、ステップS94の処理を経た場合には、補間式から導かれる目標位置及び該位置での姿勢に塗装ガン17の位置及び塗装ロボットの姿勢を移動させる。
【0093】
次に、ステップS96でkの値が0であるか否か、すなわち、マニピュレータ4が教示点上にあるか否かを判断する。そして、kの値が0であった場合、その教示点が待機姿勢をとるべき位置であるか否かを判断し(ステップS97)、待機姿勢をとるべき位置であった場合にはステップS98へ進む。
【0094】
ステップS98では、各関節のモータに対し、上述の求めた目標位置回転角度θrpausのうち、当該教示点Piにおける目標位置回転角度θrpaus(i)に基づく回転速度指令を出力するようにする。すなわち、制御系における積分演算器を取り除いた後で各関節の目標位置回転角度θrを上記θrpaus(i)とし、塗装ロボットの姿勢を微小速度で移動させるのである。これにより、最小限の消費電力によって当該教示点Piでの待機姿勢を保持するようにする。尚、kの値が0でなかった場合は、上記ステップS97、S98の処理は行わない。
【0095】
このようにして1サンプリングタイムの動作制御が終了する。以後においては、サンプリングタイムTs毎に上記ステップS90以下の処理手順による動作制御を繰り返し行い、これにより、塗装ロボットの動作制御を行う。
【0096】
【発明の効果】
以上説明したように本発明によれば、判断処理手段により待機状態であると判断されたときに、可動部分における摩擦抵抗を利用してモータのトルクを減少させることとしたので、教示データに基づくロボットの位置及び姿勢を変えることなく、当該待機状態を保持するモータのトルクを減少させることができる。これにより、消費電力を少なくすることができ、ロボットを動作させて各種処理を行うときのランニングコストを低減することができるという効果が得られる。
【0097】
特に、請求項2又は4記載の発明によれば、実際にロボットを動作させた時の必要かつ最小限のモータトルクを求めて待機姿勢の制御がなされるので、低減可能な極限における消費電力、ランニングコストによってロボットの制御を行うことができる。
【0098】
又、本発明によれば、待機姿勢の保持時に姿勢が変化しないことから、ロボットの動作環境に制約がある場合にあっても干渉を生ずることなく適用することができる。これにより、低コストで、かつ、各種動作環境に応じた柔軟なロボット制御が可能となるという効果が得られる。ここで、請求項3記載の発明によれば、各種動作環境に応じて、その動作範囲全体についての第2の指令信号が記憶されて待機状態の制御が行われる。
【0099】
更に、本発明によるロボット制御は、特別な装置を新たに必要とせずに実現することができるので、装置自体の費用が増加することはない。
【0100】
加えて、本発明によれば、消費電力が低減することから発熱量も少なくなり、モータの温度上昇を抑制することができるので、防爆性が向上するという効果が得られる。そしてこれと同時に、モータへの電流供給を担う制御装置内のアンプの温度上昇も抑制することができるので、制御装置のCPUの誤動作を防止すると共に、ハードウェア部品の耐久性を向上させるという効果が得られる。
【図面の簡単な説明】
【図1】本発明の一実施形態によるロボット制御装置を適用した塗装ロボットシステムの構成を示す図である。
【図2】第2モータ8と第1アーム9との関節部分の構造を示す図である。
【図3】減速機を介して伝達される回転速度θ′とモータトルクτとの関係を示す図である。
【図4】第1アーム9と第2アーム11が90°をなす状態で第1アーム9が−20°〜+90°まで変化する場合を示す図である。
【図5】回転角度θ2と対重力トルクτg(保持トルク)との関係を示す図である。
【図6】目標位置の軌道及び教示点の一例を示す図である。
【図7】第1動作モードにおける塗装ロボットの制御ブロック図である。
【図8】第1動作モードにおける目標保持トルクτgrの算出処理手順を示す図である。
【図9】図8のステップS5における姿勢保持トルクτa+及びτa−を求める処理手順を示す図である。
【図10】第1動作モードにおける目標保持トルクτgrを取り入れた動作制御方法を示す図である。
【図11】第2及び第3動作モードにおける塗装ロボットの制御ブロック図である。
【図12】第2動作モードにおける動作制御方法を示す図である。
【図13】図12のステップS42における処理Aを示す図である。
【図14】図12のステップS43における処理Bを示す図である。
【図15】第3動作モードにおける微小量ずれた目標位置回転角度の決定処理手順を示す図である。
【図16】図15のステップS74における起動時間T+及びT−を求める処理手順を示す図である。
【図17】第3動作モードにおける目標位置回転角度θrpausを取り入れた動作制御方法を示す図である。
【符号の説明】
1 コントローラ
2 ティーチングペンダント
4 マニピュレータ
6 第1モータ
7 旋回ベース
8 第2モータ
9 第1アーム
10 第3モータ
11 第2アーム
12 モータケース
13 第1手首ユニット
14 第2手首ユニット
15 第3手首ユニット
17 塗装ガン[0001]
TECHNICAL FIELD OF THE INVENTION
The present invention relates to a robot control device and a control method suitable for use in an industrial robot of a teaching reproduction type.
[0002]
[Prior art]
In conventional industrial robot control, as a method of reducing power consumption, a method has been proposed in which thermal energy generated when the operation of a robot is stopped is converted into electric power. Japanese Patent Application Laid-Open No. Hei 5-138562 discloses a robot control method for reducing power consumption by setting the standby posture of the robot to a posture having a small gravity torque in a stationary state.
[0003]
[Problems to be solved by the invention]
However, in the above-described heat energy conversion apparatus, a generator must be provided in each of the motor amplifier sections in order to actively generate power. For this reason, there has been a problem that the size of the controller is increased and the cost is increased.
[0004]
On the other hand, in the robot control method in which the standby posture is changed, the standby posture is set to a posture having a small gravitational torque, and thus may interfere with the environment of the work, its supply device, or other peripheral devices. Therefore, in such a case, the method disclosed in JP-A-5-138562 cannot be applied. In addition, such a method has a problem that the robot may take a posture different from the posture taught by the teacher.
[0005]
Furthermore, the reduction gear used for general industrial robots has a problem that the starting torque becomes extremely large due to frictional resistance at the start of rotation.
[0006]
The present invention has been made in view of such circumstances, and uses the frictional resistance of the speed reducer in reverse to reduce the holding torque at that time while maintaining the standby posture when the operation of the robot is stopped in the taught posture. It is an object of the present invention to provide a robot control apparatus and a control method thereof that can reduce power consumption and running cost.
[0007]
[Means for Solving the Problems]
To solve the above problems, the present invention is configured as follows.
[0008]
According to a first aspect of the present invention, there is provided a robot control method for controlling, based on teaching data, a robot that operates a movable part by torque of a motor transmitted via a speed reducer, wherein the robot is controlled based on the teaching data. First command signal output means for outputting a first command signal; and, during operation of the robot based on the first command signal, determining whether or not the operation of the robot is in a standby state in which a predetermined standby posture is maintained. The determination processing means for determining, and when the determination processing means determines that the motor is in the standby state, the torque of the motor is maintained in the stationary state by the torque and the friction torque of the speed reducer. A second command signal output means for outputting a second command signal for decreasing the range, a robot control method by a robot control device, comprising: A first step of moving the robot to the teaching point of the indication data, and a second step of determining whether the teaching point is in a position to take a standby posture when the robot moves to the teaching point And a third step of outputting a third command signal for changing the torque of the motor by a small amount in a fixed direction in a case where it is determined in the second step that the standby position is to be taken. A fourth process of storing the third command signal immediately before the movable portion starts operating from the stationary state, and a torque of the motor in a direction opposite to a fixed direction in the third process, according to the third command signal. A fifth step of outputting a fourth command signal that changes by a small amount, and a sixth command signal that stores the fourth command signal immediately before the movable portion starts operating from a stationary state by the fourth command signal. Process and the fourth and A seventh process in which, of the fourth and fifth command signals stored in the sixth process, a command signal for instructing the motor with a small torque is used as the second command signal at the teaching point; The robot is controlled based on the determined second command signal.
[0009]
The invention according to
[0010]
The invention according to
[0011]
BEST MODE FOR CARRYING OUT THE INVENTION
<Structure>
A. overall structure
Hereinafter, embodiments of the present invention will be described with reference to the drawings. FIG. 1 is a diagram showing a configuration of a painting robot system to which a robot control device according to an embodiment of the present invention is applied.
[0012]
In the figure,
[0013]
The
[0014]
The
[0015]
Reference numeral 6 denotes a first motor mounted on the
[0016]
A
[0017]
On the other hand, a
[0018]
A
[0019]
Here, fourth, fifth and sixth motors (not shown) are housed in the
[0020]
[0021]
Thus, in the present coating robot system, the
[0022]
B. Joint structure
Here, the structure of the joint portion of the motor output shaft provided with the speed reducer, that is, the joint portion of the
[0023]
In FIG. 2,
[0024]
<Holding torque>
Here, first, the starting torque and the running torque of the speed reducer will be described with reference to FIG. In this figure, θ 'on the horizontal axis represents the rotation speed transmitted via the speed reducer, and τ on the vertical axis represents the motor torque required at that time.
[0025]
As shown in this graph, the motor torque (holding torque) at the transmission rotation speed θ ′ = 0 (at rest) may be any value between + τa and −τa. Here, τa is the magnitude of the friction torque due to the frictional resistance of the speed reducer. When θ ′ exceeds a predetermined range of + θ′c to −θ′c, the running torque τ becomes
(Equation 1)
It can be expressed as.
[0026]
Next, the holding torque of the arm and the wrist unit at the joint of the
[0027]
In the figure,
[0028]
23 represents the center of mass of the arm between the second and third joints. Here, the distance between the center of
[0029]
When each distance, mass, and the like are set in this manner, the gravitational torque τg required to hold the attitude of the
(Equation 2)
It can be expressed as. Here,
(Equation 3)
And G = −9.8 m / s2(Gravitational acceleration).
[0030]
A graph of the gravitational torque τg of
[0031]
Here, the current required for the operation of the manipulator by the motor and for maintaining the attitude is proportional to the torque τ, so that the smaller the absolute value or the effective value of the torque τ, the lower the power consumption. Therefore, when the
[0032]
Here, the holding torque of the
[0033]
<Operation>
A. Teaching data and target position
Next, the operation of the present painting robot system will be described. First, the teaching data of the robot, which is the premise of the operation description, will be described. Normally, the teaching data of the robot is determined by a turning point or a representative point of the trajectory, an interpolation condition between a plurality of continuous teaching points, and a moving speed. For example, in the trajectory of FIG. 6, points indicated by P0, P1, P2,... Are teaching points. In the present painting robot system, a point on the trajectory of the
[0034]
In the actual operation of the painting robot, the arithmetic processing unit of the
[0035]
In the following, the counter of the teaching point is set to i (i = 0, 1, 2,..., N), the counter of the target position is set to k (k = 0, 1, 2,..., N), and the teaching point Pi is set. And the target position xr between Pi + 1 are obtained by the arithmetic processing unit of the
[0036]
B. First operation mode
Next, the operation of the present painting robot system by a method of actually reducing the holding torque of the motor will be described. First, as the first operation mode, the
[0037]
(1) Mode of operation control
FIG. 7 shows a control block diagram of the painting robot in the first operation mode. As shown in this figure, in this operation mode, the target position rotation angle θr (θr = [θr1, θr2,..., Θr6])T) Indicates the current position rotation angle θf (θf = [θf1, θf2,..., Θf6]).T) With the target torque command τr (τr = [τr1, τr2,..., Τr6]T), The current motor torque τf is fed back, and an operation command signal and a current value for each motor are calculated as follows.
[0038]
First, based on the deviation of the current position rotation angle θf from the target position rotation angle θr, the position compensator Gp (z) calculates a rotation speed command θr ′ that holds each joint at the target position rotation angle θr. The current value to be supplied to each motor to rotate each joint at the rotation speed θr ′ is calculated by the speed compensator Gv (z) based on the deviation of the current rotation speed θf ′ from the rotation speed command θr ′. Then, the data is output to a control target including a motor and an arm.
[0039]
On the other hand, the torque compensator in the figure calculates a current command based on the deviation of the current motor torque τf from the target torque τr as necessary, and outputs the current command to each motor. In addition, in the integral calculator z / z-1, the rotation speed θf ′ (θf ′ = [θf1 ′, θf2 ′,..., Θf6 ′]) from each motor is used.T) Is integrated and fed back as the current position rotation angle θf. In this operation mode, the operation of the painting robot is controlled in this way.
[0040]
(2) Calculation of target holding torque
Here, a processing method for calculating the target torque τr in the standby posture at the time of standby for the teaching data will be described. Here, the standby posture refers to maintaining a constant posture for a predetermined time, and is a state in which the position feedback value does not change during the predetermined time. Hereinafter, the minimum target torque required to hold the standby posture is referred to as a target holding torque, and is denoted by τgr (τgr = [τgr1, τgr2,..., Τgr6]).T). The process of obtaining the target holding torque τgr is performed based on the teaching data given by the instructor while controlling the movement between the teaching points and the standby posture during standby as described below in the above-described control mode.
[0041]
FIG. 8 shows a procedure of a calculation processing method of the target holding torque τgr. As shown in the figure, first, the arithmetic processing unit of the
[0042]
In step S3, the painting robot is moved to the position of the teaching point Pi and the posture at the position. Note that this movement is performed by the above-described control mode by calculating the target position xr at every sampling time of 5 ms. The details will be described in the fixed operation control after calculating the target holding torque τgr ((3) described later). . If there is no change in the posture of the painting robot at the teaching point Pi for a certain period of time, it is determined in step S4 that the painting robot is in a standby position, and the process proceeds to step S5.
[0043]
In step S5, the posture of the coating robot is slowly moved back and forth (positive direction and negative direction) from the stationary state by changing the target position rotation angle of each joint by a small amount. By the torque, the posture holding torque τa+(Τa+= [Τa1+, Τa2+, ..., τa6+]T) And τa−(Τa−= [Τa1−, Τa2−, ..., τa6−]T). This posture holding torque τa+, Τa−Is the limit motor torque that can maintain the posture in the positive direction and the negative direction.
[0044]
Here, the posture holding torque τa+And τa−Will be described in detail with reference to FIG. In FIG. 9, the first, second,..., Sixth joint numbers are represented by j (j = 1, 2,..., 6).
[0045]
First, in step S10, the position of the teaching point Pi and the posture at the position are set as target values xr0 and Rr0, and the target position rotation angles θr1, θr2,..., Θr6 of each joint are calculated from the target values (step S11). Then, the processing of steps S12 to S15 is sequentially performed for each of the first to sixth joints.
[0046]
First, the target position rotation angle θrj is increased by a small amount dθj until the j-th joint starts operating in the forward direction (until θf> 0) (step S12), and the holding torque τfj immediately before the operation is moved in the forward direction. Holding torque τaj+(Step S13).
[0047]
Then, the target position rotation angle θrj is decreased by a small amount dθj by a small amount dθj until the joint starts to operate in the negative direction (until θf <0) (step S14), and the holding torque τfj immediately before the operation is changed to the posture holding torque in the negative direction. τaj−(Step S15). In this manner, the posture holding torque τa in the positive direction and the negative direction for each of the first to sixth joints.+And τa−And proceeds to step S6 in FIG.
[0048]
Next, the posture holding torque τa obtained as described above+And τa−The size is compared in step S6. That is, the absolute value | τaj of the posture holding torque in the positive direction and the negative direction at each joint.+| And | τaj−|. And | τaj+Is larger than the target holding torque τgr (i) j of the j-th joint at this point (teaching point Pi).−(Step S7), | τaj−Is larger, the target holding torque τgr (i) j is set to τaj+(Step S8). Here, the suffix (i) of the target holding torque τgr (i) j indicates that it is the target holding torque at the teaching point Pi. Thus, the target holding torque τgr (i) at the teaching point Pi ([τgr (i) 1, τgr (i) 2,..., Τgr (i) 6]T).
[0049]
In step S4, if the posture of the painting robot changes at the teaching point Pi, it is determined that the painting robot is not in a standby state, and the processing after step S5 is not performed.
[0050]
Through the processing described above, the target holding torque τgr at all the teaching points where the painting robot stands by is determined. The above processing is performed every predetermined time (for example, 100 hours), and the value of τgr (i) is updated as appropriate. Thereby, a correction is made for a decrease in friction torque (τa) due to wear of the member.
[0051]
(3) Operation control incorporating target holding torque τgr
Next, an operation control method in this operation mode incorporating the target holding torque τgr will be described with reference to FIG. This figure shows a processing procedure of the operation control performed at every sampling time of 5 ms.
[0052]
First, the counter k of the target position obtained by dividing the teaching point in step S20 is incremented by 1, and the process proceeds to step S21. If the value of k becomes equal to the total number of divisions N between the teaching points at this time, the process proceeds to step S22. In this case, the
[0053]
In step S22, the counter i corresponding to the teaching point is incremented by one. Next, in step S23, the interpolation formula of the target position xr connecting the two teaching points Pi and Pi + 1 is determined based on the interpolation information and the target positions of the currently passing teaching point Pi and the next teaching
(Equation 4)
Is represented as
[0054]
Further, in step S23, the moving time T to the next teaching point Pi + 1 is divided by the unit time in the present control system, that is, the sampling time Ts, and the value is set as a new total division number N. In step S24, 0 is substituted for k, and the counter k of the target position between the teaching points is reset.
[0055]
On the other hand, if it is determined in step S21 that the value of k has not yet reached the total number of divisions N, the process proceeds to step S25 without performing the processes in steps S22 to S24. This is the case where the
[0056]
Subsequently, in step S26, the painting robot is moved to the target position and the posture at the position. Here, after the processing in steps S22 to S24, the posture is held as the position of the teaching point Pi, and after the processing in step S25, the target position and the position derived from the interpolation formula are determined. The position of the
[0057]
Next, in step S27, it is determined whether the value of k is 0, that is, whether the
[0058]
In step S29, the torque command τr is set by the torque compensator so that the torque of each motor at each joint becomes the target holding torque τgr (i) at the teaching point Pi among the target holding torque τgr obtained above. Change to make the holding torque at all joints the minimum necessary holding torque. Thereby, the standby posture at the teaching point Pi is maintained with the minimum power consumption. If the value of k is not 0, the processes in steps S28 and S29 are not performed.
[0059]
Thus, the operation control for one sampling time is completed. Thereafter, the operation control according to the processing procedure of step S20 and thereafter is repeatedly performed for each sampling time Ts, and thereby the operation control of the coating robot is performed.
[0060]
C. Second operation mode
Next, as a second operation mode, the
[0061]
(1) Mode of operation control
FIG. 11 shows a control block diagram of the painting robot in the second operation mode. As shown in this figure, also in this operation mode, the current position rotation angle θf is fed back to the target position rotation angle θr, and the position compensator Gp (z) and the speed compensator Gv (z) perform the same operation as in the first operation mode. Calculate and output the supply current value to each motor. The control mode specific to this operation mode is the same as the control in the first operation mode, and only when the coating robot is in the standby posture, the control mechanism f (θr, θf) enclosed by the dotted line in the drawing. ) Is added to the command signal for control.
[0062]
(2) Operation control in second operation mode
FIG. 12 shows a processing procedure of the operation control method in the second operation mode. This figure shows a processing procedure of operation control performed for each sampling time, as in FIG.
[0063]
First, the counter k of the target position is incremented by 1 in step S30 in FIG. 12, and the process proceeds to step S31. If the value of k is equal to the total number of divisions N at this time, the process proceeds to step S32. This is a case where the
[0064]
In step S32, the counter i corresponding to the teaching point is incremented by one. Next, the positional relationship between the currently passing teaching point Pi and the next teaching point Pi + 1 is determined (step S33), and if the positions of both teaching points are different, the process proceeds to step S34. In step S34, an interpolation formula for a target position xr connecting both teaching points is determined based on the positions of the teaching points Pi and Pi + 1 and the interpolation information. Note that this interpolation formula is represented by a polynomial at time t, similar to the above equation (4).
[0065]
On the other hand, if the positions of the teaching points Pi and Pi + 1 are the same in step S33, it is determined that the posture is maintained at this position (step S35), and the process proceeds to step S36, where 0 is substituted into k and the counter is set. Reset k.
[0066]
Subsequently, in step S37, the target position xr and posture Rr of the painting robot corresponding to the counter k are calculated. Here, the calculation of the target position and the posture is performed based on the interpolation formula when the process of step S34 has been performed (during movement between teaching points), and when the process of step S35 has been performed (at the teaching point). In the case of holding the posture, the teaching point Pi is set as the target position. Then, in step S38, the posture of the painting robot is moved so that the position of the
[0067]
Next, when the current painting robot is in the standby posture, that is, when it is determined that the processing in steps S33 to S35 is performed and the posture is to be maintained, the process proceeds from step S39 to S40, and will be described below. The standby posture is maintained by the processing. Note that the processing here corresponds to the processing by the control mechanism f (θr, θf).
[0068]
First, in step S40, rotation angles θ1 to θ6 of each joint are calculated based on the current position xf of the
[0069]
Here, assuming that the motor torque τj of the j-th joint is 0, the process A of step S42 is performed. FIG. 13 shows the procedure of the process A. As shown in this figure, in the process A, first, the target position rotation angle (θrj) one sampling time ago.(K-1)) And the current target position rotation angle (θrj(K)To obtain the operation braking direction of the painting robot. In this calculation process, the target position rotation angle θrj(K-1)From θrj(K)Is subtracted, and the sign of the obtained value is stored as a variable sign (step S50). Here, the sign of sign is the direction of the angular acceleration (braking direction) for stopping the painting robot. The target position rotation angle θrj one sampling time ago(K-1)Is stored in such a manner as to sequentially overwrite one address in a storage device of the
[0070]
Next, the process proceeds to step S51, in which the braking direction is returned in the reverse direction by a minute amount with the target position rotation angle set to θrj-sign Δθrj, and the rotation angle of the j-th joint is returned by the small angle Δθrj in the direction opposite to the braking direction, and then to step S52. move on.
[0071]
In step S52, the motor torque τj not including the friction torque (τa) when the j-th joint is moved from the state where the rotation angle is changed in step S51 to the true target position rotation angle in the standby posture is calculated. The angular acceleration and the angular velocity (rotational speed) at the time of braking are calculated from the motor torque value thus obtained. Then, in step S53, the angular velocity is integrated to calculate a temporal change in the target position rotation angle, and the movement to the standby posture is performed according to the calculated target position rotation angle (step S54). As a result, the motor torque τj in the state where it has moved to the true standby posture is set to 0.
[0072]
On the other hand, assuming that the motor torque τj of the j-th joint is not 0 in step S41 of FIG. 12, the process B of step S43 is performed. FIG. 14 shows the procedure of the process B. As shown in this figure, in the process B, first, the sign of the gravitational torque (the sign of 0-τgj) is obtained and stored as a variable sign (step S60).
[0073]
Next, in step S61, the target position rotation angle θrj(K-1)From θrj(K)It is determined whether the sign of the value obtained by subtracting is the same as sign. That is, it is determined whether the gravitational torque is the same as the braking direction. If the two are different, the process proceeds to step S62, and the integral operation by the integral operation unit of the control system is omitted.
[0074]
After the integral calculation is omitted in step S62, the target position angle θrj is changed by a small amount Δθj in the direction opposite to the gravitational torque until the current position rotation angle changes (step S63) (step S64). As a result, the motor torque τ is gradually reduced, and the standby posture is maintained with the minimum motor torque that can maintain the rotation angle of the j-th joint. Note that when such torque control is performed, the motor torque τ may change beyond 0, so that the processing B may be terminated when the motor torque τ is monitored and τ = 0. Good.
[0075]
Thus, the operation control for one sampling time is completed. Thereafter, the operation control according to the same processing procedure as described above is repeatedly performed for each sampling time Ts, and the operation control of the coating robot is performed.
[0076]
C. Third operation mode
Next, as a third operation mode, similarly to the second operation mode, the case where the
[0077]
(1) Determination of target position rotation angle
Here, a method of determining the target position rotation angle when the holding torque is reduced by slightly changing the rotation speed command during standby will be described. The target position rotation angle determined here is the target position rotation angle in the target posture slightly deviated from the posture of the coating robot based on the teaching data. Hereinafter, the deviated target position rotation angle is referred to as θrpaus (θrpaus = [θrpaus1, θrpaus2,..., Θrpaus6]).T).
[0078]
FIG. 15 shows a processing procedure for determining the target position rotation angle. As shown in the figure, first, the arithmetic processing unit of the
[0079]
In step S72, the painting robot is moved to the position of the teaching point Pi and the posture at the position. Note that this movement is performed by calculating a target position for each sampling time, and details will be described in the determined operation control ((2) described later) after the target position rotation angle θr is determined. If there is no change in the posture of the painting robot at the teaching point Pi for a certain period of time, it is determined in step S73 that the painting robot is at a position where the painting robot waits, and the process proceeds to step S74.
[0080]
In step S74, the posture of the coating robot is slowly moved back and forth from the stationary state by changing the target position rotation angle of each joint by a small amount, and the start time T immediately before the operation at this time is started.+(Positive direction) and T−(Negative direction).
[0081]
Here, this startup time T+And T−Will be described in detail with reference to FIG. In FIG. 16, the first, second,..., And sixth joint numbers are represented by j (j = 1, 2,..., 6), and a counter for measuring time is represented by C.
[0082]
First, in step S80, the position of the teaching point Pi and the posture at the position are set as target values xr0 and Rr0, and the target position rotation angles θr1, θr2,..., Θr6 of each joint are calculated from the target values (step S81). Then, the processing of steps S82 to S92 is sequentially performed on the first to sixth joints, and the activation time Tj in the positive direction and the negative direction is determined.+And Tj−Ask for. In this process, it is assumed that the integration operation by the integration calculator is not performed.
[0083]
First, the target position rotation angle θrj is increased by a small amount dθj until the j-th joint starts operating in the forward direction (step S82). Thereafter, the j-th joint is held in the posture immediately before the operation, and the counter C is reset by substituting 0 (step S83).
[0084]
Next, the target position rotation angle θrj is decreased by a small amount dθj by a small amount dθj until the joint starts operating in the negative direction (step S84), and the counter C is incremented by 1 every time the joint is decreased (step S85). Then, the value of the counter C when the joint is operated is set to the activation time Tj in the negative direction.−Then, the counter C is reset to 0 (step S86). Also, the target position rotation angle immediately before this operation (one step before the minute amount change step) is θrj.−And
[0085]
Subsequently, the target position rotation angle θrj is increased by a small amount dθj by a small amount dθj until the joint starts operating in the positive direction from the state immediately before the operation in the negative direction (step S87), and the counter C is incremented by 1 for each increase. (Step S88). Then, the value of the counter C when the joint is operated is set to the positive starting time Tj.+(Step S89). Also, the target position rotation angle immediately before this operation is θrj+And Thus, the activation time T in the positive direction and the negative direction for each of the first to sixth joints.+And T−And the process proceeds to step S75 in FIG.
[0086]
Next, the activation time Tj obtained as described above+And Tj−Is compared in step S75. And the activation time Tj+Is larger than the target position rotation angle θrpaus (i) j of the j-th joint at this point (teaching point Pi), the rotation angle θrj immediately before the negative direction operation.−(Step S76), the activation time Tj−Is larger, the target position rotation angle θrpaus (i) j is changed to θrj just before the forward operation.+(Step S77), and when both start times are equal, the target position rotation angle θrpaus (i) j is set to the target position rotation angle θr (i) j based on the teaching data (Step S78). Here, when the target position rotation angle θrpaus (i) j is added (i), the target position rotation angle at the teaching point Pi is indicated. Thus, the target position rotation angle θrpaus (i) at the teaching point Pi is obtained.
[0087]
If the posture of the painting robot changes at the teaching point Pi in step S73, it is determined that the painting robot is not in a standby state, and the processing after step S74 is not performed. Through the above-described processing, the target position rotation angles θrpaus at all the teaching points where the painting robot stands by are obtained.
[0088]
(2) Operation control incorporating target position rotation angle θrpaus
Next, an operation control method in the present operation mode incorporating the target position rotation angle θrpaus will be described with reference to FIG. This figure shows a processing procedure of the operation control performed at each sampling time, and the flow of the processing is similar to the operation control in the first operation mode.
[0089]
First, the counter k of the target position obtained by dividing the teaching point in step S90 is incremented by 1, and the process proceeds to step S91. If the value of k at this time is equal to the total division number N, the process proceeds to step S92. In this case, the
[0090]
In step S92, the counter i corresponding to the teaching point is incremented by 1, and the two teaching points Pi and Pi + 1 are connected based on the interpolation information and the target positions of the currently passing teaching point Pi and the next teaching
[0091]
On the other hand, if the value of k is not smaller than the total number of divisions N in step S91, the process proceeds to step S94 without performing the processes of steps S92 and S93. This is the case where the
[0092]
Subsequently, in step S95, the painting robot is moved to the target position and the posture at the position. Here, after the processing in steps S92 and S93, the posture is held as the position of the teaching point Pi, and after the processing in step S94, the target position and the position derived from the interpolation formula are determined. The position of the
[0093]
Next, in step S96, it is determined whether or not the value of k is 0, that is, whether or not the
[0094]
In step S98, a rotation speed command based on the target position rotation angle θrpaus (i) at the teaching point Pi is output to the motor of each joint among the target position rotation angles θrpaus obtained above. That is, after removing the integration calculator in the control system, the target position rotation angle θr of each joint is set to the above θrpaus (i), and the posture of the coating robot is moved at a very small speed. Thereby, the standby posture at the teaching point Pi is maintained with the minimum power consumption. If the value of k is not 0, the processes in steps S97 and S98 are not performed.
[0095]
Thus, the operation control for one sampling time is completed. Thereafter, the operation control according to the processing procedure of step S90 and thereafter is repeatedly performed for each sampling time Ts, and thereby the operation control of the coating robot is performed.
[0096]
【The invention's effect】
As described above, according to the present invention, when the determination processing unit determines that the motor is in the standby state, the torque of the motor is reduced by using the frictional resistance of the movable part. The torque of the motor that maintains the standby state can be reduced without changing the position and posture of the robot. As a result, the power consumption can be reduced, and the running cost for performing various processes by operating the robot can be reduced.
[0097]
In particular, according to the second or fourth aspect of the present invention, the standby posture is controlled by obtaining a necessary and minimum motor torque when the robot is actually operated. The robot can be controlled by the running cost.
[0098]
Further, according to the present invention, since the posture does not change when the standby posture is maintained, the present invention can be applied without interference even when the operating environment of the robot is restricted. As a result, it is possible to obtain an effect that low-cost and flexible robot control according to various operation environments can be performed. Here, according to the third aspect of the present invention, the second command signal for the entire operation range is stored according to various operation environments, and the standby state is controlled.
[0099]
Furthermore, since the robot control according to the present invention can be realized without newly requiring a special device, the cost of the device itself does not increase.
[0100]
In addition, according to the present invention, since the power consumption is reduced, the calorific value is also reduced, and an increase in the temperature of the motor can be suppressed. At the same time, an increase in the temperature of the amplifier in the control device that supplies the current to the motor can be suppressed, thereby preventing malfunction of the CPU of the control device and improving the durability of hardware components. Is obtained.
[Brief description of the drawings]
FIG. 1 is a diagram showing a configuration of a painting robot system to which a robot control device according to an embodiment of the present invention is applied.
FIG. 2 is a diagram showing a structure of a joint portion between a
FIG. 3 is a diagram showing a relationship between a rotation speed θ ′ transmitted via a speed reducer and a motor torque τ.
FIG. 4 is a diagram showing a case where the
FIG. 5 is a diagram showing a relationship between a rotation angle θ2 and a gravitational torque τg (holding torque).
FIG. 6 is a diagram illustrating an example of a trajectory of a target position and a teaching point.
FIG. 7 is a control block diagram of the painting robot in a first operation mode.
FIG. 8 is a diagram showing a calculation processing procedure of a target holding torque τgr in the first operation mode.
9 is a posture holding torque τa in step S5 of FIG.+And τa−FIG. 7 is a diagram showing a processing procedure for obtaining a.
FIG. 10 is a diagram showing an operation control method in which a target holding torque τgr in the first operation mode is adopted.
FIG. 11 is a control block diagram of the painting robot in the second and third operation modes.
FIG. 12 is a diagram illustrating an operation control method in a second operation mode.
FIG. 13 is a diagram showing a process A in step S42 of FIG.
FIG. 14 is a diagram showing a process B in step S43 of FIG.
FIG. 15 is a diagram illustrating a procedure of determining a target position rotation angle shifted by a small amount in the third operation mode.
FIG. 16 shows a startup time T in step S74 of FIG.+And T−FIG. 7 is a diagram showing a processing procedure for obtaining a.
FIG. 17 is a diagram illustrating an operation control method incorporating a target position rotation angle θrpaus in a third operation mode.
[Explanation of symbols]
1 Controller
2 Teaching pendants
4 Manipulator
6 First motor
7 Turning base
8 Second motor
9 First arm
10 Third motor
11 Second arm
12 Motor case
13 First wrist unit
14 Second wrist unit
15 Third wrist unit
17 Paint gun
Claims (3)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP16032696A JP3552076B2 (en) | 1996-06-20 | 1996-06-20 | Robot control method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP16032696A JP3552076B2 (en) | 1996-06-20 | 1996-06-20 | Robot control method |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH1011121A JPH1011121A (en) | 1998-01-16 |
JP3552076B2 true JP3552076B2 (en) | 2004-08-11 |
Family
ID=15712551
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP16032696A Expired - Fee Related JP3552076B2 (en) | 1996-06-20 | 1996-06-20 | Robot control method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3552076B2 (en) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4492573B2 (en) * | 2006-03-27 | 2010-06-30 | トヨタ自動車株式会社 | Robot and robot motion control method |
JP5586991B2 (en) * | 2010-03-09 | 2014-09-10 | キヤノン株式会社 | Gripping device control method and gripping system |
JP5618290B2 (en) * | 2010-07-14 | 2014-11-05 | トヨタ自動車株式会社 | Robot equipment |
JP5698519B2 (en) * | 2010-12-22 | 2015-04-08 | 川崎重工業株式会社 | Control device and control method of robot arm |
WO2012127532A1 (en) | 2011-03-23 | 2012-09-27 | トヨタ自動車株式会社 | Driving method for joint device |
WO2015174155A1 (en) * | 2014-05-16 | 2015-11-19 | シャープ株式会社 | Attitude control device, robot, and program |
CN105058411B (en) | 2015-08-04 | 2017-01-25 | 苏州阿福机器人有限公司 | Method for external force driving of moving piece in mechanical joint |
-
1996
- 1996-06-20 JP JP16032696A patent/JP3552076B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JPH1011121A (en) | 1998-01-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7211978B2 (en) | Multiple robot arm tracking and mirror jog | |
WO2017064851A1 (en) | Method for teaching robot and device for controlling robot arm | |
US6222338B1 (en) | Method and apparatus for the direct teaching of automatic machines | |
WO2017090235A1 (en) | Robot direct-teaching method | |
JP7336215B2 (en) | Robot system, control method, article manufacturing method, program, and recording medium | |
JP3552076B2 (en) | Robot control method | |
JP2017074669A (en) | Manipulator control device, manipulator drive device, and robot system | |
JP2604929B2 (en) | Robot control device | |
JPS6254302A (en) | Robot controller | |
JPH08161015A (en) | Driving control method for articulated robot | |
JPH08234801A (en) | Apparatus and method for control for motor-driven joint arm | |
JPH0260475B2 (en) | ||
US20230035296A1 (en) | Method of suppressing vibrations of a robot arm with external objects | |
JPH05261691A (en) | Redundant manipulator control method | |
JP3801264B2 (en) | Industrial robot teaching method and apparatus | |
JPH0683453A (en) | Load compensation control method for robot | |
JPH03105404A (en) | Direct teach system | |
JP2713702B2 (en) | Robot control method and device | |
JP2019214105A (en) | Robot control apparatus and robot control method | |
JPH10301616A (en) | Teaching device for robot | |
KR100321497B1 (en) | Robot Motion Teach Method | |
JPH0413579A (en) | Nonreactive device | |
JPH1055207A (en) | Robot controller | |
JP2010167507A (en) | Robot system and method of controlling the same | |
JP3324122B2 (en) | Industrial robot controller |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20040114 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20040212 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20040408 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20040421 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090514 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100514 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100514 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110514 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130514 Year of fee payment: 9 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140514 Year of fee payment: 10 |
|
LAPS | Cancellation because of no payment of annual fees |