(57)【特許請求の範囲】
【請求項１】
パルスモータを駆動する駆動手段と、
位置検出のために上記パルスモータを駆動する際に上記パルスモータへ供給されるパルス数をカウントするカウント手段と、
上記パルスモータの駆動停止状態のときの停止位相を記憶する記憶手段と、を備え、
上記パルスモータを再起動させるときに、上記カウント手段は駆動電流の位相が上記停止位相になるまでカウントを停止することを特徴とするパルスモータ制御装置。
【請求項２】
上記駆動手段は上記パルスモータをＰＷＭ制御することを特徴とする請求項１に記載のパルスモータ制御装置を備えた撮像装置。
【請求項３】
パルスモータを駆動する駆動手段と、
位置検出のために上記パルスモータを駆動する際に上記パルスモータへ供給されるパルス数をカウントするカウント手段と、
上記パルスモータの駆動停止状態のときの停止位相を記憶する記憶手段と、を備えたパルスモータの制御方法であって、
上記パルスモータを再起動させるときに、上記カウント手段は駆動電流の位相が上記停止位相になるまでカウントを停止することを特徴とするパルスモータの制御方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明はパルスモータ制御装置および方法、並びにこれを用いた撮像装置に関し、特に、パルスモータを駆動する際の駆動制御に関するものである。
【０００２】
【従来の技術】
一般に、パルスモータは回転角、回転速度をオープン制御で正確に制御できるため、ＯＡ機器等の駆動源として広く用いられている。
また、パルスモータは、歩進パルス数に対する回転角度が一定であるため、歩進パルスをそのままインクリメントして位置検出を行うことができ、位置検出のためのエンコーダを別に必要としないので、近年ではビデオカメラ等の撮像装置のレンズ制御源としても用いられている。
【０００３】
以下に、パルスモータの駆動方法の一例を説明する。
図１４は、パルスモータおよびその制御装置の構成例を示す図である。図１４において、１および２はドライバ回路、３および４は２相パルスモータ５のモータ巻線、６は２相パルスモータ５のマグネットである。また、７はモータ制御を行うためのマイクロコンピュータ（以下、マイコンと称す）であり、周波数とデューティ比とを設定可能なパルス信号（Ｅ，Ｆ）を出力するＰＷＭユニット７ａと、プログラム可能なタイマユニット７ｂと、“Ｈ”信号および“Ｌ”信号を出力可能なポートａ，ｂと、モータの駆動速度やＰＷＭデューティ比等のデータを格納したＲＯＭ７ｃとを内蔵している。
【０００４】
図１５は、上記ドライバ回路１，２の内部構成図である。図１５において、８および９はＰＮＰトランジスタ、１０および１１はＮＰＮトランジスタ、１２，１３，１４，１５はダイオード、１６，１７，１８，１９は抵抗、２０および２１はＡＮＤゲート、２２はＮＯＴゲートである。
【０００５】
この図１５において、入力ＥＮ１が“Ｈ”レベルでもう一方の入力ＩＮ１も“Ｈ”レベルのとき、トランジスタ８（以下Ｔｒと称す）およびＴｒ１１はＯＮ状態となり、Ｔｒ９およびＴｒ１０はＯＦＦ状態となる。したがって、モータ巻線３にはＯＵＴ１からＯＵＴ２の方向に電流が流れる。また、入力ＥＮ１が“Ｈ”レベルで入力ＩＮ１が“Ｌ”レベルのとき、Ｔｒ９およびＴｒ１０はＯＮ状態となり、Ｔｒ８およびＴｒ１１はＯＦＦ状態となる。したがって、モータ巻線３にはＯＵＴ２からＯＵＴ１の方向に電流が流れる。また、入力ＥＮ１が“Ｌ”レベルのときは、もう一方の入力ＩＮ１の入力レベルに関わらずＴｒ８，Ｔｒ９，Ｔｒ１０およびＴｒ１１は皆ＯＦＦ状態となり、出力ＯＵＴ１からＯＵＴ２はバイインピーダンス状態となる。
【０００６】
図１６は、これらの入力ＥＮ１，ＩＮ１と各Ｔｒ８〜９の状態との関係を示すものである。以上は一方のドライバ回路１の関係を示したものであるが、もう一方のドライバ回路２の関係、すなわち、ＩＮ２，ＥＮ２，各Ｔｒ８〜９間の関係も同じである。
【０００７】
ここで、上記ドライバ回路１の入力ＩＮ１には、マイコン７のＰＷＭユニット７ａより出力されたパルス信号Ｅが入力され、上記ドライバ回路２の入力ＩＮ２には、マイコン７のＰＷＭユニット７ａより出力されたパルス信号Ｆが入力される（駆動手段）。また、入力ＥＮ１，ＥＮ２は、図１に示すようにそれぞれマイコン７の出力ポートａ，ｂに接続され、"Ｈ"／"Ｌ"レベルがコントロールされる（駆動手段）。これらの入力ＥＮ１，ＥＮ２は、マイコン７に接続せずに"Ｈ"レベルに固定するようにしても良い。
【０００８】
次に、ＰＷＭ（パルス信号Ｅ，Ｆ）によるモータ巻線３，４の電流の制御方法を説明する。マイコン７は、ＰＷＭ出力（パルス信号Ｅ，Ｆ）を一定の周波数fpでドライバ回路１，２に供給する。このＰＷＭ出力の“Ｈ”／“Ｌ”により上述した論理でモータ巻線３，４は駆動されるが、周波数fpが高いため、モータ巻線３，４のインダクタンスの影響でモータ巻線３，４には、図１７に示すようなデューティ比に応じた電流が流れる。
【０００９】
したがって、振動や騒音の小さいとされる正弦波駆動を行うためには、このＰＷＭデューティ比の変化を略正弦波的にすれば良い。さらに効率よくモータ駆動を行うためには、上記正弦波の振幅をモータの回転速度に応じて変化させるようにＰＷＭデューティ比の変化を調整すれば良い。このデューティ比の操作方法を以下に述べる。
【００１０】
すなわち、図１８に示すように、最大値をＦＦｈ、最小値を００ｈとした基本デューティ比データ（Ｄｎ）をＲＯＭ７ｃに格納しておく。このデューティ比データは、例えば一周期の正弦波信号を６４分割したものである。上列の０〜６３の数値は、便宜的に付けたＲＯＭ７ｃのアドレスであり、図１９のＡに相当するものである。このアドレスでは、パルスモータを駆動させる駆動電流の正弦波形の位相の何処に位置するかが決定される。そして、エンコーダの代わりにマイコン７が、図１９のＤに相当するパルス位相位置、つまりパルス数をカウントすることによって、位置検出を行うことができる。ここでは、正弦波駆動電流の１周期で８パルス駆動している状態を示している。
【００１１】
また、図１８の下列の数値は、各アドレスに格納されたデューティ比データである。このデューティ比データをマイコン７のタイマ割り込みによって順次読み出して、ＰＷＭのデューティ比とする。このタイマ割り込み時間（Ｔｔ）を操作することにより、モータ回転速度を操作することができる。また、ＰＷＭ（Ｅ）とＰＷＭ（Ｆ）は、読み出しＲＯＭアドレスを１６ずらして９０ｄｅｇ位相のずれた関係とする。そして、パルスモータの駆動を停止させる際には、ＰＷＭ（ＥＦ）を停止すればよい。
【００１２】
【発明が解決しようとする課題】
上述したパルスモータは、ロータの停止した状態から駆動を開始する際には、ロータの保持トルク以上のトルクがかからないと駆動しない。したがって、正弦波電流で駆動する際には、必要とする保持トルク分と同等の駆動電流が必要で、この同等の駆動位相までは駆動を開始しない。例えば、図１９のＢ点の位相状態でロータが停止していたとすると、駆動を開始させるためには、少なくとも位相位置Ｄ＝５の位相状態の駆動電流をモータに加えてあげなくてはならない。
【００１３】
しかしながら、パルスモータの歩進パルスをインクリメントすることにより位置検出を行うときに、図１９のように駆動開始状態をＲＯＭアドレスＡ＝０から始めたとすると、アドレスＡ＝４０まではモータは駆動しないにも関わらず、歩進パルスはＤ＝５パルスだけ進んだことになり、位置検出は駆動開始から５パルス進んだことになる。したがって、パルスをカウントして位置検出を行う際にずれが生じてしまうという問題が発生する。
【００１４】
本発明は、このような問題を解決するために成されたものであり、略正弦波的な駆動電流を用いるパルスモータにおいて、特別な位置検出装置がない状態でも、正確な位相位置検出を行うことができるようにすることを目的とする。
【００１５】
【課題を解決するための手段】
本発明のパルスモータ制御装置は、パルスモータを駆動する駆動手段と、位置検出のために上記パルスモータを駆動する際に上記パルスモータへ供給されるパルス数をカウントするカウント手段と、上記パルスモータの駆動停止状態のときの停止位相を記憶する記憶手段と、を備え、上記パルスモータを再起動させるときに、上記カウント手段は駆動電流の位相が上記停止位相になるまでカウントを停止することを特徴とする。
【００１６】
本発明の撮像装置は、上記駆動手段は上記パルスモータをＰＷＭ制御することを特徴とする請求項１に記載のパルスモータ制御装置を備えている。
【００１７】
本発明のパルスモータの制御方法は、パルスモータを駆動する駆動手段と、位置検出のために上記パルスモータを駆動する際に上記パルスモータへ供給されるパルス数をカウントするカウント手段と、上記パルスモータの駆動停止状態のときの停止位相を記憶する記憶手段と、を備えたパルスモータの制御方法であって、上記パルスモータを再起動させるときに、上記カウント手段は駆動電流の位相が上記停止位相になるまでカウントを停止することを特徴とする。
【００２２】
上記のように構成した本発明によれば、パルスモータの駆動開始時に、記憶手段に記憶しておいた駆動停止状態のときのロータの停止位相位置の情報を利用することによって、パルスモータの実際の駆動量とパルスカウンタとのずれを取り除くことが可能となる。
【００２３】
【発明の実施の形態】
以下、本発明の一実施形態を図面に基づいて説明する。
【００２４】
（第１の実施形態）
本実施形態によるパルスモータ制御装置は、図１４に示したマイコン７によって構成される。図１は、このマイコン７の本実施形態に係る主要な機能構成を示すブロック図であり、図２は、本実施形態においてパルスモータの駆動開始時と駆動時にマイコン７によって行われる動作を示すフローチャートである。
【００２５】
図１において、７１は駆動情報設定部であり、マイコン７の外部からの情報に従って、パルスモータを駆動するべき駆動速度Ｖｔと駆動方向とを設定する。７２は割り込み時間設定部であり、上記駆動情報設定部７１により設定された駆動速度Ｖｔに応じたタイマ割り込み時間Ｔｔを設定する。以降、この設定されたタイマ割り込み時間ＴｔごとにＲＯＭ７ｃからデューティ比データＤｎが読み出され、ＰＷＭのデューティ比を実現した駆動電流として出力されることとなる。
【００２６】
７３はアドレス発生部（アドレス発生手段）であり、タイマ割り込み処理が発生するごとに、上記駆動情報設定部７１により設定されたモータの駆動方向に応じてアドレスＡの値をカウントアップあるいはカウントダウンしていく。そして、このアドレスＡに従ってＲＯＭ７ｃからデューティ比データＤｎが読み出される。
【００２７】
７４はパルスカウンタ（第２のカウント手段）であり、パルスモータを駆動するパルス幅ごとにカウント値Ｄをカウントする。上記デューティ比データＤｎで示される正弦波駆動電流の１周期を図１９のように６４アドレスで表し、１周期で８パルス駆動とした場合、１周期を６４分割したうちの８の倍数のところが１パルス分となるので、上記アドレス発生部７３から出力されるアドレスＡの値が８だけ進められるごとに、パルスカウンタ７４のカウント値Ｄは１だけカウントアップあるいはカウントダウンする。
【００２８】
７５は位置検出カウンタ（カウント手段）であり、駆動状態にあるパルスモータの現在の位相位置Ｃを検出し、歩進パルスとして出力するものである。この位置検出カウンタ７５もパルスカウンタ７４と同様に、アドレスＡの値が８だけ進められるごとにカウント値Ｃが１だけカウントアップあるいはカウントダウンする。７６は停止位置記憶部（記憶手段）であり、前回パルスモータの駆動が停止したときのロータの位相位置（停止したときにパルスカウンタ７４に格納されていたカウント値）を記憶しておくものである。この停止位置記憶部７６は、電源がＯＦＦにされても記憶内容を保持する不揮発性の記録媒体によって構成される。
【００２９】
７７は一致判断部（一致判断手段）であり、上記パルスカウンタ７４で計数されたカウント値Ｄと、上記停止位置記憶部７６に記憶（バックアップ）された以前のモータ停止時における歩進パルスの位相位置を表すカウント値Ｂとが一致するかどうかを判断し、一致したときに上記位置検出カウンタ７５のカウント動作を開始するように制御する（補正手段）。
【００３０】
また、図２において、ステップＳ２０１は電源投入のスタートであり、ここからパルスモータの駆動を開始する。ステップＳ２０２は、マイコン７内のカウンタ等を初期化する処理である。すなわち、ＲＯＭ７ｃに記憶されている図１８のようなデュティー比データＤｎを順番に読み出すためのアドレスＡを初期化するとともに、以前に電源をＯＦＦした際に停止位置記憶部７６に記憶（バックアップ）しておいたモータ停止位置の位相状態、例えば、図１９の位相位置Ｂの値を読み出す。そして、位置検出カウンタ７５のカウント値Ｃを初期化し（ここでは初期データを１００とした）、電源ＯＮ時であることを示す初期フラグｆを“１”（Ｈｉ）にする。
【００３１】
次に、ステップＳ２０３では、外部からの情報により、モータを駆動するべき速度Ｖｔと駆動方向とを設定する。これは、マイコン外部のスイッチや通信等、マイコン７に駆動速度Ｖｔと駆動方向とを入力できる構成であればよい。ステップＳ２０４では、上記設定された駆動速度Ｖｔに応じたタイマ割り込み時間Ｔｔを設定する。この時間は、駆動速度Ｖｔが速ければ短く、遅ければ長くなる。そして、ステップＳ２０５で、次に外部からの駆動情報がくるまで待機し、駆動情報が来たらステップＳ２０３に戻る。
以上に示した図２の動作を繰り返しながら、パルスモータを駆動させる。
【００３２】
次に、実際にパルスモータを駆動するためのＰＷＭ出力を制御しているタイマ割り込みルーチン内の動作フローを、図３に示す。
図３において、ステップＳ３０１は当該タイマ割り込みルーチンのスタートである。まず、ステップＳ３０２で上記図２に示したメインルーチン内で設定された駆動速度Ｖｔが“０”かどうかを判断する。
【００３３】
ここで、駆動速度Ｖｔが“０”であれば、それはパルスモータを駆動しないということなので、ステップＳ３０３でＰＷＭ出力を停止し、そのときのモータの停止位相位置Ｂ（図１９参照）を、電源ＯＦＦ時に記憶させるためのバックアップデータとして停止位置記憶部７６に格納する。一方、駆動速度Ｖｔが“０”でなければ、ステップＳ３０４に進み、図２のステップＳ２０４で設定したタイマ割り込み時間Ｔｔを設定する。
【００３４】
そして、ステップＳ３０５で、図２のステップＳ２０３で設定したモータの駆動方向が順転かどうか判断し、順転ならば、ステップＳ３０６でアドレスＡの値が“６３”かどうかを判断する。ここで、アドレスＡ＝６３でなければ、ステップＳ３０７でアドレスＡをインクリメントし、アドレスＡ＝６３ならばステップＳ３０８でアドレスＡの値を“０”にする。このアドレスＡにより、正弦波の１周期を６４分割したうちの、現在の位相位置が分かる。
【００３５】
上記ステップＳ３０５でモータの駆動方向が順転でないと判断した場合は、ステップＳ３０９でアドレスＡの値が“０”かどうかを判断する。ここで、アドレスＡ＝０でなければ、ステップＳ３１０でアドレスＡをデクリメントし、アドレスＡ＝０ならばステップＳ３１１でアドレスＡの値を“６３”にする。そして、ステップＳ３１２で、そのときのモータの位相状態を示すアドレスＡ（例えば０〜６３）で示される図１８のような基本デューティ比データＤｎをＲＯＭ７ｃから読み出す。
【００３６】
次に、ステップＳ３１３でアドレスＡの値が８の倍数かどうかを判断する。図１９に示したように、１周期を６４分割したうちの８の倍数のところが１パルス分となり、８パルスで１周期となる。よって、ステップＳ３１３でアドレスＡの値が８の倍数でないと判断した場合は、現在１パルス分の移動途中なので、そのまま割り込み処理を終了する。
【００３７】
一方、上記ステップＳ３１３でアドレスＡの値が８の倍数であると判断した場合は、ステップＳ３１４に進み、そのときのアドレスＡの値を８で割った整数値をカウント値Ｄとして格納し、現在駆動させようとしているパルスモータの位相がどこにあるのかを、図１９で示すＤに値する位相位置で求める。このような演算処理を行う場合には、図１のパルスカウンタ７４は不要であり、その代わりに演算結果を格納するメモリが設けられる。
【００３８】
そして、ステップＳ３１５で初期フラグｆの値が“１”かどうか、すなわち、電源ＯＮ時であるかどうかを判断し、当該フラグ値が“１”であるならばステップＳ３１６に進み、上記ステップＳ３１４にて求めた位相位置Ｄが、以前の電源ＯＦＦのモータ駆動停止時に停止位置記憶部７６に記憶した位相位置Ｂと同じかどうかを判断する。
【００３９】
両位相位置Ｂ，Ｄが同じならば、駆動位相と駆動位相を作るためのアドレスＡの初期状態とが一致したので、ステップＳ３１７で初期フラグｆの値を“０”にし、割り込み処理を終了する。また、上記ステップＳ３１６で両位相位置Ｂ，Ｄが一致しなければ、駆動位相と駆動位相を作るためのアドレスＡの初期状態とがまだ一致していないということなので、そのまま割り込み処理を終了する。
【００４０】
また、上記ステップＳ３１５で初期フラグｆの値が“０”であると判断した場合は、駆動位相と駆動位相を作るためのアドレスＡの初期状態とが一致して、パルスモータ駆動準備が終了したということなので（上記ステップＳ３１７の処理による）、通常の駆動動作を行う。ここで、ステップＳ３１８で駆動方向が順転かどうかを判断し、そうであるならば、ステップＳ３１９に進んで位置検出カウンタ７５のカウント値Ｃをインクリメントし、順転でなければ、ステップＳ３２０で位置検出カウンタ７５のカウント値Ｃをデクリメントして割り込みルーチンを終了する。
【００４１】
以上のように、本実施形態では、パルスモータ停止時の位相位置を記憶（バックアップ）しておき、その後パルスモータを再び起動させるときに、駆動電流の位相状態がバックアップした位相状態になるまで、位置検出のためのカウンタを止めておくことによって、位置検出のためのカウンタとパルスモータの実際の駆動とのずれを防止することができ、特別な位置検出装置がない状態で、正確な位置検出を行うことができる。
【００４２】
（第２の実施形態）
上記第１の実施形態では、パルスモータ停止時の位相位置を記憶（バックアップ）し、パルスモータを起動させるときに、駆動電流の位相状態がバックアップした位相状態になるまで、位置検出のためのカウンタを止めておくことによって、位置検出のためのカウンタとパルスモータの実際の駆動のずれを防止する方法を示した。これに対して、位置検出のためのカウンタの値を補正することなく、パルスモータ停止時の位相位置を記憶（バックアップ）しておき、パルスモータ駆動開始時に停止時の位相で励磁する（補正手段）ようにしても良い。
【００４３】
すなわち、第２の実施形態は、例えば図１９の位相位置Ｂのところでパルスモータが停止したら、その後駆動を再び開始するときは、アドレスＡ＝０からではなくて、アドレスＡ＝４０から開始する（アドレス補正手段）ようにするものである。このことは、図４に示すように、ステップＳ４０２で初期化処理を行う際に、位相位置Ｂ＝停止位相のバックアップデータとした後、アドレスＡ＝Ｂ×８とすることによって実現できる。タイマ割り込みルーチン内の処理は、図３のステップＳ３１４〜Ｓ３１７の処理を除いた図５のようなフローになる。
【００４４】
以上のように、第２の実施形態では、パルスモータ停止時の位相位置を記憶（バックアップ）しておき、その後パルスモータを再び起動させるときに、上記停止時の位相で励磁するようにすることにより、位置検出のためのカウンタとパルスモータの実際の駆動とのずれをより簡単な構成および処理で防止することができ、特別な位置検出装置がない状態で、正確な位置検出を行うことができる。
【００４５】
（第３の実施形態）
図６は、本発明のパルスモータ制御装置をビデオカメラ等の撮像装置のレンズ駆動に用いた例を示すブロック図である。図６において、１０１〜１０５はいわゆるインナーフォーカスタイプのレンズシステムの簡単な構成を示している。
【００４６】
ここで、１０１は固定されている第１のレンズ群、１０２は光軸に沿って移動し変倍を行うための第２のレンズ群（以下、変倍レンズまたはズームレンズと称す）、１０３は絞り、１０４は固定されている第３のレンズ群、１０５は光軸に沿って移動し、焦点調節機能と変倍による焦点面の移動を補正するためのいわゆるコンペ機能とを兼ね備えた第４のレンズ群（以下、フォーカスレンズと称す）、１０６はＣＣＤ等の撮像素子上に形成される撮像面である。
【００４７】
図６のように構成されたレンズシステムでは、フォーカスレンズ１０５が焦点調節機能とコンペ機能とを兼ね備えているため、焦点距離（変倍レンズ１０２の位置）が等しくても、撮像面１０６に合焦するためのフォーカスレンズ１０５の位置は、被写体距離によって異なってしまう。各焦点距離において被写体距離を変化させたとき、撮像面１０６上に合焦させるためのフォーカスレンズ１０５の位置を連続してプロットすると、図７のようになる。したがって、変倍動作中は、被写体距離に応じて図７に示された何れかの合焦軌跡を選択し、その選択した軌跡どおりにフォーカスレンズ１０５を移動させれば、ボケのないズームが可能になる。
【００４８】
そこで、図７に示される複数の軌跡情報を何らかの形でレンズ制御用マイコンに記憶させておく。そして、フォーカスレンズ１０５と変倍レンズ１０２の位置によって何れかの合焦軌跡を選択して、該選択した軌跡上をたどりながらズーミングを行うのが一般的である。
【００４９】
しかしながら、このような追従方法を実現するためには、各レンズ位置を表すカウンタの値を特定の値にリセットする必要がある。すなわち、レンズ位置カウンタの値がずれると、マイコン内に記憶した変倍レンズ位置とフォーカスレンズ位置との組合せ座標で得られるカム軌跡情報が正しく読み取れないため、変倍動作中に合焦軌跡を正確にトレースすることができなくなるためである。
【００５０】
そのため、電源投入後、通常の動作に入る前に、変倍レンズ１０２およびフォーカスレンズ１０５を所定位置に移動させて、各レンズ位置カウンタをリセットすることが多く用いられている。この場合、上記の所定位置としては、レンズ内に組み込まれたフォトダイオードの各取付位置とするのが一般的である。つまり、各フォトダイオードからの出力信号が変化した各レンズ位置を、各レンズリセット位置として、各レンズ位置カウンタの値を光学系のバランス調整によって決まる値にそれぞれ設定している。
【００５１】
レンズリセット動作中は、撮影画像はボケが大きくなるので出力せず、リセット動作の完了後に出力する方法をとっている。
また、各レンズ位置カウンタのリセット動作完了後も出力を禁止したまま、電源投入前にあったレンズ位置まで再び各レンズを戻し、レンズリセット動作による画角変化等を生じさせないようにしている。
また、レンズを駆動させるためのモータとしては、歩進パルス数に対する回転角度が一定なために、歩進パルスをそのままインクリメントして位置検出を行うことができ、位置検出のために別のエンコーダを必要としないパルスモータを使用している。
【００５２】
また、図６において、１２４，１２６はそれぞれ変倍レンズ１０２とフォーカスレンズ１０５とが基準位置にあることを検出するためのスイッチであり、本実施形態においてはそれぞれがフォトセンサ１２５，１２７と共に各レンズ１０２，１０５に組み込まれている。これらの基準スイッチ１２４，１２６は、それぞれ変倍レンズ１０２およびフォーカスレンズ１０５に固定されており、これらのレンズ群１０２，１０５が光軸と平行に移動するのに伴って一体的に移動する。そして、各レンズ群１０２，１０５の移動可能領域において、中間付近を境界としてフォトセンサ１２５，１２７の出力光を遮るか遮らないかの動作を行う。
【００５３】
上記フォトセンサ１２５，１２７の出力光が遮られているか、または遮られていないかによって、フォトセンサ１２５，１２７の光検出部は“１”か“０”の信号を出力する。よって、この出力信号の変化するところを上記基準位置として、レンズがそこにあるのかどうかを検出できる。
【００５４】
図８は、レンズ位置カウンタの動作を行うリセットスイッチの構成を示す図である。フォトセンサ１２５（または１２７）を構成する発光部４０１から受光部４０２への光路を、レンズと共に光軸と平行に移動する基準スイッチ（遮蔽板）１２４（または１２６）が遮ったとき、受光部４０２の出力信号はＬｏｗレベルになり、また遮らないときＨｉレベルになる。
【００５５】
このレンズシステムを透過した被写体光は、ＣＣＤ等の撮像素子１０６上で結像され、光電変換により映像信号に変換される。この変換された映像信号は、増幅器またはインピーダンス変換器１０７で増幅され、カメラ信号処理回路１０８に入力される。ここで所定の信号処理を施された映像信号は、増幅器１０９で規定レベルまで増幅され、ＬＣＤ表示回路１１０で処理された後、ＬＣＤ１１１に撮影画像として表示される。
【００５６】
上記増幅器またはインピーダンス変換器１０７で増幅された映像信号は、絞り制御回路１１２およびＡＦ評価値処理回路１１５にも送られる。絞り制御回路１１２では、映像信号の入力レベルに応じて、ＩＧドライバ１１３およびＩＧメータ１１４を駆動して、絞り１０３を制御し、光量調節を行っている。また、ＡＦ評価値処理回路１１５では、測距枠生成回路１１７からのゲート信号に応じて、測距枠内の映像信号の高周波成分のみを抽出し、ＡＦ評価信号生成のための所定の処理を行っている。
【００５７】
１１６はＡＦマイコンであり、上記ＡＦ評価値処理回路１１５から与えられるＡＦ評価信号強度に応じて、レンズの駆動制御、および測距エリアを変更するための測距枠制御を行っている。また、ＡＦマイコン１１６は、システムコントロールマイコン（以下、シスコンと称す）１２２と通信をしており、シスコン１２２がＡ／Ｄ変換等によって読み込むズームスイッチ１２３（ユニット化されたズームＳＷであり、操作部材の回転角度に応じた電圧が出力される。この出力電圧の大きさに応じて可変速ズームが行われる）の情報や、ＡＦマイコン１１６が制御するズーム時のズーム方向や焦点距離などの変倍動作情報等を、互いにやり取りしている。
【００５８】
１１８，１２０は電流波形の変更が可能な駆動ドライバであり、ＡＦマイコン１１６から出力される変倍レンズ１０２およびフォーカスレンズ１０５の駆動命令に従って、駆動エネルギーをレンズ駆動用モータに出力する。１１９，１２１はそれぞれ変倍レンズ１０２およびフォーカスレンズ１０５を駆動するための上記レンズ駆動用モータである。
【００５９】
上記レンズ駆動用モータがステッピングモータであるとして、モータの駆動方法を以下に説明する。
ＡＦマイコン１１６は、プログラム処理によりズームモータ１１９、フォーカスモータ１２１の駆動速度を決定し、それを各ステッピングモータの回転周波数信号として、変倍レンズ１０２用の駆動ドライバ１１８とフォーカスレンズ１０５用の駆動ドライバ１２０とに送る。また、各モータ１１９，１２１の駆動／停止命令および回転方向命令も各ドライバ１１８，１２０に送っている。
【００６０】
上記駆動／停止命令および回転方向命令は、ズームモータ１１９に関しては、主としてズームスイッチユニット１２３の状態に応じて出力される。また、フォーカスモータ１２１に関しては、ＡＦ時およびズーム時にＡＦマイコン１１６内の処理で決定する駆動命令に応じて出力される。モータドライバは、受信した回転方向信号に応じて、４相のモータ励磁相の位相を順回転および逆回転の位相に設定する。さらに、受信した回転周波数信号に応じて、４つのモータ励磁相の印加電圧（または電流）を変化させながら出力することにより、モータの回転方向と回転周波数とを制御しつつ、駆動／停止命令に応じて、モータへの出力をＯＮ／ＯＦＦしている。
【００６１】
図９は、上記レンズ位置カウンタのリセット動作を説明するためのフローチャートであり、これはレンズ制御用のＡＦマイコン１１６内で処理される。
図９において、ステップＳ９０１で処理の実行が開始されると、ステップＳ９０２で電源が投入されたかどうかを検出し、電源が投入されていなければそのまま待機し続ける。電源が投入されると、ステップＳ９０３で初期設定を行う。ここでは、ＡＦマイコン１１６内のデューティ比データを読み出すための駆動電流の位相状態を決定するカウンタＡｚの値を“０”にし、以前の電源ＯＦＦ時に記憶しておいたモータ駆動停止位置の位相状態をＢｚとする。
【００６２】
次に、ステップＳ９０４でレンズ位置カウンタのリセット動作が終了したかどうかを判断し、終了していればステップＳ９２４にジャンプする。一方、リセット動作がまだ終了していなければ、ステップＳ９０５で変倍レンズ１０２用の位置検出カウンタＣｚ（レンズ位置検出手段）をクリアし、ステップＳ９０６でフォトセンサ１２５の出力信号がＨｉレベルかどうかを確認する。
【００６３】
例えば、遮光と透光の境界がレンズ移動可能範囲のほぼ中間にある場合、フォトセンサ１２５の出力信号の状態から、上記境界が現在のレンズ位置よりもテレ側にあるのかワイド側にあるのかが判別できる。図８を例にとると、フォトセンサ１２５の出力信号がＬｏｗレベルである場合は遮光されているので、変倍レンズ１０２は上記境界よりもテレ側に位置している。よって、変倍レンズ１０２をワイド側に移動することによって、フォトセンサ１２５の出力信号をＬｏｗレベルからＨｉレベルへと変化させることができる。始めにフォトセンサ１２５の出力信号がＨｉレベルであったときには、その逆になる。
【００６４】
したがって、図９のステップＳ９０６でフォトセンサ１２５の出力信号の状態を確認し、Ｈｉレベルであれば、ステップＳ９０７で変倍レンズ１０２をテレ方向に移動させて境界点を得ようとする。またステップＳ９０８で、変倍レンズ１０２用の位置検出カウンタＣｚを、ズームモータ１１９の歩進パルスに同期させてインクリメントする。そして、ステップＳ９０９でフォトセンサ１２５の出力信号がＬｏｗレベルに変化したかどうかを検出して、変化していなければステップＳ９０７に戻って動作を繰り返す。
【００６５】
また、上記ステップＳ９０９でフォトセンサ１２５の出力信号がＬｏｗレベルに変化したことが確認できれば、ステップＳ９１０の処理へ進む。ステップＳ９１０では、変倍レンズ１０２用の位置検出カウンタＣｚの値からモータ駆動停止位置の位相状態を表す値Ｂｚを減算し、その結果をメモリＣｏに格納する。すなわち、「Ｃｚ−Ｂｚ」は、ＡＦマイコン１１６から出力された駆動電流のパルス数から停止位置の位相パルス数を引いた値である。
【００６６】
この値は、電源投入直後、リセット動作を行う前のズームレンズ位置とリセットスイッチ位置との間のズームモータ１１９の歩進パルス数を示しており、この値が即ち、変倍レンズ１０２の電源投入前の位置と、フォトセンサ１２５によるリセットスイッチ位置との距離を表すことになる。
【００６７】
また、上記ステップＳ９０６でフォトセンサ１２５の出力信号がＬｏｗレベルであると判断された場合には、ステップＳ９１１、Ｓ９１２、Ｓ９１３、Ｓ９１４でそれぞれ上記ステップＳ９０７、Ｓ９０８、Ｓ９０９、Ｓ９１０とは逆の動作および判断を行う。ここでは、ステップＳ９１３でフォトセンサ１２５の出力信号の変化を確認した後、ステップＳ９１４で「Ｃｚ−（８−Ｂｚ）」の計算結果をメモリＣｏに格納する。
【００６８】
上記ステップＳ９１４で計算される値は、ＡＦマイコン１１６から出力された駆動電流のパルス数から（８−停止位置の位相パルス数）を引いた値である。この値は、電源投入直後、リセット動作を行う前のズームレンズ位置とリセットスイッチ位置との間のズームモータ１１９の歩進パルス数を示しており、この値が即ち、変倍レンズ１０２の電源投入前の位置と、フォトセンサ１２５によるリセットスイッチ位置との距離を表すことになる。
【００６９】
そこで、次のステップＳ９１５では、このときの位置検出カウンタＣｚの値をメモリＣｏに一旦格納し、位置検出カウンタＣｚには予め測定または決められているリセットスイッチの位置を表す数値（例えば、変倍レンズ１０２の移動範囲内にある光学設計上定められた原点から測定したリセットスイッチ位置を、ズームモータ１１９の歩進パルス数に換算した値）を代入する（初期化手段）。このステップＳ９１５の処理が完了した時点で、変倍レンズ１０２の位置検出カウンタＣｚのリセット動作が完了する（補正手段）。
【００７０】
次に、ステップＳ９１６において、上記ステップＳ９１５で新たに決められた位置検出カウンタＣｚの値からメモリＣｏの値を減じ、この結果を改めてメモリＣｏに代入する。ステップＳ９１６では、ある原点から測定したリセットスイッチの位置を基準として（そこからリセットスイッチ〜初めのズームレンズ位置間の距離を減じて）初めの変倍レンズ１０２の絶対位置を求め、メモリＣｏに代入しているのであるから、位置検出カウンタＣｚの値がメモリＣｏの値になるまで変倍レンズ１０２を移動させれば、電源投入前の位置に戻ることができる。
【００７１】
なお、本実施形態のステップＳ９１１、Ｓ９１２、Ｓ９１３の処理を通った場合、ステップＳ９１４でメモリＣｏに格納する値は負の値となっている。これをそのままステップＳ９１６の式に代入すれば、その結果はステップＳ９１５で求めた位置検出カウンタＣｚの値より大きくなり、初めのレンズ位置がリセットスイッチ位置よりもテレ側にあることを意味するので、何ら差し支えない。
【００７２】
以上のようにして変倍レンズ１０２の初めのレンズ位置を求め、ステップＳ９１７からの処理に移る。ステップＳ９１７では、メモリＣｏに格納されている変倍レンズ１０２の戻り先位置と、位置検出カウンタＣｚに格納されているリセット完了済みの変倍レンズ１０２の位置とが等しいかどうかを判断し、等しければ既にズームレンズ位置は戻り先位置にあることになるので、ステップＳ９２３へジャンプする。
【００７３】
一方、上記ステップＳ９１７の判断結果が偽ならば、ステップＳ９１８でメモリＣｏ内の戻り先位置の値が、位置検出カウンタＣｚ内の現在のズーム位置の値より大きいかどうかを判断する。大きいならば、変倍レンズ１０２の戻り方向はテレ方向であるとして、ステップＳ９１９で変倍レンズ１０２をテレ方向に駆動する。そして、ステップＳ９２０で、変倍レンズ１０２がメモリＣｏ内の戻り先位置に到達したかどうかを確認する。到達が確認されたらステップＳ９２３に進み、まだ到達していない場合にはステップＳ９１９からの処理を繰り返す。
【００７４】
また、上記ステップＳ９１８の判断結果が偽ならば、変倍レンズ１０２の戻り先位置が変倍レンズ１０２の現在位置よりもワイド側にある場合であり、そのときはステップＳ９２１、Ｓ９２２の処理で上記ステップＳ９１９、Ｓ９２０の処理とは逆の動作および判別を行う。そして、ステップＳ９２２の処理で、変倍レンズ１０２が戻り先位置に到達したと確認したら、ステップＳ９２３に進む。
【００７５】
ステップＳ９２３では、変倍レンズ１０２の駆動を停止させる。そして、ステップＳ９２４で画像を出力後、通常撮影動作を実行する。その後、ステップＳ９２５で撮影が終了して電源が遮断されたかどうかを確認し、電源がＯＦＦにされていないときはステップＳ９０４の処理に戻り、ＯＦＦにされたときはステップＳ９２６に進み、そのときのズームモータ１１９の停止位置の駆動電流位相をメモリＢｚ（記憶手段）に記憶（バックアップ）する。
【００７６】
図１０は、本実施形態を実施するための制御フローであり、図９中のステップＳ９２４における通常動作の部分を示す。この制御は、レンズ制御のためのＡＦマイコン１１６内で処理される。ステップＳ１００１はシスコン１２２との相互通信ルーチンであり、ここでズームＳＷユニット１２３の情報や、ズームレンズ位置などの変倍動作情報のやりとりを行っている。
【００７７】
ステップＳ１００２のＡＦ処理ルーチンでは、ＡＦ評価値処理回路１１５から得られた信号によってＡＦ評価信号である鮮鋭度信号を加工し、このＡＦ評価信号の変化に応じて自動焦点調節処理を行っている。次のステップＳ１００３はズーム処理ルーチンであり、変倍動作時において合焦を維持するためのコンペ動作の処理を行う。本ルーチンで、図７に示したようなカム軌跡をトレースするために、フォーカスレンズ１０５の駆動方向および駆動速度を算出する。
【００７８】
ステップＳ１００４では、ＡＦ動作時や変倍動作時等に応じて、上記ステップＳ１００２〜Ｓ１００３で算出されるズームやフォーカスの駆動方向および駆動速度のうち、いずれを使用するのかを選択し、レンズのメカ端に当たらないようにソフト的に設けているテレ端よりテレ側、ワイド端よりワイド側、至近端より至近側および無限端より無限側には駆動しないように設定する。
【００７９】
ステップＳ１００５では、上記ステップＳ１００４で定めたズームおよびフォーカス用の駆動方向と駆動速度に関する情報に応じて、変倍レンズ１０２用の駆動ドライバ１１８およびフォーカスレンズ１０５用の駆動ドライバ１２０に制御信号を出力し、レンズの駆動／停止を制御する。このステップＳ１００５の処理終了後は、図９のステップＳ９２５に戻る。なお、図１０の一連の処理は、垂直同期期間に同期して実行される（図９のステップＳ９２５〜Ｓ９０４に戻る処理の中で、次の垂直同期信号がくるまで、待機する）。
【００８０】
上記ステップＳ１００５で設定された駆動速度および駆動パルスによって、次の図１１に示すような割り込み処理を行い、変倍レンズ１０２やフォーカスレンズ１０５を駆動する。この図１１は、本実施形態の特徴を表すものであり、タイマ割り込み処理の動作フローを示すフローチャートである。このタイマ割り込み処理は、図１０のステップＳ１００４で設定された駆動速度によって決まるタイミングで割り込みがかかるもので、駆動速度が速いときは速い周期で、駆動速度が遅いときは遅い周期で割り込み駆動パルスを出力するための処理である。
【００８１】
図１１において、ステップＳ１１０１は当該タイマ割り込みルーチンのスタートである。まず、ステップＳ１１０２で上記図１０に示したメインルーチン内で設定された駆動速度が“０”かどうかを判断する。ここで、駆動速度が“０”であれば、それはパルスモータを駆動しないということなので、ステップＳ１１０３でＰＷＭ出力を停止する。一方、駆動速度が“０”でなければ、ステップＳ１１０４に進み、図１０のステップＳ１００４で設定した駆動速度に応じたタイマ割り込み時間Ｔｔを設定する。
【００８２】
そして、ステップＳ１１０５で、図１０のステップＳ１００４で設定したモータの駆動方向がテレ側かどうかを判断し、テレ側ならば、ステップＳ１１０６でカウンタＡｚの値が“６３”かどうかを判断する。ここで、カウンタＡｚ＝６３でなければ、ステップＳ１１０７でカウンタＡｚをインクリメントし、カウンタＡｚ＝６３ならばステップＳ１１０８でカウンタＡｚの値を“０”にする。このカウンタＡｚの値により、正弦波の１周期を６４分割したうちの、現在の位相位置が分かる。
【００８３】
上記ステップＳ１１０５でモータの駆動方向がテレ側でないと判断した場合には、ステップＳ１１０９でカウンタＡｚの値が“０”かどうかを判断する。ここで、カウンタＡｚ＝０でなければ、ステップＳ１１１０でカウンタＡｚをデクリメントし、カウンタＡｚ＝０ならばステップＳ１１１１でカウンタＡｚの値を“６３”にする。そして、ステップＳ１１１２で、そのときのモータの位相状態を示すカウンタＡｚ（例えば０〜６３）で示される図１８のような基本デューティ比データＤｎを読み出す。
【００８４】
以上のように、第３の実施形態では、電源ＯＮ時における最初のズームカウンタリセット操作時に、以前のパルスモータ停止時の位相位置を記憶（バックアップ）しておいた値を考慮し、駆動開始位置からフォトセンサ１２５の位置までのパルス数を計算することにより、変倍レンズ１０２の位置検出のためのカウンタとパルスモータの実際の駆動のずれを防止することができ、特別な位置検出装置がない状態で、正確な位置検出を行うことができる。
【００８５】
（第４の実施形態）
上記第３の実施形態では変倍レンズ１０２の位置カウンタリセット動作について説明してきたが、このリセット動作はフォーカスレンズ１０５のリセットについても同様に用いることができる。以下に、フォーカスレンズ１０５のリセット動作に関して、図１２を用いて説明する。
【００８６】
図１２において、ステップＳ１２０１は処理の開始を示す。まず、ステップＳ１２０２で電源が投入されるまで待機し、電源が投入されると、ステップＳ１２０３で初期設定を行う。ここでは、ここでは、ＡＦマイコン１１６内のデューティ比データを読み出すための駆動電流の位相状態を決定するカウンタＡｆの値を“０”にし、以前の電源ＯＦＦ時に記憶しておいたモータ駆動停止位置の位相状態をＢｆとする。
【００８７】
次に、ステップＳ１２０４でレンズ位置カウンタのリセット動作が終了したかどうかを判断し、終了していればステップＳ１２２５にジャンプする。一方、リセット動作がまだ終了していなければ、ステップＳ１２０５で図９に示した変倍レンズ１０２のリセット動作を行う。次のステップＳ１２０６〜Ｓ１２１５の処理は、図９のステップＳ９０５〜Ｓ９１４の処理と同様であり、フォーカスレンズ１０５のリセットスイッチ位置を検出するための処理である。すなわち、まずステップＳ１２０６でフォーカスレンズ１０５用の位置検出カウンタＣｆ（レンズ位置検出手段）をクリアし、ステップＳ１２０７でフォトセンサ１２７の出力信号がＨｉレベルかどうかを確認する。
【００８８】
例えば、遮光と透光の境界がレンズ移動可能範囲のほぼ中間にある場合、フォトセンサ１２７の出力信号の状態から、上記境界が現在のレンズ位置よりも至近側にあるのか無限側にあるのかが判別できる。図８を例にとると、フォトセンサ１２７の出力信号がＬｏｗレベルである場合は遮光されているので、フォーカスレンズ１０５は上記境界よりも至近側に位置している。よって、フォーカスレンズ１０５を無限側に移動することによって、フォトセンサ１２７の出力信号をＬｏｗレベルからＨｉレベルへと変化させることができる。始めにフォトセンサ１２７の出力信号がＨｉレベルであったときには、その逆になる。
【００８９】
したがって、図１２のステップＳ１２０７でフォトセンサ１２７の出力信号の状態を確認し、Ｈｉレベルであれば、ステップＳ１２０８でフォーカスレンズ１０５を至近方向に移動させて境界点を得ようとする。またステップＳ１２０９で、フォーカスレンズ１０５用の位置検出カウンタＣｆを、フォーカスモータ１２１の歩進パルスに同期させてインクリメントする。そして、ステップＳ１２１０でフォトセンサ１２７の出力信号がＬｏｗレベルに変化したかどうかを検出して、変化していなければステップＳ１２０８に戻って動作を繰り返す。
【００９０】
また、上記ステップＳ１２１０でフォトセンサ１２７の出力信号がＬｏｗレベルに変化したことが確認できれば、ステップＳ１２１１の処理へ進む。ステップＳ１２１１では、フォーカスレンズ１０５用の位置検出カウンタＣｆの値からモータ駆動停止位置の位相状態を表す値Ｂｆを減算し、その結果をメモリＣfoに格納する。すなわち、「Ｃｆ−Ｂｆ」は、ＡＦマイコン１１６から出力された駆動電流のパルス数から停止位置の位相パルス数を引いた値である。
【００９１】
この値は、電源投入直後、リセット動作を行う前のフォーカスレンズ位置とリセットスイッチ位置との間のフォーカスモータ１２１の歩進パルス数を示しており、この値が即ち、フォーカスレンズ１０５の電源投入前の位置と、フォトセンサ１２７によるリセットスイッチ位置との距離を表すことになる。
【００９２】
また、上記ステップＳ１２０７でフォトセンサ１２７の出力信号がＬｏｗレベルであると判断された場合には、ステップＳ１２１２、Ｓ１２１３、Ｓ１２１４、Ｓ１２１５でそれぞれ上記ステップＳ１２０８、Ｓ１２０９、Ｓ１２１０、Ｓ１２１１とは逆の動作および判断を行う。ここでは、ステップＳ１２１４でフォトセンサ１２７の出力信号の変化を確認した後、ステップＳ１２１５で「Ｃｆ−（８−Ｂｆ）」の計算結果をメモリＣfoに格納する。
【００９３】
上記ステップＳ１２１１やステップＳ１２１５に処理が移行したとき、「Ｃｆ−Ｂｆ」の値や「Ｃｆ−（８−Ｂｆ）」の値は、電源投入直後、リセット動作を行う前のフォーカスレンズ位置とリセットスイッチ位置との間のフォーカスモータ１２１の歩進パルス数を示しており、この値が即ち、フォーカスレンズ１０５の電源投入前の位置とリセットスイッチ位置との距離を表すことになる。
【００９４】
そこで、次のステップＳ１２１６では、このときの位置検出カウンタＣｆの値をメモリＣfoに一旦格納し、位置検出カウンタＣｆには予め測定または決められているリセットスイッチの位置を表す数値（例えば、フォーカスレンズ１０５の移動範囲内にある光学設計上定められた原点から測定したリセットスイッチ位置を、フォーカスモータ１２１の歩進パルス数に換算した値）を代入する（初期化手段）。このステップＳ１２１６の処理が完了した時点で、フォーカスレンズ１０５の位置検出カウンタＣｆのリセット動作が完了する（補正手段）。
【００９５】
次に、ステップＳ１２１７において、上記ステップＳ１２１６で新たに決められた位置検出カウンタＣｆの値からメモリＣfoの値を減じ、この結果を改めてメモリＣfoに代入する。ステップＳ１２１７では、ある原点から測定したリセットスイッチの位置を基準として（そこからリセットスイッチ〜初めのフォーカスレンズ位置間の距離を減じて）初めのフォーカスレンズ１０５の絶対位置を求め、メモリＣfoに代入しているのであるから、位置検出カウンタＣｆの値がメモリＣfoの値になるまでフォーカスレンズ１０５を移動させれば、電源投入前の位置に戻ることができる。
【００９６】
以上のようにしてフォーカスレンズ１０５の初めのレンズ位置を求め、ステップＳ１２１８からの処理に移る。ステップＳ１２１８では、メモリＣfoに格納されているフォーカスレンズ１０５の戻り先位置と、位置検出カウンタＣｆに格納されているリセット完了済みのフォーカスレンズ１０５の位置とが等しいかどうかを判断し、等しければ既にフォーカスレンズ位置は戻り先位置にあることになるので、ステップＳ１２２４へジャンプする。
【００９７】
一方、上記ステップＳ１２１８の判断結果が偽ならば、ステップＳ１２１９でメモリＣfo内の戻り先位置の値が、位置検出カウンタＣｆ内の現在のフォーカス位置の値より大きいかどうかを判断する。大きいならば、フォーカスレンズ１０５の戻り方向は至近方向であるとして、ステップＳ１２２０でフォーカスレンズ１０５を至近方向に駆動する。そして、ステップＳ１２２１で、フォーカスレンズ１０５がメモリＣfo内の戻り先位置に到達したかどうかを確認する。到達が確認されたらステップＳ１２２４に進み、まだ到達していない場合にはステップＳ１２２０からの処理を繰り返す。
【００９８】
また、上記ステップＳ１２１９の判断結果が偽ならば、フォーカスレンズ１０５の戻り先位置がフォーカスレンズ１０５の現在位置よりも無限側にある場合であり、そのときはステップＳ１２２２、Ｓ１２２３の処理で上記ステップＳ１２２０、Ｓ１２２１の処理とは逆の動作および判別を行う。そして、ステップＳ１２２３の処理でフォーカスレンズ１０５が戻り先位置に到達したと確認したら、ステップＳ１２２４に進む。
【００９９】
ステップＳ１２２４では、フォーカスレンズ１０５の駆動を停止させる。そして、ステップＳ１２２５で画像を出力後、通常撮影動作を実行する。その後、ステップＳ１２２６で撮影が終了して電源が遮断されたかどうかを確認し、電源がＯＦＦにされていないときはステップＳ１２０４の処理に戻り、ＯＦＦにされたときはステップＳ１２２７に進み、そのときのフォーカスモータ１２１の停止位置の駆動電流位相をメモリＢｆ（記憶手段）に記憶（バックアップ）する。
【０１００】
図１３は、本実施形態の特徴を表すものであり、タイマ割り込み処理の動作フローを示すフローチャートである。このタイマ割り込み処理は、図１０のステップＳ１００４で設定された駆動速度によって決まるタイミングで割り込みがかかるもので、駆動速度が速いときは速い周期で、駆動速度が遅いときは遅い周期で割り込み駆動パルスを出力するための処理である。
【０１０１】
図１３において、ステップＳ１３０１は当該タイマ割り込みルーチンのスタートである。まず、ステップＳ１３０２で上記図１０に示したメインルーチン内で設定された駆動速度が“０”かどうかを判断する。ここで、駆動速度が“０”であれば、それはパルスモータを駆動しないということなので、ステップＳ１３０３でＰＷＭ出力を停止する。一方、駆動速度が“０”でなければ、ステップＳ１３０４に進み、図１０のステップＳ１００４で設定した駆動速度に応じたタイマ割り込み時間Ｔｔを設定する。
【０１０２】
そして、ステップＳ１３０５で、図１０のステップＳ１００４で設定したモータの駆動方向が至近側かどうかを判断し、至近側ならば、ステップＳ１３０６でカウンタＡｆの値が“６３”かどうかを判断する。ここで、カウンタＡｆ＝６３でなければ、ステップＳ１３０７でカウンタＡｆをインクリメントし、カウンタＡｆ＝６３ならばステップＳ１３０８でカウンタＡｆの値を“０”にする。このカウンタＡｆの値により、正弦波の１周期を６４分割したうちの、現在の位相位置が分かる。
【０１０３】
上記ステップＳ１３０５でモータの駆動方向が至近側でないと判断した場合には、ステップＳ１３０９でカウンタＡｆの値が“０”かどうかを判断する。ここで、カウンタＡｆ＝０でなければ、ステップＳ１３１０でカウンタＡｆをデクリメントし、カウンタＡｆ＝０ならばステップＳ１３１１でカウンタＡｆの値を“６３”にする。そして、ステップＳ１３１２で、そのときのモータの位相状態を示すカウンタＡｆ（例えば０〜６３）で示される図１８のような基本デューティ比データＤｎを読み出す。
【０１０４】
以上のように、第４の実施形態では、電源ＯＮ時におけるの最初のフォーカスカウンタリセット動作時に、以前のパルスモータ停止時の位相位置を記憶（バックアップ）しておいた値を考慮し、駆動開始位置からフォトセンサ１２７の位置までのパルス数を計算することにより、フォーカスレンズ１０５の位置検出のためのカウンタとパルスモータの実際の駆動のずれを防止することができ、特別な位置検出装置がない状態で、正確な位置検出を行うことができる。
【０１０５】
本実施形態では上述したように、パルスモータの駆動停止時におけるロータの停止位相位置を記憶する記憶手段を設け、例えば、パルスモータの駆動開始時に、記憶手段に記憶されていた停止位相位置情報を用いて、パルスモータを駆動する際のパルス数をカウントするカウント手段のカウント値を補正するようにしたので、パルスモータ停止時の位相位置を記憶（バックアップ）し、その後パルスモータを再び起動させるときに、駆動電流の位相状態がバックアップした位相状態になるまで、位相位置検出のためのカウント手段を止めておくことで、位相位置検出のためのカウンタとパルスモータの実際の駆動のずれを防止することができ、特別な位置検出装置がない状態で、正確な位相位置検出を行うことができる。
【０１０６】
本実施形態の他の特徴によれば、パルスモータの駆動開始時に、記憶手段に記憶されていた停止位相位置情報を用いて、パルスモータを駆動する際の開始励磁位相を補正するようにしたので、パルスモータ停止時の位相位置を記憶（バックアップ）し、その後パルスモータを再び起動させるときに、駆動停止時における位相でパルスモータを励磁することで、位相位置検出のためのカウンタとパルスモータの実際の駆動のずれをより簡単に防止することができ、特別な位置検出装置がない状態でも、正確な位相位置検出を行うことができる。
また、本実施形態のその他の特徴によれば、光軸と平行に移動する少なくとも１つ以上のレンズ群と、これらのレンズ群を移動させるパルスモータと、パルスモータを駆動する際のパルス数をカウントして上記レンズ群の位置を検出するレンズ位置検出手段とを備えた撮像装置において、パルスモータの駆動停止時におけるロータの停止位相位置を記憶する記憶手段を設け、上記レンズ群を移動させて上記レンズ位置検出手段による初期化を行う際に、上記記憶手段に記憶されている停止位相位置の情報を用いて上記レンズ位置検出手段のカウント値を補正するようにしたので、位相位置検出のためのズームカウンタあるいはフォーカスカウンタとパルスモータの実際の駆動とのずれを防止することができ、特別な位置検出装置がない状態で、正確な位相位置検出を行ってレンズ群を正確なリセット位置に移動させることができる。
【０１０７】
【発明の効果】
本発明によれば、カウンタとパルスモータの実際の駆動のずれを防止することができる。
【図面の簡単な説明】
【図１】本発明の要素的特徴を示すブロック図であり、パルスモータ制御装置が備えるマイコンの機能構成を示すブロック図である。
【図２】本発明の第１の実施形態においてパルスモータの駆動開始時と駆動時にマイコンによって行われる動作を示すフローチャートである。
【図３】本発明の第１の実施形態を示し、実際にパルスモータを駆動するためのＰＷＭ出力を制御しているタイマ割り込みルーチン内の動作フローを示すフローチャートである。
【図４】本発明の第２の実施形態においてパルスモータの駆動開始時と駆動時にマイコンによって行われる動作を示すフローチャートである。
【図５】本発明の第２の実施形態を示し、実際にパルスモータを駆動するためのＰＷＭ出力を制御しているタイマ割り込みルーチン内の動作フローを示すフローチャートである。
【図６】本発明の第３の実施形態を示し、本発明のパルスモータ制御装置をビデオカメラ等の撮像装置のレンズ駆動に用いた例を示すブロック図である。
【図７】各焦点距離（変倍レンズ位置）とフォーカスレンズ位置との関係を示す図である。
【図８】レンズ位置カウンタの動作を行うリセットスイッチの構成を示す図である。
【図９】本発明の第３の実施形態を示し、レンズ制御用のＡＦマイコン内で処理されるレンズ位置カウンタのリセット動作を説明するためのフローチャートである。
【図１０】図９のステップＳ９２４における通常動作を説明するためのフローチャートである。
【図１１】本発明の第３の実施形態を示し、タイマ割り込みルーチン内の動作フローを示すフローチャートである。
【図１２】本発明の第４の実施形態を示し、レンズ制御用のＡＦマイコン内で処理されるレンズ位置カウンタのリセット動作を説明するためのフローチャートである。
【図１３】本発明の第４の実施形態を示し、タイマ割り込みルーチン内の動作フローを示すフローチャートである。
【図１４】本実施形態のパルスモータおよびその制御装置の構成を示す図である。
【図１５】図１４に示したドライバ回路の内部構成を示す図である。
【図１６】図１５に示した入力ＥＮ１，ＩＮ１と各Ｔｒ８〜９の状態との関係を示す図である。
【図１７】図１４に示した各モータ巻線に流れる電流およびそのデューティ比を示す図である。
【図１８】図１４に示したＲＯＭに格納されるデューティ比データの例を示す図である。
【図１９】略正弦波駆動電流の例を示す図である。
【符号の説明】
７  マイコン
７ｃ  ＲＯＭ
７１  駆動情報設定部
７２  割り込み時間設定部
７３  アドレス発生部
７４  パルスカウンタ
７５  位置検出カウンタ
７６  停止位置記憶部
７７  一致判断部
１０２  変倍レンズ
１０５  フォーカスレンズ
１１６  ＡＦマイコン
１１８  ズーム駆動ドライバ
１１９  ズームモータ
１２０  フォーカス駆動ドライバ
１２１  フォーカスモータ
１２４、１２６  基準スイッチ
１２５、１２７  フォトセンサ
【図１】
0004006082.tif 000002
【図２】
0004006082.tif 000003
【図３】
0004006082.tif 000004
【図４】
0004006082.tif 000005
【図５】
0004006082.tif 000006
【図６】
0004006082.tif 000007
【図７】
0004006082.tif 000008
【図８】
0004006082.tif 000009
【図９】
0004006082.tif 000010
【図１０】
0004006082.tif 000011
【図１１】
0004006082.tif 000012
【図１２】
0004006082.tif 000013
【図１３】
0004006082.tif 000014
【図１４】
0004006082.tif 000015
【図１５】
0004006082.tif 000016
【図１６】
0004006082.tif 000017
【図１７】
0004006082.tif 000018
【図１８】
0004006082.tif 000019
【図１９】
0004006082.tif 000020