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

ロボット制御装置 Download PDF

Info

Publication number
JP5245384B2
JP5245384B2 JP2007319555A JP2007319555A JP5245384B2 JP 5245384 B2 JP5245384 B2 JP 5245384B2 JP 2007319555 A JP2007319555 A JP 2007319555A JP 2007319555 A JP2007319555 A JP 2007319555A JP 5245384 B2 JP5245384 B2 JP 5245384B2
Authority
JP
Japan
Prior art keywords
end effector
robot
target point
movement detection
negative
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.)
Active
Application number
JP2007319555A
Other languages
English (en)
Other versions
JP2009142904A (ja
Inventor
尚哉 香川
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.)
Denso Wave Inc
Original Assignee
Denso Wave Inc
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 Denso Wave Inc filed Critical Denso Wave Inc
Priority to JP2007319555A priority Critical patent/JP5245384B2/ja
Publication of JP2009142904A publication Critical patent/JP2009142904A/ja
Application granted granted Critical
Publication of JP5245384B2 publication Critical patent/JP5245384B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Manipulator (AREA)

Description

本発明は、ロボット制御装置に関し、特にヒステリシスを考慮したパラメータを適用するロボット制御装置に関する。
産業用ロボットのシステムにおいては、動作時における制御精度を高めるため、各種のパラメータを高精度に同定する必要がある。ロボットは、例えば駆動力を発生するアクチュエータ、アクチュエータの位置を検出するエンコーダ、アクチュエータの駆動力を伝達するリンク機構などを備えている。そのため、これらアクチュエータ、エンコーダおよびリンクなどに生じるわずかな誤差は、パラメータを利用して補正される(特許文献1参照)。
特開平6−304893号公報
特許文献1の場合、ロボットで想定される任意の動作領域から任意の数点を抽出し、この任意の点にエンドエフェクタを移動させている。特許文献1では、この任意の点へのエンドエフェクタの移動を複数回繰り返すことにより得られたデータに基づいてキャリブレーションを実行し、各種のパラメータを取得している。しかしながら、ロボットを構成するアクチュエータおよびリンク機構などには、ヒステリシスが存在する。そのため、エンドエフェクタの位置は、エンドエフェクタの動作方向、エンドエフェクタに加わる負荷、エンドエフェクタの移動速度、あるいはエンドエフェクタの加速度などによってわずかにずれが生じる。その結果、キャリブレーションの結果として得られるパラメータの精度が悪化し、制御精度の不十分になるおそれがある。
そこで、本発明は、上記の課題に鑑みてなされたものであり、その目的は、ヒステリシスの影響を低減し、パラメータの精度および制御の精度を向上するロボット制御装置を提供することにある。
請求項1記載の発明では、目的点設定手段で設定した目的点に対し、エンドエフェクタを正方向および負方向から移動させてエンドエフェクタ座標および軸の回転角度を取得している。すなわち、正方向移動検出手段は、エンドエフェクタを第一位置から目的点に対し移動させ、目的点に達したときのエンドエフェクタの正エンドエフェクタ座標および各軸の正回転角度を取得している。一方、負方向移動検出手段は、エンドエフェクタを目的点を挟んで第一位置とは反対側に位置する第二位置から目的点に対し移動させ、目的点に達したときのエンドエフェクタの負エンドエフェクタ座標および各自の負回転角度を取得している。このように、目的点に対しエンドエフェクタを第一位置から正方向へ、および第二位置から負方向へ移動させることにより、エンドエフェクタが異なる方向から移動しつつエンドエフェクタ座標および各軸の回転角度は取得される。そのため、移動方向の相違によって生じるヒステリシスの影響を相殺したキャリブレーションが実行される。したがって、ヒステリシスの影響を低減することができ、パラメータの精度および制御の精度を向上することができる。
請求項2記載の発明では、エンドエフェクタの第一位置から目的点までの正方向へ移動と、エンドエフェクタの第二位置から目的点までの負方向の移動とを複数の異なる目的点に対し繰り返して実行している。そして、繰り返して得られた各エンドエフェクタ座標および各軸の各回転角度、ならびにDHパラメータからキャリブレーションを実行している。そのため、移動ごとのわずかなずれの影響、およびヒステリシスの影響を低減することができ、パラメータの精度および制御の精度を向上することができる。
請求項3記載の発明では、DHパラメータはエンドエフェクタに加わる負荷、およびエンドエフェクタの加速度に応じて複数設定されている。そのため、エンドエフェクタに加わる負荷やエンドエフェクタの加速度によってヒステリシスが異なる場合でも、エンドエフェクタに加わる負荷やエンドエフェクタの加速度に応じて適切な特定DHパラメータが抽出される。したがって、負荷や加速度によって変化するヒステリシスの影響を低減することができ、パラメータの精度および制御の精度を向上することができる。
請求項4記載の発明では、ロボットの一つのステップにおける動作が停止した後、特定DHパラメータによるロボットの制御を切り替える。ロボットは、動作の途中に負荷や加速度が変化することがある。この場合、条件の切り替えとともにDHパラメータを切り替えると、ロボットの動作にずれを招くおそれがある。そこで、ロボットにおいて一つのステップにおける動作が停止するまでDHパラメータの切り替えは行われない。したがって、ロボットの動作中における動作のずれを低減することができる。
以下、本発明によるロボット制御装置の一実施形態を図面に基づいて説明する。
図1および図2は、本実施形態によるロボット制御装置を適用したロボットシステムを示す。図1は、ロボットシステムの構成を示すブロック図である。図2は、ロボットシステムの構成を示す概略図である。ロボットシステム10は、ロボット11および制御装置12を備えている。ロボット11は、例えば部品の組み立て用あるいは部品の検査用など、任意の構成のロボットである。制御装置12は、周辺機器として操作ペンダントを構成するティーチィングペンダント13およびプログラム入力用のパソコン14などが接続されている。
ロボット11は、例えば六軸の垂直多関節型のロボットとして構成されている。ロボット11は、周知の通り、アクチュエータであるサーボモータ15などからの駆動力で駆動されるアーム16を有している。アーム16は、先端にエンドエフェクタ17を有している。例えばロボット11で部品の運搬や組み立てなどを行う場合、エンドエフェクタ17としてこれらの部品を保持するためのハンドが用いられる。また、例えばロボット11で部品の検査などを行う場合、エンドエフェクタ17として対象となる部品を撮影するカメラなどが用いられる。このように、エンドエフェクタ17は、ロボット11を適用する工程に応じて任意に選択することができる。サーボモータ15からアーム16の先端のエンドエフェクタ17までの間には、図示しない減速機構やリンクなどの駆動力伝達機構が設けられている。これにより、アーム16の先端に設けられているエンドエフェクタ17は、サーボモータ15からの駆動力によって駆動される。ロボット11と制御装置12との間は、接続ケーブル18によって接続されている。これにより、ロボット11の各軸を駆動するサーボモータ15、および作業を実行するエンドエフェクタ17は、制御装置12によって制御される。
ティーチィングペンダント13は、例えばユーザが携帯あるいは手に所持して操作可能な程度の大きさで構成されている。ティーチィングペンダント13は、例えば薄型の略矩形箱状に形成されている。ティーチィングペンダント13は、表面部の中央部に例えば液晶ディスプレイからなる表示部21を有している。表示部21には、各種の画面が表示される。表示部21は、タッチパネルで構成されている。また、ティーチィングペンダント13は、表示部21の周囲に各種のキースイッチ22が設けられている。タッチパネルおよびキースイッチ22は、制御装置12への種々の指示を入力するキー操作部23を構成している。
ティーチィングペンダント13の内部には、制御回路24および図示しないインターフェイスなどが設けられている。制御回路24は、マイクロコンピュータを主体として構成されている。ティーチィングペンダント13は、インターフェイスを経由して制御装置12との間で高速のデータ転送を実行する。ティーチィングペンダント13は、ケーブル25を経由して制御装置12に接続している。ティーチィングペンダント13のキー操作部23から入力された操作信号などは、ケーブル25を経由してティーチィングペンダント13から制御装置12へ送信される。また、制御装置12は、ティーチィングペンダント13へ制御信号や表示用の信号などとともに、駆動用の電力を供給する。
ユーザは、上記のティーチィングペンダント13を用いてロボット11の運転や設定などの各種の機能を実行可能である。具体的には、ユーザは、キー操作部23を操作することにより、予め設定されているロボット11のプログラムを呼び出して、ロボット11の起動や各種のパラメータの設定などを実行することができる。また、ロボット11をマニュアル操作により動作させて各種の教示作業を実行可能である。このとき、表示部21には、例えばメニュー画面、設定入力画面、状況表示画面など必要に応じて所望の画面が表示される。
パソコン14には、汎用のノートパソコンなどが適用される。パソコン14でプログラミングソフトを実行させることにより、ユーザはアプリケーションに応じてロボット11の動作手順などを記述したロボットプログラムを作成することができる。この場合、ユーザは、ロボット11で実行するアプリケーションに応じて、パッケージ命令を組み合わせたり、修正を加えたりすることにより、比較的簡単にロボット11の動作プログラムを作成することができる。このパソコン14は、ケーブル26を経由して制御装置12に接続している。パソコン14で作成されたロボット11の動作プログラムは、ケーブル26を経由してパソコン14から制御装置12へ入力される。
制御装置12は、箱状のフレームの内部に制御部31が組み込まれている。制御部31は、CPU、ROMおよびRAMなどからマイクロコンピュータを主体として構成されている。制御部31は、予め入力、記憶されたロボット11の動作プログラムや、各種のデータおよびパラメータ、ティーチィングペンダント13からの操作信号などに基づいて、サーボ制御部32を経由してロボット11の各軸のサーボモータ15を駆動する。これにより、制御装置12は、ロボット11の動作を制御する。
制御装置12は、上記の構成に加え、記憶部34、目的点設定部35、正方向移動検出部36、負方向移動検出部37およびDHパラメータ抽出部38を有する。記憶部34は、例えばEPPROMなどの不揮発性の記憶素子やHDDなどから構成されている。また、制御部31を構成するROMおよびRAMによって記憶部34を構成してもよい。記憶部34には、ロボット11のDHパラメータが記憶されている。DHパラメータは、ロボット11に固有のデータとして予め記憶部34に記憶する構成としてもよく、ロボット11の経時的な精度の変化に応じて適宜取得して記憶部34に記憶する構成としてもよい。DHパラメータは、エンドエフェクタ17に加わる負荷、あるいはエンドエフェクタ17の移動時における加速度など、エンドエフェクタ17の動作条件に応じて複数設定されている。ロボット11の動作精度は、エンドエフェクタ17に加わる負荷やエンドエフェクタ17の移動加速度などによって変化する。そのため、DHパラメータは、ロボット11の動作として想定される各種の負荷や移動加速度などに応じて取得され、記憶部34に記憶されている。
目的点設定部35は、ロボット11の可動領域内に設定されている目的点を設定する。この目的点とは、ロボット11が動作したとき、エンドエフェクタ17が移動の目的とする点である。すなわち、ロボット11のエンドエフェクタ17は、この目的点に向けて移動する。
正方向移動検出部36は、ロボット11を作動させて目的点設定部35で設定した目的点にエンドエフェクタ17を移動させたとき、この目的点におけるロボット11の位置および姿勢などを取得する。具体的には、正方向移動検出部36は、予め設定した第一位置から目的点に対してエンドエフェクタ17を移動させる。この第一位置P1は、図3に示すように目的点Pgと異なる位置に設定され、エンドエフェクタ17が移動を開始する点である。正方向移動検出部36は、この第一位置P1から目的点Pgへエンドエフェクタ17を移動させる。そして、正方向移動検出部36は、エンドエフェクタ17が目的点に達したとき、エンドエフェクタ17の座標、およびロボット11を構成する各軸の回転角度を取得する。正方向移動検出部36は、第一位置P1から目的点Pgへエンドエフェクタ17を移動させたとき、目的点Pgにおけるエンドエフェクタ17の座標を正エンドエフェクタ座標として取得する。また、正方向移動検出部36は、第一位置P1から目的点Pgへエンドエフェクタ17を移動させたとき、目的点Pgにおけるロボット11を構成する各軸の回転角度を正回転角度として取得する。本実施形態の場合、ロボット11は、六軸型であるので、正方向移動検出部36はこの六軸のすべての回転角度を検出する。正方向移動検出部36によってエンドエフェクタ17が移動する方向、すなわち第一位置P1から目的点Pgへの移動方向は、エンドエフェクタ17の移動方向において正方向とする。
負方向移動検出部37は、ロボット11を作動させて予め設定した第二位置から目的点Pgに対してエンドエフェクタ17を移動させたとき、この目的点Pgにおけるロボット11の位置および姿勢などを取得する。この第二位置P2は、図3に示すように目的点Pgおよび第一位置P1とは異なる位置に設定され、エンドエフェクタ17が移動を開始する点である。エンドエフェクタ17は、ロボット11の各軸に支持されて移動の中心となる固定軸Pvを支点として回転移動する。第二位置P2は、この固定軸Pvと目的点Pgとを結ぶ仮想直線Lを対称軸として、目的点Pgを挟んで第一位置P1と対称な位置に設けられている。
ロボット11のエンドエフェクタ17は、三次元へ移動可能である。一方、三次元へ移動可能なロボット11であっても、その可動領域から目的点Pgおよび第一位置P1の二点を抽出したとき、目的点Pgおよび第一位置P1は同一の仮想平面上に位置する。そして、固定軸Pvと目的点Pgを結ぶ仮想直線Lもこの仮想平面上に位置する。したがって、第二位置P2も、目的点Pg、第一位置P1および仮想直線Lと同一の仮想平面上に位置する。
負方向移動検出部37は、この第二位置P2から目的点Pgへエンドエフェクタ17を移動させる。そして、負方向移動検出部37は、エンドエフェクタ17が目的点Pgに達したとき、エンドエフェクタ17の座標、およびロボット11を構成する各軸の回転角度を取得する。負方向移動検出部37は、第二位置P2から目的点Pgへエンドエフェクタ17を移動させたとき、目的点Pgにおけるエンドエフェクタ17の座標を負エンドエフェクタ座標として取得する。また、負方向移動検出部37は、第二位置P2から目的点Pgへエンドエフェクタ17を移動させたとき、目的点Pgにおけるロボット11を構成する各軸の回転角度を負回転角度として取得する。負方向移動検出部37によってエンドエフェクタ17が移動する方向、すなわち第二位置P2から目的点Pgへの移動方向は、エンドエフェクタ17の移動方向において負方向とする。
正方向移動検出部36および負方向移動検出部37は、ロボット11のエンドエフェクタ17の座標および各軸の回転角度を検出するためのパラメータとして、例えば次のパラメータを取得する。正方向移動検出部36および負方向移動検出部37は、例えばロボット11の各軸を構成する回転軸iの回転角θi、回転軸iによって駆動されるリンクLi、回転軸iと回転軸i+1との間のリンク長ai、リンクLiのz軸からリンクLi+1のz軸までのxi軸まわりの回転角αi、および回転角θiのオフセット量Δθiなどのうちの全部または一部をパラメータとして取得する。
制御部31は、正方向移動検出部36で取得した正エンドエフェクタ座標および正回転角度と、負方向移動検出部37で取得した負エンドエフェクタ座標および負回転角度と、記憶部34に記憶されているDHパラメータとに基づいてロボット11のキャリブレーション実行する。DHパラメータ抽出部38は、記憶部34に記憶されているDHパラメータから、エンドエフェクタ17の負荷や移動加速度に応じて適したDHパラメータを特定DHパラメータとして抽出する。DHパラメータ抽出部38は、例えばパソコン14などから入力されたロボット11の動作プログラムにしたがうロボットのアプリケーションに応じて、そのアプリケーションに適したDHパラメータを特定DHパラメータとして抽出する。
次に、上記構成の制御装置12によるキャリブレーションについて、図4に基づいて説明する。
目的点設定部35は、ロボット11のキャリブレーションを実行するための計測位置すなわち目的点Pgを設定する(S101)。目的点Pgは、ロボット11の動作領域のすべてに適用可能なパラメータを取得可能な代表的な計測点である。目的点設定部35は、少なくとも一点以上の目的点Pgを設定する。なお、目的点設定部35は、ロボット11の動作領域のうち一部の領域における一部の動作についてのみ適用可能なパラメータを取得可能な計測点を目的点として設定してもよい。
目的点Pgが設定されると、正方向移動検出部36は、第一位置P1を設定し、エンドエフェクタ17を第一位置P1へ動作させる(S102)。正方向移動検出部36は、目的点Pgと異なる第一位置P1を設定する。目的点Pgと第一位置P1との間の距離は、予め一定の値として設定してもよく、目的点Pgごとに任意に変化する値として設定してもよい。正方向移動検出部36は、第一位置P1が設定されると、ロボット11のエンドエフェクタ17を第一位置P1へ動作させる。正方向移動検出部36は、サーボ制御部32を経由してサーボモータ15へ駆動信号を出力し、ロボット11を動作させる。ロボット11は、サーボモータ15の回転量に応じて動作し、アーム16の先端に設けられたエンドエフェクタ17が移動する。
エンドエフェクタ17が第一位置P1へ移動すると、正方向移動検出部36はエンドエフェクタ17を第一位置P1から目的点Pgへ動作させる(S103)。正方向移動検出部36は、エンドエフェクタ17を目的点Pgへ移動させるための制御信号となる指令位置および姿勢もしくは指令角度を設定し、サーボ制御部32からサーボモータ15へ出力する。サーボモータ15は、サーボ制御部32から出力された指令位置および姿勢もしくは指令角度を含む制御信号に基づいて駆動される。これにより、エンドエフェクタ17は、第一位置P1から目的点Pgへ移動する。
エンドエフェクタ17が第一位置P1から目的点Pgへ移動すると、正方向移動検出部36はエンドエフェクタ17の実位置および実姿勢を取得する(S104)。エンドエフェクタ17は、例えばレーザ計測器などの図示しない外部装置によって目的点Pgに移動した際の実際の位置および姿勢が計測される。正方向移動検出部36は、この外部装置によって計測されたエンドエフェクタ17の位置および姿勢を、エンドエフェクタ17の実位置および実姿勢として外部装置から取得する。
また、正方向移動検出部36は、エンドエフェクタ17を目的点Pgへ動作させるために設定した指令位置および姿勢もしくは指令角度を取得する(S105)。指令位置および姿勢もしくは指令角度は、上述のステップS103においてエンドエフェクタ17を第一位置P1から目的点Pgへ動作させるときに設定される。そのため、正方向移動検出部36は、ステップS103において設定した指令位置および姿勢もしくは指令角度を取得する。
正方向移動検出部36は、ステップS104で外部装置から取得したエンドエフェクタ17の実位置および実姿勢と、ステップS105で取得したエンドエフェクタ17の指令位置および姿勢もしくは指令角度とから、エンドエフェクタ17の座標を示す正エンドエフェクタ座標、およびロボット11の各軸における回転角度を示す正回転角度を算出する。そして、正方向移動検出部36は、算出した正エンドエフェクタ座標および正回転角度を正方向データとして記憶部34に記憶する(S106)。
ステップS102からステップS106において正方向移動検出部36によるエンドエフェクタ17の正方向への移動時における正方向データの取得が完了すると、負方向移動検出部37は、第二位置P2を設定し、エンドエフェクタ17を第二位置P2へ動作させる(S107)。負方向移動検出部37は、目的点Pgおよび第一位置P1と異なる第二位置P2を設定する。第二位置P2は、上述のように図3に示す仮想直線Lを対称軸として第一位置P1と対称な位置に設定される。そのため、目的点Pgから第二位置P2までの距離は、目的点Pgから第一位置P1までの距離と同一である。負方向移動検出部37は、第二位置P2が設定されると、ロボット11のエンドエフェクタ17を第二位置P2へ動作させる。負方向移動検出部37は、サーボ制御部32からサーボモータ15へ駆動信号を出力し、ロボット11を動作させる。ロボット11は、サーボモータ15の回転量に応じて動作し、アーム16の先端に設けられたエンドエフェクタ17が移動する。
エンドエフェクタ17が第二位置P2へ移動すると、負方向移動検出部37はエンドエフェクタ17を第二位置P2から目的点Pgへ動作させる(S108)。負方向移動検出部37は、エンドエフェクタ17を目的点Pgへ移動させるための制御信号となる指令位置および姿勢もしくは指令角度を設定し、サーボ制御部32からサーボモータ15へ出力する。サーボモータ15は、サーボ制御部32から出力された指令位置および姿勢もしくは指令角度を含む制御信号に基づいて駆動される。これにより、エンドエフェクタ17は、第二位置P2から目的点Pgへ移動する。
エンドエフェクタ17が第二位置P2から目的点Pgへ移動すると、負方向移動検出部37はエンドエフェクタ17の実位置および実姿勢を取得する(S109)。エンドエフェクタ17は、正方向への移動時と同様に図示しない外部装置によって目的点に移動した際の実際の位置および姿勢が計測される。負方向移動検出部37は、この外部装置によって計測されたエンドエフェクタ17の位置および姿勢を、エンドエフェクタ17の実位置および実姿勢として外部装置から取得する。
また、負方向移動検出部37は、エンドエフェクタ17を目的点Pgへ動作させるために設定した指令位置および姿勢もしくは指令角度を取得する(S110)。指令位置および姿勢もしくは指令角度は、上述のステップS108においてエンドエフェクタ17を第二位置P2から目的点Pgへ動作させるときに設定される。そのため、負方向移動検出部37は、ステップS108において設定した指令位置および姿勢もしくは指令角度を取得する。
負方向移動検出部37は、ステップS109で外部装置から取得したエンドエフェクタ17の実位置および実姿勢と、ステップS110で取得したエンドエフェクタ17の指令位置および姿勢もしくは指令角度とから、エンドエフェクタ17の座標を示す負エンドエフェクタ座標、およびロボット11の各軸における回転角度を示す負回転角度を算出する。そして、負方向移動検出部37は、算出した負エンドエフェクタ座標および負回転角度を負方向データとして記憶部34に記憶する。
制御部31は、正方向移動検出部36による正方向データの取得、および負方向移動検出部37による負方向データの取得があらかじめ設定されたnセット(n≧1)実行されたか否かを判断する(S112)。エンドエフェクタ17の動作は、ロボット11のサーボモータ15および駆動力伝達機構に生じるヒステリシスによって、正方向の移動と負方向の移動との間でずれが生じる。すなわち、第一位置P1から目的点Pgへ正方向へ動作させたときに到達するエンドエフェクタ17の座標と、第二位置P2から目的点Pgへ負方向へ動作させたときに到達するエンドエフェクタ17の座標との間には、ずれが生じる。このずれは、エンドエフェクタ17の動作の方向に依存するだけでなく、動作を実行するごとにも生じる。すなわち、エンドエフェクタ17の座標のずれは、同一方向の移動であっても、動作を行うごとにわずかに生じる。そこで、より精度の高いキャリブレーションを実行するために、制御部31は正方向移動検出部36による正方向データの取得、および負方向移動検出部37による負方向データの取得をnセット実行する。このとき、精度を十分に確保するためには、望ましくはn≧50である。このnは、ロボット11およびエンドエフェクタ17の座標に要求される精度に応じて、任意に設定することができる。すなわち、要求する精度が比較的低いときはnを小さくし、要求する精度が高くなるにつれてnを大きくすることができる。また、ロボット11の形状精度や組み付け精度が高いとき、nは小さくしてもよい。
制御部31は、ステップS112においてnセットの正方向データの取得および負方向データの取得が完了してないと判断すると、ステップS102へリターンする。これにより、制御部31は、正方向データおよび負方向データの取得がnセットに到達するまでステップS102からステップS111までを繰り返して実行する。一方、制御部31は、ステップS112においてnセットの正方向データの取得および負方向データの取得が完了したと判断すると、目的点Pgのすべてにおいて正方向データおよび負方向データの取得が完了したか否かを判断する(S113)。上述のように、目的点設定部35は、ロボット11の動作領域内に少なくとも一点以上の目的点Pgを設定する。したがって、制御部31は、設定した目的点Pgのすべてについて正方向データおよび負方向データの取得が完了したか否かを判断する。
制御部31は、ステップS113において目的点Pgのすべてで正方向データおよび負方向データの取得が完了していないと判断すると、ステップS101へリターンする。これにより、制御部31は、すべての目的点Pgに対し正方向データおよび負方向データの取得が完了するまで、ステップS101からステップS112を繰り返して実行する。一方、制御部31は、ステップS113において目的点のすべてで正方向データおよび負方向データの取得が完了したと判断すると、キャリブレーションデータを作成する(S114)。
制御部31は、ステップS101からステップS113を実行することにより得られた正方向データおよび負方向データと、記憶部34に記憶されているDHパラメータとからキャリブレーションデータを作成する。この正方向データには、正エンドエフェクト座標および正回転角度が含まれている。同様に負方向データには、負エンドエフェクト座標および負回転角度が含まれている。このとき、制御部31は、DHパラメータ抽出部38によりキャリブレーションデータの作成に用いる特定DHパラメータを抽出する。
制御部31は、ステップS114におけるキャリブレーションデータの作成が完了すると、作成したキャリブレーションデータを記憶部34に記憶する。そして、制御部31は、ロボット11を制御するとき、記憶部34に記憶したキャリブレーションデータに基づいてサーボ制御部32からサーボモータ15へ出力する制御信号の指令値を補正する(S115)。すなわち、制御部31は、ステップS114で作成したキャリブレーションデータを用いてロボット11の制御を実行する。これにより、ロボット11は、ヒステリシスの影響が低減されたキャリブレーションデータで補正された制御信号に基づいて制御される。
以上、説明したように本発明の一実施形態では、ロボット11はキャリブレーションデータにより補正された制御信号によって制御される。このキャリブレーションデータは、第一位置P1から目的点Pgへのロボット11の動作による正方向データと、第一位置P1とは対称な第二位置P2から目的点Pgへのロボット11の動作による負方向データと、ロボット11に設定されているDHパラメータとに基づいて作成される。正方向データおよび負方向データを用いてキャリブレーションデータを作成することにより、エンドエフェクタ17の移動方向によるヒステリシスの影響は低減される。すなわち、対称な二つの方向からのエンドエフェクタ17の移動によって取得した正方向データおよび負方向データを組み合わせることにより、ロボット11に生じるヒステリシスがロボット11の制御に与える影響は低減される。したがって、ロボット11の制御精度を向上することができる。
また、本発明の一実施形態では、エンドエフェクタ17の正方向の移動および負方向の移動を一セットとして正方向データおよび負方向データを取得し、これらのデータの取得をnセット繰り返している。これにより、エンドエフェクタ17の移動方向によるヒステリシスの影響だけでなく、ロボット11の動作位置単位で異なる静的なずれが動作領域全体で低減される。したがって、キャリブレーションデータの精度を高めることができ、ロボット11の制御精度を向上することができる。
さらに、本発明の一実施形態では、キャリブレーションデータの作成に用いるDHパラメータは、エンドエフェクタ17に加わる負荷やエンドエフェクタ17の移動加速度などに応じて複数設定している。そして、DHパラメータ抽出部38は、複数設定されているDHパラメータからロボット11のアプリケーションに応じて、このアプリケーションに適した特定DHパラメータを抽出する。これにより、エンドエフェクタ17の移動方向だけでなく、アプリケーションの種類ごとに、最適なキャリブレーションデータが作成される。したがって、ロボット11の動作にあわせてロボット11の制御精度を向上することができる。
(その他の実施形態)
ロボット11は、その動作によっては負荷や移動加速度の異なる二つ以上のアプリケーションが連続する場合がある。すなわち、ロボット11は、適用されるDHパラメータが異なる動作が連続する場合がある。このとき、制御装置12は、ロボット11の動作すなわちアプリケーションが一つのステップを完了した後に、適用するDHパラメータを切り替える構成とすることが望ましい。すなわち、制御装置12は、ロボット11の複数のアプリケーションが一連して継続している途中で適用するDHパラメータを変更しない。連続する動作の途中にDHパラメータを変更すると、アプリケーションとアプリケーションとの間でロボット11の制御精度にずれが生じるおそれがある。そこで、制御装置12は、ロボット11のアプリケーションが連続するとき、ロボット11の動作が一つのステップを完了するまでDHパラメータをパラメータの切り替えを行わない。したがって、ロボット11の動作中における動作のずれを低減することができる。
本発明の一実施形態によるロボットシステムの概略構成を示すブロック図 本発明の一実施形態によるロボットシステムを示す概略図 本発明の一実施形態によるロボットシステムにおいて、目的点、第一位置および第二位置の位置関係を示す模式図 本発明の一実施形態によるロボットシステムの作動の流れを示す概略図
符号の説明
図面中、11はロボット、12は制御装置、16はアーム、17はエンドエフェクタ、35は目的点設定部(目的点設定手段)、36は正方向移動検出部(正方向移動検出手段)、37は負方向移動検出部(負方向移動検出手段)、38はパラメータ抽出部(パラメータ抽出手段)、Pgは目的点、P1は第一位置、P2は第二位置、Pvは固定軸、Lは仮想直線を示す。

