(57)【特許請求の範囲】
【請求項１】
ステッピングモータに駆動信号を出力することで、該ステッピングモータの回転を制御するステッピングモータ制御装置であって、
前記ステッピングモータに出力する駆動信号としての、第１の波形の駆動信号または前記第１の波形の駆動信号よりも前記ステッピングモータの位置制御分解能が高い第２の波形の駆動信号を生成する駆動信号生成手段と、
前記ステッピングモータの回転位置を検出する位置検出手段と、
前記ステッピングモータの回転の高速性と連続性のどちらを優先すべきかを判定する判定手段を有し、
前記ステッピングモータの回転開始位置が、前記第１の波形の駆動信号によって前記ステッピングモータを停止させることができない位置の場合、
前記位置検出手段によって検出された回転位置が、前記回転開始位置から前記第１の波形の駆動信号によって前記ステッピングモータを停止させることができる位置のうち前記判定手段による判定結果に基づいて設定された切り替え位置に到達するまでは、前記ステッピングモータを前記第２の波形の駆動信号に基づいて駆動させ、前記回転位置が前記切り替え位置に到達したことに応じて、前記ステッピングモータの駆動を前記第２の波形の駆動信号に基づく駆動から前記第１の波形の駆動信号に基づく駆動に切り替えることを特徴とするステッピングモータ制御装置。
【請求項２】
前記回転開始位置が前記第１の波形の駆動信号によって前記ステッピングモータを停止させることができる位置の場合、前記回転開始位置から前記ステッピングモータを前記第１の波形の駆動信号に基づいて駆動させることを特徴とする請求項１に記載のステッピングモータ制御装置。
【請求項３】
前記判定手段が、前記ステッピングモータの回転の高速性を優先すべきと判定した場合、
前記切り替え位置は、前記回転開始位置と前記ステッピングモータの回転終了位置の間の前記第１の波形の駆動信号によって前記ステッピングモータを停止させることできる位置のうち、前記回転開始位置に最も近い位置であることを特徴とする請求項１または２に記載のステッピングモータ制御装置。
【請求項４】
前記判定手段が、前記ステッピングモータの回転の連続性を優先すべきと判定した場合、
前記切り替え位置は、前記第１の波形の駆動信号によって前記ステッピングモータを停止させることができる位置のうち、前記ステッピングモータの回転開始から回転終了までの駆動時間が最も短くなる位置であることを特徴とする請求項１または２に記載のステッピングモータ制御装置。
【請求項５】
ステッピングモータに駆動信号を出力することで、該ステッピングモータの回転を制御するステッピングモータ制御装置であって、
前記ステッピングモータに出力する駆動信号としての、第１の波形の駆動信号または前記第１の波形の駆動信号よりも前記ステッピングモータの位置制御分解能が高い第２の波形の駆動信号を生成する駆動信号生成手段と、
前記ステッピングモータの回転位置を検出する位置検出手段と、
前記ステッピングモータの回転の高速性と連続性のどちらを優先すべきかを判定する判定手段を有し、
前記ステッピングモータの回転終了位置が、前記第１の波形の駆動信号によって前記ステッピングモータを停止させることができない位置の場合、
前記位置検出手段によって検出された回転位置が、前記第１の波形の駆動信号によって前記ステッピングモータを停止させることができる位置のうち前記判定手段による判定結果に基づいて設定された切り替え位置に到達したことに応じて、前記ステッピングモータの駆動を前記第１の波形の駆動振動に基づく駆動から前記第２の波形の駆動信号に基づく駆動に切り替え、前記回転位置が前記回転終了位置に到達するまで、前記ステッピングモータを前記第２の波形の駆動信号に基づいて駆動させることを特徴とするステッピングモータ制御装置。
【請求項６】
前記回転終了位置が前記第１の波形の駆動信号によって前記ステッピングモータを停止させることができる位置の場合、前記回転位置が前記回転終了位置に到達するまで前記ステッピングモータを前記第１の波形の駆動信号に基づいて駆動させることを特徴とする請求項５に記載のステッピングモータ制御装置。
【請求項７】
前記判定手段が、前記ステッピングモータの回転の高速性を優先すべきと判定した場合、
前記切り替え位置は、前記ステッピングモータの回転開始位置と前記回転終了位置の間の前記第１の波形の駆動信号によって前記ステッピングモータを停止させることができる位置のうち、前記回転終了位置に最も近い位置であることを特徴とする請求項５または６に記載のステッピングモータ制御装置。
【請求項８】
前記判定手段が、前記ステッピングモータの回転の連続性を優先すべきと判定した場合、
前記切り替え位置は、前記第１の波形の駆動信号によって前記ステッピングモータを停止させることができる位置のうち、前記ステッピングモータの回転開始から回転終了までの駆動時間が最も短くなる位置であることを特徴とする請求項５または６に記載のステッピングモータ制御装置。
【請求項９】
前記第１の波形を有する駆動信号は矩形波信号であり、前記第２の波形を有する駆動信号は正弦波信号であることを特徴とする請求項１から８のうちいずれか一項に記載のステッピングモータ制御装置。
【請求項１０】
前記位置検出手段は、前記ステッピングモータに出力した駆動信号に基づいて前記ステッピングモータの回転位置を検出することを特徴とする請求項１から９のうちいずれか一項に記載のステッピングモータ制御装置。
【請求項１１】
ステッピングモータと、
該ステッピングモータにより駆動される被駆動部材と、
カメラ本体から撮影状態に関する情報を受信する受信部と、
請求項１から４のうちいずれか一項に記載のステッピングモータ制御装置を有し、
前記受信部が第１の撮影状態を示す情報を受信した場合に前記判定手段は前記ステッピングモータの回転の高速性を優先すべきと判定し、
前記受信部が第２の撮影状態を示す情報を受信した場合に前記判定手段は前記ステッピングモータの回転の連続性を優先すべきと判定することを特徴とする交換レンズ。
【請求項１２】
ステッピングモータと、
該ステッピングモータにより駆動される被駆動部材と、
カメラ本体から撮影状態に関する情報を受信する受信部と、
請求項５から８のうちいずれか一項に記載のステッピングモータ制御装置を有し、
前記受信部が第１の撮影状態を示す情報を受信した場合に前記判定手段は前記ステッピングモータの回転の高速性を優先すべきと判定し、
前記受信部が第２の撮影状態を示す情報を受信した場合に前記判定手段は前記ステッピングモータの回転の連続性を優先すべきと判定することを特徴とする交換レンズ。
【請求項１３】
前記第１の撮影状態は静止画撮影であり、前記第２の撮影状態は動画撮影であることを特徴とする請求項１１または１２に記載の交換レンズ。
【請求項１４】
ステッピングモータに駆動信号を出力することで、該ステッピングモータの回転を制御するステッピングモータ制御方法であって、
前記ステッピングモータの回転の高速性と連続性のどちらを優先すべきかを判定する判定ステップを有し、
前記ステッピングモータの回転開始位置が、前記第１の波形の駆動信号によって前記ステッピングモータを停止させることができない位置の場合、
前記ステッピングモータの回転位置が、前記回転開始位置から前記第１の波形の駆動信号によって前記ステッピングモータを停止させることができる位置のうち前記判定ステップにおける判定結果に基づいて設定された切り替え位置に到達するまで、前記ステッピングモータを前記第１の波形の駆動信号よりも前記ステッピングモータの位置制御分解能が高い第２の波形の駆動信号に基づいて駆動させるステップと、
前記回転位置が前記切り替え位置に到達したことに応じて、前記ステッピングモータの駆動を前記第２の波形の駆動信号に基づく駆動から前記第１の波形の駆動信号に基づく駆動に切り替えるステップを有することを特徴とするステッピングモータ制御方法。
【請求項１５】
ステッピングモータに駆動信号を出力することで、該ステッピングモータの回転を制御するステッピングモータ制御方法であって、
前記ステッピングモータの回転の高速性と連続性のどちらを優先すべきかを判定する判定ステップを有し、
前記ステッピングモータの回転終了位置が、第１の波形の駆動信号によって前記ステッピングモータを停止させることができない位置の場合、
前記ステッピングモータの回転位置が、前記第１の波形の駆動信号によって前記ステッピングモータを停止させることができる位置のうち前記判定ステップにおける判定結果に基づいて設定された切り替え位置に到達するまで、前記ステッピングモータを前記第１の波形の駆動信号に基づいて駆動させるステップと、
前記回転位置が前記切り替え位置に到達したことに応じて、前記ステッピングモータの駆動を前記第１の波形の駆動信号に基づく駆動から前記第１の波形の駆動信号よりも前記ステッピングモータの位置制御分解能が高い第２の波形の駆動信号に基づく駆動に切り替えるステップと、
前記回転位置が前記回転終了位置に到達するまで、前記ステッピングモータを前記第２の波形の駆動信号に基づいて駆動させるステップを有することを特徴とするステッピングモータ制御方法。
【請求項１６】
コンピュータに、請求項１４または１５に記載のステッピングモータ制御方法を実行させることを特徴とするプログラム。
【請求項１７】
請求項１６に記載のプログラムを格納することを特徴とする記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ステッピングモータの制御に関し、特にエンコーダを用いたステッピングモータの制御に関する。
【背景技術】
【０００２】
ステッピングモータの駆動方式には、比較的高いトルクを発生でき、高速回転を行うことができる１−２相駆動や２相駆動などのいわゆる矩形波駆動方式と、比較的駆動騒音が小さく滑らかな駆動を実現できる、いわゆるマイクロステップ駆動方式がある。近年、これらの駆動方式を併用し、用途に応じて使い分けるステッピングモータの制御方法が多くみられる。
【０００３】
特許文献１は、ステッピングモータ加速領域、減速領域、一定速領域のそれぞれで矩形波駆動方式とマイクロステップ駆動方式を使い分ける方法を開示している。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００４-２１５４６１
【発明の概要】
【発明が解決しようとする課題】
【０００５】
矩形波駆動方式では、ステッピングモータを停止できる点の数は相数と駆動方式に依存する。例えば、２相のステッピングモータにおいて１−２相駆動方式を用いた場合、ステッピングモータが停止可能な点は電気角３６０°の中に８点のみ存在する。一方、マイクロステップ駆動方式では、分割数の設定次第で任意の点に停止することが可能である。そのため、駆動方式によって停止可能な位置が異なる。
【０００６】
回転開始位置が１−２駆動方式では停止不可能な位置であった場合には、１−２相駆動方式で駆動を開始すると励磁相が不連続になり、脱調する危険性がある。また、回転終了位置（目標位置）が１−２相駆動方式では停止不可能な位置だった場合には、１−２相駆動方式では目標位置に到達できない。
【０００７】
回転開始位置および回転終了位置が１−２相駆動方式では停止不可能な位置だった場合には、マイクロステップ駆動方式で駆動する方法もあるが、マイクロステップ駆動方式は一般的に出力トルクが低く、高速な駆動が難しい。また、撮像装置の撮影状態によっては、高速動作が求められる場合と動作の連続性が求められる場合があり、それぞれの状態に求められる適切な動作を行う必要がある。
【０００８】
本発明は、ステッピングモータの回転開始位置および回転終了位置に応じて適切に駆動方式の切替を行い、高速駆動を実現しつつ状況に応じて動作の高速性あるいは動作の連続性を選択することを例示的目的とする。
【課題を解決するための手段】
【０００９】
本発明の一側面としてのステッピングモータ制御装置は、ステッピングモータに出力する駆動信号としての、第１の波形の駆動信号または第１の波形の駆動信号よりもステッピングモータの位置制御分解能が高い第２の波形の駆動信号を生成する駆動信号生成手段と、ステッピングモータの回転位置を検出する位置検出手段と、ステッピングモータの回転の高速性と連続性のどちらを優先すべきかを判定する判定手段を有する。ステッピングモータの回転開始位置が、第１の波形の駆動信号によってステッピングモータを停止させることができない位置の場合、位置検出手段によって検出された回転位置が、回転開始位置から第１の波形の駆動信号によってステッピングモータを停止させることができる位置のうち判定手段による判定結果に基づいて設定された切り替え位置に到達するまでは、ステッピングモータを第２の波形の駆動信号に基づいて駆動させ、回転位置が切り替え位置に到達したことに応じて、ステッピングモータの駆動を第２の波形の駆動信号に基づく駆動から第１の波形の駆動信号に基づく駆動に切り替えることを特徴とする。
【００１０】
本発明の別側面としてのステッピングモータ制御装置は、ステッピングモータに出力する駆動信号としての、第１の波形の駆動信号または第１の波形の駆動信号よりもステッピングモータの位置制御分解能が高い第２の波形の駆動信号を生成する駆動信号生成手段と、ステッピングモータの回転位置を検出する位置検出手段と、ステッピングモータの回転の高速性と連続性のどちらを優先すべきかを判定する判定手段を有する。ステッピングモータの回転終了位置が、第１の波形の駆動信号によってステッピングモータを停止させることができない位置の場合、位置検出手段によって検出された回転位置が、第１の波形の駆動信号によってステッピングモータを停止させることができる位置のうち判定手段による判定結果に基づいて設定された切り替え位置に到達したことに応じて、ステッピングモータの駆動を第１の波形の駆動信号に基づく駆動から第２の波形の駆動信号に基づく駆動に切り替え、回転位置が回転終了位置に到達するまで、ステッピングモータを第２の波形の駆動信号に基づいて駆動させることを特徴とする。
【発明の効果】
【００１１】
本発明によれば、ステッピングモータの回転開始位置および回転終了位置に応じて適切に駆動方式の切替を行うことができる。
【図面の簡単な説明】
【００１２】
【図１】本発明の実施形態におけるステッピングモータ制御装置を備えたカメラシステムのブロック図。
【図２】本実施形態におけるレンズ側でのステッピングモータの制御を示す図。
【図３】本実施形態におけるステッピングモータの駆動電圧（電流）波形を示す図。
【図４】本実施形態におけるステッピングモータの駆動方式の波形を示す図。
【図５】本実施形態におけるステッピングモータの駆動方式のシーケンスを示す図。
【図６】本実施形態におけるステッピングモータの駆動処理を示すフローチャート。
【図７】本実施形態におけるステッピングモータの駆動信号生成処理を示すフローチャート。
【図８】本実施形態におけるステッピングモータの駆動方式切り替え位置の設定処理を示すフローチャートである。
【発明を実施するための形態】
【００１３】
以下に本発明の好ましい実施の形態として、交換レンズの絞りを駆動するステッピングモータ制御装置に本発明を適用した場合について添付の図面に基づいて詳細に説明する。
【００１４】
図１は、本実施形態のカメラシステムの電気ブロック図である。
【００１５】
カメラシステム１は、交換レンズ２とカメラ本体３から構成される。交換レンズ２は、カメラ本体３に着脱可能に構成されている。カメラシステム１は、一眼レフカメラとして構成されているが、ミラーレスカメラなどにも適用することができる。なお、本発明の光学機器は、レンズ一体型のカメラ、双眼鏡、顕微鏡、望遠鏡などに適用することができる。交換レンズ２とカメラ本体３は、不図示のマウントを介して機械的に接続されると共に、マウントに設けられたコネクタを介して電気的に接続される。コネクタには通信ユニット２７、３４（受信部）が設けられて交換レンズ２と本体３が通信することができると共に、交換レンズ２はカメラ本体から電力を供給される。
【００１６】
交換レンズ２は、レンズＣＰＵ２０（判定手段）、撮影光学系、フォーカスレンズ駆動回路２２、絞り開放位置検出センサ２４、ステッピングモータ２５、絞り駆動回路２６、通信ユニット２７を有している。
【００１７】
レンズＣＰＵ２０は、交換レンズ２内のすべての制御を司るレンズ制御手段であり、マイクロコンピュータなどから構成される。レンズＣＰＵ２０は、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭなどの記憶手段（メモリ）を内蔵し、後述するステッピングモータ２５の駆動を制御する。
【００１８】
撮影光学系は、被写体の光学像を形成し、フォーカスレンズ２１、絞り（被駆動部材）、その他のレンズ（ズームレンズ、固定レンズ、手ブレ補正レンズなど）を有する。フォーカスレンズ２１は、光軸方向に移動することで焦点調節を行う。フォーカスレンズ駆動回路２２は、レンズＣＰＵ２０からの命令に従ってフォーカスレンズ２１を光軸に沿って駆動する。
【００１９】
絞りは、絞り羽根２３の開口径を変更することによって絞り値（Ｆ値）を変更し、光量を調節する。絞り開放位置検出センサ２４は、フォトインタラプタ等のセンサから構成されており、絞り羽根２３が開放位置か否かを検出し、検出結果をレンズＣＰＵ２０に送信する。ステッピングモータ２５は、絞り羽根２３を駆動する駆動手段である。本実施形態ではＡ相とＢ相の２相で構成されるが、相数はこれに限定されない。絞り駆動回路２６は、レンズＣＰＵ２０からの命令に従ってステッピングモータ２５を回転させることで絞り羽根２３を駆動する。通信ユニット２７は、カメラＣＰＵ３０と通信を行うための複数の通信端子を有し、焦点検出情報や測光情報、ＩＤ情報等を送受信する。
【００２０】
カメラ本体３は、カメラＣＰＵ３０、制御系電源３１、駆動系電源３２、通信ユニット３３、レンズ装着検出部３４、焦点検出ユニット３５を有する。
【００２１】
カメラＣＰＵ３０は、カメラ本体３のすべての制御を司るカメラ制御手段であり、マイクロコンピュータなどから構成される。カメラＣＰＵ３０は、ＲＡＭ，ＲＯＭ，ＥＥＰＲＯＭ等の記憶手段（メモリ）を内蔵している。なお、カメラＣＰＵ３０が、レンズＣＰＵ２０の代わりにステッピングモータ２５の制御を行ってもよい。
【００２２】
制御系電源３１は、焦点検出ユニット３５や不図示の測光部等の電力消費量が比較的少なく安定した出力電圧を必要とする制御系回路に電力を供給する。駆動系電源３２は、制御系電源３１の電圧や電力を検出し、交換レンズ２や不図示のシャッタ制御部等の電力消費量が比較的多い駆動系回路に電力を供給する。
【００２３】
通信ユニット３３は、レンズＣＰＵ２０と通信を行うための複数の通信端子を有し、焦点検出情報や測光情報、ＩＤ情報等を送受信する。レンズ装着検出部３４は、交換レンズ２が装着されたことを検出する。
【００２４】
焦点検出ユニット３５は、交換レンズ２からの光束を用いて被写体までのデフォーカス量を検出する、位相差検出型の焦点検出ユニットである。位相差検出型の焦点検出では、一対の被写体像の像信号の位相差を検出することによって焦点検出をする。
【００２５】
次に、図２を用いて、レンズＣＰＵ２０で行われる絞り羽根２３の駆動制御について説明する。
【００２６】
ＣＰＵ２０は、駆動速度設定部２００、駆動方式設定部２０１、駆動信号生成部２０２、駆動量カウント部２０３、絞り値算出部２０４、ＲＯＭ２０５、ＲＡＭ２０６を含んでいる。駆動速度設定部２００は、絞り調節に必要な速度指令に対して、ステッピングモータ２５の駆動速度を決定する。駆動方式設定部２０１は、駆動方式指令および駆動量カウント部２０３から出力される駆動量カウント値に応じて駆動方式を決定する。駆動方式の決定方法については後述する。
【００２７】
駆動信号生成部２０２は、駆動速度設定部２００で決定された駆動速度、およびに駆動方式設定部２０１で決定された駆動方式に従って駆動信号を生成し、絞り駆動回路２６に出力する。駆動信号生成部２０２は、２相駆動や１−２相駆動（矩形波信号による駆動）、マイクロステップ駆動（正弦波信号による駆動）といった駆動方式に合わせて、モータの各相の励磁パターンを含む駆動信号を生成する。生成され駆動信号は絞り駆動回路２６で必要な電流・電圧に変換され、ステッピングモータ２５に供給される。
【００２８】
駆動量カウント部２０３は、駆動信号の励磁パターン変化毎にカウンタをインクリメントまたはデクリメントすることで、絞り羽根２３の駆動量をカウントする。これにより、ステッピングモータ２５のステータに対するロータの回転位置（ステッピングモータの回転位置）の情報を取得することができる。
【００２９】
絞り値算出部２０４は、駆動量カウント部２０３でカウントされたカウント値と、絞り開放位置検出センサ２４の出力値に基づいて、現在の絞り値を表す情報を出力する。具体的には、絞り開放位置検出センサ２４によって絞りが開放位置であると検出された時点を基準として駆動量カウント部２０３でカウントを行い、カウント値に応じた現在の絞り値の情報を出力する。
【００３０】
ＲＯＭ２０５は、上述した動作プログラムやその他の制御プログラム、および固定データ等を保存し、ＲＡＭ２０６は上述の動作プログラムやその他の制御プログラムで利用する演算結果や保持したいデータを一時保存する。本実施形態においては、ＲＡＭ２０６に回転開始位置、回転終了位置等を一時的に保存する。
【００３１】
図３は、ステッピングモータ２５の駆動電圧（電流）波形を示す。これは、２相のステッピングモータを想定しており、Ａ相・Ｂ相に略正弦波の駆動信号を印加するマイクロステップ駆動波形と、Ａ相・Ｂ相に矩形波の駆動信号を印加する１−２相駆動波形を示している。本実施形態では、電気角３６０度（所定の区間内）を６４点に分割し、１点を１カウントとする。駆動量カウント部２０３は、絞りの原点位置を０とし、ステッピングモータ２５の駆動量のカウントをステッピングモータ２５が停止可能な位置（以下、停止可能位置という）毎に行う。
【００３２】
本実施形態のマイクロステップ駆動方式おいて、停止可能位置は電気角３６０度に６４点存在するため、駆動量カウント部２０３は停止可能位置毎に１カウントの増減を行う。一方、１−２相駆動方式において、停止可能位置は電気角３６０度に８点しか存在しないため、駆動量カウント部２０３は停止可能位置毎に８カウントの増減を行う。換言すれば、マイクロステップ駆動は、１−２相駆動方式よりも位置制御分解能が高い。
【００３３】
駆動量カウント部２０３のカウントは、絞りの原点位置を０としている。従って、絞りの原点位置がステッピングモータの１−２相駆動方式の停止可能位置であった場合、駆動量カウント部２０３のカウントが０あるいは８の倍数の位置が１−２相駆動方式の停止可能位置となる。
【００３４】
次に、図４及び図５を用いて、本実施形態における１−２相駆動方式とマイクロステップ駆動方式の切り替え制御について説明する。
【００３５】
図４は、駆動量カウント部２０３のカウント値が６４又は７０の位置（回転開始位置）から１−２相駆動方式で駆動量カウント部２０３のカウント値が１２２又は１２８となる位置（回転終了位置）まで駆動する４つのケースの各々の駆動信号の波形を例示的に示す。
【００３６】
現在位置としての駆動量カウント部２０３のカウント値が６４の場合、回転開始位置は１−２相駆動方式の停止可能位置であるため、１−２相駆動方式で駆動を開始することができる（図４（Ａ）、（Ｂ））。一方、駆動量カウント部２０３のカウント値が７０の場合、回転開始位置は１−２相駆動方式の停止可能位置ではない。そのため、回転開始位置と回転終了位置の間に位置する１−２相駆動方式の停止可能位置の中で回転開始位置に最も近い位置までマイクロステップ駆動方式で駆動を行った後に、駆動方式を１−２相駆動方式に切り替える（図４（Ｃ）、（Ｄ））。このとき、マイクロステップ駆動方式から１−２相駆動方式に切り替える位置を、回転開始位置と回転終了位置の間に位置する１−２相駆動方式の停止可能位置の中で回転開始位置に最も近い位置、すなわち駆動量カウント部２０３のカウント値が７２の位置とする。
【００３７】
ＲＡＭ２０６から読み込んだ目標位置のカウント値が１２８の場合、回転終了位置は１−２相駆動方式の停止可能位置であるため、１−２相駆動方式で回転終了位置まで駆動を行うことができる（図４（Ａ）、（Ｃ））。一方、目標位置のカウント値が１２２の場合、回転終了位置は１−２相駆動方式の停止可能位置ではない。そのため、回転開始位置と回転終了位置の間に位置する１−２相駆動方式の停止可能位置の中で回転終了位置に最も近い位置まで１−２相駆動方式で駆動を行った後に、駆動方式をマイクロステップ駆動方式に切り替える。そして、マイクロステップ駆動方式によって回転終了位置まで駆動を行う（図４（Ｂ）、（Ｄ））。このとき、１−２相駆動方式からマイクロステップ駆動方式に切り替える位置を、回転開始位置と回転終了位置の間に位置する１−２相駆動方式の停止可能位置の中で回転終了位置に最も近い位置、すなわち駆動量カウント部２０３のカウント値が１２０の位置とする。
【００３８】
上記のように駆動波形を切り替えることで、回転開始位置や回転終了位置が１−２相駆動方式の停止可能位置でなかった場合にも、１−２相駆動方式を用いて最適な駆動を行うことができる。また、１−２相駆動方式とマイクロステップ駆動方式の切り替え位置を回転開始位置と回転終了位置の間に設定することで動作に連続性を有する駆動を行うことができる。
【００３９】
図４に示した例では、動作の連続性を優先させた駆動を行うため、１−２相駆動方式とマイクロステップ駆動方式の切り替え位置を回転開始位置と回転終了位置の間に設定した。しかし、一般的に１−２相駆動方式の方がマイクロステップ駆動方式よりも高速な駆動が可能であるため、駆動方式の切り替え位置を回転開始位置と回転終了位置の間の以外の位置に設定した方が総駆動時間が短縮される場合がある。図５では、動作の高速性を優先する場合の制御について説明する。
【００４０】
図５は、駆動量カウント部２０３のカウント値が６６の位置から１−２相駆動方式を用いて駆動量カウント部２０３のカウント値が１２６となる位置まで駆動する４つのケースのそれぞれの駆動シーケンスを例示的に示す。
【００４１】
現在位置としての駆動量カウント部２０３のカウント値が６６の場合、回転開始位置は１−２相駆動方式の停止可能位置ではないため、１−２相駆動方式の停止可能位置までマイクロステップ駆動方式で駆動を行った後、１−２相駆動方式に切り替える必要がある。このとき、マイクロステップ駆動方式から１−２相駆動方式に切り替える位置として二通り考えられる。一つは、回転開始位置と回転終了位置の間に位置する１−２相駆動方式の停止可能位置の中で回転開始位置に最も近い位置、すなわち駆動量カウント部２０３のカウント値が７２の位置である。もう一つは、回転開始位置から見て回転終了位置とは逆方向に位置する１−２相駆動方式の停止可能位置の中で、回転開始位置に最も近い位置、すなわち駆動量カウント部２０３のカウント値が６４の位置である。ここで、カウント値が６４の位置までマイクロステップ駆動方式で駆動して駆動方式を切り替えた方がカウント値が７２の位置で切り替えるよりも総駆動時間が短くなる場合、カウント値が６４の位置で駆動方式の切替を行う（図５（Ａ）、（Ｃ））。一方、カウント値が６４の位置までマイクロステップ駆動方式で駆動して駆動方式を切り替えた方が、カウント値が７２の位置で切り替えるよりも総駆動時間が長くなる場合、カウント値が７２の位置で駆動方式の切替を行う（図５（Ｂ）、（Ｄ））。
【００４２】
目標位置のカウント値が１２６の場合、回転終了位置は１−２相駆動方式の停止可能位置でないため、１−２相駆動方式の停止可能位置まで１−２相駆動方式で駆動を行った後にマイクロステップ駆動方式に切り替える必要がある。このとき、１−２相駆動方式からマイクロステップ駆動方式に切り替える位置として二通り考えられる。一つは、回転終了位置と回転開始位置の間に位置する１−２相駆動方式の停止可能位置の中で回転終了位置に最も近い位置、すなわち駆動量カウント部２０３のカウント値が１２０の位置である。もう一つは、回転終了位置から見て回転開始位置とは逆方向に位置する１−２相駆動方式の停止可能位置の中で、回転終了位置に最も近い位置、すなわち駆動量カウント部２０３のカウント値が１２８の位置である。ここで、カウント値が１２８の位置まで１−２相駆動方式で駆動して駆動方式を切り替えた方がカウント値が１２０の位置で切り替えるよりも総駆動時間が短くなる場合、カウント値が１２８の位置で駆動方式の切替を行う（図５（Ａ）、（Ｂ））。一方で、カウント値が１２８の位置まで１−２相駆動方式で駆動して駆動方式を切り替えた方がカウント値が１２０の位置で切り替えるよりも総駆動時間が長くなる場合、カウント値が１２０の位置で駆動方式の切替を行う（図５（Ｃ）、（Ｄ））。
【００４３】
上記のように駆動波形を切り替えることで、回転開始位置や回転終了位置が１−２相駆動方式の停止可能位置でなかった場合にも、１−２相駆動方式を用いて最適な駆動を行うことができる。また、１−２相駆動方式とマイクロステップ駆動方式の切り替え位置を総駆動時間が短くなる位置に設定することで動作の高速性を優先した駆動を行うことができる。
【００４４】
次に、本実施形態における動作の詳細として、動作の高速性と動作の連続性のどちらを優先するか切り替える例を、図６、図７および図８のフローチャートを用いて撮像装置の撮影状態が静止画撮影モードの場合と動画撮影モードの場合とに分けて説明する。なお、図中“Ｙ”は“Ｙｅｓ”、“Ｎ”は“Ｎｏ”の意味である。
【００４５】
図６は、レンズＣＰＵ２０が絞り駆動命令を受信した際の処理をフローチャートで示している。ステップＳＴ６０１において、レンズＣＰＵ２０は、絞り調整動作を行うための駆動開始の命令があったか否かを判定する。具体的には、ユーザーによるマニュアル絞り操作やＡＥの動作開始が絞り駆動命令となる。絞り駆動命令がない場合には、レンズＣＰＵ２０は該命令があるまで待機する。絞り駆動命令があった場合には、レンズＣＰＵ２０はステップＳＴ６０２で必要な駆動速度を設定する。駆動速度には、カメラＣＰＵ３０から指定された速度やレンズＣＰＵ２０内で決定した速度を用いる。ステッピングモータ２５の駆動速度は、励磁パターンの切替を行う間隔を長くすると遅く、短くすると早くなる。その単位として、一般的にｐｐｓ（パルス／秒）を用いられる。
【００４６】
ステップＳＴ６０３では、レンズＣＰＵ２０は、ステッピングモータ２５の駆動方式を確認する。駆動方式が１−２相駆動方式だった場合には、後述のステップＳＴ６０４の処理へ進み、駆動方式がマイクロステップ駆動方式だった場合にはステップＳＴ６０５に進む。
【００４７】
ステップＳＴ６０５では、レンズＣＰＵ２０（駆動信号生成部２０２）は、ステップＳＴ６０２で設定した駆動速度に従ってＡ相、Ｂ相の励磁パターンの切り替えを繰り返す略正弦波のマイクロステップ駆動波形の駆動信号を生成する。ステップＳＴ６０６において、レンズＣＰＵ２０（駆動量カウント部２０３）は、で停止可能位置の励磁パターン毎に駆動量カウンタをインクリメントまたはデクリメントする。ステップＳＴ６０７において、レンズＣＰＵ２０（絞り値算出部２０４）は、ステップＳＴ６０６でカウントしたカウント値を基に現在の絞り値を計算する。ステップＳＴ６０８では、レンズＣＰＵ２０は、指定した駆動量だけ駆動したかを判定する。駆動が完了している場合は処理を終了し、駆動が完了していない場合はステップＳＴ６０２に戻り、駆動信号の生成を続ける。
【００４８】
図７は、図６におけるステップＳＴ６０４の処理内容の詳細を示したフローチャートである。ステップＳＴ７０１では、レンズＣＰＵ２０は、マイクロステップ駆動方式から１−２相駆動方式への切り替え位置の設定処理および１−２相駆動方式からマイクロステップ駆動方式への切り替え位置の設定処理が終了したかを判定する。設定が終了している場合にはステップＳＴ７０３へ進み、設定が終了していない場合には後述するステップＳＴ７０２の処理へ進む。
【００４９】
ステップＳＴ７０３では、レンズＣＰＵ２０は、駆動量カウント部２０３のカウント値がステップＳＴ７０２で設定した１−２相駆動方式からマイクロステップ駆動方式へ切り替える位置に到達したか否かを判定する。切り替え位置に到達している場合にはステップＳＴ７０４に進み、レンズＣＰＵ２０（駆動信号生成部２０２）はマイクロステップ駆動波形の駆動信号を生成する。一方、切り替え位置に到達していない場合にはステップＳＴ７０５に進む。ステップＳＴ７０５では、レンズＣＰＵ２０は、駆動量カウント部２０３のカウント値がステップＳＴ７０２で設定したマイクロステップ駆動方式から１−２相駆動方式へ切り替える位置に到達したか否かを判定する。レンズＣＰＵ２０（駆動信号生成部２０２）は、切り替え位置に到達している場合にはステップＳＴ７０６において１−２相駆動波形の駆動信号を生成し、到達していない場合にはマイクロステップ駆動波形の駆動信号を生成する。
【００５０】
図８は、図７におけるステップＳＴ７０２の処理内容の詳細を示したフローチャートである。ステップＳＴ８０１では、レンズＣＰＵ２０は、回転開始位置が１−２駆動方式の停止可能位置か否かを判定する。回転開始位置が１−２駆動方式の停止可能位置である場合にはステップＳＴ８０２へ進み、レンズＣＰＵ２０は、回転開始位置を１−２相駆動方式への切り替え位置として設定する。一方、回転開始位置が１−２駆動方式の停止可能位置でない場合にはステップＳＴ８０３へ進み、レンズＣＰＵ２０は撮像装置の撮影モードが静止画撮影モードか否かを判定する。撮像装置の撮影モードが静止画撮影モードでない場合にはステップＳＴ８０７へ進み、静止画撮影モードの場合にはステップＳＴ８０４に進む。
【００５１】
ステップＳＴ８０４では、レンズＣＰＵ２０は駆動時間（Ｔ１），（Ｔ２）を計算する。駆動時間（Ｔ１）は、回転開始位置と回転終了位置の間に位置する１−２相駆動方式の停止可能位置の中で回転開始位置に最も近い位置（Ｐ１）までマイクロステップ駆動方式で駆動した場合の駆動時間である。駆動時間（Ｔ２）は、回転開始位置から見て回転終了位置と逆方向に位置する１−２相駆動方式の停止可能位置の中で回転開始位置に最も近い位置（Ｐ２）までマイクロステップ駆動方式で駆動後、（Ｐ１）まで１−２相駆動方式で駆動した場合の駆動時間である。
【００５２】
レンズＣＰＵ２０は、ステップＳＴ８０５でＴ１＞Ｔ２だった場合はステップＳＴ８０６に進みＰ２を１−２相駆動方式への切り替え位置に設定し、そうでなかった場合にはステップＳＴ８０７に進みＰ１を１−２相駆動方式への切り替え位置に設定する。
【００５３】
ステップＳＴ８０８では、レンズＣＰＵ２０は、回転終了位置が１−２駆動方式で停止可能な位置か否かを判定する。回転終了位置が１−２駆動方式の停止可能位置であった場合にはステップＳＴ８０９へ進み、レンズＣＰＵ２０は回転終了位置をマイクロステップ駆動方式への切り替え位置として設定する。一方、回転終了位置が１−２駆動方式の停止可能位置でない場合にはステップＳＴ８１０へ進み、レンズＣＰＵ２０は撮像装置の撮影モードが静止画撮影モードか否かを判定する。撮像装置の撮影モードが静止画撮影モードでない場合にはステップＳＴ８１４へ進み、静止画撮影モードの場合にはステップＳＴ８１１に進む。
【００５４】
ステップＳＴ８１１では、レンズＣＰＵ２０は駆動時間（Ｔ３），（Ｔ４）を計算する。駆動時間（Ｔ３）は、回転終了位置と回転開始位置の間に位置する１−２相駆動方式の停止可能位置の中で回転終了位置に最も近い位置（Ｐ３）までマイクロステップ駆動方式で駆動した場合の駆動時間である。駆動時間（Ｔ４）は、回転終了位置から見て回転開始位置とは逆方向に位置する１−２相駆動方式の停止可能位置の中で回転終了位置に最も近い位置（Ｐ４）までマイクロステップ駆動方式で駆動後、（Ｐ３）まで１−２相駆動方式で駆動した場合の駆動時間である。
【００５５】
レンズＣＰＵ２０は、ステップＳＴ８１２でＴ３＞Ｔ４だった場合はステップＳＴ８１３に進み、Ｐ４をマイクロステップ駆動方式への切り替え位置に設定する。そうでなかった場合にはステップＳＴ８１４に進みＰ３をマイクロステップ駆動方式への切り替え位置に設定する。
【００５６】
一般的に静止画撮影の場合は動作の高速性が優先されるのに対し、動画撮影の場合は撮影中の動作が全て記録されてしまうため動作の連続性が優先される。そのため図８では動作の連続性を優先するか高速性を優先するかの切り替えを撮像装置の撮影状態が静止画撮影モードか否かで行う例について説明した。しかし、本発明はこれに限定されず、例えば撮像装置の撮影状態が連写モードか単写モードかによって切り替えるようにしても良い。
【００５７】
また、動作の連続性を優先するか高速性を優先するかによって、撮像装置から送信される駆動命令（駆動コマンド）を変更する構成としても良い。この場合、交換レンズは、動作の連続性を優先するコマンドを撮像装置から受信した場合は動作の連続性を優先し、動作の高速性を優先するコマンドを受信した場合は動作の高速性を優先する。
【００５８】
また、本実施形態において、ステッピングモータの制御をレンズＣＰＵ２０が行うことで絞りを駆動することとしたが、これに限らず、別の制御部材によってステッピングモータによって駆動するものであってもよいし、絞りを駆動するものでなくてもよい。
【００５９】
以上説明したように、本発明によれば、ステッピングモータの回転開始位置および回転終了位置によらず連続した駆動を行い、可能な限り高速駆動を行いつつ状況に応じて動作の高速性あるいは連続性を選択することができる。
【００６０】
（その他の実施例）
本発明は、上述の１以上の機能を実現するプログラムを、ネットワーク又はデータを格納した記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【００６１】
以上説明した各実施例は代表的な例にすぎず、本発明の実施に際しては、各実施例に対して種々の変形や変更が可能である。
【符号の説明】
【００６２】
２０  レンズＣＰＵ
２５  ステッピングモータ
２０２  駆動信号生成部
２０３  駆動量カウント部
【図１】
0006508937.tif 000002
【図２】
0006508937.tif 000003
【図３】
0006508937.tif 000004
【図４】
0006508937.tif 000005
【図５】
0006508937.tif 000006
【図６】
0006508937.tif 000007
【図７】
0006508937.tif 000008
【図８】
0006508937.tif 000009