(57)【特許請求の範囲】
【請求項１】
ブラシレスモータの回転を制御するモータ制御装置であって、
前記モータの回転速度を制御する制御手段と、
前記モータによって被駆動部材を駆動する際の負荷トルクを、前記モータの回転に応じて検出信号を出力する回転検出手段からの検出信号を用いて算出する負荷トルク算出手段とを有し、
前記制御手段は、前記被駆動部材を目標停止位置に向かって駆動する際に、前記モータの加速状態または定速状態からの減速を開始させるときの残り回転量である減速回転量を算出し、該減速回転量に基づいて前記モータの回転速度を制御し、
前記減速回転量は、前記加速状態または前記定速状態において算出された前記負荷トルクを用いて算出されることを特徴とするモータ制御装置。
【請求項２】
前記検出信号を用いて前記モータの回転加速度を算出する加速度算出手段をさらに有し、
前記減速回転量は、前記負荷トルクと、前記加速状態または前記定速状態において算出された回転加速度を用いて算出されることを特徴とする請求項１に記載のモータ制御装置。
【請求項３】
前記負荷トルク算出手段は、前記加速状態において前記加速度算出手段により算出された前記回転加速度から前記負荷トルクを算出することを特徴とする請求項２に記載のモータ制御装置。
【請求項４】
前記制御手段は、前記定速状態において、前記励磁信号の電流値を一定とする定電流制御を行い、
前記負荷トルク算出手段は、前記定電流制御において、前記モータの回転位相と前記励磁信号の位相との位相差から前記負荷トルクを算出することを特徴とする請求項１に記載のモータ制御装置。
【請求項５】
前記制御手段は、前記定速状態において、前記モータの回転位相と前記励磁信号の位相との位相差を一定とする定進角制御を行い、
前記負荷トルク算出手段は、前記定進角制御において、前記励磁信号の電流値または電圧値から前記負荷トルクを算出することを特徴とする請求項１に記載のモータ制御装置。
【請求項６】
前記負荷トルク算出手段は、
前記モータの回転速度を変化させたときの前記負荷トルクの変化から、該回転速度に応じて変化する負荷である速度依存負荷を算出し、
前記負荷トルクを、前記速度依存負荷を用いて算出することを特徴とする請求項１から５のいずれか一項に記載のモータ制御装置。
【請求項７】
ブラシレスモータと、
該モータにより駆動される被駆動部材と、
前記モータの駆動を制御する請求項１から６のいずれか一項に記載のモータ制御装置とを有することを特徴とするモータ被駆動装置。
【請求項８】
前記モータ被駆動装置の温度を検出する温度センサをさらに有し、
前記負荷トルク算出手段は、前記温度センサの出力を用いて前記負荷トルクを算出することを特徴とする請求項７に記載のモータ被駆動装置。
【請求項９】
前記モータ被駆動装置の姿勢を検出する姿勢センサをさらに有し、
前記負荷トルク算出手段は、前記姿勢センサの出力を用いて前記負荷トルクを算出することを特徴とする請求項７または８に記載のモータ被駆動装置。
【請求項１０】
前記負荷トルク算出手段は、前記被駆動部材の駆動位置に応じて前記負荷トルクを補正することを特徴する請求項７から９のいずれか一項に記載のモータ被駆動装置。
【請求項１１】
前記被駆動部材は、撮像に用いられる光学素子であることを特徴とする請求項７から１０のいずれか一項に記載のモータ被駆動装置。
【請求項１２】
ブラシレスモータの回転を制御するモータ制御方法であって、
前記モータによって被駆動部材を駆動する際の負荷トルクを、前記モータの回転に応じて出力される検出信号を用いて算出するステップと、
前記被駆動部材を目標停止位置に向かって駆動する際に、前記モータの加速状態または定速状態からの減速を開始させるときの残り回転量である減速回転量を算出するステップと、
該減速回転量に基づいて前記モータの回転速度を制御するステップと、を有し、
前記減速回転量は、前記加速状態または前記定速状態において算出された前記負荷トルクを用いて算出されることを特徴とするモータ制御方法。
【請求項１３】
ブラシレスモータの回転を制御するコンピュータに、
前記モータによって被駆動部材を駆動する際の負荷トルクを、前記モータの回転に応じて出力される検出信号を用いて算出するステップと、
前記被駆動部材を目標停止位置に向かって駆動する際に、前記モータの加速状態または定速状態からの減速を開始させるときの残り回転量である減速回転量を算出するステップと、
該減速回転量に基づいて前記モータの回転速度を制御するステップと、を実行させるプログラムであって、
前記減速回転量は、前記加速状態または前記定速状態において算出された前記負荷トルクを用いて算出されることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、モータの駆動を制御するモータ制御装置に関し、特にロータの回転を検出するエンコーダを備えたブラシレスモータの駆動を制御するモータ制御装置に関する。
【背景技術】
【０００２】
ブラシレスモータにロータの回転を検出するエンコーダを設け、該エンコーダからの出力信号を用いて該モータをフィードバック制御することで、該モータを脱調を生じさせることなく高速駆動することができる。また、このような高速駆動が可能なブラシレスモータの制御には、該モータによって駆動する被駆動部材を目標停止位置に精度良く停止させる停止位置精度が要求される。
【０００３】
停止位置精度を保証するためには、モータの定速状態または加速状態からの減速における加速度と減速を行うロータの回転量、つまりは被駆動部材の駆動量（以下、減速駆動量という）が重要である。減速の加速度が大きいほど短い時間で目標停止位置に向けて減速することができるため、減速駆動量を短く、すなわち定速状態や加速状態での駆動量を長くすることができ、目標停止位置までの駆動時間を短縮することができる。ただし、減速の加速度が大きく減速駆動量が短いと、被駆動部材が目標停止位置を超えて移動してから停止する可能性が生ずる。
【０００４】
特許文献１には、モータの回転に伴ってエンコーダから出力されるパルス信号のカウント値に応じて通電相を切り替えて該モータの駆動を制御する技術が開示されている。具体的には、減速時にはロータの回転位相に対する通電相の位相差である位相進み量を補正して、制動力、つまりは加速度を調整することにより停止位置精度を向上させる。また、特許文献２には、移動体を定速状態から他の速度に向かって加速または減速する際の速度変動時間または停止状態から所定速度まで加速する際の速度変動時間に基づいて、移動体の停止命令を出力するタイミングを変更する技術が開示されている。この技術は、突発的な環境変化や経年変化があっても安定的に停止位置精度を確保することを目的としている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００４−１２９４５２号公報
【特許文献２】特開平８−６３２２８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
特許文献１にて開示された技術では、モータのロータの現在位置から目標位置までの回転角を考慮して位相進み量を補正する。つまり、何らかの原因でロータの減速が遅れた場合には、目標位置の手前でロータに作用させる制動力を増大させて減速制御を行う。しかしながら、加速度は駆動系の制動力に依存するため、対象とする系によって上限値が定まり、また製造上の誤差に伴って加速度の上限値もばらつく。特許文献１では、駆動系の個体差や動作状態に起因する制動力の違いについて考慮されておらず、しかも減速駆動量についても考慮されていないと考えられる。
【０００７】
一方、特許文献２にて開示された技術では、速度変更に際しての加減速時および停止状態からの加速時における速度変動時間や、定速走行指令時における速度変動や速度偏差から減速・停止タイミングを決定している。つまり、経年変化等による特性変化を駆動中に取得し、減速駆動量を適切に決定することで停止位置精度を保証しようとしている。しかしながら、この技術は、駆動において定速状態が存在することを前提としており、定速状態が存在しない場合の停止位置精度までは保証されないと考えられる。
【０００８】
本発明は、モータの製造ばらつき等の個体差や負荷変動があっても、該モータによって駆動される被駆動部材を精度良く目標停止位置に停止させることができるようにしたモータ制御装置、モータ制御方法およびモータ制御プログラムを提供する。
【課題を解決するための手段】
【０００９】
本発明の一側面としてのモータ制御装置は、ブラシレスモータの回転を制御する。モータ制御装置は、モータの回転速度を制御する制御手段と、モータによって被駆動部材を駆動する際の負荷トルクを、モータの回転に応じて検出信号を出力する回転検出手段からの検出信号を用いて算出する負荷トルク算出手段とを有する。制御手段は、被駆動部材を目標停止位置に向かって駆動する際に、モータの加速状態または定速状態からの減速を開始させるときの残り回転量である減速回転量を算出し、該減速回転量に基づいてモータの回転速度を制御する。そして、減速回転量は、加速状態または定速状態において算出された負荷トルクを用いて算出されることを特徴とする。
【００１０】
なお、ブラシレスモータと、該モータにより駆動される被駆動部材と、上記モータ制御装置とを有するモータ被駆動装置も、本発明の他の一側面を構成する。
【００１１】
また、本発明の他の一側面としてのモータ制御方法は、ブラシレスモータの回転を制御する。該モータ制御方法は、モータによって被駆動部材を駆動する際の負荷トルクを、モータの回転に応じて出力される検出信号を用いて算出するステップと、被駆動部材を目標停止位置に向かって駆動する際に、モータの加速状態または定速状態からの減速を開始させるときの残り回転量である減速回転量を算出するステップと、該減速回転量に基づいてモータの回転速度を制御するステップと、を有する。そして、減速回転量は、加速状態または定速状態において算出された負荷トルクを用いて算出されることを特徴とする。
【００１２】
さらに、本発明の他の一側面としてのモータ制御プログラムは、ブラシレスモータの回転を制御するコンピュータに、モータによって被駆動部材を駆動する際の負荷トルクを、モータの回転に応じて出力される検出信号を用いて算出するステップと、被駆動部材を目標停止位置に向かって駆動する際に、モータの加速状態または定速状態からの減速を開始させるときの残り回転量である減速回転量を算出するステップと、該減速回転量に基づいてモータの回転速度を制御するステップと、を実行させるプログラムであって、減速回転量は、加速状態または定速状態において算出された負荷トルクを用いて算出されることを特徴とする。
【発明の効果】
【００１３】
本発明によれば、製造ばらつき等の個体差や負荷変動に応じた減速回転量を算出し、減速回転量に対応するタイミングでモータの減速を開始するため、被駆動部材の高い停止位置精度で目標停止位置に駆動することができる。
【図面の簡単な説明】
【００１４】
【図１】本発明の実施例１であるデジタル一眼レフカメラの構成を示すブロック図。
【図２】実施例１におけるステッピングモータを含むモータユニットの外観斜視図。
【図３】実施例１におけるコントラストＡＦの動作を示すフローチャート。
【図４】実施例１におけるステッピングモータによるフォーカスレンズの駆動機構を示す図。
【図５】実施例１における進角ψと角速度ωの相関を示す図。
【図６】実施例１におけるモータ印加電流ＩＭと角速度ωとの相関を示す図。
【図７】実施例１におけるフォーカスレンズの駆動制御動作を示すフローチャート。
【図８】実施例１におけるフォーカスレンズの駆動制御の定電流制御／定進角制御切替え動作を示すフローチャート。
【図９】実施例１における粘性係数の算出動作を示すフローチャート。
【図１０】実施例１における角速度ω、角加速度α、残り駆動量および減速変位角との関係を示す図。
【発明を実施するための形態】
【００１５】
以下、本発明の実施例について図面を参照しながら説明する。各実施例は、被駆動部材を駆動するモータの負荷が変動しても、被駆動部材を目標停止位置に対して行き過ぎを生じることなく精度良く停止させることができるように、モータの減速を開始するタイミングを設定することを目的の１つとする。ここにいう負荷の変動とは、製造ばらつきおよび経年変化等のモータの個体において生じる負荷の変動や、温度環境や姿勢変化等の被駆動部材の駆動時の状態による負荷の変動を含む。
【実施例１】
【００１６】
図１には、本発明の実施例１であるモータ被駆動装置としての交換レンズ２００と該交換レンズ２００の着脱が可能な撮像装置としてのデジタル一眼レフカメラ１００の構成を示している。なお、撮像装置は、デジタルスチルカメラやデジタルビデオカメラであってもよいし、レンズ一体型カメラであってもよい。また、顕微鏡であってもよい。
【００１７】
交換レンズ２００は、被写体側から順に、固定レンズ１０１と、ズームレンズ１０２と、絞り１０３と、防振レンズ１０４と、フォーカスレンズ（光学素子）１０５とにより構成される撮影光学系を有する。ズームレンズ１０２は光軸方向に移動して変倍を行い、フォーカスレンズ１０５は光軸方向に移動して焦点調節を行う。絞り１０３は、その開口径を増減させることで通過光量を変化させる。防振レンズ１０４は光軸に直交する方向に移動（シフト）して手振れ等によるカメラ振れに起因する像振れを低減（補正）する。
【００１８】
また、交換レンズ２００には、ズームレンズ１０２を駆動するズーム駆動部１１０と、絞り１０３を駆動する絞り駆動部１０９と、防振レンズ１０４を駆動するシフト駆動部１０８と、フォーカスレンズ１０５を駆動するフォーカス駆動部１０６とを有する。各駆動部は、駆動源となるモータ等のアクチュエータを含む。各駆動部は、交換レンズ２００内に設けられたレンズコントローラとしてのレンズＩＣ１１１により制御される。
【００１９】
交換レンズ２００に設けられた不図示のズームリングが使用者によって操作されると、レンズＩＣ１１１は、その操作量に応じてズーム駆動部１１０を介してズームレンズ１０２を駆動する。ズームレンズ１０２の位置は電気的に検出されており、該検出された位置に応じてレンズＩＣ１１１が合焦状態を維持するためにフォーカスレンズ１０５の駆動方向と駆動量を算出し、それらを含むズームトラッキング駆動命令をフォーカス駆動部１０６に与える。また、使用者が交換レンズ２００に設けられた不図示のマニュアルフォーカスリングを操作すると、レンズＩＣ１１１はその操作量に応じてフォーカスレンズ１０５の駆動量を算出し、それを含むマニュアルフォーカス駆動命令をフォーカス駆動部１０６に与える。さらに、レンズＩＣ１１１は、後述するようにカメラＩＣ１１８からのＡＦ駆動命令を受けて、フォーカス駆動部１０６を介してフォーカスレンズ１０５を移動させることにより、オートフォーカス（ＡＦ）を行う。
【００２０】
また、レンズＩＣ１１１は、カメラＩＣ１１８から測光結果に基づく絞り駆動命令を受けて絞り駆動部１０９を介して絞り１０３を駆動する。さらに、レンズＩＣ１１１は、交換レンズ２００に設けられたジャイロセンサ等の振れセンサ（姿勢センサ）１２２により検出された手振れ等によるレンズ振れ（つまりはカメラ振れ）に基づいて、シフト駆動部１０８を介してシフトレンズ１０４をシフトさせる。
【００２１】
一方、カメラ１００は、ＣＭＯＳセンサやＣＣＤセンサにより構成される光電変換素子としての撮像素子１１２と、該撮像素子１１２の出力をサンプリングしてゲインを調整するＣＤＳ／ＡＧＣ回路１１３と、撮像処理回路１１４とを有する。撮像処理回路１１４は、カメラコントローラとしてのカメラＩＣ１１８からの指令に従って、ＣＤＳ／ＡＧＣ回路１１３からの出力信号に対して各種画像処理を行い、画像を生成する。生成された画像はモニタ１１５に表示されたり、記録部１１６により不図示の記録媒体（半導体メモリ等）に記録されたりする。
【００２２】
また、カメラ１００は、ＡＦ処理回路１１７を有する。ＡＦ処理回路１１７は、ＣＤＳ／ＡＧＣ回路１１３からの全画素の出力信号のうち焦点検出に用いられる画素の信号から高周波成分や輝度差成分を抽出してＡＦ評価信号を生成する。カメラＩＣ１１８は、ＡＦ評価信号の値（ＡＦ評価値）が最大となるフォーカスレンズ１０５の位置（合焦位置）を探索し、合焦位置にフォーカスレンズ１０５を移動させるため、レンズＩＣ１１１に対してフォーカス駆動命令を出力する。レンズＩＣ１１１は、該フォーカス駆動命令に従って、フォーカス駆動部１０６を介してモータ１０６ａの励磁コイルの通電を制御する。これにより、モータ１０６ａの駆動およびその回転速度（加速、定速および減速）が制御され、フォーカスレンズ１０５の移動およびその移動速度が制御される。こうして、オートフォーカス（ＡＦ）制御が行われる。
【００２３】
図２および図３には、フォーカス駆動部１０６に含まれるフォーカスモータユニットの構成を示している。フォーカスモータユニットは、ブラシレスモータとしてのステッピングモータ１０６ａと、該モータ１０６ａの出力軸であるリードスクリュー１０６ｂとを有する。ステッピングモータ１０６ａおよびリードスクリュー１０６ｂは、モータホルダー１０６ｅによって保持されている。なお、ブラシレスモータは、ステッピングモータに限定されず、リラクタンスモータやその他のブラシレスモータでもよい。
【００２４】
また、フォーカスモータユニットは、リードスクリュー１０６ｂの一端部に取り付けられ、該リードスクリュー１０６ｂと一体回転するエンコーダマグネット１０６ｃと、モータホルダー１０６ｅにより保持されたホールＩＣ１０７とを有する。エンコーダマグネット１０６ｃとモータ１０６ａ内のマグネットロータ（図示せず）はともに円筒形状の永久磁石により構成されており、その外周面は同一極数（本実施例では１０極）に着磁されている。ホールＩＣ１０７は、エンコーダマグネット１０６ｃの回転による磁束密度の変化を、ステッピングモータ１０６ａの回転を示す電気信号（検出信号）として互いに位相が異なる２相の２値信号（パルス信号）に変換して出力する。ホールＩＣ１０７とエンコーダマグネット１０６ｃにより、回転検出手段としてのエンコーダが構成される。エンコーダとしては、本実施例のような２値信号を出力するデジタルエンコーダに限らず、正弦波信号を出力するアナログエンコーダを用いることもできる。また、エンコーダとしては、磁気式エンコーダに限らず、フォトセンサと反射パターンまたは透過スリットが形成された回転板とにより構成される光学式エンコーダを用いることもできる。
【００２５】
さらに、フォーカスモータユニットは、モータ１０６ａの励磁コイル（図示せず）に対する通電を行うモータドライバ１０６ｄと、リードスクリュー１０６ｂに噛み合ったラック１０６ｆとを有する。ラック１０６ｆは、図３に示すようにフォーカスレンズ１０５（実際にはフォーカスレンズ１０５を保持する部材であるフォーカス保持枠）に取り付けられている。このため、モータ１０６ａが回転してリードスクリュー１０６ｂが回転すると、ラック１０６ｆを介してフォーカスレンズ１０５が、リードスクリュー１０６ｂが延びる光軸方向に駆動される。
【００２６】
カメラＩＣ１１８およびレンズＩＣ１１１が行うＡＦ制御について説明する。コンピュータとしてのカメラＩＣ１１８およびレンズＩＣ１１１は、それぞれに内蔵されたコンピュータプログラムに従ってＡＦ制御のための動作を行う。本実施例では、ＡＦ方式として、コントラストＡＦを採用する。ただし、コントラストＡＦに代えて又はこれと併用するように位相差ＡＦを採用してもよい。コントラストＡＦでは、フォーカスレンズ１０５をウォブリング駆動（微小往復駆動）しながらＡＦ評価値が最大となる合焦位置を探索し、最終的にその合焦位置にフォーカスレンズ１０５を移動させることで被写体に対する合焦状態を得る。
【００２７】
図４のフローチャートには、コントラストＡＦにおいて、フォーカスレンズ１０５にウォブリング駆動における１往復駆動を行わせるためのカメラＩＣ１１８およびレンズＩＣ１１１の動作を示している。まず、図４のフローチャート中に示したＳｔａｇｅ＝１〜４（以下、Ｓｔａｇｅ１〜４という）での動作について説明する。
【００２８】
Ｓｔａｇｅ１では、ウォブリング駆動においてフォーカスレンズ１０５が至近側に位置している。このＳｔａｇｅ１では、カメラＩＣ１１８は、前回のＳｔａｇｅ３においてフォーカスレンズ１０５が無限遠側に位置した状態で撮像素子１１２に蓄積された電荷に基づく撮像素子１１２の出力を用いて無限遠側のＡＦ評価値を取得する。
【００２９】
また、Ｓｔａｇｅ２では、カメラＩＣ１１８は、レンズＩＣ１１１を通じてフォーカスレンズ１０５を至近側から無限遠側に所定の振幅だけ駆動する。このとき、Ｓｔａｇｅ１にて取得した無限遠側のＡＦ評価値が前回のＳｔａｇｅ３にて取得した至近側のＡＦ評価値よりも高ければ、ウォブリング駆動の中心位置も無限遠側に所定の中心移動量だけ移動させる。
【００３０】
また、Ｓｔａｇｅ３では、ウォブリング駆動においてフォーカスレンズ１０５が無限遠側に位置している。このＳｔａｇｅ３では、カメラＩＣ１１８は、前回のＳｔａｇｅ１においてフォーカスレンズ１０５が至近側に位置した状態で撮像素子１１２に蓄積された電荷に基づく撮像素子１１２の出力を用いて至近側のＡＦ評価値を取得する。
【００３１】
さらに、Ｓｔａｇｅ４では、カメラＩＣ１１８は、レンズＩＣ１１１を通じてフォーカスレンズ１０５を無限遠側から至近側に所定の微小量だけ駆動する。このとき、Ｓｔａｇｅ３にて取得した至近側のＡＦ評価値が前回のＳｔａｇｅ１にて取得した無限側のＡＦ評価値よりも高ければ、ウォブリング駆動の中心位置も至近側に所定量だけ移動させる。
【００３２】
図４のフローチャートにおいて、ステップＳ１０１では、カメラＩＣ１１８は、Ｓｔａｇｅの値が１か否かを判定する。１であればステップＳ１０２に、１でなければステップＳ１０６に進む。
【００３３】
ステップＳ１０２では、カメラＩＣ１１８は、Ｓｔａｇｅ１の処理を行う。すなわち、無限遠側におけるＡＦ評価値をＡＦ処理回路１１７に算出させる。そして、無限遠側のＡＦ評価値を取得した後、カメラＩＣ１１８は、ステップＳ１０３に進む。
ステップＳ１０３では、カメラＩＣ１１８は、Ｓｔａｇｅの値が４か否かを判定する。４であればステップＳ１０４に、４でなければステップＳ１０５に進む。
【００３４】
ステップＳ１０５では、カメラＩＣ１１８は、Ｓｔａｇｅの値を１インクリメントしてステップＳ１０１に戻る。
【００３５】
ステップＳ１０６では、カメラＩＣ１１８は、Ｓｔａｇｅの値が２か否かを判定する。２であればステップＳ１０７に、２でなければステップＳ１１１に進む。
【００３６】
ステップＳ１０７では、カメラＩＣ１１８は、Ｓｔａｇｅ２の処理を行う。すなわち、カメラＩＣ１１８は、Ｓｔａｇｅ１（ステップＳ１０２）にて取得した無限遠側のＡＦ評価値と前回のＳｔａｇｅ３（ステップＳ１１３）にて取得した至近側のＡＦ評価値とを比較する。無限遠側のＡＦ評価値が至近側のＡＦ評価値よりも高ければ、カメラＩＣ１１８は、ステップＳ１０８に進み、そうでなければステップＳ１０９に進む。
【００３７】
ステップＳ１０７からステップＳ１０８に進んだ場合、カメラＩＣ１１８は、フォーカスレンズ１０５の駆動方向（以下、フォーカス駆動方向という）を無限遠側に設定する。また、フォーカスレンズ１０５の駆動量（以下、フォーカス駆動量という）を以下のように設定する。すなわち、ＡＦ評価値が無限遠側ほど高くなる（合焦位置がより無限遠側にある）として、ウォブリング駆動の振幅に、ウォブリング駆動の中心位置を無限遠側にずらすための中心移動量を加算して無限遠側へのフォーカス駆動量を設定する。そして、ステップＳ１１０に進む。一方、ステップＳ１０７からステップＳ１０９に進んだ場合、カメラＩＣ１１８は、フォーカス駆動方向を無限遠側に設定するとともに、フォーカス駆動量を、上記中心移動量を加算することなく、ウォブリング駆動の振幅に設定する。そして、ステップＳ１１０に進む。
【００３８】
ステップＳ１１０では、カメラＩＣ１１８は、ステップＳ１０８又はＳ１０９で設定されたフォーカス駆動量、フォーカス駆動方向およびウォブリング駆動のための所定のフォーカスレンズ１０５の駆動速度を含むフォーカス駆動命令をレンズＩＣ１１１に与える。レンズＩＣ１１１は、カメラＩＣ１１８からのフォーカス駆動命令に応じてフォーカス駆動部１０６に駆動命令を与える。この際、レンズＩＣ１１１は、必要に応じてフォーカスレンズ１０５およびその駆動に関係するすべての部材の状態（例えば、他の駆動部との同時駆動時の電圧制限）を考慮した補正を行ってフォーカス駆動部１０６に駆動命令を与える。フォーカス駆動部１０６は、該駆動命令に対応する励磁信号（励磁波形）をモータドライバ１０６ｄにて生成し、モータ１０６ａを駆動して駆動命令に応じた駆動方向に該駆動命令に応じた駆動量だけフォーカスレンズ１０５を駆動する。そして、カメラＩＣ１１８は、ステップＳ１０３に進む。
【００３９】
ステップＳ１１１では、カメラＩＣ１１８は、Ｓｔａｇｅの値が３か否かを判定する。３であればステップＳ１１３に、３でなければステップＳ１１２に進む。
【００４０】
ステップＳ１１３では、カメラＩＣ１１８は、Ｓｔａｇｅ３の処理を行う。すなわち、至近側におけるＡＦ評価値をＡＦ処理回路１１７に算出させる。そして、至近側のＡＦ評価値を取得した後、カメラＩＣ１１８は、ステップＳ１０３に進む。
【００４１】
また、ステップＳ１１２では、カメラＩＣ１１８は、Ｓｔａｇｅ４の処理を行う。すなわち、カメラＩＣ１１８は、Ｓｔａｇｅ３（ステップＳ１１３）にて取得した至近側のＡＦ評価値と前回のＳｔａｇｅ１（ステップＳ１０２）にて取得した無限遠側のＡＦ評価値とを比較する。至近側のＡＦ評価値が無限遠側のＡＦ評価値よりも高ければ、カメラＩＣ１１８は、ステップＳ１０８に進み、そうでなければステップＳ１０９に進む。
【００４２】
ステップＳ１１２からステップＳ１０８に進んだ場合、カメラＩＣ１１８は、フォーカス駆動方向を至近側に設定する。また、フォーカス駆動量を以下のように設定する。すなわち、ＡＦ評価値が至近側ほど高くなる（合焦位置がより至近側にある）として、ウォブリング駆動の振幅に、ウォブリング駆動の中心位置を至近側にずらすための中心移動量を加算して至近側へのフォーカス駆動量を設定する。そして、ステップＳ１１０に進む。一方、ステップＳ１１２からステップＳ１０９に進んだ場合、カメラＩＣ１１８は、フォーカス駆動方向を至近側に設定するとともに、フォーカス駆動量を、上記中心移動量を加算することなく、ウォブリング駆動の振幅に設定する。そして、カメラＩＣ１１８は、ステップＳ１１０に進み、前述したようにフォーカス駆動命令をレンズＩＣ１１１に与え、フォーカスレンズ１０５を駆動する。そして、カメラＩＣ１１８は、ステップＳ１０３に進む。
【００４３】
ステップＳ１０４では、カメラＩＣ１１８は、Ｓｔａｇｅの値を１に戻す。その後、カメラＩＣ１１８は、ステップＳ１０１に戻る。
【００４４】
以上のようにしてフォーカスレンズ１０５の往復駆動と中心移動とを繰り返してＡＦ評価値が増加する方向にフォーカスレンズ１０５を移動させることで、ＡＦ評価値が最大となる合焦位置を検出することができる。
【００４５】
ここで、フォーカス駆動方向やフォーカス駆動量は、被写体の移動その他の変化に応じて頻繁に変化し、フォーカスレンズ１０５の加減速を含めた駆動中であっても新たなフォーカス駆動命令がカメラＩＣ１１８からレンズＩＣ１１１に与えられる可能性がある。このため、フォーカスレンズ１０５の減速時の駆動量に対応するモータ１０６ａの回転量である減速変位角を所定の周期で計算して更新することが好ましい。本実施例では、減速変位角の更新をモータ１０６ａの所定の変位角周期で、例えばホールＩＣ１０７の出力の変化ごとに行う。ただし、減速変位角を所定の時間周期で更新してもよいし、時間周期と変位角周期の両者で更新してもよい。
【００４６】
また、本実施例では、後に詳しく説明するが、ステッピングモータ１０６ａをオープンループ制御とフィードバック制御とを併用して駆動する。具体的には、該モータ１０６ａの高速駆動を行う場合はフィードバック制御で駆動し、中低速駆動または駆動量が小さい場合はオープンループ制御で駆動する。以下で説明する減速変位角の算出は、オープンループ制御とフィードバック制御のいずれの制御を行う場合にも適用することができる。
【００４７】
フォーカスレンズ１０５は、駆動前の位置からカメラＩＣ１１８からのフォーカス駆動命令に含まれるフォーカス駆動量だけ移動した目標停止位置に高速かつ精度良く停止することが必要である。このため、レンズＩＣ１１１は、現在のモータ１０６ａの角速度（回転速度）ωから停止するまでに要する回転量、言い換えれば減速を開始させる残り回転量である減速変位角（減速回転量）θを算出し、停止までのスケジューリングを所定の変位角周期で行う。また、角速度ωだけでなく、角加速度（回転加速度）αによっても減速変位角θが変わる。このため、角速度ωおよび角加速度αを含む多変数を用いて減速変位角θを算出する。レンズＩＣ１１１は、加速度算出手段、負荷トルク算出手段および制御手段として機能する。
【００４８】
なお、以下では、任意の角速度ωから停止位置精度を保証できる角速度（以下、減速目標角速度という）ωｓｔｏｐまたは角速度０に減速する際の減速変位角θの算出方法について説明する。ただし、この算出方法は、停止を前提としない単なる減速についても適用することができる。
【００４９】
レンズＩＣ１１１は、モータ１０６ａの運動方程式である式（１）を用いて、駆動中のモータ１０６ａが減速して停止するまでに要する減速変位角θを算出する。
【００５０】
【数１】
0006045453.tif 000002
【００５１】
式（１）の第１項は、慣性モーメントＩと角加速度ｄ２θ／ｄｔ２（以下、αと略す）との積で表される加速トルクを示す。また、第２項は、粘性係数Ｄと角速度ｄθ／ｄｔ（以下、ωと略す）との積で表される粘性抵抗を示す。さらに、第３項は負荷トルクＴＬを示し、左辺の総和はモータ１０６ａが発生するトルクＴｍと等価である。
【００５２】
また、現在の角速度ωから停止精度を保証できる減速目標角速度ωｓｔｏｐまで減速するのに要するモータ１０６ａの仕事量は、以下の式（２）で表される。
【００５３】
【数２】
0006045453.tif 000003
【００５４】
式（１），（２）より、減速して停止するまでに要する減速変位角θは、式（３）で表される。
【００５５】
【数３】
0006045453.tif 000004
【００５６】
式（３）において、慣性モーメントＩおよび粘性係数Ｄは定数項である。また、減速目標角速度ωｓｔｏｐは目標停止位置に対する行き過ぎが発生しない角速度として一意に設定され、角速度ωおよび角加速度αは、ホールＩＣ１０７の出力信号の変化周期を用いて算出される。このことから、負荷トルクＴＬを求めることで、負荷変動を考慮した減速変位角θが一意に定まる。
【００５７】
図３に示したモータ１０６ａとフォーカスレンズ１０５との配置関係において、モータ１０６ａが発生する回転トルクは、ラック１０６ｆを介してリードスクリュー１０６ｂの軸方向の駆動力に変換され、フォーカスレンズ１０５を光軸方向に駆動する。図３に示した駆動機構における負荷トルクＴＬは、以下の式（４）で表される。
【００５８】
【数４】
0006045453.tif 000005
【００５９】
式（４）において、第１項は駆動方向、すなわち光軸方向での荷重Ｆ［Ｎ］、リードスクリュー１０６ｂのリード［ｍ／ｒｅｖ］および効率ηで表される。駆動方向の荷重Ｆは、外力とフォーカスレンズ１０５およびフォーカス保持枠等の被駆動部材の総質量ｍ［ｋｇ］に加わる重力加速度ｇ［ｍ／ｓ２］の和で表される。
【００６０】
本実施例において、フォーカスレンズ１０５は不図示のレンズ鏡筒内に配置されていることから、外力を無視できるものとすると、駆動方向の荷重Ｆは式（５）で表される。
【００６１】
【数５】
0006045453.tif 000006
【００６２】
式（５）において、第１項は駆動方向にかかる重力加速度の力であり、第２項は第１項に直交する力で摺動面における摺動摩擦の大きさを表す。なお、ζは駆動方向と光軸とのなす角度であり、μは摺動面における摩擦係数を表す。つまり、光軸方向と重力方向との関係によって駆動方向の荷重Ｆも変化するため、交換レンズ２００（カメラ１００）の姿勢によって負荷トルクを表す式（４）の第１項が変化する。例えば、ζ＝０［ｄｅｇ］、つまり図３に示すように駆動方向と光軸とが平行で、かつ両者が重力方向に対して直交する方向（水平方向）に延びる場合、式（５）の第１項は０、第２項は１となり、摺動面での摩擦力のみが働く。
【００６３】
式（４）において、第２項はラックの付勢荷重Ｆ０［Ｎ］、ラックの摩擦抵抗μ０およびリードスクリュー１０６ｂのリード［ｍ／ｒｅｖ］により表される。付勢荷重Ｆ０を定数項とみなすと、式（４）で表される負荷トルクＴＬは上述した姿勢と、摩擦係数に関わる温度の変化と、モータ個体の製造ばらつきによって変動する。
【００６４】
姿勢は前述した姿勢センサ１２２からの出力を用いて検出（推定）することができる。また、温度変化は、交換レンズ２００内に設けられた温度センサ１２１を用いて検出（測定）することができる。本実施例において、被駆動部材の総質量ｍに加わる重力加速度ｇは、ラック１０６ｆの付勢荷重Ｆ０に比べて十分に小さいため、各種センサを設けることによって負荷トルクＴＬの各要素を測定することはせずに、負荷トルクＴＬ全体を推定する。ただし、温度センサ１２１および姿勢センサ１２２からの出力を用いて式（４）および式（５）から負荷トルクを導出してもよく、負荷トルクＴＬの導出過程はどのようなものであってもよい。
【００６５】
また、本実施例では、負荷トルクＴＬを式（４）および式（５）を用いて簡易的に算出する場合について説明している。しかし、リードスクリュー１０６ｂとラック１０６ｆとの噛み合いにより生ずるロスや、フォーカス保持枠に対するガタ取りのためのばね等による付勢力や、グリスの粘性抵抗の温度変化等を負荷変動要因として考慮すると、より負荷トルクの推定精度が高まる。実際のフォーカスレンズ１０５の駆動機構の構成に応じて、負荷トルクＴＬを適切に定式化して、該負荷トルクＴＬの変動要素を明確化することが好ましい。
【００６６】
なお、必ずしも姿勢と温度の双方を負荷トルクＴＬの変動要素とする必要はなく、これらのうち少なくとも一方を変動要素としてもよい。
【００６７】
本実施例では、式（１）から負荷トルクＴＬを加速駆動状態（以下、単に加速状態という）および定速駆動状態（以下、単に定速状態という）のそれぞれにて算出する。まず、加速状態での負荷トルクＴＬの算出について説明する。ここでも粘性負荷の影響を無視すると、式（１）は加速トルクＩ・αと負荷トルクＴＬの和がモータ１０６ａの発生トルクＴｍと等しくなる。慣性モーメントＩは駆動機構の構成から既知であり、角加速度αはホールＩＣ１０７の出力変化時間の時間微分により算出可能である。モータ１０６ａの発生トルクＴｍは、以下の式（６）で表される。
【００６８】
【数６】
0006045453.tif 000007
【００６９】
式（６）において、Ｋｔはトルク定数、ｉはモータ１０６ａの励磁コイルに与える励磁信号の電流値（以下、励磁電流という）、ｆは励磁電流の周波数、φは励磁電流の位相遅れである。式（６）を用いることにより、励磁電流ｉが定まればモータの発生トルクＴｍを求めることができる。なお、オームの法則によって入力電圧からモータ１０６ａの発生トルクＴｍを求めることもできる。したがって、式（６）より求められるモータ１０６ａの発生トルクＴｍと加速トルクＩ・αとの差分から負荷トルクＴＬが求まる。
【００７０】
次に、定速状態における負荷トルクＴＬの算出について説明する。定速状態とは、モータ１０６ａの角速度の変動がほとんどない状態を示す。本実施例では、定速状態におけるモータ１０６ａの制御に、定電流制御と定進角制御を併用する。
【００７１】
定電流制御では、励磁電流を一定とし、該励磁電流の位相とロータの回転角（回転位相）である機械的位相との位相差、すなわち進角を制御することで、駆動速度またはトルクを制御する。一方、定進角制御では、進角を一定として、励磁電流を増減させることで駆動速度またはトルクを制御する。
【００７２】
図５には、モータ１０６ａの励磁電流（図にはモータ印加電流ＩＭと記す）を一定とする定電流制御において、負荷トルクＴＬが変動した場合の進角ψと角速度ωとの関係を示す。また、図６には、モータ１０６ａの定進角制御において負荷トルクＴＬが変動した場合の励磁電流（モータ印加電流ＩＭ）と角速度ωとの関係を示す。
【００７３】
図５において、進角ψと角速度ωとは比例関係にあるため、進角ψが大きくなるとモータ１０６ａが発生するトルク（発生トルク）が大きくなり、角速度ωも大きくなる。ただし、進角ψがほぼ９０［ｄｅｇ］で発生トルクが最大となり、この進角ψを超えた進角では発生トルクが減少し、発生トルクが負荷トルクよりも小さくなるとモータ１０６ａは脱調する。
【００７４】
また、図５において、負荷トルクＴＬ０が±βだけ変動してもトルク曲線の傾きには変化はなく、切片値のみ変化する。したがって、定電流制御における負荷トルクＴＬは、ホールＩＣ１０７の出力と励磁コイルに対する励磁波形から算出される角速度ωおよび進角ψを用いて、事前に測定された図５に示す特性から推定できる。
【００７５】
定進角制御での負荷トルクＴＬの推定についても定電流制御とほぼ同等であり、任意のタイミングにおける角速度ωとモータ印加電流ＩＭ（または電圧値）を用いて、図６に示す事前に測定した特性から負荷トルクＴＬを推定できる。
【００７６】
このように定電流制御と定進角制御のいずれにおいても負荷トルクＴＬを推定することができ、該推定結果と式（３）とを用いて減速変位角θを一意に求めることができる
次に、本実施例におけるレンズＩＣ１１１が行うフォーカスレンズ１０５の駆動制御、つまりはモータ１０６ａの駆動制御について、図７および図８のフローチャートを用いて説明する。図７には、カメラＩＣ１１８からレンズＩＣ１１１に対してフォーカス駆動命令が与えられた際に、レンズＩＣ１１１がフォーカスレンズ１０５を駆動する動作を示している。また、図８には、図７中のステップＳ２０３にて説明する制御方式の設定処理のためのサブルーチンを示している。レンズＩＣ１１１は、コンピュータプログラムとしてのモータ制御プログラムに従ってモータ１０６ａの駆動制御を行う。
【００７７】
ステップＳ２０１では、レンズＩＣ１１１は、カメラＩＣ１１８からのフォーカス駆動命令を受け取る。レンズＩＣ１１１は、カメラＩＣ１１８からフォーカス駆動命令だけでなく、ズームレンズ１０２の駆動命令、絞り１０３の駆動命令および防振レンズ１０４の駆動命令等も受け取るが、ここではフォーカス駆動命令に対する動作についてのみ説明する。
【００７８】
フォーカス駆動命令には、前述したフォーカス駆動方向とフォーカス駆動量に加えて、最大角速度ωｍａｘが含まれる。フォーカス駆動量は零以外の値であり、最大角速度ωｍａｘは１以上の値である。なお、レンズＩＣ１１１は、フォーカス駆動命令に対応したフォーカスレンズ１０５の駆動中であっても、新たなフォーカス駆動命令を受け付ける。
【００７９】
ステップＳ２０２では、レンズＩＣ１１１は、受け取ったフォーカス駆動量および最大角速度ωｍａｘから今回のモータ１０６ａの駆動制御をオープンループ制御で行うかフィードバック制御で行うかを決定する。本実施例では、フォーカス駆動量が所定量より小さい場合や最大角速度ωｍａｘが所定角速度より遅い中低速域である場合はオープンループ制御を選択する。一方、フォーカス駆動量が所定量より大きく、かつ最大角速度ωｍａｘが所定角速度より速い高速域である場合はフィードバック制御を選択する。これはステッピングモータ１０６ａの特性上、進角ψを適切に制御しないと高速域で駆動できないことに基づく選択基準である。
【００８０】
次にステップＳ２０３では、レンズＩＣ１１１は、モータ１０６ａの定速状態での制御方式を定電流制御と定進角制御のいずれかに設定する。この定速状態での制御方式の設定動作を図８のフローチャートを用いて説明する。
【００８１】
ステップＳ３０１では、レンズＩＣ１１１は、ステップＳ２０２で選択（決定）されたモータ１０６ａの駆動制御方式がオープンループ制御かフィードバック制御かを判定する。オープンループ制御である場合は、定速状態での制御方式として定電流制御を選択する。定進角制御では進角ψを一定に保つために励磁波形にフィードバック情報が含まれるため、オープンループ制御の場合は必ず定電流制御が選択される。そして、ステップＳ３０６に進む。一方、フィードバック制御である場合は、他の条件を考慮して定電流制御と定進角制御のいずれかを選択するため、ステップＳ３０２に進む。
【００８２】
ステップＳ３０２では、レンズＩＣ１１１は、カメラ１００が有するバッテリの残量チェックを行う。バッテリ残量が最大充電容量の所定パーセント以下（例えば、２０％以下）である場合は、電源不足とみなして定電流制御を選択し、ステップＳ３０６に進む。一方、バッテリ残量が所定パーセントを超えている場合は定進角制御を選択し、ステップＳ３０３に進む。
【００８３】
ステップＳ３０３〜Ｓ３０５では、レンズＩＣ１１１は、定進角制御の設定を行う。まずステップＳ３０３では、レンズＩＣ１１１は、励磁電流（モータ印加電流ＩＭ）に対して上限値を設定する。上限値はモータ定格値と同値としてもよいし、他の駆動部との同時駆動やバッテリ残量等で制限がある場合には定格値未満に定めてもよい。
【００８４】
ステップＳ３０４では、レンズＩＣ１１１は、進角を予め設定された進角ψＣに固定する。これにより、該固定した進角ψＣを保つような励磁波形をモータドライバ１０６ｄが生成する。
【００８５】
ステップＳ３０５では、レンズＩＣ１１１は、負荷トルクＴＬの初期値を設定する。初期値は、直前の駆動で負荷トルクを取得できていれば、その値を負荷トルクＴＬとして設定する。また、このような負荷トルクを取得できていない場合はリセット動作時の定速処理で取得した値、もしくは工場調整時に取得した値を負荷トルクＴＬとして設定する。なお、本実施例では、一定時間の間外部から操作がなければスリープ状態となり、スリープ状態からの復帰後電源投入時に必ずリセット動作する機能を有する。リセット動作中において負荷トルクＴＬを推定できれば、少なくともスリープ状態になる一定時間より長い時間間隔での温度変化は無視することができるため、リセット動作時の取得であっても負荷トルクＴＬの変動を抑制することができる。
【００８６】
ステップＳ３０９では、レンズＩＣ１１１は、式（３）を用いて減速変位角θを算出する。停止からの駆動では角速度ω＝０であるため、減速変位角θ＝０を設定する。駆動中の場合は角速度ωに応じて減速変位角θが設定される。
【００８７】
一方、ステップＳ３０６〜Ｓ３０８では。レンズＩＣ１１１は、定電流制御の設定を行う。ステップＳ３０６では、レンズＩＣ１１１は、可変制御する進角ψに上限値を設定する。発生トルクに比べて負荷が小さい場合や、駆動する角速度に制限が設けられる場合等はその条件に応じて適切な進角ψを設定する。なお、０＜ψ＜９０［ｄｅｇ］である。
【００８８】
ステップＳ３０７では、レンズＩＣ１１１は、モータ１０６ａに印加する励磁電流（モータ印加電流ＩＭ）を固定値として設定する。
【００８９】
ステップＳ３０８では、レンズＩＣ１１１は、ステップＳ３０５と同様に、負荷トルクＴＬの初期値を設定する。初期値としては、直前の駆動時、リセット駆動時または工場調整時に取得された負荷トルクを設定する。そして、ステップＳ３０９に進み、減速変位角θを算出する。ステップＳ３０９からは図７中のステップＳ２０４に進む。
【００９０】
ステップＳ２０４では、レンズＩＣ１１１は、式（３）を用いて算出した減速変位角θと現在の実際の残り回転量（以下、残り駆動量という）とを比較する。初回判定時は減速変位角θ＝０であるので、ステップＳ２０５に進む。励磁波形を生成するごとに残り駆動量は減少していくため、残り駆動量が減速変位角θ以下になった場合はステップＳ２１２に進む。
【００９１】
ステップＳ２０５では、レンズＩＣ１１１は、現在の角速度ωと最大角速度ωｍａｘとを比較して、加速処理を行うか定速処理を行うかを決定する。角速度ωが最大角速度ωｍａｘに達していない場合は加速処理を行うためにステップＳ２０６に進み、達している場合は定速処理を行うために、ステップＳ２０７に進む。
【００９２】
ステップＳ２０６では、レンズＩＣ１１１は、モータ１０６ａの加速処理を行う。具体的には、モータ１０６ａがオープンループ制御されている場合は、予め定められた加速特性、例えば一定の角加速度でモータ１０６ａを加速させる。一方、フィードバック制御されている場合は、最大角加速度ωｍａｘと現在の角速度ωとの角速度の偏差から励磁波形の周波数または振幅を設定する。そして、ステップＳ２０８に進む。
【００９３】
ステップＳ２０７では、レンズＩＣ１１１は、モータ１０６ａの定速処理を行う。具体的には、モータ１０６ａがオープンループ制御およびフィードバック制御のいずれがなされている場合でも、角速度が最大角速度ωｍａｘとなる励磁波形を出力する。ただし、フィードバック制御が行われている場合には、ホールＩＣ１０７の出力から算出される角速度ωが変化したときに現在の角速度と最大角速度ωｍａｘとの偏差が零になるような励磁波形を出力する。そして、ステップＳ２０８に進む。
【００９４】
ステップ２０８では、レンズＩＣ１１１は、ステップＳ２０６，Ｓ２０７での加速処理および定速処理にしたがってモータドライバ１０６ｄを介して励磁波形を生成し、モータ１０６ａを駆動する。
【００９５】
次にステップＳ２０９では、レンズＩＣ１１１は、ホールＩＣ１０７からの出力がＬｏｗからＨｉｇｈまたはＨｉｇｈからＬｏｗに変化したか否かを判定する。変化した場合は各種情報を更新するためにステップＳ２１０に進み、変化がなかった場合はステップＳ２０４へ進む。
【００９６】
ステップＳ２１０では、レンズＩＣ１１１は、ホールＩＣ１０７からの出力を用いて角速度ωおよび角加速度αを算出する。具体的には、角速度ωは、ホールＩＣ１０７からの前回の出力時点から今回の出力時点までの経過時間から算出される。また、角加速度αは、ホールＩＣ１０７からの前回の出力時点で算出された角速度ωと今回の出力時点で算出された角速度ωとの差から算出される。また、本ステップにおいて、レンズＩＣ１１１は、励磁波形の位相とホールＩＣ１０７の出力とから進角ψを算出する。
【００９７】
続いてステップＳ２１１では、レンズＩＣ１１１は、減速変位角θを再計算する。すなわち、ステップＳ２１０にて算出（更新）された角速度ωと角加速度αを式（３）に代入して、減速変位角θを求める。
【００９８】
一方、ステップＳ２１２では、レンズＩＣ１１１は、残り駆動量が０か否かを判定する。０でない場合は減速処理を行うためにステップＳ２１３に進み、０である場合は停止処理を行うためにステップＳ２１４に進む。
【００９９】
ステップＳ２１２では、レンズＩＣ１１１は、モータ１０６ａの減速処理を行う。加速処理と同様に、モータ１０６ａがオープンループ制御されている場合は、予め定められた特性の下でモータ１０６ａを減速させる。また、モータ１０６ａがフィードバック制御されている場合は、角速度偏差から励磁波形の周波数または振幅を設定する。また、フィードバック制御では、残り駆動量と減速変位角θとの偏差である位置偏差を帰還信号として付与した位置制御を併用してもよい。
【０１００】
ステップＳ２１４では、レンズＩＣ１１１は、モータ１０６ａの停止処理を行う。すなわち、レンズＩＣ１１１は、モータ１０６ａに対する通電状態を一定時間保持した後、無通電状態に移行してモータ１０６ａを停止させる。
【０１０１】
図９のフローチャートには、粘性抵抗を含む速度に依存して変化する負荷成分（速度依存負荷）を算出する処理を示す。レンズＩＣ１１１は、工場調整時や電源投入によるリセット駆動時に本処理を行い、式（１）に表される粘性係数Ｄを算出する。具体的には、レンズＩＣ１１１は、モータ１０６ａの発生トルクＴｍを固定して、角速度が定速になるように制御しつつ、複数の角速度（本実施例では５つの角速度）における負荷トルクをそれぞれ算出する。そして、角速度の変化に対する負荷トルクの増加率から比例係数としての粘性係数Ｄを求める。
【０１０２】
ステップＳ４０１では、レンズＩＣ１１１は、粘性係数Ｄを初期化するとともに、目標角速度ωｎを初期化（ｎ＝０）する。
【０１０３】
ステップＳ４０２では、レンズＩＣ１１１は、定トルクで駆動するための初期設定を行う。駆動する角速度によってモータ１０６ａに印加すべき逆起電圧が異なるため、角速度に応じて適切なパワーレートや励磁電圧を設定する。
【０１０４】
ステップＳ４０３では、レンズＩＣ１１１は、目標角速度ωｎ（ｎ＝１〜５）を設定する。例えば１−２相換算で、５００，１０００，１５００，２０００，２５００［ｐｐｓ］の順に目標角速度を設定する。
【０１０５】
ステップＳ４０４では、レンズＩＣ１１１は、前ステップまでの設定値に基づいて所定の周波数および振幅値を有する励磁波形を生成し、モータ１０６ａを駆動する。
【０１０６】
ステップＳ４０５では、レンズＩＣ１１１は、モータ１０６ａが目標角速度ωｎでの定速状態となったか否かを判定する。すなわち、エンコーダ１０７の出力から算出される現在の角速度と目標角速度とがほぼ等しくなったときは定速状態になったとしてステップＳ４０６に進み、そうでない場合はステップＳ４０４に進む。
【０１０７】
ステップＳ４０６では、レンズＩＣ１１１は、定速状態での負荷トルクを算出する。続いてステップＳ４０７では、レンズＩＣ１１１は、目標角速度ωｎを次の目標角速度ωｎ＋１に変更する。
【０１０８】
次にステップＳ４０８では、レンズＩＣ１１１は、５つ全ての目標角速度ωｎでの負荷トルクの算出が終了したか否かを判定する。終了した場合はステップＳ４０９に進み、まだ終了していない場合はステップＳ４０２に戻る。
【０１０９】
ステップＳ４０９では、レンズＩＣ１１１は、算出された５つの目標角速度と負荷トルクとの関係から、速度依存負荷を抽出し、さらに粘性係数Ｄを算出する。
【０１１０】
このようにして粘性係数Ｄを求めることにより、前述した加速および定速状態での負荷トルクの算出において、式（１）の第２項までを考慮することができる。これにより、より高い精度で負荷トルクを求めることができ、より厳密な減速変位角θを算出することができる。
【０１１１】
本実施例では、ホールＩＣ１０７の出力変化のタイミングで減速変位角θを更新したが、前述したように所定の時間周期で減速変位角θを更新してもよい。また、負荷トルクＴＬや角速度ω、角加速度αを含めて各種変数にはセンサノイズや処理遅延が介在するため、これらを量子化した値を用いてもよい。
【０１１２】
また、前述したように、負荷トルクＴＬは各要素に細分化して要素毎に算出してもよい。特に本実施例におけるカメラ１００の姿勢は撮影条件によって自由に変化するため、被駆動部材であるフォーカスレンズ１０５の質量ｍが大きい場合は考慮すべきである。
【０１１３】
さらに、リードスクリュー１０６ｂの位置やフォーカスレンズ１０５を光軸方向にガイドするガイドバーに係合する不図示のスリーブの位置によって負荷トルクＴＬが変化する場合には、駆動する絶対位置も考慮に入れた負荷トルクＴＬを算出するとよい。これにより、より信頼性の高い減速変位角θが得られる。
【０１１４】
図１０には、図８および図９のフローチャートに従うモータ１０６ａの駆動制御の例を示す。図１０の下段のグラフの縦軸は駆動量（残り駆動量）を、上段のグラフの縦軸は角速度を、中段のグラフの縦軸は角加速度の絶対値をそれぞれ示す。また、下段のグラフには、ホールＩＣ１０７の出力変化のタイミングで更新される減速変位角θも示しており、減速変位角θと残り駆動量とが交わるタイミング、すなわち減速開始タイミングから減速が開始される。
【０１１５】
この駆動制御例では、時間０からモータ１０６ａの駆動を開始し、加速区間である時間Ｔ０〜Ｔ１にて加速目標角速度ωｍａｘまで加速する。その後、定速区間である時間Ｔ１〜Ｔ２では加速目標角速度ωｍａｘを維持し、減速開始タイミングである時間Ｔ２から時間Ｔ３までの減速区間にて停止精度を確保するための減速目標角速度ωｓｔｏｐに減速する。そして、時間Ｔ３〜Ｔ４で再び定速区間として減速目標角速度ωｓｔｏｐで所定の駆動量だけ駆動し、時間Ｔ４で停止する。停止時間であるＴ４よりも早い時間Ｔ３までに減速目標角速度ωｓｔｏｐに減速しておくことで、停止時間Ｔ４においてモータ１０６ａ（フォーカスレンズ１０５）を目標停止位置に高い停止位置精度で停止させることができる。
【０１１６】
図１０に示した各区間の詳細を、粘性係数Ｄは算出できているものとして説明する。加速区間においては、レンズＩＣ１１１は、式（１）から負荷トルクを算出する。ただし、駆動開始直後はモータ１０６ａの回転が安定しないため、駆動開始から所定時間の経過後から負荷トルクの算出を開始する。加速区間において負荷トルクから減速変位角θを求めると、図１０の下段に示すように、角速度の増加にほぼ比例して増加する。
【０１１７】
次に、定速区間においては、レンズＩＣ１１１が算出する減速変位角θはほぼ一定の値となる。残り駆動量は角速度に応じた傾きで減少していき、時間（減速開始タイミング）Ｔ３で減速変位角θと交わり（一致し）、減速区間へと移行する。この減速開始タイミングＴ３がモータ１０６ａの個体差や動作環境の変化に応じて変化する。
【０１１８】
減速区間では、図１０の中段に示した角加速度から明らかなように、加速区間に比べて角加速度の絶対値が大きい。これは、ラック１０６ｆがリードスクリュー１０６ｂに対してばね等により付勢されていることによって制動力が働きやすいためである。つまり、加速と減速において式（１）のｄω／ｄｔが異なり、減速の方がより大きな値となる。時間Ｔ３において減速目標角速度ωｓｔｏｐまで減速できているので、時間Ｔ４にて目標停止位置に対する行き過ぎを生ずることなく該目標停止位置に停止することができる。
【０１１９】
減速時における制動力の大きさは、上述したラック１０６ｆのリードスクリュー１０６ｂに対する付勢を含めて、フォーカスレンズ１０５の駆動系の構造に応じて決定する。したがって、減速時における角加速度の大きさを構造上で解析したり、事前に測定したり、加速時の特性から推定したりすることで、減速変位角θをさらに適切に設定できる。
【０１２０】
上記実施例によれば、モータ１０６ａの駆動状態である角速度ωや角加速度αに加え、製造のばらつき、経年、温度および姿勢等による負荷トルクＴＬの変化を考慮して減速変位角θ、言い換えれば減速区間長を決定する。このため、冗長さのない駆動制御により高い停止位置精度を実現することができる。つまり、減速区間に過不足がないため、余剰な減速処理を行うことがなく、結果的に高速駆動を実現しつつ、高い停止位置精度を保証することができる。
【０１２１】
なお、上記実施例では、加速区間の後、定速区間を経て減速区間に移行する場合について説明したが、駆動量が少ない場合等は定速区間を設けなくてもよい。つまり、加速区間から直接、減速区間に移行してもよい。この場合も、モータの駆動状態や負荷トルクの変化を考慮して減速区間長が決定されるので、冗長さのない駆動制御と高い停止位置精度とを実現することができる。
【０１２２】
また、一般には、ブラシレスモータにエンコーダを設けた場合にはフィードバック制御が行われるが、上記実施例にて説明したモータ駆動制御は、オープンループ制御を行う場合にも使用することができる。エンコーダはあくまで角速度ωや角加速度αを測定する手段として用い、加速区間または定速区間から減速区間への移行タイミング（減速開始タイミング）の決定手段としてのみ利用する。これにより、オープンループ制御においてもモータの個体別の特性や被駆動部材の状態に応じて必要となる減速区間を設定することが可能となる。
【０１２３】
また、上記実施例で説明したフォーカスレンズの駆動のように所定の駆動範囲内で自由に駆動可能な被駆動部材を駆動する場合においてその駆動領域によって負荷が変動するときには、駆動領域も考慮に入れて減速変位角の算出を行うとよい。この場合において、フォーカスレンズの駆動範囲における負荷トルクの変動量が既知であれば、フォーカスレンズの駆動位置を変数に含む関数を用いて負荷トルクに補正を加えるようにしてもよい。これにより、さらに高い停止位置精度が得られる。
【０１２４】
以上説明した各実施例は代表的な例にすぎず、本発明の実施に際しては、各実施例に対して種々の変形や変更が可能である。
【産業上の利用可能性】
【０１２５】
光学機器等において被駆動部材の高い停止位置精度を保証できるモータ制御装置を提供することができる。
【符号の説明】
【０１２６】
１００  カメラ
１０５        フォーカスレンズ
１０６        フォーカス駆動部
１０６ａ      ステッピングモータ
１０６ｂ      リードスクリュー
１０６ｃ      エンコーダマグネット
１０６ｄ      モータドライバ
１０６ｆ      ラック
１０７        ホールＩＣ
１１１        レンズＩＣ
１１７        ＡＦ処理回路
１１８        カメラＩＣ
【図１】
0006045453.tif 000008
【図２】
0006045453.tif 000009
【図３】
0006045453.tif 000010
【図４】
0006045453.tif 000011
【図５】
0006045453.tif 000012
【図６】
0006045453.tif 000013
【図７】
0006045453.tif 000014
【図８】
0006045453.tif 000015
【図９】
0006045453.tif 000016
【図１０】
0006045453.tif 000017