JP2004050356A - Position and attitude sensor of movable structure - Google Patents

Position and attitude sensor of movable structure Download PDF

Info

Publication number
JP2004050356A
JP2004050356A JP2002211553A JP2002211553A JP2004050356A JP 2004050356 A JP2004050356 A JP 2004050356A JP 2002211553 A JP2002211553 A JP 2002211553A JP 2002211553 A JP2002211553 A JP 2002211553A JP 2004050356 A JP2004050356 A JP 2004050356A
Authority
JP
Japan
Prior art keywords
tool
movable body
target
reference point
absolute
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.)
Granted
Application number
JP2002211553A
Other languages
Japanese (ja)
Other versions
JP3754402B2 (en
Inventor
Sadao Kubo
久保 貞夫
Yoichi Nakamura
中村 洋一
Takamasa Ogata
緒方 隆昌
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.)
Kawasaki Heavy Industries Ltd
Original Assignee
Kawasaki Heavy Industries Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Kawasaki Heavy Industries Ltd filed Critical Kawasaki Heavy Industries Ltd
Priority to JP2002211553A priority Critical patent/JP3754402B2/en
Publication of JP2004050356A publication Critical patent/JP2004050356A/en
Application granted granted Critical
Publication of JP3754402B2 publication Critical patent/JP3754402B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Length Measuring Devices By Optical Means (AREA)
  • Manipulator (AREA)
  • Control Of Position Or Direction (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To provide a position and posture sensor of a movable body which precisely detects the reference point of the position and posture set at the movable body. <P>SOLUTION: The sensor is provided with: a target unit 11 which has three targets not aligned on the same straight line and is mounted on a tool 30; a plurality of cameras 13 which images the target unit from a camera position where a absolute position is grasped in a robot coordinate system and creates an image data showing the image of the target unit; an image processing section 14 which finds the absolute posture of the reference point and the absolute of the tool set on the tool in the robot coordinate system based on the image data from the cameras; a gyro sensor 15 and an acceleration sensor 16 which are mounted on the tool and detect the relative angular displacement and relative slide displacement of the tool; and an operation section 18 which finds the position and posture of the reference point on the tool based on the relative slide displacement and relative angular displacement of the tool and the absolute position and absolute posture of the tool. <P>COPYRIGHT: (C)2004,JPO

Description

【0001】
【発明の属する技術分野】
本発明は、産業用ロボットの手首に連結されるツールなどの可動体の先端部の位置および姿勢を検出する可動体の位置および姿勢検出装置に関する。
【0002】
【従来の技術】
産業用ロボットの手首に連結されるツールなどの可動体のスライド変位および角変位を検出して制御する種々の従来技術がある。従来技術として、多関節ロボットのアームの先端にジャイロを設けた姿勢検出装置がある。この姿勢検出装置は、ジャイロによって、アーム先端の相対角変位が検出されて、この相対角変位に基づいてアーム先端に設けられるツールの姿勢を求める。
【0003】
他の従来技術として、ロボットのアーム先端に超音波パルスを発生する超音波発信器を設け、所定位置に固定される受信器によって、超音波発信器からの超音波パルスを受信して、超音波パルスが発生してから受信されるまでの時間に基づいて、アーム先端と所定位置との距離を求めて、アーム先端に設けられるツールの位置および姿勢を計測する計測装置がある。
【0004】
さらに他の従来技術として、多関節ロボットのティーチプレイバックを行う際に、多関節ロボットのアーム先端にセンサを設けて、前記センサによって多関節ロボットのアーム先端に設けられるツールと、予め定める位置に配置される較正治具の先端との距離を測定して、温度変化によるアームの長さの変化を補正して、ロボットの制御に必要な各パラメータのキャリブレーションを行う方法がある。
【0005】
【発明が解決しようとする課題】
産業用ロボットは、ある位置に繰り返して位置決めするときの繰り返し精度は、たとえば約50マイクロメートルのように高いけれども、ある所定の位置に位置決めするときの絶対精度が、特に大型ロボットの場合は、たとえば約3〜4ミリメートルのように低いので、ロボットを用いる前に、ティーチプレイバック方式で予め教示しておくことがほとんどである。絶対精度の低い原因は、ロボットの幾何学的な製造誤差、重量物を把持したときのアームの撓み、温度によるアームの伸縮および減速機のガタ等によって、ロボットの各関節に設けられる各エンコーダからの検出信号に基づくロボットのアーム先端に設けられるツールに設定される基準点の位置および姿勢が、指令値に対する誤差があるためである。このことが計算機によってオフラインで動作データを生成して、その動作データをロボットにダウンロードして、溶接などの作業をさせたり、センサをアーム先端に設けて、ロボットを計測装置として利用するような、今後のロボットの新しい展開に対する障害となっている。
【0006】
このような問題に対して、前述の従来技術のように、相対角変位を検出するジャイロセンサおよび相対スライド変位を検出する加速度センサなどの慣性センサを用いて位置および姿勢を連続的に測定する方法は、慣性航法で使われる一般に知られた方法である。この方法を利用してロボットのアーム先端部の位置および姿勢を求めることができれば、時間的に連続でリアルタイムな測定が可能であり、さらにロボットから離れた位置からロボットの位置および姿勢を測定する場合に比べて、ロボットの位置および姿勢によって死角が生じても、測定に影響しない等の利点がある。
【0007】
しかしジャイロセンサは、実際には相対角変位を直接検出するのではなく、相対角速度を測定して、その相対角速度を時間に関して積分することで相対角変位を検出している。また同様に加速度センサは、相対加速度を測定して、その相対加速度を時間に関して2回積分することで相対スライド変位を検出している。したがってロボットのアーム先端の変位量が増えるにつれて、または時間が経過するにつれて、検出誤差およびドリフトが累積するので、このような慣性センサでは、ロボットのアーム先端に設けられるツールの基準点の位置および姿勢を高精度で測定することができない。たとえば市販されている汎用の光ファイバジャイロおよびリングレーザジャイロは、相対加速度の精度は、高々0.01〜0.03重力加速度程度であり、この程度の精度であると、ロボットが1秒間動作すると、最悪5〜15センチメートルもの誤差が蓄積される。
【0008】
また前述の従来技術のように、超音波によるアーム先端に設けられるツールの位置および姿勢を計測において、超音波発信器からの超音波パルスの一部が、ロボットおよびロボットの周辺に設置されている機器などに反射し、その反射波が所定位置に固定される受信器によって受信され、アーム先端と所定位置との距離を正確に求めることができない。またロボットは、高速で動作するので、ドップラー効果によって、アーム先端と所定位置との距離を正確に求めることができない。
【0009】
したがって本発明の目的は、可動体に設定される基準点の位置および可動体の姿勢を高精度で検出することができる可動体の位置および姿勢検出装置を提供することである。
【0010】
【課題を解決するための手段】
請求項1記載の本発明は、同一直線上に並ばない3個のターゲットを有し、可動体に設けられるターゲットユニットと、
予め定める座標系における絶対位置が把握されている撮像位置からターゲットユニットを撮影して、ターゲットユニットの画像を表す画像データを生成する複数の撮影手段と、
撮影手段からの画像データに基づいて、前記座標系における可動体に設定された基準点の絶対位置および可動体の絶対姿勢を求める第1検出手段と、
可動体に設けられ、可動体の相対スライド変位および相対角変位を検出する第2検出手段と、
第1検出手段からの基準点の絶対位置および絶対姿勢と、第2検出手段からの可動体の相対スライド変位および相対角変位とに基づいて、基準点の位置および可動体の姿勢を求める演算手段を備えることを特徴とする可動体の位置および姿勢検出装置である。
【0011】
本発明に従えば、複数の撮影手段によって、予め定める座標系における絶対位置が把握されている撮像位置から、同一直線上に並ばない3個のターゲットを有し、可動体に設けられるターゲットユニットが撮影され、ターゲットユニットの画像を表す画像データが生成される。撮影手段が複数、たとえば2個あれば、ターゲットユニットを両眼立体視することができる。また撮影手段を、3個以上にすることによって、可動体のスライド変位および角変位によって、各ターゲットが撮影手段の死角領域に入ってしまうことを可及的に防止することができる。
【0012】
第1検出手段によって、撮影手段からの画像データに基づいて、前記座標系における可動体に設定された基準点の絶対位置および可動体の絶対姿勢が求められる。このときターゲットユニットにおいて、3個のターゲットは同一直線上に並ばないので、この3個のターゲットを含む平面を容易に求めて、その平面の法線を求めて、ターゲットを基準とするターゲット座標系を求めることができる。したがって予め定める座標系とターゲット座標系とに基づいて、前記予め定められる座標系における可動体に設定された基準点の絶対位置および可動体の絶対姿勢を容易かつ正確に求めることができる。さらに可動体に設けられる第2検出手段によって、可動体の相対スライド変位および相対角変位が検出される。
【0013】
演算手段によって、第1検出手段からの可動体の基準点の絶対位置および絶対姿勢と、第2検出手段からの可動体の相対スライド変位および相対角変位とに基づいて、可動体の基準点の位置および可動体の姿勢が求められる。これによって、たとえば第1検出手段によって求められる可動体の基準点の絶対位置および絶対姿勢が、第2検出手段によって検出される可動体の相対スライド変位および相対角変位よりも高精度であるけれども、第1検出手段は可動体の基準点の絶対位置および絶対姿勢を連続的に求めることができない場合、または、万一、ターゲットユニットが各撮影手段の死角領域に入ってしまった場合、演算手段は、第1検出手段によって可動体の基準点の絶対位置および絶対姿勢が求められるまでは、第2検出手段によって検出される可動体の相対スライド変位および相対角変位に基づいて、可動体の基準点の位置および姿勢を求めることができる。このように演算手段は、2つの検出手段からの可動体の基準点の絶対位置および絶対姿勢、ならびに可動体の相対スライド変位および相対角変位に基づいて、極めて高精度な可動体の基準点の位置および姿勢を連続的に求めることができる。
【0014】
請求項2記載の本発明は、可動体に設けられるターゲットと、
ターゲットを予め定める軸線まわりに角変位駆動する駆動手段と、
予め定める座標系における絶対位置が把握されている測距位置からターゲットまでの距離を測定するターゲット距離測定手段と、
ターゲット距離測定手段によって測定された距離に基づいて、前記座標系における可動体に設定された基準点の絶対位置および可動体の絶対姿勢を求める第1検出手段と、
可動体に設けられ、可動体の相対スライド変位および相対角変位を検出する第2検出手段と、
第1検出手段からの基準点の絶対位置および絶対姿勢と、第2検出手段からの可動体の相対スライド変位および相対角変位とに基づいて、基準点の位置および可動体の姿勢を求める演算手段を備えることを特徴とする可動体の位置および姿勢検出装置である。
【0015】
本発明に従えば、ターゲット距離測定手段によって、予め定める座標系における絶対位置が把握されている測距位置から、可動体に設けられ、駆動手段によって予め定める軸線まわりに角変位するターゲットまでの距離が測定される。第1検出手段によって、ターゲット距離測定手段によって測定された距離に基づいて、前記座標系における可動体に設定された基準点の絶対位置および可動体の絶対姿勢が求められる。ターゲットが角変位することによって、ターゲット距離測定手段は、予め定める座標系における絶対位置が把握されている測距位置から、互いに異なる角度位置に配置されるターゲットまでの距離を、測定することができる。このとき、たとえばターゲットの同一直線上に並ばない3つの角度位置を設定すれば、この3つの角度位置を含む平面を容易に求めて、その平面の法線を求めて、ターゲットを基準とするターゲット座標系を求めることができる。したがって予め定める座標系とターゲット座標系とに基づいて、前記予め定められる座標系における可動体に設定された基準点の絶対位置および可動体の絶対姿勢を容易かつ正確に求められる。さらに可動体に設けられる第2検出手段によって、可動体の相対スライド変位および相対角変位が検出される。
【0016】
演算手段によって、第1検出手段からの可動体の基準点の絶対位置および絶対姿勢と、第2検出手段からの可動体の相対スライド変位および相対角変位とに基づいて、可動体の基準点の位置および可動体の姿勢が求められる。これによって、たとえば第1検出手段によって求められる可動体の基準点の絶対位置および絶対姿勢が、第2検出手段によって検出される可動体の相対スライド変位および相対角変位よりも高精度であるけれども、第1検出手段は可動体の基準点の絶対位置および絶対姿勢を連続的に求めることができない場合、または、万一、ターゲットがターゲット距離測定手段の死角領域に入ってしまった場合、演算手段は、第1検出手段によって可動体の基準点の絶対位置および絶対姿勢が求められるまでは、第2検出手段によって検出される可動体の相対スライド変位および相対角変位に基づいて、可動体の基準点の位置および姿勢を求めることができる。このように演算手段は、2つの検出手段からの可動体の基準点の絶対位置および絶対姿勢、ならびに可動体の相対スライド変位および相対角変位に基づいて、極めて高精度な可動体の基準点の位置および姿勢を連続的に求めることができる。
【0017】
請求項3記載の本発明は、演算手段からの可動体の基準点の位置および可動体の姿勢に基づいて、可動体のスライド変位および角変位を制御する制御手段をさらに備えることを特徴とする。
【0018】
本発明に従えば、演算手段からの高精度の可動体の基準点の位置および可動体の姿勢に基づいて、可動体のスライド変位および角変位を高精度に制御することができる。
【0019】
【発明の実施の形態】
図1は、本発明の第1の実施形態の位置および姿勢検出装置10の構成を示すブロック図である。図2は、ロボット20および複数のカメラ13A,13B,13Cを模式的に示す図である。位置および姿勢検出装置(以後、単に「位置姿勢検出装置」と表記することがある。)10は、産業用ロボットなどのロボット20の手首24に連結されるツール30などの可動体に設定された基準点の位置およびツール30の姿勢を検出して、ツール30のスライド変位および角変位を制御する。
【0020】
ロボット20は、たとえば6軸垂直多関節ロボットである。ロボット20は、ベース部21、下部アーム22、上部アーム23および手首24を有する。ベース部21は、鉛直方向に延びる第1軸線J1まわりに旋回可能である。下部アーム22は、水平方向に延びる第2軸線J2まわりに角変位可能にしてベース部21に連結される。上部アーム23は、その基端部が水平方向に延びる第3軸線J3まわりに角変位可能にして下部アーム22の上端部に連結される。手首24は、上部アーム23の軸線に平行に延びる第4軸線J4まわりに角変位可能、かつ前記第4軸線J4に垂直な第5軸線J5まわりに角変位可能にして上部アーム23の先端部に連結される。手首24は、第5軸線J5に垂直な第6軸線J6まわりに角変位可能なフランジ25を有する。ハンド、溶接トーチおよびセンサなどのツール30は、フランジ25に設けられるツールチェンジャー(図示せず)などを介してフランジ25に連結される。
【0021】
位置姿勢検出装置10は、ターゲットユニット11、LED駆動部12、カメラ13、画像処理部14、ジャイロセンサ15、加速度センサ16、信号処理部17、演算部18およびロボット制御部19を含んで構成される。
【0022】
図3は、ターゲットユニット11を示す斜視図である。ターゲットユニット11は、ツールチェンジャーおよびツール30のいずれかに設けられる。またターゲットユニット11は、ロボット20全体の誤差のうち手首部分の誤差が小さい場合、ロボット20の上部アーム23の先端部に設けてもよい。本実施の形態では、ターゲットユニット11は、ツール30に設けられ、ツール30とともにスライド変位および角変位可能である。ターゲットユニット11は、同一直線上に並ばない3個のターゲットを有する。本実施の形態では、ターゲットユニット11は、第1ターゲット31、第2ターゲット32、第3ターゲット33および第4ターゲット34の4つのターゲットを有する。
【0023】
第1ターゲット31〜第4ターゲット34は、同形状の球状に形成され、透光性を有し、その重心に互いに異なる色で発光する発光ダイオード(LightEmitting Diode;略称:LED)を備える。第2ターゲット32は、円柱状の第1リンク35を介して第1ターゲット32に連結される。第3ターゲット33は、円柱状の第2リンク36を介して第1ターゲット32に連結される。第4ターゲット34は、円柱状の第3リンク37を介して第1ターゲット32に連結される。第1〜第3リンク35〜37は、全く同じ形状であり、第1ターゲット31の重心から第2ターゲット32の重心までの距離と、第1ターゲット31の重心から第3ターゲット33の重心までの距離と、第1ターゲット31から第4ターゲット34までの距離とは、同じである。第1リンク35、第2リンク36および第3リンク37は、それらの軸線が互いに直交するようにして配置される。ターゲットユニット11の第1ターゲット31は、第1ターゲット31の重心がツール30に設定される基準点となるようにして配置される。LED駆動部12は、演算部18からのLED制御信号に基づいて、ターゲットユニット11の各ターゲット31〜34に備えられるLEDを発光させるために必要な駆動電力の供給および非供給を行う。
【0024】
撮影手段であるカメラ13は、予め定める座標系であるロボット座標系における絶対位置が把握されている撮像位置に配置され、前記撮像位置からターゲットユニット11を撮影して、ターゲットユニット11の画像を表す画像データを生成し、複数設けられる。本実施の形態において、ロボット座標系とは、ロボット20のベース部21が固定される床に平行に延び、互いに直交するx軸およびy軸、ならびに鉛直上向きに延びるz軸で構成される直交座標系である。本実施の形態において、カメラ13は、固体撮像素子(Charge Coupled Device ;略称:CCD)を備えるCCDカメラで実現される。またカメラ13は、本実施の形態では、第1カメラ13A、第2カメラ13Bおよび第3カメラ13Cの3台のカメラで構成され、ロボット座標系における絶対位置が把握されている互いに異なる撮像位置に配置される。各カメラ13A〜13Cが配置される撮像位置は、詳細に述べると、ロボット20の動作領域外であって、全カメラ13A〜13Cによって、ロボット20の動作領域全体を撮影できる位置である。以後、第1〜第3カメラ13A〜13Cを区別しない場合には、単に、カメラ13と表記することがある。
【0025】
第1検出手段である画像処理部14は、たとえばマイクロコンピュータで実現され、演算部18からの計測指令信号が与えられると、カメラ13からの画像データに基づいて画像処理を行い、ロボット座標系におけるツール30に設定された基準点の絶対位置およびツール30の絶対姿勢を求め、求めたツール30の基準点の絶対位置および絶対姿勢を含む絶対位置姿勢検出信号を演算部18に与える。
【0026】
第2検出手段であるジャイロセンサ15および加速度センサ16は、ツール30およびツールチェンジャーのいずれかに設けられ、ツール30とともにスライド変位および角変位可能である。ジャイロセンサ15は、ツール30の角速度を検出することによってツール30の相対角変位を検出して、ツール30の相対角変位を含む相対角変位検出信号を信号処理部17に与える。加速度センサ16は、ツール30のスライド加速度を検出することによってツール30の相対スライド変位を検出して、ツール30の相対スライド変位を含む相対スライド変位検出信号を信号処理部17に与える。本実施の形態において、第2検出手段は、ジャイロセンサ15および加速度センサ16によって構成される。信号処理部17は、ジャイロセンサ15および加速度センサ16からの相対角変位検出信号および相対スライド変位検出信号を、演算部18によって演算処理可能な信号に変換する信号処理を行って、ツール30の相対角変位および相対スライド変位を含む相対変位検出信号を演算部18に与える。
【0027】
演算手段である演算部18は、たとえば中央演算処理装置(Central
Processing Unit;略称:CPU)などの演算処理装置、ならびにランダムアクセスメモリ、リードオンリーメモリおよびハードディスクドライブなどの記憶装置を含んで実現され、位置姿勢検出装置10を統括的に制御する。演算部18は、ターゲットユニット11の各ターゲット31〜34への駆動電力の供給および非供給を示すLED制御信号を、LED駆動部12に与える。また演算部18は、ロボット座標系におけるツール30に設定された基準点の絶対位置およびツール30の絶対姿勢を求めることを示す計測指令信号を、画像処理部14に与える。さらに演算部18は、ロボット制御部19から指令要請信号が与えられると、画像処理部14からの絶対位置姿勢検出信号に含まれるロボット座標系におけるツール30に設定された基準点の絶対位置およびツール30の絶対姿勢と、信号処理部17からの相対変位検出信号に含まれるツール30の相対角変位およびツール30の基準点の相対スライド変位とに基づいて、ツール30の基準点の位置およびツール30の姿勢を求めて、求めた位置および姿勢に基づく修正制御指令値を含む制御信号をロボット制御部19に与える。
【0028】
制御手段であるロボット制御部(以後、単に「制御部」と表記することがある。)19は、予め設定されている制御指令値および演算部18によって求められる修正指令値を含む制御信号を与えるように要請することを示す指令要請信号を、演算部18に与える。また制御部19は、演算部18から与えられる制御信号に含まれる制御指令値および修正制御指令値に基づいて、ツール30のスライド変位および角変位を制御する。ロボット20の、下部アーム22、上部アーム23、手首24およびフランジ25は、ロボット20に搭載され、制御部19によって制御される複数のサーボモータ(図示せず)の駆動力によって、第1〜第6軸線J1〜J6まわりに角変位する。これによって制御部19は、ツール30のスライド変位および角変位を制御する。
【0029】
図4は、カメラ13を用いて、ある点Pのロボット座標系における座標(X,Y,Z)を求める方法を説明するための図である。ここでは理解を容易にするために、第1カメラ13Aおよび第2カメラ13Bを用いる場合の、ある点Pのロボット座標系における座標(X,Y,Z)を求める方法を説明する。第1カメラ13Aが撮影した点Pが、第1カメラ13Aの撮像面A1において点Q1として撮影された場合、点Q1の第1カメラ13Aの撮像面A1座標系における座標を(XC1,YC1)とする。また第2カメラ13Bが撮影した点Pが、第2カメラ13Bの撮像面A2において点Q2として撮影された場合、点Q2の第2カメラ13Bの撮像面A2座標系における座標を(XC2,YC2)とする。このとき点Pと点Q1との関係は、次式(1)で表され、点Pと点Q2との関係は、次式(2)で表される。
【0030】
【数1】

Figure 2004050356
【0031】
前式(1)において、hは、同次座標表現における媒介変数であり、右辺における左側の行列は、予め定められる第1カメラ13Aのカメラパラメータ行列である。前式(2)において、hは、同次座標表現における媒介変数であり、右辺における左側の行列は、予め定められる第2カメラ13Bのカメラパラメータ行列である。
【0032】
画像処理部14は、第1カメラ13Aからの画像データに基づいて、点Q1の座標(XC1,YC1)、および第2カメラ13Bからの画像データに基づいて、点Q2の座標(XC2,YC2)を求めて、前式(1)および式(2)を連立させて、各媒介変数h,hを消去して、点Pのロボット座標系における座標(X,Y,Z)に関して整理すると、次式(3)が得られる。
B=A・V                      …(3)
【0033】
前式(3)の左辺の行列Bは次式(5)で表され、右辺における左側の行列Aは次式(4)で表され、右辺における右側の行列Vは次式(6)で表される。
【0034】
【数2】
Figure 2004050356
【0035】
したがって、点Pのロボット座標系における座標(X,Y,Z)は、次式(7)のように求められる。
V=(A・A)−1・A・B             …(7)
【0036】
前式(7)において、Tは行列の転置を示す。
前述の点Pのロボット座標系における座標(X,Y,Z)の求め方は、第1カメラ13Aおよび第2カメラ13Bの2台のカメラ13を用いた場合であるが、カメラ13を3台以上用いる場合であっても同様にして点Pのロボット座標系における座標(X,Y,Z)を求めることができる。このようにしてロボット座標系におけるターゲットユニット11の第1ターゲット31の重心L1の座標(XL1,YL1,ZL1)を求めることによって、ツール30に設定された基準点の絶対位置を求めることができる。
【0037】
また、このようにして画像処理部14は、カメラ13からの画像データに基づいて、ターゲットユニット11の第1〜第4ターゲット31〜34の重心の座標が得られる。ロボット座標系における第1ターゲット31の重心L1の座標(XL1,YL1,ZL1)、第2ターゲット32の重心L2の座標(XL2,YL2,ZL2)、第3ターゲット33の重心L3の座標(XL3,YL3,ZL3)、第4ターゲット34の重心L4の座標(XL4,YL4,ZL4)とすると、第1ターゲット31から第2ターゲット32に向かう第1基底ベクトルVx、第1ターゲット31から第3ターゲット33に向かう第2基底ベクトルVyおよび第1ターゲット31から第4ターゲット34に向かう第3基底ベクトルVzは、それぞれ次式(8)、式(9)および式(10)で表される。
【0038】
【数3】
Figure 2004050356
【0039】
このようにして第1ターゲット31の重心L1を座標原点とし、互いに直交する第1〜第3基底ベクトルVx,Vy,Vzによって構成されるターゲット座標系が求められる。これによってターゲット座標系のロボット座標系に対する傾斜がわかるので、ツール30の絶対姿勢を求めることができる。
【0040】
ここで万一、ターゲットユニット11の第2〜第4ターゲット32〜34のいずれか1つがカメラ13によって撮影できなくても、第1ターゲット31を含む3つの残余のターゲットの重心の座標を求めることによって、前記3つの残余のターゲットの重心を含む平面が求められるので、この平面の法線を求めることができる。これによってターゲット座標系を求めることができる。
【0041】
このようなターゲットユニット11をカメラ13で撮影して、その画像データに基づいてターゲット座標系を求めて、ツール30に設定された基準点の位置およびツール30の姿勢を求めるには、多少の時間、たとえば0.1秒程度を要するので、画像処理部14によってツール30の基準点の位置および姿勢が求められてから、次に画像処理部14によってツール30の基準点の位置および姿勢が求められるまでの間は、ジャイロセンサ15および加速度センサ16によって検出される相対角変位および相対スライド変位に基づいて、演算部18は、ツール30の基準点の位置および姿勢を求める。
【0042】
ジャイロセンサ15および加速度センサ16によって検出される相対角変位および相対スライド変位に基づくツール30の基準点の位置および姿勢は、画像処理部14によって求められるツール30の基準点の位置および姿勢に比べて精度が低いけれども、相対角変位および相対スライド変位の誤差が蓄積されるまでには、新たに画像処理部14によってツール30の基準点の位置および姿勢が求められるので、連続して精度の高いツール30の基準点の位置および姿勢を求めることができる。
【0043】
図5は、ロボット制御部19によるツール30のスライド変位および角変位を制御する手順を示すフローチャートである。図6は、ロボット制御部19によるツール30のスライド変位および角変位を制御する方法を説明するための図である。ロボット制御部19がロボット20に制御信号を与える時間間隔である指令サイクルをt秒とする。ステップs0で、制御手順が開始されて、ステップs1に進む。
【0044】
ステップs1では、演算部18は、ある時刻Tにおいて求めたツール30の基準点および姿勢を示す実測値Rと、予め設定される時刻Tにおけるツール30の基準点および姿勢を示す制御指令値Hとの誤差ベクトルΔを求めて、ステップs2に進む。ここで添字iは整数である。
【0045】
ステップs2では、演算部18は、時刻Tからt秒後の時刻Ti+1における予め設定されているロボット20のツール30の基準点および姿勢を示す制御指令値Hi+1に、誤差ベクトルの総和ΣΔi−1と、ステップs1で求めた誤差ベクトルΔとを加算して、時刻Ti+1における修正制御指令値Ni+1を求めて、ステップs3に進む。誤差ベクトルの総和ΣΔi−1とは、時刻Tのt秒前の時刻Ti−1までに累積されている演算部18によって求められたツール30の基準点および姿勢を示す実測値と、予め設定されるロボット20のツール30の基準点および姿勢を示す制御指令値との誤差ベクトルの総和である。
【0046】
ステップs3では、演算部18は、時刻Ti+1において、ステップs2で求めた修正制御指令値Ni+1を含む制御信号をロボット制御部19に与えて、ステップs4に進む。ステップs4では、添字iをi+1に置換えて、ステップs1に戻る。
【0047】
このような手順で制御を行うことによって、図6に示すように、演算部18によって求められたツール30の基準点および姿勢を示す実測値の軌跡L11は、予め設定されるツール30の基準点および姿勢を示す制御指令値の軌跡L10に近づいていく。したがって演算部18からの高精度のツール30の基準点の位置および姿勢に基づく修正制御指令値を含む制御信号をロボット制御部19に与えることによって、ツール30のスライド変位および角変位を高精度に制御することができる。
【0048】
以上のように本実施の形態の位置姿勢検出装置10によれば、複数のカメラ13によって、予め定めるロボット座標系における絶対位置が把握されている撮像位置から、ツール30に設けられるターゲットユニット11が撮影され、ターゲットユニット11の画像を表す画像データが生成される。カメラ13が複数、たとえば2個あれば、ターゲットユニット11を両眼立体視することができる。またカメラ13を3個以上にすることによって、ツール30のスライド変位および角変位によって、各ターゲット31〜34が各カメラ13の死角領域に入ってしまうことを可及的に防止することができる。
【0049】
画像処理部14によって、カメラ13からの画像データに基づいて、ロボット座標系におけるツール30に設定された基準点の絶対位置およびツール30の絶対姿勢が求められる。このときターゲットユニット11において、4個のターゲット31〜34のうち、いずれの3個のターゲットは同一直線上に並ばないので、3個のターゲットを含む平面を容易に求めて、その平面の法線を求めて、ターゲットを基準とするターゲット座標系を求めることができる。したがってロボット座標系とターゲット座標系とに基づいて、ロボット座標系におけるツール30に設定された基準点の絶対位置およびツール30の絶対姿勢を容易かつ正確に求めることができる。さらにツール30に設けられるジャイロセンサ15および加速度センサ16によって、ツール30の相対スライド変位および相対角変位が検出される。
【0050】
演算部18によって、画像処理部14からのツール30の基準点の絶対位置および絶対姿勢と、ジャイロセンサ15および加速度センサ16からのツール30の相対スライド変位および相対角変位とに基づいて、ツール30の基準点の位置および姿勢が求められる。これによって、たとえば画像処理部14によって求められるツール30の基準点の絶対位置および絶対姿勢が、ジャイロセンサ15および加速度センサ16によって検出されるツール30の相対スライド変位および相対角変位よりも高精度であるけれども、画像処理部14はツール30の基準点の絶対位置および絶対姿勢を連続的に求めることができない場合、または、万一、ターゲットユニット11が各カメラ13の死角に入ってしまった場合、演算部18は、画像処理部14によってツール30の基準点の絶対位置および絶対姿勢が求められるまでは、ジャイロセンサ15および加速度センサ16によって求められるツール30の相対スライド変位および相対角変位に基づいて、ツール30の基準点の位置および姿勢を求めることができる。このように演算部18は、画像処理部14ならびにジャイロセンサ15および加速度センサ16からのツール30の基準点の絶対位置および絶対姿勢、ならびに相対スライド変位および相対角変位に基づいて、極めて高精度なツール30の基準点の位置および姿勢を連続的に求めることができる。
【0051】
また本実施の形態の位置姿勢検出装置10によれば、演算部18からの高精度のツール30の基準点の位置および姿勢に基づいて、ツール30のスライド変位および角変位を高精度に制御することができる。
【0052】
本実施の形態の位置姿勢検出装置10において、ターゲットユニット11の各ターゲット31〜34は、同形状の球状に形成され、LEDによって互いに異なる色で発光するとしたけれども、各ターゲット31〜34は、画像処理部14が、各ターゲット31〜34を区別可能であればよい。たとえば、各ターゲット31〜34を互いに異なる形状、具体的な一例としては、互いに異なる大きさの球にしてもよい。
【0053】
また本実施の形態の位置姿勢検出装置10において、ターゲットユニット11は、ツール30に設けられ、第1ターゲット31は、第1ターゲット31の重心がツール30に設定される基準点となるようにして配置されるとしたけれども、これに限ることはない。たとえば、ターゲットユニット11を2個用いてもよい。この場合、8つのターゲットは互いに異なる色で発光するようにして、各ターゲットユニット11の第1ターゲット31を、たとえば手首24の軸線に関して対称となる位置に配置して、ツール30の基準点をツール30の重心として、各第1ターゲット31とツール30の基準点との位置関係を把握しておくようにする。ターゲットユニット11を2個用いることによって、2つのターゲットユニット11がともに、全てのカメラ13の死角領域に入る可能性が極めて低くなるので、ほぼ確実にターゲット座標系を求めることができ、したがってツール30の基準点の位置および姿勢を確実に求めることができる。
【0054】
また各カメラ13の視野を狭くし、かつ画像処理部14によって求められる第1ターゲット31の重心の座標に基づいて、ターゲットユニット11を自動的に追尾する機能を有する雲台に連結して、各カメラ13をスライド変位および角変位させるようにしてもよい。これによって、画像処理部14によって求められるツール30の基準点の位置および姿勢の精度を向上することができる。
【0055】
図7は、ジャイロセンサ15および加速度センサ16によって検出されるツール30の相対角変位および相対スライド変位を主にして、ツール30の基準点の位置および姿勢を制御する場合の、ツール30の基準点の位置および姿勢の実測値の真値からの誤差と時間との関係を示すグラフである。前述の本実施の形態では、画像処理部14によって求められるツール30の基準点の絶対位置および絶対姿勢を主とし、ジャイロセンサ15および加速度センサ16によって検出されるツール30の相対角変位および相対スライド変位を副として、ツール30の基準点の位置および姿勢を制御したが、これとは逆に、ジャイロセンサ15および加速度センサ16によって検出されるツール30の相対角変位および相対スライド変位を主とし、画像処理部14によって求められるツール30の基準点の絶対位置および絶対姿勢を副として、ツール30の基準点の位置および姿勢を制御するようにしてもよい。
【0056】
この場合、演算部18は、ジャイロセンサ15および加速度センサ16によって検出されるツール30の相対角変位および相対スライド変位に基づく修正制御指令値を含む制御信号をロボット制御部19に与え、所定の時間間隔となる時刻U1,U2,U3,…,Unにおいて、画像処理部14によって求められるツール30の基準点の絶対位置および絶対姿勢に基づく修正制御指令値を含む制御信号をロボット制御部19に与えることによって、図7の破線L12に示すように、ジャイロセンサ15および加速度センサ16によって検出される相対角変位および相対スライド変位に基づいて修正制御指令値に含まれる誤差を可及的に小さくすることができる。
【0057】
また、たとえばロボット20の動作領域内に複数の予め定める待機点を設定しておくようにしてもよい。この場合、ロボット20が待機点に配置されたときに、画像処理部14によって求められるツール30の基準点の絶対位置および絶対姿勢に基づく修正制御指令値を含む制御信号をロボット制御部19に与えることによって、図7の実線L13に示すように、ジャイロセンサ15および加速度センサ16によって検出されるツール30の相対角変位および相対スライド変位に基づく修正制御指令値に含まれる誤差をほぼ零にすることができる。
【0058】
またロボット20の繰返し精度が高いことを利用して、複数の待機点におけるツール30の基準点の位置および姿勢を予め測定しておき、ツール30が待機点に配置されたときに、ジャイロセンサ15および加速度センサ16によって検出されるツール30の相対角変位および相対スライド変位に基づくツール30の基準点の位置および姿勢を、予め測定しておいた数値に置きかえてもよい。
【0059】
また本実施の形態の位置姿勢検出装置10において、カメラ13によってターゲットユニット11を撮影し、その画像データに基づいて、ロボット座標系におけるツール30の基準点の絶対位置および絶対姿勢を求め、ロボット座標系におけるツール30の基準点の絶対位置および絶対姿勢を求めるとしたけれども、これに限ることはない。たとえば前述の待機点近傍に距離計測センサを設置して、ツール30の基準点の位置および姿勢を測定するようにしてもよい。
【0060】
またロボット20が繰返し作業を行う場合は、ドライラン時にツール30の基準点の位置および姿勢を測定し、作業前に自動的に制御指令値を修正しておくようにしてもよい。さらにセンサをツール30として用いて、ワークの形状などを計測する計測ロボットとして利用する場合、ワークの計測終了後にツール30の基準点および姿勢の誤差による計測データへの影響を可及的に小さくすることができる。
【0061】
図8は、本発明の第2の実施形態の位置および姿勢検出装置50の構成を示すブロック図である。図9は、ロボット20およびレーザ干渉計53を模式的に示す図である。位置および姿勢検出装置(以後、単に「位置姿勢検出装置」と表記することがある。)50は、産業用ロボットなどのロボット20の手首24に連結されるツール30などの可動体に設定された基準点の位置およびツール30の姿勢を検出して、ツール30のスライド変位および角変位を制御する。ロボット20は、第1の実施形態におけるロボット20と同様の軸垂直多関節ロボットであるので、同一の参照符号を付して、詳細な説明は省略する。本実施の形態において、ロボット座標系とは、ロボット20のベース部21が固定される床に平行に延び、互いに直交するx軸およびy軸、ならびに鉛直上向きに延びるz軸で構成される直交座標系である。
【0062】
位置姿勢検出装置50は、ターゲット51、回転駆動部52、レーザ干渉計53、測距処理部54、ジャイロセンサ15、加速度センサ16、信号処理部17、演算部58およびロボット制御部19を含んで構成される。
【0063】
ターゲット51は、ロボット20の上部アーム23の先端部、ツールチェンジャーおよびツール30のいずれかに設けられる。本実施の形態では、ターゲットユニット11は、ツール30に設けられ、ツール30とともにスライド変位および角変位可能である。ターゲット51は、たとえばコーナーキューブプリズムで実現され、レーザ干渉計53からターゲット51に入射したレーザ光を、レーザ光の入射方向とは平行な方向に反射する。駆動手段である回転駆動部52は、たとえばステッピングモータ、またはインダクションモータとエンコーダとで実現され、演算部58からの回転制御信号に基づいて、ターゲット51を予め定める軸線である付加軸線L52まわりに回転駆動するとともに、ターゲット51の角度位置を検出可能である。このとき基準点は、ターゲット51の回転中心となるように、付加軸線L52を配置する。本実施の形態において、回転とは、360度未満の角変位および360度以上の回転を含むものとする。
【0064】
ターゲット距離測定手段であるレーザ干渉計53は、予め定める座標系であるロボット座標系における絶対位置が把握されている測距位置に配置され、レーザ光を射出して、ターゲット51にレーザ光を入射して、その反射光と、射出したレーザ光と同位相のレーザ光とを干渉させて、干渉強度の最大値および最小値の変化の回数を計数することによって、前記側距位置からターゲット51までの距離を測定する。レーザ干渉計53には、ターゲット51を追尾する機能を有し、ターゲット51にレーザ光を常に入射させることができるとともに、レーザ光の射出方向を検出可能である。
【0065】
第1検出手段である測距処理部54は、たとえばマイクロコンピュータで実現され、演算部58からの計測指令信号が与えられると、レーザ干渉計53によって測定された距離および検出されたレーザ光の射出方向に基づいて、ロボット座標系におけるツール30に設定された基準点の絶対位置およびツール30の絶対姿勢を求め、求めたツール30の基準点の絶対位置および絶対姿勢を含む絶対位置姿勢検出信号を演算部58に与える。測距処理部54は、詳細に述べると、レーザ干渉計53によって測定された距離および検出されたレーザ光の射出方向に基づいて、レーザ干渉計53の座標系である干渉計座標系におけるツール30の基準点の絶対位置および絶対姿勢を求めてから、ロボット座標系におけるツール30の基準点の絶対位置および絶対姿勢に変換する。
【0066】
第2検出手段であるジャイロセンサ15および加速度センサ16は、第1の実施形態の位置姿勢検出装置10におけるジャイロセンサ15および加速度センサ16と同様であるので、同一の参照符号を付して、詳細な説明は省略する。信号処理部17は、第1の実施形態の位置姿勢検出装置10における信号処理部17と同様であるので、同一の参照符号を付して、詳細な説明は省略する。
【0067】
演算手段である演算部58は、たとえばCPUなどの演算処理装置、ならびにランダムアクセスメモリ、リードオンリーメモリおよびハードディスクドライブなどの記憶装置を含んで実現され、位置姿勢検出装置50を統括的に制御する。演算部58は、ターゲット51の付加軸線L52まわりの回転駆動を示す回転制御信号を回転駆動部52与える。また演算部18は、レーザ干渉計53によって測定された距離および検出されたレーザ光の射出方向に基づいて、ロボット座標系におけるツール30に設定されたツール30の基準点の絶対位置および絶対姿勢を求めることを示す計測指令信号を、測距処理部54に与える。さらに演算部58は、ロボット制御部19から指令要請信号が与えられると、測距処理部54からの絶対位置姿勢検出信号に含まれるロボット座標系におけるツール30の基準点の絶対位置および絶対姿勢と、信号処理部17からの相対変位検出信号に含まれるツール30の相対角変位および相対スライド変位とに基づいて、ツール30の基準点の位置および姿勢を求めて、求めた位置および姿勢に基づく修正制御指令値を含む制御信号をロボット制御部19に与える。
【0068】
制御手段であるロボット制御部19は、第1の実施の形態の位置姿勢検出装置10におけるロボット制御部19と同様であるので、同一の参照符号を付して、詳細な説明は省略する。
【0069】
図10は、レーザ干渉計53およびロボット20における干渉計座標系、付加軸座標系およびロボット座標系を模式的に示す図である。図11は、ツール30がスライド変位および角変位していない静止状態で、ツール30の基準点の位置および姿勢を検出する方法を説明するための図である。ツール30がスライド変位および角変位していない静止状態で、ツール30の基準点の位置および姿勢を検出する方法を以下に説明する。
【0070】
演算部58は、予め定める第1静止角度位置M1にターゲット51を配置することを示す回転制御信号を回転駆動部52に与える。回転駆動部52は、前記回転制御信号に基づいて、ターゲット51を付加軸線L52まわりに回転させて第1静止角度位置M1に配置する。このときレーザ干渉計53は、第1静止角度位置M1に配置されるターゲット51と測距位置との距離を測定するとともに、レーザ光の射出方向を検出する。測距処理部54は、測定された距離および検出された射出方向に基づいて、第1静止角度位置M1に配置されるターゲット51の干渉計座標系の第1静止位置の干渉計座標系における座標を求める。
【0071】
続いて演算部58は、第1静止角度位置M1から予め定める回転方向に90度角変位した角度位置である第2静止角度位置M2にターゲット51を配置することを示す回転制御信号を回転駆動部52に与える。回転駆動部52は、前記回転制御信号に基づいて、ターゲット51を付加軸線L52まわりに回転させて第2静止角度位置M2に配置する。このときレーザ干渉計53は、第2静止角度位置M2に配置されるターゲット51と測距位置との距離を測定するとともに、レーザ光の射出方向を検出する。測距処理部54は、測定された距離および検出された射出方向に基づいて、第2静止角度位置M2に配置されるターゲット51の干渉計座標系の第2静止位置の干渉計座標系における座標を求める。
【0072】
さらに演算部58は、第1静止角度位置M1から前記回転方向に270度角変位した角度位置である第3静止角度位置M3にターゲット51を配置することを示す回転制御信号を回転駆動部52に与える。回転駆動部52は、前記回転制御信号に基づいて、ターゲット51を付加軸線L52まわりに回転させて第3静止角度位置M3に配置する。このときレーザ干渉計53は、第3静止角度位置M3に配置されるターゲット51と測距位置との距離を測定するとともに、レーザ光の射出方向を検出する。測距処理部54は、測定された距離および検出された射出方向に基づいて、第3静止角度位置M3に配置されるターゲット51の干渉計座標系の第3静止位置の干渉計座標系における座標を求める。
【0073】
このようにターゲット51の3つの静止角度位置M1〜M3における干渉計座標系の同一直線上に並ばない3つの静止位置が求められたので、測距処理部54は、3つの第1〜第3静止位置を含む平面を求めるとともに、これら3つの静止位置およびターゲット51の回転半径から回転中心を決定して、前記回転中心から第1静止位置に向かう第1基底ベクトルVx、前記回転中心から第2静止位置に向かう第2基底ベクトルVy、および前記回転中心から前記平面に垂直な方向に向かう第3基底ベクトルVzを求める。このようにして前記回転中心すなわち基準点を座標原点とし、互いに直交する第1〜第3基底ベクトルVx,Vy,Vzによって構成されるターゲット座標系が求められる。これによってターゲット座標系の干渉計座標系に対する傾斜がわかるので、また、ロボット座標系と干渉計座標系との関係も既知であるので、ツール30の絶対姿勢を求めることができる。
【0074】
ここで万一、レーザ干渉計53が、前記第1〜第3角度位置M1〜M3に配置されるターゲット51にレーザ光を入射させることができなくても、前記第1〜第3角度位置M1〜M3以外の同一直線上に無い3つの角度位置にターゲット51を配置して、これらの角度位置に配置されるターゲット51の干渉計座標系における第1〜第3位置を求めることができる。これによって測距処理部54は、この干渉計座標系における第1〜第3位置である3つの位置を含む平面を求めるとともに、これら3つの位置およびターゲット51の回転半径から回転中心を求めて、前記回転中心を座標原点とし、互いに直交する第1〜第3基底ベクトルVx,Vy,Vzを求めて、ターゲット座標系を求めることができる。
【0075】
図12は、ツール30がスライド変位および角変位している動作状態で、ツール30の基準点の位置および姿勢を検出する方法を説明するための図である。ツール30がスライド変位および角変位している動作状態で、ツール30の基準点の位置および姿勢を検出する方法を以下に説明する。
【0076】
演算部58は、ロボット20のツール30のスライド速度よりも充分に速い回転速度でターゲット51を回転することを示す回転制御信号を回転駆動部52に与える。回転駆動部52は、前記回転制御信号に基づいて、ツール30のスライド速度よりも充分に速い回転速度でターゲット51を付加軸線L52まわりに回転させる。ターゲット51が、ツール30のスライド速度よりも充分に速い回転速度で付加軸線L52まわりに回転することによって、所定の時間間隔となる複数、本実施の形態では3つの時刻におけるターゲット51の3つの位置が、近似的に、3つの時刻のうちの最も最近の時刻における付加軸線L52に垂直な平面上に存在する。図12は、理解を容易にするために、3つの角度位置D1〜D3が重ならないように、それぞれ異なる平面(付加軸線L52に垂直な平面)上に存在しているように表記しているが、実際には、矢符Cの方向には、ほとんど間隔をあけていない。
【0077】
レーザ干渉計53は、前述の所定の時間間隔で、回転しているターゲット51と測距位置との距離を測定するとともに、レーザ光の射出方向を検出する。そして測距処理部54は、測定された距離および検出された射出方向に基づいて、測定された各時刻におけるターゲット51の干渉計座標系における座標を求める。
【0078】
ある測定時刻tにおけるツール30の基準点の絶対位置および絶対姿勢を求めるためには、前記測定時刻tを含む3つの時刻におけるターゲット51の干渉計座標における座標が必要である。本実施の形態では、測定時刻tと、前記測定時刻tよりも所定の時間間隔だけ過去の第1過去時刻ti−1と、前記第1過去時刻ti−1よりも所定の時間間隔だけ過去の第2過去時刻ti−2とにおけるターゲット51の干渉計座標における座標を用いる。
【0079】
測定時刻tにおいて、ターゲット51は、予め定める基準角度位置Wから前記回転方向に第1角度θだけ角変位した第1回転角度位置D1にあるとする。また第1過去時刻ti−1において、ターゲット51は、基準角度位置Wから前記回転方向に第2角度θi−1だけ角変位した第2回転角度位置D2にあるとする。さらに第2過去時刻ti−2において、ターゲット51は、基準角度位置Wから前記回転方向に第3角度θi−2だけ角変位した第3回転角度位置D3にあるとする。
【0080】
レーザ干渉計53および測距処理部54によって、各時刻ti−2,ti−1,tにおけるターゲット51の各回転角度位置D1〜D3の干渉計座標系における座標が求められる。前述のように、これらの3つの座標は、近似的に、測定時刻tにおける付加軸線L52に垂直な平面上に存在する。したがって、これらの3つの座標は、同一直線上に並ばないので、測距処理部54は、これら3つの座標を含む円周を有する円の中心の干渉計座標系における座標を求める。この円の中心の座標が、ターゲット51の回転中心であり、すなわちツール30の基準点の干渉計座標系の座標である。ロボット座標系と干渉計座標系との関係は既知であるので、ツール30の基準点の絶対位置を求めることができる。
【0081】
また測距処理部54は、前述の3つの座標を含む平面を求めるとともに、前記3つの座標と、ターゲット51の回転速度と、所定の時間間隔と、第1〜第3角度θ〜θi−2とに基づいて、基準角度位置Wの干渉計座標系における座標を求める。さらに測距処理部54は、前記回転中心から基準角度位置Wに向かう第1基底ベクトルVx、前記回転中心から前記平面に平行であって、前記第1基底ベクトルVxに回転方向に角度90度を成す第2基底ベクトルVy、および前記回転中心から前記平面に垂直な方向に向かう第3基底ベクトルVzを求める。このようにして前記回転中心すなわち基準点を座標原点とし、互いに直交する第1〜第3基底ベクトルVx,Vy,Vzによって構成されるターゲット座標系が求められる。これによってターゲット座標系の干渉計座標系に対する傾斜がわかるので、また、ロボット座標系と干渉計座標系との関係も既知であるので、ツール30の絶対姿勢を求めることができる。
【0082】
このようにロボット20のツール30のスライド速度よりも充分に速い回転速度でターゲット51を回転させることによって、たとえば、ターゲット51と回転中心との距離を100ミリメートルとし、ロボット20のツール30が1ミリメートルだけスライド変位する間に、ターゲット51が角度90度だけ回転するようにすれば、tan−1(1/100)≒0.5度の精度で、ツール30の絶対姿勢を求めることができる。
【0083】
以上のように本実施の形態の位置姿勢検出装置50によれば、レーザ干渉計53によって、ロボット座標系における絶対位置が把握されている測距位置から、ツール30に設けられ、回転駆動部52によって付加軸線L52まわりに回転するターゲット51までの距離が測定されるとともにレーザ光の射出方向が検出される。測距処理部54によって、レーザ干渉計53によって測定された距離および検出されたレーザ光の射出方向に基づいて、ロボット座標系におけるツール30に設定された基準点の絶対位置およびツール30の絶対姿勢が求められる。ターゲット51が角変位することによって、レーザ干渉計53は、ロボット座標系における絶対位置が把握されている測距位置から、互いに異なる3つの角度位置に配置されるターゲット51までの距離を測定するとともに、レーザ光の射出方向を検出することができる。このとき、たとえばターゲット51の互いに異なる3つの位置が同一直線上に並ばない場合、この3つの位置を含む平面を容易に求めて、その平面の法線を決定して、ターゲット51を基準とするターゲット座標系を求めることができる。したがってロボット座標系、干渉計座標系およびターゲット座標系に基づいて、ロボット座標系におけるツール30に設定された基準点の絶対位置およびツール30の絶対姿勢を容易かつ正確に求めることができる。さらにツール30に設けられるジャイロセンサ15および加速度センサ16によって、ツール30の相対スライド変位および相対角変位が検出される。
【0084】
演算部58によって、測距処理部54からのツール30の基準点の絶対位置および絶対姿勢と、ジャイロセンサ15および加速度センサ16からのツール30の相対スライド変位および相対角変位とに基づいて、ツール30の基準点の位置および姿勢が求められる。これによって、たとえば測距処理部54によって求められるツール30の基準点の絶対位置および絶対姿勢が、ジャイロセンサ15および加速度センサ16によって検出されるツール30の相対スライド変位および相対角変位よりも高精度であるけれども、測距処理部54はツール30の基準点の絶対位置および絶対姿勢を連続的に求めることができない場合、または、万一、ターゲット51がレーザ干渉計53の死角領域に入ってしまった場合、演算部58は、測距処理部54によってツール30の基準点の絶対位置および絶対姿勢が求められるまでは、ジャイロセンサ15および加速度センサ16によって検出されるツール30の相対スライド変位および相対角変位に基づいて、ツール30の基準点の位置および姿勢を求めることができる。このように測距処理部54ならびにジャイロセンサ15および加速度センサ16からのツール30の基準点の絶対位置および絶対姿勢、ならびにツール30の相対スライド変位および相対角変位に基づいて、極めて高精度なツール30の基準点の位置および姿勢を連続的に求めることができる。
【0085】
また本実施の形態のロボットの位置および姿勢検出装置50によれば、演算部58からの高精度のツール30の基準点の位置および姿勢に基づいて、ツール30のスライド変位および角変位を高精度に制御することができる。
【0086】
本実施の形態のロボットの位置および姿勢検出装置50において、ロボット20の動作中においてツール30の姿勢がほとんど変化しない場合、ロボット20の動作領域内に複数の予め定める待機点を設定して、各待機点においてロボット20の動作が停止しているときに、ターゲット51を回転させてツール30の姿勢を求めるようにしてもよい。
【0087】
本実施の形態のロボットの位置および姿勢検出装置50において、ターゲット距離測定手段はレーザ干渉計51としたけれども、これに限ることなく、たとえばCCDを有する2台のカメラでもよい。
【0088】
【発明の効果】
請求項1記載の本発明によれば、たとえば第1検出手段によって求められる可動体の基準点の絶対位置および絶対姿勢が、第2検出手段によって検出される可動体の相対スライド変位および相対角変位よりも高精度であるけれども、第1検出手段は可動体の基準点の絶対位置および絶対姿勢を連続的に求めることができない場合、または、万一、ターゲットユニットが各撮影手段の死角領域に入ってしまった場合、演算手段は、第1検出手段によって可動体の基準点の絶対位置および絶対姿勢が求められるまでは、第2検出手段によって検出される可動体の相対スライド変位および相対角変位に基づいて、可動体の基準点の位置および姿勢を求めることができる。このように演算手段は、2つの検出手段からの可動体の基準点の絶対位置および絶対姿勢、ならびに可動体の相対スライド変位および相対角変位に基づいて、極めて高精度な可動体の基準点の位置および姿勢を連続的に求めることができる。
【0089】
請求項2記載の本発明によれば、たとえば第1検出手段によって求められる可動体の基準点の絶対位置および絶対姿勢が、第2検出手段によって検出される可動体の相対スライド変位および相対角変位よりも高精度であるけれども、第1検出手段は可動体の基準点の絶対位置および絶対姿勢を連続的に求めることができない場合、または、万一、ターゲットがターゲット距離測定手段の死角領域に入ってしまった場合、演算手段は、第1検出手段によって可動体の基準点の絶対位置および絶対姿勢が求められるまでは、第2検出手段によって検出される可動体の相対スライド変位および相対角変位に基づいて、可動体の基準点の位置および姿勢を求めることができる。このように演算手段は、2つの検出手段からの可動体の基準点の絶対位置および絶対姿勢、ならびに可動体の相対スライド変位および相対角変位に基づいて、極めて高精度な可動体の基準点の位置および姿勢を連続的に求めることができる。
【0090】
請求項3記載の本発明によれば、演算手段からの高精度の可動体の基準点の位置および可動体の姿勢に基づいて、可動体のスライド変位および角変位を高精度に制御することができる。
【図面の簡単な説明】
【図1】
本発明の第1の実施形態の位置および姿勢検出装置10の構成を示すブロック図である。
【図2】ロボット20および複数のカメラ13A,13B,13Cを模式的に示す図である。
【図3】ターゲットユニット11を示す斜視図である。
【図4】カメラ13を用いて、ある点Pのロボット座標系における座標(X,Y,Z)を求める方法を説明するための図である。
【図5】ロボット制御部19によるツール30のスライド変位および角変位を制御する手順を示すフローチャートである。
【図6】ロボット制御部19によるツール30のスライド変位および角変位を制御する方法を説明するための図である。
【図7】ジャイロセンサ15および加速度センサ16によって検出されるツール30の相対角変位および相対スライド変位を主にして、ツール30の基準点の位置および姿勢を制御する場合の、ツール30の基準点の位置および姿勢の実測値の真値からの誤差と時間との関係を示すグラフである。
【図8】本発明の第2の実施形態の位置および姿勢検出装置50の構成を示すブロック図である。
【図9】ロボット20およびレーザ干渉計53を模式的に示す図である。
【図10】レーザ干渉計53およびロボット20における干渉計座標系、付加軸座標系およびロボット座標系を模式的に示す図である。
【図11】ツール30がスライド変位および角変位していない静止状態で、ツール30の基準点の位置および姿勢を検出する方法を説明するための図である。
【図12】ツール30がスライド変位および角変位している動作状態で、ツール30の基準点の位置および姿勢を検出する方法を説明するための図である。
【符号の説明】
10,50 位置姿勢検出装置
11 ターゲットユニット
31,32,33,34;51 ターゲット
13 カメラ
14 画像処理部
15 ジャイロセンサ
16 加速度センサ
18,58 演算部
19 ロボット制御部
30 ツール
52 回転駆動部
53 レーザ干渉計
54 測距処理部[0001]
TECHNICAL FIELD OF THE INVENTION
The present invention relates to a position and posture detection device for a movable body that detects a position and a posture of a tip of a movable body such as a tool connected to a wrist of an industrial robot.
[0002]
[Prior art]
There are various conventional techniques for detecting and controlling the slide displacement and angular displacement of a movable body such as a tool connected to a wrist of an industrial robot. As a prior art, there is a posture detection device in which a gyro is provided at the tip of an arm of an articulated robot. In this attitude detection device, the relative angular displacement of the tip of the arm is detected by a gyro, and the attitude of a tool provided at the tip of the arm is obtained based on the relative angular displacement.
[0003]
As another conventional technique, an ultrasonic transmitter for generating an ultrasonic pulse is provided at the tip of the arm of the robot, and a receiver fixed at a predetermined position receives the ultrasonic pulse from the ultrasonic transmitter to generate an ultrasonic wave. There is a measuring device that obtains a distance between a tip of an arm and a predetermined position based on a time from when a pulse is generated to when it is received, and measures a position and a posture of a tool provided at the tip of the arm.
[0004]
Further, as another conventional technique, when performing teach-back of the articulated robot, a sensor is provided at the end of the arm of the articulated robot, and a tool provided at the end of the arm of the articulated robot by the sensor is provided at a predetermined position. There is a method of measuring a distance from a tip of a calibration jig to be arranged, correcting a change in arm length due to a temperature change, and calibrating each parameter necessary for controlling the robot.
[0005]
[Problems to be solved by the invention]
Industrial robots have high repetition accuracy when repeatedly positioning at a certain position, for example, about 50 micrometers, but absolute accuracy when positioning at a certain predetermined position, especially for a large robot, Since it is as low as about 3 to 4 mm, it is almost always taught in advance by a teach playback method before using the robot. The causes of low absolute accuracy are the geometrical manufacturing error of the robot, the bending of the arm when gripping heavy objects, the expansion and contraction of the arm due to temperature, and the play of the reducer, etc., from each encoder provided at each joint of the robot. This is because the position and orientation of the reference point set on the tool provided at the tip of the arm of the robot based on the detection signal has an error with respect to the command value. This means that the computer generates operation data offline and downloads the operation data to the robot to perform work such as welding, or to install a sensor at the end of the arm and use the robot as a measuring device. It is an obstacle to future development of robots.
[0006]
To solve such a problem, a method of continuously measuring a position and an attitude using an inertial sensor such as a gyro sensor for detecting a relative angular displacement and an acceleration sensor for detecting a relative slide displacement as in the above-described related art. Is a commonly known method used in inertial navigation. If this method can be used to determine the position and posture of the robot arm tip, it is possible to measure the position and posture of the robot continuously from a position remote from the robot, even if it is temporally continuous. There is an advantage in that even if a blind spot occurs depending on the position and posture of the robot, the measurement does not affect the measurement.
[0007]
However, the gyro sensor does not actually detect the relative angular displacement directly, but detects the relative angular displacement by measuring the relative angular velocity and integrating the relative angular velocity with respect to time. Similarly, the acceleration sensor detects the relative slide displacement by measuring the relative acceleration and integrating the relative acceleration twice with respect to time. Therefore, the detection error and the drift accumulate as the displacement amount of the arm tip of the robot increases or as time elapses. Therefore, in such an inertial sensor, the position and posture of the reference point of the tool provided at the tip of the robot arm are used. Cannot be measured with high accuracy. For example, commercially available general-purpose optical fiber gyros and ring laser gyros have a relative acceleration accuracy of at most about 0.01 to 0.03 gravitational acceleration. With such an accuracy, if the robot operates for one second, In the worst case, an error of 5 to 15 cm is accumulated.
[0008]
Also, as in the above-described conventional technique, in measuring the position and orientation of a tool provided at the tip of an arm by ultrasonic waves, a part of the ultrasonic pulse from the ultrasonic transmitter is installed around the robot and the robot. The reflected wave is reflected by a device or the like, and the reflected wave is received by a receiver fixed at a predetermined position, and the distance between the arm tip and the predetermined position cannot be accurately obtained. Also, since the robot operates at high speed, the distance between the tip of the arm and the predetermined position cannot be accurately obtained due to the Doppler effect.
[0009]
Therefore, an object of the present invention is to provide a position and orientation detection device for a movable body that can detect the position of a reference point set on the movable body and the orientation of the movable body with high accuracy.
[0010]
[Means for Solving the Problems]
The present invention according to claim 1 has three targets that are not arranged on the same straight line, and a target unit provided on a movable body;
A plurality of photographing means for photographing a target unit from an imaging position where an absolute position in a predetermined coordinate system is grasped, and generating image data representing an image of the target unit;
First detection means for obtaining an absolute position of a reference point and an absolute posture of the movable body in the coordinate system based on image data from the imaging means;
Second detection means provided on the movable body, for detecting relative slide displacement and relative angular displacement of the movable body,
Arithmetic means for determining the position of the reference point and the attitude of the movable body based on the absolute position and absolute attitude of the reference point from the first detection means and the relative sliding displacement and relative angular displacement of the movable body from the second detection means And a position and orientation detection device for the movable body.
[0011]
According to the present invention, a target unit provided on a movable body has three targets that are not aligned on the same straight line from an imaging position where an absolute position in a predetermined coordinate system is grasped by a plurality of imaging units. The image is captured and image data representing the image of the target unit is generated. If there are a plurality of photographing means, for example, two, the target unit can be binocularly stereoscopically viewed. Further, by using three or more photographing means, it is possible to prevent as much as possible each target from entering the blind spot area of the photographing means due to sliding displacement and angular displacement of the movable body.
[0012]
An absolute position of a reference point and an absolute posture of the movable body in the coordinate system are obtained by the first detecting means based on image data from the photographing means. At this time, in the target unit, since the three targets are not aligned on the same straight line, a plane including the three targets is easily obtained, a normal to the plane is obtained, and a target coordinate system based on the target is determined. Can be requested. Therefore, based on the predetermined coordinate system and the target coordinate system, the absolute position of the reference point and the absolute posture of the movable body in the predetermined coordinate system can be easily and accurately obtained. Further, the second sliding means and the relative angular displacement of the movable body are detected by the second detection means provided on the movable body.
[0013]
The calculating means calculates the reference point of the movable body based on the absolute position and the absolute attitude of the movable body from the first detecting means and the relative sliding displacement and relative angular displacement of the movable body from the second detecting means. The position and attitude of the movable body are required. Thereby, for example, although the absolute position and the absolute posture of the reference point of the movable body determined by the first detecting means are more accurate than the relative sliding displacement and the relative angular displacement of the movable body detected by the second detecting means, If the first detection means cannot continuously determine the absolute position and absolute posture of the reference point of the movable body, or if the target unit enters the blind spot area of each imaging means, the calculation means Until the absolute position and absolute position of the reference point of the movable body are determined by the first detection means, the reference point of the movable body is determined based on the relative sliding displacement and the relative angular displacement of the movable body detected by the second detection means. Can be obtained. In this way, the calculating means determines the reference point of the movable body with extremely high accuracy based on the absolute position and absolute posture of the movable body reference point from the two detecting means, and the relative sliding displacement and relative angular displacement of the movable body. The position and orientation can be determined continuously.
[0014]
According to a second aspect of the present invention, there is provided a target provided on a movable body,
Driving means for driving the target to be angularly displaced about a predetermined axis;
Target distance measurement means for measuring the distance from the distance measurement position at which the absolute position in the predetermined coordinate system is known to the target,
First detection means for obtaining an absolute position of a reference point and an absolute attitude of the movable body in the coordinate system based on the distance measured by the target distance measurement means;
Second detection means provided on the movable body, for detecting relative slide displacement and relative angular displacement of the movable body,
Arithmetic means for determining the position of the reference point and the attitude of the movable body based on the absolute position and absolute attitude of the reference point from the first detection means and the relative sliding displacement and relative angular displacement of the movable body from the second detection means And a position and orientation detection device for the movable body.
[0015]
According to the present invention, the distance from the distance measurement position where the absolute position in the predetermined coordinate system is grasped by the target distance measurement means to the target provided on the movable body and angularly displaced around the axis predetermined by the drive means. Is measured. The first detecting means obtains the absolute position of the reference point and the absolute posture of the movable body in the coordinate system based on the distance measured by the target distance measuring means. When the target is angularly displaced, the target distance measuring means can measure a distance from a distance measuring position at which an absolute position in a predetermined coordinate system is grasped to targets arranged at different angular positions. . At this time, for example, if three angular positions that are not aligned on the same straight line of the target are set, a plane including the three angular positions is easily obtained, and a normal line of the plane is obtained, and the target based on the target is determined. A coordinate system can be determined. Therefore, based on the predetermined coordinate system and the target coordinate system, the absolute position of the reference point and the absolute posture of the movable body in the predetermined coordinate system can be easily and accurately obtained. Further, the second sliding means and the relative angular displacement of the movable body are detected by the second detection means provided on the movable body.
[0016]
The calculating means calculates the reference point of the movable body based on the absolute position and the absolute attitude of the movable body from the first detecting means and the relative sliding displacement and relative angular displacement of the movable body from the second detecting means. The position and attitude of the movable body are required. Thereby, for example, although the absolute position and the absolute posture of the reference point of the movable body determined by the first detecting means are more accurate than the relative sliding displacement and the relative angular displacement of the movable body detected by the second detecting means, If the first detecting means cannot continuously determine the absolute position and absolute attitude of the reference point of the movable body, or if the target enters the blind spot area of the target distance measuring means, the calculating means Until the absolute position and absolute position of the reference point of the movable body are determined by the first detection means, the reference point of the movable body is determined based on the relative sliding displacement and the relative angular displacement of the movable body detected by the second detection means. Can be obtained. In this way, the calculating means determines the reference point of the movable body with extremely high accuracy based on the absolute position and absolute posture of the movable body reference point from the two detecting means, and the relative sliding displacement and relative angular displacement of the movable body. The position and orientation can be determined continuously.
[0017]
According to a third aspect of the present invention, there is further provided a control means for controlling the sliding displacement and the angular displacement of the movable body based on the position of the reference point of the movable body and the attitude of the movable body from the arithmetic means. .
[0018]
According to the present invention, the slide displacement and the angular displacement of the movable body can be controlled with high accuracy based on the position of the highly accurate reference point of the movable body and the attitude of the movable body from the arithmetic means.
[0019]
BEST MODE FOR CARRYING OUT THE INVENTION
FIG. 1 is a block diagram showing a configuration of a position and orientation detection device 10 according to the first embodiment of the present invention. FIG. 2 is a diagram schematically illustrating the robot 20 and the plurality of cameras 13A, 13B, and 13C. The position and orientation detection device (hereinafter, sometimes simply referred to as “position and orientation detection device”) 10 is set on a movable body such as a tool 30 connected to a wrist 24 of a robot 20 such as an industrial robot. The position of the reference point and the posture of the tool 30 are detected, and the sliding displacement and the angular displacement of the tool 30 are controlled.
[0020]
The robot 20 is, for example, a 6-axis vertical articulated robot. The robot 20 has a base 21, a lower arm 22, an upper arm 23, and a wrist 24. The base portion 21 is pivotable about a first axis J1 extending in the vertical direction. The lower arm 22 is connected to the base 21 so as to be angularly displaceable about a second axis J2 extending in the horizontal direction. The upper arm 23 is connected to the upper end of the lower arm 22 such that the base end thereof can be angularly displaced around a third axis J3 extending in the horizontal direction. The wrist 24 is angularly displaceable about a fourth axis J4 extending parallel to the axis of the upper arm 23, and is angularly displaceable about a fifth axis J5 perpendicular to the fourth axis J4. Be linked. The wrist 24 has a flange 25 that can be angularly displaced around a sixth axis J6 perpendicular to the fifth axis J5. The tool 30 such as a hand, a welding torch and a sensor is connected to the flange 25 via a tool changer (not shown) provided on the flange 25.
[0021]
The position and orientation detection device 10 includes a target unit 11, an LED drive unit 12, a camera 13, an image processing unit 14, a gyro sensor 15, an acceleration sensor 16, a signal processing unit 17, a calculation unit 18, and a robot control unit 19. You.
[0022]
FIG. 3 is a perspective view showing the target unit 11. The target unit 11 is provided on either the tool changer or the tool 30. The target unit 11 may be provided at the tip of the upper arm 23 of the robot 20 when the error of the wrist portion is smaller than the error of the entire robot 20. In the present embodiment, the target unit 11 is provided on the tool 30, and is capable of sliding displacement and angular displacement together with the tool 30. The target unit 11 has three targets that are not aligned on the same straight line. In the present embodiment, the target unit 11 has four targets of a first target 31, a second target 32, a third target 33, and a fourth target.
[0023]
The first target 31 to the fourth target 34 are formed in a spherical shape having the same shape, have a light-transmitting property, and have light-emitting diodes (Light Emitting Diodes; abbreviations: LEDs) that emit light of different colors at their centers of gravity. The second target 32 is connected to the first target 32 via a cylindrical first link 35. The third target 33 is connected to the first target 32 via a cylindrical second link 36. The fourth target 34 is connected to the first target 32 via a third link 37 having a cylindrical shape. The first to third links 35 to 37 have exactly the same shape, and have a distance from the center of gravity of the first target 31 to the center of gravity of the second target 32 and a distance from the center of gravity of the first target 31 to the center of gravity of the third target 33. The distance and the distance from the first target 31 to the fourth target 34 are the same. The first link 35, the second link 36, and the third link 37 are arranged such that their axes are orthogonal to each other. The first target 31 of the target unit 11 is arranged such that the center of gravity of the first target 31 becomes a reference point set on the tool 30. The LED drive unit 12 supplies and does not supply drive power required to cause the LEDs provided on the targets 31 to 34 of the target unit 11 to emit light based on the LED control signal from the arithmetic unit 18.
[0024]
The camera 13 serving as an imaging unit is arranged at an imaging position where an absolute position in a robot coordinate system which is a predetermined coordinate system is grasped, and images the target unit 11 from the imaging position to represent an image of the target unit 11. A plurality of image data is generated and provided. In the present embodiment, the robot coordinate system refers to a rectangular coordinate system that includes an x-axis and a y-axis that extend parallel to a floor to which the base unit 21 of the robot 20 is fixed and are orthogonal to each other, and a z-axis that extends vertically upward. System. In the present embodiment, the camera 13 is realized by a CCD camera provided with a solid-state imaging device (Charge Coupled Device; abbreviated as CCD). In the present embodiment, the camera 13 is configured by three cameras, that is, a first camera 13A, a second camera 13B, and a third camera 13C, and is located at different imaging positions at which absolute positions in the robot coordinate system are grasped. Be placed. The imaging position where each of the cameras 13A to 13C is arranged is, in detail, a position outside the operation area of the robot 20 and at which the entire operation area of the robot 20 can be photographed by all the cameras 13A to 13C. Hereinafter, when the first to third cameras 13A to 13C are not distinguished, they may be simply referred to as the camera 13.
[0025]
The image processing unit 14 serving as the first detection unit is realized by, for example, a microcomputer. When a measurement command signal is supplied from the calculation unit 18, the image processing unit 14 performs image processing based on image data from the camera 13 and performs processing in the robot coordinate system. The absolute position of the reference point set in the tool 30 and the absolute attitude of the tool 30 are obtained, and an absolute position / posture detection signal including the obtained absolute position and absolute attitude of the reference point of the tool 30 is provided to the arithmetic unit 18.
[0026]
The gyro sensor 15 and the acceleration sensor 16, which are the second detection means, are provided on either the tool 30 or the tool changer, and are slidable and angularly displaceable together with the tool 30. The gyro sensor 15 detects a relative angular displacement of the tool 30 by detecting an angular velocity of the tool 30, and supplies a relative angular displacement detection signal including the relative angular displacement of the tool 30 to the signal processing unit 17. The acceleration sensor 16 detects a relative slide displacement of the tool 30 by detecting a slide acceleration of the tool 30, and provides a relative slide displacement detection signal including the relative slide displacement of the tool 30 to the signal processing unit 17. In the present embodiment, the second detection means includes a gyro sensor 15 and an acceleration sensor 16. The signal processing unit 17 performs signal processing for converting the relative angular displacement detection signal and the relative slide displacement detection signal from the gyro sensor 15 and the acceleration sensor 16 into a signal that can be processed by the calculation unit 18, A relative displacement detection signal including an angular displacement and a relative slide displacement is given to the arithmetic unit 18.
[0027]
The arithmetic unit 18 as arithmetic means is, for example, a central processing unit (Central
Processing unit (abbreviation: CPU) and the like, and a storage device such as a random access memory, a read-only memory, and a hard disk drive are realized, and generally control the position and orientation detection device 10. The arithmetic unit 18 provides the LED drive unit 12 with an LED control signal indicating supply and non-supply of drive power to each of the targets 31 to 34 of the target unit 11. The arithmetic unit 18 also provides the image processing unit 14 with a measurement command signal indicating that the absolute position of the reference point set on the tool 30 in the robot coordinate system and the absolute posture of the tool 30 are to be obtained. Further, when the command request signal is given from the robot control unit 19, the calculation unit 18 determines the absolute position of the reference point set in the tool 30 in the robot coordinate system included in the absolute position / posture detection signal from the image processing unit 14 and the tool. 30 based on the absolute attitude of the tool 30 and the relative angular displacement of the tool 30 and the relative sliding displacement of the reference point of the tool 30 included in the relative displacement detection signal from the signal processing unit 17. Is obtained, and a control signal including a correction control command value based on the obtained position and posture is given to the robot controller 19.
[0028]
A robot control unit (hereinafter, may be simply referred to as a “control unit”) 19 as a control unit gives a control signal including a preset control command value and a correction command value obtained by the arithmetic unit 18. Command request signal indicating that such a request is made to the arithmetic unit 18. Further, the control unit 19 controls the slide displacement and the angular displacement of the tool 30 based on the control command value and the corrected control command value included in the control signal given from the calculation unit 18. The lower arm 22, the upper arm 23, the wrist 24 and the flange 25 of the robot 20 are mounted on the robot 20 and controlled by a plurality of servomotors (not shown) controlled by the control unit 19. It is angularly displaced around six axes J1 to J6. Thus, the control unit 19 controls the slide displacement and the angular displacement of the tool 30.
[0029]
FIG. 4 is a diagram for explaining a method of obtaining the coordinates (X, Y, Z) of a certain point P in the robot coordinate system using the camera 13. Here, in order to facilitate understanding, a method of obtaining the coordinates (X, Y, Z) of a certain point P in the robot coordinate system when the first camera 13A and the second camera 13B are used will be described. When the point P captured by the first camera 13A is captured as a point Q1 on the imaging surface A1 of the first camera 13A, the coordinates of the point Q1 in the coordinate system of the imaging surface A1 of the first camera 13A are represented by (X C1 , Y C1 ). When the point P captured by the second camera 13B is captured as a point Q2 on the imaging surface A2 of the second camera 13B, the coordinates of the point Q2 in the coordinate system of the imaging surface A2 of the second camera 13B are represented by (X C2 , Y C2 ). At this time, the relation between the point P and the point Q1 is represented by the following equation (1), and the relation between the point P and the point Q2 is represented by the following equation (2).
[0030]
(Equation 1)
Figure 2004050356
[0031]
In the above equation (1), h 1 Is a parameter in the homogeneous coordinate expression, and the left matrix on the right side is a predetermined camera parameter matrix of the first camera 13A. In the above equation (2), h 2 Is a parameter in the homogeneous coordinate expression, and the left matrix on the right side is a predetermined camera parameter matrix of the second camera 13B.
[0032]
The image processing unit 14 determines the coordinates (X) of the point Q1 based on the image data from the first camera 13A. C1 , Y C1 ) And the image data from the second camera 13B, the coordinates (X C2 , Y C2 ) Is calculated, and the above equations (1) and (2) are made simultaneous to obtain each parameter h. 1 , H 2 Is deleted and the coordinates of the point P in the robot coordinate system (X, Y, Z) are rearranged to obtain the following equation (3).
B = AV (3)
[0033]
The matrix B on the left side of the previous equation (3) is expressed by the following equation (5), the matrix A on the left side on the right side is expressed by the following equation (4), and the matrix V on the right side on the right side is expressed by the following equation (6) Is done.
[0034]
(Equation 2)
Figure 2004050356
[0035]
Therefore, the coordinates (X, Y, Z) of the point P in the robot coordinate system are obtained as in the following equation (7).
V = (A T ・ A) -1 ・ A T ・ B… (7)
[0036]
In the above equation (7), T indicates transposition of a matrix.
The method of obtaining the coordinates (X, Y, Z) of the point P in the robot coordinate system is based on the case where two cameras 13 of the first camera 13A and the second camera 13B are used. Even in the above case, the coordinates (X, Y, Z) of the point P in the robot coordinate system can be obtained in the same manner. Thus, the coordinates (X) of the center of gravity L1 of the first target 31 of the target unit 11 in the robot coordinate system L1 , Y L1 , Z L1 ), The absolute position of the reference point set on the tool 30 can be obtained.
[0037]
Further, in this way, the image processing unit 14 can obtain the coordinates of the center of gravity of the first to fourth targets 31 to 34 of the target unit 11 based on the image data from the camera 13. The coordinates of the center of gravity L1 of the first target 31 in the robot coordinate system (X L1 , Y L1 , Z L1 ), The coordinates of the center of gravity L2 of the second target 32 (X L2 , Y L2 , Z L2 ), The coordinates of the center of gravity L3 of the third target 33 (X L3 , Y L3 , Z L3 ), The coordinates of the center of gravity L4 of the fourth target 34 (X L4 , Y L4 , Z L4 ), The first base vector Vx from the first target 31 to the second target 32, the second base vector Vy from the first target 31 to the third target 33, and the second base vector Vy from the first target 31 to the fourth target 34. The three basis vectors Vz are expressed by the following equations (8), (9), and (10), respectively.
[0038]
[Equation 3]
Figure 2004050356
[0039]
In this manner, a target coordinate system including the first to third base vectors Vx, Vy, and Vz orthogonal to each other with the center of gravity L1 of the first target 31 as the coordinate origin is obtained. Thus, since the inclination of the target coordinate system with respect to the robot coordinate system can be determined, the absolute posture of the tool 30 can be obtained.
[0040]
Here, even if any one of the second to fourth targets 32 to 34 of the target unit 11 cannot be photographed by the camera 13, the coordinates of the center of gravity of the three remaining targets including the first target 31 are determined. As a result, a plane including the centers of gravity of the three remaining targets is obtained, so that a normal to this plane can be obtained. Thus, the target coordinate system can be obtained.
[0041]
It takes some time to photograph such a target unit 11 with the camera 13, obtain a target coordinate system based on the image data, and obtain the position of the reference point set in the tool 30 and the posture of the tool 30. For example, since it takes about 0.1 second, the position and orientation of the reference point of the tool 30 are determined by the image processing unit 14, and then the position and orientation of the reference point of the tool 30 are determined by the image processing unit 14. Until the calculation, the calculation unit 18 obtains the position and orientation of the reference point of the tool 30 based on the relative angular displacement and the relative slide displacement detected by the gyro sensor 15 and the acceleration sensor 16.
[0042]
The position and orientation of the reference point of the tool 30 based on the relative angular displacement and relative slide displacement detected by the gyro sensor 15 and the acceleration sensor 16 are compared with the position and orientation of the reference point of the tool 30 obtained by the image processing unit 14. Although the accuracy is low, the position and orientation of the reference point of the tool 30 are newly obtained by the image processing unit 14 until the errors of the relative angular displacement and the relative slide displacement are accumulated. The positions and orientations of the 30 reference points can be obtained.
[0043]
FIG. 5 is a flowchart illustrating a procedure for controlling the slide displacement and the angular displacement of the tool 30 by the robot control unit 19. FIG. 6 is a diagram for explaining a method of controlling the slide displacement and the angular displacement of the tool 30 by the robot control unit 19. A command cycle which is a time interval at which the robot control unit 19 gives a control signal to the robot 20 is set to t seconds. In step s0, the control procedure is started, and proceeds to step s1.
[0044]
In step s1, the operation unit 18 determines that a certain time T i Measured value R indicating the reference point and posture of the tool 30 obtained in i And a preset time T i Command value H indicating the reference point and attitude of tool 30 at i And the error vector Δ i And proceeds to step s2. Here, the subscript i is an integer.
[0045]
In step s2, the arithmetic unit 18 determines the time T i Time T after t seconds from i + 1 The control command value H indicating the preset reference point and posture of the tool 30 of the robot 20 in FIG. i + 1 Is the sum of the error vectors ΣΔ i-1 And the error vector Δ obtained in step s1 i At the time T i + 1 Correction control command value N at i + 1 And proceeds to step s3. Sum of error vectors ΣΔ i-1 Is the time T i Time t before t seconds i-1 The error vector between the actual measurement value indicating the reference point and the attitude of the tool 30 obtained by the arithmetic unit 18 and the control command value indicating the reference point and the attitude of the tool 30 of the robot 20 which has been preset is calculated. It is a sum.
[0046]
In step s3, the calculation unit 18 determines the time T i + 1 , The modified control command value N obtained in step s2 i + 1 Is given to the robot controller 19, and the process proceeds to step s4. In step s4, the subscript i is replaced with i + 1, and the process returns to step s1.
[0047]
By performing control in such a procedure, as shown in FIG. 6, the reference point L11 of the measured value indicating the reference point and the attitude of the tool 30 obtained by the calculation unit 18 is set to the reference point of the tool 30 set in advance. And a locus L10 of the control command value indicating the attitude. Therefore, by providing a control signal including a correction control command value based on the position and orientation of the high-precision reference point of the tool 30 from the calculation unit 18 to the robot control unit 19, the slide displacement and the angular displacement of the tool 30 can be accurately performed. Can be controlled.
[0048]
As described above, according to the position and orientation detection apparatus 10 of the present embodiment, the target unit 11 provided on the tool 30 is moved from the imaging position where the absolute position in the predetermined robot coordinate system is grasped by the plurality of cameras 13. The image data is captured and image data representing the image of the target unit 11 is generated. If there are a plurality of cameras 13, for example, two cameras, the target unit 11 can be binocularly stereoscopically viewed. By using three or more cameras 13, it is possible to prevent the targets 31 to 34 from entering the blind spot area of each camera 13 as much as possible due to the sliding displacement and the angular displacement of the tool 30.
[0049]
The image processing unit 14 obtains the absolute position of the reference point set in the tool 30 and the absolute attitude of the tool 30 in the robot coordinate system based on the image data from the camera 13. At this time, in the target unit 11, since any three targets among the four targets 31 to 34 are not aligned on the same straight line, a plane including the three targets is easily obtained, and a normal to the plane is obtained. , A target coordinate system based on the target can be obtained. Therefore, based on the robot coordinate system and the target coordinate system, the absolute position of the reference point set on the tool 30 and the absolute posture of the tool 30 in the robot coordinate system can be easily and accurately obtained. Further, the gyro sensor 15 and the acceleration sensor 16 provided on the tool 30 detect a relative sliding displacement and a relative angular displacement of the tool 30.
[0050]
The calculating unit 18 determines the tool 30 based on the absolute position and the absolute attitude of the reference point of the tool 30 from the image processing unit 14 and the relative sliding displacement and relative angular displacement of the tool 30 from the gyro sensor 15 and the acceleration sensor 16. The position and orientation of the reference point are determined. Thereby, for example, the absolute position and the absolute posture of the reference point of the tool 30 obtained by the image processing unit 14 are more accurate than the relative sliding displacement and the relative angular displacement of the tool 30 detected by the gyro sensor 15 and the acceleration sensor 16. However, if the image processing unit 14 cannot continuously determine the absolute position and the absolute posture of the reference point of the tool 30, or if the target unit 11 enters the blind spot of each camera 13, Until the image processing unit 14 determines the absolute position and the absolute posture of the reference point of the tool 30, the calculation unit 18 is based on the relative sliding displacement and the relative angular displacement of the tool 30 determined by the gyro sensor 15 and the acceleration sensor 16. , The position and orientation of the reference point of the tool 30 can be obtained. . As described above, the calculation unit 18 performs extremely high-precision based on the absolute position and the absolute posture of the reference point of the tool 30 from the image processing unit 14 and the gyro sensor 15 and the acceleration sensor 16, and the relative slide displacement and the relative angular displacement. The position and orientation of the reference point of the tool 30 can be continuously obtained.
[0051]
Further, according to the position and orientation detection device 10 of the present embodiment, the slide displacement and the angular displacement of tool 30 are controlled with high accuracy based on the position and orientation of the reference point of tool 30 with high accuracy from operation unit 18. be able to.
[0052]
In the position and orientation detection device 10 of the present embodiment, each of the targets 31 to 34 of the target unit 11 is formed in a spherical shape having the same shape, and emits light of different colors by LEDs. The processing unit 14 only needs to be able to distinguish the targets 31 to 34. For example, each of the targets 31 to 34 may have a shape different from each other, for example, spheres having different sizes from each other.
[0053]
In the position and orientation detection device 10 of the present embodiment, the target unit 11 is provided on the tool 30, and the first target 31 is set such that the center of gravity of the first target 31 is a reference point set on the tool 30. Although it is said that it is arranged, it is not limited to this. For example, two target units 11 may be used. In this case, the eight targets emit light in different colors, and the first target 31 of each target unit 11 is arranged, for example, at a position symmetrical with respect to the axis of the wrist 24, and the reference point of the tool 30 is As the center of gravity of 30, the positional relationship between each first target 31 and the reference point of the tool 30 is grasped. By using two target units 11, the possibility that both of the two target units 11 enter the blind spot area of all the cameras 13 is extremely low, so that the target coordinate system can be almost certainly determined, and therefore the tool 30 The position and orientation of the reference point can be reliably obtained.
[0054]
In addition, based on the coordinates of the center of gravity of the first target 31 obtained by the image processing unit 14, the field of view of each camera 13 is narrowed, and the camera 13 is connected to a camera platform having a function of automatically tracking the target unit 11. The camera 13 may be slid and angularly displaced. Thereby, the accuracy of the position and orientation of the reference point of the tool 30 obtained by the image processing unit 14 can be improved.
[0055]
FIG. 7 shows a reference point of the tool 30 when the position and orientation of the reference point of the tool 30 are controlled mainly based on the relative angular displacement and the relative slide displacement of the tool 30 detected by the gyro sensor 15 and the acceleration sensor 16. 6 is a graph showing a relationship between an error from a true value of an actual measured value of the position and the attitude of the subject and time. In the above-described embodiment, the absolute position and the absolute position of the reference point of the tool 30 obtained by the image processing unit 14 are mainly used, and the relative angular displacement and the relative slide of the tool 30 detected by the gyro sensor 15 and the acceleration sensor 16 are used. Although the position and orientation of the reference point of the tool 30 were controlled using the displacement as a subordinate, on the contrary, the relative angular displacement and the relative sliding displacement of the tool 30 detected by the gyro sensor 15 and the acceleration sensor 16 were mainly used, The position and orientation of the reference point of the tool 30 may be controlled using the absolute position and orientation of the reference point of the tool 30 obtained by the image processing unit 14 as a subordinate.
[0056]
In this case, the calculation unit 18 gives a control signal including a correction control command value based on the relative angular displacement and the relative slide displacement of the tool 30 detected by the gyro sensor 15 and the acceleration sensor 16 to the robot control unit 19 for a predetermined time. At time intervals U1, U2, U3,..., Un, control signals including a correction control command value based on the absolute position and absolute posture of the reference point of the tool 30 determined by the image processing unit 14 are given to the robot control unit 19. As a result, as shown by a broken line L12 in FIG. 7, the error included in the correction control command value based on the relative angular displacement and the relative slide displacement detected by the gyro sensor 15 and the acceleration sensor 16 is reduced as much as possible. Can be.
[0057]
Further, for example, a plurality of predetermined standby points may be set in the operation area of the robot 20. In this case, when the robot 20 is placed at the standby point, a control signal including a correction control command value based on the absolute position and the absolute posture of the reference point of the tool 30 obtained by the image processing unit 14 is given to the robot control unit 19. As a result, as shown by the solid line L13 in FIG. 7, the error included in the correction control command value based on the relative angular displacement and the relative slide displacement of the tool 30 detected by the gyro sensor 15 and the acceleration sensor 16 is made substantially zero. Can be.
[0058]
Also, utilizing the high repetition accuracy of the robot 20, the positions and orientations of the reference points of the tool 30 at a plurality of standby points are measured in advance, and when the tool 30 is placed at the standby point, the gyro sensor 15 The position and orientation of the reference point of the tool 30 based on the relative angular displacement and the relative sliding displacement of the tool 30 detected by the acceleration sensor 16 may be replaced with numerical values measured in advance.
[0059]
In the position and orientation detection device 10 of the present embodiment, the target unit 11 is photographed by the camera 13 and the absolute position and the absolute orientation of the reference point of the tool 30 in the robot coordinate system are determined based on the image data. Although the absolute position and the absolute attitude of the reference point of the tool 30 in the system are determined, the present invention is not limited to this. For example, a distance measurement sensor may be installed near the aforementioned standby point to measure the position and orientation of the reference point of the tool 30.
[0060]
When the robot 20 repeatedly performs the operation, the position and orientation of the reference point of the tool 30 may be measured during a dry run, and the control command value may be automatically corrected before the operation. Further, when the sensor is used as the tool 30 and used as a measurement robot for measuring the shape of the work, the influence on the measurement data due to errors in the reference point and the attitude of the tool 30 after the measurement of the work is minimized. be able to.
[0061]
FIG. 8 is a block diagram showing the configuration of the position and orientation detection device 50 according to the second embodiment of the present invention. FIG. 9 is a diagram schematically showing the robot 20 and the laser interferometer 53. The position and orientation detection device (hereinafter, sometimes simply referred to as “position and orientation detection device”) 50 is set on a movable body such as a tool 30 connected to the wrist 24 of the robot 20 such as an industrial robot. The position of the reference point and the posture of the tool 30 are detected, and the sliding displacement and the angular displacement of the tool 30 are controlled. Since the robot 20 is an axially vertical articulated robot similar to the robot 20 in the first embodiment, the same reference numerals are given and the detailed description is omitted. In the present embodiment, the robot coordinate system refers to a rectangular coordinate system that includes an x-axis and a y-axis that extend parallel to a floor to which the base unit 21 of the robot 20 is fixed and are orthogonal to each other, and a z-axis that extends vertically upward. System.
[0062]
The position and orientation detection device 50 includes a target 51, a rotation drive unit 52, a laser interferometer 53, a distance measurement processing unit 54, a gyro sensor 15, an acceleration sensor 16, a signal processing unit 17, a calculation unit 58, and a robot control unit 19. Be composed.
[0063]
The target 51 is provided at one of the tip of the upper arm 23 of the robot 20, the tool changer, and the tool 30. In the present embodiment, the target unit 11 is provided on the tool 30, and is capable of sliding displacement and angular displacement together with the tool 30. The target 51 is realized by, for example, a corner cube prism, and reflects laser light incident on the target 51 from the laser interferometer 53 in a direction parallel to the incident direction of the laser light. The rotation driving unit 52 as a driving unit is realized by, for example, a stepping motor or an induction motor and an encoder, and rotates the target 51 around an additional axis L52 which is a predetermined axis based on a rotation control signal from the arithmetic unit 58. While being driven, the angular position of the target 51 can be detected. At this time, the additional axis L52 is arranged so that the reference point becomes the rotation center of the target 51. In the present embodiment, the rotation includes an angular displacement of less than 360 degrees and a rotation of 360 degrees or more.
[0064]
The laser interferometer 53, which is a target distance measuring means, is arranged at a distance measurement position where the absolute position in the robot coordinate system, which is a predetermined coordinate system, is known, emits laser light, and enters the laser light into the target 51. Then, by causing the reflected light to interfere with the laser light having the same phase as the emitted laser light and counting the number of changes in the maximum value and the minimum value of the interference intensity, the distance from the side distance position to the target 51 is counted. Measure the distance. The laser interferometer 53 has a function of tracking the target 51. The laser interferometer 53 can always make the laser light incident on the target 51 and can detect the emission direction of the laser light.
[0065]
The distance measurement processing unit 54, which is the first detection unit, is implemented by, for example, a microcomputer. When a measurement command signal is given from the calculation unit 58, the distance measured by the laser interferometer 53 and the emission of the detected laser light are provided. Based on the direction, the absolute position of the reference point set in the tool 30 and the absolute posture of the tool 30 in the robot coordinate system are obtained, and the absolute position / posture detection signal including the obtained absolute position and the absolute position of the reference point of the tool 30 is obtained. This is given to the arithmetic unit 58. To be more specific, the distance measurement processing unit 54 determines the tool 30 in the interferometer coordinate system, which is the coordinate system of the laser interferometer 53, based on the distance measured by the laser interferometer 53 and the emission direction of the detected laser beam. , The absolute position and the absolute attitude of the reference point are obtained, and then converted into the absolute position and the absolute attitude of the reference point of the tool 30 in the robot coordinate system.
[0066]
The gyro sensor 15 and the acceleration sensor 16 as the second detecting means are the same as the gyro sensor 15 and the acceleration sensor 16 in the position and orientation detection device 10 of the first embodiment, and thus are denoted by the same reference numerals, and are described in detail. Detailed description is omitted. Since the signal processing unit 17 is the same as the signal processing unit 17 in the position and orientation detection device 10 of the first embodiment, the same reference numeral is assigned and the detailed description is omitted.
[0067]
The arithmetic unit 58, which is an arithmetic unit, is implemented by including an arithmetic processing device such as a CPU, and a storage device such as a random access memory, a read-only memory, and a hard disk drive, and controls the position and orientation detection device 50 as a whole. The arithmetic unit 58 gives a rotation control signal indicating the rotation of the target 51 about the additional axis L52 to the rotation drive unit 52. The calculating unit 18 also calculates the absolute position and the absolute posture of the reference point of the tool 30 set on the tool 30 in the robot coordinate system based on the distance measured by the laser interferometer 53 and the emission direction of the detected laser light. A measurement command signal indicating the determination is given to the distance measurement processing unit 54. Further, when the command request signal is given from the robot control unit 19, the calculation unit 58 calculates the absolute position and the absolute posture of the reference point of the tool 30 in the robot coordinate system included in the absolute position and posture detection signal from the distance measurement processing unit 54. The position and orientation of the reference point of the tool 30 are determined based on the relative angular displacement and relative slide displacement of the tool 30 included in the relative displacement detection signal from the signal processing unit 17, and correction based on the determined position and orientation. A control signal including a control command value is given to the robot controller 19.
[0068]
The robot control unit 19, which is a control unit, is the same as the robot control unit 19 in the position and orientation detection device 10 according to the first embodiment, so that the same reference numerals are given and the detailed description is omitted.
[0069]
FIG. 10 is a diagram schematically illustrating the interferometer coordinate system, the additional axis coordinate system, and the robot coordinate system in the laser interferometer 53 and the robot 20. FIG. 11 is a diagram for explaining a method of detecting the position and orientation of the reference point of the tool 30 in a stationary state where the tool 30 is not slid or angularly displaced. A method for detecting the position and orientation of the reference point of the tool 30 in a stationary state where the tool 30 does not undergo the sliding displacement and the angular displacement will be described below.
[0070]
The calculation unit 58 supplies a rotation control signal indicating that the target 51 is arranged at the predetermined first stationary angle position M1 to the rotation driving unit 52. The rotation drive unit 52 rotates the target 51 around the additional axis L52 based on the rotation control signal and arranges the target 51 at the first stationary angular position M1. At this time, the laser interferometer 53 measures the distance between the target 51 disposed at the first stationary angle position M1 and the distance measurement position, and detects the emission direction of the laser light. Based on the measured distance and the detected emission direction, the distance measurement processing unit 54 determines the coordinates of the first stationary position in the interferometer coordinate system of the interferometer coordinate system of the target 51 disposed at the first stationary angular position M1. Ask for.
[0071]
Subsequently, the arithmetic unit 58 outputs a rotation control signal indicating that the target 51 is to be arranged at the second stationary angle position M2 which is an angular position displaced by 90 degrees in a predetermined rotational direction from the first stationary angle position M1. Give to 52. The rotation drive unit 52 rotates the target 51 around the additional axis L52 based on the rotation control signal and arranges the target 51 at the second stationary angle position M2. At this time, the laser interferometer 53 measures the distance between the target 51 located at the second stationary angle position M2 and the distance measurement position, and detects the emission direction of the laser light. Based on the measured distance and the detected emission direction, the distance measurement processing unit 54 determines the coordinates of the second stationary position of the interferometer coordinate system of the interferometer coordinate system of the target 51 disposed at the second stationary angle position M2 in the interferometer coordinate system. Ask for.
[0072]
Further, the arithmetic unit 58 sends to the rotation drive unit 52 a rotation control signal indicating that the target 51 is located at the third stationary angle position M3 which is an angular position shifted by 270 degrees in the rotation direction from the first stationary angle position M1. give. The rotation drive unit 52 rotates the target 51 around the additional axis L52 based on the rotation control signal and arranges the target 51 at the third stationary angle position M3. At this time, the laser interferometer 53 measures the distance between the target 51 disposed at the third stationary angle position M3 and the distance measurement position, and detects the emission direction of the laser light. Based on the measured distance and the detected emission direction, the distance measurement processing unit 54 calculates the coordinates of the third stationary position in the interferometer coordinate system of the interferometer coordinate system of the target 51 disposed at the third stationary angular position M3. Ask for.
[0073]
As described above, since three stationary positions that are not aligned on the same straight line in the interferometer coordinate system at the three stationary angular positions M1 to M3 of the target 51 have been obtained, the distance measurement processing unit 54 sets the three first to third positions. A plane including the stationary position is obtained, and a rotation center is determined from the three stationary positions and the radius of rotation of the target 51. A first base vector Vx from the rotation center to the first stationary position and a second base vector Vx from the rotation center are determined. A second base vector Vy heading toward the stationary position and a third base vector Vz heading from the rotation center in a direction perpendicular to the plane are obtained. In this way, a target coordinate system composed of the first to third base vectors Vx, Vy, Vz orthogonal to each other with the rotation center, that is, the reference point as the coordinate origin is obtained. Thus, since the inclination of the target coordinate system with respect to the interferometer coordinate system is known, and the relationship between the robot coordinate system and the interferometer coordinate system is also known, the absolute attitude of the tool 30 can be obtained.
[0074]
Here, even if the laser interferometer 53 cannot make the laser beam incident on the target 51 disposed at the first to third angular positions M1 to M3, the first to third angular positions M1 By arranging the targets 51 at three angular positions that are not on the same straight line other than to M3, the first to third positions of the targets 51 located at these angular positions in the interferometer coordinate system can be obtained. Accordingly, the distance measurement processing unit 54 obtains a plane including three positions, which are the first to third positions in the interferometer coordinate system, and obtains a rotation center from these three positions and the rotation radius of the target 51. A target coordinate system can be obtained by obtaining first to third base vectors Vx, Vy, Vz orthogonal to each other with the rotation center as a coordinate origin.
[0075]
FIG. 12 is a diagram for explaining a method of detecting the position and orientation of the reference point of the tool 30 in an operation state in which the tool 30 is performing sliding displacement and angular displacement. A method for detecting the position and orientation of the reference point of the tool 30 in an operation state where the tool 30 is slid and angularly displaced will be described below.
[0076]
The calculation unit 58 supplies a rotation control signal indicating that the target 51 is rotated at a rotation speed sufficiently higher than the sliding speed of the tool 30 of the robot 20 to the rotation drive unit 52. The rotation drive unit 52 rotates the target 51 about the additional axis L52 at a rotation speed sufficiently higher than the sliding speed of the tool 30 based on the rotation control signal. By rotating the target 51 around the additional axis L52 at a rotational speed sufficiently higher than the sliding speed of the tool 30, a plurality of positions at predetermined time intervals, in this embodiment, three positions of the target 51 at three times are provided. Exists approximately on a plane perpendicular to the additional axis L52 at the latest time among the three times. In FIG. 12, in order to facilitate understanding, the three angular positions D1 to D3 are described as being present on different planes (planes perpendicular to the additional axis L52) so as not to overlap. Actually, there is little space in the direction of arrow C.
[0077]
The laser interferometer 53 measures the distance between the rotating target 51 and the distance measurement position at the above-described predetermined time interval, and detects the emission direction of the laser light. Then, the distance measurement processing unit 54 calculates the coordinates of the target 51 in the interferometer coordinate system at each measured time based on the measured distance and the detected emission direction.
[0078]
A certain measurement time t i In order to obtain the absolute position and the absolute posture of the reference point of the tool 30 at the measurement time t i Are required in the interferometer coordinates of the target 51 at three times including In the present embodiment, the measurement time t i And the measurement time t i The first past time t earlier by a predetermined time interval than i-1 And the first past time t i-1 Second past time t earlier by a predetermined time interval than i-2 And the coordinates of the target 51 in the interferometer coordinates.
[0079]
Measurement time t i , The target 51 moves from the predetermined reference angle position W to the first angle θ in the rotation direction. i It is assumed that it is at the first rotation angle position D1 that has been angularly displaced by only. Also, the first past time t i-1 , The target 51 moves from the reference angle position W to the rotation direction in the second angle θ. i-1 It is assumed that it is at the second rotational angle position D2 that is angularly displaced by only Further, the second past time t i-2 , The target 51 moves from the reference angle position W to the third angle θ in the rotation direction. i-2 It is assumed that it is at the third rotational angle position D3 that is angularly displaced by only
[0080]
Each time t is calculated by the laser interferometer 53 and the distance measurement processing unit 54. i-2 , T i-1 , T i Are obtained in the interferometer coordinate system of the respective rotational angle positions D1 to D3 of the target 51 in the above. As described above, these three coordinates are approximately equal to the measurement time t i Exists on a plane perpendicular to the additional axis L52. Therefore, since these three coordinates are not arranged on the same straight line, the distance measurement processing unit 54 obtains the coordinates in the interferometer coordinate system of the center of the circle having the circumference including the three coordinates. The coordinates of the center of the circle are the rotation centers of the target 51, that is, the coordinates of the reference point of the tool 30 in the interferometer coordinate system. Since the relationship between the robot coordinate system and the interferometer coordinate system is known, the absolute position of the reference point of the tool 30 can be obtained.
[0081]
Further, the distance measurement processing unit 54 obtains a plane including the above-described three coordinates, and also obtains the three coordinates, the rotation speed of the target 51, a predetermined time interval, and the first to third angles θ. i ~ Θ i-2 , The coordinates of the reference angular position W in the interferometer coordinate system are determined. Further, the distance measurement processing unit 54 sets a first base vector Vx from the rotation center toward the reference angular position W parallel to the plane from the rotation center and an angle of 90 degrees in the rotation direction to the first base vector Vx. A second base vector Vy to be formed and a third base vector Vz from the rotation center in a direction perpendicular to the plane are obtained. In this way, a target coordinate system composed of the first to third base vectors Vx, Vy, Vz orthogonal to each other with the rotation center, that is, the reference point as the coordinate origin is obtained. Thus, since the inclination of the target coordinate system with respect to the interferometer coordinate system is known, and the relationship between the robot coordinate system and the interferometer coordinate system is also known, the absolute attitude of the tool 30 can be obtained.
[0082]
By rotating the target 51 at a rotation speed sufficiently higher than the sliding speed of the tool 30 of the robot 20, the distance between the target 51 and the rotation center is set to 100 mm, and the tool 30 of the robot 20 is set to 1 mm If the target 51 is rotated by 90 degrees during the sliding displacement, tan -1 The absolute posture of the tool 30 can be obtained with an accuracy of (1/100) ≒ 0.5 degrees.
[0083]
As described above, according to the position and orientation detection device 50 of the present embodiment, the laser interferometer 53 is provided on the tool 30 from the distance measurement position where the absolute position in the robot coordinate system is grasped, and the rotation drive unit 52 Thus, the distance to the target 51 rotating about the additional axis L52 is measured, and the emission direction of the laser light is detected. Based on the distance measured by the laser interferometer 53 and the detected emission direction of the laser beam by the distance measurement processing unit 54, the absolute position of the reference point set in the tool 30 and the absolute attitude of the tool 30 in the robot coordinate system Is required. When the target 51 is angularly displaced, the laser interferometer 53 measures the distance from the ranging position where the absolute position in the robot coordinate system is grasped to the targets 51 arranged at three different angular positions. , The direction of emission of the laser beam can be detected. At this time, for example, when three different positions of the target 51 are not aligned on the same straight line, a plane including the three positions is easily obtained, the normal of the plane is determined, and the target 51 is used as a reference. A target coordinate system can be determined. Therefore, based on the robot coordinate system, the interferometer coordinate system, and the target coordinate system, the absolute position of the reference point set on the tool 30 and the absolute posture of the tool 30 in the robot coordinate system can be easily and accurately obtained. Further, the gyro sensor 15 and the acceleration sensor 16 provided on the tool 30 detect a relative sliding displacement and a relative angular displacement of the tool 30.
[0084]
Based on the absolute position and absolute posture of the reference point of the tool 30 from the distance measurement processing unit 54 and the relative sliding displacement and relative angular displacement of the tool 30 from the gyro sensor 15 and the acceleration sensor 16, The positions and postures of 30 reference points are obtained. Thereby, for example, the absolute position and the absolute attitude of the reference point of the tool 30 obtained by the distance measurement processing unit 54 have higher accuracy than the relative sliding displacement and the relative angular displacement of the tool 30 detected by the gyro sensor 15 and the acceleration sensor 16. However, when the distance measurement processing unit 54 cannot continuously determine the absolute position and the absolute attitude of the reference point of the tool 30, or the target 51 enters the blind spot area of the laser interferometer 53. In this case, the calculation unit 58 determines the relative sliding displacement and relative displacement of the tool 30 detected by the gyro sensor 15 and the acceleration sensor 16 until the distance measurement processing unit 54 obtains the absolute position and the absolute attitude of the reference point of the tool 30. The position and orientation of the reference point of the tool 30 can be obtained based on the angular displacement. . As described above, based on the absolute position and absolute attitude of the reference point of the tool 30 from the distance measurement processing unit 54, the gyro sensor 15 and the acceleration sensor 16, and the relative sliding displacement and relative angular displacement of the tool 30, an extremely accurate tool The positions and orientations of the 30 reference points can be determined continuously.
[0085]
Further, according to the robot position and orientation detection device 50 of the present embodiment, the slide displacement and angular displacement of the tool 30 can be accurately determined based on the position and orientation of the high-precision reference point of the tool 30 from the calculation unit 58. Can be controlled.
[0086]
In the robot position and posture detection device 50 of the present embodiment, when the posture of the tool 30 hardly changes during the operation of the robot 20, a plurality of predetermined standby points are set in the operation area of the robot 20, When the operation of the robot 20 is stopped at the standby point, the posture of the tool 30 may be obtained by rotating the target 51.
[0087]
In the position and orientation detection device 50 of the robot of the present embodiment, the target distance measuring means is the laser interferometer 51. However, the present invention is not limited to this. For example, two cameras having CCDs may be used.
[0088]
【The invention's effect】
According to the first aspect of the present invention, for example, the absolute position and absolute position of the reference point of the movable body determined by the first detecting means are relative sliding displacement and relative angular displacement of the movable body detected by the second detecting means. Although the first detection means cannot obtain the absolute position and the absolute attitude of the reference point of the movable body continuously even though the accuracy is higher than that of the movable body, or the target unit enters the blind spot area of each photographing means. If it has, the calculating means calculates the relative sliding displacement and relative angular displacement of the movable body detected by the second detecting means until the first detecting means obtains the absolute position and the absolute position of the reference point of the movable body. Based on this, the position and orientation of the reference point of the movable body can be obtained. In this way, the calculating means determines the reference point of the movable body with extremely high accuracy based on the absolute position and absolute posture of the movable body reference point from the two detecting means, and the relative sliding displacement and relative angular displacement of the movable body. The position and orientation can be determined continuously.
[0089]
According to the second aspect of the present invention, for example, the absolute position and absolute position of the reference point of the movable body determined by the first detecting means are relative sliding displacement and relative angular displacement of the movable body detected by the second detecting means. Although the first detection means cannot obtain the absolute position and the absolute attitude of the reference point of the movable body continuously, or the target enters the blind spot area of the target distance measurement means although the accuracy is higher than that of the target distance measurement means. If it has, the calculating means calculates the relative sliding displacement and relative angular displacement of the movable body detected by the second detecting means until the first detecting means obtains the absolute position and the absolute position of the reference point of the movable body. Based on this, the position and orientation of the reference point of the movable body can be obtained. In this way, the calculating means determines the reference point of the movable body with extremely high accuracy based on the absolute position and absolute posture of the movable body reference point from the two detecting means, and the relative sliding displacement and relative angular displacement of the movable body. The position and orientation can be determined continuously.
[0090]
According to the third aspect of the present invention, it is possible to control the slide displacement and the angular displacement of the movable body with high accuracy based on the position of the highly accurate reference point of the movable body and the attitude of the movable body from the arithmetic means. it can.
[Brief description of the drawings]
FIG.
FIG. 1 is a block diagram illustrating a configuration of a position and orientation detection device 10 according to a first exemplary embodiment of the present invention.
FIG. 2 is a diagram schematically showing a robot 20 and a plurality of cameras 13A, 13B, 13C.
FIG. 3 is a perspective view showing a target unit 11;
FIG. 4 is a diagram for explaining a method of obtaining coordinates (X, Y, Z) of a certain point P in a robot coordinate system by using a camera 13;
FIG. 5 is a flowchart showing a procedure for controlling the slide displacement and the angular displacement of the tool 30 by the robot control unit 19;
FIG. 6 is a diagram for explaining a method of controlling the slide displacement and the angular displacement of the tool 30 by the robot control unit 19;
FIG. 7 shows a reference point of the tool 30 when the position and orientation of the reference point of the tool 30 are controlled mainly based on the relative angular displacement and the relative slide displacement of the tool 30 detected by the gyro sensor 15 and the acceleration sensor 16. 6 is a graph showing a relationship between an error from a true value of an actual measured value of the position and the attitude of the subject and time.
FIG. 8 is a block diagram illustrating a configuration of a position and orientation detection device 50 according to a second embodiment of the present invention.
FIG. 9 is a diagram schematically showing a robot 20 and a laser interferometer 53.
FIG. 10 is a diagram schematically showing an interferometer coordinate system, an additional axis coordinate system, and a robot coordinate system in the laser interferometer 53 and the robot 20.
FIG. 11 is a diagram for explaining a method of detecting the position and orientation of a reference point of the tool 30 in a stationary state where the tool 30 is not slid or angularly displaced.
FIG. 12 is a diagram for explaining a method of detecting a position and a posture of a reference point of the tool 30 in an operation state in which the tool 30 performs a sliding displacement and an angular displacement.
[Explanation of symbols]
10,50 Position and orientation detection device
11 Target unit
31, 32, 33, 34; 51 targets
13 Camera
14 Image processing unit
15 Gyro sensor
16 acceleration sensor
18,58 arithmetic unit
19 Robot controller
30 tools
52 rotation drive
53 laser interferometer
54 Distance measuring unit

