(57)【特許請求の範囲】
【請求項１】
閾値電流よりも大きな駆動電流が供給されるときに発光し且つ前記駆動電流の大きさに応じて発光量が変化する発光素子の駆動方法であって、
前記発光素子を、Ｎ通り（Ｎは３以上の整数）の発光量で発光させるために必要な駆動電流とそのときの発光量との対応を検出するステップと、
前記Ｎ通りの駆動電流とこれに対応する発光量との対応から、Ｍ通り（Ｍは前記Ｎより小さい２以上の整数）の一次近似式を算出するステップと、
前記Ｍ通りの一次近似式から前記発光量が零となるときの駆動電流を零駆動電流として演算し、Ｍ通りの前記零駆動電流の平均値を推定閾値電流として演算するステップと、
検出した前記Ｎ通りの駆動電流のうち所定の駆動電流から前記推定閾値電流を減算した値を発光電流とし、減算により得た前記発光電流に任意の係数を乗算することで所望の発光量を得るために必要な発光電流を演算し、演算した発光電流と前記推定閾値電流との和を、前記所望の発光量を得るための駆動電流として前記発光素子に供給するステップと、を備えることを特徴とする発光素子駆動方法。
【請求項２】
前記Ｎ通りの発光量は予め設定され、
前記Ｎ通りの駆動電流とこれに対応する発光量との対応のうちの２通りから得られる複数の一次近似式のうち、前記Ｍ通りの一次近似式から得られる前記推定閾値電流と前記発光素子の予め予測された閾値電流との差がより小さくなるときの前記一次近似式の組み合わせを予め検出しこれを閾値電流演算用の組み合わせとして設定しておき、
前記一次近似式を算出するステップでは、
検出された前記駆動電流と前記発光量との対応のうち、前記閾値電流演算用の組み合わせに属する前記一次近似式の演算に必要な前記対応を用いて、前記閾値電流演算用の組み合わせに属する複数の前記一次近似式を演算することを特徴とする請求項１記載の発光素子駆動方法。
【請求項３】
前記推定閾値電流と前記発光素子の予め予測された閾値電流との差を抑制するための補正演算を予め設定しておき、
前記推定閾値電流を演算するステップでは、前記零駆動電流の平均値に対して前記補正演算を行った値を前記推定閾値電流とすることを特徴とする請求項１または請求項２記載の発光素子駆動方法。
【請求項４】
前記補正演算は、前記零駆動電流の平均値を予め設定した補正値で割り算する処理であることを特徴とする請求項３記載の発光素子駆動方法。
【請求項５】
前記補正演算は、前記零駆動電流の平均値から予め設定した補正値を減算する処理であることを特徴とする請求項３記載の発光素子駆動方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、半導体レーザや発光ダイオードなどの発光素子の駆動方法に関する。
【背景技術】
【０００２】
半導体レーザや発光ダイオードなどの発光素子は、駆動電流が閾値電流以下では発光しない。そのため、発光素子に、閾値電流相当のバイアス電流を流し、このバイアス電流以上の範囲で駆動電流を調整することによって所望の発光量となるように調整している。
この調整方法として、例えば、発光素子に２通りの駆動電流を供給し、２通りの駆動電流と、この２通りの駆動電流を供給したときの発光素子の実際の発光量との関係から発光素子自体の特性である閾値電流を算出し、この算出した閾値電流を利用して、発光素子を任意の発光量で発光させる方法が提案されている。つまり、閾値電流は、固定ではなく、温度環境等によって変化するため、現時点での閾値電流を推定し、推定した閾値電流を用いて閾値電流相当のバイアス電流を供給して発光素子を駆動制御するようにしている。この従来の発光素子の駆動方法を、図６から図１１を伴って説明する。
【０００３】
図６は、発光素子駆動装置の概略構成を示すブロック図である。
この発光素子駆動装置は、比較器１１と、駆動値制御部１２と、スイッチ１３と、駆動部１４と、発光素子１５と、光学ピックアップ１６と、メモリ１７と、演算部１８と、を備える。
前記比較器１１は、発光素子１５の目標とする発光量である基準値Ｋｍと、光学ピックアップ１６で受光した受光量Ｋ１６、すなわち、発光素子１５の実際の発光量とを比較しその差分信号Ｋ１１を出力する。
【０００４】
駆動値制御部１２は、比較器１１からの差分信号Ｋ１１に基づき基準値Ｋｍと受光量Ｋ１６とを一致させるための、駆動部１４に対する制御値Ｋ１２を生成しこれを出力する。すなわち、受光量Ｋ１６が基準値Ｋｍに満たない場合は駆動部１４が駆動電流Ｋ１４を大きくして発光素子１５の発光量を強める様に制御値Ｋ１２を制御し、受光量Ｋ１６が基準値Ｋｍを超える場合は駆動部１４が駆動電流Ｋ１４を小さくして発光素子１５の発光量を弱める様に制御値Ｋ１２を制御する。また、基準値Ｋｍと受光量Ｋ１６とが平衡するとき、このときの制御値Ｋ１２を基準値Ｋｍと対応付けてメモリ１７に記憶する。
【０００５】
スイッチ１３は、駆動値制御部１２からの制御値Ｋ１２と演算部１８からの制御値Ｋ１８との何れかを選択し、これを駆動部１４に出力する。スイッチ１３は図示しない上位装置により制御され、発光素子１５の発光量の自動光量調整制御（以下、ＡＰＣ処理ともいう。）を行うときには制御値Ｋ１２を選択する。発光素子１５を所望の発光量で発光させるときには制御値Ｋ１８を選択する。
【０００６】
駆動部１４は、駆動値制御部１２からの制御値Ｋ１２または演算部１８の制御値Ｋ１８で指定された駆動電流を発光素子１５に供給する。
発光素子１５は、例えば、半導体レーザや発光ダイオードなどで構成され、供給される駆動電流に応じた光量で発光する。
光学ピックアップ１６は、発光素子１５の発光量を受光し、これを受光量Ｋ１６として比較器１１に出力する。
【０００７】
演算部１８は、メモリ１７に記憶されている、ＡＰＣ処理により求められた制御値Ｋ１２およびこれに対応する基準値Ｋｍをもとに発光素子１５の閾値電流を推定し、この推定した閾値電流を用いて発光素子１５に任意の発光量での発光を促すための制御値Ｋ１８を生成する。
つまり、図６の発光素子駆動装置は帰還回路を構成し、受光量Ｋ１６と基準値Ｋｍとが釣り合うように発光素子１５への駆動電流Ｋ１４を自動調整して前記発光素子１５の発光量の光量調整を行う。
【０００８】
また、発光素子駆動装置は、メモリ１７に記憶されＡＰＣ処理によって得られた制御値Ｋ１２およびこれに対応する基準値Ｋｍをもとに発光素子１５を任意の発光量で発光させる時は、演算部１８が出力する制御値Ｋ１８をスイッチ１３で選択する。そして、メモリ１７の記憶値、すなわち、前記ＡＰＣ処理を実行することにより検出された、基準値Ｋｍと受光量Ｋ１６とが平衡するときの制御値Ｋ１２をもとに、演算部１８が演算を行って制御値Ｋ１８を出力する。
【０００９】
図７は、発光素子１５に２通りの駆動電流を流してＡＰＣ処理を実施し、前記発光素子１５の発光量から発光素子１５自体の特性である閾値電流を算出する処理手順（以後、２点ＡＰＣ処理ともいう。）の一例を表すフローチャートである。
この２点ＡＰＣ処理では、まず、ステップＳ１０１で、任意に設定した第１の発光量である基準値ａを基準値Ｋｍとして設定する。ついで、ステップＳ１０２に移行して上述の手順でＡＰＣ処理を実行し、光学ピックアップ１６で検出された受光量Ｋ１６と基準値Ｋｍ（＝ａ）とが平衡となるときの制御値Ｋ１２を検出し、基準値ａと制御値Ｋ１２とを対応付けてメモリ１７に記憶する（ステップＳ１０３）。なおＡＰＣ処理の詳細は後述する。
【００１０】
ついで、ステップＳ１０４に移行し、任意の第２の発光量である基準値ｂを基準値Ｋｍとして設定し、続いてステップＳ１０５に移行して光学ピックアップ１６で検出された受光量Ｋ１６と基準値Ｋｍ（＝ｂ）とが平衡となるようにＡＰＣ処理を実行し、これらが平衡となるときの制御値Ｋ１２と基準値ｂとを対応付けてメモリ１７に記憶する（ステップＳ１０６）。基準値ｂは基準値ａよりも小さな値である。
【００１１】
次いでステップＳ１０７に移行し後述の閾値電流演算処理を行い、図６中の発光素子１５の現時点における閾値電流Ｉthを推定する。以上により、２点ＡＰＣ処理が終了する。
図８は、図７のステップＳ１０２及びステップＳ１０５で実行されるＡＰＣ処理の処理手順の一例を示すフローチャートである。この図８のフローチャートは、図６の発光素子駆動装置において、スイッチ１３が駆動値制御部１２の出力する制御値Ｋ１２を選択している状態におけるＡＰＣ処理の動作そのものを示している。
【００１２】
ＡＰＣ処理では、まず、ステップＳ１１１で、光学ピックアップ１６で検出された受光量Ｋ１６と基準値Ｋｍとが等しいかを判断し、等しければそのまま処理を終了する。
一方、光学ピックアップ１６で検出された受光量Ｋ１６と基準値Ｋｍとが等しくなければ、ステップＳ１１２に移行し受光量Ｋ１６が基準値Ｋｍよりも大きいか（Ｋ１６＞Ｋｍ）を判断する。そして、受光量Ｋ１６が基準値Ｋｍよりも大きいときにはステップＳ１１３に移行して駆動値制御部１２では、発光素子１５への駆動電流Ｋ１４を減少させる制御値Ｋ１２を生成しこれを出力する。また、受光量Ｋ１６が基準値Ｋｍよりも小さいときにはステップＳ１１４に移行し、駆動値制御部１２では発光素子１５への駆動電流Ｋ１４を増加させる制御値Ｋ１２を生成しこれを出力する。
【００１３】
以上により、受光量Ｋ１６が基準値Ｋｍよりも大きいときには制御値Ｋ１２を減少させ、発光素子１５への駆動電流Ｋ１４を減少させることにより発光素子１５の発光量を低下させて受光量Ｋ１６が基準値Ｋｍと一致するように制御し、逆に、受光量Ｋ１６が基準値Ｋｍよりも小さいときには制御値Ｋ１２を増加させ、発光素子１５への駆動電流Ｋ１４を増加することにより発光素子１５の発光量を増加させ、受光量Ｋ１６が基準値Ｋｍと一致するように制御することにより、発光素子１５の発光量が基準値Ｋｍと一致するように制御する。つまり受光量Ｋ１６と基準値Ｋｍとが平衡するように駆動電流を自動で調整する。すなわち、スイッチ１３で駆動値制御部１２からの制御値Ｋ１２を選択してなる回路は、発光素子１５の発光量の光量調整を自動的に行うＡＰＣ制御回路を構成している。
【００１４】
次に、図７のステップＳ１０７での閾値電流演算処理について説明する。
前記発光素子１５として、例えば半導体レーザや発光ダイオードなどの半導体発光素子を用いた場合、駆動電流（Ｉ）と発光量（Ｐ）との関係は図９の実線Ｌ０で表される特性を持つことが知られており、さらに、この実線Ｌ０で表される特性において、閾値電流は固定ではなく、温度環境等の要因によって変化することが知られている。
【００１５】
なお、図９において、横軸は発光素子１５の駆動電流Ｉ、縦軸は発光素子１５の発光量Ｐである。以後、この実線Ｌ０を駆動電流−発光量特性線という
図９に示すように、発光素子１５は、閾値電流Ｉth以下では発光せず、駆動電流が閾値電流Ｉthよりも大きいときに発光する。そして、駆動電流が閾値電流Ｉthよりも大きいときには、駆動電流が大きいときほど発光量は大きくなり、且つ、駆動電流が大きいときほど駆動電流の変化に対する発光量の変化量がより大きくなる。
なお、以下、駆動電流から閾値電流Ｉthを差し引いた電流、つまり発光素子１５が発光する領域に流す電流を発光電流Ｉonという言葉で表現する。
【００１６】
ここで、図７のステップＳ１０２およびステップＳ１０５でのＡＰＣ処理の実行により、基準値Ｋｍ（＝ａ）および基準値Ｋｍ（＝ｂ）のそれぞれに対応する制御値Ｋ１２が得られたとする。この基準値Ｋｍ（＝ａ）に対応する発光量をＰａ、このときの制御値Ｋ１２に対応する駆動電流をＩａとし、同様に、基準値Ｋｍ（＝ｂ）に対応する発光量をＰｂ、このときの制御値Ｋ１２に対応する駆動電流をＩｂとする。
【００１７】
これはすなわち、図７のステップ１０１で設定された基準値ａと光学ピックアップ１６の受光量Ｋ１６とがＡＰＣ処理の実行によって平衡することが検出されたときの発光素子１５の発光量がＰａ、発光素子１５を発光量Ｐａで発光させるときの駆動部１４が出力する駆動電流Ｋ１４がＩａであることを表し、同様に図７のステップ１０４で設定された基準値ｂと光学ピックアップ１６の受光量Ｋ１６がＡＰＣ処理によって平衡することが検出されたときの発光素子１５の発光量がＰｂ、発光素子１５を発光量Ｐｂで発光させるときの駆動部１４が出力する駆動電流Ｋ１４がＩｂ、であることを表す。
【００１８】
図９に示す、横軸を発光素子１５の駆動電流Ｉ、縦軸を発光素子１５の発光量Ｐとする駆動電流−発光量座標において、基準値Ｋｍ（＝ａ）に対応する発光量Ｐａおよび駆動電流Ｉａで特定される点をＡ点とし、同様に、基準値Ｋｍ（＝ｂ）に対応する発光量Ｐｂおよび駆動電流Ｉｂで特定される点をＢ点とする。なお、以後、基準値Ｋｍに対応する発光量が得られたときの駆動電流と発光量とで特定される、駆動電流−発光量座標上の点を平衡点という。
【００１９】
前述のように、駆動電流と発光量とは駆動電流−発光量特性線Ｌ０の関係を有し、前記基準値ａおよび基準値ｂに対応する平衡点Ａ（Ｉａ、Ｐａ）およびＢ（Ｉｂ、Ｐｂ）は、前記駆動電流−発光量特性線Ｌ０上の点であるとみなすことができる。そのため、平衡点ＡおよびＢの位置座標に基づく２点の一次近似を行うことによって、駆動電流が閾値電流よりも大きい領域における駆動電流−発光量特性は、図９中に示す破線Ｌ５１で表されると想定することができる。
【００２０】
ここで、図６のメモリ１７には、駆動部１４に駆動電流Ｉａを出力させる制御値Ｋ１２と、駆動部１４に駆動電流Ｉｂを出力させる制御値Ｋ１２とが記憶されている。演算部１８では、これら記憶値をもとに閾値電流Ｉth′と発光電流Ｉon′とを算出すべく次の演算を行う。
すなわち、図９中の破線Ｌ５１において、発光量が零となるときの駆動電流が発光素子１５の閾値電流であると想定することができる。この発光量が零となるときの駆動電流、すなわち破線Ｌ５１から想定される閾値電流Ｉth′は、次式（１）で求めることができる。
Ｉth′＝（Ｉｂ×Ｐａ−Ｉａ×Ｐｂ）／（Ｐｂ−Ｐａ）    ……（１）
【００２１】
（１）式の演算は図７のステップ１０７の閾値電流演算処理で行なわれ、ステップ１０２及びステップ１０５のＡＰＣ処理の実行により得られた平衡点ＡおよびＢによる２点の一次近似によって閾値電流Ｉth′が算出される。
また、図９において、平衡点Ａの発光量を発光素子１５による発光量の目標値とした場合、この目標の発光量を得るために必要な発光電流Ｉon′は次式（２）で表すことができる。
Ｉon′＝Ｉａ−Ｉth′    ……（２）
そして、（１）式で求められた閾値電流Ｉth′と（２）式で求められた発光電流Ｉon′とを加算し、これを発光素子１５の駆動電流とすることにより、任意の発光量で発光素子１５を発光させることができる。
【００２２】
以上説明したように、閾値電流Ｉth′よりも大きい領域における駆動電流と発光量とが比例関係にあるとして一次近似し、この比例関係を利用してＡＰＣ処理を用いて閾値電流と発光電流とを算出する方法が、例えば、特許文献１に記載されている。
しかしながら、発光素子１５の真の閾値電流（以下、実閾値電流Ｉthという）は、図９の駆動電流−発光量特性線Ｌ０において発光量が零となるときの駆動電流であって、前記（１）式で求められる２点の一次近似で想定される発光素子１５の閾値電流（以下、推定閾値電流という）Ｉth′とは値が異なる。このような実閾値電流Ｉthと推定閾値電流Ｉth′との差異は、高精度が要求される発光素子駆動装置の場合には問題となる。
つまり、Ａ点で特定される発光量Ｐａを発光素子１５により得るために必要な発光電流Ｉon′は、前記（２）式から演算することができる。
【００２３】
ここで、補正の目的などで発光量Ｐａを得るために必要な発光電流Ｉon′に任意の係数ｋ（ここでは、ｋ＜１）を乗算し、この乗算の結果得られる発光電流Ｉon_c′に対応する発光量Ｐｃ′を発光素子１５の発光量の目標値とした場合、この発光量Ｐｃ′を得るために必要な発光電流Ｉon_c′は、次式（３）で表すことができる。なお、図１０に示すように、発光電流Ｉon_c′に対応する発光量Ｐｃ′を得られる平衡点をＣ′点（駆動電流Ｉｃ′、発光量Ｐｃ′）とする。
Ｉon_c′＝ｋ×（Ｉａ−Ｉth′）    ……（３）
【００２４】
ここで、推定閾値電流Ｉth′と発光電流Ｉon_c′とから求められる、平衡点Ｃ′の発光量Ｐｃ′を得るために必要な駆動電流は、図６の発光素子駆動装置において、ＡＰＣ処理により得られメモリ１７に記憶されている平衡時の制御値Ｋ１２をもとに、発光素子１５を任意の発光量で発光させるときに相当し、すなわち、スイッチ１３により演算部１８が出力する制御値Ｋ１８を選択し、ＡＰＣ処理により得られたメモリ１７に記憶されている平衡時の制御値Ｋ１２をもとに、演算部１８が演算を行って制御値Ｋ１８を出力する動作に相当する。
【００２５】
一方、図１０のＡ点の発光量Ｐａを、発光素子１５の発光量の目標値とした場合、実閾値電流Ｉthを用いて演算される発光素子１５の発光電流Ｉonは、次式（４）で表される。
Ｉon＝Ｉａ−Ｉth    ……（４）
前記（３）式と同様に、補正の目的などで、発光量Ｐａを得るために必要な発光電流Ｉonに任意の係数ｋを乗算し、この乗算の結果得られる発光電流Ｉon_cに対応する発光量Ｐｃを発光素子１５の発光量の目標値とした場合、この発光量Ｐｃを得るために必要な、実閾値電流Ｉthに基づく発光電流Ｉon_cは、次式（５）で表すことができる。なお、図１０において、この発光電流Ｉon_cに対応する発光量Ｐｃを得られる平衡点をＣ点（駆動電流Ｉｃ、発光量Ｐｃ）とする。
Ｉon_c＝ｋ×（Ｉａ−Ｉth）    ……（５）
【００２６】
平衡点Ａの駆動電流Ｉａおよび発光量Ｐａを基準として平衡点Ａの発光量Ｐａのｋ倍の発光量を得るために必要な、実閾値電流Ｉthに基づく発光素子１５の発光電流Ｉon_c（平衡点Ｃ）と、同様に平衡点Ａの駆動電流Ｉａおよび発光量Ｐａを基準として平衡点Ａの発光量Ｐａのｋ倍の発光量を得るために必要な、推定閾値電流Ｉth′に基づく発光素子１５の発光電流Ｉon_c′（平衡点Ｃ′）との差異ΔＩon_cは次式（６）で表される。
ΔＩon_c′＝Ｉon_c−Ｉon_c′＝ｋ×（Ｉth′−Ｉth）    ……（６）
【００２７】
この差異ΔＩon_c′を図１０に示す。
図１０において、Ｃ′点は、（１）式で求められた推定閾値電流Ｉth′と（３）式で求められた発光量Ｐｃ′を発光素子１５の発光量の目標値とした場合に必要な推定閾値電流Ｉth′に基づく発光電流Ｉon_ｃ′とを加算して駆動電流を得て、この駆動電流で発光素子１５を駆動した場合の発光量Ｐｃ′を表している。
図１０からわかるように、実閾値電流ＩthにもとづくＣ点（駆動電流Ｉｃ）の発光量Ｐｃと、推定閾値電流Ｉth′にもとづくＣ′点の発光量Ｐｃ′とはΔＰｃ′の差がある。
【００２８】
つまり、平衡点Ａの駆動電流Ｉａおよび発光量Ｐａを基準として、発光量Ｐａのｋ倍の発光量で発光素子１５を発光させるよう発光制御を行ったとしても、実閾値電流Ｉthに基づく発光制御を行う場合と、推定閾値電流Ｉth′に基づく発光制御を行う場合とで、発光量にΔＰｃ′の差が生じることになる。
そして、駆動電流が閾値電流よりも大きい発光領域における傾き、つまり図１０の駆動電流−発光量特性線Ｌ０において、発光量を駆動電流で微分した値δＰ／δＩが大きいときほど前記差分値ΔＰｃ′は大きくなり、本来目標とした発光量とはかけ離れてしまう。つまり、前記（６）式は、発光素子１５の発光量を高精度に制御するには発光素子１５の閾値電流を高精度で算出して発光電流を制御する必要があることを示している。
【００２９】
ここで、例えば、図９において、より低い発光量でＡＰＣ処理が実行された平衡点Ｂ（駆動電流Ｉｂ、発光量Ｐｂ）の駆動電流Ｉｂを下げることによって、（１）式で算出される推定閾値電流Ｉth′を発光素子１５の実閾値電流Ｉthに近づけることはできる。
しかしながら、発光素子１５の実閾値電流Ｉth近傍の発光量は、発光素子１５が発光する限界の領域である。このため、平衡点Ｂ（駆動電流Ｉｂ、発光量Ｐｂ）の駆動電流Ｉｂおよび発光量Ｐｂに基づき演算される推定閾値電流Ｉth′を発光素子１５の実閾値電流Ｉthに近づける目的で、駆動電流Ｉｂが、発光素子１５が発光する限界である実閾値電流Ｉth近傍となるように基準値Ｋｍ、つまり図７のステップＳ１０４で基準値ｂを設定してＡＰＣ処理を実行すると、駆動部１４が基準値ｂ相当の発光量を得るための駆動電流Ｉｂを出力して発光素子１５に発光を促しても、駆動電流Ｉｂは発光するぎりぎりの電流値であるため、発光量Ｐｂが安定せず、つまりは安定したＡＰＣ処理を行うことができない可能性がある。
【００３０】
また、閾値電流近傍の発光量が不安定な別の原因として、発光素子１５は閾値電流Ｉthに温度依存性を持つため発光素子１５は温度特性を持つことになり、環境温度によって、または発光素子１５自身の発光による発熱などによって、発光素子１５の閾値電流Ｉthが変動することも挙げられる。このように温度環境によって閾値電流Ｉthが変動する場合、閾値電流近傍の発光量が不安定であるので、基準値Ｋｍを閾値電流相当近傍の値に設定してＡＰＣ処理を実行したとしても、発光素子１５が発光しない可能性があり、安定した発光量が得られない可能性がある。そのため、このように発光量が不安定となることを考慮して基準値Ｋｍを設定しなければならず、基準値Ｋｍから得られる特性線Ｌ５１の零駆動電流は、実閾値電流近傍よりもある程度離れた位置にならざるを得ない。
【００３１】
図１１は、図９中のＢ点（駆動電流Ｉｂ、発光量Ｐｂ）を発光素子１５の実閾値電流Ｉthに近づけた場合を表したものであって、近づけた後のＢ点を、Ｂ′点（駆動電流Ｉｂ′、発光量Ｐｂ_mean′）で示している。また、図１１において、発光素子１５の駆動電流−発光量特性線Ｌ０に対し、実閾値電流Ｉth近傍における発光素子１５の特性を細線Ｌ６１およびＬ６２で表す。また、前述の温度環境などにより生じる実閾値電流Ｉth近傍における不安定な発光量をΔＰｂ′で表している。
【００３２】
図１１は、前記Ｂ点が実閾値電流Ｉth近傍の位置となるように、比較器１１への基準値Ｋｍ、つまりこの場合、図７のステップＳ１０４の基準値ｂを設定し、Ｂ′点（駆動電流Ｉｂ′、発光量Ｐｂ_mean′）をＡＰＣ処理により検出する場合を表す。上述の温度環境などの原因により、ＡＰＣ処理実行時に不安定な発光量ΔＰｂ′が生じ、その結果、Ｂ′点の駆動電流Ｉｂ′および発光量Ｐｂ_mean′に基づき演算される推定閾値電流Ｉth″が、不安定な発光量ΔＰｂ′による影響を受け、Ｉth_mean′を基準として±ΔＩth″相当のばらつきが生じることを示している。
【００３３】
図１１に示すばらつき±ΔＩth″が発生するということは、前記（１）式のＢ点（駆動電流Ｉｂ、発光量Ｐｂ）に対応する項に、ＡＰＣ処理実行時の不安定量ΔＰｂ′を含めてＢ′点（駆動電流Ｉｂ′、発光量Ｐｂ_mean′±ΔＰｂ′）とし、これに基づき、推定閾値電流Ｉth″を求めることにより、明らかである。すなわち、Ｂ′点の駆動電流Ｉｂ′および発光量Ｐｂ_mean′に基づき演算される推定閾値電流Ｉth″は次式（７）式で表すことができ、不安定な発光量ΔＰｂ′による推定閾値電流Ｉth″のばらつきΔＩth″は次式（８）で表すことができる。なお、式（７）、（８）において、Ｐｂ_mean′は、Ｂ′点における発光量の中心値を示す。また、Ｉth_mean″は前記（１）式に、Ｐｂ_mean′を代入して演算される推定閾値電流を表している。
【００３４】
Ｉth″＝｛Ｉｂ×Ｐａ−Ｉａ×（Ｐｂ_mean′±ΔＰｂ′）｝／
｛（Ｐｂ_mean′±ΔＰｂ′）−Ｐａ｝
＝Ｉth_mean″±ΔＩth″    ……（７）
ΔＩth″＝｛Ｐａ×ΔＰｂ′×（Ｉｂ−Ｉａ）｝／
［｛（Ｐｂ_mean′±ΔＰｂ′）−Ｐａ｝×｛Ｐｂ_mean′−Ｐａ｝］
……（８）
【００３５】
以上のように、２点ＡＰＣ処理による、２点の一次近似による発光素子１５の閾値電流の算出方法では発光素子１５の特性を精度良く反映させることは難しく、また、精度を向上する目的で発光素子１５の閾値近傍でＡＰＣ処理を実行して発光量を特定することは、発光素子の発光量が微小であることおよび発光素子が温度特性を持つこと等の理由により発光量が不安定になってしまうために困難である。
そのため、精度向上の目的のために、閾値電流の検出に３点以上のバイアス電流を流して最小２乗法を用いて検出する方法（例えば、特許文献１参照）、或いは、最小２乗法の回帰を利用して発光素子の特性を演算する方法（例えば、特許文献２参照）等も開示されている。
【先行技術文献】
【特許文献】
【００３６】
【特許文献１】特開平７−１４７４４６号公報
【特許文献２】特開２００３−９１８５３号公報
【発明の概要】
【発明が解決しようとする課題】
【００３７】
上述のように、最小２乗法を用いた閾値電流の演算方法においては、演算が複雑になり、例えば集積回路などの回路で実現するには演算素子の増大と消費電流の増大が問題となる。
例えば、上記２点ＡＰＣ処理と同様に、発光素子に２通りの駆動電流を流し、前記駆動電流と前記発光素子の発光量とから発光素子自体の特性である閾値電流を算出する。具体的には、図７のステップＳ１０２で実行されるＡＰＣ処理によって図９中の平衡点Ａ（駆動電流Ｉａ、発光量Ｐａ）、図７のステップＳ１０５で実行されるＡＰＣ処理によって図９中の平衡点Ｂ（駆動電流Ｉｂ、発光量Ｐｂ）が得られたとすると、前述の特許文献１や特許文献２で開示されている最小２乗法を用いて発光素子の閾値電流を算出した場合、閾値電流Ｉthｍは、次式（９）で表される。
Ｉthｍ
＝（Ｉａ2×Ｐｂ＋Ｉｂ2×Ｐａ−Ｉａ×Ｉｂ×Ｐａ−Ｉａ×Ｉｂ×Ｐｂ）／
（Ｉａ×Ｐａ＋Ｉｂ×Ｐｂ−Ｉａ×Ｐｂ−Ｉｂ×Ｐａ）
……（９）
【００３８】
つまり、（９）式は、被除数と除数とがそれぞれ４項を含むことになり、前述の単純な一次近似を用いた閾値算出式である（１）式と比較してかなり複雑な演算が必要となる。
また、ここでは、前記（９）式を一例として、ＡＰＣ処理によって得られた２つの平衡点を用いて最小２乗法によって閾値電流を算出する例を挙げているが、より精度をより向上させる目的で２点より多く、例えば３点、４点といったＡＰＣ処理により得た平衡点から閾値電流を算出する場合には（９）式よりさらに被除数及び除数に含まれる項が増え、演算がさらに複雑になる。
【００３９】
つまり、特許文献１または特許文献２で開示されている最小２乗法を用いて閾値電流を算出する方法は、前述の一次近似による閾値電流算出方法と比較して演算がかなり複雑であり、集積回路などの回路で実現するには演算素子の増大による回路規模の増大と消費電流の増大が問題となる。
そこで本発明は、複雑な演算をすることなく発光素子の閾値電流を高精度に算出して、発光素子の発光量を高精度に制御できる発光素子駆動方法を提供することを目的としている。
【課題を解決するための手段】
【００４０】
上記目的を達成するために、本発明の請求項１にかかる発行素子駆動方法は、閾値電流よりも大きな駆動電流が供給されるときに発光し且つ前記駆動電流の大きさに応じて発光量が変化する発光素子の駆動方法であって、前記発光素子を、Ｎ通り（Ｎは３以上の整数）の発光量で発光させるために必要な駆動電流とそのときの発光量との対応を検出するステップと、前記Ｎ通りの駆動電流とこれに対応する発光量との対応から、Ｍ通り（Ｍは前記Ｎより小さい２以上の整数）の一次近似式を算出するステップと、前記Ｍ通りの一次近似式から前記発光量が零となるときの駆動電流を零駆動電流として演算し、Ｍ通りの前記零駆動電流の平均値を推定閾値電流として演算するステップと、検出した前記Ｎ通りの駆動電流のうち所定の駆動電流から前記推定閾値電流を減算した値を発光電流とし、減算により得た前記発光電流に任意の係数を乗算することで所望の発光量を得るために必要な発光電流を演算し、演算した発光電流と前記推定閾値電流との和を、前記所望の発光量を得るための駆動電流として前記発光素子に供給するステップと、を備えることを特徴としている。
【００４１】
また、請求項２にかかる発光素子駆動方法は、前記Ｎ通りの発光量は予め設定され、前記Ｎ通りの駆動電流とこれに対応する発光量との対応のうちの２通りから得られる複数の一次近似式のうち、前記Ｍ通りの一次近似式から得られる前記推定閾値電流と前記発光素子の予め予測された閾値電流との差がより小さくなるときの前記一次近似式の組み合わせを予め検出しこれを閾値電流演算用の組み合わせとして設定しておき、前記一次近似式を算出するステップでは、検出された前記駆動電流と前記発光量との対応のうち、前記閾値電流演算用の組み合わせに属する前記一次近似式の演算に必要な前記対応を用いて、前記閾値電流演算用の組み合わせに属する複数の前記一次近似式を演算することを特徴としている。
【００４２】
さらに、請求項３にかかる発光素子駆動方法は、前記推定閾値電流と前記発光素子の予め予測された閾値電流との差を抑制するための補正演算を予め設定しておき、前記推定閾値電流を演算するステップでは、前記零駆動電流の平均値に対して前記補正演算を行った値を前記推定閾値電流とすることを特徴としている。
また、請求項４にかかる発光素子駆動方法は、前記補正演算は、前記零駆動電流の平均値を予め設定した補正値で割り算する処理であることを特徴としている。
また、請求項５にかかる発光素子駆動方法は、前記補正演算は、前記零駆動電流の平均値から予め設定した補正値を減算する処理であることを特徴としている。
【００４３】
ここで、駆動電流が真の閾値電流近傍の値であること、或いは、温度環境や自身の発熱などの影響等により、発光量が不安定となり駆動電流と発光量との対応が不安定となる場合があるため、このような不安定な対応に基づく一次近似式を用いて閾値電流を推定した場合、閾値電流が不安定成分の影響を受ける可能性がある。しかしながら、請求項１にかかる発光素子駆動方法では、Ｍ通りの一次近似式から演算した零駆動電流の平均値を、推定閾値電流としているため、零駆動電流に不安定成分が含まれる場合であってもその影響は１／Ｍとなる。このため、不安定成分が閾値電流に与える影響を抑制することができ、すなわちその分、推定閾値電流の精度向上を図ることが可能となる。
【００４４】
また、発光素子の駆動電流−発光量特性線に対する、一次近似式の設定位置によって、演算される零駆動電流と真の閾値電流との差が大きくなる可能性がある。しかしながら、請求項２に係る発光素子駆動方法では、零駆動電流の平均値から得られる閾値電流と真の閾値電流との差がより小さくなる一次近似式の組み合わせを予め設定し、この設定した一次近似式の演算に必要な、駆動電流とこれに対応する発光量との対応を予め設定している。そして、検出したＮ通りの発光量で発光させるために必要な駆動電流とそのときの発光量との対応のうち、設定された一次近似式の演算に必要な対応を用いて前記一次近似式を演算し、且つこれら設定されたＭ通りの一次近似式を用いて閾値電流を演算するため、発光素子の駆動電流−発光量特性線に対する一次近似式の設定位置によって生じる、零駆動電流の平均値に基づく閾値電流と真の閾値電流との差を抑制することができる。
【００４５】
さらに、請求項３に係る発光素子駆動方法では、発光素子の駆動電流−発光量特性線に対する一次近似式の設定位置によって生じる、零駆動電流の平均値に基づく閾値電流と真の閾値電流との差を抑制するための予め設定した補正演算を行っているため、この補正演算により、零駆動電流の平均値に基づく推定閾値電流と真の閾値電流との差を抑制することができる。特に、補正演算として、零駆動電流の平均値を予め設定した補正値で割り算したり、或いは零駆動電流の平均値から予め設定した補正値を減算したりすることによって単純な演算で容易に誤差の低減を図ることができる。
【発明の効果】
【００４６】
本発明によれば、Ｍ通りの一次近似式から演算した零駆動電流の平均値を、推定閾値電流としているため、温度環境や駆動電流が閾値電流近傍の値であることなどに起因して、検出された駆動電流と発光量との対応に不安点成分が含まれる場合であっても、閾値電流に与える不安定成分の影響を抑制することができる。つまり、閾値電流の検出精度を向上させることができるため、結果的に、発光素子の駆動制御をより高精度に行うことができる。
さらに、発光素子の駆動電流−発光量特性線に対する一次近似式の設定位置に起因する推定閾値電流と真の閾値電流との誤差を、この誤差を小さくすることの可能な一次近似式の設定位置を予め検出しておきこれに基づき一次近似式を演算すること、或いは、この誤差を抑制するために必要な補正演算を、零駆動電流の平均値に対して行うこと等により、さらに高精度な推定閾値電流を得ることができる。
【図面の簡単な説明】
【００４７】
【図１】本発明による発光素子駆動方法を適用した４点ＡＰＣ処理の処理手順の一例を示すフローチャートである。
【図２】第１の実施の形態における閾値電流演算処理の演算方法を説明するための説明図である。
【図３】第１の実施の形態による発光素子駆動方法を用いた場合の制御誤差を説明するための説明図である。
【図４】第２の実施の形態における閾値電流演算処理の演算方法を説明するための説明図である。
【図５】第３の実施の形態における閾値電流演算処理の演算方法を説明するための説明図である。
【図６】本発明による発光駆動方法を適用した発光素子駆動装置の機能構成を示すブロック図である。
【図７】従来の発光素子駆動方法を表す２点ＡＰＣ処理の処理手順の一例を示すフローチャートである。
【図８】図７のＡＰＣ処理の処理手順の一例を示すフローチャートである。
【図９】従来の閾値電流演算処理の演算方法を説明するための説明図である。
【図１０】従来の発光素子駆動方法を用いた場合の制御誤差を説明するための説明図である。
【図１１】温度環境等に起因する、駆動電流に対する発光素子の発光量のばらつきを説明するための説明図である。
【発明を実施するための形態】
【００４８】
以下、本発明の一実施の形態を、図面を参照して説明する。
まず、第１の実施の形態を説明する。
本発明を適用した発光素子駆動装置の構成は、図６に示す従来の発光素子駆動装置の構成と同様であるのでその詳細な説明は省略する。
すなわち、図６の発光素子駆動装置では、ＡＰＣ処理実行時には、スイッチ１３により駆動値制御部１２が出力する制御値Ｋ１２を選択し、光学ピックアップ１６が受光した受光量Ｋ１６と基準値Ｋｍとが釣り合うように、発光素子１５の駆動電流Ｋ１４を自動調整して、発光素子１５の光量調整を行う。そして、ＡＰＣ処理を実行することで検出される基準値Ｋｍと受光量Ｋ１６とが平衡する制御値Ｋ１２をメモリ１７に記憶する。
一方、発光素子１５を任意の発光量で発光させる時には、スイッチ１３により演算部１８からの制御値Ｋ１８を選択する。そして、メモリ１７に記憶されている、基準値Ｋｍと受光量Ｋ１６とが平衡するときの制御値Ｋ１２をもとに、演算部１８が演算を行って制御値Ｋ１８を出力する。
【００４９】
次に、第１の実施の形態における発光素子駆動方法の一例を、図１から図３を用いて説明する。
図１は、ＡＰＣ処理により、発光量とこれに対応する制御値Ｋ１２をＮ＝４通り求め、４つの平衡点を用いて閾値電流を推定する場合のＡＰＣ処理（以後、４点ＡＰＣ処理という。）の処理手順の一例を示すフローチャートである。なお、Ｎは、３以上の整数であり、ここでは、Ｎ＝４としている。
この４点ＡＰＣ処理では、図１に示すように、まず、ステップＳ１で、第１の基準値Ｋｍとして任意の基準値ａを設定し、ステップＳ２に移行してＡＰＣ処理を実行する。すなわち、光学ピックアップ１６からの受光量Ｋ１６が基準値ａと一致するように、制御値Ｋ１２を調整する。そして、受光量Ｋ１６と基準値ａとが平衡状態となったとき、この平衡状態における制御値Ｋ１２と基準値ａとを対応付けてメモリ１７に格納する（ステップＳ３）。
【００５０】
ついで、ステップＳ４に移行し、第２の基準値Ｋｍとして任意の基準値ｄを設定し、光学ピックアップ１６からの受光量Ｋ１６が基準値ｄと一致するようにＡＰＣ処理を実行し（ステップＳ５）、受光量Ｋ１６と基準値ｄとが平衡状態となったとき、この平衡状態における制御値Ｋ１２と基準値ｄとを対応付けてメモリ１７に格納する（ステップＳ６）。
同様に、ステップＳ７では、第３の基準値Ｋｍとして任意の基準値ｅを設定し、光学ピックアップ１６からの受光量Ｋ１６が基準値ｅと一致するようにＡＰＣ処理を実行し（ステップＳ８）、受光量Ｋ１６と基準値ｅとが平衡状態となったとき、この平衡状態における制御値Ｋ１２と基準値ｅとを対応付けてメモリ１７に格納する（ステップＳ９）。
【００５１】
さらに、ステップＳ１０では、第４の基準値Ｋｍとして任意の基準値ｆを設定し、光学ピックアップ１６からの受光量Ｋ１６が基準値ｆと一致するようにＡＰＣ処理を実行し（ステップＳ１１）、受光量Ｋ１６と基準値ｆとが平衡状態となったとき、この平衡状態における制御値Ｋ１２と基準値ｆとを対応付けてメモリ１７に格納する（ステップＳ１２）。
ついで、ステップＳ１３に移行し、後述の閾値電流演算処理を実行し、メモリ１７に記憶した４つの基準値Ｋｍとこれに対応する制御値Ｋ１２とから閾値電流を演算する。そして、処理を終了する。
【００５２】
なお、基準値ａ、基準値ｄ、基準値ｅ、基準値ｆは、基準値ａ＞基準値ｄ＞基準値ｅ＞基準値ｆを満足する値である。また、例えば、基準値ａは、発光素子１５に供給可能な駆動電流の範囲内において比較的大きな電流値相当に設定される。基準値ｆは、発光素子１５が発光可能な比較的小さな電流値相当に設定される。基準値ｄ、基準値ｅは、基準値ａと基準値ｄの差、基準値ｄと基準値ｅとの差、基準値ｅと基準値ｆとの差がそれぞれ略同等程度となるように設定される。
【００５３】
つまり、図２に示すように、これら基準値ａに対応する平衡点Ａが、発光素子１５への供給可能な駆動電流の比較的大きな位置となり、基準値ｆに対応する平衡点Ｆが、発光素子１５が発光可能な比較的小さな駆動電流となる位置となり、基準値ｄおよび基準値ｅに対応する平衡点ＤおよびＥが、平衡点Ａおよび平衡点Ｆとの間に配置され、且つ隣接する平衡点間の駆動電流の差が略同等程度となるように設定される。
なお、これら基準値はこれに限るものではなく任意に設定することができる。
【００５４】
また、図１のステップＳ２、ステップＳ５、ステップＳ８、ステップＳ１１で実行されるＡＰＣ処理は、図６の発光素子駆動装置において、スイッチ１３が駆動値制御部１２の出力する制御値Ｋ１２を選択している状態における、前述のＡＰＣ処理そのものを示しており、ＡＰＣ処理の具体的な処理手順は、前記図８の処理手順と同様である。つまり光学ピックアップ１６からの受光量Ｋ１６と基準値Ｋｍとが平衡するように発光素子１５への駆動電流を増減させて自動で調整している。
【００５５】
次に、図１のステップＳ１３で実行される閾値電流演算処理について説明する。
前述のように、発光素子１５として、例えば、半導体レーザや発光ダイオードなどの半導体発光素子を用いた場合、駆動電流と発光量との関係は、図２の実線で示す駆動電流−発光量特性線Ｌ０で表される特性を持つことが知られている。すなわち、図２中の実閾値電流Ｉth以下では発光素子１５は発光せず、実閾値電流Ｉthよりも大きな駆動電流の領域で発光素子１５は発光する。また、実閾値電流Ｉthよりも大きな駆動電流の領域では、駆動電流が大きいときほど、駆動電流の変化に対する発光量の変化がより大きくなる特性を持つ。
【００５６】
ここで、図１のステップＳ２におけるＡＰＣ処理を実行することによって、基準値ａに対応するＡ点（駆動電流Ｉａ、発光量Ｐａ）で平衡となったものとする。同様に、図１のステップＳ５、ステップＳ８、ステップＳ１１におけるＡＰＣ処理によって、基準値ｄに対応するＤ点（駆動電流Ｉｄ、発光量Ｐｄ）、基準値ｅに対応するＥ点（駆動電流Ｉｅ、発光量Ｐｅ）、基準値ｆに対応するＦ点（駆動電流Ｉｆ、発光量Ｐｆ）がそれぞれＡＰＣ処理により平衡することが検出されたものとする。前述のように、発光量と駆動電流とは、駆動電流−発光量特性線Ｌ０で表される特性を有するため、これら平衡点、Ａ点、Ｄ点、Ｅ点、Ｆ点は、駆動電流−発光量特性線Ｌ０上の点であるとみなすことができる。
【００５７】
ここで、本実施形態では、発光素子１５の閾値電流を、Ｍ（Ｍは前記Ｎより小さい２以上の整数）通りの駆動電流−発光量特性線Ｌ０の一次近似式を算出しこれら一次近似式を用いることにより算出する。本実施形態ではＮ＝４であるので、２点の一次近似によりＭ＝３本の特性線を想定する。例えば、図２中に破線で示される、平衡点Ａと、平衡点Ｄ、平衡点Ｅ、平衡点Ｆのそれぞれとを結ぶＬ１、Ｌ２、Ｌ３で示される特性線を想定することができる。
【００５８】
前記従来の２点ＡＰＣ処理における閾値電流演算処理と本実施形態における４点ＡＰＣ処理における閾値電流演算処理との比較のために、前記図９における発光素子１５の特性を示す駆動電流−発光量特性線Ｌ０と、図２の発光素子１５の特性を示す駆動電流−発光量特性線Ｌ０とは同じ特性としている。また、図２におけるＡ点と図９におけるＡ点とは、受光量Ｋ１６が基準値ａとなるようにＡＰＣ処理を実行することにより得られた平衡点Ａ（駆動電流Ｉａ、発光量Ｐａ）を表し、これらは同じ点である。
【００５９】
なお、図１のステップＳ１で設定された基準値aと光学ピックアップ１６の受光量Ｋ１６とがＡＰＣ処理によって平衡することが検出されたときの発光素子１５の発光量をＰａ、前記発光素子１５を発光量Ｐａで発光させる駆動部１４が出力する駆動電流をＩａとしている。同様に、図１のステップＳ４で設定された基準値ｄと光学ピックアップ１６の受光量Ｋ１６とがＡＰＣ処理によって平衡することが検出されたときの発光素子１５の発光量をＰｄ、前記発光素子１５を発光量Ｐｄで発光させる駆動部１４が出力する駆動電流をＩｄとし、図１のステップＳ７で設定された基準値ｅと光学ピックアップ１６の受光量Ｋ１６とがＡＰＣ処理によって平衡することが検出されたときの発光素子１５の発光量をＰｅ、前記発光素子１５を発光量Ｐｅで発光させる駆動部１４が出力する駆動電流がＩｅ、図１のステップＳ１０で設定された基準値ｆと光学ピックアップ１６の受光量Ｋ１６とがＡＰＣ処理によって平衡することが検出されたときの発光素子１５の発光量をＰｆ、前記発光素子１５を発光量Ｐｆで発光させる駆動部１４が出力する駆動電流をＩｆとしている。
【００６０】
図１のステップＳ１からステップＳ１１の処理を実行することにより、メモリ１７には、駆動部１４に駆動電流Ｉａを出力させる制御値Ｋ１２、駆動部１４に駆動電流Ｉｄを出力させる制御値Ｋ１２、駆動部１４に駆動電流Ｉｅを出力させる制御値Ｋ１２、駆動部１４に駆動電流Ｉｆを出力させる制御値Ｋ１２が記憶される。演算部１８では、メモリ１７に記憶されているこれら制御値Ｋ１２をもとに、推定閾値電流Ｉth_adv１と任意の発光量を得るための発光電流Ｉon_adv１とを算出すべく次の演算を行う。
【００６１】
まず、前述のように、図２中の特性線Ｌ１、Ｌ２、Ｌ３の発光量が零となる駆動電流が発光素子１５の閾値電流に相当すると想定することができる。これら特性線Ｌ１、Ｌ２、Ｌ３から想定される閾値電流は次式で求めることができる。
すなわち、特性線Ｌ１から想定される閾値電流である、特性線Ｌ１の発光量が零となる駆動電流Ｉth１は（１０）式で求めることができる。以後、この駆動電流Ｉth１を零駆動電流Ｉth１という。
Ｉth１＝（Ｉｄ×Ｐａ−Ｉａ×Ｐｄ）／（Ｐｄ−Ｐａ）    ……（１０）
【００６２】
同様に、特性線Ｌ２から想定される閾値電流である、特性線Ｌ２の発光量が零となる駆動電流Ｉth２は（１１）式で求めることができる。以後、この駆動電流Ｉth２を零駆動電流Ｉth２という。
Ｉth２＝（Ｉｅ×Ｐａ−Ｉａ×Ｐｅ）／（Ｐｅ−Ｐａ）    ……（１１）
さらに、特性線Ｌ３から想定される閾値電流である、特性線Ｌ３の発光量が零となる駆動電流Ｉth３は（１２）式で求めることができる。以後、この駆動電流Ｉth３を零駆動電流Ｉth３という。
Ｉth３＝（Ｉｆ×Ｐａ−Ｉａ×Ｐｆ）／（Ｐｆ−Ｐａ）    ……（１２）
次に、これら一次近似式それぞれから演算される零駆動電流Ｉth１〜Ｉth３の平均値を次式（１３）から求める。この平均値を、推定閾値電流Ith_adv１とする。
Ｉth_adv１＝（Ｉth１＋Ｉth２＋Ｉth３）／３    ……（１３）
【００６３】
すなわち、図１のステップＳ１３の閾値電流演算処理では、まず、図１のステップＳ２、ステップＳ５、ステップＳ８、ステップＳ１１でのＡＰＣ処理によって得られた、任意に設定した基準値Ｋｍと受光量Ｋ１６とが平衡するときの制御値Ｋ１２から、各基準値Ｋｍに対応する、駆動電流と発光量とで特定される平衡点、Ａ点、Ｄ点、Ｅ点及びＦ点を求める。そして、これらのうちの２点による一次近似によって３本の特性線Ｌ１〜Ｌ３を獲得し、これに基づき３つの零駆動電流Ｉth１、Ｉth２、Ｉth３を算出する。そして、前記（１３）式から、前記３つの零駆動電流Ｉth１、Ｉth２、Ｉth３を平均して推定閾値電流Ｉth_adv１を得る。
【００６４】
つまり、発光素子１５にＮ通り（本実施形態ではＮ＝４）の基準値Ｋｍを設定してＡＰＣ処理を実行し、これにより得られる前記発光素子１５の発光量と対応する駆動電流との関係からＭ通り（本実施形態ではＭ＝３）の一次近似式を算出する。そして、Ｍ通りの一次近似式のそれぞれについて発光量が零となる零駆動電流を求め、その平均値を前記発光素子１５の推定閾値電流Ｉth_adv１としている。
【００６５】
図２に示すように、前記（１３）式から算出される推定閾値電流Ｉth_adv１は、各特性線Ｌ１〜Ｌ３から求められる零駆動電流Ｉth１、Ｉth２、Ｉth３の平均値であるため、図９に示す従来の１本の特性線Ｌ５１から閾値電流を得る場合に比較して、発光素子１５の実閾値電流Ｉthを反映していることがわかる。
ここで、図２に示すように、Ｆ点は実閾値電流Ｉth近傍の値に設定されており、他のＡ点、Ｄ点、Ｅ点における発光量Ｐａ、Ｐｄ、Ｐｅに比較して発光素子１５の発光量が微小であり、また、発光素子１５が温度特性を持つことなどの理由によりＡＰＣ処理実行時に発光量が不安定となりやすい。しかしながら、上述のように各特性線Ｌ１〜Ｌ３から求められる零駆動電流の平均値から推定閾値電流Ｉth_adv１を演算している。そのため、仮に、Ｆ点（駆動電流Ｉｆ、発光量Ｐｆ）を用いて算出される零駆動電流Ｉth３にＡＰＣ処理実行時の不安定量による影響が生じたとしても、その不安定量は低減されることになる。
【００６６】
例えば、駆動電流Ｉｆが実閾値電流Ｉth近傍の値であるため、ＡＰＣ処理時に発光素子１５の発光量が不安定となった場合、前述の図１１で説明したように、不安定量が含まれる駆動電流Ｉｆおよび発光量Ｐｆとの関係を用いた特性線Ｌ３に基づき零駆動電流Ｉth３を演算した場合、得られた零駆動電流Ｉth３には、不安定成分ΔＩth３が含まれることになる。この場合、零駆動電流Ｉth３は、中心値Ｉth３_meanと不安定成分±ΔＩth３とを用いて次式（１４）で表すことができる。
Ｉth３＝Ｉth３_mean±ΔＩth３    ……（１４）
【００６７】
ここで、（１４）式を（１３）式に代入すると、次式（１５）を得ることができる。
Ｉth_adv１
＝（Ｉth１＋Ｉth２＋Ｉth３）／３
＝｛Ｉth１＋Ｉth２＋（Ｉth３_mean±ΔＩth３）｝／３    ……（１５）
よって、Ｆ点を閾値近傍に設定することにより生じるＡＰＣ処理実行時の零駆動電流の不安定成分が、推定閾値電流Ｉth_adv１に与える影響ΔＩth_adv１は次式（１６）で表すことができる。
ΔＩth_adv１＝ΔＩth３／３    ……（１６）
【００６８】
つまり、前記（１３）式に示すように、推定閾値電流Ｉth_adv１は、それぞれの零駆動電流Ｉth１、Ｉth２、Ｉth３を平均しているため、（１６）式で証明されたように零駆動電流Ｉth３のばらつきΔＩth３による影響ΔＩth_adv１は１／Ｍ倍となる。本実施例ではＭ＝３であるので１／３倍になることを示している。つまり、平衡点Ｆが実閾値電流Ｉth近傍相当の値であることにより、ＡＰＣ処理実行時に生じる不安定量が、推定閾値電流Ｉth_adv１に与える影響が１／３となることになる。
【００６９】
本発明は上記構成としたため以下の効果を得ることができる。
すなわち、発光素子１５の閾値電流を算出するための発光量と駆動電流とが平衡となる平衡点を得る際に、発光素子１５の実閾値電流Ｉth近傍相当の値が平衡点となるようにＡＰＣ処理を行った場合であっても、各特性線Ｌ１〜Ｌ３に基づく零駆動電流Ｉth１〜Ｉth３の平均値を推定閾値電流Ｉth_adv１としているため、平衡点が実閾値電流Ｉth近傍相当の値とすることにより生じる不安定成分が、推定閾値電流Ｉth_adv１に与える影響を小さくすることができる。
【００７０】
つまり、従来のように、１本の特性線に基づいて推定閾値電流Ｉth′を得る方法にあっては、発光素子１５が温度特性を持つことにより発光量が不安定となること、および、実閾値電流Ｉth近傍では、駆動電流に対する発光量が不安定となる可能性があることの２つの不安定要因があるため、１本の特性線を設定する際には、これら２つの不安定要因の影響を受けないようにするために、ＡＰＣ処理における基準値Ｋｍを実閾値電流Ｉth近傍相当の値とならないように設定し、且つ、その際には、温度環境などによる発光量のばらつきをも考慮して基準値Ｋｍを設定する必要がある。そのため、基準値Ｋｍを、得られる零駆動電流が実閾値電流Ｉthよりもある程度離れた位置となるように設定せざるを得ず、これはすなわち、実閾値電流Ｉthと零駆動電流つまり推定閾値電流Ｉth′との誤差となる。
【００７１】
これに対し、本発明は、上述のように推定閾値電流Ｉth_adv１に含まれる、不安点成分の影響を小さくすることができる。そのため、その分、特性線から得られる零駆動電流が実閾値電流Ｉth近傍の値となるように、特性線を設定することができる。
したがって、１本の特性線に基づいて推定閾値電流Ｉth′を得る方法に比較して、特性線から得られる零駆動電流を、実閾値電流Ｉthに一層近づけて設定することができる。このため、結果的に、零駆動電流から得られる推定閾値電流Ｉth_adv１を実閾値電流Ｉthに近づけることができ、すなわち、閾値電流の演算精度を向上させることができる。
【００７２】
また、各特性線Ｌ１〜Ｌ３に基づく零駆動電流Ｉth１〜Ｉth３の平均値から推定閾値電流Ｉth_adv１を演算しているため、実閾値電流Ｉth近傍において、ＡＰＣ処理を実行することによる不安点量だけでなく、他の、実閾値電流から離れた平衡点、Ａ点、Ｄ点、Ｅ点における駆動電流と発光量との対応を表す特性に含まれる不安定量についても１／（Ｎ−１）倍とすることができ、全体的に、一層高精度な閾値電流を演算することができる。
【００７３】
また、推定閾値電流Ｉth_adv１は、一次近似によって求められた各特性線Ｌ１〜Ｌ３に基づく零駆動電流Ｉth１〜Ｉth３の平均値を演算しているのみであって、前記（９）式で示した最小二乗法演算のような複雑な演算は必要ない。ここで、最小二乗法による閾値電流演算方法は、ＡＰＣ処理によって得た２点の平衡点を用いているのに対し、本実施形態における閾値電流演算方法は、ＡＰＣ処理によって得た４点の平衡点を用いて閾値電流を算出しているにも関わらず必要な演算は簡単である。
【００７４】
つまり、本実施形態における閾値電流演算方法は、精度を向上させる目的で、閾値電流の演算に用いる平衡点の数Ｎを増やし、ＡＰＣ処理によって、より多くの駆動電流と発光量とが平衡する平衡点を求めて閾値電流を算出したとしても、上記従来のような最小二乗法を用いた閾値電流演算方法に比較して必要とされる演算回路の回路規模は小さくてすむ。したがって、例えば集積回路などの回路規模の実現が容易であって、且つ、低消費電流で実現することができる。
また、このようにして得た推定閾値電流Ｉth_adv１を用いて、発光素子１５を発光させる場合、例えば、図２のＡ点の発光量Ｐａを目標値とした場合に必要な発光電流Ｉon_adv１は次式（１７）で表すことができる。
Ｉon_adv１＝Ｉa−Ｉth_adv１    ……（１７）
【００７５】
ここで、補正の目的などで、発光量Ｐａを得るために必要な発光電流Ｉon_adv１に、上記従来と同一の任意の係数ｋ（ここでは、ｋ＜１）を乗算し、この乗算の結果得られる発光電流Ｉon_c_advに対応する発光量Ｐｃ_advを、発光素子１５の発光量の目標値とした場合、この発光量Ｐｃ_advを得るために必要な発光電流Ｉon_c_advは、次式（１８）で表される。なお、この発光電流Ｉon_c_advに対応する発光量Ｐｃ_advを得られる平衡点をＣ_adv（駆動電流Ｉｃ_adv、発光量Ｐｃ_adv）とする。
Ｉon_c_adv＝ｋ×（Ｉａ−Ｉth_adv１）    ……（１８）
【００７６】
図３に、平衡点Ａの駆動電流Ｉａおよび発光量Ｐａを基準として、発光量Ｐａのｋ倍の発光量を得るために必要な、推定閾値電流Ｉth_adv１に基づく発光素子１５の発光電流Ｉon_c_advに対応する発光量Ｐｃ_adv（平衡点Ｃ_adv）と、同様に平衡点Ａの駆動電流Ｉａおよび発光量Ｐａを基準として、発光量Ｐａのｋ倍の発光量を得るために必要な、実閾値電流Ｉthに基づく発光素子１５の発光電流Ｉon_cに対応する発光量Ｐｃ（平衡点Ｃ）との差異ΔＰｃ_advを示す。
【００７７】
なお、図３中の平衡点Ｃ（駆動電流Ｉｃ、発光量Ｐｃ）と前記図１０中のＣ点（駆動電流Ｉｃ、発光量Ｐｃ）とは同一点を表す。
図３に示すように、Ｃ_adv点の発光量Ｐｃ_advを目標値として発光させる場合に必要な駆動電流Ｉｃ_advは、（１３）式で求められた推定閾値電流Ｉth_adv１と（１８）式で求められた発光電流Ｉon_c_advとを加算した値となる。このため、推定閾値電流Ｉth_adv１に基づく発光量Ｐｃ_advと、実閾値電流Ｉthに基づく発光量Ｐｃとの差分ΔＰｃ_advは、前記図１０に示す閾値電流Ｉth′に基づく発光量Ｐｃ′と実閾値電流Ｉthに基づく発光量Ｐｃとの差であるΔＰｃ′に比較して小さく、発光素子１５の発光量を高精度に制御することができることがわかる。
【００７８】
ここで、平衡点Ａの駆動電流Ｉａおよび発光量Ｐａを基準として、発光量Ｐａのｋ倍の発光量を得るために必要な、推定閾値電流Ｉth_adv１に基づく発光素子１５の発光電流Ｉon_c_adv（平衡点Ｃ_adv）と、同様に平衡点Ａの駆動電流Ｉａおよび発光量Ｐａを基準として、発光量Ｐａのｋ倍の発光量を得るために必要な、実閾値電流Ｉthに基づく発光素子１５の発光電流Ｉon_c（平衡点Ｃ）との差異ΔＩon_c_advは次式（１９）で表すことができる。
ΔＩon_c_adv
＝Ｉon_c−Ｉon_c_adv＝ｋ×（Ｉth_adv１−Ｉth）    ……（１９）
前述のように推定閾値電流Ｉth′に比較して推定閾値電流Ｉth_adv１は不安定成分の影響の少ないより安定した値であるから、推定閾値電流を高精度に算出することで発光素子１５の発光量をより高精度に制御できることがわかる。
【００７９】
なお、演算部１０８では、このようにして演算した推定閾値電流Ｉth_adv１を記憶しておく。そして、例えば、推定閾値電流Ｉth_adv１を基準とした発光量に応じた発光電流と推定閾値電流Ｉth_adv１との和からなる駆動電流相当の制御値Ｋ１８を、スイッチ１３を介して駆動部１４に出力し、発光素子１５の発光制御は前記発光電流を調整することにより行う。すなわち、発光素子１５を発光させない場合には、発光電流は零として制御値Ｋ１８を演算するため、制御値Ｋ１８は、推定閾値電流Ｉth_adv１相当の値となり、発光素子１５は発光しない。一方、基準値ａの発光量Ｐａを、発光素子１５の発光量の目標値とする場合には、前記（１７）式にしたがって、メモリ１７に記憶している基準値ａに対応する制御値Ｋ１２から特定される駆動電流Ｉａから前記推定閾値電流Ｉth_adv１を減算して発光電流を求め、この発光電流をもとに制御値Ｋ１８を演算する。このため、制御値Ｋ１８は、推定閾値電流Ｉth_adv１と発光電流との和相当の値となり、発光素子１５は発光し、その発光量は、発光量Ｐａ相当となる。なお、基準値ｄ、基準値ｅ、基準値ｆに対応する発光量を、発光素子１５の発光量Ｐｄ、Ｐｅ、Ｐｆの目標値とする場合も同様であって、前記（１７）式と同様の手順で、メモリ１７に記憶しているこれら基準値に対応する制御値Ｋ１２から特定される駆動電流から前記推定閾値電流Ｉth_adv１を減算して発光電流を求め、この発光電流をもとに制御値Ｋ１８を演算する。このため、制御値Ｋ１８は、推定閾値電流Ｉth_adv１と発光電流との和相当の値となり、発光素子１５は発光し、その発光量は、発光量Ｐｄ、Ｐｅ、Ｐｆ相当となる。
【００８０】
また、上記第１の実施の形態では、Ｎ＝４とし、４通りの基準値を設定し、Ｍ（＝３）本の特性線を設定する場合について説明したが、これに限るものではなく、Ｎは３以上の整数であればよく、且つＭはＮよりも小さい２以上の整数であればよい。
つまり、上述のように推定閾値電流Ｉth_adv１を、各特性線から得られる零駆動電流の平均値から演算しているため、少なくとも２本の特性線を得ることができればよく、２本の特性線を得るためには少なくとも３つの平衡点があればよい。
【００８１】
Ｎ通りの基準値を設定する場合、発光素子１５に供給可能な駆動電流の範囲内において比較的大きな電流値相当の基準値と、発光素子１５が発光可能な比較的小さな電流値相当の基準値を少なくとも含むように設定する。そして、Ｎ通りの基準値のうち、基準値に対応する駆動電流が最大のものを第１の基準値とし、基準値に対応する駆動電流が次に大きいものを第２の基準値、…、基準値に対応する駆動電流が最小のものを第Ｎの基準値としたとき、前記図２に示すようにＭ（＝Ｎ−１）通りの特性線を設定する場合には、例えば、第１の基準値に対応する平衡点と第Ｎの基準値に対応する平衡点、第１の基準値に対応する平衡点と第Ｎ−１の基準値に対応する平衡点、第１の基準値に対応する平衡点と第Ｎ−２の基準値に対応する平衡点、…、第１の基準値に対応する平衡点と第２の基準値に対応する平衡点、それぞれについて一次近似し、Ｍ（＝Ｎ−１）通りの特性線を算出すればよい。
【００８２】
また、特性線を得る際に、必ずしも全ての特性線が、基準値に対応する駆動電流が最大となる第１の基準値に対応する平衡点を通る必要はなく、２本以上の特性線を得ることができればどの平衡点を用いてもよい。
ここで、上述のように、推定閾値電流Ｉth_adv１を、各特性線から得られる零駆動電流の平均値から演算しているため、各特性線から得られる零駆動電流が比較的小さな値であれば得られる推定閾値電流Ｉth_adv１は比較的小さな値となる。つまり多少温度環境の影響をうける可能性はあるが、推定閾値電流Ｉth_adv１と実閾値電流との誤差は小さくなる。逆に、各特性線から得られる零駆動電流が比較的大きな値であれば得られる推定閾値電流Ｉth_adv１は比較的大きな値となるため、比較的温度環境の影響はうけにくいが、実閾値電流との誤差が多少大きくなる可能性がある。
【００８３】
したがって、例えば、これらを考慮して一次近似に用いる平衡点を特定して特性線を生成すれば、温度環境などの影響をうける可能性はあるが実閾値電流との誤差が比較的小さい推定閾値電流Ｉth_adv１や、温度環境などの影響をうけにくいが実閾値電流との誤差が多少大きくなる可能性のある推定閾値電流Ｉth_adv１等、特性の異なる推定閾値電流Ｉth_adv１を得ることができる。そのため、実閾値電流との誤差が多少生じる可能性はあるものの、比較的温度環境などの影響が小さい推定閾値電流Ｉth_adv１を得るためには、例えば、基準値に対応する駆動電流が比較的大きくなる２つの平衡点を通る特性線と、基準値に対応する駆動電流が比較的小さくなる２つの平衡点を通る特性線と、を含むＭ通りの特性線を用いて、推定閾値電流Ｉth_adv１を演算すればよい。
【００８４】
具体的には、例えば、第Ｎの基準値に対応する平衡点と第Ｎ−１の基準値に対応する平衡点、第１の基準値に対応する平衡点と第２の基準値に対応する平衡点について、これらそれぞれの一次近似から得られる特性線を含むＭ通りの特性線を生成する。これによって、温度環境などの影響はうけにくいが実閾値電流との誤差が多少生じる可能性のある零駆動電流と、温度環境などの影響を多少うける可能性はあるが実閾値電流との誤差が比較的小さい零駆動電流とを含む零駆動電流値の平均値から推定閾値電流Ｉth_adv１が得られるため、実閾値電流との誤差が多少生じる可能性はあるものの比較的温度環境などの影響が比較的小さい推定閾値電流Ｉth_adv１を得ることができる。
【００８５】
また、上述のように、推定閾値電流Ｉth_adv１は、特性線の設定の仕方によって温度環境の影響を受け易くなったり受けにくくなったりするが、特性線は平衡点から生成されるため、平衡点の取り方、すなわち基準値の値によっても推定閾値電流Ｉth_adv１は温度環境の影響を受け易くなったり受けにくくなったりすることになる。したがって、平衡点についてもこれらを考慮して設定することによって、温度環境などの影響を受けにくく且つ実閾値電流との誤差が比較的小さい推定閾値電流Ｉth_adv１を得ることができる。すなわち、第１の基準値はこれに対応する駆動電流が、発光素子１５への供給可能な駆動電流の範囲内において比較的大きな値となるように設定し、第Ｎの基準値はこれに対応する駆動電流が発光素子１５を発光可能な駆動電流相当となるように設定する。そして、第１の基準値と第Ｎの基準値との間に、第２の基準値から第Ｎ−１の基準値を設定する。このとき、例えば、隣接する基準値との間の対応する駆動電流の差が略同等程度となるように設定してもよい。また、実閾値電流との誤差が比較的小さい推定閾値電流Ｉth_adv１を得たい場合には、対応する駆動電流が比較的小さくなるように基準値を設定して特性線から得られる零駆動電流が比較的小さくなるようにし、実閾値電流との誤差は多少生じる可能性はあるものの温度環境の影響が比較的小さい推定閾値電流Ｉth_adv１を得たい場合には、対応する駆動電流が比較的大きくなるように基準値を設定して、特性線から得られる零駆動電流が比較的大きくなるようにすればよい。
【００８６】
次に、本発明の第２の実施の形態を説明する。
この第２の実施の形態は、上記第１の実施の形態において、図１のステップＳ１３での閾値電流演算処理の処理手順が異なることは同一であるので、同一部には同一符号を付与しその詳細な説明は省略する。
この第２の実施の形態では、図６に示す発光素子駆動装置は、上記第１の実施の形態と同様の手順で、基準値ａ、基準値ｄ、基準値ｅ、基準値ｆを基準値Ｋｍとして順次設定してＡＰＣ処理を実行し、図２に示す、Ａ点（駆動電流Ｉａ、発光量Ｐａ）、Ｄ点（駆動電流Ｉｄ、発光量Ｐｄ）、Ｅ点（駆動電流Ｉｅ、発光量Ｐｅ）、Ｆ点（駆動電流Ｉｆ、発光量Ｐｆ）からなる平衡点を求める。基準値ａ、基準値ｄ、基準値ｅ、基準値ｆは、基準値ａ＞基準値ｄ＞基準値ｅ＞基準値ｆである。
【００８７】
この第２の実施の形態では、これら平衡点に基づき一次近似式を算出する際に、算出に用いる２点の平衡点として最適な任意の２点を用いることで、推定閾値電流と発光電流との検出精度向上を図っている。
すなわち、この第２の実施の形態では、一次近似式を算出する際に用いる最適な２点の平衡点として、図４に示すように、例えば、Ａ点とＥ点、Ｄ点とＦ点、Ｅ点とＦ点を設定している。そして、Ａ点とＥ点との一次近似により特性線Ｌ１１を算出し、Ｄ点とＦ点との一次近似により特性線Ｌ１２を算出し、Ｅ点とＦ点との一次近似により特性線Ｌ１３を算出する。
【００８８】
そして、特性線Ｌ１１において発光量が零となる駆動電流を、閾値電流に相当する零駆動電流Ｉth１１として次式（２０）から演算する。
Ｉth１１＝（Ｉｅ×Ｐａ−Ｉａ×Ｐｅ）／（Ｐｅ−Ｐａ）    ……（２０）
同様に、特性線Ｌ１２において発光量が零となる駆動電流を、閾値電流に相当する零駆動電流Ｉth１２として次式（２１）から演算する。
Ｉth１２＝（Ｉｆ×Ｐｄ−Ｉｄ×Ｐｆ）／（Ｐｆ−Ｐｄ）    ……（２１）
さらに、特性線Ｌ１３において発光量が零となる駆動電流を、閾値電流に相当する零駆動電流Ｉth１３として次式（２２）から演算する。
Ｉth１３＝（Ｉｆ×Ｐｅ−Ｉｅ×Ｐｆ）／（Ｐｆ−Ｐｅ）    ……（２２）
【００８９】
そして、上記第１の実施の形態と同様に、前記（２０）から（２２）で得られる零駆動電流Ｉth１１〜Ｉth１３の平均値を次式（２３）から求め、これを発光素子１５の推定閾値電流Ｉth_adv２とする。
Ｉth_adv２＝（Ｉth１１＋Ｉth１２＋Ｉth１３）／３    ……（２３）
ここで、一次近似式を算出する際に最適な任意の２点とは、それぞれ最適な任意の２点から特定される一次近似式Ｌ１１〜Ｌ１３を用いて上記（２０）から（２３）式にしたがって推定閾値電流Ｉth_adv２を演算した際に、この得られた推定閾値電流Ｉth_adv２が、発光素子１５の実閾値電流Ｉthにより近くなるように設定される２つの平衡点をいう。
【００９０】
つまり、前述のように、発光素子１５の駆動電流−発光量の関係は、図４中に実線で示す駆動電流−発光量特性線Ｌ０のように、駆動電流が、実閾値電流Ｉthよりも大きい領域で発光素子１５は発光し、且つ、駆動電流が実閾値電流Ｉthよりも大きい領域では、駆動電流が大きいときほど発光量は大きくなり、且つ駆動電流が大きいときほど駆動電流の変化に対する発光量の変化量はより大きくなる。このため、駆動電流−発光量特性線Ｌ０上の２点からなる特性線Ｌ１１〜Ｌ１３の設定の仕方によって、各特性線Ｌ１１〜Ｌ１３のそれぞれにより得られる発光量が零となるときの零駆動電流は変化する。
【００９１】
そのため、発光素子１５の仕様などから予測される、駆動電流−発光量特性線Ｌ０において、ＡＰＣ処理における基準値Ｋｍとして予め設定された４点について、これら４点のうちの２点を通る特性線を想定し、この想定した特性線から得られる零駆動電流に基づき、何れか３本の特性線から得られる零駆動電流の平均値、すなわち、推定閾値電流Ｉth_adv２が、駆動電流−発光量特性線Ｌ０から推測される実閾値電流Ｉthに最も近くなると予測される３つの特性線を予め特定する。そして、このときの、３つの特性線について各特性線の算出に用いる２点の平衡点を予め特定する。この３つの特性線毎に設定される２点の平衡点が、一次近似式Ｌ１１〜Ｌ１３を算出する際の最適な２点となる。
【００９２】
このようにして設定された最適な２点に基づき各一次近似式を求め、これをもとに上述の（２０）式〜（２２）式から、零駆動電流Ｉth１１〜Ｉth１３を求め、その平均値を推定閾値電流Ｉth_adv２とする。
このようにして演算される推定閾値電流Ｉth_adv２は、駆動電流−発光量特性線Ｌ０に対する特性線Ｌ１１〜Ｌ１３の設定位置に起因する、実閾値電流Ｉthと推定閾値電流Ｉth_adv２との誤差が比較的小さい値となる。
したがって、駆動電流−発光量特性線Ｌ０に対する特性線Ｌ１１〜Ｌ１３の設定位置に起因する実閾値電流Ｉthとの誤差の少ない、より高精度な推定閾値電流Ｉth_adv２を得ることができる。
【００９３】
また、この第２の実施の形態においても、上記第１の実施の形態と同様に、３本の特性線から得られる零駆動電流の平均値を推定閾値電流Ｉth_adv２として演算しているため、ＡＰＣ処理における基準値Ｋｍを、発光素子１５の実閾値電流Ｉth近傍相当の値に設定したとしても、従来に比較してより安定した高精度な推定閾値電流Ｉth_adv２を得ることができると共に、ＡＰＣ処理における基準値を実閾値電流Ｉth近傍相当の値に設定することに起因する不安定量だけではなく、図４の平衡点、Ａ点、Ｄ点、Ｅ点、Ｆ点のそれぞれにおける発光量の不安定量も１／Ｍ（この場合Ｍ＝３）となり、従来技術に比較して、全体的により安定して推定閾値電流を算出することができる。また、零駆動電流に基づく、（２３）式の演算では、平均値の演算を行っているのみであるため、この第２の実施の形態においても、閾値電流の演算精度を向上させる目的で基準値Ｋｍの数を増やしたとしても、従来の最小２乗法による閾値電流算出方法に較べて回路規模は小さく、例えば集積回路などの回路での実現が容易であって、より少ない消費電流で実現することができる。
【００９４】
また、この第２の実施の形態においても、Ｎ＝４通りの基準値を設定しＭ＝３通りの特性線を設定する場合に限るものではなく、Ｎ通り（Ｎ≧３）以上の基準値を設定し、Ｍ本（ＭはＮよりも小さい２以上の整数）の特性線を設定することが可能である。
この第２の実施の形態の場合も、Ｎ通りの基準値を設定する場合、発光素子１５に供給可能な駆動電流の範囲内において比較的大きな電流値相当の基準値と、発光素子１５が発光可能な比較的小さな電流値相当の基準値を少なくとも含むように設定する。
【００９５】
そして、例えば、前記図４に示すように、第１の基準値に対応する平衡点と第Ｎ−１の基準値に対応する平衡点、第２の基準値に対応する平衡点と第Ｎの基準値に対応する平衡点、第Ｎ−１の基準値に対応する平衡点と第Ｎの基準値に対応する平衡点、のそれぞれの一次近似から得られる特性線を含む、Ｍ通りの特性線を算出すればよい。
また、この場合も、Ｍ本の特性線の作成に必要な数以上の基準点に対応するＮ通りの平衡点からＭ本の特性線を作成する場合には、上記と同様に、駆動電流−発光量特性線Ｌ０からはずれた平衡点は、温度環境などの影響をうけている可能性があるとして、この平衡点を除く駆動電流−発光量特性線Ｌ０上に並ぶ平衡点のみを用いて推定閾値電流Ｉth_adv２を演算するようにしてもよい。
【００９６】
次に、本発明の第３の実施の形態を説明する。
この第３の実施の形態は、上記第１の実施の形態において、図１のステップＳ１３での閾値電流演算処理の処理手順が異なることは同一であるので同一部には同一符号を付与しその詳細な説明は省略する。
図５は、図６の発光素子駆動装置において、上記第１の実施の形態と同様の手順で、ＡＰＣ処理が実行され、発光素子１５の発光量が基準値Ｋｍと平衡となるときの駆動電流で特定される平衡点が、Ａ点（駆動電流Ｉａ、発光量Ｐａ）、Ｄ点（駆動電流Ｉｄ、発光量Ｐｄ）、Ｅ点（駆動電流Ｉｅ、発光量Ｐｅ）、Ｆ点（駆動電流Ｉｆ、発光量Ｐｆ）として検出された状態を表している。
【００９７】
この第３の実施の形態においては、ステップＳ１３の閾値電流演算処理では、前記（１３）式と同様の手順で平均値Ｉth_advを演算する。そして、この平均値Ｉth_advに対して精度向上のための補正演算を行い、補正演算後の電流値を推定閾値電流Ｉth_adv３とする。ここでは、補正演算として（２４）式で示すように、平均値Ｉth_advを、予め設定した補正値αで割り算する。
Ｉth_adv３＝Ｉth_adv／α    ……（２４）
【００９８】
ここで、前記平衡点Ａ点、Ｄ点、Ｅ点、Ｆ点に基づき特性線Ｌ１〜Ｌ３を求め、この特性線Ｌ１〜Ｌ３により特定される零駆動電流に基づき前記（１３）式から、零駆動電流の平均値Ｉth_adv（＝Ｉth_adv１）を演算すると、図５に示すように、平均値Ｉth_advは、特性線Ｌ１〜Ｌ３から求められる零駆動電流の平均値であるため、零駆動電流のばらつきを抑制することはできるものの、温度環境等によらない、駆動電流−発光量特性線Ｌ０に対する特性線Ｌ１〜Ｌ３の設定位置に起因する平均値Ｉth_advと実閾値電流Ｉthとの差は生じる。
【００９９】
そこで、所定の基準値Ｋｍに対応する平衡点を通る特性線について、予め零駆動電流を演算し、これに基づき平均値Ｉth_advを求める。そして、平均値Ｉth_adv／実閾値電流Ｉthの値に基づき例えば余裕代を考慮して補正値αを設定する。
このようにして補正値αを設定し前記（２４）式の演算を行うことによって、得られる平均値Ｉth_advは補正演算によりさらに実閾値電流Ｉthに近づくことになり、すなわち推定閾値電流Ｉth_adv３と実閾値電流Ｉthとの誤差が抑制される。このため、温度環境等によらない、駆動電流−発光量特性線Ｌ０に対する特性線Ｌ１〜Ｌ３の設定位置に起因して生じる、推定閾値電流Ｉth_adv３と実閾値電流Ｉthとの誤差を抑制することができ、すなわちより高精度な推定閾値電流Ｉth_adv３を得ることができる。
【０１００】
なお、この第３の実施の形態においては、補正演算として、平均値Ｉth_advを補正値αにより割り算する場合について説明したが、これに限るものではない。
例えば、上記と同様の手順で、予め所定の平衡点について前記（１３）式から平均値Ｉth_adv（＝Ｉth_adv１）を求め、平均値Ｉth_advと実閾値電流Ｉthとの差を検出する。そして、この実閾値電流Ｉth−平均値Ｉth_advの値をもとに、例えば余裕代を考慮して補正値βを設定する。
そして、次式（２５）の演算を行う。
Ｉth_adv４＝Ｉth_adv−β    ……（２５）
【０１０１】
この（２５）式の演算を行うことによって、平均値Ｉth_advと実閾値電流Ｉthとの誤差が抑制されるため、温度環境等によらない、駆動電流−発光量特性線Ｌ０に対する特性線Ｌ１〜Ｌ３の設定位置に起因して生じる平均値Ｉth_advと実閾値電流Ｉthとの誤差を抑制することができる。したがって、この場合も、より高精度な推定閾値電流Ｉth_adv４を得ることができる。
【０１０２】
なお、補正演算は、上述のように、平均値Ｉth_advを補正値αにより割り算する方法、平均値Ｉth_advから補正値βを減算する方法に限るものではない。上記と同様の手順で所定の基準値Ｋｍに対応する平衡点に基づき複数の特性線に基づく零駆動電流の平均値Ｉth_advを予め求め、この平均値Ｉth_advに基づき、平均値Ｉth_advと実閾値電流Ｉthとの誤差を抑制することの可能な補正関数を求める。そして、任意の基準値Ｋｍに基づいて上記と同様の手順で演算した零駆動電流の平均値Ｉth_advに対して、予め検出した補正関数演算を行うことによって、精度向上を図ることも可能である。
【０１０３】
なお、この第３の実施の形態においては、Ｎ＝４通りの平衡点を求め、これに基づきＭ＝３通りの特性線を生成する場合について説明したが、これに限るものではなく、Ｎ≧３通り以上の平衡点を求め、これらからＭ（Ｎよりも小さい２以上の整数）本の特性線を演算する場合であっても適用することができる。
また、上記各実施の形態では、推定された閾値電流を用いて、平衡点の発光量を発光素子１５の発光量の目標値として発光制御するため、発光素子１５の制御可能な発光量が、平衡点に相当する発光量に限定されることになるが、例えば、基準値Ｋｍとして、発光素子１５の発光量の目標値相当の値を設定し、これに対応する平衡点を得ることによって、所望の発光量で発光させることができる。
【０１０４】
また、推定閾値電流を基準とした、目的とする発光量に相当する発光電流が既知であれば、目的とする発光量で発光させることができる。そのため、例えば、既知の平衡点の駆動電流から特定される発光電流とそのときの発光量との対応から、目標とする発光量に相当する発光電流を演算することによって発光電流を制御することによって、目的とする発光電流で発光させる構成とすることも可能である。
【符号の説明】
【０１０５】
１１  比較器
１２  駆動値制御部
１３  スイッチ
１４  駆動部
１５  発光素子
１６  光学ピックアップ
１７  メモリ
１８  演算部
【図１】
0005612448.tif 000002
【図２】
0005612448.tif 000003
【図３】
0005612448.tif 000004
【図４】
0005612448.tif 000005
【図５】
0005612448.tif 000006
【図６】
0005612448.tif 000007
【図７】
0005612448.tif 000008
【図８】
0005612448.tif 000009
【図９】
0005612448.tif 000010
【図１０】
0005612448.tif 000011
【図１１】
0005612448.tif 000012