(57)【特許請求の範囲】
【請求項１】
移動体が所定の軸方向に移動するステージ装置であって、
前記移動体の移動限界の位置から第１の距離の範囲内に移動体が到達していることを検出するセンサと、
前記移動体を所定の加速度で減速することにより、前記移動体を前記第１の距離以内で停止させることのできる移動速度を取得する取得手段と、
前記取得手段で取得された前記移動速度を目標として前記移動体を前記センサへ向けて移動し、前記センサが前記移動体を検出したことに応じて前記移動体を前記第１の距離以内で停止させる第１の移動処理を実行し、前記第１の移動処理の後、前記センサによる前記移動体の検出状態が切り替わる位置へ前記移動体を移動する制御手段と、を備え、
前記制御手段は、
前記第１の移動処理の開始前に前記センサが前記移動体を検出していない場合に、前記第１の移動処理を開始し、
前記第１の移動処理の開始の前に前記センサが前記移動体を検出している場合に、前記移動限界の位置から遠ざかる方向へ前記第１の距離を移動するように前記移動体の移動を開始し、前記第１の距離の移動の完了、あるいは前記センサが前記移動体を検出できなくなったことに応じて前記移動体を停止する第４の移動処理を実行し、前記第４の移動処理の後、前記センサによる前記移動体の検出状態が切り替わる位置へ前記移動体を移動することを特徴とするステージ装置。
【請求項２】
前記所定の加速度は、前記ステージ装置において設定が可能な最大の加速度であることを特徴とする請求項１に記載のステージ装置。
【請求項３】
前記第１の移動処理において、前記制御手段は、前記所定の加速度またはそれ以上の加速度で前記移動体を減速させることを特徴とする請求項１に記載のステージ装置。
【請求項４】
前記第１の移動処理における前記移動体の移動中に前記センサが前記移動体を検出した検出位置を記憶する記憶手段をさらに備え、
前記制御手段は、前記第１の移動処理の後、前記移動体を前記記憶手段に記憶されている前記検出位置へ移動させる第２の移動処理を実行することを特徴とする請求項１乃至３のいずれか１項に記載のステージ装置。
【請求項５】
前記第２の移動処理において、前記制御手段は、前記移動体が前記検出位置まで最短の時間で移動できるように前記移動体の加減速を制御することを特徴とする請求項４に記載のステージ装置。
【請求項６】
前記制御手段は、
前記第２の移動処理の結果、前記センサが前記移動体を検出している場合には、前記移動体を前記移動限界の位置から遠ざかる方向へ移動し、前記センサが前記移動体を検出できなくなった位置で停止させる第３の移動処理を実行し、
前記第２の移動処理の結果、前記センサが前記移動体を検出していない場合には、前記移動体を前記センサが検出するまで移動した後、前記第３の移動処理を実行することを特徴とする請求項４または５に記載のステージ装置。
【請求項７】
前記制御手段は、
前記第２の移動処理の結果、前記センサが前記移動体を検出していない場合には、前記移動体を前記センサの方向へ移動し、前記センサが前記移動体を検出した位置で停止させる第３の移動処理を実行し、
前記第２の移動処理の結果、前記センサが前記移動体を検出している場合には、前記移動体を前記センサが検出できなくなるまで移動した後、前記第３の移動処理を実行することを特徴とする請求項４または５に記載のステージ装置。
【請求項８】
前記第３の移動処理において、前記制御手段は前記移動体を所定の距離だけ移動するごとに前記センサが前記移動体を検出しているか否かを判定することを特徴とする請求項６または７に記載のステージ装置。
【請求項９】
前記第４の移動処理における前記移動体の移動中に前記センサが前記移動体を検出できなくなった第２の検出位置を記憶する記憶手段をさらに備え、
前記制御手段は、前記第４の移動処理において、前記センサが前記移動体を検出できなくなったことに応じて前記移動体を停止した場合に、前記移動体を前記第２の検出位置まで移動させる第５の移動処理を実行することを特徴とする請求項１乃至８のいずれか１項に記載のステージ装置。
【請求項１０】
前記制御手段は、
前記第５の移動処理の結果、前記センサが前記移動体を検出している場合には、前記移動体を前記移動限界の位置から遠ざかる方向へ移動し、前記センサが前記移動体を検出できなくなった位置で停止させる第６の移動処理を実行し、
前記第５の移動処理の結果、前記センサが前記移動体を検出していない場合には、前記移動体を前記センサが検出するまで移動した後、前記第６の移動処理を実行することを特徴とする請求項９に記載のステージ装置。
【請求項１１】
前記制御手段は、
前記第５の移動処理の結果、前記センサが前記移動体を検出していない場合には、前記移動体を前記センサの方向へ移動し、前記センサが前記移動体を検出した位置で停止させる第６の移動処理を実行し、
前記第５の移動処理の結果、前記センサが前記移動体を検出している場合には、前記移動体を前記センサが検出できなくなるまで移動した後、前記第６の移動処理を実行することを特徴とする請求項９に記載のステージ装置。
【請求項１２】
前記制御手段は、前記第４の移動処理において前記第１の距離の移動を完了した場合は、前記センサが前記移動体を検出できなくなるまで前記移動体を前記移動限界の位置から遠ざかる方向へ移動することを特徴とする請求項９または１０に記載のステージ装置。
【請求項１３】
前記第６の移動処理において、前記制御手段は前記移動体を所定の移動距離だけ移動するごとに前記センサが前記移動体を検出しているか否かを判定することを特徴とする請求項１０または１１に記載のステージ装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ステージ装置による移動体の位置制御に関する。特に移動体の位置を制御して原点を設定するステージ装置に関する。
【背景技術】
【０００２】
ステージ装置における移動体の原点復帰動作に関して、原点センサと原点近傍センサの２つのセンサを用いることにより、移動体を高速に原点位置へ移動させる構成が知られている（特許文献１）。また、原点センサと位置カウンタ（たとえばエンコーダ）を用いて、原点近傍センサを使用せずに各センサの位置関係から位置制御を行い、移動体の高速な原点への移動を実現することが提案されている（特許文献１、特許文献２）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０００−０５６８３４号公報
【特許文献２】特開平１１−１７０１２２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、特許文献１，２のいずれも、移動体の移動範囲を規定するリミットセンサと原点センサを共用するものではなく、原点位置は、移動体の移動限界位置（メカリミット）から離れた位置に設けられている。一般にリミットセンサとメカリミットの位置は近接している場合が多い。したがって、そのようなリミットセンサの検出点を原点とするステージ装置において、メカリミットと移動体の現在位置の関係が分からない状態では、メカリミットに接触することなく、尚且つ高速で、移動体を原点位置へ移動させることは困難である。高精度な位置管理を行うステージ装置において、メカリミットに接触することは位置決め装置のメカ精度を悪化させ、結果として位置管理の精度が悪化する。よって、メカリミットの接触を避け、尚且つ高速な原点復帰動作および原点移動動作が行える必要がある。
【０００５】
位置決め装置における移動体の制御にインクリメンタル型スケールを用いる場合でも、電源投入時には位置決め装置の位置情報は初期化されるため、原点までの移動量が不明である。結局、リミットセンサの検出点を原点として原点復帰を行う場合には、移動体がメカリミットへ到達し機械的に干渉してしまうことを防ぐために、移動体を低速送り動作によりリミット検出器の検出点まで移動させざるを得ない。
【０００６】
上記の方法では、移動体を低速で移動させるため、原点復帰に要する時間が長くなる。移動体の動作可能範囲が広い場合においてはなおさらである。このような原点復帰の長時間化は、操作者の作業効率を悪化させる要因となる。また、上記の条件において高速な原点復帰および原点出し動作を行う際には、原点近傍にセンサなどが必要となり、部品点数が増え、コストに影響を与えてしまう。
【０００７】
本発明は、上記課題に鑑みてなされたものであり、移動体の移動範囲を制限するセンサを用いて、高速に移動体の位置を決定できるようにすることを目的とする。
【課題を解決するための手段】
【０００８】
上記の目的を達成するための本発明の一態様によるステージ装置は、以下の構成を備える。すなわち、
移動体が所定の軸方向に移動するステージ装置であって、
前記移動体の移動限界の位置から第１の距離の範囲内に移動体が到達していることを検出するセンサと、
前記移動体を所定の加速度で減速することにより、前記移動体を前記第１の距離以内で停止させることのできる移動速度を取得する取得手段と、
前記取得手段で取得された前記移動速度を目標として前記移動体を前記センサへ向けて移動し、前記センサが前記移動体を検出したことに応じて前記移動体を前記第１の距離以内で停止させる第１の移動処理を実行し、前記第１の移動処理の後、前記センサによる前記移動体の検出状態が切り替わる位置へ前記移動体を移動する制御手段と、を備え、
前記制御手段は、
前記第１の移動処理の開始前に前記センサが前記移動体を検出していない場合に、前記第１の移動処理を開始し、
前記第１の移動処理の開始の前に前記センサが前記移動体を検出している場合に、前記移動限界の位置から遠ざかる方向へ前記第１の距離を移動するように前記移動体の移動を開始し、前記第１の距離の移動の完了、あるいは前記センサが前記移動体を検出できなくなったことに応じて前記移動体を停止する第４の移動処理を実行し、前記第４の移動処理の後、前記センサによる前記移動体の検出状態が切り替わる位置へ前記移動体を移動する。
【発明の効果】
【０００９】
本発明によれば、移動体の移動範囲を制限するセンサを用いて、高速に移動体の位置を決定することができる。
【図面の簡単な説明】
【００１０】
【図１】実施形態によるステージ装置の機能構成を示すブロック図。
【図２】（ａ）は機構部３００の構成を説明する斜視図、（ｂ）は移動体３０１の構成を説明する斜視図である。
【図３】（ａ）はリミット検出センサの検出点とメカリミットの関係を説明する図、（ｂ）はマグネットシャフトとコイルユニットの関係を説明する図。
【図４】実施形態による、移動体の原点位置への移動動作を示すフローチャート。
【図５】（ａ）は移動体を原点位置へ移動するための速度プランを説明する図、（ｂ）はリミット検出センサの検出信号を示す図。
【図６】（ａ）は移動体を原点位置へ移動するための速度プランを説明する図、（ｂ）はリミット検出センサの検出信号を示す図。
【図７】実施形態による、移動体の原点位置への移動動作を示すフローチャート。
【図８】（ａ）は移動体を原点位置へ移動するための速度プランを説明する図、（ｂ）はリミット検出センサの検出信号を示す図。
【図９】（ａ）は移動体を原点位置へ移動するための速度プランを説明する図、（ｂ）はリミット検出センサの検出信号を示す図。
【発明を実施するための形態】
【００１１】
以下、添付の図面を参照して、本発明の一実施形態によるステージ装置における、移動体の初期位置への移動動作（原点復帰動作および原点移動動作）について添付の図面を参照して説明する。
【００１２】
図１は実施形態におけるステージ装置の機能構成を説明するブロック図である。ステージ装置は、ＭＰＵ１００と駆動回路２００と機構部３００とを含んでおり、機構部３００において移動体を所定の軸方向へ移動する。ＭＰＵ１００はメモリ１０７に記憶されているプログラムを実行することにより、図１に示される各機能部を含む各種制御を実現する。ＭＰＵ１００において、速度プラン演算部１０１は、速度または位置の目標値と、あらかじめ設定されているパラメータを用いて移動体３０１の速度プラン（加減速プラン）を作成する（軌道演算）。また、速度プラン演算部１０１は、後述するリミット検出器３０６からのリミット検出信号（以下、検出信号）が入力された際には、移動体を停止させるための加減速プラン（減速軌道）を作成する。位置信号処理部１０４は、機構部３００からフィードバックされる位置信号を処理する、速度検出部１０３は、位置信号処理部１０４により処理された位置信号とＭＰＵ１００のサンプリング周期または内部クロックを用いて、移動体の移動速度を算出する。減算器１０５、１０６は、現在速度および現在位置と、加減速プランとの偏差を求める。駆動信号処理部１０２は、減算器１０５，１０６から得られる偏差からＰＩＤ制御等の演算を行い、駆動回路２００に対する操作量を決定する。
【００１３】
駆動回路２００は駆動信号処理部１０２から入力された操作量に応じて、機構部３００を駆動する。図２は、機構部３００の構成を示す斜視図である。図２（ａ）に示されるように、機構部３００は、移動体３０１を所定の軸方向に移動するステージ装置を構成している。機構部３００は、移動体３０１、スケール板３０２、ベース板３０３、マグネットシャフト支持部３０４、３０５、リミット検出器３０６、３０７（本例では透過型フォトインタラプタのセンサ）、マグネットシャフト３０８、レール３０９を具備する。スケール板３０２は位置検出のためのスケールパターン３１６を含む。リミット検出器３０６，３０７の一方（本実施形態ではリミット検出器３０６とする）は原点センサの役割も担っている。本実施形態では移動体３０１の移動方向はリミット検出器３０６の側に移動する方向を正方向、リミット検出器３０７の側に移動する方向を負方向とする。
【００１４】
図２（ｂ）に示されるように、移動体３０１は、テーブル３１０と、センサユニット３１１と、コイルユニット３１２と、遮光板３１３、３１４（図３参照）と、スライダ３１５とを具備する。センサユニット３１１は、スケールパターン３１６を読み取るセンサを有し、センサユニット３１１がスケールパターン３１６を読み取ることで移動体３０１の所定軸方向の位置が検出される。検出された位置は、位置信号としてセンサユニット３１１より出力される。
【００１５】
図３（ａ）、（ｂ）に示されるように、機構部３００では、電流がコイルユニット３１２に入力されることにより移動体３０１をマグネットシャフト３０８に対して移動するための力が生じ、これにより移動体３０１がレール３０９に沿って移動する。また、移動体３０１の位置は、スケール板３０２とセンサユニット３１１によって逐次計測される。リミット検出器３０６、３０７は、それぞれ投受光器を含む透過型フォトインタラプタであり、投受光器間の光路が遮光板３１３、３１４により遮られることで移動体３０１を検出する。リミット検出器３０６，３０７は、それぞれマグネットシャフト支持部３０４、３０５とコイルユニット３１２が所定の距離（Ｌ０）以内である間、検出信号（Ｈｉレベル）を出力する。検出信号は、透過型フォトインタラプタの光路が遮光板で遮られている場合にはＨｉレベル、そうでない場合にはＬｏｗレベルを示す。センサユニット３１１からの位置信号はＭＰＵ１００の位置信号処理部１０４に、リミット検出器３０６，３０７からの検出信号はＭＰＵ１００の速度プラン演算部１０１にフィードバックされる。
【００１６】
図４は機構部３００における移動体３０１の初期位置への移動動作（すなわち、原点復帰動作および原点移動動作）を説明するフローチャートである。透過型のフォトインタラプタで構成されるリミット検出器３０６，３０７は、上述のように遮光板３１３，３１４による遮光を検出する。これにより、リミット検出器３０６，３０７は、移動体３０１の機械的な移動限界の位置であるメカリミットから、所定の距離Ｌ０の範囲内に移動体３０１が到達していることを検出する。図３（ａ）に示すように、本例では、移動限界の位置（メカリミット）は、コイルユニット３１２とマグネットシャフト支持部３０４または３０５が干渉する位置である。
【００１７】
ステップＳ４０１において、ＭＰＵ１００は、原点復帰動作または原点移動動作の指令時に、リミット検出器３０６が移動体３０１を検出しているか否か（リミット検出器３０６の出力がＨｉレベルであるかＬｏｗレベルであるか）を判定する。リミット検出器３０６の出力がＬｏｗレベルであれば、即ち、メカリミットから移動体３０１がＬ０以上離れている場合、処理はステップＳ４０２へ進む。他方、リミット検出器３０６の出力がＨｉレベルであれば、即ち、メカリミットから移動体３０１がＬ０以内の位置にある場合、処理はステップＳ７０１（図７）へ進む。
【００１８】
ステップＳ４０２において、速度プラン演算部１０１は、移動体３０１を所定の加速度で減速することにより、移動体３０１を所定の距離以内で停止させることのできる移動速度を取得する。本実施形態では、速度プラン演算部１０１は、リミット検出器３０６の出力がＨｉレベルとなる検出点からメカリミットまでの距離Ｌ０と、加速度αから、速度ｖmを以下の式（１）により求める。
最大速度ｖm＝√（２×Ｌ０×α）      …（１）
この最大速度ｖmは、リミット検出器３０６の出力がＨｉレベルになった際に、移動体３０１がメカリミットに接触することなく停止出来る最大速度である。即ち、この最大速度ｖmを超えない速度で移動体３０１を移動させれば、リミット検出器３０６の検出信号に基づいて移動体３０１の移動を制御する場合、移動体３０１をメカリミットと干渉しない範囲で停止させることができる。したがって、移動体３０１をメカリミットと干渉させることなく、初期位置への復帰時間を短くする事が出来る。
【００１９】
次に、ＭＰＵ１００は、移動速度ｖmを目標として移動体３０１をリミット検出器３０６へ向けて移動し、リミット検出器３０６が移動体３０１を検出したことに応じて移動体３０１を距離Ｌ０以内で停止させる第１の移動処理を実行する。この第１の移動処理は、ステップＳ４０３〜Ｓ４０７に相当する。
【００２０】
まず、ステップＳ４０３において、速度プラン演算部１０１は、移動体３０１を正方向へ、最大速度ｖmになるまで加速度αで加速を行い、最高速度ｖmに達した場合は速度ｖmを保つよう速度制御する速度プランを生成し、移動体３０１を移動させる。速度プラン演算部１０１は、移動体３０１の移動中に、リミット検出器３０６の出力がＨｉレベルになったか否かを監視する（ステップＳ４０４）。リミット検出器３０６の出力がＨｉレベルになると、処理はステップＳ４０５へ進み、位置信号処理部１０４がその時点の位置を検出位置としてメモリ１０７に記録する。より具体的にステップＳ４０５を説明すると、位置信号処理部１０４は、リミット検出器３０６の出力がＨｉレベルに切り替わる（立ち上がり）エッジをトリガにして現在位置Ｐnowを検出位置Ｐlimとしてメモリ１０７に記憶させる。なお、現在位置Ｐnowは、スケールパターン３１６とセンサユニット３１１により逐次計測される。その後、速度プラン演算部１０１は、速度プランを生成し、負の加速度αで移動体３０１を減速し（ステップＳ４０６）、停止させる（ステップＳ４０７）。
【００２１】
以上のような第１の移動処理（ステップＳ４０３〜Ｓ４０７）の終了後、ＭＰＵ１００は、リミット検出器３０６による移動体３０１の検出状態が切り替わる位置（原点位置）へ移動体３０１を戻すことにより、原点復帰または原点検知の動作を行う。この処理は、ステップＳ４０８〜Ｓ４１７により示される。本実施形態では、リミット検出器３０６による移動体３０１の検出状態が切り替わる位置、すなわち原点位置を、リミット検出器３０６による検出状態がＨｉ（移動体３０１を検出している状態）からＬｏｗ（移動体３０１を検出していない状態）へ切り替わった位置とする。但し、原点位置はこれに限られるものではなく、その反対でもよい。すなわち、リミット検出器３０６による検出状態がＬｏｗ（移動体３０１を検出していない状態）からＨｉ（移動体３０１検出している状態）へ切り替わった位置を原点位置としてもよい。
【００２２】
第１の移動処理（ステップＳ４０３〜Ｓ４０７）の後、ステップＳ４０８、Ｓ４０９において、ＭＰＵ１００は、移動体をメモリ１０７に記憶されているリミット検出位置へ移動させる第２の移動処理を実行する。まず、ステップＳ４０８において、速度プラン演算部１０１は、現在位置Ｐnowからメモリ１０７に記憶されている検出位置Ｐlimへ移動体３０１を移動するための速度プランを作成する。そして、ステップＳ４０９において、速度プラン演算部１０１は、作成した速度プランにしたがって、記憶位置Ｐlimを目標値として移動体３０１を移動する。なお、速度プラン演算部１０１は、移動距離Ｐm＝｜Ｐnow−Ｐlim｜、目標速度ｖ1＝sqrt（Ｐm×α）、加速度αとして得られる各パラメータに基づいて移動体３０１の速度プランを決定する。
【００２３】
上述した第２の移動処理（ステップＳ４０８、Ｓ４０９）を終えると、ＭＰＵ１００は、第２の移動処理の結果、リミット検出器３０６が移動体３０１を検出している場合（ステップＳ４１０でＹＥＳ）には、第３の移動処理を実行する（Ｓ４１４〜Ｓ４１６）。第３の移動処理では、移動体３０１を移動限界の位置から遠ざかる方向へ移動し、リミット検出器３０６が移動体３０１を検出できなくなった位置（ステップＳ４１５でＮＯ）で停止させる。他方、第２の移動処理の結果、リミット検出器３０６が移動体３０１を検出していない場合（ステップＳ４１０でＮＯ）、ＭＰＵ１００は、移動体３０１をリミット検出器３０６が検出するまで移動する（ステップS４１１〜S４１３）。ＭＰＵ１００は、移動体３０１をリミット検出器３０６により検出されるまで移動した後（ステップＳ４１２でＹＥＳ）、移動体３０１を停止し（ステップＳ４１３）、上記の第３の移動処理を実行する（ステップＳ４１４〜Ｓ４１６）。このようにして、移動体３０１の原点位置への移動が完了し、ＭＰＵ１００は、その時の移動体３０１の位置を原点に決定する（ステップＳ４１７）。
【００２４】
以下、ステップＳ４１０〜Ｓ４１６について詳細に説明する。ステップＳ４０９において移動体３０１が検出位置Ｐlimへ移動した後、リミット検出器３０６の出力がＨｉレベルである場合（移動体３０１を検出している場合）、処理はステップＳ４１０からステップＳ４１４へ進む。ステップＳ４１４において、ＭＰＵ１００は、移動体３０１を負方向へ低速送りまたはステップ送り動作で移動させる。そして、リミット検出器３０６の出力がＬｏｗレベルになると、処理はステップＳ４１５からステップＳ４１６へ進み、ＭＰＵ１００は移動体３０１の移動を停止する。たとえば、ステップＳ４１４、Ｓ４１５では、ＭＰＵ１００は、たとえばステップ送りにより移動体３０１を所定の距離だけ移動し、その移動ごとにリミット検出器３０６が移動体３０１を検出しているか否かを判定するようにする。ステップ送りされる所定の距離は、小さければ小さいほど原点位置の精度が高くなるが、移動に時間がかかる。また、ステップＳ４１４において低速移動を用いた場合も、移動体３０１の移動速度を低速にすればするほど原点位置の精度が上がるが、移動に時間がかかる。
【００２５】
他方、リミット検出器３０６の出力がＬｏｗレベルの場合（移動体３０１を検出していない場合）、ステップＳ４１１において、ＭＰＵ１００は、移動体３０１を正方向へ低速送りまたはステップ送り動作で移動させる。リミット検出器３０６の出力がＨｉレベルになると、処理はステップＳ４１２からステップＳ４１３へ進み、ＭＰＵ１００は、移動体３０１を停止する。その後、上述したステップＳ４１４〜Ｓ４１６の動作（第３の移動処理）が行われる。移動体３０１が停止したら、その位置を原点と決定し（Ｓ４１６）、原点復帰動作および原点移動動作は完了する。
【００２６】
図５（ａ）は、図４のフローチャートを用いて説明した原点復帰動作／原点移動動作において、移動体３０１の速度がｖmに達した後、リミット検出器３０６の出力がＨｉレベルを示す場合の、速度プラン演算部１０１が生成する速度プランを示す。また、図５（ｂ）はリミット検出器３０６による検出信号のＨｉ、Ｌｏｗの状態を示している。ステップＳ４０３において速度プラン演算部１０１が生成する速度プランは、移動体３０１を加速度αで加速し（加速部５０１）、移動体３０１の速度がステップＳ４０２で取得されたｖmに達した後、その速度を維持して正方向に移動する（定速部５０２）。最大速度ｖmは、ステップＳ４０２で取得される。リミット検出器３０６により移動体３０１が検出されると、速度プラン演算部１０１は、加速度αで減速する減速部５０３のプランを生成し、移動体３０１の移動を制御する。以上の、加速部５０１、定速部５０２、減速部５０３による移動体３０１の移動が第１の移動処理である。なお、加速部５０１と減速部５０３の加速度はともにαとし、機構部３００が提供し得る最大の加速度とすることにより、原点位置への移動をより高速化することができる。或いは、減速部５０３の加速度を、目標速度ｖmの算出に用いられた加速度αよりも大きくすることにより、より確実に距離Ｌ０内で移動体３０１が停止できるようにしてもよい。
【００２７】
第２の移動処理では、速度プラン演算部１０１は、メモリ１０７に記憶されているリミット検出位置を目標とした速度プランを生成し、移動体３０１を移動させる。この速度プランは、負方向（メカリミットから遠ざかる方向）への加速部５０４と、減速部５０５で構成される。この際、移動体３０１が停止位置から検出位置まで最短の時間で移動できるように移動体３０１の加減速を制御するような速度プランとすることが望ましい。
【００２８】
図６（ａ）は、移動体３０１の速度がｖmに達する前に、リミット検出器３０６の出力がＨｉレベルを示した場合の、移動体３０１の速度プランを示す。図６（ｂ）は、リミット検出器３０６による検出信号のＨｉ、Ｌｏｗの状態を示している。第１の移動処理において、速度プランは、リミット検出器３０６からの検出信号に応じて、加速度αで正方向へ加速する加速部６０１から、加速度αで減速する減速部６０２に切り替わる。第２の移動処理において、速度プラン演算部１０１は、メモリ１０７に記憶されているリミット検出位置を目標とした速度プランを生成し、移動体３０１を移動させる。加速部６０３および減速部６０４は、上述した加速部５０４および減速部５０５と同様である。
【００２９】
なお、上記実施形態ではリミット検出器に遮光フォトインタラプタとしたが、コイルユニット３１２がメカリミットから距離Ｌ０の範囲にあることを検知できる機構であれば、どのようなタイプの検出器を採用してもかまわない。
【００３０】
次に、ステップＳ４０１において、ＭＰＵ１００は、原点復帰動作または原点移動動作の指令時に、リミット検出器３０６が移動体３０１を検出している場合の処理について図７のフローチャートを参照して説明する。この場合、処理はステップＳ４０１から図７のステップＳ７０１へ進む。図７は機構部３００の原点復帰動作および原点移動動作の指令時に、リミット検出器３０６の出力がＨｉレベルの場合（リミット検出器３０６が移動体３０１を検出している場合）における、ＭＰＵ１００による制御手順を示すフローチャートである。
【００３１】
ＭＰＵ１００は、ステップＳ７０１〜Ｓ７０９において、第４の移動処理を実行する。第４の移動処理では、ＭＰＵ１００は、移動限界の位置から遠ざかる方向へ、現在位置から距離Ｌ０を移動するように移動体の移動を開始し、
・リミット検出器３０６が移動体３０１を検出している状態で距離Ｌ０の移動が完了したことに応じて、または、
・距離Ｌ０の移動の完了前であって、且つリミット検出器３０６が移動体３０１を検出できなくなったことに応じて、移動体３０１を停止する。
【００３２】
即ち、ステップＳ７０１において、ＭＰＵ１００は、あらかじめ設定されている距離Ｌ０（図３（ａ）を参照）を現在位置から減算した位置を目標位置に設定する。そして、ステップＳ７０２において、速度プラン演算部１０１は、加速度αから速度プラン（加減速プラン）を作成する。速度プラン演算部１０１は、移動距離Ｐtgt＝Ｐnow−L０、目標速度ｖ2＝sqrt（Ｐtgt×α）、加速度αで算出される各パラメータに基づいて速度パターンを決定する。
【００３３】
ステップＳ７０３において、速度プラン演算部１０１は、作成した速度プランにしたがって、移動体３０１を負方向へ移動する。この移動中に、すなわち目標位置に到達する前に、リミット検出器３０６の出力がＬｏｗレベルになると、処理はステップＳ７０４（ＮＯ）、Ｓ７０５（ＮＯ）を経て、ステップＳ７０６へ進む。すなわち、ＭＰＵ１００は、リミット検出器３０６の検出信号の出力のエッジ（立下りエッジ）をトリガにして、処理はステップＳ７０６へ進む。ステップＳ７０６において、ＭＰＵ１００は、位置信号処理部１０４から得られる、スケールパターン３１６とセンサユニット３１１により逐次計測される現在位置Ｐnowを検出位置Ｐlimとしてメモリ１０７へ記憶する。その後、移動体３０１が減速動作中であるならば、処理はステップＳ７０７からステップＳ７０９へ進み、引き続き負の加速度αで移動体３０１を減速して停止する。そうでなければ、処理はステップＳ７０７からステップＳ７０８へ進み、強制的に負の加速度αで減速動作を行い、停止する（ステップＳ７０９）。また、ステップＳ７０１で設定された目標位置へ移動体３０１が到達することによって第４の移動処理が終了すると、処理はステップＳ７０４からステップＳ７１２へ進む。
【００３４】
次に、第４の移動処理（ステップＳ７０１〜Ｓ７０９）が、移動体３０１が距離Ｌ０を移動する前に（ステップＳ７０４でＮＯ）、リミット検出器３０６からの検出信号の立下りが検出され（ステップＳ７０５がＮＯに変化）、ステップＳ７０６〜７０８を経て、ステップＳ７０９の停止で終了した場合について説明する。この場合、ＭＰＵ１００は、リミット検出器３０６がリミット検出できる位置まで移動体３０１を限界位置（メカリミット）へ近付く方向へ移動する第５の移動処理（ステップＳ７１０〜Ｓ７１１）を実行する。すなわち、ステップＳ７１０において、速度プラン演算部１０１は、現在位置Ｐnowからメモリ１０７に記憶されている検出位置Ｐlimへ移動するための速度プランを作成し、ステップＳ７１１において検出位置Ｐlimを目標値として移動体３０１を移動する。速度プランは、移動距離Ｐm＝｜Ｐnow−Ｐlim｜、目標速度ｖ3＝sqrt（Ｐm×α）、加速度αで算出される各パラメータに基づいて作成される。この第５の移動処理が終了すると処理はステップＳ７１２に進み、ＭＰＵ１００はリミット検出の有無を確認する。
【００３５】
一方、ステップＳ７０５で、リミット検出器３０６の出力がＬｏｗレベルになる前に、ステップＳ７０１で設定された目標位置へ移動体３０１が到達した場合、ステップＳ７０４でＹＥＳと判定される。この場合、ＭＰＵ１００は、第４の移動処理を終了させ、処理をステップＳ７０４からステップＳ７１２へ進める。
【００３６】
ステップＳ７１２で、ＹＥＳ、即ち、リミット検出器３０６が移動体３０１を検出している場合には、処理は第６の移動処理（ステップＳ７１６〜Ｓ７１８）へ進む。第６の移動処理において、ＭＰＵ１００は、移動体３０１をリミット検出器３０６が検出できなくなるまで、即ち、ステップＳ７１７でＮＯになるまで、低速送り又はステップ送りで移動し（ステップＳ７１６）、停止する（ステップＳ７１８）。
【００３７】
他方、第４の移動処理または第５の移動処理の結果、リミット検出器３０６が移動体３０１を検出していない場合（ステップＳ７１２でＮＯ）、処理はステップＳ７１３へ進む。この場合、ＭＰＵ１００は、まず移動体３０１をリミット検出器３０６の方向（正方向）へ低速送りまたはステップ送り動作で移動する（ステップＳ７１３）。そして、リミット検出器３０６の出力がＨｉレベルになったら（ステップＳ７１４でＹＥＳ）、ＭＰＵ１００は、移動体３０１の移動を停止する（ステップＳ７１５）。そして、ＭＰＵ１００は、上述の第６の移動処理（ステップＳ７１６〜Ｓ７１８）を実行する。即ち、ＭＰＵ１００は、移動体３０１を移動限界の位置（メカリミット）から遠ざかる方向へ、低速送り又はステップ送りで移動体を移動させる（ステップＳ７１６）。そして、ＭＰＵ１００は、リミット検出器３０６が移動体３０１を検出できなくなる位置（ステップＳ７１７でＮＯ）で移動体３０１を停止させる（ステップＳ７１８）。なお、ステップＳ７１６の処理は、ステップＳ４１４と同様である。
【００３８】
ＭＰＵ１００は、ステップＳ７１８で移動体３０１が停止した位置を原点に決定し（ステップＳ７１９）、原点復帰動作および原点移動動作を完了する。
【００３９】
図８（ａ）は、図７のフローチャートを用いて説明した原点復帰動作／原点移動動作において、ＭＰＵ１００の速度プラン演算部１０１が生成する速度プランに基づいて移動体３０１を制御する様子を示す図である。また、図８（ｂ）はリミット検出器３０６による検出信号のＨｉ、Ｌｏｗの状態を示している。加速部８０１において、ＭＰＵ１００は、メカリミットから遠ざかる方向である負方向へ移動体３０１を加速度αで移動させる（Ｓ７０３）。距離Ｌ０の移動を終える前にリミット検出器３０６の検出信号がＬｏｗに切り替わると、ＭＰＵ１００は、移動体３０１の移動を減速させ（減速部８０２、Ｓ７０８）、停止する（Ｓ７０９）。その後、ＭＰＵ１００はリミット検出位置へ移動体３０１を移動する（Ｓ７１０、Ｓ７１１）。このときの移動体３０１の速度プランは、正方向への加速部８０３と正方向移動時の減速部８０４のようになる。加速部８０３と減速部８０４による移動体３０１の移動を終えると、ステップＳ７１２〜Ｓ７１８で説明したように、低速またはステップ送りにより、移動体３０１を精密な原点位置へ移動する。
【００４０】
図９（ａ）は、ステップＳ７０１〜Ｓ７０５において、移動体３０１がステップＳ７０１で設定された目標位置（Ｐtgt）に到達した場合の速度プランを示す図である。また、図９（ｂ）はリミット検出器３０６の検出信号の状態を示す。負方向移動時の加速部９０１および負方向移動時の減速部９０２を経て移動体３０１が停止すると、ＭＰＵ１００は、ステップＳ７１２〜Ｓ７１８で説明したように、低速またはステップ送りにより、移動体３０１を精密な原点位置へ移動する。なお、図９（ａ）では、減速部９０２を経て移動体３０１が停止した際に、リミット検出器３０６が移動体３０１を検出している状態を示している。これは、メカリミットぎりぎりに移動体３０１があった場合であって、且つ、Ｌ０よりも若干長い位置（製造時の誤差）にリミット検出位置が配置されている場合である。この場合、期間９０３において（実際より長く表示）、ＭＰＵ１００は正方向へ移動体３０１を低速またはステップ送りし、リミット検出器３０６の検出信号がＨｉからＬｏｗへ切り替わった、移動体３０１の位置を原点位置に決定する。
【００４１】
なお、上記実施形態ではリミット検出器３０６、３０７にフォトインタラプタを用いたが、コイルユニット３１２とメカリミットの距離を検知できる機構であれば、リミット検出器と指導のような方式のセンサを用いてもかまわない。また、上記では一軸のステージ装置を示したが、二軸のステージ装置の各軸に上記の構成を適用できることは言うまでもない。
【００４２】
また、上述のステージ装置は位置決めを必要とする各機器へ適用できる。たとえば、観察対象を載置して観察範囲を変更するように移動する顕微鏡のステージとして利用することができる。
【００４３】
以上説明したように、本実施形態のステージ装置によれば、原点復帰における適切な速度の設定を行うことで、移動体のメカリミットへの接触によるメカ精度を崩すことを防げ、尚且つ原点復帰および原点移動を短時間で行うことが可能となる。また、リミット検出器の検出点を原点とする場合であっても、より少ないセンサで、移動体がメカリミットに接触することなく、高速な原点復帰動作および原点移動動作を行うことができる。
【符号の説明】
【００４４】
３０１：移動体、３０２：スケール板、３０４、３０５：マグネットシャフト支持部、３０６、３０７：リミット検出器、３１２：センサユニット、３１３、３１４：遮光板、３１６：スケールパターン
【図１】
0006549891.tif 000002
【図２】
0006549891.tif 000003
【図３】
0006549891.tif 000004
【図４】
0006549891.tif 000005
【図５】
0006549891.tif 000006
【図６】
0006549891.tif 000007
【図７】
0006549891.tif 000008
【図８】
0006549891.tif 000009
【図９】
0006549891.tif 000010