(57)【要約】【課題】製造作業の煩雑化や構造の複雑化によるコストの上昇を招くことなく、移動体の絶対位置を正確に検出する。【解決手段】移動体２０の移動方向Ｘに沿ってスケール１を配置し、移動体２０に取付２１を介して受光素子２を設けた。スケール１には、移動方向Ｘに沿って複数の孔部１１を形成し、各孔部１１に発光素子３を配置した。受光素子２は、スケール１の上面に対向し、各孔部１１の間隔よりも長い検出範囲で発光素子３の光を受光する。孔部１１の絶対位置を予め記憶しておき、発光素子３をスケール１の一端側から順次駆動することで、受光素子２が光を受光した時に駆動中の発光素子３の絶対位置と、受光素子２の検出範囲におけるピーク値の位置と、から移動体２０の絶対位置を算出する。【選択図】図１
2008241338.tif 000002
【特許請求の範囲】
【請求項１】
所定の移動方向に沿って移動する移動体の絶対位置を検出する位置検出装置であって、
前記移動方向に沿って配置され、複数の発光素子が前記移動方向に沿って互いの間に間隔を設けて配置されたスケールと、
前記移動体に取り付けられ、前記移動方向に沿って前記間隔の最大値よりも長い所定の検出範囲内で前記複数の発光素子の少なくとも１つの発光素子から照射された光を検出し、前記検出範囲内における受光位置に応じた受光信号を出力するセンサと、
前記スケールにおける前記複数の発光素子のそれぞれの配置位置を記憶する記憶部を有し、前記複数の発光素子のそれぞれを個別に駆動するとともに、前記センサから前記受光信号が入力される制御部と、を備え、
前記制御部は、前記受光信号が入力された時に前記複数の発光素子のうち駆動中の発光素子の配置位置を前記記憶部から読み出し、前記読み出した配置位置と前記受光信号とに基づいて移動体の位置を算出する位置検出装置。
【請求項２】
前記制御部は、前記記憶部に前記スケールにおける前記複数の発光素子の配置位置を更新的に記憶する請求項１に記載の位置検出装置。
【請求項３】
前記制御部は、前記複数の発光素子のうちで隣接する２つの発光素子を駆動した時の前記受光信号の内容に基づいて前記記憶部の記憶内容を更新する請求項２に記載の位置検出装置。
【請求項４】
前記受光信号の出力周期は、前記移動体が前記一定間隔の１／２を移動する時間よりも短い請求項１乃至３の何れかに記載の位置検出装置。
【請求項５】
前記制御部は、前記移動体の移動開始前に前記複数の発光素子のそれぞれを順次駆動し、前記移動体の移動開始後に前記複数の発光素子のうち前記センサが受光した光を照射している主発光素子と前記主発光素子に隣接する副発光素子とを駆動する請求項４に記載の位置検出装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、移動待の位置の絶対値を検出する位置検出装置に関する。
【背景技術】
【０００２】
移動体の位置を検出する従来の位置検出装置として、リニアエンコーダやロータリエンコーダ等の光学式エンコーダが知られている。光学式エンコーダは、のスケール上にリソグラフィー等によってスリットや回析溝等のパターンを形成し、移動体に設けた光学センサからパターンに光を照射して反射光を検出し、受光量の変化から位置を検出する。パターンに応じた周期的な受光信号に基づいて移動体の位置を相対的に検出する。移動体の絶対位置を検出するためには、起動時に移動体をイニシャル位置まで移動させ、移動体がイニシャル位置にあることを別のセンサによって検出する所謂原点出しが必要になる。
【０００３】
そこで、絶対位置情報を所定の画素数で表したバーコード等の絶対値目盛をスケール上に所定間隔で形成し、移動体に設けたイメージセンサが読み取った絶対値目盛が表す絶対位置情報に基づいて移動体の絶対位置を検出するようにしたものがある（例えば、特許文献１参照。）。
【特許文献１】特開２００４−１９１２６７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、特許文献１に記載された構成では、スケール上に形成すべき絶対位置目盛は、それぞれが互いに異なる絶対位置情報を表すものであるため、１つ１つが微細な形状となり、エッチング等によって精密に形成する必要がある。また、エッチング装置で処理可能なサイズを超える長尺のスケールを単体で形成することができない。短尺のスケールを継ぎ足して使用する場合にも、互いに異なる絶対位置目盛を形成した複数種類のスケールを準備する必要がある。これらのことから、スケールの製造が煩雑でコストが上昇する問題がある。
【０００５】
また、各絶対位置目盛の形状が微細であるため、スケールの汚損、振動の作用、スケールとイメージセンサとの距離等によって誤検出を生じ易い問題がある。
【０００６】
さらに、移動体側に発光部を備える必要があり、給電用の配線等の構造が複雑化する問題がある。
【０００７】
この発明の目的は、スケール上の複数の発光素子から選択的に照射される光を移動体に設けたセンサで受光することで、製造作業の煩雑化や構造の複雑化によるコストの上昇を招くことなく、移動体の絶対位置を正確に検出することができる位置検出装置を提供することにある。
【課題を解決するための手段】
【０００８】
この発明は、所定の移動方向に沿って移動する移動体の絶対位置を検出する位置検出装置であって、スケール、センサ、制御部を備えている。スケールは、移動方向に沿って配置され、複数の発光素子が移動方向に沿って互いの間に間隔を設けて配置されている。センサは、移動体に取り付けられ、移動方向に沿って複数の発光素子の間隔の最大値よりも長い所定の検出範囲内で複数の発光素子の少ないとも１つから照射された光を検出し、検出範囲内における受光位置に応じた受光信号を出力する。制御部は、スケールにおける複数の発光素子のそれぞれの配置位置を記憶する記憶部を有し、複数の発光素子のそれぞれを個別に駆動するとともに前記受光信号が入力される。
【０００９】
制御部は、受光信号が入力された時に、複数の発光素子のうち駆動中の発光素子の配置位置を記憶部から読み出し、読み出した配置位置と受光信号とに基づいて移動体の位置を算出する。受光信号は、所定の検出範囲内における受光位置を特定する。検出範囲内の中心から受光位置までの距離を読み出した配置位置に加算又は減算することで、検出範囲の中心の絶対位置が算出できる。移動体における検出範囲の中心位置は固定されているため、算出結果によって移動体の位置が特定される。
【００１０】
この構成において、制御部は、記憶部にスケールにおける複数の発光素子の配置位置を更新的に記憶するものとしてもよい。スケールにおける複数の発光素子の測定結果を制御部に入力することでスケールの経時的な変形による配置位置の誤差を補正することができ、移動体の絶対位置を正確に算出できる。
【００１１】
また、制御部は、複数の発光素子のうちで隣接する２つの発光素子を駆動した時の受光信号の内容に基づいて記憶部の記憶内容を更新するものとしてもよい。隣接する２つの発光素子の間隔をセンサによって検出し、この検出結果を用いて複数の発光素子の配置位置を補正することができる。
【００１２】
受光信号の出力周期は、移動体が検出範囲の１／２の距離を移動する時間よりも短い時間としてもよい。前回の受光信号の入力時にセンサが受光した光を照射していた発光素子の光の受光位置が今回の受光信号に必ず含まれることになり、移動体の位置が連続的に算出できる。
【００１３】
制御部は、移動体の移動開始前に複数の発光素子のそれぞれを順次駆動し、移動体の移動開始後に複数の発光素子のうちセンサが受光した光を照射している主発光素子と主発光素子に隣接する副発光素子とを駆動するものとしてもよい。複数の発光素子のうち必要最小限の発光素子のみを駆動して移動体の絶対位置を検出することができる。
【発明の効果】
【００１４】
この発明によれば、受光信号が入力された時に駆動中の発光素子の配置位置と、受光信号の内容と、に基づいて、移動体の絶対位置を算出することができる。製造作業の煩雑化や構造の複雑化によるコストの上昇を招くことなく、移動体の絶対位置を正確に検出することができる。また、スケールの汚損、振動の作用、スケールとイメージセンサとの距離の変動等によって誤検出を生じ難く、移動体側に発光部を備える必要がないために給電用の配線等の構造が複雑化することがない。
【発明を実施するための最良の形態】
【００１５】
図１は、この発明の実施形態に係る位置検出装置した移動機構を示す斜視図である。移動機構３０は、ネジ棒３１、ガイド軸３２、モータ３３、フレーム３４，３５を備え、移動体２０を移動方向Ｘに沿って往復移動させる。
【００１６】
ネジ棒３１は、軸方向を移動方向Ｘに平行にしてフレーム３４，３５に軸支されており、移動体２０のネジ部２３に螺合している。ガイド軸３２は、ネジ棒３１に平行にフレーム３４，３５に固定されており、移動体２０の孔部２４を貫通している。モータ３３は、フレーム３４に固定されており、ネジ棒３１に正逆両方向に回転を供給する。
【００１７】
モータ３３を駆動してネジ棒３１を回転させることにより、移動体２０が移動方向Ｘに沿って移動する。
【００１８】
フレーム３４とフレーム３５との間に、スケール１が長手方向を移動方向Ｘに平行にして取り付けられている。スケール１は、一例として、ガラスエポキシ製の基板であり、複数の孔部１１を長手方向に沿って一定間隔で備えている。
【００１９】
移動体２０には、取付板２１が固定されている。取付板２１の底面には、受光素子２が取り付けられている。受光素子２は、一例として７６８画素のＣ−ＭＯＳである。受光素子２には、ＣＣＤ等のＣ−ＭＯＳ以外の撮像素子を用いることもできる。受光素子２は、画素の配列方向を移動方向Ｘに平行にして配置される。取付板２１は、移動体２０の側面からスケール１の上方に延出している。受光素子２は、スケール１の上面に対向する。受光素子２はスケール１とともに、この発明の位置検出装置を構成している。
【００２０】
図２（Ａ）は、この発明の実施形態に係る位置検出装置の側面断面図である。図２（Ｂ）は、同位置検出装置における受光素子の受光信号を示す図である。スケール１の複数の孔部１１のそれぞれには、発光素子３Ａ，３Ｂ，３Ｃ，３Ｄ，・・・が配置されている。発光素子３Ａ〜３Ｄは、一例として、ＬＥＤであり、孔部１１の間隔である配置ピッチ３６でスケール１の長手方向に配置されている。取付板２１の底面に取り付けられた受光素子２は、移動方向Ｘについて配置ピッチ３６よりも長い検出範囲２２内で発光素子２の光を受光する。配置ピッチ３６にバラツキがある場合、検出範囲２２の長さは最長の配置ピッチ３６よりも長くされる。
【００２１】
受光素子２は、各画素における受光量に応じた受光信号を出力する。受光素子２は、受光信号として、受光素子２の各画素の受光量に応じたレベルの電圧値を画素の配列順に出力する。検出範囲２２に受光素子３Ｂ，３Ｃが位置する場合、受光素子２は、図２（Ｂ）に示す波形の受光信号を出力する。
【００２２】
受光素子２は、検出範囲２２における移動方向Ｘの中心位置が、移動体２０の移動方向の中心位置に一致するように取付板２１に取り付けられる。
【００２３】
なお、孔部１１の形状を移動方向Ｘに平行な側面を有する矩形とすることで、スケール１における孔部１１の移動方向Ｘの誤差によって受光素子２の受光量が変動することを防止できる。
【００２４】
図３は、上記位置検出装置の制御部のブロック図である。制御部５は、ＣＰＵ５１に、メモリ５２、ＬＥＤドライバ５３、Ａ／Ｄ変換器５４を接続して構成されている。ＣＰＵ５１は、移動機構３０の移動制御部４０との間でデータの送受信を行う。ＣＰＵ５１は、移動体２０の位置の検出結果を移動制御部４０に送信する。移動制御部４０は、検出結果を目標位置と比較し、モータ３３を駆動する。移動制御部４０は、モータ３３の駆動方向を示す方向データをＣＰＵ５１に送信する。
【００２５】
メモリ５２は、この発明の記憶部である。メモリ５２は、スケール１に配置されている複数の発光素子３のそれぞれの配置位置を記憶している。メモリ５１は、各発光素子３の配置位置として、各発光素子３のスケール１の原点からの距離の絶対値である絶対位置を記憶している。メモリ５１においては、複数の発光素子３のそれぞれには、移動方向Ｘにおける往動方向に昇順の番号が付されている。また、メモリ５２の所定のメモリエリアには、カウンタＣが割り当てられている。カウンタＣの計数値は、複数の受光素子３の何れかの特定に用いられる。
【００２６】
ＬＥＤドライバ５３には、複数の発光素子３が接続されている。ＣＰＵ５１は、ＬＥＤドライバ５３に対して複数の発光素子３のそれぞれに対する駆動データを出力する。ＬＥＤドライバ５３は、駆動データに基づいて複数の発光素子３のそれぞれを個別に駆動する。
【００２７】
Ａ／Ｄ変換器５４には、受光素子２が接続されている。Ａ／Ｄ変換器５４は、受光素子２から出力された受光信号をディジタルデータに変換し、ＣＰＵ５１に入力する。
【００２８】
図４は、制御部の処理手順を示すフローチャートである。ＣＰＵ５１は、電源が投入されると、カウンタＣの内容を１にし（Ｓ１）、カウンタＣの計数値で特定されるＣ番目の発光素子３を駆動する（Ｓ２）。ＣＰＵ５１は、受光素子２の受光信号を読み取り、受光信号が所定の閾値を超えているか否かの判別を行う（Ｓ３）。受光信号が閾値を超えていない場合、ＣＰＵ５１は、カウンタＣの計数値をインクリメントする（Ｓ４）。ＣＰＵ５１は、受光信号か閾値を超えるまでＳ２〜Ｓ４の処理を繰り返し行う。
【００２９】
受光信号が閾値を超えると、ＣＰＵ５１は、駆動中の発光素子３の配置位置をメモリ５２から読み出し（Ｓ５）、検出範囲２２における受光信号のピーク位置を読み取る（Ｓ６）。ＣＰＵ５１は、メモリ５２から読み出した配置位置と受光信号のピーク値の位置とから、移動体１０の中心の絶対位置を算出し（Ｓ７）、この結果を現在位置データとして移動制御部４０に出力する（Ｓ８）。
【００３０】
ステップＳ６における受光信号のピーク位置の読取は、まず、受光信号の波形の立ち上がり部分及び立ち下がり部分が閾値を切る位置のそれぞれを、前後２つの画素の位置の差をこれらの画素の受光信号の値で比例配分して算出する。次いで、算出した位置の中間値をピーク位置とする。
【００３１】
即ち、受光信号の波形の立ち上がり部分について、閾値を下から上に切る前後の画素番号がｎ、ｎ＋１であり、それぞれの受光信号がｙ１，ｙ２である場合、受光素子２における画素のピッチをｐ、閾値をｙａとして、波形の立ち上がり部分が閾値を切る位置ｂ１は、ｂ１＝ｐ（ｎ＋（ｙａ−ｙ１）／（ｙ２−ｙ１））で求まる。波形の立ち下がり部分が閾値を切る位置ｂ２についても同様にして求め、位置ｂ１と位置ｂ２との中点をピーク位置とする。
【００３２】
ピーク位置をこのように算出することで、受光素子２の画素ピッチよりも細かい分解能で移動体１０の位置を検出することができる。また、発光素子１への通電劣化等による光量変動の影響を受け難くすることができる。
【００３３】
この後、ＣＰＵ５１は、移動制御部４０による移動体２０の移動の開始を待機し（Ｓ９）、移動体２０の移動が開始されると移動制御部４０から送信された方向データによって移動体２０の移動方向を読み取る（Ｓ１０）。
【００３４】
移動体２０が往動方向へ移動する場合には、ＣＰＵ５１は、カウンタＣの計数値で特定されるＣ番目の発光素子３、及びこれに往動方向に隣接する（Ｃ＋１）番目の発光素子３を駆動する（Ｓ１１，Ｓ１２）。このとき、ＣＰＵ５１は、カウンタＣの計数をインクリメントする（Ｓ１３）。
【００３５】
移動体２０が復動方向へ移動する場合には、ＣＰＵ５１は、カウンタＣの計数値で特定されるＣ番目の発光素子３、及びこれに復動方向に隣接する（Ｃ−１）番目の発光素子３を駆動する（Ｓ１１，Ｓ１４）。このとき、ＣＰＵ５１は、カウンタＣの計数をデクリメントする（Ｓ１５）。
【００３６】
ＣＰＵ５１は、２個の発光素子３を駆動後に、駆動中の発光素子３の配置位置をメモリ５２から読み出し（Ｓ１６）、検出範囲２２における受光信号のピーク値の位置を読み取る（Ｓ１７）。ＣＰＵ５１は、メモリ５２から読み出した配置位置と受光信号のピーク値の位置とから、移動体１０の中心の絶対位置を算出し（Ｓ１８）、この結果を現在位置データとして移動制御部４０に出力する（Ｓ１９）。ＣＰＵ５１は、移動体２０の移動が終了するまでＳ９〜Ｓ１９の処理を繰り返し実行する（Ｓ２０）。
【００３７】
ＣＰＵ５１は、Ｓ７及びＳ１８における中心位置の算出時に、メモリから読み出し卓同中の発光素子3の配置位置に、受光素子2における中心位置からピーク値の位置までの距離を加算又は減算する。特に、Ｓ１８の処理において受信信号に２つのピーク値が含まれる場合には、これらの中心位置に対応する画素の位置から受光素子２の中心位置までの距離を算出し、この値を２つの発光素子３の配置位置の中心値に加算又は減算する。２つのピーク値の中点を算出することで、受光素子２の解像度よりも高い精度で移動体２０の位置を算出できる。
【００３８】
以上の処理により、簡単な構成で移動体２０の絶対位置を検出することができる。なお、ステップＳ９〜Ｓ１９の繰り返しの周期を、移動体２０が配置ピッチ３６の１／２の距離の移動に要する時間よりも短くすることで、駆動中の２つの発光素子３のうち移動体２０の移動方向側の発光素子３の光を受光素子２で受光し続けることができる。受光素子２で受光した光がどの発光素子３から照射された光であるかを見失うことがなく、移動体２０の位置を継続して検出することができる。
【００３９】
また、ＣＰＵ５１による受光信号の読取周期（ステップＳ９〜Ｓ１９の繰り返しの周期）における移動体１０の移動量が、受光素子２の長さに比較して十分に短く、その変動が十分に小さい場合には、ステップＳ１０において移動制御部４０から送信される方向データを読み取ることなく、ピーク位置の移動方向から移動体１０の移動方向を知ることができる。
【００４０】
例えば、ステップＳ６でピーク位置を算出した際に駆動していた発光素子１（主発光素子）とこの発光素子１の両隣の発光素子１（副発光素子）の３個を移動体１０の移動開始後に駆動しておく。移動体１０が右方向に移動している場合には、受光信号のピーク位置は受光素子２内で左方向に移動し、ピーク位置が受光素子２の左端近傍に達した時に受光素子２の右端近傍に新たなピーク波形が現れる。次に、最初の主発光素子の右隣の発光素子を主発光素子とし、その両隣の発光素子を副発光素子として３個の発光素子を駆動することで、移動体１０の位置を継続的に検出することができる。移動体１０が左方向に移動している場合にも同様にして移動体１０の位置を継続的に検出することができる。
【００４１】
メモリ５２に格納する各発光素子３の配置位置は、スケール１の作成後に測定した値を入力することで、スケール１における発光素子３の配置位置の精度を厳格に規定する必要をなくし、製造工程を簡略化できる。また、同一形状のスケール１を複数連結することで長尺のスケールを容易に構成することができる。
【００４２】
制御部５に入力手段を備え、位置検出装置の使用開始後に、発光素子３の配置位置を測定し、この結果を入力手段から入力してメモリ５２の内容を更新することで、ステール１の経時的な変形等にも対応することができる。制御部５に入力手段を備えない場合でも、受光素子２によって各発光素子３の間隔を順次測定することで、スケール１の一端部に配置された発光素子３の位置を原点として各発光素子３の絶対位置を測定することができ、この測定結果をメモリ５２に更新的に格納することで同様の効果を得ることができる。
【００４３】
最後に、上述の実施形態の説明は、すべての点で例示であって、制限的なものではないと考えられるべきである。本発明の範囲は、上述の実施形態ではなく、特許請求の範囲によって示される。さらに、本発明の範囲には、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【図面の簡単な説明】
【００４４】
【図１】この発明の実施形態に係る位置検出装置した移動機構を示す斜視図である。
【図２】（Ａ）はこの発明の実施形態に係る位置検出装置の側面断面図であり、（Ｂ）は同位置検出装置における受光素子の受光信号を示す図である。
【図３】上記位置検出装置の制御部のブロック図である。
【図４】制御部の処理手順を示すフローチャートである。
【符号の説明】
【００４５】
１  スケール
２  受光素子
３  発光素子
５  制御部
２０  移動体
５２  メモリ（記憶部）
【図１】
2008241338.tif 000003
【図２】
2008241338.tif 000004
【図３】
2008241338.tif 000005
【図４】
2008241338.tif 000006