(57)【特許請求の範囲】
【請求項１】
固定子と振動子とを有し、両者の少なくとも一方は電磁石で構成され、この電磁石のコイルに駆動電流を供給して、振動子を固定子に対して振動させるリニア振動モータの駆動制御回路であって、
前記コイルに正電流と負電流とを非通電期間を挟んで交互に流すための駆動信号を生成する駆動信号生成部と、
前記駆動信号生成部により生成された駆動信号に応じた駆動電流を生成し、前記コイルに供給する駆動部と、
前記非通電期間において、前記コイルに発生する誘起電圧を検出する誘起電圧検出部と、
前記誘起電圧検出部により検出された誘起電圧のゼロクロスを検出するゼロクロス検出部と、を備え、
前記駆動信号生成部は、前記ゼロクロスの検出位置から前記リニア振動モータの固有振動数を推定し、前記駆動信号の周波数を、当該固有振動数に近づけ、
前記駆動信号生成部は、
前記駆動信号の一周期の終了位置に対応すべきカウント終了値が設定され、カウント初期値から当該カウント終了値までを繰り返しカウントするカウンタと、
前記カウンタから供給されるカウント値を用いて、前記カウント終了値に対応する周期幅の駆動信号を生成するデコーダと、
前記カウンタから供給されるカウント値をラッチし、前記ゼロクロスが検出された位置でラッチしたカウント値を出力する第１のラッチ回路と、
前記第１のラッチ回路から入力されるカウント値と、現在のカウント終了値との差分を算出する差分算出回路と、
前記差分算出回路から入力される差分値をラッチし、第１クロック信号により指示されたタイミングで、その差分値を出力する第２のラッチ回路と、
前記第２のラッチ回路から入力される差分値を、現在のカウント終了値に加算する加算回路と、
前記加算回路から入力される値をラッチし、第２クロック信号により指示されたタイミングで出力する第３のラッチ回路と、
前記第３のラッチ回路から入力される値をラッチし、前記カウント終了値として第３クロック信号により指示されたタイミングで前記カウンタに出力する第４のラッチ回路と、を含み、
前記第１クロック信号は、前記ゼロクロス検出部から前記第１のラッチ回路に設定される信号を半クロック遅延させた信号であり、
前記第２クロック信号は、前記第１クロック信号を半クロック遅延させた信号であり、 前記第３クロック信号は、前記第２クロック信号を数クロック遅延させた信号であることを特徴とするリニア振動モータの駆動制御回路。
【請求項２】
前記駆動信号生成部は、前記駆動信号の一周期の終了位置と、その終了位置に対応すべき前記ゼロクロスの検出位置との差分を算出し、その差分を現在の駆動信号の周期幅に加算して、駆動信号の周期幅を適応的に制御することを特徴とする請求項１に記載のリニア振動モータの駆動制御回路。
【請求項３】
固定子と振動子とを有し、両者の少なくとも一方は電磁石で構成され、この電磁石のコイルに駆動電流を供給して、振動子を固定子に対して振動させるリニア振動モータの駆動制御回路であって、
前記コイルに正電流と負電流とを非通電期間を挟んで交互に流すための駆動信号を生成する駆動信号生成部と、
前記駆動信号生成部により生成された駆動信号に応じた駆動電流を生成し、前記コイルに供給する駆動部と、
前記非通電期間において、前記コイルに発生する誘起電圧を検出する誘起電圧検出部と、
前記誘起電圧検出部により検出された誘起電圧のゼロクロスを検出するゼロクロス検出部と、を備え、
前記駆動信号生成部は、前記ゼロクロスの検出位置から前記リニア振動モータの固有振動数を推定し、前記駆動信号の周波数を、当該固有振動数に近づけ、
前記駆動信号生成部は、
前記駆動信号の一周期に対応するカウント値より大きなカウント値までカウント可能なカウンタであって、前記駆動信号の一周期の終了位置に対応すべきカウント終了値が設定され、カウント初期値から当該カウント終了値までを繰り返しカウントするカウンタと、
前記カウンタから供給されるカウント値を用いて、前記カウント終了値に対応する周期幅の駆動信号を生成するデコーダと、
前記カウンタから供給されるカウント値をラッチし、前記ゼロクロスが検出された位置でラッチしたカウント値を出力する第１のラッチ回路と、
前記第１のラッチ回路から入力される値をラッチし、前記カウント終了値としてクロック信号により指示されたタイミングで前記カウンタに出力する第２のラッチ回路と、を含み、
前記クロック信号は、前記ゼロクロス検出部から前記第１のラッチ回路に設定される信号を遅延させた信号であることを特徴とするリニア振動モータの駆動制御回路。
【請求項４】
前記誘起電圧検出部は、
前記コイルの両端電圧を差動増幅する差動増幅器を含み、
前記ゼロクロス検出部は、
前記差動増幅器の出力アナログ信号をデジタル信号に変換するアナログ／デジタル変換器と、
前記アナログ／デジタル変換器の出力デジタル信号から前記ゼロクロスが検出された位置を示すデジタル値を生成するエッジ検出部と、
を含むことを特徴とする請求項１から３のいずれかに記載のリニア振動モータの駆動制御回路。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、振動子が固定子に対して直線状に往復振動するリニア振動モータを駆動制御するための駆動制御回路に関する。
【背景技術】
【０００２】
従来、リニア振動モータは、電気カミソリなど特定の用途で使用されてきたが、近年、その用途が拡大している。たとえば、タッチパネルを押下した際の操作感覚をユーザにフィードバックさせるための振動を作り出す素子に採用されている。このようなハプティクス用途の拡大に伴い、今後、リニア振動モータの出荷数が伸びていくと予想される。
【０００３】
リニア振動モータは、その固有振動数（以下適宜、共振周波数ともいう）にできるだけ近い周波数で駆動されることが好ましく、その共振周波数と駆動周波数とが一致するときに最も強い振動が発生する。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００１−１６８９２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
リニア振動モータの固有振動数は、振動子の質量およびバネ定数により決定されるため、製品間でその固有振動数にばらつきがある。したがって、リニア振動モータの駆動回路に固定の駆動周波数を一律に設定する従来の手法では、製品の中に、モータの固有振動数と駆動周波数に大きなずれを持つものも発生し、歩留を低下させる要因となっていた。また、当初はモータの固有振動数と駆動周波数とが一致していても、経時変化により両者がずれてしまい、振動が弱くなってしまうことがあった。
【０００６】
本発明はこうした状況に鑑みなされたものであり、その目的は、リニア振動モータがどのような状態であっても、その固有振動数にできるだけ近い周波数で駆動することができる技術を提供することにある。
【課題を解決するための手段】
【０００７】
本発明のある態様のリニア振動モータの駆動制御回路は、固定子と振動子とを有し、両者の少なくとも一方は電磁石で構成され、この電磁石のコイルに駆動電流を供給して、振動子を固定子に対して振動させるリニア振動モータの駆動制御回路であって、コイルに正電流と負電流とを非通電期間を挟んで交互に流すための駆動信号を生成する駆動信号生成部と、駆動信号生成部により生成された駆動信号に応じた駆動電流を生成し、コイルに供給する駆動部と、非通電期間において、コイルに発生する誘起電圧を検出する誘起電圧検出部と、誘起電圧検出部により検出された誘起電圧のゼロクロスを検出するゼロクロス検出部と、を備える。駆動信号生成部は、ゼロクロスの検出位置からリニア振動モータの固有振動数を推定し、駆動信号の周波数を、当該固有振動数に近づける。
【０００８】
なお、以上の構成要素の任意の組み合わせ、本発明の表現を方法、装置、システムなどの間で変換したものもまた、本発明の態様として有効である。
【発明の効果】
【０００９】
本発明によれば、リニア振動モータがどのような状態であっても、その固有振動数にできるだけ近い周波数で駆動することができる。
【図面の簡単な説明】
【００１０】
【図１】本発明の実施の形態に係る、リニア振動モータの駆動制御回路の構成を示す図である。
【図２】駆動部、誘起電圧検出部およびコンパレータの構成例を示す図である。
【図３】実施の形態に係る駆動制御回路の動作例を示すタイミングチャートである。
【図４】エッジ信号、第１クロック信号、第２クロック信号および第３クロック信号の一例を示すタイミングチャートである。
【図５】デコーダの構成例を示す図である。
【図６】駆動信号の一周期の波形を示す図である。
【図７】駆動信号の通電期間幅の制御を説明するための図である。
【図８】駆動信号の位相制御を説明するための図である。
【図９】立ち上がり制御機能が追加されたデコーダの構成例を示す図である。
【図１０】第１の立ち上がり制御を説明するための図である。図１０（ａ）は、第１の立ち上がり制御が実行されない場合の、コイル駆動電圧およびリニア振動モータの振動の推移を示す図であり、図１０（ｂ）は、第１の立ち上がり制御が実行された場合の、コイル駆動電圧およびリニア振動モータの振動の推移を示す図である。
【図１１】第２の立ち上がり制御を説明するための図である。図１１（ａ）は、第２の立ち上がり制御が実行されない場合の、コイル駆動電圧の推移を示す図であり、図１１（ｂ）は、第２の立ち上がり制御が実行された場合の、コイル駆動電圧の推移を示す図である。
【図１２】停止制御機能が追加されたデコーダの構成例を示す図である。
【図１３】上記停止制御の基本概念を説明するための図である。図１３（ａ）は、停止制御が実行されない場合の、コイル駆動電圧の推移を示す図であり、図１３（ｂ）は、停止制御が実行された場合の、コイル駆動電圧の推移を示す図であり、図１３（ｃ）は、停止制御がＰＷＭ信号により実行された場合の、コイル駆動電圧の推移を示す図である。
【図１４】上記停止制御において逆位相の駆動信号の周期回数が固定の例を説明するための図である。図１４（ａ）は、駆動時の駆動信号の周期回数が多い場合の、コイル駆動電圧およびリニア振動モータの振動の推移を示す図であり、図１４（ｂ）は、駆動時の駆動信号の周期回数が少ない場合の、コイル駆動電圧およびリニア振動モータの振動の推移を示す図である。
【図１５】上記停止制御において逆位相の駆動信号の周期回数が可変の例を説明するための図である。図１５（ａ）は、駆動時の駆動信号の周期回数が多い場合の、コイル駆動電圧およびリニア振動モータの振動の推移を示す図であり、図１５（ｂ）は、駆動時の駆動信号の周期回数が少ない場合の、コイル駆動電圧およびリニア振動モータの振動の推移を示す図である。
【図１６】検出窓設定機能を持つゼロクロス検出部の構成を示す図である。
【図１７】検出窓信号１、検出窓信号２および検出窓開始信号を説明するための図である。
【図１８】出力制御部の構成例を示す図である。
【図１９】検出窓信号１を使用するゼロクロス検出部（検出窓開始信号未使用）の動作を説明するための図である。図１９（ａ）は、誘起電圧のゼロクロスが検出窓内に発生した場合の、コイルの両端電圧およびエッジ信号の推移を示し、図１９（ｂ）は、誘起電圧のゼロクロスが検出窓内で発生しない場合（駆動周波数＜共振周波数）の、コイルの両端電圧およびエッジ信号の推移を示し、図１９（ｃ）は、誘起電圧のゼロクロスが検出窓内で発生しない場合（駆動周波数＞共振周波数）の、コイルの両端電圧およびエッジ信号の推移を示す図である。
【図２０】検出窓信号２および検出窓開始信号を使用するゼロクロス検出部の動作を説明するための図である。図２０（ａ）は、誘起電圧のゼロクロスが検出窓内で発生しない場合（駆動周波数＜共振周波数）の、コイルの両端電圧およびエッジ信号の推移を示し、図２０（ｂ）は、誘起電圧のゼロクロスが検出窓内で発生しない場合（駆動周波数＞共振周波数）の、コイルの両端電圧およびエッジ信号の推移を示す図である。
【図２１】図１に示したリニア振動モータの駆動制御回路の構成の変形例１を示す図である。
【図２２】図１に示したリニア振動モータの駆動制御回路の構成の変形例２を示す図である。
【図２３】図１に示したリニア振動モータの駆動制御回路の構成の変形例３を示す図である。
【発明を実施するための形態】
【００１１】
（基本構成）
図１は、本発明の実施の形態に係る、リニア振動モータ２００の駆動制御回路１００の構成を示す図である。まず、リニア振動モータ２００は、固定子２１０と振動子２２０とを有し、両者の少なくとも一方は電磁石で構成される。本実施の形態では、固定子２１０が電磁石で構成される。固定子２１０は、磁性材料の芯２１１にコイルＬ１が巻き付けられて形成され、コイルＬ１に通電されると磁石として作用する。振動子２２０は、永久磁石２２１を含み、永久磁石２２１の両端（Ｓ極側とＮ極側）は、それぞれバネ２２２ａ、２２２ｂを介してフレーム２２３に固定される。固定子２１０と振動子２２０とは、所定の隙間を空けて並べて配置される。なお、図１の例と反対に、振動子２２０が電磁石で構成され、固定子２１０が永久磁石で構成されてもよい。
【００１２】
駆動制御回路１００は、上記コイルＬ１に駆動電流を供給して、振動子２２０を固定子２１０に対して直線状に往復振動させる。駆動制御回路１００は、駆動信号生成部１０、駆動部２０、誘起電圧検出部３０およびゼロクロス検出部４０を備える。
【００１３】
駆動信号生成部１０は、コイルＬ１に正電流と負電流とを非通電期間を挟んで交互に流すための駆動信号を生成する。駆動部２０は、駆動信号生成部１０により生成された駆動信号に応じた駆動電流を生成し、コイルＬ１に供給する。誘起電圧検出部３０は、コイルＬ１の両端に接続され、コイルＬ１の両端電位差を検出する。主に、非通電期間において、コイルＬ１に発生する誘起電圧を検出する。ゼロクロス検出部４０は、誘起電圧検出部３０により検出された誘起電圧のゼロクロスを検出する。
【００１４】
駆動信号生成部１０は、ゼロクロス検出部４０により検出された誘起電圧のゼロクロスの検出位置から、リニア振動モータ２００の固有振動数を推定し、上記駆動信号の周波数を、当該固有振動数にできる限り近づける。すなわち、上記駆動信号の周波数が当該固有振動数に一致するよう、上記駆動信号の周波数を適応的に変化させる。
【００１５】
より具体的には、駆動信号生成部１０は、上記駆動信号の一周期の終了位置と、その終了位置に対応すべきゼロクロスの検出位置との差分を算出し、その差分を現在の駆動信号の周期幅に加算して、上記駆動信号の周期幅を適応的に制御する。上記駆動信号の一周期が通常の位相（ゼロ→正電圧→ゼロ→負電圧→ゼロ）で形成される場合、上記終了位置に対応すべきゼロクロスの検出位置は、上記誘起電圧の負電圧から正電圧にゼロクロスする位置となる。反対に、上記駆動信号の一周期が逆位相（ゼロ→負電圧→ゼロ→正電圧→ゼロ）で形成される場合、上記終了位置に対応すべきゼロクロスの検出位置は、上記誘起電圧の正電圧から負電圧にゼロクロスする位置となる。
【００１６】
以下、駆動制御回路１００の構成についてより具体的に説明する。まず、駆動部２０、誘起電圧検出部３０、ゼロクロス検出部４０の構成について説明する。ゼロクロス検出部４０は、コンパレータ４１およびエッジ検出部４２を含む。コンパレータ４１は、誘起電圧検出部３０により検出された誘起電圧と、ゼロクロスを検出するための基準電圧とを比較する。コンパレータ４１は、当該誘起電圧が当該基準電圧をクロスするタイミングで、出力を反転させる。たとえば、ローレベル信号からハイレベル信号に反転させる。エッジ検出部４２は、コンパレータ４１の出力が反転した位置をエッジとして検出する。
【００１７】
図２は、駆動部２０、誘起電圧検出部３０およびコンパレータ４１の構成例を示す図である。図２では、駆動部２０をＨブリッジ回路で、および誘起電圧検出部３０を差動増幅回路で構成する例を示している。
【００１８】
当該Ｈブリッジ回路は、第１トランジスタＭ１、第２トランジスタＭ２、第３トランジスタＭ３および第４トランジスタＭ４を含む。なお、図２では説明の便宜上、リニア振動モータ２００のコイルＬ１も駆動部２０の枠内に描いている。第１トランジスタＭ１と第３トランジスタＭ３との第１直列回路、および第２トランジスタＭ２と第４トランジスタＭ４との第２直列回路が、それぞれ電源電位Ｖｄｄとグラウンド電位間に接続される。第１トランジスタＭ１と第３トランジスタＭ３との接続点（以下、Ａ点という）と、第２トランジスタＭ２と第４トランジスタＭ４との接続点（以下、Ｂ点という）との間に、コイルＬ１が接続される。
【００１９】
図２では、第１トランジスタＭ１および第２トランジスタＭ２はＰチャンネルＭＯＳＦＥＴで構成され、それぞれのソース−ドレイン間にボディダイオードとして、第１ダイオードＤ１および第２ダイオードＤ２が接続されている。第３トランジスタＭ３および第４トランジスタＭ４はＮチャンネルＭＯＳＦＥＴで構成され、それぞれのソース−ドレイン間にボディダイオードとして、第３ダイオードＤ３および第４ダイオードＤ４が接続されている。
【００２０】
第１トランジスタＭ１、第２トランジスタＭ２、第３トランジスタＭ３および第４トランジスタＭ４のゲートには、駆動信号生成部１０（より厳密には、後述するデコーダ１４）から上記駆動信号が入力される。当該駆動信号により、第１トランジスタＭ１と第４トランジスタＭ４がオン、および第２トランジスタＭ２と第３トランジスタＭ３がオフに制御されると、コイルＬ１に正電流が流れ、第１トランジスタＭ１と第４トランジスタＭ４がオフ、および第２トランジスタＭ２と第３トランジスタＭ３がオンに制御されると、コイルＬ１に負電流が流れる。
【００２１】
上記差動増幅回路は、オペアンプＯＰ１、第１抵抗Ｒ１、第２抵抗Ｒ２、第３抵抗Ｒ３および第４抵抗Ｒ４を含む。オペアンプＯＰ１の反転入力端子は第１抵抗Ｒ１を介してＢ点と接続され、非反転入力端子は第２抵抗Ｒ２を介してＡ点と接続される。オペアンプＯＰ１の、反転入力端子と出力端子とは第３抵抗Ｒ３を介して接続される。オペアンプＯＰ１の非反転入力端子には、第４抵抗Ｒ４を介して基準電圧Ｖｒｅｆがオフセット電圧として印加される。
【００２２】
第１抵抗Ｒ１と第２抵抗Ｒ２の抵抗値を同じ値に設定し、第３抵抗Ｒ３と第４抵抗Ｒ４の抵抗値を同じ値に設定する。この条件では、上記差動増幅回路の増幅率はＲ３／Ｒ１となる。たとえば、第１抵抗Ｒ１と第２抵抗Ｒ２の抵抗値を１０ｋΩ、および第３抵抗Ｒ３と第４抵抗Ｒ４の抵抗値を２０ｋΩに設定して、コイルＬ１の両端電圧（Ａ−Ｂ間電圧）を２倍に増幅する。
【００２３】
コンパレータ４１（オープンループのオペアンプで構成される）の反転入力端子には基準電圧Ｖｒｅｆが印加される。コンパレータ４１の非反転入力端子はオペアンプＯＰ１の出力端子と接続され、当該非反転入力端子にはオペアンプＯＰ１の出力電圧が印加される。上記差動増幅回路に基準電圧Ｖｒｅｆがオフセット電圧（たとえば、１／２Ｖｄｄ）として印加される場合、オペアンプＯＰ１とコンパレータ４１とのレンジを合わせるために、コンパレータ４１の参照電圧として、基準電圧Ｖｒｅｆが使用される。なお、上記差動増幅回路にオフセット電圧が印加されない場合、コンパレータ４１の参照電圧として、グラウンド電圧が使用される。
【００２４】
このように、コイルＬ１の両端電圧（Ａ−Ｂ間電圧）を上記差動増幅回路により増幅してからコンパレータ４１に入力することにより、コイルＬ１に発生する誘起電圧のゼロクロスの検出精度を高めることができる。
【００２５】
図３は、実施の形態に係る駆動制御回路１００の動作例を示すタイミングチャートである。この動作例は、単相全波にてリニア振動モータ２００を駆動する例である。その際、非通電期間を設定する。非通電期間は、正電流通電期間および負電流通電期間のそれぞれの前後に設定される。すなわち、全周期のうち、第１半周期は非通電期間、正電流通電期間および非通電期間で構成され、第２半周期は非通電期間、負電流通電期間および非通電期間で構成される。以下の例では、半周期の１８０°のうち、非通電期間に４０°、正（負）電流通電期間に１００°および非通電期間に４０°を割り当てる。したがって、一周期のうち、５／９が通電期間に割り当てられ、４／９が非通電期間に割り当てられる。以下、本明細書では、この比率にしたがった駆動方式を１００度通電と呼ぶ。
【００２６】
図３にて、上記Ｈブリッジ回路のオン−１状態（Ｍ１、Ｍ４がオン、Ｍ２、Ｍ３がオフ）ではコイルＬ１に正電流が流れる。上記Ｈブリッジ回路のオフ状態（Ｍ１〜Ｍ４がオフ）ではコイルＬ１に駆動電流は流れない。上記Ｈブリッジ回路のオン−２状態（Ｍ１、Ｍ４がオフ、Ｍ２、Ｍ３がオン）ではコイルＬ１に負電流が流れる。
【００２７】
コイルＬ１に正電流が流れている状態では固定子２１０がＮ極に励磁され、その磁力により、振動子２２０は永久磁石２２１のＳ極側への力を受ける。その力により、振動子２２０はバネ２２２ａに抗して永久磁石２２１のＳ極側へ移動し、バネ２２２ａの収縮限界まで移動する。コイルＬ１に駆動電流が流れていない状態では固定子２１０が励磁されず、磁力は発生しない。振動子２２０は、バネ２２２ａの復元力により中心位置に向けて移動する。コイルＬ１に負電流が流れている状態では固定子２１０がＳ極に励磁され、その磁力により、振動子２２０は永久磁石２２１のＮ極側への力を受ける。その力により、振動子２２０はバネ２２２ｂに抗して永久磁石２２１のＮ極側へ移動し、バネ２２２ｂの収縮限界まで移動する。
【００２８】
このように、駆動信号生成部１０は、上記Ｈブリッジ回路をオフ状態→オン−１状態→オフ状態→オン−２状態→オフ状態というサイクルで制御することにより、リニア振動モータ２００を往復運動させることができる。
【００２９】
上記Ｈブリッジ回路がオン−１状態からオフ状態に遷移し、第１トランジスタＭ１〜第４トランジスタＭ４がすべてオフに切り替えられると、上記ボディーダイオードを通じて回生電流が流れる。上記Ｈブリッジ回路がオン−２状態からオフ状態に遷移する際も同様である。この回生電流を活用することにより、エネルギー効率を高め、駆動制御回路１００の消費電力を低減することができる。
【００３０】
上記回生電流は、コイルＬ１にそれまで流れていた電流と同じ方向に流れる。上記回生電流が流れ終わると、コイルＬ１に、振動子２２０の移動により誘起される誘起電流が流れる。振動子２２０が停止している状態ではこの誘起電流は流れない。振動子２２０が停止している状態は、振動子２２０の振動レンジの両端に振動子２２０が到達した瞬間に発生する。
【００３１】
誘起電圧検出部３０は、非通電期間においてコイルＬ１に発生する逆起電圧を監視することにより、振動子２２０の位置を推定することができる。当該逆起電圧がゼロの状態は、振動子２２０が停止している（すなわち、振動レンジのＳ極側最大到達地点またはＮ極側最大到達地点に位置する）ことを示している。
【００３２】
したがって、ゼロクロス検出部４０は、コイルＬ１の両端電圧（Ａ−Ｂ間電圧）がゼロクロス（駆動電流および回生電流によるゼロクロスを除く）するタイミングを検出し、検出したゼロクロス間の期間を測定することにより、リニア振動モータ２００の固有振動数を求めることができる。なお、連続するゼロクロス間の期間が、リニア振動モータ２００の半振動周期幅を示し、一つ飛ばしのゼロクロス間の期間がその全振動周期幅を示す。
【００３３】
本実施の形態では、ゼロクロス検出部４０は非通電期間にてコイルＬ１の両端電圧（Ａ−Ｂ間電圧）が負から正にゼロクロスするタイミングのみを検出する。この場合、図２に示したコンパレータ４１は、オペアンプＯＰ１の出力電圧が基準電圧Ｖｒｅｆより低い間、ローレベル信号を出力し、オペアンプＯＰ１の出力電圧が基準電圧Ｖｒｅｆより高くなると、ハイレベル信号を出力するよう、設定される。
【００３４】
駆動信号生成部１０は、測定されたリニア振動モータ２００の固有振動数に対応する周期幅を用いて、つぎの駆動信号の周期幅を調整する。この測定と調整が繰り返されることにより、駆動制御回路１００は、リニア振動モータ２００をその共振周波数またはその近傍の周波数で継続的に駆動することができる。
【００３５】
図１に戻り、駆動信号生成部１０をより具体的に説明する。駆動信号生成部１０は、第１ラッチ回路１１、メインカウンタ１２、ループカウンタ１３、デコーダ１４、第２ラッチ回路１５、差分算出回路１６、第３ラッチ回路１７、加算回路１８および第４ラッチ回路１９を含む。
【００３６】
第１ラッチ回路１１は、上記駆動信号の一周期の終了位置に対応すべきカウント終了値をラッチし、第３クロック信号ＣＬＫ３により指示されたタイミングでメインカウンタ１２およびデコーダ１４に出力する。なお、差分算出回路１６にも出力することができる。第１ラッチ回路１１には、リニア振動モータ２００の駆動開始時には、図示しないレジスタなどから上記カウント終了値の初期値が設定される。駆動開始後は、第４ラッチ回路１９から入力される値が上記カウント終了値となる。
【００３７】
メインカウンタ１２は、第１ラッチ回路１１から上記カウント終了値が設定され、カウント初期値から当該カウント終了値までを繰り返しカウントする。カウント初期値には、通常、０が設定される。たとえば、当該カウント終了値として１９９が設定された場合、メインカウンタ１２は０〜１９９までを繰り返しカウントアップする２００進カウンタとなる。メインカウンタ１２のカウント値は、ループカウンタ１３、デコーダ１４および第２ラッチ回路１５に出力される。
【００３８】
ループカウンタ１３は、メインカウンタ１２の一カウントループが終了するたびにインクリメントし、メインカウンタ１２のカウントループ回数を保持する。ここで、一カウントループとは、メインカウンタ１２の上記カウント初期値から上記カウント終了値までカウントすることを指す。一カウントループは一駆動周期に対応するため、カウントループ回数は駆動周期回数に対応する。
【００３９】
デコーダ１４は、メインカウンタ１２から供給されるカウント値を用いて、上記カウント終了値に応じた周期幅の駆動信号を生成する。デコーダ１４の詳細な構成は後述する。第２ラッチ回路１５は、メインカウンタ１２から供給されるカウント値を順次ラッチし、ゼロクロス検出部４０によりゼロクロスが検出された位置でラッチしたカウント値を差分算出回路１６に出力する。当該ゼロクロスが検出された位置は、エッジ検出部４２から入力されるエッジ信号により通知される。当該ゼロクロスが検出された位置が、理想的に常に同じタイミングで発生すれば、第２ラッチ回路１５の出力は常に同じカウント値となる。
【００４０】
差分算出回路１６は、第２ラッチ回路１５から入力されるカウント値と、現在のカウント終了値との差分を算出する。図１では現在のカウント終了値は第１ラッチ回路１１から入力される例を描いている。なお、差分算出回路１６が現在のカウント終了値を保持する構成であってもよいし、第４ラッチ回路１９から供給される構成であってもよい。
【００４１】
ゼロクロスが検出された位置のカウント値（＝第２ラッチ回路１５から入力されるカウント値）が、現在のカウント終了値より小さい場合、差分算出回路１６は、前者から後者を減算する。たとえば、ゼロクロスが検出された位置のカウント値が１９７で、現在のカウント終了値が１９９の場合、差分算出回路１６は、−２を出力する。
【００４２】
ゼロクロスが検出された位置のカウント値が、現在のカウント終了値より大きい場合、第２ラッチ回路１５から入力されるカウント値は、現在のカウント終了値に対する増分値となる。この場合、差分算出回路１６は、第２ラッチ回路１５から入力されるカウント値をそのまま出力する。たとえば、ゼロクロスが検出された位置の本来のカウント値が２０１で、現在のカウント終了値が１９９の場合、第２ラッチ回路１５から入力されるカウント値は２となり、差分算出回路１６は２をそのまま出力する。当該カウント値は１９９でリセットされるため、第２ラッチ回路１５から入力されるカウント値は、２０１ではなく、２となる。
【００４３】
第３ラッチ回路１７は、差分算出回路１６から入力される差分値をラッチし、第１クロック信号ＣＬＫ１により指示されたタイミングで、その差分値を加算回路１８に出力する。加算回路１８は、第３ラッチ回路１７から入力される差分値を、第４ラッチ回路１９から入力される現在のカウント終了値に加算する。第４ラッチ回路１９は、加算回路１８から入力される値をラッチし、第２クロック信号ＣＬＫ２により指示されたタイミングで第１ラッチ回路１１に出力する。第４ラッチ回路１９にも、リニア振動モータ２００の駆動開始時には、図示しないレジスタなどから上記カウント終了値の初期値が設定される。
【００４４】
加算回路１８により生成された値は新たなカウント終了値として、第４ラッチ回路１９および第１ラッチ回路１１を介してメインカウンタ１２およびデコーダ１４に設定される。したがって、メインカウンタ１２およびデコーダ１４には、直前のゼロクロスの検出位置を反映したカウント終了値が常に設定される。
【００４５】
図４は、エッジ信号、第１クロック信号ＣＬＫ１、第２クロック信号ＣＬＫ２および第３クロック信号ＣＬＫ３の一例を示すタイミングチャートである。エッジ信号はエッジ検出部４２から第２ラッチ回路１５に設定される。第１クロック信号ＣＬＫ１は、エッジ信号を半クロック、遅延させた信号である。この半クロックの遅延は、差分算出回路１６による演算処理を考慮したものである。第２クロック信号ＣＬＫ２は、第１クロック信号ＣＬＫ１を半クロック、遅延させた信号である。この半クロックの遅延は、加算回路１８による演算処理を考慮したものである。
【００４６】
第３クロック信号ＣＬＫ３は、第２クロック信号ＣＫ２を数クロック、遅延させた信号である。この数クロックの遅延は、現在の駆動周期のカウント終了前に、現在の駆動周期のカウント終了値が変更されることを抑制するための遅延である。たとえば、第１ラッチ回路１１が設置されない場合であって、現在の駆動周期において、その終了位置より前にゼロクロスが検出された場合、そのゼロクロス位置を反映した新たなカウント終了値が、次回の駆動周期からではなく、現在の駆動周期から適用されてしまう可能性がある。その場合、更新前のカウント終了値を基準に通電期間が決定されるため、通電期間と非通電期間との比率が維持できなくなってしまう。本実施の形態では、１００度通電が維持できなくなってしまう。
【００４７】
第４ラッチ回路１９とメインカウンタ１２との間に第１ラッチ回路１１を設置することにより、メインカウンタ１２に設定されている現在のカウント終了値を、ゼロクロス位置を反映した新たなカウント終了値に更新するタイミングを遅らせることができる。
【００４８】
（デコーダ構成）
図５は、デコーダ１４の構成例を示す図である。デコーダ１４は、上記カウント終了値に、上記駆動信号の一周期に対する通電期間の比率を一定にするための係数を乗算して得られる値に応じて、上記駆動信号の通電期間に対応するカウント幅を決定する。上述したように、上記駆動信号の一周期には、正電流通電期間と負電流通電期間とが含まれる。したがって、上記１００度通電の場合、上記駆動信号の一周期に対する各通電期間の比率は、１００°／３６０°（≒０．２８）となる。また、上記駆動信号の一周期に対する各通電期間の半期間の比率は、５０°／３６０°（≒０．１４）となる。
【００４９】
また、デコーダ１４は、上記カウント終了値に、上記駆動信号の通電期間の中心位置を決定するための係数を乗算して得られる値に応じて、上記駆動信号の通電期間の開始位置および終了位置に対応するカウント値を決定する。上述したように、上記駆動信号の一周期は、前後に非通電期間が設定された正電流通電期間および前後に非通電期間が設定された負電流通電期間により形成される。ここで、正電流通電期間の長さおよび負電流通電期間の長さは等しく設定され、非通電期間の長さも、すべて等しく設定される。
【００５０】
したがって、上記駆動信号の正電流通電期間の中心位置を決定するための係数は、０．２５に設定され、上記駆動信号の負電流通電期間の中心位置を決定するための係数は、０．７５に設定される。なお、上記駆動信号の位相が逆の場合、負電流通電期間の中心位置を決定するための係数は、０．２５に設定され、正電流通電期間の中心位置を決定するための係数は、０．７５に設定される。
【００５１】
このように、デコーダ１４は、各通電期間に対応するカウント幅、および各通電期間の中心位置に対応するカウント値を算出することができる。そして、当該中心位置に対応するカウント値から、上記カウント幅の半分の値を減算することにより、各通電期間の開始位置に対応するカウント値を算出することができる。また、当該中心位置に対応するカウント値に、上記カウント幅の半分の値を加算することにより、各通電期間の終了位置に対応するカウント値を算出することができる。
【００５２】
以下、より具体的に説明する。デコーダ１４は、駆動幅算出部５１、正駆動中心値算出部５２、負駆動中心値算出部５３、正側減算部５４、正側加算部５５、負側減算部５６、負側加算部５７、正駆動信号生成部５８および負駆動信号生成部５９を含む。
【００５３】
駆動幅算出部５１は、上記駆動信号の一周期に対する各通電期間（以下適宜、駆動期間ともいう）の半期間の比率を係数として保持する。上記１００度通電の場合、０．１４を保持する。駆動幅算出部５１は、第１ラッチ回路１１からカウント終了値が供給される。駆動幅算出部５１は、そのカウント終了値に当該係数を乗算する。これにより、各駆動期間の半期間に対応するカウント幅を算出することができる。
【００５４】
正駆動中心値算出部５２は、上記駆動信号の正電流通電期間（以下適宜、正駆動期間ともいう）の中心位置を決定するための係数を保持する。本実施の形態では、０．２５を保持する。正駆動中心値算出部５２は、第１ラッチ回路１１からカウント終了値が供給される。正駆動中心値算出部５２は、そのカウント終了値に当該係数を乗算する。これにより、各正駆動期間の中心位置に対応するカウント値を算出することができる。
【００５５】
負駆動中心値算出部５３は、上記駆動信号の負電流通電期間（以下適宜、負駆動期間ともいう）の中心位置を決定するための係数を保持する。本実施の形態では、０．７５を保持する。負駆動中心値算出部５３は、第１ラッチ回路１１からカウント終了値が供給される。負駆動中心値算出部５３は、そのカウント終了値に当該係数を乗算する。これにより、各負駆動期間の中心位置に対応するカウント値を算出することができる。
【００５６】
正側減算部５４は、正駆動中心値算出部５２から供給される正駆動期間の中心位置に対応するカウント値から、駆動幅算出部５１から供給されるカウント幅を減算することにより、正駆動期間の開始位置に対応するカウント値を算出する。正側加算部５５は、正駆動中心値算出部５２から供給される正駆動期間の中心位置に対応するカウント値に、駆動幅算出部５１から供給されるカウント幅を加算することにより、正駆動期間の終了位置に対応するカウント値を算出する。
【００５７】
負側減算部５６は、負駆動中心値算出部５３から供給される負駆動期間の中心位置に対応するカウント値から、駆動幅算出部５１から供給されるカウント幅を減算することにより、負駆動期間の開始位置に対応するカウント値を算出する。負側加算部５７は、負駆動中心値算出部５３から供給される負駆動期間の中心位置に対応するカウント値に、駆動幅算出部５１から供給されるカウント幅を加算することにより、負駆動期間の終了位置に対応するカウント値を算出する。
【００５８】
正駆動信号生成部５８は、メインカウンタ１２から同期クロックとしてのカウント値、正側減算部５４から正駆動期間の開始位置に対応するカウント値、および正側加算部５５から正駆動期間の終了位置に対応するカウント値が供給される。正駆動信号生成部５８は、同期クロックとしてのカウント値にしたがい、正駆動期間の開始位置に対応するカウント値から正駆動期間の終了位置に対応するカウント値まで有意な信号（たとえば、ハイレベル信号）を正駆動信号として出力する。それ以外の期間は、非有意な信号（たとえば、ローレベル信号）を出力する。
【００５９】
なお、正駆動信号生成部５８は、当該正駆動信号を、設定されたデューティ比のＰＷＭ信号で生成することができる。正駆動信号生成部５８により生成された正駆動信号は、駆動部２０、より具体的には第１トランジスタＭ１および第４トランジスタＭ４のゲートに入力される。なお、第１トランジスタＭ１の前段には、図示しないインバータが設けられ、当該正駆動信号は位相が反転されて、第１トランジスタＭ１のゲートに入力される。
【００６０】
負駆動信号生成部５９は、メインカウンタ１２から同期クロックとしてのカウント値、負側減算部５６から負駆動期間の開始位置に対応するカウント値、および負側加算部５７から負駆動期間の終了位置に対応するカウント値が供給される。負駆動信号生成部５９は、同期クロックとしてのカウント値にしたがい、負駆動期間の開始位置に対応するカウント値から負駆動期間の終了位置に対応するカウント値まで有意な信号（たとえば、ハイレベル信号）を負駆動信号として出力する。それ以外の期間は、非有意な信号（たとえば、ローレベル信号）を出力する。
【００６１】
なお、負駆動信号生成部５９は、当該負駆動信号を、設定されたデューティ比のＰＷＭ信号で生成することができる。負駆動信号生成部５９により生成された負駆動信号は、駆動部２０、より具体的には第２トランジスタＭ２および第３トランジスタＭ３のゲートに入力される。なお、第２トランジスタＭ２の前段には、図示しないインバータが設けられ、当該負駆動信号は位相が反転されて、第２トランジスタＭ２のゲートに入力される。
【００６２】
図６は、駆動信号の一周期の波形を示す図である。図６にて網点領域が、正駆動期間（先）および負駆動期間（後）を示している。正駆動開始値ａに対応するカウント値は正側減算部５４により生成され、正駆動中心値ｂに対応するカウント値は正駆動中心値算出部５２により生成され、正駆動終了値ｃに対応するカウント値は正側加算部５５により生成される。同様に、負駆動開始値ｄに対応するカウント値は負側減算部５６により生成され、負駆動中心値ｅに対応するカウント値は負駆動中心値算出部５３により生成され、負駆動終了値ｆに対応するカウント値は負側加算部５７により生成される。
【００６３】
図５に示すようにデコーダ１４を構成することにより、駆動信号生成部１０は、上記駆動信号の周波数の変更によりその周期幅が変更されても、上記駆動信号の通電期間と非通電期間との比が維持されるよう、上記駆動信号を調整することができる。また、駆動信号生成部１０は、上記駆動信号の周期幅が変更されても、一周期における通電期間の信号位相の相対的位置関係が維持されるよう、上記駆動信号を調整することができる。
【００６４】
図７は、駆動信号の通電期間幅の制御を説明するための図である。図７（ａ）は、駆動周期がデフォルト状態における、コイル駆動電圧の推移を示す図であり、図７（ｂ）は、駆動周期がデフォルト状態から長く調整された後の、コイル駆動電圧（通電期間幅の調整なし）の推移を示す図であり、図７（ｃ）は、駆動周期がデフォルト状態から長く調整された後の、コイル駆動電圧（通電期間幅の調整あり）の推移を示す図である。
【００６５】
図７（ａ）では、上記１００度通電に設定されている。すなわち、１駆動周期における通電期間と非通電期間との比が５：４に設定されている。図７（ｂ）では、駆動周期がデフォルト状態から長く調整された後も、デフォルト状態における通電期間幅が維持される例を示している。この場合、リニア振動モータ２００に対する駆動力が低下し、リニア振動モータ２００の振動が弱くなる可能性がある。
【００６６】
図７（ｃ）では、駆動周期がデフォルト状態から長く調整された後も、１駆動周期における通電期間と非通電期間との比が維持されるよう制御される。本実施の形態では、上記１００度通電が維持されるよう制御される。この制御は、デコーダ１４内の駆動幅算出部５１の作用により実現される。
【００６７】
ここでは、駆動周期がデフォルト状態から長く調整される例を説明したが、デフォルト状態から短く調整される例も同様である。駆動周期がデフォルト状態から短く調整された後も、デフォルト状態における通電期間幅が維持されると、リニア振動モータ２００に対する駆動力が上昇し、リニア振動モータ２００の振動が強くなる可能性がある。この点、本実施の形態では、駆動周期がデフォルト状態から短く調整された後も、１００度通電が維持されるよう制御される。
【００６８】
図８は、駆動信号の位相制御を説明するための図である。図８は、リニア振動モータ２００の共振周波数に調整された後の、コイルＬ１の両端電圧の推移を示している。なお、説明を単純化するために回生電圧は省略して描いている。一段目の波形は、駆動信号の位相が最適な状態で、リニア振動モータ２００が駆動されている状態を示している。
【００６９】
二段目の波形は、その二周期目から、駆動信号の位相が位相遅れ状態で、リニア振動モータ２００が駆動されている状態を示している。この状態は、駆動周期がそれまでより短く調整された場合であって、その調整後も、各通電期間の開始位置および終了位置が、その調整前の位置を維持している場合に発生する。
【００７０】
三段目の波形は、その二周期目から、駆動信号の位相が位相進み状態で、リニア振動モータ２００が駆動されている状態を示している。この状態は、駆動周期がそれまでより長く調整された場合であって、その調整後も、各通電期間の開始位置および終了位置が、その調整前の位置を維持している場合に発生する。
【００７１】
すなわち、各通電期間の開始位置および終了位置が固定の場合にて、駆動周期幅が変更されると、駆動信号の位相に遅れや進みが発生する。これに対し、本実施の形態では駆動周期が変更されると、各通電期間の開始位置および終了位置が適応的に調整されるため、駆動信号の位相を最適に保つことができる。この開始位置および終了位置の調整は、デコーダ１４内の主に、正駆動中心値算出部５２および負駆動中心値算出部５３の作用により実現される。
【００７２】
以上説明したように、本実施の形態に係る駆動制御回路１００によれば、測定されたリニア振動モータ２００の固有振動数に対応する周期幅を用いて、つぎの駆動信号の周期幅を調整することにより、リニア振動モータ２００がどのような状態であっても、その固有振動数にできるだけ近い周波数で継続的に駆動することができる。
【００７３】
したがって、リニア振動モータ２００の製品間による固有振動数のばらつきを吸収することができ、モータを量産する場合の歩留の低減を防止することが可能となる。また、バネ２２２ａ、２２０ｂなどが経時変化しても、経時変化後の固有振動数に対応した駆動周波数で駆動されるため、振動が弱まることを抑制することができる。
【００７４】
また、リニア振動モータ２００の固有振動数と駆動信号の周波数とが一致するよう、駆動信号の周期幅を適応的に制御する際、その周期幅変更による影響を最小限に抑えることができる。具体的には、駆動信号の周期幅が変更されても、一周期における通電期間と非通電期間との比率を維持するよう通電期間幅を調整することにより、リニア振動モータ２００に対する駆動力を維持することができる。したがって、駆動力の変動によって、リニア振動モータ２００の動きが弱くなることを抑制することができる。
【００７５】
また、駆動信号の周期幅が変更されても、一周期における通電期間の相対的位置関係が維持されるよう、各通電期間の開始位置および終了位置を最適な位置に調整することにより、駆動効率の低下を抑制することができる。すなわち、駆動信号の位相がずれると、振動子２２０の位置と、駆動力の供給位置とにずれが発生し、駆動効率が低下してしまう。この点、駆動信号の位相を最適な位置に維持することにより、同じ消費電力で、最大限の振動を得ることができる。
【００７６】
（立ち上がり制御）
以下、本実施の形態に係る駆動制御回路１００による、上述した駆動制御に追加することが可能な第１の立ち上がり制御について説明する。図６に示したように、上記駆動信号の一周期は、前後に非通電期間が設定された正電流通電期間および前後に非通電期間が設定された負電流通電期間により形成される。これにより、図３に示したように誘起電圧のゼロクロスを精度よく検出することができるとともに、図８に示したように駆動効率を高めることができる。
【００７７】
したがって、上記駆動信号における最初の周期の正電流通電期間（逆位相の場合、負電流通電期間）の前にも、非通電期間が設定されるのが原則である。ただし、この非通電期間は、リニア振動モータ２００の立ち上がり時間を遅くする方向に働く。そこで、これを改善するために、駆動信号生成部１０は以下のような立ち上がり制御を実行することができる。
【００７８】
すなわち、駆動信号生成部１０は、リニア振動モータ２００の駆動開始後、上記駆動信号の少なくとも最初の通電期間の前に設定されるべき非通電期間幅を、リニア振動モータ２００の定常動作時において各通電期間の前に設定されるべき非通電期間幅より短く設定する。たとえば、駆動信号生成部１０は、リニア振動モータ２００の駆動開始後、上記駆動信号の少なくとも最初の通電期間の前に設定されるべき非通電期間幅をゼロに設定してもよい。
【００７９】
定常動作時において各通電期間の前に設定されるべき非通電期間幅より、短い非通電期間幅を前に設定すべき通電期間は、最初の通電期間のみであってもよいし、最初の通電期間からｎ（ｎは自然数）番目までの通電期間であってもよい。後者の場合、最初の通電期間からｎ番目の通電期間に近づくにしたがって、それぞれの前に設定すべき非通電期間幅を長くしていってもよい。
【００８０】
また、通電期間の前に、定常動作時において各通電期間の前に設定されるべき非通電期間幅より短い非通電期間幅が設定されている間、駆動信号生成部１０は、上記駆動信号の周期幅の調整処理を停止してもよい。その場合、誘起電圧検出部３０およびゼロクロス検出部４０による上記誘起電圧のゼロクロス検出処理も停止してもよい。
【００８１】
つぎに、本実施の形態に係る駆動制御回路１００による、上述した駆動制御に追加することが可能な第２の立ち上がり制御について説明する。図５に示したように、駆動信号生成部１０は、各通電期間の信号をＰＷＭ信号で生成することができる。これにより、リニア振動モータ２００の性能に合わせて、駆動能力を調整することができる。
【００８２】
第２の立ち上がり制御は、各通電期間の信号がＰＷＭ信号で生成されることを前提する。駆動信号生成部１０は、リニア振動モータ２００の駆動開始後、上記駆動信号の少なくとも最初の通電期間に生成するＰＷＭ信号のデューティ比を、リニア振動モータ２００の定常動作時において各通電期間に生成するＰＷＭ信号のデューティ比より高く設定する。たとえば、駆動信号生成部１０は、リニア振動モータ２００の駆動開始後、上記駆動信号の少なくとも最初の通電期間に生成するＰＷＭ信号のデューティ比を１に設定してもよい。
【００８３】
定常動作時において各通電期間に生成されるＰＷＭ信号のデューティ比より、高いデューティ比のＰＷＭ信号が生成される通電期間は、最初の通電期間のみであってもよいし、最初の通電期間からｍ（ｍは自然数）番目までの通電期間であってもよい。後者の場合、最初の通電期間からｍ番目の通電期間に近づくにしたがって、各通電期間に生成されるＰＷＭ信号のデューティ比を下げていってもよい。
【００８４】
また、定常動作時において各通電期間に生成されるＰＷＭ信号のデューティ比より、高いデューティ比のＰＷＭ信号が生成される期間、駆動信号生成部１０は、上記駆動信号の周期幅の調整処理を停止してもよい。その場合、誘起電圧検出部３０およびゼロクロス検出部４０による上記誘起電圧のゼロクロス検出処理も停止してもよい。
【００８５】
第１の立ち上がり制御および第２の立ち上がり制御は、それぞれ単独で用いられてもよいし、併用されてもよい。以下、第１の立ち上がり制御および第２の立ち上がり制御の少なくとも一方が採用される場合の、デコーダ１４の構成例を説明する。
【００８６】
図９は、立ち上がり制御機能が追加されたデコーダ１４の構成例を示す図である。図９に示すデコーダ１４は、図５に示したデコーダ１４に立上がり制御部６０が追加された構成である。第１の立ち上がり制御を実行する場合、立上がり制御部６０は、メインカウンタ１２から正駆動信号生成部５８および負駆動信号生成部５９に入力されるカウント値を補正する。
【００８７】
たとえば、通電期間の前に設定すべき非通電期間幅をゼロに設定する場合、立上がり制御部６０は、定常動作時において各通電期間の前に設定されるべき非通電期間幅に対応するカウント幅を、メインカウンタ１２から入力されるカウント値に加算する。これにより、正駆動信号生成部５８および負駆動信号生成部５９は、正電流通電期間および負電流通電期間のそれぞれの前に設定すべき非通電期間を省略することができる。
【００８８】
なお、同様の処理は、通電期間の前に設定すべき非通電期間幅をゼロに設定する期間、メインカウンタ１２のカウント初期値を、定常動作期間のカウント初期値に上記カウント幅を加算した値に設定することによっても実行することができる。本実施の形態では、メインカウンタ１２のカウント初期値を、上記１００度通電開始時のカウント値に設定する。この処理は、デコーダ１４外の図示しない別の立ち上がり制御部により実行されてもよい。
【００８９】
第２の立ち上がり制御を実行する場合、立上がり制御部６０は、正駆動信号生成部５８および負駆動信号生成部５９に、上記駆動信号の少なくとも最初の通電期間に生成するＰＷＭ信号のデューティ比を設定する。その際、定常動作時において各通電期間に生成するＰＷＭ信号のデューティ比より高いデューティ比を設定する。
【００９０】
図１０は、第１の立ち上がり制御を説明するための図である。図１０（ａ）は、第１の立ち上がり制御が実行されない場合の、コイル駆動電圧およびリニア振動モータ２００の振動の推移を示す図であり、図１０（ｂ）は、第１の立ち上がり制御が実行された場合の、コイル駆動電圧およびリニア振動モータ２００の振動の推移を示す図である。
【００９１】
図１０（ａ）、図１０（ｂ）では、駆動信号の二周期目でリニア振動モータ２００の振動が所望のレベル（すなわち、定常動作時のレベル）に到達する例を描いている。図１０（ｂ）では、駆動信号生成部１０は、上記駆動信号の最初の通電期間の前に設定すべき非通電期間幅をゼロに設定している。
【００９２】
図１０（ａ）内の期間ｔ１は、第１の立ち上がり制御が実行されない場合の、駆動開始時から振動が所望のレベルに到達するまでの期間を示し、図１０（ｂ）内の期間ｔ２は、第１の立ち上がり制御が実行された場合の、駆動開始時から振動が所望のレベルに到達するまでの期間を示す。期間ｔ１と期間ｔ２とを比較すると、期間ｔ２のほうが短く、第１の立ち上がり制御が実行されることにより、駆動開始時から振動が所望のレベルに到達するまでの期間が短縮されることが分かる。
【００９３】
図１１は、第２の立ち上がり制御を説明するための図である。図１１（ａ）は、第２の立ち上がり制御が実行されない場合の、コイル駆動電圧の推移を示す図であり、図１１（ｂ）は、第２の立ち上がり制御が実行された場合の、コイル駆動電圧の推移を示す図である。図１１（ａ）では、駆動信号生成部１０は、駆動開始後、最初の通電期間の信号から各通電期間の信号をＰＷＭ信号で生成している。図１１（ｂ）では、駆動信号生成部１０は、駆動開始後、最初の通電期間の信号を非ＰＷＭ信号で生成し、二周期目以降の通電期間の信号をＰＷＭ信号で生成している。
【００９４】
以上説明したように第１の立ち上がり制御を採用すれば、駆動開始からコイルＬ１に通電されるまでの時間を短縮することができ、リニア振動モータ２００の駆動開始時から所望の振動が得られるまでの立ち上がり時間を短縮することができる。また、第２の立ち上がり制御を採用すれば、立ち上がり時の駆動力を定常動作時の駆動力より高めることができ、当該立ち上がり時間を短縮することができる。
【００９５】
（停止制御）
以下、本実施の形態に係る駆動制御回路１００による、上述した駆動制御に追加することが可能な停止制御について説明する。駆動信号生成部１０は、リニア振動モータ２００の駆動終了後、その駆動時に生成していた駆動信号の位相に対して逆位相の駆動信号を生成する。駆動部２０は、駆動信号生成部１０により生成された逆位相の駆動信号に応じた逆位相の駆動電流をコイルＬ１に供給することにより、リニア振動モータ２００の停止を早める。コイルＬ１に当該逆位相の駆動電流が供給されると、固定子２１０は振動子２２０の動きを止めるためのブレーキ作用を発揮する。本明細書では、リニア振動モータ２００の駆動終了時とは、停止制御のための逆駆動期間を含まない正規の駆動終了時を意味することとする。
【００９６】
駆動信号生成部１０は、リニア振動モータ２００の駆動終了後に生成する逆位相の駆動信号の、各通電期間の信号をＰＷＭ信号で生成してもよい。このＰＷＭ信号のデューティ比を調整することにより、ブレーキ力を柔軟に調整することができる。
【００９７】
上述したように、駆動信号生成部１０は、各通電期間の信号をＰＷＭ信号で生成することができる。各通電期間の信号がＰＷＭ信号で生成されることを前提とする場合、駆動信号生成部１０は、以下の停止制御を採用することができる。すなわち、駆動信号生成部１０は、リニア振動モータ２００の駆動終了後における逆位相の駆動信号の通電期間に生成するＰＷＭ信号のデューティ比を、リニア振動モータ２００の駆動時における駆動信号の各通電期間に生成するＰＷＭ信号のデューティ比より低く設定してもよい。
【００９８】
また、駆動信号生成部１０は、リニア振動モータ２００の駆動終了後における逆位相の駆動信号の供給期間を、リニア振動モータ２００の駆動時における駆動信号の供給期間に応じて調整してもよい。たとえば、駆動信号生成部１０は、上記駆動終了後における逆位相の駆動信号の供給期間を、上記駆動時における駆動信号の供給期間が短いほど、短く設定する。たとえば、上記逆位相の駆動信号の供給期間を、上記駆動時における駆動信号の供給期間に比例させる。なお、上記駆動時における駆動信号の供給期間が所定の基準期間を超えた領域では、上記逆位相の駆動信号の供給期間が固定であってもよい。上記駆動信号の供給期間は、駆動周期回数により特定されることが可能である。
【００９９】
また、駆動信号生成部１０は、リニア振動モータ２００の駆動終了後における逆位相の駆動信号の通電期間に生成するＰＷＭ信号のデューティ比を、リニア振動モータ２００の駆動時における駆動信号の供給期間に応じて調整してもよい。たとえば、駆動信号生成部１０は、当該ＰＷＭ信号のデューティ比を、上記駆動時における駆動信号の供給期間が短いほど、低く設定する。たとえば、当該ＰＷＭ信号のデューティ比を、上記駆動時における駆動信号の供給期間に比例させる。なお、上記駆動時における駆動信号の供給期間が所定の基準期間を超えた領域では、上記ＰＷＭ信号のデューティ比が固定であってもよい。
【０１００】
図１２は、停止制御機能が追加されたデコーダ１４の構成例を示す図である。図１２に示すデコーダ１４は、図５に示したデコーダ１４に停止制御部６１が追加された構成である。停止制御部６１は、リニア振動モータ２００の駆動が終了すると、その駆動時に生成していた駆動信号の位相に対して逆位相の駆動信号を生成するよう正駆動信号生成部５８および負駆動信号生成部５９に指示する。その際、当該逆位相の駆動信号の、通電期間の信号をＰＷＭ信号で生成するよう指示してもよい。
【０１０１】
また、リニア振動モータ２００の駆動時における駆動信号の供給期間に応じて、上記逆位相の駆動信号の供給期間を調整する場合、停止制御部６１は、ループカウンタ１３から、カウントループ回数（すなわち、駆動周期回数）の供給を受ける。停止制御部６１は、この駆動周期回数を反映した、上記逆位相の駆動信号を生成するよう正駆動信号生成部５８および負駆動信号生成部５９に指示する。リニア振動モータ２００の駆動時における駆動信号の供給期間に応じて、上記ＰＷＭ信号のデューティ比を調整する場合も同様である。
【０１０２】
図１３は、上記停止制御の基本概念を説明するための図である。図１３（ａ）は、停止制御が実行されない場合の、コイル駆動電圧の推移を示す図であり、図１３（ｂ）は、停止制御が実行された場合の、コイル駆動電圧の推移を示す図であり、図１３（ｃ）は、停止制御がＰＷＭ信号により実行された場合の、コイル駆動電圧の推移を示す図である。
【０１０３】
図１３（ｂ）、図１３（ｃ）では、駆動終了後の逆位相の駆動信号の周期が一回の例を描いているが、複数回であってもよい。複数回の場合であって、当該駆動信号の通電期間の信号がＰＷＭ信号で生成される場合、当該逆位相の駆動信号の周期が進むにつれ、当該ＰＷＭ信号のデューティ比を下げていってもよい。
【０１０４】
図１４は、上記停止制御において逆位相の駆動信号の周期回数が固定の例を説明するための図である。図１４（ａ）は、駆動時の駆動信号の周期回数が多い場合の、コイル駆動電圧およびリニア振動モータ２００の振動の推移を示す図であり、図１４（ｂ）は、駆動時の駆動信号の周期回数が少ない場合の、コイル駆動電圧およびリニア振動モータ２００の振動の推移を示す図である。
【０１０５】
図１４では、駆動終了後に生成される逆位相の駆動信号の周期回数が２に固定されている例を描いている。図１４（ａ）は駆動時の駆動信号の周期回数が４の例を描いており、図１４（ｂ）は駆動時の駆動信号の周期回数が２の例を描いている。図１４（ａ）では、逆位相の駆動信号を二周期分、コイルＬ１に供給することにより、リニア振動モータ２００の駆動終了後、リニア振動モータ２００の振動が早く収束していくことが分かる。
【０１０６】
一方、図１４（ｂ）では、逆位相の駆動信号を二周期分、コイルＬ１に供給することにより、リニア振動モータ２００の駆動終了後、リニア振動モータ２００の振動が早く収束するが、その後、逆位相の振動が発生している（楕円囲み参照）。これは、リニア振動モータ２００の駆動時の振動に対して、過剰なブレーキ力を与えていることを意味する。
【０１０７】
図１５は、上記停止制御において逆位相の駆動信号の周期回数が可変の例を説明するための図である。図１５（ａ）は、駆動時の駆動信号の周期回数が多い場合の、コイル駆動電圧およびリニア振動モータ２００の振動の推移を示す図であり、図１５（ｂ）は、駆動時の駆動信号の周期回数が少ない場合の、コイル駆動電圧およびリニア振動モータ２００の振動の推移を示す図である。
【０１０８】
図１５（ａ）は図１４（ａ）と同じ図である。図１５（ｂ）は駆動時の駆動信号の周期回数が２で、駆動終了後に生成される逆位相の駆動信号の周期回数が１の例を描いている。図１５（ｂ）では、逆位相の駆動信号を一周期分、コイルＬ１に供給することにより、リニア振動モータ２００の駆動終了後、リニア振動モータ２００の振動が早く収束していくことが分かる。図１４（ｂ）と比較し、図１５（ｂ）では、リニア振動モータ２００に逆位相の振動が発生しないことが分かる。
【０１０９】
図１４では、リニア振動モータ２００の駆動終了前の、リニア振動モータ２００の振動の強さが考慮されずに、固定のブレーキ力が供給されていた。したがって、そのブレーキ力が過剰であったり、過小であったりする場合が発生する。これに対し、図１５では、リニア振動モータ２００の振動の強さを反映したブレーキ力を供給することにより、最適な停止制御を実現することができる。
【０１１０】
以上説明したように上述した停止制御を採用すれば、リニア振動モータ２００の駆動終了時における振動停止時間を短縮することができる。また、上記逆位相の駆動信号の、通電期間の信号をＰＷＭ信号で生成することにより、ブレーキ力を柔軟に設定することができる。また、上記逆位相の駆動信号の供給期間を、リニア振動モータ２００の駆動時における駆動信号の供給期間に応じて調整することにより、当該駆動時における駆動信号の供給期間の長短に関わらず、最適な停止制御を実現することができる。ハプティクス用途において、振動を急峻に変化させることによって、ユーザは接触による振動を体感しやすい。上述した停止制御を採用することによって、振動を急峻に変化させることができる。
【０１１１】
（検出窓設定）
つぎに、ゼロクロス検出部４０が、上記誘起電圧以外の電圧のゼロクロスの検出を回避するための検出窓を設定する例について説明する。ゼロクロス検出部４０は、当該検出窓内で検出されたゼロクロスを有効とし、当該検出窓外で検出されたゼロクロスを無効とする。ここで、上記誘起電圧以外の電圧のゼロクロスとは、主に、駆動信号生成部１０から通電される駆動電圧のゼロクロス、および回生電圧のゼロクロスである（図３参照）。したがって、当該検出窓は原則的に、正（負）電流通電期間と負（正）電流通電期間との間に設定された非通電期間を、内側に狭くした期間に設定される。
【０１１２】
その際、当該非通電期間から少なくとも回生電流が流れる期間が除かれる必要がある。ただし、上記検出窓を狭く設定しすぎると、正規の誘起電圧のゼロクロスを検出できない可能性が高まる。そこで、上記誘起電圧以外の電圧のゼロクロスを検出する可能性と、正規の誘起電圧のゼロクロスを検出できない可能性とのトレードオフ関係を考慮し、上記検出窓の期間が決定される。
【０１１３】
つぎに、上記検出窓内にてゼロクロスが検出されなかった場合について説明する。この場合において、ゼロクロス検出部４０は、上記検出窓の開始位置にて上記誘起電圧のゼロクロスが既に終了している場合、上記検出窓の開始位置近傍にゼロクロスが検出されたと仮定し、仮定したゼロクロスの検出位置を駆動信号生成部１０に供給する。上記検出窓の開始位置にて既に上記誘起電圧のゼロクロスが終了している場合とは、上記検出窓の開始位置にてコイルＬ１の両端電圧がゼロクロス後の極性にある場合である。図３に示した例では、上記検出窓の開始位置にてコイルＬ１の両端電圧が正の場合である。
【０１１４】
また、ゼロクロス検出部４０は、上記検出窓内にてゼロクロスが検出されなかった場合であって、上記検出窓の終了位置にて上記誘起電圧のゼロクロスが終了していない場合、上記検出窓の終了位置近傍にゼロクロスが検出されたと仮定し、仮定したゼロクロスの検出位置を駆動信号生成部１０に供給する。上記検出窓の終了位置にて上記誘起電圧のゼロクロスが終了していない場合とは、上記検出窓の終了位置にてコイルＬ１の両端電圧がゼロクロス前の極性にある場合である。以下、これらの処理を実現するためのゼロクロス検出部４０の構成例を説明する。
【０１１５】
図１６は、検出窓設定機能を持つゼロクロス検出部４０の構成を示す図である。図１６に示すゼロクロス検出部４０は、図１に示したゼロクロス検出部４０に検出窓設定部４３および出力制御部４４が追加された構成である。検出窓設定部４３は、出力制御部４４に検出窓を設定するための信号を供給する。より具体的には、検出窓信号２および検出窓開始信号を供給する。
【０１１６】
図１７は、検出窓信号１、検出窓信号２および検出窓開始信号を説明するための図である。検出窓信号１は、上述した知見にもとづき生成された信号である。すなわち、非通電期間を内側に狭めた検出窓が設定された信号である。検出窓信号２は、検出窓信号１と比較し、検出窓の終了位置が、後続する通電期間の開始位置を含む位置まで延伸された信号である。これにより、コンパレータ４１は、上記誘起電圧のゼロクロスだけでなく、当該通電期間に供給される駆動電圧のゼロクロスによっても、出力を反転させる。検出窓開始信号は、検出窓の開始位置を示す信号である。より具体的には、当該検出窓の開始位置にエッジが立っている信号である。
【０１１７】
図１６に戻り、出力制御部４４は、上記検出窓の開始位置にてコンパレータ４１の出力が反転していない場合、エッジ検出部４２により検出されたエッジ位置を、ゼロクロスの検出位置として駆動信号生成部１０（より厳密には第２ラッチ回路１５）に供給する。出力制御部４４は、上記検出窓の開始位置にてコンパレータ４１の出力が既に反転している場合、上記検出窓の開始位置を、ゼロクロスの検出位置として駆動信号生成部１０（より厳密には第２ラッチ回路１５）に供給する。以下、これらの処理を実現するための出力制御部４４の構成例を説明する。
【０１１８】
図１８は、出力制御部４４の構成例を示す図である。当該出力制御部４４は、第１ＡＮＤゲート７１、第２ＡＮＤゲート７２およびＯＲゲート７３を含む。第１ＡＮＤゲート７１には、上記検出窓開始信号およびコンパレータ４１の出力信号が入力される。第１ＡＮＤゲート７１は、両者がハイレベル信号のときハイレベル信号を出力し、少なくとも一方がローレベル信号のときローレベル信号を出力する。より具体的には、第１ＡＮＤゲート７１は、上記検出窓の開始位置で、コンパレータ４１の出力が既に反転している場合、ハイレベル信号を出力する。
【０１１９】
第２ＡＮＤゲート７２には、上記検出窓信号２およびエッジ検出部４２の出力信号が入力される。第２ＡＮＤゲート７２は、両者がハイレベル信号のときハイレベル信号を出力し、少なくとも一方がローレベル信号のときローレベル信号を出力する。より具体的には、第２ＡＮＤゲート７２は、上記検出窓内にて、エッジ検出部４２の出力信号にエッジが立ったときハイレベル信号を出力する。
【０１２０】
ＯＲゲート７３には、第１ＡＮＤゲート７１の出力信号および第２ＡＮＤゲート７２の出力信号が入力される。ＯＲゲート７３は、両者の出力信号をもとにエッジ信号を出力する。ＯＲゲート７３は、両者の出力信号のいずれか一方がハイレベル信号のときハイレベル信号を出力し、両者の出力信号がともにローレベル信号のときローレベル信号を出力する。より具体的には、ＯＲゲート７３は、上記検出窓の開始位置で、コンパレータ４１の出力が既に反転している場合、ハイレベル信号を出力する。上記検出窓の開始位置で、コンパレータ４１の出力が反転していない場合、上記検出窓内にて、エッジ検出部４２の出力信号にエッジが立ったときハイレベル信号を出力する。
【０１２１】
図１９は、検出窓信号１を使用するゼロクロス検出部４０（検出窓開始信号未使用）の動作を説明するための図である。図１９（ａ）は、誘起電圧のゼロクロスが検出窓内に発生した場合の、コイルＬ１の両端電圧およびエッジ信号の推移を示し、図１９（ｂ）は、誘起電圧のゼロクロスが検出窓内で発生しない場合（駆動周波数＜共振周波数）の、コイルＬ１の両端電圧およびエッジ信号の推移を示し、図１９（ｃ）は、誘起電圧のゼロクロスが検出窓内で発生しない場合（駆動周波数＞共振周波数）の、コイルＬ１の両端電圧およびエッジ信号の推移を示す図である。
【０１２２】
検出窓信号１を使用するゼロクロス検出部４０（検出窓開始信号未使用）では、出力制御部４４が、図１８に示した第２ＡＮＤゲート７２のみで構成される。その第２ＡＮＤゲート７２には、検出窓信号１とエッジ検出部４２の出力信号とが入力される。
【０１２３】
図１９（ａ）では、検出窓信号１により設定される検出窓内で、誘起電圧のゼロクロスが発生するため、そのゼロクロスが発生した位置で、エッジ信号にエッジが立つ。なお、当該検出窓が設定されているため、回生電圧のゼロクロスが発生した位置では、当該エッジ信号にエッジが立たない。
【０１２４】
図１９（ｂ）では、リニア振動モータ２００の共振周波数が上記駆動信号の周波数より高く、その差が比較的大きい状態を示している。したがって、上記検出窓内で、上記誘起電圧のゼロクロスを生成すべきリニア振動モータ２００の停止状態（すなわち、振動レンジのＳ極側最大到達地点またはＮ極側最大到達地点に位置する）が発生しない。上記検出窓に入った時点で、その停止状態が終了している。この場合、検出窓信号１を使用するゼロクロス検出部４０（検出窓開始信号未使用）では、エッジ信号にエッジが立たない（楕円囲み参照）。
【０１２５】
図１９（ｃ）では、リニア振動モータ２００の共振周波数が上記駆動信号の周波数より低く、その差が比較的大きい状態を示している。したがって、上記検出窓内で、上記誘起電圧のゼロクロスを生成すべきリニア振動モータ２００の停止状態が発生しない。上記検出窓から出た後に、その停止状態が発生している。この場合、検出窓信号１を使用するゼロクロス検出部４０（検出窓開始信号未使用）では、エッジ信号にエッジが立たない（楕円囲み参照）。
【０１２６】
図２０は、検出窓信号２および検出窓開始信号を使用するゼロクロス検出部４０の動作を説明するための図である。図２０（ａ）は、誘起電圧のゼロクロスが検出窓内で発生しない場合（駆動周波数＜共振周波数）の、コイルＬ１の両端電圧およびエッジ信号の推移を示し、図２０（ｂ）は、誘起電圧のゼロクロスが検出窓内で発生しない場合（駆動周波数＞共振周波数）の、コイルＬ１の両端電圧およびエッジ信号の推移を示す図である。
【０１２７】
検出窓信号２および検出窓開始信号を使用するゼロクロス検出部４０では、図１８に示した出力制御部４４が用いられる。図２０（ａ）に示すコイルＬ１の両端電圧の推移は、図１９（ｂ）に示したコイルＬ１の両端電圧の推移と同様である。図２０（ｂ）に示すコイルＬ１の両端電圧の推移は、図１９（ｃ）に示したコイルＬ１の両端電圧の推移と同様である。
【０１２８】
図２０（ａ）では、図１８に示した第１ＡＮＤゲート７１およびＯＲゲート７３の作用により、検出窓の開始位置で、エッジ信号にエッジが立つ。図２０（ｂ）では、検出窓の終了位置を延伸した作用により、正電流通電開始位置で、エッジ信号にエッジが立つ。
【０１２９】
以上説明したように上記検出窓を設定することにより、リニア振動モータの固有振動数と駆動信号の周波数とが一致するよう、駆動信号の周期幅を適応的に制御する際、コイルＬ１に発生する誘起電圧のゼロクロスの検出精度を高めることができる。すなわち、駆動電圧や回生電圧のゼロクロスを、誤って検出することを抑制することができる。
【０１３０】
検出窓を設定した場合にて、リニア振動モータ２００の共振周波数と駆動信号の周波数とに大きなずれが発生すると、誘起電圧のゼロクロスが検出窓から外れてしまうことがある。本実施の形態では、検出窓の開始位置近傍または終了位置近傍に、仮のエッジを立てることにより、上記駆動信号の周期幅の適応制御を、途切れることなく継続することができる。リニア振動モータ２００の共振周波数と駆動信号の周波数とが大きく離れていても、その仮のエッジにより、両者を徐々に近づけることができる。
【０１３１】
このように、リニア振動モータ２００の共振周波数と駆動信号の周波数とが一致するよう、常時、適応制御が実行されることにより、駆動制御回路１００内の基本クロックを生成する内蔵発振子の精度が低下しても、内蔵発振子の周波数をトリミングする必要がなく、ドライバＩＣ（駆動制御回路１００）の製造原価低減に大きく寄与する。
【０１３２】
また、検出窓の終了位置近傍に立てる仮のエッジを、非通電期間に後続する通電期間の立ち上がりを利用することにより、信号制御を簡素化することができる。上記検出窓開始位置信号など、検出窓信号以外の信号を用いる必要がない。
【０１３３】
以上、本発明を実施の形態をもとに説明した。この実施の形態は例示であり、それらの各構成要素や各処理プロセスの組合せにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。
【０１３４】
上述した第２の立ち上がり制御は、非通電期間が含まれない駆動信号により、リニア振動モータ２００を駆動する駆動制御回路にも適用可能である。当該駆動信号は、正電流通電期間と負電流通電期間とが非通電期間を挟まずに、交互に設定される信号である。すなわち、上述した第２の立ち上がり制御は、上述した駆動信号の周期幅の適応制御を実行しない駆動制御回路にも適用可能である。上述した停止制御も、同様に、非通電期間が含まれない駆動信号により、リニア振動モータ２００を駆動する駆動制御回路にも適用可能である。すなわち、上述した駆動信号の周期幅の適応制御を実行しない駆動制御回路にも適用可能である。
【０１３５】
図２１は、図１に示したリニア振動モータ２００の駆動制御回路１００の構成の変形例１を示す図である。図２１に示す駆動信号生成部１０は、図１に示した駆動信号生成部１０と比較し、差分算出回路１６、第３ラッチ回路１７、加算回路１８および第４ラッチ回路１９が省略された構成である。
【０１３６】
その代わり、メインカウンタ１２に、上記駆動信号の一周期に対応するカウント値より大きなカウント値までカウント可能なカウンタを採用する。上述した例に沿って説明すると、２００進カウンタではなく、２５０進カウンタや３００進カウンタを用いる。第２ラッチ回路１５は、メインカウンタ１２から供給されるカウント値を順次ラッチし、ゼロクロス検出部４０によりゼロクロスが検出された位置でラッチしたカウント値を第１ラッチ回路１１に出力する。
【０１３７】
変形例１によれば、メインカウンタ１２が上記駆動信号の一周期に対応するカウント値より大きなカウント値までカウントすることができるため、第２ラッチ回路１５がラッチしたカウント値をそのまま、新たなカウント終了値として使用することができる。したがって、差分算出回路１６、第３ラッチ回路１７、加算回路１８および第４ラッチ回路１９を省略することができ、回路構成を単純化することができる。
【０１３８】
図２２は、図１に示したリニア振動モータ２００の駆動制御回路１００の構成の変形例２を示す図である。図２２に示すゼロクロス検出部４０では、コンパレータ４１の代わりにアナログ／デジタル変換器４１ａを用いる。アナログ／デジタル変換器４１ａは、誘起電圧検出部３０(図２２の例では差動増幅器）の出力アナログ信号をデジタル信号に変換する。エッジ検出部４２は、アナログ／デジタル変換器４１ａの出力デジタル信号から上記ゼロクロスが検出された位置を示すデジタル値を生成し、第２ラッチ回路１５に出力する。
【０１３９】
たとえば、当該差動増幅器をオフセットを持たせず設計した場合、エッジ検出部４２はアナログ／デジタル変換器４１ａの出力デジタル値がゼロとなるタイミングで、ハイレベル信号を第２ラッチ回路１５に出力する。
【０１４０】
変形例２によれば、誘起電圧のゼロクロスを検出するフェーズからデジタル処理するため、ゼロクロスタイミングの検出精度を向上させることができる。
【０１４１】
図２３は、図１に示したリニア振動モータ２００の駆動制御回路１００の構成の変形例３を示す図である。変形例３は、変形例１と変形例２とを組み合わせた構成である。
【符号の説明】
【０１４２】
１００  駆動制御回路、  １０  駆動信号生成部、  １４  デコーダ、  １６  差分算出回路、  １８  加算回路、  ２０  駆動部、  ３０  誘起電圧検出部、  ４０  ゼロクロス検出部、  ２００  リニア振動モータ、  ２１０  固定子、  Ｌ１  コイル、  ２２０  振動子。
【図１】
0005601879.tif 000002
【図２】
0005601879.tif 000003
【図３】
0005601879.tif 000004
【図４】
0005601879.tif 000005
【図５】
0005601879.tif 000006
【図６】
0005601879.tif 000007
【図７】
0005601879.tif 000008
【図８】
0005601879.tif 000009
【図９】
0005601879.tif 000010
【図１０】
0005601879.tif 000011
【図１１】
0005601879.tif 000012
【図１２】
0005601879.tif 000013
【図１３】
0005601879.tif 000014
【図１４】
0005601879.tif 000015
【図１５】
0005601879.tif 000016
【図１６】
0005601879.tif 000017
【図１７】
0005601879.tif 000018
【図１８】
0005601879.tif 000019
【図１９】
0005601879.tif 000020
【図２０】
0005601879.tif 000021
【図２１】
0005601879.tif 000022
【図２２】
0005601879.tif 000023
【図２３】
0005601879.tif 000024