(57)【特許請求の範囲】
【請求項１】
被制御体を駆動するモータと、前記モータの回転角度に基づく前記被制御体の位置データを所定の周期で検出するセンサと、前記モータをサーボ制御するサーボ制御部と、前記サーボ制御部に対して動作指令（位置指令）を発する位置制御部と、を有する制御システムであって、
前記位置制御部は、前記サーボ制御部の動作指令を生成する指令生成手段と、前記センサから取得した前記位置データを取得時刻と共に記憶する位置データ記憶手段と、所定周期内の任意の時刻における前記被制御体の位置を当該任意の時刻の前後に取得した前記位置データに基づいて推定する位置推定手段と、を備え、
前記位置推定手段は、時刻ｔにおける前記被制御体の位置ｆ（ｔ）を前記位置データに基づいて多項式で表し、多項式補間により前記任意の時刻における前記被制御体の位置を推定することを特徴とする制御システム。
【請求項２】
前記位置推定手段は、時刻ｔにおける前記被制御体の位置ｆ（ｔ）を下記数１式の多項式で表し、該多項式の係数ａｉを前記位置データ記憶手段に記憶された前記位置データｙｉと取得時刻ｔｉに基づいて下記数２式によって求め、任意の時刻における前記被制御体の位置を推定することを特徴とする請求項１記載の制御システム。    
【数１】
0005895289.tif 000006
【数２】
0005895289.tif 000007
【請求項３】
前記位置推定手段は、３次の多項式を用いて任意の時刻における前記被制御体の位置を推定することを特徴とする請求項１又は２記載の制御システム。
【請求項４】
前記位置推定手段は、前記被制御体の位置を推定する任意の時刻の近傍の前記位置データに基づいて該時刻における前記被制御体の位置を推定することを特徴とする請求項３記載の制御システム。
【請求項５】
前記被制御体に設けられる位置合わせマークを検出するマークセンサを備え、  前記位置推定手段は、前記マークセンサが前記位置合わせマークを検出した時刻における前記被制御体の位置を推定することを特徴とする請求項１から４記載の制御システム。
【請求項６】
被制御体を駆動するモータと、前記モータの回転角度に基づく前記被制御体の位置データを所定の周期で検出するセンサと、前記モータをサーボ制御するサーボ制御部と、前記サーボ制御部に対して動作指令を発する位置制御部と、を有する制御システムにおいて、
前記位置制御部は、前記サーボ制御部の動作指令を生成するとともに、前記センサから取得した前記位置データを取得時刻と共に記憶し、時刻ｔにおける前記被制御体の位置ｆ（ｔ）を前記位置データに基づいて多項式で表し、多項式補間により、所定周期内の任意の時刻における前記被制御体の位置を当該任意の時刻の前後に取得した前記位置データに基づいて推定することを特徴とする位置推定方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、例えばロボットや数値制御装置などの駆動系、回転系に適用できる制御システム及びこの制御システムに用いる位置推定方法に関する。
【背景技術】
【０００２】
一般に、ロボットや数値制御装置等の分野では、これらを駆動するための制御システムが適用されている。例えば、ロボットにワークの搬送や溶接などの各種作業を行わせる場合、制御システムは、ロボットの関節を回動させるモータをサーボ制御するサーボ制御器に対して動作指令（位置指令）を行う。一方で、ロボットの関節は、モータの回転角を測定するエンコーダを有しており、ホスト制御器は、サーボ制御器を介して、このエンコーダから送られてくるフィードバックされる位置データ（回転角測定値など）を参照してサンプリングしつつ、目標値と実測値との偏差を認識してサーボ制御を行う。  
【０００３】
ここで、上述したフィードバックされる位置データは、所定のサンプリング周期でサンプリングされるため、サンプリング周期以外の時刻での位置を知ることができず、サンプリング周期が位置分解能の限界となる。しかし、高速・高精度の位置制御を行う場合、位置分解能の高さは重要な要素となるため、位置分解能の限界を高めるために位置の推定を行う必要がある。  
【０００４】
特許文献１に記載のロボット制御装置では、絶対値エンコーダの測定周期とサーボサイクルが非同期であっても、外挿演算によりサーボサイクルに同期した位置パルスを推定し、位置分解能を高めている。  
【０００５】
より具体的に説明すると、特許文献１に開示されたロボット制御装置では、まず、フィードバック位置Ｘをサンプリングする。そして、直近のサンプリング時刻との関係で、サンプリング時間間隔を計算し、フィードバック位置の差分を計算するとともに、フィードバック位置の差分をサンプリング時間間隔で割って、フィードバック位置の変化率（変化率Ａ）を求める。一方で、サンプリング時刻からサーボ指令時刻までの時間差（時間差Ｂ）を計算する。そして、最後に、変化率Ａに時間差Ｂを乗じて得られた値を、上記フィードバック位置Ｘに加算することによって、サーボ指令時刻の位置を推定している。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開平５−３３３９３１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、特許文献１に記載のロボット制御装置は、フィードバック位置の差分をサンプリング時間間隔で割って変化率Ａを求め、単純な外挿演算のみで位置推定を行っているため、モータの速度変動に弱いという問題がある。この場合、エンコーダの測定周期を細かくすることにより、位置の推定制度を向上させることもできるが、通信周期やＣＰＵの処理速度を速める必要があるために、コスト増となる課題がある。  
【０００８】
本発明は、このような点に鑑みてなされたものであり、その目的は、サンプリング周期を細かくすることなく、モータの速度変動等に精度よく対応することが可能な制御システム及びこの制御システムに用いる位置推定方法を提供することにある。
【課題を解決するための手段】
【０００９】
以上のような課題を解決するために、本発明は、以下のものを提供する。  
【００１０】
（１）  被制御体を駆動するモータと、前記モータの回転角度に基づく前記被制御体の位置データを所定の周期で検出するセンサと、前記モータをサーボ制御するサーボ制御部と、前記サーボ制御部に対して動作指令（位置指令）を発する位置制御部と、を有する制御システムであって、前記位置制御部は、前記サーボ制御部の動作指令を生成する指令生成手段と、前記センサから取得した前記位置データを取得時刻と共に記憶する位置データ記憶手段と、所定周期内の任意の時刻における前記被制御体の位置を当該任意の時刻の前後に取得した前記位置データに基づいて推定する位置推定手段と、を備え、前記位置推定手段は、時刻ｔにおける前記被制御体の位置ｆ（ｔ）を前記位置データに基づいて多項式で表し、多項式補間により前記任意の時刻における前記被制御体の位置を推定することを特徴とする制御システム。
【００１１】
本発明によれば、位置推定手段は、時刻ｔにおける被制御体の位置ｆ（ｔ）を位置データに基づいて多項式で表し、多項式補間により任意の時刻における位置を推定するから、サンプリング周期を細かくすることなくモータの負荷変動や速度変動等にも精度よく対応することができる。  
【００１２】
すなわち、位置推定手段は、位置データ記憶手段に時刻とともに記憶された位置データに基づいて、時刻ｔにおける被制御体の位置ｆ（ｔ）を多項式で表すから、モータの速度が変動する場合でも位置をｔの関数として忠実に表現することができ、サンプリング周期を細かくすることなく任意の時刻における位置を精度よく推定することができる。また、位置推定手段は、フィードバックされた位置データを用いて被制御体の位置を推定するから、モータの負荷変動にも影響され難く、任意の時刻における位置を精度よく推定することができる。  
【００１３】
（２）  前記位置推定手段は、時刻ｔにおける前記被制御体の位置ｆ（ｔ）を下記数１式の多項式で表し、該多項式の係数ａｉを前記位置データ記憶手段に記憶された前記位置データｙｉと取得時刻ｔｉに基づいて下記数２式によって求め、任意の時刻における前記被制御体の位置を推定することを特徴とするロボット制御システム。    
【数１】
0005895289.tif 000002
【数２】
0005895289.tif 000003
【００１４】
本発明によれば、位置データ記憶手段に記憶された位置データｙｉと取得時刻ｔｉに基づいて、任意の時刻ｔにおける被制御体の位置ｆ（ｔ）を多項式で表すことができ、モータの速度が変動する場合でも被制御体の位置を精度よく推定することができる。  
【００１５】
（３）  前記位置推定手段は、３次の多項式を用いて任意の時刻における前記被制御体の位置を推定することを特徴とするロボット制御システム。  
【００１６】
本発明によれば、被制御体の位置を３次の多項式を用いて表すから、モータの加速時又は減速時などの速度が変動する場合でも、被制御体の位置をｔの関数として正確に表現することができるから、被制御体の位置を精度よく推定することができる。また、３次の多項式を求める計算は大きな演算負荷とはならず、位置推定のための演算負荷を小さくすることができる。  
【００１７】
（４）  前記位置推定手段は、前記被制御体の位置を推定する任意の時刻の近傍の前記位置データに基づいて該時刻における前記被制御体の位置を推定することを特徴とする制御システム。  
【００１８】
本発明によれば、位置推定を行いたい任意の時刻の近傍の位置データを用いるから、位置データ記憶手段に記憶された位置データの中から位置推定を行うのに適切な位置データを選択して被制御体の位置を３次の多項式で表すことができ、モータの速度が変動する場合でも被制御体の位置を精度よく推定することができると共に、演算負荷を軽減することができる。  
【００１９】
（５）  前記被制御体に設けられる位置合わせマークを検出するマークセンサを備え、前記位置推定手段は、前記マークセンサが前記位置合わせマークを検出した時刻における前記被制御体の位置を推定することを特徴とする制御システム。  
【００２０】
本発明によれば、このセンサが位置合わせマークを検出した時刻における被制御体の位置を推定することができるから、被制御体の位置を精度よく合わせることができる。  
【００２１】
（６）  被制御体を駆動するモータと、前記モータの回転角度に基づく前記被制御体の位置データを所定の周期で検出するセンサと、前記モータをサーボ制御するサーボ制御部と、前記サーボ制御部に対して動作指令を発する位置制御部と、を有する制御システムにおいて、前記位置制御部は、前記サーボ制御部の動作指令を生成するとともに、前記センサから取得した前記位置データを取得時刻と共に記憶し、時刻ｔにおける前記被制御体の位置ｆ（ｔ）を前記位置データに基づいて多項式で表し、多項式補間により、所定周期内の任意の時刻における前記被制御体の位置を当該任意の時刻の前後に取得した前記位置データに基づいて推定することを特徴とする位置推定方法。
【００２２】
本発明によれば、位置制御部は、前記サーボ制御部の動作指令を生成するとともに、前記センサから取得した前記位置データを取得時刻と共に記憶し、時刻ｔにおける前記被制御体の位置ｆ（ｔ）を前記位置データに基づいて多項式で表し、多項式補間により任意の時刻における前記被制御体の位置を推定するから、サンプリング周期を細かくすることなくモータの負荷変動や速度変動にも精度よく対応することができる。  
【００２３】
すなわち、位置制御部は、時刻とともに記憶された位置データに基づいて、時刻ｔにおける被制御体の位置ｆ（ｔ）を多項式で表すから、モータの速度が変動する場合でも位置をｔの関数として忠実に表現することができ、サンプリング周期を細かくすることなく任意の時刻における位置を精度よく推定することができる。また、位置制御部は、フィードバックされた位置データを用いて被制御体の位置を推定するから、モータの負荷変動にも影響され難く、任意の時刻における位置を精度よく推定することができる。
【発明の効果】
【００２４】
本発明に係る制御システム及びこの制御システムに適用する位置推定方法は、以上説明したように、サンプリング周期を細かくすることなく、モータの速度変動等にも精度よく対応して、モータの速度を落とすことなく精度の高い位置推定を行うことができる。
【図面の簡単な説明】
【００２５】
【図１】本発明の実施形態に係るロボット制御システムのシステム構成を示すブロック図である。
【図２】本発明の実施の形態に係るロボット制御システムに適用が可能なロボットを示す図である。
【図３】本発明の実施形態に係るアライナとチャックで保持されているウェハを示す平面図である。
【図４】本発明の実施形態に係るアライナ駆動制御の流れを示すフローチャートである。
【図５】本発明の実施形態に係る位置推定手段により求めた多項式補間による推定演算を説明する図である。
【図６】そのアライナの精度試験結果を示す図である。
【発明を実施するための形態】
【００２６】
以下、本発明を実施するための最良の形態について、図面を参照しながら説明する。  
【００２７】
［ロボットシステム］  図１は、本発明の実施形態に係るロボット制御システムのシステム構成を示すブロック図である。図２は、本発明の実施形態に係るロボット制御システムに適用が可能なロボットを示す図である。図３は、本発明の実施形態に係るアライナとチャックで保持されているウェハを示す平面図である。  
【００２８】
まず、本発明に係る制御システムの一実施形態を示すロボット制御システムを説明する前に、ロボットついての説明を行う。  
【００２９】
［ロボット］  図２に示すロボット６は、例えば、カセットに載置された半導体ウェハ（以下、「ウェハ」という）等のワークを成膜装置内に移動させる搬送ロボット（以下、「ロボット」という）である。また、本実施形態では、ウェハ９は被制御体となっている。  
【００３０】
ロボット６は、図２に示すように、関節部６１、６２、６３により回転可能に連結された基台側アーム６４、ハンド側アーム６５、ハンド６６を複数連結すると共に、図示しない基台に設けられた第１モータ４１による回転力を基台側アーム６４、ハンド側アーム６５に伝達して所望の動作をさせるものである。このような構造のロボット６は、ウェハ９を載置するハンド６６を常時一定方向に向けながら直線上を移動する。なお、ロボット６の構造および動作は公知なので、ここでの詳細な説明は省略する。また、ロボット６は、基台側アーム６４、ハンド側アーム６５、ハンド６６を駆動する第１モータ４１と、第１モータ４１の回転角度に基づくアームの位置データを所定の周期で検出するセンサとしての第１エンコーダ４２と、を備えている。なお、第１エンコーダは、第１モータ４１の回転軸に固定されている。  
【００３１】
［アライナ］  ウェハ９は移載されたカセット８に収納されている状態では、ランダムに配置されていることから、ロボット６によってカセット８からウェハ９を取り出し、ウェハ９に各種の加工を施す際には、ノッチ９１の位置が正規の位置で位置決めされた状態で行なわれなければならない。そのため、カセット８から取り出されたウェハ９をウェハ９のアライナ７に搬入し、このウェハ９のアライナ７によってノッチの位置を正規の位置に一致させた後、ウェハ９を処理ステージにセットする方法が取られている。  
【００３２】
ロボット６が、ウェハ９をカセット８から取り出して成膜装置に搬送する際に、一般に、ウェハ９のエッジ部には位置を検出するためのノッチ９１が一か所に形成されている。このウェハ９は移載されたカセット８に収納されている状態では、ランダムに配置されていることから、ウェハ９に各種の加工を施す際には、ノッチ９１の位置が正規の位置で位置決めされた状態で行なわれなければならない。このウェハ９の位置合わせ、つまり、ウェハ９の角度合わせを行なう装置を、一般的にアライナ７と呼び、ウェハ９を保持軸で保持した後、半回転又は１回転させてノッチ９１の位置を検出し、その検出結果に基づいて、保持軸を所定の角度回転させてウェハ９を正規の位置で角度合わせを行なっている。本実施形態では、図２及び図３に示すように、アライナ７はウェハ９のノッチ９１を検出してウェハ９の向きを合わせる装置である。本実施形態では、ウェハ９を回転させ所定の方向を向くように調整するアライナ７は、ロボット６がウェハ９を搬送し得る範囲内に設置される。  
【００３３】
アライナ７は、載置されたウェハ９を回転させその縁部に設けられているノッチ９１を検出することにより、載置された全てのウェハ９（のノッチ９１）の向き・保持角度を合わせるというオリエンテーション機能を有している。本実施形態では、アライナ７は、ウェハ９を載置すると共に一体的に回転するターンテーブル７１と、ウェハ９を載置したターンテーブル７１を駆動する第２モータ４３と、第２モータ４３の回転角度データに基づく位置データを検出するセンサとしての第２エンコーダ４４と、ノッチ９１を検出するノッチセンサ７３と、を有している。また、本実施形態には、図２及び図３に示すように、ターンテーブル７１は、複数のチャック７２（図２及び図３では６箇所に）を有し、ウェハ９の周囲をクランプしてターンテーブル７１との偏心がなく同心上にターンテーブル７１に載置される。  
【００３４】
［ノッチセンサの構成］  ウェハ９には、図２及び図３に示すように、ウェハ９の円周方向における正規な位置を表す目印、位置決め部位として、Ｖ字状またはＵ字状に切り欠かれたノッチ９１が外周部に形成されている。本実施形態では、ウェハ９に形成されたノッチ９１を検出するノッチセンサ７３は、図２において、ターンテーブル７１の左側の位置に設けられている（図３では左上側）。このノッチセンサ７３は、発光素子と受光素子とからなるフォトセンサであり、具体的には、検出光を照射するＬＥＤと、その照射光の反射光を検知するフォトダイオードと、これらＬＥＤ及びフォトダイオードに出入りする光線をウェハ９に対して案内する光路筒とを備えている。このため、ハンド６６が保持したウェハ９の縁部に対しＬＥＤの検出光が照射し、縁部により反射した場合は反射光がフォトダイオードに入射し、ノッチ９１を通過して反射しない場合はフォトダイオードでの入射がなされない。これにより、ノッチ９１の位置を検出する。  
【００３５】
［ロボット制御システムの構成］  本発明に係るロボット制御システム１は、半導体製造工程において（半導体）ウェハ等をカセットから取り出して成膜装置に搬送するロボットの動作を制御する。図１は、本発明の実施形態に係るロボット制御システムのシステム構成を示すブロック図である。  
【００３６】
ロボット制御システム１は、ウェハ９を搬送するロボット６（のアーム）の駆動及びウェハ９の向きを合わせるためのアライナ７の駆動を制御している。  本実施形態では、図１に示すように、ロボット制御システム１は、主として、位置制御部２と、サーボ制御部３と、被制御体を駆動する駆動部４（第１モータ４１、第１エンコーダ４２、第２モータ４３、第２エンコーダ４４）と、通信回線５とを有している。  
【００３７】
このロボット制御システム１は、ロボットの関節を回動させる第１モータ４１やアライナ７を回動させる第２モータ４３をサーボ制御するサーボ制御器３１、３２に対して動作指令（位置指令）を行う。一方で、ロボットの関節やアライナ７は、第１、第２モータ４１、４３の回転角を測定する第１、第２エンコーダ４２、４４を有しており、位置制御部２は、サーボ制御部３（サーボ制御器３１、３２）を介して、この第１、第２エンコーダ４２、４４から送られてくるフィードバックされる位置データ（回転角測定値など）を参照してサンプリングしつつ、目標値と実測値との偏差を認識してサーボ制御を行う。  
【００３８】
［位置制御部の構成］  位置制御部２は、第１、第２サーボ制御器３１、３２への動作指令を生成するとともに、各サーボ制御器３１、３２に動作指令を送信する指令生成手段２１と、各サーボ制御器３１等から送られてくるフィードバックされた位置データ（フィードバックデータ）を所定周期で受信し、受信した位置データ（フィードバックデータ）を取得時刻と共に記憶する位置データ記憶手段２２とを有している。  さらに、位置制御部２は、位置データ記録手段２２が受信し、記憶した所定周期の位置データ（フィードバックデータ）に基づいて任意の時刻における駆動部４の位置を推定する位置推定手段２３を備えている。  
【００３９】
［位置推定手段の構成］  本実施形態では、位置推定手段２３は、図１に示すように、位置データ抽出手段２４と、多項式算出手段２５と、推定位置算出手段２６と、を有している。  
【００４０】
位置データ抽出手段２４は、駆動部４の位置推定を行う時刻ｔｋの近傍時刻の位置データを抽出する。抽出する位置データ数は、補間する多項式の次数ｎに対応し、少なくとも、多項式の次数ｎに対して、位置データの個数は、（ｎ＋１）必要となる。なお、本実施形態では、ウェハ９のノッチ９１の位置を推定するので、駆動部４は、アライナ７のターンテーブル７１を回転する第２モータ４３及び第２エンコーダ４４となっている。  
【００４１】
多項式算出手段２５は、時刻ｔにおけるウェハ９のノッチ９１（アライナ７の第２モータ４３）の位置ｆ（ｔ）を数３式に示すようにｎ次の多項式で表す。多項式の次数ｎは、位置データ抽出手段２４が抽出した位置データの個数−１であり、例えば４個の位置データを抽出した場合にはｎ＝３となる。    
【数３】
0005895289.tif 000004
【００４２】
多項式算出手段２５は、数３式に示す多項式の係数ａｉを位置データ抽出手段２４で抽出したｎ＋１個の位置データｙｉとそれぞれの位置データｙｉに対応する取得時刻ｔｉに基づいて数４式によって求め、ノッチ９１（第２モータ４３）の位置ｆ（ｔ）を表す多項式を算出する。    
【数４】
0005895289.tif 000005
【００４３】
推定位置算出手段２６は、多項式算出手段２５が算出した多項式に基づいて、位置推定を行う時刻ｔｋにおけるノッチ９１（第２モータ４３）の位置ｆ（ｔｋ）を算出する。ノッチ９１（第２モータ４３）の位置推定を行う時刻ｔｋは、推定を行う時点より前の任意の時刻を設定することが可能である。  
【００４４】
［サーボ制御部の構成］  サーボ制御部３は、指令生成手段２１からの動作指令を基に駆動部４を駆動制御する。本実施形態では、サーボ制御部３は、
ロボット６のアームなどを駆動させる第１モータ４１を駆動制御する第１サーボ制御器３１と、アライナ７に設けられたターンテーブル７１を駆動させる第２モータ４３を駆動制御する第２サーボ制御器３２と、を有している。  
【００４５】
［モータ及びエンコーダ］  駆動部４は、サーボ制御部３からの制御信号に基づいて、所定動作を駆動する。本実施形態では、駆動部４は、図２に示すように、第１モータ４１及び第１エンコーダ４２、第２モータ４３及び第２エンコーダ４４である。第１モータ４１はロボット６の基台側アーム６４の関節部６１に連結している。また、第１モータ４１には、その回転軸に第１エンコーダ４２が配置され、第１モータ４１の回転角度データに基づく位置データを検出している。  また、第２モータ４３は、アライナ７に設けられたターンテーブル７１に連結されている。この第２モータ４３には、その回転軸に第２エンコーダ４４が配置され、第２モータ４３の回転角度データに基づく位置データを検出している。  
【００４６】
［通信回線］  符号５は、通信回線である。本実施形態では、図１に示すように、位置制御部２から、サーブ制御部３、駆動部４等への各種指令は、シリアル伝送によって送られる。すなわち、本実施形態では、位置制御部２とサーボ制御部３とが構成するサーボ制御器３１とが（有線又は無線によって）電気的に接続されている。次に、サーボ制御器３１はサーボ制御器３２とが（有線又は無線によって）電気的に接続されている。これにより、位置制御部２からサーボ制御器３２への指令は、サーボ制御器３１を介して送られることになる。このようなシリアル伝送とすることで、ロボット制御システム１において、信号の入出力が１系統で足りることから、配線の複雑化を防ぐことができるようになっている。本実施形態では、通信回線５の通信周期４［ｍｓｅｃ］となっている。  
【００４７】
また、第１、第２エンコーダ４２、４４は、それぞれ第１、第２モータ４１、４３と（有線又は無線によって）電気的に接続されている。第１、第２エンコーダ４２、４４によって測定された位置データ（回転角測定値など）は、通信回線５で接続されるサーボ制御部３（サーボ制御器３１、３２）を介して位置制御部２へ送られる。  
【００４８】
［ロボットの動作］  次に、ロボット６によりウェハ９をカセット８から取り出してアライナ７でウェハ９の向き・保持角度を合わせるいわゆるオリエンテーション作業を行い、オリエンテーション作業後、第２の位置であるプロセス装置（図示せず）に載置する動作を説明する。  
【００４９】
カセット８からプロセス装置（図示せず）にウェハ９を移載する際、カセット８に、ロボット６のハンド６６を差し入れてウェハ９を引き出す。次いで、ロボット６の基台側アーム６４及びハンド側アーム６５を回転させてウェハ９の中心をアライナ７のターンテーブル７１に載置する。アライナ７は、ウェハ９が載置された場合、原点位置（基準位置）にいる状態となっている。具体的には、この原点位置（基準位置）は、第２モータ４３の位置検出する第２エンコーダ４４が、この位置（角度）にあるときを０°としている。ターンテーブル７１は、図３に示すように、ウェハ９の外周をチャック７２を用いて保持し、保持完了後、そのまま回転する。そして、アライナ７のノッチセンサ７３がウェハ９の縁に形成されたノッチ９１をノッチセンサ７３（フォトセンサ）で検出する。ウェハ９のノッチ９１がノッチセンサ７３を通過した位置を位置データ記憶手段２２に記憶してウェハ３の位置合わせに使用する。この検出結果に基づいて、ウェハ９をアライナ７に対して所定の向きで支持させる。その後、チャック７２が離間し、ハンド６６がアライナ７のウェハ９を持ち上げて、プロセス装置に載置する。ここで、予めウェハ９をアライナ７に対して所定の向きにして支持させておくことにより、ウェハ９をプロセス装置に対して所定の向きにして載置する。ロボット６が作業している間にアライナ７は原点位置（基準位置）に戻って待機する。なお、これらの動作をウェハ９ごとに繰り返す。  
【００５０】
［位置推定方法］  次に、本発明の実施形態に係るロボット制御システムを使用した位置推定方法について、図４及び図５に示すアライナ７の駆動制御を用いて説明する。図４は、本発明の実施形態に係るアライナ駆動制御の流れを示すフローチャートである。図５は、本発明の実施形態に係る位置推定手段により求めた多項式補間による推定演算を説明する図である。図５において、縦軸は第２エンコーダ４４の位置（角度）であり、０は原点位置（基準位置）を示し、横軸は時刻を示す。  
【００５１】
図４に示すフローチャートにおいて、スタートは、ロボット６のハンド６６がウェハ９をターンテーブル７１に載置し、アライナ７のチャック７２がウェハ９の外周を保持した状態である。このとき、第２モータ４３及び第２エンコーダ４４は原点位置（基準位置）で停止している。  
【００５２】
第２モータ４３が位置制御部２の指令生成手段２１の動作指令に基づき、第２サーボ制御器３２の制御信号により回転する。これにより、ターンテーブル７１に載置されたウェハ９が回転する。アライナ７に設置されたノッチセンサ７３が、ウェハ９のノッチ９１を検出すると（図３参照）、検出した時刻ｔｋ（図５参照）を、位置制御部２に送信され、時刻ｔｋを位置データ記憶手段２２で記憶する（Ｓ１）。このとき、図５に示すように、第２モータ４３の回転位置は、第２エンコーダ４４で検出されるが、４ｍｓの周期でサンプリングされている。このため、ノッチセンサ７３が検出した時刻ｔｋの位置は、サンプリングの周期と一致していないので、正確な位置は検出されていない状態である。  
【００５３】
アライナ７は、ウェハ９を約１回転させて、４ｍｓの周期で位置データをサンプリングする。例えば、図４に示すように、（時刻、回転位置）＝（ｔ０、ｙ０）、（ｔ１、ｙ１）、（ｔ２、ｙ２）、（ｔ３、ｙ３）、・・・・・と４ｍｓ毎にその回転位置を第２エンコーダ４４の出力信号を位置制御部２に送信し、位置データ記憶手段２２が時刻と位置データを記憶する。約１回転後、第２モータ４３を停止する。  
【００５４】
位置推定手段２３は、位置制御部２を介してノッチ３１の検出信号（時刻ｔｋ）を受信すると、位置データ抽出手段２４が、時刻ｔｋの前後２周期ずつの４個の位置データを位置データ記憶手段２２から抽出する（Ｓ２）。すなわち、図４に示すように、時刻ｔｋの前後２周期ずつの位置データとしての（時刻、回転位置）＝（ｔ０、ｙ０）、（ｔ１、ｙ１）、（ｔ２、ｙ２）、（ｔ３、ｙ３）を抽出する。  
【００５５】
多項式算出手段２５は、時刻ｔにおけるウェハ９の位置ｆ（ｔ）を上述の数３式に示すようにｎ次の多項式で表す。本実施形態では、第２モータ４３の位置を、第２モータ４３の加速又は減速に対応するために、３次の多項式で補間するようにしている。この場合、多項式の次数ｎ＝３であるので、位置データ抽出手段２４が抽出した位置データの個数は、次数ｎ＋１＝４個としている。  
【００５６】
位置データ抽出手段２４は、多項式算出手段２５の演算負荷を少なくするとともに、第２モータ４３の速度変動に精度よく対応できるように、４個の位置データを抽出している。さらに、抽出する位置データは、時刻ｔｋの前後２周期ずつの位置データを抽出している。なお、抽出する位置データは、位置推定を行う時刻ｔｋの近傍時刻のものであればよく、位置データ抽出手段２４は、任意の位置データを抽出してもよい。  
【００５７】
多項式算出手段２５は、数３式に示す多項式の係数ａｉを位置データ抽出手段２４で抽出した４個の位置データｙｉとそれぞれの位置データｙｉに対応する取得時刻ｔｉに基づいて上述の数４式によって求め、第２モータ４３の回転位置ｆ（ｔ）を表す３次の多項式を算出する（Ｓ３）。図４において、４つの位置（ｙ０、ｙ１、ｙ２、ｙ３）を通過する線が３次の多項式となる。  
【００５８】
推定位置算出手段２６は、多項式算出手段２５が算出した３次多項式に基づいて、ノッチセンサ７３がノッチ９１を検出した時刻ｔｋにおける第２モータ４３（ウェハ９）の位置ｆ（ｔｋ）を算出する（Ｓ４）。すなわち、算出された位置ｆ（ｔｋ）が、ターンテーブル７１に載置されたウェハ９のノッチ９１の位置と推定する。  
【００５９】
（実施形態の主な効果）  本実施形態では、ロボット制御システム１は、アライナ７を駆動する第２モータ４３の加速又は減速に対応するために、回転位置と時刻との関係を３次の多項式で補間して、ノッチセンサ７３で検出した時刻ｔｋにおけるウェハ９（ノッチ９１）の位置を推定したので、ウェハ９の位置合わせを精度よく行うことができる。  また、３次の多項式を求めるために、時刻ｔｋの前後２周期ずつの位置データを抽出し、これら位置データを用いて、位置を推定したので、第２モータ４３の速度のブレにも精度よく対応できる。  
【００６０】
さらに、位置推定手段２３は、第２モータ４３の加減速時や負荷変動時でも、ウェハ９のノッチ９１の位置を精度よく推定することができ、ウェハ９を載置するターンテーブル７１を高速制御することができる。すなわち、ロボット制御システム１は、位置の精度と高速さの両立が要求されるロボット６においても、コストを低く抑えつつ、位置合わせの精度と速度を向上させることができる。  
【００６１】
本実施形態では、ロボット制御システム１は、通信回線５の通信周期４［ｍｓｅｃ］で位置情報を得ることにしたので、第２モータ４３が高速で動作すればするほど、位置の精度が悪化する。このようにある位置でノッチセンサ７３の入力があった場合に、その位置は直前に取得した位置と同じになってしまうため、このセンサ入力位置を正確に知るには、第２エンコーダ４４のサンプリング周期を従来よりもさらに細かくし、ノッチセンサ７３の入力時刻から位置を推定する必要があった。  
【００６２】
そこで、本実施形態では、第２モータ４３（ウェハ９）の位置を時間の多項式とみなすことにより、４［ｍｓｅｃ］周期で取得した位置データとその時刻から多項式の係数を導き出すことができ、任意の時刻における位置を推定することができる。この多項式補間による推定演算によって、位置分解能の向上につながり、第二モータ４３の移動が高速であっても高精度で位置決めを行うことが可能である。  
【００６３】
本実施形態に示すロボット６は、ロボット６によりウェハ９がアライナ７のターンテーブル７１に載置されると、ロボット６は待機しているのではなく、他の仕事をしているように設定されており、この間に、アライナ７は、ウェハ９の位置合わせを行うようにしている。このため、アライナ７の位置合わせ精度は、スループット向上の面から重要なファクタとなっている。具体的には、アライナ７には、僅か３秒の位置決め時間において、０．０２度の位置合わせ精度が要求されている。この位置決め要求時間（３秒）内に、ウェハ９の位置決めを完了させるために、アライナ７は、ウェハ９を１００［ｒｐｍ］で回転させる必要がある。しかし、通信周期４［ｍｓｅｃ］の通信回線５を用いた廉価なシステム構成では、最大誤差が０．０２度を超えてしまう。アライナ７が半導体ウェハ９を１００［ｒｐｍ］で回転させた場合に、最大誤差を０．０２度以内に抑えるには、５００［ｕｓ］の分解能でセンサ入力をモニタして推定制御する必要がある。  
【００６４】
以下、本実施形態の効果を実験データに基づいて説明する。アライナ７は、通信周期４［ｍｓｅｃ］の通信回線５を用いている。ロボット制御システム１では、位置決め時間３秒以内を満たすために、第二モータ４３（ウェハ９）を１００［ｒｐｍ］で回転させ、アライナ７に画像処理用のカメラを設置して繰り返し試験を行った。図６は、この精度試験結果を示す図である。図６に示すように、ロボット制御システム１を使用したアライナ７は、要求精度０．０２度に対して、誤差を±３σ＝０．００８２度に抑えることができた。このように、ロボット制御システム１によれば、アライナ７は、通信周期４［ｍｓｅｃ］の廉価な通信回
線５を用いた構成でも、多項式補間を用いて位置推定制御を行うことで、高速・高精度の位置決めが可能となり、スループットの短縮に貢献することができると判断できる。  
【００６５】
また、ロボット制御システム１は、汎用品である廉価な通信手段やＣＰＵを用いて構成することができ、安価な制御システムによって精度のよい位置推定を行うことができる。  一般に、ロボット制御システム１に対する要求は、価格の安さと高速・高精度であり、特に、高速・高精度が重要な性能となる。一方、システムの価格を抑えるために安価なハードウェア構成を用いると、その性能（高速・高精度）には限界が生じる。例えば、液晶や半導体製造工程において用いられるロボット制御システム１には、あまり高速ではない通信回線５を使用している。このため、通信回線５を使用したロボット制御システム１は、通信周期の制限によって、位置の分解能に限界が生じてしまうという問題がある。  
【００６６】
本実施形態に示す位置推定手段２３を用いて、ノッチ９１の位置と時刻との関係を３次の多項式で補間することで、システム制御に用いられる安価なハードウェアによる性能限界を、ソフト的に位置推定を行うことにより性能（高速・高精度）を高めたものである。  
【００６７】
（他の実施形態について）  図１に示すロボット制御システム１では、説明の便宜上、第１モータ４１及び第２モータ４３で説明したが、これに限定されるものではない。  また、本実施形態では、アライナ７の第２モータ４３の位置を推定することで、ターンテーブル７１に搭載されたウェハ９のノッチ９１の位置を推定しているがこれに限定されるものではない。例えば、本実施形態に示すロボット６のアームがウェハ９を搭載してターンテーブル７１に搭載する位置、またはカセット８に搭載または取り出す位置を、アームを駆動する第１モータ４１の位置を推定してもよい。  
【００６８】
本実施形態に示す位置推定手段２３では、位置推定を行う時刻ｔｋは、推定を行う時点より前の任意の時刻を設定しているが、これに限定されるものではない。例えば、位置推定手段２３は、位置データ（フィードバックデータ）に基づいて外挿演算を行う外挿演算手段を備えていてもよく、外挿演算手段によりモータの現在又は将来の位置を推定するようにしてもよい。これにより、モータの負荷変動や速度変動にも精度よく対応することができると共に、外挿演算により被制御体の現在又は将来の位置も推定することができる。  
【００６９】
駆動部を構成する第１モータ及び第１エンコーダまたは第２モータ及び第２エンコーダは、物理的に１ユニットになっていることを要求するものではない。本実施形態では、モータの回転角度に基づく位置データを検出する「センサ」として、エンコーダを採用しているが、その他、位置データを検出し得るものであれば、如何なる装置・機器であってもよい。  
【００７０】
本実施形態では、ウェハ９には、ウェハ９の円周方向における正規な位置を表すマークとして、Ｖ字状またはＵ字状に切り欠かれたノッチ等が外周部に形成されている。ウェハのエッジ部には位置を検出するため、弦状に切り欠かれたオリフラでもよい。
【産業上の利用可能性】
【００７１】
本発明に係る制御システム及びこの制御システムに用いる位置推定方法は、サンプリング位置データから任意の時刻の位置を推定する推定器の演算負荷を小さくすることができると共に、モータの負荷変動や速度変動にも精度よく対応することが可能なものとして有用である。
【符号の説明】
【００７２】
１  制御システム  ２  位置制御部  ２１  指令生成手段  ２２  位置データ記憶手段  ２３  位置推定手段  ２４  位置データ抽出手段  ２５  多項式算出手段  ２６  推定位置算出手段  ３  サーブ制御部  ３１  第１サーボ制御器  ３２  第２サーボ制御器  ４  駆動部  ４１：第１モータ  ４２：第１エンコーダ（センサ）  ４３：第２モータ  ４４：第２エンコーダ（センサ）  ５  通信回線  ６  ロボット  ６１、６２、６３  関節部  ６４  基台側アーム部  ６５  ハンド側アーム部  ６６  ハンド  ７  アライナ  ７１  ターンテーブル  ７２  チャック  ７３  ノッチセンサ（位置決めマークを検出するセンサ）  ８  カセット  ９  （半導体）ウェハ（ワーク）  ９１  ノッチ（位置決めマーク） 
【図１】
0005895289.tif 000008
【図２】
0005895289.tif 000009
【図３】
0005895289.tif 000010
【図４】
0005895289.tif 000011
【図５】
0005895289.tif 000012
【図６】
0005895289.tif 000013