Claims (4)

  1. エンドエフェクタ、および前記エンドエフェクタを支持し複数の軸を支点として移動するアームを備えるロボットの制御装置であって、
    ロボットの可動領域に目的点を設定する目的点設定手段と、
    前記目的点設定手段で設定した目的点に対し、前記目的点と異なる第一位置から前記目的点に対し前記エンドエフェクタを移動させ、前記目的点に達したときの前記エンドエフェクタの座標を正エンドエフェクタ座標として、および複数の前記軸の回転角度を正回転角度として取得する正方向移動検出手段と、
    前記エンドエフェクタの移動における固定軸と前記目的点とを結ぶ仮想直線を対称軸として前記第一位置と対称であり前記目的点、前記第一位置、前記仮想直線および前記対称軸を含む仮想平面と同一の平面上に位置する第二位置から前記目的点に対し前記エンドエフェクタを移動させ、前記目的点に達したときの前記エンドエフェクタの座標を負エンドエフェクタ座標として、および複数の前記軸の回転角度を負回転角度として取得する負方向移動検出手段と、
    を備えることを特徴とするロボット制御装置。
  2. 前記エンドエフェクタの前記第一位置から前記目的点までの移動と、前記第二位置から前記目的点までの移動とから前記エンドエフェクタの移動検出の一セットを構成し、
    前記ロボットの可動領域に設定された各目的点に対し、前記エンドエフェクタの移動検出をnセット(n>1)実施し、得られた前記正エンドエフェクト座標、前記正回転角度、前記負エンドエフェクト座標および前記負回転角度と、前記ロボットに予め設定されているDHパラメータとに基づいて、前記ロボットのキャリブレーションを実施することを特徴とする請求項1記載のロボット制御装置。
  3. 前記DHパラメータは、前記エンドエフェクタに加わる負荷、および前記エンドエフェクタの移動時における加速度に応じて複数設定され、
    複数設定されている前記DHパラメータから前記エンドエフェクタに適用される負荷および前記エンドエフェクタの加速度に応じて適した特定DHパラメータを抽出するDHパラメータ抽出手段をさらに備えることを特徴とする請求項2記載のロボット制御装置。
  4. 前記DHパラメータ抽出手段で抽出された前記特定DHパラメータは、前記ロボットにおいて一つのステップにおける動作が停止した後に切り換えられることを特徴とする請求項3記載のロボット制御装置。
