JP2020126041A - 位置検出方法、制御方法、物品の製造方法、位置検出装置、ロボット装置、光学機器、プログラム及び記録媒体 - Google Patents
位置検出方法、制御方法、物品の製造方法、位置検出装置、ロボット装置、光学機器、プログラム及び記録媒体 Download PDFInfo
- Publication number
- JP2020126041A JP2020126041A JP2019221663A JP2019221663A JP2020126041A JP 2020126041 A JP2020126041 A JP 2020126041A JP 2019221663 A JP2019221663 A JP 2019221663A JP 2019221663 A JP2019221663 A JP 2019221663A JP 2020126041 A JP2020126041 A JP 2020126041A
- Authority
- JP
- Japan
- Prior art keywords
- phase value
- signal
- scale
- cycle
- cycle number
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Transmission And Conversion Of Sensor Element Output (AREA)
- Optical Transform (AREA)
- Manipulator (AREA)
Abstract
【課題】位置を検出するのに要する時間を短縮する。【解決手段】処理部が、スケールの同じ位置における位相値Φ1、Φ2及びΦ3を取得する。処理部が、サイクル数N2の周期の中から、位相値Φ1に対応する1つの周期を選択する。処理部が、サイクル数N3の周期の中から、サイクル数N2の周期のうち選択した周期と位相値Φ2とに対応する1つの周期を選択する。処理部が位相値Φ2を換算して位相値Φ4を算出する。処理部が、位相値Φ3と位相値Φ4との差分が所定範囲内の場合、スケールの絶対位置情報を求める。【選択図】図7
Description
本発明は、対象物の位置を検出する技術に関する。
一般に、測定対象物の並進位置や回転位置を検出する装置として、エンコーダが知られている。エンコーダは、光学式、磁気式、静電容量式などのものがある。光学式エンコーダを例に説明すると、エンコーダは、光源と、光源から発する光を反射又は透過し、光源に対して相対的に変位可能なスケールと、スケールで反射又は透過した光を受光する受光素子と、を有する。スケールには、光を反射又は透過するパターンが形成されている。スケールの相対的な変位によって、受光素子で受光する光の光量が変化する。受光素子は、光量の変化に応じた検出信号を出力する。検出信号の入力を受けた処理装置が、検出信号に基づいてスケールの位置を求める。
光学式エンコーダの検出方式には、インクリメンタル方式とアブソリュート方式とがある。インクリメンタル方式は、構成が単純である反面、電源が切れた時に位置情報が失われるため、スケールを一旦ホームポジションに移動させる必要がある。これに対し、アブソリュート方式は、電源が切れた時でも、スケールをホームポジションへ移動させる必要がない。
ところで、スケール上にゴミが付着する、スケールに傷が付く、又は外来ノイズにより、位置情報の精度が低下するおそれがある。特許文献1では、スケールと検出センサとを相対的に移動させて、2つの絶対位置情報と、2つの相対位置情報とを取得し、2つの絶対位置情報の差分と、2つの相対位置情報の差分とが一致するかどうかで、絶対位置情報に異常があるかどうかを判定している。
しかしながら、特許文献1では、位置情報を検出するためにスケールと検出センサとを相対的に複数回、移動させる必要があるため、時間がかかっていた。そのため位置情報に基づいて制御対象物を制御する装置においては、制御に時間がかかっていた。
そこで、本発明は、位置を検出するのに要する時間を短縮することを目的とする。
本発明の一態様は、スケールの位置検出方法であって、処理部が、前記スケールの同じ位置における、前記スケールの所定変位あたり第1サイクル数で繰り返し変化する第1信号の第1位相値、前記スケールの前記所定変位あたり前記第1サイクル数よりも多い第2サイクル数で繰り返し変化する第2信号の第2位相値、及び前記スケールの前記所定変位あたり前記第2サイクル数よりも多い第3サイクル数で繰り返し変化する第3信号の第3位相値を取得し、前記処理部が、前記第2サイクル数の周期の中から、前記第1位相値に対応する1つの周期を選択し、前記処理部が、前記第3サイクル数の周期の中から、前記第2サイクル数の周期のうち選択した周期と、前記第2位相値と、に対応する1つの周期を選択し、前記処理部が、前記選択した周期の第2位相値に対応する前記第3信号の第4位相値を取得し、前記処理部が、前記第3位相値と前記第4位相値とを使用して、前記スケールの位置を求めることを特徴とする位置検出方法である。
本発明によれば、位置を検出するのに要する時間を短縮することができる。
[第1実施形態]
図1(a)は、第1実施形態に係る位置検出装置の一例であるエンコーダ装置の模式図である。図1(a)に示すエンコーダ装置500は、エンコーダ50と、処理部の一例である信号処理回路51と、記憶部の一例である記憶装置52とを有する。エンコーダ50は、光学式の光干渉型エンコーダである。また、エンコーダ50は、反射型のエンコーダである。また、エンコーダ50は、アブソリュート方式のエンコーダである。また、エンコーダ50は、リニアエンコーダである。
図1(a)は、第1実施形態に係る位置検出装置の一例であるエンコーダ装置の模式図である。図1(a)に示すエンコーダ装置500は、エンコーダ50と、処理部の一例である信号処理回路51と、記憶部の一例である記憶装置52とを有する。エンコーダ50は、光学式の光干渉型エンコーダである。また、エンコーダ50は、反射型のエンコーダである。また、エンコーダ50は、アブソリュート方式のエンコーダである。また、エンコーダ50は、リニアエンコーダである。
エンコーダ50は、固定部及び可動部のうち一方、例えば可動部に取り付けられるスケール2と、固定部及び可動部のうち他方、例えば固定部に取り付けられ、スケール2に対向して配置された、検出部の一例であるセンサユニット7と、を有する。図1(b)は、センサユニット7の平面図である。スケール2は、センサユニット7に対して相対的に並進移動する。
センサユニット7に対して相対的に並進移動するスケール2の移動方向をX方向、X方向に直交する方向であって、センサユニット7とスケール2とが対向する方向をZ方向、X方向及びZ方向に直交する幅方向をY方向とする。
センサユニット7は、スケール2の位置に応じた信号を信号処理回路51に出力する。信号処理回路51は、センサユニット7から出力された信号の内挿演算、記憶装置52への信号データの書き込み及び読み出し、並びにスケール2の絶対位置情報を示す信号の出力等を行う。
センサユニット7は、発光ユニットの一例である、LEDからなる光源1と、受光ユニット3とを有する。受光ユニット3は、受光素子アレイ9を有する。光源1及び受光ユニット3は、プリント配線板4に実装され、光が透過する透明の樹脂5で封止されている。樹脂5の表面には、光が透過する透明のガラス6が配置されている。この構成により、光源1及び受光ユニット3が樹脂5及びガラス6で保護されている。
信号処理回路51及び記憶装置52は、それぞれ例えばICチップからなる半導体素子で構成され、プリント配線板4の表面に実装されている。なお、信号処理回路51及び記憶装置52の配置位置は、これに限定するものではなく、プリント配線板4上とは別の場所に配置されていてもよい。図1(a)では、信号処理回路51及び記憶装置52は、説明の便宜上、プリント配線板4上とは別の場所に図示されている。
スケール2は、基板15とスケールトラック8とを有する。基板15は、相対的に光の反射率が低く、光を吸収又は透過する部材、例えばガラスなどで形成されている。スケールトラック8は、基板15の主面(XY面)上に形成された、相対的に光の反射率が高い部材、例えばクロム反射膜で構成されている。以下、スケールトラック8において、相対的に光の反射率が低い部分を「非反射部」、相対的に光の反射率が高い部分を「反射部」という。
光源1から出射した光束は、スケール2の一部分に照射される。スケール2に照射された光束は、受光素子アレイ9に向けて反射され、受光素子アレイ9上でスケール2の反射率分布が2倍に拡大された像となり、受光素子アレイ9によって受光される。受光素子アレイ9によって受光された光束は、光電変換され、電気信号として信号処理回路51に送信される。信号処理回路51は、受信したエンコーダ信号に基づき、絶対位置情報(並進位置)を求め、絶対位置情報を出力する。
図2(a)は、スケール2の一部分の平面図である。スケールトラック8は、基板15の主面上に、Y方向に並設された複数の単位ブロックパターン10で構成されている。図2(b)は、単位ブロックパターン10の平面図である。単位ブロックパターン10は、互いに異なる周期で形成された複数のパターン列11,12を有する。複数のパターン列11,12は、Y方向に並設されている。
図2(a)及び図2(b)中、網掛けの部分が反射部、白抜きの部分が非反射部である。パターン列11は、図2(a)及び図2(b)中、反射部がX方向にピッチ(変調周期)P1で周期的に配置されて構成されている。パターン列12は、図2(a)及び図2(b)中、反射部がX方向にピッチP1とは異なるピッチ(変調周期)P2で周期的に配置されて構成されている。ピッチP1は、ピッチP2よりも狭い。
単位ブロックパターン10のY方向の幅Y0は、例えば50μmである。各パターン列11,12のY方向の幅は、例えば25μmである。ピッチP1は、例えば129.074μmである。ピッチP2は、例えば580.833μmである。総ストローク、即ち各パターン列11,12のX方向の全長は、2323.332μmである。
図3及び図4は、第1実施形態に係る受光素子アレイ9の平面図である。なお、図3及び図4には、説明の便宜上、図1の信号処理回路51の一部の構成も図示している。受光素子アレイ9は、X方向に並設された複数(例えば32個)の受光素子901を有する。複数の受光素子901は、例えば32μmのピッチでX方向に並設されている。各受光素子901は、X方向の長さX_pdが例えば32μmであり、Y方向の幅Y_pdが例えば800μmである。受光素子アレイ9のX方向の全長X_totalは、例えば1024μmである。
図1(a)に示すように、光源1及び受光素子アレイ9は、光源1のZ方向の出射面の高さと、受光素子アレイ9の受光面のZ方向の高さとが同じレベルとなるように配置されている。この配置関係により、スケール2上のパターンは、受光素子アレイ9において2倍の拡大投影像となる。したがって、受光素子アレイ9全体にスケール2からの反射光が入射するように、スケール2へ照射する光の照射範囲を、Y方向400μm、X方向512μmとしている。受光素子アレイ9には、スケールトラック8のうち、パターン列11からの反射光による干渉縞と、パターン列12からの反射光による干渉縞とが共に照射されることになる。
図1に示す信号処理回路51は、測定する位置情報の分解能を切り替える、図3及び図4に示すスイッチ回路41を有する。スイッチ回路41は、複数の半導体スイッチング素子で構成されている。図3には、スケールトラック8のパターン列11からの反射光に基づいて位置を高分解能に測定する場合のスイッチ回路41の切り替え状態を図示している。図4には、スケールトラック8のパターン列12からの反射光に基づいて位置を低分解能に測定する場合のスイッチ回路41の切り替え状態を図示している。
スイッチ回路41を図3に示すように切り替えることにより、パターン列11に対応する周期信号を強め合い、パターン列12に対応する周期信号を相殺し合う。これにより、パターン列11に対応する周期信号のみ取得することができる。また、スイッチ回路41を図4に示すように切り替えることにより、パターン列12に対応する周期信号を強め合い、パターン列11に対応する周期信号を相殺し合う。これにより、パターン列12に対応する周期信号のみ取得することができる。
図5は、第1実施形態に係る信号処理回路51の回路図である。なお、図5において、スイッチ回路41の図示は省略し、信号処理回路51に接続される受光素子アレイ9の受光素子901も、便宜的に4つとして図示している。スイッチ回路41が図3及び図4のいずれの状態であっても、図5に示す回路図で示される。
受光素子アレイ9の後段、即ちスイッチ回路41の後段には、初段増幅器である4つのIV変換アンプ34,35,36,37が設けられている。IV変換アンプ34,35,36,37の後段には、A相用差動アンプ39及びB相用差動アンプ40が設けられている。A相用差動アンプ39及びB相用差動アンプ40の後段には、例えばマイクロコンピュータで構成された演算回路60が設けられている。
演算回路60は、CPU(Central Processing Unit)61、ROM(Read Only Memory)62、RAM(Random Access Memory)63、及び入出力インタフェースであるI/O64を備えている。ROM62には、CPU61に後述する位置検出方法の各処理を実行させるプログラム65が格納されている。
なお、第1実施形態では、コンピュータ読み取り可能な記録媒体がROM62であり、ROM62にプログラム65が格納される場合について説明するが、これに限定するものではない。プログラム65は、コンピュータ読み取り可能な記録媒体であれば、いかなる記録媒体に記録されていてもよい。例えば、プログラム65を供給するための記録媒体としては、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、磁気テープ、不揮発性メモリ等を用いることができる。光ディスクは、例えばDVD−ROM、CD−ROM、CD−Rである。不揮発性メモリは、例えばUSBメモリ、メモリカード、ROMである。
スイッチ回路41は、演算回路60からの入力信号によって、受光素子アレイ9からの信号の読み出し方を切り替えることができる。
入力信号がハイレベルの場合、図3に示すように、複数の受光素子901は、隣り合う2つの受光素子901の組に分けられる。2つの受光素子901からなる各組が、IV変換アンプ34,35,36,37のうち対応するものに電気的に接続される。よって、128μmの測定分解能となる。入力信号がローレベルの場合、図4に示すように、複数の受光素子901は、隣り合う8つの受光素子901の組に分けられる。8つの受光素子901からなる各組が、IV変換アンプ34,35,36,37のうち対応するものに電気的に接続される。よって、512μmの測定分解能となる。
スイッチ回路41への入力信号がハイレベルのときは、スケールトラック8のパターン列11からの周期信号のみ取得することができる。スイッチ回路41への入力信号がローレベルのときは、スケールトラック8のパターン列12からの周期信号のみ取得することができる。このような構成とすることで、受光素子アレイ9を、パターン列11とパターン列12のそれぞれに対応して個別に設ける必要がないため、部品点数を削減でき、小型のエンコーダ50を実現することができる。
受光素子アレイ9の各受光素子901から読み出された電流信号は、IV変換アンプ34,35,36,37において4相の正弦波電圧信号S(A+),S(B+),S(A−),S(B−)に変換される。4つの相を、(A+)相,(B+)相,(A−)相,(B−)相とし、(A+)相を基準とする。(A+)相に対して、(B+)相は約+90度、(A−)相は約+180度、(B−)相は約+270度の関係にある。
2相の正弦波電圧信号S(A+),S(A−)は、A相用差動アンプ39において、式(1)に基づく減算が施される。2相の正弦波電圧信号S(B+),S(B−)は、B相用差動アンプ40において、式(2)に基づく減算が施される。
S(A)=S(A+)−S(A−) ・・・(1)
S(B)=S(B+)−S(B−) ・・・(2)
S(A)=S(A+)−S(A−) ・・・(1)
S(B)=S(B+)−S(B−) ・・・(2)
これにより、直流分が除去された、A相信号S(A)、及びA相信号S(A)に対して90度位相のずれたB相信号S(B)が生成される。
ここで、受光素子アレイ9の検出ピッチに対し、ピッチP1及びP2がわずかにずれている。このため、スケールトラック8から2相正弦波信号として実際に得られる信号は、S(A)’及びS(B)’となる。本実施形態では、信号S(A)’及びS(B)’間の相対的な位相差を補正する処理を行う。以下、位相差を補正する方法について説明する。以下、ピッチP1を検出する場合を例に説明する。
相対的な位相差の誤差e1を含む2相正弦波信号S(A)’及びS(B)’は、位相をθとして、式(3)及び式(4)で表される。
S(A)’=cos(θ+e1/2) ・・・(3)
S(B)’=sin(θ−e1/2) ・・・(4)
S(A)’=cos(θ+e1/2) ・・・(3)
S(B)’=sin(θ−e1/2) ・・・(4)
式(3)及び式(4)より、2相正弦波信号S(A)’及びS(B)’の和と差を取ると、式(5)及び式(6)に示すように、誤差e1を分離することができる。
S(A)’+S(B)’=2×cos(θ−π/4)sin(e1/2−π/4) ・・・(5)
−S(A)’+S(B)’=2×sin(θ−π/4)cos(e1/2−π/4) ・・・(6)
S(A)’+S(B)’=2×cos(θ−π/4)sin(e1/2−π/4) ・・・(5)
−S(A)’+S(B)’=2×sin(θ−π/4)cos(e1/2−π/4) ・・・(6)
誤差e1は、設計値により、e1=(1−128/129.074)×πと表せる。式(5)及び式(6)の振幅成分である2×sin(e1/2−π/4)及び2×cos(e1/2−π/4)について、それぞれ逆数を乗じることにより、式(7)及び式(8)に示す誤差e1を補正した2相正弦波信号S(A)及びS(B)を算出する。ただし、φ=θ−π/4である。
S(A)=(S(A)’+S(B)’)/(2×sin(e1/2−π/4))=cosφ ・・・(7)
S(B)=(−S(A)’+S(B)’)/(2×cos(e1/2−π/4))=sinφ ・・・(8)
S(A)=(S(A)’+S(B)’)/(2×sin(e1/2−π/4))=cosφ ・・・(7)
S(B)=(−S(A)’+S(B)’)/(2×cos(e1/2−π/4))=sinφ ・・・(8)
なお、誤差e1については、初期化動作によって、図1に示す記憶装置52に記憶させてもよい。例えば、まず、X方向の所定範囲のS(A)’+S(B)’における(最大値−最小値)/2から、振幅成分2×sin(e1/2−π/4)を取得する。また、−S(A)’+S(B)’における(最大値−最小値)/2から、振幅成分2×cos(e1/2−π/4)を取得する。そして、これらの振幅成分から誤差e1を求め、記憶装置52に記憶するようにしてもよい。この場合、光源1と受光素子アレイ9の実装高さずれや、スケール2とセンサユニット7の相対傾きによる像倍率の誤差の影響を含めて補正することが可能である。ピッチP2の場合も同様な処理を行い、信号S(A)およびS(B)を取得する。以上のようにして得られた信号S(A),S(B)を用いて、絶対位置を検出する、以下の演算を行う。
まず、スイッチ回路41への入力がハイレベルで128μmの周期信号のみを分離して取得した信号S(A)及びS(B)より、以下の式(9)に基づいて、位相情報である位相値Φ3を求める。
Φ3=ATAN2[S(A),S(B)] ・・・(9)
Φ3=ATAN2[S(A),S(B)] ・・・(9)
ATAN2[Y,X]は、象限を判別して0〜2π位相に変換する逆正接演算関数である。
同様に、スイッチ回路41への入力がローレベルで512μmの周期信号のみを分離して取得した信号S(A)及びS(B)より、以下の式(10)に基づいて、位相情報である位相値Φ2を求める。
Φ2=ATAN2[S(A),S(B)] ・・・(10)
Φ2=ATAN2[S(A),S(B)] ・・・(10)
さらに、これら2つの位相値Φ2及びΦ3から位相差を演算することによって、元の各周期とは異なる周期信号を得る、バーニア演算を行う。即ち、位相値Φ2及び位相値Φ3に基づき、下記の式(11)のバーニア演算により、位相情報である位相値Φ1を求める。
Φ1=Φ3−4×Φ2 ・・・(11)
Φ1=Φ3−4×Φ2 ・・・(11)
Φ1<0のときはΦ1=Φ1+2πの演算を行って、0〜2πの出力範囲に変換する。バーニア信号の周期は、図2(b)に示すパターン列11のピッチP1とパターン列12のピッチP2との最小公倍数となる。よって、ピッチP1及びピッチP2は、所望のバーニア周期となるように決定されている。
各位相値Φ1、Φ2、及びΦ3は、0〜2π[rad]の値である。信号処理回路51は、これら3つの位相値Φ1、Φ2、及びΦ3を用いて、スケール2の位置を求める。
図6は、第1実施形態に係る位置検出方法のフローチャートである。信号処理回路51は、位相値Φ1、Φ2、及びΦ3を上述の演算処理によって取得する(S101)。位相値Φ1、Φ2、及びΦ3は、それぞれスケール2のある1つの同じ位置における位相値である。
図7は、第1実施形態に係る位置検出方法を説明するための図である。図7において、各位相値Φ1、Φ2、及びΦ3と、スケール2の位置との関係を図示している。第1位相値である位相値Φ1は、スケール2の所定変位の一例である総ストローク(2323.332μm)に対して、1周期で変化する、第1信号である上位信号S1の位相値である。上位信号S1は、バーニア信号である。第2位相値である位相値Φ2は、スケール2の総ストロークに対して、4周期で繰り返し変化する周期信号である、第2信号である中位信号S2の位相値である。第3位相値である位相値Φ3は、スケール2の総ストロークに対して、18周期で繰り返し変化する周期信号である、第3信号である下位信号S3の位相値である。
即ち、上位信号S1は、スケール2の総ストロークあたり、第1サイクル数であるサイクル数N1で変化する。中位信号S2は、スケール2の総ストロークあたり、サイクル数N1よりも多い第2サイクル数であるサイクル数N2で変化する。下位信号S3は、スケール2の総ストロークあたり、サイクル数N2よりも多い第3サイクル数であるサイクル数N3で変化する。本実施形態では、サイクル数N1は1、サイクル数N2は4、サイクル数N3は18であり、スケール2のパターン列11のピッチP1及びパターン列12のピッチP2によって決まる。
総ストロークの絶対位置情報に対する、上位信号S1、中位信号S2、及び下位信号S3の位相の関係は、それぞれ、エンコーダ50の組み立て時などに予め測定され、記憶装置52に記憶されている。
上位信号S1のみでもスケール2の位置は求まるが、これにより求まる位置の精度は低い。よって、本実施形態では、上位信号S1よりも分解能の高い中位信号S2、及び中位信号S2よりも分解能の高い下位信号S3に基づいてスケール2の位置を求める。
中位信号S2において、上記の式(10)により求まるのは位相値Φ2だけであり、サイクル数N2の周期のうち、どの周期かまでは求まっていない。よって、信号処理回路51は、中位信号S2におけるサイクル数N2の周期の中から、位相値Φ1に対応する1つの周期を選択する(S102)。例えば、信号処理回路51は、位相値Φ1からスケール2の位置の暫定値を求め、中位信号S2において、この暫定値が含まれる周期を選択する。図7の例では、中位信号S2において、2番目の周期を選択する。
下位信号S3において、上記の式(9)により求まるのは位相値Φ3だけであり、サイクル数N3の周期のうち、どの周期かまでは求まっていない。よって、信号処理回路51は、下位信号S3におけるサイクル数N3の周期の中から、サイクル数N2の周期のうち、ステップS102で選択した周期(2番目の周期)と、位相値Φ2と、に対応する1つの周期を選択する(S103)。例えば、信号処理回路51は、選択した周期、及び位相値Φ2から、スケール2の位置の暫定値を求め、下位信号S3において、この暫定値が含まれる周期を選択する。図7の例では、下位信号S3において、7番目の周期を選択する。
ところで、エンコーダのスケールにゴミやグリスなどの異物が付着したり、スケールに傷がついたり、エンコーダから得られる信号に外来ノイズが重畳したりすると、式(11)によって求めた位相値Φ1に誤差が重畳する。これにより、上位信号と中位信号との間で誤った同期を行ってしまうことがある。同期が誤ると、精度の低い検出位置が出力されることになる。
そこで、信号処理回路51は、同期精度の判定を行う。具体的に説明すると、まず、信号処理回路51は、位相値Φ2を、サイクル数N2の周期のうち選択した周期に応じて、下位信号S3に相当する位相値に換算することで、第4位相値である位相値Φ4を算出する(S104)。信号処理回路51は、記憶装置52に記憶された位相の関係に基づいて、位相値Φ2を位相値Φ4に換算する。
信号処理回路51は、位相値Φ3と位相値Φ4との差分ΔΦを求め、差分ΔΦが所定範囲R内であるかどうかを判定する(S105)。ΔΦは、同期精度である。ΔΦは、Φ4−Φ3、又はΦ3−Φ4である。所定範囲Rは、予め記憶装置52に記憶された値であり、例えば0±π/4[rad]である。
差分ΔΦが所定範囲R内である場合(S105:YES)、信号処理回路51は、サイクル数N3の周期のうち選択した周期(7番目の周期)と、位相値Φ3とに基づいて、スケール2の位置(絶対位置情報)を求める(S106)。下位信号S3の位相値Φ3(0〜2π)と、スケール2の絶対位置情報との関係は、予め記憶装置52に記憶されているため、記憶装置52を参照することで、スケール2の位置を求めることができる。信号処理回路51は、求めた絶対位置情報を外部機器に出力する(S107)。
以上、図7に示すように、式(11)から得られる位相値Φ1と、式(10)から得られる位相値Φ2、及び式(9)から得られる位相値Φ3とを同期させることにより、スケール2の絶対位置情報を得ることができる。そして、ステップS105の同期判定を行うことで、精度の高い、スケール2の絶対位置情報を得ることができる。
図8は、第1実施形態に係る位置検出方法を説明するための図である。図8には、各位相値Φ1、Φ2、及びΦ3と、スケール2の位置との関係を図示している。図8の例では、上位信号S1と中位信号S2との間において、正しい同期(点線)の場合と、1つ隣り(1点鎖線や2点鎖線)であるような、誤った同期を行う場合を示している。スケール2に異物や傷があると、上位信号S1と中位信号S2との間において、誤った同期を行うことがある。
例えば、位相値Φ1が異物などによって高い値にシフトした場合、ステップS102の処理である上位信号S1と中位信号S2との間の同期処理において、信号処理回路51が、例えば1つ隣りの周期、即ち二点鎖線で示す3番目の周期を選択することがある。逆に位相値Φ1が低い値にシフトした場合、ステップS102の処理である上位信号S1と中位信号S2との間の同期処理において、信号処理回路51が、例えば1つ隣りの周期、即ち一点鎖線で示す1番目の周期を選択することがある。このように同期に誤りがある場合には、下位信号S3の位相値Φ4(1.7π)が、位相値Φ3(0.7π)に対して所定範囲Rを超えてずれることになる。実際には、スケール2のパターン誤差、高調波などによる内挿誤差や、ノイズが重畳するなどにより、下位信号S3の位相値Φ3に僅かな誤差が生じるため、所定範囲Rは、誤差を考慮した値に設定される。本実施形態では、信号処理回路51は、差分ΔΦが所定範囲Rを超える場合(S105:NO)、エラー信号を出力する(S108)。
以上、第1実施形態においては、上位信号S1と中位信号S2との間の同期誤り有無を判定することができる。即ち、位相値Φ4が位相値Φ3からずれている場合には、エラー信号によりそれを確認することができる。このことから、上位信号S1と中位信号S2との間の同期が誤っていると判定される。このように、下位信号S3の位相値Φ3を評価することにより、上位信号S1と中位信号S2との間の同期の誤り有無を判定することができる。
第1実施形態によれば、信号処理回路51における同期判定(図6のステップS105)を、位置検出時に得られた位相値Φ1、Φ2及びΦ3に基づいて行うので、同期判定をしながらも、位置検出に要する時間を短縮することができる。よって、検出された位置情報に基づいて制御対象物を制御する装置においても、制御にかかる時間を短縮することができる。
なお、下位信号S3の位相値Φ3をもとに、中位信号S2と下位信号S3との間の同期精度を評価して、上位信号S1と中位信号S2との間の同期の誤り有無を判定してもよい。同期誤りがあると判定された場合には、エラー信号が発せられるので、これを受信した不図示の制御装置は、エンコーダ装置500に関連するその後の動作を停止することも可能である。
また、スケール2の総ストロークに対して、上位信号S1のサイクル数N1が1、中位信号S2のサイクル数N2が4、下位信号S3のサイクル数N3が18である場合について説明したが、これら数値は一例にすぎず、これら数値に限定するものではない。下位信号S3のサイクル数N3を中位信号S2のサイクル数N2で除算した値(N3/N2)は、整数ではない値、即ち小数であればよく、上述の例では、18/4=4.50であるため、小数である。
上位信号S1が1周期分であり、かつ、下位信号S3と中位信号S2とのサイクル数の比(N3/N2)の値が小数であれば、信号処理回路51が差分ΔΦが所定範囲Rを超える場合にエラー信号を発することで、誤検出が生じたことを確認することができる。
第1実施形態では、上位信号、中位信号、及び下位信号からなる3つの周期信号の関係について説明したが、これに限定するものではない。スケールの所定変位に対して、互いにサイクル数の異なる3つ以上の周期信号を取得する場合において適用可能である。即ち、3つ以上の周期信号のうち、上位、中位、及び下位で連続する3つの周期信号について、第1実施形態で説明した処理を行えばよい。例えば、総ストロークあたり1サイクル数の周期信号に対して、4サイクル数の周期信号、18サイクル数の周期信号、及び99サイクル数の周期信号を取得する場合であってもよい。この場合、99サイクル数の周期信号の位相値を評価することにより、4サイクル数の周期信号と18サイクル数の周期信号との間の同期の誤り有無を判定することが可能である。このように、絶対位置情報を取得するアブソリュートエンコーダにおいて、3つの周期信号の内、下位の周期信号の位相値を評価することで、中位の周期信号と上位の周期信号との間の同期誤り有無を確認することが可能である。
[第2実施形態]
第1実施形態では、ピッチP1のパターン列11と、ピッチP2のパターン列12とがY方向に交互に並んでいる場合について説明した。そして、各パターン列11及び12からの反射光を、1つの受光素子アレイ9で受光してスイッチ回路41で切り替えることにより、分解能を切り換える場合について説明した。しかし、これに限定するものではない。
第1実施形態では、ピッチP1のパターン列11と、ピッチP2のパターン列12とがY方向に交互に並んでいる場合について説明した。そして、各パターン列11及び12からの反射光を、1つの受光素子アレイ9で受光してスイッチ回路41で切り替えることにより、分解能を切り換える場合について説明した。しかし、これに限定するものではない。
図9(a)は、第2実施形態に係る位置検出装置の一例であるエンコーダ装置の模式図である。なお、以下の説明において、第1実施形態で説明した構成と同様の構成については、同一符号を付し、詳細な説明は省略する。
図9(a)に示すエンコーダ装置500Aは、エンコーダ50Aと、処理部の一例である信号処理回路51と、記憶部の一例である記憶装置52とを有する。エンコーダ50Aは、光学式の光干渉型エンコーダである。また、エンコーダ50Aは、反射型のエンコーダである。また、エンコーダ50Aは、アブソリュート方式のエンコーダである。また、エンコーダ50Aは、リニアエンコーダである。
エンコーダ50Aは、スケール2Aと、スケール2Aに対向して配置された、検出部の一例であるセンサユニット7Aと、を有する。図9(b)は、センサユニット7Aの平面図である。スケール2Aは、センサユニット7Aに対して相対的に並進移動する。
センサユニット7Aは、スケール2Aの位置に応じた信号を信号処理回路51に出力する。信号処理回路51は、センサユニット7Aから出力された信号の内挿演算、記憶装置52への信号データの書き込み及び読み出し、並びにスケール2Aの絶対位置情報を示す信号の出力等を行う。
センサユニット7Aは、発光ユニットの一例である、LEDからなる光源1Aと、2つの受光ユニット31A,32Aとを有する。受光ユニット31Aは、受光素子アレイ91Aを有する。受光ユニット32Aは、受光素子アレイ92Aを有する。光源1A及び受光ユニット31A,32Aは、プリント配線板4Aに実装され、光が透過する透明の樹脂5Aで封止されている。樹脂5Aの表面には、光が透過する透明のガラス6Aが配置されている。この構成により、光源1A及び受光ユニット31A,32Aが樹脂5A及びガラス6Aで保護されている。
スケール2Aは、例えばガラスなどで形成された基板15Aと、基板15Aの主面(XY面)上に形成された、相対的に光の反射率が高い部材、例えばクロム反射膜とで構成された、パターン列11A,12Aを有する。
光源1Aから出射した光束は、スケール2Aの一部分に照射される。スケール2Aのパターン列11Aに照射された光束は、受光素子アレイ91Aに向けて反射され、受光素子アレイ91Aによって受光される。受光素子アレイ91Aによって受光された光束は、光電変換され、電気信号として信号処理回路51に送信される。スケール2Aのパターン列12Aに照射された光束は、受光素子アレイ92Aに向けて反射され、受光素子アレイ92Aによって受光される。受光素子アレイ92Aによって受光された光束は、光電変換され、電気信号として信号処理回路51に送信される。信号処理回路51は、受信したエンコーダ信号に基づき、絶対位置情報(並進位置)を求め、絶対位置情報を出力する。
図10(a)は、第2実施形態に係るスケール2Aの平面図である。スケール2Aは、基板15Aの主面上に、Y方向に並設されたパターン列11A及び12Aを有する。図10(b)は、図10(a)において破線で囲った領域の拡大図である。図10(a)及び図10(b)中、網掛けの部分が反射部、白抜きの部分が非反射部である。パターン列11Aは、図10(b)に示すように、反射部がX方向にピッチ(変調周期)P1で周期的に配置されて構成されている。パターン列12Aは、反射部がX方向にピッチP1とは異なるピッチ(変調周期)P2で周期的に配置されて構成されている。ピッチP1は、ピッチP2よりも狭い。受光素子アレイ91Aは、パターン列11Aに対応する検出ピッチとなっており、受光素子アレイ92Aは、パターン列12Aに対応する検出ピッチとなっている。これにより、図9(a)及び図9(b)に示す各受光素子アレイ91A,92Aは、別々に分解能の異なる検出信号を出力する。
ピッチP1およびP2の値は、第1実施形態で説明した値と同じである。このため、式(1)〜式(11)で得られる値も同じである。第2実施形態では、このようにして得られた値に基づき、第1実施形態と同様、下位信号の位相値を評価することにより、上位信号と中位信号との間の同期の誤り有無を判定することが可能である。
[第3実施形態]
第3実施形態における位置検出方法について説明する。第3実施形態のエンコーダにおいて、センサユニットの構成は、第1実施形態のエンコーダと同様であるため説明を省略する。第3実施形態では、スケールの構成が、第1実施形態のスケールと異なる。即ち、第3実施形態のエンコーダ装置において、スケール以外の構成は、第1実施形態と同様であり、図1(a)及び図1(b)に示す通りである。また、第3実施形態において、スケールの位置検出方法が第1実施形態と異なる。
第3実施形態における位置検出方法について説明する。第3実施形態のエンコーダにおいて、センサユニットの構成は、第1実施形態のエンコーダと同様であるため説明を省略する。第3実施形態では、スケールの構成が、第1実施形態のスケールと異なる。即ち、第3実施形態のエンコーダ装置において、スケール以外の構成は、第1実施形態と同様であり、図1(a)及び図1(b)に示す通りである。また、第3実施形態において、スケールの位置検出方法が第1実施形態と異なる。
図11(a)は、第3実施形態に係るスケール2Bの一部分の平面図である。第3実施形態のスケール2Bは、ガラス等で形成された基板15Bと、基板15B上に形成されたスケールトラック8Bとを有する。スケールトラック8Bは、基板15Bの主面上に、Y方向に並設された複数の単位ブロックパターン10Bで構成されている。図11(b)は、単位ブロックパターン10Bの平面図である。単位ブロックパターン10Bは、互いに異なる周期で形成された複数のパターン列11B,12Bを有する。複数のパターン列11B,12Bは、Y方向に並設されている。
図11(a)及び図11(b)中、網掛けの部分が反射部、白抜きの部分が非反射部である。パターン列11Bは、図11(a)及び図11(b)中、反射部がX方向にピッチ(変調周期)P11で周期的に配置されて構成されている。パターン列12Bは、図11(a)及び図11(b)中、反射部がX方向にピッチP11とは異なるピッチ(変調周期)P12で周期的に配置されて構成されている。ピッチP11は、ピッチP12よりも狭い。
単位ブロックパターン10BのY方向の幅Y0は、例えば50μmである。各パターン列11B,12BのY方向の幅は、例えば25μmである。ピッチP11は、例えば129.074μmである。ピッチP12は、例えば548.5645μmである。総ストローク、即ち各パターン列11B,12BのX方向の全長は、2194.258μmである。
第1実施形態と同様、センサユニットが、スケール2Bを読み取ることにより、信号処理回路51が、信号S(A)、S(B)を取得し、スケール2Bの絶対位置を検出する以下の演算を行う。
まず、スイッチ回路41(図3)への入力がハイレベルで128μmの周期信号のみを分離して取得した信号S(A)及びS(B)より、以下の式(12)に基づいて、位相情報である位相値Φ13を求める。
Φ13=ATAN2[S(A),S(B)] ・・・(12)
Φ13=ATAN2[S(A),S(B)] ・・・(12)
ATAN2[Y,X]は、象限を判別して0〜2π位相に変換する逆正接演算関数である。
同様に、スイッチ回路41(図4)への入力がローレベルで512μmの周期信号のみを分離して取得した信号S(A)及びS(B)より、以下の式(13)に基づいて、位相情報である位相値Φ12を求める。
Φ12=ATAN2[S(A),S(B)] ・・・(13)
Φ12=ATAN2[S(A),S(B)] ・・・(13)
さらに、これら2つの位相値Φ12及びΦ13から位相差を演算することによって、元の各周期とは異なる周期信号を得る、バーニア演算を行う。即ち、位相値Φ12及び位相値Φ13に基づき、下記の式(14)のバーニア演算により、位相情報である位相値Φ11を求める。
Φ11=Φ13−4×Φ12 ・・・(14)
Φ11=Φ13−4×Φ12 ・・・(14)
Φ11<0のときはΦ11=Φ11+2πの演算を行って、0〜2πの出力範囲に変換する。バーニア信号の周期は、図11(b)に示すパターン列11BのピッチP11とパターン列12BのピッチP12との最小公倍数となる。よって、ピッチP11及びピッチP12は、所望のバーニア周期となるように決定されている。
各位相値Φ11、Φ12、及びΦ13は、0〜2π[rad]の値である。信号処理回路51は、これら3つの位相値Φ11、Φ12、及びΦ13を用いて、スケール2Bの位置を求める。
図12は、第3実施形態に係る位置検出方法のフローチャートである。信号処理回路51(図1(a))は、位相値Φ11、Φ12、及びΦ13を上述の演算処理によって取得する(S201)。位相値Φ11、Φ12、及びΦ13は、それぞれスケール2Bのある1つの同じ位置における位相値である。
図13は、第3実施形態に係る位置検出方法を説明するための図である。図13には、各位相値Φ11、Φ12、及びΦ13と、スケール2Bの位置との関係を図示している。第1位相値である位相値Φ11は、スケール2Bの所定変位の一例である総ストローク(2194.256μm)に対して、1周期で変化する、第1信号である上位信号S11の位相値である。上位信号S11は、バーニア信号である。第2位相値である位相値Φ12は、スケール2Bの総ストロークに対して、4周期で繰り返し変化する周期信号である、第2信号である中位信号S12の位相値である。第3位相値である位相値Φ13は、総ストロークに対して、17周期で繰り返し変化する周期信号である、第3信号である下位信号S13の位相値である。
即ち、上位信号S11は、スケール2Bの総ストロークあたり、第1サイクル数であるサイクル数N1で変化する。中位信号S12は、スケール2Bの総ストロークあたり、サイクル数N1よりも多い第2サイクル数であるサイクル数N2で変化する。下位信号S13は、スケール2Bの総ストロークあたり、サイクル数N2よりも多い第3サイクル数であるサイクル数N3で変化する。本実施形態では、サイクル数N1は1、サイクル数N2は4、サイクル数N3は17であり、スケール2Bのパターン列11BのピッチP11及びパターン列12BのピッチP12によって決まる。
総ストロークの絶対位置情報に対する、上位信号S11、中位信号S12、及び下位信号S13の位相の関係は、それぞれ、エンコーダの組み立て時などに予め測定され、記憶装置52(図1(a))に記憶されている。
上位信号S11のみでもスケール2Bの位置は求まるが、これにより求まる位置の精度は低い。よって、本実施形態では、上位信号S11よりも分解能の高い中位信号S12、及び中位信号S12よりも分解能の高い下位信号S13に基づいてスケール2Bの位置を求める。
中位信号S12において、上記の式(13)により求まるのは位相値Φ12だけであり、サイクル数N2の周期のうち、どの周期かまでは求まっていない。よって、信号処理回路51(図1(a))は、中位信号S12におけるサイクル数N2の周期の中から、位相値Φ11に対応する1つの周期を選択する(S202)。例えば、信号処理回路51は、位相値Φ11からスケール2Bの位置の暫定値を求め、中位信号S12において、この暫定値が含まれる周期を選択する。図13の例では、中位信号S12において、2番目の周期を選択する。
下位信号S13において、上記の式(12)により求まるのは位相値Φ13だけであり、サイクル数N3の周期のうち、どの周期かまでは求まっていない。よって、信号処理回路51は、下位信号S13におけるサイクル数N3の周期の中から、サイクル数N2の周期のうち、ステップS202で選択した周期(2番目の周期)と、位相値Φ12と、に対応する1つの周期を選択する(S203)。例えば、信号処理回路51は、選択した周期、及び位相値Φ12から、スケール2Bの位置の暫定値を求め、下位信号S13において、この暫定値が含まれる周期を選択する。図13の例では、下位信号S13において、7番目の周期を選択する。
ところで、エンコーダのスケールにゴミやグリスなどの異物が付着したり、スケールに傷がついたり、エンコーダから得られる信号に外来ノイズが重畳したりすると、式(14)によって求めた位相値Φ11に誤差が重畳する。これにより、上位信号と中位信号との間で誤った同期を行ってしまうことがある。同期が誤ると、精度の低い検出位置が出力されることになる。
そこで、信号処理回路51は、同期精度の判定を行う。具体的に説明すると、まず、信号処理回路51は、位相値Φ12を、サイクル数N2の周期のうち選択した周期に応じて、下位信号S13に相当する位相値に換算することで、第4位相値である位相値Φ14を算出する(S204)。信号処理回路51は、記憶装置52に記憶された位相の関係に基づいて、位相値Φ12を位相値Φ14に換算する。
信号処理回路51は、位相値Φ13と位相値Φ14との差分ΔΦを求め、差分ΔΦが所定範囲R内であるかどうかを判定する(S205)。ΔΦは、同期精度である。ΔΦは、Φ14−Φ13、又はΦ13−Φ14である。所定範囲Rは、予め記憶装置52に記憶された値であり、例えば0±π/4[rad]である。
差分ΔΦが所定範囲R以下である場合(S205:YES)、信号処理回路51は、サイクル数N3の周期のうち選択した周期(7番目の周期)と、位相値Φ13とに基づいて、スケール2Bの位置(絶対位置情報)を求める(S206)。下位信号S13の位相値Φ13(0〜2π)と、スケール2Bの絶対位置情報との関係は、予め記憶装置52に記憶されているため、記憶装置52を参照することで、スケール2の位置を求めることができる。信号処理回路51は、求めた絶対位置情報を外部機器に出力する(S207)。
以上、図13に示すように、式(14)から得られる位相値Φ11と、式(13)から得られる位相値Φ12、及び式(12)から得られる位相値Φ13とを同期させることにより、スケール2Bの絶対位置情報を得ることができる。そして、ステップS205の同期判定を行うことで、精度の高い、スケール2Bの絶対位置情報を得ることができる。
図14は、第3実施形態に係る位置検出方法を説明するための図である。図14には、各位相値Φ11、Φ12、及びΦ13と、スケール2Bの位置との関係を図示している。図14の例では、上位信号S11と中位信号S12との間において、正しい同期(点線)の場合と、1つ隣り(1点鎖線や2点鎖線)、又は2つ隣り(破線)であるような、誤った同期を行う場合を示している。スケール2Bに異物や傷があると、上位信号S11と中位信号S12との間において、誤った同期を行うことがある。
例えば、位相値Φ11が異物などによってシフトした場合、ステップS202の処理である上位信号S11と中位信号S12との間の同期処理において、信号処理回路51が、1番目の周期、3番目の周期、又は4番目の周期を選択することがある。このように同期に誤りがある場合には、求めた位相値Φ14(0.4π、1.4π、又は1.9π)が、位相値Φ13(0.9π)に対して所定範囲Rを超えてずれることになる。実際には、スケール2Bのパターン誤差、高調波などによる内挿誤差や、ノイズが重畳するなどにより、下位信号S13の位相値Φ13に僅かな誤差が生じるため、所定範囲Rは、誤差を考慮した値に設定される。本実施形態では、信号処理回路51は、差分ΔΦが所定範囲Rを超える場合(S205:NO)、下位信号S13に対するサイクル数N3の周期を選択し直して(S208)、スケール2Bの位置(絶対位置情報)を求める(S206)。そして、信号処理回路51は、求めた絶対位置情報を外部機器に出力する(S207)。
ステップS208の処理について説明する。信号処理回路51は、差分ΔΦが所定範囲Rを超える場合は、差分ΔΦ、即ち位相値Φ13と位相値Φ14との関係に基づき、サイクル数N3の周期の中から、サイクル数N3の周期のうち選択した周期とは別の1つの周期を選択する。
ステップS208の処理について具体的に説明すると、まず、信号処理回路51は、差分ΔΦが所定範囲Rを超える場合は、差分ΔΦに基づき、サイクル数N2周期の中から、サイクル数N2の周期のうち選択した周期とは別の1つの周期を選択する。例えば、信号処理回路51は、ステップS205にて求めた差分ΔΦの正負の符号、及びその大きさに基づき、差分ΔΦが最も小さくなる周期を選択する。具体例を挙げて説明すると、まず、サイクル数N2の周期の内、既に3番目の周期が選択されていたものとする。信号処理回路51は、中位信号S12において、残りの1番目の周期、2番目の周期、及び4番目の周期の中から、差分ΔΦが最も小さくなる周期、即ち2番目の周期を選択する。信号処理回路51は、下位信号S13に対するサイクル数N3の周期の中から、サイクル数N2の周期のうち選択した別の周期(2番目の周期)における位相値Φ12に対応する別の1つの周期(図14中、7番目の周期)を選択する。
信号処理回路51は、サイクル数N3の周期のうち選択した別の周期(7番目の周期)と、位相値Φ13とに基づいて、スケール2Bの位置を求める(S206)。
以上、第3実施形態においては、上位信号S11と中位信号S12との間の同期誤り有無を判定することができる。下位信号S13の位相値Φ14が位相値Φ13からずれている場合、上位信号S11と中位信号S12との間の同期が誤っていると判定される。上位信号S11と中位信号S12と間の同期の正誤判定によって、求まる位相値Φ14は、全て異なる値(0.4π、0.9π、1.4π、又は1.9π)となる。このため、この値を評価することにより、上位信号S11と中位信号S12との間の同期関係について、正しい同期関係を算出することが可能である。そして、同期誤りがある場合には、正しい同期関係に補正して、スケール2Bの正確な絶対位置情報を算出することが可能となる。
第3実施形態によれば、信号処理回路51における同期判定(図12のステップS205)を、位置検出時に得られた位相値Φ11、Φ12及びΦ13に基づいて行うので、同期判定をしながらも、位置検出に要する時間を短縮することができる。よって、検出された位置情報に基づいて制御対象物を制御する装置においては、制御にかかる時間を短縮することができる。
なお、下位信号S13の位相値Φ13をもとに、中位信号S12と下位信号S13との間の同期精度を評価して、上位信号S11と中位信号S12と間の同期関係を確認してもよい。また、スケール2Bの総ストロークに対して、上位信号S11のサイクル数N1が1、中位信号S12のサイクル数N2が4、下位信号S13のサイクル数N3が17である場合について説明したが、これら数値に限定するものではない。
下位信号S13のサイクル数N3を中位信号S12のサイクル数N2で除算した値(N3/N2)が小数であるのが好ましい。また、サイクル数N3をサイクル数N2で除算した値(N3/N2)における小数部の値と、サイクル数N2をサイクル数N1で除算した値(N2/N1)とを乗算した値を、NNとする。値NNが、サイクル数N2をサイクル数N1で除算した値(N2/N1)において1を除く約数の倍数以外で、かつサイクル数N2をサイクル数N1で除算した値未満の自然数であるのか好ましい。
上述の例では、N3/N2は、17/4=4.25となり、小数である。この小数における小数部の値は、0.25である。N2/N1は4である。NNは、0.25×4=1である。値(N2/N1)において1を除く約数の倍数以外の数字は、1及び3である。N2/N1未満の自然数は、1、2、及び3である。つまり、サイクル数N2をサイクル数N1で除算した値(N2/N1)において1を除く約数の倍数以外で、かつサイクル数N2をサイクル数N1で除算した値未満の自然数は、1及び3である。よって、NNは、1及び3のいずれかであればよく、上述の例では、1である。この場合、図13及び図14に示すように、位相値Φ14は、サイクル数N2が4であるので、4つの値を取り得るが、4つそれぞれ異なる値となる。つまり、同じ値とならないので、ステップS205における同期判定の精度が向上し、これにより、スケール2Bの位置の検出精度が向上する。
以上の数値関係により、位相値Φ12を、下位信号S13に対応する位相値に換算した値が、中位信号S12の周期番目に応じて全て異なる値となる。このため、上位信号S11と中位信号S12との間の同期関係を正確に補正することができ、その結果、スケール2Bの位置を正確に求めることができる。
図15は、第3実施形態における実験結果を示すグラフである。図15には、同期関係を補正せずに位置情報を実測した例を図示している。図15中、横軸は、スケール2Bの位置、縦軸は、位相情報の誤差量である。図15に示すように、上位信号と中位信号との間の同期誤り有無に関わらず、スケール2Bのパターン誤差、高調波などによる内挿誤差、及び重畳したノイズにより、下位信号の位相値に、僅かな誤差(ばらつき)がある。図15で示すように、上位信号と中位信号との間に同期誤りがない場合は、下位信号の位相値Φ14の誤差量は、0[rad]付近の値となる。図15には、0[rad]付近に分布する値を白丸で図示している。同期誤りがある場合は、0[rad]に対して、所定量を超えるオフセットを有することになる。図15の例では、位相値Φ14の誤差量は、−π/2[rad]付近、+π/2[rad]付近、+π[rad]付近、もしくは−π[rad]付近の値となる。図15において、+π[rad]付近、及び−π[rad]付近に分布する値を黒丸で図示している。+π/2[rad]付近に分布する値と、−π/2[rad]付近に分布する値を、それぞれ異なるハッチングの丸で図示している。
上位信号と中位信号との間に同期誤りがある場合は、上位信号と中位信号との間の同期関係を、演算により変化させて下位信号の位相値の誤差量が所定範囲R内となる値を探索することにより、正しい同期関係を算出することが可能である。所定範囲Rは、例えば、0±π/4[rad]の範囲である。
なお、第3実施形態では、上位信号、中位信号、及び下位信号からなる3つの周期信号の関係について説明したが、これに限定するものではない。スケールの所定変位に対して、互いにサイクル数の異なる3つ以上の周期信号を取得する場合において適用可能である。即ち、3つ以上の周期信号のうち、上位、中位、及び下位で連続する3つの周期信号について、第3実施形態で説明した処理を行えばよい。この場合、下位の周期信号の位相値を評価することにより、上位の周期信号と中位の周期信号との間の同期の誤り有無を判定することが可能である。このように、絶対位置情報を取得するアブソリュートエンコーダにおいて、3つの周期信号の内、下位の周期信号の位相値を評価することで、中位の周期信号と上位の周期信号との間の同期誤り有無を確認することが可能である。そして、正しい同期関係に補正して、正確な絶対位置情報を求めることが可能となる。
図16は、サイクル数に対する適用条件を示す図である。なお、サイクル数N1は、1としている。横軸にサイクル数N2、縦軸にサイクル数N3として、適用可否条件を示している。図16には、サイクル数N2は2から14まで、サイクル数N3は3から23までを記載している。
図16中の「A」は、第1から第3実施形態に好適な例である。図16中の「B」は、第1実施形態及び第2実施形態に好適な例である。図16中の「C」は、「A」及び「B」のいずれにも該当しないものである。図16中の「−」は、N2≧N3であるため、アブソリュートエンコーダの構成として不適である。なお、上述した第1実施形態の例は、サイクル数N2を4、サイクル数N3を18とした場合である。上述した第3実施形態の例は、サイクル数N2を4、サイクル数N3を17とした場合である。
[第4実施形態]
第4実施形態では、上述の第1〜第3実施形態のエンコーダを、ロボットアームに搭載した場合について説明する。図17は、第4実施形態に係るロボット装置100の斜視図である。図17に示すように、ロボット装置100は、マニピュレータであるロボット200と、ロボット200の動作を制御する、制御部の一例であるロボット制御装置300と、を備えている。ロボット装置100は、ロボット制御装置300に教示データを送信する教示装置としての教示ペンダント400と、表示装置であるディスプレイ700とを備えている。教示ペンダント400は、操作者が操作するものであり、ロボット200やロボット制御装置300の動作を指定するのに用いる。
第4実施形態では、上述の第1〜第3実施形態のエンコーダを、ロボットアームに搭載した場合について説明する。図17は、第4実施形態に係るロボット装置100の斜視図である。図17に示すように、ロボット装置100は、マニピュレータであるロボット200と、ロボット200の動作を制御する、制御部の一例であるロボット制御装置300と、を備えている。ロボット装置100は、ロボット制御装置300に教示データを送信する教示装置としての教示ペンダント400と、表示装置であるディスプレイ700とを備えている。教示ペンダント400は、操作者が操作するものであり、ロボット200やロボット制御装置300の動作を指定するのに用いる。
ロボット200は、ロボットアーム251と、ロボットアーム251の先端に設けられたエンドエフェクタの一例であるロボットハンド252と、を備えている。ロボットアーム251の基端は、台座150に固定されている。ロボットハンド252は、部品やツール等の物体(ワーク)を把持するものである。
ロボットアーム251は、例えば垂直多関節のロボットアームであり、複数の関節、例えば6つの関節J1〜J6を有している。ロボットアーム251は、各関節J1〜J6を各関節軸A1〜A6まわりにそれぞれ回転駆動する駆動部の一例である電動モータ2201〜2206を有している。
ロボットアーム251は、各関節J1〜J6で回転可能に連結された複数のリンク2100〜2106を有する。第4実施形態では、リンク2100〜2106が基端側から先端側に向かって、順に直列に連結されている。ロボットアーム251は、可動範囲の中であれば、ロボットアーム251の先端、即ちロボットハンド252を任意の位置に移動させることができる。なお、ロボットアーム251の関節が回転関節である場合について説明するが、関節が直動関節であってもよい。「関節の位置」とは、関節の回転位置(角度)又は並進位置を示す。
また、ロボットアーム251は、各関節J1〜J6にそれぞれ配置されたエンコーダ501〜506を有している。各エンコーダ501〜506は、光学式のロータリエンコーダである。各エンコーダ501〜506は、上述の第1又は第2実施形態で説明したエンコーダと同様の構成のものであり、各関節J1〜J6の位置情報、即ち角度情報を示す信号を出力する。
ロボット制御装置300には、各電動モータ2201〜2206を動作させる駆動制御部であるサーボ制御装置350が接続されている。サーボ制御装置350は、各関節J1〜J6に対応する位置指令に基づき、各関節J1〜J6の位置が位置指令に追従するよう、各電動モータ2201〜2206に電流を出力し、各電動モータ2201〜2206を制御する。なお、第4実施形態では、サーボ制御装置350は、ロボット制御装置300の内部に配置されているが、これに限定するものではない。サーボ制御装置350は、ロボット制御装置300の外部、例えばロボットアーム251の内部に配置されていてもよい。
図18(a)は、ロボットアーム251の関節J2の断面図である。図18(b)は、ロボットアーム251の関節J2の側面図である。以下、ロボットアーム251の関節J2の構成について説明するが、関節J1,J3〜J6も関節J2と同様の構成であり、関節J1,J3〜J6の構成については説明を省略する。
第1リンクの一例であるリンク2101と、第2リンクの一例であるリンク2102とが、関節J2で連結されており、リンク2102が関節J2でリンク2101に対して回転軸線A2まわりに相対的に回転移動する。
駆動部の一例である電動モータ2202は、リンク2101に対してリンク2102を回転駆動するよう、関節J2に配置されている。また、関節J2には、リンク2101に対するリンク2102の位置である回転角度を検出するエンコーダ502が配置されている。エンコーダ502のセンサユニット7は、リンク2101及びリンク2102のうち、一方、例えばリンク2101に設けられている。エンコーダ502のスケール2は、リンク2101及びリンク2102のうち、他方、例えばリンク2102に設けられている。
図19は、第4実施形態に係るロボット装置100の制御系を示すブロック図である。ロボット制御装置300は、コンピュータで構成されている。ロボット制御装置300は、CPU(Central Processing Unit)301を備えている。また、ロボット制御装置300は、記憶部の一例として、ROM(Read Only Memory)302、RAM(Random Access Memory)303、及びHDD(Hard Disk Drive)304を備えている。また、ロボット制御装置300は、記録ディスクドライブ305、及び入出力インタフェースであるI/O311〜313を備えている。
CPU301、ROM302、RAM303、HDD304、記録ディスクドライブ305、及びI/O311〜313は、互いに通信可能にバス310で接続されている。I/O311には、サーボ制御装置350が接続され、I/O312には、教示ペンダント400が接続され、I/O313には、ディスプレイ700が接続されている。
サーボ制御装置350には、各関節J1〜J6の電動モータ220及び信号処理回路51が接続されている。なお、図19には、1つの関節分の電動モータ220及び信号処理回路51を図示しているが、6つの関節分の電動モータ220及び信号処理回路51がサーボ制御装置350に接続されている。
CPU301は、ロボット200の各関節J1〜J6を駆動する電動モータ220の動作を、サーボ制御装置350を介して制御することで、ロボット200の動作を制御する。また、CPU301は、作業者の操作によって教示ペンダント400から送信される指示を受け付ける。また、CPU301は、ディスプレイ700を制御して、ディスプレイ700に画像を表示させる。
HDD304には、制御プログラム321及びタスクプログラム322が記憶される。記録ディスクドライブ305は、記録ディスク330に記録された各種データやプログラム等を読み出すことができる。
制御プログラム321は、CPU301に、タスクプログラム322の解釈、ロボットアーム251の軌道データの生成、各種演算や各種制御を行わせるプログラムである。制御プログラム321は、ユーザによる変更が容易にはできないようになっている。タスクプログラム322は、例えばロボット言語で記述されたテキストファイルであり、ユーザ又はコンピュータにより変更が可能となっている。CPU301は、タスクプログラム322を読み込み、教示点を結ぶ軌道データを所定の補間方法、例えば直線補間や円弧補間等により生成してHDD304に記憶させる。直線補間の場合は、ロボットアーム251の先端を直線移動させる軌道データが生成されることになる。CPU301は、軌道データの各点データを、ロボットの逆運動学計算により、各関節J1〜J6の回転角度に変換し、サーボ制御装置350に位置指令P*を出力する。
エンコーダ装置の信号処理回路51は、関節の位置情報Pを示す信号をサーボ制御装置350に出力する。サーボ制御装置350は、信号処理回路51から得られる位置情報Pが位置指令P*となるように電動モータ220に供給する電流を制御する。以上のフィードバック制御により、ロボット制御装置300は、軌道データに従ってロボットアーム251を動作させることになる。
ロボット200は、生産ラインに配置される。ロボット200には、物品を製造する所定動作、例えば図17に示す第1ワークであるワークW10を第2ワークであるワークW20に組み付ける動作を行わせる。具体的には、ロボット制御装置300がロボット200を制御して、ロボットハンド252にワークW10を把持させ、ワークW10を把持したロボットハンド252を、ワークW20に向かって移動させることで、ワークW10をワークW20に組み付ける。
ところで、ロボットアーム251の関節、即ち一対のリンク間には、一方のリンクに対して他方のリンクを駆動するためにわずかに隙間がある。この隙間からスケール2上にゴミやグリスが侵入することがある。
第4実施形態では、信号処理回路51は、第1実施形態において説明した図6に示すステップS108の処理として、サーボ制御装置350にエラー信号Seを出力する。ロボット制御装置300は、サーボ制御装置350を介して信号処理回路51からエラー信号Seの入力を受けた場合には、ロボットアーム251の動作、即ちロボット200の動作を停止させる制御を行う。なお、信号処理回路51は、サーボ制御装置350を介さずに直接、ロボット制御装置300にエラー信号Seを出力してもよい。
ロボット制御装置300は、エラー信号Seの入力を受けた場合、ディスプレイ700にエラー信号Seに応じた画像を表示させてもよい。これにより、ユーザは、ディスプレイ700を参照することにより、ロボットアーム251に異常が生じたこと、即ちエンコーダ50に異常が生じたことを認識することができる。同期誤りがない場合には、信号処理回路51はエラー信号Seを出力しないため、ロボット制御装置300は、ロボットアーム251、即ちロボット200の制御を続行する。
以上、第4実施形態によれば、信号処理回路51が同期判定を行った結果、出力される位置情報に基づいてロボットアーム251を動作させるので、ロボットアーム251、即ちロボット200の制御にかかる時間を短縮することできる。
なお、第4実施形態では、ロボット装置100に上記第1実施形態のエンコーダ装置500を適用した場合について説明したが、ロボット以外にも様々な装置に適用することができる。例えば、図20に示すように、水平方向(パン)と垂直方向(チルト)に回転駆動機構を持った監視カメラ600のレンズ鏡筒601(光学ユニット)の回転角度を検出するエンコーダ507,508において本発明を適用することができる。即ち、光学機器としての監視カメラ600は、水平方向にレンズ鏡筒601を回転させる電動モータ603と、垂直方向にレンズ鏡筒601を回転させる電動モータ602と、が光学ユニットを駆動させる駆動機構を構成している。そして、これら電動モータ603,602の駆動軸と共に回転するように構成されたスケール7と、スケール7から反射された光を検知する受光素子を有するセンサユニット2とによって上記光学ユニットの位置を検出するエンコーダ507,508を構成している。ロボット制御装置300は、ロボット装置100に上記第2実施形態のエンコーダ装置500Aを適用した場合についても同様の制御方法を実行する。
また、ロボット装置100に上記第3実施形態のエンコーダ装置を適用した場合については、信号処理回路51は、同期誤りを修正して、精度の高い絶対位置情報をサーボ制御装置350に出力することになる。
本発明は、以上説明した実施形態に限定されるものではなく、本発明の技術的思想内で多くの変形が可能である。また、実施形態に記載された効果は、本発明から生じる最も好適な効果を列挙したに過ぎず、本発明による効果は、実施形態に記載されたものに限定されない。
上述第1〜第4実施形態では、エンコーダが反射型である場合について説明したが、これに限定するものではない。例えば、エンコーダが透過型であってもよい。また、エンコーダは、光学式に限定するものではなく、例えば、磁気式又は静電容量式であってもよい。また、エンコーダは、リニアエンコーダに限定するものではなく、ロータリエンコーダであってもよい。ロータリエンコーダの場合、絶対位置情報として、回転位置を検出することになる。
上述の第1〜第3実施形態では、スケールが、互いにピッチ(周期)の異なる2つのパターン列を有する場合について説明したが、互いにピッチの異なる3つ以上のパターン列を有する場合であってもよい。この場合、複数のパターン列のうちいずれかのパターン列から、バーニア信号を信号処理回路が取得するようにしてもよい。
上述の第4実施形態では、垂直多関節のロボットアームについて説明したが、これに限定するものではない。ロボットアームが、例えば、水平多関節のロボットアーム、パラレルリンクのロボットアーム、直交ロボット等、種々のロボットアームに、エンコーダを適用することができる。
(その他の実施例)
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
2…スケール、7…センサユニット(検出部)、51…信号処理回路(処理部)、500…エンコーダ装置(位置検出装置)
Claims (17)
- スケールの位置検出方法であって、
処理部が、前記スケールの同じ位置における、前記スケールの所定変位あたり第1サイクル数で繰り返し変化する第1信号の第1位相値、前記スケールの前記所定変位あたり前記第1サイクル数よりも多い第2サイクル数で繰り返し変化する第2信号の第2位相値、及び前記スケールの前記所定変位あたり前記第2サイクル数よりも多い第3サイクル数で繰り返し変化する第3信号の第3位相値を取得し、
前記処理部が、前記第2サイクル数の周期の中から、前記第1位相値に対応する1つの周期を選択し、
前記処理部が、前記第3サイクル数の周期の中から、前記第2サイクル数の周期のうち選択した周期と、前記第2位相値と、に対応する1つの周期を選択し、
前記処理部が、前記選択した周期の第2位相値に対応する前記第3信号の第4位相値を取得し、
前記処理部が、前記第3位相値と前記第4位相値とを使用して、前記スケールの位置を求めることを特徴とする位置検出方法。 - 前記処理部が、前記第3位相値と前記第4位相値との差分を取得することを特徴とする請求項1に記載の位置検出方法。
- 前記処理部が、前記第3位相値と前記第4位相値との差分が所定範囲内の場合、前記第3サイクル数の周期のうち選択した周期と、前記第3位相値とに基づいて、前記スケールの位置を求めることを特徴とする請求項2に記載の位置検出方法。
- 前記処理部が、前記差分が前記所定範囲を超える場合は、エラー信号を出力することを特徴とする請求項3に記載の位置検出方法。
- 前記処理部が、前記差分が前記所定範囲を超える場合は、前記第3位相値と前記第4位相値との関係に基づき、前記第3サイクル数の周期の中から、前記第3サイクル数の周期のうち選択した周期とは別の1つの周期を選択し、
前記処理部が、前記第3サイクル数の周期のうち選択した別の周期と、前記第3位相値とに基づいて、前記スケールの位置を求めることを特徴とする請求項3に記載の位置検出方法。 - 前記処理部が、前記第3サイクル数を前記第2サイクル数で除算した値が整数ではない値であることを特徴とする請求項1乃至5のいずれか1項に記載の位置検出方法。
- 前記第3サイクル数を前記第2サイクル数で除算した値が整数ではない値であり、
前記第3サイクル数を前記第2サイクル数で除算した値における小数部の値と、前記第2サイクル数を前記第1サイクル数で除算した値とを乗算した値が、前記第2サイクル数を前記第1サイクル数で除算した値において1を除く約数の倍数以外で、かつ前記第2サイクル数を前記第1サイクル数で除算した値未満の自然数であることを特徴とする請求項5に記載の位置検出方法。 - 第1リンクと、前記第1リンクに対して回転する第2リンクとを有するロボットの制御方法であって、
請求項1乃至7のいずれか1項に記載の位置検出方法により、前記第1リンクに対して回転する前記第2リンクの位置を検出して、前記ロボットを制御することを特徴とする制御方法。 - 第1リンクと、前記第1リンクに対して回転する第2リンクとを有するロボットの制御方法であって、
請求項4に記載の位置検出方法により、前記第1リンクに対して回転する前記第2リンクの位置を検出して、前記ロボットを制御し、前記エラー信号が発せられたとき、前記ロボットの動作を停止することを特徴とする制御方法。 - 請求項8又は9に記載の制御方法により前記ロボットを動作させて物品を製造することを特徴とする物品の製造方法。
- 処理部と、
スケールと、
前記スケールの位置に応じた信号を前記処理部に出力する検出部と、を備え、
前記処理部は、
前記検出部からの信号に基づき、前記スケールの同じ位置における、前記スケールの所定変位あたり第1サイクル数で繰り返し変化する第1信号の第1位相値、前記スケールの前記所定変位あたり前記第1サイクル数よりも多い第2サイクル数で繰り返し変化する第2信号の第2位相値、及び前記スケールの前記所定変位あたり前記第2サイクル数よりも多い第3サイクル数で繰り返し変化する第3信号の第3位相値を取得し、
前記第2サイクル数の周期の中から、前記第1位相値に対応する1つの周期を選択し、前記第3サイクル数の周期の中から、前記第2サイクル数の周期のうち選択した周期と、前記第2位相値と、に対応する1つの周期を選択し、
前記選択した周期の第2位相値に対応する前記第3信号の第4位相値を取得し、
前記第3位相値と前記第4位相値とに基づいて、前記スケールの位置を求めることを特徴とする位置検出装置。 - 前記処理部が、前記第3位相値と前記第4位相値との差分を取得することを特徴とする請求項11に記載の位置検出装置。
- 前記処理部が、前記第3位相値と前記第4位相値との差分が所定範囲内の場合、前記第3サイクル数の周期のうち選択した周期と、前記第3位相値とに基づいて、前記スケールの位置を求めることを特徴とする請求項12に記載の位置検出装置。
- 第1リンクと、
前記第1リンクに対して相対的に回転する第2リンクと、
前記第1リンクに対して回転する前記第2リンクの位置を検出する、請求項11乃至13のいずれか1項に記載の位置検出装置と、を備えることを特徴とするロボット装置。 - 光学ユニットを駆動させる駆動機構と、前記光学ユニットの位置を検出する請求項11乃至13のいずれか1項に記載の位置検出装置と、を有する光学機器。
- 請求項1乃至7のいずれか1項に記載の位置検出方法をコンピュータに実行させるプログラム。
- 請求項16に記載のプログラムが記録されたコンピュータ読み取り可能な記録媒体。
Priority Applications (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US16/748,434 US20200249055A1 (en) | 2019-02-06 | 2020-01-21 | Position detection method, control method, manufacturing method, position detection apparatus, robot apparatus, optical device, and non-transitory recording medium |
| CN202010080941.6A CN111537006A (zh) | 2019-02-06 | 2020-02-05 | 位置检测方法和装置、控制和制造方法、机器人装置、光学设备 |
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2019020133 | 2019-02-06 | ||
| JP2019020133 | 2019-02-06 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JP2020126041A true JP2020126041A (ja) | 2020-08-20 |
Family
ID=72084848
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2019221663A Pending JP2020126041A (ja) | 2019-02-06 | 2019-12-06 | 位置検出方法、制御方法、物品の製造方法、位置検出装置、ロボット装置、光学機器、プログラム及び記録媒体 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP2020126041A (ja) |
-
2019
- 2019-12-06 JP JP2019221663A patent/JP2020126041A/ja active Pending
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP5489538B2 (ja) | 力覚センサ | |
| JP5882590B2 (ja) | 光学式エンコーダおよび光学式エンコーダを有する装置 | |
| JP5538870B2 (ja) | ロータリーエンコーダ | |
| JP5755009B2 (ja) | エンコーダ | |
| JP5479255B2 (ja) | 光学式エンコーダ | |
| JP6207154B2 (ja) | スケール、変位検出装置、レンズ装置、撮像システム、および、組み立て装置 | |
| JP6971822B2 (ja) | エンコーダ、ロボット及びギャップ測定方法 | |
| JP7350559B2 (ja) | エンコーダ装置、駆動装置、ロボット装置、位置検出方法、物品の製造方法、プログラム、及び記録媒体 | |
| US10540559B2 (en) | Position detection apparatus, lens apparatus, image pickup system, machine tool apparatus, position detection method, and non-transitory computer-readable storage medium which are capable of detecting abnormality | |
| JP2014178227A (ja) | 位置検出装置、レンズ装置、撮像システム、および、工作装置 | |
| US20050258986A1 (en) | Precision material-handling robot employing high-resolution, compact absolute encoder | |
| JP2020126041A (ja) | 位置検出方法、制御方法、物品の製造方法、位置検出装置、ロボット装置、光学機器、プログラム及び記録媒体 | |
| US20200249055A1 (en) | Position detection method, control method, manufacturing method, position detection apparatus, robot apparatus, optical device, and non-transitory recording medium | |
| JP6091268B2 (ja) | 位置検出装置、レンズ装置、撮像システム、工作装置、位置検出方法、および、プログラム | |
| JP2019109093A (ja) | ロータリエンコーダ、駆動装置、トルクセンサ、ロボット及びレーザ加工機 | |
| JP5902891B2 (ja) | エンコーダ及び校正方法 | |
| JP6251126B2 (ja) | 変位検出装置 | |
| US20220281119A1 (en) | Robot system, and method for manufacturing product | |
| JPH0285717A (ja) | エンコーダ | |
| JP2002071388A (ja) | 回折格子エンコーダ及び磁気ヘッドの位置決め装置 | |
| JP2024053942A (ja) | 光学式エンコーダ、センシングシステム、ロボットシステム、及び物品の製造方法 | |
| JP2014219233A (ja) | 位置検出装置、レンズ装置、撮像システム、工作装置、および、位置検出方法 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20200206 |
|
| RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20200207 |