(57)【特許請求の範囲】
【請求項１】
第１の位置から第２の位置にワークを位置決めしながら搬送するロボットのハンドの制御方法であって、
前記第１の位置から前記第２の位置に前記ワークを搬送する搬送路中に、前記ワークの異なるエッジを検出する複数のセンサが、搬送される前記ワークの移動位置を定義するアライメント座標系に基づいて配置されており、
前記第１の位置から前記第２の位置まで前記ワークを搬送する際、前記ワークの異なるエッジを前記複数のセンサを用いて検出し、
前記複数のセンサの各々の立上り応答又は立下り応答のどちらか一方の検出信号を用いて、前記複数のセンサから出力された検出信号に基づく前記複数のセンサ相互の応答状態から、搬送される前記ワークの前記移動位置のずれ量を算出し、
前記ずれ量を、前記ロボットの動作軌道を定義するロボット座標系に変換し、前記ロボットのハンドの動作を制御するものであって、
前記アライメント座標系における前記複数のセンサの設置距離と、
前記複数のセンサのいずれもがＯＦＦしている状態と、前記複数のセンサのいずれもがＯＮしている状態と、前記複数のセンサのいずれかがＯＮしている各々の状態とのうち、一の状態から他の状態に変化したときの前記ロボットの動作量と、
を使用して前記ずれ量を算出することを特徴とするロボットのハンドの制御方法。
【請求項２】
前記アライメント座標系は前記複数のセンサを結ぶ直線と平行な軸をＸ軸とする直交座標系であり、かつ、前記ワークは円形状であり、前記ワークのエッジが前記複数のセンサ上に同時に位置する円を理想円とし、その中心を基準位置とし、前記基準位置にある前記ワークを理想円とした場合の中心点を当該直交座標系の原点とし、
前記複数のセンサは、前記理想円の円周上に配置されたことを特徴とする請求項１記載のロボットのハンドの制御方法。
【請求項３】
ワークをハンドに載置して第１の位置から第２の位置に位置決めしながら搬送するワーク搬送ロボットシステムであって、
前記ハンドの動作軌道を定義するロボット座標系と、
前記ロボット座標系とは独立であって、搬送される前記ワークの移動位置を定義するアライメント座標系と、
前記第１の位置から前記第２の位置に前記ワークを搬送する搬送路中に、前記アライメント座標系に基づいて配置されるとともに、前記ワークの異なるエッジを検出する複数のセンサと、
前記第１の位置から前記第２の位置に前記ワークを搬送する際に、前記複数のセンサの各々の立上り応答又は立下り応答のどちらか一方の検出信号を用いて、前記複数のセンサから出力された検出信号に基づく前記複数のセンサ相互の応答状態から、搬送される前記ワークの移動位置のずれ量を算出する手段と、
前記ずれ量を、前記ロボット座標系における座標ずれに変換する手段と、を備え、
前記アライメント座標系における前記複数のセンサの設置距離と、
前記複数のセンサのいずれもがＯＦＦしている状態と、前記複数のセンサのいずれもがＯＮしている状態と、前記複数のセンサのいずれかがＯＮしている各々の状態とのうち、一の状態から他の状態に変化したときの前記ロボットの動作量と、
を使用して前記ずれ量を算出することを特徴とするワーク搬送ロボットシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ワークを複数の位置間で搬送するロボットのハンドの制御方法及びワーク搬送ロボットシステムに関する。
【背景技術】
【０００２】
従来から、半導体ウェハやガラス基板等のワークをカセット間で搬送するロボットがある。このロボットは、搬送のために必要な所定動作が予め教示されており、教示データに従って所定の教示動作を行う。例えば、カセットに収納された半導体ウェハを、ロボットの搬送アームにより取り出して、この状態で搬送アームを移動させ、他のカセットや検査テーブルに半導体ウェハを供給する、といった教示動作を行う。半導体ウェハの供給先では、それが搬送アームに正確に位置決めされた状態で供給されることが必要である。このような位置決めに関する技術として、例えば特許文献１に開示された技術がある。
【０００３】
特許文献１に開示された半導体ウェハの位置決め装置は、ロボットの搬送アームの移動方向に沿って２箇所に設置された光電センサに向かって半導体ウェハを直線移動させ、半導体ウェハの外周部エッジに基づく光電センサの応答位置を、半導体ウェハを保持するロボットの座標として取得する。光電センサの応答位置としては、未検出状態から検出状態に切り替わる立上り点を２点、検出状態から未検出状態に切り替わる立下り点を２点、という合計４点の応答位置を取得する。その後、光電センサの応答位置と、基準軌道からの距離や設置座標による光電センサの設置条件とで、半導体ウェハの中心とロボットの理想的な半導体ウェハ保持位置との偏差をずれ量として算出する。
【０００４】
なお、他にも例えば、半導体ウェハを、１点若しくは複数のセンサに対して円弧軌道を描くように通過させ、その半導体ウェハの外周部エッジに基づくセンサの応答位置を、半導体ウェハを保持するロボットの座標として取得するものもある（例えば特許文献２参照）。この際、センサの応答位置については、上述した特許文献１と同様になる。
【０００５】
【特許文献１】特開２０００−０１２６５７号公報
【特許文献２】特開２００５−２９７０７２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、上述した従来技術は、いずれもセンサの立上りと立下りの応答を等価に扱っており、センサの固有特性である応答差（ヒステリシス）までは考慮していない。したがって、ずれ量を算出する計算においては、センサの応答差による誤差が加算されてしまう。
【０００７】
また、立上り点の２点と立下り点の２点という合計４点の応答位置を用いるとなると、半導体ウェハがセンサの上を通過し終わるまで（立下り点の応答位置を取得できないため）、ずれ量を判定することができない。
【０００８】
本発明は、以上の点に鑑みてなされたものであり、その目的は、センサの応答差による誤差が加算されてしまうのを防ぐとともに、半導体ウェハがセンサ上を通過し終わらなくても、ずれ量を算出することが可能なロボットのハンドの制御方法及びワーク搬送ロボットシステムを提供することにある。
【課題を解決するための手段】
【０００９】
以上のような課題を解決するために、本発明は、以下のものを提供する。
【００１０】
（１）  第１の位置から第２の位置にワークを位置決めしながら搬送するロボットのハンドの制御方法であって、前記第１の位置から前記第２の位置に前記ワークを搬送する搬送路中に、前記ワークの異なるエッジを検出する複数のセンサが、搬送される前記ワークの移動位置を定義するアライメント座標系に基づいて配置されており、前記第１の位置から前記第２の位置まで前記ワークを搬送する際、前記ワークの異なるエッジを前記複数のセンサを用いて検出し、前記複数のセンサの各々の立上り応答又は立下り応答のどちらか一方の検出信号を用いて、前記複数のセンサから出力された検出信号に基づく前記複数のセンサ相互の応答状態から、搬送される前記ワークの前記移動位置のずれ量を算出し、前記ずれ量を、前記ロボットの動作軌道を定義するロボット座標系に変換し、前記ロボットのハンドの動作を制御するものであって、前記アライメント座標系における前記複数のセンサの設置距離と、前記複数のセンサのいずれもがＯＦＦしている状態と、前記複数のセンサのいずれもがＯＮしている状態と、前記複数のセンサのいずれかがＯＮしている各々の状態とのうち、一の状態から他の状態に変化したときの前記ロボットの動作量と、を使用して前記ずれ量を算出することを特徴とするロボットのハンドの制御方法。
【００１１】
本発明によれば、カセットなどの第１の位置からワーク（ウェハ）を取り出して、第２の位置（所定の供給先）に位置決めしながら搬送するロボットのハンドの制御方法で、第１の位置から第２の位置にワークを搬送する搬送路の途中に、ワークの異なるエッジを検出する複数のセンサを、搬送されるワークの移動位置を定義するアライメント座標系に基づいて配置し、これら複数のセンサによってワークの異なるエッジを検出し、検出信号から搬送されるワークの移動位置のずれ量を算出した後、そのずれ量をロボットの動作軌道を定義するロボット座標系に変換して、ロボットのハンドの動作を制御するようにしたので、センサの応答差による誤差が加算されてしまうのを防ぐことができる。
【００１２】
すなわち、ワークの基準位置を定義するアライメント座標系に基づいて配置された複数のセンサによって、ワークの異なるエッジを検出することで、センサの応答特性が等価な複数のセンサの座標に基づき位置偏差（搬送されるワークの移動位置のずれ量）を（幾何学的に）算出することができる。したがって、従来の位置決め装置のように、立上り点と立下り点の応答位置を用いる必要がなく、センサの応答差による誤差が加算されてしまうのを防ぐことができる。
【００１３】
また、立上り点と立下り点の応答位置を用いる必要がなければ、ワークの外周部エッジの半分が検出対象となるため、ワークがセンサ上を通過し終わらなくても、ずれ量を算出することができ、ひいてはずれ量を検出するプロセスの短縮化を図ることができる。
【００１４】
なお、本発明では、「複数のセンサ」は、ワークの基準位置を定義するアライメント座標系に基づいて配置されていれば足り、必ずしも、円周上や直線上に配置されていなくても構わない。
【００１５】
（２）  前記アライメント座標系は前記複数のセンサを結ぶ直線と平行な軸をＸ軸とする直交座標系であり、かつ、前記ワークは円形状であり、前記ワークのエッジが前記複数のセンサ上に同時に位置する円を理想円とし、その中心を基準位置とし、前記基準位置にある前記ワークを理想円とした場合の中心点を当該直交座標系の原点とし、前記複数のセンサは、前記理想円の円周上に配置されたことを特徴とするロボットのハンドの制御方法。
【００１６】
本発明によれば、上述したアライメント座標系は、複数のセンサを結ぶ直線と平行な軸をＸ軸とする直交座標系であり、かつ、基準位置にある円形状のワークを理想円とした場合の中心点を、その直交座標系の原点とし、複数のセンサは、理想円の円周上に配置されたこととしたので、これら複数のセンサによってワークの異なるエッジを検出することで、円形状のワークが理想円からどれだけずれているか（位置偏差）を算出することができる。このように、アライメント座標系を複数のセンサを結ぶ直線と平行な軸をＸ軸とする直交座標系とすることによって、座標変換の回数を低減することができ、ひいては処理負荷の軽減に寄与することができる。
【００１７】
また、本発明のロボットのハンドの制御方法は、前記センサの立上り応答又は立下り応答のどちらか一方の検出信号を用いて、前記ずれ量を検出することを特徴とする。
【００１８】
本発明によれば、上述したセンサの立上り応答又は立下り応答のどちらか一方の検出信号を用いて、ずれ量を検出することとしたので、ワークがセンサ上を通過し終わらなくても、ずれ量を算出することができ、ひいてはずれ量を検出するプロセスの短縮化を図ることができる。
【００１９】
（３）  ワークをハンドに載置して第１の位置から第２の位置に位置決めしながら搬送するワーク搬送ロボットシステムであって、前記ハンドの動作軌道を定義するロボット座標系と、前記ロボット座標系とは独立であって、搬送される前記ワークの移動位置を定義するアライメント座標系と、前記第１の位置から前記第２の位置に前記ワークを搬送する搬送路中に、前記アライメント座標系に基づいて配置されるとともに、前記ワークの異なるエッジを検出する複数のセンサと、前記第１の位置から前記第２の位置に前記ワークを搬送する際に、前記複数のセンサの各々の立上り応答又は立下り応答のどちらか一方の検出信号を用いて、記複数のセンサから出力された検出信号に基づく前記複数のセンサ相互の応答状態から、搬送される前記ワークの移動位置のずれ量を算出する手段と、前記ずれ量を、前記ロボット座標系における座標ずれに変換する手段と、を備え、前記アライメント座標系における前記複数のセンサの設置距離と、前記複数のセンサのいずれもがＯＦＦしている状態と、前記複数のセンサのいずれもがＯＮしている状態と、前記複数のセンサのいずれかがＯＮしている各々の状態とのうち、一の状態から他の状態に変化したときの前記ロボットの動作量と、を使用して前記ずれ量を算出することを特徴とするワーク搬送ロボットシステム。
【００２０】
本発明によれば、ハンドの動作軌道を定義するロボット座標系と、このロボット座標系とは独立であって、搬送されるワークの移動位置を定義するアライメント座標系とを定義した上で、ワークの異なるエッジを検出する複数のセンサをアライメント座標系に基づいて配置し、複数のセンサから出力された検出信号から、搬送されるワークの移動位置のずれ量を算出した後、そのずれ量を、ロボット座標系における座標ずれに変換することとしたので、センサの応答差による誤差が加算されてしまうのを防ぐとともに、ずれ量を検出するプロセスの短縮化を図ることができる。
【発明の効果】
【００２１】
本発明に係るロボットのハンドの制御方法及びワーク搬送ロボットシステムによれば、センサの応答特性が等価な複数のセンサの座標に基づいて、搬送されるワークの移動位置のずれ量を算出することができ、ひいてはセンサの応答差による誤差が加算されてしまうのを防ぐことができる。また、立上り点と立下り点の応答位置を用いる必要がないので、ずれ量を検出するプロセスの短縮化を図ることができる。
【発明を実施するための最良の形態】
【００２２】
以下、本発明を実施するための最良の形態について、図面を参照しながら説明する。
【００２３】
［ワーク搬送ロボットシステム］
図１は、本発明の実施の形態に係るワーク搬送ロボットシステムの構成図である。また、図２は、図１に示すワーク搬送ロボットシステムにおけるロボット１００及びロボットコントローラ２００の電気的構成を示すブロック図である。なお、図１及び図２の構成は一例であって、本発明は、本構成に限られるものではない。例えば、図１及び図２では特に図示していないが、ロボットコントローラ２００に教示操作端末を（シリアルケーブル等の有線により又は赤外線通信，近距離ワイヤレス通信等の無線により）接続することで、ロボット１００を遠隔操作することが可能である。
【００２４】
まず、図１及び図２に示すように、ワーク搬送ロボットシステムは、ロボット１００と、ロボットコントローラ２００と、２個のセンサ３０１，３０２）を有している。なお、本実施形態では、図１に示すように、ロボット１００としてスカラ型（水平多関節型）のロボットを採用している。
【００２５】
ロボット１００は、基台１１と、アーム１５と、から構成されている。アーム１５は、ハンドフォーク部１６ａとハンド基端部１６ｂを有している。また、アーム１５は、第１関節部１７ａ，第２関節部１７ｂ，第３関節部１７ｃにより回転可能に連結されており、回転駆動源による回転力を伝達し所望の動作をさせることができるようになっている。
【００２６】
アーム１５は、基台１１に回転可能に配置されている。すなわち、アーム１５は、Ｚ軸周りにΘ回転することができる。また、アーム１５は、上下にスライド移動可能（図中のＺ軸方向へ移動可能）となるように構成されている。
【００２７】
ロボット１００に備えられるアーム１５は、上述したように３個の関節部（第１関節部１７ａ，第２関節部１７ｂ，第３関節部１７ｃ）とともに、第１アーム部１８と、第１アーム部１８と連結される第２アーム部１９と、を有している。
【００２８】
第１アーム部１８の基端は、回転可能な第１関節部１７ａを構成する。また、第１アーム部１８の先端となる第２アーム部１９の基端とが駆動軸を介して連結され、回転可能な第２関節部１７ｂを構成する。さらに、第２アーム部１９の先端とハンド基端部１６ｂとが駆動軸を介して連結されて、回転可能な第３関節部１７ｃを構成する。
【００２９】
アーム１５は、図示しない回転駆動源により、第１関節部１７ａと第２関節部１７ｂと第３関節部１７ｃとを回動させて、ハンドフォーク部１６ａ及びハンド基端部１６ｂを、ワーク１０の取り出し・供給方向（Ｘ方向）に移動させる。この際、アーム１５では、その機構上、ハンドフォーク部１６ａ及びハンド基端部１６ｂが一方向を向いて、第１アーム部１８と第２アーム部１９とを伸ばしきった伸張位置と、第１アーム部１８と第２アーム部１９とを折り畳んだ状態として縮み位置との間を直線移動するように、伸縮動作を行う。すなわち、本実施形態では、図１中のＸ方向で往復移動することになる。そして、伸張位置に位置するカセット５００に対して基板（ワーク１０）を収納し、または縮み位置へワーク１０を搬出するように動作する。なお、このような機構は、例えば、第１関節部１７ａ，第２関節部１７ｂ及び第３関節部１７ｃのそれぞれに、タイミングプーリを設け、タイミングプーリ間をタイミングベルトで連結し、各関節部が所定の回転を行うことができるように構成される。
【００３０】
また、図中のＸ軸，Ｙ軸，Ｚ軸及びΘ軸の各軸方向への移動は、ロボット１００においてサーボ制御され、後述するサーボモータ１１０ｂ１〜１１０ｂｎ（図２参照）によって、制御される。なお、図１に示すように、ワーク１０は、カセット５００に収納される。
【００３１】
図２に示すように、ロボットコントローラ２００は、ＣＰＵ１０１と、ＲＯＭ１０２と、ＲＡＭ１０３と、ＥＥＰＲＯＭ１０４と、通信Ｉ／Ｆ１０５と、外部入出力Ｉ／Ｆ１０６と、サーボ制御部１１０と、を有し、各々がバスによって接続されている。
【００３２】
ＣＰＵ１０１は、ロボットコントローラ２００の制御中枢を司るものであって、ロボットコントローラ２００の統合的な制御を行う。ＲＯＭ１０２は、ロボットコントローラ２００の基本機能を支えるシステムプログラムを格納している。また、ＲＡＭ１０３は、ＣＰＵ１０１のワーキングエリアとして機能する。すなわち、ＲＡＭ１０３では、変数値の書き込み及び読み出しがランダムに行われる。ＥＥＰＲＯＭ１０４は、電気的に何度でも記憶の消去・書き込みが可能であって、外部から電力を供給しなくても記憶を保持することができる。
【００３３】
通信Ｉ／Ｆ１０５には、情報処理端末としての教示操作端末（図示せず。その他パソコン等の情報処理装置）が接続され、ロボット制御のための各種データやプログラムの入出力がなされる。外部入出力Ｉ／Ｆ１０６は、図示しないがロボットに設けられたセンサや周辺機器のアクチュエータなどが接続される。
【００３４】
特に、本実施形態では、所定の位置に配置された２個のセンサ３０１，３０２からの検出信号が、外部入出力Ｉ／Ｆ１０６を通じてＣＰＵ１０１に入力されるようになっている。そして、ＣＰＵ１０１は、この検出信号に基づいて、ワーク１０の基準位置からのずれ量を算出する。ずれ量の算出の詳細については、［ロボットのハンドの制御方法］において後述する。
【００３５】
サーボ制御部１１０は、サーボ制御器１〜ｎ（ｎ：ロボットの総軸数にツールの可動軸数を加算した数）を備えており、ロボット制御のための演算処理（軌道作成及び補間、逆変換等）を経て作成された制御指令を受けて、ロボット各軸機構部のアクチュエータを構成するサーボモータ１１０ｂ１〜１１０ｂｎを、各サーボアンプ１１０ａ１〜１１０ａｎを介して制御する。
【００３６】
以上説明したように、本実施形態に係るワーク搬送ロボットシステムは、ワーク１０をハンド（アーム１５）に載置して所定の第１の位置から所定の第２の位置に位置決めしながら搬送するシステムである。
【００３７】
［ロボットのハンドの制御方法］
図３は、本発明の実施の形態に係るロボット１００のハンド（アーム１５）の制御方法を示すフローチャートである。図４は、２個のセンサ３０１，３０２の配置関係などを説明するための説明図である。図５〜図７は、ずれ量の算出理論を説明するための説明図である。なお、図３以降の説明においては、ワーク１０の形状として円形状を考える。また、図４に示すｘ軸とｙ軸は、図１に示すＸ軸とＹ軸とは別個の軸である。
【００３８】
図３に示す制御方法を説明する前に、まずは図４を用いて、本制御方法の概要と概念（前提）について説明する。
【００３９】
図４において、ワーク１０の外周が２個のセンサ３０１，３０２上に同時に位置する円を「基準円」とし、その中心（ｘ軸とｙ軸が交差する位置）を基準位置Ｏとする。したがって、この基準位置Ｏからのずれが補正量となる。具体的には、２個のセンサ３０１，３０２上を通過させたときのセンサのＯＮする位置によって分かる円（ワーク１０の外周）の中心点を、基準位置Ｏからのずれとして計算し、計算された補正量を利用してロボット１００のハンドを制御し、ワーク１０の収納位置を補正する。また、ロボット１００のハンド（アーム１５）を、基準位置Ｏの座標を含めて一定方向かつ等速で動作させることで（上述したように、アーム１５について言えば、ハンドフォーク部１６ａ及びハンド基端部１６ｂが一方向を向いて、第１アーム部１８と第２アーム部１９とを伸ばしきった伸張位置と、第１アーム部１８と第２アーム部１９とを折り畳んだ状態として縮み位置との間を直線移動するように、伸縮動作を行う）、センシングを実施する。位置偏差の算出は、ロボット１００の動作中に２個のセンサ３０１，３０２に対して各々がＯＮする座標をマークして、２個のセンサ３０１，３０２の設置距離と、マーク位置（２点）との動作距離によって行う。
【００４０】
また、座標系として、ハンドの動作軌道を定義するロボット座標系と、このロボット座標系とは独立であって、ワーク１０の基準位置を定義するアライメント座標系を考慮する。ロボット座標系としては、円筒座標系や直交座標系が挙げられる。一方、アライメント座標系としては、直交座標系が挙げられ、例えばセンサ３０１とセンサ３０２を結ぶ直線と平行な軸をｘ軸とすることができる。原点位置は、理想円（センサ３０１とセンサ３０２上を同時に通過する円。基準円）の中心点とする（図４参照）。そして、理想円の半径は、ワーク１０の半径とする。また、上述した２個のセンサ３０１，３０２は、第１の位置から第２の位置にワーク１０を搬送する搬送路中に、アライメント座標系に基づいて配置されるとともに、ワーク１０の異なるエッジを検出する機能を有している。
【００４１】
これらロボット座標系とアライメント座標系との関係は、次のように位置づけられる。すなわち、ロボット座標系が円筒座標系の場合には、旋回方向の０度方向をｘ軸＋方向とし、ロボット座標系が直交座標系の場合には、ロボット座標系のｘ軸＋方向をアライメント座標系のｘ軸＋方向とする。なお、基本的な補正値の算出は、アライメント座標系上で幾何学的になされる。また、計算結果は、ロボット座標系に変換して補正量とする。
【００４２】
アライメント座標系（直交座標系）上で直線的に動作するワーク１０の外周とセンサ３０１，３０２がＯＮする座標と、センサ３０１，３０２が設置されている座標を基にして、ワーク１０の中心座標を検討する。センシング中は、次の３つの状態に分けられる。すなわち、２個のセンサ３０１，３０２がＯＦＦしている状態と、２個のセンサ３０１，３０２のうちいずれか１個がＯＮしている状態と、２個のセンサ３０１，３０２のうち両方ともがＯＮしている状態とである。
【００４３】
図４において、基準円（鎖線）は、２個のセンサ３０１，３０２のうち両方とも同時にＯＮしている状態の円であって、「Ｓｅｎｓｏｒ１  ｏｎ」で示す円は、センサ３０１のみがＯＮしている状態の円（２点鎖線）であって、「Ｓｅｎｓｏｒ２  ｏｎ」で示す円は、センサ３０２のみがＯＮしている状態の円（２点鎖線）である。また、基準位置Ｏの座標は（Ｘ０，Ｙ０）で表され、センサ３０１の座標は（Ｘｓ１，Ｙｓ１）で表され、センサ３０２の座標は（Ｘｓ２，Ｙｓ２）で表される。ワーク１０が「Ｓｅｎｓｏｒ１  ｏｎ」で示す円から「Ｓｅｎｓｏｒ２  ｏｎ」で示す円の状態に移動したときに、センサ３０１の座標（Ｘｓ１，Ｙｓ１）が遷移する座標を（Ｘｓ１'，Ｙｓ１'）とする。そうすると、（Ｘｓ１，Ｙｓ１）と（Ｘｓ１'，Ｙｓ１'）との距離は、「Ｓｅｎｓｏｒ１  ｏｎ」で示す円の中心から「Ｓｅｎｓｏｒ２  ｏｎ」で示す円の中心までの距離（＝Δｌ）と等しくなり、基準位置Ｏに対する「Ｓｅｎｓｏｒ２  ｏｎ」で示す円の中心座標（ΔＸ，ΔＹ）が、ワーク１０のずれ量となる。
【００４４】
本制御方法は、パラメータとしての初期値と、ロボットの動作距離（Δｌ）のみを使用して、ワーク１０の補正量（ｘ軸についてはΔＸ、ｙ軸についてはΔＹだけ補正する）を計算しようとするものである。以上を踏まえ、図３のフローチャートに沿って、本制御方法の詳細（基本原理）を説明する。
【００４５】
図３において、まず、エッジ検出が行われる（ステップＳ１）。具体的には、ロボットコントローラ２００のＣＰＵ１０１は、図５に示すように、ワーク１０の外周がセンサ３０２上を通過するときの円、すなわちセンサ３０２のみがＯＮしている状態の「Ｓｅｎｓｏｒ２  ｏｎ」で示す円を検出する。そうすると、Ｐ０（上述した基準位置Ｏ）と、Ｐ１（ｘ１，ｙ１）＝（Ｘｓ１，Ｙｓ１）と、Ｐ２（ｘ２，ｙ２）＝（Ｘｓ２，Ｙｓ２）との他に、Ｐ０'（ΔＸ，ΔＹ）と、Ｐ１'（ｘ１'，ｙ１'）＝（Ｘｓ１'，Ｙｓ１'）とが得られる。
【００４６】
次に、ＣＰＵ１０１によって、ずれ量の算出が行われる（ステップＳ２）。このずれ量の算出に関しては、図５〜図７を用いて詳述する。なお、初期値として、ワーク１０の半径をｒとし、センサ３０１及びセンサ３０２との間のピッチをＰｉｔｃｈとする。また、動作量として、センサ３０１のＯＮからセンサ３０２がＯＮとなる動作距離をＬとする。センサ間に対するロボットの進入角度（符号付き）をＳとする。また、侵入角Ｓよりセンサ間のＰｉｔｃｈ方向（Ｘ軸）とのなす角をαとする。
【００４７】
まず、見かけ上のＰｉｔｃｈ（＝Ｐ２（ｘ２，ｙ２）とＰ１'（ｘ１'，ｙ１'）との距離）を計算する。αは、９０°−Ｓで表され、動作量Ｌは各軸の成分ごとに次のように分解することができる。すなわち、ｄＸ＝Ｌ×ｃｏｓα、ｄＹ＝Ｌ×ｓｉｎαである。角Ｐ１'Ｐ２Ｐ１＝θとしたとき、このθについては、θ＝ｔａｎ−１｛（Ｌ×ｓｉｎα）／（Ａ＋Ｌ×ｃｏｓα）｝で表せる。また、このときの見かけのＰｉｔｃｈ（＝Ａ'）は、Ａ'＝（Ａ＋Ｌ×ｃｏｓα）×ｃｏｓθ＋Ｌ×ｓｉｎα×ｃｏｓ｛π／２−θ｝＝Ａ×ｃｏｓθ＋Ｌ×ｃｏｓα×ｃｏｓθ＋Ｌ×ｓｉｎα×ｓｉｎθ＝Ａ×ｃｏｓθ＋Ｌ×ｃｏｓ（α−θ）となる（加法定理より）。
【００４８】
次に、角Ｐ０'Ｐ２Ｐ１'＝θ２としたとき、半角の正弦・余弦定理、正接と辺の長さとの関係を用いて、θ２＝２ｔａｎ−１［ｓｑｒｔ｛（Ａ'＋ｒ）（２ｒ）／（Ａ'＋２ｒ）（Ａ'＋ｒ）｝］＝２ｔａｎ−１［ｓｑｒｔ｛（２ｒ）／（Ａ'＋２ｒ）｝］となる。また、角Ｐ０'Ｐ２Ｐ１''＝θ１としたとき、同様に、θ１＝２ｔａｎ−１［ｓｑｒｔ｛（２ｒ）／（Ａ＋２ｒ）｝］となる。なお、ｓｑｒｔは平方根を示す。
【００４９】
ここで、角Ｐ１''Ｐ２Ｐ１＝θ'とすると、θ'＝θ＋θ１−θ２が成立する。そして、Ｌ'は、第２余弦定理を用いて、Ｌ'＝Ａ×ｓｑｒｔ｛２（１−ｃｏｓθ'）｝となる。以上より、Ｘ軸，Ｙ軸のずれ量は、ΔＸ＝Ｌ'×ｒ／Ａ×ｃｏｓ｛（１／２）×（π＋θ'）−θ１｝、ΔＹ＝Ｌ'×ｒ／Ａ×ｓｉｎ｛（１／２）×（π＋θ'）−θ１｝と表せる。
【００５０】
このようにして、ＣＰＵ１０１は、ずれ量を算出した後、ΔＸとΔＹを必要に応じて座標変換を行い（ステップＳ３）、座標変換後の補正量に基づいて、サーボ制御部１１０を通じて、ハンドの動作を制御する（ステップＳ４）。これにより、センサの応答差による誤差が加算されてしまうのを防ぎつつ、ハンドの動作を制御することができる。
【００５１】
なお、ステップＳ２及びステップＳ３で示したように、ＣＰＵ１０１は、第１の位置から第２の位置にワーク１０を搬送する際に、２個のセンサ３０１，３０２から出力された検出信号から、ワーク１０の基準位置Ｏからのずれ量（ΔＸ，ΔＹ）を算出する機能と、そのずれ量を、ロボット座標系における座標ずれに変換する機能と、を有している。
【００５２】
また、センシングと補正値計算のために必要な情報は、キャリブレーションの実行によって取得する。具体的には、センサ間距離誤差（設定値と比較）であったり、センサに対するセンシング角度誤差（設定値と比較）であったり、ティーチングポイントとの動的位置偏差（２個のセンサがＯＮする位置）であったりする。
【００５３】
［実施形態の主な効果］
以上説明したように、本実施形態に係るロボット１００のハンドの制御方法は、第１の位置から第２の位置にワーク１０を位置決めしながら搬送する制御方法であって、第１の位置から第２の位置にワーク１０を搬送する搬送路中に、ワーク１０の異なるエッジを検出する２個のセンサ３０１，３０２が、ワーク１０の基準位置Ｏを定義するアライメント座標系に基づいて配置されており、第１の位置から第２の位置までワーク１０を搬送する際、ワーク１０の異なるエッジを２個のセンサ３０１，３０２を用いて検出し（図３のステップＳ２）、２個のセンサ３０１，３０２から出力された検出信号から、ＣＰＵ１０１がワーク１０の基準位置Ｏからのずれ量を算出し、そのずれ量をロボット１００の動作軌道を定義するロボット座標系に変換した後（図３のステップＳ３）、ロボット１００のハンドの動作を制御することとしたので（図３のステップＳ４）、センサの応答特性が等価なセンサ３０１，３０２の座標に基づき位置偏差を幾何学的に算出することができる。したがって、従来の位置決め装置のように、立上り点と立下り点の応答位置を用いる必要がなく、センサの応答差による誤差が加算されてしまうのを防ぐことができる。
【００５４】
また、立上り点と立下り点の応答位置を用いる必要がなければ、ワークの外周部エッジの半分が検出対象となるため、ワーク１０がセンサ３０１，３０２上を通過し終わらなくても、ずれ量を算出することができ、ひいてはずれ量を検出するプロセスの短縮化を図ることができる。また、早期に次プロセスへ移行することができる。
【００５５】
また、従来の位置決め装置だと、センサ上をウェハ（ワーク）が通過することが前提となっていることから、検出位置を取得するためロボットのウェハ保持部の形状が大きく制限される虞があった。しかし、本実施形態に係るロボット１００のハンドの制御方法によれば、ロボット１００のウェハ保持部（アーム１５）の形状に対する制限を小さくすることができる。
【００５６】
また、従来の位置決め装置だと、基準となる座標系が規定されており、異なる座標系では上手く適用することができない虞があった。しかし、本実施形態に係るロボット１００のハンドの制御方法によれば、ある２個のセンサ組に対してキャリブレーションを実行することで、ロボット１００の動作軌道に位置を拘束されない、ロボット１００の座標系とは異なる固有の基準位置をもった座標系（アライメント座標系）を定義することができる。その結果、アライメント座標系上での処理結果をロボット座標系のデータに変換することで、ロボット１００の座標系の種類如何に拘わらず、本発明を適用することができる。
【００５７】
また、従来の位置決め装置だと、ロボット１００の軌道に対して精度よくセンサを設置することが条件であり、ロボット１００の設置位置がずれたときにセンサの設置位置を修正する必要があった。しかし、本実施形態に係るロボット１００のハンドの制御方法によれば、アライメント座標系上でのずれ量の算出であるため、ロボット１００の動作軌道に対する細かなセンサの設置精度は不要となる。つまり、ロボット１００の設置位置がずれたときや、センサの設置位置がずれたときなど、位置条件が変わったときであっても、キャリブレーションを実行することによって、ロボットの位置やセンサ位置等の物理的な調整は不要となる。
【００５８】
また、アライメント座標系は、２個のセンサ３０１，３０２を結ぶ直線と平行な軸をｘ軸とする直交座標系であり、かつ、ワーク１０は円形状であり、基準位置Oにあるワーク１０を理想円とした場合の中心点を、直交座標系の原点とし（図４参照）、２個のセンサ３０１，３０２は、理想円の円周上に配置されているので、円形状のワーク１０が理想円からどれだけずれているか（ΔX，ΔY）を算出することができる。
【００５９】
特に、アライメント座標系を複数のセンサを結ぶ直線と平行な軸をＸ軸とする直交座標系とすることによって、座標変換の回数を低減することができ、ひいては処理負荷の軽減に寄与することができる。
【００６０】
さらに、センサの立上り応答又は立下り応答のどちらか一方の検出信号を用いてずれ量を検出すれば、ワーク１０がセンサ上を通過し終わらなくても、ずれ量を算出することができ、ひいてはずれ量を検出するプロセスの短縮化を図ることができる。
【００６１】
なお、センサをロボット１００に設置し、ダミーワーク等を用意することによって、上述した原理計算で教示ポイントの取得を行ってもよい（自動教示作業）。また、ロボット１００本体にセンサを設置し、基準となる部分を走査することで、ロボット１００本体の精度を計測してもよい。
【産業上の利用可能性】
【００６２】
以上説明したように、本発明は、センサの応答差による誤差が加算されてしまうのを防ぎつつ、ロボットのハンドを制御できるものとして有用である。
【図面の簡単な説明】
【００６３】
【図１】本発明の実施の形態に係るワーク搬送ロボットシステムの構成図である。
【図２】図１に示すワーク搬送ロボットシステムにおけるロボット及びロボットコントローラの電気的構成を示すブロック図である。
【図３】本発明の実施の形態に係るロボットのハンドの制御方法を示すフローチャートである。
【図４】２個のセンサの配置関係などを説明するための説明図である。
【図５】ずれ量の算出理論を説明するための説明図である。
【図６】ずれ量の算出理論を説明するための説明図である。
【図７】ずれ量の算出理論を説明するための説明図である。
【符号の説明】
【００６４】
１００  ロボット
２００  ロボットコントローラ
【図１】
0005453590.tif 000002
【図２】
0005453590.tif 000003
【図３】
0005453590.tif 000004
【図４】
0005453590.tif 000005
【図５】
0005453590.tif 000006
【図６】
0005453590.tif 000007
【図７】
0005453590.tif 000008