(57)【要約】【課題】  電源投入後に短時間で目標の発光量となり、通常動作時は安定でノイズに強い発光素子駆動回路およびその発光量補正方法を提供する。【解決手段】発光素子ＬＥＤ１と、この発光素子の光を受光する受光素子ＰＤ１と、この受光素子ＰＤ１から出力される信号を増幅する増幅器ＡＭＰ１と、この増幅器ＡＭＰ１にて増幅された信号に基づき前記発光素子ＬＥＤ１への発光指令量を演算し、この発光指令量を出力するマイクロコンピュータＣＰＵ１と、発光量目標値を記憶する記憶装置ＭＥＭ１とにより構成される発光素子駆動回路において、マイクロコンピュータＣＰＵ１は電源投入時の指令量演算部１０１と、通常動作時の指令量演算部１０２とを備え、電源投入時と通常動作時で切り換える。【選択図】図１
2005091138.tif 000002
【特許請求の範囲】
【請求項１】
電流を流すことによって発光する発光素子と、この発光素子の光を受光する受光素子と、この受光素子から出力される信号を増幅する増幅器と、この増幅器にて増幅された信号に基づき前記発光素子への発光指令量を演算するとともにこの発光指令量を出力するマイクロコンピュータと、発光量目標値を記憶する記憶装置とにより構成される発光素子駆動回路において、
前記マイクロコンピュータは、電源投入時の指令量演算部と、通常動作時の指令量演算部と、演算手段切り替え部とを備えたことを特徴とする発光素子駆動回路
【請求項２】
電流を流すことによって発光する発光素子と、この発光素子の光を受光する受光素子と、この受光素子から出力される信号を増幅する増幅器と、この増幅器にて増幅された信号に基づき前記発光素子への発光指令量を演算するとともにこの発光指令量を出力するマイクロコンピュータと、発光量目標値を記憶する記憶装置とにより構成される発光素子駆動回路において、
前記発光指令量を電源投入時と通常動作時でそれぞれ個別のアルゴリズムで演算することを特徴とする発光素子駆動回路の発光量補正方法    
【請求項３】
電源投入時は、初回の発光指令量として、十分小さい仮の発光指令量を出力し、２回目以降は前回の発光指令量に対応する発光量現在値から前記発光素子駆動回路の特性を推定し、この推定された前記発光素子駆動回路の特性と前記発光量目標値から発光指令量を演算し、出力する動作を一定回数繰り返すことにより前記発光指令量を生成することを特徴とする請求項２記載の発光素子駆動回路の発光量補正方法
【請求項４】
通常動作時は、前記電源投入時の最終回に生成された発光指令量を初回の発光指令量とし、２回目以降は、発光量目標値と発光量現在値の差から発光量誤差を演算し、この発光量誤差にある係数を掛けた値と、前回の発光指令量にある係数を掛けた値とを加えてこの回の発光指令量生成する動作を一定周期で繰り返すことより、前記発光指令量を生成することを特徴とする請求項２記載の発光素子駆動回路の発光量補正方法
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、回転体の回転量及び移動体の移動量を検出する光学式エンコーダの発光素子駆動回路およびその発光量補正方法に関する。
【背景技術】
【０００２】
従来の光学式エンコーダの発光素子の発光素子駆動回路は、図４の様に構成される。（例えば、特許文献１参照）。
図４においてＬＥＤ１は発光素子、ＰＤ１は受光素子、ＣＰＵ１はマイクロコンピュータ、ＭＥＭ１は記憶装置、ＡＭＰ１は増幅器である。ＭＥＭ１にはあらかじめ設定した発光量目標値が記憶されており、マイクロコンピュータＣＰＵ１はこの発光量目標値と、発光素子ＬＥＤ１からの光を受光素子ＰＤ１で検出した発光量現在値とを比較し、発光量目標値になるようＬＥＤ１に流す電流を演算し修正する。この動作を一定周期で繰り返す。
このように、従来の発光素子の発光量補正方法は、あらかじめ設定した発光量目標値に対してフィードバックループを形成し、ＬＥＤ１の発光量が常に発光量目標値になるよう制御していた。
【特許文献１】特開２０００−１９３４９２号
【発明の開示】
【発明が解決しようとする課題】
【０００３】
従来の発光量補正方法は、あらかじめ設定した発光量目標値に対してフィードバックループを形成し、ＬＥＤ１の発光量が常に発光量目標値になるよう制御しているが、フィードバックループの応答性を速くすると電源投入時は発光素子駆動回路が十分安定していないため、動作が不安定なったり、通常動作時にはノイズの影響を受けやすくなったりする等の問題があった。また、応答性を遅くすると、発光素子駆動回路に電源を投入した後、目標の発光量になるまでに時間がかかるという問題があった。
本発明はこのような問題点に鑑みてなされたものであり、電源投入後、すばやく目標の発光量となり、通常動作時においても安定でノイズに強い発光素子駆動回路およびその発光量補正方法を提供することを目的とする。
【課題を解決するための手段】
【０００４】
上記問題を解決するため、請求項１記載の発明は、電流を流すことによって発光する発光素子と、この発光素子の光を受光する受光素子と、この受光素子から出力される信号を増幅する増幅器と、この増幅器にて増幅された信号に基づき前記発光素子への発光指令量を演算するとともにこの発光指令量を出力するマイクロコンピュータと、発光量目標値を記憶する記憶装置とにより構成される発光素子駆動回路において、前記マイクロコンピュータは、電源投入時の指令量演算部と、通常動作時の指令量演算部と、演算手段切り替え部とを備えたものである。
また、請求項２記載の発明は、前記発光指令量を電源投入時と通常動作時でそれぞれ個別のアルゴリズムで演算するものである。
また、請求項３記載の発明は、電源投入時は、初回の発光指令量として、十分小さい仮の発光指令量を出力し、２回目以降は前回の発光指令量に対応する発光量現在値から前記発光素子駆動回路の特性を推定し、この推定された前記発光素子駆動回路の特性と前記発光量目標値から発光指令量を演算し、出力する動作を一定回数繰り返すことにより前記発光指令量を生成することを特徴とするものである。
また、請求項４記載の発明は、通常動作時は、前記電源投入時の最終回に生成された発光指令量を初回の発光指令量とし、２回目以降は、発光量目標値と発光量現在値の差から発光量誤差を演算し、この発光量誤差にある係数を掛けた値と、前回の発光指令量にある係数を掛けた値とを加えてこの回の発光指令量生成する動作を一定周期で繰り返すことより、前記発光指令量を生成することを特徴とするものである。
【発明の効果】
【０００５】
請求項１および請求項２に記載の発明によると、電源投入時と通常動作時でそれぞれ個別のアルゴリズムで演算するので、電源投入時は応答性を重視した、通常動作時は安定性を重視した演算アルゴリズムを適用することができる。
請求項３に記載の発明によると電源投入時に仮の発光指令量に対する発光量現在値から発光素子駆動回路の特性を推定するので、周囲温度の影響等により発光素子駆動回路の特性が変化しても過大な発光指令量を出力することが無く、また推定した発光素子駆動回路の特性と発光量目標値から単純なアルゴリズムで発光指令量を補正するので短時間で目標の発光指令量が得られる。
請求項４に記載の発明によると、通常動作時は、フィルタにより応答性を抑えた演算アルゴリズムを構成できるので、安定でノイズに強い発光素子駆動回路が実現できる。
【発明を実施するための最良の形態】
【０００６】
以下、本発明の実施の形態について図を参照して説明する。
【実施例１】
【０００７】
図１は、本発明の発光素子駆動回路の回路構成を示すブロック図である。図１において、ＭＥＭ１は記憶装置であり、発光量目標値が記憶されており、その出力はマイクロコンピュータＣＰＵ１の入力ポートＩＮ１に接続されている。マイクロコンピュータＣＰＵ１は、電源投入時の指令量演算部１０１と、通常動作時の指令量演算部１０２と、切り換え部１０３から構成され、電源投入時は電源投入時の指令量演算部１０１で、通常動作時は通常動作時の指令量演算部１０２で演算された発光指令量が切り換え部１０３を通して出力ポートＯＵＴ１から出力される。ＬＥＤ１は発光素子で、アノード側はマイクロコンピュータＣＰＵ１の出力ポートＯＵＴ１に、カソード側は抵抗Ｒ１１を介して基準電位に接続されている。ＰＤ１は受光素子で、カソード側は直流電源印加点Ｖｃｃ１に、アノード側は抵抗Ｒ１２を介して基準電位に接続されている。発光素子ＬＥＤ１と受光素子ＰＤ１は一対に配置され、マイクロコンピュータＣＰＵ１の出力ポートＯＵＴ１から出力された発光指令量によって、発光素子ＬＥＤ１に電流が流れ、この電流による光が受光素子ＰＤ１で検出される。検出された信号は受光素子ＰＤ１と抵抗Ｒ１２の接続点から取り出され、増幅器ＡＭＰ１で増幅した後、マイクロコンピュータＣＰＵ１の入力ポートＩＮ２を通してＣＰＵ１に取り込まれる。
【０００８】
図２のフローチャートを使って電源投入時の動作を説明する。まず、ステップ１で十分小さい仮の発光指令量ｃ１を初回の発光指令量としてマイクロコンピュータＣＰＵ１の出力ポートにセットし、ステップ２で発光素子のＬＥＤ１が安定するまで１０ｍｓの時間を置いた後、ステップ３でこの発光指令量に対する受光素子ＰＤ１で検出された発光量現在値ｄ１をＣＰＵ１に取り込む。なお、ステップ２の待ち時間については、本実施例では１０ｍｓとしたが、この待ち時間は回路の応答性に応じて設定され、必ずしも１０ｍｓとは限らない。ステップ４で発光素子駆動回路の特性を（ｄ１／ｃ１）の演算により推定するとともに、記憶装置ＭＥＭ１から読み出した発光量目標値Ｅを推定した発光素子駆動回路の特性（ｄ１／ｃ１）で割ることにより、すなわち、ｃｎ＝Ｅ・（ｃ(n-1)／ｄ(n-1)）で演算により、２回目の発光指令量ｃ２を得る。ただし、添字のｎおよびｎ−１は、ステップ２からステップ６の処理を繰り返し行うが、ｎ回目およびｎ−１回目の処理における値であることを表す。次に、ステップ５で過大な発光指令量を与えないようリミット処理を行い、ステップ６で発光指令量ｃ２をＣＰＵ１の出力ポートにセットする。ステップ７でステップ２からステップ６までの処理を所定の回数実施したかをチェックし、所定回数に達していなければステップ２にもどる。所定回数に達していれば通常動作時の処理へ移る。このようにして、短時間で効率よく記憶装置ＭＥＭ１に記憶されている目標の発光量を得る。
【０００９】
図３のフローチャートを使って通常動作時の動作を説明する。通常動作時は周囲温度の変化に対する影響等のゆっくりとした変化に対して発光指令量を補正すればよい。ステップ１１で電源投入時の処理の最後にセットされた発光指令量に対する発光量現在値ｄ１をＣＰＵ１に取り込む。ステップ１２で発光量誤差ｘ２を発光量目標値Ｅと発光量現在値の差からｘｎ＝Ｅ−ｄｎで演算する。添字のｎは、ステップ１１からステップ１５の処理を繰り返し行うが、ｎ回目の処理における値であることを表す。ステップ１３で発光量誤差にある係数を掛けた値（１−ａ）・ｘｎと、前回の発光指令量にある係数を掛けた値（ａ・ｙｎ-1）とを加えることにより、すなわち（１）式の演算により発光指令量ｙ２を生成している。
【００１０】
ｙｎ＝ａ・ｙｎ-1＋（１−ａ）・ｘｎ        （１）
ただし、
ｙｎ：ｎ回目の処理における発光指令量
ｙｎ-1：（ｎ−１）回目の処理における発光指令量
ａ  ：  定数
【００１１】
ステップ１４でリミット処理を行い、ステップ１５で発光指令量ｙ２をＣＰＵ１の出力ポートにセットした後、再度ステップ１１に戻る。
（１）式のａは、ａの値によって応答の速さを変えることができるフィルタの役目を果たす。ａを小さくすると誤差に対して速い修正を行い、ａを大きくすると時間をかけてゆっくりと誤差を修正する。本発明を適用する装置が要求する特性に応じて、また、本発明の回路を構成する素子の特性に応じて、適切な値を設定できる。
【００１２】
このように、通常動作時は発光量目標値と発光量現在値の差にある係数を掛けた値に、前回の発光指令量にある係数を掛けた値を加えてその回の発光指令量生成するステップ１１からステップ１５までの動作を一定周期で繰り返し行うことにより、安定でノイズに強い発光素子の発光量補正が実現できる。
【図面の簡単な説明】
【００１３】
【図１】本発明の発光素子の発光量補正方法の回路構成を示すブロック図
【図２】本発明の電源投入時の動作を示すフローチャート
【図３】本発明の通常動作時の指令量演算部の構成を示すブロック図
【図４】従来の発光素子の発光量補正方法の回路構成を示すブロック図
【符号の説明】
【００１４】
１０１    電源投入時の指令量演算部
１０２    通常動作時の指令量演算部
１０３    切り換え部
ＭＥＭ１  記憶装置  
ＣＰＵ１  マイクロコンピュータ
ＩＮ１    入力ポート
ＯＵＴ１  出力ポート
ＬＥＤ１  発光素子
ＰＤ１    受光素子
Ｒ１１    抵抗
Ｒ１２    抵抗
Ｖｃｃ１  直流電源印加点
ＡＭＰ１  増幅器
【図１】
2005091138.tif 000003
【図２】
2005091138.tif 000004
【図３】
2005091138.tif 000005
【図４】
2005091138.tif 000006