"光学素子または撮像素子である移動可能な可動素子と、該可動素子を移動させるステッピングモータと、前記ステッピングモータを駆動するための信号であって周期的に信号値が変化する駆動信号を生成する駆動手段と、前記信号値として基準信号値を設定するためのデータおよび該基準信号値を有する前記駆動信号によって前記ステッピングモータを駆動したときの該ステッピングモータの1ステップ駆動ごとの前記可動素子の目標移動量を記憶した記憶手段と、前記基準信号値を有する前記駆動信号により前記ステッピングモータを実際に駆動したときの前記1ステップ駆動ごとの前記可動素子の実移動量を検出する検出手段とを有し、前記駆動手段は、前記目標移動量と前記実移動量とに差があるときは、前記駆動信号の前記信号値を、前記差を小さくするように、前記基準信号値とは異なる信号値に変更することを特徴とする光学機器。前記記憶手段は、前記ステッピングモータの駆動速度および駆動方向ごとに前記データおよび前記目標移動量を記憶しており、前記駆動手段は、前記ステッピングモータを実際に駆動したときの前記駆動速度および前記駆動方向に対応する前記目標移動量と前記実移動量との差に応じて、前記信号値を、前記差を小さくするように、前記基準信号値とは異なる信号値に変更することを特徴とする請求項1に記載の光学機器。前記駆動手段は、前記駆動信号の一周期よりも長く前記ステッピングモータを駆動して前記検出手段により前記可動素子の前記実移動量を検出することを特徴とする請求項1又は2に記載の光学機器。光学素子または撮像素子である移動可能な可動素子と、該可動素子を移動させるステッピングモータとを有する光学機器の制御方法であって、前記ステッピングモータを駆動するための信号であって周期的に信号値が変化する駆動信号を生成する駆動ステップと、前記信号値として基準信号値を設定するためのデータおよび該基準信号値を有する前記駆動信号によって前記ステッピングモータを駆動したときの該ステッピングモータの1ステップ駆動ごとの前記可動素子の目標移動量を用意するステップと、前記基準信号値を有する前記駆動信号により前記ステッピングモータを実際に駆動したときの前記1ステップ駆動ごとの前記可動素子の実移動量を検出するステップとを有し、前記目標移動量と前記実移動量とに差があるときは、前記駆動信号の前記信号値を、前記差を小さくするように、前記基準信号値とは異なる信号値に変更することを特徴とする光学機器の制御方法。光学素子または撮像素子である移動可能な可動素子と、該可動素子を移動させるステッピングモータとを有する光学機器が有するコンピュータに、前記ステッピングモータの制御を実行させる光学機器制御プログラムであって、前記ステッピングモータを駆動するための信号であって周期的に信号値が変化する駆動信号を生成する駆動ステップと、前記信号値として基準信号値を設定するためのデータおよび該基準信号値を有する前記駆動信号によって前記ステッピングモータを駆動したときの該ステッピングモータの1ステップ駆動ごとの前記可動素子の目標移動量を用意するステップと、前記基準信号値を有する前記駆動信号により前記ステッピングモータを実際に駆動したときの前記1ステップ駆動ごとの前記可動素子の実移動量を検出するステップとを有し、前記目標移動量と前記実移動量とに差があるときは、前記駆動信号の前記信号値を、前記差を小さくするように、前記基準信号値とは異なる信号値に変更することを特徴とする光学機器制御プログラム。しかし、特許文献1にて開示されたステッピングモータの閉ループ制御方法でも、ステッピングモータを実際の光学機器に搭載して可動素子の駆動に用いた場合での負荷変動の影響による停止精度の低下や回転むらの発生を回避することまでは考慮されていない。本発明は、ステッピングモータを開ループ制御する場合において、該ステッピングモータを可動素子の駆動に用いた状態での負荷変動の影響による停止精度の低下や回転むらの発生を抑制することができるようにした光学機器を提供する。本発明の一側面としての光学機器は、光学素子または撮像素子である移動可能な可動素子と、該可動素子を移動させるステッピングモータと、ステッピングモータを駆動するための信号であって周期的に信号値が変化する駆動信号を生成する駆動手段と、信号値として基準信号値を設定するためのデータおよび該基準信号値を有する駆動信号によってステッピングモータを駆動したときの該ステッピングモータの1ステップ駆動ごとの可動素子の目標移動量を記憶した記憶手段と、基準信号値を有する駆動信号によりステッピングモータを実際に駆動したときの1ステップ駆動ごとの可動素子の実移動量を検出する検出手段とを有する。そして、駆動手段は、目標移動量と実移動量とに差があるときは、駆動信号の信号値を、上記差を小さくするように、基準信号値とは異なる信号値に変更することを特徴とする。また、本発明の他の一側面としての制御方法制御プログラムは、光学素子または撮像素子である移動可能な可動素子と、該可動素子を移動させるステッピングモータとを有する光学機器に適用される。該制御方法制御プログラムは、ステッピングモータを駆動するための信号であって周期的に信号値が変化する駆動信号を生成する駆動ステップと、信号値として基準信号値を設定するためのデータおよび該基準信号値を有する駆動信号によってステッピングモータを駆動したときの該ステッピングモータの1ステップ駆動ごとの可動素子の目標移動量を用意するステップと、基準信号値を有する駆動信号によりステッピングモータを実際に駆動したときの1ステップ駆動ごとの可動素子の実移動量を検出するステップとを有する。そして、目標移動量と実移動量とに差があるときは、駆動信号の信号値を、上記差を小さくするように、基準信号値とは異なる信号値に変更することを特徴とする。本発明によれば、ステッピングモータの開ループ制御を行いながらも、該ステッピングモータを可動素子の駆動に用いた状態での負荷変動の影響による停止精度の低下や回転むらの発生を効果的に抑制することができる。したがって、可動素子の高精度の位置制御が可能となり、また回転むらに起因する振動や異音の発生を防止することができる。以下、本発明の実施例について図面を参照しながら説明する。図1には、本発明の実施例である光学機器としての撮像装置の構成を示している。被写体側から順に、101はフィールドレンズ、102は変倍レンズとしてのズームレンズ、114は光量を調節する絞りユニット、103はアフォーカルレンズ、104はフォーカスレンズである。これらレンズ101~104と絞りユニット114により、リアフォーカス式の撮影光学系が構成される。116は撮影光学系により形成された被写体像を光電変換するCCDセンサやCMOSセンサ等の光電変換素子としての撮像素子である。ズームレンズ102およびフォーカスレンズ104はそれぞれ、ズームレンズ保持枠105およびフォーカスレンズ保持枠106により保持されている。これらのレンズ保持枠105,106は、不図示のガイド軸によって光軸方向に移動可能に支持されている。ズームレンズ102とこれを保持したズームレンズ保持枠105、およびフォーカスレンズ104とこれを保持したフォーカスレンズ保持枠106はそれぞれ、可動素子に相当する。また、レンズ保持枠105,106にはそれぞれラック105a,106aが取り付けられている。ラック105a,106aはそれぞれ、ステッピングモータ107,108の出力軸であるスクリュー軸107a,108aのスクリュー部に噛み合っている。このため、各ステッピングモータが回転駆動されてスクリュー軸が回転することにより、該スクリュー軸とラックとの噛み合い作用によって、各レンズ保持枠が光軸方向図中の矢印方向に移動される。ステッピングモータ107,108により、ズームレンズ102およびフォーカスレンズ104をそれぞれの目標位置に移動させる場合には、まず撮像装置の起動時に各レンズをその位置制御上の基準位置リセット位置に移動させる。基準位置の検出のために、ズームレンズ用およびフォーカスレンズ用のリセット位置センサ発光部と受光部とが一体となったフォトインタラプタ109,110が設けられている。基準位置に移動してきたレンズ保持枠105,106に設けられた遮光部105b,106bがそれぞれフォトインタラプタ109,110の発光部と受光部との間に入り込む。これにより、ズームレンズ102およびフォーカスレンズ104がリセット位置に位置したことが検出される。なお、遮光部105bは、ズームレンズ102が望遠側のゾーンに位置するか広角側のゾーンに位置するかのゾーン検出を可能とする形状に設定されている。また、遮光部106bは、フォーカスレンズ104が遠距離物体に対して焦点が合うゾーンに位置するか至近物体に対して焦点が合うゾーンに位置するかのゾーン検出を可能とする形状に設定されている。その後、ステッピングモータ駆動回路119,120には、マイクロプロセッサー111からステッピングモータ107,108の駆動を行わせるための指令信号が入力される。指令信号は、ズームレンズ102とフォーカスレンズ104をリセット位置から目標位置に移動させるために必要なステップ数だけステッピングモータ107,108に駆動を行わせるための信号である。各ステッピングモータ駆動回路は、入力された指令信号により指示されたステップ数だけ各ステッピングモータを回転駆動するように、該ステッピングモータに駆動信号ここでは周期的に信号値が変化する2相の電流信号を生成する。駆動信号は、各ステッピングモータのコイルに供給され、これを励磁する。これにより、各ステッピングモータが回転し、各レンズが移動される。マイクロプロセッサー111とステッピングモータ駆動回路119,120により駆動手段が構成される。ズームレンズ保持枠105には、ズームレンズ102の位置を検出するためのズーム位置スケール105cが固定されている。また、図示しないレンズ鏡筒部におけるズーム位置スケール105cと対向する箇所には、ズーム位置センサ130が固定されている。ズーム位置スケール105cには光軸方向に磁気パターン、光反射パターン等のスケールパターンが形成されている。ズーム位置センサ130は、ズームレンズ保持枠105とともに移動するスケール105cに対する位置に応じて、時間軸に対して三角関数の波形を有する検出信号を出力する。このため、ズームレンズ102の位置は、正弦関数または余弦関数の角度に相当する値として算出される。ズーム位置センサ130の出力信号は、後述する制御手段としてのマイクロプロセッサー111に入力され、マイクロプロセッサー111によるズームレンズ102の位置制御に用いられる。同様にフォーカスレンズ保持枠106には、ズームレンズ102の位置を検出するためのフォーカス位置スケール106cが固定されている。また、レンズ鏡筒部におけるフォーカス位置スケール106cと対向する箇所には、フォーカス位置センサ140が固定されている。フォーカス位置スケール106cにも、光軸方向に磁気パターン、光反射パターン等のスケールパターンが形成されている。フォーカス位置センサ140は、フォーカスレンズ保持枠106とともに移動するスケール106cに対する位置に応じて、時間軸に対して三角関数の波形を有する検出信号を出力する。このため、フォーカスレンズ104の位置も、正弦関数または余弦関数の角度に相当する値として算出される。フォーカス位置センサ140の出力信号も、マイクロプロセッサー111に入力され、マイクロプロセッサー111によるフォーカスレンズ104の位置制御に用いられる。絞りユニット114は、絞りアクチュエータ114cと、この絞りアクチュエータ114cにより開閉駆動される絞り羽根114a,114bと、その開閉状態を検出する位置検出素子ホール素子115とを有する。絞りアクチュエータ114cは、絞り駆動回路121により駆動される。撮像素子116による光電変換によって生成された電気信号は、A/D変換器117によってアナログ信号からデジタル撮像信号に変換され、信号処理回路118に入力される。信号処理回路118は、入力されたデジタル撮像信号に対して各種画像処理を施すことにより、映像信号を生成する。映像信号は、記録部150にて記録媒体に記録されたり、不図示の表示部のモニタに表示されたりする。マイクロプロセッサー111は、不図示の電源スイッチ、録画スイッチ、ズームスイッチ等の操作スイッチからの入力に応じて、撮像装置全体の動作の制御を司る。マイクロプロセッサー111に設けられたメモリ記憶部112には、ズームレンズ102のリセット位置に対する望遠側と広角側の位置テレ端およびワイド端が、ズーム位置センサ130によるズームレンズ102の位置データとして記憶用意されている。また、マイクロプロセッサー111は、ステッピングモータ駆動回路119,120を通じてステッピングモータ107,108を駆動することで、撮影光学系の変倍動作や焦点調節動作を行わせる。変倍に伴う像面変動の補正は、いわゆる電子カム方式により、メモリ112に記憶された電子カムデータに従ってステッピングモータ107,108を制御することで行われる。また、マイクロプロセッサー111は、絞り駆動回路121を通じて絞りアクチュエータ114cを駆動することで、撮像素子116によって光電変換される被写体像の明るさを適切に設定する。また、メモリ112には、ステッピングモータ駆動回路119,120がステッピングモータ107,108に供給する駆動信号の信号値電流値として基準信号値を設定するためのデータを記憶している。基準信号値については後述する。さらにメモリ112には、基準信号値を有する駆動信号を供給してステッピングモータ107,108を駆動したときの該ステッピングモータ107,108の1ステップ駆動ごとのズームレンズ102およびフォーカスレンズ104の目標移動量が記憶されている。なお、各ステッピングモータの駆動方式は、マイクロステップ駆動方式、1-2相駆動方式、2-2相駆動方式等、どのようなものであってもよい。また、マイクロプロセッサー111には、ステッピングモータ駆動回路119,120からステッピングモータ107,108に供給する駆動信号の信号値電流値を補正する補正回路113が設けられている。この補正回路113については、後述する。次に、図2および図3を参照して、本実施例においてステッピングモータ107,108として用いる2相PM型ステッピングモータの動作原理について説明する。ここでは、ステッピングモータにおける不図示の2相のコイルをそれぞれA相コイルおよびB相コイルと称する。また、2相PM型ステッピングモータの構造については、一般に知られているため、その説明は省略する。図2には、該ステッピングモータを駆動するための無補正の、すなわちメモリ112に記憶されたデータに基づいて設定される基準電流値基準信号値を有する駆動電流駆動信号の波形を示している。横軸には電気角を、縦軸には電流値を示している。100aはA相コイルに流れる駆動電流の余弦波形を、100bはB相コイルに流れる駆動電流の正弦波形を示している。図中のP0~P14は、A相コイルおよびB相コイルに流れる電流値が互いに異なる励磁ステータスを示している。図3には、2相PM型ステッピングモータのロータであるマグネット100cと、A相コイルおよびB相コイルに電流が供給されることで磁極を発生するA相ステータ100dおよびB相ステータ100eの相対位置関係を示す。2相PM型ステッピングモータでは、マグネット100cは合計10極のN極とS極が周方向に交互に着磁されているただし、図3には8極のみを示す。例えば、1-2相駆動方式でこのステッピングモータを駆動した場合、1ステップ駆動以下、単に1ステップともいうあたりの回転角度は9°となる。また、A相ステータ100dおよびB相ステータ100eは、マグネット100cの外周を包み込むように、かつ同一形状を1周期とした場合に約90°位相をずらして配置されている。A相コイルおよびB相コイルに電流が供給されると、A相ステータ100dおよびB相ステータ100eに磁極が発生し、マグネット100cの磁極と引き合い、磁気力が釣り合う角度でマグネット100cは停止する。図3aは、図2にP2で示す励磁ステータスにおけるマグネット100cとA相ステータ100dとB相ステータ100eとの相対位置関係を示している。図3bは、図2にP6で示す励磁ステータスにおける相対位置関係を、図3cは図2にP10で示す励磁ステータスでの相対位置関係を、図3dは図2にP14で示す励磁ステータスにおける相対位置関係をそれぞれ示している。このように、2相のコイルに、互いに位相差を有しつつ周期的に電流値が変化する駆動電流が供給されることで、マグネット100cが回転し、ステッピングモータが駆動される。図6には、無補正の駆動電流をステッピングモータ108に供給してこれを実際に駆動し、フォーカスレンズ104を移動させたときに、1ステップごとにフォーカス位置センサ140で得られるフォーカスレンズ104の実移動量を示している。横軸に電気角を、縦軸に移動量を示している。なお、図6では、ステッピングモータの電気角と機械角を同時に表現するため、フォーカスレンズ104の移動量を角度で示している。本来は、無補正の駆動電流がステッピングモータ108に供給されたとき、メモリ112に記憶された1ステップごとの目標移動量図6に点線で示すに一致するフォーカスレンズ104の1ステップごとの実移動量が得られるはずである。しかし、ステッピングモータに固有の負荷トルクであるディテントトルクやフォーカスレンズ104を駆動する際の負荷変動の影響を受けて、フォーカスレンズ104の実移動量が目標移動量に対して差を有する。しかも、その差がステップごとに大きく変動する。本実施例は、この差を小さくするように、駆動電流を補正変更する。まず図4のフローチャートには、撮像装置の電源が投入されたときにマイクロプロセッサー111が行う初期動作処理を示す。ここでは、ステッピングモータ108により移動されるフォーカスレンズ104に関する初期動作処理について説明するが、ステッピングモータ107により移動されるズームレンズ102についても同様の動作が行われる。また、コンピュータとしてマイクロプロセッサー111は、後述する駆動電流の補正処理を含めた初期動作処理を、コンピュータプログラムとしての光学機器制御プログラムに従って実行する。撮像装置の電源が投入されると、マイクロプロセッサー111は、一連の初期化処理を行う。その後、マイクロプロセッサー111は、フォーカスレンズ104をリセット位置に移動させるフォーカスリセット動作を行う。具体的には、まずステップS101にて、フォトインタラプタ110から得た情報を用いて、リセット位置にフォーカスレンズ104を移動させるためのステッピングモータ108の駆動方向を判別する。そして、ステップS102で、マイクロプロセッサー111は、ステッピングモータ108を判別した方向に駆動してフォーカスレンズ104の移動を開始する。次にステップS103では、マイクロプロセッサー111は、フォトインタラプタ110の出力レベルが変化したか否か、すなわちリセット位置が検出されたか否かを判別する。リセット位置が検出されると次のステップ104へ進む。ステップS104では、マイクロプロセッサー111は、ステッピングモータ108の駆動停止処理や内部位置カウンタの設定処理を行い、フォーカスリセット動作を完了する。続いてステップS105では、マイクロプロセッサー111は、後述するステッピングモータ108の駆動電流値を補正する補正処理を行う。そして、ステップS106にて、マイクロプロセッサー111は、撮像素子116を用いて生成した映像の出力を開始する。こうして、電源投入時の初期動作処理を完了する。次に、図5のフローチャートを用いて、ステッピングモータ108に対する駆動電流の補正処理について説明する。ここでは、ステッピングモータ108の駆動方式にハーフステップ駆動方式を採用し、またステッピングモータの駆動電流の1周期分において、かつA相コイルに供給される駆動電流においてのみ補正処理を行う場合について説明する。ハーフステップ駆動方式とは、1-2相駆動方式と比較して、1相位置と2相位置の中間位置でさらに細かく停止することができ、1ステップあたりの回転角度は機械角で4.5°、すなわち1-2相駆動方式の2倍の停止分解能を持つ駆動方式である。まずステップS201において、マイクロプロセッサー111は、ステッピングモータ108の駆動速度と駆動方向を設定し、駆動電流の補正値は無補正値C0とする。この場合、駆動電流値は基準電流値となる。次に、ステップS202において、マイクロプロセッサー111は、A相コイルに供給する余弦波の駆動電流と、B相コイルに供給する正弦波の駆動電流とを設定する。このとき、各励磁ステータス以下、励磁ポジションともいうでの駆動電流値を、基準電流値の100とする。これにより、図2に示す駆動電流値がA相コイルとB相コイルに設定される。次にステップS203では、マイクロプロセッサー111は、ステッピングモータ108の駆動開始励磁ポジションを図2にP0で示した位置に設定する。次にステップS204では、マイクロプロセッサー111は、フォーカス位置センサ140から、励磁ポジションP0におけるフォーカスレンズ104の位置データP0を取得する。この励磁ポジションP0は、図6では電気角0°の位置に相当する。次にステップS205では、マイクロプロセッサー111は、励磁ポジションP1までハーフステップ駆動における1ステップ分、ステッピングモータ108を回転させる。そして、ステップS206では、マイクロプロセッサー111は、フォーカス位置センサ140から、励磁ポジションP1におけるフォーカスレンズ104の位置データP1を取得する。この励磁ポジションP1は、図6では電気角22.5°の位置に相当する。さらにステップS207では、マイクロプロセッサー111は、フォーカスレンズ104の位置データの数が16になるまで、つまり励磁ポジションがP16に達するまでステップS205とS206の処理を繰り返す。次にステップS208において、以上の処理でフォーカスレンズ104がハーフステップ駆動における1ステップごとに実際に移動した移動量実移動量Lnを、Ln=Pn1-Pnn=0~15より得る。その後、ステップS209では、マイクロプロセッサー111は、ステップS208で得た1ステップごとのフォーカスレンズ104の実移動量Lnとメモリ112に記憶された目標移動量機械角4.5°分との差をΔAnとして算出するn=0~15。続くステップS210では、マイクロプロセッサー111は、各励磁ポジションにおいて差ΔAnがより小さくなるようにA相コイルに供給する駆動電流値を増減させる方向が決定されているか否かを判別する。増加は基準電流値の100より増加させることを意味し、減少は基準電流値の100より減少させることを意味する。補正処理の開始時点では、まだ増減方向が明らかになっていないため、ステップS211において、マイクロプロセッサー111は、駆動電流値の増減に対する差ΔAnの変化を複数回Bサンプリングする。これにより、ステップS212で、ΔAnが零に近づく駆動電流値の増減方向を決定する。本実施例では、サンプリング回数Bが2回を超えることとしているが、必要に応じて回数を変更可能である。駆動電流値の増減後の値、すなわち補正駆動電流値は、マイクロプロセッサー111がΔAnが零に近づくように補正回路113で設定する。ここからは、以上の処理によって、駆動電流値の増減方向が決定した後の処理について説明する。ステップS210において駆動電流値の増減方向が決定されていた場合は、続くステップS215に進む。ステップS215では、マイクロプロセッサー111は、フォーカスレンズ104の移動量差ΔAnと、1ステップ前の補正駆動電流値に対するフォーカスレンズ104の移動量差ΔAn-1との絶対値を比較する。これにより、最適な補正駆動電流値を導く。ΔAnの絶対値が1ステップ前のΔAn-1の絶対値を上回ったことが検出されると、ステップS216へ進む。ステップS216では、マイクロプロセッサー111は、過去のΔAnの保存データの中から最小のΔAnが得られたときの補正駆動電流値以下、補正値というCnを求め、これを最適な補正値として決定し、本補正処理を終了する。ステップS215の処理においては、一度のΔAnの増加で判定することはなく、数回の遷移状況を見て判定することで、最適な補正値を算出する精度を高めることができる。以上の補正処理により導かれたA相コイルの補正値Cnはメモリ112に記憶され、以後はこの補正値Cnの1周期分のデータが新たな基準電流値としてステッピングモータ108の駆動に適用される。図7の100aは、上述した補正処理により決定された補正値Cnを示す。本実施例によれば、ステッピングモータ108に供給する駆動電流値を励磁ステータスごとに基準電流値とは異なる値に変更増減することを可能としている。これにより、1ステップごとのフォーカスレンズ104の実移動量と図6に示した目標移動量との差をほぼ零にすることが可能となる。ここにいうほぼ零とは、完全な零であってもよいし、0.5以下望ましくは0.22以下の差であってもよい。そして、本実施例によれば、ステッピングモータ108に固有の負荷トルクであるディテントトルクやフォーカスレンズ104を駆動する際の負荷変動の影響を含めた停止精度の問題を解決できるため、高精度のフォーカスレンズ位置制御が可能となる。また、フォーカスレンズ104を微小振幅で反転移動させる際に等振幅のフォーカスレンズ移動制御が可能になる。また、上記補正処理をステッピングモータ107に適用することで、ズームレンズ102を望遠側で移動させる際に高分解能かつ高精度にズームレンズ102の位置決めが可能になる。さらに、ステッピングモータの一定位置回転が可能になることで、回転むらに起因する振動や異音の発生を抑えることができる。なお、メモリ112に、ステッピングモータの駆動速度および駆動方向ごとに基準信号値を設定するためのデータと目標移動量とを記憶しておいてもよい。この場合、ステッピングモータを実際に駆動したときの駆動速度および駆動方向に対応する目標移動量と実移動量との差に応じて駆動電流値の補正処理を行うことができる。また、本実施例では、駆動信号の一周期分励磁ポジションP0~P16だけステッピングモータを駆動して実移動量を検出したが、駆動信号の一周期分よりも長くステッピングモータを駆動して実移動量を検出するようにしてもよい。また、本実施例では、レンズの実移動量の検出を位置センサを用いて行う場合について説明したが、フォトニクスセンサ等の外部測定器や、撮像素子を用いて生成される映像信号等を用いて行ってもよい。また、本実施例では、撮像装置の初期動作処理の中で駆動信号の補正処理を行う場合について説明したが、撮像装置の工場での組立時や、通常の撮影動作の開始前に毎回または定期的に行われるようにしてもよい。また、本実施例では、ステッピングモータによって光学素子であるズームレンズやフォーカスレンズを移動させる場合について説明した。しかし、ステッピングモータによって他の光学素子である像振れ補正レンズを光軸に直交する方向に移動させる場合に本発明を適用してもよい。また、撮像素子可動素子をズーム時に光軸方向に移動させたり、像振れ補正のために光軸に直交する方向に移動させたりする場合に本発明を適用してもよい。以上説明した各実施例は代表的な例にすぎず、本発明の実施に際しては、各実施例に対して種々の変形や変更が可能である。"