JP2007319555A 2007-12-11 2007-12-11 ロボット制御装置 Active JP5245384B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007319555A JP5245384B2 (ja) 2007-12-11 2007-12-11 ロボット制御装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007319555A JP5245384B2 (ja) 2007-12-11 2007-12-11 ロボット制御装置

Publications (2)

Publication Number Publication Date
JP2009142904A JP2009142904A (ja) 2009-07-02
JP5245384B2 true JP5245384B2 (ja) 2013-07-24

Family

ID=40914151

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007319555A Active JP5245384B2 (ja) 2007-12-11 2007-12-11 ロボット制御装置

Country Status (1)

Country Link
JP (1) JP5245384B2 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6700669B2 (ja) * 2015-04-07 2020-05-27 キヤノン株式会社 制御方法、ロボット装置、プログラム、記録媒体、及び物品の製造方法
JP6603289B2 (ja) 2017-10-27 2019-11-06 ファナック株式会社 ロボット、ロボットシステム、およびロボットの座標系設定方法
CN113377136B (zh) * 2021-06-29 2023-01-17 西门子(中国)有限公司 自动接料过程中接头长度的控制方法、装置和可读介质

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3868928B2 (ja) * 2003-06-09 2007-01-17 三菱電機株式会社 ロボット位置決め誤差補正装置

