JP5239901B2 - ロボットシステムおよびロボットの制御方法 - Google Patents
ロボットシステムおよびロボットの制御方法 Download PDFInfo
- Publication number
- JP5239901B2 JP5239901B2 JP2009015162A JP2009015162A JP5239901B2 JP 5239901 B2 JP5239901 B2 JP 5239901B2 JP 2009015162 A JP2009015162 A JP 2009015162A JP 2009015162 A JP2009015162 A JP 2009015162A JP 5239901 B2 JP5239901 B2 JP 5239901B2
- Authority
- JP
- Japan
- Prior art keywords
- teaching
- measurement
- command
- scan
- data
- 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
Landscapes
- Image Analysis (AREA)
- Manipulator (AREA)
- Image Processing (AREA)
Description
オンライン教示の方法として、例えば、操作者がロボットを誘導して位置姿勢を作り、実際の作業の動作や手順を教示する方法がある。また、オフライン教示の方法として、あらかじめパソコンで作業プログラムを作成して、生成した作業プログラムをロボットコントローラに転送して再生運転する方法がある。
しかし、オンライン教示では、ワーク位置決め誤差により、実際に教示した位置と再生運転時に作業する位置がずれる可能性がある。オフライン教示では、教示データの原点と実際のロボットの原点がずれている場合があり、教示点位置の補正方法が難しい。
特許文献1には、オンライン教示で精度良く教示位置を教示する方法として、ロボットエンドエフェクタ上にワークの位置検出をする位置検出手段を設け、位置検出手段が位置検出領域に測定光を照射し、位置検出領域から帰還する乱反射光や正反射光に基づいてワークの位置情報を取得する技術が開示されている。
また、特許文献2には、作業動作を補正する方法として、測定用動作ファイルでロボットを動かして、距離センサにより基準ワークをセンシングして測定距離を記憶しておき、実ワークをセンシングして測定距離を求めて、基準ワークの測定距離との差から作業用動作を補正する技術が開示されている。
特許文献3には、双腕ロボットの一方の腕が一つの部品を組み付け中に他方の腕で他の部品の組み付け準備を行ったり、双方のアームにて2つの部品を組み合わせたりする、双腕を交互にまたは同時に協調させて動作する技術が開示されている。
また、特許文献4には、2つのロボットアームを協調動作させて、ひとつの対象物を2つのアームで保持して移動させる技術が開示されている。
また、特許文献4については、双方の腕がワークを把持する箇所が正確でなければうまく嵌合できないような場合には、双方の腕が正確にワークの正確な位置を把持しなければならないが、スレーブアームは重力方向のみ支持しているので、正確な把持位置を保つことができない。
本発明はこのような問題点に鑑みてなされたものであり、操作者がワーク毎に計測動作の位置姿勢教示をする必要がなく、3次元位置姿勢を高精度に取得して、ワークの位置や姿勢のずれを修正することを目的とし、さらに、双腕ロボットでの組み立て作業に適用できる方法とすることを目的とする。
本発明は、ワークを把持するエンドエフェクタと、前記ワークの形状計測手段と、を備えたロボットの制御方法において、前記エンドエフェクタを把持位置へ移動させて教示位置として記録し、前記教示位置を中心としてあらかじめ決められた範囲を計測範囲とし、前記計測範囲をワークの形状計測手段により計測したワーク形状をマスタデータとして前記教示位置と関連づけて記録する教示ステップと、前記教示位置を中心としてあらかじめ決められた範囲を計測範囲とし、前記計測範囲をワークの形状計測手段により計測したワーク形状を計測データとし、前記マスタデータと前記計測データを比較し、前記マスタデータに対する前記計測データの3次元の位置姿勢を計算して修正量とし、前記修正量にしたがって前記把持位置を修正し、前記エンドエフェクタを前記修正された把持位置へ移動する指令を生成する再生ステップと、を含み、前記マスタデータは、ヘリカルスキャンの軌道に沿って前記ワークの形状計測手段により計測したワーク形状の計測データであることを特徴とするものである。
また、本発明は、ワークを把持するエンドエフェクタと、前記ワークの形状計測手段と、を備えたロボットの制御方法において、前記エンドエフェクタを把持位置へ移動させて教示位置として記録し、前記教示位置を中心としてあらかじめ決められた範囲を計測範囲とし、前記計測範囲をワークの形状計測手段により計測したワーク形状をマスタデータとして前記教示位置と関連づけて記録する教示ステップと、前記教示位置を中心としてあらかじめ決められた範囲を計測範囲とし、前記計測範囲をワークの形状計測手段により計測したワーク形状を計測データとし、前記マスタデータと前記計測データを比較し、前記マスタデータに対する前記計測データの3次元の位置姿勢を計算して修正量とし、前記修正量にしたがって前記把持位置を修正し、前記エンドエフェクタを前記修正された把持位置へ移動する指令を生成する再生ステップと、を含み、前記再生ステップにおいて、前記ワークの形状計測手段は、ヘリカルスキャンの軌道に沿って前記ワーク形状を計測することを特徴とするものである。
また、請求項2記載の発明によると、再生動作時に多方面から見た計測データを得ることができ、姿勢を変えて再計測する必要がないので、計測時間を短くすることができる。
まず、双腕ロボット101について説明する。
図において、ロボットの左アーム104と右アーム105は、関節も含めて模式的に表されている。各関節は、図示しないモータによって、駆動される。
左グリッパ(エンドエフェクタ)106は、左アームの先端に配置されている。
右グリッパ(エンドエフェクタ)107は、右アームの先端に配置されている。
ワーク109は双腕ロボット101の把持対象物である。ワーク109は、本実施例においてはコネクタ付ケーブルであるが、詳細については後述する。
ワーク形状計測センサ108は、2次元レーザ変位センサである。このセンサは、右グリッパ107上に搭載されている。このワーク形状計測センサ108は、右アーム105が動くとともにワーク109のデータを取得することで、ワーク109の2次元の計測データを連続して取得することができる。この取得したデータを重ねることによって、3次元の計測データ(ワーク形状)が得られる。なお、このセンサは、右グリッパ107ではなく、左グリッパ106に搭載されていても良い。また、グリッパではなく、アームに搭載されていても良い。また、このセンサは、ワークの3次元形状を計測できるものであれば任意のセンサでよい。例えば、このセンサは、複数のカメラによるビジョンセンサであってもよい。
動作プログラム解析部110は、ロボットの動作が記述された動作プログラム(JOB)118を解析して必要な処理を呼び出す。
教示データ記憶部113は、現在の位置122を教示位置123として、動作プログラム118に書き込む。この教示位置123は、操作者が教示作業時に教示装置103の所定のキーを入力すると動作プログラム118に書き込まれる。教示データ記憶部113は、後述するマスタデータ121の番号を対象物番号125として、動作プログラム118に書き込む。ここで、対象物番号125は、マスタデータ121を複数保存した場合に、マスタデータを特定するために付ける番号である。教示データ記憶部113は、教示位置123と対象物番号125を一組として動作プログラム118に書き込む。この動作プログラム118は、不揮発性メモリ117に保存される。
計測部114は、ワーク形状計測センサ108によりワークの計測データ120を得る。
マスタデータ記憶部115は、マスタデータ121として計測データ120に番号を付け、このマスタデータ121を不揮発性メモリ117に保存する。
位置姿勢比較部116は、マスタデータ121と計測データ120とを比較して、マスタデータ121に対する計測データ120の3次元の位置姿勢を計算する。位置姿勢比較部116は、この位置姿勢の変化量を修正量124として、指令生成部111に出力する。
指令生成部111は、教示装置103からの手動操作にしたがって軌道を生成する。また、指令生成部111は、動作プログラム118、制御装置のパラメータとして保存されているスキャン条件119、および修正量124に基づいて把持動作や計測動作を行うアームの軌道を生成する。
サーボ制御部112は、生成された軌道にしたがってモータを駆動する。
教示装置103は、制御装置102に接続され、双腕ロボット101の教示・操作をするための装置である。教示装置103上には、ロボットに対する指令やデータを入力するためのキーと情報表示用のディスプレイが設けられている。
まず、教示動作(ステップS201〜S206)について、図2に基づいて説明する。
(S201)
操作者が教示装置103のキーを操作する。操作者は右グリッパ107をワーク109の把持位置へ移動するようにキーを操作する。指令生成部111は、このキー操作にしたがってロボットが移動する軌道を生成する。
操作者が教示装置103を操作して、スキャンコマンド(MOVSCAN)を動作プログラムに登録する。このスキャンコマンド(MOVSCAN)は、ワーク形状計測センサ108がワークの計測データ120を得るスキャン動作をさせるためのコマンドである。この動作プログラムは不揮発性メモリ117に保存される。
具体例を図5に基づいて説明する。図5は教示装置の動作プログラム表示画面501を示している。動作プログラム表示画面501中、教示位置503は、ロボットの教示位置を表示している。502は、現在編集中の動作プログラムを表示している。
操作者は図示しないメニューの命令一覧の画面からスキャンコマンド(MOVSCAN)を選択する。選択後、操作者が教示装置103上のEnterキーを押すと、図に示すようにスキャンコマンド504が動作プログラム502に登録される。同時に、ロボットの現在位置が教示位置データ503として保存される。この教示位置データは、教示位置番号505(C00001)として保存される。
スキャンコマンド504は、(i)教示位置番号505(C00001)、(ii)ステップS304において修正された教示位置が代入される位置変数506(P012)、(iii)スキャン動作の移動速度507(V=10.0)、および(iv)対象物番号125(OBJ#(1))と関連づけられて、動作プログラムに記録される。記録後、デフォルトで設定された(iii)スキャン動作の移動速度507と(iv)対象物番号125を変更することもできる。
操作者が、教示装置103を操作して、移動コマンド(MOVL)を動作プログラムに登録する。この移動コマンド601は、グリッパを把持位置へ移動させるためのコマンドである。
具体例を図6に基づいて説明する。図6は、教示装置の動作プログラム表示画面501を示している。ステップS202で実行したスキャンコマンドが既に表示されている。
移動コマンド(MOVL)601は、位置変数506(P012)および移動速度602(V=10.0)と関連付けられて、動作プログラムに登録される。なお、この位置変数506は、ステップS202において、スキャンコマンドで指定された変数である。
操作者が教示装置103の画面上に表示されるカーソルをスキャンコマンドの行に合わせて、画面(図6)上のスキャン実行ボタン508を押す。スキャン実行ボタン508が押されると、指令生成部111は、動作プログラムの教示位置(C00001に保存された教示位置)を基準として、所定のスキャン条件119に基づいて、所定の計測範囲を計測するための軌道を生成する。ここで、この所定のスキャン条件119は、スキャン角度406、スキャン距離407およびスキャン速度として、あらかじめ制御装置のパラメータに保存されている。ここで、スキャン角度は、対象物正面方向の軸まわりにワーク形状計測センサ108を傾ける角度である(図4(c))。スキャン距離はワーク形状計測センサ108が移動する距離である(図4(c))。スキャン速度はワーク形状計測センサ108が移動する速度である。
サーボ制御部112は、モータを駆動して、生成された軌道にしたがってロボットを動かす。ロボットが動くとともに、計測部114はワーク形状計測センサ108からの計測データを得る。
教示装置のディスプレイに、得られた計測データが表示される。この計測データは、図7に示すように、3次元イメージ702で表示される。図において、125は対象物番号、703はコネクタの型名や通称などを表す対象物名である。この対象物名は、任意の名前でよい。704は登録ボタンである。
操作者がマスタ登録操作を行う。このマスタ登録操作は、操作者が教示装置を使って対象物番号125を入力し、登録ボタン704を押す操作である。操作者がこのマスタ登録操作を行うと、計測データはマスタデータ121として不揮発性メモリ117に保存される。
図4(b)は、前記ステップS201およびS202を実行する際の様子を表している。教示装置103からの手動操作でロボットを動かし、右グリッパ107をコネクタの把持位置に位置決めして教示位置とする。
図4(c)は、前記ステップS204を実行する際の様子を表している。制御装置102は、自動的にセンサ座標系402の原点を教示位置のグリッパ座標系401の原点へ合わせる。その後、制御装置102は、コネクタ403の正面方向の周りにスキャン角度406だけセンサ座標系402を回転させ、ワーク形状計測センサ108をスキャン距離407だけ移動させる。このとき、スキャン距離407の2分の1だけ移動方向の負方向へ移動した位置から計測を開始することで、図4(c)のように教示位置が計測範囲の中心となるようにスキャンする。スキャンコマンド実行前の位置から計測開始位置へは、スキャンコマンドに指定した移動速度で移動する。計測中の速度は、ステップS202において、スキャンコマンドに指定した移動速度ではなく、スキャン条件として指定されたスキャン速度で移動する。
次に、再生動作(ステップS301〜S305)について、図3に基づいて説明する。
この再生動作は、教示動作により作成された動作プログラムに書かれたスキャンコマンドを実行する動作(ステップS301〜S304)と移動コマンドを実行する動作(ステップ305)である。
動作プログラム解析部110が、不揮発性メモリ117から動作プログラム118とスキャン条件119を呼び出す。動作プログラム解析部110は、動作プログラム118中に書かれたスキャンコマンドの実行を指令生成部111へ指令する。動作プログラム解析部110から指令されると、指令生成部111は、スキャンコマンドとともに登録された教示位置(C00001に保存された教示位置)を基準としてスキャン条件119に従った所定の計測範囲を計測する軌道を生成する。サーボ制御部112は、生成された軌道にしたがって、モータを駆動してアームを動かす。ロボットが動作するとともに、計測部114は、ワーク形状計測センサ108からコネクタ403の3次元の位置姿勢の計測データを得る。
位置姿勢比較部116は、ステップS202において登録された対象物番号125に対応するマスタデータ121を不揮発性メモリ117から読み出す。次に、位置姿勢比較部116は、ステップS301で得たコネクタ403の3次元の位置姿勢が、マスタデータ121に対してどの程度変化したかを計算する。位置姿勢比較部116は、この変化した位置姿勢の量を修正量124とする。
まず、特徴点の抽出を行う。図8の3次元イメージからエッジ点を抽出すると、図9(a)に示す点群が得られる。本図において、901はマスタデータから抽出したエッジ点であり、902は計測データから抽出したエッジ点を示している。このエッジ点を抽出する方法は、隣の点との差分がある閾値以上になった点をエッジ点とする公知の方法などを使用する。
エッジ点のデータから直線を抽出すると、図9(b)のように、エッジ点をつなげた直線が得られる。本図において、903はマスタデータの直線であり、904は計測データの直線である。この直線を抽出する方法は、Hough変換による公知の方法などを使用する。
求める特徴点は、抽出した直線の交点である。この交点には、符号を付ける。このとき、スキャン方向において最初に位置する特徴点を1番とする。各特徴点は位置成分X、Y、Zを持つ。図9(c)において、905の4点はマスタデータの特徴点、906の4点は計測データの特徴点である。マスタデータについてはp1からp4、計測データについてはq1からq4という符号を特徴点に付けている。
まず、図10(a1)に示すマスタデータと図10(a2)に示す計測データを同じセンサ座標系402から見たものとして重ねると、図10(b)に示すようになる。ただし、センサ座標系は計測時にはスキャン方向に平行移動するため、たとえば、スキャン開始点からスキャン距離の2分の1だけ進んだ位置をセンサ座標系の原点として計測データを重ねる。
次に、特徴点p1とq1が一致するように、マスタデータ全体を移動する。p1から見たq1の分だけセンサ座標系を並行移動すると図10(c)のようになる。図10(c)において、p1、p2、p3、p4を移動したものは、p1b、p2b、p3b、p4bで表している。p1bとq1の距離は0である。p1bの位置にセンサ座標系S1と同じ姿勢の座標系を設定し、座標系S2とする。すなわち、S1から見たq1の分だけS1を平行移動した座標系がS2である。
次に、S2をΔTrだけ回転させると同時に、p2bからp4bもS2を基準に回転させ、それぞれp2c、p3c、p4cとする。つまり、p1b、p2b、p3b、p4bを頂点とする四角形全体をS2とともに回転させる。ΔTrは回転を表す4×4の同次変換行列である。回転後、符号の中の番号が同じ点同士の距離を求めて加算した式1のJを評価関数として計算する。
ΔTrは、次の(1)から(5)のようにして求める。
(1)ΔTrを、Roll、Pitch、Yawから計算される回転行列とする。Pitch角、Yaw角は固定で、Roll角を−45度から45度まで1度ずつ変化させて、評価関数Jが最小になるRoll角を求める。
(2)ΔTrを、Roll角を(1)で求めたRoll角にし、さらにPitch角を−45度から45度まで1度ずつ変化させて、評価関数Jが最小になるPitch角を求める。
(3)ΔTrを、Roll角を(1)で求めたRoll角にし、Pitch角を(2)で求めたPitch角にし、さらにYaw角を−45度から45度まで1度ずつ変化させて、評価関数Jが最小になるYaw角を求める。
(4)ΔTrを、Pitch角を(2)で求めたPitch角にし、Yaw角を(3)で求めたYaw角にする。
(5)前記(1)から(4)を数回繰り返して、評価関数Jを最小とする変換行列ΔTrを求める。求めたΔTrを使って、修正量は次の式2の行列S1TSFで表される。
指令生成部111が、教示位置を修正量124にしたがって修正する。教示位置を同次変換行列の形にして、式3の行列を右からかけることによって変換したものが、修正した教示位置となる。すなわち、ロボット座標系から見た教示位置をRTtとすると、修正した教示位置RTt2は式4のようになる。
修正された教示位置を、スキャンコマンドの引数として指定された位置変数506(P012)へ代入する。ただし、位置変数506には、修正した教示位置RTt2の行列から計算したX、Y、Z、Roll、Pitch、Yawの値を代入する。
動作プログラム解析部110が動作プログラム118中に書かれた移動コマンドの実行を指令生成部111へ指令する。動作プログラム解析部110から指令されると、指令生成部111は、動作プログラム118の移動コマンドに指定された位置変数の位置への軌道を生成する。サーボ制御部112は、モータを駆動して、この生成された軌道に沿うようにアームを移動させる。
なお、スキャンコマンドと移動コマンドはそれぞれ独立したコマンドであるが、これらをまとめた把持移動コマンド(MOVCATCH)としても良い。
双腕ロボット101については、図1に示したものと同一であるので、その説明は省略する。
以下、制御装置102について説明する。
スキャン条件入力部1301は、教示作業時に教示装置103から入力されたスキャン角度(図4(c))、スキャン距離(図4(c))、スキャン速度などのデータをスキャン条件119として不揮発性メモリ117に保存する。
その他の部分は実施例1と同じであるので、説明は省略する。
まず、教示動作(ステップS1401〜S1406)について、図14に基づいて説明する。
(S1401)
操作者が教示装置103のキーを操作する。操作者は右グリッパ107をワーク109の把持位置へ移動するようにキーを操作する。指令生成部111は、このキー操作にしたがってロボットが移動する軌道を生成する。
操作者が教示装置103を操作して、把持移動コマンド(MOVCATCH)を動作プログラムに登録する。この把持移動コマンド(MOVCATCH)は、ワーク形状計測センサ108がワークの計測データ120を得るスキャンコマンドと移動コマンドをまとめ多コマンドである。この動作プログラムは不揮発性メモリに保存される。
具体例を図12に基づいて説明する。図12は教示装置の動作プログラム表示画面501の例を示している。
操作者は図示しないメニューの命令一覧の画面から把持移動コマンド(MOVCATCH)を選択する。選択後、操作者が教示装置103上のEnterキーを押すと、図に示すように把持移動コマンド1201が動作プログラム502に登録される。同時に、ロボットの現在位置が教示位置データ503として保存される。この教示位置データは、教示位置番号505(C00001)として保存される。
把持移動コマンド1201は(i)教示位置番号505(C00001)、(ii)スキャン動作の移動速度507(V=10.0)、(iii)対象物番号507(OBJ#(1))と関連づけられて動作プログラムに記録される。記録後、デフォルトで設定された移動速度507と対象物番号507を変更することもできる。
教示装置から入力されたスキャン角度、スキャン距離、およびスキャン速度をスキャン条件として不揮発性メモリに保存する。図16は教示装置のスキャン条件入力画面1601を示している。操作者はスキャン角度1602、スキャン距離1603、およびスキャン速度1604の値を入力し、設定ボタン(SET)1605を押すことで、スキャン条件を設定できる。
操作者が教示装置のスキャン実行ボタン508を押すと、指令生成部111は動作プログラムの教示位置(C00001に保存された教示位置)を基準として設定されたスキャン条件に従った計測範囲を計測する軌道を生成する。サーボ制御部112は、モータを駆動して、ロボットを動かす。ロボットが動くとともに、計測部114はワーク形状計測センサ108からの計測データを得る。
教示装置103のディスプレイに、得られた計測データが表示される。この計測データは、図7に示すように、3次元イメージ702で表示される。図において、125は対象物番号、703は対象物名、704は登録ボタンである。
次に、操作者がマスタ登録操作を行う。操作者がこのマスタ登録操作を行うと、前記計測データはマスタデータ121として不揮発性メモリ117に保存される。
次に、再生動作(ステップS1501〜S1504)について、図15に基づいて説明する。この再生動作は、動作プログラムに書かれた把持移動コマンドを実行する動作である。
動作プログラム解析部110が、不揮発性メモリ117から動作プログラム118とスキャン条件119を呼び出す。動作プログラム解析部110は、動作プログラム118中に書かれた把持移動コマンドの実行を指令生成部111へ指令する。動作プログラム解析部110から指令されると、指令生成部111は動作プログラム118の把持移動コマンドとともに登録された教示位置(C00001に保存された教示位置)を基準としてスキャン条件119に従った所定の計測範囲を計測する軌道を生成する。サーボ制御部112は、生成された軌道にしたがって、モータを駆動してアームを動かす。ロボットが動作するとともに、計測部114はワーク形状計測センサ108からコネクタ403の3次元の位置姿勢の計測データを得る。
位置姿勢比較部116は、動作プログラム118中の把持移動コマンドとともに登録された対象物番号125に対応するマスタデータ121を不揮発性メモリ117から読み出す。次に、位置姿勢比較部116は、ステップS1501で得たコネクタ403の3次元の位置姿勢が、マスタデータ121に対してどの程度変化したかを計算する。位置姿勢比較部116は、この変化した位置姿勢の量を修正量124とする。
図8にマスタデータ121と計測データの3次元イメージの例を示す。
指令生成部111が、教示位置を修正量124にしたがって修正する。修正量124を求める方法は、実施例1と同様であるので省略する。
指令生成部111が、教示位置を修正量124にしたがって修正し、修正した位置への軌道を生成する。サーボ制御部112は、モータを駆動して、この生成された軌道に沿うように、アームを移動させる。なお、把持移動コマンド(MOVCATCH)では、スキャンコマンド実行前の位置から計測開始位置への移動と、計測終了位置から把持位置への移動については、スキャンコマンドに指定した移動速度で移動する。計測中の速度は、スキャン条件として指定されたスキャン速度で移動する
このようにすると、マスタデータとして計測データのすべてを保存するよりもデータ量を小さくして保存することができる。従って、マスタデータのための不揮発性メモリの使用量を減らすことができる。
本実施例においては、把持位置であるアース線1702の位置が不確定である。そこで、アース線1702の下端1701をワーク形状計測センサ108で計測して把持する。また、アース線1702の下端1701を把持した後にアース線下端を挿入するタブ1704の位置も不確定である。そこで、タブ1704をセンサで計測して、挿入の教示位置を修正して挿入動作を行う。
まず、教示動作(ステップS1801〜S1811)について、図18に基づいて説明する。
(S1801)
タブへの挿入位置を計測する動作を教示するため、操作者が教示装置103のキーを操作する。操作者は右グリッパ107をタブ位置へ移動するようにキーを操作する。指令生成部111は、このキー操作にしたがってロボットが移動する軌道を生成する。
操作者が教示装置103を操作して、スキャンコマンド(MOVSCAN2)を第1教示位置と対象物番号125とともに動作プログラムに登録する。このスキャンコマンド(MOVSCAN2)は、ワーク形状計測センサ108がワークの計測データ120を得るスキャン動作をさせるためのコマンドさせるためのコマンドであり、MOVSCANとは、引数に指定する位置変数に入る値の点で相違する。この動作プログラムは不揮発性メモリ117に保存される。ここで、スキャンコマンド実行後に、スキャンコマンドの引数に指定した位置変数に入る値は、修正した教示位置ではなく、修正量であり、マスタデータをロボット座標系126まわりにどれだけ動かすと計測データに一致するかを表す変換量である。
具体例を図20に基づいて説明する。図20は教示装置の動作プログラム表示画面2001を示している。操作者は図示しないメニューの命令一覧の画面からスキャンコマンドを選択する。選択後、操作者が教示装置103上のEnterキーを押すと、動作プログラム2002にL001に示すように登録される。同時に、ロボットの現在位置が第1教示位置データとして保存される。この第1教示位置データは、教示位置番号(C00001)として保存される。
L001に示すスキャンコマンド(MOVSCAN2)は(i)教示位置番号(C00001)、(ii)スキャン結果である修正量の成分X、Y、Z、Roll、Pitch、Yawが代入される位置変数(P018)、(iii)スキャン動作の移動速度(V=5.0)、(iv)対象物番号(OBJ#(3))と関連づけられて動作プログラムに記録される。
操作者が教示装置103の画面上に表示されるカーソルをスキャンコマンドの行に合わせて、画面(図20)上のスキャン実行ボタン(SCAN)508を押す。スキャン実行ボタン508が押されると、指令生成部111は、動作プログラムの第1教示位置(C00001に保存された教示位置)を基準として、所定のスキャン条件に基づいて、所定の計測範囲を計測する軌道を生成する。この所定のスキャン条件は、スキャン角度、スキャン距離、およびスキャン速度として、あらかじめ制御装置のパラメータに保存されている。
サーボ制御部112は、モータを駆動し、生成された軌道にしたがってロボットの右アームを動かす。ロボットが動くとともに、計測部114は、ワーク形状計測センサ108からコネクタ403の3次元の位置姿勢の計測データを得る。
教示装置103のディスプレイに得られた計測データが3次元イメージで表示される。
操作者がマスタ登録操作を行う。このマスタ登録操作は、操作者が教示装置103を使って対象物番号125を入力し、登録ボタンを押す操作である。操作者がこのマスタ登録操作を行うと、前記計測データは第1マスタデータとして不揮発性メモリ117に保存される。
アース線下端を把持する動作を教示するため、操作者が教示装置103のキーを操作する。操作者は右グリッパ107を把持位置へ移動するようにキーを操作する。指令生成部111は、このキー入力にしたがってロボットが移動する軌道を生成する。
操作者が、教示装置103を操作して、スキャンコマンド(MOVSCAN2)を第2教示位置と対象物番号125とともに動作プログラムに登録する。この動作プログラム121は不揮発性メモリ117に保存される。
図20において、操作者は図示しないメニューの命令一覧の画面からスキャンコマンドを選択する。選択後、操作者がEnterキーを押すと動作プログラム2002にL002のように登録される。同時に、ロボットの現在位置が第2教示位置データ2003として保存される。この第2教示位置データは、教示位置番号(C00002)として保存される。
L002に示すスキャンコマンド(MOVSCAN2)は(i)教示位置番号(C00002)、(ii)スキャン結果である修正量の成分X、Y、Z、Roll、Pitch、Yawが代入される位置変数(P010)、(iii)スキャン動作の移動速度(V=5.0)、(iv)対象物番号(OBJ#(2))と関連づけられて動作プログラムに記録される。
操作者が教示装置103の画面上のカーソルをスキャンコマンドの行に合わせて、教示装置の画面(図20)上のスキャン実行ボタン508を押す。スキャン実行ボタン508が押されると、指令生成部111は動作プログラムの第2教示位置(C00002に保存された教示位置)を基準として、所定のスキャン条件に基づいて、所定の計測範囲を計測する軌道を生成する。この所定のスキャン条件は、スキャン角度、スキャン距離、およびスキャン速度として、あらかじめ制御装置のパラメータに保存されている。
サーボ制御部112は、モータを駆動し、生成された軌道にしたがってロボットの右アームを動かす。ロボットが動くとともに、計測部114はワーク形状計測センサ108からの計測データを得る。
教示装置103のディスプレイに前記計測データが3次元イメージで表示される。
操作者がマスタ登録操作を行う。操作者がこのマスタ登録操作を行うと、前記計測データは第2マスタデータとして不揮発性メモリ117に保存される。
操作者が、教示装置103のキーを操作して、スキャンコマンド(MOVSCAN2)に指定した前記位置変数(P018、P010)に再生ステップで入る修正量を使って、教示位置修正の演算をするコマンドと移動コマンドを動作プログラムに登録する。
図20において、L003はアース線下端を右グリッパで把持するための移動プログラムが記述されたサブルーチンの呼び出しコマンド(CALL)である。
L004は、アース線をタブの上まで移動させる移動コマンド(MOVL)であり、教示位置(C00003からC00006)と移動速度(V=10.0)と関連づけられて保存される。
L005は、ロボット座標系126から見た右アームの現在位置を取得するコマンド(GETS)であり、現在位置を意味するシステム変数($PX001)と、システム変数の内容のコピーを代入する位置変数(P011)と関連づけられて保存される。
L006は、P018を同次変換行列にしたものとP011を同次変換行列にしたものの積を計算し、計算結果をP012に入れる演算コマンド(MULMAT)である。L006において、P018はL001で得られるタブの修正量、P011は現在位置である。
L007はP012の位置への移動コマンド(MOVL)であり、位置変数(P012)と移動速度(V=10.0)と関連付けられて保存される。L007によってタブに挿入するための位置は修正されることになる。
L008は現在位置からP019に設定されている量だけ移動する相対移動コマンド(IMOV)であり、位置変数(P019)と移動速度(V=10.0)と座標系指定(RF)と関連付けられて保存される。P019には、挿入方向の移動量があらかじめ設定されており、RFはロボット座標系上の相対移動量として動くことを意味する。
次に、再生動作(ステップS1901〜S1910)について、図19に基づいて説明する。この再生動作は、動作プログラムに書かれたコマンドを実行する動作である。
動作プログラム解析部110が不揮発性メモリ117から動作プログラムとスキャン条件を呼び出す。動作プログラム解析部110は、動作プログラム中のL001に書かれたスキャンコマンド(MOVSCAN2)の実行を指令生成部へ指令する。指令生成部111は動作プログラムのスキャンコマンドとともに登録された第1教示位置(C00001に保存された教示位置)を基準としてスキャン条件に従った所定の計測範囲を計測する軌道を生成する。サーボ制御部112は、生成された軌道にしたがって、モータを駆動してロボットを動かす。ロボットが動作するとともに、計測部114はワーク形状計測センサ108から第1計測データを得る。第1計測データは、アース線挿入タブ1704の計測データである。
位置姿勢比較部116は、動作プログラム中のL001のスキャンコマンド(MOVSCAN2)とともに登録された対象物番号に対応するマスタデータ121を不揮発性メモリ117から読み出す。位置姿勢比較部116は、第1マスタデータに対する前記第1計測データの3次元の位置姿勢を計算して、その変化量を第1修正量とする。ただし、修正量は、マスタデータをロボット座標系126まわりにどれだけ動かすと計測データに一致するかを表す変換量とする。つまり、マスタデータから決まる対象物の位置姿勢RTC2と計測データから決まる対象物の位置姿勢RTC1の関係が式5の関係になるような変換行列Taを求めて、修正量とする。
動作プログラム解析部110は、動作プログラム中のL002に書かれたスキャンコマンド(MOVSCAN2)の実行を指令生成部へ指令する。指令生成部111は動作プログラムのスキャンコマンドとともに登録された第2教示位置(C00002に保存された教示位置)を基準としてスキャン条件に従った所定の計測範囲を計測する軌道を生成する。サーボ制御部112は、生成された軌道にしたがって、モータを駆動してロボットを動かす。ロボットが動作するとともに、計測部114はワーク形状計測センサ108から第2計測データを得る。第2計測データは、アース線下端1701の計測データである。
位置姿勢比較部116は、動作プログラム中のL002のスキャンコマンド(MOVSCAN2)とともに登録された対象物番号に対応するマスタデータ121を不揮発性メモリ117から読み出す。位置姿勢比較部116は、第2マスタデータに対する前記第2計測データの3次元の位置姿勢を計算して、その変化量を第2修正量とする。
動作プログラム解析部110は、動作プログラム中のL003に書かれたサブルーチン(CATCH)を呼び出す。L003は第2修正量(P010)を使ってアース線下端の把持位置である第2教示位置修正し、アース線下端を右グリッパで把持するための移動を行う。修正した教示位置RTG2は、アース線把持位置であるグリッパ教示位置RTG1と修正量Taを使って式6のように計算する。
L004に書かれた移動コマンド(MOVL)を実行し、アース線をタブの上まで移動させる。
L005に書かれた、ロボット座標系126から見た右アームの現在位置を取得するコマンド(GETS)を実行して、現在位置を位置変数P011に代入する。
L006に書かれた行列の積の計算コマンド(MULMAT)を実行して、現在位置にタブの修正量をかけた結果を位置変数P012に代入する。
L007に書かれたP012の位置への移動コマンド(MOVL)を実行し、現在位置を修正した位置である、正しいタブ上の位置へ移動する。これは、現在位置である教示位置をタブ修正量をTaとして、式6を使って修正した位置への移動となる。
L008に書かれた移動コマンド(IMOV)を実行し、アース線をタブへ挿入する。
コネクタ403の位置が不確定であるため、センサで計測し、左アームの移動によってコネクタ403をケース1703の穴の上へ移動させて、コネクタを穴へ通す動作を行う。
まず、教示動作(S2201〜S2206)について、図22に基づいて説明する。
(S2201)
まず、コネクタ形状を計測する動作を教示するため、操作者が教示装置103のキーを操作する。操作者は、右グリッパ107をコネクタ403の位置へ移動するようにキーを操作する。指令生成部111はこのキー操作にしたがってロボットが移動する軌道を生成する。
操作者が教示装置103を操作して、スキャンコマンド(MOVSCAN2)を教示位置と対象物番号とともに動作プログラムに登録する。この移動スキャンコマンド(MOVSCAN2)は、ワーク形状計測センサ108がワークの計測データ120を得るスキャン動作をさせるためのコマンドさせるためのコマンドであり、させるためのコマンドであり、MOVSCANとは、引数に指定する位置変数に入る値の点で相違する。動作プログラムは不揮発性メモリに保存される。ここで、スキャンコマンド実行後に、スキャンコマンドの引数に指定した位置変数に入る値は、修正した教示位置ではなく、修正量であり、マスタデータをロボット座標系126まわりにどれだけ動かすと計測データに一致するかを表す変換量である。
具体例を図24に基づいて説明する。図24は教示装置の動作プログラム表示画面2401を示している。操作者は図示しないメニューの命令一覧の画面からスキャンコマンドを選択する。選択後、操作者が教示装置103上のEnterキーを押すと動作プログラム2402に図24のL001に示すように登録される。同時に、ロボットの現在位置が教示位置データ2403として保存される。教示位置データ2403は、教示位置番号(C00003)として保存される。
スキャンコマンド(MOVSCAN2)は、(i)教示位置番号(C00003)、(ii)スキャン結果である修正量の成分X、Y、Z、Roll、Pitch、Yawが代入される位置変数(P010)、(iii)スキャン動作の移動速度(V=5.0)、(iv)対象物番号(OBJ#(1))と関連づけられて動作プログラムに記録される。
操作者が教示装置103の画面上に表示されるカーソルをスキャンコマンドの行に合わせて、画面(図24)上のスキャン実行ボタン(SCAN)508を押す。スキャン実行ボタン508が押されると、指令生成部111は、動作プログラムの教示位置(C00003に保存された教示位置)を基準として、所定のスキャン条件に基づいて、所定の計測範囲を計測する軌道を生成する。
サーボ制御部112は、モータを駆動し、生成された軌道にしたがってロボットの右アームを動かす。この所定のスキャン条件は、たとえば、スキャン角度、スキャン距離、およびスキャン速度として、あらかじめ制御装置のパラメータに保存されている。ロボットが動くとともに、計測部114は、ワーク形状計測センサ108からの計測データを得る。
次に、教示装置のディスプレイに、得られた計測データが3次元イメージで表示される。
操作者がマスタ登録操作を行う。このマスタ登録操作については、再度の説明は省略する。操作者がこのマスタ登録操作を行うと、前記計測データはマスタデータとして不揮発性メモリに保存される。
操作者が、教示装置103のキーを操作して、スキャンコマンド(MOVSCAN2)に指定した前記位置変数(P010)に再生ステップで入る修正量を使って、教示位置修正の演算をするコマンドと移動コマンドを動作プログラムに登録する。
L002はスキャンコマンドの結果である修正量を同次変換行列にして逆行列を計算し、結果をP011に代入するコマンド(INVMAT)である。変換元の位置変数(P010)と、計算した逆行列を代入する変数(P011)と関連づけられて保存される。
L003は、ロボット座標系126から見た左アームの現在位置を取得するコマンド(GETS)であり、現在位置を意味するシステム変数($PX001)と、システム変数の内容のコピーを代入する位置変数(P012)と関連づけられて保存される。
L004は、P011を同次変換行列にしたものとP012を同次変換行列にしたものの積を計算し、結果をP013に入れる演算コマンド(MULMAT)である。L004において、P011はコネクタの修正量の逆行列、P012は現在位置である。
L005は、P013の位置への移動コマンド(MOVL)であり、位置変数(P013)と移動速度(V=10.0)と関連付けられて保存される。L005によって、ずれている位置にあるコネクタをマスタ登録されている位置へ修正することになる。
L006、はP020に設定されている量だけ移動する相対移動コマンド(IMOV)であり、位置変数(P020)と移動速度(V=10.0)と関連付けられて保存される。P020には、ケースの穴を通すためのコネクタの垂直方向の移動量があらかじめ設定されており、RFはロボット座標系上の相対移動量として動くことを意味する。
次に、再生動作(S2301〜S2307)について、図23に基づいて説明する。この再生動作は、動作プログラムに書かれたコマンドを実行する動作である。
動作プログラム解析部110が不揮発性メモリから動作プログラムとスキャン条件を呼び出す。動作プログラム解析部110は、動作プログラム中のL001に書かれたスキャンコマンド(MOVSCAN2)の実行を指令生成部へ指令する。指令生成部111は動作プログラムのスキャンコマンドとともに登録された教示位置(P010)を基準としてスキャン条件に従った所定の計測範囲を計測する軌道を生成する。サーボ制御部112は、生成された軌道にしたがって、モータを駆動してロボットを動かす。計測部114はワーク形状計測センサ108から計測データを得る。
位置姿勢比較部116は、動作プログラム中のL001のスキャンコマンド(MOVSCAN2)とともに登録された対象物番号に対応するマスタデータ121を不揮発性メモリ117から読み出す。位置姿勢比較部116は、マスタデータに対する前記計測データの3次元の位置姿勢を計算して、その変化量を修正量とする。ただし、修正量は、マスタデータをロボット座標系126まわりにどれだけ動かすと計測データに一致するかを表す変換量とする。つまり、マスタデータから決まる対象物の位置姿勢RTC2と計測データから決まる対象物の位置姿勢RTC1の関係が式5の関係になるような変換行列Taを求めて、修正量とする。
L002に書かれた逆行列コマンド(INVMAT)を実行し、修正量の逆行列を計算してP011に代入する。
L003に書かれた、ロボット座標系126から見た左アームの現在位置を取得するコマンド(GETS)を実行して、現在位置をP012に代入する。
L004に書かれた行列の積の計算コマンド(MULMAT)を実行して、左アームの現在位置に修正量の逆行列をかけた結果をP013に代入する。この計算は、左グリッパの現在位置を、計測したコネクタのずれ分だけ逆方向に動かすことで、コネクタの現在位置を理想の位置へ修正するためのものであり、グリッパ教示位置RTG1と修正量Taを使って式7のように計算する。
L005に書かれた位置変数P013の位置への移動コマンド(MOVL)を実行し、ずれた位置にあるコネクタを、正しい位置であるマスタデータの位置へ移動する。
L006に書かれた移動コマンド(IMOV)を実行し、コネクタをケースの穴へ通す。
図25は、第6実施例の動作を示すフローチャートである。教示動作については前述の図2の手順と同様であるので、その説明は省略する。
以下、再生動作について説明する。図25の再生動作(S2501〜S2507)は、動作プログラムに書かれたスキャンコマンドと移動コマンドを実行する動作である。なお、動作プログラム表示画面は、図6に示したものと同一である。
動作プログラム解析部110が不揮発性メモリ117から動作プログラム118とスキャン条件119を呼び出す。動作プログラム解析部110は、動作プログラム中に書かれたスキャンコマンドの実行を指令生成部111へ指令する。指令生成部111は、動作プログラム118のスキャンコマンドとともに登録された教示位置を基準としてスキャン条件119に従った所定の計測範囲を計測する軌道を生成する。サーボ制御部112は、生成された軌道にしたがって、モータを駆動してロボットを動かす。計測部114は、ワーク形状計測センサ108から計測データを得る。
位置姿勢比較部116は、動作プログラム中のスキャンコマンドとともに登録された対象物番号125に対応するマスタデータを不揮発性メモリ117から読み出す。位置姿勢比較部116は、マスタデータ121に対する前記計測データの3次元の位置姿勢を計算する。
(S2503)
位置姿勢比較部116は、計測データの中にマスタデータ121と一致する部分が存在しない場合(例えば、マスタデータ121から抽出した角の点を結んでできる直方体の辺の長さが、計測データから抽出した角の点を結んでできる直方体のどの辺にも一致しない場合)、計測データの中にマスタデータ121と一致する部分が存在しないと判断する。一方、位置姿勢比較部116は、計測データの中にマスタデータ121と一致する部分が存在すると判断した場合は、マスタデータ121に対する前記計測データの3次元の位置姿勢を計算して修正量とする。
(S2504)
位置姿勢比較部116は、計測データの中にマスタデータ121と一致する部分が存在しないと判断した場合は、前回の計測姿勢とは異なる姿勢の計測動作の実行を指令生成部へ指令する。
図26はマスタデータ801と計測データ2601の3次元イメージの例である。計測データ2601は、マスタデータに対して姿勢が大きくずれている場合のものである。
2701はマスタデータ801から抽出したエッジ点を示している。2702は計測データ2601から抽出したエッジ点を示している。
図において、2703はマスタデータの直線であり、2704は計測データの直線である。
図30は図29の3次元イメージからエッジ点を抽出し(図30(a))、直線を抽出し(図30(b))、直線の交点を特徴点として番号を付ける(図30(c))手順を示している。このとき、計測データについては1回目の計測データと2回目の計測データを重ねて使用している。図30(c)において、点p1、p2、p3、p4で囲まれるマスタデータの四角形と、点q1、q2、q3、q4で囲まれる計測データの四角形が相似で、各辺の長さもほぼ一致するため、2つの四角形の姿勢の違いを修正量とする。もしも、2回目の計測データにもマスタデータと一致する部分がない場合には、ステップS2502へ戻って繰り返す。
修正量が計算された場合には、指令生成部111は教示位置を修正量にしたがって修正する。
(S2506)
指令生成部111は、修正した教示位置をスキャンコマンドに指定された位置変数へ代入する。
動作プログラム解析部が動作プログラム中に書かれた移動コマンドの実行を指令生成部へ指令し、指令生成部111は動作プログラムの移動コマンドに指定された位置変数の位置への軌道を生成する。
本発明に係る方法は、教示動作については前述の図2の手順と同様であり、再生動作については図3の手順と同様である。ただし、教示動作および再生動作における計測動作を、教示位置を基準にしてスキャン条件に従ったヘリカルスキャンで行う。このスキャン条件は、スキャン角度406、スキャン距離407およびスキャン速度として、あらかじめ制御装置のパラメータに保存されている。
このようにすることで、一回の計測で複数方向から計測したデータを得ることができるので、ワークの教示位置からの姿勢ずれが大きい場合にも対応できる。また、再生動作時においては、姿勢を変えて複数回再計測するよりも、計測時間が短くなる。
102 制御装置
103 教示装置
104 左アーム
105 右アーム
106 左グリッパ(エンドエフェクタ)
107 右グリッパ(エンドエフェクタ)
108 ワーク形状計測センサ
109 ワーク
110 動作プログラム解析部
111 指令生成部
112 サーボ制御部
113 教示データ記憶部
114 計測部
115 マスタデータ記憶部
116 位置姿勢比較部
117 不揮発性メモリ
118 動作プログラム(JOB)
119 スキャン条件
120 計測データ
121 マスタデータ
122 現在位置
123 教示位置
124 修正量
125 対象物番号
401 グリッパ座標系
402 センサ座標系
403 コネクタ
404 コネクタ(左グリッパ把持)
405 コネクタ間リード線
406 スキャン角度
407 スキャン距離
501 動作プログラム表示画面
502 動作プログラム
503 教示位置データ
504 スキャンコマンド
505 教示位置番号
506 位置変数
507 スキャン動作の移動速度
508 スキャン実行ボタン
601 移動コマンド
602 把持動作の移動速度
701 計測データ表示画面
702 3次元イメージ
703 対象物名
704 登録ボタン
801 マスタデータの3次元イメージ
802 計測データの3次元イメージ
901 マスタデータからのエッジ点抽出のイメージ
902 計測データからのエッジ点抽出のイメージ
903 マスタデータからの直線抽出のイメージ
904 計測データからの直線抽出のイメージ
905 マスタデータからの直線の交点抽出のイメージ
906 計測データからの直線の交点抽出のイメージ
907 エッジ点
908 直線
1201 把持移動コマンド
1301 スキャン条件入力部
1601 スキャン条件入力画面
1602 スキャン角度
1603 スキャン距離
1604 スキャン速度
1605 スキャン条件設定ボタン
1701 アース線下端
1702 アース線
1703 ケース
1704 アース線下端挿入タブ
2001 動作プログラム表示画面
2002 動作プログラム
2003 教示位置データ
2401 動作プログラム表示画面
2402 動作プログラム
2403 教示位置データ
2601 1回目の計測データ
2701 マスタデータからのエッジ点抽出のイメージ
2702 計測データからのエッジ点抽出のイメージ
2703 マスタデータからの直線抽出のイメージ
2704 計測データからの直線抽出のイメージ
2705 マスタデータからの直線の交点抽出のイメージ
2706 計測データからの直線の交点抽出のイメージ
2707 エッジ点
2708 直線
2901 2回目の計測データ
3001 マスタデータからのエッジ点抽出のイメージ
3002 計測データからのエッジ点抽出のイメージ
3003 マスタデータからの直線抽出のイメージ
3004 計測データからの直線抽出のイメージ
3005 マスタデータからの直線の交点抽出のイメージ
3006 計測データからの直線の交点抽出のイメージ
3007 エッジ点
3008 直線
3101 螺旋軌道
3102 垂直軸
3103 垂直軸まわりの回転角
3104 垂直方向の移動距離
Claims (2)
- ワークを把持するエンドエフェクタと、前記ワークの形状計測手段と、を備えたロボットの制御方法において、
前記エンドエフェクタを把持位置へ移動させて教示位置として記録し、前記教示位置を中心としてあらかじめ決められた範囲を計測範囲とし、前記計測範囲をワークの形状計測手段により計測したワーク形状をマスタデータとして前記教示位置と関連づけて記録する教示ステップと、
前記教示位置を中心としてあらかじめ決められた範囲を計測範囲とし、前記計測範囲をワークの形状計測手段により計測したワーク形状を計測データとし、前記マスタデータと前記計測データを比較し、前記マスタデータに対する前記計測データの3次元の位置姿勢を計算して修正量とし、前記修正量にしたがって前記把持位置を修正し、前記エンドエフェクタを前記修正された把持位置へ移動する指令を生成する再生ステップと、を含み、
前記マスタデータは、ヘリカルスキャンの軌道に沿って前記ワークの形状計測手段により計測したワーク形状の計測データであることを特徴とするロボット制御方法。 - ワークを把持するエンドエフェクタと、前記ワークの形状計測手段と、を備えたロボットの制御方法において、
前記エンドエフェクタを把持位置へ移動させて教示位置として記録し、前記教示位置を中心としてあらかじめ決められた範囲を計測範囲とし、前記計測範囲をワークの形状計測手段により計測したワーク形状をマスタデータとして前記教示位置と関連づけて記録する教示ステップと、
前記教示位置を中心としてあらかじめ決められた範囲を計測範囲とし、前記計測範囲をワークの形状計測手段により計測したワーク形状を計測データとし、前記マスタデータと前記計測データを比較し、前記マスタデータに対する前記計測データの3次元の位置姿勢を計算して修正量とし、前記修正量にしたがって前記把持位置を修正し、前記エンドエフェクタを前記修正された把持位置へ移動する指令を生成する再生ステップと、を含み、
前記再生ステップにおいて、前記ワークの形状計測手段は、ヘリカルスキャンの軌道に沿って前記ワーク形状を計測することを特徴とするロボット制御方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009015162A JP5239901B2 (ja) | 2009-01-27 | 2009-01-27 | ロボットシステムおよびロボットの制御方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009015162A JP5239901B2 (ja) | 2009-01-27 | 2009-01-27 | ロボットシステムおよびロボットの制御方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2010172969A JP2010172969A (ja) | 2010-08-12 |
JP5239901B2 true JP5239901B2 (ja) | 2013-07-17 |
Family
ID=42704414
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009015162A Expired - Fee Related JP5239901B2 (ja) | 2009-01-27 | 2009-01-27 | ロボットシステムおよびロボットの制御方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5239901B2 (ja) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101294348B1 (ko) | 2012-05-11 | 2013-08-07 | 재단법인대구경북과학기술원 | 원격제어 로봇의 자율적 협업 기반 밸브 조작 방법 및 그 시스템 |
CN108081268A (zh) * | 2013-10-10 | 2018-05-29 | 精工爱普生株式会社 | 机器人控制系统、机器人、程序以及机器人控制方法 |
JP7199101B2 (ja) * | 2019-10-30 | 2023-01-05 | 株式会社Yoods | ロボット制御システム、ロボット制御装置、ロボット制御方法及びプログラム |
JP6713700B1 (ja) * | 2020-03-09 | 2020-06-24 | リンクウィズ株式会社 | 情報処理方法、情報処理システム、プログラム |
CN117876429B (zh) * | 2024-03-12 | 2024-06-07 | 潍坊海之晨人工智能有限公司 | 一种运动型工业视觉实训系统 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS63191562A (ja) * | 1987-02-02 | 1988-08-09 | Meidensha Electric Mfg Co Ltd | バリ取りロボツトのバリ追従機構 |
JPH0654841A (ja) * | 1992-08-07 | 1994-03-01 | Toshiba Corp | X線ct装置 |
JPH06210580A (ja) * | 1993-01-13 | 1994-08-02 | Nissan Motor Co Ltd | ワーク把持補正装置 |
JP2003211382A (ja) * | 2002-01-16 | 2003-07-29 | Denso Wave Inc | ロボット制御装置 |
JP2003231078A (ja) * | 2002-02-14 | 2003-08-19 | Denso Wave Inc | ロボットアームの位置制御方法およびロボット装置 |
JP3876234B2 (ja) * | 2003-06-17 | 2007-01-31 | ファナック株式会社 | コネクタ把持装置、同装置を備えたコネクタ検査システム及びコネクタ接続システム |
JP2007290056A (ja) * | 2006-04-24 | 2007-11-08 | Yaskawa Electric Corp | ロボットおよびその物体把持方法 |
JP2008049459A (ja) * | 2006-08-28 | 2008-03-06 | Toshiba Corp | マニピュレータ制御システム、マニピュレータ制御方法およびプログラム |
JP2008279549A (ja) * | 2007-05-10 | 2008-11-20 | Honda Motor Co Ltd | ワーク搬送システムおよびワーク搬送方法 |
-
2009
- 2009-01-27 JP JP2009015162A patent/JP5239901B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2010172969A (ja) | 2010-08-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Pan et al. | Recent progress on programming methods for industrial robots | |
EP1607194B1 (en) | Robot system comprising a plurality of robots provided with means for calibrating their relative position | |
CN113001535B (zh) | 机器人工件坐标系自动校正系统与方法 | |
JP3732494B2 (ja) | シミュレーション装置 | |
JP7439073B2 (ja) | 溶接パス生成のためのシステム及び方法 | |
JP5239901B2 (ja) | ロボットシステムおよびロボットの制御方法 | |
JP4513663B2 (ja) | 自動組立システムにおける組立機構の動作教示方法 | |
JP2017094406A (ja) | シミュレーション装置、シミュレーション方法、およびシミュレーションプログラム | |
JP2010142910A (ja) | ロボットシステム | |
US11648683B2 (en) | Autonomous welding robots | |
JP7293267B2 (ja) | 情報処理装置、情報処理方法及びロボットシステム | |
Yumbla et al. | Preliminary connector recognition system based on image processing for wire harness assembly tasks | |
WO1994000269A1 (en) | Robot for welding | |
JP2010094777A (ja) | 遠隔操作支援装置 | |
JP3327854B2 (ja) | 溶接ロボットの教示方法および教示装置 | |
CN115351389A (zh) | 自动焊接方法和装置、电子设备及存储介质 | |
Liu et al. | Robust robotic 3-D drawing using closed-loop planning and online picked pens | |
JP6825026B2 (ja) | 情報処理装置、情報処理方法及びロボットシステム | |
JP5291482B2 (ja) | ロボット教示プログラム修正装置 | |
JPH10124130A (ja) | 組立装置 | |
CN111225772B (zh) | 垂直多关节机器人的示教数据创建系统 | |
WO2023205209A1 (en) | Autonomous assembly robots | |
Zhang et al. | Vision-guided robot alignment for scalable, flexible assembly automation | |
JP2011083883A (ja) | ロボット装置 | |
WO2020157875A1 (ja) | 作業座標作成装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20110908 |
|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20120216 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20121122 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20121204 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20130130 |
|
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: 20130305 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20130318 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20160412 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |