発光素子駆動方法
【課題】簡易な演算処理を用いて、発光素子の閾値電流の検出精度の向上を図る。
【解決手段】基準値Kmに対応する発光量が得られるときの駆動電流を検出し、発光量およびこれに対応する駆動電流で特定される平衡点を4点求める。4点の平衡点のうちの2点を通る一次近似式からなる特性線を3本検出し、特性線から、発光量が零となるときの駆動電流を零駆動電流として演算し、3本の特性線から得られる零駆動電流の平均値を推定閾値電流Ith_adv1とする。
【解決手段】基準値Kmに対応する発光量が得られるときの駆動電流を検出し、発光量およびこれに対応する駆動電流で特定される平衡点を4点求める。4点の平衡点のうちの2点を通る一次近似式からなる特性線を3本検出し、特性線から、発光量が零となるときの駆動電流を零駆動電流として演算し、3本の特性線から得られる零駆動電流の平均値を推定閾値電流Ith_adv1とする。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、半導体レーザや発光ダイオードなどの発光素子の駆動方法に関する。
【背景技術】
【0002】
半導体レーザや発光ダイオードなどの発光素子は、駆動電流が閾値電流以下では発光しない。そのため、発光素子に、閾値電流相当のバイアス電流を流し、このバイアス電流以上の範囲で駆動電流を調整することによって所望の発光量となるように調整している。
この調整方法として、例えば、発光素子に2通りの駆動電流を供給し、2通りの駆動電流と、この2通りの駆動電流を供給したときの発光素子の実際の発光量との関係から発光素子自体の特性である閾値電流を算出し、この算出した閾値電流を利用して、発光素子を任意の発光量で発光させる方法が提案されている。つまり、閾値電流は、固定ではなく、温度環境等によって変化するため、現時点での閾値電流を推定し、推定した閾値電流を用いて閾値電流相当のバイアス電流を供給して発光素子を駆動制御するようにしている。この従来の発光素子の駆動方法を、図6から図11を伴って説明する。
【0003】
図6は、発光素子駆動装置の概略構成を示すブロック図である。
この発光素子駆動装置は、比較器11と、駆動値制御部12と、スイッチ13と、駆動部14と、発光素子15と、光学ピックアップ16と、メモリ17と、演算部18と、を備える。
前記比較器11は、発光素子15の目標とする発光量である基準値Kmと、光学ピックアップ16で受光した受光量K16、すなわち、発光素子15の実際の発光量とを比較しその差分信号K11を出力する。
【0004】
駆動値制御部12は、比較器11からの差分信号K11に基づき基準値Kmと受光量K16とを一致させるための、駆動部14に対する制御値K12を生成しこれを出力する。すなわち、受光量K16が基準値Kmに満たない場合は駆動部14が駆動電流K14を大きくして発光素子15の発光量を強める様に制御値K12を制御し、受光量K16が基準値Kmを超える場合は駆動部14が駆動電流K14を小さくして発光素子15の発光量を弱める様に制御値K12を制御する。また、基準値Kmと受光量K16とが平衡するとき、このときの制御値K12を基準値Kmと対応付けてメモリ17に記憶する。
【0005】
スイッチ13は、駆動値制御部12からの制御値K12と演算部18からの制御値K18との何れかを選択し、これを駆動部14に出力する。スイッチ13は図示しない上位装置により制御され、発光素子15の発光量の自動光量調整制御(以下、APC処理ともいう。)を行うときには制御値K12を選択する。発光素子15を所望の発光量で発光させるときには制御値K18を選択する。
【0006】
駆動部14は、駆動値制御部12からの制御値K12または演算部18の制御値K18で指定された駆動電流を発光素子15に供給する。
発光素子15は、例えば、半導体レーザや発光ダイオードなどで構成され、供給される駆動電流に応じた光量で発光する。
光学ピックアップ16は、発光素子15の発光量を受光し、これを受光量K16として比較器11に出力する。
【0007】
演算部18は、メモリ17に記憶されている、APC処理により求められた制御値K12およびこれに対応する基準値Kmをもとに発光素子15の閾値電流を推定し、この推定した閾値電流を用いて発光素子15に任意の発光量での発光を促すための制御値K18を生成する。
つまり、図6の発光素子駆動装置は帰還回路を構成し、受光量K16と基準値Kmとが釣り合うように発光素子15への駆動電流K14を自動調整して前記発光素子15の発光量の光量調整を行う。
【0008】
また、発光素子駆動装置は、メモリ17に記憶されAPC処理によって得られた制御値K12およびこれに対応する基準値Kmをもとに発光素子15を任意の発光量で発光させる時は、演算部18が出力する制御値K18をスイッチ13で選択する。そして、メモリ17の記憶値、すなわち、前記APC処理を実行することにより検出された、基準値Kmと受光量K16とが平衡するときの制御値K12をもとに、演算部18が演算を行って制御値K18を出力する。
【0009】
図7は、発光素子15に2通りの駆動電流を流してAPC処理を実施し、前記発光素子15の発光量から発光素子15自体の特性である閾値電流を算出する処理手順(以後、2点APC処理ともいう。)の一例を表すフローチャートである。
この2点APC処理では、まず、ステップS101で、任意に設定した第1の発光量である基準値aを基準値Kmとして設定する。ついで、ステップS102に移行して上述の手順でAPC処理を実行し、光学ピックアップ16で検出された受光量K16と基準値Km(=a)とが平衡となるときの制御値K12を検出し、基準値aと制御値K12とを対応付けてメモリ17に記憶する(ステップS103)。なおAPC処理の詳細は後述する。
【0010】
ついで、ステップS104に移行し、任意の第2の発光量である基準値bを基準値Kmとして設定し、続いてステップS105に移行して光学ピックアップ16で検出された受光量K16と基準値Km(=b)とが平衡となるようにAPC処理を実行し、これらが平衡となるときの制御値K12と基準値bとを対応付けてメモリ17に記憶する(ステップS106)。基準値bは基準値aよりも小さな値である。
【0011】
次いでステップS107に移行し後述の閾値電流演算処理を行い、図6中の発光素子15の現時点における閾値電流Ithを推定する。以上により、2点APC処理が終了する。
図8は、図7のステップS102及びステップS105で実行されるAPC処理の処理手順の一例を示すフローチャートである。この図8のフローチャートは、図6の発光素子駆動装置において、スイッチ13が駆動値制御部12の出力する制御値K12を選択している状態におけるAPC処理の動作そのものを示している。
【0012】
APC処理では、まず、ステップS111で、光学ピックアップ16で検出された受光量K16と基準値Kmとが等しいかを判断し、等しければそのまま処理を終了する。
一方、光学ピックアップ16で検出された受光量K16と基準値Kmとが等しくなければ、ステップS112に移行し受光量K16が基準値Kmよりも大きいか(K16>Km)を判断する。そして、受光量K16が基準値Kmよりも大きいときにはステップS113に移行して駆動値制御部12では、発光素子15への駆動電流K14を減少させる制御値K12を生成しこれを出力する。また、受光量K16が基準値Kmよりも小さいときにはステップS114に移行し、駆動値制御部12では発光素子15への駆動電流K14を増加させる制御値K12を生成しこれを出力する。
【0013】
以上により、受光量K16が基準値Kmよりも大きいときには制御値K12を減少させ、発光素子15への駆動電流K14を減少させることにより発光素子15の発光量を低下させて受光量K16が基準値Kmと一致するように制御し、逆に、受光量K16が基準値Kmよりも小さいときには制御値K12を増加させ、発光素子15への駆動電流K14を増加することにより発光素子15の発光量を増加させ、受光量K16が基準値Kmと一致するように制御することにより、発光素子15の発光量が基準値Kmと一致するように制御する。つまり受光量K16と基準値Kmとが平衡するように駆動電流を自動で調整する。すなわち、スイッチ13で駆動値制御部12からの制御値K12を選択してなる回路は、発光素子15の発光量の光量調整を自動的に行うAPC制御回路を構成している。
【0014】
次に、図7のステップS107での閾値電流演算処理について説明する。
前記発光素子15として、例えば半導体レーザや発光ダイオードなどの半導体発光素子を用いた場合、駆動電流(I)と発光量(P)との関係は図9の実線L0で表される特性を持つことが知られており、さらに、この実線L0で表される特性において、閾値電流は固定ではなく、温度環境等の要因によって変化することが知られている。
【0015】
なお、図9において、横軸は発光素子15の駆動電流I、縦軸は発光素子15の発光量Pである。以後、この実線L0を駆動電流−発光量特性線という
図9に示すように、発光素子15は、閾値電流Ith以下では発光せず、駆動電流が閾値電流Ithよりも大きいときに発光する。そして、駆動電流が閾値電流Ithよりも大きいときには、駆動電流が大きいときほど発光量は大きくなり、且つ、駆動電流が大きいときほど駆動電流の変化に対する発光量の変化量がより大きくなる。
なお、以下、駆動電流から閾値電流Ithを差し引いた電流、つまり発光素子15が発光する領域に流す電流を発光電流Ionという言葉で表現する。
【0016】
ここで、図7のステップS102およびステップS105でのAPC処理の実行により、基準値Km(=a)および基準値Km(=b)のそれぞれに対応する制御値K12が得られたとする。この基準値Km(=a)に対応する発光量をPa、このときの制御値K12に対応する駆動電流をIaとし、同様に、基準値Km(=b)に対応する発光量をPb、このときの制御値K12に対応する駆動電流をIbとする。
【0017】
これはすなわち、図7のステップ101で設定された基準値aと光学ピックアップ16の受光量K16とがAPC処理の実行によって平衡することが検出されたときの発光素子15の発光量がPa、発光素子15を発光量Paで発光させるときの駆動部14が出力する駆動電流K14がIaであることを表し、同様に図7のステップ104で設定された基準値bと光学ピックアップ16の受光量K16がAPC処理によって平衡することが検出されたときの発光素子15の発光量がPb、発光素子15を発光量Pbで発光させるときの駆動部14が出力する駆動電流K14がIb、であることを表す。
【0018】
図9に示す、横軸を発光素子15の駆動電流I、縦軸を発光素子15の発光量Pとする駆動電流−発光量座標において、基準値Km(=a)に対応する発光量Paおよび駆動電流Iaで特定される点をA点とし、同様に、基準値Km(=b)に対応する発光量Pbおよび駆動電流Ibで特定される点をB点とする。なお、以後、基準値Kmに対応する発光量が得られたときの駆動電流と発光量とで特定される、駆動電流−発光量座標上の点を平衡点という。
【0019】
前述のように、駆動電流と発光量とは駆動電流−発光量特性線L0の関係を有し、前記基準値aおよび基準値bに対応する平衡点A(Ia、Pa)およびB(Ib、Pb)は、前記駆動電流−発光量特性線L0上の点であるとみなすことができる。そのため、平衡点AおよびBの位置座標に基づく2点の一次近似を行うことによって、駆動電流が閾値電流よりも大きい領域における駆動電流−発光量特性は、図9中に示す破線L51で表されると想定することができる。
【0020】
ここで、図6のメモリ17には、駆動部14に駆動電流Iaを出力させる制御値K12と、駆動部14に駆動電流Ibを出力させる制御値K12とが記憶されている。演算部18では、これら記憶値をもとに閾値電流Ith′と発光電流Ion′とを算出すべく次の演算を行う。
すなわち、図9中の破線L51において、発光量が零となるときの駆動電流が発光素子15の閾値電流であると想定することができる。この発光量が零となるときの駆動電流、すなわち破線L51から想定される閾値電流Ith′は、次式(1)で求めることができる。
Ith′=(Ib×Pa−Ia×Pb)/(Pb−Pa) ……(1)
【0021】
(1)式の演算は図7のステップ107の閾値電流演算処理で行なわれ、ステップ102及びステップ105のAPC処理の実行により得られた平衡点AおよびBによる2点の一次近似によって閾値電流Ith′が算出される。
また、図9において、平衡点Aの発光量を発光素子15による発光量の目標値とした場合、この目標の発光量を得るために必要な発光電流Ion′は次式(2)で表すことができる。
Ion′=Ia−Ith′ ……(2)
そして、(1)式で求められた閾値電流Ith′と(2)式で求められた発光電流Ion′とを加算し、これを発光素子15の駆動電流とすることにより、任意の発光量で発光素子15を発光させることができる。
【0022】
以上説明したように、閾値電流Ith′よりも大きい領域における駆動電流と発光量とが比例関係にあるとして一次近似し、この比例関係を利用してAPC処理を用いて閾値電流と発光電流とを算出する方法が、例えば、特許文献1に記載されている。
しかしながら、発光素子15の真の閾値電流(以下、実閾値電流Ithという)は、図9の駆動電流−発光量特性線L0において発光量が零となるときの駆動電流であって、前記(1)式で求められる2点の一次近似で想定される発光素子15の閾値電流(以下、推定閾値電流という)Ith′とは値が異なる。このような実閾値電流Ithと推定閾値電流Ith′との差異は、高精度が要求される発光素子駆動装置の場合には問題となる。
つまり、A点で特定される発光量Paを発光素子15により得るために必要な発光電流Ion′は、前記(2)式から演算することができる。
【0023】
ここで、補正の目的などで発光量Paを得るために必要な発光電流Ion′に任意の係数k(ここでは、k<1)を乗算し、この乗算の結果得られる発光電流Ion_c′に対応する発光量Pc′を発光素子15の発光量の目標値とした場合、この発光量Pc′を得るために必要な発光電流Ion_c′は、次式(3)で表すことができる。なお、図10に示すように、発光電流Ion_c′に対応する発光量Pc′を得られる平衡点をC′点(駆動電流Ic′、発光量Pc′)とする。
Ion_c′=k×(Ia−Ith′) ……(3)
【0024】
ここで、推定閾値電流Ith′と発光電流Ion_c′とから求められる、平衡点C′の発光量Pc′を得るために必要な駆動電流は、図6の発光素子駆動装置において、APC処理により得られメモリ17に記憶されている平衡時の制御値K12をもとに、発光素子15を任意の発光量で発光させるときに相当し、すなわち、スイッチ13により演算部18が出力する制御値K18を選択し、APC処理により得られたメモリ17に記憶されている平衡時の制御値K12をもとに、演算部18が演算を行って制御値K18を出力する動作に相当する。
【0025】
一方、図10のA点の発光量Paを、発光素子15の発光量の目標値とした場合、実閾値電流Ithを用いて演算される発光素子15の発光電流Ionは、次式(4)で表される。
Ion=Ia−Ith ……(4)
前記(3)式と同様に、補正の目的などで、発光量Paを得るために必要な発光電流Ionに任意の係数kを乗算し、この乗算の結果得られる発光電流Ion_cに対応する発光量Pcを発光素子15の発光量の目標値とした場合、この発光量Pcを得るために必要な、実閾値電流Ithに基づく発光電流Ion_cは、次式(5)で表すことができる。なお、図10において、この発光電流Ion_cに対応する発光量Pcを得られる平衡点をC点(駆動電流Ic、発光量Pc)とする。
Ion_c=k×(Ia−Ith) ……(5)
【0026】
平衡点Aの駆動電流Iaおよび発光量Paを基準として平衡点Aの発光量Paのk倍の発光量を得るために必要な、実閾値電流Ithに基づく発光素子15の発光電流Ion_c(平衡点C)と、同様に平衡点Aの駆動電流Iaおよび発光量Paを基準として平衡点Aの発光量Paのk倍の発光量を得るために必要な、推定閾値電流Ith′に基づく発光素子15の発光電流Ion_c′(平衡点C′)との差異ΔIon_cは次式(6)で表される。
ΔIon_c′=Ion_c−Ion_c′=k×(Ith′−Ith) ……(6)
【0027】
この差異ΔIon_c′を図10に示す。
図10において、C′点は、(1)式で求められた推定閾値電流Ith′と(3)式で求められた発光量Pc′を発光素子15の発光量の目標値とした場合に必要な推定閾値電流Ith′に基づく発光電流Ion_c′とを加算して駆動電流を得て、この駆動電流で発光素子15を駆動した場合の発光量Pc′を表している。
図10からわかるように、実閾値電流IthにもとづくC点(駆動電流Ic)の発光量Pcと、推定閾値電流Ith′にもとづくC′点の発光量Pc′とはΔPc′の差がある。
【0028】
つまり、平衡点Aの駆動電流Iaおよび発光量Paを基準として、発光量Paのk倍の発光量で発光素子15を発光させるよう発光制御を行ったとしても、実閾値電流Ithに基づく発光制御を行う場合と、推定閾値電流Ith′に基づく発光制御を行う場合とで、発光量にΔPc′の差が生じることになる。
そして、駆動電流が閾値電流よりも大きい発光領域における傾き、つまり図10の駆動電流−発光量特性線L0において、発光量を駆動電流で微分した値δP/δIが大きいときほど前記差分値ΔPc′は大きくなり、本来目標とした発光量とはかけ離れてしまう。つまり、前記(6)式は、発光素子15の発光量を高精度に制御するには発光素子15の閾値電流を高精度で算出して発光電流を制御する必要があることを示している。
【0029】
ここで、例えば、図9において、より低い発光量でAPC処理が実行された平衡点B(駆動電流Ib、発光量Pb)の駆動電流Ibを下げることによって、(1)式で算出される推定閾値電流Ith′を発光素子15の実閾値電流Ithに近づけることはできる。
しかしながら、発光素子15の実閾値電流Ith近傍の発光量は、発光素子15が発光する限界の領域である。このため、平衡点B(駆動電流Ib、発光量Pb)の駆動電流Ibおよび発光量Pbに基づき演算される推定閾値電流Ith′を発光素子15の実閾値電流Ithに近づける目的で、駆動電流Ibが、発光素子15が発光する限界である実閾値電流Ith近傍となるように基準値Km、つまり図7のステップS104で基準値bを設定してAPC処理を実行すると、駆動部14が基準値b相当の発光量を得るための駆動電流Ibを出力して発光素子15に発光を促しても、駆動電流Ibは発光するぎりぎりの電流値であるため、発光量Pbが安定せず、つまりは安定したAPC処理を行うことができない可能性がある。
【0030】
また、閾値電流近傍の発光量が不安定な別の原因として、発光素子15は閾値電流Ithに温度依存性を持つため発光素子15は温度特性を持つことになり、環境温度によって、または発光素子15自身の発光による発熱などによって、発光素子15の閾値電流Ithが変動することも挙げられる。このように温度環境によって閾値電流Ithが変動する場合、閾値電流近傍の発光量が不安定であるので、基準値Kmを閾値電流相当近傍の値に設定してAPC処理を実行したとしても、発光素子15が発光しない可能性があり、安定した発光量が得られない可能性がある。そのため、このように発光量が不安定となることを考慮して基準値Kmを設定しなければならず、基準値Kmから得られる特性線L51の零駆動電流は、実閾値電流近傍よりもある程度離れた位置にならざるを得ない。
【0031】
図11は、図9中のB点(駆動電流Ib、発光量Pb)を発光素子15の実閾値電流Ithに近づけた場合を表したものであって、近づけた後のB点を、B′点(駆動電流Ib′、発光量Pb_mean′)で示している。また、図11において、発光素子15の駆動電流−発光量特性線L0に対し、実閾値電流Ith近傍における発光素子15の特性を細線L61およびL62で表す。また、前述の温度環境などにより生じる実閾値電流Ith近傍における不安定な発光量をΔPb′で表している。
【0032】
図11は、前記B点が実閾値電流Ith近傍の位置となるように、比較器11への基準値Km、つまりこの場合、図7のステップS104の基準値bを設定し、B′点(駆動電流Ib′、発光量Pb_mean′)をAPC処理により検出する場合を表す。上述の温度環境などの原因により、APC処理実行時に不安定な発光量ΔPb′が生じ、その結果、B′点の駆動電流Ib′および発光量Pb_mean′に基づき演算される推定閾値電流Ith″が、不安定な発光量ΔPb′による影響を受け、Ith_mean′を基準として±ΔIth″相当のばらつきが生じることを示している。
【0033】
図11に示すばらつき±ΔIth″が発生するということは、前記(1)式のB点(駆動電流Ib、発光量Pb)に対応する項に、APC処理実行時の不安定量ΔPb′を含めてB′点(駆動電流Ib′、発光量Pb_mean′±ΔPb′)とし、これに基づき、推定閾値電流Ith″を求めることにより、明らかである。すなわち、B′点の駆動電流Ib′および発光量Pb_mean′に基づき演算される推定閾値電流Ith″は次式(7)式で表すことができ、不安定な発光量ΔPb′による推定閾値電流Ith″のばらつきΔIth″は次式(8)で表すことができる。なお、式(7)、(8)において、Pb_mean′は、B′点における発光量の中心値を示す。また、Ith_mean″は前記(1)式に、Pb_mean′を代入して演算される推定閾値電流を表している。
【0034】
Ith″={Ib×Pa−Ia×(Pb_mean′±ΔPb′)}/
{(Pb_mean′±ΔPb′)−Pa}
=Ith_mean″±ΔIth″ ……(7)
ΔIth″={Pa×ΔPb′×(Ib−Ia)}/
[{(Pb_mean′±ΔPb′)−Pa}×{Pb_mean′−Pa}]
……(8)
【0035】
以上のように、2点APC処理による、2点の一次近似による発光素子15の閾値電流の算出方法では発光素子15の特性を精度良く反映させることは難しく、また、精度を向上する目的で発光素子15の閾値近傍でAPC処理を実行して発光量を特定することは、発光素子の発光量が微小であることおよび発光素子が温度特性を持つこと等の理由により発光量が不安定になってしまうために困難である。
そのため、精度向上の目的のために、閾値電流の検出に3点以上のバイアス電流を流して最小2乗法を用いて検出する方法(例えば、特許文献1参照)、或いは、最小2乗法の回帰を利用して発光素子の特性を演算する方法(例えば、特許文献2参照)等も開示されている。
【先行技術文献】
【特許文献】
【0036】
【特許文献1】特開平7−147446号公報
【特許文献2】特開2003−91853号公報
【発明の概要】
【発明が解決しようとする課題】
【0037】
上述のように、最小2乗法を用いた閾値電流の演算方法においては、演算が複雑になり、例えば集積回路などの回路で実現するには演算素子の増大と消費電流の増大が問題となる。
例えば、上記2点APC処理と同様に、発光素子に2通りの駆動電流を流し、前記駆動電流と前記発光素子の発光量とから発光素子自体の特性である閾値電流を算出する。具体的には、図7のステップS102で実行されるAPC処理によって図9中の平衡点A(駆動電流Ia、発光量Pa)、図7のステップS105で実行されるAPC処理によって図9中の平衡点B(駆動電流Ib、発光量Pb)が得られたとすると、前述の特許文献1や特許文献2で開示されている最小2乗法を用いて発光素子の閾値電流を算出した場合、閾値電流Ithmは、次式(9)で表される。
Ithm
=(Ia2×Pb+Ib2×Pa−Ia×Ib×Pa−Ia×Ib×Pb)/
(Ia×Pa+Ib×Pb−Ia×Pb−Ib×Pa)
……(9)
【0038】
つまり、(9)式は、被除数と除数とがそれぞれ4項を含むことになり、前述の単純な一次近似を用いた閾値算出式である(1)式と比較してかなり複雑な演算が必要となる。
また、ここでは、前記(9)式を一例として、APC処理によって得られた2つの平衡点を用いて最小2乗法によって閾値電流を算出する例を挙げているが、より精度をより向上させる目的で2点より多く、例えば3点、4点といったAPC処理により得た平衡点から閾値電流を算出する場合には(9)式よりさらに被除数及び除数に含まれる項が増え、演算がさらに複雑になる。
【0039】
つまり、特許文献1または特許文献2で開示されている最小2乗法を用いて閾値電流を算出する方法は、前述の一次近似による閾値電流算出方法と比較して演算がかなり複雑であり、集積回路などの回路で実現するには演算素子の増大による回路規模の増大と消費電流の増大が問題となる。
そこで本発明は、複雑な演算をすることなく発光素子の閾値電流を高精度に算出して、発光素子の発光量を高精度に制御できる発光素子駆動方法を提供することを目的としている。
【課題を解決するための手段】
【0040】
上記目的を達成するために、本発明の請求項1にかかる発光素子駆動方法は、閾値電流よりも大きな駆動電流が供給されるときに発光し且つ前記駆動電流の大きさに応じて発光量が変化する発光素子の駆動方法であって、前記発光素子を、N通り(Nは3以上の整数)の発光量で発光させるために必要な駆動電流とそのときの発光量との対応を検出するステップと、前記N通りの駆動電流とこれに対応する発光量との対応から、M通り(Mは前記Nより小さい2以上の整数)の一次近似式を算出するステップと、前記M通りの一次近似式から前記発光量が零となるときの駆動電流を零駆動電流として演算し、M通りの前記零駆動電流の平均値を推定閾値電流として演算するステップと、検出した前記駆動電流とこれに対応する発光量との対応に基づき、前記駆動電流から前記推定閾値電流を減算した値を発光電流とし、当該発光電流の演算に用いた前記駆動電流に対応する発光量と前記発光電流とに基づき、所望の発光量を得るために必要な発光電流を演算し、演算した発光電流と前記推定閾値電流との和を、前記所望の発光量を得るための駆動電流として前記発光素子に供給するステップと、を備えることを特徴としている。
【0041】
また、請求項2にかかる発光素子駆動方法は、前記N通りの発光量は予め設定され、前記N通りの駆動電流とこれに対応する発光量との対応のうちの2通りから得られる複数の一次近似式のうち、前記M通りの一次近似式から得られる前記推定閾値電流と前記発光素子の予め予測された閾値電流との差がより小さくなるときの前記一次近似式の組み合わせを予め検出しこれを閾値電流演算用の組み合わせとして設定しておき、前記一次近似式を算出するステップでは、検出された前記駆動電流と前記発光量との対応のうち、前記閾値電流演算用の組み合わせに属する前記一次近似式の演算に必要な前記対応を用いて、前記閾値電流演算用の組み合わせに属する複数の前記一次近似式を演算することを特徴としている。
【0042】
さらに、請求項3にかかる発光素子駆動方法は、前記推定閾値電流と前記発光素子の予め予測された閾値電流との差を抑制するための補正演算を予め設定しておき、前記推定閾値電流を演算するステップでは、前記零駆動電流の平均値に対して前記補正演算を行った値を前記推定閾値電流とすることを特徴としている。
また、請求項4にかかる発光素子駆動方法は、前記補正演算は、前記零駆動電流の平均値を予め設定した補正値で割り算する処理であることを特徴としている。
また、請求項5にかかる発光素子駆動方法は、前記補正演算は、前記零駆動電流の平均値から予め設定した補正値を減算する処理であることを特徴としている。
【0043】
ここで、駆動電流が真の閾値電流近傍の値であること、或いは、温度環境や自身の発熱などの影響等により、発光量が不安定となり駆動電流と発光量との対応が不安定となる場合があるため、このような不安定な対応に基づく一次近似式を用いて閾値電流を推定した場合、閾値電流が不安定成分の影響を受ける可能性がある。しかしながら、請求項1にかかる発光素子駆動方法では、M通りの一次近似式から演算した零駆動電流の平均値を、推定閾値電流としているため、零駆動電流に不安定成分が含まれる場合であってもその影響は1/Mとなる。このため、不安定成分が閾値電流に与える影響を抑制することができ、すなわちその分、推定閾値電流の精度向上を図ることが可能となる。
【0044】
また、発光素子の駆動電流−発光量特性線に対する、一次近似式の設定位置によって、演算される零駆動電流と真の閾値電流との差が大きくなる可能性がある。しかしながら、請求項2に係る発光素子駆動方法では、零駆動電流の平均値から得られる閾値電流と真の閾値電流との差がより小さくなる一次近似式の組み合わせを予め設定し、この設定した一次近似式の演算に必要な、駆動電流とこれに対応する発光量との対応を予め設定している。そして、検出したN通りの発光量で発光させるために必要な駆動電流とそのときの発光量との対応のうち、設定された一次近似式の演算に必要な対応を用いて前記一次近似式を演算し、且つこれら設定されたM通りの一次近似式を用いて閾値電流を演算するため、発光素子の駆動電流−発光量特性線に対する一次近似式の設定位置によって生じる、零駆動電流の平均値に基づく閾値電流と真の閾値電流との差を抑制することができる。
【0045】
さらに、請求項3に係る発光素子駆動方法では、発光素子の駆動電流−発光量特性線に対する一次近似式の設定位置によって生じる、零駆動電流の平均値に基づく閾値電流と真の閾値電流との差を抑制するための予め設定した補正演算を行っているため、この補正演算により、零駆動電流の平均値に基づく推定閾値電流と真の閾値電流との差を抑制することができる。特に、補正演算として、零駆動電流の平均値を予め設定した補正値で割り算したり、或いは零駆動電流の平均値から予め設定した補正値を減算したりすることによって単純な演算で容易に誤差の低減を図ることができる。
【発明の効果】
【0046】
本発明によれば、M通りの一次近似式から演算した零駆動電流の平均値を、推定閾値電流としているため、温度環境や駆動電流が閾値電流近傍の値であることなどに起因して、検出された駆動電流と発光量との対応に不安点成分が含まれる場合であっても、閾値電流に与える不安定成分の影響を抑制することができる。つまり、閾値電流の検出精度を向上させることができるため、結果的に、発光素子の駆動制御をより高精度に行うことができる。
さらに、発光素子の駆動電流−発光量特性線に対する一次近似式の設定位置に起因する推定閾値電流と真の閾値電流との誤差を、この誤差を小さくすることの可能な一次近似式の設定位置を予め検出しておきこれに基づき一次近似式を演算すること、或いは、この誤差を抑制するために必要な補正演算を、零駆動電流の平均値に対して行うこと等により、さらに高精度な推定閾値電流を得ることができる。
【図面の簡単な説明】
【0047】
【図1】本発明による発光素子駆動方法を適用した4点APC処理の処理手順の一例を示すフローチャートである。
【図2】第1の実施の形態における閾値電流演算処理の演算方法を説明するための説明図である。
【図3】第1の実施の形態による発光素子駆動方法を用いた場合の制御誤差を説明するための説明図である。
【図4】第2の実施の形態における閾値電流演算処理の演算方法を説明するための説明図である。
【図5】第3の実施の形態における閾値電流演算処理の演算方法を説明するための説明図である。
【図6】本発明による発光駆動方法を適用した発光素子駆動装置の機能構成を示すブロック図である。
【図7】従来の発光素子駆動方法を表す2点APC処理の処理手順の一例を示すフローチャートである。
【図8】図7のAPC処理の処理手順の一例を示すフローチャートである。
【図9】従来の閾値電流演算処理の演算方法を説明するための説明図である。
【図10】従来の発光素子駆動方法を用いた場合の制御誤差を説明するための説明図である。
【図11】温度環境等に起因する、駆動電流に対する発光素子の発光量のばらつきを説明するための説明図である。
【発明を実施するための形態】
【0048】
以下、本発明の一実施の形態を、図面を参照して説明する。
まず、第1の実施の形態を説明する。
本発明を適用した発光素子駆動装置の構成は、図6に示す従来の発光素子駆動装置の構成と同様であるのでその詳細な説明は省略する。
すなわち、図6の発光素子駆動装置では、APC処理実行時には、スイッチ13により駆動値制御部12が出力する制御値K12を選択し、光学ピックアップ16が受光した受光量K16と基準値Kmとが釣り合うように、発光素子15の駆動電流K14を自動調整して、発光素子15の光量調整を行う。そして、APC処理を実行することで検出される基準値Kmと受光量K16とが平衡する制御値K12をメモリ17に記憶する。
一方、発光素子15を任意の発光量で発光させる時には、スイッチ13により演算部18からの制御値K18を選択する。そして、メモリ17に記憶されている、基準値Kmと受光量K16とが平衡するときの制御値K12をもとに、演算部18が演算を行って制御値K18を出力する。
【0049】
次に、第1の実施の形態における発光素子駆動方法の一例を、図1から図3を用いて説明する。
図1は、APC処理により、発光量とこれに対応する制御値K12をN=4通り求め、4つの平衡点を用いて閾値電流を推定する場合のAPC処理(以後、4点APC処理という。)の処理手順の一例を示すフローチャートである。なお、Nは、3以上の整数であり、ここでは、N=4としている。
この4点APC処理では、図1に示すように、まず、ステップS1で、第1の基準値Kmとして任意の基準値aを設定し、ステップS2に移行してAPC処理を実行する。すなわち、光学ピックアップ16からの受光量K16が基準値aと一致するように、制御値K12を調整する。そして、受光量K16と基準値aとが平衡状態となったとき、この平衡状態における制御値K12と基準値aとを対応付けてメモリ17に格納する(ステップS3)。
【0050】
ついで、ステップS4に移行し、第2の基準値Kmとして任意の基準値dを設定し、光学ピックアップ16からの受光量K16が基準値dと一致するようにAPC処理を実行し(ステップS5)、受光量K16と基準値dとが平衡状態となったとき、この平衡状態における制御値K12と基準値dとを対応付けてメモリ17に格納する(ステップS6)。
同様に、ステップS7では、第3の基準値Kmとして任意の基準値eを設定し、光学ピックアップ16からの受光量K16が基準値eと一致するようにAPC処理を実行し(ステップS8)、受光量K16と基準値eとが平衡状態となったとき、この平衡状態における制御値K12と基準値eとを対応付けてメモリ17に格納する(ステップS9)。
【0051】
さらに、ステップS10では、第4の基準値Kmとして任意の基準値fを設定し、光学ピックアップ16からの受光量K16が基準値fと一致するようにAPC処理を実行し(ステップS11)、受光量K16と基準値fとが平衡状態となったとき、この平衡状態における制御値K12と基準値fとを対応付けてメモリ17に格納する(ステップS12)。
ついで、ステップS13に移行し、後述の閾値電流演算処理を実行し、メモリ17に記憶した4つの基準値Kmとこれに対応する制御値K12とから閾値電流を演算する。そして、処理を終了する。
【0052】
なお、基準値a、基準値d、基準値e、基準値fは、基準値a>基準値d>基準値e>基準値fを満足する値である。また、例えば、基準値aは、発光素子15に供給可能な駆動電流の範囲内において比較的大きな電流値相当に設定される。基準値fは、発光素子15が発光可能な比較的小さな電流値相当に設定される。基準値d、基準値eは、基準値aと基準値dの差、基準値dと基準値eとの差、基準値eと基準値fとの差がそれぞれ略同等程度となるように設定される。
【0053】
つまり、図2に示すように、これら基準値aに対応する平衡点Aが、発光素子15への供給可能な駆動電流の比較的大きな位置となり、基準値fに対応する平衡点Fが、発光素子15が発光可能な比較的小さな駆動電流となる位置となり、基準値dおよび基準値eに対応する平衡点DおよびEが、平衡点Aおよび平衡点Fとの間に配置され、且つ隣接する平衡点間の駆動電流の差が略同等程度となるように設定される。
なお、これら基準値はこれに限るものではなく任意に設定することができる。
【0054】
また、図1のステップS2、ステップS5、ステップS8、ステップS11で実行されるAPC処理は、図6の発光素子駆動装置において、スイッチ13が駆動値制御部12の出力する制御値K12を選択している状態における、前述のAPC処理そのものを示しており、APC処理の具体的な処理手順は、前記図8の処理手順と同様である。つまり光学ピックアップ16からの受光量K16と基準値Kmとが平衡するように発光素子15への駆動電流を増減させて自動で調整している。
【0055】
次に、図1のステップS13で実行される閾値電流演算処理について説明する。
前述のように、発光素子15として、例えば、半導体レーザや発光ダイオードなどの半導体発光素子を用いた場合、駆動電流と発光量との関係は、図2の実線で示す駆動電流−発光量特性線L0で表される特性を持つことが知られている。すなわち、図2中の実閾値電流Ith以下では発光素子15は発光せず、実閾値電流Ithよりも大きな駆動電流の領域で発光素子15は発光する。また、実閾値電流Ithよりも大きな駆動電流の領域では、駆動電流が大きいときほど、駆動電流の変化に対する発光量の変化がより大きくなる特性を持つ。
【0056】
ここで、図1のステップS2におけるAPC処理を実行することによって、基準値aに対応するA点(駆動電流Ia、発光量Pa)で平衡となったものとする。同様に、図1のステップS5、ステップS8、ステップS11におけるAPC処理によって、基準値dに対応するD点(駆動電流Id、発光量Pd)、基準値eに対応するE点(駆動電流Ie、発光量Pe)、基準値fに対応するF点(駆動電流If、発光量Pf)がそれぞれAPC処理により平衡することが検出されたものとする。前述のように、発光量と駆動電流とは、駆動電流−発光量特性線L0で表される特性を有するため、これら平衡点、A点、D点、E点、F点は、駆動電流−発光量特性線L0上の点であるとみなすことができる。
【0057】
ここで、本実施形態では、発光素子15の閾値電流を、M(Mは前記Nより小さい2以上の整数)通りの駆動電流−発光量特性線L0の一次近似式を算出しこれら一次近似式を用いることにより算出する。本実施形態ではN=4であるので、2点の一次近似によりM=3本の特性線を想定する。例えば、図2中に破線で示される、平衡点Aと、平衡点D、平衡点E、平衡点Fのそれぞれとを結ぶL1、L2、L3で示される特性線を想定することができる。
【0058】
前記従来の2点APC処理における閾値電流演算処理と本実施形態における4点APC処理における閾値電流演算処理との比較のために、前記図9における発光素子15の特性を示す駆動電流−発光量特性線L0と、図2の発光素子15の特性を示す駆動電流−発光量特性線L0とは同じ特性としている。また、図2におけるA点と図9におけるA点とは、受光量K16が基準値aとなるようにAPC処理を実行することにより得られた平衡点A(駆動電流Ia、発光量Pa)を表し、これらは同じ点である。
【0059】
なお、図1のステップS1で設定された基準値aと光学ピックアップ16の受光量K16とがAPC処理によって平衡することが検出されたときの発光素子15の発光量をPa、前記発光素子15を発光量Paで発光させる駆動部14が出力する駆動電流をIaとしている。同様に、図1のステップS4で設定された基準値dと光学ピックアップ16の受光量K16とがAPC処理によって平衡することが検出されたときの発光素子15の発光量をPd、前記発光素子15を発光量Pdで発光させる駆動部14が出力する駆動電流をIdとし、図1のステップS7で設定された基準値eと光学ピックアップ16の受光量K16とがAPC処理によって平衡することが検出されたときの発光素子15の発光量をPe、前記発光素子15を発光量Peで発光させる駆動部14が出力する駆動電流がIe、図1のステップS10で設定された基準値fと光学ピックアップ16の受光量K16とがAPC処理によって平衡することが検出されたときの発光素子15の発光量をPf、前記発光素子15を発光量Pfで発光させる駆動部14が出力する駆動電流をIfとしている。
【0060】
図1のステップS1からステップS11の処理を実行することにより、メモリ17には、駆動部14に駆動電流Iaを出力させる制御値K12、駆動部14に駆動電流Idを出力させる制御値K12、駆動部14に駆動電流Ieを出力させる制御値K12、駆動部14に駆動電流Ifを出力させる制御値K12が記憶される。演算部18では、メモリ17に記憶されているこれら制御値K12をもとに、推定閾値電流Ith_adv1と任意の発光量を得るための発光電流Ion_adv1とを算出すべく次の演算を行う。
【0061】
まず、前述のように、図2中の特性線L1、L2、L3の発光量が零となる駆動電流が発光素子15の閾値電流に相当すると想定することができる。これら特性線L1、L2、L3から想定される閾値電流は次式で求めることができる。
すなわち、特性線L1から想定される閾値電流である、特性線L1の発光量が零となる駆動電流Ith1は(10)式で求めることができる。以後、この駆動電流Ith1を零駆動電流Ith1という。
Ith1=(Id×Pa−Ia×Pd)/(Pd−Pa) ……(10)
【0062】
同様に、特性線L2から想定される閾値電流である、特性線L2の発光量が零となる駆動電流Ith2は(11)式で求めることができる。以後、この駆動電流Ith2を零駆動電流Ith2という。
Ith2=(Ie×Pa−Ia×Pe)/(Pe−Pa) ……(11)
さらに、特性線L3から想定される閾値電流である、特性線L3の発光量が零となる駆動電流Ith3は(12)式で求めることができる。以後、この駆動電流Ith3を零駆動電流Ith3という。
Ith3=(If×Pa−Ia×Pf)/(Pf−Pa) ……(12)
次に、これら一次近似式それぞれから演算される零駆動電流Ith1〜Ith3の平均値を次式(13)から求める。この平均値を、推定閾値電流Ith_adv1とする。
Ith_adv1=(Ith1+Ith2+Ith3)/3 ……(13)
【0063】
すなわち、図1のステップS13の閾値電流演算処理では、まず、図1のステップS2、ステップS5、ステップS8、ステップS11でのAPC処理によって得られた、任意に設定した基準値Kmと受光量K16とが平衡するときの制御値K12から、各基準値Kmに対応する、駆動電流と発光量とで特定される平衡点、A点、D点、E点及びF点を求める。そして、これらのうちの2点による一次近似によって3本の特性線L1〜L3を獲得し、これに基づき3つの零駆動電流Ith1、Ith2、Ith3を算出する。そして、前記(13)式から、前記3つの零駆動電流Ith1、Ith2、Ith3を平均して推定閾値電流Ith_adv1を得る。
【0064】
つまり、発光素子15にN通り(本実施形態ではN=4)の基準値Kmを設定してAPC処理を実行し、これにより得られる前記発光素子15の発光量と対応する駆動電流との関係からM通り(本実施形態ではM=3)の一次近似式を算出する。そして、M通りの一次近似式のそれぞれについて発光量が零となる零駆動電流を求め、その平均値を前記発光素子15の推定閾値電流Ith_adv1としている。
【0065】
図2に示すように、前記(13)式から算出される推定閾値電流Ith_adv1は、各特性線L1〜L3から求められる零駆動電流Ith1、Ith2、Ith3の平均値であるため、図9に示す従来の1本の特性線L51から閾値電流を得る場合に比較して、発光素子15の実閾値電流Ithを反映していることがわかる。
ここで、図2に示すように、F点は実閾値電流Ith近傍の値に設定されており、他のA点、D点、E点における発光量Pa、Pd、Peに比較して発光素子15の発光量が微小であり、また、発光素子15が温度特性を持つことなどの理由によりAPC処理実行時に発光量が不安定となりやすい。しかしながら、上述のように各特性線L1〜L3から求められる零駆動電流の平均値から推定閾値電流Ith_adv1を演算している。そのため、仮に、F点(駆動電流If、発光量Pf)を用いて算出される零駆動電流Ith3にAPC処理実行時の不安定量による影響が生じたとしても、その不安定量は低減されることになる。
【0066】
例えば、駆動電流Ifが実閾値電流Ith近傍の値であるため、APC処理時に発光素子15の発光量が不安定となった場合、前述の図11で説明したように、不安定量が含まれる駆動電流Ifおよび発光量Pfとの関係を用いた特性線L3に基づき零駆動電流Ith3を演算した場合、得られた零駆動電流Ith3には、不安定成分ΔIth3が含まれることになる。この場合、零駆動電流Ith3は、中心値Ith3_meanと不安定成分±ΔIth3とを用いて次式(14)で表すことができる。
Ith3=Ith3_mean±ΔIth3 ……(14)
【0067】
ここで、(14)式を(13)式に代入すると、次式(15)を得ることができる。
Ith_adv1
=(Ith1+Ith2+Ith3)/3
={Ith1+Ith2+(Ith3_mean±ΔIth3)}/3 ……(15)
よって、F点を閾値近傍に設定することにより生じるAPC処理実行時の零駆動電流の不安定成分が、推定閾値電流Ith_adv1に与える影響ΔIth_adv1は次式(16)で表すことができる。
ΔIth_adv1=ΔIth3/3 ……(16)
【0068】
つまり、前記(13)式に示すように、推定閾値電流Ith_adv1は、それぞれの零駆動電流Ith1、Ith2、Ith3を平均しているため、(16)式で証明されたように零駆動電流Ith3のばらつきΔIth3による影響ΔIth_adv1は1/M倍となる。本実施例ではM=3であるので1/3倍になることを示している。つまり、平衡点Fが実閾値電流Ith近傍相当の値であることにより、APC処理実行時に生じる不安定量が、推定閾値電流Ith_adv1に与える影響が1/3となることになる。
【0069】
本発明は上記構成としたため以下の効果を得ることができる。
すなわち、発光素子15の閾値電流を算出するための発光量と駆動電流とが平衡となる平衡点を得る際に、発光素子15の実閾値電流Ith近傍相当の値が平衡点となるようにAPC処理を行った場合であっても、各特性線L1〜L3に基づく零駆動電流Ith1〜Ith3の平均値を推定閾値電流Ith_adv1としているため、平衡点が実閾値電流Ith近傍相当の値とすることにより生じる不安定成分が、推定閾値電流Ith_adv1に与える影響を小さくすることができる。
【0070】
つまり、従来のように、1本の特性線に基づいて推定閾値電流Ith′を得る方法にあっては、発光素子15が温度特性を持つことにより発光量が不安定となること、および、実閾値電流Ith近傍では、駆動電流に対する発光量が不安定となる可能性があることの2つの不安定要因があるため、1本の特性線を設定する際には、これら2つの不安定要因の影響を受けないようにするために、APC処理における基準値Kmを実閾値電流Ith近傍相当の値とならないように設定し、且つ、その際には、温度環境などによる発光量のばらつきをも考慮して基準値Kmを設定する必要がある。そのため、基準値Kmを、得られる零駆動電流が実閾値電流Ithよりもある程度離れた位置となるように設定せざるを得ず、これはすなわち、実閾値電流Ithと零駆動電流つまり推定閾値電流Ith′との誤差となる。
【0071】
これに対し、本発明は、上述のように推定閾値電流Ith_adv1に含まれる、不安点成分の影響を小さくすることができる。そのため、その分、特性線から得られる零駆動電流が実閾値電流Ith近傍の値となるように、特性線を設定することができる。
したがって、1本の特性線に基づいて推定閾値電流Ith′を得る方法に比較して、特性線から得られる零駆動電流を、実閾値電流Ithに一層近づけて設定することができる。このため、結果的に、零駆動電流から得られる推定閾値電流Ith_adv1を実閾値電流Ithに近づけることができ、すなわち、閾値電流の演算精度を向上させることができる。
【0072】
また、各特性線L1〜L3に基づく零駆動電流Ith1〜Ith3の平均値から推定閾値電流Ith_adv1を演算しているため、実閾値電流Ith近傍において、APC処理を実行することによる不安点量だけでなく、他の、実閾値電流から離れた平衡点、A点、D点、E点における駆動電流と発光量との対応を表す特性に含まれる不安定量についても1/(N−1)倍とすることができ、全体的に、一層高精度な閾値電流を演算することができる。
【0073】
また、推定閾値電流Ith_adv1は、一次近似によって求められた各特性線L1〜L3に基づく零駆動電流Ith1〜Ith3の平均値を演算しているのみであって、前記(9)式で示した最小二乗法演算のような複雑な演算は必要ない。ここで、最小二乗法による閾値電流演算方法は、APC処理によって得た2点の平衡点を用いているのに対し、本実施形態における閾値電流演算方法は、APC処理によって得た4点の平衡点を用いて閾値電流を算出しているにも関わらず必要な演算は簡単である。
【0074】
つまり、本実施形態における閾値電流演算方法は、精度を向上させる目的で、閾値電流の演算に用いる平衡点の数Nを増やし、APC処理によって、より多くの駆動電流と発光量とが平衡する平衡点を求めて閾値電流を算出したとしても、上記従来のような最小二乗法を用いた閾値電流演算方法に比較して必要とされる演算回路の回路規模は小さくてすむ。したがって、例えば集積回路などの回路規模の実現が容易であって、且つ、低消費電流で実現することができる。
また、このようにして得た推定閾値電流Ith_adv1を用いて、発光素子15を発光させる場合、例えば、図2のA点の発光量Paを目標値とした場合に必要な発光電流Ion_adv1は次式(17)で表すことができる。
Ion_adv1=Ia−Ith_adv1 ……(17)
【0075】
ここで、補正の目的などで、発光量Paを得るために必要な発光電流Ion_adv1に、上記従来と同一の任意の係数k(ここでは、k<1)を乗算し、この乗算の結果得られる発光電流Ion_c_advに対応する発光量Pc_advを、発光素子15の発光量の目標値とした場合、この発光量Pc_advを得るために必要な発光電流Ion_c_advは、次式(18)で表される。なお、この発光電流Ion_c_advに対応する発光量Pc_advを得られる平衡点をC_adv(駆動電流Ic_adv、発光量Pc_adv)とする。
Ion_c_adv=k×(Ia−Ith_adv1) ……(18)
【0076】
図3に、平衡点Aの駆動電流Iaおよび発光量Paを基準として、発光量Paのk倍の発光量を得るために必要な、推定閾値電流Ith_adv1に基づく発光素子15の発光電流Ion_c_advに対応する発光量Pc_adv(平衡点C_adv)と、同様に平衡点Aの駆動電流Iaおよび発光量Paを基準として、発光量Paのk倍の発光量を得るために必要な、実閾値電流Ithに基づく発光素子15の発光電流Ion_cに対応する発光量Pc(平衡点C)との差異ΔPc_advを示す。
【0077】
なお、図3中の平衡点C(駆動電流Ic、発光量Pc)と前記図10中のC点(駆動電流Ic、発光量Pc)とは同一点を表す。
図3に示すように、C_adv点の発光量Pc_advを目標値として発光させる場合に必要な駆動電流Ic_advは、(13)式で求められた推定閾値電流Ith_adv1と(18)式で求められた発光電流Ion_c_advとを加算した値となる。このため、推定閾値電流Ith_adv1に基づく発光量Pc_advと、実閾値電流Ithに基づく発光量Pcとの差分ΔPc_advは、前記図10に示す閾値電流Ith′に基づく発光量Pc′と実閾値電流Ithに基づく発光量Pcとの差であるΔPc′に比較して小さく、発光素子15の発光量を高精度に制御することができることがわかる。
【0078】
ここで、平衡点Aの駆動電流Iaおよび発光量Paを基準として、発光量Paのk倍の発光量を得るために必要な、推定閾値電流Ith_adv1に基づく発光素子15の発光電流Ion_c_adv(平衡点C_adv)と、同様に平衡点Aの駆動電流Iaおよび発光量Paを基準として、発光量Paのk倍の発光量を得るために必要な、実閾値電流Ithに基づく発光素子15の発光電流Ion_c(平衡点C)との差異ΔIon_c_advは次式(19)で表すことができる。
ΔIon_c_adv
=Ion_c−Ion_c_adv=k×(Ith_adv1−Ith) ……(19)
前述のように推定閾値電流Ith′に比較して推定閾値電流Ith_adv1は不安定成分の影響の少ないより安定した値であるから、推定閾値電流を高精度に算出することで発光素子15の発光量をより高精度に制御できることがわかる。
【0079】
なお、演算部108では、このようにして演算した推定閾値電流Ith_adv1を記憶しておく。そして、例えば、推定閾値電流Ith_adv1を基準とした発光量に応じた発光電流と推定閾値電流Ith_adv1との和からなる駆動電流相当の制御値K18を、スイッチ13を介して駆動部14に出力し、発光素子15の発光制御は前記発光電流を調整することにより行う。すなわち、発光素子15を発光させない場合には、発光電流は零として制御値K18を演算するため、制御値K18は、推定閾値電流Ith_adv1相当の値となり、発光素子15は発光しない。一方、基準値aの発光量Paを、発光素子15の発光量の目標値とする場合には、前記(17)式にしたがって、メモリ17に記憶している基準値aに対応する制御値K12から特定される駆動電流Iaから前記推定閾値電流Ith_adv1を減算して発光電流を求め、この発光電流をもとに制御値K18を演算する。このため、制御値K18は、推定閾値電流Ith_adv1と発光電流との和相当の値となり、発光素子15は発光し、その発光量は、発光量Pa相当となる。なお、基準値d、基準値e、基準値fに対応する発光量を、発光素子15の発光量Pd、Pe、Pfの目標値とする場合も同様であって、前記(17)式と同様の手順で、メモリ17に記憶しているこれら準値に対応する制御値K12から特定される駆動電流から前記推定閾値電流Ith_adv1を減算して発光電流を求め、この発光電流をもとに制御値K18を演算する。このため、制御値K18は、推定閾値電流Ith_adv1と発光電流との和相当の値となり、発光素子15は発光し、その発光量は、発光量Pd、Pe、Pf相当となる。
【0080】
また、上記第1の実施の形態では、N=4とし、4通りの基準値を設定し、M(=3)本の特性線を設定する場合について説明したが、これに限るものではなく、Nは3以上の整数であればよく、且つMはNよりも小さい2以上の整数であればよい。
つまり、上述のように推定閾値電流Ith_adv1を、各特性線から得られる零駆動電流の平均値から演算しているため、少なくとも2本の特性線を得ることができればよく、2本の特性線を得るためには少なくとも3つの平衡点があればよい。
【0081】
N通りの基準値を設定する場合、発光素子15に供給可能な駆動電流の範囲内において比較的大きな電流値相当の基準値と、発光素子15が発光可能な比較的小さな電流値相当の基準値を少なくとも含むように設定する。そして、N通りの基準値のうち、基準値に対応する駆動電流が最大のものを第1の基準値とし、基準値に対応する駆動電流が次に大きいものを第2の基準値、…、基準値に対応する駆動電流が最小のものを第Nの基準値としたとき、前記図2に示すようにM(=N−1)通りの特性線を設定する場合には、例えば、第1の基準値に対応する平衡点と第Nの基準値に対応する平衡点、第1の基準値に対応する平衡点と第N−1の基準値に対応する平衡点、第1の基準値に対応する平衡点と第N−2の基準値に対応する平衡点、…、第1の基準値に対応する平衡点と第2の基準値に対応する平衡点、それぞれについて一次近似し、M(=N−1)通りの特性線を算出すればよい。
【0082】
また、特性線を得る際に、必ずしも全ての特性線が、基準値に対応する駆動電流が最大となる第1の基準値に対応する平衡点を通る必要はなく、2本以上の特性線を得ることができればどの平衡点を用いてもよい。
ここで、上述のように、推定閾値電流Ith_adv1を、各特性線から得られる零駆動電流の平均値から演算しているため、各特性線から得られる零駆動電流が比較的小さな値であれば得られる推定閾値電流Ith_adv1は比較的小さな値となる。つまり多少温度環境の影響をうける可能性はあるが、推定閾値電流Ith_adv1と実閾値電流との誤差は小さくなる。逆に、各特性線から得られる零駆動電流が比較的大きな値であれば得られる推定閾値電流Ith_adv1は比較的大きな値となるため、比較的温度環境の影響はうけにくいが、実閾値電流との誤差が多少大きくなる可能性がある。
【0083】
したがって、例えば、これらを考慮して一次近似に用いる平衡点を特定して特性線を生成すれば、温度環境などの影響をうける可能性はあるが実閾値電流との誤差が比較的小さい推定閾値電流Ith_adv1や、温度環境などの影響をうけにくいが実閾値電流との誤差が多少大きくなる可能性のある推定閾値電流Ith_adv1等、特性の異なる推定閾値電流Ith_adv1を得ることができる。そのため、実閾値電流との誤差が多少生じる可能性はあるものの、比較的温度環境などの影響が小さい推定閾値電流Ith_adv1を得るためには、例えば、基準値に対応する駆動電流が比較的大きくなる2つの平衡点を通る特性線と、基準値に対応する駆動電流が比較的小さくなる2つの平衡点を通る特性線と、を含むM通りの特性線を用いて、推定閾値電流Ith_adv1を演算すればよい。
【0084】
具体的には、例えば、第Nの基準値に対応する平衡点と第N−1の基準値に対応する平衡点、第1の基準値に対応する平衡点と第2の基準値に対応する平衡点について、これらそれぞれの一次近似から得られる特性線を含むM通りの特性線を生成する。これによって、温度環境などの影響はうけにくいが実閾値電流との誤差が多少生じる可能性のある零駆動電流と、温度環境などの影響を多少うける可能性はあるが実閾値電流との誤差が比較的小さい零駆動電流とを含む零駆動電流値の平均値から推定閾値電流Ith_adv1が得られるため、実閾値電流との誤差が多少生じる可能性はあるものの比較的温度環境などの影響が比較的小さい推定閾値電流Ith_adv1を得ることができる。
【0085】
また、上述のように、推定閾値電流Ith_adv1は、特性線の設定の仕方によって温度環境の影響を受け易くなったり受けにくくなったりするが、特性線は平衡点から生成されるため、平衡点の取り方、すなわち基準値の値によっても推定閾値電流Ith_adv1は温度環境の影響を受け易くなったり受けにくくなったりすることになる。したがって、平衡点についてもこれらを考慮して設定することによって、温度環境などの影響を受けにくく且つ実閾値電流との誤差が比較的小さい推定閾値電流Ith_adv1を得ることができる。すなわち、第1の基準値はこれに対応する駆動電流が、発光素子15への供給可能な駆動電流の範囲内において比較的大きな値となるように設定し、第Nの基準値はこれに対応する駆動電流が発光素子15を発光可能な駆動電流相当となるように設定する。そして、第1の基準値と第Nの基準値との間に、第2の基準値から第N−1の基準値を設定する。このとき、例えば、隣接する基準値との間の対応する駆動電流の差が略同等程度となるように設定してもよい。また、実閾値電流との誤差が比較的小さい推定閾値電流Ith_adv1を得たい場合には、対応する駆動電流が比較的小さくなるように基準値を設定して特性線から得られる零駆動電流が比較的小さくなるようにし、実閾値電流との誤差は多少生じる可能性はあるものの温度環境の影響が比較的小さい推定閾値電流Ith_adv1を得たい場合には、対応する駆動電流が比較的大きくなるように基準値を設定して、特性線から得られる零駆動電流が比較的大きくなるようにすればよい。
【0086】
次に、本発明の第2の実施の形態を説明する。
この第2の実施の形態は、上記第1の実施の形態において、図1のステップS13での閾値電流演算処理の処理手順が異なることは同一であるので、同一部には同一符号を付与しその詳細な説明は省略する。
この第2の実施の形態では、図6に示す発光素子駆動装置は、上記第1の実施の形態と同様の手順で、基準値a、基準値d、基準値e、基準値fを基準値Kmとして順次設定してAPC処理を実行し、図2に示す、A点(駆動電流Ia、発光量Pa)、D点(駆動電流Id、発光量Pd)、E点(駆動電流Ie、発光量Pe)、F点(駆動電流If、発光量Pf)からなる平衡点を求める。基準値a、基準値d、基準値e、基準値fは、基準値a>基準値d>基準値e>基準値fである。
【0087】
この第2の実施の形態では、これら平衡点に基づき一次近似式を算出する際に、算出に用いる2点の平衡点として最適な任意の2点を用いることで、推定閾値電流と発光電流との検出精度向上を図っている。
すなわち、この第2の実施の形態では、一次近似式を算出する際に用いる最適な2点の平衡点として、図4に示すように、例えば、A点とE点、D点とF点、E点とF点を設定している。そして、A点とE点との一次近似により特性線L11を算出し、D点とF点との一次近似により特性線L12を算出し、E点とF点との一次近似により特性線L13を算出する。
【0088】
そして、特性線L11において発光量が零となる駆動電流を、閾値電流に相当する零駆動電流Ith11として次式(20)から演算する。
Ith11=(Ie×Pa−Ia×Pe)/(Pe−Pa) ……(20)
同様に、特性線L12において発光量が零となる駆動電流を、閾値電流に相当する零駆動電流Ith12として次式(21)から演算する。
Ith12=(If×Pd−Id×Pf)/(Pf−Pd) ……(21)
さらに、特性線L13において発光量が零となる駆動電流を、閾値電流に相当する零駆動電流Ith13として次式(22)から演算する。
Ith13=(If×Pe−Ie×Pf)/(Pf−Pe) ……(22)
【0089】
そして、上記第1の実施の形態と同様に、前記(20)から(22)で得られる零駆動電流Ith11〜Ith13の平均値を次式(23)から求め、これを発光素子15の推定閾値電流Ith_adv2とする。
Ith_adv2=(Ith11+Ith12+Ith13)/3 ……(23)
ここで、一次近似式を算出する際に最適な任意の2点とは、それぞれ最適な任意の2点から特定される一次近似式L11〜L13を用いて上記(20)から(23)式にしたがって推定閾値電流Ith_adv2を演算した際に、この得られた推定閾値電流Ith_adv2が、発光素子15の実閾値電流Ithにより近くなるように設定される2つの平衡点をいう。
【0090】
つまり、前述のように、発光素子15の駆動電流−発光量の関係は、図4中に実線で示す駆動電流−発光量特性線L0のように、駆動電流が、実閾値電流Ithよりも大きい領域で発光素子15は発光し、且つ、駆動電流が実閾値電流Ithよりも大きい領域では、駆動電流が大きいときほど発光量は大きくなり、且つ駆動電流が大きいときほど駆動電流の変化に対する発光量の変化量はより大きくなる。このため、駆動電流−発光量特性線L0上の2点からなる特性線L11〜L13の設定の仕方によって、各特性線L11〜L13のそれぞれにより得られる発光量が零となるときの零駆動電流は変化する。
【0091】
そのため、発光素子15の仕様などから予測される、駆動電流−発光量特性線L0において、APC処理における基準値Kmとして予め設定された4点について、これら4点のうちの2点を通る特性線を想定し、この想定した特性線から得られる零駆動電流に基づき、何れか3本の特性線から得られる零駆動電流の平均値、すなわち、推定閾値電流Ith_adv2が、駆動電流−発光量特性線L0から推測される実閾値電流Ithに最も近くなると予測される3つの特性線を予め特定する。そして、このときの、3つの特性線について各特性線の算出に用いる2点の平衡点を予め特定する。この3つの特性線毎に設定される2点の平衡点が、一次近似式L11〜L13を算出する際の最適な2点となる。
【0092】
このようにして設定された最適な2点に基づき各一次近似式を求め、これをもとに上述の(20)式〜(22)式から、零駆動電流Ith11〜Ith13を求め、その平均値を推定閾値電流Ith_adv2とする。
このようにして演算される推定閾値電流Ith_adv2は、駆動電流−発光量特性線L0に対する特性線L11〜L13の設定位置に起因する、実閾値電流Ithと推定閾値電流Ith_adv2との誤差が比較的小さい値となる。
したがって、駆動電流−発光量特性線L0に対する特性線L11〜L13の設定位置に起因する実閾値電流Ithとの誤差の少ない、より高精度な推定閾値電流Ith_adv2を得ることができる。
【0093】
また、この第2の実施の形態においても、上記第1の実施の形態と同様に、3本の特性線から得られる零駆動電流の平均値を推定閾値電流Ith_adv2として演算しているため、APC処理における基準値Kmを、発光素子15の実閾値電流Ith近傍相当の値に設定したとしても、従来に比較してより安定した高精度な推定閾値電流Ith_adv2を得ることができると共に、APC処理における基準値を実閾値電流Ith近傍相当の値に設定することに起因する不安定量だけではなく、図4の平衡点、A点、D点、E点、F点のそれぞれにおける発光量の不安定量も1/M(この場合M=3)となり、従来技術に比較して、全体的により安定して推定閾値電流を算出することができる。また、零駆動電流に基づく、(23)式の演算では、平均値の演算を行っているのみであるため、この第2の実施の形態においても、閾値電流の演算精度を向上させる目的で基準値Kmの数を増やしたとしても、従来の最小2乗法による閾値電流算出方法に較べて回路規模は小さく、例えば集積回路などの回路での実現が容易であって、より少ない消費電流で実現することができる。
【0094】
また、この第2の実施の形態においても、N=4通りの基準値を設定しM=3通りの特性線を設定する場合に限るものではなく、N通り(N≧3)以上の基準値を設定し、M本(MはNよりも小さい2以上の整数)の特性線を設定することが可能である。
この第2の実施の形態の場合も、N通りの基準値を設定する場合、発光素子15に供給可能な駆動電流の範囲内において比較的大きな電流値相当の基準値と、発光素子15が発光可能な比較的小さな電流値相当の基準値を少なくとも含むように設定する。
【0095】
そして、例えば、前記図4に示すように、第1の基準値に対応する平衡点と第N−1の基準値に対応する平衡点、第2の基準値に対応する平衡点と第Nの基準値に対応する平衡点、第N−1の基準値に対応する平衡点と第Nの基準値に対応する平衡点、のそれぞれの一次近似から得られる特性線を含む、M通りの特性線を算出すればよい。
また、この場合も、M本の特性線の作成に必要な数以上の基準点に対応するN通りの平衡点からM本の特性線を作成する場合には、上記と同様に、駆動電流−発光量特性線L0からはずれた平衡点は、温度環境などの影響をうけている可能性があるとして、この平衡点を除く駆動電流−発光量特性線L0上に並ぶ平衡点のみを用いて推定閾値電流Ith_adv2を演算するようにしてもよい。
【0096】
次に、本発明の第3の実施の形態を説明する。
この第3の実施の形態は、上記第1の実施の形態において、図1のステップS13での閾値電流演算処理の処理手順が異なることは同一であるので同一部には同一符号を付与しその詳細な説明は省略する。
図5は、図6の発光素子駆動装置において、上記第1の実施の形態と同様の手順で、APC処理が実行され、発光素子15の発光量が基準値Kmと平衡となるときの駆動電流で特定される平衡点が、A点(駆動電流Ia、発光量Pa)、D点(駆動電流Id、発光量Pd)、E点(駆動電流Ie、発光量Pe)、F点(駆動電流If、発光量Pf)として検出された状態を表している。
【0097】
この第3の実施の形態においては、ステップS13の閾値電流演算処理では、前記(13)式と同様の手順で平均値Ith_advを演算する。そして、この平均値Ith_advに対して精度向上のための補正演算を行い、補正演算後の電流値を推定閾値電流Ith_adv3とする。ここでは、補正演算として(24)式で示すように、平均値Ith_advを、予め設定した補正値αで割り算する。
Ith_adv3=Ith_adv/α ……(24)
【0098】
ここで、前記平衡点A点、D点、E点、F点に基づき特性線L1〜L3を求め、この特性線L1〜L3により特定される零駆動電流に基づき前記(13)式から、零駆動電流の平均値Ith_adv(=Ith_adv1)を演算すると、図5に示すように、平均値Ith_advは、特性線L1〜L3から求められる零駆動電流の平均値であるため、零駆動電流のばらつきを抑制することはできるものの、温度環境等によらない、駆動電流−発光量特性線L0に対する特性線L1〜L3の設定位置に起因する平均値Ith_advと実閾値電流Ithとの差は生じる。
【0099】
そこで、所定の基準値Kmに対応する平衡点を通る特性線について、予め零駆動電流を演算し、これに基づき平均値Ith_advを求める。そして、平均値Ith_adv/実閾値電流Ithの値に基づき例えば余裕代を考慮して補正値αを設定する。
このようにして補正値αを設定し前記(24)式の演算を行うことによって、得られる平均値Ith_advは補正演算によりさらに実閾値電流Ithに近づくことになり、すなわち推定閾値電流Ith_adv3と実閾値電流Ithとの誤差が抑制される。このため、温度環境等によらない、駆動電流−発光量特性線L0に対する特性線L1〜L3の設定位置に起因して生じる、推定閾値電流Ith_adv3と実閾値電流Ithとの誤差を抑制することができ、すなわちより高精度な推定閾値電流Ith_adv3を得ることができる。
【0100】
なお、この第3の実施の形態においては、補正演算として、平均値Ith_advを補正値αにより割り算する場合について説明したが、これに限るものではない。
例えば、上記と同様の手順で、予め所定の平衡点について前記(13)式から平均値Ith_adv(=Ith_adv1)を求め、平均値Ith_advと実閾値電流Ithとの差を検出する。そして、この実閾値電流Ith−平均値Ith_advの値をもとに、例えば余裕代を考慮して補正値βを設定する。
そして、次式(25)の演算を行う。
Ith_adv4=Ith_adv−β ……(25)
【0101】
この(25)式の演算を行うことによって、平均値Ith_advと実閾値電流Ithとの誤差が抑制されるため、温度環境等によらない、駆動電流−発光量特性線L0に対する特性線L1〜L3の設定位置に起因して生じる平均値Ith_advと実閾値電流Ithとの誤差を抑制することができる。したがって、この場合も、より高精度な推定閾値電流Ith_adv4を得ることができる。
【0102】
なお、補正演算は、上述のように、平均値Ith_advを補正値αにより割り算する方法、平均値Ith_advから補正値βを減算する方法に限るものではない。上記と同様の手順で所定の基準値Kmに対応する平衡点に基づき複数の特性線に基づく零駆動電流の平均値Ith_advを予め求め、この平均値Ith_advに基づき、平均値Ith_advと実閾値電流Ithとの誤差を抑制することの可能な補正関数を求める。そして、任意の基準値Kmに基づいて上記と同様の手順で演算した零駆動電流の平均値Ith_advに対して、予め検出した補正関数演算を行うことによって、精度向上を図ることも可能である。
【0103】
なお、この第3の実施の形態においては、N=4通りの平衡点を求め、これに基づきM=3通りの特性線を生成する場合について説明したが、これに限るものではなく、N≧3通り以上の平衡点を求め、これらからM(Nよりも小さい2以上の整数)本の特性線を演算する場合であっても適用することができる。
また、上記各実施の形態では、推定された閾値電流を用いて、平衡点の発光量を発光素子15の発光量の目標値として発光制御するため、発光素子15の制御可能な発光量が、平衡点に相当する発光量に限定されることになるが、例えば、基準値Kmとして、発光素子15の発光量の目標値相当の値を設定し、これに対応する平衡点を得ることによって、所望の発光量で発光させることができる。
【0104】
また、推定閾値電流を基準とした、目的とする発光量に相当する発光電流が既知であれば、目的とする発光量で発光させることができる。そのため、例えば、既知の平衡点の駆動電流から特定される発光電流とそのときの発光量との対応から、目標とする発光量に相当する発光電流を演算することによって発光電流を制御することによって、目的とする発光電流で発光させる構成とすることも可能である。
【符号の説明】
【0105】
11 比較器
12 駆動値制御部
13 スイッチ
14 駆動部
15 発光素子
16 光学ピックアップ
17 メモリ
18 演算部
【技術分野】
【0001】
本発明は、半導体レーザや発光ダイオードなどの発光素子の駆動方法に関する。
【背景技術】
【0002】
半導体レーザや発光ダイオードなどの発光素子は、駆動電流が閾値電流以下では発光しない。そのため、発光素子に、閾値電流相当のバイアス電流を流し、このバイアス電流以上の範囲で駆動電流を調整することによって所望の発光量となるように調整している。
この調整方法として、例えば、発光素子に2通りの駆動電流を供給し、2通りの駆動電流と、この2通りの駆動電流を供給したときの発光素子の実際の発光量との関係から発光素子自体の特性である閾値電流を算出し、この算出した閾値電流を利用して、発光素子を任意の発光量で発光させる方法が提案されている。つまり、閾値電流は、固定ではなく、温度環境等によって変化するため、現時点での閾値電流を推定し、推定した閾値電流を用いて閾値電流相当のバイアス電流を供給して発光素子を駆動制御するようにしている。この従来の発光素子の駆動方法を、図6から図11を伴って説明する。
【0003】
図6は、発光素子駆動装置の概略構成を示すブロック図である。
この発光素子駆動装置は、比較器11と、駆動値制御部12と、スイッチ13と、駆動部14と、発光素子15と、光学ピックアップ16と、メモリ17と、演算部18と、を備える。
前記比較器11は、発光素子15の目標とする発光量である基準値Kmと、光学ピックアップ16で受光した受光量K16、すなわち、発光素子15の実際の発光量とを比較しその差分信号K11を出力する。
【0004】
駆動値制御部12は、比較器11からの差分信号K11に基づき基準値Kmと受光量K16とを一致させるための、駆動部14に対する制御値K12を生成しこれを出力する。すなわち、受光量K16が基準値Kmに満たない場合は駆動部14が駆動電流K14を大きくして発光素子15の発光量を強める様に制御値K12を制御し、受光量K16が基準値Kmを超える場合は駆動部14が駆動電流K14を小さくして発光素子15の発光量を弱める様に制御値K12を制御する。また、基準値Kmと受光量K16とが平衡するとき、このときの制御値K12を基準値Kmと対応付けてメモリ17に記憶する。
【0005】
スイッチ13は、駆動値制御部12からの制御値K12と演算部18からの制御値K18との何れかを選択し、これを駆動部14に出力する。スイッチ13は図示しない上位装置により制御され、発光素子15の発光量の自動光量調整制御(以下、APC処理ともいう。)を行うときには制御値K12を選択する。発光素子15を所望の発光量で発光させるときには制御値K18を選択する。
【0006】
駆動部14は、駆動値制御部12からの制御値K12または演算部18の制御値K18で指定された駆動電流を発光素子15に供給する。
発光素子15は、例えば、半導体レーザや発光ダイオードなどで構成され、供給される駆動電流に応じた光量で発光する。
光学ピックアップ16は、発光素子15の発光量を受光し、これを受光量K16として比較器11に出力する。
【0007】
演算部18は、メモリ17に記憶されている、APC処理により求められた制御値K12およびこれに対応する基準値Kmをもとに発光素子15の閾値電流を推定し、この推定した閾値電流を用いて発光素子15に任意の発光量での発光を促すための制御値K18を生成する。
つまり、図6の発光素子駆動装置は帰還回路を構成し、受光量K16と基準値Kmとが釣り合うように発光素子15への駆動電流K14を自動調整して前記発光素子15の発光量の光量調整を行う。
【0008】
また、発光素子駆動装置は、メモリ17に記憶されAPC処理によって得られた制御値K12およびこれに対応する基準値Kmをもとに発光素子15を任意の発光量で発光させる時は、演算部18が出力する制御値K18をスイッチ13で選択する。そして、メモリ17の記憶値、すなわち、前記APC処理を実行することにより検出された、基準値Kmと受光量K16とが平衡するときの制御値K12をもとに、演算部18が演算を行って制御値K18を出力する。
【0009】
図7は、発光素子15に2通りの駆動電流を流してAPC処理を実施し、前記発光素子15の発光量から発光素子15自体の特性である閾値電流を算出する処理手順(以後、2点APC処理ともいう。)の一例を表すフローチャートである。
この2点APC処理では、まず、ステップS101で、任意に設定した第1の発光量である基準値aを基準値Kmとして設定する。ついで、ステップS102に移行して上述の手順でAPC処理を実行し、光学ピックアップ16で検出された受光量K16と基準値Km(=a)とが平衡となるときの制御値K12を検出し、基準値aと制御値K12とを対応付けてメモリ17に記憶する(ステップS103)。なおAPC処理の詳細は後述する。
【0010】
ついで、ステップS104に移行し、任意の第2の発光量である基準値bを基準値Kmとして設定し、続いてステップS105に移行して光学ピックアップ16で検出された受光量K16と基準値Km(=b)とが平衡となるようにAPC処理を実行し、これらが平衡となるときの制御値K12と基準値bとを対応付けてメモリ17に記憶する(ステップS106)。基準値bは基準値aよりも小さな値である。
【0011】
次いでステップS107に移行し後述の閾値電流演算処理を行い、図6中の発光素子15の現時点における閾値電流Ithを推定する。以上により、2点APC処理が終了する。
図8は、図7のステップS102及びステップS105で実行されるAPC処理の処理手順の一例を示すフローチャートである。この図8のフローチャートは、図6の発光素子駆動装置において、スイッチ13が駆動値制御部12の出力する制御値K12を選択している状態におけるAPC処理の動作そのものを示している。
【0012】
APC処理では、まず、ステップS111で、光学ピックアップ16で検出された受光量K16と基準値Kmとが等しいかを判断し、等しければそのまま処理を終了する。
一方、光学ピックアップ16で検出された受光量K16と基準値Kmとが等しくなければ、ステップS112に移行し受光量K16が基準値Kmよりも大きいか(K16>Km)を判断する。そして、受光量K16が基準値Kmよりも大きいときにはステップS113に移行して駆動値制御部12では、発光素子15への駆動電流K14を減少させる制御値K12を生成しこれを出力する。また、受光量K16が基準値Kmよりも小さいときにはステップS114に移行し、駆動値制御部12では発光素子15への駆動電流K14を増加させる制御値K12を生成しこれを出力する。
【0013】
以上により、受光量K16が基準値Kmよりも大きいときには制御値K12を減少させ、発光素子15への駆動電流K14を減少させることにより発光素子15の発光量を低下させて受光量K16が基準値Kmと一致するように制御し、逆に、受光量K16が基準値Kmよりも小さいときには制御値K12を増加させ、発光素子15への駆動電流K14を増加することにより発光素子15の発光量を増加させ、受光量K16が基準値Kmと一致するように制御することにより、発光素子15の発光量が基準値Kmと一致するように制御する。つまり受光量K16と基準値Kmとが平衡するように駆動電流を自動で調整する。すなわち、スイッチ13で駆動値制御部12からの制御値K12を選択してなる回路は、発光素子15の発光量の光量調整を自動的に行うAPC制御回路を構成している。
【0014】
次に、図7のステップS107での閾値電流演算処理について説明する。
前記発光素子15として、例えば半導体レーザや発光ダイオードなどの半導体発光素子を用いた場合、駆動電流(I)と発光量(P)との関係は図9の実線L0で表される特性を持つことが知られており、さらに、この実線L0で表される特性において、閾値電流は固定ではなく、温度環境等の要因によって変化することが知られている。
【0015】
なお、図9において、横軸は発光素子15の駆動電流I、縦軸は発光素子15の発光量Pである。以後、この実線L0を駆動電流−発光量特性線という
図9に示すように、発光素子15は、閾値電流Ith以下では発光せず、駆動電流が閾値電流Ithよりも大きいときに発光する。そして、駆動電流が閾値電流Ithよりも大きいときには、駆動電流が大きいときほど発光量は大きくなり、且つ、駆動電流が大きいときほど駆動電流の変化に対する発光量の変化量がより大きくなる。
なお、以下、駆動電流から閾値電流Ithを差し引いた電流、つまり発光素子15が発光する領域に流す電流を発光電流Ionという言葉で表現する。
【0016】
ここで、図7のステップS102およびステップS105でのAPC処理の実行により、基準値Km(=a)および基準値Km(=b)のそれぞれに対応する制御値K12が得られたとする。この基準値Km(=a)に対応する発光量をPa、このときの制御値K12に対応する駆動電流をIaとし、同様に、基準値Km(=b)に対応する発光量をPb、このときの制御値K12に対応する駆動電流をIbとする。
【0017】
これはすなわち、図7のステップ101で設定された基準値aと光学ピックアップ16の受光量K16とがAPC処理の実行によって平衡することが検出されたときの発光素子15の発光量がPa、発光素子15を発光量Paで発光させるときの駆動部14が出力する駆動電流K14がIaであることを表し、同様に図7のステップ104で設定された基準値bと光学ピックアップ16の受光量K16がAPC処理によって平衡することが検出されたときの発光素子15の発光量がPb、発光素子15を発光量Pbで発光させるときの駆動部14が出力する駆動電流K14がIb、であることを表す。
【0018】
図9に示す、横軸を発光素子15の駆動電流I、縦軸を発光素子15の発光量Pとする駆動電流−発光量座標において、基準値Km(=a)に対応する発光量Paおよび駆動電流Iaで特定される点をA点とし、同様に、基準値Km(=b)に対応する発光量Pbおよび駆動電流Ibで特定される点をB点とする。なお、以後、基準値Kmに対応する発光量が得られたときの駆動電流と発光量とで特定される、駆動電流−発光量座標上の点を平衡点という。
【0019】
前述のように、駆動電流と発光量とは駆動電流−発光量特性線L0の関係を有し、前記基準値aおよび基準値bに対応する平衡点A(Ia、Pa)およびB(Ib、Pb)は、前記駆動電流−発光量特性線L0上の点であるとみなすことができる。そのため、平衡点AおよびBの位置座標に基づく2点の一次近似を行うことによって、駆動電流が閾値電流よりも大きい領域における駆動電流−発光量特性は、図9中に示す破線L51で表されると想定することができる。
【0020】
ここで、図6のメモリ17には、駆動部14に駆動電流Iaを出力させる制御値K12と、駆動部14に駆動電流Ibを出力させる制御値K12とが記憶されている。演算部18では、これら記憶値をもとに閾値電流Ith′と発光電流Ion′とを算出すべく次の演算を行う。
すなわち、図9中の破線L51において、発光量が零となるときの駆動電流が発光素子15の閾値電流であると想定することができる。この発光量が零となるときの駆動電流、すなわち破線L51から想定される閾値電流Ith′は、次式(1)で求めることができる。
Ith′=(Ib×Pa−Ia×Pb)/(Pb−Pa) ……(1)
【0021】
(1)式の演算は図7のステップ107の閾値電流演算処理で行なわれ、ステップ102及びステップ105のAPC処理の実行により得られた平衡点AおよびBによる2点の一次近似によって閾値電流Ith′が算出される。
また、図9において、平衡点Aの発光量を発光素子15による発光量の目標値とした場合、この目標の発光量を得るために必要な発光電流Ion′は次式(2)で表すことができる。
Ion′=Ia−Ith′ ……(2)
そして、(1)式で求められた閾値電流Ith′と(2)式で求められた発光電流Ion′とを加算し、これを発光素子15の駆動電流とすることにより、任意の発光量で発光素子15を発光させることができる。
【0022】
以上説明したように、閾値電流Ith′よりも大きい領域における駆動電流と発光量とが比例関係にあるとして一次近似し、この比例関係を利用してAPC処理を用いて閾値電流と発光電流とを算出する方法が、例えば、特許文献1に記載されている。
しかしながら、発光素子15の真の閾値電流(以下、実閾値電流Ithという)は、図9の駆動電流−発光量特性線L0において発光量が零となるときの駆動電流であって、前記(1)式で求められる2点の一次近似で想定される発光素子15の閾値電流(以下、推定閾値電流という)Ith′とは値が異なる。このような実閾値電流Ithと推定閾値電流Ith′との差異は、高精度が要求される発光素子駆動装置の場合には問題となる。
つまり、A点で特定される発光量Paを発光素子15により得るために必要な発光電流Ion′は、前記(2)式から演算することができる。
【0023】
ここで、補正の目的などで発光量Paを得るために必要な発光電流Ion′に任意の係数k(ここでは、k<1)を乗算し、この乗算の結果得られる発光電流Ion_c′に対応する発光量Pc′を発光素子15の発光量の目標値とした場合、この発光量Pc′を得るために必要な発光電流Ion_c′は、次式(3)で表すことができる。なお、図10に示すように、発光電流Ion_c′に対応する発光量Pc′を得られる平衡点をC′点(駆動電流Ic′、発光量Pc′)とする。
Ion_c′=k×(Ia−Ith′) ……(3)
【0024】
ここで、推定閾値電流Ith′と発光電流Ion_c′とから求められる、平衡点C′の発光量Pc′を得るために必要な駆動電流は、図6の発光素子駆動装置において、APC処理により得られメモリ17に記憶されている平衡時の制御値K12をもとに、発光素子15を任意の発光量で発光させるときに相当し、すなわち、スイッチ13により演算部18が出力する制御値K18を選択し、APC処理により得られたメモリ17に記憶されている平衡時の制御値K12をもとに、演算部18が演算を行って制御値K18を出力する動作に相当する。
【0025】
一方、図10のA点の発光量Paを、発光素子15の発光量の目標値とした場合、実閾値電流Ithを用いて演算される発光素子15の発光電流Ionは、次式(4)で表される。
Ion=Ia−Ith ……(4)
前記(3)式と同様に、補正の目的などで、発光量Paを得るために必要な発光電流Ionに任意の係数kを乗算し、この乗算の結果得られる発光電流Ion_cに対応する発光量Pcを発光素子15の発光量の目標値とした場合、この発光量Pcを得るために必要な、実閾値電流Ithに基づく発光電流Ion_cは、次式(5)で表すことができる。なお、図10において、この発光電流Ion_cに対応する発光量Pcを得られる平衡点をC点(駆動電流Ic、発光量Pc)とする。
Ion_c=k×(Ia−Ith) ……(5)
【0026】
平衡点Aの駆動電流Iaおよび発光量Paを基準として平衡点Aの発光量Paのk倍の発光量を得るために必要な、実閾値電流Ithに基づく発光素子15の発光電流Ion_c(平衡点C)と、同様に平衡点Aの駆動電流Iaおよび発光量Paを基準として平衡点Aの発光量Paのk倍の発光量を得るために必要な、推定閾値電流Ith′に基づく発光素子15の発光電流Ion_c′(平衡点C′)との差異ΔIon_cは次式(6)で表される。
ΔIon_c′=Ion_c−Ion_c′=k×(Ith′−Ith) ……(6)
【0027】
この差異ΔIon_c′を図10に示す。
図10において、C′点は、(1)式で求められた推定閾値電流Ith′と(3)式で求められた発光量Pc′を発光素子15の発光量の目標値とした場合に必要な推定閾値電流Ith′に基づく発光電流Ion_c′とを加算して駆動電流を得て、この駆動電流で発光素子15を駆動した場合の発光量Pc′を表している。
図10からわかるように、実閾値電流IthにもとづくC点(駆動電流Ic)の発光量Pcと、推定閾値電流Ith′にもとづくC′点の発光量Pc′とはΔPc′の差がある。
【0028】
つまり、平衡点Aの駆動電流Iaおよび発光量Paを基準として、発光量Paのk倍の発光量で発光素子15を発光させるよう発光制御を行ったとしても、実閾値電流Ithに基づく発光制御を行う場合と、推定閾値電流Ith′に基づく発光制御を行う場合とで、発光量にΔPc′の差が生じることになる。
そして、駆動電流が閾値電流よりも大きい発光領域における傾き、つまり図10の駆動電流−発光量特性線L0において、発光量を駆動電流で微分した値δP/δIが大きいときほど前記差分値ΔPc′は大きくなり、本来目標とした発光量とはかけ離れてしまう。つまり、前記(6)式は、発光素子15の発光量を高精度に制御するには発光素子15の閾値電流を高精度で算出して発光電流を制御する必要があることを示している。
【0029】
ここで、例えば、図9において、より低い発光量でAPC処理が実行された平衡点B(駆動電流Ib、発光量Pb)の駆動電流Ibを下げることによって、(1)式で算出される推定閾値電流Ith′を発光素子15の実閾値電流Ithに近づけることはできる。
しかしながら、発光素子15の実閾値電流Ith近傍の発光量は、発光素子15が発光する限界の領域である。このため、平衡点B(駆動電流Ib、発光量Pb)の駆動電流Ibおよび発光量Pbに基づき演算される推定閾値電流Ith′を発光素子15の実閾値電流Ithに近づける目的で、駆動電流Ibが、発光素子15が発光する限界である実閾値電流Ith近傍となるように基準値Km、つまり図7のステップS104で基準値bを設定してAPC処理を実行すると、駆動部14が基準値b相当の発光量を得るための駆動電流Ibを出力して発光素子15に発光を促しても、駆動電流Ibは発光するぎりぎりの電流値であるため、発光量Pbが安定せず、つまりは安定したAPC処理を行うことができない可能性がある。
【0030】
また、閾値電流近傍の発光量が不安定な別の原因として、発光素子15は閾値電流Ithに温度依存性を持つため発光素子15は温度特性を持つことになり、環境温度によって、または発光素子15自身の発光による発熱などによって、発光素子15の閾値電流Ithが変動することも挙げられる。このように温度環境によって閾値電流Ithが変動する場合、閾値電流近傍の発光量が不安定であるので、基準値Kmを閾値電流相当近傍の値に設定してAPC処理を実行したとしても、発光素子15が発光しない可能性があり、安定した発光量が得られない可能性がある。そのため、このように発光量が不安定となることを考慮して基準値Kmを設定しなければならず、基準値Kmから得られる特性線L51の零駆動電流は、実閾値電流近傍よりもある程度離れた位置にならざるを得ない。
【0031】
図11は、図9中のB点(駆動電流Ib、発光量Pb)を発光素子15の実閾値電流Ithに近づけた場合を表したものであって、近づけた後のB点を、B′点(駆動電流Ib′、発光量Pb_mean′)で示している。また、図11において、発光素子15の駆動電流−発光量特性線L0に対し、実閾値電流Ith近傍における発光素子15の特性を細線L61およびL62で表す。また、前述の温度環境などにより生じる実閾値電流Ith近傍における不安定な発光量をΔPb′で表している。
【0032】
図11は、前記B点が実閾値電流Ith近傍の位置となるように、比較器11への基準値Km、つまりこの場合、図7のステップS104の基準値bを設定し、B′点(駆動電流Ib′、発光量Pb_mean′)をAPC処理により検出する場合を表す。上述の温度環境などの原因により、APC処理実行時に不安定な発光量ΔPb′が生じ、その結果、B′点の駆動電流Ib′および発光量Pb_mean′に基づき演算される推定閾値電流Ith″が、不安定な発光量ΔPb′による影響を受け、Ith_mean′を基準として±ΔIth″相当のばらつきが生じることを示している。
【0033】
図11に示すばらつき±ΔIth″が発生するということは、前記(1)式のB点(駆動電流Ib、発光量Pb)に対応する項に、APC処理実行時の不安定量ΔPb′を含めてB′点(駆動電流Ib′、発光量Pb_mean′±ΔPb′)とし、これに基づき、推定閾値電流Ith″を求めることにより、明らかである。すなわち、B′点の駆動電流Ib′および発光量Pb_mean′に基づき演算される推定閾値電流Ith″は次式(7)式で表すことができ、不安定な発光量ΔPb′による推定閾値電流Ith″のばらつきΔIth″は次式(8)で表すことができる。なお、式(7)、(8)において、Pb_mean′は、B′点における発光量の中心値を示す。また、Ith_mean″は前記(1)式に、Pb_mean′を代入して演算される推定閾値電流を表している。
【0034】
Ith″={Ib×Pa−Ia×(Pb_mean′±ΔPb′)}/
{(Pb_mean′±ΔPb′)−Pa}
=Ith_mean″±ΔIth″ ……(7)
ΔIth″={Pa×ΔPb′×(Ib−Ia)}/
[{(Pb_mean′±ΔPb′)−Pa}×{Pb_mean′−Pa}]
……(8)
【0035】
以上のように、2点APC処理による、2点の一次近似による発光素子15の閾値電流の算出方法では発光素子15の特性を精度良く反映させることは難しく、また、精度を向上する目的で発光素子15の閾値近傍でAPC処理を実行して発光量を特定することは、発光素子の発光量が微小であることおよび発光素子が温度特性を持つこと等の理由により発光量が不安定になってしまうために困難である。
そのため、精度向上の目的のために、閾値電流の検出に3点以上のバイアス電流を流して最小2乗法を用いて検出する方法(例えば、特許文献1参照)、或いは、最小2乗法の回帰を利用して発光素子の特性を演算する方法(例えば、特許文献2参照)等も開示されている。
【先行技術文献】
【特許文献】
【0036】
【特許文献1】特開平7−147446号公報
【特許文献2】特開2003−91853号公報
【発明の概要】
【発明が解決しようとする課題】
【0037】
上述のように、最小2乗法を用いた閾値電流の演算方法においては、演算が複雑になり、例えば集積回路などの回路で実現するには演算素子の増大と消費電流の増大が問題となる。
例えば、上記2点APC処理と同様に、発光素子に2通りの駆動電流を流し、前記駆動電流と前記発光素子の発光量とから発光素子自体の特性である閾値電流を算出する。具体的には、図7のステップS102で実行されるAPC処理によって図9中の平衡点A(駆動電流Ia、発光量Pa)、図7のステップS105で実行されるAPC処理によって図9中の平衡点B(駆動電流Ib、発光量Pb)が得られたとすると、前述の特許文献1や特許文献2で開示されている最小2乗法を用いて発光素子の閾値電流を算出した場合、閾値電流Ithmは、次式(9)で表される。
Ithm
=(Ia2×Pb+Ib2×Pa−Ia×Ib×Pa−Ia×Ib×Pb)/
(Ia×Pa+Ib×Pb−Ia×Pb−Ib×Pa)
……(9)
【0038】
つまり、(9)式は、被除数と除数とがそれぞれ4項を含むことになり、前述の単純な一次近似を用いた閾値算出式である(1)式と比較してかなり複雑な演算が必要となる。
また、ここでは、前記(9)式を一例として、APC処理によって得られた2つの平衡点を用いて最小2乗法によって閾値電流を算出する例を挙げているが、より精度をより向上させる目的で2点より多く、例えば3点、4点といったAPC処理により得た平衡点から閾値電流を算出する場合には(9)式よりさらに被除数及び除数に含まれる項が増え、演算がさらに複雑になる。
【0039】
つまり、特許文献1または特許文献2で開示されている最小2乗法を用いて閾値電流を算出する方法は、前述の一次近似による閾値電流算出方法と比較して演算がかなり複雑であり、集積回路などの回路で実現するには演算素子の増大による回路規模の増大と消費電流の増大が問題となる。
そこで本発明は、複雑な演算をすることなく発光素子の閾値電流を高精度に算出して、発光素子の発光量を高精度に制御できる発光素子駆動方法を提供することを目的としている。
【課題を解決するための手段】
【0040】
上記目的を達成するために、本発明の請求項1にかかる発光素子駆動方法は、閾値電流よりも大きな駆動電流が供給されるときに発光し且つ前記駆動電流の大きさに応じて発光量が変化する発光素子の駆動方法であって、前記発光素子を、N通り(Nは3以上の整数)の発光量で発光させるために必要な駆動電流とそのときの発光量との対応を検出するステップと、前記N通りの駆動電流とこれに対応する発光量との対応から、M通り(Mは前記Nより小さい2以上の整数)の一次近似式を算出するステップと、前記M通りの一次近似式から前記発光量が零となるときの駆動電流を零駆動電流として演算し、M通りの前記零駆動電流の平均値を推定閾値電流として演算するステップと、検出した前記駆動電流とこれに対応する発光量との対応に基づき、前記駆動電流から前記推定閾値電流を減算した値を発光電流とし、当該発光電流の演算に用いた前記駆動電流に対応する発光量と前記発光電流とに基づき、所望の発光量を得るために必要な発光電流を演算し、演算した発光電流と前記推定閾値電流との和を、前記所望の発光量を得るための駆動電流として前記発光素子に供給するステップと、を備えることを特徴としている。
【0041】
また、請求項2にかかる発光素子駆動方法は、前記N通りの発光量は予め設定され、前記N通りの駆動電流とこれに対応する発光量との対応のうちの2通りから得られる複数の一次近似式のうち、前記M通りの一次近似式から得られる前記推定閾値電流と前記発光素子の予め予測された閾値電流との差がより小さくなるときの前記一次近似式の組み合わせを予め検出しこれを閾値電流演算用の組み合わせとして設定しておき、前記一次近似式を算出するステップでは、検出された前記駆動電流と前記発光量との対応のうち、前記閾値電流演算用の組み合わせに属する前記一次近似式の演算に必要な前記対応を用いて、前記閾値電流演算用の組み合わせに属する複数の前記一次近似式を演算することを特徴としている。
【0042】
さらに、請求項3にかかる発光素子駆動方法は、前記推定閾値電流と前記発光素子の予め予測された閾値電流との差を抑制するための補正演算を予め設定しておき、前記推定閾値電流を演算するステップでは、前記零駆動電流の平均値に対して前記補正演算を行った値を前記推定閾値電流とすることを特徴としている。
また、請求項4にかかる発光素子駆動方法は、前記補正演算は、前記零駆動電流の平均値を予め設定した補正値で割り算する処理であることを特徴としている。
また、請求項5にかかる発光素子駆動方法は、前記補正演算は、前記零駆動電流の平均値から予め設定した補正値を減算する処理であることを特徴としている。
【0043】
ここで、駆動電流が真の閾値電流近傍の値であること、或いは、温度環境や自身の発熱などの影響等により、発光量が不安定となり駆動電流と発光量との対応が不安定となる場合があるため、このような不安定な対応に基づく一次近似式を用いて閾値電流を推定した場合、閾値電流が不安定成分の影響を受ける可能性がある。しかしながら、請求項1にかかる発光素子駆動方法では、M通りの一次近似式から演算した零駆動電流の平均値を、推定閾値電流としているため、零駆動電流に不安定成分が含まれる場合であってもその影響は1/Mとなる。このため、不安定成分が閾値電流に与える影響を抑制することができ、すなわちその分、推定閾値電流の精度向上を図ることが可能となる。
【0044】
また、発光素子の駆動電流−発光量特性線に対する、一次近似式の設定位置によって、演算される零駆動電流と真の閾値電流との差が大きくなる可能性がある。しかしながら、請求項2に係る発光素子駆動方法では、零駆動電流の平均値から得られる閾値電流と真の閾値電流との差がより小さくなる一次近似式の組み合わせを予め設定し、この設定した一次近似式の演算に必要な、駆動電流とこれに対応する発光量との対応を予め設定している。そして、検出したN通りの発光量で発光させるために必要な駆動電流とそのときの発光量との対応のうち、設定された一次近似式の演算に必要な対応を用いて前記一次近似式を演算し、且つこれら設定されたM通りの一次近似式を用いて閾値電流を演算するため、発光素子の駆動電流−発光量特性線に対する一次近似式の設定位置によって生じる、零駆動電流の平均値に基づく閾値電流と真の閾値電流との差を抑制することができる。
【0045】
さらに、請求項3に係る発光素子駆動方法では、発光素子の駆動電流−発光量特性線に対する一次近似式の設定位置によって生じる、零駆動電流の平均値に基づく閾値電流と真の閾値電流との差を抑制するための予め設定した補正演算を行っているため、この補正演算により、零駆動電流の平均値に基づく推定閾値電流と真の閾値電流との差を抑制することができる。特に、補正演算として、零駆動電流の平均値を予め設定した補正値で割り算したり、或いは零駆動電流の平均値から予め設定した補正値を減算したりすることによって単純な演算で容易に誤差の低減を図ることができる。
【発明の効果】
【0046】
本発明によれば、M通りの一次近似式から演算した零駆動電流の平均値を、推定閾値電流としているため、温度環境や駆動電流が閾値電流近傍の値であることなどに起因して、検出された駆動電流と発光量との対応に不安点成分が含まれる場合であっても、閾値電流に与える不安定成分の影響を抑制することができる。つまり、閾値電流の検出精度を向上させることができるため、結果的に、発光素子の駆動制御をより高精度に行うことができる。
さらに、発光素子の駆動電流−発光量特性線に対する一次近似式の設定位置に起因する推定閾値電流と真の閾値電流との誤差を、この誤差を小さくすることの可能な一次近似式の設定位置を予め検出しておきこれに基づき一次近似式を演算すること、或いは、この誤差を抑制するために必要な補正演算を、零駆動電流の平均値に対して行うこと等により、さらに高精度な推定閾値電流を得ることができる。
【図面の簡単な説明】
【0047】
【図1】本発明による発光素子駆動方法を適用した4点APC処理の処理手順の一例を示すフローチャートである。
【図2】第1の実施の形態における閾値電流演算処理の演算方法を説明するための説明図である。
【図3】第1の実施の形態による発光素子駆動方法を用いた場合の制御誤差を説明するための説明図である。
【図4】第2の実施の形態における閾値電流演算処理の演算方法を説明するための説明図である。
【図5】第3の実施の形態における閾値電流演算処理の演算方法を説明するための説明図である。
【図6】本発明による発光駆動方法を適用した発光素子駆動装置の機能構成を示すブロック図である。
【図7】従来の発光素子駆動方法を表す2点APC処理の処理手順の一例を示すフローチャートである。
【図8】図7のAPC処理の処理手順の一例を示すフローチャートである。
【図9】従来の閾値電流演算処理の演算方法を説明するための説明図である。
【図10】従来の発光素子駆動方法を用いた場合の制御誤差を説明するための説明図である。
【図11】温度環境等に起因する、駆動電流に対する発光素子の発光量のばらつきを説明するための説明図である。
【発明を実施するための形態】
【0048】
以下、本発明の一実施の形態を、図面を参照して説明する。
まず、第1の実施の形態を説明する。
本発明を適用した発光素子駆動装置の構成は、図6に示す従来の発光素子駆動装置の構成と同様であるのでその詳細な説明は省略する。
すなわち、図6の発光素子駆動装置では、APC処理実行時には、スイッチ13により駆動値制御部12が出力する制御値K12を選択し、光学ピックアップ16が受光した受光量K16と基準値Kmとが釣り合うように、発光素子15の駆動電流K14を自動調整して、発光素子15の光量調整を行う。そして、APC処理を実行することで検出される基準値Kmと受光量K16とが平衡する制御値K12をメモリ17に記憶する。
一方、発光素子15を任意の発光量で発光させる時には、スイッチ13により演算部18からの制御値K18を選択する。そして、メモリ17に記憶されている、基準値Kmと受光量K16とが平衡するときの制御値K12をもとに、演算部18が演算を行って制御値K18を出力する。
【0049】
次に、第1の実施の形態における発光素子駆動方法の一例を、図1から図3を用いて説明する。
図1は、APC処理により、発光量とこれに対応する制御値K12をN=4通り求め、4つの平衡点を用いて閾値電流を推定する場合のAPC処理(以後、4点APC処理という。)の処理手順の一例を示すフローチャートである。なお、Nは、3以上の整数であり、ここでは、N=4としている。
この4点APC処理では、図1に示すように、まず、ステップS1で、第1の基準値Kmとして任意の基準値aを設定し、ステップS2に移行してAPC処理を実行する。すなわち、光学ピックアップ16からの受光量K16が基準値aと一致するように、制御値K12を調整する。そして、受光量K16と基準値aとが平衡状態となったとき、この平衡状態における制御値K12と基準値aとを対応付けてメモリ17に格納する(ステップS3)。
【0050】
ついで、ステップS4に移行し、第2の基準値Kmとして任意の基準値dを設定し、光学ピックアップ16からの受光量K16が基準値dと一致するようにAPC処理を実行し(ステップS5)、受光量K16と基準値dとが平衡状態となったとき、この平衡状態における制御値K12と基準値dとを対応付けてメモリ17に格納する(ステップS6)。
同様に、ステップS7では、第3の基準値Kmとして任意の基準値eを設定し、光学ピックアップ16からの受光量K16が基準値eと一致するようにAPC処理を実行し(ステップS8)、受光量K16と基準値eとが平衡状態となったとき、この平衡状態における制御値K12と基準値eとを対応付けてメモリ17に格納する(ステップS9)。
【0051】
さらに、ステップS10では、第4の基準値Kmとして任意の基準値fを設定し、光学ピックアップ16からの受光量K16が基準値fと一致するようにAPC処理を実行し(ステップS11)、受光量K16と基準値fとが平衡状態となったとき、この平衡状態における制御値K12と基準値fとを対応付けてメモリ17に格納する(ステップS12)。
ついで、ステップS13に移行し、後述の閾値電流演算処理を実行し、メモリ17に記憶した4つの基準値Kmとこれに対応する制御値K12とから閾値電流を演算する。そして、処理を終了する。
【0052】
なお、基準値a、基準値d、基準値e、基準値fは、基準値a>基準値d>基準値e>基準値fを満足する値である。また、例えば、基準値aは、発光素子15に供給可能な駆動電流の範囲内において比較的大きな電流値相当に設定される。基準値fは、発光素子15が発光可能な比較的小さな電流値相当に設定される。基準値d、基準値eは、基準値aと基準値dの差、基準値dと基準値eとの差、基準値eと基準値fとの差がそれぞれ略同等程度となるように設定される。
【0053】
つまり、図2に示すように、これら基準値aに対応する平衡点Aが、発光素子15への供給可能な駆動電流の比較的大きな位置となり、基準値fに対応する平衡点Fが、発光素子15が発光可能な比較的小さな駆動電流となる位置となり、基準値dおよび基準値eに対応する平衡点DおよびEが、平衡点Aおよび平衡点Fとの間に配置され、且つ隣接する平衡点間の駆動電流の差が略同等程度となるように設定される。
なお、これら基準値はこれに限るものではなく任意に設定することができる。
【0054】
また、図1のステップS2、ステップS5、ステップS8、ステップS11で実行されるAPC処理は、図6の発光素子駆動装置において、スイッチ13が駆動値制御部12の出力する制御値K12を選択している状態における、前述のAPC処理そのものを示しており、APC処理の具体的な処理手順は、前記図8の処理手順と同様である。つまり光学ピックアップ16からの受光量K16と基準値Kmとが平衡するように発光素子15への駆動電流を増減させて自動で調整している。
【0055】
次に、図1のステップS13で実行される閾値電流演算処理について説明する。
前述のように、発光素子15として、例えば、半導体レーザや発光ダイオードなどの半導体発光素子を用いた場合、駆動電流と発光量との関係は、図2の実線で示す駆動電流−発光量特性線L0で表される特性を持つことが知られている。すなわち、図2中の実閾値電流Ith以下では発光素子15は発光せず、実閾値電流Ithよりも大きな駆動電流の領域で発光素子15は発光する。また、実閾値電流Ithよりも大きな駆動電流の領域では、駆動電流が大きいときほど、駆動電流の変化に対する発光量の変化がより大きくなる特性を持つ。
【0056】
ここで、図1のステップS2におけるAPC処理を実行することによって、基準値aに対応するA点(駆動電流Ia、発光量Pa)で平衡となったものとする。同様に、図1のステップS5、ステップS8、ステップS11におけるAPC処理によって、基準値dに対応するD点(駆動電流Id、発光量Pd)、基準値eに対応するE点(駆動電流Ie、発光量Pe)、基準値fに対応するF点(駆動電流If、発光量Pf)がそれぞれAPC処理により平衡することが検出されたものとする。前述のように、発光量と駆動電流とは、駆動電流−発光量特性線L0で表される特性を有するため、これら平衡点、A点、D点、E点、F点は、駆動電流−発光量特性線L0上の点であるとみなすことができる。
【0057】
ここで、本実施形態では、発光素子15の閾値電流を、M(Mは前記Nより小さい2以上の整数)通りの駆動電流−発光量特性線L0の一次近似式を算出しこれら一次近似式を用いることにより算出する。本実施形態ではN=4であるので、2点の一次近似によりM=3本の特性線を想定する。例えば、図2中に破線で示される、平衡点Aと、平衡点D、平衡点E、平衡点Fのそれぞれとを結ぶL1、L2、L3で示される特性線を想定することができる。
【0058】
前記従来の2点APC処理における閾値電流演算処理と本実施形態における4点APC処理における閾値電流演算処理との比較のために、前記図9における発光素子15の特性を示す駆動電流−発光量特性線L0と、図2の発光素子15の特性を示す駆動電流−発光量特性線L0とは同じ特性としている。また、図2におけるA点と図9におけるA点とは、受光量K16が基準値aとなるようにAPC処理を実行することにより得られた平衡点A(駆動電流Ia、発光量Pa)を表し、これらは同じ点である。
【0059】
なお、図1のステップS1で設定された基準値aと光学ピックアップ16の受光量K16とがAPC処理によって平衡することが検出されたときの発光素子15の発光量をPa、前記発光素子15を発光量Paで発光させる駆動部14が出力する駆動電流をIaとしている。同様に、図1のステップS4で設定された基準値dと光学ピックアップ16の受光量K16とがAPC処理によって平衡することが検出されたときの発光素子15の発光量をPd、前記発光素子15を発光量Pdで発光させる駆動部14が出力する駆動電流をIdとし、図1のステップS7で設定された基準値eと光学ピックアップ16の受光量K16とがAPC処理によって平衡することが検出されたときの発光素子15の発光量をPe、前記発光素子15を発光量Peで発光させる駆動部14が出力する駆動電流がIe、図1のステップS10で設定された基準値fと光学ピックアップ16の受光量K16とがAPC処理によって平衡することが検出されたときの発光素子15の発光量をPf、前記発光素子15を発光量Pfで発光させる駆動部14が出力する駆動電流をIfとしている。
【0060】
図1のステップS1からステップS11の処理を実行することにより、メモリ17には、駆動部14に駆動電流Iaを出力させる制御値K12、駆動部14に駆動電流Idを出力させる制御値K12、駆動部14に駆動電流Ieを出力させる制御値K12、駆動部14に駆動電流Ifを出力させる制御値K12が記憶される。演算部18では、メモリ17に記憶されているこれら制御値K12をもとに、推定閾値電流Ith_adv1と任意の発光量を得るための発光電流Ion_adv1とを算出すべく次の演算を行う。
【0061】
まず、前述のように、図2中の特性線L1、L2、L3の発光量が零となる駆動電流が発光素子15の閾値電流に相当すると想定することができる。これら特性線L1、L2、L3から想定される閾値電流は次式で求めることができる。
すなわち、特性線L1から想定される閾値電流である、特性線L1の発光量が零となる駆動電流Ith1は(10)式で求めることができる。以後、この駆動電流Ith1を零駆動電流Ith1という。
Ith1=(Id×Pa−Ia×Pd)/(Pd−Pa) ……(10)
【0062】
同様に、特性線L2から想定される閾値電流である、特性線L2の発光量が零となる駆動電流Ith2は(11)式で求めることができる。以後、この駆動電流Ith2を零駆動電流Ith2という。
Ith2=(Ie×Pa−Ia×Pe)/(Pe−Pa) ……(11)
さらに、特性線L3から想定される閾値電流である、特性線L3の発光量が零となる駆動電流Ith3は(12)式で求めることができる。以後、この駆動電流Ith3を零駆動電流Ith3という。
Ith3=(If×Pa−Ia×Pf)/(Pf−Pa) ……(12)
次に、これら一次近似式それぞれから演算される零駆動電流Ith1〜Ith3の平均値を次式(13)から求める。この平均値を、推定閾値電流Ith_adv1とする。
Ith_adv1=(Ith1+Ith2+Ith3)/3 ……(13)
【0063】
すなわち、図1のステップS13の閾値電流演算処理では、まず、図1のステップS2、ステップS5、ステップS8、ステップS11でのAPC処理によって得られた、任意に設定した基準値Kmと受光量K16とが平衡するときの制御値K12から、各基準値Kmに対応する、駆動電流と発光量とで特定される平衡点、A点、D点、E点及びF点を求める。そして、これらのうちの2点による一次近似によって3本の特性線L1〜L3を獲得し、これに基づき3つの零駆動電流Ith1、Ith2、Ith3を算出する。そして、前記(13)式から、前記3つの零駆動電流Ith1、Ith2、Ith3を平均して推定閾値電流Ith_adv1を得る。
【0064】
つまり、発光素子15にN通り(本実施形態ではN=4)の基準値Kmを設定してAPC処理を実行し、これにより得られる前記発光素子15の発光量と対応する駆動電流との関係からM通り(本実施形態ではM=3)の一次近似式を算出する。そして、M通りの一次近似式のそれぞれについて発光量が零となる零駆動電流を求め、その平均値を前記発光素子15の推定閾値電流Ith_adv1としている。
【0065】
図2に示すように、前記(13)式から算出される推定閾値電流Ith_adv1は、各特性線L1〜L3から求められる零駆動電流Ith1、Ith2、Ith3の平均値であるため、図9に示す従来の1本の特性線L51から閾値電流を得る場合に比較して、発光素子15の実閾値電流Ithを反映していることがわかる。
ここで、図2に示すように、F点は実閾値電流Ith近傍の値に設定されており、他のA点、D点、E点における発光量Pa、Pd、Peに比較して発光素子15の発光量が微小であり、また、発光素子15が温度特性を持つことなどの理由によりAPC処理実行時に発光量が不安定となりやすい。しかしながら、上述のように各特性線L1〜L3から求められる零駆動電流の平均値から推定閾値電流Ith_adv1を演算している。そのため、仮に、F点(駆動電流If、発光量Pf)を用いて算出される零駆動電流Ith3にAPC処理実行時の不安定量による影響が生じたとしても、その不安定量は低減されることになる。
【0066】
例えば、駆動電流Ifが実閾値電流Ith近傍の値であるため、APC処理時に発光素子15の発光量が不安定となった場合、前述の図11で説明したように、不安定量が含まれる駆動電流Ifおよび発光量Pfとの関係を用いた特性線L3に基づき零駆動電流Ith3を演算した場合、得られた零駆動電流Ith3には、不安定成分ΔIth3が含まれることになる。この場合、零駆動電流Ith3は、中心値Ith3_meanと不安定成分±ΔIth3とを用いて次式(14)で表すことができる。
Ith3=Ith3_mean±ΔIth3 ……(14)
【0067】
ここで、(14)式を(13)式に代入すると、次式(15)を得ることができる。
Ith_adv1
=(Ith1+Ith2+Ith3)/3
={Ith1+Ith2+(Ith3_mean±ΔIth3)}/3 ……(15)
よって、F点を閾値近傍に設定することにより生じるAPC処理実行時の零駆動電流の不安定成分が、推定閾値電流Ith_adv1に与える影響ΔIth_adv1は次式(16)で表すことができる。
ΔIth_adv1=ΔIth3/3 ……(16)
【0068】
つまり、前記(13)式に示すように、推定閾値電流Ith_adv1は、それぞれの零駆動電流Ith1、Ith2、Ith3を平均しているため、(16)式で証明されたように零駆動電流Ith3のばらつきΔIth3による影響ΔIth_adv1は1/M倍となる。本実施例ではM=3であるので1/3倍になることを示している。つまり、平衡点Fが実閾値電流Ith近傍相当の値であることにより、APC処理実行時に生じる不安定量が、推定閾値電流Ith_adv1に与える影響が1/3となることになる。
【0069】
本発明は上記構成としたため以下の効果を得ることができる。
すなわち、発光素子15の閾値電流を算出するための発光量と駆動電流とが平衡となる平衡点を得る際に、発光素子15の実閾値電流Ith近傍相当の値が平衡点となるようにAPC処理を行った場合であっても、各特性線L1〜L3に基づく零駆動電流Ith1〜Ith3の平均値を推定閾値電流Ith_adv1としているため、平衡点が実閾値電流Ith近傍相当の値とすることにより生じる不安定成分が、推定閾値電流Ith_adv1に与える影響を小さくすることができる。
【0070】
つまり、従来のように、1本の特性線に基づいて推定閾値電流Ith′を得る方法にあっては、発光素子15が温度特性を持つことにより発光量が不安定となること、および、実閾値電流Ith近傍では、駆動電流に対する発光量が不安定となる可能性があることの2つの不安定要因があるため、1本の特性線を設定する際には、これら2つの不安定要因の影響を受けないようにするために、APC処理における基準値Kmを実閾値電流Ith近傍相当の値とならないように設定し、且つ、その際には、温度環境などによる発光量のばらつきをも考慮して基準値Kmを設定する必要がある。そのため、基準値Kmを、得られる零駆動電流が実閾値電流Ithよりもある程度離れた位置となるように設定せざるを得ず、これはすなわち、実閾値電流Ithと零駆動電流つまり推定閾値電流Ith′との誤差となる。
【0071】
これに対し、本発明は、上述のように推定閾値電流Ith_adv1に含まれる、不安点成分の影響を小さくすることができる。そのため、その分、特性線から得られる零駆動電流が実閾値電流Ith近傍の値となるように、特性線を設定することができる。
したがって、1本の特性線に基づいて推定閾値電流Ith′を得る方法に比較して、特性線から得られる零駆動電流を、実閾値電流Ithに一層近づけて設定することができる。このため、結果的に、零駆動電流から得られる推定閾値電流Ith_adv1を実閾値電流Ithに近づけることができ、すなわち、閾値電流の演算精度を向上させることができる。
【0072】
また、各特性線L1〜L3に基づく零駆動電流Ith1〜Ith3の平均値から推定閾値電流Ith_adv1を演算しているため、実閾値電流Ith近傍において、APC処理を実行することによる不安点量だけでなく、他の、実閾値電流から離れた平衡点、A点、D点、E点における駆動電流と発光量との対応を表す特性に含まれる不安定量についても1/(N−1)倍とすることができ、全体的に、一層高精度な閾値電流を演算することができる。
【0073】
また、推定閾値電流Ith_adv1は、一次近似によって求められた各特性線L1〜L3に基づく零駆動電流Ith1〜Ith3の平均値を演算しているのみであって、前記(9)式で示した最小二乗法演算のような複雑な演算は必要ない。ここで、最小二乗法による閾値電流演算方法は、APC処理によって得た2点の平衡点を用いているのに対し、本実施形態における閾値電流演算方法は、APC処理によって得た4点の平衡点を用いて閾値電流を算出しているにも関わらず必要な演算は簡単である。
【0074】
つまり、本実施形態における閾値電流演算方法は、精度を向上させる目的で、閾値電流の演算に用いる平衡点の数Nを増やし、APC処理によって、より多くの駆動電流と発光量とが平衡する平衡点を求めて閾値電流を算出したとしても、上記従来のような最小二乗法を用いた閾値電流演算方法に比較して必要とされる演算回路の回路規模は小さくてすむ。したがって、例えば集積回路などの回路規模の実現が容易であって、且つ、低消費電流で実現することができる。
また、このようにして得た推定閾値電流Ith_adv1を用いて、発光素子15を発光させる場合、例えば、図2のA点の発光量Paを目標値とした場合に必要な発光電流Ion_adv1は次式(17)で表すことができる。
Ion_adv1=Ia−Ith_adv1 ……(17)
【0075】
ここで、補正の目的などで、発光量Paを得るために必要な発光電流Ion_adv1に、上記従来と同一の任意の係数k(ここでは、k<1)を乗算し、この乗算の結果得られる発光電流Ion_c_advに対応する発光量Pc_advを、発光素子15の発光量の目標値とした場合、この発光量Pc_advを得るために必要な発光電流Ion_c_advは、次式(18)で表される。なお、この発光電流Ion_c_advに対応する発光量Pc_advを得られる平衡点をC_adv(駆動電流Ic_adv、発光量Pc_adv)とする。
Ion_c_adv=k×(Ia−Ith_adv1) ……(18)
【0076】
図3に、平衡点Aの駆動電流Iaおよび発光量Paを基準として、発光量Paのk倍の発光量を得るために必要な、推定閾値電流Ith_adv1に基づく発光素子15の発光電流Ion_c_advに対応する発光量Pc_adv(平衡点C_adv)と、同様に平衡点Aの駆動電流Iaおよび発光量Paを基準として、発光量Paのk倍の発光量を得るために必要な、実閾値電流Ithに基づく発光素子15の発光電流Ion_cに対応する発光量Pc(平衡点C)との差異ΔPc_advを示す。
【0077】
なお、図3中の平衡点C(駆動電流Ic、発光量Pc)と前記図10中のC点(駆動電流Ic、発光量Pc)とは同一点を表す。
図3に示すように、C_adv点の発光量Pc_advを目標値として発光させる場合に必要な駆動電流Ic_advは、(13)式で求められた推定閾値電流Ith_adv1と(18)式で求められた発光電流Ion_c_advとを加算した値となる。このため、推定閾値電流Ith_adv1に基づく発光量Pc_advと、実閾値電流Ithに基づく発光量Pcとの差分ΔPc_advは、前記図10に示す閾値電流Ith′に基づく発光量Pc′と実閾値電流Ithに基づく発光量Pcとの差であるΔPc′に比較して小さく、発光素子15の発光量を高精度に制御することができることがわかる。
【0078】
ここで、平衡点Aの駆動電流Iaおよび発光量Paを基準として、発光量Paのk倍の発光量を得るために必要な、推定閾値電流Ith_adv1に基づく発光素子15の発光電流Ion_c_adv(平衡点C_adv)と、同様に平衡点Aの駆動電流Iaおよび発光量Paを基準として、発光量Paのk倍の発光量を得るために必要な、実閾値電流Ithに基づく発光素子15の発光電流Ion_c(平衡点C)との差異ΔIon_c_advは次式(19)で表すことができる。
ΔIon_c_adv
=Ion_c−Ion_c_adv=k×(Ith_adv1−Ith) ……(19)
前述のように推定閾値電流Ith′に比較して推定閾値電流Ith_adv1は不安定成分の影響の少ないより安定した値であるから、推定閾値電流を高精度に算出することで発光素子15の発光量をより高精度に制御できることがわかる。
【0079】
なお、演算部108では、このようにして演算した推定閾値電流Ith_adv1を記憶しておく。そして、例えば、推定閾値電流Ith_adv1を基準とした発光量に応じた発光電流と推定閾値電流Ith_adv1との和からなる駆動電流相当の制御値K18を、スイッチ13を介して駆動部14に出力し、発光素子15の発光制御は前記発光電流を調整することにより行う。すなわち、発光素子15を発光させない場合には、発光電流は零として制御値K18を演算するため、制御値K18は、推定閾値電流Ith_adv1相当の値となり、発光素子15は発光しない。一方、基準値aの発光量Paを、発光素子15の発光量の目標値とする場合には、前記(17)式にしたがって、メモリ17に記憶している基準値aに対応する制御値K12から特定される駆動電流Iaから前記推定閾値電流Ith_adv1を減算して発光電流を求め、この発光電流をもとに制御値K18を演算する。このため、制御値K18は、推定閾値電流Ith_adv1と発光電流との和相当の値となり、発光素子15は発光し、その発光量は、発光量Pa相当となる。なお、基準値d、基準値e、基準値fに対応する発光量を、発光素子15の発光量Pd、Pe、Pfの目標値とする場合も同様であって、前記(17)式と同様の手順で、メモリ17に記憶しているこれら準値に対応する制御値K12から特定される駆動電流から前記推定閾値電流Ith_adv1を減算して発光電流を求め、この発光電流をもとに制御値K18を演算する。このため、制御値K18は、推定閾値電流Ith_adv1と発光電流との和相当の値となり、発光素子15は発光し、その発光量は、発光量Pd、Pe、Pf相当となる。
【0080】
また、上記第1の実施の形態では、N=4とし、4通りの基準値を設定し、M(=3)本の特性線を設定する場合について説明したが、これに限るものではなく、Nは3以上の整数であればよく、且つMはNよりも小さい2以上の整数であればよい。
つまり、上述のように推定閾値電流Ith_adv1を、各特性線から得られる零駆動電流の平均値から演算しているため、少なくとも2本の特性線を得ることができればよく、2本の特性線を得るためには少なくとも3つの平衡点があればよい。
【0081】
N通りの基準値を設定する場合、発光素子15に供給可能な駆動電流の範囲内において比較的大きな電流値相当の基準値と、発光素子15が発光可能な比較的小さな電流値相当の基準値を少なくとも含むように設定する。そして、N通りの基準値のうち、基準値に対応する駆動電流が最大のものを第1の基準値とし、基準値に対応する駆動電流が次に大きいものを第2の基準値、…、基準値に対応する駆動電流が最小のものを第Nの基準値としたとき、前記図2に示すようにM(=N−1)通りの特性線を設定する場合には、例えば、第1の基準値に対応する平衡点と第Nの基準値に対応する平衡点、第1の基準値に対応する平衡点と第N−1の基準値に対応する平衡点、第1の基準値に対応する平衡点と第N−2の基準値に対応する平衡点、…、第1の基準値に対応する平衡点と第2の基準値に対応する平衡点、それぞれについて一次近似し、M(=N−1)通りの特性線を算出すればよい。
【0082】
また、特性線を得る際に、必ずしも全ての特性線が、基準値に対応する駆動電流が最大となる第1の基準値に対応する平衡点を通る必要はなく、2本以上の特性線を得ることができればどの平衡点を用いてもよい。
ここで、上述のように、推定閾値電流Ith_adv1を、各特性線から得られる零駆動電流の平均値から演算しているため、各特性線から得られる零駆動電流が比較的小さな値であれば得られる推定閾値電流Ith_adv1は比較的小さな値となる。つまり多少温度環境の影響をうける可能性はあるが、推定閾値電流Ith_adv1と実閾値電流との誤差は小さくなる。逆に、各特性線から得られる零駆動電流が比較的大きな値であれば得られる推定閾値電流Ith_adv1は比較的大きな値となるため、比較的温度環境の影響はうけにくいが、実閾値電流との誤差が多少大きくなる可能性がある。
【0083】
したがって、例えば、これらを考慮して一次近似に用いる平衡点を特定して特性線を生成すれば、温度環境などの影響をうける可能性はあるが実閾値電流との誤差が比較的小さい推定閾値電流Ith_adv1や、温度環境などの影響をうけにくいが実閾値電流との誤差が多少大きくなる可能性のある推定閾値電流Ith_adv1等、特性の異なる推定閾値電流Ith_adv1を得ることができる。そのため、実閾値電流との誤差が多少生じる可能性はあるものの、比較的温度環境などの影響が小さい推定閾値電流Ith_adv1を得るためには、例えば、基準値に対応する駆動電流が比較的大きくなる2つの平衡点を通る特性線と、基準値に対応する駆動電流が比較的小さくなる2つの平衡点を通る特性線と、を含むM通りの特性線を用いて、推定閾値電流Ith_adv1を演算すればよい。
【0084】
具体的には、例えば、第Nの基準値に対応する平衡点と第N−1の基準値に対応する平衡点、第1の基準値に対応する平衡点と第2の基準値に対応する平衡点について、これらそれぞれの一次近似から得られる特性線を含むM通りの特性線を生成する。これによって、温度環境などの影響はうけにくいが実閾値電流との誤差が多少生じる可能性のある零駆動電流と、温度環境などの影響を多少うける可能性はあるが実閾値電流との誤差が比較的小さい零駆動電流とを含む零駆動電流値の平均値から推定閾値電流Ith_adv1が得られるため、実閾値電流との誤差が多少生じる可能性はあるものの比較的温度環境などの影響が比較的小さい推定閾値電流Ith_adv1を得ることができる。
【0085】
また、上述のように、推定閾値電流Ith_adv1は、特性線の設定の仕方によって温度環境の影響を受け易くなったり受けにくくなったりするが、特性線は平衡点から生成されるため、平衡点の取り方、すなわち基準値の値によっても推定閾値電流Ith_adv1は温度環境の影響を受け易くなったり受けにくくなったりすることになる。したがって、平衡点についてもこれらを考慮して設定することによって、温度環境などの影響を受けにくく且つ実閾値電流との誤差が比較的小さい推定閾値電流Ith_adv1を得ることができる。すなわち、第1の基準値はこれに対応する駆動電流が、発光素子15への供給可能な駆動電流の範囲内において比較的大きな値となるように設定し、第Nの基準値はこれに対応する駆動電流が発光素子15を発光可能な駆動電流相当となるように設定する。そして、第1の基準値と第Nの基準値との間に、第2の基準値から第N−1の基準値を設定する。このとき、例えば、隣接する基準値との間の対応する駆動電流の差が略同等程度となるように設定してもよい。また、実閾値電流との誤差が比較的小さい推定閾値電流Ith_adv1を得たい場合には、対応する駆動電流が比較的小さくなるように基準値を設定して特性線から得られる零駆動電流が比較的小さくなるようにし、実閾値電流との誤差は多少生じる可能性はあるものの温度環境の影響が比較的小さい推定閾値電流Ith_adv1を得たい場合には、対応する駆動電流が比較的大きくなるように基準値を設定して、特性線から得られる零駆動電流が比較的大きくなるようにすればよい。
【0086】
次に、本発明の第2の実施の形態を説明する。
この第2の実施の形態は、上記第1の実施の形態において、図1のステップS13での閾値電流演算処理の処理手順が異なることは同一であるので、同一部には同一符号を付与しその詳細な説明は省略する。
この第2の実施の形態では、図6に示す発光素子駆動装置は、上記第1の実施の形態と同様の手順で、基準値a、基準値d、基準値e、基準値fを基準値Kmとして順次設定してAPC処理を実行し、図2に示す、A点(駆動電流Ia、発光量Pa)、D点(駆動電流Id、発光量Pd)、E点(駆動電流Ie、発光量Pe)、F点(駆動電流If、発光量Pf)からなる平衡点を求める。基準値a、基準値d、基準値e、基準値fは、基準値a>基準値d>基準値e>基準値fである。
【0087】
この第2の実施の形態では、これら平衡点に基づき一次近似式を算出する際に、算出に用いる2点の平衡点として最適な任意の2点を用いることで、推定閾値電流と発光電流との検出精度向上を図っている。
すなわち、この第2の実施の形態では、一次近似式を算出する際に用いる最適な2点の平衡点として、図4に示すように、例えば、A点とE点、D点とF点、E点とF点を設定している。そして、A点とE点との一次近似により特性線L11を算出し、D点とF点との一次近似により特性線L12を算出し、E点とF点との一次近似により特性線L13を算出する。
【0088】
そして、特性線L11において発光量が零となる駆動電流を、閾値電流に相当する零駆動電流Ith11として次式(20)から演算する。
Ith11=(Ie×Pa−Ia×Pe)/(Pe−Pa) ……(20)
同様に、特性線L12において発光量が零となる駆動電流を、閾値電流に相当する零駆動電流Ith12として次式(21)から演算する。
Ith12=(If×Pd−Id×Pf)/(Pf−Pd) ……(21)
さらに、特性線L13において発光量が零となる駆動電流を、閾値電流に相当する零駆動電流Ith13として次式(22)から演算する。
Ith13=(If×Pe−Ie×Pf)/(Pf−Pe) ……(22)
【0089】
そして、上記第1の実施の形態と同様に、前記(20)から(22)で得られる零駆動電流Ith11〜Ith13の平均値を次式(23)から求め、これを発光素子15の推定閾値電流Ith_adv2とする。
Ith_adv2=(Ith11+Ith12+Ith13)/3 ……(23)
ここで、一次近似式を算出する際に最適な任意の2点とは、それぞれ最適な任意の2点から特定される一次近似式L11〜L13を用いて上記(20)から(23)式にしたがって推定閾値電流Ith_adv2を演算した際に、この得られた推定閾値電流Ith_adv2が、発光素子15の実閾値電流Ithにより近くなるように設定される2つの平衡点をいう。
【0090】
つまり、前述のように、発光素子15の駆動電流−発光量の関係は、図4中に実線で示す駆動電流−発光量特性線L0のように、駆動電流が、実閾値電流Ithよりも大きい領域で発光素子15は発光し、且つ、駆動電流が実閾値電流Ithよりも大きい領域では、駆動電流が大きいときほど発光量は大きくなり、且つ駆動電流が大きいときほど駆動電流の変化に対する発光量の変化量はより大きくなる。このため、駆動電流−発光量特性線L0上の2点からなる特性線L11〜L13の設定の仕方によって、各特性線L11〜L13のそれぞれにより得られる発光量が零となるときの零駆動電流は変化する。
【0091】
そのため、発光素子15の仕様などから予測される、駆動電流−発光量特性線L0において、APC処理における基準値Kmとして予め設定された4点について、これら4点のうちの2点を通る特性線を想定し、この想定した特性線から得られる零駆動電流に基づき、何れか3本の特性線から得られる零駆動電流の平均値、すなわち、推定閾値電流Ith_adv2が、駆動電流−発光量特性線L0から推測される実閾値電流Ithに最も近くなると予測される3つの特性線を予め特定する。そして、このときの、3つの特性線について各特性線の算出に用いる2点の平衡点を予め特定する。この3つの特性線毎に設定される2点の平衡点が、一次近似式L11〜L13を算出する際の最適な2点となる。
【0092】
このようにして設定された最適な2点に基づき各一次近似式を求め、これをもとに上述の(20)式〜(22)式から、零駆動電流Ith11〜Ith13を求め、その平均値を推定閾値電流Ith_adv2とする。
このようにして演算される推定閾値電流Ith_adv2は、駆動電流−発光量特性線L0に対する特性線L11〜L13の設定位置に起因する、実閾値電流Ithと推定閾値電流Ith_adv2との誤差が比較的小さい値となる。
したがって、駆動電流−発光量特性線L0に対する特性線L11〜L13の設定位置に起因する実閾値電流Ithとの誤差の少ない、より高精度な推定閾値電流Ith_adv2を得ることができる。
【0093】
また、この第2の実施の形態においても、上記第1の実施の形態と同様に、3本の特性線から得られる零駆動電流の平均値を推定閾値電流Ith_adv2として演算しているため、APC処理における基準値Kmを、発光素子15の実閾値電流Ith近傍相当の値に設定したとしても、従来に比較してより安定した高精度な推定閾値電流Ith_adv2を得ることができると共に、APC処理における基準値を実閾値電流Ith近傍相当の値に設定することに起因する不安定量だけではなく、図4の平衡点、A点、D点、E点、F点のそれぞれにおける発光量の不安定量も1/M(この場合M=3)となり、従来技術に比較して、全体的により安定して推定閾値電流を算出することができる。また、零駆動電流に基づく、(23)式の演算では、平均値の演算を行っているのみであるため、この第2の実施の形態においても、閾値電流の演算精度を向上させる目的で基準値Kmの数を増やしたとしても、従来の最小2乗法による閾値電流算出方法に較べて回路規模は小さく、例えば集積回路などの回路での実現が容易であって、より少ない消費電流で実現することができる。
【0094】
また、この第2の実施の形態においても、N=4通りの基準値を設定しM=3通りの特性線を設定する場合に限るものではなく、N通り(N≧3)以上の基準値を設定し、M本(MはNよりも小さい2以上の整数)の特性線を設定することが可能である。
この第2の実施の形態の場合も、N通りの基準値を設定する場合、発光素子15に供給可能な駆動電流の範囲内において比較的大きな電流値相当の基準値と、発光素子15が発光可能な比較的小さな電流値相当の基準値を少なくとも含むように設定する。
【0095】
そして、例えば、前記図4に示すように、第1の基準値に対応する平衡点と第N−1の基準値に対応する平衡点、第2の基準値に対応する平衡点と第Nの基準値に対応する平衡点、第N−1の基準値に対応する平衡点と第Nの基準値に対応する平衡点、のそれぞれの一次近似から得られる特性線を含む、M通りの特性線を算出すればよい。
また、この場合も、M本の特性線の作成に必要な数以上の基準点に対応するN通りの平衡点からM本の特性線を作成する場合には、上記と同様に、駆動電流−発光量特性線L0からはずれた平衡点は、温度環境などの影響をうけている可能性があるとして、この平衡点を除く駆動電流−発光量特性線L0上に並ぶ平衡点のみを用いて推定閾値電流Ith_adv2を演算するようにしてもよい。
【0096】
次に、本発明の第3の実施の形態を説明する。
この第3の実施の形態は、上記第1の実施の形態において、図1のステップS13での閾値電流演算処理の処理手順が異なることは同一であるので同一部には同一符号を付与しその詳細な説明は省略する。
図5は、図6の発光素子駆動装置において、上記第1の実施の形態と同様の手順で、APC処理が実行され、発光素子15の発光量が基準値Kmと平衡となるときの駆動電流で特定される平衡点が、A点(駆動電流Ia、発光量Pa)、D点(駆動電流Id、発光量Pd)、E点(駆動電流Ie、発光量Pe)、F点(駆動電流If、発光量Pf)として検出された状態を表している。
【0097】
この第3の実施の形態においては、ステップS13の閾値電流演算処理では、前記(13)式と同様の手順で平均値Ith_advを演算する。そして、この平均値Ith_advに対して精度向上のための補正演算を行い、補正演算後の電流値を推定閾値電流Ith_adv3とする。ここでは、補正演算として(24)式で示すように、平均値Ith_advを、予め設定した補正値αで割り算する。
Ith_adv3=Ith_adv/α ……(24)
【0098】
ここで、前記平衡点A点、D点、E点、F点に基づき特性線L1〜L3を求め、この特性線L1〜L3により特定される零駆動電流に基づき前記(13)式から、零駆動電流の平均値Ith_adv(=Ith_adv1)を演算すると、図5に示すように、平均値Ith_advは、特性線L1〜L3から求められる零駆動電流の平均値であるため、零駆動電流のばらつきを抑制することはできるものの、温度環境等によらない、駆動電流−発光量特性線L0に対する特性線L1〜L3の設定位置に起因する平均値Ith_advと実閾値電流Ithとの差は生じる。
【0099】
そこで、所定の基準値Kmに対応する平衡点を通る特性線について、予め零駆動電流を演算し、これに基づき平均値Ith_advを求める。そして、平均値Ith_adv/実閾値電流Ithの値に基づき例えば余裕代を考慮して補正値αを設定する。
このようにして補正値αを設定し前記(24)式の演算を行うことによって、得られる平均値Ith_advは補正演算によりさらに実閾値電流Ithに近づくことになり、すなわち推定閾値電流Ith_adv3と実閾値電流Ithとの誤差が抑制される。このため、温度環境等によらない、駆動電流−発光量特性線L0に対する特性線L1〜L3の設定位置に起因して生じる、推定閾値電流Ith_adv3と実閾値電流Ithとの誤差を抑制することができ、すなわちより高精度な推定閾値電流Ith_adv3を得ることができる。
【0100】
なお、この第3の実施の形態においては、補正演算として、平均値Ith_advを補正値αにより割り算する場合について説明したが、これに限るものではない。
例えば、上記と同様の手順で、予め所定の平衡点について前記(13)式から平均値Ith_adv(=Ith_adv1)を求め、平均値Ith_advと実閾値電流Ithとの差を検出する。そして、この実閾値電流Ith−平均値Ith_advの値をもとに、例えば余裕代を考慮して補正値βを設定する。
そして、次式(25)の演算を行う。
Ith_adv4=Ith_adv−β ……(25)
【0101】
この(25)式の演算を行うことによって、平均値Ith_advと実閾値電流Ithとの誤差が抑制されるため、温度環境等によらない、駆動電流−発光量特性線L0に対する特性線L1〜L3の設定位置に起因して生じる平均値Ith_advと実閾値電流Ithとの誤差を抑制することができる。したがって、この場合も、より高精度な推定閾値電流Ith_adv4を得ることができる。
【0102】
なお、補正演算は、上述のように、平均値Ith_advを補正値αにより割り算する方法、平均値Ith_advから補正値βを減算する方法に限るものではない。上記と同様の手順で所定の基準値Kmに対応する平衡点に基づき複数の特性線に基づく零駆動電流の平均値Ith_advを予め求め、この平均値Ith_advに基づき、平均値Ith_advと実閾値電流Ithとの誤差を抑制することの可能な補正関数を求める。そして、任意の基準値Kmに基づいて上記と同様の手順で演算した零駆動電流の平均値Ith_advに対して、予め検出した補正関数演算を行うことによって、精度向上を図ることも可能である。
【0103】
なお、この第3の実施の形態においては、N=4通りの平衡点を求め、これに基づきM=3通りの特性線を生成する場合について説明したが、これに限るものではなく、N≧3通り以上の平衡点を求め、これらからM(Nよりも小さい2以上の整数)本の特性線を演算する場合であっても適用することができる。
また、上記各実施の形態では、推定された閾値電流を用いて、平衡点の発光量を発光素子15の発光量の目標値として発光制御するため、発光素子15の制御可能な発光量が、平衡点に相当する発光量に限定されることになるが、例えば、基準値Kmとして、発光素子15の発光量の目標値相当の値を設定し、これに対応する平衡点を得ることによって、所望の発光量で発光させることができる。
【0104】
また、推定閾値電流を基準とした、目的とする発光量に相当する発光電流が既知であれば、目的とする発光量で発光させることができる。そのため、例えば、既知の平衡点の駆動電流から特定される発光電流とそのときの発光量との対応から、目標とする発光量に相当する発光電流を演算することによって発光電流を制御することによって、目的とする発光電流で発光させる構成とすることも可能である。
【符号の説明】
【0105】
11 比較器
12 駆動値制御部
13 スイッチ
14 駆動部
15 発光素子
16 光学ピックアップ
17 メモリ
18 演算部
【特許請求の範囲】
【請求項1】
閾値電流よりも大きな駆動電流が供給されるときに発光し且つ前記駆動電流の大きさに応じて発光量が変化する発光素子の駆動方法であって、
前記発光素子を、N通り(Nは3以上の整数)の発光量で発光させるために必要な駆動電流とそのときの発光量との対応を検出するステップと、
前記N通りの駆動電流とこれに対応する発光量との対応から、M通り(Mは前記Nより小さい2以上の整数)の一次近似式を算出するステップと、
前記M通りの一次近似式から前記発光量が零となるときの駆動電流を零駆動電流として演算し、M通りの前記零駆動電流の平均値を推定閾値電流として演算するステップと、
検出した前記駆動電流とこれに対応する発光量との対応に基づき、前記駆動電流から前記推定閾値電流を減算した値を発光電流とし、当該発光電流の演算に用いた前記駆動電流に対応する発光量と前記発光電流とに基づき、所望の発光量を得るために必要な発光電流を演算し、演算した発光電流と前記推定閾値電流との和を、前記所望の発光量を得るための駆動電流として前記発光素子に供給するステップと、を備えることを特徴とする発光素子駆動方法。
【請求項2】
前記N通りの発光量は予め設定され、
前記N通りの駆動電流とこれに対応する発光量との対応のうちの2通りから得られる複数の一次近似式のうち、前記M通りの一次近似式から得られる前記推定閾値電流と前記発光素子の予め予測された閾値電流との差がより小さくなるときの前記一次近似式の組み合わせを予め検出しこれを閾値電流演算用の組み合わせとして設定しておき、
前記一次近似式を算出するステップでは、
検出された前記駆動電流と前記発光量との対応のうち、前記閾値電流演算用の組み合わせに属する前記一次近似式の演算に必要な前記対応を用いて、前記閾値電流演算用の組み合わせに属する複数の前記一次近似式を演算することを特徴とする請求項1記載の発光素子駆動方法。
【請求項3】
前記推定閾値電流と前記発光素子の予め予測された閾値電流との差を抑制するための補正演算を予め設定しておき、
前記推定閾値電流を演算するステップでは、前記零駆動電流の平均値に対して前記補正演算を行った値を前記推定閾値電流とすることを特徴とする請求項1または請求項2記載の発光素子駆動方法。
【請求項4】
前記補正演算は、前記零駆動電流の平均値を予め設定した補正値で割り算する処理であることを特徴とする請求項3記載の発光素子駆動方法。
【請求項5】
前記補正演算は、前記零駆動電流の平均値から予め設定した補正値を減算する処理であることを特徴とする3記載の発光素子駆動方法。
【請求項1】
閾値電流よりも大きな駆動電流が供給されるときに発光し且つ前記駆動電流の大きさに応じて発光量が変化する発光素子の駆動方法であって、
前記発光素子を、N通り(Nは3以上の整数)の発光量で発光させるために必要な駆動電流とそのときの発光量との対応を検出するステップと、
前記N通りの駆動電流とこれに対応する発光量との対応から、M通り(Mは前記Nより小さい2以上の整数)の一次近似式を算出するステップと、
前記M通りの一次近似式から前記発光量が零となるときの駆動電流を零駆動電流として演算し、M通りの前記零駆動電流の平均値を推定閾値電流として演算するステップと、
検出した前記駆動電流とこれに対応する発光量との対応に基づき、前記駆動電流から前記推定閾値電流を減算した値を発光電流とし、当該発光電流の演算に用いた前記駆動電流に対応する発光量と前記発光電流とに基づき、所望の発光量を得るために必要な発光電流を演算し、演算した発光電流と前記推定閾値電流との和を、前記所望の発光量を得るための駆動電流として前記発光素子に供給するステップと、を備えることを特徴とする発光素子駆動方法。
【請求項2】
前記N通りの発光量は予め設定され、
前記N通りの駆動電流とこれに対応する発光量との対応のうちの2通りから得られる複数の一次近似式のうち、前記M通りの一次近似式から得られる前記推定閾値電流と前記発光素子の予め予測された閾値電流との差がより小さくなるときの前記一次近似式の組み合わせを予め検出しこれを閾値電流演算用の組み合わせとして設定しておき、
前記一次近似式を算出するステップでは、
検出された前記駆動電流と前記発光量との対応のうち、前記閾値電流演算用の組み合わせに属する前記一次近似式の演算に必要な前記対応を用いて、前記閾値電流演算用の組み合わせに属する複数の前記一次近似式を演算することを特徴とする請求項1記載の発光素子駆動方法。
【請求項3】
前記推定閾値電流と前記発光素子の予め予測された閾値電流との差を抑制するための補正演算を予め設定しておき、
前記推定閾値電流を演算するステップでは、前記零駆動電流の平均値に対して前記補正演算を行った値を前記推定閾値電流とすることを特徴とする請求項1または請求項2記載の発光素子駆動方法。
【請求項4】
前記補正演算は、前記零駆動電流の平均値を予め設定した補正値で割り算する処理であることを特徴とする請求項3記載の発光素子駆動方法。
【請求項5】
前記補正演算は、前記零駆動電流の平均値から予め設定した補正値を減算する処理であることを特徴とする3記載の発光素子駆動方法。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【公開番号】特開2012−114193(P2012−114193A)
【公開日】平成24年6月14日(2012.6.14)
【国際特許分類】
【出願番号】特願2010−261048(P2010−261048)
【出願日】平成22年11月24日(2010.11.24)
【出願人】(303046277)旭化成エレクトロニクス株式会社 (840)
【Fターム(参考)】
【公開日】平成24年6月14日(2012.6.14)
【国際特許分類】
【出願日】平成22年11月24日(2010.11.24)
【出願人】(303046277)旭化成エレクトロニクス株式会社 (840)
【Fターム(参考)】
[ Back to top ]