以下、本発明の好ましい実施形態としてカメラシステムに適用した例について説明する。このカメラシステムは、被写体像をレンズ鏡筒により結像された光学像を撮像部において画像データとして取得する。レンズ鏡筒は、駆動部および位置制御部を有し、複数のフォーカスレンズ群をそれぞれ駆動してフォーカスレンズの光軸方向の位置を制御し、被写体にピント合わせを行う。
本発明の好ましい実施形態の一例は、撮像装置に適用する複数のフォーカスレンズ群を有するレンズ鏡筒での駆動部の位置制御手段を示すものである。ここで言うレンズ鏡筒の駆動部、および位置制御手段とは、複数のフォーカスレンズ群の各フォーカスレンズ群の駆動部であり、このフォーカスレンズのレンズ鏡筒での光軸方向位置を制御して、撮像装置の被写体のピントを合焦させる手段を示すものである。さらにここで示す例の撮像装置とは、被写体像を光学レンズ鏡筒により結像された光学像を画像データとして取得するように構成されるデジタルカメラ等(以下、単にカメラという)が適用されるものである(図1、2参照)。
図1および図2は、カメラシステムの主として電気的構成を示すブロック図である。このカメラシステムは、カメラ本体30と、カメラ本体30に装着可能なレンズ鏡筒10を有する。なお、本実施形態は、カメラ本体30とレンズ鏡筒10を別体で構成した所謂レンズ交換式カメラである。しかし、これに限らず、レンズ鏡筒がカメラ本体と一体化したカメラの形態であってもよい。
図2にカメラ本体30内の各部を示す。カメラ本体30は、レンズ鏡筒10によって結像される被写体像から画像データを取得し、また画像処理、表示、記録等を行う。カメラ本体30は、撮像素子31、撮像回路32、カメラ本体30を統括的に制御する本体制御部40、撮影した画像を表示するLCD38、カメラ本体30に対して操作入力を入力する入力部39、カメラ本体30の各部位に対して電源を供給する電源部41、レンズ鏡筒10に対して本体制御部40からの制御信号を送受信させる本体側インターフェース(以下、本体側IFと称す)46等を有する。
撮像素子31は、レンズ鏡筒10の光学系の光軸Oの延長線上に配置される。撮像素子31は、複数の光電変換画素を有し、レンズ鏡筒10によって結像された被写体像(光像)を撮像面で受光し、この被写体像を各光電変換画素によって光電変換して、画像信号を生成し、撮像回路32に出力する。
撮像回路32は、撮像素子31の制御を行うと共に、撮像素子31からの画像信号に対して増幅処理やA/D変換等の信号処理を施す。撮像素子31の制御としては、光電変換の開始、終了の制御と、光電変換により各画素によって蓄積された光電変換出力の読み出しを行う。この制御は、本体制御部40からの制御信号に応じて行う。撮像回路32によってA/D変換された画像信号はバス47に出力される。
バス47は、画像信号、制御信号等の信号伝送路である。バス47には、AE(Auto Exposure)処理部33、AF(Auto Focus)処理部34、画像演算部35、画像処理部36、LCD(Liquid Crystal Display)ドライバ37、不揮発性メモリ42、内蔵メモリ43、圧縮伸張部44、着脱メモリ45が接続されている。
AE処理部33は、撮像回路32からの画像信号を入力し、被写体輝度を演算し、出力する。AF処理部34は、画像信号を入力し、被写体のピント情報を検出する。例えば、画像信号に基づいてコントラスト値等を算出し、そのピーク値から合焦位置を検出する。また、これ以外にも、例えば、撮像素子31に位相差検出画素を配置し、位相差検出法によってデフォーカス量を検出するようにしてもよい。
画像演算部35は、画像信号に対して加算合成や画素間引き等の画像演算処理を行う。画像処理部36は、画像信号に対して階調補正やノイズ補正等の画像処理を施す。LCD38は、カメラ本体30等の背面に設けられ、ライブビュー表示、着脱メモリ45に記録された記録画像の再生表示、メニュー画面表示等の表示を行う。なお、LCDに限らず、有機EL等、他のディスプレイを用いてもよく、また電子ビューファインダ(EVF)等であってもよい。LCDドライバ37は、LCD38の表示駆動を行う。
本体制御部40は、不揮発性メモリ42に記憶された、本体30を制御するプログラムに従って、カメラ本体30の各部を統括的に制御する。
本体制御部40には、入力部39、電源部41、本体側インターフェース(以下、本体側IFと称す)に接続されている。入力部39は、パワースイッチ、レリーズ釦に連動する1stレリーズスイッチ、2ndレリーズスイッチ、メニュースイッチ等の各種操作部材の操作状態を検出し、この検出結果を本体制御部40に出力する。
電源部41は、電源電池の電圧を安定化して動作電源をカメラ本体30やレンズ鏡筒10内の各部に供給する。本体側IF46は、レンズ鏡筒10側のレンズ側インターフェース(以下、レンズ側IF)と電気的に接続し、本体制御部40とレンズ鏡筒10側のレンズ制御部21との信号の送受信を行う。
不揮発性メモリ42は、電気的に書き換え可能な不揮発性メモリであり、本体制御部40で動作させるプログラムデータ、調整データ等を記憶している。内蔵メモリ43は、SDRAM等の揮発性メモリであり、画像演算部35および画像処理部36で処理をする画像データを一時的に保持する。圧縮伸張部44は、画像データの圧縮処理や伸張処理を行う。着脱メモリ45は、カメラ本体30に装着自在な記録媒体であり、撮影画像の画像データを記録する。
次に、図1を用いて、レンズ鏡筒10の構成について説明する。レンズ鏡筒10は、光学系の光軸Oに沿って、ズームレンズ12、絞り13、第1のフォーカスレンズ群(主群レンズともいう)14、第2のフォーカスレンズ群(従群レンズともいう)15が配置され、また、これらの光学部材を保持する固定部材11等を有する。
ズームレンズ12は、レンズ鏡筒10内の光学系の光軸方向に移動可能であり、光軸方向に移動することにより焦点距離(像倍率)が変化する。ズームレンズ操作部16は、ユーザが操作可能なズーム環等の操作部材を有する。ズーム操作部16は機械的にズームレンズ12に結合している。ズームレンズ操作部16が回転操作されると、ズームレンズ12が光軸方向に移動し、焦点距離(像倍率)が変化する。なお、本実施形態においては、ズームレンズ操作部16は、ユーザの手動操作によって焦点距離を変化させているが、これに限らず、電動モータ等による駆動源によってズームレンズ12を光軸方向に移動させるようにしてもよい。
ズーム位置センサ20は、ズームレンズ12の光軸方向の位置(焦点距離情報)を検出し、検出結果をレンズ制御部21に出力する。
ズームレンズ12は、光軸方向に移動可能であり、焦点距離を変えて被写体像の像倍率を変化させる変倍レンズ群として機能する。ズームレンズ操作部16は、変倍レンズ群を駆動するズーム駆動部として機能し、またズーム駆動部への操作量を与えるズーム操作入力部としても機能する。ズームセンサ20は、変倍レンズ群の光軸方向の位置を検出する変倍レンズ位置検出部として機能する。
絞り13は、光学系内に配置され、開口量を調節する。絞りドライバ17は、レンズ制御部21からの駆動信号に基づいて絞り13の開口量を調節する。
主群レンズ14と従群レンズ15は、それぞれ独立して光学系の光軸方向に移動可能である。主群レンズ14は、主群レンズドライバ18によって光軸方向に駆動され、また従群レンズ15は、従群レンズドライバ19によって光軸方向に駆動される。両ドライバ18、19は、レンズ制御部21からの駆動制御信号に基づいて両レンズ14、15の駆動制御をそれぞれ独立して行う。両レンズ14、15は、後述する不揮発性メモリ23に記憶されている両者の位置関係に従った位置に配置することにより、所定の距離にピントが合った状態となる。
なお、本実施形態においては、主群レンズドライバ18と従群レンズドライバ19は、ステッピングモータを有し、レンズ制御部21からの駆動制御信号に基づいて、ステップパルスをステッピングモータに印加することによって駆動する。この場合には、ステップパルス数が主群レンズ14、従群レンズ15の移動量に比例することから、本実施形態においては、両レンズ14、15の位置を検出するためのセンサを設けていない。ステッピングモータに代えて、DCモータやVCM(Voice Coil Motor)を使用する場合には、両レンズ14、15の位置をそれぞれ検出するためのセンサを設けて、センサが検出した位置が、制御目標となる位置に追従するようにフォーカスレンズのレンズ制御を行えばよい。
主群レンズ14と従群レンズ15は、光軸方向に移動可能である第1および第2のフォーカスレンズを含む複数のフォーカスレンズ群としてのピント状態を調整する機能を果たす。主群レンズドライバ18と従群レンズドライバ19は、複数のフォーカスレンズ中の上記第1および第2のフォーカスレンズを、それぞれ独立に光軸方向へ沿って移動させるように駆動する第1および第2のフォーカス駆動部を含む複数のフォーカス駆動部として機能する。この複数のフォーカス駆動部は、後述するように、第1および第2のフォーカスレンズ制御位置決定部(後述する主群レンズ制御目標位置決定部206および従群レンズ制御目標位置決定部208を参照)によって決定された一定周期毎の制御目標位置に基づいて、上記第1および第2のフォーカスレンズの駆動を行う。
レンズ制御部21は、CPUやその周辺回路を含み、不揮発性メモリ23に記憶されたレンズ制御用のプログラムに従い、レンズ鏡筒10の各部を統括制御する。主群レンズ14および従群レンズ15の駆動制御に関連して、レンズ制御部21およびその周辺の詳細については、図3を用いて後述する。
レンズ制御部21に接続されたレンズ操作部22は、距離環等のピント合わせ用の手動操作部材を有し、その回転方向と回転量を検出し、レンズ制御部21に出力する。レンズ制御部21は、マニュアルフォーカスモードが設定されている場合には、検出された手動操作部材の操作量に応じて、両ドライバ18、19の駆動制御を行い、両レンズ14、15の位置制御を行い、ピント合わせを行う。
不揮発性メモリ23は、電気的に書き換え可能な不揮発性メモリである。不揮発性メモリ23には、前述したレンズ制御部21のレンズ制御用のプログラムの他に、ズームレンズ12、絞り13、主群レンズ14、従群レンズ15の位置等の調整値や焦点距離と主群レンズの目標位置から従群レンズの目標位置を求めるためのデータを記憶している。不揮発性メモリ23は、変倍レンズ群の位置毎に、所定の被写体距離と、上記複数のフォーカスレンズ群が合焦状態となる位置関係を示す第1および第2のフォーカス位置特性データを記憶する記憶部として機能する。
レンズ側IF24は、カメラ本体10側の本体側IF46と電気的に接続し、レンズ制御部21と本体制御部40との信号の送受信を行う。
次に、図3を用いて、レンズ制御部21およびその周辺部について説明する。レンズ制御通信インターフェース(以下、レンズ制御通信IFと称す)201は、レンズIF24を介して本体制御部40からの制御信号を入力する。本体制御部40からは、オートフォーカスモード設定時のレンズ駆動制御信号等、種々の制御信号を入力し、主群レンズ移動目標位置・移動期間決定部204に出力する。
操作入力インターフェース(以下、操作入力IFと称す)202は、レンズ操作部22からレンズ操作信号(例えば、マニュアルフォーカスモード時の手動操作信号)を入力し、主群レンズ移動目標位置・移動期間決定部204に出力する。
メモリ通信インターフェース(以下、メモリ通信IFと称す)203は、不揮発性メモリ23とデータを送受信し、主群レンズ制御目標位置決定部206と、従群レンズ制御目標位置決定部208にデータを出力する。
ズーム位置検出部205は、ズームレンズ12の光軸方向の位置によって決まる焦点距離をズーム位置センサ20の検出信号から算出する。この算出されたズーム位置は、主群レンズ移動目標位置・移動期間決定部204、主群レンズ制御目標位置決定部206、および従群レンズ制御目標位置決定部208に出力される。
主群レンズ移動目標位置・移動期間決定部204は、レンズ制御通信IF201または操作入力IF202を介して、フォーカスレンズによる焦点調節が指示された際に、この指示に応じて、主群レンズ14の移動目標位置を決定する。本実施形態においては、移動目標位置が決まると、目標位置に到達するまでの時間(期間)を求め、その移動目標位置に達するまでの処理回数を決める。
本実施形態においては、一定周期毎にフォーカスレンズの駆動処理を実行することから、処理回数は一定周期におけるフォーカスレンズの移動量を考慮して決まる。主群レンズ移動目標位置・移動期間決定部204は、第1のフォーカスレンズの移動目標位置と移動期間を決定する第1のフォーカスレンズ移動目標位置決定部として機能する。
主群レンズ制御目標位置決定部206は、主群レンズ移動目標位置・移動期間決定部204によって決定された移動目標位置と処理回数を入力し、一定周期毎の移動先、すなわち制御目標位置を決定する。主群レンズ制御目標位置決定部206は、第1のフォーカスレンズの移動目標位置と移動期間に基づいて、記憶部に記憶された第1のフォーカス位置特性データを参照して、一定周期毎の制御目標位置を決定する第1のフォーカスレンズ群制御位置決定部として機能する。
主群レンズ操作量決定部207は、主群レンズ14が主群レンズ制御目標位置206によって決められた制御目標位置に到達するよう主群レンズ14の操作量を決める。操作量としては、主群レンズドライバ18がステッピングモータの場合には、ステッピングモータに印加するステップ数を決める。主群レンズ操作量決定部207が決定した操作量は、主群レンズドライバ18に出力され、主群レンズ14を光軸方向に移動させる。
従群レンズ制御目標位置決定部208は、主群レンズ移動目標位置・移動期間決定部206によって決定された主群レンズ制御目標位置と、ズーム位置検出部205によって検出された焦点距離から、従群レンズ制御目標位置を決定する。決定にあたっては、不揮発性メモリ23に記憶されている特性データを用いて行う。本実施形態においては、従群レンズ15の位置を、主群レンズ14の位置と独立して決定せずに、主群レンズ14の制御目標位置に基づいて決定するようにしている。このため、従群レンズ15の移動目標位置を決定する必要がなく、決定のための演算量を削減することができる。
従群レンズ制御目標位置決定部208の詳細な構成については、図4および図10を用いて後述する。従群レンズ制御目標位置決定部208は、第1のフォーカスレンズ位置決定部によって決定された制御目標位置に基づいて、上記記憶部に記憶された第2のフォーカス位置特性データを参照して、一定周期毎の制御目標位置を決定する第2のフォーカスレンズ制御位置決定部として機能する。
従群レンズ操作量決定部209は、従群レンズ15が従群レンズ制御目標位置208によって決められた制御目標位置に到達するよう従群レンズの操作量を決める。操作量としては、従群レンズドライバ19がステッピングモータの場合には、ステッピングモータに印加するステップ数を決める。従群レンズ操作量決定部209が決定した操作量は、従群レンズドライバ19に出力され、従群レンズ15を光軸方向に移動させる。
次に、図5ないし図8に示すフローチャートを用いて、本実施形態における動作について説明する。なお、本実施形態におけるフォーカスレンズ(主群レンズ14、従群レンズ15)の駆動制御は、第1の制御方法と呼ぶ。このフローチャートは、レンズ制御部21内のCPUが不揮発性メモリ23に記憶されているプログラムに従ってレンズ鏡筒10内の各部を制御することによって実行する。なお、第1の制御方法は、理解を容易にするために、ズームレンズ操作部16の操作がない状態で、レンズ操作部22の操作、もしくはレンズIF24を通じてカメラ本体30からの駆動指示で焦点距離の変更指示がなされた場合について説明する。
図5に示すフローチャートにおいて、カメラ本体30が起動されると、レンズ鏡筒30も起動され、初期処理を行う(S401)。このステップでは不揮発性メモリ23からデータの読出し等の初期処理を行う。この初期処理の詳細については、図6を用いて後述する。
初期処理を行うと、次に、位置保持動作を行う(S402)。ここでは、主群レンズドライバ18および従群レンズドライバ19内のステッピングモータ等のアクチュエータに通電し、主群レンズ14および従群レンズ15の現在位置を保持させる。
ステップS402において位置保持動作を行うと、動作指令があるか否かを判定する(S403)。ここでは、ズームレンズ操作部16の操作に基づく動作指令、レンズ操作部22の操作に基づく動作指令、またはレンズ側IF24を介して本体制御部40からの動作指令等の動作指令があるか否かを判定する。この判定の結果、動作指令がない場合には、動作指令を待つ待機状態となる。
ステップS403における判定の結果、動作指令があった場合には、動作モードの選択を行う。ここでは、ステップS403における指示内容に基づいて、移動制御を行うか、または制御を終了するかの判定を行う。
ステップS404における判定の結果、動作モードが移動制御であった場合には、移動目標位置の設定を行う(S406)。ここでは、主群レンズ移動目標位置・移動期間決定部204が、ステップS403において入力した動作指令に基づいて、主群レンズ14、従群レンズ15に対して、移動目標位置の設定を行う。例えば、ズームレンズ操作部16の操作に基づいて、ユーザの指定する焦点距離に対応した移動目標位置に、主群レンズ14、従群レンズ15を、それぞれ移動する場合には、指定された焦点距離に応じて移動目標位置を設定する。
ステップS406において移動目標位置を設定すると、次に、移動制御にかかる周期処理回数の算出を行う(S407)。ここでは、主群レンズ移動目標位置・移動期間決定部204が、ステップS406において設定した移動目標位置へ移動するのに必要な一定時間周期毎に指示する位置の設定(周期処理)回数を算出する。移動目標位置へ移動するのに必要な周期処理回数は予め決めた算出方法によって決める。この周期処理回数の算出は主群レンズドライバ18や従群レンズドライバ19の駆動特性(例えば、最高移動速や、最大移動加速度)を考慮して決める。
ステップS407において移動制御にかかる周期処理回数の算出を行うと、次に、移動制御動作を行う(S408)。ここでは、一定周期毎に、制御目標位置に向けて主群レンズ14と従群レンズ15を駆動し、これをステップS407において算出した周期処理回数だけ繰り返し、移動目標位置に主群および従群レンズを移動させる。この移動制御動作の詳細については、図7および図9を用いて後述する。
ステップS408における移動制御動作を行うと、移動制御終了動作を行う(S409)。ここでは、移動目標位置に到達したことから、主群レンズ14と従群レンズ15の移動制御動作を終了するための処理を行い、終了すると、ステップS402に戻る。
ステップS404における判定の結果、動作モードが制御終了であった場合には、制御終了動作を行う(S405)。制御終了動作を行うと、動作を終了する。
次に、図6を用いて、ステップS401の初期処理について説明する。図6に示す初期処理のフローに入ると、不揮発性メモリ23よりデータの読出しを行う(S451)。不揮発性メモリ23には、特性データとして、焦点距離に対して、所定の被写体距離に対応する主群レンズ14の目標位置から、従群レンズ15の目標位置を求めるためのデータが記憶されている。このステップでは、このデータをレンズ制御部21が読み出す。
ステップS451において、データの読出しを行うと、元のフローに戻る。
次に、図9および図10を用いて、ステップS408(図5参照)の移動制御動作について説明する。この移動制御動作では、指示された移動目標位置にレンズを移動させる。すなわち、図9(a)に示すように、初期位置MLP1にある主群レンズ14を移動目標位置MLP2に移動させる動作である。そして、主群レンズ14を移動させるにあたって、いきなり移動目標位置MLP2に移動させるのではなく、図9(b)に示すように、一定周期毎(時刻t1、t2、・・・)に、主群レンズ14を位置P(t1)、P(t2)、・・・と移動させ、時刻tNにおいて移動目標位置MLP2に移動させる。
図9(a)(b)では、説明の都合上、主群レンズ14のみを示し、従群レンズ15については省略している。主群レンズ14と従群レンズ15は、焦点距離が同一であれば、図10に示すように、主群レンズ14と従群レンズ15のそれぞれの位置は、一対一の関係がある。図10は、縦軸にそれぞれのレンズ群の位置を示しており、横軸に被写体距離を示している。また、縦軸の主群、従群レンズ位置は、紙面上側がカメラ本体30側、紙面下側が被写体像側であり、横軸に示す被写体距離は、紙面右側方向は、被写体距離が短くなる(至近)方向、左側方向は、被写体距離が長くなる(無限遠)方向である。例えば、被写体距離がFCmの場合には、主群レンズ14は位置MLP1、従群レンズ15は位置SLP1にある時に被写体に対してピントが合焦することを示している。また被写体距離がFCnの場合には、主群レンズ14は位置MLP2、従群レンズ15は位置SLP2にある時に被写体に対してピントが合焦することを示している。2つの被写体距離FCm、FCnと中間の被写体距離に対しては、被写体に対してピントが合焦する主群レンズ14と従群レンズ15の位置はそれぞれ一対一の関係がある。
図10において、焦点距離がZ[1]で主群レンズ14の制御目標位置がMLP1の場合、従群レンズ15の制御目標位置はSLP1が対応している。主群レンズの移動目標位置としてMLP2が指示された場合、主群レンズ制御目標位置決定部206は、主群レンズ14が移動目標位置MLP2へ移動するまでの各時刻(周期処理)での制御目標位置を決定する。焦点距離Z[1]の場合、主群レンズ14の移動目標位置MLP2に対応する移動目標位置SLP2に移動するまでの各時刻での従群レンズ15の制御目標位置は、主群レンズ14の制御目標位置と焦点距離Z[1]によって決まる位置になる。従って、被写体距離と焦点距離が決まれば、主群レンズ14と従群レンズ15の位置が決まり、移動制御中の制御目標位置も決まる。
そこで、本実施形態における第1の制御方法においては、指示された移動目標位置に応じて主群レンズ14の位置を決め、不揮発性メモリ23に記憶されている特性データを用いて、従群レンズ15の位置を決める。この場合、図9(b)に示したように、一定周期の時刻(t0、t1、t2、・・・)毎に、主群レンズ14の制御目標位置を決め、これに対応する従群レンズ15の制御位置を決めて、それぞれの制御目標位置に主群および従群レンズを移動させる。
次に、図7を用いて、ステップS408(図5参照)の第1の制御方法に係る移動制御動作について説明する。移動制御動作のフローに入ると、まず、主群レンズ制御目標位置を算出する(S501)。ここでは、主群レンズ移動目標位置・移動期間決定部204が、現在の主群レンズ14の光軸方向のレンズ位置(図9の位置MLP1)から、指示された移動目標位置(図9の位置MLP2)へ移動するために、一定周期毎に指示する位置(制御目標位置)(図9(b)に示すP(tn)(n=1、2、3、…、N))を算出する。
ステップS501において主群レンズ制御目標位置を算出すると、次に、従群レンズ制御目標位置を算出する(S502)。ここでは、ステップS501において算出された主群レンズ制御目標位置と、不揮発性メモリ23から読み込んだ特性データを用いて、従群レンズ15の制御目標位置を算出する。図10を用いて説明したように、主群レンズ14の制御目標位置が決まると、従群レンズ15の位置を求めることができる。この従群レンズ制御目標位置算出の詳しい動作については、図8を用いて後述する。
ステップS502において、従群レンズ制御目標位置を算出すると、次に、主群レンズ操作量の算出を行う(S503)。ここでは、主群レンズ操作量決定部207が、現在の主群レンズ14の位置から、主群レンズ制御目標位置決定部206で算出した主群レンズ制御目標位置(ステップS501において算出される)へ移動するのに必要な操作量を算出する。この操作量としては、主群レンズドライバ18がステッピングモータを有していれば、ステップ数が算出される。
ステップS503において、主群レンズ操作量を算出すると、次に、従群レンズ操作量の算出を行う(S504)。ここでは、従群レンズ操作量決定部209が、現在の従群レンズ15の位置から、従群レンズ制御目標位置決定部208で算出した従群レンズ制御目標位置(ステップS502において算出される)へ移動するのに必要な操作量を算出する。この操作量としては、従群レンズドライバ19がステッピングモータを有していれば、ステップ数が算出される。
ステップS504において、従群レンズ操作量を算出すると、次に、主群レンズドライバへ操作量を設定する(S505)。ここでは、主群レンズ操作量決定部207が算出した主群レンズ操作量(ステップS503で算出される)を、主群レンズドライバ18に設定する。
ステップS505において、主群レンズドライバへ操作量を設定すると、次に、従群レンズドライバへ操作量を設定する(S506)。ここでは、従群レンズ操作量決定部209が算出した従群レンズ操作量(ステップS504で算出される)を、従群レンズドライバ19に設定する。
ステップS506において、従群レンズドライバへ操作量を設定すると、次に、主群レンズ移動目標位置に到達したか否かを判定する(S507)。ここでは、主群レンズ制御目標位置決定部206が算出した主群レンズ制御目標位置と、主群レンズ移動目標位置が一致しているか否かを判定する。
ステップS507における判定の結果、移動目標位置に到達していれば、移動制御動作を終了する。一方、移動目標位置に到達していない場合には、ステップS501に戻り、前述の処理を繰り返す。
次に、図8を用いて、ステップS502の従群レンズ制御目標位置算出について説明する。従群レンズ制御目標位置算出のフローに入ると、同期位置を算出する(S701)。ここでは、主群レンズ制御目標位置算出部206が算出した主群レンズ14の制御目標位置と、ズーム位置検出部205が検出した焦点距離設定値と、不揮発性メモリ23から読み込んだ特性データを用いて、従群レンズ15の制御目標位置を決定する(図4参照)。特性データは、起動時に不揮発性メモリ23から読み込んでいる(図5のS401、図6のS451参照)、また、特性データの参照にあたっては、現在の焦点距離に対応した位置(同期位置)を検索して、制御目標位置を決めればよい。
ステップS701において、同期位置を算出すると、従群レンズ制御目標位置算出のフローを終了し、元のフローに戻る。
このように、本発明の第1実施形態は、主群レンズ14の移動目標位置と移動期間を決定すると、この移動目標位置と移動期間に基づいて、一定周期毎に主群レンズ14の制御目標位置を決定し、この決定された主群レンズ14の制御目標位置を用いて、従群レンズ15の制御目標位置を算出し、それぞれ主群レンズ14と従群レンズ15の駆動制御を行っている。このため、複数のフォーカスレンズ群を駆動するための演算量が少なくなり、迅速な駆動制御が可能となる。
次に、図11ないし図16を用いて、本発明の第2実施形態について説明する。第1実施形態においては、複数のフォーカスレンズ群の1つである主群レンズ14と従群レンズ15の位置関係が一対一の関係があることから、主群レンズ14の制御目標位置(同期位置)を決めると、その位置に応じて従群レンズ15の制御目標位置を算出し(図7のS502、図8のS701参照)、この制御目標位置に基づいて従群レンズ15の駆動制御を行っていた(第1の制御方法)。
しかし、第1の制御方法では、変倍操作(ズーミング)が行われた場合に、焦点距離の変更に合わせて、従群レンズ15の制御目標位置が変わることによって、従群レンズ15を急加速度で駆動する場合があり、このため、騒音や振動が発生するおそれがある。以下に、図11を用いて、その理由を説明する。
次に、図11を用いて、焦点距離Z[1]から焦点距離Z[2]へ変化した時に、第1の制御方法で位置制御をおこなった場合の、主群レンズ14及び従群レンズ15の動作について説明する。
図11において、焦点距離Z[1]において、主群レンズ14がMLP1(P21aの位置)で位置保持動作をしているとする。この時、従群レンズ15はSLP1(P21bの位置)で位置保持動作をしている。この状態から焦点距離がZ[1]からZ[2]へ変化した場合を考える。この場合には、ズーム状態位置検出部205が、焦点距離がZ[2]へ変化したことを検出する。主群レンズ14の位置がMLP1で、焦点距離Z[2]とすると、対応する従群レンズ15の位置はSLP1’(P23bの位置)になる。
また、主群レンズ14、従群レンズ15が所定の位置(MLP1、およびSLP1)となる場合にピントが合う被写体距離について考えると、焦点距離Z[1]の時でピントが合う被写体距離はFCnである。しかし、焦点距離Z[2]へ変化した直後は、主群レンズ14、従群レンズ15がそれぞれMLP1、およびSLP1の位置では、ピントが合う被写体距離はFCmとなる。したがって、焦点距離Z[2]で被写体距離FCnとなる位置(P24aとP24bの位置)に主群レンズ14と従群レンズ15はない。ズーム操作して焦点距離を変化させた場合でもピントがずれるのは好ましくないため、焦点距離変化を検知した場合、焦点距離変化前と同じ焦点距離になるように、フォーカスレンズ群を駆動する制御(ズームトラッキング制御)を行う。
この場合、主群レンズ14がMLP1からMLP2を移動目標位置(P24aの位置)とする移動処理を行う。この場合の従群レンズ15の動きについて考える。ズームトラッキング制御によって、主群レンズ14がMLP1からMLP2へ移動するとき、従群レンズ15はSLP1’(P22bの位置)からSLP2(P24bの位置)へ主群レンズ14の制御目標位置と焦点距離Z[2]に対応した位置を制御目標位置として移動する。しかし、従群レンズ15の初期位置はSLP1(P23bの位置)であるため、第1実施形態にある第1の制御方法にしたがって従群レンズ15を移動制御させる場合には、移動処理開始の周期処理の目標位置がSLP1’となる。このためズーム操作によって焦点距離が、焦点距離Z[1]からZ[2]に変わる時には、従群レンズ15は、SLP1→SLP1’(P23b→P22b)の移動が発生する。この場合には、SLP1とSLP1’の距離の移動によって急激な加速度変化が発生し、撮像状態に影響を与え、音や振動の原因にもなる。
そこで、本実施形態においては、変倍操作(ズーム操作)等を行う場合には、第2の制御方法を採用し、急激な加速度変化が発生しないようにしている。図12ないし図16を用いて、第2の制御方法を説明する。
本発明の第2実施形態に係る構成は、第1実施形態に係る図1ないし図3のブロック図は同じであり、図4に示すブロック図を図12に示すブロック図に置き換える。また、第1実施形態に係る図5および図7に示すフローチャートも同じであり、図6に示すフローチャートを図13に示すフローチャートに置き換え、図8に示すフローチャートを図14に示すフローチャートに置き換える。構成を示すブロック図および動作を示すフローチャートについては、第1実施形態と同じ場合には、詳しい説明を省略する。
図12は、第2の制御方法を行う場合の従群レンズ制御目標位置決定部208の詳細ブロック図である。図4に示した第1の制御方法の場合に比較し、主群レンズ移動目標位置・移動期間決定部204の出力が従群レンズ制御目標位置決定部208に接続されている点、が異なっている。また従群レンズ制御目標位置決定部208内に、補正量算出部1002と補正量加算判断部1003が設けられている点も相違している。
従群レンズ制御目標位置決定部208は、装置起動時に不揮発性メモリ23に保存されている、焦点距離と主群レンズの目標位置から従群レンズの目標位置を求めるためのデータを、メモリ通信インターフェース203を通じて読み込んでおく。
また、従群レンズ制御目標位置決定部208は、主群レンズ制御目標位置と焦点距離とに対応する従群レンズの目標位置(同期位置)を決定する同期位置決定部1001と、ズーム位置検出部205から通知される焦点距離が変化した場合に、同期位置決定部1001で決定した同期位置に対する補正量を算出する補正量算出部1002と、焦点距離の変化の有無によって、同期位置決定部1001で算出した同期位置を出力するか、同期位置に対して補正量算出部1002で算出した補正量を加算した値を出力するかを判断する補正量加算判断部1003を有している。
次に、図13ないし図15に示すフローチャートを用いて、第2の制御方法によって主群レンズ14および従群レンズ15の制御駆動する場合の動作について説明する。焦点距離が変更された場合に、第1の制御方法と第2の制御方法に切り替えも含めて説明する。
本実施形態におけるメインフローは図5と同様であり、図6に示した初期処理を図13に示すフローチャートに置き換え、図7に示した移動制御動作は同様であり、図8に示した従群レンズ制御目標位置算出を図14のフローチャートに置き換える。
図13に示す処理のフローにおいては、まず、不揮発性メモリ23よりデータ読出しを行う(S1101)。ここでは、レンズ制御部21は、不揮発性メモリ23から、焦点距離と主群レンズ14の制御目標位置に基づいて従群レンズ15の目標位置を求めるための特性データを読み込む。
ステップS1101においてデータ読出しを行うと、次に、補正量減算値=0と設定する(S1102)。補正量減算値は、従群レンズ15の制御目標位置が算出された際に、急激に目標位置が変化することにより加速度が急激に変化することを防止するために、制御目標位置を補正するための量である。この補正量減算値の詳細については後述する(図14のS1204〜S1207参照)。
ステップS1102において、補正量を0とすると、元のメインフローに戻る。
次に、図14に示すフローチャートを用いて、従群レンズ目標位置算出の動作について説明する。このフローは、従群レンズ制御目標位置決定部208において行われる。また、図14のフローチャートは、図7のステップS502の処理を、図8のフローチャートの代わりに実行するものである。図7のフローチャートのステップS501までの処理は第1の制御方法と同一である。
図14に示す従群レンズ目標位置算出のフローに入ると、まず、同期位置の算出を行う(S1201)。ここでは、主群レンズ制御目標位置算出部206が求めた主群レンズ14の制御目標位置と、ズーム位置検出部205が検出した現在の焦点距離に基づいて、起動時に不揮発性メモリ23から読み込んだデータを用いて、従群レンズ15の制御目標位置(同期位置)を算出する。
ステップS1201において同期位置を算出すると、次に、焦点距離が変化しているか、目標位置補正量が0でないか否かについて判定する(S1202)。ここでは、焦点距離が前回の処理実行時から変化しているか、もしくは補正量が0以外の値か否かを判定する。この判定の結果、判定条件を満たす場合には、ステップS1204の処理に進み、一方、焦点距離が、前回の処理実行時から変化していなく、補正量も0の場合はステップS1203の処理に進む。
ステップS1202における判定の結果、判定条件を満たしていた場合には、補正量演算値が0か否かを判定する(S1204)。ステップS1102において補正量減算値は0とされているので、最初にステップS1204で判定する場合には、補正量減算値は0である。後述するステップS1206において、補正量減算値が0以外の数値が設定される場合がある。
ステップS1204における判定の結果、補正量減算値が0の場合には、「目標位置補正量=前回従群レンズ周期目標位置−従群レンズ同期位置」を演算する(S1205)。ここでは、目標位置補正量を、前回の周期処理で設定した従群レンズ制御目標位置と、ステップS1201の処理で求めた同期位置の差とし、これを補正量初期値とする。
ステップS1205において、目標位置補正量を算出すると、次に、補正量演算値(α)を演算する(S1206)。補正量減算値(α)は周期処理毎に補正量の絶対値を小さくしていく値である。詳細については図15に示すフローチャートを用いて後述する。
ステップS1206において、補正量減算値を演算すると、次に、「目標位置補正量=目標位置補正量−補正量減算値」を演算する(S1207)。ここでは、ステップS1205で算出した目標位置補正量から、ステップS1206で算出した補正量減算値を減算する。
ステップS1207において目標位置補正量を算出すると、またはステップS1204における判定の結果、補正量減算値が0であった場合には、次に、「従群レンズ目標位置=従群レンズ同期位置+目標位置補正量」を演算する(S1208)。ここでは、従群レンズ15の制御目標位置をステップS1201で求めた同期位置に、ステップS1207で求めた補正量に加算した位置とする。ここで算出された従群レンズ目標位置を用いて、ステップS504およびS506(図7参照)において、従群レンズ15の駆動制御が行われる。
ステップS1208において、従群レンズ目標位置を算出すると、次に、新たに目標位置補正量を算出する算出条件判断ステップとして、|目標位置補正量|≧|補正量減算値|の条件にあるか否かを判定する(S1209)。ここでは、ステップS1207で求めた補正量とステップS1206で求めた補正量減算値の絶対値を比較する。
ステップS1209における判定の結果、目標位置補正量の絶対値の方が、補正量減算値の絶対値より大きければ、次のステップとして、新たに目標位置補正量を算出ステップに移行して、「目標位置補正量=目標位置補正量−補正量減算値」を算出する(S1210)。ここでは、補正量減算値を用いて、次回行われる従群レンズ目標位置算出のフローで使用さえる目標位置補正量が変更される。後述する図16に示すように、一定周期毎に目標位置補正量は小さくなっていく。
一方、ステップS1209における判定の結果、目標位置補正量の絶対値の方が小さければ、次のステップとして、新たに目標位置補正量を設定するステップに移行して、目標位置補正量=0とし、補正量減算値=0とする(S1211)。ここでは、次の周期処理で従群レンズ15の制御目標位置を補正するための値を求める。
ステップS1202における判定の結果、焦点距離が前回の処理から変化なく、かつ、目標位置補正量が0であると判断した場合には、次に従群レンズ目標位置を設定する。このステップでは、「従群レンズ目標位置=従群レンズ同期位置」とする(S1203)。従群レンズ同期位置を求める処理は、図8のS701と同様であることから、詳しい説明は省略する。
ステップS1210において目標位置補正量を求める処理を行う、またはステップS1211において目標位置補正量を0とし、補正量減算値を0とする処理行う、従群レンズ目標位置算出のフローを終了し、元のフロー(図7のS503)に戻る。また、ステップS1203において従群レンズ目標位置を従群レンズ同期位置とすると、同様に、従群レンズ目標位置算出のフローを終了し、元のフロー(図7のS503)に戻る。
次に、図15を用いて、ステップS1206の補正量減算値演算の動作について説明する。このフローに入ると、「補正量減算値=目標位置補正量/周期処理回数」を演算する(S1301)。ここでは、補正量減算値を下記(1)式で計算する。
補正量減算値(α)=補正量初期値/Tm ・・・(1)
ここで、Tm:予め主群レンズ移動目標位置・移動時間決定部204で求めた焦点距離変化前の焦点距離位置へ移動するまでの周期処理回数とする。
ステップS1301において、補正量減算値を求めると元のフローに戻る。
次に、図16を用いて、ズーム操作が行われ、焦点距離Z[1]が焦点距離Z[2]に変化した際の主群レンズ14及び従群レンズ15の駆動制御について説明する。
図16において、焦点距離Z[1]の時、主群レンズ14はMLP1(P31aの位置)で位置保持動作をしているとする。この時、従群レンズ15はSLP1(P31bの位置)で位置保持動作をしている。この状態から焦点距離がZ[1]からZ[2]へ変化した場合を考える。ズーム位置検出部205が、焦点距離がZ[2]へ変化したことを検出する。主群レンズ14の位置がMLP1で焦点距離Z[2]に変化すると(P31a→P32aに変化)、対応する従群レンズ15の位置はSLP1’(P32cの位置)になる。
しかし、従群レンズ15をSLP1’(P32cの位置)に実際に移動させた後に、移動目標位置であるSLP2(P35bの位置)に移動させるとすると、図11を用いて説明したように、急激な加速度変化が発生し、撮像状態に影響を与え、音や振動の原因にもなる。そこで、本実施形態が採用する第2の制御方法では、SLP1’(P32cの位置)には移動させず、SLP1(P32bの位置)から、移動目標位置であるSLP2(P35bの位置)に移動させる。このため、第1の制御方法で算出される制御目標位置(同期位置)に対して補正量減算値を加算している。すなわち、従群レンズ制御目標位置は、第1の制御方法で算出される制御目標位置(同期位置)(SLP1’)に補正量減算値を加算した位置とする。
この従群レンズ制御目標位置の算出について説明する。まず、主群レンズ14がMLP1からMLP2を移動目標位置とする移動処理を行う(P32a→P35aへの移動処理)際に、主群レンズ15がMLP1からMLP2移動するのに必要な周期処理回数Tmを求める。
周期処理回数Tmを求めると、これから補正量減算値及び、周期処理の従群レンズ制御目標位置は下記式(2)(3)で求まる。
補正量減算値 = (SLP1−SLP1’)/Tm ・・・(2)
従群レンズ制御目標位置 = SLP1’+(SLP1−SLP1’)+(SLP1−SLP1’)/Tm ・・・(3)
次回以降の周期処理においても、従群レンズの制御目標位置も同様に第2の制御方法で決めていくと、図16に示すように、従群レンズ制御目標位置と同期位置の差が小さくなっていく。すなわち、最初、被写体距離FCmにおいて、同期位置はP32cであり、補正された制御目標位置はP32bであり、このときの差はD1である。次の周期処理においては、同期位置はP33cであり、補正された制御目標位置はP33bであり、このときの差はD2である、以後、周期処理が行われるたびに、同期位置と補正された制御目標位置との差は小さくなっていく。そして、主群レンズ14が移動目標位置MLP2に到達するときには、従群レンズ15の制御目標位置はMLP2と焦点距離Z[2]に対応した従群レンズの制御目標位置SLP2になる。
このように、本発明の第2実施形態においては、焦点距離が変化したときに(図14のS1202の判定)、主群レンズ14がズームトラッキングによる移動到達位置に到達するまでの期間、従群レンズ15の制御方法を第1の制御(図14のS1203)から、第2の制御(S1204〜S1211)へ切り替える処理を行うことによって、従群レンズ15が急な加速度変化をもつことなく位置制御でき、撮像状態への悪影響や、音や振動の発生を抑えることができる。
また、本実施形態においては、レンズ制御部21は、変倍レンズ位置検出部(ズーム位置センサ20参照)が検出した変倍レンズの位置に対して、記憶部(不揮発性メモリ23参照)に記憶された第1および第2のフォーカス位置特性データを参照し、参照された第1および第2のフォーカス位置特性データに基づいて決まる第1および第2のフォーカス指示位置を設定する。そして、設定レンズ制御部21は、この設定した第1および第2のフォーカス指示位置に基づいて、フォーカス駆動部に対してそれぞれ第1および第2の駆動量を出力する第1のフォーカス制御部として機能する(図14のS1203、また、図7、図10参照)。
また、本実施形態においては、レンズ制御部21は、変倍レンズ位置検出部が検出した変倍レンズの位置に対して、記憶部に記憶された第1および第2のフォーカス位置特性データを参照し、参照された第1および第2のフォーカス位置特性データに基づいて決まる第1および第2のフォーカス指示位置に基づいて、フォーカス駆動部に対してそれぞれ第1および第2の駆動量を算出する。そして、第1のフォーカス制御部とは異なる手段で第2のフォーカス指示位置を算出して、複数のフォーカス駆動部に対して第3の駆動量を出力する第2のフォーカス制御部として機能する(図14のS1204〜S1211参照)。
また、本実施形態においては、レンズ制御部21が、第1および第2のフォーカス制御部のいずれか1つを選択する選択部を有するフォーカス制御部として機能し、このフォーカス制御部は、ズーム操作入力部による操作量に応じて変倍レンズ群の変倍率が変化している場合には、選択部は、第2のフォーカス制御部を選択し、一方、ズーム操作入力部による操作量に応じて上記変倍レンズ群の変倍率が変化していない場合には、選択部は、第1のフォーカス制御部を選択する(図14のS1202における判定を参照)。
次に、図17および図18を用いて、本発明の第2実施形態の変形例について説明する。第2実施形態においては、補正量減算値は式(1)により算出し、補正量減算値には上限値が設けていなかった。これに対して、本変形例では、補正量減算値に上限値を設けている。
補正量減算値に上限値を設けるのは、以下の理由による。本発明が適用されるレンズ鏡筒は、光学設計によっては、焦点距離が変化した後の主群レンズ14のズームトラッキング駆動の移動距離が短いのに対して、従群レンズ15が移動する距離が極めて長い場合も考えられる。このような場合、上述の式(1)により補正量減算値を算出すると、補正量減算値が大きくなり、従群レンズ15の加速度が大きくなってしまい、急な加速度変化を抑える効果や、音や振動の低減の効果を得られないためである。
そこで、本変形例においては、補正量減算値が大きくなって、加速度が大きくなるのを避けるために、補正量減算値(α)に予め上限値を設定する。そして、補正量減算値が上限値を超えた場合は、上限値にクリップする処理を行う。なお、上限値に限らず、予め下限値を設定しておき、補正量減算値が下限値を下回った場合は、下限値にクリップする処理を行うようにしてもよい。下限値を設けることにより、急な加速度変化とならない程度で、従群レンズ15を移動目標位置に迅速に到達させることができる。
次に、図17に示すフローチャートを用いて、本変形例の動作を説明する。本変形例は、図15に示した補正量演算値演算のフローチャートを図17に示すフローチャートに置き換え、他のフローチャートは第2実施形態と同じである。
図17の補正量減算値演算のフローに入ると、まず、補正量減算値を算出する処理を行う。この処理は、「補正量演算値=目標位置補正量/駆動周期処理回数」の演算を行うものである(S1501)。目標位置補正量は、ステップS1210(図14参照)において算出されているので、この値を駆動周期処理回数で除算する。
ステップS1501において補正量減算値を求めると、次に、補正量減算値に対する判定処理を行う。この処理は、補正量減算値>αthか否かを判定する(S1502)。ここでは、補正量減算値が予め設定した上限値(αth)を超えていないかを判定する。
ステップS1502における判定の結果、補正量減算値が上限値αthよりも大きかった場合には、補正量減算値=αthとする(S1503)。これにより、補正量減算値は上限値αthより大きくなることない。
ステップS1503において補正量減算値をαthとすると、またはステップS1502における判定の結果、補正量減算値が上限値αthよりも大きくなかった場合には、補正量減算値演算のフローを終了し、元のフロー(図14のS1207)に戻る。以後、前述したように、主群レンズ14および従群レンズ15の駆動制御を行う。
次に、図18を用いて、焦点距離が変化した場合における主群レンズ14と従群レンズ15の移動について説明する。
焦点距離変化前では、主群レンズ14はMLP1(P41aの位置)、従群レンズ15はSLP1(P41bの位置)にあるとする。焦点距離変化を検知すると、主群レンズ14は、焦点距離Z[2]での焦点距離変更前の被写体距離FCnに対応した位置MLP2(P44aの位置)を移動目標位置とする駆動指示が発生する。この時、主群レンズ移動目標位置・移動期間決定部204は、時刻T0にMLP1(P41aの位置)から駆動を開始し、時刻TmにMLP2(P44aの位置)へ到達するまでの期間に主群レンズ14に対し、制御目標位置を指示する回数を算出する。
これに対し、従群レンズ15がSLP1(P41bの位置)から元の被写体距離FCnに対応する位置SLP2(P44bの位置)へ移動する距離が、主群レンズ14がMLP1からMLP2に移動する距離よりも著しく長くなる場合がある(図18参照)。この場合には、補正量減算値(α)が非常に大きくなる。そこで、本変形例では、補正量減算値(α)に上限値を設けることで、主群レンズ14が移動目標位置に到達するタイミングより遅れて、従群レンズ15はSLP2(P44bの位置)へ到達するようにしている。
図19の上段のグラフは、主群レンズ14の位置の時間変化を示している。図19の下段のグラフは、従群レンズの位置の時間変化を示している。下段のグラフの内で破線は、本変形例による補正量減算値(α)に上限値を設定しない場合の従群レンズ15の位置の時間変化を示している。この場合には、従群レンズ15は、主群レンズ14が移動目標位置MLP2(P44aの位置)に到達する時刻Tmには、従群レンズ15も移動目標位置SLP2(P44bの位置)に到達する。しかし、従群レンズ15は、経路SLP1(P42b)→SLP1’(P43b)→SLP2(P44b)を移動しており、主群レンズ14の移動経路MLP1(P42a)→MLP2(P44a)と比較すると、移動距離が長くなってしまう。このため、従群レンズ15は急加速がなされ、騒音や振動が発生してしまう。
一方、図19の下段のグラフの内の実線は、本変形例による補正量減算値(α)に上限値を設定した場合の従群レンズ15の位置の時間変化を示している。本変形例を適用した場合には、主群レンズ14が移動目標位置MLP2(P44aの位置)に到達した後の時刻Tkに、従群レンズ15の移動目標位置SLP2(P44bの位置)に到達する。すなわち、本変形では、補正量減算値を上限値αthとしていることから、従群レンズ15の移動速度が抑えられ、このため、騒音や振動が発生することがない。
このように、本変形例においては、焦点距離変化前の主群レンズ14の位置と焦点距離によって決まる従群レンズ15の位置と、焦点距離変化後の主群レンズ14に指示される位置と焦点距離によって決まる主群レンズ14との位置差(すなわち、目標位置補正量)を、焦点距離の変化前から変化後となる焦点距離に移行するまでの期間(すなわち、駆動周期処理回数)で除算することで求められる値(すなわち、補正量減算値)(図17のS1501参照)が、予め決められた上限値(αth)よりも大きい場合に(図17のS1502Yes)、補正量減算値を上限値(αth)としている(図17のS1503参照)。このため、従群レンズ15の駆動にあたって急加速度となって、雑音や振動が発生してしまうことを防止することができる。
なお、本変形例においては、演算された補正量減算値が上限値をより大きい場合に上限値に設定していた。しかしながら、これに限らず、補正量減算値が下限値より小さい場合に下限値に設定するようにしても勿論かまわない。
以上説明したように、本発明の各実施形態や変形例においては、第1の制御方法により主群レンズ14と従群レンズ15を駆動する際には、一定周期毎に主群レンズ14の制御目標位置を決め、この制御目標位置を用いて従群レンズ15の制御目標位置を決めていた(図7および図10参照)。このため、演算量を少なくすることができ、高速で駆動制御を行うことができる。
また、変倍操作(ズーミング操作)がなされた場合には、第2の制御方法により主群レンズ14と従群レンズ15の駆動制御を行うようにしている。すなわち、補正量減算値を算出し(図14のS1206、図15のS1301参照)、この補正量減算値を用いて従群レンズ目標位置を補正している(図14のS1207、S1208参照)。このため、変倍操作を行った場合でも、高速で駆動制御を行うことができると共に、騒音や振動等の発生を防止することができる。
なお、本発明の各実施形態や変形例においては、フォーカスレンズ群が2つの場合(主群レンズ14と従群レンズ15)について説明した。しかし、これに限らず、3以上のフォーカスレンズ群を有する場合にも、本発明も勿論適用することができる。
また、本発明の各実施形態や変形例においては、補正量減算値を算出するにあたって、除算演算を行っていたが、これに限られず、他の演算方法によって算出するようにしても勿論かまわない。
また、本発明の各実施形態や変形例においては、各フォーカスレンズ群の位置制御方法として、各フォーカスレンズ群の位置を取得せずに位置制御を行っている(いわゆるオープン制御)。しかし、この方法に限らず、例えば、フォーカスレンズ群毎に位置センサを配置し、各フォーカスレンズ群の位置を取得して行う位置制御、いわゆるクローズドループ制御(位置フィードバック制御)によって、各フォーカスレンズ群の位置制御を行っても良い。
また、本実施形態においては、撮影のための機器として、デジタルカメラを用いて説明したが、カメラとしては、デジタル一眼レフカメラでもコンパクトデジタルカメラでもよく、ビデオカメラ、ムービーカメラのような動画用のカメラでもよく、さらに、携帯電話、スマートフォン、携帯情報端末(PDA:Personal Digital Assist)、パーソナルコンピュータ(PC)、タブレット型コンピュータ、ゲーム機器等に内蔵されるカメラでも構わない。いずれにしても、複数のフォーカスレンズ群を独立に駆動可能な光学システムを採用する機器であれば、本発明を適用することができる。
また、本発明の各実施形態や変形例においては、ズームトラッキング動作直後から補正量減算値を用いて目標位置補正量の減算を行う説明したが、それに限るものではない。例えば、補正量減算値が下限値になる場合は、ズームトラッキング動作開始後、一定の期間を過ぎてから、目標位置補正量から補正量減算値を減算する処理を開始してもよい。
また、本明細書において説明した技術のうち、主にフローチャートで説明した制御に関しては、プログラムで設定可能であることが多く、記録媒体や記録部に収められる場合もある。この記録媒体、記録部への記録の仕方は、製品出荷時に記録してもよく、配布された記録媒体を利用してもよく、インターネットを介してダウンロードしたものでもよい。
また、特許請求の範囲、明細書、および図面中の動作フローに関して、便宜上「まず」、「次に」等の順番を表現する言葉を用いて説明したとしても、特に説明していない箇所では、この順で実施することが必須であることを意味するものではない。
本発明は、上記実施形態にそのまま限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施形態に示される全構成要素の幾つかの構成要素を削除してもよい。さらに、異なる実施形態にわたる構成要素を適宜組み合わせてもよい。