(57)【要約】【課題】エンコーダによるギャップの測定範囲を広くする。【解決手段】発光部に対向して配置され、発光部に対して相対的に移動するスケール部は、第１トラックと第２トラックとを有する。第１トラックに対応する第１信号の振幅ａｍｐ１は、ギャップに対して第１周期で変化する。第２トラックに対応する第２信号の振幅ａｍｐ２は、ギャップに対して第１周期よりも長い第２周期で変化する。信号処理回路は、第１信号の振幅ａｍｐ１に基づき、ギャップについて複数の候補値Ｇ１，Ｇ２，Ｇ３を求める。また、信号処理回路は、第２信号の振幅ａｍｐ２に基づき、参照値Ｇ１０を求める。信号処理回路は、複数の候補値Ｇ１，Ｇ２，Ｇ３のうち、参照値Ｇ１０に最も近い候補値Ｇ３を測定値Ｇ０とする。【選択図】図１０
2019105481.tif 000002
【特許請求の範囲】
【請求項１】
第１ピッチで周期的に配置された複数の第１パターンを有する第１トラック、及び前記第１ピッチよりも広い第２ピッチで周期的に配置された複数の第２パターンを有する第２トラックを備えたスケール部と、
前記第１トラック及び前記第２トラックに光を照射する発光部と、
前記第１トラックで反射又は透過した光、及び前記第２トラックで反射又は透過した光を受光する受光部と、
前記発光部と前記スケール部との間のギャップの測定値を求める処理部と、を備え、
前記処理部は、
前記第１トラックで反射又は透過した光を前記受光部が受光することで得られる第１信号の振幅に基づき、前記ギャップについて複数の候補値を求め、
前記第２トラックで反射又は透過した光を前記受光部が受光することで得られる第２信号の振幅に基づき、前記複数の候補値の中から前記測定値を決めることを特徴とするエンコーダ。
【請求項２】
前記処理部は、前記第２信号の振幅に基づいて参照値を求め、前記複数の候補値のうち、前記参照値に最も近い候補値を、前記測定値とすることを特徴とする請求項１に記載のエンコーダ。
【請求項３】
前記第１信号の振幅は、前記ギャップに対して第１周期で変化し、
前記第２信号の振幅は、前記ギャップに対して前記第１周期よりも長い第２周期で変化し、
前記処理部は、前記第１周期の半周期以上を包含し、かつ前記第２周期の半周期以下の範囲内で、前記測定値を求めることを特徴とする請求項２に記載のエンコーダ。
【請求項４】
前記処理部は、所定の数式又は所定のテーブルを用いて、前記複数の候補値を求めることを特徴とする請求項１乃至３のいずれか１項に記載のエンコーダ。
【請求項５】
前記第１信号及び前記第２信号のそれぞれは、Ａ相信号及び前記Ａ相信号に対して９０度位相のずれたＢ相信号からなり、
前記第１信号の振幅及び前記第２信号の振幅のそれぞれは、前記Ａ相信号の振幅、前記Ｂ相信号の振幅、又は前記Ａ相信号と前記Ｂ相信号との平均の振幅であることを特徴とする請求項１乃至４のいずれか１項に記載のエンコーダ。
【請求項６】
前記処理部は、前記第１信号及び前記第２信号のいずれか一方又は両方を用いて、前記スケール部の位置情報を求めることを特徴とする請求項１乃至５のいずれか１項に記載のエンコーダ。
【請求項７】
前記受光部は、光電変換する複数の受光素子を有し、
前記処理部は、前記複数の受光素子からの信号の読み出し方を切り替えることにより、前記第１トラックで反射又は透過した光を受光した信号と、前記第２トラックで反射又は透過した光を受光した信号とを、時間差で前記複数の受光素子から受信し、前記第１トラックで反射又は透過した光を受光した信号から前記第１信号を生成し、前記第２トラックで反射又は透過した光を受光した信号から前記第２信号を生成することを特徴とする請求項１乃至６のいずれか１項に記載のエンコーダ。
【請求項８】
前記受光部は、光電変換する複数の受光素子を有し、
前記処理部は、前記複数の受光素子から一括して受信した信号を処理して前記第１信号及び前記第２信号を生成することを特徴とする請求項１乃至６のいずれか１項に記載のエンコーダ。
【請求項９】
第１リンクと、
前記第１リンクに対して移動するように関節で連結された第２リンクと、
前記第１リンクに対して前記第２リンクを駆動する駆動部と、
請求項１乃至８のいずれか１項に記載のエンコーダと、を備え、
前記発光部及び前記受光部は、前記第１リンク及び前記第２リンクのうち、一方に設けられ、
前記スケール部は、前記第１リンク及び前記第２リンクのうち、他方に設けられていることを特徴とするロボット。
【請求項１０】
前記駆動部を動作させる駆動制御部を更に備え、
前記駆動制御部は、前記エンコーダから関節の位置情報を取得して、前記駆動部をフィードバック制御することを特徴とする請求項９に記載のロボット。
【請求項１１】
前記駆動制御部に位置指令を送り、前記駆動部の動作を制御する制御部を更に備え、
前記制御部は、前記駆動部に所定動作を開始させる前に、前記駆動部の駆動を一旦停止させ、前記ギャップの前記測定値に基づき、前記第１リンクに対して振動する前記第２リンクの振動振幅値を求め、前記振動振幅値が許容範囲に収まってから、前記駆動部に前記所定動作を開始させることを特徴とする請求項１０に記載のロボット。
【請求項１２】
第１ピッチで周期的に配置された複数の第１パターンを有する第１トラック、及び前記第１ピッチよりも広い第２ピッチで周期的に配置された複数の第２パターンを有する第２トラックを備えたスケール部と、
前記第１トラック及び前記第２トラックに光を照射する発光部と、
前記第１トラックで反射又は透過した光、及び前記第２トラックで反射又は透過した光を受光する受光部と、
前記発光部と前記スケール部とのギャップの測定値を求める処理部と、を備えたエンコーダによるギャップ測定方法であって、
前記処理部が、前記第１トラックで反射又は透過した光を前記受光部が受光することで得られる第１信号の振幅に基づき、前記ギャップについて複数の候補値を求める工程と、
前記処理部が、前記第２トラックで反射又は透過した光を前記受光部が受光することで得られる第２信号の振幅に基づき、前記複数の候補値の中から前記測定値を決める工程と、を備えたことを特徴とするギャップ測定方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ギャップを測定するエンコーダ、ロボット及びギャップ測定方法に関する。
【背景技術】
【０００２】
近年、工場等の生産ラインにおいて、多関節のロボットが使用されている。ロボットに精密な組み付け作業を行わせるには、ロボットの手先の位置が重要であり、ロボットの関節には、ロボットの位置制御などに用いる光学式のエンコーダが配置されている。
【０００３】
光学式のエンコーダは、光源と、光源から発する光を反射又は透過し、光源に対して相対的に変位可能なスケールと、スケールで反射又は透過した光を受光する受光素子と、を有している。スケールは、ロボットが備えている一対のリンクのうち、一方に配置され、光源は、他方に配置される。スケールには、光源及び受光素子に対して相対的に移動する方向に並設された複数のパターンが形成されており、スケールの相対的な移動によって、受光素子で受光される光量が変化する。したがって、受光素子で光量の変化に応じた信号に基づいてスケールの移動量、ロボットにおいては関節の位置を求めることができる。
【０００４】
光源とスケールとは、互いに非接触となるように、適切なギャップにおいて使用する必要がある。特許文献１には、ギャップの量を、リニアエンコーダを用いて測定する技術が提案されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１３−１１３６３４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、上記特許文献１の方法では、エンコーダの分解能が高くなるほど、測定可能なギャップの測定範囲が狭くなるという問題があった。以下、具体的に説明する。図１７は、従来例におけるギャップと信号振幅との関係を示すグラフである。受光素子を用いて得られる信号の振幅は、ギャップに対応している。よって、信号の振幅をモニタすることにより、ギャップを測定することが可能である。しかし、信号の振幅は、ギャップの変化に対して例えば正弦波状の波形を振幅０で折り返すように周期的に変化する。図１７の例では、ギャップが３．６［ｍｍ］で折り返して、１周期が７．２［ｍｍ］となっている。このように、信号の振幅は、ギャップに対して周期的に変化するため、エンコーダの分解能が高くなるほど１周期が短くなり、測定可能なギャップの測定範囲が狭くなるという問題があった。
【０００７】
そこで、本発明は、エンコーダによるギャップの測定範囲を広くすることを目的とする。
【課題を解決するための手段】
【０００８】
本発明のエンコーダは、第１ピッチで周期的に配置された複数の第１パターンを有する第１トラック、及び前記第１ピッチよりも広い第２ピッチで周期的に配置された複数の第２パターンを有する第２トラックを備えたスケール部と、前記第１トラック及び前記第２トラックに光を照射する発光部と、前記第１トラックで反射又は透過した光、及び前記第２トラックで反射又は透過した光を受光する受光部と、前記発光部と前記スケール部との間のギャップの測定値を求める処理部と、を備え、前記処理部は、前記第１トラックで反射又は透過した光を前記受光部が受光することで得られる第１信号の振幅に基づき、前記ギャップについて複数の候補値を求め、前記第２トラックで反射又は透過した光を前記受光部が受光することで得られる第２信号の振幅に基づき、前記複数の候補値の中から前記測定値を決めることを特徴とする。
【発明の効果】
【０００９】
本発明によれば、エンコーダによるギャップの測定範囲を広くすることができる。
【図面の簡単な説明】
【００１０】
【図１】第１実施形態に係るエンコーダの模式図である。
【図２】（ａ）は、第１実施形態におけるスケール部の平面図である。（ｂ）は、スケール部における単位ブロックの平面図である。
【図３】第１実施形態における受光素子アレイの平面図である。
【図４】第１実施形態における受光素子アレイの平面図である。
【図５】第１実施形態における信号処理回路の回路図である。
【図６】第１実施形態におけるフローチャートである。
【図７】第１実施形態における信号位相とスケール位置との関係を示すグラフである。
【図８】第１実施形態に係るエンコーダの要部を示す図である。
【図９】第１実施形態におけるフローチャートである。
【図１０】第１実施形態におけるギャップと信号振幅との関係を示すグラフである。
【図１１】（ａ）は、第２実施形態におけるバーニア信号とスケール位置との関係を示すグラフである。（ｂ）は、第２実施形態における信号位相とスケール位置との関係を示すグラフである。
【図１２】第３実施形態に係るロボットの斜視図である。
【図１３】（ａ）は、第３実施形態における関節の断面図である。（ｂ）は、第３実施形態における関節の側面図である。
【図１４】第３実施形態に係るロボットの制御系を示すブロック図である。
【図１５】第３実施形態における関節の振動の示すグラフである。
【図１６】変形例における受光素子アレイの平面図である。
【図１７】従来例におけるギャップと信号振幅との関係を示すグラフである。
【発明を実施するための形態】
【００１１】
以下、本発明を実施するための形態を、図面を参照しながら詳細に説明する。
［第１実施形態］
図１は、第１実施形態に係るエンコーダ５０の模式図である。エンコーダ５０は、光学式の光干渉型エンコーダであって、インクリメンタル方式のリニアエンコーダである。また、エンコーダ５０は、反射型のエンコーダである。
【００１２】
エンコーダ５０は、固定部及び可動部のうち一方、例えば可動部に取り付けられるスケール部２と、固定部及び可動部のうち他方、例えば固定部に取り付けられ、スケール部２に対向して配置されたヘッド７と、を有する。スケール部２は、ヘッド７に対して相対的に並進移動する。また、エンコーダ５０は、処理部の一例である信号処理回路５１と、記憶部の一例である記憶装置５２とを有する。
【００１３】
ここで、ヘッド７に対して相対的に並進移動するスケール部２の移動方向をＸ方向、Ｘ方向に直交する方向であって、ヘッド７とスケール部２との対向方向（ギャップ方向）をＺ方向、Ｘ方向及びＺ方向に直交する幅方向をＹ方向とする。
【００１４】
信号処理回路５１は、ヘッド７で得られた信号の内挿演算、記憶装置５２への信号データの書き込み及び読み出し、並びにスケール部２の位置情報を示す信号の出力等を行う。
【００１５】
ヘッド７は、発光部の一例であるＬＥＤからなる光源１と、センサユニット３とを有する。センサユニット３は、基板８と、基板８の表面に実装された、受光部の一例である受光素子アレイ９と、を有する。光源１及びセンサユニット３は、プリント配線板４に実装され、光が透過する透明の樹脂５で封止されている。また、樹脂５の表面には、ガラス６が配置されている。この構成により、光源１及びセンサユニット３が樹脂５及びガラス６で保護されている。
【００１６】
信号処理回路５１及び記憶装置５２は、例えばＩＣチップからなる半導体素子で構成され、基板８の表面に実装されている。ここで、図１では、説明の便宜上、基板８に実装されていないように図示されている。なお、信号処理回路５１及び記憶装置５２の配置位置は、これに限定するものではなく、いずれの箇所に配置されていてもよい。例えば信号処理回路５１又は記憶装置５２は、プリント配線板４に実装されていてもよいし、プリント配線板４とは別のプリント配線板に実装されていてもよい。
【００１７】
スケール部２は、相対的に光の反射率が低い（即ち光を吸収又は透過する）部材、例えばガラス基板と、ガラス基板上に形成された、相対的に光の反射率が高い部材、例えばクロム反射膜とで構成されている。なお、説明の便宜上、相対的に光の反射率が低い部分を「非反射部分」、相対的に光の反射率が高い部分を「反射部分」とする。
【００１８】
光源１から出射した光束は、スケール部２の一部分に照射される。スケール部２に照射された光束は、受光素子アレイ９に向けて反射され、受光素子アレイ９上でスケール部２の反射率分布が２倍に拡大された像となり、受光素子アレイ９によって受光される。受光素子アレイ９によって受光された光束は、光電変換され、電気信号として信号処理回路５１に送信される。
【００１９】
図２（ａ）は、スケール部２の平面図である。スケール部２は、Ｙ方向に複数（例えば８つ）並設された単位ブロック１０で構成されている。図２（ｂ）は、単位ブロック１０の平面図である。単位ブロック１０は、Ｘ方向にピッチ（第１ピッチ）Ｐ１で周期的に配置された複数のパターン（第１パターン）２１からなるトラック（第１トラック）１１を有する。また、単位ブロック１０は、Ｘ方向にピッチＰ１よりも広いピッチ（第２ピッチ）Ｐ２で周期的に配置された複数のパターン（第２パターン）２２からなるトラック（第２トラック）１２を有する。各パターン２１，２２は、反射部分と非反射部分とからなる。図２（ａ）及び図２（ｂ）では、各パターン２１，２２の反射部分を網掛けで図示し、非反射部分を白抜きで図示している。
【００２０】
単位ブロック１０は、Ｙ方向の幅Ｙ０が例えば５０［μｍ］である。パターン２１の反射部分及び非反射部分それぞれのＸ方向の長さは、例えば３２［μｍ］であり、パターン２１のピッチＰ１は例えば６４［μｍ］である。また、パターン２２の反射部分及び非反射部分それぞれのＸ方向の長さは、例えば６４［μｍ］であり、パターン２２のピッチＰ２は例えば１２８［μｍ］である。よって、第１実施形態では、ピッチＰ２はピッチＰ１の２倍である。各パターン２１，２２、即ち各トラック１１，１２のＹ方向の幅は、例えば２５［μｍ］である。
【００２１】
図３及び図４は、第１実施形態における受光素子アレイ９の平面図である。受光素子アレイ９は、Ｘ方向に並設された複数（例えば３２個）の受光素子９１を有する。複数の受光素子９１は、例えば３２［μｍ］のピッチでＸ方向に並設されている。一つの受光素子９１は、Ｘ方向の長さＸ＿ｐｄが例えば３２［μｍ］であり、Ｙ方向の幅Ｙ＿ｐｄが例えば８００［μｍ］である。受光素子アレイ９のＸ方向の全長Ｘ＿ｔｏｔａｌは、例えば１０２４［μｍ］である。
【００２２】
光源１及び受光素子アレイ９は、光源１のＺ方向の出射面の高さと、受光素子アレイ９の受光面のＺ方向の高さとが同じレベルとなるように配置されている。この配置関係により、スケール部２上のパターンは、受光素子アレイ９において２倍の拡大投影像となる。したがって、受光素子アレイ９全体にスケール部２からの反射光が入射するように、スケール部２へ照射する光の照射範囲を、Ｙ方向４００［μｍ］、Ｘ方向５１２［μｍ］としている。受光素子アレイ９には、トラック１１からの反射光による干渉縞と、トラック１２からの反射光による干渉縞とが共に照射されることになる。
【００２３】
図１に示す信号処理回路５１は、測定される位置情報の分解能を切り替える図３及び図４に示すスイッチ回路４１を有する。スイッチ回路４１は、複数の半導体スイッチング素子で構成されている。図３には、トラック１１からの反射光に基づいて位置を高分解能に測定する場合のスイッチ回路４１の切り替え状態を図示している。図４には、トラック１２からの反射光に基づいて位置を低分解能に測定する場合のスイッチ回路４１の切り替え状態を図示している。スイッチ回路４１を図３に示すように切り替えることにより、トラック１１に対応する周期信号を強め合い、トラック１２に対応する周期信号を相殺し合うことで、トラック１１に対応する周期信号のみ取得することができる。また、スイッチ回路４１を図４に示すように切り替えることにより、トラック１２に対応する周期信号を強め合い、トラック１１に対応する周期信号を相殺し合うことで、トラック１２に対応する周期信号のみ取得することができる。
【００２４】
図５は、第１実施形態における信号処理回路５１の回路図である。なお、図５において、スイッチ回路４１の図示は省略し、信号処理回路５１に接続される受光素子アレイ９の受光素子９１も、便宜的に４つとして図示している。スイッチ回路４１が図３及び図４のいずれの状態であっても、図５に示す接続状態となる。
【００２５】
受光素子アレイ９の後段、即ちスイッチ回路４１の後段には、初段増幅器である４つのＩＶ変換アンプ３４，３５，３６，３７が設けられている。ＩＶ変換アンプ３４，３５，３６，３７の後段には、Ａ相用差動アンプ３９及びＢ相用差動アンプ４０が設けられている。Ａ相用差動アンプ３９及びＢ相用差動アンプ４０の後段には、例えばマイクロコンピュータで構成された演算回路６０が設けられている。スイッチ回路４１は、演算回路６０からの入力信号によって、受光素子アレイ９からの信号の読み出し方を切り替えることができる。
【００２６】
入力信号がハイレベルの場合、図３に示すように、複数の受光素子９１は、交互に１つずつ対応するＩＶ変換アンプ３４，３５，３６，３７に電気的に接続される。よって、ピッチＰ１（６４［μｍ］）、即ち反射像周期１２８［μｍ］の測定分解能となる。入力信号がローレベルの場合、図４に示すように、複数の受光素子９１は、交互に２つずつ対応するＩＶ変換アンプ３４，３５，３６，３７に電気的に接続される。よって、ピッチＰ２（１２８［μｍ］）、即ち反射像周期２５６［μｍ］の測定分解能となる。ピッチＰ１は、ピッチＰ２よりも狭いので、トラック１１に基づいて位置を測定する場合は、トラック１２に基づいて位置を測定するよりも分解能が高い。
【００２７】
第１実施形態では、スイッチ回路４１への入力信号がハイレベルのときは、トラック１１からの周期信号のみ取得することができ、スイッチ回路４１への入力信号がローレベルのときは、トラック１２からの周期信号のみ取得することができる。このような構成とすることで、受光素子アレイ９を、トラック１１とトラック１２に対応して、個別に（２つ）設ける必要がないため、部品点数を削減でき、小型のエンコーダ５０を実現することができる。
【００２８】
受光素子アレイ９の各受光素子９１から読み出された電流信号は、ＩＶ変換アンプ３４，３５，３６，３７において４相の正弦波電圧信号Ｓ（Ａ＋），Ｓ（Ｂ＋），Ｓ（Ａ−），Ｓ（Ｂ−）に変換される。４つの相を、（Ａ＋）相，（Ｂ＋）相，（Ａ−）相，（Ｂ−）相とし、（Ａ＋）相を基準とする。（Ｂ＋）相は約＋９０度、（Ａ−）相は約＋１８０度、（Ｂ−）相は約＋２７０度の関係にある。
【００２９】
２相の正弦波電圧信号Ｓ（Ａ＋），Ｓ（Ａ−）は、Ａ相用差動アンプ３９において、式（１）に基づく減算が施される。２相の正弦波電圧信号Ｓ（Ｂ＋），Ｓ（Ｂ−）は、Ｂ相用差動アンプ４０において、式（２）に基づく減算が施される。
Ｓ（Ａ）＝Ｓ（Ａ＋）−Ｓ（Ａ−）  ・・・（１）
Ｓ（Ｂ）＝Ｓ（Ｂ＋）−Ｓ（Ｂ−）  ・・・（２）
これにより、直流分が除去された、Ａ相信号Ｓ（Ａ）、及びＡ相信号Ｓ（Ａ）に対して９０度位相のずれたＢ相信号Ｓ（Ｂ）が生成される。
【００３０】
Ａ相信号Ｓ（Ａ）及びＢ相信号Ｓ（Ｂ）の位相Φは、スケール部２の位置に応じて変化する。例えばスケール部２が１ピッチ分だけＸ方向に並進移動すると、位相Φは０から２πに変化する。以下の式（３）を用いることにより、Ａ相信号Ｓ（Ａ）及びＢ相信号Ｓ（Ｂ）の位相Φを計算することができる。
Φ＝ＡＴＡＮ２［Ｓ（Ａ），Ｓ（Ｂ）］    ・・・（３）
ここで、ＡＴＡＮ２［Ｘ，Ｙ］は、例えばＣ言語などで用いられる、象限を判別して０〜２π位相に変換する逆正接を演算する関数である。位相Φを求めることで、スケール部２の１ピッチ以下の移動量を求めることができる。よって、１ピッチが狭くなると分解能が高くなる。
【００３１】
図６は、第１実施形態におけるヘッド７に対するスケール部２の相対的な位置情報を求める方法の各工程を示すフローチャートである。
【００３２】
演算回路６０は、位置を測定する分解能を設定する（Ｓ１０１）。具体的には、演算回路６０は、スイッチ回路４１にハイレベル又はローレベルの入力信号を送信する。
【００３３】
まず、位置情報を高分解能で求める場合について説明する。演算回路６０は、スイッチ回路４１にハイレベルの入力信号を送り、スイッチ回路４１のスイッチング動作により、図３に示す切替状態とする。この切替状態において、受光素子アレイ９から出力される信号は、ＩＶ変換アンプ３４，３５，３６，３７において、４相の正弦波電圧信号Ｓ１（Ａ＋），Ｓ１（Ｂ＋），Ｓ１（Ａ−），Ｓ１（Ｂ−）に変換される。即ち、ＩＶ変換アンプ３４，３５，３６，３７は、受光素子アレイ９から得られる光電電流に基づき、４相の正弦波電圧信号Ｓ１（Ａ＋），Ｓ１（Ｂ＋），Ｓ１（Ａ−），Ｓ１（Ｂ−）を生成する（Ｓ１０２）。
【００３４】
これら正弦波電圧信号Ｓ１（Ａ＋），Ｓ１（Ｂ＋），Ｓ１（Ａ−），Ｓ１（Ｂ−）は、Ａ相用差動アンプ３９及びＢ相用差動アンプ４０において、式（１）及び式（２）に基づく減算が施される。即ち、Ａ相用差動アンプ３９及びＢ相用差動アンプ４０は、トラック１１に対応する第１信号であるＡ相信号Ｓ１（Ａ）及びＢ相信号Ｓ１（Ｂ）を生成する（Ｓ１０３）。
【００３５】
演算回路６０は、式（３）を用いて、Ａ相信号Ｓ１（Ａ）及びＢ相信号Ｓ１（Ｂ）の位相Φ１を算出する（Ｓ１０４）。
【００３６】
演算回路６０は、Ａ相信号Ｓ１（Ａ）又はＢ相信号Ｓ１（Ｂ）の波数をカウントし、更に式（３）を用いた内挿演算により、スケール部２、即ちスケール部２が固定された可動部の相対的な位置情報を求める（Ｓ１０５）。以上、スイッチ回路４１により図３の状態に切り替えることで、トラック１１を用いて高分解能でスケール部２の位置情報を求めることができる。
【００３７】
スケール部２の相対的な位置情報を低分解能で求める場合には、演算回路６０は、スイッチ回路４１にローレベルの入力信号を送り、スイッチ回路４１のスイッチング動作により、図４に示す切替状態とする。この切替状態において、受光素子アレイ９から出力される信号は、ＩＶ変換アンプ３４，３５，３６，３７において、４相の正弦波電圧信号Ｓ２（Ａ＋），Ｓ２（Ｂ＋），Ｓ２（Ａ−），Ｓ２（Ｂ−）に変換される。即ち、ＩＶ変換アンプ３４，３５，３６，３７は、受光素子アレイ９から得られる光電電流に基づき、４相の正弦波電圧信号Ｓ２（Ａ＋），Ｓ２（Ｂ＋），Ｓ２（Ａ−），Ｓ２（Ｂ−）を生成する（Ｓ１０６）。
【００３８】
これら正弦波電圧信号Ｓ２（Ａ＋），Ｓ２（Ｂ＋），Ｓ２（Ａ−），Ｓ２（Ｂ−）は、Ａ相用差動アンプ３９及びＢ相用差動アンプ４０において、式（１）及び式（２）に基づく減算が施される。即ち、Ａ相用差動アンプ３９及びＢ相用差動アンプ４０は、トラック１２に対応する第２信号であるＡ相信号Ｓ２（Ａ）及びＢ相信号Ｓ２（Ｂ）を生成する（Ｓ１０７）。
【００３９】
演算回路６０は、式（３）を用いて、Ａ相信号Ｓ２（Ａ）及びＢ相信号Ｓ２（Ｂ）の位相Φ２を算出する（Ｓ１０８）。
【００４０】
演算回路６０は、Ａ相信号Ｓ２（Ａ）又はＢ相信号Ｓ２（Ｂ）の波数をカウントし、更に式（３）を用いた内挿演算により、スケール部２、即ちスケール部２が固定された可動部の相対的な位置情報を求める（Ｓ１０９）。以上、スイッチ回路４１により図４の状態に切り替えることで、トラック１２を用いて低分解能でスケール部２の位置情報を求めることができる。
【００４１】
このように、第１実施形態では、信号処理回路５１は、Ａ相信号Ｓ１（Ａ）及びＢ相信号Ｓ１（Ｂ）、又はＡ相信号Ｓ２（Ａ）及びＢ相信号Ｓ２（Ｂ）を選択的に用いて、スケール部２の位置情報を求める。なお、以上の説明では、位置情報の測定分解能を選択する場合について説明したが、これに限定するものではない。例えば、いずれか一方の測定分解能で測定するようにし、他方の測定分解能では測定しないようにしてもよい。つまり、図６に示すフローチャートにおいて、ステップＳ１０１〜Ｓ１０５を省略してもよいし、又はステップＳ１０１，Ｓ１０６〜Ｓ１０９を省略してもよい。高い分解能が要求されるのであれば、ステップＳ１０１，Ｓ１０６〜Ｓ１０９を省略し、ステップＳ１０２〜Ｓ１０５を行えばよい。
【００４２】
図７は、信号の位相Φ２とスケール部２の位置（スケール位置）との関係を示すグラフである。図７に示すように、スケール部２の位置に応じて位相Φ２が鋸波状に変化する。第１実施形態では、内挿演算により、スケール部２の相対的な位置を高精度に求めることができる。
【００４３】
次に、第１信号であるＡ相信号Ｓ１（Ａ）及びＢ相信号Ｓ１（Ｂ）と、第２信号であるＡ相信号Ｓ２（Ａ）及びＢ相信号Ｓ２（Ｂ）との両方を用いて、光源１とスケール部２との間のＺ方向のギャップを測定する場合について説明する。
【００４４】
図８は、第１実施形態に係るエンコーダ５０の要部を示す図である。光源１の発光面１Ａとスケール部２の反射面２Ａとの間のＺ方向のギャップＧとして、物理的な実距離を求めてもよいが、第１実施形態では光源１とスケール部２との間に樹脂５、ガラス６など、空気層とは異なる屈折率の層が存在するため、光学的距離を求める。
【００４５】
光源１とスケール部２との間のＺ方向の実距離のうち、樹脂５のＺ方向の実距離をｄ１、ガラス６のＺ方向の実距離をｄ２、空気層のＺ方向の実距離をｄ３とする。また、樹脂５の屈折率をｎ１、ガラス６の屈折率をｎ２、空気層の屈折率をｎ３（＝１）とする。このように定義したとき、光源１の発光面１Ａと、スケール部２の反射面２ＡとのＺ方向の光学的距離は、ｄ１／ｎ１＋ｄ２／ｎ２＋ｄ３／ｎ３である。実距離ｄ１，ｄ２及び屈折率ｎ１，ｎ２，ｎ３は変動することがない。よって、光源１の発光面１Ａと、スケール部２の反射面２ＡとのＺ方向の光学的距離は、実距離ｄ３に応じて変化する。したがって、ギャップＧとして光学的距離を求めた後、実距離ｄ３を求めてもよい。
【００４６】
図９は、第１実施形態におけるギャップ測定方法の各工程を示すフローチャートである。本実施形態では、複数の分解能で得られる信号振幅をもとにギャップＧの測定を行う。その際、スイッチ回路４１を、図３の状態と図４の状態とに切り替えて行う。
【００４７】
まず、演算回路６０は、スイッチ回路４１にハイレベルの入力信号を送り、スイッチ回路４１のスイッチング動作により、図３に示す切替状態とする（Ｓ２０１）。この切替状態において、ＩＶ変換アンプ３４，３５，３６，３７は、受光素子アレイ９から得られる光電電流に基づき、４相の正弦波電圧信号Ｓ１（Ａ＋），Ｓ１（Ｂ＋），Ｓ１（Ａ−），Ｓ１（Ｂ−）を生成する（Ｓ２０２）。
【００４８】
Ａ相用差動アンプ３９及びＢ相用差動アンプ４０は、式（１）及び式（２）に基づく減算処理により、トラック１１に対応する第１信号であるＡ相信号Ｓ１（Ａ）及びＢ相信号Ｓ１（Ｂ）を生成する（Ｓ２０３）。
【００４９】
Ａ相信号Ｓ１（Ａ）とＢ相信号Ｓ１（Ｂ）とは９０度位相がずれている。演算回路６０は、以下の式（４）により第１信号の振幅ａｍｐ１を求める（Ｓ２０４）。
ａｍｐ１＝ＳＱＲＴ［Ｓ１（Ａ）＾２＋Ｓ１（Ｂ）＾２］  ・・・（４）
【００５０】
即ち、演算回路６０は、Ａ相信号Ｓ１（Ａ）とＢ相信号Ｓ１（Ｂ）との平均の振幅、より具体的には、Ａ相信号Ｓ１（Ａ）とＢ相信号Ｓ１（Ｂ）との二乗和平方根を求める。ＳＱＲＴ［Ｘ］は、Ｘの平方根を演算する関数である。
【００５１】
なお、ヘッド７に対してスケール部２を相対移動させながらＡ相信号Ｓ１（Ａ）又はＢ相信号Ｓ１（Ｂ）をモニタすることで、Ａ相信号Ｓ１（Ａ）又はＢ相信号Ｓ１（Ｂ）の振幅を振幅ａｍｐ１として求めてもよい。
【００５２】
次に、演算回路６０は、スイッチ回路４１にローレベルの入力信号を送り、スイッチ回路４１のスイッチング動作により、図４に示す切替状態とする（Ｓ２０５）。この切替状態において、ＩＶ変換アンプ３４，３５，３６，３７は、受光素子アレイ９から得られる光電電流に基づき、４相の正弦波電圧信号Ｓ２（Ａ＋），Ｓ２（Ｂ＋），Ｓ２（Ａ−），Ｓ２（Ｂ−）を生成する（Ｓ２０６）。
【００５３】
Ａ相用差動アンプ３９及びＢ相用差動アンプ４０は、式（１）及び式（２）に基づく減算処理により、トラック１２に対応する第２信号であるＡ相信号Ｓ２（Ａ）及びＢ相信号Ｓ２（Ｂ）を生成する（Ｓ２０７）。
【００５４】
Ａ相信号Ｓ２（Ａ）とＢ相信号Ｓ２（Ｂ）とは９０度位相がずれている。演算回路６０は、以下の式（５）により第２信号の振幅ａｍｐ２を求める（Ｓ２０８）。
ａｍｐ２＝ＳＱＲＴ［Ｓ２（Ａ）＾２＋Ｓ２（Ｂ）＾２］  ・・・（５）
【００５５】
即ち、演算回路６０は、Ａ相信号Ｓ２（Ａ）とＢ相信号Ｓ２（Ｂ）との平均の振幅、より具体的には、Ａ相信号Ｓ２（Ａ）とＢ相信号Ｓ２（Ｂ）との二乗和平方根を求める。
【００５６】
なお、ヘッド７に対してスケール部２を相対移動させながらＡ相信号Ｓ２（Ａ）又はＢ相信号Ｓ２（Ｂ）をモニタすることで、Ａ相信号Ｓ２（Ａ）又はＢ相信号Ｓ２（Ｂ）の振幅を振幅ａｍｐ２として求めてもよい。
【００５７】
以上、信号処理回路５１は、受光素子アレイ９からの信号の読み出し方を切り替えることにより、トラック１１で反射した光を受光した信号と、トラック１２で反射した光を受光した信号とを、時間差で受光素子アレイ９から受信する。そして、信号処理回路５１は、トラック１１で反射した光を受光した信号から、第１信号としてＡ相信号Ｓ１（Ａ）及びＢ相信号Ｓ１（Ｂ）を生成する。また、信号処理回路５１は、トラック１２で反射した光を受光した信号から、第２信号としてＡ相信号Ｓ２（Ａ）及びＢ相信号Ｓ２（Ｂ）を生成する。そして、信号処理回路５１は、Ａ相信号Ｓ１（Ａ）及びＢ相信号Ｓ１（Ｂ）から信号振幅ａｍｐ１を求め、Ａ相信号Ｓ２（Ａ）及びＢ相信号Ｓ２（Ｂ）から信号振幅ａｍｐ２を求める。
【００５８】
ここで、信号振幅ａｍｐ１，ａｍｐ２は、ギャップＧに対して式（６）の周期で変化する。
２×Ｐ＾２／λ  ・・・（６）
ＰはピッチＰ１，Ｐ２、λは光源１から発せられる光の波長である。例えば、式（６）から、Ｐ１＝６４［μｍ］、λ＝６５０［ｎｍ］の場合の、位相を考慮した信号振幅の変動周期は約１２．６０［ｍｍ］と算出される。また、例えば、式（６）から、Ｐ２＝１２８［μｍ］、λ＝６５０［ｎｍ］の場合の、位相を考慮した信号振幅の変動周期は約５０．４１［ｍｍ］と算出される。
【００５９】
式（６）より、ギャップＧのときの信号振幅ａｍｐ（ａｍｐ１，ａｍｐ２）は、式（７）で表される。
ａｍｐ＝ｃｏｓ（２π×Ｇ／（２×Ｐ＾２／λ））    ・・・（７）
【００６０】
ギャップＧは、以下の式（８）で求めることができる。
Ｇ＝（２×Ｐ＾２／λ）／２π×ａｒｃｃｏｓ（ａｍｐ）  ・・・（８）
【００６１】
図１０は、Ｐ１＝６４［μｍ］、Ｐ２＝１２８［μｍ］、λ＝６５０［ｎｍ］とした場合のギャップと信号振幅との関係を示すグラフである。図１０中、縦軸は信号振幅、横軸はギャップである。図１０において、Ｐ１＝６４［μｍ］、λ＝６５０［ｎｍ］の場合の信号振幅ａｍｐ１を実線で示し、Ｐ２＝１２８［μｍ］、λ＝６５０［ｎｍ］の場合の信号振幅ａｍｐ２を破線で図示している。また、図１０には、それぞれのピッチＰ１，Ｐ２においてギャップＧが０のときの信号振幅ａｍｐ１，ａｍｐ２を１と規格化し、そのときの信号振幅ａｍｐ１，ａｍｐ２を図示している。第１実施形態において所望するギャップＧの測定範囲を０〜１０［ｍｍ］として説明する。
【００６２】
信号振幅ａｍｐ１，ａｍｐ２は、図１０に示すように、ギャップＧに対して正弦波（具体的には余弦波）の絶対値で周期的に変化する。式（７）は、数式上はプラスマイナス両方の値を取り得るが、位相情報を含んだ光干渉の式であるため、実際の信号振幅は正の値のみ取ることになり、図１０のようなグラフになる。信号振幅ａｍｐ１は、ギャップＧが０から増加するに従って小さくなり、約３．１５［ｍｍ］で０となる。また、信号振幅ａｍｐ１は、ギャップＧが約３．１５［ｍｍ］で増加に転じ、ギャップＧが増加するに従って大きくなり、約６．３０［ｍｍ］で１となる。そして、信号振幅ａｍｐ１は、ギャップＧが約６．３０［ｍｍ］で減少に転じる。即ち、信号振幅ａｍｐ１は、ギャップＧに対して約６．３０［ｍｍ］の周期（第１周期）で変化する。
【００６３】
第１実施形態では、ギャップＧの測定範囲を、約６．３０［ｍｍ］の周期（第１周期）の半周期以上（約３．１５［ｍｍ］以上）の範囲を包含するよう、０〜１０［ｍｍ］の範囲としている。トラック１１を用いることで、ギャップＧを高精度（高感度）に測定することができるが、ギャップＧの測定範囲（０〜１０［ｍｍ］）において、複数の値、図１０の例では、３点又は４点の値（候補値）が算出され、一義的に求まらない。したがって、仮にトラック１１のみを用いてギャップＧを高精度に求める場合のギャップＧの測定可能範囲は、０〜約３．１５［ｍｍ］の範囲ということになり、狭いものである。
【００６４】
演算回路６０は、トラック１１で反射した光を受光素子アレイ９が受光することで得られる第１信号の振幅ａｍｐ１に基づき、ギャップＧについて複数の候補値を求める（Ｓ２０９）。具体的には、演算回路６０は、所定の数式である式（８）を用いて、所望する測定範囲内において複数の候補値を求める。図１０に示す例では、例えば信号振幅ａｍｐ１が０．８だった場合、０〜１０［ｍｍ］の測定範囲内で複数の候補値Ｇ１，Ｇ２，Ｇ３が求められる。
【００６５】
一方、信号振幅ａｍｐ２は、ギャップＧが０から増加するに従って小さくなり、図示は省略しているが約１２．６０［ｍｍ］で０となる。また、信号振幅ａｍｐ２は、ギャップＧが約１２．６０［ｍｍ］で増加に転じ、ギャップＧが増加するに従って大きくなり、約２５．２０［ｍｍ］で１となる。また、信号振幅ａｍｐ２は、ギャップＧが約２５．２０［ｍｍ］から増加に転じる。即ち、信号振幅ａｍｐ２は、ギャップＧに対して、約６．３０［ｍｍ］の周期（第１周期）よりも長い、約２５．２０［ｍｍ］の周期（第２周期）で変化する。
【００６６】
ギャップＧの測定範囲は、約６．３０［ｍｍ］の周期（第１周期）の半周期以上を包含し、かつ約２５．２０［ｍｍ］の周期（第２周期）の半周期以下（約１２．６０［ｍｍ］以下）の範囲内となるよう、０〜１０［ｍｍ］の範囲としている。トラック１２を用いることで、所望するギャップＧの測定範囲０〜１０［ｍｍ］において、ギャップＧを一義的に測定することはできるが、精度（感度）が低いため、第１実施形態では参照値として用いる。
【００６７】
演算回路６０は、トラック１２で反射した光を受光素子アレイ９が受光することで得られる第２信号の振幅ａｍｐ２に基づき、ギャップＧについて参照値を求める（Ｓ２１０）。具体的には、演算回路６０は、式（８）を用いて、参照値を求める。つまり、トラック１２に基づいて求めたギャップＧの値を、参照値とする。図１０に示す例では、例えば信号振幅ａｍｐ２が０．５８だった場合、参照値Ｇ１０が求められる。
【００６８】
次に、演算回路６０は、複数の候補値Ｇ１，Ｇ２，Ｇ３と参照値Ｇ１０とを比較し、ギャップＧの測定結果である測定値Ｇ０を決める（Ｓ２１１）。具体的に説明すると、演算回路６０は、複数の候補値Ｇ１，Ｇ２，Ｇ３のうち、参照値Ｇ１０に最も近い候補値Ｇ３を、測定値Ｇ０とする。なお、信号振幅ａｍｐ２から参照値Ｇ１０を求める場合について説明したが、信号振幅ａｍｐ２の値から、直接、候補値Ｇ１，Ｇ２，Ｇ３の中から測定値Ｇ０を決めるようにしてもよい。
【００６９】
以上、演算回路６０は、ステップＳ２１０，Ｓ２１１において、信号振幅ａｍｐ２に基づき、複数の候補値Ｇ１，Ｇ２，Ｇ３の中から測定値Ｇ０を決める。これにより、高精度にギャップＧを測定することが可能であり、かつギャップＧの測定範囲を広げることが可能となる。
【００７０】
なお、図１０に示すグラフは、光源１からスケール部２に照射される光が平行光のような、ギャップによらず一定となる場合、即ち、ギャップが広がっても受光素子アレイ９において受光量が減衰しない場合である。しかし、本発明の適用は、これに限定するものではない。例えば、光源１からの出射光が発散光である場合、ギャップが広がるに連れて、受光素子アレイ９において受光量が減衰する場合であっても、本発明は適用可能である。
【００７１】
また、候補値及び参照値を、式（８）を用いて求める場合について説明したが、図１０の関係を示す所定のテーブルを、予め記憶装置５２に記憶させておいてもよい。この場合、演算回路６０は、信号振幅ａｍｐ１に対応する候補値及び信号振幅ａｍｐ２に対応する参照値を、記憶装置５２に記憶されている所定のテーブルを用いて求めればよい。
【００７２】
また、光源波長を６５０［ｎｍ］とし、トラック１１のピッチＰ１が６４［μｍ］、トラック１２のピッチＰ２が１２８［μｍ］の場合を例示して説明したが、これら数値に限定するものではない。それぞれのピッチＰ１，Ｐ２は、ギャップ変動に対する信号振幅変動が確認できる程度の、略０ではないギャップ測定感度を持つ細かいピッチであればよく、互いに異なるピッチであればよい。
【００７３】
［第２実施形態］
次に、第２実施形態のエンコーダについて説明する。第１実施形態では、エンコーダが光学式のインクリメンタル型である場合について説明したが、第２実施形態では、エンコーダが光学式のアブソリュート型である場合について説明する。第２実施形態におけるエンコーダの構成は、第１実施形態で説明したエンコーダと同様であり、詳細な説明を省略する。
【００７４】
上記第１実施形態では、エンコーダがインクリメンタル型であるため、位置情報の相対値を測定する場合について説明したが、第２実施形態では、アブソリュート型であるため、位置情報の絶対値を、例えばバーニア演算を用いて測定する場合について説明する。バーニア演算は、少なくとも２つのピッチＰ１，Ｐ２から、各ピッチＰ１，Ｐ２の位相差を演算することによって、元の各周期と異なる周期信号を得る方式である。
【００７５】
以下、スケール部２の位置情報を測定する方法について説明する。トラック１１のピッチＰ１を６４．２４９［μｍ］、トラック１２のピッチＰ２を１２８［μｍ］と、２つのトラック１１，１２のピッチ比が整数倍からわずかにずれている場合を例に説明する。
【００７６】
受光素子アレイ９の測定分解能を１２８［μｍ］とした場合に、トラック１２から得られる信号は、受光素子アレイ９の測定分解能１２８［μｍ］とトラック１２のパターン周期１２８［μｍ］が同じである。このため、第１実施形態と同様の方法で、Ａ相信号Ｓ２（Ａ）及びＢ相信号Ｓ２（Ｂ）から、位相Φ２を求める。
【００７７】
受光素子アレイ９の測定分解能を６４［μｍ］とした場合、トラック１１から得られる信号は、受光素子アレイ９の測定分解能６４［μｍ］に対して、トラック１２のパターン周期が６４．２４９［μｍ］とわずかにずれている。このため、２相の正弦波状の信号Ｓ１（Ａ）’，Ｓ１（Ｂ）’間の相対位相差補正処理を行うことが望ましい。以下に、位相差補正の方法について説明する。
【００７８】
相対位相差誤差ｅを含む２相正弦波信号Ｓ１（Ａ）’，Ｓ１（Ｂ）’は、位相をθとして、式（９）及び式（１０）で表される。
Ｓ１（Ａ）’＝ｃｏｓ（θ＋ｅ／２）  ・・・（９）
Ｓ１（Ｂ）’＝ｓｉｎ（θ−ｅ／２）  ・・・（１０）
【００７９】
式（９）及び式（１０）より、２相正弦波信号Ｓ１（Ａ）’、Ｓ１（Ｂ）’の和と差を取ると、式（１１）及び式（１２）に示すように、誤差ｅを分離することができる。
Ｓ１（Ａ）’＋Ｓ１（Ｂ）’＝２×ｃｏｓ（θ−π／４）ｓｉｎ（ｅ／２−π／４）・・・（１１）
−Ｓ１（Ａ）’＋Ｓ１（Ｂ）’＝２×ｓｉｎ（θ−π／４）ｃｏｓ（ｅ／２−π／４）・・・（１２）
相対位相差誤差ｅは、設計値よりｅ＝（１−６４／６４．２４９）×πと表わせる。
【００８０】
式（１１）及び式（１２）の振幅成分２×ｓｉｎ（ｅ／２−π／４）及び２×ｃｏｓ（ｅ／２−π／４）について、それぞれ逆数を乗じることにより、式（１３）及び式（１４）に示す、位相差誤差を補正した２相正弦波信号Ｓ１（Ａ）、Ｓ１（Ｂ）を算出する。ただしφ＝θ−π／４である。
Ｓ１（Ａ）＝（Ｓ１（Ａ）’＋Ｓ１（Ｂ）’）／（２×ｓｉｎ（ｅ／２−π／４））＝ｃｏｓφ・・・（１３）
Ｓ１（Ｂ）＝（−Ｓ１（Ａ）’＋Ｓ１（Ｂ）’）／（２×ｃｏｓ（ｅ／２−π／４））＝ｓｉｎφ・・・（１４）
【００８１】
なお、相対位相差誤差ｅについては、初期化動作によって記憶装置５２に記憶させても構わない。例えば、Ｘ方向の所定範囲のＳ１（Ａ）’＋Ｓ１（Ｂ）’における（最大値−最小値）／２から、振幅成分２×ｓｉｎ（ｅ／２−π／４）を取得する。また、−Ｓ１（Ａ）’＋Ｓ１（Ｂ）’における（最大値−最小値）／２から、振幅成分２×ｃｏｓ（ｅ／２−π／４）を取得し、記憶装置５２に記憶させてもよい。この場合、光源１と受光素子アレイ９の実装高さずれや、光源１とスケール部２との相対傾きによる像倍率の誤差があった場合においても、これらの誤差の影響を含めて補正することが可能である。なお、各アンプのオフセット、ゲインばらつき等に起因するＳ１（Ａ）、Ｓ１（Ｂ）に含まれるオフセット誤差、ゲイン比を補正しておくのが望ましい。
【００８２】
以上のようにして得られたＡ相信号Ｓ１（Ａ）及びＢ相信号Ｓ１（Ｂ）と、Ａ相信号Ｓ２（Ａ）及びＢ相信号Ｓ２（Ｂ）との両方に基づき、スケール部２、即ちスケール部２が固定された可動部の絶対位置を測定する以下の演算を行う。
【００８３】
まず、スイッチ回路４１への入力信号がハイレベルで受光素子アレイ９の測定分解能が６４［μｍ］のときのＡ相信号Ｓ１（Ａ）及びＢ相信号Ｓ１（Ｂ）より、以下の式（１５）及び式（１６）を用いて位相Φ１及び振幅ａｍｐ１を求める。
Φ１＝ＡＴＡＮ２［Ｓ１（Ａ），Ｓ１（Ｂ）］  ・・・（１５）
ａｍｐ１＝ＳＱＲＴ［Ｓ１（Ａ）＾２＋Ｓ１（Ｂ）＾２］  ・・・（１６）
ここで、ＡＴＡＮ２［Ｙ，Ｘ］は、象限を判別して±π位相に変換する逆正接演算関数、ＳＱＲＴ［Ｘ］は、平方根を演算する関数である。
【００８４】
同様に、スイッチ回路４１への入力信号がローレベルで受光素子アレイ９の測定分解能が１２８［μｍ］のときのＡ相信号Ｓ２（Ａ）及びＢ相信号Ｓ２（Ｂ）より、以下の式（１７）及び式（１８）を用いて位相Φ２及び振幅ａｍｐ２を求める。
Φ２＝ＡＴＡＮ２［Ｓ２（Ａ），Ｓ２（Ｂ）］  ・・・（１７）
ａｍｐ２＝ＳＱＲＴ［Ｓ２（Ａ）＾２＋Ｓ２（Ｂ）＾２］  ・・・（１８）
【００８５】
またさらに、バーニア信号Ｓｖを下記の式（１９）によって取得する。
Ｓｖ＝２×Φ２−Φ１  ・・・（１９）
ここで、Ｓｖ＜０のときはＳｖ＝Ｓｖ＋２π、Ｓｖ＞２πのときはＳｖ＝Ｓｖ−２πの演算を繰り返し行って、０〜２πの出力範囲に変換する。
【００８６】
図１１（ａ）は、バーニア信号Ｓｖとスケール位置との関係を示すグラフである。バーニア信号Ｓｖは、１６．５１２［ｍｍ］の周期をもった周期信号となり、スケール全長１６．５１２［ｍｍ］として、１周期分の周期信号となる。
【００８７】
図１１（ｂ）は、信号の位相Φ２とスケール位置との関係を示すグラフである。位相Φ２は、１２８［μｍ］の周期をもった周期信号であり、スケール全長１６．５１２［ｍｍ］中に１２９周期分の周期信号となる。
【００８８】
以上、式（１９）から得られるバーニア信号Ｓｖと、式（１７）から得られる位相Φ２との同期を取ることにより、位置情報の絶対値を求めることができる。即ち、信号処理回路５１は、Ａ相信号Ｓ１（Ａ）及びＢ相信号Ｓ１（Ｂ）と、Ａ相信号Ｓ２（Ａ）及びＢ相信号Ｓ２（Ｂ）との両方を用いて、スケール部２の位置情報を求める。なお、式（１９）から得られるバーニア信号Ｓｖと、式（１５）から得られる位相Φ１の同期を取ることにより、位置情報の絶対値を求めるようにしてもよい。
【００８９】
第２実施形態におけるギャップの測定方法は、第１実施形態におけるギャップの測定方法と同様である。第２実施形態においては、Ｐ１＝６４．２４９［μｍ］、Ｐ２＝１２８［μｍ］として、ピッチＰ１のトラック１１とピッチＰ２のトラック１２をヘッド７を用いて読み取ることにより、それぞれの信号振幅ａｍｐ１，ａｍｐ２を求めることができる。そして、第１実施形態と同様に比較することにより、ギャップＧの測定値Ｇ０を算出することができる。
【００９０】
このように、位置情報の絶対値を測定するアブソリュート型の光学式エンコーダにおいても、高精度にギャップＧを測定することが可能であり、かつギャップＧの測定範囲を広げることが可能である。また、第２実施形態によれば、位置情報の絶対値を測定するための複数のトラック１１，１２を用いてギャップ測定が可能であり、ギャップ測定専用のスケールを設ける必要がない。
【００９１】
なお、位置情報の絶対値を、バーニア演算を用いて取得する場合について説明したが、複数のトラックから得られる情報を用いて位置情報の絶対値を取得する構成であれば、これに限定するものではない。
【００９２】
また、光源波長を６５０［ｎｍ］とし、トラック１１のピッチＰ１が６４．２４９［μｍ］、トラック１２のピッチＰ２が１２８［μｍ］の場合を例示して説明したが、これら数値に限定するものではない。それぞれのピッチＰ１，Ｐ２は、ギャップ変動に対する信号振幅変動が確認できる程度の、略０ではないギャップ測定感度を持つ細かいピッチであればよく、互いに異なるピッチであればよい。
【００９３】
以上、第１及び第２実施形態ではリニアエンコーダの場合について説明したが、本発明は、ロータリエンコーダについても適用可能である。ロータリエンコーダの場合、ヘッド７に対してスケール部２が相対的に回転移動する。スケール部２の各トラック１１，１２のピッチＰ１，Ｐ２は、スケール部２の回転中心に対する角度ということになる。
【００９４】
［第３実施形態］
第３実施形態では、上述の第１又は第２実施形態の光学式のエンコーダを、ロボットアームに搭載した場合について説明する。図１２は、第３実施形態に係るロボット１００の斜視図である。図１２に示すように、ロボット１００は、垂直多関節のロボットであり、マニピュレータであるロボット本体２００と、ロボット本体２００の動作を制御する、制御部の一例であるロボット制御装置３００と、を備えている。また、ロボット１００は、ロボット制御装置３００に教示データを送信する教示装置としての教示ペンダント４００と、表示装置であるディスプレイ７００とを備えている。教示ペンダント４００は、操作者が操作するものであり、ロボット本体２００やロボット制御装置３００の動作を指定するのに用いる。
【００９５】
ロボット本体２００は、ロボットアーム２５１と、ロボットアーム２５１の先端に取り付けられたエンドエフェクタの一例であるロボットハンド２５２と、を備えている。ロボットアーム２５１の基端は、台座１５０に固定されている。ロボットハンド２５２は、部品やツール等の物体（ワーク）を把持するものである。
【００９６】
ロボットアーム２５１は、複数の関節、例えば６つの関節Ｊ１〜Ｊ６を有している。ロボットアーム２５１は、各関節Ｊ１〜Ｊ６を各関節軸Ａ１〜Ａ６まわりにそれぞれ回転駆動する駆動部の一例である電動モータ２２０１〜２２０６を有している。
【００９７】
ロボットアーム２５１は、各関節Ｊ１〜Ｊ６で回転可能に連結された複数のリンク２１００〜２１０６を有する。第３実施形態では、基端側から先端側に向かって、リンク２１００〜２１０６が順に直列に連結されている。ロボットアーム２５１は、可動範囲の中であれば、任意の３次元位置で任意の３方向の姿勢に、ロボットアーム２５１の先端を向けることができる。なお、ロボットアーム２５１の関節が回転関節である場合について説明するが、関節が直動関節であってもよい。「関節の位置」とは、関節が回転関節の場合は関節の回転位置（即ち角度）を示し、関節が直動関節の場合は関節の並進位置を示す。
【００９８】
また、ロボットアーム２５１は、各関節Ｊ１〜Ｊ６のそれぞれ配置された、光学式のロータリエンコーダであるエンコーダ５０１〜５０６を有している。各エンコーダ５０１〜５０６は、上述の第１又は第２実施形態で説明した光学式のエンコーダを、ロータリエンコーダに適用したものであり、各関節Ｊ１〜Ｊ６の位置情報、即ち角度情報を示す信号を出力する。
【００９９】
ロボット制御装置３００には、各電動モータ２２０１〜２２０６を動作させる駆動制御部であるサーボ制御装置３５０が接続されている。サーボ制御装置３５０は、各関節Ｊ１〜Ｊ６に対応する位置指令、即ち角度指令に基づき、各関節Ｊ１〜Ｊ６の角度が角度指令に追従するよう、各電動モータ２２０１〜２２０６に電流を出力し、各電動モータ２２０１〜２２０６をフィードバック制御する。なお、第３実施形態では、サーボ制御装置３５０は、ロボット制御装置３００の内部に配置されているが、これに限定するものではなく、例えばロボットアーム２５１の内部に配置されていてもよい。
【０１００】
図１３（ａ）は、ロボットアーム２５１の関節Ｊ２の断面図である。図１３（ｂ）は、ロボットアーム２５１の関節Ｊ２の側面図である。以下、ロボットアーム２５１の関節Ｊ２の構成について説明するが、関節Ｊ１，Ｊ３〜Ｊ６も関節Ｊ２と同様の構成であり、他の関節Ｊ１，Ｊ３〜Ｊ６の構成については説明を省略する。
【０１０１】
第１リンクの一例であるリンク２１０１と、第２リンクの一例であるリンク２１０２とが、関節Ｊ２で連結されており、リンク２１０２が関節Ｊ２でリンク２１０１に対して回転軸線Ａ２まわりに相対的に回転移動する。
【０１０２】
駆動部の一例である電動モータ２２０２は、リンク２１０１に対してリンク２１０２を回転駆動するよう、関節Ｊ２に配置されている。また、関節Ｊ２には、リンク２１０１に対するリンク２１０２の位置（回転角度）を測定するエンコーダ５０２が配置されている。エンコーダ５０２のヘッド７は、リンク２１０１及びリンク２１０２のうち、一方、例えばリンク２１０１に設けられている。エンコーダ５０２のスケール部２は、リンク２１０１及びリンク２１０２のうち、他方、例えばリンク２１０２に設けられている。
【０１０３】
図１４は、第３実施形態に係るロボット１００の制御系を示すブロック図である。ロボット制御装置３００は、コンピュータで構成されている。ロボット制御装置３００は、ＣＰＵ（Central  Processing  Unit）３０１を備えている。また、ロボット制御装置３００は、記憶部の一例として、ＲＯＭ（Read  Only  Memory）３０２、ＲＡＭ（Random  Access  Memory）３０３、及びＨＤＤ（Hard  Disk  Drive）３０４を備えている。また、ロボット制御装置３００は、記録ディスクドライブ３０５、及び入出力インタフェースであるＩ／Ｏ３１１〜３１３を備えている。
【０１０４】
ＣＰＵ３０１、ＲＯＭ３０２、ＲＡＭ３０３、ＨＤＤ３０４、記録ディスクドライブ３０５、及びＩ／Ｏ３１１〜３１３は、互いに通信可能にバス３１０で接続されている。Ｉ／Ｏ３１１には、サーボ制御装置３５０が接続され、Ｉ／Ｏ３１２には、教示ペンダント４００が接続され、Ｉ／Ｏ３１３には、ディスプレイ７００が接続されている。
【０１０５】
サーボ制御装置３５０には、各関節Ｊ１〜Ｊ６の電動モータ２２０及びエンコーダ５０が接続されている。なお、図３には、１つの関節分の電動モータ２２０及びエンコーダ５０を図示しているが、６つの関節分の電動モータ２２０及びエンコーダ５０がサーボ制御装置３５０に接続されている。
【０１０６】
ＣＰＵ３０１は、ロボット本体２００の各関節Ｊ１〜Ｊ６を駆動する電動モータ２２０の動作を、サーボ制御装置３５０を介して制御することで、ロボット本体２００の動作を制御する。また、ＣＰＵ３０１は、作業者の操作によって教示ペンダント４００から送信される指示を受け付ける。また、ＣＰＵ３０１は、ディスプレイ７００を制御して、ディスプレイ７００に画像を表示させる。
【０１０７】
ＨＤＤ３０４には、制御プログラム３２１及びタスクプログラム３２２が記憶される。記録ディスクドライブ３０５は、記録ディスク３３０に記録された各種データやプログラム等を読み出すことができる。
【０１０８】
制御プログラム３２１は、ＣＰＵ３０１に、タスクプログラム３２２の解釈、ロボットアーム２５１の軌道データの生成、各種演算や各種制御を行わせるプログラムである。制御プログラム３２１は、ユーザによる変更が容易にはできないようになっている。タスクプログラム３２２は、例えばロボット言語で記述されたテキストファイルであり、ユーザ又はコンピュータにより変更が可能となっている。ＣＰＵ３０１は、タスクプログラム３２２を読み込み、教示点を結ぶ軌道データを所定の補間方法（例えば、直線補間や円弧補間等）により生成してＨＤＤ３０４に記憶させる。直線補間の場合は、ロボットアーム２５１の先端を直線移動させる軌道データが生成されることになる。ＣＰＵ３０１は、軌道データの各点データを、ロボットの逆運動学計算により、各関節Ｊ１〜Ｊ６の回転角度に変換し、サーボ制御装置３５０に位置指令である角度指令Ｐ＊を出力する。
【０１０９】
エンコーダ５０の信号処理回路５１は、関節の位置情報、即ち角度情報Ｐを示す信号をサーボ制御装置３５０に出力する。サーボ制御装置３５０は、エンコーダ５０から得られる角度情報Ｐが角度指令Ｐ＊となるように電動モータ２２０に供給する電流を制御する。以上のフィードバック制御により、ロボット制御装置３００は、軌道データに従ってロボットアーム２５１を動作させることになる。
【０１１０】
ところで、エンコーダ５０において、信号振幅が小さすぎたり、信号波形に高調波が重畳したりしないように、即ち高精度に位置情報を測定できるように、スケール部２とヘッド７とのギャップには、適切な範囲がある。このため、エンコーダ５０をロボットアーム２５１の関節Ｊ１〜Ｊ６に組み込む際には、適切な範囲のギャップとなるようロボットアーム２５１を調整する必要がある。
【０１１１】
そこで、第３実施形態では、サーボ制御装置３５０は、関節Ｊ１〜Ｊ６に配置されたエンコーダ５０（信号処理回路５１）から、ギャップの測定値Ｇ０を示す信号受信し、その測定値Ｇ０を示す信号をロボット制御装置３００に送信する。なお、エンコーダ５０の信号処理回路５１が直接測定値Ｇを示す信号をロボット制御装置３００に送信してもよい。
【０１１２】
ロボット制御装置３００は、ディスプレイ７００にギャップの測定値Ｇ０を示す画像を表示させる。これにより、ロボット本体２００の組み立て作業者は、ギャップが位置測定に適した範囲にあるかどうかを判断することができ、また、ギャップの調整作業も容易となる。これにより、ロボット本体２００の組み立てに係るコストを大幅に削減することができる。
【０１１３】
なお、以上の説明では、１つの関節に対して１つのヘッド７を配置する場合ついて説明したが、１つの関節に対して２つのヘッド７をスケール部２の回転軸に対して略１８０度となる位置に対向配置してもよい。この場合、関節のゆがみによるスケール部２の傾き量を測定することも可能である。
【０１１４】
このように製造されたロボット本体２００は、生産ラインに配置され、ロボット本体２００による物品の製造作業、例えば第１ワークを第２ワークに組み付ける組み付け作業を行わせる。このとき、ロボットアーム２５１に行わせる組み付け動作は、ロボットアーム２５１の先端、即ち第１ワークを把持したロボットハンド２５２が、第２ワークに向かって直線移動させる動作である。
【０１１５】
ロボットアーム２５１を動作させると、その動作条件により、ロボットアーム２５１のリンクが撓むことにより関節が振動することがある。関節が振動していると、ロボットアーム２５１の先端も振動する。ロボットアーム２５１の先端が振動していると、例えば組み付け動作において、精密な組み付けを行うことができず、組み付けが失敗することがある。
【０１１６】
そこで、ロボット制御装置３００は、各関節の電動モータ２２０に、ロボットアーム２５１に組み付け動作を行わせる所定動作を開始させる前に、ロボットアーム２５１の動作、即ち各関節の電動モータ２２０の駆動を一旦停止させる。ロボットアーム２５１の動作を一旦停止させるのは、ロボットアーム２５１の振動を収束させるためである。
【０１１７】
図１５は、関節Ｊ２の振動の示すグラフである。第３実施形態では、ロボット制御装置３００は、ギャップの測定値Ｇ０に基づき、リンク２１０１に対して振動するリンク２１０２の目標値Ｗ０に対する振動振幅値（ピーク値）Ｗ１，Ｗ２，Ｗ３，…をリアルタイムに求める。ロボット制御装置３００は、振動振幅値Ｗ１，Ｗ２，Ｗ３，…が許容範囲Ｒに収まったかどうかを判断する。図１５の例では、タイミングｔ１で振動振幅値Ｗ６が許容範囲Ｒに収まっている。図１５には、関節Ｊ２のみの振動を示しているが、タイミングｔ１で、全ての関節の振動が、許容範囲Ｒに収束したとする。なお、ロボットアーム２５１の作業内容や要求精度に応じて、各関節に対応して個別に許容範囲Ｒが設定されている。ロボット制御装置３００は、ロボットアーム２５１の関節の振動が収束したので、タイミングｔ１以降のできるだけ早いタイミングで、各関節の電動モータ２２０に、所定動作を開始させる。
【０１１８】
このように、ロボットアーム２５１の振動が収束してから組み付け動作を開始するので、ロボットアーム２５１、即ちロボット本体２００に高精度な組み付け作業を行わせることができる。
【０１１９】
また、ロボット制御装置３００が振動振幅値Ｗ１，Ｗ２，Ｗ３，…をモニタして振動の収束を判断するので、予め決められた十分な時間が経過するのを待ってから作業を行う場合と比較して、待機時間を短縮することができ、作業効率を向上させることができる。
【０１２０】
なお、本発明は、以上説明した実施形態に限定されるものではなく、本発明の技術的思想内で多くの変形が可能である。また、実施形態に記載された効果は、本発明から生じる最も好適な効果を列挙したに過ぎず、本発明による効果は、実施形態に記載されたものに限定されない。
【０１２１】
［変形例］
図１６は、変形例における受光素子アレイ９の平面図である。受光素子アレイ９は、クロックタイミングＣＬＫに同期して、光電変換する複数の受光素子９１それぞれの受光量に対応した出力信号（Ｓｉｇｎａｌ）を順番に取り出すことができる、いわゆるリニアイメージセンサであってもよい。信号処理回路５１は、複数の受光素子９１から出力信号を順番に取り出して、一括で処理することが可能であり、上述の第１実施形態で説明した図３又は図４に示すスイッチ回路４１で切り替えて、それぞれに対応した周期信号を時間差で取得する必要がない。信号処理回路５１は、複数の受光素子９１から一括して受信した信号を処理して、Ａ相信号Ｓ１（Ａ）及びＢ相信号Ｓ１（Ｂ）、並びにＡ相信号Ｓ２（Ａ）及びＢ相信号Ｓ２（Ｂ）を生成する。受光素子アレイ９によって検出されたリニアイメージ信号よりトラック１１，１２の各周期信号成分を分離する方法としては、ＦＦＴ処理を行っても良いし、各周期に対応した４相正弦波に変換しても良い。
【０１２２】
また、上述の第１〜第３実施形態において、エンコーダが反射型の場合について説明したが、これに限定するものではなく、透過型であってもよい。透過型の場合、受光部と受光部との間にスケール部が相対移動可能に配置されることになる。この場合、各トラックにおけるパターンは、光透過部分（スリット）と遮光部分とで構成される。
【０１２３】
また、上述の第３実施形態では、エンコーダを、ロボットアームに適用する場合を例に説明したが、ロボット以外にも様々な装置に適用することができる。例えば、水平方向（パン）と垂直方向（チルト）に回転駆動機構を持った監視カメラのレンズ鏡筒へエンコーダを組み込む場合のギャップ調整や、回転駆動時の回転軸のゆがみ状態を検出するために適用することができる。
【０１２４】
また、上述の第３実施形態では、垂直多関節のロボットについて説明したが、これに限定するものではない。ロボットが、例えば、水平多関節のロボット、パラレルリンクのロボット、直交ロボット等、種々のロボットに、エンコーダを適用することができる。
【０１２５】
また、上述の第１〜第３実施形態では、スケール部２がピッチの異なる２つのトラック１１，１２を有する場合について説明したが、ピッチの異なる３つ以上のトラックを有する場合であってもよい。この場合、これら複数のトラックのうち、２つのトラックからの周期信号を用いることで、ギャップを測定することが可能である。
【０１２６】
また、上述の第１〜第３実施形態では、２つのトラック１１，１２をＹ方向に交互に並設してスケール部２を構成し、１つの受光素子アレイ９を用いて各トラック１１，１２に対応する周期信号を得る場合について説明したがこれに限定するものではない。トラック１１とトラック１２とを別々に配置してスケール部２を構成し、受光素子アレイ９を、各トラック１１，１２に対応して、個別に（２つ）設け、それぞれのトラック１１，１２の周期信号を得るようにしてもよい。
【符号の説明】
【０１２７】
１…光源（発光部）、２…スケール部、３…センサユニット、９…受光素子アレイ（受光部）、１１…トラック（第１トラック）、１２…トラック（第２トラック）、２１…パターン（第１パターン）、２２…パターン（第２パターン）、５１…信号処理回路（処理部）、１００…ロボット、３００…ロボット制御装置（制御部）、３５０…サーボ制御装置（駆動制御部）
【図１】
2019105481.tif 000003
【図２】
2019105481.tif 000004
【図３】
2019105481.tif 000005
【図４】
2019105481.tif 000006
【図５】
2019105481.tif 000007
【図６】
2019105481.tif 000008
【図７】
2019105481.tif 000009
【図８】
2019105481.tif 000010
【図９】
2019105481.tif 000011
【図１０】
2019105481.tif 000012
【図１１】
2019105481.tif 000013
【図１２】
2019105481.tif 000014
【図１３】
2019105481.tif 000015
【図１４】
2019105481.tif 000016
【図１５】
2019105481.tif 000017
【図１６】
2019105481.tif 000018
【図１７】
2019105481.tif 000019