Claims (3)

同一直線上に並ばない3個のターゲットを有し、可動体に設けられるターゲットユニットと、
予め定める座標系における絶対位置が把握されている撮像位置からターゲットユニットを撮影して、ターゲットユニットの画像を表す画像データを生成する複数の撮影手段と、
撮影手段からの画像データに基づいて、前記座標系における可動体に設定された基準点の絶対位置および可動体の絶対姿勢を求める第1検出手段と、
可動体に設けられ、可動体の相対スライド変位および相対角変位を検出する第2検出手段と、
第1検出手段からの基準点の絶対位置および絶対姿勢と、第2検出手段からの可動体の相対スライド変位および相対角変位とに基づいて、基準点の位置および可動体の姿勢を求める演算手段を備えることを特徴とする可動体の位置および姿勢検出装置。
A target unit having three targets that are not aligned on the same straight line and provided on the movable body;
A plurality of photographing means for photographing a target unit from an imaging position where an absolute position in a predetermined coordinate system is grasped, and generating image data representing an image of the target unit;
First detection means for obtaining an absolute position of a reference point and an absolute posture of the movable body in the coordinate system based on image data from the imaging means;
Second detection means provided on the movable body, for detecting relative slide displacement and relative angular displacement of the movable body,
Arithmetic means for determining the position of the reference point and the attitude of the movable body based on the absolute position and absolute attitude of the reference point from the first detection means and the relative sliding displacement and relative angular displacement of the movable body from the second detection means A position and orientation detection device for a movable body, comprising:
可動体に設けられるターゲットと、
ターゲットを予め定める軸線まわりに角変位駆動する駆動手段と、
予め定める座標系における絶対位置が把握されている測距位置からターゲットまでの距離を測定するターゲット距離測定手段と、
ターゲット距離測定手段によって測定された距離に基づいて、前記座標系における可動体に設定された基準点の絶対位置および可動体の絶対姿勢を求める第1検出手段と、
可動体に設けられ、可動体の相対スライド変位および相対角変位を検出する第2検出手段と、
第1検出手段からの基準点の絶対位置および絶対姿勢と、第2検出手段からの可動体の相対スライド変位および相対角変位とに基づいて、基準点の位置および可動体の姿勢を求める演算手段を備えることを特徴とする可動体の位置および姿勢検出装置。
A target provided on the movable body,
Driving means for driving the target to be angularly displaced about a predetermined axis;
Target distance measurement means for measuring the distance from the distance measurement position at which the absolute position in the predetermined coordinate system is known to the target,
First detection means for obtaining an absolute position of a reference point and an absolute attitude of the movable body in the coordinate system based on the distance measured by the target distance measurement means;
Second detection means provided on the movable body, for detecting relative slide displacement and relative angular displacement of the movable body,
Arithmetic means for determining the position of the reference point and the attitude of the movable body based on the absolute position and absolute attitude of the reference point from the first detection means and the relative sliding displacement and relative angular displacement of the movable body from the second detection means A position and orientation detection device for a movable body, comprising:
演算手段からの可動体の基準点の位置および可動体の姿勢に基づいて、可動体のスライド変位および角変位を制御する制御手段をさらに備えることを特徴とする請求項1または2記載の可動体の位置および姿勢検出装置。3. The movable body according to claim 1, further comprising control means for controlling a sliding displacement and an angular displacement of the movable body based on a position of a reference point of the movable body and a posture of the movable body from the arithmetic means. Position and attitude detection device.
JP2002211553A 2002-07-19 2002-07-19 Industrial robot control method and control apparatus Expired - Fee Related JP3754402B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002211553A JP3754402B2 (en) 2002-07-19 2002-07-19 Industrial robot control method and control apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002211553A JP3754402B2 (en) 2002-07-19 2002-07-19 Industrial robot control method and control apparatus

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2005172874A Division JP4015161B2 (en) 2005-06-13 2005-06-13 Industrial robot controller

