(57)【特許請求の範囲】
【請求項１】
外部に設けられたモータを駆動するモータ駆動装置であって、
前記モータの各相の駆動端子にそれぞれ結合される複数のハイサイドトランジスタおよびロウサイドトランジスタを含み、ＰＷＭ信号に基づき前記モータに駆動電圧を印加するインバータ部と、
前記モータの逆起電圧の位相となる基準電圧位相を検出する逆起電圧位相検出部と、
前記モータの駆動電流の位相となる基準電流位相を検出する駆動電流位相検出部と、
前記基準電圧位相に同期する通電制御用タイミングを受け、前記駆動電圧を正弦波状に制御するための前記ＰＷＭ信号を生成するＰＷＭ制御部と、
前記基準電圧位相と前記基準電流位相との位相差を所定の値に定めるために必要な前記駆動電圧の位相となる第１の位相を定め、前記ＰＷＭ制御部に向けて、前記通電制御用タイミングを前記第１の位相に基づきシフトするように指示する駆動電圧位相生成部と、
を有し、
前記駆動電圧位相生成部は、
前記駆動電流の電流値と、前記モータの角周波数と、予め定めた前記モータの特性定数とを用いた演算式に基づき、前記基準電圧位相と前記基準電流位相との位相差をゼロにするための前記駆動電圧の位相となる第２の位相を算出する位相演算部と、
前記第２の位相に補正値を加えることで前記第１の位相を定め、前記基準電圧位相および前記基準電流位相を入力として、前記基準電圧位相と前記基準電流位相との位相差が前記所定の値に収束するように前記補正値の大きさをフィードバック制御によって更新する位相補正部と、
を備える、
モータ駆動装置。
【請求項２】
請求項１記載のモータ駆動装置において、
前記所定の値は、ゼロである、
モータ駆動装置。
【請求項３】
請求項１記載のモータ駆動装置において、
前記位相補正部は、ホールド信号に応じて前記補正値の更新を停止し、最新の前記補正値を保持する、
モータ駆動装置。
【請求項４】
請求項１記載のモータ駆動装置において、
前記位相補正部は、
前記基準電圧位相および前記基準電流位相の一方に所定の換算係数を乗算する乗算器と、
前記基準電圧位相および前記基準電流位相の他方と前記乗算器の乗算結果との位相差を算出し、前記算出した位相差と前記所定の値との誤差を検出する誤差検出器と、
前記誤差検出器の検出結果を積分することで前記補正値を算出する積分器と、
前記第２の位相に前記積分器で算出された前記補正値を加える加算器と、
を有する、
モータ駆動装置。
【請求項５】
請求項１記載のモータ駆動装置において、
前記逆起電圧位相検出部は、前記基準電圧位相の検出対象となる前記モータの相を選択する第１のセレクタを有し、
前記駆動電流位相検出部は、前記基準電流位相の検出対象となる前記モータの相を選択する第２のセレクタを有する、
モータ駆動装置。
【請求項６】
請求項５記載のモータ駆動装置において、
前記逆起電圧位相検出部は、さらに、第１の平均化回路を有し、前記第１のセレクタを介して前記検出対象となる前記モータの相を順次切り換えながら各相毎の前記基準電圧位相を検出し、前記検出した各相毎の基準電圧位相を前記第１の平均化回路で平均化し、
前記駆動電流位相検出部は、さらに、第２の平均化回路を有し、前記第２のセレクタを介して前記検出対象となる前記モータの相を順次切り換えながら各相毎の前記基準電流位相を検出し、前記検出した各相毎の基準電流位相を前記第２の平均化回路で平均化する、
モータ駆動装置。
【請求項７】
請求項１記載のモータ駆動装置において、
前記インバータ部は、１８０ｄｅｇ通電方式によって前記モータに駆動電圧を印加し、
前記逆起電圧位相検出部は、３６０ｄｅｇの通電期間内に予め設けられた６０ｄｅｇよりも小さい期間であり、通電を停止するように予め設定された無通電期間の中で前記逆起電圧のゼロクロス点を検出し、
前記駆動電流位相検出部は、前記無通電期間とは位相が１８０ｄｅｇ異なる通電期間の中で前記駆動電流のゼロクロス点を検出する、
モータ駆動装置。
【請求項８】
請求項７記載のモータ駆動装置において、
前記駆動電流位相検出部は、前記モータのいずれかの相の前記駆動端子の電圧が前記ＰＷＭ信号に応じて高電位側電源電圧と低電位側電源電圧との間で遷移する期間を検出し、前記検出した遷移期間で、前記いずれかの相に対応する前記ロウサイドトランジスタがオンかオフかを判別することで前記駆動電流のゼロクロス点を検出する、
モータ駆動装置。
【請求項９】
請求項１記載のモータ駆動装置において、
前記位相演算部は、
前記駆動電流の電流値に比例する変数を“ＩＳＰＮＯＵＴ”とし、前記モータの角周波数に反比例する変数を“ＮＣＮＴ”とし、前記モータの特性定数を“Ｋ１”および“Ｋ２”として、“Ｋｄｒｖ＝Ｋ２／（Ｋ１＋ＮＣＮＴ・ＩＳＰＮＯＵＴ）”を算出する第１の演算回路と、
“Ｋｄｒｖ”に“ＩＳＰＮＯＵＴ”を乗算することで前記第２の位相を算出する第２の演算回路と、
を有する、
モータ駆動装置。
【請求項１０】
請求項９記載のモータ駆動装置において、
前記第１の演算回路は、“Ｋｄｒｖ”に“（Ｋ１＋ＮＣＮＴ・ＩＳＰＮＯＵＴ）”を乗算した結果と“Ｋ２”との誤差がゼロに収束するように“Ｋｄｒｖ”をフィードバック制御することで、“Ｋｄｒｖ”を算出する、
モータ駆動装置。
【請求項１１】
データを記憶するディスクと、
前記ディスクを回転させるモータと、
前記モータを３相の正弦波で駆動するモータ駆動装置と、
を備えるモータシステムであって、
前記モータ駆動装置は、
前記モータの３相の駆動端子にそれぞれ結合される複数のハイサイドトランジスタおよびロウサイドトランジスタを含み、ＰＷＭ信号に基づき前記モータに駆動電圧を印加するインバータ部と、
前記モータの逆起電圧の位相となる基準電圧位相を検出する逆起電圧位相検出部と、
前記モータの駆動電流の位相となる基準電流位相を検出する駆動電流位相検出部と、
前記基準電圧位相に同期する通電制御用タイミングを受け、前記駆動電圧を正弦波状に制御するための前記ＰＷＭ信号を生成するＰＷＭ制御部と、
前記基準電圧位相と前記基準電流位相との位相差を所定の値に定めるために必要な前記駆動電圧の位相となる第１の位相を定め、前記ＰＷＭ制御部に向けて、前記通電制御用タイミングを前記第１の位相に基づきシフトするように指示する駆動電圧位相生成部と、
を有し、
前記駆動電圧位相生成部は、
前記駆動電流の電流値と、前記モータの角周波数と、予め定めた前記モータの特性定数とを用いた演算式に基づき、前記基準電圧位相と前記基準電流位相との位相差をゼロにするための前記駆動電圧の位相となる第２の位相を算出する位相演算部と、
前記第２の位相に補正値を加えることで前記第１の位相を定め、前記基準電圧位相および前記基準電流位相を入力として、前記基準電圧位相と前記基準電流位相との位相差が前記所定の値に収束するように前記補正値の大きさをフィードバック制御によって更新する位相補正部と、
を備える、
モータシステム。
【請求項１２】
請求項１１記載のモータシステムにおいて、
前記所定の値は、ゼロである、
モータシステム。
【請求項１３】
請求項１１記載のモータシステムにおいて、
前記位相補正部は、ホールド信号に応じて前記補正値の更新を停止し、最新の前記補正値を保持する、
モータシステム。
【請求項１４】
請求項１１記載のモータシステムにおいて、
前記位相補正部は、
前記基準電圧位相および前記基準電流位相の一方に所定の換算係数を乗算する乗算器と、
前記基準電圧位相および前記基準電流位相の他方と前記乗算器の乗算結果との位相差を算出し、前記算出した位相差と前記所定の値との誤差を検出する誤差検出器と、
前記誤差検出器の検出結果を積分することで前記補正値を算出する積分器と、
前記第２の位相に前記積分器で算出された前記補正値を加える加算器と、
を有する、
モータシステム。
【請求項１５】
請求項１１記載のモータシステムにおいて、
前記逆起電圧位相検出部は、前記基準電圧位相の検出対象となる前記モータの相を選択する第１のセレクタを有し、
前記駆動電流位相検出部は、前記基準電流位相の検出対象となる前記モータの相を選択する第２のセレクタを有する、
モータシステム。
【請求項１６】
請求項１５記載のモータシステムにおいて、
前記逆起電圧位相検出部は、さらに、第１の平均化回路を有し、前記第１のセレクタを介して前記検出対象となる前記モータの相を順次切り換えながら各相毎の前記基準電圧位相を検出し、前記検出した各相毎の基準電圧位相を前記第１の平均化回路で平均化し、
前記駆動電流位相検出部は、さらに、第２の平均化回路を有し、前記第２のセレクタを介して前記検出対象となる前記モータの相を順次切り換えながら各相毎の前記基準電流位相を検出し、前記検出した各相毎の基準電流位相を前記第２の平均化回路で平均化する、
モータシステム。
【請求項１７】
請求項１１記載のモータシステムにおいて、
前記インバータ部は、１８０ｄｅｇ通電方式によって前記モータに駆動電圧を印加し、
前記逆起電圧位相検出部は、３６０ｄｅｇの通電期間内に予め設けられた６０ｄｅｇよりも小さい期間であり、通電を停止するように予め設定された無通電期間の中で前記逆起電圧のゼロクロス点を検出し、
前記駆動電流位相検出部は、前記無通電期間とは位相が１８０ｄｅｇ異なる通電期間の中で前記駆動電流のゼロクロス点を検出する、
モータシステム。
【請求項１８】
請求項１７記載のモータシステムにおいて、
前記駆動電流位相検出部は、前記モータのいずれかの相の前記駆動端子の電圧が前記ＰＷＭ信号に応じて高電位側電源電圧と低電位側電源電圧との間で遷移する期間を検出し、前記検出した遷移期間で、前記いずれかの相に対応する前記ロウサイドトランジスタがオンかオフかを判別することで前記駆動電流のゼロクロス点を検出する、
モータシステム。
【請求項１９】
請求項１１記載のモータシステムにおいて、
前記ディスクは、ハードディスクである、
モータシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、モータ駆動装置およびモータシステムに関し、例えば、モータの駆動電流の位相を調整する際の技術に関する。
【背景技術】
【０００２】
例えば、特許文献１には、モータの駆動電圧の位相を、モータの角周波数、駆動電流値および特性定数（トルク定数、インピーダンス値）を用いた演算式に基づき算出する方式が示されている。また、特許文献２には、逆起電圧の位相および駆動電流の位相の一方を選択して、モータの通電タイミングを制御する方式が示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１０−２８８３９６号公報
【特許文献２】特開２００５−１０２４４７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
モータを高効率で駆動するためには、モータに最適な位相で駆動電流を流す必要がある。モータの駆動電流は、実際には、モータに駆動電圧を印加することで生成される。このため、駆動電流の位相を最適化するためには、駆動電圧の位相を最適化する必要がある。最適な駆動電圧の位相は、例えば、特許文献１に示されるように、モータの角周波数、駆動電流値および特性定数を用いた演算式に基づき算出することができる。
【０００５】
ここで、モータの特性定数は、例えば、モータの種類毎に定められる。しかし、例えば、同一種類のモータであっても、各モータ毎に、製造ばらつき等に伴う特性定数のばらつきが生じる恐れがある。また、１個のモータを対象とする場合であっても、経時劣化等によって時系列的に特性定数のばらつきが生じる恐れがある。特性定数のばらつきが生じると、モータの効率が低下する分、一定回転を維持するための消費電流が増加し得る。
【０００６】
後述する実施の形態は、このようなことを鑑みてなされたものであり、その他の課題と新規な特徴は、本明細書の記述及び添付図面から明らかになるであろう。
【課題を解決するための手段】
【０００７】
一実施の形態によるモータ駆動装置は、モータの逆起電圧の位相となる基準電圧位相と、駆動電流の位相となる基準電流位相との位相差を所定の値に定めるために必要な駆動電圧の位相となる第１の位相を定める駆動電圧位相生成部を有する。駆動電圧位相生成部は、位相演算部および位相補正部を備える。位相演算部は、所定の演算式に基づき、基準電圧位相と基準電流位相との位相差をゼロにするための駆動電圧の位相となる第２の位相を算出する。位相補正部は、第２の位相に補正値を加えることで第１の位相を定め、基準電圧位相および基準電流位相を入力として、その位相差が所定の値に収束するように当該補正値の大きさをフィードバック制御によって更新する。ＰＷＭ制御部は、基準電圧位相に同期する通電制御用タイミングを第１の位相に基づきシフトし、駆動電圧を正弦波状に制御するためのＰＷＭ信号を生成する。
【発明の効果】
【０００８】
前記一実施の形態によれば、モータの駆動電流の位相を最適化することが可能になる。
【図面の簡単な説明】
【０００９】
【図１】本発明の実施の形態１によるモータシステムにおいて、その概略構成例を示す機能ブロック図である。
【図２】図１におけるモータ駆動装置の主要部の構成例を示す機能ブロック図である。
【図３】（ａ）、（ｂ）および（ｃ）は、図２における正弦波駆動電圧制御部の動作原理を示す説明図である。
【図４】図２における正弦波駆動電圧制御部の動作原理を示す説明図である。
【図５】図２におけるＳＰＭ駆動部の構成例を示す回路ブロック図である。
【図６】図２において、駆動電圧位相生成部周りの主要部の概略構成例を示すブロック図である。
【図７】図６における位相補正部の全体的な動作例を示すフロー図である。
【図８】図６の駆動電圧位相生成部における位相演算部および位相補正部の詳細な構成例を示すブロック線図である。
【図９】（ａ）および（ｂ）は、図８における位相演算部の動作を説明する補足図である。
【図１０】図６における回転位置検出部の検出期間の一例を示す波形図である。
【図１１】図６における逆起電圧位相検出部の詳細な構成例を示す回路図である。
【図１２】図１１の逆起電圧位相検出部の動作例を示す説明図である。
【図１３】図６における駆動電流位相検出部の詳細な構成例を示す回路図である。
【図１４】図１３の駆動電流位相検出部の動作原理を示す波形図である。
【図１５】（ａ）は、図１４におけるソース電流時のインバータ部の動作例を示す説明図であり、（ｂ）は、図１４におけるシンク電流時のインバータ部の動作例を示す説明図である。
【図１６】本発明の実施の形態２によるモータ駆動装置において、その主要部の構成例を示す機能ブロック図である。
【図１７】図１６の駆動電圧位相生成部における位相演算部および位相補正部の詳細な構成例を示すブロック線図である。
【図１８】図１７における位相補正部の全体的な動作例を示すフロー図である。
【図１９】本発明の実施の形態３によるモータ駆動装置において、その逆起電圧位相検出部の構成例を示す回路図である。
【図２０】本発明の実施の形態３によるモータ駆動装置において、その駆動電流位相検出部の構成例を示す回路図である。
【発明を実施するための形態】
【００１０】
以下の実施の形態においては便宜上その必要があるときは、複数のセクションまたは実施の形態に分割して説明するが、特に明示した場合を除き、それらは互いに無関係なものではなく、一方は他方の一部または全部の変形例、詳細、補足説明等の関係にある。また、以下の実施の形態において、要素の数等（個数、数値、量、範囲等を含む）に言及する場合、特に明示した場合および原理的に明らかに特定の数に限定される場合等を除き、その特定の数に限定されるものではなく、特定の数以上でも以下でも良い。
【００１１】
さらに、以下の実施の形態において、その構成要素（要素ステップ等も含む）は、特に明示した場合および原理的に明らかに必須であると考えられる場合等を除き、必ずしも必須のものではないことは言うまでもない。同様に、以下の実施の形態において、構成要素等の形状、位置関係等に言及するときは、特に明示した場合および原理的に明らかにそうでないと考えられる場合等を除き、実質的にその形状等に近似または類似するもの等を含むものとする。このことは、上記数値および範囲についても同様である。
【００１２】
また、実施の形態の各機能ブロックを構成する回路素子は、特に制限されないが、公知のＣＭＯＳ（相補型ＭＯＳトランジスタ）等の集積回路技術によって、単結晶シリコンのような半導体基板上に形成される。
【００１３】
以下、本発明の実施の形態を図面に基づいて詳細に説明する。なお、実施の形態を説明するための全図において、同一の部材には原則として同一の符号を付し、その繰り返しの説明は省略する。
【００１４】
（実施の形態１）
《モータシステムの概略》
図１は、本発明の実施の形態１によるモータシステムにおいて、その概略構成例を示す機能ブロック図である。図１には、モータシステムの一例として、ハードディスク（以降、ＨＤＤと略す）装置の構成例が示される。図１のＨＤＤ装置は、ＨＤＤコントローラＨＤＤＣＴ、キャッシュメモリＣＭＥＭ、リードライト装置ＲＷＩＣ、モータ駆動装置ＭＤＩＣ、およびディスク機構ＤＳＫＭを備える。ＨＤＤコントローラＨＤＤＣＴは、例えば、プロセッサ等を含んだシステムオンチップ（ＳｏＣ）等で構成される。キャッシュメモリＣＭＥＭおよびリードライト装置ＲＷＩＣは、例えば、それぞれ異なる半導体チップで構成される。
【００１５】
ディスク機構ＤＳＫＭは、ディスク（ここではハードディスク）ＤＳＫ、スピンドルモータ（以降、モータと略す）ＳＰＭ、ヘッドＨＤ、アーム機構ＡＭ、ボイスコイルモータＶＣＭ、およびランプ機構ＲＭＰを備える。モータＳＰＭは、ディスクＤＳＫを回転駆動する。ボイスコイルモータＶＣＭは、ディスクＤＳＫの径方向におけるヘッドＨＤの位置をアーム機構ＡＭを介して制御する。ヘッドＨＤは、ボイスコイルモータＶＣＭによって定められる所定の位置において、ディスクＤＳＫ上にデータの読み書きを行う。ランプ機構ＲＭＰは、データの読み書きが実行されない場合の、ヘッドＨＤの退避箇所となる。
【００１６】
モータ駆動装置ＭＤＩＣは、例えば、１個の半導体チップで構成される。モータ駆動装置ＭＤＩＣは、ボイスコイルモータＶＣＭを駆動するため、ディジタル・アナログ変換器ＤＡＣおよびＶＣＭ駆動部ＶＣＭＤＶを備える。また、モータ駆動装置ＭＤＩＣは、モータＳＰＭを駆動するため、ＳＰＭ制御部ＳＰＭＣＴ、サンプルホールド回路ＳＨ、センスアンプ回路ＳＡ、アナログ・ディジタル変換器ＡＤＣ、ＳＰＭ駆動部ＳＰＭＤＶ、および回転位置検出部ＲＰＳＤＥＴを備える。さらに、モータ駆動装置ＭＤＩＣは、モータＳＰＭやボイスコイルモータＶＣＭの駆動条件等を設定するため、シリアルＩＦ＆レジスタ部ＳＩＦＲＥＧを備える。
【００１７】
リードライト装置ＲＷＩＣは、ヘッドＨＤを駆動し、ヘッドＨＤにデータの読み書きを行わせる。ＨＤＤコントローラＨＤＤＣＴは、ＨＤＤ装置全体の制御を行う。ＨＤＤコントローラＨＤＤＣＴは、例えば、モータ駆動装置ＭＤＩＣのシリアルＩＦ＆レジスタ部ＳＩＦＲＥＧとの間で通信を行うことで、モータ駆動装置ＭＤＩＣにモータＳＰＭやボイスコイルモータＶＣＭの駆動条件等を指示する。また、ＨＤＤコントローラＨＤＤＣＴは、例えば、リードライト装置ＲＷＩＣに対し、データの読み書きを指示する。この際に、リードライト装置ＲＷＩＣに対して指示する書き込みデータや、ヘッドＨＤからリードライト装置ＲＷＩＣを介して読み出されたデータは、キャッシュメモリＣＭＥＭに保持される。
【００１８】
次に、当該ＨＤＤ装置の全体動作について簡単に説明する。まず、モータ駆動装置ＭＤＩＣは、ＨＤＤコントローラＨＤＤＣＴからモータＳＰＭの起動指令を受信すると、ＳＰＭ制御部ＳＰＭＣＴで生成されるＰＷＭ信号を用いて、ＳＰＭ駆動部ＳＰＭＤＶを介してモータＳＰＭを駆動する。電流検出用抵抗ＲＮＦは、モータＳＰＭの駆動電流を検出する。
【００１９】
当該モータＳＰＭの駆動電流は、サンプルホールド回路ＳＨ、センスアンプ回路ＳＡ、およびアナログ・ディジタル変換器ＡＤＣでディジタル値に変換される。ＳＰＭ制御部ＳＰＭＣＴは、当該駆動電流の検出値（ディジタル値）と、駆動電流の目標値となる電流指示値との誤差に基づき、当該誤差を低減するためのＰＷＭ信号を生成する。電流指示値は、例えば、ＨＤＤコントローラＨＤＤＣＴによって指示される。
【００２０】
回転位置検出部ＲＰＳＤＥＴは、例えば、モータＳＰＭの逆起電圧（Ｂ−ＥＭＦ）を検出することで、モータＳＰＭの回転位置を検出する。ＳＰＭ制御部ＳＰＭＣＴは、このモータＳＰＭの回転位置に応じた適切なタイミングで、モータＳＰＭの駆動電流を電流指示値に近づけるためのＰＷＭ信号をＳＰＭ駆動部ＳＰＭＤＶに出力することで、モータＳＰＭ（すなわちディスクＤＳＫ）を定格回転制御する。モータＳＰＭが定格回転の状態に到達したのち、ＶＣＭ駆動部ＶＣＭＤＶは、ヘッドＨＤをディスクＤＳＫ上に移動し、ヘッドＨＤは、ディスクＤＳＫ上でデータの読み書きを行う。
【００２１】
このようなモータシステムは、ノートＰＣ等を代表に、バッテリからの電力で動作する場合がある。特に、このようなバッテリを用いたモータシステムでは、省電力化が求められる。そこで、後述する本実施の形態によるモータ駆動方式を用いることが有益となる。
【００２２】
《モータ駆動装置の主要部の構成および動作》
図２は、図１におけるモータ駆動装置の主要部の構成例を示す機能ブロック図である。図３（ａ）、図３（ｂ）、図３（ｃ）および図４は、図２における正弦波駆動電圧制御部ＳＩＮＣＴの動作原理を示す説明図である。図２には、図１のモータ駆動装置ＭＤＩＣの内、ＳＰＭ制御部ＳＰＭＣＴ、ＳＰＭ駆動部ＳＰＭＤＶ、回転位置検出部ＲＰＳＤＥＴ、シリアルＩＦ＆レジスタ部ＳＩＦＲＥＧ、サンプルホールド回路ＳＨ、センスアンプ回路ＳＡ、およびアナログ・ディジタル変換器ＡＤＣが抽出して示されている。また、併せて、モータ駆動装置ＭＤＩＣの外部に設けられる電流検出用抵抗ＲＮＦと、ディスク機構ＤＳＫＭ内のモータＳＰＭとが示されている。
【００２３】
前述したように、電流検出用抵抗ＲＮＦは、モータＳＰＭの駆動電流の検出および電圧変換を行い、サンプルホールド回路ＳＨは、当該検出電圧を所定のタイミングで逐次保持する。具体的には、サンプルホールド回路ＳＨは、モータＳＰＭの各相（ｕ相、ｖ相、ｗ相）毎の駆動電流を検出できるタイミングでサンプリングを行うことで、各相の駆動電流に比例する検出電圧を保持する。センスアンプ回路ＳＡは、当該保持された検出電圧を増幅し、アナログ・ディジタル変換器ＡＤＣは、当該増幅された電圧をディジタル値に変換する。
【００２４】
回転位置検出部ＲＰＳＤＥＴは、逆起電圧位相検出部ＢＰＨＤと、駆動電流位相検出部ＩＰＨＤとを有する。逆起電圧位相検出部ＢＰＨＤは、モータＳＰＭの逆起電圧（Ｂ−ＥＭＦ）の位相となる基準電圧位相θｂｅｍｆを検出する。駆動電流位相検出部ＩＰＨＤは、モータＳＰＭの駆動電流の位相となる基準電流位相θｉを検出する。ＳＰＭ制御ＳＰＭＣＴは、ＰＬＬ制御部ＰＬＬＣＴと、駆動電圧位相生成部ＤＶＰＨＧと、電流誤差検出部ＣＥＲＤＥＴと、ＰＩ補償器ＰＩＣＰと、ＰＷＭ制御部ＰＷＭＣＴとを備える。
【００２５】
ＰＬＬ制御部ＰＬＬＣＴは、逆起電圧位相検出部ＢＰＨＤからの基準電圧位相θｂｅｍｆに基づいて、当該基準電圧位相θｂｅｍｆに同期する通電制御用タイミングを、ＰＬＬ（Phase Locked Loop）のフィードバック制御を用いて生成する。ここでは、ＰＬＬ制御部ＰＬＬＣＴは、通電制御用タイミングの一つとして、回転周期カウント値ＮＣＮＴを生成する。回転周期カウント値ＮＣＮＴは、逆起電圧（Ｂ−ＥＭＦ）の１周期（すなわちモータＳＰＭの回転周期）に比例する時間を、ディジタル制御の基準クロックのカウント値に換算した値であり、モータＳＰＭの角周波数（ω）に反比例する値となる。
【００２６】
電流誤差検出部ＣＥＲＤＥＴは、電流指示値ＳＰＮＣＲＮＴと、アナログ・ディジタル変換器ＡＤＣから出力されたディジタル値（すなわち、各相の駆動電流の検出値）との誤差を、減算器ＳＢ１を用いて検出する。電流指示値ＳＰＮＣＲＮＴは、前述したように、例えば、図１のＨＤＤコントローラＨＤＤＣＴから指示される。ＨＤＤコントローラＨＤＤＣＴは、例えば、回転周期カウント値ＮＣＮＴ等から得られるモータＳＰＭの角周波数の情報を受け、所定の演算によって、当該角周波数を目標の角周波数にするための電流指示値ＳＰＮＣＲＮＴを生成する。
【００２７】
ＰＩ補償器ＰＩＣＰは、電流誤差検出部ＣＥＲＤＥＴで検出された誤差値を入力として、比例（Ｐ）・積分（Ｉ）制御を行うことで、電流誤差を反映したＰＷＭデューティ値ＰＷＭＤを算出する。そして、ＰＩ補償器ＰＩＣＰは、このＰＷＭデューティ値ＰＷＭＤと、予め定められるＰＷＭ周期カウント数とを乗算することでＰＷＭオンカウント数を算出する。ＰＷＭ周期カウント数は、ＰＷＭ信号の１周期の時間を、ディジタル制御の基準クロックのカウント値に換算した数であり、ＰＷＭオンカウント数は、ＰＷＭ信号の１周期におけるオン期間を当該カウント値に換算した数である。
【００２８】
ＰＷＭ制御部ＰＷＭＣＴは、正弦波駆動電圧制御部ＳＩＮＣＴと、出力制御部ＯＵＴＣＴとを備える。ＰＷＭ制御部ＰＷＭＣＴは、概略的には、ＰＬＬ制御部ＰＬＬＣＴからの基準電圧位相θｂｅｍｆに同期する通電制御用タイミングを受け、モータＳＰＭに印加する駆動電圧（Ｖｕ，Ｖｖ，Ｖｗ）を正弦波状に制御するためのＰＷＭ（Pulse Width Modulation）信号ＰＷＭＯＮ＿ＭＯＤ（ｕ，ｖ，ｗ）を生成する。
【００２９】
正弦波駆動電圧制御部ＳＩＮＣＴは、ＰＩ補償器ＰＩＣＰからのＰＷＭオンカウント数を受け、モータＳＰＭに対して３相の正弦波電圧を印加するために必要とされる、各ＰＷＭ周期毎のデューティ指示値を生成する。デューティ指示値は、ＰＷＭ周期内のオン期間の比率を表す。正弦波駆動電圧制御部ＳＩＮＣＴは、具体的には、ＰＷＭパターン用のデューティ指示値ＰＷＭＰを生成するＰＷＭパターン生成部ＰＰＧと、ソフトパターン（ＳＰ１，ＳＰ２）用のデューティ指示値ＳＯＦＴＰを生成するソフトパターン生成部ＳＰＧとを備える。
【００３０】
ＰＷＭパターン生成部ＰＰＧおよびソフトパターン生成部ＳＰＧは、図３（ａ）、図３（ｂ）、図３（ｃ）および図４に示すような原理でデューティ指示値を生成する。まず、図３（ａ）には、モータＳＰＭの駆動方式として所謂正弦波駆動方式（すなわちモータの駆動電流を正弦波状に制御する方式）を適用する場合において、モータＳＰＭに印加される理想的な３相（ｕ相、ｖ相、ｗ相）の各駆動電圧Ｖｕ，Ｖｖ，Ｖｗが示される。当該駆動電圧Ｖｕ，Ｖｖ，Ｖｗは、互いに位相が１２０ｄｅｇ異なる正弦波電圧となっている。
【００３１】
図３（ｂ）には、図３（ａ）に示した３相の駆動電圧Ｖｕ，Ｖｖ，Ｖｗの内、電圧最小相を接地電源電圧ＧＮＤに固定した場合（本明細書ではＧＮＤ固定と呼ぶ）の各相の電圧波形が示される。例えば、図３（ａ）において、電気角２１０ｄｅｇ〜３３０ｄｅｇの期間ではｕ相が電圧最小相であり、図３（ｂ）では、当該期間において当該ｕ相の駆動電圧ＶｕにＧＮＤ固定を適用した場合のｖ相およびｗ相の相対的な電圧波形が示される。図３（ｃ）には、図３（ｂ）の場合と同様にして、図３（ａ）に示した３相の駆動電圧Ｖｕ，Ｖｖ，Ｖｗの内、電圧最大相を電源電圧ＶＭに固定した場合（本明細書ではＶＭ固定と呼ぶ）の各相の電圧波形が示される。
【００３２】
ここで、電気角６０ｄｅｇ毎に、図３（ｂ）のＧＮＤ固定と図３（ｃ）のＶＭ固定とを交互に切り換えた場合、図４に示すような電圧波形となる。図４に示すように、正弦波駆動を行うためのｕ相（ｖ相およびｗ相も同様）の駆動電圧Ｖｕは、ＳＰ１パターン、ＰＷＭパターン、ＳＰ２パターンと、これらの各パターンの対称パターンと、ＶＭ固定およびＧＮＤ固定とを適宜組み合わせることで作り出すことができる。
【００３３】
具体的に説明すると、図４に示した電気角０ｄｅｇ〜３６０ｄｅｇの期間は、例えば、ＰＷＭ周期Ｔｐｗｍの１００周期程度の期間に対応する。図４に示したＰＷＭ周期Ｔｐｗｍでは、ｗ相にＧＮＤ固定を適用した状態で、ｕ相にＰＷＭパターンを適用し、ｖ相にＳＰ２対称パターンを適用すればよい。同様にして、各ＰＷＭ周期では、３相の中のいずれか１相にＧＮＤ固定またはＶＭ固定を適用し、他の１相にＰＷＭパターンまたはＰＷＭ対称パターンを適用し、残りの１相にＳＰ１パターンまたはＳＰ２パターンあるいはこれらの対称パターンを適用すればよい。
【００３４】
このような原理に基づき、ＰＷＭパターン生成部ＰＰＧは、例えば、図４に示したＰＷＭパターンの電圧変動を実現するための、各ＰＷＭ周期毎のデューティ指示値をテーブル等に予め保持しており、当該テーブルに基づきデューティ指示値ＰＷＭＰを生成する。なお、デューティ指示値ＰＷＭＰは、例えば、ディジタル制御の基準クロックに基づくカウント値で表される。
【００３５】
また、当該テーブルには、例えば、正規化されたデューティ指示値（例えばカウント値）が保持されている。ＰＷＭパターン生成部ＰＰＧは、当該正規化されたデューティ指示値に、ＰＩ補償器ＰＩＣＰからのＰＷＭオンカウント数に基づく重み付けを行ってデューティ指示値ＰＷＭＰを生成する。その結果、ＰＷＭパターン生成部ＰＰＧは、前述した電流誤差を反映した上で、モータＳＰＭを正弦波駆動するためのデューティ指示値ＰＷＭＰを生成することができる。
【００３６】
同様に、ソフトパターン生成部ＳＰＧは、例えば、図４に示したソフトパターン（ＳＰ１パターンおよびＳＰ２パターン）の電圧変動を実現するための、各ＰＷＭ周期毎のデューティ指示値をテーブル等に予め保持しており、当該テーブルに基づきデューティ指示値（例えばカウント値）ＳＯＦＴＰを生成する。この際に、ソフトパターン生成部ＳＰＧも、ＰＷＭパターン生成部ＰＰＧの場合と同様にして重み付けを行う結果、電流誤差を反映した上で、モータＳＰＭを正弦波駆動するためのデューティ指示値ＳＯＦＴＰを生成することができる。
【００３７】
出力制御部ＯＵＴＣＴは、ＰＷＭＰ用補正部ＰＰＣＰと、ＳＯＦＴＰ用補正部ＳＰＣＰ
と、ＰＷＭ変調部ＰＷＭＭＤとを備える。ＰＷＭＰ用補正部ＰＰＣＰは、ＳＰＭ駆動部ＳＰＭＤＶの入出力間で生じるデューティの誤差を検出し、デューティ指示値ＰＷＭＰに当該誤差を相殺する補正値を加えることで補正後デューティ指示値ＰＷＭＲを生成する。具体的には、ＰＷＭＰ用補正部ＰＰＣＰは、ＳＰＭ駆動部ＳＰＭＤＶからの出力検出信号ＯＵＴＤＥＴから実際のデューティを検出し、これとデューティ指示値ＰＷＭＰとの差分に基づいて補正値を定める。
【００３８】
さらに、ＰＷＭＰ用補正部ＰＰＣＰは、デューティ指示値ＰＷＭＰがＰＷＭ補正パラメータＫｒｅｖＵ，Ｌで定められるデューティよりも大きい場合には、所定の演算式に基づいて補正値を定める。すなわち、デューティ指示値ＰＷＭＰが大きい場合には、トランジスタのオン・オフが不十分となることにより、デューティ指示値ＰＷＭＰが小さい場合とは異なる補正値が必要とされる場合がある。ＰＷＭＰ用補正部ＰＰＣＰは、当該補正値を演算式に基づいて定める。ＰＷＭＰ用補正部ＰＰＣＰの場合と同様に、ＳＯＦＴＰ用補正部ＳＰＣＰは、デューティ指示値ＳＯＦＴＰに所定の補正値を加えることで補正後デューティ指示値ＳＯＦＴＲを生成する。
【００３９】
ＰＷＭ変調部ＰＷＭＭＤは、ＰＬＬ制御部ＰＬＬＣＴからの通電制御用タイミングに基づいて、実際のモータＳＰＭへの通電を制御する。具体的には、ＰＷＭ変調部ＰＷＭＭＤは、図４に示したように、６０ｄｅｇ毎にＧＮＤ固定とＶＭ固定の切り換えを行う。この切り換えに応じて、ＰＷＭ変調部ＰＷＭＭＤは、補正後デューティ指示値ＰＷＭＲ，ＳＯＦＴＲに基づき、ｕ相用、ｖ相用およびｗ相用のＰＷＭ信号ＰＷＭＯＮ＿ＭＯＤｕ，ＰＷＭＯＮ＿ＭＯＤｖ，ＰＷＭＯＮ＿ＭＯＤｗをそれぞれ生成する。また、ＰＷＭ変調部ＰＷＭＭＤは、詳細は後述するが、逆起電圧位相検出のためにｕ相、ｖ相およびｗ相をＯＦＦすることを目的とした信号ＨＩＺｕ，ＨＩＺｖ，ＨＩＺｗをそれぞれ生成する。
【００４０】
詳細には、ＰＷＭ変調部ＰＷＭＭＤは、図４の駆動方式に基づき、各ＰＷＭ周期において、３相のＰＷＭ信号のいずれか１相をオン期間またはオフ期間に固定する（すなわちＶＭ固定またはＧＮＤ固定とする）。ＰＷＭ変調部ＰＷＭＭＤは、他の１相のＰＷＭ信号のオン期間を補正後デューティ指示値ＰＷＭＲ，ＳＯＦＴＲの一方によって定め、残りの１相のＰＷＭ信号のオン期間を補正後デューティ指示値ＰＷＭＲ，ＳＯＦＴＲの他方によって定める。なお、実際には、図４に示したように、ＰＷＭパターンおよびソフトパターンの各対称パターンも必要となる。ＰＷＭ変調部ＰＷＭＭＤは、ディジタル演算によって、この各対称パターンに対応するＰＷＭ信号も生成する。
【００４１】
このように、図４の駆動方式を用いることで、ＰＷＭ変調部ＰＷＭＭＤは、補正後デューティ指示値（カウント値）に基づきＰＷＭ信号を生成する実回路を、３個ではなく２個備えればよく、回路面積の低減等が可能になる。さらに、図４の駆動方式を用いることで、ＶＭ固定またはＧＮＤ固定からの振幅で制御されるため、電源電圧マージンに対して有利となり、モータＳＰＭのトルク定数を大きくでき、消費電力を低減することが可能になる。
【００４２】
図５は、図２におけるＳＰＭ駆動部の構成例を示す回路ブロック図である。ＳＰＭ駆動部ＳＰＭＤＶは、プリドライバ部ＰＤＶＢＫと、インバータ部ＩＮＶＢＫとを備える。インバータ部ＩＮＶＢＫは、ｕ相用のハイサイドトランジスタＭ１ｕおよびロウサイドトランジスタＭ２ｕと、ｖ相用のハイサイドトランジスタＭ１ｖおよびロウサイドトランジスタＭ２ｖと、ｗ相用のハイサイドトランジスタＭ１ｗおよびロウサイドトランジスタＭ２ｗと、を備える。ハイサイドトランジスタＭ１ｕ，Ｍ１ｖ，Ｍ１ｗおよびロウサイドトランジスタＭ２ｕ，Ｍ２ｖ，Ｍ２ｗは、特に限定はされないが、ここではｎＭＯＳトランジスタとなっている。
【００４３】
ハイサイドトランジスタＭ１ｕ，Ｍ１ｖ，Ｍ１ｗのドレインは、電源電圧ＶＭに共通に結合され、ロウサイドトランジスタＭ２ｕ，Ｍ２ｖ，Ｍ２ｗのソースは、モータ接地端子ＭＧＮＤに共通に結合される。ハイサイドトランジスタＭ１ｕのソースおよびロウサイドトランジスタＭ２ｕのドレインは、ｕ相用の駆動出力端子ＯＵＴｕに結合される。同様に、ハイサイドトランジスタＭ１ｖおよびロウサイドトランジスタＭ２ｖは、ｖ相用の駆動出力端子ＯＵＴｖに結合され、ハイサイドトランジスタＭ１ｗおよびロウサイドトランジスタＭ２ｗは、ｗ相用の駆動出力端子ＯＵＴｗに結合される。モータ接地端子ＭＧＮＤは、電流検出用抵抗ＲＮＦを介して接地電源電圧ＧＮＤに結合される。
【００４４】
ｕ相用、ｖ相用およびｗ相用の駆動出力端子ＯＵＴｕ，ＯＵＴｖ，ＯＵＴｗは、それぞれ、モータＳＰＭのｕ相用、ｖ相用およびｗ相用の駆動入力端子ＩＮｕ，ＩＮｖ，ＩＮｗに結合される。また、ｕ相用、ｖ相用およびｗ相用の駆動出力端子ＯＵＴｕ，ＯＵＴｖ，ＯＵＴｗからは、それぞれ、ｕ相、ｖ相およびｗ相の駆動電圧Ｖｕ，Ｖｖ，Ｖｗが出力される。当該駆動電圧Ｖｕ，Ｖｖ，Ｖｗは、時間平均で見ると図４に示したような電圧波形となり、各時点で見るとＰＷＭ信号となる。モータＳＰＭは、等価的に、中性点ＣＴと各駆動入力端子ＩＮｕ，ＩＮｖ，ＩＮｗとの間にそれぞれＹ字結線されたｕ相用、ｖ相用およびｗ相用のコイルＬｕ，Ｌｖ，Ｌｗを含んでいる。
【００４５】
プリドライバ部ＰＤＶＢＫは、ｕ相用、ｖ相用およびｗ相用のプリドライバＰＤＶｕ，ＰＤＶｖ，ＰＤＶｗを備える。ｕ相用のプリドライバＰＤＶｕは、ＰＷＭ変調部ＰＷＭＭＤからのｕ相用のＰＷＭ信号ＰＷＭＯＮ＿ＭＯＤｕに基づいて、ｕ相用のハイサイドトランジスタＭ１ｕをＰＷＭ信号ＰＷＭｕｈで駆動し、ロウサイドトランジスタＭ２ｕをＰＷＭ信号ＰＷＭｕｈの相補信号となるＰＷＭ信号ＰＷＭｕｌで駆動する。
【００４６】
また、当該プリドライバＰＤＶｕは、信号ＨＩＺｕがハイレベルの場合には、ハイサイドトランジスタＭ１ｕおよびロウサイドトランジスタＭ２ｕを共にオフに駆動する。これにより、駆動出力端子ＯＵＴｕがハイインピーダンスとなることで、駆動出力端子ＯＵＴｕで逆起電圧を観測することが可能になる。さらに、当該プリドライバＰＤＶｕは、駆動出力端子ＯＵＴｕから出力されるＰＷＭ信号を、所定の電圧レベルのパルス信号に変換し、当該パルス信号を前述した出力検出信号ＯＵＴＤＥＴｕとして出力する。
【００４７】
同様に、ｖ相用のプリドライバＰＤＶｖは、ＰＷＭ変調部ＰＷＭＭＤからのｖ相用のＰＷＭ信号ＰＷＭＯＮ＿ＭＯＤｖに基づいて、ｖ相用のハイサイドトランジスタＭ１ｖおよびロウサイドトランジスタＭ２ｖをそれぞれＰＷＭ信号ＰＷＭｖｈ，ＰＷＭｖｌで駆動する。また、当該プリドライバＰＤＶｖは、信号ＨＩＺｖがハイレベルの場合には各トランジスタ（Ｍ１ｖ，Ｍ２ｖ）を共にオフに駆動する。これにより、駆動出力端子ＯＵＴｖで逆起電圧を観測することが可能になる。さらに、当該プリドライバＰＤＶｖは、出力検出信号ＯＵＴＤＥＴｖを出力する。
【００４８】
ｗ相用のプリドライバＰＤＶｗは、ＰＷＭ変調部ＰＷＭＭＤからのｗ相用のＰＷＭ信号ＰＷＭＯＮ＿ＭＯＤｗに基づいて、ｗ相用のハイサイドトランジスタＭ１ｗおよびロウサイドトランジスタＭ２ｗをそれぞれＰＷＭ信号ＰＷＭｗｈ，ＰＷＭｗｌで駆動する。また、当該プリドライバＰＤＶｗは、信号ＨＩＺｗがハイレベルの場合には各トランジスタ（Ｍ１ｗ，Ｍ２ｗ）を共にオフに駆動する。これにより、駆動出力端子ＯＵＴｗで逆起電圧を観測することが可能になる。さらに、当該プリドライバＰＤＶｗは、出力検出信号ＯＵＴＤＥＴｗを出力する。
【００４９】
ここで、図２に戻り、ＰＷＭ変調部ＰＷＭＭＤは、前述したように、６０ｄｅｇ毎の切り換えを行いながら、ＳＰＭ駆動部ＳＰＭＤＶにＰＷＭ信号を出力する。また、モータＳＰＭの駆動電流は正弦波状であるため、電流検出用抵抗ＲＮＦで検出される電流は、正弦波の頂点を含む６０ｄｅｇの周期を繰り返したような電流となる。そこで、電流誤差検出部ＣＥＲＤＥＴは、この正弦波波形を模写したディジタルパターンを生成する指示電流補正部ＣＲＮＴＣＰを備える。電流誤差検出部ＣＥＲＤＥＴは、前述した電流指示値ＳＰＮＣＲＮＴに指示電流補正部ＣＲＮＴＣＰからのディジタルパターンを乗算し、当該乗算結果を電流指示値ＳＰＮＣＲＮＴの代わりに減算器ＳＢ１に出力する。
【００５０】
駆動電圧位相生成部ＤＶＰＨＧは、ピーク格納部ＰＫＨＤと、位相演算部ＰＨＣＡＬと、位相補正部ＰＨＣＰとを備える。ピーク格納部ＰＫＨＤは、アナログ・ディジタル変換器ＡＤＣからのディジタル値ＡＤＣＯＵＴを、指示電流補正部ＣＲＮＴＣＰからのトリガ信号ＵＰＡＤＣを受けて保持することで、各相の駆動電流の電流値（振幅値）ＩＳＰＮＯＵＴを出力する。指示電流補正部ＣＲＮＴＣＰは、例えば、生成するディジタルパターンの最大振幅の箇所でトリガ信号ＵＰＡＤＣを出力する。
【００５１】
位相演算部ＰＨＣＡＬおよび位相補正部ＰＨＣＰは、詳細は後述するが、基準電圧位相θｂｅｍｆと基準電流位相θｉとの位相差を所定の値（例えばゼロ）に定めるために必要な駆動電圧の位相θｄｒｖＲを定め、それを正弦波駆動電圧制御部ＳＩＮＣＴに指示する。正弦波駆動電圧制御部ＳＩＮＣＴは、この指示された位相θｄｒｖＲに基づく電気角だけ図４に示したＰＷＭパターンおよびソフトパターンをシフトさせ、このシフトさせたパターンを用いてデューティ指示値ＰＷＭＰ，ＳＯＦＴＰを生成する。その結果、駆動電圧Ｖｕ，Ｖｖ，Ｖｗの位相は、当該位相θｄｒｖＲに基づき制御され、これに応じて、モータＳＰＭの各相における駆動電流の位相も、当該位相θｄｒｖＲに基づき制御される。
【００５２】
シリアルＩＦ＆レジスタ部ＳＩＦＲＥＧは、シリアルポートＳＩＦと、当該シリアルポートＳＩＦを介してアクセスされるパラメータ設定レジスタ部ＰＲＥＧとを備える。パラメータ設定レジスタ部ＰＲＥＧは、例えば、図１のＨＤＤコントローラＨＤＤＣＴによって設定される各種パラメータを保持する。ここでは、各種パラメータには、モータＳＰＭの特性定数Ｋ１，Ｋ２、ゲイン調整パラメータＫｖｉ，Ｋａｄｊ、イネーブル設定信号ＥＮ、電流制御パラメータＫｃｐ，Ｋｃｉ、およびＰＷＭ補正パラメータＫｒｅｖＵ，Ｌが含まれる。
【００５３】
特性定数Ｋ１，Ｋ２、ゲイン調整パラメータＫｖｉ，Ｋａｄｊおよびイネーブル設定信号ＥＮは、詳細は後述するが、駆動電圧位相生成部ＤＶＰＨＧで用いられる。電流制御パラメータＫｃｐ，Ｋｃｉは、ＰＩ補償器ＰＩＣＰにおけるＰＩ制御の比例ゲインおよび積分ゲインとして用いられる。ＰＷＭ補正パラメータＫｒｅｖＵ，Ｌは、前述したように、ＰＷＭＰ用補正部ＰＰＣＰおよびＳＯＦＴＰ用補正部ＳＰＣＰで用いられる。
【００５４】
《駆動電圧位相生成部の概略》
図６は、図２において、駆動電圧位相生成部周りの主要部の概略構成例を示すブロック図である。図６には、図２における駆動電圧位相生成部ＤＶＰＨＧ内の位相演算部ＰＨＣＡＬおよび位相補正部ＰＨＣＰと、回転位置検出部ＲＰＳＤＥＴ内の逆起電圧位相検出部ＢＰＨＤおよび駆動電流位相検出部ＩＰＨＤとが抽出して示されている。
【００５５】
位相演算部ＰＨＣＡＬは、モータＳＰＭの各相の駆動電流の電流値と、モータＳＰＭの角周波数（ω）と、前述したモータＳＰＭの特性定数Ｋ１，Ｋ２とを用いた演算式を演算する。駆動電流の電流値は、図２のピーク格納部ＰＫＨＤからの電流値ＩＳＰＮＯＵＴによって得られる。モータＳＰＭの角周波数（ω）は、図２のＰＬＬ制御部ＰＬＬＣＴからの回転周期カウント値ＮＣＮＴによって得られる。位相演算部ＰＨＣＡＬは、当該演算式を演算することで、基準電圧位相θｂｅｍｆと基準電流位相θｉとの位相差をゼロにするための駆動電圧の位相θｄｒｖを算出する。
【００５６】
例えば、ブラシレスモータ等では、基準電圧位相θｂｅｍｆと基準電流位相θｉとの位相差をゼロにすることで、ロータの磁界とステータ（巻線）の磁界との位相差を９０ｄｅｇに定めることができ、モータを最大のトルクで駆動することができる。その結果、モータを高効率で駆動することができ、一定回転を維持するための消費電流を低減することができる。
【００５７】
ただし、位相演算部ＰＨＣＡＬによって算出された位相θｄｒｖは、モータＳＰＭの特性定数Ｋ１，Ｋ２に応じて変化する。特性定数Ｋ１，Ｋ２は、例えば、モータの種類毎に定められる。しかし、例えば、同一種類のモータＳＰＭであっても、各モータ毎に、製造ばらつき等に伴う特性定数Ｋ１，Ｋ２のばらつきが生じる恐れがある。また、１個のモータＳＰＭを対象とする場合であっても、経時劣化等によって時系列的に特性定数Ｋ１，Ｋ２のばらつきが生じる恐れがある。そうすると、基準電圧位相θｂｅｍｆと基準電流位相θｉとの位相差に理想値（ここではゼロ）からの誤差が生じ、モータの効率が低下し、消費電力が増大し得る。
【００５８】
そこで、位相補正部ＰＨＣＰは、位相演算部ＰＨＣＡＬからの位相θｄｒｖに補正値を加えることで、補正後の位相θｄｒｖＲを定める。この際に、位相補正部ＰＨＣＰは、基準電圧位相θｂｅｍｆおよび基準電流位相θｉを入力として、基準電圧位相θｂｅｍｆと基準電流位相θｉとの位相差が所定の値（ここではゼロ）に収束するように補正値の大きさをフィードバック制御によって更新する。すなわち、フィードバック経路として、図２に示したように、補正後の位相θｄｒｖＲに基づきモータＳＰＭに駆動電流が流れ、当該駆動電流の位相と逆起電圧の位相が回転位置検出部ＲＰＳＤＥＴで検出され、この検出結果に基づき補正値が更新され、新たな位相θｄｒｖＲが定められる。
【００５９】
以上のように、位相補正部ＰＨＣＰは、基準電圧位相θｂｅｍｆおよび基準電流位相θｉの実際の検出結果に基づき、位相差を所定の値（ここではゼロ）に定める補正値を算出する。このため、モータＳＰＭに製造ばらつきや経時劣化等が生じた場合であっても、当該位相差を高精度に理想値に定めることができ、モータＳＰＭの駆動電流の位相を最適化することが可能になる。その結果、モータＳＰＭの高効率化等が図れ、ひいては、モータ駆動装置およびモータシステムの省電力化等を実現することが可能になる。
【００６０】
図７は、図６における位相補正部の全体的な動作例を示すフロー図である。図７において、位相補正部ＰＨＣＰは、図２のパラメータ設定レジスタＰＲＥＧで定められるイネーブル設定信号ＥＮが‘Ｈ’レベル（イネーブル状態）であるか否かを判別する（ステップＳ１０１）。イネーブル設定信号ＥＮがイネーブル状態の場合、位相補正部ＰＨＣＰは、逆起電圧位相検出部ＢＰＨＤおよび駆動電流位相検出部ＩＰＨＤを介して、それぞれ基準電圧位相θｂｅｍｆおよび基準電流位相θｉを検出する（ステップＳ１０２，Ｓ１０３）。
【００６１】
次いで、位相補正部ＰＨＣＰは、基準電圧位相θｂｅｍｆと基準電流位相θｉとの位相差と所定の値（ここではゼロ）との誤差を検出し（ステップＳ１０４）、補正値を更新して新たな駆動電圧の位相θｄｒｖＲを定める（ステップＳ１０５）。そして、位相補正部ＰＨＣＰは、この新たな駆動電圧の位相θｄｒｖＲを用いて、ＰＷＭ制御部ＰＷＭＣＴおよびＳＰＭ駆動部ＳＰＭＤＶを介してモータＳＰＭを駆動する（ステップＳ１０６）。
【００６２】
また、位相補正部ＰＨＣＰは、イネーブル設定信号ＥＮがイネーブル状態である限り、ステップＳ１０２〜Ｓ１０６の処理を繰り返し実行する（ステップＳ１０７）。一方、ステップＳ１０１またはステップＳ１０７において、イネーブル設定信号ＥＮが‘Ｌ’レベル（ディスエーブル状態）の場合、位相補正部ＰＨＣＰは、位相補正を行わずに（すなわち補正値をゼロとして）処理を終了する（ステップＳ１０８）。このように、イネーブル設定信号ＥＮが‘Ｈ’レベル（イネーブル状態）の期間では、環境変化等があっても、常に駆動電圧（ひいては駆動電流）を最適な位相に定めることが可能になる。
【００６３】
《位相演算部および位相補正部の詳細》
図８は、図６の駆動電圧位相生成部における位相演算部および位相補正部の詳細な構成例を示すブロック線図である。図９（ａ）および図９（ｂ）は、図８における位相演算部の動作を説明する補足図である。まず、図９（ａ）には、モータＳＰＭの各相の等価回路が示される。モータＳＰＭの各相（代表としてｕ相）は、駆動入力端子ＩＮｕと中性点ＣＴとの間に直列接続される逆起電圧Ｖｂｅｍｆ、モータ抵抗ＲｍおよびモータインダクタンスＬｍによって表される。モータ抵抗ＲｍおよびモータインダクタンスＬｍは、図５のコイルＬｕが持つ実際のインピーダンス成分を表す。モータ駆動装置ＭＤＩＣは、このような直列回路に対して駆動電圧Ｖｕを印加し、コイルＬｕに駆動電流Ｉｕを流す。
【００６４】
図９（ｂ）のベクトル図には、図９（ａ）において、逆起電圧Ｖｂｅｍｆの基準電圧位相θｂｅｍｆと駆動電流Ｉｕの基準電流位相θｉとの位相差をゼロに定めた場合（すなわち、逆起電圧Ｖｂｅｍｆと駆動電流Ｉｕのベクトルの方向を一致させた場合）の電圧位相関係が示される。図９（ｂ）に示すように、基準電圧位相θｂｅｍｆと基準電流位相θｉとの位相差をゼロに定めるためには、基準電圧位相θｂｅｍｆに対して、駆動電圧Ｖｕを位相θｄｒｖだけ進める必要がある。
【００６５】
この位相θｄｒｖは、モータＳＰＭの角周波数ωおよびトルク定数Ｋｅを用いて、式（１）で示される。式（１）において、“ω・Ｋｅ”は、図９（ｂ）の逆起電圧Ｖｂｅｍｆに該当する。
【００６６】
θｄｒｖ＝ｔａｎ−１｛ω・Ｌｍ・Ｉｕ／（ω・Ｋｅ＋Ｒｍ・Ｉｕ）｝      （１）
ここで、位相θｄｒｖは、通常、十分に小さい値となる。この場合、式（２）の近似を用いて“ｔａｎ−１”を省くことができ、この省いた式を変形して式（３）が得られる。
【００６７】
θｄｒｖ≒ｔａｎ−１（θｄｒｖ）      （２）
θｄｒｖ＝（Ｌｍ／Ｒｍ）・Ｉｕ／｛（Ｋｅ／Ｒｍ）＋（Ｉｕ／ω）｝      （３）
図８に示す位相演算部ＰＨＣＡＬは、この式（３）に基づき位相θｄｒｖを演算する。具体的には、式（３）において、“Ｋｅ／Ｒｍ”に対応する値を特性定数Ｋ１で定め、“Ｌｍ／Ｒｍ”に対応する値を特性定数Ｋ２で定め、“Ｉｕ”に対応する値をピーク格納部ＰＫＨＤからの電流値ＩＳＰＮＯＵＴで定め、“１／ω”に対応する値を回転周期カウント値ＮＣＮＴで定める。この場合、式（３）は、式（４）となり、位相θｄｒｖは、式（５）の“Ｋｄｒｖ”に“ＩＳＰＮＯＵＴ”を乗算することで得られる。
【００６８】
θｄｒｖ＝Ｋ２・ＩＳＰＮＯＵＴ／（Ｋ１＋ＩＳＰＮＯＵＴ・ＮＣＮＴ）      （４）
Ｋｄｒｖ＝Ｋ２／（Ｋ１＋ＩＳＰＮＯＵＴ・ＮＣＮＴ）      （５）
図８に示す位相演算部ＰＨＣＡＬは、減算器ＳＢ１０と、乗算器ＭＵＬ１０〜ＭＵＬ１３と、積分器ＩＴＧ１０と、加算器ＡＤＤ１０とを備える。乗算器ＭＵＬ１３は、“ＮＣＮＴ・ＩＳＰＮＯＵＴ”を算出し、加算器ＡＤＤ１０は、乗算器ＭＵＬ１３の出力に“Ｋ１”を加算することで式（５）の分母を算出する。乗算器ＭＵＬ１２は、加算器ＡＤＤ１０の出力に“Ｋｄｒｖ”を乗算する。減算器ＳＢ１０は、乗算器ＭＵＬ１２の乗算結果と“Ｋ２”との誤差を算出し、乗算器ＭＵＬ１０は、当該誤差を積分ゲインＫで増幅し、積分器ＩＴＧ１０は、乗算器ＭＵＬ１０の乗算結果を積分することで式（５）の“Ｋｄｒｖ”を算出する。
【００６９】
すなわち、図８の位相演算部ＰＨＣＡＬは、乗算器ＭＵＬ１２の乗算結果（すなわち、“Ｋｄｒｖ・（Ｋ１＋ＩＳＰＮＯＵＴ・ＮＣＮＴ）”）と“Ｋ２”との誤差がゼロに収束するように、“Ｋｄｒｖ”をフィードバック制御することで“Ｋｄｒｖ”を算出するような演算回路を備える。誤差がゼロに収束した場合、“Ｋｄｒｖ・（Ｋ１＋ＩＳＰＮＯＵＴ・ＮＣＮＴ）”は“Ｋ２”に等しくなり、その結果、“Ｋｄｒｖ”は式（５）の値となる。乗算器ＭＵＬ１１は、“Ｋｄｒｖ”に“ＩＳＰＮＯＵＴ”を乗算することで式（４）の位相θｄｒｖを算出する。
【００７０】
このように、フィードバック制御を利用した演算回路を用いることで、複雑な構成となり得る割り算器を用いずに式（４）の演算を行うことができ、回路構成の簡素化等が図れる。なお、ここでは、乗算器ＭＵＬ１０は、加算器ＡＤＤ１０の算出結果に応じて積分ゲインＫを可変制御する構成となっている。具体的には、積分ゲインＫは、例えば、加算器ＡＤＤ１０の出力が大きくなるにつれて、段階的に小さくなるように制御される。これにより、加算器ＡＤＤ１０の出力の大きさに関わらず、フィードバック制御の帯域を同程度に保つことができる。
【００７１】
図８に示す位相補正部ＰＨＣＰは、平均化回路ＡＶＲと、乗算器ＭＵＬ１４，ＭＵＬ１５と、誤差検出器ＥＤＥＴ１と、積分器ＩＴＧ１１と、加算器ＡＤＤ１１とを備える。平均化回路ＡＶＲは、入力された基準電流位相θｉを、時系列的に平均化する。乗算器ＭＵＬ１４は、当該平均化された基準電流位相θｉにゲイン調整パラメータＫｖｉを乗算する。誤差検出器ＥＤＥＴ１は、入力された基準電圧位相θｂｅｍｆと乗算器ＭＵＬ１４の乗算結果との位相差Δθｖを算出し、当該位相差Δθｖと所定の値（ここではゼロ）との誤差（ここではΔθｖ）を検出する。
【００７２】
乗算器ＭＵＬ１５は、誤差検出器ＥＤＥＴ１の検出結果にゲイン調整パラメータ（すなわち積分ゲイン）Ｋａｄｊを乗算し、積分器ＩＴＧ１１は、当該乗算器ＭＵＬ１５の乗算結果を積分することで補正値を算出する。加算器ＡＤＤ１１は、位相演算部ＰＨＣＡＬからの位相θｄｒｖに積分器ＩＴＧ１１で算出された補正値を加えることで、補正後の位相θｄｒｖＲを算出する。また、積分器ＩＴＧ１１は、図７に示したように、イネーブル設定信号ＥＮが‘Ｌ’レベル（ディスエーブル状態）の場合には、補正値をゼロに定めるように構成される。
【００７３】
なお、ゲイン調整パラメータＫｖｉは、基準電流位相θｉに対する位相θｄｒｖＲの感度を、基準電圧位相θｂｅｍｆに対する位相θｄｒｖＲの感度に合致させる係数である。すなわち、例えば、図９（ｂ）のベクトル図から判るように、基準電流位相θｉがΔθだけ変動した場合（すなわち駆動電流Ｉｕのベクトルの方向がずれた場合）と、基準電圧位相θｂｅｍｆがΔθだけ変動した場合（すなわち逆起電圧Ｖｂｅｍｆのベクトルの方向がずれた場合）とでは、位相θｄｒｖＲに与える影響が異なる。このように感度が異なる２個の入力の誤差に基づいてフィードバック制御を行った場合、制御が不安定となる恐れがある。そこで、ゲイン調整パラメータＫｖｉによって２個の入力の感度を一致させた上で誤差を検出することが望ましい。
【００７４】
また、ここでは、基準電流位相θｉ側に乗算器ＭＵＬ１４を設けたが、その代わりに基準電圧位相θｂｅｍｆ側に乗算器ＭＵＬ１４を設けることも可能である。さらに、ここでは、積分器ＩＴＧ１１によって補正値を算出したが、場合によっては、当該積分器ＩＴＧ１１と並列に比例制御の経路や微分制御の経路を加えることで、ＰＩ制御やＰＩＤ制御を行うことも可能である。
【００７５】
《回転位置検出部の構成および動作》
図１０は、図６における回転位置検出部の検出期間の一例を示す波形図である。図１０には、モータＳＰＭに印加される各相の駆動電圧Ｖｕ，Ｖｖ，Ｖｗと、所定の相（ここではｕ相）の駆動電流Ｉｕとが示される。駆動電圧Ｖｕ，Ｖｖ，Ｖｗは、図１０に示されるように、各時点ではＰＷＭ信号であり、その時間平均によって図４に示したような電圧波形となる。
【００７６】
ここで、図５のインバータ部ＩＮＶＢＫは、図４に示した駆動方式に基づき、無通電期間が無い１８０ｄｅｇ通電方式によってモータに駆動電圧Ｖｕ，Ｖｖ，Ｖｗを印加する。無通電期間とは、通電を停止する期間であり、信号ＨＩＺｕ，ＨＩＺｖ，ＨＩＺｗを‘Ｈ’レベルにすることにより駆動出力端子ＯＵＴｕ，ＯＵＴｖ，ＯＵＴｗを開放する期間（ただし、所謂デッドタイムを除く）である。ただし、例えば、ｕ相の逆起電圧Ｖｂｅｍｆの位相を検出するためには、逆起電圧Ｖｂｅｍｆのゼロクロス点（振幅の中間値を通過する時点）を含む所定の期間で、無通電期間を設ける必要がある。
【００７７】
そこで、図２のＰＷＭ変調器ＰＷＭＭＤは、３６０ｄｅｇの通電期間内に無通電期間（例えば１５ｄｅｇ程度）を設け、図１０に示すように、当該無通電期間で逆起電圧検出イネーブル信号ＣＮＴ＿ＥＮ１を‘Ｈ’レベルに制御する。また、ＰＷＭ変調器ＰＷＭＭＤは、図１０に示すように、当該無通電期間とは位相が１８０ｄｅｇ異なる通電期間で、駆動電流検出イネーブル信号ＣＮＴ＿ＥＮ２を‘Ｈ’レベルに制御する。当該駆動電流検出イネーブル信号ＣＮＴ＿ＥＮ２の‘Ｈ’レベルの期間は、例えば、前述した無通電期間と同じ長さ（例えば１５ｄｅｇ程度）である。
【００７８】
逆起電圧位相検出部ＢＰＨＤは、逆起電圧検出イネーブル信号ＣＮＴ＿ＥＮ１が‘Ｈ’レベルの期間の中で逆起電圧Ｖｂｅｍｆのゼロクロス点を検出することで、基準電圧位相θｂｅｍｆを検出する。駆動電流位相検出部ＩＰＨＤは、駆動電流検出イネーブル信号ＣＮＴ＿ＥＮ２が‘Ｈ’レベルの期間の中で駆動電流Ｉｕのゼロクロス点を検出することで、基準電流位相θｉを検出する。
【００７９】
ここで、ＰＷＭ変調器ＰＷＭＭＤは、図２に示したように、ＰＬＬ制御部ＰＬＬＣＴからの通電制御用タイミング（言うなれば、過去における逆起電圧Ｖｂｅｍｆのゼロクロス点）に基づいて、モータＳＰＭへの通電を制御している。このため、ＰＷＭ変調器ＰＷＭＭＤは、近未来において逆起電圧Ｖｂｅｍｆのゼロクロス点が存在し得る期間も十分に狭い範囲（例えば１５ｄｅｇ程度）に絞り込むことができる。この無通電期間は、駆動電流Ｉｕの正弦波を歪ませる要因となるため、長くとも６０ｄｅｇよりも小さい期間に定められ、より短いほど望ましい。ただし、無通電期間は、短すぎると、モータＳＰＭの角速度ωの変動等に伴い、当該期間内にゼロクロス点が存在しない事態を招くため、これらのトレードオフで定められる。
【００８０】
また、前述した図８において、位相補正部ＰＨＣＰは、基準電圧位相θｂｅｍｆおよび基準電流位相θｉの実際の検出結果に基づいて、その位相差を所定の値に定めている。したがって、場合によって、図８の位相演算部ＰＨＣＡＬを不要とし、位相補正部ＰＨＣＰと同様な構成のみを用いて位相差を所定の値に定めるような方式も考えられる。しかし、この場合、図１０において、駆動電流検出イネーブル信号ＣＮＴ＿ＥＮ２が‘Ｈ’レベルの期間に、駆動電流Ｉｕのゼロクロス点が存在することを保証することが困難となる。
【００８１】
すなわち、図１０では、図８の位相演算部ＰＨＣＡＬによって、基準電圧位相θｂｅｍｆと基準電流位相θｉとの位相差がある程度ゼロに近い値となるように定めている結果として、駆動電流の位相検出期間を、無通電期間とは位相が１８０ｄｅｇ異なる箇所に定めることが可能となっている。また、駆動電流の位相検出期間を広げることで、当該期間内における駆動電流のゼロクロス点の存在を保証することも可能であるが、この場合、フィードバック制御の収束時間が長期化する恐れがあり、フィードバック制御回路の設計が複雑化する恐れもある。
【００８２】
このような観点から、位相演算部ＰＨＣＡＬと位相補正部ＰＨＣＰとを併用して用いることが有益となる。さらに、別の観点として、位相補正部ＰＨＣＰを設けることで、位相演算部ＰＨＣＡＬにおける特性定数Ｋ１，Ｋ２の設定精度を緩和することができる。すなわち、特性定数Ｋ１，Ｋ２の設定精度は、駆動電流の位相検出期間内にゼロクロス点を保てる程度の精度があればよい。これにより、設定の容易化が図れる。
【００８３】
なお、図１０の例では、ｕ相を対象に基準電圧位相θｂｅｍｆおよび基準電流位相θｉの検出が行われている。この場合、ｖ相およびｗ相に関しては、特に、無通電期間を設ける必要はない。また、検出対象は、勿論、ｕ相である必要はなく、ｖ相またはｗ相であってもよい。
【００８４】
《逆起電圧位相検出部の詳細》
図１１は、図６における逆起電圧位相検出部の詳細な構成例を示す回路図である。図１１の逆起電圧位相検出部ＢＰＨＤは、アンプ回路ＡＭＰ１１，ＡＭＰ１２と、サンプルホールド回路ＳＨ１１と、コンパレータ回路ＣＭＰ＿Ｚと、アップダウンカウンタ回路ＵＤＣＵＮＴ１と、フリップフロップ回路ＦＦ１１〜ＦＦ１３と、アンド演算回路ＡＤ１１と、排他的論理和演算回路ＸＯＲ１１とを備える。
【００８５】
アンプ回路ＡＭＰ１１は、中性点ＣＴの電圧Ｖｃｔを基準として、ｕ相の駆動電圧Ｖｕを増幅する。サンプルホールド回路ＳＨ１１は、所定のタイミングで駆動電圧Ｖｕをサンプリングし、ホールドする。所定のタイミングは、各ＰＷＭ周期毎に生成され、各ＰＷＭ周期の中で、他の２相（ｖ相、ｗ相）の一方の相のハイサイドトランジスタと他方の相のロウサイドトランジスタとが共にオンの期間（すなわち、電圧Ｖｃｔが電源電圧ＶＭの半分となる期間）で生成される。コンパレータ回路ＣＭＰ＿Ｚは、サンプルホールド回路ＳＨ１１の出力電圧Ｖ１１とゼロクロス電圧ＶｔｈＺ（例えばＶＭ／２）との大小関係を比較する。
【００８６】
フリップフロップ回路ＦＦ１１，ＦＦ１２は、駆動電圧検出イネーブル信号ＣＮＴ＿ＥＮ１をディジタル制御の基準クロックＣＬＫで順次ラッチし、アップダウンカウンタ回路ＵＤＣＵＮＴ１に出力する。排他的論理和演算回路ＸＯＲ１１は、コンパレータ回路ＣＭＰ＿Ｚの比較結果と、逆起電圧の検出方向信号ＤＩＲとの排他的論理和を演算し、演算結果ＺＸＯＵＴを出力する。アップダウンカウンタ回路ＵＤＣＵＮＴ１は、駆動電圧検出イネーブル信号ＣＮＴ＿ＥＮ１が‘Ｈ’レベルの期間でイネーブル状態となり、このイネーブル状態において、排他的論理和演算回路ＸＯＲ１１の演算結果ＺＸＯＵＴに基づいて動作する。
【００８７】
逆起電圧位相検出において、図１０のようにｕ相の立上り逆起電圧位相を検出する場合には、検出方向信号ＤＩＲを‘Ｌ’レベルとすることで、逆起電圧のゼロクロスまでは演算結果ＺＸＯＵＴが‘Ｌ’レベルとなるように動作させる。一方、立下り逆起電圧位相を検出する場合には、検出方向信号ＤＩＲを‘Ｈ’レベルとすることで逆起電圧のゼロクロスまでは演算結果ＺＸＯＵＴが‘Ｌ’レベルとなるように動作させる。これは立上り、立下りのどちらの向きの逆起電圧位相を検出する場合においても、アップダウンカウンタ回路ＵＤＣＵＮＴ１を同じように動かすことを目的としている。
【００８８】
なお、検出方向信号ＤＩＲは、図２に示すように、ＰＷＭ変調部ＰＷＭＭＤによって生成される。また、立上り、立下りどちらか一方の逆起電圧位相を検出する場合には、検出方向信号ＤＩＲは‘Ｌ’レベルあるいは‘Ｈ’レベルに固定される。このような演算結果ＺＸＯＵＴに基づき、アップダウンカウンタ回路ＵＤＣＵＮＴ１は、演算結果ＺＸＯＵＴが‘Ｈ’レベルの場合には、基準クロックＣＬＫでカウントアップを行い、演算結果ＺＸＯＵＴが‘Ｌ’レベルの場合には、基準クロックＣＬＫでカウントダウンを行う。
【００８９】
アンド演算回路ＡＤ１１は、フリップフロップ回路ＦＦ１１の反転出力と、フリップフロップ回路ＦＦ１２の出力とを入力としてアンド演算を行うことで、駆動電圧検出イネーブル信号ＣＮＴ＿ＥＮ１が‘Ｈ’レベルから‘Ｌ’レベルに遷移する際に、ワンショットパルス信号となるラッチ信号ＬＴ１１を出力する。フリップフロップ回路ＦＦ１３は、当該ラッチ信号ＬＴ１１をトリガとして、アップダウンカウンタ回路ＵＤＣＵＮＴ１のカウント値をラッチする。アンプ回路ＡＭＰ１２は、フリップフロップ回路ＦＦ１３の出力を所定のゲインＫｃｏｎｖ１で増幅することで、基準電圧位相θｂｅｍｆを出力する。ゲインＫｃｏｎｖ１は、カウント値に対する位相の感度を、後述する駆動電流位相検出部ＩＰＨＤにおける感度と整合させるための係数である。
【００９０】
図１２は、図１１の逆起電圧位相検出部の動作例を示す説明図である。図１２に示すように、駆動電圧検出イネーブル信号ＣＮＴ＿ＥＮ１が‘Ｈ’レベルになると、アップダウンカウンタ回路ＵＤＣＵＮＴ１はカウント動作を開始する。ここでは、サンプルホールド回路ＳＨ１１の出力電圧Ｖ１１は、カウント動作の開始時点でゼロクロス電圧ＶｔｈＺよりも小さくなっており、その後、ゼロクロス電圧ＶｔｈＺに達し、更にその後、ゼロクロス電圧ＶｔｈＺを超えて上昇している。
【００９１】
これに応じて、アップダウンカウンタ回路ＵＤＣＵＮＴ１は、出力電圧Ｖ１１がゼロクロス電圧ＶｔｈＺに達するまで、すなわち演算結果ＺＸＯＵＴが‘Ｈ’レベルになるまではカウントダウンを行い、ゼロクロス電圧ＶｔｈＺを超えたのち、すなわち演算結果ＺＸＯＵＴが‘Ｈ’レベルになったのちカウントアップを行う。そして、アップダウンカウンタ回路ＵＤＣＵＮＴ１は、駆動電圧検出イネーブル信号ＣＮＴ＿ＥＮ１が‘Ｌ’レベルに遷移した時点でカウント動作を停止する。逆起電圧位相検出部ＢＰＨＤは、当該カウント動作を停止した時点の最終的なカウント値に基づいて、基準電圧位相θｂｅｍｆを定める。
【００９２】
図１２の期間Ｔｄｅｔ１では、出力電圧Ｖ１１は、駆動電圧検出イネーブル信号ＣＮＴ＿ＥＮ１の‘Ｈ’レベル期間の中間点の時刻よりも早い時刻でゼロクロス電圧ＶｔｈＺに達している。その結果、アップダウンカウンタ回路ＵＤＣＵＮＴ１の最終的なカウント値（基準電圧位相θｂｅｍｆ）は、カウント動作の開始時点よりも大きくなる。図６の位相補正部ＰＨＣＰには、このようにして検出された基準電圧位相θｂｅｍｆが入力される。
【００９３】
ここで、図２のＰＬＬ制御部ＰＬＬＣＴの動作について説明する。ＰＬＬ制御部ＰＬＬＣＴは、駆動電圧検出イネーブル信号ＣＮＴ＿ＥＮ１の‘Ｈ’レベル期間の中間点の時刻と、ゼロクロス点の時刻とが一致するようにＰＬＬ制御を行い、通電制御用タイミングを更新する。例えば、ＰＬＬ制御部ＰＬＬＣＴは、期間Ｔｄｅｔ１で検出された基準電圧位相θｂｅｍｆを受けて、通電制御用タイミングの位相を早める。これに応じて、ＰＬＬ変調部ＰＷＭＭＤから出力される駆動電圧検出イネーブル信号ＣＮＴ＿ＥＮ１の位相も早められる。
【００９４】
その結果、図１２の期間Ｔｄｅｔ２に示すように、ゼロクロス点の時刻は、駆動電圧検出イネーブル信号ＣＮＴ＿ＥＮ１の‘Ｈ’レベル期間の中間点の時刻に近づく。すなわち、基準電圧位相θｂｅｍｆは、ＰＬＬ制御部ＰＬＬＣＴによって常にゼロに近づくように制御される。このようにして、通電制御用タイミングは、基準電圧位相θｂｅｍｆに同期することになる。
【００９５】
《駆動電流位相検出部の詳細》
図１３は、図６における駆動電流位相検出部の詳細な構成例を示す回路図である。図１３の駆動電流位相検出部ＩＰＨＤは、コンパレータ回路ＣＭＰ＿Ｇ，ＣＭＰ＿ＴＲと、アップダウンカウンタ回路ＵＤＣＵＮＴ２と、フリップフロップ回路ＦＦ２１〜ＦＦ２３と、アンド演算回路ＡＤ２１と、アンプ回路ＡＭＰ２２と、排他的論理和演算回路ＸＯＲ２１とを備える。コンパレータ回路ＣＭＰ＿Ｇは、モータＳＰＭのいずれかの相（ここではｕ相）に対応するロウサイドトランジスタ（図５のＭ２ｕ）のゲート・ソース間電圧Ｖｇｓ＿ＵＬと所定のしきい値電圧ＶｔｈＧとの大小関係を比較する。すなわち、コンパレータ回路ＣＭＰ＿Ｇは、当該ロウサイドトランジスタがオンかオフかを判別する。
【００９６】
コンパレータ回路ＣＭＰ＿ＴＲは、モータＳＰＭのいずれかの相（ここではｕ相）の駆動端子（図５のＯＵＴｕ）の電圧が高電位側のしきい値電圧ＶｔｈＬよりも大きく、低電位側のしきい値電圧ＶｔｈＨよりも小さいか否かを判別する。すなわち、コンパレータ回路ＣＭＰ＿ＴＲは、当該駆動端子の電圧（駆動電圧Ｖｕ）がＰＷＭ信号に応じて高電位側の電源電圧ＶＭと低電位側の電源電圧（接地電源電圧ＧＮＤ）との間で遷移する期間を検出する。コンパレータ回路ＣＭＰ＿ＴＲは、当該検出した遷移期間において、‘Ｈ’パルス信号となるトリガ信号ＴＲＧを出力する。
【００９７】
フリップフロップ回路ＦＦ２１，ＦＦ２２は、駆動電流検出イネーブル信号ＣＮＴ＿ＥＮ２をディジタル制御の基準クロックＣＬＫで順次ラッチし、アップダウンカウンタ回路ＵＤＣＵＮＴ２に出力する。アップダウンカウンタ回路ＵＤＣＵＮＴ２は、駆動電圧検出イネーブル信号ＣＮＴ＿ＥＮ２が‘Ｈ’レベルの期間でイネーブル状態となる。このイネーブル状態において、アップダウンカウンタ回路ＵＤＣＵＮＴ２は、トリガ信号ＴＲＧが出力される毎に、コンパレータ回路ＣＭＰ＿Ｇの比較結果に基づいてカウントダウンまたはカウントアップを行う。ここでは、アップダウンカウンタ回路ＵＤＣＵＮＴ２は、Ｖｇｓ＿ＵＬ＜ＶｔｈＧの場合（検出対象のロウサイドトランジスタがオフの場合）にはカウントダウンを行い、Ｖｇｓ＿ＵＬ＞ＶｔｈＧの場合（検出対象のロウサイドトランジスタがオンの場合）にはカウントアップを行う。
【００９８】
なお、図１３においても、図１１の場合と同様に、コンパレータ回路ＣＭＰ＿Ｇの比較結果と検出方向信号ＤＩＲとの排他的論理和演算回路ＸＯＲ２１による演算結果をアップダウンカウンタ回路ＵＤＣＵＮＴ２へ入力するように構成している。これは、図１１の場合と同様に、駆動電流のゼロクロスの方向によらずアップダウンカウンタ回路ＵＤＣＵＮＴ２を同じように動かすことを目的としており、どちらか一方の方向で駆動電流位相を検出する場合は検出方向信号ＤＩＲは固定される。
【００９９】
アンド演算回路ＡＤ２１は、フリップフロップ回路ＦＦ２１の反転出力と、フリップフロップ回路ＦＦ２２の出力とを入力としてアンド演算を行うことで、駆動電流検出イネーブル信号ＣＮＴ＿ＥＮ２が‘Ｈ’レベルから‘Ｌ’レベルに遷移する際に、ワンショットパルス信号となるラッチ信号ＬＴ２１を出力する。フリップフロップ回路ＦＦ２３は、当該ラッチ信号ＬＴ２１をトリガとして、アップダウンカウンタ回路ＵＤＣＵＮＴ２のカウント値をラッチする。アンプ回路ＡＭＰ２２は、フリップフロップ回路ＦＦ２３の出力を所定のゲインＫｃｏｎｖ２で増幅することで、基準電流位相θｉを出力する。ゲインＫｃｏｎｖ２は、カウント値に対する位相の感度を、前述した逆起電圧位相検出部ＢＰＨＤにおける感度と整合させるための係数である。
【０１００】
図１４は、図１３の駆動電流位相検出部の動作原理を示す波形図である。図１５（ａ）は、図１４におけるソース電流時のインバータ部の動作例を示す説明図であり、図１５（ｂ）は、図１４におけるシンク電流時のインバータ部の動作例を示す説明図である。図１５（ａ）および図１５（ｂ）には、簡易的に、図５のインバータ部ＩＮＶＢＫにおける２相分（ｕ相およびｖ相）の構成例が示されている。図１５（ａ）および図１５（ｂ）に示されるように、実際には、各相（例えばｕ相）のハイサイドトランジスタＭ１ｕは、ボディダイオードＤ１ｕを備え、ロウサイドトランジスタＭ２ｕも、ボディダイオードＤ２ｕを備える。
【０１０１】
図１４には、駆動電流Ｉｕがソース電流（プラス電流）からシンク電流（マイナス電流）に変化する際の、各信号の概略的な動作波形が示されている。ここで、ソース電流が流れるＰＷＭ周期Ｔ１では、図１５（ａ）に示されるような動作が行われる。まず、ＰＷＭ信号ＰＷＭｕｈが‘Ｈ’レベル（ＰＷＭ信号ＰＷＭｕｌが‘Ｌ’レベル）の期間では、ｕ相のハイサイドトランジスタＭ１ｕはオンに、ロウサイドトランジスタＭ２ｕはオフにそれぞれ駆動される。この期間では、ｕ相のハイサイドトランジスタＭ１ｕ→モータＳＰＭ→オン状態であるｖ相のロウサイドトランジスタＭ２ｖの経路でソース電流（プラス電流）が流れ、ｕ相の駆動電圧Ｖｕは、電源電圧ＶＭ近辺のレベルとなる。
【０１０２】
次いで、ＰＷＭ信号ＰＷＭｕｈが‘Ｈ’レベルから‘Ｌ’レベルに遷移した場合を想定する。この場合、ＰＷＭ信号ＰＷＭｕｌは、デッドタイムの期間、‘Ｌ’レベルを維持した後、‘Ｈ’レベルに遷移する。ＰＷＭ信号ＰＷＭｕｈが‘Ｈ’レベルから‘Ｌ’レベルに遷移すると、ｕ相のハイサイドトランジスタＭ１ｕはオフ状態に向けて遷移する。これに伴い、ｕ相の駆動電圧Ｖｕは、電源電圧ＶＭ近辺のレベルから接地電源電圧ＧＮＤ近辺のレベルに向けて遷移する。
【０１０３】
駆動電圧Ｖｕのレベルが接地電源電圧ＧＮＤのレベルよりも低下すると、モータＳＰＭ→オン状態であるｖ相のロウサイドトランジスタＭ２ｖ→ｕ相のロウサイド側のボディダイオードＤ２ｕの経路で回生電流（プラス電流）が流れる。ここで、ハイサイドトランジスタＭ１ｕは、回生電流が流れ始めるまでは、完全なオフ状態には遷移できない。その結果、この駆動電圧Ｖｕの遷移期間では、ｕ相のハイサイドトランジスタＭ１ｕはオンとなり、ロウサイドトランジスタＭ２ｕは、デッドタイムに伴いオフとなる。すなわち、ロウサイドトランジスタＭ２ｕのゲート・ソース間電圧Ｖｇｓ＿ＵＬは、所定のしきい値電圧ＶｔｈＧよりも小さくなる。
【０１０４】
続いて、回生電流（プラス電流）が流れ始めると、ハイサイドトランジスタＭ１ｕは完全にオフとなり、デットタイムが解除され、ＰＷＭ信号ＰＷＭｕｌは、‘Ｌ’レベルから‘Ｈ’レベルに遷移する。これにより、ｕ相のロウサイドトランジスタＭ２ｕのゲート・ソース間電圧Ｖｇｓ＿ＵＬは、所定のしきい値電圧ＶｔｈＧよりも大きくなり、当該ロウサイドトランジスタＭ２ｕはオンとなる。また、回生電流の経路は、ボディダイオードＤ２ｕ側からロウサイドトランジスタＭ２ｕ側に変わる。
【０１０５】
次いで、ＰＷＭ信号ＰＷＭｕｌが、‘Ｈ’レベルから‘Ｌ’レベルに遷移した場合を想定する。この場合、ｕ相のロウサイドトランジスタＭ２ｕは、オフ状態に向けて遷移し、完全にオフになると（すなわち所定のしきい値電圧ＶｔｈＧよりも小さくなると）、回生電流の経路がボディダイオードＤ２ｕ側に戻り、デットタイムが解除される。これを受けて、ＰＷＭ信号ＰＷＭｕｈは、‘Ｌ’レベルから‘Ｈ’レベルに遷移し、ｕ相のハイサイドトランジスタＭ１ｕはオン状態に駆動される。その結果、駆動電圧Ｖｕは、接地電源電圧ＧＮＤ近辺のレベルから電源電圧ＶＭ近辺のレベルに遷移する。
【０１０６】
以上のように、駆動電流Ｉｕがソース電流（プラス電流）であるＰＷＭ周期Ｔ１では、駆動電圧Ｖｕが電源電圧ＶＭ近辺のレベルと接地電源電圧ＧＮＤ近辺のレベルとの間で遷移する期間では、ロウサイドトランジスタＭ２ｕのゲート・ソース間電圧Ｖｇｓ＿ＵＬは、所定のしきい値電圧ＶｔｈＧよりも小さくなる。すなわち、ロウサイドトランジスタＭ２ｕは、オフとなる。
【０１０７】
一方、図１４において、シンク電流が流れるＰＷＭ周期Ｔ２では、図１５（ｂ）に示されるような動作が行われる。まず、ＰＷＭ信号ＰＷＭｕｌが‘Ｈ’レベル（ＰＷＭ信号ＰＷＭｕｈが‘Ｌ’レベル）の期間では、ｕ相のロウサイドトランジスタＭ２ｕはオンに、ハイサイドトランジスタＭ１ｕはオフにそれぞれ駆動される。この期間では、オン状態であるｖ相のハイサイドトランジスタＭ１ｖ→モータＳＰＭ→ｕ相のロウサイドトランジスタＭ２ｕの経路でシンク電流（マイナス電流）が流れ、ｕ相の駆動電圧Ｖｕは、接地電源電圧ＧＮＤ近辺のレベルとなる。
【０１０８】
次いで、ＰＷＭ信号ＰＷＭｕｌが‘Ｈ’レベルから‘Ｌ’レベルに遷移した場合を想定する。この場合、ＰＷＭ信号ＰＷＭｕｈは、デッドタイムの期間、‘Ｌ’レベルを維持した後、‘Ｈ’レベルに遷移する。ＰＷＭ信号ＰＷＭｕｌが‘Ｈ’レベルから‘Ｌ’レベルに遷移すると、ｕ相のロウサイドトランジスタＭ２ｕはオフ状態に向けて遷移し、これに伴い、ｕ相の駆動電圧Ｖｕは、接地電源電圧ＧＮＤ近辺のレベルから電源電圧ＶＭ近辺のレベルに向けて遷移する。
【０１０９】
駆動電圧Ｖｕのレベルが電源電圧ＶＭのレベルよりも上昇すると、モータＳＰＭ→ｕ相のハイサイド側のボディダイオードＤ１ｕ→オン状態であるｖ相のハイサイドトランジスタＭ１ｖの経路で回生電流（マイナス電流）が流れる。ここで、ロウサイドトランジスタＭ２ｕは、回生電流が流れ始めるまでは、完全なオフ状態には遷移できない。その結果、この駆動電圧Ｖｕの遷移期間では、ｕ相のロウサイドトランジスタＭ２ｕはオンとなり、ハイサイドトランジスタＭ１ｕは、デッドタイムに伴いオフとなる。すなわち、ロウサイドトランジスタＭ２ｕのゲート・ソース間電圧Ｖｇｓ＿ＵＬは、所定のしきい値電圧ＶｔｈＧよりも大きくなる。
【０１１０】
続いて、回生電流（マイナス電流）が流れ始めると、ロウサイドトランジスタＭ２ｕは完全にオフとなり、デットタイムが解除され、ＰＷＭ信号ＰＷＭｕｈは、‘Ｌ’レベルから‘Ｈ’レベルに遷移する。これにより、ｕ相のハイサイドトランジスタＭ１ｕは、オン状態となり、回生電流の経路は、ボディダイオードＤ１ｕ側からハイサイドトランジスタＭ１ｕ側に変わる。
【０１１１】
次いで、ＰＷＭ信号ＰＷＭｕｈが、‘Ｈ’レベルから‘Ｌ’レベルに遷移した場合を想定する。この場合、ｕ相のハイサイドトランジスタＭ１ｕは、オフ状態に向けて遷移し、完全にオフになると、回生電流の経路がボディダイオードＤ１ｕ側に戻り、デットタイムが解除される。これを受けて、ＰＷＭ信号ＰＷＭｕｌは、‘Ｌ’レベルから‘Ｈ’レベルに遷移し、ｕ相のロウサイドトランジスタＭ２ｕはオン状態に駆動される。すなわち、ロウサイドトランジスタＭ２ｕのゲート・ソース間電圧Ｖｇｓ＿ＵＬは、所定のしきい値電圧ＶｔｈＧよりも大きくなる。その結果、駆動電圧Ｖｕは、電源電圧ＶＭ近辺のレベルから接地電源電圧ＧＮＤ近辺のレベルに遷移する。
【０１１２】
以上のように、駆動電流Ｉｕがシンク電流（マイナス電流）であるＰＷＭ周期Ｔ２では、駆動電圧Ｖｕが電源電圧ＶＭ近辺のレベルと接地電源電圧ＧＮＤ近辺のレベルとの間で遷移する期間では、ロウサイドトランジスタＭ２ｕのゲート・ソース間電圧Ｖｇｓ＿ＵＬは、所定のしきい値電圧ＶｔｈＧよりも大きくなる。すなわち、ロウサイドトランジスタＭ２ｕは、オンとなる。
【０１１３】
図１３の駆動電流位相検出部ＩＰＨＤは、このように、モータＳＰＭのいずれかの相（ここではｕ相）の駆動電圧Ｖｕが遷移している期間で、ロウサイドトランジスタＭ２ｕがオンかオフかを判別することで、当該相の電流がソース電流（プラス電流）かシンク電流（マイナス電流）かを判別する。そして、当該駆動電流位相検出部ＩＰＨＤは、ソース電流およびシンク電流の一方から他方に切り替わった時点を駆動電流Ｉｕのゼロクロス点として検出する。
【０１１４】
具体的には、図１４に示すように、駆動電流位相検出部ＩＰＨＤのアップダウンカウンタ回路ＵＤＣＵＮＴ２は、ソース電流と判別した場合には、カウントダウンを行い、シンク電流と判別した場合には、カウントアップを行う。図１４では省略されているが、アップダウンカウンタ回路ＵＤＣＵＮＴ２は、図１２の場合と同様にして、駆動電流検出イネーブル信号ＣＮＴ＿ＥＮ２が‘Ｈ’レベルの期間で、このようなカウント動作を行う。その結果、駆動電流位相検出部ＩＰＨＤは、図１２の場合と同様に、駆動電流検出イネーブル信号ＣＮＴ＿ＥＮ２が‘Ｌ’レベルに遷移した時点の最終的なカウント値に基づいて、基準電流位相θｉを定めることができる。
【０１１５】
以上、本実施の形態１のモータ駆動装置およびモータシステムを用いることで、代表的には、モータの駆動電流の位相を最適化することが可能になる。
【０１１６】
（実施の形態２）
《モータ駆動装置の主要部の構成および動作（変形例）》
図１６は、本発明の実施の形態２によるモータ駆動装置において、その主要部の構成例を示す機能ブロック図である。図１６に示すモータ駆動装置は、図２に示したモータ駆動装置と比較して、パラメータ設定レジスタＰＲＥＧが、さらに、位相差設定値θｏｆｆと、ホールド信号ＨＬＤとを保持する点が異なっている。位相差設定値θｏｆｆおよびホールド信号ＨＬＤは、位相補正部ＰＨＣＰに入力される。
【０１１７】
位相補正部ＰＨＣＰは、ホールド信号ＨＤＬに応じて補正値の更新を停止し、最新の補正値を保持する。これにより、例えば、モータＳＰＭの起動時や、あるいは、予め定めた所定の期間において、位相補正部ＰＨＣＰによって最適な補正値を定めたのち、ホールド信号ＨＤＬを‘Ｈ’レベルにアサートすることで、図１０に示したように、逆起電圧Ｖｂｅｍｆの位相を検出するために無通電期間を設ける必要がなくなる。
【０１１８】
これにより、無通電期間に伴う歪みが無い正弦波の駆動電流でモータＳＰＭを駆動することが可能になる。その結果、無通電期間で生じ得るトルクリップルを低減することができ、モータＳＰＭの低振動、低騒音化を維持すること等が可能になる。なお、このような構成を用いた場合、逆起電圧Ｖｂｅｍｆの位相を検出できなくなり、ＰＬＬ制御部ＰＬＬＣＴによってモータＳＰＭの通電制御用タイミングを生成することが困難となり得る。
【０１１９】
ただし、実施の形態１で述べたように、無通電期間を設けずとも、基準電流位相θｉを検出することが可能である。基準電流位相θｉは、ホールド信号ＨＤＬが‘Ｌ’レベルの期間で、基準電圧位相θｂｅｍｆに対して所定の位相差（実施の形態１ではゼロ）を持つように定められている。したがって、本実施の形態２では、ＰＬＬ制御部ＰＬＬＣＴは、ホールド信号ＨＤＬが‘Ｈ’レベルにアサートされたのちは、基準電圧位相θｂｅｍｆの代わりに基準電流位相θｉに基づいてモータＳＰＭの通電制御用タイミングを生成するように構成される。具体的には、ＰＬＬ制御部ＰＬＬＣＴは、図１２の場合と同様に、駆動電流検出イネーブル信号ＣＮＴ＿ＥＮ２の‘Ｈ’レベルの期間の中間の時刻に、駆動電流のゼロクロス点が定まるように、ＰＬＬ制御を行う。
【０１２０】
位相差設定値θｏｆｆは、基準電圧位相θｂｅｍｆと基準電流位相θｉとの位相差を、例えば非ゼロとなる所定の値に定める場合の設定値である。例えば、弱め界磁制御のように、基準電流位相θｉを基準電圧位相θｂｅｍｆよりも敢えて進ませることで、モータＳＰＭの角速度の上限を上げる方式が知られている。また、例えばリラクタンスモータのように、位相進み制御を行うことで、トルクを確保する方式が知られている。このような場合に、図１６のように、位相差設定値θｏｆｆを外部から設定できるように構成することが有益となる。
【０１２１】
《位相演算部および位相補正部の詳細（変形例）》
図１７は、図１６の駆動電圧位相生成部における位相演算部および位相補正部の詳細な構成例を示すブロック線図である。図１７に示す構成例は、図８に示した構成例と比較して、位相補正部ＰＨＣＰの構成が若干異なっている。具体的には、図１７に示す位相補正部ＰＨＣＰは、図８に示した構成例と比較して、誤差検出部ＥＤＥＴ２の構成が異なる点と、セレクタ回路ＳＥＬＨＤが追加された点とが異なっている。
【０１２２】
誤差検出部ＥＤＥＴ２は、図８の場合と同様に、基準電圧位相θｂｅｍｆと、基準電流位相θｉに応じた乗算器ＭＵＬ１４の乗算結果との位相差を算出し、さらに、当該算出した位相差と位相差設定値θｏｆｆとの誤差を検出する。乗算器ＭＵＬ１５は、当該誤差検出器ＥＤＥＴ２の検出結果にゲイン調整パラメータ（すなわち積分ゲイン）Ｋａｄｊを乗算する。セレクタ回路ＳＥＬＨＤは、ホールド信号ＨＤＬが‘Ｌ’レベルの場合には、乗算器ＭＵＬ１５の乗算結果を積分器ＩＴＧ１１に出力し、ホールド信号ＨＤＬが‘Ｈ’レベルの場合には、ゼロの値を積分器ＩＴＧ１１に出力する。
【０１２３】
このような構成により、ホールド信号ＨＤＬが‘Ｌ’レベルの期間では、基準電圧位相θｂｅｍｆと基準電流位相θｉとの位相差が位相差設定値θｏｆｆに収束するように、フィードバック制御が行われる。一方、ホールド信号ＨＤＬが‘Ｈ’レベルにアサートされたのちは、積分器ＩＴＧ１１からの補正値は、固定される。なお、ホールド信号ＨＤＬが‘Ｈ’レベルにアサートされたのち、前述したＰＬＬ制御部ＰＬＬＣＴは、基準電流位相θｉと位相差設定値θｏｆｆとに基づき、通電制御用タイミングを生成する。
【０１２４】
図１８は、図１７における位相補正部の全体的な動作例を示すフロー図である。図１８に示すフローは、図７に示したフローと比較して、ステップＳ２０１およびステップＳ２０２が追加されたフローとなっている。ステップＳ２０１は、前述したステップＳ１０６とステップＳ１０７の間に挿入される。位相補正部ＰＨＣＰは、補正値を更新した状態でモータＳＰＭの駆動が行われたのち（ステップＳ１０６）、ホールド信号ＨＬＤが‘Ｈ’レベルか否かを判別する（ステップＳ２０１）。
【０１２５】
ホールド信号ＨＬＤが‘Ｈ’レベルの場合、位相補正部ＰＨＣＰは、最新の補正値を保持し、処理を終了する（ステップＳ２０２）。一方、ホールド信号ＨＬＤが‘Ｌ’レベルの場合、位相補正部ＰＨＣＰは、図７の場合と同様に、イネーブル設定信号ＥＮを判別し、イネーブル状態である限り、ステップＳ１０２〜Ｓ１０６の処理を繰り返し実行する（ステップＳ１０７）。また、イネーブル設定信号ＥＮがディスエーブル状態の場合、位相補正部ＰＨＣＰは、位相補正を行わずに（すなわち補正値をゼロとして）処理を終了する（ステップＳ１０８）。これにより、例えば、位相補正部ＰＨＣＰに最新の補正値を保持させたのち、再度補正が必要な時に、ホール信号ＨＬＤを改めて‘Ｌ’レベルに制御することで、位相補正部ＰＨＣＰに対して補正の再開を指示するようなことが可能になる。
【０１２６】
以上、本実施の形態２のモータ駆動装置およびモータシステムを用いることで、実施の形態１の場合と同様に、代表的には、モータの駆動電流の位相を最適化することが可能になる。さらに、実施の形態１の場合と比較して、無通電期間を常に設ける必要はなく、モータの低振動、低騒音化等が図れる。
【０１２７】
（実施の形態３）
《逆起電圧位相検出部の詳細（変形例）》
図１９は、本発明の実施の形態３によるモータ駆動装置において、その逆起電圧位相検出部の構成例を示す回路図である。図１９に示す逆起電圧位相検出部ＢＰＨＤは、図１１に示した構成例と比較して、セレクタ回路ＳＥＬＣ１、アンド演算回路ＡＤ１ｕ，ＡＤ１ｖ，ＡＤ１ｗおよび平均化回路ＡＶＥ１が追加された点が異なっている。さらに、逆起電圧位相検出部ＢＰＨＤは、図１１と比較して、図１１のフリップフロップ回路ＦＦ１３が３個のフリップフロップ回路ＦＦ１３ｕ，ＦＦ１３ｖ，ＦＦ１３ｗに置き換わった点が異なっている。なお、図１９では、記載の簡略化のため、図１１のおける排他的論理和演算回路ＸＯＲ１１は省略されている。
【０１２８】
セレクタ回路ＳＥＬＣ１は、３相の駆動電圧Ｖｕ，Ｖｖ，Ｖｗのいずれかを選択信号ＳＥＬに基づいて選択し、それを駆動電圧Ｖｘとしてアンプ回路ＡＭＰ１１へ出力する。すなわち、図１１の構成例では、基準電圧位相θｂｅｍｆの検出対象となるモータＳＰＭの相はｕ相であったが、図１９の構成例では、当該モータＳＰＭの相をセレクタ回路ＳＥＬＣ１によって選択可能となっている。選択信号ＳＥＬは、例えば、図２に示したＰＷＭ変調部ＰＷＭＭＤによって生成される。
【０１２９】
ここでは、説明の便宜上、選択信号ＳＥＬは、ｕ相、ｖ相、ｗ相をそれぞれ選択するための３ビットの選択信号ｕｓｌ，ｖｓｌ，ｗｓｌで構成されるものとする。アンド演算回路ＡＤ１ｕ，ＡＤ１ｖ，ＡＤ１ｗは、それぞれ、選択信号ｕｓｌ，ｖｓｌ，ｗｓｌと、アンド演算回路ＡＤ１１からのラッチ信号ＬＴ１１とを２入力としてアンド演算を行い、フリップフロップ回路ＦＦ１３ｕ，ＦＦ１３ｖ，ＦＦ１３ｗにラッチ信号ＬＴ１１ｕ，ＬＴ１１ｖ，ＬＴ１１ｗを出力する。
【０１３０】
フリップフロップ回路ＦＦ１３ｕ，ＦＦ１３ｖ，ＦＦ１３ｗは、それぞれ、ラッチ信号ＬＴ１１ｕ，ＬＴ１１ｖ，ＬＴ１１ｗを受けて、アップダウンカウンタ回路ＵＤＣＵＮＴ１からのカウント値をラッチする。平均化回路ＡＶＥ１は、フリップフロップ回路ＦＦ１３ｕ，ＦＦ１３ｖ，ＦＦ１３ｕの各出力値を平均化する。アンプ回路ＡＭＰ１２は、平均化回路ＡＶＥ１の出力を所定のゲインＫｃｏｎｖ１で増幅することで、基準電圧位相θｂｅｍｆを出力する。
【０１３１】
このような構成において、ｕ相用の選択信号ｕｓｌを‘Ｈ’レベルにアサートした場合、図１１の場合と同様にして、逆起電圧検出イネーブル信号ＣＮＴ＿ＥＮ１の‘Ｌ’レベル遷移に伴う最終的なカウント値がフリップフロップ回路ＦＦ１３ｕでラッチされる。同様に、ｖ相用、ｗ相用の各選択信号ｖｓｌ，ｗｓｌをそれぞれ‘Ｈ’レベルにアサートした場合、最終的なカウント値がフリップフロップ回路ＦＦ１３ｖ，ＦＦ１３ｗでそれぞれラッチされる。その結果、逆起電圧位相検出部ＢＰＨＤは、例えば、セレクタ回路ＳＥＬＣ１を介して検出対象となるモータＳＰＭの相を順次切り換えながら各相毎の基準電圧位相θｂｅｍｆを検出し、当該検出した各相毎の基準電圧位相θｂｅｍｆを平均化回路ＡＶＥ１で平均化するようなことが可能となる。
【０１３２】
《駆動電流位相検出部の詳細（変形例）》
図２０は、本発明の実施の形態３によるモータ駆動装置において、その駆動電流位相検出部の構成例を示す回路図である。図２０に示す駆動電流位相検出部ＩＰＨＤは、図１３に示した構成例と比較して、セレクタ回路ＳＥＬＣ２ａ，ＳＥＬＣ２ｂ、アンド演算回路ＡＤ２ｕ，ＡＤ２ｖ，ＡＤ２ｗおよび平均化回路ＡＶＥ２が追加された点が異なっている。さらに、当該駆動電流位相検出部ＩＰＨＤは、図１３と比較して、図１３のフリップフロップ回路ＦＦ２３が３個のフリップフロップ回路ＦＦ２３ｕ，ＦＦ２３ｖ，ＦＦ２３ｗに置き換わった点とが異なっている。なお、図２０では、記載の簡略化のため、図１３のおける排他的論理和演算回路ＸＯＲ２１は省略されている。
【０１３３】
セレクタ回路ＳＥＬＣ２ａは、３相のゲート・ソース間電圧Ｖｇｓ＿ＵＬ，Ｖｇｓ＿ＶＬ，Ｖｇｓ＿ＷＬのいずれかを選択信号ＳＥＬに基づいて選択し、それをゲート・ソース間電圧Ｖｇｓ＿ｘＬとしてコンパレータ回路ＣＭＰ＿Ｇへ出力する。同様に、セレクタ回路ＳＥＬＣ２ｂは、３相の駆動電圧Ｖｕ，Ｖｖ，Ｖｗのいずれかを選択信号ＳＥＬに基づいて選択し、それを駆動電圧Ｖｘとしてコンパレータ回路ＣＭＰ＿ＴＲへ出力する。すなわち、図１３の構成例では、基準電流位相θｉの検出対象となるモータＳＰＭの相はｕ相であったが、図２０の構成例では、当該モータＳＰＭの相をセレクタ回路ＳＥＬＣ２ａ，ＳＥＬＣ２ｂによって選択可能となっている。
【０１３４】
選択信号ＳＥＬは、図１９の場合と同様とする。アンド演算回路ＡＤ２ｕ，ＡＤ２ｖ，ＡＤ１ｗは、それぞれ、選択信号ｕｓｌ，ｖｓｌ，ｗｓｌと、アンド演算回路ＡＤ２１からのラッチ信号ＬＴ２１とを２入力としてアンド演算を行い、フリップフロップ回路ＦＦ２３ｕ，ＦＦ２３ｖ，ＦＦ２３ｗにラッチ信号ＬＴ２１ｕ，ＬＴ２１ｖ，ＬＴ２１ｗを出力する。
【０１３５】
フリップフロップ回路ＦＦ２３ｕ，ＦＦ２３ｖ，ＦＦ２３ｗは、それぞれ、ラッチ信号ＬＴ２１ｕ，ＬＴ２１ｖ，ＬＴ２１ｗを受けて、アップダウンカウンタ回路ＵＤＣＵＮＴ２からのカウント値をラッチする。平均化回路ＡＶＥ２は、フリップフロップ回路ＦＦ２３ｕ，ＦＦ２３ｖ，ＦＦ２３ｗの各出力値を平均化する。アンプ回路ＡＭＰ２２は、平均化回路ＡＶＥ２の出力を所定のゲインＫｃｏｎｖ２で増幅することで、基準電流位相θｉを出力する。
【０１３６】
このように、図２０の駆動電流位相検出部ＩＰＨＤは、図１９に示した駆動電圧位相検出部ＢＰＨＤと同様の位相選択機能を備え、図１９の場合と同様にして動作する。その結果、当該駆動電流位相検出部ＩＰＨＤは、例えば、セレクタ回路ＳＥＬＣ２ａ，ＳＥＬＣ２ｂを介して検出対象となるモータＳＰＭの相を順次切り換えながら各相毎の基準電流位相θｉを検出し、当該検出した各相毎の基準電流位相θｉを平均化回路ＡＶＥ２で平均化するようなことが可能となる。
【０１３７】
具体的なシーケンスとしては、例えば、まず、ｕ相を対象として、基準電圧位相θｂｅｍｆおよび基準電流位相θｉを検出し、次いで、ｖ相を対象とした検出と、ｗ相を対象として検出を順次行い、その後、再びｕ相に戻るといったような処理を巡回させる方法が挙げられる。この場合、等価的に、３相分の基準電圧位相θｂｅｍｆの平均値と３相分の基準電流位相θｉの平均値との位相差を所定の値に近づけるような補正値を求めることができる。その結果、例えば、各相間の着磁ばらつきを含めて補正を行うことが可能になる。なお、シーケンスは、特に、これに限らず、様々なシーケンスを用いることができる。いずれのシーケンスを用いる場合であっても、セレクタ回路を設けて各相を適宜切り換える制御を行うことで平均的な補正値を求めることが可能となる。
【０１３８】
以上、本実施の形態３のモータ駆動装置およびモータシステムを用いることで、実施の形態１および実施の形態２で述べた各種効果に加えて、さらに、モータの各相の駆動電流の位相を平均的に最適化することが可能になる。
【０１３９】
以上、本発明者によってなされた発明を実施の形態に基づき具体的に説明したが、本発明は前記実施の形態に限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能である。例えば、前述した実施の形態は、本発明を分かり易く説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、ある実施の形態の構成の一部を他の実施の形態の構成に置き換えることが可能であり、また、ある実施の形態の構成に他の実施の形態の構成を加えることも可能である。また、各実施の形態の構成の一部について、他の構成の追加・削除・置換をすることが可能である。
【０１４０】
例えば、本実施の形態の方式は、ＨＤＤ装置に限らず、ＤＶＤ再生録画装置やブルーレイ再生録画装置等を含め、各種モータの駆動方法として適用可能である。
【符号の説明】
【０１４１】
ＢＰＨＤ  逆起電圧位相検出部
ＤＶＰＨＧ  駆動電圧位相生成部
ＩＮＶＢＫ  インバータ部
ＩＰＨＤ  駆動電流位相検出部
ＭＤＩＣ  モータ駆動装置
ＰＨＣＡＬ  位相演算部
ＰＨＣＰ  位相補正部
ＰＷＭＣＴ  ＰＷＭ制御部
θｂｅｍｆ  基準電圧位相
θｄｒｖ，θｄｒｖＲ  位相
θｉ  基準電流位相
【図１】
0006484544.tif 000002
【図２】
0006484544.tif 000003
【図３】
0006484544.tif 000004
【図４】
0006484544.tif 000005
【図５】
0006484544.tif 000006
【図６】
0006484544.tif 000007
【図７】
0006484544.tif 000008
【図８】
0006484544.tif 000009
【図９】
0006484544.tif 000010
【図１０】
0006484544.tif 000011
【図１１】
0006484544.tif 000012
【図１２】
0006484544.tif 000013
【図１３】
0006484544.tif 000014
【図１４】
0006484544.tif 000015
【図１５】
0006484544.tif 000016
【図１６】
0006484544.tif 000017
【図１７】
0006484544.tif 000018
【図１８】
0006484544.tif 000019
【図１９】
0006484544.tif 000020
【図２０】
0006484544.tif 000021