(57)【要約】    【課題】  マニュアル操作等による高速ズーム時でもピントのずれを抑える。    【解決手段】  変倍のために移動する第１レンズユニット１０２と該変倍に伴って移動する第２レンズユニット１０４とを有するレンズ装置の駆動制御装置であって、第１レンズユニットの移動に伴う像面変動を補正するための第２レンズユニットの位置データであるトラッキングデータを複数記憶したメモリ１２２と、第１レンズユニットの移動中におけるレンズ装置の焦点状態の変化を検出し、該検出結果に応じて複数のトラッキングデータのうち使用するトラッキングデータを変更する制御手段１２０とを有する。制御手段は、使用するトラッキングデータを変更した際に該変更の方向を記憶し、その後は該記憶した方向に基づいて使用するトラッキングデータを変更する。    【選択図】  図１
2005326771.tif 000002
【特許請求の範囲】
【請求項１】
変倍のために移動する第１レンズユニットと該変倍に伴って移動する第２レンズユニットとを有するレンズ装置の駆動制御装置であって、
前記第１レンズユニットの移動に伴う像面変動を補正するための前記第２レンズユニットの位置データであるトラッキングデータを複数記憶したメモリと、
前記第１レンズユニットの移動中における前記レンズ装置の焦点状態の変化を検出し、該検出結果に基づいて前記複数のトラッキングデータのうち使用するトラッキングデータを変更する制御手段とを有し、
該制御手段は、前記使用するトラッキングデータを変更した際に該変更の方向を記憶し、その後は該記憶した方向に基づいて前記使用するトラッキングデータを変更する第１の制御を行うことを特徴とするレンズ装置の駆動制御装置。
【請求項２】
前記制御手段は、前記第１の制御において、前記焦点状態が合焦状態に近づくように変化したときは、前記記憶した方向と同一方向に前記使用するトラッキングデータを変更することを特徴とする請求項１に記載の駆動制御装置。
【請求項３】
前記制御手段は、前記第１の制御において、前記焦点状態が合焦状態から離れるように変化したときは、前記記憶した方向と反対方向に前記使用するトラッキングデータを変更することを特徴とする請求項１に記載の駆動制御装置。
【請求項４】
前記制御手段は、撮影映像のコントラスト状態を示す評価値を用いて前記焦点状態を検出することを特徴とする請求項１から３のいずれか１つに記載の駆動制御装置。
【請求項５】
前記第１レンズユニットの移動速度を検出する検出手段を有し、
前記制御手段は、前記移動速度が第１の速度よりも高い場合に前記第１の制御を行い、前記移動速度が前記第１の速度より低い場合には、合焦状態により近い位置を探索するよう前記第２レンズユニットの駆動を制御する第２の制御を行うことを特徴とする請求項１から４のいずれか１つに記載の駆動制御装置。
【請求項６】
前記制御手段は、前記第１の制御から前記第２の制御に移行する場合と前記第２の制御から前記第１の制御に移行する場合とで前記第１の速度を異ならせることを特徴とする請求項５に記載の駆動制御装置。
【請求項７】
前記第１レンズユニットの移動速度を検出する検出手段を有し、
前記制御手段は、前記移動速度が第２の速度よりも低い場合に前記第１の制御を行い、前記移動速度が前記第２の速度より高い場合には、前記複数のトラッキングデータのうち特定のトラッキングデータのみを使用して前記第２レンズユニットの駆動を制御する第３の制御を行うことを特徴とする請求項１から４のいずれか１つに記載の駆動制御装置。
【請求項８】
前記制御手段は、前記第１の制御から前記第３の制御に移行する場合と前記第３の制御から前記第１の制御に移行する場合とで前記第２の速度を異ならせることを特徴とする請求項７に記載の駆動制御装置。
【請求項９】
前記第１レンズユニットの移動速度を検出する検出手段を有し、
前記制御手段は、前記移動速度が第１の速度よりも高く、かつ該第１の速度より高い第２の速度より低い場合に前記第１の制御を行い、前記移動速度が前記第１の速度より低い場合には、合焦状態により近づく位置を探索するよう前記第２レンズユニットの駆動を制御する第２の制御を行い、前記移動速度が前記第２の速度より高い場合には、前記複数のトラッキングデータのうち特定のトラッキングデータのみを使用して前記第２レンズユニットの駆動を制御する第３の制御を行うことを特徴とする請求項１から４のいずれか１つに記載の駆動制御装置。
【請求項１０】
前記制御手段は、前記評価値が第１の値よりも高い場合に前記第１の制御を行い、前記評価値が前記第１の値より低い場合には、該評価値がより高くなる位置を探索するよう前記第２レンズユニットの駆動を制御する第２の制御を行うことを特徴とする請求項４に記載の駆動制御装置。
【請求項１１】
前記制御手段は、前記第１の制御から前記第２の制御に移行する場合と前記第２の制御から前記第１の制御に移行する場合とで前記第１の値を異ならせることを特徴とする請求項１０に記載の駆動制御装置。
【請求項１２】
前記制御手段は、前記評価値が第２の値よりも低い場合に前記第１の制御を行い、前記評価値が前記第２の値より高い場合には、前記複数のトラッキングデータのうち特定のトラッキングデータのみを使用して前記第２レンズユニットの駆動を制御する第３の制御を行うことを特徴とする請求項４に記載のレンズ装置の駆動制御装置。
【請求項１３】
前記制御手段は、前記前記第１の制御から前記第３の制御に移行する場合と前記第３の制御から前記第１の制御に移行する場合とで前記第２の値を異ならせることを特徴とする請求項１２に記載の駆動制御装置。
【請求項１４】
前記制御手段は、前記評価値が第１の値よりも高く、かつ該第１の値より高い第２の値より低い場合に前記第１の制御を行い、前記評価値が前記第１の値より低い場合には、前記評価値がより高くなる位置を探索するよう前記第２レンズユニットの駆動を制御する第２の制御を行い、前記評価値が前記第２の値より高く、かつ該第２の値よりも高い第３の値より低い場合には、前記複数のトラッキングデータのうち特定のトラッキングデータのみを使用して前記第２レンズユニットの駆動を制御する第３の制御を行い、さらに前記評価値が前記第３の値より高い場合には、前記第２の制御を行うことを特徴とする請求項４に記載のレンズ装置の駆動制御装置。
【請求項１５】
前記制御手段は、前記前記第３の制御から前記第２の制御に移行する場合と前記第２の制御から前記第３の制御に移行する場合とで前記第３の値を異ならせることを特徴とする請求項１４に記載の駆動制御装置。
【請求項１６】
変倍のために移動する第１レンズユニットと該変倍に伴って移動する第２レンズユニットとを有するレンズ装置の駆動制御装置であって、
前記第２レンズユニットの駆動を制御する制御手段と、
前記第１レンズユニットの移動に伴う像面変動を補正するための前記第２レンズユニットの位置データであるトラッキングデータを記憶したメモリと、
前記第１レンズユニットの移動速度を検出する検出手段とを有し、
前記制御手段は、前記移動速度が所定速度より低い場合は、合焦状態により近づく位置を探索するよう前記第２レンズユニットの駆動を制御し、前記移動速度が前記所定速度より高い場合は、前記トラッキングデータを使用して前記第２レンズユニットの駆動を制御することを特徴とするレンズ装置の駆動制御装置。
【請求項１７】
変倍のために移動する第１レンズユニットと該変倍に伴って移動する第２レンズユニットとを有するレンズ装置の駆動制御装置であって、
前記第２レンズユニットの駆動を制御する制御手段と、
前記第１レンズユニットの移動に伴う像面変動を補正するための前記第２レンズユニットの位置データであるトラッキングデータを記憶したメモリと、
前記制御手段は、撮影映像のコントラスト状態を示す評価値が所定値より低い場合は、前記評価値がより高くなる位置を探索するよう前記第２レンズユニットの駆動を制御し、前記評価値が前記所定値より高い場合は、前記トラッキングデータを使用して前記第２レンズユニットの駆動を制御することを特徴とするレンズ装置の制御装置。
【請求項１８】
請求項１から１７のいずれか１つに記載の駆動制御装置と、
前記第１および第２レンズユニットを含む撮影光学系とを有することを特徴とするレンズ装置。
【請求項１９】
請求項１８に記載のレンズ装置と、該レンズ装置が装着される撮影装置とを有することを特徴とする撮影システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、変倍に伴う像面変動を補正するためにレンズユニットの駆動を制御するレンズ装置の駆動制御装置に関するものである。
【背景技術】
【０００２】
従来、民生用のズームレンズ装置においては、ズーム操作に対する変倍レンズユニットの移動速度（ズーム速度）が、フォーカスレンズユニットのオートフォーカス（ＡＦ）動作やトラッキングデータ（変倍レンズユニットの移動に対して像面位置を略一定に維持するためのフォーカスレンズの位置を示すデータ）に追従可能な速度に制限されている。すなわち、フォーカスレンズの制御可能な移動速度によって変倍レンズユニットの最大移動速度が決められている。
【０００３】
したがって、同じズーム速度の指令値に対して、実際のズーム速度が、ワイド側では速いが、テレ側にいくにしたがって遅くなる。このため、テレ側において素早いズーミングができない場合が多い。
【０００４】
また、特許文献１には、変倍レンズユニットの移動に伴うフォーカスレンズによる像面変動を補正する方法として、変倍レンズユニットの移動中は、変倍レンズユニットとフォーカスレンズの位置によって決定される基準速度を、被写界深度や焦点状態に応じて補正し、該補正した基準速度に基づいてフォーカスレンズを駆動する方法が開示されている。
【特許文献１】特開平５−３０４０２号公報（段落００５１〜００７０、図２等）
【発明の開示】
【発明が解決しようとする課題】
【０００５】
ところで、放送用等の業務用ズームレンズ装置では、民生用とは異なり、ズームに関してマニュアル操作が一般的に行われ、該マニュアルズーム操作によってきわめて高速のズームも可能となっている。言い換えれば、フォーカスレンズユニットによる像面変動の補正制御が追いつく速度の範囲にズーム速度を制限することができない。したがって、高速ズーム時にピントがずれてしまう可能性が高い。
【０００６】
例えば、フォーカスレンズユニットを微小振幅駆動させながら、映像信号から抽出したＡＦ評価値が高くなる位置を探索するＡＦ動作をズーム中継続することによって像面位置を維持する場合、低速ズーム時には良好な像面維持性能を確保できるが、高速ズーム時にはＡＦ評価値の生成、フォーカスレンズユニットの探索駆動および方向判別にある程度の時間を要するので、像面維持性能が低下する。
【０００７】
また、トラッキングデータが複数用意されている場合には、ズーム時にどのトラッキングデータを使用するかを選択するため、第２レンズユニットを現在よりも至近側および無限側に移動させてみて、評価値が高くなる方向のトラッキングデータを探索する。そして、ズーム中の像面変動をより効果的に抑えるために、上記トラッキングデータの探索動作をズーム中に繰り返し行う。しかし、この場合も、ＡＦ動作と同様に、トラッキングデータの探索に時間がかかるため、像面維持性能が低下する。
【０００８】
本発明では、マニュアル操作等による高速ズーム時でもピントのずれを抑えることができるようにしたレンズ装置の駆動制御装置を提供することを目的としている。
【課題を解決するための手段】
【０００９】
上記の目的を達成するために、１つの観点としての第１の発明は、変倍のために移動する第１レンズユニットと該変倍に伴って移動する第２レンズユニットとを有するレンズ装置の駆動制御装置であって、第１レンズユニットの移動に伴う像面変動を補正するための第２レンズユニットの位置データであるトラッキングデータを複数記憶したメモリと、第１レンズユニットの移動中におけるレンズ装置の焦点状態の変化を検出し、該検出結果に応じて複数のトラッキングデータのうち使用するトラッキングデータを変更する制御手段とを有する。そして、該制御手段は、使用するトラッキングデータを変更した際に該変更の方向を記憶し、その後は該記憶した方向に基づいて使用するトラッキングデータを変更する。
【００１０】
また、他の観点としての第２の発明は、変倍のために移動する第１レンズユニットと該変倍に伴って移動する第２レンズユニットとを有するレンズ装置の駆動制御装置であって、第２レンズユニットの駆動を制御する制御手段と、第１レンズユニットの移動に伴う像面変動を補正するための第２レンズユニットの位置データであるトラッキングデータを記憶したメモリと、第１レンズユニットの移動速度を検出する検出手段とを有する。そして、該制御手段は、第１レンズユニットの移動速度が所定速度より低い場合は、合焦状態により近づく位置を探索するよう第２レンズユニットの駆動を制御（ＡＦ制御）し、該移動速度が該所定速度より高い場合は、トラッキングデータを使用して第２レンズユニットの駆動を制御する。
【００１１】
さらに、別の観点としの第３の発明は、変倍のために移動する第１レンズユニットと該変倍に伴って移動する第２レンズユニットとを有するレンズ装置の駆動制御装置であって、第２レンズユニットの駆動を制御する制御手段と、第１レンズユニットの移動に伴う像面変動を補正するための第２レンズユニットの位置データであるトラッキングデータを記憶したメモリとを有する。そして、該制御手段は、撮影映像のコントラスト状態を示す評価値が所定値より低い場合は、該評価値がより高くなる位置を探索するよう第２レンズユニットの駆動を制御（ＡＦ制御）し、該評価値が該所定値より高い場合は、トラッキングデータを使用して第２レンズユニットの駆動を制御する。
【発明の効果】
【００１２】
第１の発明によれば、トラッキングデータの変更（乗り換え）をズーム中に繰り返し行う場合に、初回のトラッキングデータの探索動作以降は、前回の変更時に記憶した方向の情報を利用してトラッキングデータを選択するので、トラッキングデータの探索動作の繰り返しが不要となり、素早いトラッキングデータの変更が可能である。したがって、高速ズーム時においても像面維持性能を高くすることができる。
【００１３】
また、第２および第３の発明では、ズーム速度が所定速度より低速である場合又は評価値が所定値より低い場合は、トラッキングデータを用いる場合よりもズーム追従性は低いが像面維持性能は高いＡＦ制御を行い、ズーム速度が所定速度より高速である場合又は評価値が所定値より高い場合は、ＡＦ制御に比べてズーム追従性の高いトラッキングデータを用いた像面補正制御を行う。このため、ズーム速度にかかわらず、良好な像面維持性能を確保することができる。
【発明を実施するための最良の形態】
【００１４】
以下、本発明の実施例について図面を参照しながら説明する。
【実施例１】
【００１５】
まず、本発明の実施例１において最も特徴的なフォーカスレンズユニットのズーム連動制御について簡単に説明する。なおここでは、変倍のために移動する変倍レンズユニット（以下、ズームレンズユニットという）と、該変倍レンズユニットよりも像面側に配置された、変倍に伴う像面変動を補正するフォーカスレンズユニットとを有するリアフォーカス式のズームレンズを前提として説明する。
【００１６】
また、本実施例において、ズーム連動制御は、ズームレンズユニットの移動速度あるいはズームレンズユニットを操作するマニュアル操作部材の操作速度（以下、これらをズーム速度という）が、後述する第１の基準速度より高い場合に行われる。ズーム速度が第１の基準速度より低い場合は、フォーカスレンズを微小振幅駆動（いわゆるウォブリング）させる等しながらＡＦ評価値がより高くなる位置を探索するＡＦ制御による像面変動補正が行われる。なお、このＡＦ制御は、非ズーム時にも、被写体に対する合焦を得るために実行される。さらに、ズーム速度が第１の基準速度より高い第２の基準速度より高い場合は、ズーム連動制御ではなく、使用するトラッキングカーブを固定して像面変動補正が行われる（以下、これをトラッキングカーブ固定制御という）。
【００１７】
ズーム操作が行われた場合に、フォーカスレンズはトラッキングカーブに乗るようにその位置が制御されるが、所定間隔（制御ルーチン）ごとにＡＦ評価値が参照され、前回のＡＦ評価値と今回のＡＦ評価値の差分が所定の閾値を超えたときは、使用するトラッキングカーブをＡＦ評価値がより高くなる方向のトラッキングカーブに変更する（乗り換える）。これがズーム連動制御である。
【００１８】
なお、ここにいう「方向」とは、後述するように個々のトラッキングカーブに割り当てられた番号の増減方向若しくは至近・無限方向に相当する。
【００１９】
以下、本実施例のより具体的な構成および動作について説明する。図１には、本実施例の撮影システムの構成を示している。該撮影システムは、リアフォーカス式ズームレンズ装置１と、該ズームレンズ装置１に装着されるドライブユニット（駆動制御装置）２と、ズームレンズ装置１が装着される撮影装置（ビデオカメラ又はテレビカメラ）３とにより構成されている。
【００２０】
ズームレンズ装置１には、撮影光学系が搭載されている。撮影光学系は、物体側から順に、固定の前玉レンズユニット１０１と、変倍用のズームレンズユニット１０２と、アイリス（ＩＲＩＳ）１０３と、フォーカシングおよび変倍に伴う像面変動を補正するためのフォーカスレンズユニット１０４とにより構成されている。また、本実施例では、フォーカスレンズユニット１０４よりも像面側にエクステンダレンズユニット１０５が配置されている場合を示しているが、このエクステンダレンズユニット１０５は必ずしも必要ではない。
【００２１】
カメラ３には、撮影光学系からの光束により形成された被写体像を光電変換するＣＣＤセンサ又はＣＭＯＳセンサ等からなる撮像素子１０６が設けられている。フォーカスレンズユニット１０４の位置を調節することにより、撮像素子１０６の受光面に被写体像が合焦状態で結像される。
【００２２】
ズームレンズ装置１には、ズームリング１０７が取り付けられており、撮影者がこのズームリング１０７を手動で回転操作することによって、不図示の伝達機構を介してズームレンズユニット１０２が光軸方向に移動し、マニュアルズームとしての変倍が行われる。
【００２３】
また、ズームレンズ装置１には、ＩＲＩＳリング１０８が取り付けられており、撮影者がこのＩＲＩＳリング１０８を手動で回転操作することにより、不図示の伝達機構を介してアイリス１０３が開閉方向に駆動され、絞り値の設定が可能となっている。
【００２４】
ドライブユニット２には、コントローラとしてのＣＰＵ１２０が内蔵されている。ＣＰＵ１２０は、ドライブユニット２の各種動作の制御やデータ処理を行う。
【００２５】
ＣＰＵ１２０は、ドライブユニット２に設けられたズームスイッチ部１２４からの信号に応じてズーム駆動部１１０を制御する。ズーム駆動部１１０は、不図示のモータおよびその駆動回路を有し、ＣＰＵ１２０からの制御信号に応じてズームレンズユニット１０２を駆動する。これにより、サーボズームとしての変倍が可能である。
【００２６】
また、ＣＰＵ１２０は、ドライブユニット２に設けられたＩＲＩＳスイッチ部１２５からの信号に応じてＩＲＩＳ駆動部１１１を制御する。ＩＲＩＳ駆動部１１１は、不図示のモータおよびその駆動回路を有し、ＣＰＵ１２０からの制御信号に応じてアイリス１０３を駆動する。
【００２７】
さらにＣＰＵ１２０は、ドライブユニット２に設けられたフォーカス電子リング部１２６からの信号に応じてフォーカス駆動部１１２を制御する。フォーカス駆動部１１２は、不図示のモータおよびその駆動回路を有し、ＣＰＵ１２０からの制御信号に応じてフォーカスレンズユニット１０４を駆動する。
【００２８】
また、ドライブユニット２には、不図示のエクステンダレバーの操作に応じて、１倍および２倍のエクステンダレンズユニット１０５の切り換えを行うエクステンダ操作部１１３が設けられている。
【００２９】
さらに、ＣＰＵ１２０には、タイマ１２１およびメモリ１２２が接続されており、ＣＰＵ１２０は、これらタイマ１２１による計時結果やメモリ１２２内のデータを参照して各種制御のための時間管理や演算処理を行う。
【００３０】
メモリ１２２には、変倍に伴う像面変動を補正する際に用いられる、ズームレンズユニット１０２の位置に対するフォーカスレンズユニット１０４の位置を表すトラッキングカーブがテーブルデータとして予め記憶されている。本実施例では、後述するように、複数のトラッキングカーブがメモリ１２２に記憶されている。
【００３１】
また、カメラ３においては、撮像素子１０６の出力信号に対して各種処理が施され、映像信号が生成される。この映像信号は、カメラ３にセットされたビデオテープや半導体メモリ、磁気ディスク、光ディスク等の記録媒体に記録される。
【００３２】
一方、ドライブユニット２に設けられたＡＦ評価値生成部１１４は、カメラ３から映像信号を取り込み、該映像信号の高周波成分を抽出することにより、撮影映像のコントラスト状態を示すＡＦ評価値を生成する。ＡＦ評価値は、撮影光学系の焦点状態に対応するものであり、合焦状態に近づくほど高い値を示す。このＡＦ評価値は、ＡＦ制御とズーム連動制御の双方に用いられる。
【００３３】
ＣＰＵ１２０は、ドライブユニット２に設けられたフォーカスモードスイッチ部１２３からの信号に応じて、マニュアルフォーカスモードとＡＦモードとを選択的に設定する。ＡＦモードでは、ＡＦ制御によって被写体に対する自動的な焦点調節動作（オートフォーカス）が行われ、マニュアルフォーカスモードでは、撮影者の操作による焦点調節（マニュアルフォーカス）が可能である。
【００３４】
次に、図２を用いてズーム駆動部１１０についてさらに詳しく説明する。ＣＰＵ１２０は、Ｄ／Ａ変換器ａ２０５を介してモータドライバａ２０４に制御信号を送る。モータドライバａ２０４は、モータａ２０３を駆動し、その出力はクラッチａ２０２およびズームリング１０７を介して、ズームレンズユニット１０２に伝達される。
【００３５】
クラッチａ２０２には、レバーａ２０１が接続されている。レバーａ２０１を操作することで、クラッチａ２０２が機械的に又は電気的にオン／オフする。クラッチａ２０２がオンしているときは、モータａ２０３の出力がズームレンズユニット１０２に伝達されるが、クラッチａ２０２がオフのときは、モータａ２０３の出力はズームレンズユニット１０２には伝達されない。この状態で、マニュアルズームが可能になる。
【００３６】
また、ＣＰＵ１２０は、クラッチａ２０２のオン／オフ状態を読み込み、ズームレンズユニット１０２のサーボ制御（サーボズーム）が可能かどうかを判断する。すなわち、クラッチａ２０２がオン状態の場合はサーボズームが可能なサーボズームモードとなり、オフ状態の場合はマニュアルズームを可能とするマニュアルズームモードとなる。
【００３７】
さらに、ズームレンズユニット１０２の位置（以下、ズーム位置という）を検出するためのポテンショメータａ２０６がＣＰＵ１２０に接続されている。ポテンショメータａ２０６は、ズーム位置を直接、ズームレンズユニット１０２から検出してもよいし、ズームリング１０７の回転位置を検出することで間接的にズーム位置を検出してもよい。ポテンショメータａ２０６の出力は、Ａ／Ｄ変換器ａ２０７を介してＣＰＵ１２０に入力される。これにより、ＣＰＵ１２０は、ズーム位置を判断（検出）することができ、さらにズーム位置の変化率からズーム速度を検出することができる。
【００３８】
ここで、本実施例において、Ｄ／Ａ変換器ａ２０５に与える制御信号は１６ビットの信号であり、制御信号の値が０でズームレンズユニット１０２の停止を、正の値でテレ方向へのズーム動作を、負の値でワイド方向へのズーム動作を指示する。また、データ値の絶対値が大きいほど、ＣＰＵ１２０はズーム速度を速くする。
【００３９】
また、Ａ／Ｄ変換器ａ２０７から出力される位置信号も１６ビットの信号であり、その値が０のときはズームレンズユニット１０２がワイド端に位置し、６５５３５のときテレ端に位置することを意味する。
【００４０】
次に、図３を用いて、ＩＲＩＳ駆動部１１１について説明する。ＣＰＵ１２０は、アイリス１０３の位置指令信号としての制御信号を、Ｄ／Ａ変換器ｂ３０５を介して作動増幅器ｂ３０８の＋側に入力する。作動増幅器ｂ３０８の出力は、モータドライバｂ３０４に入力される。モータドライバｂ３０４は、モータｂ３０３を駆動し、その出力はクラッチｂ３０２およびＩＲＩＳリング１０８を介してアイリス１０３に伝達される。
【００４１】
クラッチｂ３０２には、レバーｂ３０１が接続されており、レバーｂ３０１を操作することで、クラッチｂ３０２がオン／オフする。クラッチｂ３０２がオンしているときは、モータｂ３０３の出力がアイリス１０３に伝達されるが、クラッチｂ３０２がオフのときは、モータｂ３０３の出力はアイリス１０３に伝達されない。この状態で、マニュアルでのアイリス調節を行うことができる。
【００４２】
また、ＣＰＵ１２０は、クラッチｂ３０２のオン／オフ状態を読み込み、アイリス１０３がサーボ制御が可能かどうかを判断する。すなわち、クラッチｂ３０２がオン状態の場合はアイリス１０３のサーボ制御が可能なサーボアイリスモードとなり、オフ状態の場合は、アイリス１０３のマニュアル調節が可能なマニュアルアイリスモードとなる。
【００４３】
さらに、アイリス１０３の位置を検出するためのポテンショメータｂ３０６がＣＰＵ１２０に接続されている。ポテンショメータ３０６の出力は、作動増幅器ｂ３０８の−端子に入力される。これにより、サーボアイリスモードにおいて、アイリス１０３はフィードバック制御される。
【００４４】
また、ポテンショメータｂ３０６の出力は、Ａ／Ｄ変換器ｂ３０７を介してＣＰＵ１２０に入力されるため、ＣＰＵ１２０によるアイリス１０３の位置判断（位置検出）が可能となる。
【００４５】
ここで、Ｄ／Ａ変換器ｂ３０５に与えられる制御信号は、１６ビットの信号であり、その値が０でアイリス１０３はクローズし、６５５３５で開放になる。また、Ａ／Ｄ変換器ｂからの位置信号も１６ビットの信号であり、アイリス１０３がクローズの時に位置信号の値は０、開放のときは６５５３５になる。
【００４６】
次に、図４を用いて、フォーカス駆動部１１２について説明する。ＣＰＵ１２０は、フォーカスコントローラｃ４０３を介してモータドライバｃ４０２に制御信号を送り、ドライバｃ４０２はパルスモータ４０１を駆動する。パルスモータ４０１の出力は、フォーカス電子リング１２６を介してフォーカスレンズユニット１０４に伝達される。
【００４７】
ここで、本実施例では、フォーカスレンズユニット１０４が所定の原点位置に位置することを検出する原点センサ４０４が設けられており、原点センサ４０４の出力に基づいてＣＰＵ１２０がフォーカスレンズユニット１０４の位置カウンタを初期化することで、その後のフォーカスレンズユニット１０４の絶対位置制御が可能となる。
【００４８】
フォーカスコントローラｃ４０３は、周波数とパルス位置とを設定すると、指定周波数で現在位置から指定位置までパルスモータ４０１を駆動する。また、周波数を０に設定すると、パルスモータ４０１は、周波数０を設定した位置で停止する。さらに、ＣＰＵ１２０は、任意のタイミングでフォーカスレンズユニット１０４の位置（以下、フォーカス位置という）を読み出すことができる。
【００４９】
次に、図５を用いて、エクステンダ操作部１１３について説明する。本実施例では、エクステンダレンズユニット１０５として１倍のものと２倍のものとを切り換え（挿抜）可能に有しており、エクステンダ操作部１１３は、レバーｄ５０１の操作に応じて上記切り換えを行う。また、エクステンダ操作部１１３は、現在、撮影光学系内に配置されているエクステンダレンズユニット１０５が１倍のものか２倍のものかを示す信号をＣＰＵ１２０に出力する。このため、ＣＰＵ１２０は、現在のエクステンダレンズユニット１０５の倍率を検出することができる。
【００５０】
次に、図６を用いて、フォーカスモードスイッチ部１２３について説明する。ＣＰＵ１２０には、フォーカスモード選択スイッチ６０１が接続されている。フォーカスモード選択スイッチ６０１の両端はそれぞれ、プルアップ抵抗Ｒａ６０２とＧＮＤとに接続されているため、フォーカスモード選択スイッチ６０１のオン／オフ状態をＣＰＵ１２０が検出することができる。フォーカスモード選択スイッチ６０１がオンしているときはオートフォーカスモード、オフのときはマニュアルフォーカスモードとなる。
【００５１】
次に、図７を用いて、ズームスイッチ部１２４について説明する。ズームスイッチ部１２４には、中立復帰タイプのシーソースイッチ（図示せず）が設けられており、該シーソースイッチの操作に応じてポテンショメータＲｂ７０２の出力電圧が変化する。ＣＰＵ１２０は、ポテンショメータＲｂ７０２の出力電圧をＡ／Ｄ変換器ｅ７０１を介して取り込む。そして、Ａ／Ｄ変換器ｅ７０１の出力に応じた速度および方向にズームレンズユニット１０２が駆動されるようズーム駆動部１１０に制御信号を出力する。なお、Ａ／Ｄ変換器ｅ７０１の出力については後述する。
【００５２】
次に、図８を用いて、ＩＲＩＳスイッチ部１２５について説明する。ＩＲＩＳスイッチ部１２５には、不図示のダイヤルが設けられており、このダイヤルの操作に応じてポテンショメータＲｃ８０２の出力電圧が変化する。ＣＰＵ１２０は、Ａ／Ｄ変換器ｆ８０１の出力を取り込むことで、ポテンショメータＲｃ８０２の出力電圧を検出することができる。ここで、Ａ／Ｄ変換器ｆ８０１からの信号は１６ビットの信号であり、信号の値が０の場合はクローズ指令信号、６５５３５の場合は開放指令信号である。そして、ＣＰＵ１２０は、Ａ／Ｄ変換器ｆ８０１からの出力に応じた方向にアイリス１０３が駆動されるようＩＲＩＳ駆動部１１１に制御信号を出力する。
【００５３】
次に、図９を用いてフォーカス電子リング部１２６について説明する。フォーカス電子リング部１２６には、不図示のフォーカス操作リングが設けられており、該フォーカス操作リングの回転操作に応じて２相パルス発生器９０２から２相のバルス信号が出力される。カウンタｇ９０１は、該２相のパルス信号の位相ずれの方向を検出するとともにパルス数をカウントし、カウント値を示す信号をＣＰＵ１２０に入力する。ＣＰＵ１２０は、該カウント値の増減に応じた方向にフォーカスレンズユニット１０４が駆動されるよう制御信号をフォーカス駆動部１１２に出力する。
【００５４】
ここで、図１０を用いて、２パルス発生器９０２の出力形式について説明する。図１０（ａ）に示されるように、Ａ相がＢ相より９０度進んだ状態の出力が発生されている場合、カウンタｇ９０１はカウントアップをする。また、図１０（ｂ）に示されるようにＡ相がＢ相より９０度遅れている場合は、カウンタｇ９０１はカウントダウンをする。
【００５５】
次に、図１１を用いてトラッキングカーブについて説明する。トラッキングカーブにおける理論曲線の分解能（つまりは、トラッキングカーブの数）は、テレ端における無限遠（ＩＮＦ）から最至近距離（ＭＯＤ）までの被写体に対する合焦に必要なフォーカスレンズユニット１０４の移動量と、焦点深度から求まる最小ステップ幅とで決定される。ここで、パルスモータ４０１のテレ端における分解能を理論曲線の分解能に合せた場合、ワイド側に行くほどパルスモータ４０１の分解能は表しきれなくなる。したがって、ズーム位置に依存したパルスモータ４０１の位置（フォーカスレンズユニット１０４の位置に相当する）は、理論曲線が存在するパルス位置で近似することになる。このとき、ズーム位置に対するフォーカス位置のデータは、フォーカスレンズユニット１０４の原点位置を基準としたパルスモータ４０１の駆動パルス数に換算された値でメモリ１２２に記憶される。
【００５６】
続いて、図１１を用いて、トラッキングカーブ番号とパルスモータ４０１の駆動パルス数との関係について説明する。例えば、テレ端において、パルスモータ４０１の分解能はＮパルス存在するのに対して、ワイド端においてはパルスモータ４０１の分解能は３パルス分しかない。このため、ワイド端では、トラッキングカーブ番号１からＫ−１までは第１パルスの位置、ＫからＮ−１までは第２パルスの位置、Ｎは第３パルスの位置に対応させている。ただし、Ｋは、Ｋ＜Ｎとなるトラッキングカーブ番号である。
【００５７】
このように、パルスモータ４０１のパルス位置とトラッキングカーブ番号とが１対１の関係にならない場合は、パルスモータ４０１のパルス位置に対するトラッキングカーブ番号として、そのパルス位置において複数存在するトラッキングカーブ番号のうち一番小さい番号を記憶させる。例えば、あるパルス位置においてトラッキングカーブ番号が１０から１５まで存在する場合は、トラッキングカーブ番号を１０とする。
【００５８】
ここで、本実施例では、最も無限端側のトラッキングカーブの番号を１とし、最も至近端側のトラッキングカーブの番号をＮとしたが、最も至近端側のトラッキングカーブの番号を１とし、無限端側のトラッキングカーブの番号をＮとしてもよい。
【００５９】
さらに、パルスモータ４０１のパルス位置に対するトラッキングカーブ番号は、そのパルス位置において複数存在するトラッキングカーブ番号のうち一番大きい番号を記憶させてもよい。例えば、あるパルス位置においてトラッキングカーブ番号が１０から１５まで存在する場合は、トラッキングカーブ番号を１５としてもよい。
【００６０】
次に、パルス位置とトラッキングカーブ番号とが１対１の関係にならない場合において、トラッキングカーブ番号CurTrackingNo からメモリ１２２に記憶されているパルスモータ４０１のパルス位置PulseInMemory とトラッキングカーブ番号TrackingNoInMemoryを検索する方法について説明する。
【００６１】
ズームレンズユニット１０２の現在位置に対する各パルス位置PulseInMeormy はメモリ１２２上に存在するが、メモリ１２２上のトラッキングカーブ番号TrackingNoInMemoryは上記説明から分かるように離散的になっている。このときの例を以下に示す。
【００６２】
メモリ１２２上に、以下のようなパルス数PulseInMemoryとトラッキングカーブ番号TrackingNoInMemory との対のデータが存在するとする。
【００６３】
パルス数PulseInMemory      トラッキングカーブ番号TrackingNoInMemory
１                                １
２                                ３
３                                ７
現在のトラッキングカーブ番号CurTrackingNo が２である場合、現在のトラッキングカーブ番号CurTrackingNoに対するパルス位置PulseInMemoryが存在しないことになる。この場合、トラッキングカーブ番号CurTrackingNo ２を超えないメモリ１２２上に存在するトラッキングカーブ番号TrackingNoInMemoryを採用する。すなわち、トラッキングカーブ番号TrackingNoInMemory １に対するパルス位置PulseInMemory１を採用する。また、トラッキングカーブ番号TrackingNoInMemoryが２以上の最小トラッキングカーブ番号TrackingNoInMemory３を採用するようにしてもよい。
【００６４】
さらにズーム位置に依存して、メモリ１２２上のトラッキングカーブ番号TrackingNoInMemoryを、現在のトラッキングカーブ番号CurTrackingNo を超えない番号として採用したり、現在のトラッキングカーブ番号CurTrackingNo 以上の番号で最小のものを採用するようにしてもよい。
【００６５】
以下、ＣＰＵ１２０の処理動作について説明する。まず、図１２を用いて初期化処理InitSystemを説明する。ステップＳ１２０１では、以下に示すように、各レンズユニットの制御モードやエクステンダレンズユニット１０５の倍率情報の初期化を行う。
【００６６】
FocusMode= ManualFocus  ・・・・・フォーカスマニュアルモード
ZoomMode = ManualZoom    ・・・・・ズームマニュアルモード
IrisMode = ManualIris    ・・・・・ＩＲＩＳマニュアルモード
ExtenderMag = 1          ・・・・・エクステンダ１倍
そして、ステップＳ１２０２へ進む。
【００６７】
ステップＳ１２０２では、各レンズユニットの速度指令値の初期化を行う。
【００６８】
PreFocusCount = 0        ・・・・・フォーカス速度指令算出用データ
ZoomSpeedCommand = 0     ・・・・・ズーム速度指令値
FocusSpeedCommand = 0    ・・・・・フォーカス速度指令値
そして、ステップＳ１２０３へ進む。
【００６９】
ステップＳ１２０３では、フォーカスレンズユニット１０４の初期化を行う。具体的には、パルスモータ４０１を駆動し、原点センサ４０４がオンする位置（原点位置）までフォーカスレンズユニット１０４を移動させる。本実施例では、原点位置は、無限遠被写体に対して合焦する位置とする。そして、ステップＳ１２０４へ進む。
【００７０】
ステップ１２０４では、現在のトラッキングカーブ番号の設定を行う。
【００７１】
TrackingCurveNo = 1      ・・・・・カーブ番号１
そしてステップＳ１２０５に進む。
【００７２】
ステップＳ１２０５では、トラッキングカーブ番号演算用データの初期化を行う。
【００７３】
SignTrackingCurveCalc = 1・・・・・演算用符号データ
TrackingCurveWidth = 1   ・・・・・  番号移動幅
そしてステップＳ１２０６に進む。
【００７４】
ステップＳ１２０６では、像面補正制御としてＡＦ制御、ズーム連動制御およびカーブ固定制御のうちどれを選択するかを決定するためのズーム基準速度と、トラッキングカーブを変更する判断基準となる前回と今回のＡＦ評価値の差分の閾値の設定を行う。なお、このステップは、本実施例と後述する実施例２とで共通して行われる。
すなわち、
InterlockingZoomSpeedStd=100・・・ＡＦ評価値に依存したズーム基準速度
AfZoomSpeedStd = 70         ・・・ＡＦ評価値に依存したズーム基準速度
AfValueStd = 500            ・・・ＡＦ評価値依存切換えのための基準ＡＦ評価値
InterlockingZoomStdSpeed=100・・ズーム速度依存の場合：ズーム連動−カーブ固定
AfZoomStdSpeed = 70         ・・・ズーム速度依存の場合：ＡＦ−ズーム連動
DiffZilStdAfValue = 150     ・・・トラッキングカーブ移動用ＡＦ評価値（差分値）
UpperFtStdAfValue = 1000    ・・・ＡＦ評価値依存の場合：ＡＦ−カーブ固定
UpperZilStdAfValue = 700    ・・・ＡＦ評価値依存の場合：カーブ固定−ズーム連動
LowerZilStdAfValue = 200    ・・・ＡＦ評価値依存の場合：ズーム連動−ＡＦ
DiffZilStdAfValue = 150     ・・・トラッキングカーブ移動用ＡＦ評価値（差分値）
という設定を行う。そして、ステップＳ１２０７に進む。
【００７５】
ステップＳ１２０７では、レンズ情報の初期化を行うために、サブルーチンInitLensInformationを呼び出す。そして、本サブルーチンInitSystemを終了する。
【００７６】
次に、図１３を用いて、レンズ情報の初期化処理用サブルーチンInitLensInformation を説明する。ステップＳ１３０１では、ズーム位置検出およびズーム速度算出用サブルーチンDetectZoomPositionを呼び出す。そしてステップＳ１３０２に進む。ステップＳ１３０２では、現在のズームレンズユニット１０２の速度データの初期化を行う。
【００７７】
CurZoomSpeed = 0        ・・・現在の符号（方向）付ズーム速度
AbsCurZoomSpeed = 0     ・・・現在の絶対値ズーム速度
そしてステップＳ１３０３に進む。
【００７８】
ステップＳ１３０３では、ＩＲＩＳ位置検出およびＩＲＩＳ速度算出用サブルーチンDetectIrisPositionを呼び出す。そしてステップＳ１３０４に進む。ステップＳ１３０４では、現在のＩＲＩＳ１０３の速度データの初期化を行う。
【００７９】
CurIrisSpeed = 0        ・・・現在の符号付ＩＲＩＳ速度
そしてステップＳ１３０５に進む。
【００８０】
ステップＳ１３０５では、エクステンダ倍率検出用サブルーチンDetectExtenderMag を呼び出す。そしてステップＳ１３０６に進む。ステップＳ１３０６では、エクステンダ倍率変化量の初期化を行う。
【００８１】
DiffExtenderMag = 0
そして本サブルーチンInitLensInformationを終了する。
【００８２】
次に、図１４を用いて、タイマ割り込み処理用割り込みルーチンを説明する。ステップＳ１４０１では、レンズモード入力用サブルーチンであるInputLensMode を呼び出す。そしてステップＳ１４０２に進む。ステップＳ１４０２では、レンズ位置入力用サブルーチンであるInputLensPosition を呼び出す。そしてステップＳ１４０３に進む。ステップＳ１４０３では、レンズ指令入力用サブルーチンであるInputLensCommandを呼び出す。そして本割り込みルーチンを終了する。
【００８３】
次に、図１５を用いて、レンズモード入力処理用サブルーチンであるInputLensMode を説明する。ステップＳ１５０１では、フォーカスモード入力ルーチンであるInputFocusModeを呼び出す。そしてステップＳ１５０２に進む。ステップＳ１５０２では、ズームモード入力ルーチンであるInputZoomMode を呼び出す。そしてステップＳ１５０３に進む。ステップＳ１５０３では、ＩＲＩＳモード入力ルーチンであるInputIrisMode を呼び出す。そして本サブルーチンInputLensModeを終了する。
【００８４】
次に、図１６を用いて、レンズ位置入力用サブルーチンであるInputLensPosition を説明する。ステップＳ１６０１では、ズーム位置検出および速度の算出用サブルーチンDetectZoomPositionを呼び出す。そしてステップＳ１６０２に進む。ステップＳ１６０２では、ＩＲＩＳ位置検出および速度算出用サブルーチンDetectIrisPositionを呼び出す。そしてステップＳ１６０３に進む。ステップＳ１６０３では、エクステンダ倍率検出および倍率変化算出用サブルーチンDetectExtenderMag を呼び出す。そしてステップＳ１６０４に進む。ステップＳ１６０４では、リアフォーカスレンズユニット１０４の現在位置をフォーカスコントローラｃ４０３より読み出し、CurFocusPositionに設定する。そして本サブルーチンInputLensPositionを終了する。
【００８５】
次に、図１７を用いてレンズ指令入力用サブルーチンInputLensCommandを説明する。ステップＳ１７０１では、ズーム指令入力用サブルーチンInputZoomCommandを呼び出す。そしてステップＳ１７０２に進む。ステップＳ１７０２では、フォーカス指令入力用サブルーチンInputFocusCommand を呼び出す。そしてステップＳ１７０３に進む。ステップＳ１７０３では、ＩＲＩＳ指令入力用サブルーチンであるInputIrisCommandを呼び出す。そして本サブルーチンInputLensCommandを終了する。
【００８６】
次に、図１８を用いて、フォーカスモード入力用サブルーチンInputFocusModeを説明する。ステップＳ１８０１では、フォーカスモードスイッチ６０１からの出力を入力する。そしてステップＳ１８０２に進む。ステップＳ１８０２では、フォーカスモードスイッチ６０１のオン・オフ状態をチェックする。オンしている場合は、ステップＳ１８０４に進む。ステップＳ１８０４では、フォーカスモードをオートフォーカスモードに設定する。
【００８７】
FocusMode= AutoFocus
そして、本サブルーチンInputFocusModeを終了する。
【００８８】
ステップＳ１８０２で、フォーカスモードスイッチ６０１がオフであると判断した場合は、ステップＳ１８０３に進む。ステップＳ１８０３では、フォーカスモードをマニュアルフォーカスモードに設定する。
【００８９】
FocusMode= ManualFocus
そして本サブルーチンInputFocusModeを終了する。
【００９０】
次に、図１９を用いて、ズームモード入力用サブルーチンであるInputZoomMode を説明する。ステップＳ１９０１では、ズームレンズ用クラッチａ２０２の状態ZoomClutchStatusを入力する。そしてステップＳ１９０２に進む。ステップＳ１９０２では、ZoomClutchStatusをチェックする。オンしている場合は、ステップＳ１９０４に進む。ステップＳ１９０４では、ズームモードをサーボズームモードに設定する。
【００９１】
ZoomMode = ServoZoom
そして、本サブルーチンInputZoomModeを終了する。
【００９２】
ステップＳ１９０２で、ZoomClutchStatusがオフであると判断した場合は、ステップＳ１９０３に進む。ステップＳ１９０３では、ズームモードをマニュアルズームモードに設定する。
【００９３】
ZoomMode = ManualZoom
そして本サブルーチンInputZoomModeを終了する。
【００９４】
次に、図２０を用いて、ＩＲＩＳモード入力用サブルーチンInputIrisModeを説明する。ステップＳ２００１では、ＩＲＩＳ用クラッチｂ３０２の状態IrisClutchStatusを入力する。そしてステップＳ２００２に進む。ステップＳ２００２では、IrisClutchStatusをチェックする。オンしている場合は、ステップＳ２００４に進む。ステップＳ２００４では、ＩＲＩＳモードをサーボＩＲＩＳモードに設定する。
【００９５】
IrisMode = ServoIris
そして、本サブルーチンInputIrisModeを終了する。
【００９６】
ステップＳ２００２で、IrisClutchStatusがオフであると判断した場合は、ステップＳ２００３に進む。ステップＳ２００３では、ＩＲＩＳモードをマニュアルＩＲＩＳモードに設定する。
【００９７】
IrisMode = ManualIris
そして本サブルーチンInputIrisModeを終了する。
【００９８】
次に、図２１を用いて、ズーム指令入力用サブルーチンであるInputZoomCommandを説明する。ステップＳ２１０１では、Ａ／Ｄ変換器ｅ７０１から速度指令データであるZoomSpeedAd を入力する。そしてステップＳ２１０２に進む。ステップＳ２１０２では、ズーム指令値作成用サブルーチンであるCalcZoomCommand を呼び出す。そしてステップＳ２１０３に進む。ステップＳ２１０３では、式（１）によりズーム速度指令値ZoomSpeedCommandを算出する。
【００９９】
ZoomSpeedCommand = Kzc × ZoomSpeedAd  ・・・  （１）
ここで、Kzc はＡ／Ｄ変換値をズーム速度指令値に変換するための係数である。そして本サブルーチンInputZoomCommandを終了する。
【０１００】
次に、図２２を用いて、ズーム指令値作成用サブルーチンであるCalcZoomCommand を説明する。ここでは、Ａ／Ｄ変換器ｅ７０１を８ビットとして説明をする。ステップＳ２２０１では、式（２）を用いて速度指令のオフセット演算を行う。
【０１０１】
ZoomSpeedAd = ZoomSpeedAd−127  ・・・  （２）
そしてステップＳ２２０２に進む。
【０１０２】
ステップＳ２２０２では、ZoomSpeedAd の符号を調べる。ZoomSpeedAd＜0が成立する場合は、ステップＳ２２０６に進む。ステップＳ２２０６では、式（３）を用いて、不感帯領域の作成を行う。
【０１０３】
ZoomSpeedAd = ZoomSpeedAd ＋7  ・・・  （３）
そしてステップＳ２２０７に進む。
【０１０４】
ステップＳ２２０７では、式（３）の結果の符合を調べる。ZoomSpeedAd＞0が成立する場合は、ステップＳ２２０８に進む。ステップＳ２２０８では、不感帯領域を決定するために、ZoomSpeedAd = 0 とする。そして本サブルーチンCalcZoomCommandを終了する。
【０１０５】
ステップＳ２２０７で、ZoomSpeedAd＞0が不成立の場合は、本サブルーチンCalcZoomCommandを終了する。ステップＳ２２０２で ZoomSpeedAd＜0が不成立の場合は、ステップＳ２２０３に進む。ステップＳ２２０３では、式（４）を用いて不感帯領域の作成を行う。
【０１０６】
ZoomSpeedAd = ZoomSpeedAd−7  ・・・  （４）
そしてステップＳ２２０４に進む。
【０１０７】
ステップＳ２２０４では、式（４）の結果の符号を調べる。ZoomSpeedAd＜0が成立する場合は、ステップＳ２２０５に進む。ステップＳ２２０５では、不感帯領域を決定するために、ZoomSpeedAd = 0 とする。そして本サブルーチンCalcZoomCommandを終了する。
【０１０８】
またステップＳ２２０４でZoomSpeedAd＜0が不成立の場合も、本サブルーチンを終了する。
【０１０９】
本サブルーチンCalcZoomCommand の演算結果を図２３に示す。Ａ／Ｄ変換値ZoomSpeedAdが１２０から１３４の場合は、ZoomSpeedAdを０として不感帯を作成することになる。
【０１１０】
次に、図２４を用いて、ＩＲＩＳ指令入力用サブルーチンInputIrisCommandを説明する。ステップ２４０１では、Ａ／Ｄ変換器ｆ８０１からＩＲＩＳ位置指令値であるIrisPositionAdを入力する。そしてステップＳ２４０２に進む。ステップＳ２４０２では、式（５）を用いて、ＩＲＩＳ位置指令値IrisPositionCommandを算出する。
【０１１１】
IrisPositionCommand = Kic × IrisPositionAd  ・・・  （５）
ここで、Kic はＡ／Ｄ変換値をＩＲＩＳ位置指令値に変換するための係数である。そして本サブルーチンInputIrisCommandを終了する。
【０１１２】
次に、図２５を用いて、フォーカス指令入力用サブルーチンを説明する。ステップＳ２５０１では、カウンタｇ９０１からカウンタ値CurFocusCount を入力する。そしてステップＳ２５０２に進む。ステップＳ２５０２では、式（６）を用いて前回のカウンタ値PreFocusCountとの差分を算出する。
【０１１３】
FocusDiffCount = CurFocusCount− PreFocusCount  ・・・  （６）
そしてステップＳ２５０３に進む。
【０１１４】
ステップＳ２５０３では、式（７）を用いてフォーカス速度指令値FocusSpeedCommandを算出する。
【０１１５】
FocusSpeedCommand = Kfc × FocusDiffCount  ・・・  （７）
ここで、Kfc はカウンタ差分値をフォーカス速度指令値に変換するための係数である。
【０１１６】
そしてステップＳ２５０４では、次回の演算処理のために、
PreFocusCount = CurFocusCount
とする。そして本サブルーチンInputFocusCommandを終了する。
【０１１７】
本サブルーチンInputFocusCommandは、タイマ割り込みによる周期的な処理であるため、FocusSpeedCommandは周期的なカウンタ値の差分データとなる。したがって、単位は[pulse/sec] となり、該差分データは速度指令となる。
【０１１８】
次に、図２６を用いて、ズーム位置検出用サブルーチンDetectZoomPositionを説明する。ステップＳ２６０１では、Ａ／Ｄ変換器ａ２０７からズーム位置ZoomPositionAdを入力する。そしてステップＳ２６０２に進む。ステップＳ２６０２では、式（８）を用いてズームレンズユニット１０２の現在位置（ズーム現在位置）CurZoomPosition を算出する。
【０１１９】
CurZoomPosition = Kzf × ZoomPositionAd  ・・・  （８）
ここで、Kzf はＡ／Ｄ変換値をズーム位置に変換するための係数である。そしてステップＳ２６０３に進む。
【０１２０】
ステップＳ２６０３では、式（９）を用いて、ズームレンズユニット１０２の現在速度（ズーム現在速度）を算出する。
【０１２１】
CurZoomSpeed = CurZoomPosition − PreZoomPosition  ・・・  （９）
ここで本サブルーチンDetectZoomPositionは、タイマ割り込み処理による周期的な処理であるため、ズーム位置の差分データは、速度に相当する。そしてステップＳ２６０４に進む。ステップＳ２６０４では、ズーム現在速度CurZoomSpeedの絶対値を式（１０）を用いて算出する。
【０１２２】
AbsCurZoomSpeed = ABS(CurZoomSpeed)  ・・・  （１０）
ここで、ABS(x)は、ｘの値の絶対値を算出する処理である。そしてステップＳ２６０５に進む。
【０１２３】
ステップＳ２６０５では、次回の演算のための準備として、
PreZoomPosition = CurZoomPosition
とする。そしてステップＳ２６０６に進む。
【０１２４】
ステップＳ２６０６では、ズーム現在位置CurZoomPosition を調べて、ズームレンズユニット１０２がワイド端にいるか、テレ端にいるか、どちらの端にもいないかをチェックする。ワイド端にいると判断した場合は、ステップＳ２６０７に進む。テレ端にいると判断した場合は、ステップＳ２６０９に進む。また、どちらの端にもいないと判断した場合は、ステップＳ２６０８に進む。
【０１２５】
ステップＳ２６０７では、ワイド端にいるとして、
ZoomTeleLimitFlag = False  ・・・テレ端にいない
ZoomWideLimitFlag = True   ・・・ワイド端にいる
とする。そして本サブルーチンDetectZoomPositionを終了する。
【０１２６】
ステップＳ２６０９では、テレ端にいるとして、
ZoomTeleLimitFlag = True   ・・・テレ端にいる
ZoomWideLimitFlag = False  ・・・ワイド端にいない
とする。そして本サブルーチンDetectZoomPositionを終了する。
【０１２７】
ステップＳ２６０８では、どちらの端にもいないとして、
ZoomTeleLimitFlag = False  ・・・テレ端にいない
ZoomWideLimitFlag = False  ・・・ワイド端にいない
とする。そして本サブルーチンDetectZoomPositionを終了する。
【０１２８】
次に、図２７を用いて、ＩＲＩＳ位置検出用サブルーチンDetectIrisPositionを説明する。ステップＳ２７０１では、Ａ／Ｄ変換器ｂ３０７からＩＲＩＳ位置IrisPositionAdを入力する。そしてステップＳ２７０２に進む。ステップＳ２７０２では、式（１１）を用いてアイリス１０３の現在位置（ＩＲＩＳ現在位置）CurIrisPosition を算出する。
【０１２９】
CurIrisPosition = Kif × IrisPositionAd  ・・・  （１１）
ここで、Kif はＡ／Ｄ変換値をＩＲＩＳ位置に変換するための係数である。そしてステップＳ２７０３に進む。
【０１３０】
ステップＳ２７０３では、式（１２）を用いてアイリス１０３の現在速度（ＩＲＩＳ現在速度）を算出する。
【０１３１】
CurIrisSpeed = CurIrisPosition − PreIrisPosition  ・・・  （１１）
ここで本サブルーチンDetectIrisPositionはタイマ割り込み処理による周期的な処理であるため、ＩＲＩＳ位置の差分データは、速度に相当する。そしてステップＳ２７０４に進む。ステップＳ２７０４では、次回の演算のための準備として、
PreIrisPosition = CurIrisPosition
とする。そして本サブルーチンDetectIrisPositionを終了する。
【０１３２】
次に、図２８を用いて、エクステンダ倍率検出用サブルーチンDetectExtenderMag を説明する。ステップＳ２８０１では、エクステンダ１０５より倍率CurExtenderMagを入力する。そしてステップＳ２８０２に進む。ステップＳ２８０２では、エクステンダ１０５の倍率変化DiffExtenderMagを、式（１２）を用いて算出する。
【０１３３】
DiffExtenderMag = CurExtenderMag − PreExtenderMag  ・・・  （１２）
そしてステップＳ２８０３に進む。
【０１３４】
ステップＳ２８０３では、次回の演算のための準備として、
PreExtenderMag = CurExtenderMag
とする。そして本サブルーチンDetectExtenderMagを終了する。
【０１３５】
次に、図２９を用いて、ＩＲＩＳ位置制御用サブルーチンIrisPositionControl を説明する。ステップＳ２９０１では、ＩＲＩＳモードをチェックする。ＩＲＩＳモードがマニュアルＩＲＩＳモードの場合（ManualIirs）、制御は行わないため、本サブルーチンIrisPositionControl を終了する。ステップＳ２９０１でＩＲＩＳモードがサーボＩＲＩＳモードの場合（ServoIris ）、ステップＳ２９０２に進む。ステップＳ２９０２では、式（１３）を用いてＩＲＩＳ位置指令値をＤ／Ａ変換用データに変換する。
【０１３６】
IrisPositionDa = Kida × IrisPositionCommand  ・・・  （１３）
ここで、KidaはＩＲＩＳ位置指令値をＤ／Ａ変換器ｂ３０５用のデータに変換するための係数である。そしてステップＳ２９０３に進む。
【０１３７】
ステップＳ２７０３では、式（１３）にて算出したIrisPositionDaをＤ／Ａ変換器ｂ３０５に設定する。そして本サブルーチンIrisPositionControlを終了する。
【０１３８】
次に、図３０を用いて、ズーム速度制御用サブルーチンZoomSpeedControlを説明する。ステップＳ３００１では、ズームモードZoomModeをチェックする。ズームモードZoomModeがマニュアルズームモードの場合(ManualZoom)、ステップＳ３００２に進む。ステップＳ３００２では、ズーム停止指令値に変更するために、ZoomSpeedCommand = 0とする。そしてステップＳ３００３に進む。
【０１３９】
ステップＳ３００１でズームモードZoomModeがサーボズームモード(ServoZoom)と判断した場合は、ステップＳ３００３に進む。ステップＳ３００３では、式（１４）を用いてズーム速度指令値をＤ／Ａ変換用データに変換する。
【０１４０】
ZoomSpeedDa = Kzda * ZoomSpeedCommand  ・・・  （１４）
ここで、Kzdaはズーム速度指令値をＤ／Ａ変換器ａ２０５用のデータに変換するための係数である。そしてステップＳ３０４に進む。
【０１４１】
ステップＳ３００４では、Ｄ／Ａ変換器ａ２０５用データZoomSpeedDaの符号を調べる。ZoomSpeedDa＞0 の場合は、テレ方向への駆動指令値であるとして、ステップＳ３００５に進む。ステップＳ３００５では、テレ端フラグZoomTeleLimitFlag を調べる。テレ端フラグZoomTeleLimitFlag = Trueの場合は、ズーム位置がテレ端であるとして、ステップＳ３００６に進む。ステップＳ３００６では、ズーム停止指令に変更するために、ZoomSpeedDa = 0 とする。そしてステップＳ３００９に進む。
【０１４２】
ステップＳ３００９では、Ｄ／Ａ変換器用ズーム速度指令値ZoomSpeedDa をＤ／Ａ変換器ａ２０５にセットする。そして本サブルーチンZoomSpeedControlを終了する。
【０１４３】
ステップＳ３００５でZoomTeleLimitFlag = False の場合は、ズーム位置がテレ端ではないので、ステップＳ３００９に進む。また、ステップＳ３００４で、ZoomSpeedDa ≦0 と判断した場合は、停止命令を含めてワイド方向への駆動指令値として、ステップＳ３００７に進む。
【０１４４】
ステップＳ３００７では、ワイド端フラグZoomWideLimitFlag を調べる。ワイド端フラグZoomWideLimitFlag = Trueの場合は、ズーム位置がワイド端であるして、ステップＳ３００８に進む。ステップＳ３００８では、ズーム停止命令に変更するために、ZoomSpeedDa = 0 とする。そしてステップＳ３００９に進む。
【０１４５】
ステップＳ３００７で、ZoomWideLimitFlag = False の場合、ズーム位置がワイド端ではないので、ステップＳ３００９に進む。
【０１４６】
次に、図３１を用いて、フォーカス制御用サブルーチンFocusControlを説明する。ステップＳ３１０１では、フォーカスモードFocusModeをチェックする。フォーカスモードFocusModeがオートフォーカスモード(AutoFocus )の場合は、ステップＳ３１０７に進む。ステップＳ３１０７では、ズーム速度依存型ズーム連動処理用サブルーチンFocusDependZoomSpeedを呼び出す。そして本サブルーチンFocusControlを終了する。
【０１４７】
ステップＳ３１０１で、フォーカスモード(FocusMode)がフォーカスマニュアルモード(FocusManual)と判断した場合は、ステップＳ３１０２に進む。ステップＳ３１０２では、式（１５）を用いてフォーカスレンズユニット１０４を駆動するためのパルスモータ４０１の駆動周波数を、フォーカス速度指令FocusSpeedCommand を元に算出する。
【０１４８】
FocusSpeedFreq = Kfct ×ABS(FocusSpeedCommand)  ・・・  （１５）
ここでABS(x)は、ｘの値の絶対値を算出する処理とし、また、Kfctは速度指令値をフォーカスコントローラｃ４０３用の周波数データに変換するための係数である。そしてステップＳ３１０３に進む。
【０１４９】
ステップＳ３１０３では、フォーカス速度指令 FocusSpeedCommandの符号を調べる。FocusSpeedCommand＞0の場合は、ＭＯＤ方向に駆動するものとして、ステップＳ３１０５に進む。ステップＳ３１０５では、ＭＯＤ方向に駆動するために、ズーム現在位置CurZoomPositionに依存した至近端位置を停止目標位置FocusTargetPos にセットする。そしてステップＳ３１０６に進む。
【０１５０】
ステップＳ３１０６では、駆動周波数FocusSpeedFreqおよび停止目標位置FocusTargetPosをコントローラｃ４０３にセットする。そしてステップＳ３１０８に進む。
【０１５１】
ステップＳ３１０８では、ズーム現在位置CurZoomPositionとフォーカスレンズユニット１０４の現在位置（フォーカス現在位置）CurZoomPosition とに基づいてトラッキングカーブテーブルより、現在のトラッキングカーブ番号を算出し、TrackingCurveNoに設定する。そして本サブルーチンFocusControlを終了する。
【０１５２】
また、ステップＳ３１０３で、FocusSpeedCommand ≦0 の場合、停止命令を含めてＩＮＦ方向に駆動するために、ステップＳ３１０４に進む。
【０１５３】
ステップＳ３１０４では、ＩＮＦ方向にフォーカスレンズユニット１０４を駆動するために、ズーム現在位置CurZoomPositionに依存した無限端位置をFocusTargetPos にセットする。そしてステップＳ３１０６に進む。
【０１５４】
次に、図３２を用いて、ＡＦ制御用サブルーチンであるAutoFocusControlを説明する。本実施例では、前述したように、いわゆるコントラスト検出（テレビＡＦ）方式によるＡＦ評価値がより高くなる位置をフォーカスレンズユニット１０４をウォブリングさせることによって探索していくＡＦ制御を行う。
【０１５５】
ステップＳ３２０１では、フォーカスレンズユニット１０４のウォブリング開始位置を記憶するために、フォーカス現在位置CurFocusPositionをウォブリング開始位置WobStartPos にセットする。そしてステップＳ３２０２に進む。
【０１５６】
ステップＳ３２０２では、現在のＡＦ評価値をＡＦ評価値生成部１１４から読み込み、CurAfValueにセットする。そしてステップＳ３２０３に進む。
【０１５７】
ステップＳ３２０３では、ウォブリングによってフォーカスレンズユニット１０４を無限側に移動させたときのＡＦ評価値をＡＦ評価値生成部１１４から読み込み、FarAfValueにセットする。そしてステップＳ３２０４に進む。
【０１５８】
ステップＳ３２０４では、ウォブリングによってフォーカスレンズユニット１０４を至近側に移動させたときのＡＦ評価値をＡＦ評価値生成部１１４から読み込み、NearAfValue にセットする。そしてステップＳ３２０５に進む。
【０１５９】
ステップＳ３２０５では、ウォブリングを終了するために、リアフォーカスレンズユニット１０４をウォブリング開始位置WobStartPos に戻す。そしてステップＳ３２０６に進む。
【０１６０】
ステップＳ３２０６では、ウォブリングによって得られたＡＦ評価値とステップＳ３２０２で読み込んだＡＦ評価値とを相互に比較して、よりＡＦ評価値が高い方向にフォーカスレンズユニット１０４を移動するため、サブルーチンAfPeakDirControlを呼び出す。そして本サブルーチンAutoFocusControlを終了する。
【０１６１】
次に、図３３を用いて、ＡＦ評価値処理用サブルーチンAfPeakDirControlを説明する。ステップＳ３３０１では、ウォブリング開始前のＡＦ評価値CurAfValue（ステップＳ３２０２で読み込んだＡＦ評価値）と無限側ウォブリング時のＡＦ評価値FarAfValueとを比較する。CurAfValue ＞ FarAfValueが成立しない場合は、非合焦状態であると判断して、ステップＳ３３０３に進む。
【０１６２】
ステップＳ３３０３では、至近側ウォブリング時のＡＦ評価値NearAfValue と無限側ウォブリング時の移動のＡＦ評価値FarAfValueとを比較する。NearAfValue＞FarAfValue が成立した場合、至近側に所定量、フォーカスレンズユニット１０４を移動させる。そしてステップＳ３３０６に進む。
【０１６３】
ステップＳ３３０６では、ズーム現在位置CurZoomPositionとフォーカス現在位置CurFocusPosition に基づいて、トラッキングカーブテーブルより現在のトラッキングカーブ番号を算出し、TrackingCurveNo に設定する。そして本サブルーチンAfPeakDirControlを終了する。
【０１６４】
またステップＳ３３０３で、NearAfValue＞ FarAfValueが成立しない場合は、ステップＳ３３０４に進む。
【０１６５】
ステップＳ３３０４では、無限側に所定量、フォーカスレンズユニット１０４を移動させる。そしてステップＳ３３０６に進む。
【０１６６】
またステップＳ３３０１でCurAfValue＞FarAfValueが成立した場合は、ステップＳ３３０２に進む。
【０１６７】
ステップＳ３３０２では、ウォブリング開始前のＡＦ評価値CurAfValueと至近側ウォブリング時のＡＦ評価値NearAfValue とを比較する。CurAfValue＞NearAfValue が成立しない場合は、非合焦であると判断できるので、ステップＳ３３０３に進む。
【０１６８】
また、ステップＳ３３０２で、CurAfValue＞NearAfValue が成立した場合は、合焦状態であると判断できるため、ステップＳ３３０７に進む。
【０１６９】
ステップＳ３３０７では、ズーム連動制御用の基準値の更新を行う。なお、このステップは、本実施例と後述する実施例２とで共通して行われる。すなわち、
InterlockingZoomStdSpeed = InterlockingZoomSpeedStd * CurAfValue / AfValueStd
AfZoomStdSpeed = AfZoomSpeedStd * CurAfValue / AfValueStd
UpperFtStdAfValue  = CurAfValue* 1.2
UpperZilStdAfValue = CurAfValue * 1.0
LowZilStdAfValue   = CurAfValue * 0.8
のように基準値を更新する。そしてステップＳ３３０６に進む。
【０１７０】
ここで、基準速度InterlockingZoomStdSpeedおよびAfZoomStdSpeedを上記のように更新することにより、これら基準速度は、現在のＡＦ評価値に応じて変更されることになる。これにより、現在得られているＡＦ評価値に対して最適な、つまりはズーム速度や被写体の変化に対応した基準速度の設定を行うことができる。また、基準値UpperFtStdAfValue，UpperZilStdAfValue，LowZilStdAfValueの更新についても同様である。 
【０１７１】
なお、CurAfValueのそれぞれの乗算係数である1.2、1.0、0.8 は、この値でなく、他の値であってもよく、またこれらの値をズームレンズユニット１０２の位置、すなわち焦点距離によって変えることも可能である。
【０１７２】
次に、図３４を用いて、ズーム速度依存型フォーカス制御用サブルーチンFocusDependZoomSpeedを説明する。ステップＳ３４０１では、現在のズームレンズユニット１０２の速度（ズーム現在速度）AbsCurZoomSpeed が基準速度（第１の速度）AfZoomStdSpeed 以下か否かを調べる。AbsCurZoomSpeed ≦ AfZoomStdSpeedが成立した場合は、ステップＳ３４０４に進む。
【０１７３】
ステップＳ３４０４では、ＡＦ制御を実行するためにサブルーチンAutoFocusControlを呼び出す。そして本サブルーチンFocusDependZoomSpeedを修了する。
【０１７４】
またステップＳ３４０１で、AbsCurZoomSpeed ≦ AfZoomStdSpeed が成立しない場合は、ズーム現在速度は基準速度AfZoomStdSpeedより高速で移動しているため、ステップＳ３４０２に進む。
【０１７５】
ステップＳ３４０２では、ズーム現在速度AbsCurZoomSpeedが基準速度（第２の速度）InterlockZoomStdSpeedより高速か否かを調べる。AbsCurZoomSpeed＞InterlockZoomStdSpeed が成立した場合は、ステップＳ３４０３に進む。
【０１７６】
ステップＳ３４０３では、トラッキングカーブ固定制御を行うためにサブルーチンFixedTrackingCurveを呼び出す。そして本サブルーチンFocusDependZoomSpeedを終了する。
【０１７７】
また、ステップＳ３４０２で、AbsCurZoomSpeed ≦ InterlockZoomStdSpeedが成立しない場合は、ズーム現在速度が、基準速度（第１の速度）AfZoomStdSpeedより高速で、かつ基準速度（第２の速度）InterlockZoomStdSpeed 以下であるので、ステップＳ３４０５に進む。
【０１７８】
ステップＳ３４０５では、ズーム連動制御を行うため、サブルーチンInterlockingZoomを呼び出す。そして本サブルーチンFocusDependZoomSpeedを終了する。
【０１７９】
図３９には、これらズーム速度に依存したフォーカス制御方法の切り換えを概念的に示している。すなわち、変倍に伴う像面変動補正制御において、ズーム速度が基準速度AfZoomStdSpeed以下の領域はＡＦ制御を行う領域であり、 ズーム速度が基準速度AfZoomStdSpeedより高速で基準速度InterlockZoomStdSpeed以下の領域はズーム連動制御を行う領域であり、ズーム速度が基準速度InterlockZoomStdSpeed より高速の領域はトラッキングカーブを固定する領域である。
【０１８０】
なお、基準速度InterlockZoomStdSpeedが固定であると、ズーム速度が該基準速度InterlockZoomStdSpeed付近であるときに、トラッキングカーブ固定制御の場合とズーム連動制御の場合を頻繁に移動する可能性がある。これを防ぐには、例えば、図４４に示すように、トラッキングカーブ固定制御とズーム連動制御との間の切り換え基準速度にヒステリシスをもたせるようにすればよい。すなわち、ズーム速度が遅いほうから速いほうに変化する場合の基準速度をUpperIntrelockingZoomStdSpeed とし、ズーム速度が速いほうから遅いほうに変化する場合の基準速度をLowerInterlockingZoomStdSpeed とする。なお、この場合、UpperIntrelockingZoomStdSpeedおよびLowerInterlockingZoomStdSpeedのそれぞれが請求の範囲にいう「第２の速度」に相当する。
【０１８１】
同じように、ズーム連動制御とＡＦ制御との間の切り換え基準速度AfZoomStdSpeedにもヒステリシスを持たせることも可能である。すなわち、ズーム速度が遅い方から速い方へ変化する場合の基準速度をUpperAfZoomStdSpeed とし、ズーム速度が速い方から遅い方へ変化する場合の基準速度をLowerAfZoomSpeedとすればよい。なお、この場合、UpperAfZoomStdSpeed およびLowerAfZoomSpeedのそれぞれが請求の範囲にいう「第１の速度」又は「速度」に相当する。
【０１８２】
次に、図３５を用いて、トラッキングカーブ番号固定によるフォーカス移動処理用サブルーチンFixedTrackingCurveを説明する。ステップ３５０１では、ズーム現在位置CurZoomPositionに依存したフォーカス位置データTrackingFocusPositionを現在のトラッキングカーブ番号TrackingCurveNo に基づいて、メモリ１２２に格納されているトラッキングカーブテーブルから読み込む。そしてステップＳ３５０２に進む。
【０１８３】
ステップＳ３５０２では、フォーカスレンズユニット１０４を駆動するために、フォーカス現在位置CurFocusPositionと目標駆動位置であるTrackingFocusPosition との差分距離、すなわち移動距離に応じた駆動周波数と位置情報TarckingFocusPosition をフォーカスコントローラｃ４０３にセットする。そして本サブルーチンFixedTrackingCurveを終了する。
【０１８４】
次に、図３６を用いて、ズーム連動制御用サブルーチンInterlockingZoomを説明する。ステップＳ３６０１では、ズームレンズユニット１０２の移動に伴ってフォーカスレンズユニット１０４を駆動するために、サブルーチンFixedTrackingCurveを呼び出す。そしてステップＳ３６０１に進む。
【０１８５】
ステップＳ３６０２では、フォーカスレンズユニット１０４の移動後のＡＦ評価値をＡＦ評価値生成部１１４から入力し、CurInterlockingAfValueにセットする。そしてステップＳ３６０３に進む。ステップＳ３６０３では、式（１６）によりＡＦ評価値の変化量を算出する。
【０１８６】
DiffInterlockingAfValue = 
CurInterlockingAfValue − PreInterlockingAfValue  ・・・  （１６）
そしてステップＳ３６０４に進む。
【０１８７】
ステップＳ３６０４では、式（１７）によりＡＦ評価値の変化量の絶対値を算出する。
【０１８８】
AbsDiffInterlockingAfValue = ABS(DiffInterlockingAfValue)  ・・・（１７）
ここでABS(x)は、ｘの値の絶対値を算出する処理である。そしてステップＳ３６０５に進む。
【０１８９】
ステップＳ３６０５では、今回と前回のＡＦ評価値の差分絶対値AbsDiffInterlockingAfValueとＡＦ評価値の差分データ用基準値DiffZilStdAfValueとを比較する。AbsDiffInterlockingAfValue＞DiffZilStdAfValueが成立した場合は、ステップＳ３６０６に進む。
【０１９０】
ステップＳ３６０６では、使用するトラッキングカーブを変更するためにサブルーチンJudgeInterlockingZoomを呼び出す。そしてステップＳ３６０７に進む。
【０１９１】
ステップＳ３６０７では、次回の演算処理のために、
PreInterlockingAfValue = CurInterlockingAfValue
とする。そして本サブルーチンInterlockingZoomを終了する。
【０１９２】
またステップＳ３６０５で、AbsDiffInterlockingAfValue＞DiffZilStdAfValue が成立しない場合は、そのままステップＳ３６０７に進む。
【０１９３】
次に、図３７を用いて、ズーム連動制御用カーブ番号処理サブルーチンJudgeInterlockingZoom を説明する。
【０１９４】
ステップＳ３７０１では、今回と前回のＡＦ評価値の差分値DiffInterlockingAfValueの符号を調べる。DiffInterlockingAfValue＞0 が成立した場合は、前回のトラッキングカーブ番号の変更方向と同じ方向にトラッキングカーブ番号を変更するため、すなわち、前回のトラッキングカーブ変更に際してトラッキングカーブ番号が増える方向に変更した場合は、今回も増える方向に変更し、前回のトラッキングカーブ変更に際してトラッキングカーブ番号が減る方向に変更した場合は、今回も減る方向に変更するため、ステップＳ３７０３に進む。
【０１９５】
ステップＳ３７０３では、式（１８）によりトラッキングカーブ番号を算出する。
【０１９６】
TrackingCurveNo =
TrackingCurveNo ＋SignTrackingCurveCalc ×TrackingCurveWidth  ・・・（１８）
ここでトラッキングカーブ番号の変化幅TrackingCurveWidthは、今回と前回のＡＦ評価値の差分値DiffInterlockingAfValue の大きさに依存して変化させてもよい。このような依存関係を持たせることにより、トラッキングカーブ番号の変更がスムースになり、よりコントラストの高い方向へ素早く変更できるようになる。そしてステップＳ３７０４に進む。
【０１９７】
ステップＳ３７０４では、トラッキングカーブ番号の制限を行うために、サブルーチンCheckTrackingCurveNoLimitを呼び出す。そして本サブルーチンJudgeInterlockingZoomを終了する。
【０１９８】
また、ステップＳ３７０１で、DiffInterlockingAfValue＞0が成立しなかった場合は、ステップＳ３７０２に進む。
【０１９９】
ステップＳ３７０２では、前回のトラッキングカーブ番号の変更方向と逆方向にトラッキングカーブを変更するため、すなわち前回のトラッキングカーブ変更に際してトラッキングカーブ番号が増える方向に変更した場合は、今回は減る方向に変更し、前回のトラッキングカーブ変更に際してトラッキングカーブ番号が減る方向に変更した場合は、今回は増える方向に変更するため、式（１９）により演算用符号データSignTrackingCurveCalc の符号を反転させる。反転した演算用符号データSignTrackingCurveCalcは、ＣＰＵ１２０内のメモリ又はメモリ１２２に記憶する（更新する）。
【０２００】
SignTrackingCurveCalc = SignTrackingCurveCalc × (-1)  ・・・  （１９）
そしてステップＳ３７０３に進む。
【０２０１】
次に、図３８を用いて、トラッキングカーブ番号制限用サブルーチンCheckTrackingCurveNoLimit を説明する。ステップＳ３８０１では、下限番号のチェックを行う。TrackingCurveNo ＜1 が成立した場合は、番号の下限設定を行うために、ステップＳ３８０３に進む。ステップＳ３８０３では、番号の下限値をセットする。
【０２０２】
TrackingCurveNo = 1  ・・・  下限値の設定
そして本サブルーチンCheckTrackingCurveNoLimitを終了する。
【０２０３】
また、ステップＳ３８０１で、TrackingCurveNo＜1が成立しない場合は、上限値を調べるために、ステップＳ３８０２に進む。ステップＳ３８０２では、上限番号のチェックを行う。TrackingCurveNo＞Nが成立した場合、番号の上限設定を行うために、ステップＳ３８００４に進む。ステップＳ３８０４では、番号の上限値をセットする。
【０２０４】
TrackingCurveNo = N  ・・・  上限値の設定
そして本サブルーチンCheckTrackingCurveNoLimitを終了する。
【０２０５】
また、ステップＳ３８０２で、TrackingCurveNo＞ N が成立しなかった場合、トラッキングカーブ番号が有効データであると判断され、本サブルーチンCheckTrackingCurveNoLimitを終了する。
【０２０６】
次に、図４０を用いて、メイン処理用ルーチンMainを説明する。ステップＳ４００１では、システムの初期化をするために、サブルーチンInitSystemを呼び出す。そしてステップＳ４００２に進む。ステップＳ４００２では、ズームレンズユニット１０２の制御を行うためのサブルーチンZoomSpeedControlを呼び出す。そしてステップＳ４００３に進む。ステップＳ４００３では、フォーカスレンズユニット１０４の制御を行うためのサブルーチンFocusControlを呼び出す。そしてステップＳ４００４に進む。
【０２０７】
ステップＳ４００４では、アイリス１０３の制御を行うためのサブルーチンIrisPositionControl を呼び出す。そしてステップＳ４００２へ戻る。このとき、ステップＳ４００２からステップＳ４００４を繰り返し実行中にタイマ１２１から周期的にタイマ割り込みが入り、タイマ割り込み処理ルーチンであるTimerInterruputが実行される。
【０２０８】
以上説明したように、本実施例によれば、ズーム速度が第１の速度より低速である場合には、トラッキングカーブを用いる場合よりもズーム追従性は低いが像面維持性能は高いＡＦ制御を行い、ズーム速度が第１の速度より高速である場合（第２の速度より低速の場合）は、ＡＦ制御に比べてズーム追従性の高いトラッキングカーブを用いた像面補正制御であって、ＡＦ評価値に応じてトラッキングカーブを変更するズーム連動制御を行う。このため、マニュアルズームで常用される低速から高速までのズーム速度領域で、良好な像面維持性能を確保することができる。
【０２０９】
そして、このような常用ズーム速度よりも速い超高速ズームの場合（第２の速度よりも高速の場合）は、ＡＦ評価値の取得が困難になってくるので、トラッキングカーブを特定のものに固定してフォーカスレンズユニットの制御を行うことにより、大ぼけ状態を回避できる程度の像面変動補正を行うことができる。
【実施例２】
【０２１０】
上記実施例１では、ズーム速度の基準速度に対する高低に基づく、すなわちズーム速度依存型の像面変動補正制御を行う場合について説明したが、ＡＦ評価値に基づく像面変動補正制御も有効である。
【０２１１】
図４１を用いて、ＡＦ評価値依存型フォーカス制御用サブルーチンFocusDependAfValueを説明する。このサブルーチンは、実施例１の図３１におけるステップＳ３１０７で呼び出されるサブルーチンFocusDependZoomSpeedの変わりに呼び出される処理である。
【０２１２】
ステップＳ４１０１では、現在のＡＦ評価値をＡＦ評価値生成部１１４から入力し、CurInterlockingAfValueにセットする。そしてステップＳ４１０２に進む。
【０２１３】
ステップＳ４１０２では、ＡＦ制御とズーム連動制御とを切り換えるためのＡＦ評価値の基準値（第１の値）LowerZilStdAfValueと現在のＡＦ評価値CurInterlockingAfValueとを比較する。LowerZilStdAfValue＞ CurInterlockingAfValue が成立した場合は、ステップＳ４１０５に進む。
【０２１４】
ステップＳ４１０５では、ＡＦ制御をするためにサブルーチンAutoFocusControl（図３２）を呼び出す。そして本サブルーチンFocusDependAfValueを終了する。
【０２１５】
またステップＳ４１０２で、LowerZilStdAfValue＞CurInterlockingAfValueが成立しない場合は、ステップＳ４１０３に進む。
【０２１６】
ステップＳ４１０３では、ズーム連動制御とトラッキングカーブ固定制御との切り換え基準値（第２の値）UpperZilStdAfvalueと現在のＡＦ評価値CurInterlockingAfValueとを比較する。UpperZilStdAfValue＞CurInterlockingAfValueが成立した場合は、ズーム連動制御を行うため、ステップＳ４１０６に進む。
【０２１７】
ステップＳ４１０６では、ズーム連動処理用サブルーチンInterlockingZoom（図３６）を呼び出す。そして本サブルーチンFocusDependAfValueを終了する。
【０２１８】
またステップＳ４１０３で、UpperZilStdAfValue＞CurInterlockingAfValueが成立しない場合は、ステップＳ４１０４に進む。
【０２１９】
ステップＳ４１０４では、トラッキングカーブ固定制御とＡＦ制御との切り換え基準値（第３の値）UpperFtStdAfValueと現在のＡＦ評価値CurInterlockingAfValue とを比較する。UpperFtStdAfValue＞CurInterlockingStdAfValueが成立した場合は、トラッキングカーブ固定制御を行うためにステップＳ４１０７に進む。
【０２２０】
ステップＳ４１０７では、トラッキングカーブ固定処理用サブルーチンFixedTrackingCurve（図３５）を呼び出す。そして本サブルーチンFocusDependAfValueを終了する。
【０２２１】
またステップＳ４１０４で、UpperFtStdAfValue＞CurInterlockingStdAfValueが成立しない場合は、ＡＦ制御を行うため、ステップＳ４１０８に進む。
【０２２２】
ステップＳ４１０８では、ＡＦ制御用サブルーチンAutoFocusControl（図３６）を呼び出す。そして本サブルーチンFocusDependAfValueを終了する。
【０２２３】
図４２は、これらＡＦ評価値に依存した像面変動補正制御の切り換えを概念的に示している。すなわち、ＡＦ評価値が基準値LowerZilStdAfValueより小さい領域および基準値UpperFtStdAfValue以上である領域はＡＦ制御を行う領域であり、ＡＦ評価値が基準値LowerZilStdAfValue以上で、かつ基準値UpperZilStdAfValue より小さい領域はズーム連動制御を行う領域であり、ＡＦ評価値が基準値UpperZilStdAfValue以上で、かつ基準値UpperFtStdAfValue より小さい領域は、トラッキングカーブ固定制御を行う領域である。
【０２２４】
なお、ＡＦ評価値用基準値LowerZilStdAfValue、UpperZilStdAfValue、UpperFtStdAfValue が固定であると、ＡＦ評価値生成部１１４からのＡＦ評価値が各基準値の近傍であるときに、ＡＦ制御、トラッキングカーブ固定制御、ズーム連動制御が頻繁に切り換わる可能性がある。これを防ぐには、図４５に示すようにそれぞれの基準値にヒステリシスをもたせるようにすればよい。このようにヒステリシスを持った基準値も、請求の範囲にいう「第１〜第３の値」に相当する。
【０２２５】
さらに、これらの基準値をズーム速度に依存させて変化させてもよい。一般に、ズーム速度が速くなるほど、ＡＦ評価値生成部１１４から得られるＡＦ評価値は小さくなる。そこで、図４３に示すように、ズーム速度に依存させて各基準値をリニアに変化させることも有効な手段となる。また、リニアに変化させるだけでなく、他の曲線（２次関数や３次関数など）やズーム速度に依存したデータテーブルを用意してもよい。
【０２２６】
以上説明したように、本実施例によれば、得られたＡＦ評価値に応じた最適な像面変動補正制御を行うことができるので、ズーム速度を犠牲にすることなく、さらに被写体の変化にかかわらず良好な像面維持性能を得ることができる。
【０２２７】
なお、上記各実施例において、Ａ／Ｄ変換器やＤ／Ａ変換器からの出力のビット数が１６ビットや８ビットである場合について説明したが、これら以外のビット数でもかまわない。
【０２２８】
また、実施例１中に示した基準速度や基準値は例にすぎず、他の値であってもかまわない。
【０２２９】
さらに、フォーカスレンズユニットは、いわゆるコンペンセータの機能を有していてもかまわない。
【０２３０】
また、上記各実施例では、トラッキングカーブを使用したフォーカスレンズユニットの制御を行う場合に、ズームレンズユニットの移動速度又はＡＦ評価値に応じてズーム連動制御とトラッキングカーブ固定制御とを切り換えるようにしたが、ズーム連動制御のみを行ってもよいし、トラッキングカーブ固定制御のみを行うようにしてもよい。
【０２３１】
また、上記各実施例では、ＡＦ評価値を用いてレンズ装置（撮影光学系）の焦点状態を検出する場合について説明したが、本発明における焦点状態の検出方法はこれに限らない。例えば、撮影光学系を通る光束の一部を分割して形成された複数の像のずれを利用して焦点状態を検出する手段を用いることもできる。
【０２３２】
さらに、上記実施例では、レンズ装置とドライブユニットによりレンズシステムが構成される場合について説明するが、本発明は、ドライブユニットの機能が内蔵されたタイプのレンズ装置（いわゆる大玉レンズ等）にも適用することができる。
【図面の簡単な説明】
【０２３３】
【図１】本発明の実施例１である撮影システムの構成を示すブロック図。
【図２】実施例１の撮影システムを構成するドライブユニットのズーム駆動部の構成を示すブロック図。
【図３】実施例１のドライブユニットのＩＲＩＳ駆動部の構成を示すブロック図。
【図４】実施例１のドライブユニットのフォーカス駆動部の構成を示すブロック図。
【図５】実施例１のドライブユニットのエクステンダ操作部の構成を示すブロック図。
【図６】実施例１のドライブユニットのフォーカスモードスイッチ部の構成を示すブロック図。
【図７】実施例１のドライブユニットのズームスイッチ部の構成を示すブロック図。
【図８】実施例１のドライブユニットのＩＲＩＳスイッチ部の構成を示すブロック図。
【図９】実施例１のドライブユニットのフォーカス電子リング部の構成を示すブロック図。
【図１０】（ａ），（ｂ）はフォーカス電子リング部のパルスカウントの様子を示す概略図。
【図１１】実施例１のドライブユニットに記憶されるトラッキングカーブを示す概略図。
【図１２】実施例１のドライブユニット（ＣＰＵ）の初期化処理を示すフローチャート。
【図１３】ＣＰＵのレンズ情報の初期化処理を示すフローチャート。
【図１４】ＣＰＵのタイマ割り込み処理を示すフローチャート。
【図１５】ＣＰＵのレンズモード入力処理を示すフローチャート。
【図１６】ＣＰＵのレンズ位置入力処理を示すフローチャート。
【図１７】ＣＰＵのレンズ指令入力処理を示すフローチャート。
【図１８】ＣＰＵのフォーカスモード入力処理を示すフローチャート。
【図１９】ＣＰＵのズームモード入力処理を示すフローチャート。
【図２０】ＣＰＵのＩＲＩＳモード入力処理を示すフローチャート。
【図２１】ＣＰＵのズーム指令値入力処理を示すフローチャート。
【図２２】ＣＰＵのズーム指令作成演算処理を示すフローチャート。
【図２３】ＣＰＵのズームしれ位置変換処理を示すフローチャート。
【図２４】ＣＰＵのＩＲＩＳ指令値入力処理を示すフローチャート。
【図２５】ＣＰＵのフォーカス指令値入力処理を示すフローチャート。
【図２６】ＣＰＵのズーム位置算出処理を示すフローチャート。
【図２７】ＣＰＵのＩＲＩＳ位置検出処理を示すフローチャート。
【図２８】ＣＰＵのエクステンダ倍率検出処理を示すフローチャート。
【図２９】ＣＰＵのＩＲＩＳ位置制御処理を示すフローチャート。
【図３０】ＣＰＵのズーム速度制御処理を示すフローチャート。
【図３１】ＣＰＵのフォーカス制御処理を示すフローチャート。
【図３２】ＣＰＵのＡＦ制御処理を示すフローチャート。
【図３３】ＣＰＵのＡＦ評価値レンズ駆動処理を示すフローチャート。
【図３４】ＣＰＵのズーム速度依存型フォーカス制御処理を示すフローチャート。
【図３５】ＣＰＵのトラッキングカーブによるフォーカス駆動処理を示すフローチャート。
【図３６】ＣＰＵのフォーカスレンズユニットのズーム連動処理を示すフローチャート。
【図３７】ＣＰＵのズーム連動用トラッキングカーブ番号処理を示すフローチャート。
【図３８】ＣＰＵのトラッキングカーブ番号制限処理を示すフローチャート。
【図３９】ズーム速度依存型フォーカス制御の概要を示す図。
【図４０】ＣＰＵのメイン処理を示すフローチャート。
【図４１】本発明の実施例２であるドライブユニット（ＣＰＵ）のＡＦ評価値依存型フォーカス制御処理を示すフローチャート。
【図４２】ＡＦ評価値依存型フォーカス制御の概要を示す図。
【図４３】実施例２において、基準ＡＦ評価値のズーム速度依存の例を示す図。
【図４４】実施例１において、基準ズーム速度にヒステリシスを設けた例を示す図。
【図４５】実施例２において、基準ＡＦ評価値にヒステリシスを設けた例を示す図。
【符号の説明】
【０２３４】
１  ズームレンズ装置
２  ドライブユニット
３  撮影装置
１０２  ズーム（変倍）レンズユニット
１０４  フォーカスレンズユニット
１０６  撮像素子
１２０  ＣＰＵ
【図１】
2005326771.tif 000003
【図２】
2005326771.tif 000004
【図３】
2005326771.tif 000005
【図４】
2005326771.tif 000006
【図５】
2005326771.tif 000007
【図６】
2005326771.tif 000008
【図７】
2005326771.tif 000009
【図８】
2005326771.tif 000010
【図９】
2005326771.tif 000011
【図１０】
2005326771.tif 000012
【図１１】
2005326771.tif 000013
【図１２】
2005326771.tif 000014
【図１３】
2005326771.tif 000015
【図１４】
2005326771.tif 000016
【図１５】
2005326771.tif 000017
【図１６】
2005326771.tif 000018
【図１７】
2005326771.tif 000019
【図１８】
2005326771.tif 000020
【図１９】
2005326771.tif 000021
【図２０】
2005326771.tif 000022
【図２１】
2005326771.tif 000023
【図２２】
2005326771.tif 000024
【図２３】
2005326771.tif 000025
【図２４】
2005326771.tif 000026
【図２５】
2005326771.tif 000027
【図２６】
2005326771.tif 000028
【図２７】
2005326771.tif 000029
【図２８】
2005326771.tif 000030
【図２９】
2005326771.tif 000031
【図３０】
2005326771.tif 000032
【図３１】
2005326771.tif 000033
【図３２】
2005326771.tif 000034
【図３３】
2005326771.tif 000035
【図３４】
2005326771.tif 000036
【図３５】
2005326771.tif 000037
【図３６】
2005326771.tif 000038
【図３７】
2005326771.tif 000039
【図３８】
2005326771.tif 000040
【図３９】
2005326771.tif 000041
【図４０】
2005326771.tif 000042
【図４１】
2005326771.tif 000043
【図４２】
2005326771.tif 000044
【図４３】
2005326771.tif 000045
【図４４】
2005326771.tif 000046
【図４５】
2005326771.tif 000047