Publications (2)

Publication Number Publication Date
JP2004050356A true JP2004050356A (en) 2004-02-19
JP3754402B2 JP3754402B2 (en) 2006-03-15

Family

ID=31934758

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002211553A Expired - Fee Related JP3754402B2 (en) 2002-07-19 2002-07-19 Industrial robot control method and control apparatus

Country Status (1)

Country Link
JP (1) JP3754402B2 (en)

Cited By (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010534316A (en) * 2007-07-10 2010-11-04 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ System and method for capturing movement of an object
WO2011125581A1 (en) * 2010-04-05 2011-10-13 Ntn株式会社 Remotely operated actuator
KR101175769B1 (en) 2012-04-02 2012-08-21 한국생산기술연구원 Safety diagnosis apparatus for construction and safety diagnosis method for construction using the same
WO2012115166A1 (en) * 2011-02-24 2012-08-30 オリンパス株式会社 Master operation input device and master-slave manipulator
JP2012196749A (en) * 2011-03-23 2012-10-18 Seiko Epson Corp Robot device
US8451223B2 (en) 2007-09-06 2013-05-28 Samsung Electronics Co., Ltd. Pointing apparatus, pointer control apparatus, pointing method, and pointer control method
US8565390B2 (en) 1999-01-28 2013-10-22 International Business Machines Corporation Dynamically reconfigurable distributed interactive voice response system
JP2014159080A (en) * 2014-06-13 2014-09-04 Seiko Epson Corp Robot
JP2015000452A (en) * 2013-06-17 2015-01-05 川崎重工業株式会社 Work operation regulating system and method
EP2340772A4 (en) * 2008-08-12 2015-07-08 Ntn Toyo Bearing Co Ltd Remote-controlled actuator
CN105486328A (en) * 2015-12-14 2016-04-13 天津航天中为数据系统科技有限公司 Method and device for restraining drift of gyroscope
CN106794475A (en) * 2014-07-17 2017-05-31 约翰内斯·韦海宁 The method of injection of material equipment and the injection direction for control device
CN107498590A (en) * 2017-08-09 2017-12-22 泗洪县正心医疗技术有限公司 A kind of large scale equipment mobile navigation instrument
JP2018514394A (en) * 2015-03-05 2018-06-07 シンク サージカル, インコーポレイテッド How to position or track tool axes
WO2019115108A1 (en) * 2017-12-14 2019-06-20 J. Wagner Gmbh Method for operating a hand-controlled spraying device, and hand-controlled spraying device
CN112923849A (en) * 2021-01-27 2021-06-08 长春涵智科技有限公司 Space positioning method and system based on contour sensor
CN114295051A (en) * 2021-12-29 2022-04-08 中国科学院近代物理研究所 Automatic positioning device and method for harmonic coil magnetic field measurement
CN114406729A (en) * 2022-02-21 2022-04-29 复旦大学 Large-rotation-angle five-degree-of-freedom parallel mechanism
KR102520214B1 (en) * 2022-12-07 2023-04-11 주식회사 유에이로보틱스 A method for driving a collaborative robot capable of preemptive response and a system therefor
CN116105764A (en) * 2023-04-03 2023-05-12 新乡市高发勘测规划有限公司 Building engineering planning measuring device
CN117086500A (en) * 2023-08-17 2023-11-21 深圳市大德激光技术有限公司 Electrical control system of laser etching equipment
WO2024057764A1 (en) * 2022-09-16 2024-03-21 パナソニックIpマネジメント株式会社 Robot system

Cited By (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8565390B2 (en) 1999-01-28 2013-10-22 International Business Machines Corporation Dynamically reconfigurable distributed interactive voice response system
JP2010534316A (en) * 2007-07-10 2010-11-04 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ System and method for capturing movement of an object
US8451223B2 (en) 2007-09-06 2013-05-28 Samsung Electronics Co., Ltd. Pointing apparatus, pointer control apparatus, pointing method, and pointer control method
EP2340772A4 (en) * 2008-08-12 2015-07-08 Ntn Toyo Bearing Co Ltd Remote-controlled actuator
WO2011125581A1 (en) * 2010-04-05 2011-10-13 Ntn株式会社 Remotely operated actuator
US9186796B2 (en) 2011-02-24 2015-11-17 Olympus Corporation Master input device and master-slave manipulator
WO2012115166A1 (en) * 2011-02-24 2012-08-30 オリンパス株式会社 Master operation input device and master-slave manipulator
JP2012171088A (en) * 2011-02-24 2012-09-10 Olympus Corp Master operation input device, and master-slave manipulator
JP2012196749A (en) * 2011-03-23 2012-10-18 Seiko Epson Corp Robot device
KR101175769B1 (en) 2012-04-02 2012-08-21 한국생산기술연구원 Safety diagnosis apparatus for construction and safety diagnosis method for construction using the same
JP2015000452A (en) * 2013-06-17 2015-01-05 川崎重工業株式会社 Work operation regulating system and method
JP2014159080A (en) * 2014-06-13 2014-09-04 Seiko Epson Corp Robot
CN106794475B (en) * 2014-07-17 2021-06-18 迪古里拉上市股份公司 Material ejection apparatus and method for controlling ejection direction of apparatus
CN106794475A (en) * 2014-07-17 2017-05-31 约翰内斯·韦海宁 The method of injection of material equipment and the injection direction for control device
US10688525B2 (en) 2014-07-17 2020-06-23 Tikkurila Oyj Material spraying device and a method for controlling the spraying direction of the device
EP3169442A4 (en) * 2014-07-17 2018-04-25 Vähänen, Johannes Material spraying device and a method for controlling the spraying direction of the device
JP2018514394A (en) * 2015-03-05 2018-06-07 シンク サージカル, インコーポレイテッド How to position or track tool axes
US10792109B2 (en) 2015-03-05 2020-10-06 Think Surgical, Inc. Methods for locating and tracking a tool axis
US11653983B2 (en) 2015-03-05 2023-05-23 Think Surgical, Inc. Methods for locating and tracking a tool axis
CN105486328A (en) * 2015-12-14 2016-04-13 天津航天中为数据系统科技有限公司 Method and device for restraining drift of gyroscope
CN107498590A (en) * 2017-08-09 2017-12-22 泗洪县正心医疗技术有限公司 A kind of large scale equipment mobile navigation instrument
US11813620B2 (en) 2017-12-14 2023-11-14 J. Wagner Gmbh Method of operating a hand-held spray device and hand-held spray device
WO2019115108A1 (en) * 2017-12-14 2019-06-20 J. Wagner Gmbh Method for operating a hand-controlled spraying device, and hand-controlled spraying device
CN112923849B (en) * 2021-01-27 2022-09-13 长春涵智科技有限公司 Space positioning method and system based on contour sensor
CN112923849A (en) * 2021-01-27 2021-06-08 长春涵智科技有限公司 Space positioning method and system based on contour sensor
CN114295051A (en) * 2021-12-29 2022-04-08 中国科学院近代物理研究所 Automatic positioning device and method for harmonic coil magnetic field measurement
CN114406729A (en) * 2022-02-21 2022-04-29 复旦大学 Large-rotation-angle five-degree-of-freedom parallel mechanism
CN114406729B (en) * 2022-02-21 2024-01-26 复旦大学 Large-rotation-angle five-degree-of-freedom parallel mechanism
WO2024057764A1 (en) * 2022-09-16 2024-03-21 パナソニックIpマネジメント株式会社 Robot system
KR102520214B1 (en) * 2022-12-07 2023-04-11 주식회사 유에이로보틱스 A method for driving a collaborative robot capable of preemptive response and a system therefor
CN116105764A (en) * 2023-04-03 2023-05-12 新乡市高发勘测规划有限公司 Building engineering planning measuring device
CN116105764B (en) * 2023-04-03 2023-06-16 新乡市高发勘测规划有限公司 Building engineering planning measuring device
CN117086500A (en) * 2023-08-17 2023-11-21 深圳市大德激光技术有限公司 Electrical control system of laser etching equipment

Also Published As

Publication number Publication date
JP3754402B2 (en) 2006-03-15

Similar Documents

Publication Publication Date Title
JP4015161B2 (en) Industrial robot controller
JP3754402B2 (en) Industrial robot control method and control apparatus
US11408728B2 (en) Registration of three-dimensional coordinates measured on interior and exterior portions of an object
US9400170B2 (en) Automatic measurement of dimensional data within an acceptance region by a laser tracker
US9146094B2 (en) Automatic measurement of dimensional data with a laser tracker
JP5290324B2 (en) Method and system for accurately positioning at least one object in a final pose in space
US7145647B2 (en) Measurement of spatial coordinates
US6044308A (en) Method and device for robot tool frame calibration
CN111226090B (en) Laser tracker with improved roll angle measurement
JP2002090113A (en) Position and attiude recognizing device
JP2001050741A (en) Calibration method and apparatus for robot
JP2002144278A (en) Legged mobile robot
JP4284765B2 (en) Robot hand position measuring device
US10885368B2 (en) Six-dimensional smart target
JPH0854234A (en) Three-dimensional coordinate position measuring method
JP2012145550A (en) Inter-target absolute distance measurement method of tracking laser interference measuring apparatus and tracking laser interference measuring apparatus
JPS5991308A (en) Method for detecting surface configuration
WO2022259538A1 (en) Position-measuring device, position-measuring system, and measuring device
JP3229024B2 (en) 3D position locating device
CN117795290A (en) Position measuring device and position measuring method
JP2009008533A (en) Optical measuring system

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20041022

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20041102

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20041222

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050412

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050613

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20051215

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 3754402

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20081222

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20091222

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20101222

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20111222

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20111222

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20121222

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20121222

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20131222

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20131222

Year of fee payment: 8

LAPS Cancellation because of no payment of annual fees