(57)【要約】      （修正有）【課題】ロボットとセンサシステムのキャリブレーション行うロボットシステムと座標変換方法を提供する。【解決手段】ロボットシステムは、センサシステム２０と、ロボット３０と、ロボット制御装置４０と、を備え、ロボット制御装置４０が、ロボット座標系２０１を認識しているが、センサシステム２０のセンサ座標系２０２を認識しておらず、ロボット制御装置４０が、センサシステム２０によって得られた複数の対象Ｏ又は点の位置座標と、複数の対象Ｏ又は複数の点に対応するロボット座標系２０１におけるＸ軸方向およびＹ軸方向の位置座標とに基づき、センサシステム２０によって得られる位置座標にＸ軸およびＹ軸が含まれる平面内における座標変換を行うための変換行列を作成する。【選択図】図１
2020089963.tif 000002
【特許請求の範囲】
【請求項１】
センサシステムと、
ロボットと、
前記ロボットを制御するロボット制御装置と、を備え、
前記ロボット制御装置が、前記ロボットの座標系であるロボット座標系を認識しているが、前記センサシステムの座標系を認識しておらず、
前記ロボット制御装置が、前記センサシステムによって得られた複数の対象又は点の位置座標と、前記複数の対象又は前記複数の点に対応する前記ロボット座標系におけるＸ軸方向およびＹ軸方向の位置座標とに基づき、前記センサシステムによって得られる位置座標に対してＸ軸およびＹ軸が含まれる平面内における座標変換を行うための変換行列を作成する行列作成処理を行う、ロボットシステム。
【請求項２】
前記ロボット制御装置が、前記複数の対象又は前記複数の点の位置座標と、前記複数の対象又は前記複数の点に対応する位置に前記ロボットの先端部に設けられたタッチアップ部を接触させることによって得られる前記複数の対象又は前記複数の点の前記ロボット座標系における前記位置座標とに基づき、前記変換行列を作成する、請求項１に記載のロボットシステム。
【請求項３】
前記ロボット制御装置が、前記複数の対象又は前記複数の点の位置座標と、前記ロボットと座標系が対応付けられたセンサの検出データに基づき得られる前記複数の対象又は前記複数の点の前記ロボット座標系における前記位置座標とに基づき、前記変換行列を作成する、請求項１に記載のロボットシステム。
【請求項４】
前記変換行列が、前記Ｘ軸および前記Ｙ軸に垂直なＺ軸周りの回転を含む前記座標変換を行うものである、請求項１〜３の何れかに記載のロボットシステム。
【請求項５】
前記対象を移動させるための移動手段と、
前記移動手段によって移動する前記対象の移動量を計測する計測部と、を備え、
前記ロボット制御装置が、前記行列作成処理において、前記センサシステムによって得られた前記複数の対象又は前記複数の点の前記位置座標と、前記センサシステムによって前記位置座標が得られた後に前記移動手段によって移動した前記複数の対象又は前記複数の点に対応する位置に前記タッチアップ部を接触させることによって得られる前記位置座標と、前記計測部によって計測される前記移動量とを用いて、前記変換行列を作成する、請求項２に記載のロボットシステム。
【請求項６】
前記対象を移動させるための移動手段と、
前記移動手段によって移動する前記対象の移動量を計測する計測部と、を備え、
前記ロボット制御装置が、前記行列作成処理において、前記センサシステムによって得られた前記複数の対象又は前記複数の点の前記位置座標と、前記センサシステムによって前記位置座標が得られた後に前記移動手段によって移動した前記複数の対象又は前記複数の点について前記検出データに基づき得られる前記位置座標と、前記計測部によって計測される前記移動量とを用いて、前記変換行列を作成する、請求項３に記載のロボットシステム。
【請求項７】
前記対象又は前記点は２つである、請求項１〜６の何れかに記載のロボットシステム。
【請求項８】
前記対象を移動させるための移動手段を備え、
前記ロボット制御装置が、前記センサシステムによって得られた第２の位置座標であって、前記センサシステムによって得られた前記複数の位置座標に対して前記移動手段の移動方向に位置が異なる第２の位置座標を受付け、前記複数の位置座標の少なくとも１つと前記第２の位置座標とを前記変換行列を用いて座標変換し、座標変換された前記位置座標と前記第２の位置座標との前記Ｘ軸方向の位置の差が基準値内か否か判断する判断処理を行う、請求項１〜４の何れかに記載のロボットシステム。
【請求項９】
前記Ｘ軸方向が、前記移動手段による前記対象の移動方向である、請求項５に記載のロボットシステム。
【請求項１０】
前記ロボット制御装置に入力を行う入力部を備え、
前記ロボット制御装置が、前記入力部への入力に基づき、前記センサシステムの前記座標系が右手座標系であるか左手座標系であるかを認識する、請求項１〜７の何れかに記載にロボットシステム。
【請求項１１】
前記対象を移動させるための移動手段を備え、
前記ロボットが前記対象に対して所定の作業を行うものであり、
前記対象が、前記Ｘ軸および前記Ｙ軸に垂直なＺ軸方向の寸法のばらつきが小さいものである、請求項１〜４の何れかに記載のロボットシステム。
【請求項１２】
センサシステムによって検出された位置座標をロボット制御装置が認識しているロボット座標系上の位置座標に変換する座標変換方法であって、
センサシステムによって得られた複数の対象又は点の位置座標と、前記複数の対象又は前記複数の点に対応する前記ロボット座標系におけるＸ軸方向およびＹ軸方向の位置座標とに基づき、前記センサシステムよって得られる位置座標に対してＸ軸およびＹ軸が含まれる平面内における座標変換を行うための変換行列を作成し、
前記センサシステムによって検出された位置座標を前記変換行列を用いて変換する、座標変換方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はロボットシステムおよび座標変換方法に関する。
【背景技術】
【０００２】
従来、搬送装置によって移動している対象に対して作業を行うロボットと、ロボットを制御するロボット制御装置と、ロボット制御装置によって制御されるビジョンシステムと、搬送装置による対象の移動量を計測する計測部とを備え、ビジョンシステムによって得られた画像中で対象の位置が検出され、検出された位置と計測部により計測される移動量とに基づきロボットが制御されるロボットシステムが知られている（例えば、特許文献１参照。）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特許第４０２２８４３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
前記ビジョンシステムはロボットの製造会社によって設計されたロボット制御用のものであり、ロボットの制御に特化したものである。一般的に、ロボット制御装置およびビジョンシステムは互いに適合するように作られ、ビジョンシステムによって得られる情報、データ等はロボット制御装置での使用に適したものである。また、ロボット制御装置およびビジョンシステムにはキャリブレーションのためのプログラムが格納されており、ドットパターンもしくはそれに類するものを有するキャリブレーション冶具を用いて半自動的又は自動的にキャリブレーションが行われる。
【０００５】
ドットパターンの間隔寸法は既知である。このため、前記キャリブレーションでは、例えば、ビジョンシステムの固定されたカメラによって得られたドットパターンの画像に基づき、キャリブレーション冶具に対するカメラの位置がビジョンシステムの制御部によって特定される。また、ドットパターンの複数個所にロボットの先端部に設けられた所定のツールを接触させることによって、ロボット座標系におけるキャリブレーション冶具の位置がロボット制御部によって特定される。その他、レンズのゆがみ等の内部パラメータ導出等のための様々な処理が行われる。このような処理が半自動的又は自動的に行われ、ロボット制御部がビジョンシステムの座標系を認識し、ロボット制御部が、ビジョンシステムからのデータに基づき、ロボット座標系上において各対象の位置データを正確に認識できるようになる。
なお、ここでは固定カメラの場合を述べたが、カメラをロボットアームに固定した場合も同様である。この場合は、撮像時のロボット位置も使ってカメラの位置が同定される。
【０００６】
一方、例えば検査装置やロボットの動作性能を超える高精度な計測器の製造会社等によって製造されるセンサシステムは、前記ビジョンシステムよりも優れた機能を有する場合がある。このため、センサシステムを用いたロボットのトラッキング制御の要望が出てきている。しかし、センサシステムのセンサおよびセンサ制御装置はロボットの制御用ではない。センサシステムが検査以外の用途に用いられるものである場合も同様である。このようなセンサシステムはその用途に適した仕様およびインターフェースを備えており、センサシステムのセンサおよびセンサ制御装置内で行われる処理も前記用途に特化したものである。このため、センサシステムはロボットの制御に適した情報、データ等を提供できるものではなく、センサシステムは、ロボットの制御に用いられるキャリブレーション冶具を用いてセンサの位置(外部パラメータ)を特定できるものでもない。上記のように複雑なキャリブレーションを行うプログラムを使えないので、通常はロボットの制御用のビジョンシステムの導入が検討される。
【０００７】
前述の事情に鑑み、検査装置や高精度な計測器の製造会社等によって製造されるセンサシステムとロボットとのキャリブレーションを、ロボットが行う作業に関して行うことができるロボットシステムおよび座標変換方法の提供が望まれている。
【課題を解決するための手段】
【０００８】
第１の態様のロボットシステムは、センサシステムと、ロボットと、前記ロボットを制御するロボット制御装置と、を備え、前記ロボット制御装置が、前記ロボットの座標系であるロボット座標系を認識しているが、前記センサシステムの座標系を認識しておらず、前記ロボット制御装置が、前記センサシステムによって得られた複数の対象又は点の位置座標と、前記複数の対象又は前記複数の点に対応する前記ロボット座標系におけるＸ軸方向およびＹ軸方向の位置座標とに基づき、前記センサシステムによって得られる位置座標に対してＸ軸およびＹ軸が含まれる平面内における座標変換を行うための変換行列を作成する行列作成処理を行う。
【０００９】
第２の態様の座標変換方法は、センサシステムによって検出された位置座標をロボット制御装置が認識しているロボット座標系上の位置座標に変換する座標変換方法であって、センサシステムによって得られた複数の対象又は点の位置座標と、前記複数の対象又は前記複数の点に対応する前記ロボット座標系におけるＸ軸方向およびＹ軸方向の位置座標とに基づき、前記センサシステムよって得られる位置座標に対してＸ軸およびＹ軸が含まれる平面内における座標変換を行うための変換行列を作成し、前記センサシステムによって検出された位置座標を前記変換行列を用いて変換する。
【発明の効果】
【００１０】
上記態様によれば、検査装置の製造会社や高精度な計測器の製造会社等によって製造されるセンサシステムとロボットとのキャリブレーションを、ロボットが行う作業に関して行うことができる。
【図面の簡単な説明】
【００１１】
【図１】第１実施形態の検出システムが使用されるロボットシステムの構成を示す図である。
【図２】第１実施形態の検出システムの制御ユニットのブロック図である。
【図３】第１実施形態の検出システムによって検出される対象の動作説明図である。
【図４】第１実施形態の検出システムを用いたキャリブレーションの一例を示すフローチャートである。
【図５】第１実施形態の検出システムを用いたキャリブレーションの変形例を示すフローチャートである。
【図６】第２実施形態の検出システムによって検出される対象の動作説明図である。
【図７】第２実施形態の検出システムを用いたキャリブレーションの一例を示すフローチャートである。
【図８】第２実施形態の検出システムを用いたキャリブレーションの一例を示すフローチャートである。
【図９】第２実施形態の検出システムを用いたキャリブレーションの変形例を示すフローチャートである。
【図１０】第２実施形態の検出システムによって検出される他の対象の動作説明図である。
【図１１】第１および第２実施形態の検出システムが使用されるロボットシステムの変形例の構成を示す図である。
【発明を実施するための形態】
【００１２】
第１実施形態に係るロボットシステムが、図面を用いながら以下説明されている。
本実施形態のロボットシステムは、図１および図２に示されるように、物品（対象）Ｏを移動させる移動手段としての搬送装置（移動手段）１０と、センサシステム２０と、ロボット３０と、ロボット３０を制御するロボット制御装置４０とを備えている。搬送装置１０の搬送方向とロボット３０の座標系であるロボット座標系２０１のＸ軸方向が一致しており、搬送装置１０の搬送面に垂直な方向とロボット座標系２０１のＺ軸方向とが一致しており、ロボット座標系２０１のＹ軸方向は搬送装置１０の幅方向と一致するように取られている。本実施形態ではＺ軸方向は鉛直方向である。
【００１３】
各対象Ｏがワークである場合、ロボット３０は各対象Ｏに対して取出し、加工等の作業を行う。各対象Ｏが単一のワーク上に形成された穴であってもよい。この場合、ロボット３０は各対象Ｏに対して加工、部品取付け等の作業を行う。
【００１４】
搬送装置１０は、搬送される対象Ｏの移動量を検出することができるエンコーダ等の計測部１０ａを有する。計測部１０ａは例えば搬送装置１０を駆動するモータ１０ｂ内に設けられている。もしくはエンコーダ先端にローラを付けて、そのローラをコンベヤ面に押し当てても良い。計測部１０ａはロボット制御装置４０に接続され、計測部１０ａの検出結果が常にロボット制御装置４０に送られている。
【００１５】
センサシステム２０は、例えば、搬送装置１０によって搬送される対象Ｏの検査を行うためのシステムである。センサシステム２０は、センサ２１と、センサ２１で得られたデータを処理する処理部２２と、処理部２２によって得られた処理後データを用いて判断を行う判断部２３とを備えている。処理部２２および判断部２３は例えばセンサ制御装置２４内に設けられている。
なお、処理部２２および判断部２３はセンサ２１に内蔵されても良い。
【００１６】
センサ２１は、対象Ｏの位置を検出するためのデータを得ることができるものでればよく、例えば二次元カメラ、三次元カメラ、三次元距離センサ等である。本実施形態では、センサ２１は搬送装置１０の上方に配置され、センサ２１の光軸はＺ軸と平行である。つまり、搬送装置１０の搬送面に対してセンサ２１はその光軸が略垂直となるように配置されている。
【００１７】
センサ制御装置２４は、ＣＰＵ等のプロセッサ、不揮発性ストレージ、ＲＯＭ、ＲＡＭ等の記憶部、キーボード等の入力部、ディスプレイ等を有するものであり、ロボット制御装置４０と接続されている。記憶部に格納されているプログラムに基づき作動するプロセッサによって、処理部２２および判断部２３が実現される。
前記検査は如何なる検査であってもよく、処理部２２は、周知の画像処理等を行うことによって処理後データを作成し、判断部２３は処理後データに基づき各対象Ｏについて例えば部品検査又は製品検査の一環として合否判断を行う。
【００１８】
また、処理部２２又は判断部２３は、処理後または処理前のデータを用いて、各対象Ｏの少なくとも位置を検出する。なお、処理部２２又は判断部２３が、各対象Ｏの位置および姿勢を検出してもよい。
また、検出される各対象Ｏの位置は、センサ２１によって得られたデータ上の各対象Ｏの位置又は処理後データ上の各対象Ｏの位置であってもよい。
【００１９】
ロボット３０は特定の種類のロボットに限定されないが、本実施形態のロボット３０は、複数の可動部をそれぞれ駆動する複数のサーボモータ３１（図３参照）を備える垂直多関節ロボットである。なお、複数の可動部によってロボット３０のアーム３０ａが構成されている。各サーボモータ３１はその作動位置を検出するための作動位置検出装置を有し、作動位置検出装置は一例としてエンコーダである。作動位置検出装置の検出値はロボット制御装置４０に送信される。ロボット３０は、水平多関節ロボット、マルチリンクロボット等であってもよい。
【００２０】
ロボット制御装置４０は、一例では、図３に示されるように、ＣＰＵ等のプロセッサ４１と、表示装置４２と、不揮発性ストレージ、ＲＯＭ、ＲＡＭ等を有する記憶部４３と、ロボット３０のサーボモータ３１にそれぞれ対応している複数のサーボ制御器４４と、操作盤等の入力部４５とを備えている。
【００２１】
記憶部４３にはシステムプログラム４３ａが格納されており、システムプログラム４３ａはロボット制御装置４０の基本機能を担っている。また、記憶部４３には動作プログラム４３ｂおよび追随制御プログラム４３ｃも格納されており、各プログラムに基づきプロセッサ４１がロボット３０の各サーボモータ３１およびロボット３０の先端部のツールＴを制御し、これにより搬送装置１０によって搬送されている対象Ｏにロボット３０が作業を行う。また、記憶部４３にはキャリブレーションプログラム４３ｄが格納されている。
【００２２】
本実施形態では、センサ２１の検出範囲ＡＲ１はロボット３０の作業範囲ＡＲ２に対して搬送装置１０の搬送方向の上流側に配置され、検出範囲ＡＲ１と作業範囲ＡＲ２とが重複していない。作業範囲ＡＲ２はロボット３０が動ける範囲ではなく、ロボット３０が前記作業を行う範囲である。なお、検出範囲ＡＲ１と作業範囲ＡＲ２とが部分的に重複していてもよい。
【００２３】
ロボット制御装置４０はロボット３０の制御用に作られたものであり、このためロボット制御装置４０はロボット３０の座標系であるロボット座標系２０１を認識している。ロボット制御装置４０は、ロボット３０のアーム３０ａの各可動部およびツールＴのロボット座標系２０１上の位置および姿勢を把握しながら、各サーボモータ３１およびロボット３０の先端部のツールＴを制御する。
【００２４】
ここで、センサシステム２０によって検出された各対象Ｏの位置データをロボット３０の制御に用いるためには、センサシステム２０のセンサ座標系２０２とロボット座標系２０１とを対応付けるためのキャリブレーションを行う必要があるが、センサシステム２０はそのような機能を持っていない。
【００２５】
比較例として、ロボット３０の制御用のビジョンシステムを説明する。ビジョンシステムはロボット３０およびロボット制御装置４０を製造するロボット製造会社によって製造され、ロボット３０の制御に特化したものである。一般的に、ロボット制御装置４０およびビジョンシステムは互いに適合するように作られ、ビジョンシステムによって得られる情報、データ等はロボット制御装置４０での使用に適したものである。また、ロボット制御装置４０およびビジョンシステムにはキャリブレーションのためのプログラムが格納されており、ドットパターンを有するキャリブレーション冶具を用いて半自動的又は自動的にキャリブレーションが行われる。
【００２６】
ドットパターンの間隔寸法は既知である。このため、前記キャリブレーションでは、例えば、ビジョンシステムのカメラによって得られたドットパターンの画像に基づき、キャリブレーション冶具に対するカメラの位置がビジョンシステムの制御部によって特定される。また、ドットパターンの複数個所にロボット３０の先端部に設けられた所定のツールを接触させることによって、ロボット座標系２０１におけるキャリブレーション冶具の位置がロボット制御装置４０によって特定される。その他、両者のスケールの対応、レンズゆがみ除去等のための様々な処理が行われる。このような処理が半自動的又は自動的に行われ、ロボット制御装置４０がビジョンシステムの座標系を認識し、ロボット制御装置４０が、ビジョンシステムからのデータに基づき、ロボット座標系２０１上において各対象Ｏの位置データを認識できるようになる。
【００２７】
一方、センサシステム２０はその製造に特化した会社によって製造され、センサ２１およびセンサ制御装置２４は検査用であり、ロボット３０の制御用ではない。センサシステム２０が検査以外の用途に用いられるものである場合も同様である。このようなセンサシステム２０はその用途に適した仕様およびインターフェースを備えており、センサシステム２０のセンサ２１およびセンサ制御装置２４上で行われる処理も前記用途に特化したものである。このため、センサシステム２０はロボット３０の制御に適した情報、データ等を提供できるものではない。また、センサシステム２０は、ロボット３０の制御に用いられるキャリブレーション冶具を用いてセンサ２１の位置を特定できるものでもない。上記のように複雑なキャリブレーションを行うプログラムを使えない状況において、通常はロボットの制御用のビジョンシステムの導入が検討される。
【００２８】
検査等の特定の用途に特化したセンサシステム２０およびセンサ２１は、ロボット３０の制御用のビジョンシステムよりも優れた機能も持っている場合がある。例えば、センサ２１が高速、高精度である場合、処理部２２における処理が高速、高精度である場合等がある。本実施形態では、センサシステム２０の出力をロボット３０の制御に用いるためのキャリブレーションを行う。
【００２９】
なお、レンズのゆがみ等の内部パラメータ導出やロボット３０との位置関係の導出が可能なセンサシステム２０もある。しかし、計測部１０ａで計測された計測値を使って座標系を合わせるようなものはなく、視野の範囲内にロボット３０の作業範囲があるケースがほとんどである。
【００３０】
なお、本実施形態において、センサシステム２０の内部パラメータや外部パラメータがセンサシステム２０の製造に特化した会社によって専用に用意されたツールを使って求められた状態であってもよい。本実施形態では、センサシステム２０の検出結果とロボット座標系２０１との関係を求めるものであるため、本実施形態が成り立つ。なお、既にセンサシステム２０において検出結果がミリメートル変換されている場合、本実施形態で求めるスケールは理想的には１に近い値になる。
【００３１】
（キャリブレーション例１）
当該キャリブレーションを図４のフローチャートを参照しながら説明する。まず、停止している搬送装置１０上における検出範囲ＡＲ１内に対象Ｏを２つ配置する（ステップＳ１−１）。各対象Ｏがワークである場合、２つの対象Ｏを検出範囲ＡＲ１内の搬送装置１０上に置く。なお、２つの対象Ｏは、１つのワーク上に設けられた２つのねじ穴であってもよく、１つの板の上に設けられた２つのマークであってもよい。なお、キャリブレーションのための対象Ｏとロボット３０が作業を行う対象が異なっていてもよい。この場合、キャリブレーションのための対象ＯのＺ軸方向の位置がロボット３０の作業対象のＺ軸方向の位置に対応している方が好ましい。また、必ずしも１つのワーク上に特徴が設けられていなくてもよい。２つのワークを用いてもよい。このとき、２つのワークの相対関係が変化しないようにコンベヤにテープで固定するなどするとなお好ましい。
【００３２】
続いて、一方の対象Ｏをセンサシステム２０によって位置が検出されない状態とし（ステップＳ１−２）、この状態でロボット制御装置４０からセンサシステム２０に対象Ｏの位置の検出を指示するコマンドが送信され（ステップＳ１−３）、ロボット制御装置４０が１つ目の位置の検出結果Ｐ０をセンサシステム２０から受信する（ステップＳ１−４）。
続いて、他方の対象Ｏをセンサシステム２０によって位置が検出されない状態とし（ステップＳ１−５）、この状態でロボット制御装置４０からセンサシステム２０に対象Ｏの位置の検出を指示するコマンドが送信され（ステップＳ１−６）、ロボット制御装置４０が２つ目の位置の検出結果Ｐ１をセンサシステム２０から受信する（ステップＳ１−７）。
ステップＳ１−２およびＳ１−５では、例えば対象Ｏを布で隠すことによって、対象Ｏの位置が検出されない状態となる。
【００３３】
続いて、搬送装置１０によって２つの対象Ｏを作業範囲ＡＲ２内まで移動させ、搬送装置１０を停止させる（ステップＳ１−８）。そして、他方の対象Ｏの所定位置にロボット３０に取付けられたツールの先端（タッチアップ部）を接触させ（ステップＳ１−９）、その時のツールの先端の位置（ロボット座標系２０１上の位置座標Ｑ０）をロボット制御装置４０の記憶部４３に記憶させる（ステップＳ１−１０）。なお、タッチアップ部はロボット３０の先端部であってもよい。
【００３４】
また、一方の対象Ｏの所定位置にロボット３０のツールの先端（タッチアップ部）を接触させ（ステップＳ１−１１）、その時のツールの先端の位置（ロボット座標系２０１上の位置座標Ｑ１）をロボット制御装置４０の記憶部４３に記憶させる（ステップＳ１−１２）。前記所定位置は、センサシステム２０によって検出された位置に対応した位置であることが好ましい。
続いて、センサシステム２０が検出した任意の点Ｐａの位置のロボット座標系２０１から見た位置（Ｘａ，Ｙａ）を求めるための変換行列を作成する（ステップＳ１−１３）。
【００３５】
変換行列は、ロボット制御装置４０がキャリブレーションプログラム４３ｄに基づき例えば以下の処理によって作成する。
先ず、センサシステム２０が検出したＰ０およびＰ１の位置、つまり、センサ座標系２０２上におけるＰ０の検出された位置座標とＰ１の検出された位置座標との関係から、単位ベクトルが作成され、当該単位ベクトルに対応するセンサＸ―Ｙ座標系が設定される。例えばセンサＸ−Ｙ座標系はセンサ座標系２０２のＸ軸およびＹ軸に平行な平面内に設定される。
一例として、センサ座標系２０２上におけるＰ０の検出された位置座標とＰ１の検出された位置座標との関係から、Ｐ０を原点として、Ｘ軸の単位ベクトルとＹ軸の単位ベクトルが作成され、当該単位ベクトルに対応するセンサＸ―Ｙ座標系が定義される。センサシステム２０の任意の点Ｐａを前記センサＸ―Ｙ座標系での座標に変換する。
【００３６】
また、ロボット座標系２０１上におけるＱ０の位置座標とＱ１の位置座標との関係から、ロボット座標系２０１内にセンサＸ−Ｙ座標系に対応するロボットＸ−Ｙ座標系が設定され、点Ｐａに対応するようにロボット座標系２０１から見た点Ｑａの位置座標が求められる。Ｑａの位置座標は、Ｐ０とＰ１との位置関係とＱ０とＱ１の位置関係とから導かれるスケールｓ（ｍｍ／ｐｉｘｅｌ）が考慮されている。例えばロボットＸ−Ｙ座標系はロボット座標系２０１のＸ軸およびＹ軸に平行な平面内に設定される。ここで、計測部１０ａにより計測される移動量も使って対応付けが行われる。
例えば、ロボット座標系２０１上におけるＱ０の位置座標とＱ１の位置座標との関係から、前記センサＸ―Ｙ座標系に対応するロボットＸ−Ｙ座標系がＱ０を原点として定義される。当該ロボットＸ−Ｙ座標系と前記センサＸ―Ｙ座標系で表現された点Ｐａをまとめることで、画像上の任意の点ＰａのロボットＸ−Ｙ座標系での座標値位置（Ｘａ，Ｙａ）を求めることが可能である。１画素辺りのスケールｓはＰ０とＰ１との位置関係とＱ０とＱ１の位置関係とから導かれる。また計測部１０ａにより計測される移動量も使われる。
【００３７】
続いて、点Ｐａの位置座標と求めた点Ｑａの位置座標との対応関係を用いて、センサ座標系２０２から見た点Ｐａの位置座標をロボット座標系２０１から見た点Ｑａの位置座標に変換するための変換行列を求めることができる。
なお、上記の手法、つまり、対象Ｏの配置関係や移動方向の拘束を用いてタッチアップ点を２点に減らす手法を使わずに、以下の式（１）を用いて、３点をタッチアップして解析的に変換行列を求めることも可能である。また、３点以上をタッチアップすることによって、最小二乗法等の手法を通じて変換行列を数値的に求めることも可能となる。
【００３８】
【数１】
2020089963.tif 000003
なお、Ｈは回転のための数式要素、Ｔは併進のための数式要素を示す。
【００３９】
（キャリブレーション例２）
当該キャリブレーションを図５のフローチャートを参照しながら説明する。まず、キャリブレーション例１と同様に、停止している搬送装置１０上における検出範囲ＡＲ１内に対象Ｏを２つ配置する（ステップＳ２−１）。
【００４０】
続いて、操作者が、センサシステム２０のディスプレイ、その他の表示装置等において、センサ２１により得られた画像又はその処理後データを見て、ロボット３０のツールを接触させる１つ目および２つ目のセンサ座標系２０２上の位置を決定し（ステップＳ２−２）、センサシステム２０を用いて１つ目の点Ｐ０および２つ目の点Ｐ１の位置座標を取得する。例えば、センサシステム２０の表示装置上にあらわれるポインタの位置が当該表示装置に表示される場合は、ポインタを点Ｐ０および点Ｐ１に合わせることによって、点Ｐ０および点Ｐ１の位置座標が得られる。１つ目の点Ｐ０および２つ目の点Ｐ１はロボット３０による作業高さに対応していることが好ましい。
【００４１】
続いて、操作者は入力部４５を用いてロボット制御装置４０に１つ目の点Ｐ０および２つ目の点Ｐ１の位置座標を入力する（ステップＳ２−３）。なお、ステップＳ２−３において、センサシステム２０からロボット制御装置４０にステップＳ２−２において決定された１つ目の点Ｐ０および２つ目の点Ｐ１の位置座標が送信されてもよい。
【００４２】
続いて、キャリブレーション例１のステップＳ１−８〜Ｓ１−１３と同様のステップＳ２−４〜Ｓ２−９が実行され、センサシステム２０が検出した任意の点Ｐａの位置のロボット座標系２０１から見た位置（Ｘａ，Ｙａ）を求めるための変換行列が作成される。
【００４３】
作成された変換行列を用いると、センサシステム２０によって検出された位置座標をロボット座標系上の位置座標に変換することができる。つまり、センサ座標系２０２とロボット座標系２０１とを対応付けるキャリブレーションが完了する。
なお、前記変換行列は、一例として、Ｘ軸およびＹ軸に垂直なＺ軸周りの回転を含む座標変換を行うものである。また、本実施形態の変換行列は、Ｘ軸周りおよびＹ軸周りの回転を含まない座標変換を行うものである。このため、Ｚ軸方向の位置が互いに大きく異なっていない複数の対象Ｏについて、容易且つ確実にキャリブレーションを行うことが可能となる。
【００４４】
上記のようにキャリブレーションが行われた後、ロボット制御装置４０は、センサシステム２０によって得られる各対象Ｏの位置データと、計測部１０ａによって得られる搬送装置１０による各対象Ｏの移動量とを少なくとも用いて、ロボット３０およびツールＴを所定の作業を各対象Ｏに行うために制御する。
【００４５】
本実施形態では、ロボット制御装置４０はロボット３０の先端部に設けられたタッチアップ部の位置を認識しているので、タッチアップ部を複数の対象Ｏに接触させることによって、各対象Ｏのロボット座標系２０１上の位置が得られる。また、センサシステム２０によって検出され、又は、得られた各対象Ｏの位置座標と、タッチアップ部の接触によって得られた各対象Ｏのロボット座標系２０１におけるＸ軸方向およびＹ軸方向の位置座標とに基づき、Ｘ軸およびＹ軸が含まれる平面内における座標変換を行う変換行列を作成できる。このように、複雑な処理を伴うことなく変換行列を作成することができるので、検査装置の製造会社や高精度な計測器の製造会社等によって製造されるセンサシステム２０とロボット３０とのキャリブレーションを容易且つ確実に行うことが可能となる。
【００４６】
また、本実施形態では、変換行列が、Ｘ軸およびＹ軸に垂直なＺ軸周りの回転を含む座標変換を行うものである。
より具体的には、変換行列は、Ｚ軸周りの回転を含む座標変換を行うものであり、Ｘ軸周りおよびＹ軸周りの回転を含まない座標変換を行うものである。この場合、Ｚ方向の位置が互いに大きく異なっていない複数の対象Ｏにロボット３０による作業を行う上で、容易且つ確実にキャリブレーションを行うことが可能となる。
【００４７】
また、本実施形態では、センサシステム２０によって検出され、又は、得られた複数の対象Ｏの位置座標と、センサシステム２０によって位置座標が得られた後に搬送装置１０によって移動した複数の対象Ｏにタッチアップ部を接触させることによって得られる位置座標と、計測部１０ａによって計測される移動量とを用いて、変換行列が作成される。
検査装置の製造会社や高精度な計測器の製造会社等によって製造されるセンサシステム２０の検出範囲はロボット３０による作業範囲と異なる場合が多い。当該態様では、検出範囲と作業範囲とが異なる場合でも、計測部１０ａによって計測される移動量を用いて、センサシステム２０によって検出された位置座標をロボット座標系２０１上の位置座標に変換する変換行列を作成することができる。
【００４８】
また、本実施形態では、キャリブレーションに用いる対象Ｏは２つである。
このロボットシステムは、対象Ｏを２つにしても、Ｚ軸方向の位置が互いに大きく異なっていない複数の対象Ｏにロボット３０による作業を行う上で、実用上正確なキャリブレーションを行うことができる。キャリブレーションに用いる対象が２つであることから、キャリブレーションに必要な時間を短縮することができる。これは、ロボット３０が作業を行う対象Ｏの品種、寸法等が頻繁に変わる場合において、品種、寸法等に応じたキャリブレーションを適切に行うことを可能とする。
【００４９】
なお、本実施形態のロボットシステムにおいて、ロボット制御装置４０が、入力部４５への入力に基づき、センサシステム２０のセンサ座標系２０２が右手座標系であるか左手座標系であるかを認識してもよい。
当該構成では、センサシステム２０が右手座標系および左手座標系の何れを採用していても、ロボット制御装置４０をセンサシステム２０の位置検出に容易且つ確実に適合させることができる。
【００５０】
また、本実施形態では、複数の対象ＯのＺ軸方向の寸法のばらつきが小さいことが好ましい。このロボットシステムは、Ｘ軸およびＹ軸が含まれる平面内における座標変換を行う変換行列を作成するものであるから、複数の対象Ｏの互いのＺ軸方向の寸法のばらつきが小さい場合、ロボット制御装置４０をセンサシステム２０の位置検出により確実に適合させることができる。
【００５１】
なお、前記実施形態において、対象Ｏを移動させる移動手段として、搬送装置１０の代わりに、対象Ｏを移動させるロボット、自己の移動によって載置された対象Ｏを移動させる移動台車等を用いることも可能である。ロボットが用いられ場合、計測部１０ａの計測値の代わりに、ロボットの各サーボモータの作動位置検出装置の検出値が対象Ｏの移動量の計測値として用いられる。移動台車が用いられる場合、計測部１０ａの代わりに、載置台車を駆動するモータのエンコーダの検出値が対象Ｏの移動量の計測値として用いられる。
【００５２】
また、計測部１０ａの代わりに、二次元カメラ等のセンサによって搬送装置１０上のマーク、対象Ｏ等の移動量を検出してもよい。この場合、二次元カメラ等のセンサが計測部として機能する。
【００５３】
また、前記実施形態において、センサ２１がロボット３０又は他のロボットによって支持されていてもよい。この場合でも、前述と同様の処理によって変換行列を作成することができる。なお、この場合でも、センサ２１の光軸がＺ軸と平行であることが好ましい。センサ２１の位置は、ロボット３０又は他のロボットの動作情報に基づき求めることができる。
【００５４】
第２実施形態に係るロボットシステムが、図面を用いながら以下説明されている。
第２実施形態は、第１実施形態におけるセンサシステム２０の出力をロボット３０の制御に用いるためのキャリブレーションの他の例を示すものであり、その他の構成は第１実施形態と同様である。第２実施形態でも、第１実施形態と同様の搬送装置（移動手段）１０、センサシステム２０、ロボット３０、およびロボット制御装置４０が用いられる。第１実施形態と同等の構成には同一の符号を付し、その説明は省略する。
【００５５】
第２実施形態では、図６に示されるように、例えば搬送装置１０上に１つのワークＷが載置され、当該ワークＷのＹ軸方向の一端側および他端側に設けられた輪郭、貫通穴、マーク等がそれぞれ対象Ｏとして検出される。センサ制御装置２４の処理部２２又は判断部２３は各対象Ｏの少なくとも位置を検出する。なお、処理部２２又は判断部２３が、各対象Ｏの位置および姿勢を検出してもよい。
第２実施形態では、以下の処理に従って、センサシステム２０の出力をロボット３０の制御に用いるためのキャリブレーションが行われる。特に説明が無い事項は、第１実施形態と同様に処理され、第１実施形態と同様の変形例も適用され得る。
【００５６】
（キャリブレーション例１）
当該キャリブレーションを図７および図８のフローチャートを参照しながら説明する。まず、停止している搬送装置１０上における検出範囲ＡＲ１内にＹ軸方向に離れた２つの対象Ｏを配置する（ステップＳ３−１）。図１０に示されるワークＷを用いることも可能である。この場合は、Ｙ軸方向の一端側にＸ軸方向に並ぶ２つの対象Ｏがあり、そのうち一方とＹ軸方向の他端側に配置された対象Ｏとが検出範囲ＡＲ１内に配置されていればよい。
続いて、Ｙ軸方向に離れた２つの対象Ｏのうち一方をセンサシステム２０によって位置が検出されない状態とし（ステップＳ３−２）、この状態でロボット制御装置４０からセンサシステム２０に対象Ｏの位置の検出を指示するコマンドが送信され（ステップＳ３−３）、ロボット制御装置４０が１つ目の位置の検出結果Ｐ０をセンサシステム２０から受信する（ステップＳ３−４）。
【００５７】
続いて、他方の対象Ｏをセンサシステム２０によって位置が検出されない状態とし（ステップＳ３−５）、この状態でロボット制御装置４０からセンサシステム２０に対象Ｏの位置の検出を指示するコマンドが送信され（ステップＳ３−６）、ロボット制御装置４０が２つ目の位置の検出結果Ｐ１をセンサシステム２０から受信する（ステップＳ３−７）。
【００５８】
続いて、搬送装置１０によって対象Ｏを検出範囲ＡＲ１内で移動させる（ステップＳ３−８）。この状態で、例えば、一方の対象Ｏをセンサシステム２０によって位置が検出されない状態とし（ステップＳ３−９）、この状態でロボット制御装置４０からセンサシステム２０に対象Ｏの位置の検出を指示するコマンドが送信され（ステップＳ３−１０）、ロボット制御装置４０が３つ目の位置の検出結果Ｐ２をセンサシステム２０から受信する（ステップＳ３−１１）。
【００５９】
続いて、搬送装置１０によって対象Ｏを作業範囲ＡＲ２内まで移動させ、搬送装置１０を停止させる（ステップＳ３−１２）。そして、他方の対象Ｏの所定位置にロボット３０に取付けられたツールの先端（タッチアップ部）を接触させ（ステップＳ３−１３）、その時のツールの先端の位置（ロボット座標系２０１上の位置座標Ｑ０）をロボット制御装置４０の記憶部４３に記憶させる（ステップＳ３−１４）。
【００６０】
また、一方の対象Ｏの所定位置にロボット３０のツールの先端（タッチアップ部）を接触させ（ステップＳ３−１５）、その時のツールの先端の位置（ロボット座標系２０１上の位置座標Ｑ１）をロボット制御装置４０の記憶部４３に記憶させる（ステップＳ３−１６）。
【００６１】
続いて、センサシステム２０が検出した任意の点Ｐａの位置のロボット座標系２０１から見た位置（Ｘａ，Ｙａ）を求めるための変換行列を作成する（ステップＳ３−１７）。この時に点Ｐ０，Ｐ１の位置座標もロボット座標系２０１における位置座標Ｑ０、Ｑ１に変換される。
また、ロボット制御装置４０は、変換行列を用いて、ロボット座標系２０１における検出結果Ｐ２の位置座標Ｑ２を計算し、ロボット座標系２０１の搬送方向であるＸ軸方向におけるＱ０とＱ２との位置の差が、所定の基準範囲内か否かを判断する（ステップＳ３−１８）。例えば、以下の式（２）の判断係数Ａが基準範囲内か否か判断される。
【００６２】
【数２】
2020089963.tif 000004
なお、Ｘ０はＱ０のＸ軸方向の位置であり、Ｘ２はＱ２のＸ軸方向の位置である。例えば基準範囲は０を超える範囲である。基準範囲は適宜設定可能である。
【００６３】
ステップＳ３−１８によって、ロボット制御装置４０は、センサ座標系２０２のＸ軸方向とロボット座標系２０１のＸ軸方向とを対応付けることができる。つまり、ロボット制御装置４０は、オペレータ等による入力が無くても、左手座標系であるか右手座標系であるかを判断することが可能となる。
【００６４】
なお、ステップＳ３−８〜Ｓ３−１１において、搬送装置１０によって対象Ｏを移動させずに、図１０に示される他の対象Ｏの位置の検出結果Ｐ２をロボット制御装置４０がセンサシステム２０から受信してもよい。図１０の場合、他の対象Ｏの位置は、１つ目の位置に対して搬送装置１０の搬送方向であるＸ軸方向に異なっている。
【００６５】
（キャリブレーション例２）
当該キャリブレーションを図９のフローチャートを参照しながら説明する。まず、キャリブレーション例１と同様に、停止している搬送装置１０上における検出範囲ＡＲ１内にワークＷを配置する（ステップＳ４−１）。
【００６６】
続いて、操作者が、センサシステム２０のディスプレイ、その他の表示装置等において、センサ２１により得られた画像又はその処理後データを見て、ワークＷにおいてロボット３０のツールを接触させる１つ目の対象Ｏ、２つ目の対象Ｏ、および３つ目の対象Ｏのセンサ座標系２０２上の位置を決定し（ステップＳ４−２）、センサシステム２０を用いて１つ目の点Ｐ０、２つ目の点Ｐ１、および３つ目の点Ｐ２の位置座標を取得する。Ｐ２は点Ｐ０に対して搬送装置１０の搬送方向に位置が異なる。なお、搬送装置１０によって対象Ｏを移動させた後に３つ目の点Ｐ２の位置座標を取得してもよい。
【００６７】
続いて、キャリブレーション例１のステップＳ３−１２〜Ｓ３−１７と同様のステップＳ４−４〜Ｓ４−９が実行され、センサシステム２０が検出した任意の点Ｐａの位置のロボット座標系２０１から見た位置（Ｘａ，Ｙａ）を求めるための変換行列が作成される。
また、キャリブレーション例１のステップＳ３−１８と同様に、ロボット座標系２０１における３つ目の対象Ｏの点Ｐ２の位置座標Ｑ２を計算し、ロボット座標系２０１の搬送方向であるＸ軸方向におけるＱ０とＱ２との位置の差が、所定の基準範囲内か否かを判断する（ステップＳ４−１０）。
【００６８】
第２実施形態では、例えばセンサ座標系２０２のＸ軸方向と搬送装置１０の搬送方向とが対応していれば、点Ｑ２の位置座標（第２の位置座標に対応する位置座標）のＸの値から点Ｑ０の位置座標のＸの値を減じた値に応じた正の値になる。このため、Ｑ０とＱ２との位置の差に基づき、センサ座標系２０２のＸ軸方向とロボット座標系２０１のＸ軸方向とが一致していることがロボット制御装置４０によって認識される。
なお、本実施形態では搬送装置１０の搬送方向がロボット座標系２０１およびセンサ座標系２０２のＸ軸方向に対応しているが、装置構成によっては、搬送方向がロボット座標系２０１のＸ軸方向およびセンサ座標系２０２のＹ軸方向と対応している場合、搬送方向がロボット座標系２０１およびセンサ座標系２０２のＹ軸方向と対応している場合等もある。
【００６９】
第２実施形態では、搬送装置１０が対象Ｏを移動させる方向がロボット座標系２０１のＸ軸方向である。当該構成を用いると、搬送装置１０によって対象Ｏを移動させることにより、搬送方向にのみ位置が異なる第２の位置座標を容易且つ確実に得ることができる。
【００７０】
上記実施形態から以下の態様が導出される。
第１の態様のロボットシステムは、センサシステムと、ロボットと、前記ロボットを制御するロボット制御装置と、を備え、前記ロボット制御装置が、前記ロボットの座標系であるロボット座標系を認識しているが、前記センサシステムの座標系を認識しておらず、前記ロボット制御装置が、前記センサシステムによって得られた複数の対象又は点の位置座標と、前記複数の対象又は前記複数の点に対応する前記ロボット座標系におけるＸ軸方向およびＹ軸方向の位置座標とに基づき、前記センサシステムによって得られる位置座標に対してＸ軸およびＹ軸が含まれる平面内における座標変換を行うための変換行列を作成する行列作成処理を行う。
【００７１】
当該態様では、センサシステムによって検出された各対象の位置座標と、各対象のロボット座標系におけるＸ軸方向およびＹ軸方向の位置座標とに基づき、Ｘ軸およびＹ軸が含まれる平面内における座標変換を行う変換行列を作成できる。このように、複雑な処理を伴うことなく変換行列を作成することができるので、検査装置の製造会社や高精度な計測器の製造会社等によって製造されるセンサシステムとロボットとのキャリブレーションを容易且つ確実に行うことが可能となる。
【００７２】
上記態様において、好ましくは、前記ロボット制御装置が、前記複数の対象又は前記複数の点の位置座標と、前記複数の対象又は前記複数の点に対応する位置に前記ロボットの先端部に設けられたタッチアップ部を接触させることによって得られる前記複数の対象又は前記複数の点の前記ロボット座標系における前記位置座標とに基づき、前記変換行列を作成する。
当該態様では、ロボット制御装置はロボットの先端部に設けられたタッチアップ部の位置を認識しているので、タッチアップ部を複数の対象に接触させることによって、各対象のロボット座標系上の位置が得られる。このため、複雑な処理又は作業を伴うことなく変換行列を作成することができる。
【００７３】
上記態様において、好ましくは、前記ロボット制御装置が、前記複数の対象又は前記複数の点の位置座標と、前記ロボットと座標系が対応付けられたセンサの検出データに基づき得られる前記複数の対象又は前記複数の点の前記ロボット座標系における前記位置座標とに基づき、前記変換行列を作成する。
当該態様では、座標系が対応付けられたセンサの検出データに基づき、複数の対象又は複数の点のロボット座標系における位置座標が手間なく得られる。このため、複雑な処理又は作業を伴うことなく変換行列を作成することができる。
【００７４】
上記態様において、好ましくは、前記変換行列が、前記Ｘ軸および前記Ｙ軸に垂直なＺ軸周りの回転を含む前記座標変換を行うものである。
一例として、変換行列が、Ｚ軸周りの回転を含む座標変換を行うものであり、Ｘ軸周りおよびＹ軸周りの回転を含まない座標変換を行うものである場合、Ｚ方向の位置が互いに大きく異なっていない複数の対象にロボットによる作業を行う上で、容易且つ確実にキャリブレーションを行うことが可能となる。
【００７５】
上記ロボットシステムは、好ましくは、前記対象を移動させるための移動手段と、前記移動手段によって移動する前記対象の移動量を計測する計測部と、を備え、前記ロボット制御装置が、前記行列作成処理において、前記センサシステムによって得られた前記複数の対象又は前記複数の点の前記位置座標と、前記センサシステムによって前記位置座標が得られた後に前記移動手段によって移動した前記複数の対象又は前記複数の点に対応する位置に前記タッチアップ部を接触させることによって得られる前記位置座標と、前記計測部によって計測される前記移動量とを用いて、前記変換行列を作成する。
【００７６】
検査装置の製造会社や高精度な計測器の製造会社等によって製造されるセンサシステムの検出範囲はロボットによる作業範囲と異なる場合が多い。当該態様では、検出範囲と作業範囲とが異なる場合でも、計測部によって計測される移動量を用いて、センサシステムによって検出された位置座標をロボット座標系上の位置座標に変換する変換行列を作成することができる。
【００７７】
上記態様において、好ましくは、前記対象又は前記点は２つである。
上記ロボットシステムは、対象を２つにしても、Ｚ軸方向の位置が互いに大きく異なっていない複数の対象にロボットによる作業を行う上で、実用上正確なキャリブレーションを行うことができる。キャリブレーションに用いる対象が２つであることから、キャリブレーションに必要な時間を短縮することができる。これは、ロボットが作業を行う対象の品種、寸法等が頻繁に変わる場合において、品種、寸法等に応じたキャリブレーションを適切に行うことを可能とする。
【００７８】
上記態様において、好ましくは、前記対象を移動させるための移動手段を備え、前記ロボット制御装置が、前記センサシステムによって得られた第２の位置座標であって、前記センサシステムによって得られた前記複数の位置座標に対して前記移動手段による移動方向に位置が異なる第２の位置座標を受付け、前記複数の位置座標の少なくとも１つと前記第２の位置座標とを前記変換行列を用いて座標変換し、座標変換された前記位置座標と前記第２の位置座標との前記Ｘ軸方向の位置の差が基準値内か否か判断する判断処理を行う。
【００７９】
例えば、複数の位置座標のうち選択された一つの変換行列による変換後の位置座標のＸの値を第２の位置座標の変換行列による変換後の位置座標のＸの値から減じた値が基準値として例えば０を超える場合は、センサシステムの座標系のＸ軸方向と例えば右手系のロボット座標系のＸ軸方向とが一致していることになる。逆に、センサシステムの座標系において搬送装置１０の搬送方向（図６における右方向）がＸ軸方向の負の移動方向である場合、前記減じた値が０未満となる。このため、センサシステムが右手座標系および左手座標系の何れを採用していても、ロボット制御装置をセンサシステムの位置検出に容易且つ確実に適合させることができる。
【００８０】
上記態様において、好ましくは、前記Ｘ軸方向が、前記移動手段による前記対象の移動方向である。
この場合、搬送装置によって対象又は点を移動させ、移動後の対象又は点の位置をセンサシステムによって検出することにより、選択された位置座標に対して移動手段による移動方向にのみ位置が異なる第２の位置座標を容易且つ確実に得ることができる。
【００８１】
上記ロボットシステムは、好ましくは、前記ロボット制御装置に入力を行う入力部を備え、前記ロボット制御装置が、前記入力部への入力に基づき、前記センサシステムの前記座標系が右手座標系であるか左手座標系であるかを認識する。
当該構成では、センサシステムが右手座標系および左手座標系の何れを採用していても、ロボット制御装置をセンサシステムの位置検出に容易且つ確実に適合させることができる。
【００８２】
上記ロボットシステムは、好ましくは、前記対象を移動させるための移動手段を備え、前記ロボットが前記対象に対して所定の作業を行うものであり、前記対象が、前記Ｘ軸および前記Ｙ軸に垂直なＺ軸方向の寸法のばらつきが小さいものである。
上記ロボットシステムは、Ｘ軸およびＹ軸が含まれる平面内における座標変換を行う変換行列を作成するものであるから、複数の対象の互いのＺ軸方向の寸法のばらつきが小さい場合、ロボット制御装置をセンサシステムの位置検出により確実に適合させることができる。
【００８３】
第２の態様の座標変換方法は、センサシステムによって検出された位置座標をロボット制御装置が認識しているロボット座標系上の位置座標に変換する座標変換方法であって、センサシステムによって得られた複数の対象又は点の位置座標と、前記複数の対象又は前記複数の点に対応する位置に前記ロボット制御装置によって制御されるロボットの先端部に設けられたタッチアップ部を接触させることによって得られる前記複数の対象又は前記複数の点の前記ロボット座標系におけるＸ軸方向およびＹ軸方向の位置座標とに基づき、前記センサシステムよって得られる位置座標にＸ軸およびＹ軸が含まれる平面内における座標変換を行うための変換行列を作成し、前記センサシステムによって検出された位置座標を前記変換行列を用いて変換する。
【００８４】
なお、第１実施形態および第２実施形態では、タッチアップ部であるツールの先端を対象Ｏに接触させることによって、ロボット座標系２０１における対象Ｏの位置座標を得たが、ロボット座標系２０１における対象Ｏの位置を求める別の手法を用いてもよい。例えば、ロボット座標系２０１と座標系が対応付けられたセンサを用いて対象Ｏの位置を検出可能な検出データを得て、検出データに基づき対象Ｏの位置座標を得てもよい。
【００８５】
具体的には、図１１に示されるように、ロボット３０のアーム３０ａの例えば先端部にカメラであるセンサ５０が取付けられ、センサ５０によって得られる画像データに基づき対象Ｏの位置座標をロボット制御装置４０が取得する。センサ５０は、二次元カメラ、三次元カメラ、三次元距離センサ等である。
例えば、ステップＳ１−９，Ｓ１−１１において、センサ５０が対象Ｏが含まれる画像である検出データを得て、ロボット制御装置４０がセンサ５０の検出データに基づき対象Ｏの位置座標を求めてもよい。この場合、ステップＳ１−１０，Ｓ１−１２では、センサ５０の検出データに基づき得られた対象Ｏの位置座標が記憶部４３に記憶される。ステップＳ２−５〜Ｓ２−８、ステップＳ３−１３〜Ｓ３−１６、ステップＳ４−５〜Ｓ４−８でも同様である。
【００８６】
なお、センサ５０がロボット３０ではなくフレーム等に固定されていてもよい。この場合でも、センサ５０の座標系がロボット座標系２０１と対応付けられていれば、前述と同様の効果を奏する。
【符号の説明】
【００８７】
１０  搬送装置（移動手段）
１０ａ  計測部
１０ｂ  モータ
２０  センサシステム
２１  センサ
２２  処理部
２３  判断部
２４  センサ制御装置
３０  ロボット
３０ａ  アーム
３１  サーボモータ
４０  ロボット制御装置
４１  プロセッサ
４２  表示装置
４３  記憶部
４３ａ  システムプログラム
４３ｂ  動作プログラム
４３ｃ  追随制御プログラム
４３ｄ  キャリブレーションプログラム
４４  サーボ制御器
４５  入力部
５０  センサ
２０１  ロボット座標系
２０２  センサ座標系
Ｗ  ワーク
Ｏ  対象
【図１】
2020089963.tif 000005
【図２】
2020089963.tif 000006
【図３】
2020089963.tif 000007
【図４】
2020089963.tif 000008
【図５】
2020089963.tif 000009
【図６】
2020089963.tif 000010
【図７】
2020089963.tif 000011
【図８】
2020089963.tif 000012
【図９】
2020089963.tif 000013
【図１０】
2020089963.tif 000014
【図１１】
2020089963.tif 000015