(57)【特許請求の範囲】
【請求項１】
被写体像を検出してデフォーカス量を求める焦点検出手段と、
前記デフォーカス量に基づき焦点調節レンズを駆動制御するレンズ駆動手段と、
前記焦点調節レンズの移動範囲内における位置を検出し撮影距離コードを出力する位置検出手段と、
前記位置検出手段から得られる撮影距離コードと、前記焦点調節レンズの移動量に応じて生成されるパルス数とに基づいて前記焦点調節レンズの減速開始位置を決定する減速位置決定手段と、
前記焦点調節レンズが前記減速開始位置に到達すると減速制御を開始する減速制御手段と、
前記焦点調節レンズが機械的端点に達したことを検出する端点検出手段と、
を備え、
前記減速位置決定手段は、
前記端点検出手段での端点検出結果を用い、前記撮影距離コードが前記移動範囲における最も近距離側を示す値に変化する位置から最近距離側端点に達するまでの距離に対応するパルス数（Ｐ０）を計測し、
前記最近距離側端点から当該最近距離側端点近傍の所定位置までの移動量に相当するパルス数（ΔＰ）を算出して、前記パルス数（Ｐ０）と前記パルス数（ΔＰ）との差分となるパルス数（Ｐｎ）を算出し、
前記撮影距離コードが前記移動範囲における最も近距離側を示す値に変化する位置から、近距離側に向かって前記算出されたパルス数（Ｐｎ）に相当する距離を移動した位置を近距離方向駆動時の減速開始位置と決定することを特徴とする自動焦点調節装置。
【請求項２】
前記減速位置決定手段は、
前記焦点調節レンズによる最短撮影距離（Ｄｖｍｉｎ）の情報を有し、
所定のアルゴリズムに基づいて、前記最短撮影距離（Ｄｖｍｉｎ）に対応する像面距離ｐ１と、当該最短撮影距離（Ｄｖｍｉｎ）に所定の距離αを加えた距離（Ｄｖｍｉｎ＋α（但し、α＞０））に対応する像面距離ｐ２とを算出し、
前記像面距離ｐ１とｐ２との差分に基づいて前記パルス数（ΔＰ）を算出すること、を特徴とする請求項１に記載の自動焦点調節装置。
【請求項３】
被写体像を検出してデフォーカス量を求める焦点検出手段と、
前記デフォーカス量に基づき焦点調節レンズを駆動制御するレンズ駆動手段と、
前記焦点調節レンズの移動範囲内における位置を検出し撮影距離コードを出力する位置検出手段と、
前記位置検出手段から得られる撮影距離コードと、前記焦点調節レンズの移動量に応じて生成されるパルス数とに基づいて前記焦点調節レンズの減速開始位置を決定する減速位置決定手段と、
前記焦点調節レンズが前記減速開始位置に到達すると減速制御を開始する減速制御手段と、
を備え、
前記減速位置決定手段は、
前記撮影距離コードが前記移動範囲における最も遠距離側を示す値に変化した位置の撮影距離に所定の距離βを加えた距離の位置を遠距離方向駆動時の減速開始位置と決定するものであって、前記撮影距離コードが前記移動範囲における最も遠距離側を示す値に変化する位置から、距離として決定された該減速開始位置に至る距離に相当する前記焦点調節レンズの移動量を求め、該求められた移動量に対応するパルス数を算出して所定量Ｐｆとし、前記撮影コードが前記移動範囲における最も遠距離側を示す値に変化した位置から、遠距離側に向かって前記パルス数が前記所定量Ｐｆに達した位置を遠距離方向駆動時の減速開始位置と決定すること、を特徴とする自動焦点調節装置。
【請求項４】
前記決定された減速開始位置を記憶する記憶手段をさらに備え、
前記減速制御手段は、前記記憶された減速開始位置に基づいて減速制御を開始すること、を特徴とする請求項１から請求項３のいずれかに記載の自動焦点調節装置。
【請求項５】
撮影レンズの脱着を検出する手段をさらに備え、
前記減速位置決定手段は、撮影レンズが装着されたとき減速開始位置を決定すること、を特徴とする請求項１から請求項４のいずれかに記載の自動焦点調節装置。
【請求項６】
前記減速制御手段は、レンズ駆動モータをパルス幅変調方式（PWM）によって制御して減速制御を行うこと、を特徴とする請求項１から請求項５のいずれかに記載の自動焦点調節装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、カメラなどに用いられる自動焦点調節装置に関し、特に、焦点調節レンズ駆動における減速制御に関する。
【０００２】
【従来の技術】
撮影レンズ内において、オートフォーカス（ＡＦ）動作、すなわち焦点調節レンズを光軸方向において移動させることにより自動焦点調節を行う場合、焦点調節レンズが移動範囲の端点に達したときのショックを和らげるための減速制御を行うのが望ましい。このような減速制御を行うために、制御手段は端点付近における減速開始位置を知ることが必要になるが、一般的に、減速制御を開始する減速開始位置を検出するために、焦点調節レンズが端点付近に専用の検出スイッチを用いている。
【０００３】
【発明が解決しようとする課題】
しかしながら、専用の検出スイッチを設けることはコストアップを招く。特にレンズ交換式カメラ用撮影レンズの場合、撮影レンズ毎に焦点調整レンズの移動範囲が異なっているため、撮影レンズ毎に検出スイッチの位置を変更しなければならず、より一層のコストアップを招く。また、たとえカメラ本体が、このような撮影レンズの検出スイッチからの情報に応じて減速制御を行う構成となっていたとしても、検出スイッチを搭載していない既存の撮影レンズが装着された場合には、減速制御が行われないことになる。
【０００４】
本発明はこのような事情に鑑みてなされた。すなわち本発明は、減速制御専用の検出機構を備えることなく、端点付近において高い位置精度で減速開始位置を決定し減速制御を実行することができ、さらに、このような減速開始位置を、装着される撮影レンズに応じて決定することのできる自動焦点調節装置を提供することを目的とする。
【０００５】
【課題を解決するための手段】
そのため、本発明に係る自動焦点調節装置は、被写体像を検出してデフォーカス量を求める焦点検出手段と、デフォーカス量に基づき焦点調節レンズを駆動制御するレンズ駆動手段と、焦点調節レンズの移動範囲内における位置を検出し撮影距離コードを出力する位置検出手段と、位置検出手段から得られる撮影距離コードと、焦点調節レンズの移動量に応じて生成されるパルス数とに基づいて焦点調節レンズの減速開始位置を決定する減速位置決定手段と、焦点調節レンズが減速位置に到達すると減速制御を開始する減速制御手段と、焦点調節レンズが機械的端点に達したことを検出する端点検出手段とを備える。
【０００６】
そして、減速位置決定手段は、端点検出手段での端点検出結果を用い、撮影距離コードが移動範囲における最も近距離側を示す値に変化する位置から最近距離側端点に達するまでの距離に対応するパルス数（Ｐ０）を計測し、最近距離側端点から当該最近距離側端点近傍の所定位置までの移動量に相当するパルス数（ΔＰ）を算出して、パルス数（Ｐ０）とパルス数（ΔＰ）との差分となるパルス数（Ｐｎ）を算出し、撮影距離コードが移動範囲における最も近距離側を示す値に変化する位置から、近距離側に向かって算出されたパルス数（Ｐｎ）に相当する距離を移動した位置を近距離方向駆動時の減速開始位置と決定する。
【０００７】
撮影レンズ内の焦点調節レンズの大まかに区分された位置が、位置検出手段によって撮影距離コードとして提供される。減速位置決定手段が、撮影距離コードの変化点からの駆動パルス数に基づいて、高い分解能で減速開始位置を決定するので、減速制御手段は、焦点調節レンズ移動範囲の端点付近の適切な位置で減速制御を開始することが可能になる。また、焦点調節レンズの移動範囲における近距離側の減速開始位置が、距離コードの変化点からのパルスカウント数として決定される。
【０００８】
また、撮影距離コードが移動範囲における最近距離側端点に近い値に変化する位置から、最近距離側端点に達するまでの距離Ｐ０が実際の計測によって得られるので、距離Ｐ０が撮影レンズ毎に異なる場合であっても、撮影レンズ毎に距離Ｐ０の範囲内の適切な位置に、距離として減速開始位置を決定することができる。
【０００９】
また、本発明に係る自動焦点調節装置は、被写体像を検出してデフォーカス量を求める焦点検出手段と、デフォーカス量に基づき焦点調節レンズを駆動制御するレンズ駆動手段と、焦点調節レンズの移動範囲内における位置を検出し撮影距離コードを出力する位置検出手段と、位置検出手段から得られる撮影距離コードと、焦点調節レンズの移動量に応じて生成されるパルス数とに基づいて焦点調節レンズの減速開始位置を決定する減速位置決定手段と、焦点調節レンズが減速開始位置に到達すると減速制御を開始する減速制御手段とを備え、減速位置決定手段は、撮影距離コードが移動範囲における最も遠距離側を示す値に変化した位置の撮影距離に所定の距離βを加えた距離の位置を遠距離方向駆動時の減速開始位置と決定するものであって、撮影距離コードが移動範囲における最も遠距離側を示す値に変化する位置から、距離として決定された該減速開始位置に至る距離に相当する焦点調節レンズの移動量を求め、該求められた移動量に対応するパルス数を算出して所定量Ｐｆとし、撮影コードが移動範囲における最も遠距離側を示す値に変化した位置から、遠距離側に向かってパルス数が所定量Ｐｆに達した位置を遠距離方向駆動時の減速開始位置と決定する。
【００１０】
近距離側の減速開始位置が、撮影レンズの最短撮影距離から距離αの位置に常に決定される。したがって、距離コードの区分数や、１区分でカバーされる距離範囲が撮影レンズ毎に異なっている場合であっても、すなわち距離Ｐ０が撮影レンズ毎に異なる場合であっても、近距離側の減速開始位置を、焦点調節レンズの移動範囲における近距離側端点に近い適切な位置に常に決定することができる。
【００１１】
また、焦点調節レンズの移動範囲における遠距離方向駆動時の減速開始位置が、撮影距離コード変化点からのカウント数Ｐｆとして決定される。
【００１２】
また、遠距離方向駆動時の減速開始位置が、撮影距離コードが移動範囲における最も遠距離側を示す値に変化した位置の撮影距離に所定の距離βを加えた距離、すなわち距離情報として決定される。
【００１３】
また、上記自動焦点調節装置は、決定された減速開始位置を記憶する記憶手段をさらに備える。減速開始位置が記憶されるので、減速開始位置が一旦決定されると、以後、決定された減速開始位置を用いて減速制御が行われる。
【００１４】
また、上記自動焦点調節装置は、撮影レンズの脱着を検出する手段をさらに備え、減速位置決定手段は、撮影レンズが装着されたとき減速開始位置を決定する。撮影レンズが装着されると、最初に、その撮影レンズに応じて減速開始位置が決定され、以後、決定された減速開始位置を用いて減速制御が行われる。
【００１５】
減速制御手段は、レンズ駆動モータをパルス幅変調方式（PWM）によって制御して減速制御を行うことが好ましい。
【００１６】
【発明の実施の形態】
図１は、本発明の自動焦点調節装置を搭載したＡＦ一眼レフカメラの制御系を表すブロック図である。
図１のＡＦ一眼レフカメラは、カメラ本体１０及びＡＦ対応の撮影レンズ（交換レンズ）５０から構成される。また、図１において、ＣＰＵ２４は、カメラのあらゆる制御を行うＣＰＵであるとともに、ＡＦユニット２８からの信号に基づいてデフォーカス量を演算する焦点検出手段でもある。
【００１７】
図１において、撮影レンズ５０内の焦点調節レンズ５２を通過してカメラ本体１０内に入射してくる被写体からの光線は、その大部分がメインミラー２で反射されペンタプリズム８で反射されてアイピース（図示しない）から射出するとともに、測光ＩＣ１２の受光面にも導かれる。測光ＩＣ１２は、例えば受光量に応じた電圧値を対数圧縮した電気信号を生成し、周辺制御回路１４を介してＣＰＵ２４に受光量に関する情報を提供する。ＣＰＵ２４は、測光ＩＣ１２から得られた受光量情報、フィルム感度情報に基づいてＡＥ演算（露出演算）を実行し、撮影の為の適正シャッタ速度及び適正絞り値を算出する。撮影処理時、ＣＰＵ２４は、周辺制御回路１４を介し、算出された適正シャッタ速度及び適正絞り値に基づいて、露光機構２０及び絞り機構２２を制御し、フィルムへの露光を行う。また、ＣＰＵ２４は、周辺制御回路１４を介し、撮影処理において、モータドライバＩＣ１６を介してミラーモータ１７を駆動してメインミラー２をアップ／ダウン制御し、また、露光終了後は、巻き上げモータ１８を駆動し、フィルムを１コマ分巻き上げる処理を行う。
【００１８】
一方、メインミラー２にはハーフミラー部３が設けられており、ここを透過した光線はサブミラー４で反射されＡＦユニット２８に導かれる。ＡＦユニット２８は、位相差方式による焦点検出を行うためのセンサユニットである。ＡＦユニット２８内部には、フィルム面と共役の位置にＣＣＤラインセンサが配置されている。被写体像は、ＣＣＤラインセンサ内の一対のＣＣＤセンサに入射し所定量電荷蓄積（積分）され、光電変換されて電気信号としてＣＰＵ２４に伝えられる。ＣＰＵ２４は、一対のＣＣＤセンサから得られる信号を用い、位相差方式によってデフォーカス量を算出する。
【００１９】
ＣＰＵ２４は、得られたデフォーカス量に基づいて、焦点調節レンズ５２を駆動して焦点調節を行うための、ＡＦモータ３７の回転方向及び回転数を求め、モータドライバＩＣ３６を介してＡＦモータ３７を駆動する。ＡＦモータ３７の回転は、ギアブロック３８、カメラ本体１０のマウント部に設けられたジョイント３２及び撮影レンズ５０に設けられたジョイント６２を夫々介してギアブロック５４に伝えられ、それにより焦点調節レンズ５２が光軸方向において合焦位置まで進退駆動される。
【００２０】
また、ＣＰＵ２４は、ＡＦユニット２８のＣＣＤラインセンサから送られてくるビデオ信号をアナログからデジタルに変換するＡ／Ｄコンバータ２４ａ、プログラムを格納したＲＯＭ２４ｂ、ＲＡＭ２４ｃ、タイマ２４ｄ、及びＡＦモータ３７の回転を電気的パルスに変換するエンコーダ３９からのパルス信号を受け、パルス数のカウントを行うカウンタ２４ｅを備え、これによりレンズ駆動量をフォードバック制御している。ＥＥＰＲＯＭ４２には、ＣＰＵ２４が処理を行う上で必要となる各種パラメータその他の情報が格納される。
【００２１】
図１に示すカメラは、メインスイッチ９１をＯＮにすることにより動作状態となる。測光スイッチ９２は、レリーズボタン（図示せず）を半押しすることによってＯＮされる。また、レリーズスイッチ９３は、レリーズボタンを全押しすることによってＯＮになり、このスイッチがＯＮになることによりフィルム面への露光が行われる。ＡＦスイッチ９４は、自動焦点モードにするかマニュアル焦点モードにするかを切り替えるスイッチであり、このスイッチがＯＮのときに自動焦点モードになる。また、ＣＰＵ２４は、撮影に関する様々な情報を、カメラ外装面の表示パネル２６に表示すると共に、ファインダー内表示を行うためのファインダー内表示ＬＣＤ６にも各種の表示を行う。
【００２２】
撮影レンズ５０内部にはレンズＣＰＵ５６が備えられている。レンズＣＰＵ５６は、多数の電気接点６４及びカメラ本体１０側の多数の電気接点３４を介して周辺制御回路１４と接続されている。ＣＰＵ２４とレンズＣＰＵ５６とは、周辺制御回路１４を介して、互いに協働して定期的にデータ通信動作を行い、撮影レンズ５０の接続状態や撮影レンズ５０に関する固有情報をＣＰＵ２４に送信するとともに、ＣＰＵ２４から様々な情報を受信する。レンズＣＰＵ５６が送信する情報には、例えば、撮影レンズ５０の開放絞り値Ａｖ（開放Ｆ値のアペックス換算値）、最大絞り値Ａｖ（最小絞りＦ値のアペックス換算値）、Ｋバリューデータ等がある。なお、Ｋバリューとは、撮影レンズ５０によって結像された像面を、ＡＦモータ３７を駆動して光軸方向で単位長さ移動させた場合に、エンコーダ３９が出力するパルス数に対応する。また、レンズＣＰＵ５６は、焦点調節レンズ５２の位置を検出するために設けられた距離スイッチ５８の状態により、焦点調節レンズ５２の位置を認識し、距離コードＤｖ’としてＣＰＵ２４にその値も伝える。
【００２３】
焦点調節レンズ５２の位置情報としての距離コードＤｖ’は、ＣＰＵ２４おいて、露出演算やデフォーカス量演算などに利用されるが、本実施形態においては、後述するように、さらに焦点調節レンズ５２の端点付近における減速駆動制御にも利用している。
【００２４】
これらの様々な撮影レンズ５０に関する固有情報は、レンズＣＰＵ５６内の不図示のＲＯＭあるいはＲＡＭに格納されていて、上述のＣＰＵ２４とのデータ通信により、必要に応じてＣＰＵ２４のＲＡＭ２４Ｃ、あるいはＥＥＰＲＯＭ４２に格納される。なお、その他の撮影レンズ５０の固有情報については、追って説明することにする。
【００２５】
距離スイッチ５８は、撮影レンズ５０内で光軸に対して環状に設けられたコード板と、コード板に形成されている電極パターンのコードを読み出すためのブラシから構成される。この電極パターンは、撮影距離（すなわち、焦点調節レンズ５２の位置）に対応したコードを生成するように形成されている。表１は、撮影距離と、そのアペックス値である距離コードＤｖとの関係を示している。撮影レンズ５０は、最も近距離側を０、最も遠距離側を７とする、０〜７の８段階の距離コードＤｖ’を出力する。表２は、距離コードＤｖ’と、そのＤｖ’に応じて距離スイッチ５８が出力する値（ビット値）との対応関係を示している。なお、撮影レンズ５０には、固有の情報として最小撮影距離Ｄｖｍｉｎが格納されており、撮影レンズ５０の８段階のＤｖ’は、次の関係によって絶対的な距離コードＤｖに対応付けられる。
Ｄｖ＝Ｄｖｍｉｎ＋Ｄｖ’
例えば、撮影レンズの最小撮影距離Ｄｖｍｉｎが−１であるとき、撮影レンズが出力する距離コードＤｖ’が０である場合には、Ｄｖ＝−１であり、撮影距離は０．７ｍである。
【００２６】
【表１】
0004169242.tif 000002
【００２７】
【表２】
0004169242.tif 000003
【００２８】
メインスイッチ９１がＯＮにされるとカメラ１００は動作状態となり、カメラ本体１０内のＣＰＵ２４によって実行される処理のメインルーチンが開始される。メインルーチンでは、システムイニシャライズによって、図１のカメラの動作制御に関する種々のパラメータやフラグが初期化され、測光スイッチ９２のＯＮ／ＯＦＦ状態の監視が開始される。測光スイッチ９２がＯＮになると、ＡＥ演算処理等が行われた後、自動焦点調節を実行するための処理であるＡＦ処理サブルーチンが所定のループ時間繰返し実行される。測光スイッチ９２ＯＮのまま所定のループ時間が経過すると、再び、ＡＥ演算等、ＡＦ処理繰返しという一連の処理が実行される。また、メインルーチンでは、測光スイッチ９２がＯＦＦになって所定時間経過すると、パワーダウン処理が実行される。図２及び図３は、ＣＰＵ２４によって実行されるＡＦ処理サブルーチンを示すフローチャートである。
【００２９】
図２に示すように、ＡＦ処理が開始されると、始めにステップＳ２０１において、電気接点３４を介して定期的に行われているカメラ側のＣＰＵ２４とレンズＣＰＵ５６との通信動作によって、撮影レンズの脱着状態が検出され、撮影レンズが新たに取り付けられたか否かが判定される。撮影レンズが新たに取り付けられた場合（Ｓ２０１：ＹＥＳ）、遠距離側（∞側）の減速位置パルスを格納するための変数Ｐｆと、近距離側の減速位置パルスを格納するための変数ＰｎおよびＰ０がクリアされる（Ｓ２０２）。次に、ステップＳ２０３において測光スイッチ９２がＯＮであるか否かが確認される。通常、ＡＦ処理に入るとき、測光スイッチ９２はＯＮであるが、測光スイッチ９２がＯＮでない場合（Ｓ２０３：ＮＯ）、ＡＦ処理ルーチンで用いられる各フラグがクリアされ（Ｓ２１９）、処理はメインルーチンへ復帰する。なお、ＡＦロックフラグは、合焦状態に達し、ＡＦロックになっていることを示すフラグであり、ＡＦＮＧフラグは、ＡＦ処理が正常に終了しなかったことを示すフラグであり、駆動方向反転フラグは、焦点調節レンズの５２の進退駆動の方向が反転したことを示すフラグである。
【００３０】
ステップＳ２０３において測光スイッチ９２がＯＮであると（Ｓ２０３：ＹＥＳ）、ＡＦロックであるか否かが確認され（Ｓ２０４）、ＡＦロック状態であれば（Ｓ２０４：ＹＥＳ）、処理はメインルーチンに復帰する。ＡＦロック状態でない場合は（Ｓ２０４：ＮＯ）、処理はステップＳ２０５に進む。ステップＳ２０５では、ＡＦユニット２８内のＣＣＤセンサへの電荷蓄積（積分）、ＣＣＤセンサで光電変換された電気信号のＡＦユニット２８からＣＰＵ２４への入力、及び入力されたデータを用いてのデフォーカス演算が実行される。
【００３１】
スッテプＳ２０６では、ステップＳ２０５におけるデフォーカス演算がＯＫであったか否かが確認される。デフォーカス演算ＯＫであれば、すなわち有効なデフォーカス量が得られた場合は（Ｓ２０６：ＹＥＳ）、デフォーカス量が合焦幅内にあるか否かが確認される。合焦幅内である場合には（Ｓ２１７：ＹＥＳ）、ＡＦロックフラグが１にセットされ、処理はメインルーチンに復帰する。合焦幅内でない場合には（Ｓ２１７：ＮＯ）、処理はステップ２２０進み、レンズ駆動が行われる。
【００３２】
一方、ステップＳ２０６において、デフォーカス演算がＮＧであるとき（Ｓ２０６：ＮＯ）、ＡＦＮＧであるか否かが確認された後（Ｓ２０７）、ステップＳ２０８〜Ｓ２１６までの一連の処理によって、焦点調節レンズ５２を、現在位置から近距離側の端部へ、そして再び遠距離側の端部まで、有効なデフォーカス量が得られるまで一往復サーチ駆動する処理が行われる。
【００３３】
ステップ２０７においてＡＦＮＧであるか否かが確認され、ＡＦＮＧである場合には（Ｓ２０７：ＹＥＳ）、サブルーチンは終了する。ＡＦＮＧでない場合には（Ｓ２０７：ＮＯ）、処理はステップＳ２０８に進む。ステップＳ２０８では、焦点調節レンズ５２を現在位置から近距離側端部まで駆動すべく、駆動パルス数を所定の最大値にセットしてサーチ駆動を開始する。ステップＳ２０９では、レンズ駆動されている状況で、ステップ２０５と同様の、デフォーカス量を求めるための処理が行われる。その結果、有効なデフォーカス量が得られ、演算ＯＫである場合には（Ｓ２１０：ＹＥＳ）、処理はオーバーラップ処理におけるステップＳ２２７に移る。演算ＮＧである場合には（Ｓ２１０：ＮＯ）、減速位置検出処理が行われる（Ｓ２１１）。ステップＳ２０９〜Ｓ２１１の処理は焦点調節レンズ５２が端点に到達するまで実行される。なお、後述するように、焦点調節レンズ５２が近距離側に向かって移動するときに減速位置検出処理が実行されると、近距離側の減速開始位置の検出及び減速制御が行われる。
【００３４】
近距離側に向けてレンズ駆動することにより、焦点調節レンズ５２が近距離側端点に到達したと判定されると、すなわち端点検出されると（Ｓ２１２：ＹＥＳ）、レンズ駆動が停止される（Ｓ２１３）。なお、端点検出は、エンコーダ３９から出力されるパルスが所定時間内に検出されたか否かにより行なわれ、パルスが所定時間内に検出されなかった場合、焦点調節レンズが端点に達したものとして検出される。次に、ステップ２１４において駆動方向反転フラグがセットされているか否かが判定される。すなわち、サーチ駆動において、一旦近距離側の端部に到達した後の、遠距離側に向けての駆動であるか否かが判定される。駆動反転していない場合には（Ｓ２１４：ＮＯ）、ステップＳ２１５において駆動方向反転フラグが１にセットされ、レンズ駆動方向が近距離側から遠距離側に反転され、レンズ駆動が開始される（Ｓ２１６）。ステップＳ２１４において、駆動方向が反転している判定される場合には（Ｓ２１４：ＹＥＳ）、処理はステップＳ２３１に進み、レンズ駆動が停止される。すなわち、サーチ駆動が停止され、ＡＦＮＧフラグがセットされた後（Ｓ２３２）、サブルーチンは終了する。なお、後述するように、焦点調節レンズ５２が近距離側から遠距離側端部に向かって移動するときに減速位置検出処理（Ｓ２１１）が実行されることで、遠距離側の減速開始位置の検出及び減速制御が行われる。
【００３５】
一方、ステップＳ２１７において合焦幅内でないと判定される場合には（Ｓ２１７：ＮＯ）、処理はステップ２２０に進み、今回ＡＦ処理サブルーチンが呼び出された際の焦点調節レンズ５２の進退駆動の方向と、前回ＡＦ処理サブルーチンが呼び出された際の焦点調節レンズ５２の進退駆動の方向が比較される。前回と逆方向である場合には（Ｓ２２０：ＹＥＳ）、ギアブロック５４のギアが逆転することによって生じる誤差を補正するために必要なバックラッシュ量の計算が行われる（Ｓ２２１）。ステップＳ２２２では、バックラッシュ量にしたがってレンズ駆動が行われる。一方、前回と同じ方向の場合には（Ｓ２２０：ＮＯ）、処理はステップＳ２３０に進み、ＡＦＮＧフラグが確認されＡＦＮＧである場合には（Ｓ２３０：ＹＥＳ）、サブルーチンは終了する。ＡＦＮＧでない場合には（Ｓ２３０：ＮＯ）、処理はステップＳ２２３に進む。
【００３６】
ステップＳ２２３では、ステップＳ２０５で求められたデフォーカス量と、撮影レンズ５０から取得したＫバリューとを乗じることにより、焦点調節レンズ５２を合焦位置まで移動させるのに必要な、ＡＦモータ３７の駆動パルス数が計算され、ステップＳ２２４において、求められた駆動パルス数にしたがってレンズ駆動が開始される。
【００３７】
次に、ステップＳ２２５〜Ｓ２２９の一連のオーバーラップ処理が実行される。オーバーラップ処理では、撮影レンズ５０を駆動しながら、次々とデフォーカス量の再計算が行われ、焦点調節レンズ５２の駆動パルスが最新のデフォーカス演算結果に基づく駆動パルスで更新される。
【００３８】
ステップＳ２２５では、ステップＳ２０５と同様の処理によりデフォーカス量が求められる。なお、オーバーラップ積分とは、撮影レンズ駆動中における、ＣＣＤセンサへの電荷蓄積処理であることを示す。ステップＳ２２６では、デフォーカス演算がＯＫであるか否かが確認される。演算ＯＫである場合（Ｓ２２６：ＹＥＳ）、処理はステップＳ２２７に進み、演算ＮＧである場合（Ｓ２２６：ＮＯ）、処理はステップＳ２２８に移る。ステップＳ２２７では、ステップＳ２２５において求められたデフォーカス量とＫバリューとを乗算することにより、駆動パルスを更新するための新たな駆動パルスが算出され、以後、更新された駆動パルスにしたがってレンズ駆動が行われる。ステップＳ２２８では、端点検出されたか否かが確認される。端点検出された場合には（Ｓ２２８：ＹＥＳ）、レンズ駆動が停止されＡＦＮＧフラグが１にセットされてサブルーチンは終了する（Ｓ２３１，Ｓ２３２）。端点検出されていない場合には（Ｓ２２８：ＮＯ）、駆動パルスにしたがっての焦点調節レンズ５２の駆動が終了しているか否かが確認される（Ｓ２２９）。駆動終了している場合には（Ｓ２２９：ＹＥＳ）、サブルーチンは終了する。駆動終了していない場合には（Ｓ２２９：ＮＯ）、処理はステップＳ２２５に戻り、オーバーラップ処理が続行される。
【００３９】
図４及び図５は、ステップＳ２１１においてサブルーチンとして実行される減速位置検出処理の詳細を表すフローチャートである。図４に示すように、始めに、レンズ駆動中であるかが判定され、レンズ駆動中でない場合には（Ｓ４０１：ＮＯ）、サブルーチンは終了する。レンズ駆動中である場合には（Ｓ４０１：ＹＥＳ）、ステップＳ４０２において、ＣＰＵ２４は撮影レンズ５０側から、現在の焦点調節レンズ５２の位置を示す距離コードＤｖ’を取得する。次にステップＳ４０３において、減速開始位置を示すパルス数を格納しておくための変数である、遠距離側減速位置パルスＰｆ及び近距離側減速位置パルスＰｎが未設定であるか否かが確認される。この減速位置検出処理が、撮影レンズ脱着後始めて呼び出されるとき、これらＰｆ及びＰｎは未設定（前述の図２におけるステップＳ２０２にてクリアされているため）であり（Ｓ４０３：ＹＥＳ）、次に処理はステップ４０４以降に進み、現在装着されている撮影レンズに最適なＰｆ及びＰｎを設定するための処理が実行される。一方、Ｐｆ及びＰｎが既に設定されている場合には（Ｓ４０３：ＮＯ）、図５のステップＳ４１５以降の処理が行われ、焦点調節レンズ５２が減速位置に到達している場合には減速制御が実行されることになる。
【００４０】
ステップＳ４０４では、焦点調節レンズ５２の移動方向が、近距離側の端点に向かっての移動であるか、遠距離側端点に向かっての移動であるかが判定される。近距離方向への移動である場合には（Ｓ４０４：ＹＥＳ）、ステップＳ４０５ａ〜Ｓ４０９の処理により、近距離側の減速位置パルスＰｎが決定される。一方、遠距離方向への移動である場合には（Ｓ４０４：ＮＯ）、ステップＳ４１０〜Ｓ４１４の処理により、遠距離側の減速位置パルスＰｆが決定される。
【００４１】
近距離側の減速位置パルスＰｎを決定するための処理であるステップＳ４０５ａ〜Ｓ４０９の処理において、始めに撮影レンズ５０側から得られるＤｖ’が１→０に変化した時点からの、焦点調節レンズ５２の駆動パルス数のカウントが開始され、カウント数が変数ＰＯとして格納される。このカウント処理は、焦点調節レンズ５２が近距離側端点に到達するまで繰返し実行されるので、ステップＳ４０６において端点検出されたと判定されるときには（Ｓ４０６：ＹＥＳ）、変数Ｐ０のパルス数は、焦点調節レンズ５２がＤｖ’＝０に相当する撮影距離範囲全体に渡って移動するための移動量に対応するパルス数を表すことになる。
【００４２】
近距離側の減速開始位置Ｐｎを決定するためのステップＳ４０５ａ〜Ｓ４０９の処理において、始めにステップＳ４０５ａにおいて、Ｄｖ’＝０となっているか否かが判定される。Ｄｖ’＝０と判定される場合（Ｓ４０５ａ：ＹＥＳ）、すなわち、Ｄｖ’の１→０への変化が検出されると、ステップＳ４０５においてパルスのカウントが開始され、カウント値Ｐ０の格納が行われる。なお、ステップＳ４０５ａにおいてＤｖ’＝０でないと判定される場合（Ｓ４０５ａ：ＮＯ）、すなわちＤｖ’の１→０の変化がまだ起きていない場合には、本サブルーチは終了する。ステップＳ４０６では、焦点調節レンズ５２が端点に到達することにより端点検出されたか否かが判定される。端点検出された場合（Ｓ４０６：ＹＥＳ）、処理はステップＳ４０７に進む。端点検出されていない場合には（Ｓ４０６：ＮＯ）、本サブルーチンは終了する。
【００４３】
ステップＳ４０７において、撮影レンズ５０から得られる最短撮影距離Ｄｖｍｉｎを用いて、近距離側の減速開始位置を（Ｄｖｍｉｎ＋０．５）に相当する位置とするために、Ｄｖｍｉｎ、（Ｄｖｍｉｎ＋０．５）に相当する撮影距離が、それぞれＤ１（メートル），Ｄ２（メートル）として求められる。
すなわち、Ｄｖｍｉｎに相当する撮影距離が次の定義にしたがって算出される。
Ｄ１＝２＾（Ｄｖｍｉｎ／２）
同様に、（Ｄｖｍｉｎ＋０．５）に相当する撮影距離が次の定義にしたがって算出される。
Ｄ２＝２＾（（Ｄｖｍｉｎ＋０．５）／２）
【００４４】
ステップＳ４０８では、撮影距離Ｄ１，Ｄ２の距離間での像面移動量に相当するパルス数Δｐが次のように求められる。
撮影距離Ｄ１に相当する像面距離ｐ１（ミリメートル）は、焦点距離ｆを用いて、
ｐ１＝（ｆ＾２）／Ｄ１
と表される。
同様に、撮影距離Ｄ２に相当する像面距離ｐ２（ミリメートル）は、
ｐ２＝（ｆ＾２）／Ｄ２
と表される。
したがって、Ｄ１，Ｄ２の距離間に相当するパルス数は、
Δｐ＝ｐ１−ｐ２
となる。
ステップＳ４０９において、Ｄｖ’＝０の範囲全体に相当するパルス数Ｐ０からΔｐを減じた値が変数Ｐｎに格納される。
Ｐｎ＝Ｐ０−Δｐ
すなわち、Ｐｎは、Ｄｖ’が１→０の変化点（切り換わり位置）から減速開始位置までのパルス数を表す。このパルス数Ｐｎに対応するレンズ移動範囲上の減速開始位置が、図６に位置Ａとして示される。図６は、焦点調節レンズ５２の移動範囲とＤｖ’との対応を表している。Ｐｎが設定されると、サブルーチンは終了する。
【００４５】
ところで、撮影レンズにおいては、モータ駆動量とレンズの移動量とは比例するが、撮影距離は指数的に変化するので、近距離側ほど撮影距離の変化に対するレンズ移動量が大きくなる。一方、レンズ鏡筒内の空間的な制約等から、距離コードのビット数をあまり多くとることができない。そして、最近距離側領域、すなわち距離コードＤｖ’＝０となる領域は、最遠距離側のＤｖ’＝７となる領域よりも長くなる傾向にあり、レンズ毎でその長さも変化に富む。加えて、近距離側ほど、撮影距離の変化に伴う焦点調節レンズの移動量が大きくなる。
【００４６】
したがって、単純に距離コードの最近距離領域に切り替わる地点から焦点調節レンズの減速駆動を始めると、最近距離側端点に対して必要以上に手前の位置から減速駆動が始まってしまい、迅速なレンズ駆動を妨げてしまう。そこで、本実施形態においては、迅速なレンズ駆動を行わせるべく、前述のステップＳ４０４〜Ｓ４０９の処理により、Ｄｖ’が１から０に切り替わる地点から、実際に焦点調節レンズが機械的に停止する近距離側の端点までの距離を計測し（上記Ｐ０の値に相当）、この距離と近距離側端点近傍の像面移動量（ステップＳ４０７及びＳ４０８のようにΔｐを求めることに相当）とを考慮して、装着された撮影レンズに最適な減速開始位置を求めている（Ｓ４０９）。
【００４７】
一方、遠距離側の減速位置パルスＰｆを決定するための処理であるステップＳ４１０〜Ｓ４１４の処理において、始めにステップＳ４１０で撮影レンズ５０から受信した現在の距離コードＤｖ’から、Ｄｖが求められる（Ｄｖ＝Ｄｖｍｉｎ＋Ｄｖ’）。ステップＳ４１１において、端点検出されていないと判定される場合（Ｓ４１１：ＮＯ）、サブルーチンは終了する。端点検出されると（Ｓ４１１：ＹＥＳ）、すなわち焦点調節レンズ５２が遠距離側端点まで移動していると、ステップＳ４１０において、最も遠距離側のＤｖ’（＝７）に対応する撮影距離Ｄｖが求められた状態で、処理はステップＳ４１２に進む。
【００４８】
ステップＳ４１２において、遠距離側の減速開始位置を、Ｄｖ’が６→７に切り換わった位置から０．５Ｄｖの位置とするために、Ｄｖ’＝７に対応するＤｖ及び（Ｄｖ＋０．５）に相当する撮影距離が、それぞれＤ１（メートル），Ｄ２（メートル）として求められる。
すなわち、Ｄｖに相当する撮影距離が次の定義にしたがって算出される。
Ｄ１＝２＾（Ｄｖ／２）
同様に、（Ｄｖ＋０．５）に相当する撮影距離が次の定義にしたがって算出される。
Ｄ２＝２＾（（Ｄｖ＋０．５）／２）
【００４９】
ステップＳ４１３では、撮影距離Ｄ１，Ｄ２の距離間での像面移動量に相当するパルス数Δｐが次のように求められる。
撮影距離Ｄ１に相当する像面距離ｐ１（ミリメートル）は、焦点距離ｆを用いて、
ｐ１＝（ｆ＾２）／Ｄ１
と表される。
同様に、撮影距離Ｄ２に相当する像面距離ｐ２（ミリメートル）は、
ｐ２＝（ｆ＾２）／Ｄ２
と表される。
したがって、Ｄ１，Ｄ２の距離間に相当するパルス数は、
Δｐ＝ｐ１−ｐ２
となる。
ステップＳ４１４において、Δｐの値が、変数Ｐｆの値として格納される。すなわち、Ｐｆは、Ｄｖ’が６→７に切り替わった地点から減速開始位置までのパルス数を表す。このパルス数Ｐｆに対応するレンズ移動範囲上の減速開始位置が、図６に位置Ｂとして示される。Ｐｆが設定されると、サブルーチンは終了する。
【００５０】
なお、上記遠距離側においては、近距離側とは違い、Ｄｖ’が７に切り替わる地点から実際の遠距離端点までの移動量が各種レンズ間でほとんど差違がないので、上記のような移動量（Ｐ０）の測定はせずに、処理の高速化を図っている。
【００５１】
サーチ駆動中にこの減速位置検出処理が呼び出され、既に減速位置パルスＰｆ，Ｐｎが設定されているときには（Ｓ４０３：ＮＯ）、ステップＳ４１５〜Ｓ４２３の処理により、焦点調節レンズ５２が減速開始位置まで到達したと判定されると減速制御が開始される。始めに、ステップＳ４１５では、焦点調節レンズ５２の、サーチ駆動における移動方向が判定される。遠距離側から近距離側に向けての移動で（Ｓ４１５：ＹＥＳ）、Ｄｖ’の１→０への変化点であると判定された場合（Ｓ４１６：ＹＥＳ）、近距離側の減速開始位置を検出するためにレンズ駆動パルスのカウントが開始される（Ｓ４１７）。パルスカウント開始後であって（Ｓ４２０：ＹＥＳ）、カウント値が近距離側の減速位置パルスＰｎを超えると（Ｓ４２１：ＹＥＳ）、ステップＳ４２２において減速制御が開始される。次に、パルスカウントが終了され（Ｓ４２３）、サブルーチンは終了する。ステップＳ４１６において、Ｄｖ’の１→０への変化点でないと判定される場合（Ｓ４１６：ＮＯ）、ステップＳ４２０において、パルスカウントが開始されていないと判定される場合（Ｓ４２０：ＮＯ）、ステップＳ４２１においてカウント値が、減速位置パルスＰｎを超えていないと判定される場合には（Ｓ４２１：ＮＯ）、サブルーチンは終了する。したがって、焦点調節レンズ５２が遠距離側から近距離側に向けて移動し、図６の位置Ａより近距離側のゾーンにある間、減速制御が行われる。
【００５２】
一方、ステップＳ４１５において、焦点調節レンズ５２の移動方向が、近距離から遠距離方向であると判定される場合（Ｓ４１５：ＮＯ）、ステップＳ４１８において、Ｄｖ’の６→７への変化点であるか否かが判定される。Ｄｖ’の６→７への変化点であると判定されると（Ｓ４１８：ＹＥＳ）、遠距離側の減速開始位置を検出するために、駆動パルスのカウントが開始される（Ｓ４１９）。近距離側に関して上述した場合と同様に、パルスカウント数がＰｆを超えると（Ｓ４２１：ＹＥＳ）、減速処理が開始される（Ｓ４２２）。ステップＳ４１８において、Ｄｖ’が６→７への変化点でないと判定される場合（Ｓ４１８：ＮＯ）、ステップＳ４２０において、パルスカウントが開始されていないと判定される場合（Ｓ４２０：ＮＯ）、ステップＳ４２１においてカウント値が、減速位置パルスＰｆを超えていないと判定される場合には（Ｓ４２１：ＮＯ）、サブルーチンは終了する。したがって、焦点調節レンズ５２が近距離側から遠距離側に向かって移動すると、図６の位置Ｂより遠距離側のゾーンにある間、減速制御が行われる。
【００５３】
以上説明した減速位置開始処理は、図２に示すようにサーチ駆動の間のステップＳ２１１において実行される。したがって、カメラに撮影レンズを装着後、一度サーチ駆動が実行されると、減速位置パルスＰｎ，Ｐｆが決定され、それ以降のサーチ駆動では、減速制御が行われることになる。すなわち、撮影レンズが交換される度に、その撮影レンズに適した減速位置パルスＰｎ，Ｐｆが決定され、減速制御が実行されることになる。これらＰｎ，Ｐｆの値は、不揮発性メモリであるＥＥＰＲＯＭ４２に格納され、撮影レンズ脱着が行われない限り、クリアされずに用いられる。なお、図４において、減速位置パルスのＰｎ，Ｐｆの設定は、サーチ駆動が行われたときに実行されているが、このような制御に代えて、撮影レンズ脱着が行われた際に最初に必ずサーチ駆動と同等のレンズ駆動をし、減速位置パルスを設定するような制御とすることも可能である。
【００５４】
ステップＳ４２２において開始される減速制御は、例えば、ＡＦモータ３７をＤＣ駆動から、所定のデューティの信号で駆動するパルス変調駆動に切り替えることによる減速制御であるが、他の方式による減速制御を行うことも可能である。
【００５５】
また、ステップＳ４０７において、近距離側の減速開始位置は、Ｄｖｍｉｎから０．５Ｄｖの位置となるように決定されているが、ここで用いる０．５Ｄｖという値は１つの例であり、他の値を用いても良い。同様に、ステップＳ４１２において、遠距離側の減速開始位置は、Ｄｖ’が６→７に変化してから０．５Ｄｖの位置となるように決定されているが、ここで用いる０．５Ｄｖという値に代えて他の値を用いることも可能である。
【００５６】
【発明の効果】
以上説明したように、本発明によれば、端点の近傍に検出スイッチのような専用の検出機構を備えることなく、距離コードと距離コードの変化点からのパルス数とに基づいて、端点付近において高い精度で減速開始位置を決定し、適切な焦点調節レンズの減速制御を行うことが可能である。
【００５７】
近距離方向駆動時の減速開始位置は、撮影レンズの最短撮影距離Ｄｖｍｉｎから所定距離の位置に決定され、また、遠距離方向駆動時の減速開始位置は距離コードが最遠側の値に変化する位置から所定の距離の位置に決定される。すなわち、減速開始位置は、撮影レンズ固有の情報にしたがって、常に最適な位置に決定される。したがって、距離コードの区分数や、１区分でカバーされる距離範囲が撮影レンズ毎に異なっている場合であっても、減速開始位置を常に適切な位置に決定することが可能である。
【図面の簡単な説明】
【図１】本発明の実施形態による、カメラの全体構成を表すブロック図である。
【図２】図３と共に、図１のカメラで実行されるＡＦ処理サブルーチンを表すフローチャートである。
【図３】図２と共に、図１のカメラで実行されるＡＦ処理サブルーチンを表すフローチャートである。
【図４】図５と共に、図１のカメラで実行される減速位置検出処理サブルーチンを表すフローチャートである。
【図５】図４と共に、図１のカメラで実行される減速位置検出処理サブルーチンを表すフローチャートである。
【図６】図１のカメラにおける焦点調節レンズとＤｖ’との関係を表す図である。
【符号の説明】
２  メインミラー
４  サブミラー
６  ファインダー内表示ＬＣＤ
８  ペンタプリズム
１０  カメラ本体
１２  測光ＩＣ
１４  周辺制御回路
２４  ＣＰＵ
２８  ＡＦユニット
３７  ＡＦモーター
４２  ＥＥＰＲＯＭ
５０  撮影レンズ
５２  焦点調節レンズ
５６  レンズＣＰＵ
９１  メインスイッチ
９２  測光スイッチ
９４  ＡＦスイッチ
【図１】
0004169242.tif 000004
【図２】
0004169242.tif 000005
【図３】
0004169242.tif 000006
【図４】
0004169242.tif 000007
【図５】
0004169242.tif 000008
【図６】
0004169242.tif 000009