(58)【調査した分野】(Int.Cl.,DB名)
【発明の概要】
【発明が解決しようとする課題】
【0005】
上記手法では、3点以上の計測を必要とし、計測のためのロボットの操作が煩雑である。
そこで本発明は、簡単なロボットの操作で簡単なシステム構成で、ロボットの位置を校正可能なシステム、方法およびプログラムを提供することを目的としている。
【課題を解決するための手段】
【0006】
本発明の一形態に係るロボット位置校正システムは、2つの計測対象物と、センサと、制御器とを備えている。2つの計測対象物は、ロボットのアームと、ロボットが設置された作業空間とのいずれか一方に設けられ、基準面内で互いに離れている。センサは、アームと作業空間との他方に設けられ、2つの計測対象物を計測する。制御器は、ロボットのアームを駆動制御する。制御器は、アームを駆動することで、センサを2つの計測対象物に対して相対的に移動させ、センサが2つの計測対象物をそれぞれ計測したときのアームの2つの位置を取得し、取得された2つの位置から得られる2つの計測対象物間の基準面内での計測距離と、2つの計測対象物間の基準面内での実距離とに基づいて、ロボットの基準面内での角度ズレ量を計測する。
【0007】
ここで、ロボット座標系は、三次元直交座標系(XrYrZr座標系)を含み、そのうちの2軸(Xr軸、Yr軸)が基準面を形成する。ロボットが設置される作業空間の装置座標系は、三次元直交座標系(XYZ座標系)を含み、そのうち2軸(X軸、Y軸)が基準面を形成する。つまり、ロボット座標系の3軸のうち基準面法線に沿って延びる軸(Zr軸)が装置座標系において対応する軸(Z軸)と平行または同軸状となるように、ロボットが作業空間内に設置される。
【0008】
ロボットが据付け誤差等により設計値に対してズレた状態で作業空間内に設置されると、ロボット座標系が、装置座標系に対し、あるいは想定されているロボット座標系の配置に対し、基準面内での角度ズレ(Zr軸周りの角度ズレ)、基準面内での位置ズレ(Xr方向およびYr方向の位置ズレ)あるいは基準面法線方向の位置ズレ(Zr方向の位置ズレ)を生じる。なお、基準面は、典型的には水平面である。その場合、基準面内での角度ズレ量は、水平面内での角度ズレ量(鉛直軸周りの角度ズレ量)である。
【0009】
上記構成によれば、このような角度ズレ量を計測することができ、ロボット座標系の校正作業を自動化することができる。
すなわち、制御器によるアームの駆動制御により、センサが2つの計測対象物に対して相対的に移動すると、その過程で計測対象物がセンサで計測される。計測されたときのアームの2つの位置から、基準面内での計測対象物間の距離が計測される。この計測距離は、同じ基準面内での実距離と比較される。上記のとおり、Zr軸がZ軸と一致するようにロボットが設置されていれば、制御器が基準面内での距離を計測することも、基準面内での実距離を予め把握しておくことも、どちらも容易である。
【0010】
この計測距離と実距離との違いは、基準面内での角度ズレ量に起因する。距離の相違は、角度ズレ量と幾何学的に相関する(
図11を参照)。よって、2つの計測対象物を計測するという単純なロボットの操作で、基準面内の角度ズレ量を計測することができる。
制御器は、センサを計測対象物に対して相対的に移動させる際に、アームを基準面内で一方向に直線的に移動させてもよい。
【0011】
アームが一方向に直線的に移動すれば、当該一方向における位置座標の差分がそのまま計測距離となる。上記構成によれば、演算負荷を減らして、計測する回数を減らして、角度ズレ量を計測することができる。
センサは、超音波または光の計測媒体を射出し、計測媒体の計測対象物での反射に基づいて計測対象物を計測してもよい。制御器は、センサを計測対象物に対して相対的に移動させる際に、計測媒体の射出方向がアームの移動方向と基準面内で直交するようにアームを移動させてもよい。
【0012】
計測媒体の射出方向がアームの移動方向に直交していれば、計測媒体の射出方向のアームの移動方向に対するズレを考慮する必要がない。計測する計測対象物の数を減らして、計測する回数を減らして、ズレ量を計測することができる。
制御器は、計測された角度ズレ量が相殺されるようにロボット座標系を補正し、補正後のロボット座標系におけるアームの位置を制御しながらアームを駆動することで、センサを2つの計測対象物に対して相対的に移動させ、センサが2つの計測対象物のいずれかを計測したときのアームの位置を取得し、取得された位置と当該計測対象物の実位置とに基づいてロボットの基準面内における位置ズレ量を計測してもよい。
【0013】
基準面内での角度ズレが相殺された状況下では、基準面内での計測位置と実位置との違いは、基準面内での位置ズレ量に起因する。上記構成によれば、1つの計測対象物を計測する単純なロボットの操作で位置ズレ量も計測することができる。
制御器は、アームを駆動することで、センサを2つの計測対象物に対して基準面の法線方向に相対的に移動させ、センサが計測対象物のいずれかを計測したときのアームの位置を取得し、取得された位置と当該計測対象物の実位置とに基づいて、ロボットの法線方向における位置ズレ量を計測してもよい。
【0014】
上記構成によれば、簡単なロボットの操作で、基準面の法線方向における位置ズレ量も計測することができる。
センサがアームに取り付けられ、2つの計測対象物が作業空間内に設けられており、2つの計測対象物が作業空間内に設置されている装置の構成部品であってもよい。
上記構成によれば、別途専用の計測治具を設けなくても、ロボットの位置を校正することができる。システム構成を簡素化することができる。
【0015】
本発明の一形態に係るロボット位置校正方法は、ロボットのアームと、ロボットが設置された作業空間とのいずれか一方に設けられ、基準面内で互いに離れた2つの計測対象物と、アームと作業空間との他方に設けられ、2つの計測対象物を計測するセンサとを備えるロボット位置校正システムにおいて用いられる。ロボット位置校正方法は、アームを駆動することで、センサを2つの計測対象物に対して相対的に移動させることと、センサが2つの計測対象物をそれぞれ計測したときのアームの2つの位置を取得することと、取得された2つの位置から得られる2つの計測対象物間の基準面内での計測距離と、2つの計測対象物間の基準面内での実距離とに基づいて、ロボットの基準面内での角度ズレ量を計測することと、を備える。
【0016】
本発明の一形態に係るロボット位置校正プログラムは、上記ロボット位置校正方法をコンピュータに実行させる。
上記方法およびプログラムは、前述したロボット位置校正システムと対応する技術的特徴を具備しており、前述したロボット位置校正システムと同様の作用効果を奏する。
【発明の効果】
【0017】
本発明によれば、簡単なロボットの操作で簡単なシステム構成で、ロボットの位置を校正することができる。
【発明を実施するための形態】
【0019】
以下、図面を参照しながら本発明の実施形態について説明する。
(ロボット)
図1および
図2は、本発明の実施形態に係るロボット位置校正システム100が適用される半導体製造設備1を示す。半導体製造設備1では、クリーン環境に保たれた作業空間2が形成され、円盤状の半導体ウェハWが作業空間2内で搬送および製造される。半導体製造設備1は、1以上のロボット3および複数の載置部4(図は1つのみ示す)を備えており、これらが作業空間2内に配置されている。
【0020】
載置部4は、半導体ウェハWを載置する機能を有していれば、どのようなものであってもよい。載置部4は、FOUP(Front Opening Unified Pod)等の半導体ウェハWを収容する容器によって実現されてもよい。載置部4は、半導体ウェハWを位置決めするアライナによって実現されてもよい。載置部4は、半導体製造プロセスの各種工程(洗浄、成膜、露光など)を実施する処理装置によって実現されてもよい。載置部4は、容器と処理装置との間のインタフェースであるロードポートによって実現されてもよい。
【0021】
図示例では、載置部4が、作業空間2の床面に設置された基台5と、基台5の上面に設けられた複数のピン6とによって構成されている。複数のピン6は、基台5の上面から互いに同じ距離だけ上方に突出している。複数のピン6は、載置部4の中心軸C4を中心として周方向に互いに等間隔をおいて配置されている。半導体ウェハWは、複数のピン6に載置され、この載置部4によって水平姿勢で支持される。
【0022】
ロボット3は、作業空間2内で、ある載置部4から別の載置部4へと半導体ウェハWを搬送する。ロボット3は、基台10およびアーム11を備えている。基台10は、作業空間2の床面にスペーサ15を介して設置されている。
アーム11は、基台10に対して伸縮する昇降軸12、昇降軸12から順次に連結された複数のリンク13a,13b、および、これらリンク13a,13bの先端部に取り付けられたハンド14を有する。ハンド14は、半導体ウェハWを解放可能に保持する。
【0023】
本書では、複数のリンク13a,13bのみではなく、エンドエフェクタであるハンド14も、「アーム11」の一部を構成する。複数のリンク13a,13bは狭義のアームであり、昇降軸12および複数のリンク13a,13bは、エンドエフェクタであるハンド14を変位させるエフェクタ移動機構である。
ロボット3は、一例として、2リンク式の水平多関節ロボットである。アーム11は、第1リンク13aおよび第2リンク13bを有している。第1リンク13aの基端部は、昇降軸12の上端部に対して第1回転軸A1周りに回転可能に連結されている。第2リンク13bの基端部は、第1リンク13aの先端部に対して第2回転軸A2周りに回転可能に連結されている。ハンド14は、第2リンク13bの先端部(リンク群の全体としての先端部)に対して第3回転軸A3周りに回転可能に連結されている。
【0024】
昇降軸12、第1リンク13a、第2リンク13bおよびハンド14は、基台10からこの順で重ねられており、回転軸A1〜A3が互いに平行である。ロボット据付け時のスペーサ15における傾き調整の結果として、昇降軸12および回転軸A1〜A3は、鉛直に向けられる。
ロボット3は、昇降軸12を伸縮させる昇降アクチュエータ20、第1リンク13aを第1回転軸A1周りに回転させる第1回転アクチュエータ21、第2リンク13bを第2回転軸A2周りに回転させる第2回転アクチュエータ22、および、ハンド14を第3回転軸A3周りに回転させる第3回転アクチュエータ23を備えている。昇降アクチュエータ20が動作すると、昇降軸12の伸縮動作に応じてハンド14が鉛直方向に変位する。回転アクチュエータ21〜23が動作すると、リンク13a,13bおよびハンド14の回転動作に応じてハンド14が水平面内で変位する。
【0025】
各アクチュエータ20〜23は、一例として、電気モータによって構成される。昇降アクチュエータ20により発生される回転を昇降軸12の並進に変換するため、ロボット3は、ボールねじ機構のような運動変換機構を備えていてもよい。
ハンド14の形状も保持の形式も、特に限定されない。
図1および
図2に例示されるように、ハンド14は、薄板材で構成され、平面視でU字状あるいはY字状に形成される。ハンド14は、基端部16と、基端部16から延びる一対の先端部17とを有する。ハンド14は、平面視でハンド中心線C14を基準に線対称に形成されている。基端部16は、リンク群の先端部に回転可能に連結される。
【0026】
ハンド14は、半導体ウェハWを吸着機構で吸着し、あるいは、チャック機構で機械的に把持するように構成されている。本実施形態では、保持のための機構の一例として、吸着部18が、一対の先端部17それぞれの下面に設けられている。この他、半導体ウェハWを把持する複数のチャック部が、ハンド14の上面に設けられていてもよい。ロボット3は、チャック部や吸着部18のような保持機構を動作させる保持アクチュエータ24(
図5を参照)を備える。
【0027】
ロボット3の実稼働時における、載置部4からハンド14への半導体ウェハWの移載について説明する。半導体ウェハWは、その中心が載置部4の中心軸C4上に位置する状態で、載置部4に載置されている。まず、空状態のハンド14が、載置部4の上方に位置づけられる。このとき、ハンド中心線C14上の基準点が、平面視で載置部4の中心軸C4と重ねられる。次に、ハンド14と半導体ウェハWとの間のクリアランスが所定値になるまで、ハンド14を下降させる。次に、保持アクチュエータ24(
図5を参照)を動作させる。これにより、半導体ウェハWがピン6から離れ、ハンド14が半導体ウェハWを保持する(
図2はこのタイミングを示す)。保持状態では、半導体ウェハWの中心がハンド14の基準点と平面視で重なる。ハンド14を移動させることで、半導体ウェハWが作業空間2内で搬送される。
【0028】
ハンド14から載置部4への半導体ウェハWの移載も上記同様である。まず、保持状態のハンド14が、載置部4の上方に位置づけられる。このとき、ハンド中心線C14上の基準点ひいては半導体ウェハWの中心が、平面視で載置部4の中心軸C4と重ねられる。次に、半導体ウェハWとピン6との間のクリアランスが所定値になるまで、ハンド14を下降させる(
図2はこのタイミングを示す)。次に、保持アクチュエータ24(
図5を参照)を停止させる。これにより、半導体ウェハWは、ハンド14から解放され、その中心が載置部4の中心軸C4上に位置する状態で載置部4に載置される。なお、ハンド14は半導体ウェハWを下から掬い上げて保持してもよい。
【0029】
ハンド14は、ロボット座標系CSr内に予め設定された複数の教示点に順次位置付けられるようアクチュエータ20〜23の動作を制御することにより、上記のように作業空間2内で移動する。
ロボット座標系CSrは、ロボット3に原点が置かれた座標系である。ロボット座標系CSrは、三次元直交座標系および三次元極座標系の両方を含むが、本書では特段断らない限り、三次元直交座標系として説明する。原点は、アーム11の動作に関わらず不動の基台10に設定されている。ロボット座標系CSrは、互いに直交するXr軸、Yr軸およびZr軸で構成されている。
【0030】
一方、半導体製造設備1には、装置座標系CS1が設定されている。装置座標系CS1は、作業空間2の任意の位置(例えば、床面)に原点が置かれた三次元直交座標系であり、互いに直交するX軸、Y軸およびZ軸で構成されている。X軸およびY軸は水平面を形成し、Z軸は鉛直に延びる。
ロボット座標系CSrのXr軸およびYr軸は基準面RSを形成し、Zr軸は基準面RSの法線に沿って延びる。回転軸A1〜A3は、Zr軸に平行である。前述したとおり、スペーサ15を利用した据付けにより、基準面RSが水平面を成してZr軸が鉛直に延びる姿勢で、ロボット3は設置される。本実施形態では、Zr軸がZ軸と平行である。
【0031】
しかし、ロボット3が、設計値に対し、基準面RS内で位置ズレした状態(Xr方向またはYr方向に位置ズレした状態)で、基準面RSの法線周りに角度ズレした状態(Zr軸周りに角度ズレした状態)で、あるいは法線方向に位置ズレした状態(Zr方向に位置ズレした状態)で、作業空間2に設置されることがある。これにより、ロボット座標系CSrと装置座標系CS1との間の位置関係も設計値からズレる。このようなロボット座標系CSr内に設定された教示点が参照されると、ハンド14の位置を半導体製造設備1の構成装置(載置部4等)に対して精密に制御できず、半導体ウェハWの位置を精密に制御できない。
【0032】
以下では、ロボット座標系CSrの装置座標系CS1に対するXr方向の距離の設計値を「ax0」とし、Yr方向の距離の設計値を「ay0」とし、Xr方向における設計値ax0に対するズレ量を「Δx」とし、Yr方向における設計値ay0に対するズレ量を「Δy」とし、Zr軸周りの角度の設計値を「Θ0」とし、Zr軸周りの角度の設計値Θ0に対するズレ量を「ΔΘ」とする(
図7、
図18を参照)。本実施形態では、角度の設計値Θ0が0度であり、理想状態において、Xr軸がX軸と平行であり、Yr軸がY軸と平行である。そのため、角度ズレ量ΔΘは、Xr軸とX軸とが成す角、あるいは、Yr軸とY軸とが成す角である。また、Zr方向の距離の設計値を「az0」とし、Zr方向における設計値az0に対するズレ量を「Δz」とする(
図16を参照)。
【0033】
(ロボット位置校正システム)
図3〜
図5は、本実施形態に係るロボット位置校正システム100を示す。ロボット位置校正システム100は、上記のような半導体製造設備1に好適に適用され、ロボット座標系CSrの装置座標系CS1に対する(あるいは設計値に対する)ズレ量Δx,Δy,ΔΘ,Δz(
図7、
図16を参照)を計測する。この計測は、ロボット3の作業空間2への新規納入時やロボット3のメンテナンス作業後など、ロボット3の実稼働の前にロボット座標系CSrを校正するために実行される。
【0034】
図3〜
図5に示すように、ロボット位置校正システム100は、2つの計測対象物51,52、センサ45、制御器30およびエンコーダ40〜43を備えている。制御器30およびエンコーダ40〜43は、ロボット3の実稼働時にも利用される。ロボット位置校正システム100は、ハンド14が空の状態で動作し、保持アクチュエータ24および吸着部18は当該システム100では利用されない。
【0035】
図3および
図4を参照して、2つの計測対象物51,52は、ロボット3のアーム11と作業空間2とのいずれか一方に設けられる。センサ45は、その他方に設けられる。前述したとおり、「アーム11」は、リンク13a,13bのほかハンド14を含む。「作業空間2に設けられる」とは、作業空間2内におけるアーム11以外の任意の位置に設けられることをいう。
【0036】
本実施形態では、2つの計測対象物51,52は、作業空間2内に設置されたロボット3以外の装置の構成部品であり、一例として、載置部4のピン6である。本実施形態では、載置部4がピン6を3つ備えるが、そのうちの2つがロボット位置校正システム100において計測対象物51,52として兼用される。
センサ45は、ロボット3のアーム11、より詳しくはハンド14に設けられている。本実施形態では、ハンド14が半導体ウェハWをその下面で保持する。センサ45は、その反対側である上面に着脱可能に取り付けられている。センサ45は、実稼働時にも利用されてもよいし、本実施形態のように実稼働時には取り外されてもよい(
図1を参照)。
【0037】
センサ45は、超音波あるいは光を計測媒体Lとして射出する出力部(不図示)と、計測対象物51,52で反射された計測媒体Lを入力する入力部(不図示)とを有する。センサ45は、計測対象物51,52での計測媒体Lの反射に基づき計測対象物51,52を計測する。計測内容に関し、センサ45は、計測媒体Lの射出方向に計測対象物51,52が存在することのみを検出してもよく、センサ45から計測対象物51,52までの射出方向における距離を検出してもよい。このように、センサ45は、超音波センサあるいは光電センサによって実現され、存否検知の機能だけでなく測距あるいは変位検知の機能を有していてもよい。
【0038】
本実施形態では、一例として、センサ45は、計測媒体Lをハンド中心線C14と平行に射出する。この「平行」は、本実施形態のように、平面視で計測媒体Lがハンド中心線C14と重なる場合も含む。ただし、これは一例であり、計測媒体Lは、ハンド中心線C1と平面視でズレた位置でハンド中心線C14と平行に射出されてもよく、また、計測媒体Lは、ハンド中心線C1に対して傾斜する方向に射出されてもよい。
【0039】
計測対象物51,52は、センサ45によって計測されやすいことを求められる。載置部4のピン6は、平坦な基台5の上面から突出し、その周囲は、半導体ウェハWの載置のために広く開放されている。そのため、センサ45がピン6の周囲に計測媒体Lを射出したときに、ピン6以外のものを計測対象物51,52として誤検出するのを抑制することができる。よって、ピン6は、計測対象物51,52として好適に兼用される。
【0040】
図5を参照して、制御器30は、CPU31、メモリ32および入出力インタフェース33を有しており、これらは通信バスを介して相互接続されている。
入出力インタフェース33は、アクチュエータ20〜24、エンコーダ40〜43およびセンサ45と接続されている。エンコーダ40〜43は、アクチュエータ20〜23に対応して設けられており、対応するアクチュエータ20〜23の動作位置(例えば、電気モータの回転位置)を検出する。
【0041】
CPU31は、メモリ32に記憶される作業プログラム34に従ってアクチュエータ20〜24の動作を制御する。これにより、ロボット3が作業空間2内で所要の作業を行うことができ、半導体製造設備1を実稼働させることができる。作業プログラム34には、実稼働前に設定された教示点が含まれている。CPU31は、エンコーダ40〜43で検出されるアクチュエータ20〜23の動作位置からアーム11の位置および姿勢を逆変換処理によって導出し、導出された位置および姿勢をフィードバックしてアーム11を移動させる。このように、エンコーダ40〜43は、アーム11の位置を検出するアーム位置検出器の一例である。
【0042】
CPU31は、メモリ32に記憶されるロボット位置校正プログラム35に従ってアクチュエータ20〜23の動作を制御し、アーム11を駆動制御する。アーム11の駆動制御に際しては、上記と同様にして、エンコーダ40〜43で検出されるアクチュエータ20〜23の動作位置からアーム11の位置および姿勢が導出され、導出された位置および姿勢がフィードバックされる。ロボット位置校正プログラム35では、センサ45の計測結果が参照され、また、エンコーダ40〜43の検出結果に基づき導出されたアーム11の位置が参照される。
【0043】
メモリ32は、ROM、RAMおよびEEPROM等の記憶装置で構成されている。作業プログラム34およびロボット位置校正プログラム35のほか、これらプログラム34,35に従って実行される処理に必要な情報あるいはデータを一時的に記憶する。
メモリ32は、少なくともロボット位置校正プログラム35での参照のため、装置設計データ36を記憶している。装置設計データ36は、作業空間2内に設置された様々な装置の位置あるいは寸法を示す。
【0044】
本実施形態では、2つの計測対象物51,52が作業空間2内に設けられている。装置設計データ36は、装置座標系CS1で定義された2つの計測対象物51,52の位置を示す座標値(x1,y1),(x2,y2)を、2つの計測対象物51,52の実位置を示す情報として含む。装置設計データ36は、2つの計測対象物51,52の間の実距離を示す情報を含んでいてもよい。実距離には、2つの計測対象物51,52の間の直線距離のほか、X成分の距離(x2−x1)およびY成分の距離(y2−y1)も含まれる。更に、装置設計データ36は、ロボット座標系CSrの原点と装置座標系CS1の原点との間のXr方向、Yr方向およびZr方向それぞれにおける距離の設計値ax0,ay0,az0を示すデータを含む。装置設計データ36は、ロボット座標系CSrの装置座標系CS1に対するZr軸周りの角度の設計値Θ0を示すデータを含む。
【0045】
ロボット位置校正プログラム35は、ロボット位置校正システム100において用いられるロボット位置校正方法をコンピュータに実行させる。CPU31あるいはこれを備える制御器30は、このようなコンピュータの一例である。本実施形態では、ロボット位置校正プログラム35が、実稼働時にロボット3の動作を制御する制御器30に記憶されているが、このような制御器30と通信可能に接続された別のコンピュータに記憶されていてもよい。
【0046】
(ロボット位置校正方法)
図6は、本発明の実施形態に係るロボット位置校正方法を示す。ロボット位置校正方法は、基準面校正処理S10および法線校正処理S40を備えている。基準面校正処理S10は、角度校正処理S20および位置校正処理S30を備えている。基準面校正処理S10および法線校正処理S40は、どちらが先に実行されてもよい。角度校正処理S20は、位置校正処理S30より先に実行される。
【0047】
基準面校正処理S10では、基準面RS内(XrYr平面内あるいは水平面内)におけるズレ量Δx,Δy,ΔΘが計測され、計測されたズレ量Δx,Δy,ΔΘに基づいてロボット座標系CSrが校正される(
図7〜
図13を参照)。角度校正処理S20で角度ズレ量ΔΘが計測され、位置校正処理S30で位置ズレ量Δx,Δyが計測される。法線校正処理S40では、基準面RSの法線方向(Zr軸方向あるいは鉛直方向)におけるズレ量Δzが計測され、計測されたズレ量Δzに基づいてロボット座標系CSrが校正される(
図14〜
図17を参照)。
【0048】
(基準面校正処理)
図7は、ロボット座標系CSrの基準面RS内における装置座標系CS1に対するズレを示す。ここで、点Pの装置座標系CS1での座標を(x,y)とし、ロボット座標系CSrでの座標を(xr,yr)とする。
ロボット座標系CSrが設計どおりに配置された場合(二点鎖線を参照)、本実施形態では設計値Θ0が0度であり、Xr軸およびYr軸がX軸およびY軸とそれぞれ平行であり、ロボット座標系CSrの原点が、装置座標系CS1の原点から、Xr方向に設計値ax0だけ離れ、Yr方向に設計値ay0だけ離れる。ロボット座標系CSrと装置座標系CS1との間の位置関係は、xr=x+ax0、yr=y+ay0の理想状態を満たす。
【0049】
一方、ロボット座標系CSrが、基準面RS内で位置ズレおよび角度ズレを生じた状態で配置された場合(実線を参照)、ロボット座標系CSrと装置座標系CS1との間の位置関係は、xr=ax0+Δx+xcosΔΘ+ysinΔΘ、yr=ay0+Δy−xcosΔΘ+ysinΔΘで表される。制御器30が基準面RS内のズレ量Δx,Δy,ΔΘを認識していなければ、制御器30は、実稼働時に座標系CSr,CS1間の位置関係がxr=x+ax0、yr=y+ay0で表される理想状態にあるとの認識の下で、点Pが点Perrの位置にあると誤認する。例えば点Pに載置部4が存在する場合、半導体ウェハWの移載を正確に行えない。
図8は、基準面校正処理S10の手順を示す。
図9〜
図13は、基準面校正処理S10の説明図である。基準面校正処理S10は、角度校正処理S20および位置校正処理S30の順で進む。なお、以降に説明するアクチュエータ20〜23の動作、ハンド14の位置は、制御器30によって制御される。
【0050】
(角度校正処理)
角度校正処理S20では、まず、ハンド14が初期位置に移動する(S21)。具体的には、
図4を参照して、計測媒体Lが計測対象物51,52で反射できるように、昇降アクチュエータ20の動作を通じてハンド14の高さが調整される。
図9(A)を参照して、ハンド14が2つの計測対象物51,52に対してXr方向の一側(
図9(A)の紙面左側)に若干離れるように、回転アクチュエータ21〜23の動作を通じてハンド14のXr方向の位置が調整される。ハンド14が計測対象物51,52(あるいは載置部4)からYr方向に若干離れるように、回転アクチュエータ21〜23の動作を通じてハンド14のYr方向の位置が調整される。ハンド中心線C14および計測媒体Lの射出方向がYr方向となるように、回転アクチュエータ21〜23の動作を通じてハンド14の基準面RS内での姿勢が調整される。なお、制御器30はこの時点でYr軸のY軸に対する角度ズレを認識していないから、Yr方向はY方向に対して傾斜している。
【0051】
次に、センサ45を動作させながら、ハンド14をXr方向へ移動させる(S22)。これにより、センサ45が2つの計測対象物51,52に対してXr方向へ直線的に相対的に移動する。なお、制御器30はこの時点でXr軸のX軸に対する角度ズレを認識していないから、Xr方向はX方向に対して傾斜している。ただし、ハンド14の移動方向はXr方向に限定されない。
【0052】
図9(A)を参照して、ハンド14は、2つの計測対象物51,52に対してXr方向の他側(
図9(A)の紙面右側)に離れた位置まで移動する。その過程で、計測媒体Lが、まず第1計測対象物51で反射し(
図9(B)を参照)、次いで第2計測対象物52で反射する(
図9(C)を参照)。
制御器30は、第1計測対象物51がセンサ45で計測されたときのハンド14のXr方向の位置xr1を取得する(S23)。また、制御器30は、第2計測対象物52がセンサ45で計測されたときのハンド14のXr方向の位置xr2を取得する(S24)。以下、ここで取得された2つの位置を「第1計測位置xr1」および「第2計測位置xr2」と称する。2つの計測位置xr1,xr2は、エンコーダ41〜43の検出結果から導出される。
【0053】
図10は、センサ45に入力される計測媒体Lの強度を示す。計測対象物51,52は、X方向(Xr方向)に幅(例えば、5mm)を有する。他方、ハンド14の移動速度は、センサ45の計測周期の間に計測対象物51,52の幅を超える距離を移動しないような低い値に設定されている。そのため、ハンド14の移動中に、センサ45は2つの計測対象物での反射を入力することができる。
【0054】
第1計測位置xr1は、計測媒体Lが第1計測対象物51を通過し始めて計測媒体Lの強度が立ち上がる位置から、計測媒体Lが第1計測対象物51を通過し終えて計測媒体Lの強度が収束する位置との間に設定される。例えば、第1計測位置xr1は、これら2位置の中間位置に設定される。第2計測位置xr2についても、これと同様である。
3つのピン6のうちの2つが計測対象物51,52として兼用されており、ハンド14の移動中には、計測対象物51,52として用いられないピン6がセンサ45によって検出される(二点鎖線を参照)。この場合において、計測対象物51,52は、Xr方向に離れた2つのピン6が選択される。できるだけXr方向に離れた2つを用いることで、ズレ量の計測精度が向上する。
【0055】
次に、制御器30が、2つの計測対象物51,52間の基準面RS内での計測距離と、2つの計測対象物51,52間の基準面RS内での実距離とに基づいて、角度ズレ量ΔΘを計測する(S25)。
図11を参照して、「計測距離」とは、第1計測位置xr1と第2計測位置xr2との差分(xr2−xr1)であり、ロボット座標系CSrにおいて計測された2つの計測対象物51,52間のXr方向における距離である。
【0056】
「実距離」とは、2つの計測対象物51,52の間の実際の距離である。ここでは、ロボット3以外の装置は設計値どおりに設置されているものとしている。X方向の実距離は、2つの計測対象物51,52の間のX方向における距離であり、装置座標系CS1でのX座標の差分値(x2−x1)である。Y方向の実距離は、2つの計測対象物51,52の間のY方向における距離であり、装置座標系CS1でのY座標の差分値(y2−y1)である。前述したとおり、制御器30は、装置設計データ36の一部として、2つの計測対象物51,52の装置座標系CS1における座標値(x1,y1),(x2,y2)、X方向の実距離およびY方向の実距離を予め記憶している。
【0057】
角度ズレがなければ、計測距離はX方向の実距離と等しい。角度ズレ量ΔΘを考慮すると、計測距離と実距離とは、式:xr2−xr1=(x2−x1)cosΔΘ+(y2−y1)sinΔΘを満たす。この式は、
図7で示された座標系CSr,CS1間の位置関係を表す式から導出される。角度ズレ量ΔΘは、この式に対して三角関数の合成等の数学処理を行うことで、導出される。
【0058】
図7に示したように、位置同士の比較では、2位置間の関係性に、角度ズレ量ΔΘの他にX方向の位置ズレ量ΔxまたはY方向の位置ズレ量Δyも介在する。これに対し、角度校正処理S20では、Xr方向という一方向の距離が比較対象である。
2つの計測位置xr1,xr2の差分をとると、X方向の位置ズレ量Δxが相殺される。また、Yr方向の位置ズレ量Δyは考慮しなくてもよい。実距離は、既知の値である。よって、X方向の位置ズレ量ΔxおよびY方向の位置ズレ量Δyを認識していない状況でも、角度ズレ量ΔΘを上記の式に従って導出することができる。
【0059】
また、計測媒体Lの射出方向は、ハンド14の移動方向に直交するYr方向である。このため、センサ45が第1計測対象物51を計測したとき、ハンド14のXr方向の位置xr1は、第1計測対象物51のXr方向の位置と同じである。第2計測対象物52についてもこれと同様である。センサ45と計測対象物51,52との間のXr方向のズレも考慮する必要がなく、角度ズレ量ΔΘを上記の式に従って導出することができる。
このように、本実施形態によれば、簡単なロボット3の操作で簡単なシステム構成で、角度ズレ量ΔΘを計測することができる。
【0060】
(位置校正処理)
これにより、角度校正処理S20が終了し、位置校正処理S30が開始する。制御器30は、計測された角度ズレ量ΔΘが相殺されるようにロボット座標系CSrを補正する(S29)。
図12を参照して、ロボット座標系CSrは、角度ズレ量ΔΘを相殺する補正量(−ΔΘ)だけZr軸周りに回転するように補正される。参照符号「CSrc」は、この補正後のロボット座標系であり、「Xrc軸」および「Yrc軸」は、補正後のロボット座標系CSrcにおいて基準面RCを形成する2軸である。Xrc軸は、Xr軸を−ΔΘの補正量だけ回転させることで得られ、Yrc軸は、Yr軸を−ΔΘの補正量だけ回転させることで得られる。これにより、ロボット座標系CSrcの装置座標系CS1に対するZr軸周りの角度が設計値Θ0となる(本実施形態では0度)。
【0061】
次に、ステップS21と同様にして、ハンド14が初期位置へ移動する(S31)。
図3を参照して、ハンド14は計測対象物51に対してXrc方向の一側に若干離れるように、回転アクチュエータ21〜23の動作を通じてハンド14のXrc方向の位置が調整される。ハンド14が計測対象物51(あるいは載置部4)からYrc方向に若干離れるように、回転アクチュエータ21〜23の動作を通じてハンド14のYrc方向の位置が調整される。ハンド中心線C14および計測媒体Lの射出方向がYrc方向となるように、回転アクチュエータ21〜23の動作を通じてハンド14の基準面RS内での姿勢が調整される。角度ズレ量ΔΘが相殺されているので、Yrc方向はY方向と平行であり、計測媒体LはY方向に射出される。
【0062】
次に、ステップS22と同様にして、センサ45を動作させながら、ハンド14をXrc方向へ移動させる(S32)。これにより、センサ45が計測対象物51に対してXrc方向へ直線的に相対的に移動する。角度ズレ量ΔΘが相殺されているので、Xrc方向はX方向と平行であり、ハンド14はX方向に移動する。
次に、ステップS23と同様にして、制御器30は、第1計測対象物51がセンサ45で計測されたときのハンド14のXrc方向の位置xrc1を取得する(S33)。この計測位置xrc1も、エンコーダ41〜43の検出結果から導出される。角度校正処理S20では、2つの計測対象物51,52が計測されたが、位置校正処理S30では、1つの計測対象物が計測されればよい。本実施形態では、第1計測対象物51が計測されるとしたが、第2計測対象物52が計測されてもよい。
【0063】
次に、制御器30は、第1計測対象物51のYrc方向の位置yrc1を取得する(S34)。この計測位置yrc1の取得には、センサ45の測距機能が用いられる。本実施形態では、ステップS32におけるハンド14の移動中、ハンド14ひいてはセンサ45のYrc方向の位置は不変である。移動中のセンサ45のYrc方向の位置に、センサ45によって計測されたセンサ45から第1計測対象物51までの距離を加味することで、補正後のロボット座標系CSrcにおいて第1計測対象物51のYrc方向の計測位置yrc1が定義される。センサ45は移動方向に直交するYrc方向に計測媒体Lを射出しているため、計測された距離にXrc成分は含まれない。よって、簡易な演算で計測位置yrc1を取得することができる。
【0064】
次に、制御器30は、計測位置xrc1と第1計測対象物51のX方向の実位置x1とに基づいて、Xrc方向の位置ズレ量Δxを計測する(S36)。制御器30は、計測位置yrc1と第1計測対象物51のY方向の実位置y1とに基づいて、Yrc方向の位置ズレ量Δyを計測する(S37)。「実位置」は、計測対象物51の実際の位置である。X方向の実位置x1は、第1計測対象物51の装置座標系CS1でのX座標である。Y方向の実位置y1は、第1計測対象物51の装置座標系CS1でのY座標である。
【0065】
図13を参照して、ステップS36では、計測位置xrc1と第1計測対象物51のX方向の実位置x1とに基づいて、位置ズレ量Δxが計測される。2つの位置xrc1,x1の差分は、現在のロボット座標系CSrcの原点から装置座標系CS1の原点までのX方向(これと平行なXrc方向)の距離axである。この距離axは、設計値ax0と位置ズレ量Δxとの和であるから、制御器30は、距離axから設計値ax0を減算することで、位置ズレ量Δxを計測することができる。前述したとおり、設計値ax0は、メモリ32に装置設計データ36の一部として予め記憶されている。
【0066】
ステップS37もこれと同様である。2つの位置yrc1,y1の差分が、現在のロボット座標系CSrcの原点から装置座標系CS1の原点までのY方向(これと平行なYrc方向)の距離ayである。制御器30は、距離ayから、メモリ32に装置設計データ36の一部として予め記憶されている設計値ay0を減算することで、位置ズレ量Δyを計測することができる。
【0067】
これにより、位置校正処理S30ひいては基準面校正処理S10が終了する。
図7を参照して、ズレ量Δx,Δy,ΔΘが計測されたため、制御器30は、組付け誤差あるいは据付け誤差があっても、ロボット座標系CSrを設計どおりのロボット座標系CSr0に補正することができる。よって、ロボット座標系CSr0と装置座標系CS1との間の位置関係が理想状態となる。制御器30は、点Pを示すロボット座標系CSrでの座標値(xr,yr)をズレ量Δx,Δy,ΔΘを認識したうえで設定することができ(
図7の紙面左上部の関係式を参照)、実稼働時にアーム11の位置を精密に制御することができる。
【0068】
(法線校正処理)
図14は、法線校正処理S40の手順を示す。
図15〜
図17は、法線校正処理S40の説明図である。法線校正処理S40では、まず、ハンド14が初期位置に移動する(S41)。具体的には、
図15および
図16を参照して、計測媒体Lが基台5の側面で反射するように(基台5の上面よりも下方で射出されるように)、昇降アクチュエータ20の動作を通じてハンド14の高さが調整され、かつ、回転アクチュエータ21〜23の動作を通じてハンド14のXr方向およびYr方向の位置が調整される。図では計測媒体LがXr方向に射出されているが、これは図示の便宜のためであり、ハンド14の基準面RS内での姿勢は特に限定されない。
【0069】
次に、センサ45を動作させながら、ハンド14をZr方向へ移動させる(S42)。これにより、センサ45がZr方向へ移動する。
図16を参照して、計測媒体Lが載置部4よりも上方を通るようになるまで、ハンド14およびセンサ45が上方へ移動する。この過程で、センサ45の計測媒体Lが基台5の側面で反射する第1状態から(場合により、センサ45の計測媒体Lがピン6で反射する状態を経て)、センサ45の計測媒体Lが載置部4の構成部品によって反射できない第2状態へと遷移する。ピン6での反射は特に必要ではない。計測媒体Lが基台5の上面に達したときに、この第1状態から第2状態への遷移が生じる。この例では、基台5の上面が計測対象物である。
【0070】
次に、制御器30が、計測対象物がセンサ45で計測されたときのハンド14のZr方向の位置zr1を取得する(S43)。この計測位置xr1は、エンコーダ40の検出結果から導出される。
図17を参照して、第1状態と第2状態とでは、センサ45から計測媒体Lが反射する部位までの距離、あるいは、計測媒体Lが反射する部分の材料の相違により、センサ45の入力部に入力される計測媒体Lの性質(強度など)が異なる。制御器30は、この入力結果が特異に変化する点を特定し、この変化点において計測対象物(本例では、基台5の上面)が計測されたと判定する。そして、このときのハンド14のZr方向の位置が計測位置zr1として取得される。
【0071】
次に、制御器30が、この計測位置zr1とZ方向の実位置z1とに基づいてZr方向の位置ズレ量Δzを計測する(S44)。「実位置」は、計測対象物の実際の位置である。Z方向の実位置z1は、計測対象物の装置座標系CS1でのZ座標である。
図16および
図17を参照して、ステップS44では、計測位置zr1と計測対象物のZ方向の実位置z1とに基づいて、位置ズレ量Δzが計測される。2つの位置zr1,z1の差分は、現在のロボット座標系CSrの原点から装置座標系CS1の原点までのZ方向(これと平行なZr方向)の距離azである。この距離azは、設計値az0と位置ズレ量Δzとの和である。制御器30は、距離azから、メモリ32に装置設計データ36の一部として予め記憶されている設計値az0を減算することで、位置ズレ量Δzを計測する。
【0072】
これにより、法線校正処理S40が終了する。ズレ量Δzが計測されたため、制御器30は、組付け誤差あるいは据付け誤差があっても、ロボット座標系CSrを設計どおりに補正することができる。よって、ロボット座標系CSrの装置座標系CS1に対する位置関係が想定どおりとなる。
以上に説明したとおり、本実施形態によれば、簡易なロボット3の操作で簡易なシステム100の構成で、ロボット座標系CSrの装置座標系CS1に対するズレ量Δx,Δy,ΔΘ,Δzを計測することができ、ロボット座標系CSrを校正することができる。したがって、実稼働時のロボット3の精密な位置制御を支援することができる。
【0073】
(変形例)
これまで本発明の実施形態について説明したが、上記構成は本発明の範囲内で適宜変更、追加および/または削除することができる。
図18は、変形例に係るロボット座標系の装置座標系に対するズレを示す。上記実施形態では、ロボット座標系CSr0の装置座標系CS1に対するZr軸周りの角度の設計値Θ0が0度であったが、設計値Θ0は0度以外の角度でもよい。この場合、角度校正処理を実行することで、現在のロボット座標系CSrの装置座標系CS1に対する角度が測定される。この角度は、設計値Θ0と角度ズレ量ΔΘとの和である。よって、この変形例においても、角度ズレ量ΔΘを導出することができる。
【0074】
上記実施形態では、ステップS22においてアーム11がXr方向の一方向へ移動し、センサ45がこの移動方向に直交するYr方向に計測媒体Lを射出する。この移動方向および射出方向は、一例であり、変更可能である。アーム11は、基準面RS内の任意の一方向に移動してもよく、センサ45は、基準面RS内の任意の一方向に移動してもよい。この場合、
図11に示した式が、移動方向のXr方向に対する傾斜角、および、射出方向の移動方向に対する傾斜角を考慮に入れた式に変換される。これら傾斜角が既知であれば、変換後の式に従って、上記実施形態と同様にして角度校正処理を実行することができる。
【0075】
図19は、変形例に係るロボット位置校正システム100Aを示す。上記実施形態では、センサ45がロボット3のアーム11(ハンド14)に設けられ、計測対象物51,52が作業空間2内に設置された載置部4の構成部品であったが、この配置は逆でもよい。変形例では、計測対象物51A,52Aがロボット3のアーム11(ハンド14)に設けられている。センサ45Aは、作業空間2内においてロボット3のアーム11以外の装置(一例として、載置部4の基台5の上面)に設けられている。この場合においても、アーム11を移動させることで、センサ45Aが計測対象物51A,52Aに対して相対的に移動する。よって、上記の実施形態と同様にして、ズレ量を計測することができる。
【0076】
上記の実施形態では、2つの計測対象物51,52を用いてズレ量が計測されたが、これは上記のズレ量の計測原理に必要な最低限の計測対象物の個数である。3以上の計測対象物の計測結果に基づいてズレ量を計測し、複数の計測結果を統計処理(平均等)することで最終的なズレ量を決定してもよく、それにより計測精度は向上する。
センサ45は、ハンド14の他、ロボット3のアーム11を構成する他の部位に設けられていてもよい。ただし、ハンド14に設けていればセンサ45の姿勢の制御が簡易であるため、計測媒体Lの射出方向の制御が簡易となる。
【0077】
ロボット3は、3リンク以上の水平多関節ロボットでもよい。ロボット3は、垂直多関節ロボットのように、その他の形式のロボットでもよい。ロボット3によって取り扱われるワークは、半導体ウェハWに限られず、ロボット3のエンドエフェクタは、ワークを把持するハンドに限られない。すなわち、ロボット位置校正システム100は、半導体ウェハWの搬送以外の作業を行うロボット3にも好適に適用される。
【解決手段】2つの計測対象物51,52がロボット3のアーム11と作業空間2との一方に設けられ、センサ45がその他方に設けられる。制御器30は、アーム11を駆動することで、センサ45を2つの計測対象物51,52に対して相対的に移動させ、センサ45が2つの計測対象物51,52をそれぞれ計測したときのアーム11の2つの位置xr1,xr2を取得する。制御器30は、取得された2つの位置xr1,xr2から得られる2つの計測対象物51,52間の計測距離と、2つの計測対象物51,52間の実距離とに基づいて、ロボット3の基準面RS内での角度ズレ量ΔΘを計測する。