(57)【特許請求の範囲】
【請求項１】
振動型モーターの振動体を構成する電気−機械エネルギー変換素子に交番信号を印加することによって、前記振動体に楕円運動を形成し、前記振動体の励振状態を検出する励振検出部から出力される正弦波信号と前記振動体に印加する交番信号との位相差に応じて前記交番信号の制御を行う制御手段と、
前記励振検出部から出力される前記正弦波信号の周期を検出する周期検出手段と、
前記振動型モーターの駆動特性に応じた周期範囲データを予め記憶した記憶手段とを備え、
前記制御手段は、前記周期検出手段で検出した周期値が前記記憶手段に記憶された前記周期範囲データの範囲外であると、前記位相差による制御を行わないようにすることを特徴とする振動型モーターの駆動制御装置。
【請求項２】
前記制御手段は、前記周期検出手段で検出した周期値が前記記憶手段に記憶された前記周期範囲データの範囲外であると、前記位相差による制御を行わないようにするとともに、前記交番信号の現在の周波数を、予め決められた上げ幅で上げることを特徴とする請求項１に記載の振動型モーターの駆動制御装置。
【請求項３】
請求項１または２に記載の振動型モーターの駆動制御装置を有し、前記振動型モーターを駆動源として被駆動部材を駆動するようにしたことを特徴とする振動型モーターを駆動源とする装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は振動型モーターの駆動制御装置および振動型モーターを駆動源とする装置に係り、例えば周波数を制御することによりモーターの駆動制御を行う場合に、振動型モーターの状態を検出するための信号相と振動型モーターに交流電界を印加する印加相との位相差に基づいて共振点側から安全側に駆動状態を移行させる駆動制御装置に関するものである。
【０００２】
【従来の技術】
振動型モーター、例えば振動波モーターは、振動体を構成する電気−機械エネルギー変換素子としての圧電素子に設けられた２つの駆動相に駆動用の交番信号としての交流電界を印加することにより、振動体の表面に楕円運動を形成し、そこに加圧接触する接触体と前記振動体とを相対移動させるものであり、振動波モーターを駆動する回路から前記振動波モーターへ出力される２つの印加相（以下それぞれＡ相、Ｂ相とする）についてはある位相差を持たせている。
【０００３】
Ａ相とＢ相の位相差は±９０度であり、この正負で回転方向が決定される。またその回転速度は、Ａ相、Ｂ相に印加する交番信号の周波数を変化させることで所望の速度に制御させることが一般的となっている。
【０００４】
この振動波モーターの特性において、印加する交番信号の周波数によって振動波モーター（振動体）が共振する部分があり、その共振点近傍での制御は印加される周波数に対する回転速度の変化が大きく速度制御を行なうことが困難であることが知られている。
【０００５】
一般に、振動波モーターの駆動制御は、高周波数側から共振点側に向けて周波数をスイープして回転速度を増し、駆動状態を以下に示すように位相差として検出し、共振点を越えて低周波数側に駆動周波数が移行するのを防止する制御が行われる。
【０００６】
すなわち、振動体の一部に振動体の振動状態を検出するセンサー相（以下Ｓ相とする）を設け、そのＳ相とＡ相、あるいはＳ相とＢ相の位相差を検出するもので、例えば前記位相差が小さい場合は前記振動体が共振状態に近い状態で振動しているとし、共振点から高周波数側へ強制的に駆動周波数を移行させる駆動制御が行われる。
【０００７】
このＳ相は、振動波モーターへＡ相、Ｂ相を印加した場合に正弦波を出力し、その振幅は振動波モーターの回転数に比例している。つまり振動波モーターの回転数が小さい場合は、信号自体の変化量が少ないことになる。
【０００８】
この位相差の検出方法としては、例えばＳ相とＢ相との位相差を検出する場合、図７に示すように、Ｓ相信号をコンパレータＣＯＭＰ−Ｓにより、またＢ相信号をコンパレータＣＯＭＰ−Ｂによりそれぞれ正弦波の信号Ｓ、Ｂを方形波の信号Ｓ’、Ｂ’に変換し、図８に示すように、Ｓ相の立ち上がりからＢ相の立ち上がりまでの時間を測定する方法がある。
【０００９】
ここで、検出した位相差（時間値）をあらかじめ設定した値以下または特定の範囲と比較し、その値以上あるいは範囲外の場合は、Ａ相、Ｂ相の周波数を現在よりも高周波数側に設定することで、モーターの回転数を低くするなどの対策によって振動波モーターが共振周波数を超えないように制御を行なっている（共振点よりも高周波数側の周波数領域を駆動に使用している）。
【００１０】
【発明が解決しようとしている課題】
ところで、Ｓ相の振幅は振動波モーターの回転数に比例しているため、負荷トルクの大きい物体を振動型モーターで移動させたりすると、低い回転数にもかかわらず振動体が共振点近傍に達してしまうことがあり、その場合Ｓ相自体の振幅が小さくなり正常な位相差値が得られず、振動波モーターが共振点を超えてしまうことがあった。
【００１１】
また、これとは逆に、振動波モーターの回転数が遅い時に位相差の検出を行なうと、共振から離れているにもかかわらず外来ノイズなどによって共振近傍と誤検知し、モーターの回転数を遅くするような制御を行うことがあった。
【００１２】
これを回避するための手段として、Ｓ相信号に電気的なフィルター回路を入れたり、振動体の一部であるセンサー相の面積を増やすことで信号を大きくするなどの対策が考えられるが、コストアップやモーターの性能ダウンにつながってしまう。
【００１３】
本出願に係る第１の発明の目的は、これらの問題点に鑑み、コストアップせずにＳ相の振幅が小さい時または外来ノイズによる誤検知を防止することができる振動型モーターの駆動制御装置を提供しようとするものである。
【００１４】
本出願に係る第２の発明の目的は、上記した第１の発明の目的に加え、被駆動体を確実に駆動制御できる振動型モーターを駆動源とする装置を提供しようとするものである。
【００１５】
【課題を解決するための手段】
本出願に係る第１の発明の目的を実現する第１の構成は、振動型モーターの振動体を構成する電気−機械エネルギー変換素子に交番信号を印加することによって、前記振動体に楕円運動を形成し、前記振動体の励振状態を検出する励振検出部から出力される正弦波信号と前記振動体に印加する交番信号との位相差に応じて前記交番信号の制御を行う制御手段と、前記励振検出部から出力される前記正弦波信号の周期を検出する周期検出手段と、前記振動型モーターの駆動特性に応じた周期範囲データを予め記憶した記憶手段とを備え、前記制御手段は、前記周期検出手段で検出した周期値が前記記憶手段に記憶された前記周期範囲データの範囲外であると、前記位相差による制御を行わないようにするものである。
【００１６】
本出願に係る第１の発明の目的を実現する第２の構成は、前記制御手段は、前記周期検出手段で検出した周期値が前記記憶手段に記憶された前記周期範囲データの範囲外であると、前記位相差による制御を行わないようにするとともに、前記交番信号の現在の周波数を、予め決められた上げ幅で上げるものである。
【００１９】
本出願に係る第２の発明の目的を実現する振動型モーターを駆動源とする装置の構成は、上記したいずれか一つに記載の振動型モーターの駆動制御装置を有し、前記振動型モーターを駆動源として被駆動部材を駆動するようにしたものである。
【００２０】
【発明の実施の形態】
図１〜図６は本発明の実施の形態を示す。
【００２１】
図１は振動型モーターの一つとしての振動波モーターを動作させるための電気回路を示す。振動波モーターの基本的な構成としては、例えば振動体を構成する電気−機械エネルギー変換素子としての圧電素子における２つの駆動相に位相差を有する交番信号を印加することにより、例えば前記圧電素子が貼り付けられた金属等の弾性体に位相の異なる２つの曲げ振動を形成し、その合成により前記弾性体の表面に楕円運動を形成するようにしたもので、振動体と、前記駆動面に加圧接触する接触体とを相対移動するようにしている。
【００２２】
この回路は周波数を変化させることで振動波モーターの速度制御を行なうタイプとなっている。
【００２３】
図１において、１は振動波モーターの制御を司るマイクロコンピュータ（以下マイコンと記す）である。このマイコン１の機能として、振動波モーターへ印加する周波数を作り出すための周波数ジェネレータ機能と、振動波モーターの位相検出を行なうためのタイマーカウンター機能（信号キャプチャ機能付き）を有している。
【００２４】
２は振動波モーターに印加する電源回路である昇圧型ＤＣＤＣコンバータユニットで、マイコン１によって動作／非動作をコントロールできるように構成されている。３は電源（電池）、４は電源３を安定的に供給するためのレギュレータであり、マイコン１に供給され、かつ位相検出の基準電源としても使用している。５は振動波モーターのＡ相側のインバータ、６は振動波モーターのＢ相側のインバータ、７は振動波モーターのＡ相側の電源を供給するためのＮＰＮトランジスタ、８は振動波モーターのＢ相側の電源を供給するためのＮＰＮトランジスタ、９は振動波モーターのＡ相側のＮＰＮトランジスタ、１０は振動波モーターのＢ相側のＮＰＮトランジスタ。
【００２５】
Ａ相側のインバータ５の入力とＡ相側ＮＰＮトランジスタ９のベースがそれぞれマイコン１のＡ相側周波数ジェネレータ出力端子に接続され、マイコン１の出力論理によって振動波モーターのＡ相側に電力が供給（シンク）／消費（ソース）される構成となっている。
【００２６】
同様に、Ｂ相側のインバータ６の入力とＢ相側ＮＰＮトランジスタ１０のベースがそれぞれマイコン１のＢ相側周波数ジェネレータ出力端子に接続され、マイコン１の出力論理によって振動波モーターのＢ相側に電力がシンク／ソースされる構成となっている。
【００２７】
１１はＡ相側コイル、１２はＢ相側コイル、１３はＡ相側コンデンサ、１４はＢ相側コンデンサ。
【００２８】
Ａ相側コイル１１とＡ相側コンデンサ１３を電源３に対し直列接続することによって、印加される周波数に応じた昇圧電圧が振動波モーターのＡ相に印加される。
【００２９】
同様に、Ｂ相側コイル１２とＢ相側コンデンサ１４を電源に対し直列接続することによって印加される周波数に応じた昇圧電圧が振動波モーターのＢ相に印加される。
【００３０】
１５は振動波モーターのＡ相側電極、１６は振動波モーターのＢ相側電極、１７は振動波モーターのＳ相電極、１８は圧電セラミック、１９はＧＮＤ電極である。Ａ相、Ｂ相に電圧を印加することで、圧電セラミック１８が歪曲し、Ａ相に対するＢ相の位相を±９０°変えることで、振動体における回転部との接触面に楕円運動が発生し、前記振動体に加圧接触する前記回転部が回転するのが振動波モーターの原理である。
【００３１】
２０はレギュレータ４の電圧を１／２にするための分圧回路であり、コンパレータのスレッショルド電圧を形成している。２１と２２はＢ相電圧のレベルシフト用の抵抗。コンデンサ２３と抵抗２５とにより振動波モーターのＳ相用のハイパスフィルターを形成し、コンデンサ２４と抵抗２６とにより振動波モーターのＢ相用のハイパスフィルターを形成している。
【００３２】
２７は振動波モーターのＢ相用のコンパレータであり、レギュレータ４の電圧にレベルシフトするためと、Ｂ相の波形整形を行なっている。２８は振動波モーターのＳ相用のコンパレータであり、レギュレータ４の電圧にレベルシフトするためと、Ｓ相の波形整形を行なっている。
【００３３】
図２はコンパレータ２７、２８から出力される波形を図示したものである。振動波モーターが共振点に近いところで駆動されていると、Ｓ相とＢ相の位相差が少なくなるように構成され、本実施の形態ではＳ相の周期データを検出する制御方法を追加したものなので、以下にその制御方式を図１と図２を用いて説明する。
マイコン１は、振動波モーターを駆動する場合、ＤＣＤＣコンバータユニット２を動作させ電源３の電圧を昇圧させる。通常はここで約５倍〜１０倍程度昇圧しているのが一般的である。
【００３４】
次に、マイコン１は内部の周波数ジェネレータ回路を起動させて、Ａ相、Ｂ相にそれぞれ±９０°の位相を変えた出力を発生させる。この出力によって、トランジスタ７、８、９、１０を制御している。
【００３５】
例えば、マイコン１から出力されたＡ相の論理電圧が５Ｖの場合、インバータ５の出力論理はＬｏレベルとなり、 トランジスタ７はＯＦＦ、トランジスタ８はＯＮし、振動波モーターのＡ相に加える電圧は低くなる。逆にマイコン１から出力されたＡ相の論理電圧が０Ｖの場合、インバータ５の出力論理はＨｉレベルとなり、 トランジスタ７はＯＮ、トランジスタ８はＯＦＦし、振動波モーターのＡ相に加える電圧は高くなる。
【００３６】
次に、これらの動作によってコイル１１、１２に交流電圧が供給されコンデンサ１３、１４によって更に振動波モーターに印加する電圧を昇圧する。通常はここで約３倍〜４倍程度昇圧させてから振動波モーターに印加する。電圧が入力されると、振動波モーターはその特性によって、ある特定の周波数で起動を開始する。マイコン１は起動が開始されるまで内部のタイマカウンタで時間を計測し、あらかじめ設定された時間を経過するとコンパレータ２７、２８の出力を検出するため、タイマカウンタを位相検出用に設定し起動させる。
【００３７】
図２より、このタイマーカウンタはコンパレータ２７の出力の立ち上がり信号によってカウントを開始し、コンパレータ２８の立ち上がり信号で現在のタイマカウンタ値を内部メモリーに記憶するように構成されている。
【００３８】
マイコン１は、この内部メモリーの値が更新される度に割り込みを発生させる。割り込みが発生すると、マイコン１は割り込み処理を優先させるためその処理を行なう。
【００３９】
割り込み処理では、内部メモリーに記憶されたＢ相とＳ相の位相データと、予め設定されている値（又は範囲）と比較し、その値以下（あるいは範囲以外）の場合は、現在の駆動周波数を高周波数側（共振点よりも高周波数側）に設定する。また、これらの処理を位相検出するたびに割り込み処理で行っているとマイコン１の他の処理が遅くなるため、定期的にこの位相検出処理を行う。これらの検出制御によって、振動波モーターの駆動周波数を共振点より離れさせることができ、駆動周波数の領域が共振点を超えて低周波数側にシフトされることが禁止できることになる。
【００４０】
ここまでは、本発明の前提となる技術としての振動波モーターの位相検出制御方法である。
【００４１】
本実施の形態では、図２に示すように、マイコン１の内部にさらにタイマーを追加し、コンパレータ２８から出力されるＳ相波形の周期１を検出し、 その値と、予めマイコン１の内部メモリーに記憶された周期データとを比較し、その値よりも検出した周期１が小さい（あるいは範囲外の）場合は、前述した位相検出制御を行わないような制御方式を追加したものである。
【００４２】
予めマイコン１の内部メモリーに記憶している周期データは、たとえばＥＥＰＲＯＭ等の電気的消去可能素子を使用することで、振動波モーターの個々の特性に合わせた値に設定できるため、より細かな制御を行うことが可能となる。
【００４３】
また、従来技術で記述したようにＳ相の振幅は振動波モーターの回転数に比例するため、モーターを遅いスピードで動作させるとＳ相振幅が小さいことで外来ノイズの影響を受け易い。
【００４４】
図３は、Ｓ相に外来ノイズが加えられた場合のコンパレータ２８の出力波形をあらわしたものである。Ｓ相にノイズが加わることで、Ｓ相周期が実際の値よりも短くなることが分かる。周期３＞周期２＞周期１という関係から、従来の位相検出制御では位相１が小さくなり、振動波モーターが共振点近傍に達したとマイコン１が誤検知し周波数を高い側に設定してしまう。つまりモーター速度が遅いにもかかわらず更に遅くしてしまうことで更にＳ相振幅が小さくなるという悪循環が繰り返されてしまうことになる。
【００４５】
本実施の形態では、最初に周期１のデータが予め設定された値よりも小さいかどうかを判断し、小さい場合は位相制御を行わないようにしているため、結果として位相１のデータは無視され、前述した悪循環は発生しないことになる。
【００４６】
また、図４はＳ相振幅が小さいためにコンパレータ２８での波形整形が正常に行われずＳ相出力が時々歯抜け状態になってしまう場合を示し、この状態で位相検出を行うと振動波モーターの現在の駆動周波数が共振点よりも離れた状態であると誤検知し、例えば前述のように、モーターに加わる負荷が重いために速度が遅くなった場合は振動波モーターが共振点を超えて低周波数領域にシフトすることがあった。
【００４７】
しかし、本実施の形態ではＳ相の周期データをある範囲に設定することで、あまりにも検知した周期が長い場合は、周波数を共振点よりも高い周波数側に設定するという制御方式を追加することにより、共振点を超えてないような制御を行うようにしている。
【００４８】
図５はマイコン１の内部処理をあらわしたフローチャート図である。同図をもとに更に説明を続ける。
【００４９】
同図より、マイコン１は電源が投入されると振動波モーターの駆動ルーチンを実行するようにプログラムされている。なお、図１には記述していないが外部スイッチを設け、それがＯＮされたら実行するようにしても良い。
【００５０】
初めに昇圧型ＤＣＤＣコンバータ２（以下ＤＣＤＣ２と記す）をＯＮにする処理を行い（ステップ１０１）、同時に内部のタイマーカウンタをリセットし、スタートさせる（ステップ１０２）。
【００５１】
ＤＣＤＣ２は、ＯＮされてから実際に電圧が安定するまで時間がかかるので、所定時間待たせるために、マイコン内部のメモリーにあらかじめ記憶されたＤＣＤＣ２の電圧が安定するまでの時間値と、現在のタイマーカウンタ値を比較し、タイマーカウンタの方が大きい値になるまで待機する（ステップ１０３）。
【００５２】
所定時間経過したら、一度タイマーカウンタを停止させ（ステップ１０４）、 振動波モーターの回転方向を判断する（ステップ１０５）。
【００５３】
本実施の形態では回転方向を決定する手段がないため電源が投入されると常に同じ方向に回転する。なお、外部に切り換え手段を設定し、任意に回転方向を決定できるようにしても良い。予め設定された振動波モーターの回転方向が正転方向の場合はマイコン１内部の周波数ジェネレーション機能にＡ相を９０度、Ｂ相を０度としてそれぞれ設定する（ステップ１０７）。
【００５４】
また、ステップ１０５で振動波モーターの回転方向が逆転方向だった場合は、マイコン１内部の周波数ジェネレーション機能にＡ相を０度、Ｂ相を９０度としてそれぞれ設定する（ステップ１０６）。
【００５５】
周波数ジェネレータへの位相設定が終了したら、予めマイコン１の内部メモリーに記憶してある振動波モーターの駆動周波数データをマイコン１の機能である周波数ジェネレータに設定し、それら位相を持った周波数をＡ相、Ｂ相に出力する（ステップ１０８）。
【００５６】
周波数を出力したと同時にマイコン１の内部タイマーカウンタをリセットし、スタートさせる（ステップ１０９）。
【００５７】
マイコン１から周波数を出力して、実際に振動波モーターが駆動し出すまでは、ある程度時間を要するため、予めマイコン１の内部メモリーに記憶してある振動波モーターの起動時間値とタイマーカウンタ値を比較し、タイマーカウンタの値が大きくなるまで待機する（ステップ１１０）。
【００５８】
所定時間経過したら、内部タイマーカウンタを一旦停止させ（ステップ１１１）、Ｓ相の立ち上がりから次の立ち上がりまでの時間間隔を測定する周期検出動作と、Ｂ相の立ち上がりからＳ相の立ち上がりまでの時間間隔を測定する位相検出動作の双方の動作を行うようなマイコン１内部のタイマーカウンターに設定する（ステップ１１２）。
【００５９】
この設定にするための具体的な方法として、Ｓ相の立ち上がり出力で現在のタイマーカウンタ値をメモリーするレジスタＡと、Ｂ相の立ち上がり出力で現在のタイマーカウンタ値をメモリーするレジスタＢを有したタイマーカウンタを使用し、Ｓ相の立ち上がり出力でタイマーカウンタのリセット動作を行うように設定することで可能となる。このようなタイマーカウンタは一般的なマイコンにもインプットキャプチャ機能として設けられていて、決して特殊なものではない。
【００６０】
次に、タイマーカウンタの割り込みをリセット動作時に処理するように設定し（ステップ１１３）、各検出を許可して（ステップ１１４）、振動波モーターの駆動処理を終了する（ステップ１１５）。
【００６１】
ステップ１１３でタイマーカウンタの割り込みを許可しているが、振動波モーターの駆動周波数が早い場合は、割り込み処理が間に合わない可能性があるため、もう一つのタイマーカウンタを使用して、定期的に位相検出制御を行うようにしても良い。余分なタイマーカウンタがない場合は、メインルーチン内で処理することも可能である。つまり、図５の駆動処理ルーチンは電源投入時に実行され、ステップ１１３の割り込み許可は図６のタイマー割り込み処理を許可するために必要とし、図６のタイマー割り込み処理は位相データが更新（内部メモリーにデータが転送）されるたびに実行されます。実際には、この処理は振動波モータに印加する周波数の周期（３０μｓｅｃ）ごとに実行されるため、その時間以下でこの割り込み処理を終了させないと次の割込が発生してしまい、マイクロコンピュータの他の処理ができなくなる。振動波モータの駆動周波数が低い場合は、処理が間に合おうとしても、周波数が高くなると周期が短くなるために、処理が間に合わない可能性が出てくる。
【００６２】
そこで、他のタイマーを使用してもっと遅い周期でこの割り込み処理を実行させる方法や、メインルーチンで行う方法をとっている。
【００６３】
図６はマイコン１の内部タイマーカウンタの割り込み処理ルーチンである。割り込み処理を用いない場合は、このルーチンをそのままメインルーチンで処理することでも良い。
【００６４】
同図より、 初めにＳ相周期データ値をＡレジスタに転送する（ステップ２００）。次に、予めマイコン１内部のメモリーに記憶してあるＳ相周期データの下限値をＢレジスタに（ステップ２０１）、上限値をＣレジスタにそれぞれ転送する（ステップ２０２）。
【００６５】
下限値は時間が最も短い値であり、上限値は時間が最も長い値である。次にＡレジスタの内容とＢレジスタの内容を比較し、Ａレジスタの値のほうが小さい場合はこの割り込み処理を中止するためステップ２１１に移行する（ステップ２０３）。
【００６６】
これは、予め設定してある下限値よりも検出したＳ相の周期が小さい値の場合は何らかの外来ノイズによって位相検出が正常に機能できないことをあらわしている。
【００６７】
次に、ＡレジスタとＢレジスタの比較結果がＡレジスタの方が大きいと判断した場合は（ステップ２０３）、 Ａレジスタの内容とＣレジスタの内容を比較する（ステップ２０４）。
【００６８】
比較した結果、Ａレジスタの方が大きい場合は現在の駆動周波数をＦレジスタに転送し（ステップ２０８）、予めマイコン１の内部メモリに記憶されている周波数の上げ幅であるΔＦをレジスタＦに加え（ステップ２０９）、レジスタＦの内容の周波数で駆動するように周波数ジェネレータに設定し（ステップ２１０）、振動波モーターの駆動状態の安定化を図る駆動安定化制御モードが実行され、駆動の割り込み処理を終了する（ステップ２１１）。
【００６９】
これは、Ｓ相周期を検出した結果予め設定してある上限値よりも検出したＳ相の周期が大きい値の場合は、Ｓ相振幅が小さいためコンパレータ２８の出力波形が歯抜け状態になっていて正常な位相検出が行われていないことを示す。
【００７０】
予め設定された周波数で駆動しているにもかかわらず、Ｓ相周期が長い場合は何らかの影響で負荷が増大していると考えられる。
【００７１】
振動波モーターの駆動制御において、周波数対速度（回転数）の特性は、共振点を境にして低周波数側の領域では急峻なカーブであり、共振点を境にして高周波数側の領域では緩やかなカーブであるため、駆動制御に供する周波数領域は共振点を境にして高周波数側の領域であり、共振点を境にして低周波数側の領域では制御には不適であるため、あえて駆動周波数を共振点よりも高周波数側に設定するようなプログラムにしている。
【００７２】
ステップ２０４でＡレジスタの内容とＣレジスタの内容を比較した結果、Ａレジスタの方が小さい場合はＳ相周期に全く問題なく、正常な位相検出が行われたと判断する。
【００７３】
そこで、タイマーカウンタによって検出された位相データ値をＡレジスタに転送し（ステップ２０５）、予めマイコン１の内部メモリに記憶してある位相データをＢレジスタに転送する（ステップ２０６）。
【００７４】
次にＡレジスタの内容とＢレジスタの内容を比較し（ステップ２０７）、Ａレジスタの内容の方が大きいと判断した場合は割り込み処理を終了する。これは振動波モーターが共振点から離れた所で駆動されていることをあらわす。
【００７５】
また、ステップ２０７でＡレジスタの内容がＢレジスタよりも小さいと判断した場合は、現在の駆動周波数をＦレジスタに転送し（ステップ２０８）、予めマイコン１の内部メモリに記憶されている周波数の上げ幅であるΔＦをレジスタＦに加え（ステップ２０９）、レジスタＦの内容の周波数で駆動するように周波数ジェネレータに設定し（ステップ２１０）、割り込み処理を終了する（ステップ２１１）。
【００７６】
これは、検出した位相データから振動波モーターが共振点近傍で駆動されていると判断し、駆動周波数を高い側に設定して共振点から離れる方向に制御を行っているためである。
【００７７】
本実施の形態において、予めマイコン１に設定された各種値は、マイコン内部のメモリーに記憶しているが、ＥＥＰＲＯＭなどの電気的消去可能な素子を用いてその素子に記憶することで、より個々の振動波モーターの特性に合わせた制御が可能となることは言うまでもない。
【００７８】
上記した実施の形態において、共振点を越えて制御不適な低周波数側に駆動周波数が移行することが避けられ、その間強制的に駆動周波数を高周波数側に移行させることで駆動速度の低下があるものの、確実に振動波モーターの駆動制御が可能となり、例えばモーターにより駆動される被駆動体を駆動速度に無関係に所定の位置に移動させる駆動装置に適用することができ、例えばレンズを光軸に沿って合焦あるいは変倍のために移動させるレンズ鏡筒に適用することができる。
【００７９】
【発明の効果】
請求項１〜５に係る発明によれば、振動型モーターの駆動状態、例えばモーターの回転速度（数）に比例する振動体の励振状態としての振幅を気にせず、従来よりも低い回転速度（数）で十分な位相制御が可能となり、また外来ノイズなどの対策においても安価でより高精度な位相検出を行うことが可能である。
【図面の簡単な説明】
【図１】本発明の実施の形態を示す振動波モーターを駆動制御する回路ブロック図
【図２】図１の振動波モーターのＢ相、Ｓ相を波形整形した場合の波形図
【図３】振動波モーターの制御トラブルとなる波形を示す図
【図４】振動波モーターの制御トラブルとなる波形を示す図
【図５】本発明の実施の形態の動作を示すフローチャート
【図６】図５のタイマー割り込み処理を示すフローチャート
【図７】従来の振動波モーターの駆動制御装置のＢ相、Ｓ相の波形整形回路図
【図８】図７の回路の出力を示す波形図
【符号の説明】
１  マイクロコンピュータ
２  昇圧型ＤＣＤＣコンバータユニット
３  電源
４  レギュレータ
５、６  インバータ
７、８、９、１０  ＮＰＮトランジスタ
１１、１２  コイル
１３、１４  コンデンサ
１５  Ａ相側電極
１６  Ｂ相側電極
１７  Ｓ相電極
１８  圧電セラミック
１９  ＧＮＤ電極
２０  分圧回路
２１、２２、２５、２６  抵抗
２３、２４  コンデンサ
２７、２８  コンパレータ
【図１】
0003839945.tif 000002
【図２】
0003839945.tif 000003
【図３】
0003839945.tif 000004
【図４】
0003839945.tif 000005
【図５】
0003839945.tif 000006
【図６】
0003839945.tif 000007
【図７】
0003839945.tif 000008
【図８】
0003839945.tif 000009