Also Published As

Publication number Publication date
JP2009142904A (ja) 2009-07-02

Similar Documents

Publication Publication Date Title
US10751874B2 (en) Method of teaching robot and robotic arm control device
JP6201126B2 (ja) マスタスレーブシステム
US8498745B2 (en) Robot apparatus and gripping method for use in robot apparatus
CN108068109B (zh) 控制保持装置的方法、保持装置和机器人装置
JP5670416B2 (ja) ロボットシステム表示装置
JP5946859B2 (ja) 力に応じて動かすロボットのロボット制御装置およびロボットシステム
US9095984B2 (en) Force control robot
JP7339806B2 (ja) 制御システム、ロボットシステム及び制御方法
EP1645374A1 (en) Gripping hand with strain detecting means for adjusting its gripping force
WO2013038544A1 (ja) ロボットシステム及びロボット制御装置
JP2012096338A (ja) ロボット制御装置
US11833687B2 (en) Robot apparatus, control method for the robot apparatus, assembly method using the robot apparatus, and recording medium
JP5245384B2 (ja) ロボット制御装置
JP7071070B2 (ja) ロボットシステム及びその運転方法
CN114055460B (zh) 示教方法及机器人系统
CN110914025B (zh) 把持系统
US11400583B2 (en) Robot
WO2016162066A1 (en) An industrial robot and a method for lead-through programming of an industrial robot
KR101474778B1 (ko) 다관절 로봇의 동작인식을 통한 제어장치 및 그 방법
JP4882990B2 (ja) ロボット制御装置
JP7392154B2 (ja) ロボット制御装置
JP4951783B2 (ja) ロボット制御装置及びロボット制御方法
JP4423081B2 (ja) パラレルリンク装置のリンクおよびパラレルリンク装置
JP7469523B2 (ja) 変位検出センサ、制御装置、及び制御システム
JPWO2018212189A1 (ja) 把持システム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100611

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120119

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120214

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120911

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20121108

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: 20130312

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130325

R150 Certificate of patent or registration of utility model

Ref document number: 5245384

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20160419

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250