(57)【要約】【課題】モータに着磁ばらつきが生じる場合であっても、回転ジッタを低減することが可能なモータ駆動装置およびモータシステムを提供する。【解決手段】位相誤差検出部ＰＨＥＤは、機械角周期の中で、ＢＥＭＦのゼロクロスタイミングとなる複数の検出タイミングのそれぞれでＢＥＭＦの位相と相切替信号ＣＯＭＭ（マスク信号ＭＳＫ）の位相との位相誤差ＰＥＲＲを検出する。ＰＩ補償器ＰＩＣＰａは、複数の検出タイミング毎の複数の周期設定レジスタＲＥＧＮ０＿０〜ＲＥＧＮ３＿５を有し、検出タイミング毎にレジスタを切り替えながら、入力された位相誤差ＰＥＲＲをゼロに近づけるための周期設定値ＮＣＮＴＳをレジスタに格納された前回の周期設定値ＮＣＮＴを反映して定める。クロック生成部ＣＧＥＮは、周期設定値ＮＣＮＴＳに基づき相切替信号ＣＯＭＭを逐次制御する。【選択図】図３
2019201445.tif 000002
【特許請求の範囲】
【請求項１】
３相モータの回転位相を検出することで得られる検出回転位相と、前記３相モータの通電タイミングを定めるための制御用回転位相とが同期するように前記制御用回転位相を制御するモータ駆動装置であって、
前記３相モータの機械角３６０°の周期となる機械角周期の中で、複数の検出タイミングのそれぞれで前記検出回転位相と前記制御用回転位相との位相誤差を検出する位相誤差検出部と、
前記位相誤差検出部からの前記位相誤差を入力として、前記位相誤差をゼロに近づけるための操作量を前回の状態変数を反映して定め、前記状態変数を更新する補償器と、
前記補償器からの前記操作量に基づき前記制御用回転位相を逐次制御する通電タイミング生成部と、
を有し、
前記補償器は、前記複数の検出タイミングにそれぞれ対応する複数のレジスタを有し、前回の前記機械角周期における前記複数の検出タイミング毎に、前記状態変数を、対応する１個のレジスタにそれぞれ格納し、今回の前記機械角周期における前記複数の検出タイミング毎に、前記対応する１個のレジスタに格納された前記状態変数を反映して前記今回の機械角周期における前記操作量を定める、
モータ駆動装置。
【請求項２】
請求項１記載のモータ駆動装置において、
前記検出回転位相は、前記３相モータの逆起電圧の位相であり、
前記複数の検出タイミングのそれぞれは、前記３相モータの逆起電圧が振幅の中間レベルを高電位側にクロスする立ち上がりゼロクロスのタイミングか、低電位側にクロスする立ち下がりゼロクロスのタイミングである、
モータ駆動装置。
【請求項３】
請求項２記載のモータ駆動装置において、
前記複数の検出タイミングは、電気角３６０°となる電気角周期の中で３回生じる前記立ち上がりゼロクロスのタイミングと、前記電気角周期の中で３回生じる前記立ち下がりゼロクロスのタイミングとを含む、
モータ駆動装置。
【請求項４】
請求項２記載のモータ駆動装置において、
前記３相モータは、“２×Ｎ（Ｎは２以上の整数）”極モータであり、
前記機械角周期は、電気角３６０°となる電気角周期をＮ回含み、
前記複数の検出タイミングは、３相中のいずれか１相の逆起電圧において前記電気角周期毎に生じる前記立ち上がりゼロクロスのタイミングか、前記電気角周期毎に生じる前記立ち下がりゼロクロスのタイミングの少なくとも一方を含む、
モータ駆動装置。
【請求項５】
請求項２記載のモータ駆動装置において、
さらに、前記制御用回転位相に同期する基準タイミングを前記機械角周期内に所定の位相間隔で複数定め、前記逆起電圧の検出対象相に該当する前記３相モータの駆動入力端子を、前記基準タイミングを含んだ所定の位相期間でハイインピーダンス状態に制御するタイミング制御部を備え、
前記位相誤差検出部は、前記基準タイミングと、前記ハイインピーダンス状態の前記駆動入力端子に生じる前記立ち上がりゼロクロスのタイミングまたは前記立ち下がりゼロクロスのタイミングとの位相誤差を検出する、
モータ駆動装置。
【請求項６】
請求項５記載のモータ駆動装置において、
前記タイミング制御部は、前記所定の位相期間の長さを可変設定する可変設定部を有する、
モータ駆動装置。
【請求項７】
請求項５記載のモータ駆動装置において、
前記タイミング制御部は、前記立ち上がりゼロクロスのタイミングまたは前記立ち下がりゼロクロスのタイミングが生じた時点で前記ハイインピーダンス状態を解除するハイインピーダンス解除部を有する、
モータ駆動装置。
【請求項８】
請求項２記載のモータ駆動装置において、
前記補償器は、第１の動作モードまたは第２の動作モードで動作し、前記第１の動作モードでは、前記複数の検出タイミング毎に前記対応する１個のレジスタを用いて前記操作量を定め、前記第２の動作モードでは、前記複数の検出タイミング毎の前記状態変数を前記複数のレジスタに共通に格納することで、前記複数のレジスタを１個のレジスタとみなして前記操作量を定める、
モータ駆動装置。
【請求項９】
請求項１記載のモータ駆動装置において、
前記状態変数は、前記操作量である、
モータ駆動装置。
【請求項１０】
請求項１記載のモータ駆動装置において、
前記状態変数は、前記操作量および前記位相誤差であり、
前記補償器は、
前記操作量を格納するための前記複数のレジスタとなる複数の第１のレジスタと、
前記位相誤差を格納するための前記複数のレジスタとなる複数の第２のレジスタと、
を有する、
モータ駆動装置。
【請求項１１】
請求項１記載のモータ駆動装置において、
前記複数のレジスタの一つは基準レジスタであり、
前記補償器は、さらに、
前記複数の検出タイミング毎に更新される前記状態変数と、前記基準レジスタに格納される前記状態変数との差分値を算出し、前記基準レジスタを除く前記対応する１個のレジスタに前記差分値を格納する減算器と、
前記基準レジスタを除く前記対応する１個のレジスタからの前記差分値と、前記基準レジスタに格納される前記状態変数とを加算する加算器と、
を有する、
モータ駆動装置。
【請求項１２】
請求項１記載のモータ駆動装置において、
前記検出回転位相は、前記３相モータに取り付けられた位置センサからの３相の位置検出信号の位相であり、
前記複数の検出タイミングのそれぞれは、前記３相の位置検出信号の立ち上がりエッジのタイミングか、立ち下がりエッジのタイミングである、
モータ駆動装置。
【請求項１３】
データを記憶するディスクと、
前記ディスクを回転させる３相モータと、
前記３相モータの回転位相を検出することで得られる検出回転位相と、前記３相モータの通電タイミングを定めるための制御用回転位相とが同期するように前記制御用回転位相を制御し、前記制御用回転位相に基づいて前記３相モータを駆動するモータ駆動装置と、
を備えるモータシステムであって、
前記モータ駆動装置は、
前記３相モータの機械角３６０°の周期となる機械角周期の中で、複数の検出タイミングのそれぞれで前記検出回転位相と前記制御用回転位相との位相誤差を検出する位相誤差検出部と、
前記位相誤差検出部からの前記位相誤差を入力として、前記位相誤差をゼロに近づけるための操作量を前回の状態変数を反映して定め、前記状態変数を更新する補償器と、
前記補償器からの前記操作量に基づき前記制御用回転位相を逐次制御する通電タイミング生成部と、
を有し、
前記補償器は、前記複数の検出タイミングにそれぞれ対応する複数のレジスタを有し、前回の前記機械角周期における前記複数の検出タイミング毎に、前記状態変数を、対応する１個のレジスタにそれぞれ格納し、今回の前記機械角周期における前記複数の検出タイミング毎に、前記対応する１個のレジスタに格納された前記状態変数を反映して前記今回の機械角周期における前記操作量を定める、
モータシステム。
【請求項１４】
請求項１３記載のモータシステムにおいて、
前記検出回転位相は、前記３相モータの逆起電圧の位相であり、
前記複数の検出タイミングのそれぞれは、前記３相モータの逆起電圧が振幅の中間レベルを高電位側にクロスする立ち上がりゼロクロスのタイミングか、低電位側にクロスする立ち下がりゼロクロスのタイミングである、
モータシステム。
【請求項１５】
請求項１４記載のモータシステムにおいて、
前記３相モータは、“２×Ｎ（Ｎは２以上の整数）”極モータであり、
前記機械角周期は、電気角３６０°となる電気角周期をＮ回含み、
前記複数の検出タイミングは、３相中のいずれか１相の逆起電圧において前記電気角周期毎に生じる前記立ち上がりゼロクロスのタイミングか、前記電気角周期毎に生じる前記立ち下がりゼロクロスのタイミングの少なくとも一方を含む、
モータシステム。
【請求項１６】
請求項１４記載のモータシステムにおいて、
さらに、前記制御用回転位相に同期する基準タイミングを前記機械角周期内に所定の位相間隔で複数定め、前記逆起電圧の検出対象相に該当する前記３相モータの駆動入力端子を、前記基準タイミングを含んだ所定の位相期間でハイインピーダンス状態に制御するタイミング制御部を備え、
前記位相誤差検出部は、前記基準タイミングと、前記ハイインピーダンス状態の前記駆動入力端子に生じる前記立ち上がりゼロクロスのタイミングまたは前記立ち下がりゼロクロスのタイミングとの位相誤差を検出する、
モータシステム。
【請求項１７】
請求項１４記載のモータシステムにおいて、
前記補償器は、第１の動作モードまたは第２の動作モードで動作し、前記第１の動作モードでは、前記複数の検出タイミング毎に前記対応する１個のレジスタを用いて前記操作量を定め、前記第２の動作モードでは、前記複数の検出タイミング毎の前記状態変数を前記複数のレジスタに共通に格納することで、前記複数のレジスタを１個のレジスタとみなして前記操作量を定める、
モータシステム。
【請求項１８】
請求項１３記載のモータシステムにおいて、
前記状態変数は、前記操作量である、
モータシステム。
【請求項１９】
請求項１３記載のモータシステムにおいて、
前記状態変数は、前記操作量および前記位相誤差であり、
前記補償器は、
前記操作量を格納するための前記複数のレジスタとなる複数の第１のレジスタと、
前記位相誤差を格納するための前記複数のレジスタとなる複数の第２のレジスタと、
を有する、
モータシステム。
【請求項２０】
請求項１３記載のモータシステムにおいて、
前記ディスクは、ハードディスクである、
モータシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、モータ駆動装置およびモータシステムに関し、例えば、モータの通電タイミングの制御技術に関する。
【背景技術】
【０００２】
特許文献１には、モータ電流を制御する電流制御ループと、モータの通電タイミングを定めるＰＬＬ制御ループとを備えたモータ駆動制御回路が示される。ＰＬＬ制御ループを用いて逆起電圧（ＢＥＭＦ）に同期した通電タイミングを生成するため、所定の相に、当該通電タイミングを反映したマスク期間（無通電期間）が設けられる。ＰＬＬ制御ループは、マスク期間で所定の相の逆起電圧を観測しながら逆起電圧のゼロクロスタイミングを検出し、当該ゼロクロスタイミングがマスク期間の中心に保てるように通電タイミングを更新する。
【０００３】
特許文献２には、３相モータを正弦波で駆動するモータ駆動装置が示される。当該モータ駆動装置は、正弦波の１周期（３６０ｄｅｇの電気角）を６０ｄｅｇ毎の期間に区切り、各期間で３相中の１相の端子電圧を電源電圧または接地電源電圧に固定し、残りの２相の端子電圧をＰＷＭ信号によって制御する。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００３−１１１４８５号公報
【特許文献２】特開２０１７−８５７９９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
例えば、ハードディスクドライブ（明細書では、ＨＤＤと略す）等のモータシステムでは、大容量化に伴い、記録密度の向上のためにモータの回転ジッタを低減することが求められる。回転ジッタを低減するためには、モータの位置を高精度に検出する（ひいては、それに基づいて高精度な通電タイミングを生成する）必要がある。例えば、センサレスモータの位置を検出する方式として、特許文献１に示されるように、マスク期間内で逆起電圧のゼロクロスタイミングを検出する方式が知られている。
【０００６】
モータの位置は、通常、機械角３６０°の中の複数の検出タイミングで検出され、モータ駆動装置は、例えば、当該複数の検出タイミングに同期するような通電タイミングをＰＬＬ（Phase Locked Loop）制御等によって生成する。しかし、実際のモータでは、例えば、ロータの磁極位置のばらつきや、ステータや位置センサの取り付け位置のばらつき等といった各種製造ばらつきが生じる。これに伴い、各検出タイミングにもばらつき（明細書では、着磁ばらつきと呼ぶ）が生じ得る。着磁ばらつきは、ＰＬＬ制御等を介して通電タイミングの誤差を招くため、回転ジッタの増大要因となり得る。
【０００７】
後述する実施の形態は、このようなことを鑑みてなされたものであり、その他の課題と新規な特徴は、本明細書の記述及び添付図面から明らかになるであろう。
【課題を解決するための手段】
【０００８】
一実施の形態によるモータ駆動装置は、位相誤差検出部と、補償器と、通電タイミング生成部とを有し、３相モータの回転位相を検出することで得られる検出回転位相と、３相モータの通電タイミングを定めるための制御用回転位相とが同期するように制御用回転位相を制御する。位相誤差検出部は、３相モータの機械角周期の中で、複数の検出タイミングのそれぞれで検出回転位相と制御用回転位相との位相誤差を検出する。補償器は、複数の検出タイミングにそれぞれ対応する複数のレジスタを有し、検出された位相誤差を入力として、位相誤差をゼロに近づけるための操作量を前回の状態変数を反映して定め、状態変数を更新する。通電タイミング生成部は、定められた操作量に基づき制御用回転位相を逐次制御する。ここで、補償器は、前回の機械角周期における複数の検出タイミング毎に、状態変数を、対応する１個のレジスタにそれぞれ格納し、今回の機械角周期における複数の検出タイミング毎に、対応する１個のレジスタに格納された状態変数を反映して今回の機械角周期における操作量を定める。
【発明の効果】
【０００９】
前記一実施の形態によれば、モータに着磁ばらつきが生じる場合であっても、回転ジッタを低減することが可能になる。
【図面の簡単な説明】
【００１０】
【図１】本発明の実施の形態１によるモータシステムの概略構成例を示すブロック図である。
【図２】本発明の実施の形態１によるモータ駆動装置の概略構成例を示すブロック図である。
【図３】図２におけるＰＬＬ制御ループ周りの詳細な構成例を示すブロック図である。
【図４】図３における位置設定部の詳細な構成例を示す回路図である。
【図５】図３のＰＬＬ制御ループ周りの模式的な動作例を示すタイミングチャートである。
【図６】図５における一つの電気角周期内での動作例を示すタイミングチャートである。
【図７】図３のＰＬＬ制御ループ周りを変形した構成例を示すブロック図である。
【図８】本発明の実施の形態２によるモータ駆動装置の概略構成例を示すブロック図である。
【図９】図８におけるＰＬＬタイミング制御部周りの構成例を示す回路図である。
【図１０】図８および図９のモータ駆動装置の動作例を示すタイミングチャートである。
【図１１】本発明の実施の形態３によるモータ駆動装置において、ＰＬＬタイミング制御部周りの構成例を示す回路図である。
【図１２】図９のＰＬＬタイミング制御部を備えたモータ駆動装置の動作例を示すタイミングチャートである。
【図１３】本発明の実施の形態４によるモータ駆動装置において、図２のＰＬＬ制御ループ周りの詳細な構成例を示すブロック図である。
【図１４】本発明の実施の形態５によるモータ駆動装置の概略構成例を示すブロック図である。
【図１５】図１４におけるＰＬＬ制御ループ周りの詳細な構成例を示すブロック図である。
【図１６】図１４および図１５のモータ駆動装置の動作例を示すタイミングチャートである。
【図１７】本発明の比較例となるモータ駆動装置の概略構成例を示すブロック図である。
【図１８】図１７における３相ドライバ周りの構成例を示す回路図である。
【図１９】図１７のモータ駆動装置において、理想状態での動作例を示すタイミングチャートである。
【図２０】図１７における電流制御ループ周りの詳細な構成例を示すブロック図である。
【図２１】図１７におけるＰＬＬ制御ループ周りの詳細な構成例を示すブロック図である。
【図２２】図２１におけるＢＥＭＦ検出部の詳細な構成例を示す回路図である。
【図２３】図１９のマスク期間における詳細な動作例を示すタイミングチャートである。
【図２４】図１７におけるクロック生成部およびＰＬＬタイミング制御部の詳細な構成例を示す回路図である。
【図２５】図１７のモータ駆動装置において、着磁ばらつきが生じる場合の動作例を示すタイミングチャートである。
【発明を実施するための形態】
【００１１】
以下の実施の形態においては便宜上その必要があるときは、複数のセクションまたは実施の形態に分割して説明するが、特に明示した場合を除き、それらは互いに無関係なものではなく、一方は他方の一部または全部の変形例、詳細、補足説明等の関係にある。また、以下の実施の形態において、要素の数等（個数、数値、量、範囲等を含む）に言及する場合、特に明示した場合および原理的に明らかに特定の数に限定される場合等を除き、その特定の数に限定されるものではなく、特定の数以上でも以下でも良い。
【００１２】
さらに、以下の実施の形態において、その構成要素（要素ステップ等も含む）は、特に明示した場合および原理的に明らかに必須であると考えられる場合等を除き、必ずしも必須のものではないことは言うまでもない。同様に、以下の実施の形態において、構成要素等の形状、位置関係等に言及するときは、特に明示した場合および原理的に明らかにそうでないと考えられる場合等を除き、実質的にその形状等に近似または類似するもの等を含むものとする。このことは、上記数値および範囲についても同様である。
【００１３】
また、実施の形態の各機能ブロックを構成する回路素子は、特に制限されないが、公知のＣＭＯＳ（相補型ＭＯＳトランジスタ）等の集積回路技術によって、単結晶シリコンのような半導体基板上に形成される。
【００１４】
以下、本発明の実施の形態を図面に基づいて詳細に説明する。なお、実施の形態を説明するための全図において、同一の部材には原則として同一の符号を付し、その繰り返しの説明は省略する。
【００１５】
（実施の形態１）
《モータシステムの概略》
図１は、本発明の実施の形態１によるモータシステムの概略構成例を示すブロック図である。図１には、モータシステムの一例として、ハードディスクドライブ（ＨＤＤ）装置の構成例が示される。図１のＨＤＤ装置は、ＨＤＤコントローラＨＤＤＣＴ、キャッシュメモリＣＭＥＭ、リードライト装置ＲＷＩＣ、モータ駆動装置ＭＤＩＣ、およびディスク機構ＤＳＫＭを備える。ＨＤＤコントローラＨＤＤＣＴは、例えば、プロセッサ等を含んだシステムオンチップ（ＳｏＣ）等で構成される。キャッシュメモリＣＭＥＭおよびリードライト装置ＲＷＩＣは、例えば、それぞれ異なる半導体チップで構成される。
【００１６】
ディスク機構ＤＳＫＭは、ディスク（ここではハードディスク）ＤＳＫ、３相のスピンドルモータ（以降、３相モータと呼ぶ）ＳＰＭ、ヘッドＨＤ、アーム機構ＡＭ、ボイスコイルモータＶＣＭ、およびランプ機構ＲＭＰを備える。３相モータＳＰＭは、ディスクＤＳＫを回転駆動する。ボイスコイルモータＶＣＭは、ディスクＤＳＫの径方向におけるヘッドＨＤの位置をアーム機構ＡＭを介して制御する。ヘッドＨＤは、ボイスコイルモータＶＣＭによって定められる所定の位置において、ディスクＤＳＫ上にデータの読み書きを行う。ランプ機構ＲＭＰは、データの読み書きが実行されない場合のヘッドＨＤの退避箇所となる。
【００１７】
モータ駆動装置ＭＤＩＣは、例えば、１個の半導体チップで構成される。モータ駆動装置ＭＤＩＣは、ボイスコイルモータＶＣＭを駆動するため、ディジタル・アナログ変換器ＤＡＣおよびＶＣＭドライバＶＣＭＤＶを備える。また、モータ駆動装置ＭＤＩＣは、３相モータＳＰＭを駆動するため、ＰＬＬ制御ループＬＰＰＬＬ、電流制御ループＬＰＣＲ、出力制御部ＯＴＣＴおよび３相ドライバＳＰＭＤＶを備える。さらに、モータ駆動装置ＭＤＩＣは、３相モータＳＰＭやボイスコイルモータＶＣＭの駆動条件等を設定するため、シリアルインタフェースＳＩＦおよびパラメータ設定レジスタＰＲＥＧを備える。
【００１８】
ＰＬＬ制御ループＬＰＰＬＬは、３相モータＳＰＭの逆起電圧（明細書では、ＢＥＭＦとも呼ぶ）を検出することで３相モータＳＰＭの位置（回転位相）を検出し、ＢＥＭＦに同期する通電タイミングをＰＬＬ制御を用いて生成する。電流制御ループＬＰＣＲは、３相ドライバＳＰＭＤＶに流れる電流をセンス電流生成回路、センスアンプＳＡおよびアナログ・ディジタル変換器ＡＤＣ等を用いて検出し、当該検出した電流とパラメータ設定レジスタＰＲＥＧに設定された電流指示値との誤差を算出する。電流制御ループＬＰＣＲは、算出された誤差と予め組み込まれる正弦波パターンデータとに基づいて、当該誤差を反映した振幅を持つ正弦波電圧（正弦波電流）を生成するためのＰＷＭ（Pulse Width Modulation）デューティをＰＷＭ周期毎に定める。
【００１９】
出力制御部ＯＴＣＴは、電流制御ループＬＰＣＲからのＰＷＭデューティに基づき３相のＰＷＭ信号を生成し、当該３相のＰＷＭ信号を用いて、ＰＬＬ制御ループＬＰＰＬＬからの通電タイミングに基づく適切なタイミングで３相ドライバＳＰＭＤＶをスイッチング制御する。その結果、３相モータＳＰＭは、ＢＥＭＦに同期する３相の正弦波電流によって駆動される。
【００２０】
リードライト装置ＲＷＩＣは、ヘッドＨＤを駆動し、ヘッドＨＤにデータの読み書きを行わせる。ＨＤＤコントローラＨＤＤＣＴは、ＨＤＤ装置全体の制御を行う。ＨＤＤコントローラＨＤＤＣＴは、例えば、モータ駆動装置ＭＤＩＣとの間でシリアルインタフェースＳＩＦを介して通信を行うことで、モータ駆動装置ＭＤＩＣに３相モータＳＰＭやボイスコイルモータＶＣＭの駆動条件等を指示する。この駆動条件の中には、電流制御ループＬＰＣＲに対する電流指示値が含まれる。また、ＨＤＤコントローラＨＤＤＣＴは、リードライト装置ＲＷＩＣに対し、データの読み書きを指示する。この際に、リードライト装置ＲＷＩＣに対して指示する書き込みデータや、ヘッドＨＤからリードライト装置ＲＷＩＣを介して読み出されたデータは、キャッシュメモリＣＭＥＭに保持される。
【００２１】
次に、当該ＨＤＤ装置の全体動作について簡単に説明する。モータ駆動装置ＭＤＩＣは、ＨＤＤコントローラＨＤＤＣＴから３相モータＳＰＭの起動指令を受信すると、段階的に回転速度を上げながら目標の回転速度での定常回転に達するように３相モータＳＰＭ（すなわちディスクＤＳＫ）を制御する。定常回転では、３相モータＳＰＭは、３相の正弦波電流によって駆動される。この際に、正弦波電流の振幅および位相（周波数）は、それぞれ、電流制御ループＬＰＣＲおよびＰＬＬ制御ループＬＰＰＬＬによって制御される。３相モータＳＰＭが定常回転に到達したのち、ＶＣＭ駆動部ＶＣＭＤＶは、ヘッドＨＤをディスクＤＳＫ上に移動し、ヘッドＨＤは、ディスクＤＳＫ上でデータの読み書きを行う。
【００２２】
このようなモータシステムでは、高効率化に加えて、回転ジッタの低減が求められる。特に、ＨＤＤ装置では、サーボ情報を書き込む際に回転ジッタを低減することで記録密度の向上が図れ、ひいては、大容量化が図れる。回転ジッタを低減するためには、３相モータＳＰＭの位置を高精度に検出し、それに同期する高精度な通電タイミングで３相モータＳＰＭを駆動する必要がある。
【００２３】
そこで、ＰＬＬ制御ループＬＰＰＬＬは、アナログ・ディジタル変換器ＡＤＣを用いてＢＥＭＦのゼロクロスタイミングを高精度に検出し、ＢＥＭＦに同期する通電タイミングをＰＬＬ制御によって生成する。この際に、ＰＬＬ制御ループＬＰＰＬＬには、詳細は後述するが、着磁ばらつきが生じる場合であってもＢＥＭＦに同期する高精度な通電タイミングを生成するため、位置設定部が設けられる。なお、ＰＬＬ制御ループＬＰＰＬＬ内のアナログ・ディジタル変換器ＡＤＣは、回路規模を低減するため、電流制御ループＬＰＣＲ内のアナログ・ディジタル変換器ＡＤＣと共通化することも可能である。
【００２４】
《モータ駆動装置（比較例）の概略》
ここで、実施の形態のモータ駆動装置の説明に先立ち、比較例となるモータ駆動装置の構成および動作について説明する。図１７は、本発明の比較例となるモータ駆動装置の概略構成例を示すブロック図である。図１８は、図１７における３相ドライバ周りの構成例を示す回路図である。図１９は、図１７のモータ駆動装置において、理想状態での動作例を示すタイミングチャートである。
【００２５】
図１７に示すモータ駆動装置は、図１に示したように、ＰＬＬ制御ループＬＰＰＬＬ’と、電流制御ループＬＰＣＲと、出力制御部ＯＴＣＴと、３相ドライバＳＰＭＤＶと、シリアルインタフェースＳＩＦと、パラメータ設定レジスタＰＲＥＧ’とを備える。３相ドライバＳＰＭＤＶは、図１８に示されるように、プリドライバ部ＰＤＶＢＫと、インバータ部ＩＮＶＢＫとを備える。インバータ部ＩＮＶＢＫは、３相のハイサイドトランジスタＭ１ｕ，Ｍ１ｖ，Ｍ１ｗおよびロウサイドトランジスタＭ２ｕ，Ｍ２ｖ，Ｍ２ｗと、３相の電流検出回路ＩＤＥＴｕ，ＩＤＥＴｖ，ＩＤＥＴｗとを備える。３相のハイサイドトランジスタＭ１ｕ，Ｍ１ｖ，Ｍ１ｗおよびロウサイドトランジスタＭ２ｕ，Ｍ２ｖ，Ｍ２ｗは、例えば、ｎＭＯＳトランジスタ等で構成される。
【００２６】
３相のハイサイドトランジスタＭ１ｕ，Ｍ１ｖ，Ｍ１ｗは、３相の駆動出力端子ＯＵＴｕ，ＯＵＴｖ，ＯＵＴｗと、電源電圧（高電位側電源電圧）Ｖｐｗｒとの間にそれぞれ結合される。３相のロウサイドトランジスタＭ２ｕ，Ｍ２ｖ，Ｍ２ｗは、３相の駆動出力端子ＯＵＴｕ，ＯＵＴｖ，ＯＵＴｗと、接地電源電圧（低電位側電源電圧）ＧＮＤとの間にそれぞれ結合される。３相の電流検出回路ＩＤＥＴｕ，ＩＤＥＴｖ，ＩＤＥＴｗは、それぞれ、センス用のトランジスタ等を含み、各相のロウサイドトランジスタに流れる電流を検出し、検出した電流に比例するセンス電圧Ｖｓｅｎｓを共通のノードに出力する。
【００２７】
プリドライバ部ＰＤＶＢＫは、ｕ相、ｖ相、ｗ相のプリドライバＰＤＶｕ，ＰＤＶｖ，ＰＤＶｗを備える。ｕ相のプリドライバＰＤＶｕは、出力制御部ＯＴＣＴ（具体的にはＰＷＭ変調部ＰＷＭＭＤ）からのｕ相のＰＷＭ信号ＰＷＭｕに応じて、ハイサイドトランジスタＭ１ｕおよびロウサイドトランジスタＭ２ｕを相補的に駆動する。また、ｕ相のプリドライバＰＤＶｕは、ＰＷＭ変調部ＰＷＭＭＤからのｕ相のハイインピーダンス信号ＨＩＺｕに応じて、ハイサイドトランジスタＭ１ｕおよびロウサイドトランジスタＭ２ｕを共にオフ状態に駆動し、ｕ相の駆動出力端子ＯＵＴｕをハイインピーダンス状態に制御する。ハイインピーダンス信号ＨＩＺｕは、例えば、ｕ相のＢＥＭＦを検出する際に用いられる。
【００２８】
同様に、ｖ相のプリドライバＰＤＶｖは、ｖ相のＰＷＭ信号ＰＷＭｖやｖ相のハイインピーダンス信号ＨＩＺｖに応じてハイサイドトランジスタＭ１ｖおよびロウサイドトランジスタＭ２ｖを適宜制御する。ｗ相のプリドライバＰＤＶｗも、ｗ相のＰＷＭ信号ＰＷＭｗやｗ相のハイインピーダンス信号ＨＩＺｗに応じてハイサイドトランジスタＭ１ｗおよびロウサイドトランジスタＭ２ｗを適宜制御する。また、３相のプリドライバＰＤＶｕ，ＰＤＶｖ，ＰＤＶｗは、それぞれ、３相の駆動出力端子ＯＵＴｕ，ＯＵＴｖ，ＯＵＴｗに生じる実際の信号をパルス状に成形することで、３相の出力検出信号ＯＵＴＤＥＴｕ，ＯＵＴＤＥＴｖ，ＯＵＴＤＥＴｗを生成する。
【００２９】
また、図１８には、３相モータＳＰＭとセンス電流生成回路ＳＣＲＧの概略構成例が示される。３相モータＳＰＭは、この例では８極構造のロータを備える。この場合、３相モータＳＰＭの機械角３６０°の周期（機械角周期とも呼ぶ）の中に電気角３６０°の周期（電気角周期とも呼ぶ）が４周期含まれることになる。この電気角周期の視点で、３相モータＳＰＭは、等価的に、３相の抵抗Ｒｕ，Ｒｖ，Ｒｗ、コイルＬｕ，Ｌｖ，Ｌｗおよび逆起電圧（ＢＥＭＦ）Ｖｂｅｍｆ（Ｕ，Ｖ，Ｗ）によって表すことができる。例えば、ｕ相を例とすると、抵抗Ｒｕ、コイルＬｕおよび逆起電圧Ｖｂｅｍｆ（Ｕ）は、中点タップＣＴと、ｕ相の駆動入力端子ＩＮｕとの間に直列に結合される。ｖ相およびｗ相に関しても同様であり、対応相の抵抗、コイルおよび逆起電圧は、中点タップＣＴと対応相の駆動入力端子ＩＮｖ，ＩＮｗとの間に直列に結合される。
【００３０】
駆動入力端子ＩＮｕ，ＩＮｖ，ＩＮｗは、それぞれ、駆動出力端子ＯＵＴｕ，ＯＵＴｖ，ＯＵＴｗに結合される。ここで、明細書では、駆動入力端子ＩＮｕ，ＩＮｖ，ＩＮｗおよび駆動出力端子ＯＵＴｕ，ＯＵＴｖ，ＯＵＴｗのそれぞれを駆動端子とも呼ぶ。また、ｕ相の駆動端子（ＯＵＴｕ，ＩＮｕ）、ｖ相の駆動端子（ＯＵＴｖ，ＩＮｖ）、ｗ相の駆動端子（ＯＵＴｗ，ＩＮｗ）の電圧を、それぞれ、駆動端子電圧Ｖｕ，Ｖｖ，Ｖｗと呼び、中点タップＣＴの電圧を中点タップ電圧Ｖｃｔと呼ぶ。
【００３１】
センス電流生成回路ＳＣＲＧは、３相ドライバＳＰＭＤＶからのセンス電圧Ｖｓｅｎｓを、ＰＷＭ変調部ＰＷＭＭＤからの電流サンプル信号ＩＳＰＬに応じてサンプルする。センス電流生成回路ＳＣＲＧは、電流アンプ等を用いて、サンプルされたセンス電圧Ｖｓｅｎｓに比例するセンス電流Ｉｓｅｎｓを生成し、当該センス電流を電流検出用抵抗ＲＮＦに流す。
【００３２】
図１７に戻り、出力制御部ＯＴＣＴは、ＰＷＭ変調部ＰＷＭＭＤとＰＬＬタイミング制御部ＰＬＬＴＣとを備える。ＰＷＭ変調部ＰＷＭＭＤは、図１１で述べたように、３相ドライバＳＰＭＤＶへ３相のＰＷＭ信号ＰＷＭｕ，ＰＷＭｖ，ＰＷＭｗを生成する。ＰＬＬタイミング制御部ＰＬＬＴＣは、図１１で述べたように、３相ドライバＳＰＭＤＶへ３相のハイインピーダンス信号ＨＩＺｕ，ＨＩＺｖ，ＨＩＺｗを出力し、センス電流生成回路ＳＣＲＧへ電流サンプル信号ＩＳＰＬを出力する。
【００３３】
また、ＰＬＬタイミング制御部ＰＬＬＴＣは、これらの信号に加えて、ＢＥＭＦサンプル信号ＢＳＰＬ、ＢＥＭＦ極性信号ＤＩＲ、およびマスク信号ＭＳＫを出力する。ＢＥＭＦサンプル信号ＢＳＰＬは、ＢＥＭＦ検出部ＢＦＤＥＴが検出対象相のＢＥＭＦをサンプルおよびホールドする際のタイミングを定める。ＢＥＭＦ極性信号ＤＩＲは、検出対象相のＢＥＭＦの推移が正方向であるか負方向であるかを表す信号である。マスク信号ＭＳＫは、検出対象相のＢＥＭＦのゼロクロスタイミングが存在し得る所定の期間でアサートされる信号である。
【００３４】
出力制御部ＯＴＣＴは、さらに、相選択信号ＳＥＬおよびモータ位相信号ＰＨを出力する。相選択信号ＳＥＬは、３相中の１相を選択する信号であり、ＢＥＭＦ検出部ＢＦＤＥＴでの検出対象相を定める際に用いられる。モータ位相信号ＰＨは、３相モータＳＰＭの電気角３６０°の回転を１周期とするクロック信号であり、例えば、図１のＨＤＤコントローラＨＤＤＣＴが３相モータＳＰＭの回転速度を検出する際等で用いられる。具体的には、ＨＤＤコントローラＨＤＤＣＴは、例えば、モータ位相信号ＰＨの周波数（または周期）および３相モータＳＰＭの極数に基づいて３相モータＳＰＭの回転速度を検出する。そして、ＨＤＤコントローラＨＤＤＣＴは、当該回転速度を目標の回転速度に設定するための電流指示値（言い換えればトルク値）ＳＰＮＣＲを算出し、パラメータ設定レジスタＰＲＥＧ’に設定する。
【００３５】
ここで、ＰＬＬ制御ループＬＰＰＬＬ’および電流制御ループＬＰＣＲの詳細な説明に先立ち、その概略動作について図１９を用いて説明する。図１９では、理想的な３相モータＳＰＭを想定し、モータ駆動装置が当該３相モータＳＰＭを定常回転で駆動している期間での動作例が示される。モータ駆動装置は、位相が互いに電気角１２０°異なる３相の逆起電圧（ＢＥＭＦ）Ｖｂｅｍｆ（Ｕ，Ｖ，Ｗ）に同期する通電タイミングで、３相の駆動端子を正弦波電圧で駆動する。
【００３６】
図１９には、３相中のｕ相の駆動端子電圧Ｖｕが示される。駆動端子電圧Ｖｕは、ｕ相の逆起電圧（ＢＥＭＦ）Ｖｂｅｍｆ（Ｕ）と同位相の正弦波電圧となるように制御される。ただし、厳密には、モータ駆動装置は、駆動端子電圧ではなく、駆動端子電流と逆起電圧（ＢＥＭＦ）とが同位相となるように制御する。ここで、電流制御ループＬＰＣＲは、駆動端子電圧Ｖｕ（駆動端子電流）を正弦波電圧（正弦波電流）に整形する機能と、電流指示値（ひいては目標の回転速度）との誤差に応じて当該正弦波電圧（正弦波電流）の振幅、位相を定める機能とを担う。
【００３７】
電流制御ループＬＰＣＲは、正弦波電圧（正弦波電流）を生成するのに必要な各ＰＷＭ周期毎のＰＷＭデューティの推移を定めたソフトパターン（ＳＰ１，ＳＰ２）およびＰＷＭパターン（ＰＷＭ）を予め保持している。ソフトパターン（ＳＰ１，ＳＰ２）は、正弦波電圧（正弦波電流）の変化が大きい期間で用いられ、ＰＷＭパターン（ＰＷＭ）は、正弦波電圧（正弦波電流）の変化が小さい期間で用いられる。電流制御ループＬＰＣＲは、このようなパターンを用いて正弦波電圧（正弦波電流）を生成すると共に、図１８のセンス電流生成回路ＳＣＲＧで検出した各相の駆動電流と電流指示値との誤差を入力としてＰＩ制御（Ｐ：比例、Ｉ：積分）を行うことで正弦波電圧（正弦波電流）の振幅を定める。
【００３８】
また、電流制御ループＬＰＣＲは、正弦波電流と逆起電圧（ＢＥＭＦ）とを同位相に制御するための正弦波電圧の進角位相θｄｒｖを定める。進角位相θｄｒｖは、電流誤差検出部ＣＥＲＤＥＴで検出された電流振幅を表す駆動電流値ＩＳＰＮとＰＬＬ制御ループＬＰＰＬＬ’で生成された周期設定値ＮＣＮＴとにより定められる。
【００３９】
一方、ＰＬＬ制御ループＬＰＰＬＬ’は、各相のＢＥＭＦの位相（検出回転位相）を検出し、当該検出回転位相に同期する相切替信号（制御用回転位相）ＣＯＭＭをＰＬＬ制御によって生成する。３相の駆動端子電圧（駆動端子電流）の位相（言い換えれば通電タイミング）は、当該相切替信号ＣＯＭＭに基づいて制御される。ＰＬＬ制御ループＬＰＰＬＬ’は、各相のＢＥＭＦの位相を検出するため、相切替信号ＣＯＭＭに同期して機械角周期（電気角周期）内に所定の位相間隔（例えば、電気角６０°間隔）で複数設けられるマスク信号ＭＳＫを用いる。マスク信号ＭＳＫは、相切替信号ＣＯＭＭの周期毎に規定の位相期間（マスク期間Ｔｍｓｋと呼ぶ）で‘Ｌ’レベルにアサートされる。
【００４０】
当該マスク期間Ｔｍｓｋでは、ＢＥＭＦの検出対象相（例えばｕ相）の駆動端子は、図１８で述べたハイインピーダンス信号（ＨＩＺｕ）を用いてハイインピーダンス状態に制御される。その結果、例えば、ｕ相の駆動端子（ＯＵＴｕ，ＩＮｕ）には、当該ハイインピーダンス状態の期間（ハイインピーダンス期間と呼ぶ）ではｕの逆起電圧（ＢＥＭＦ）Ｖｂｅｍｆ（Ｕ）が観測され、それを除く期間では、電流制御ループＬＰＣＲに基づくｕ相の駆動端子電圧Ｖｕが印加される。
【００４１】
ＰＬＬ制御ループＬＰＰＬＬ’は、検出対象相（例えばｕ相）のＢＥＭＦのゼロクロスタイミングがマスク期間Ｔｍｓｋ内の基準タイミング（例えば中心タイミング）に保たれるように相切替信号ＣＯＭＭの位相（ひいてはマスク期間Ｔｍｓｋの位相）を制御する。ＢＥＭＦのゼロクロスタイミングとは、ＢＥＭＦが振幅の中間レベル（中点タップ電圧Ｖｃｔ）を高電位側にクロスする立ち上がりゼロクロスのタイミングか、または、低電位側にクロスする立ち下がりゼロクロスのタイミングである。ＰＬＬ制御ループＬＰＰＬＬ’は、例えば、ハイインピーダンス期間でＢＥＭＦのレベルをコンパレータを用いて監視し、ゼロクロスタイミングを検出した際にゼロクロス信号ＺＣＯＵＴをアサートする。
【００４２】
ただし、この場合、ゼロクロス信号ＺＣＯＵＴのアサートレベルは、立ち上がりゼロクロスか立ち下がりゼロクロスかに応じて変わる。そこで、この例では、出力制御部ＯＴＣＴからのＢＥＭＦ極性信号ＤＩＲが用いられ、それとゼロクロス信号ＺＣＯＵＴとに基づきゼロクロスＥＯＲ信号ＺＣＥＯＲが生成される。ＢＥＭＦ極性信号ＤＩＲは、ＢＥＭＦが高電位側から低電位側にゼロクロスする期間では“Ｌ”レベルに制御され、低電位側から高電位側にゼロクロスする期間では“Ｈ”レベルに制御される。ゼロクロスＥＯＲ信号ＺＣＥＯＲは、マスク期間Ｔｍｓｋにおいて、ＢＥＭＦの極性方向に関わらず、ゼロクロスタイミングまでは“Ｈ”レベルとなり、ゼロクロスタイミング以降に“Ｌ”レベルとなる。
【００４３】
ＰＬＬ制御ループＬＰＰＬＬ’は、マスク期間Ｔｍｓｋ内の基準タイミング（中心タイミング）と、ゼロクロスタイミングとの位相誤差を誤差カウンタを用いて検出する。誤差カウンタは、マスク期間Ｔｍｓｋにおいて、ゼロクロスＥＯＲ信号ＺＣＥＯＲが“Ｈ”レベルの期間ではカウントアップ動作を行い、“Ｌ”レベルの期間ではカウントダウン動作を行う。その結果、マスク期間Ｔｍｓｋの終了時点のカウント値が最終的な位相誤差ＰＥＲＲとなる。ＰＬＬ制御ループＬＰＰＬＬ’は、当該位相誤差ＰＥＲＲを入力としてＰＩ制御を行うことで周期設定値ＮＣＮＴを算出し、当該周期設定値ＮＣＮＴを反映して、それに比例する周期を持つ相切替信号ＣＯＭＭを生成する。
【００４４】
なお、図１９のように理想モータにおける理想的な定常回転状態では、位相誤差ＰＥＲＲはゼロを維持する。この状態では、ＢＥＭＦの位相と通電タイミングの位相とが完全に同期している（一致している）ため、回転ジッタは生じない。一方、仮に、ゼロクロスタイミングがマスク期間Ｔｍｓｋの中心タイミングよりも早い場合、ＢＥＭＦの位相が進んでいる状態であり、最終的な位相誤差ＰＥＲＲは負の値となる。この場合、ＰＩ制御によって周期設定値ＮＣＮＴが小さくなることで、相切替信号ＣＯＭＭの周期が短くなり（言い換えれば位相が進み）、これに伴いマスク期間Ｔｍｓｋも位相が進む側にシフトするため、次の位相誤差検出時に負の位相誤差ＰＥＲＲが小さくなるように制御される。
【００４５】
逆に、ゼロクロスタイミングが中心タイミングよりも遅い場合、位相誤差ＰＥＲＲは、正の値となる。この場合、ＰＩ制御によって周期設定値ＮＣＮＴが大きくなることで、相切替信号ＣＯＭＭの周期が長くなり（言い換えれば位相が遅れ）、これに伴いマスク期間Ｔｍｓｋも位相が遅れる側にシフトするため、次の位相誤差検出時に正の位相誤差ＰＥＲＲが小さくなるように制御される。モータ位相信号ＰＨは、このようにして制御された相切替信号ＣＯＭＭに基づき生成され、３相モータＳＰＭの電気角３６０°の周期を表す信号となる。
【００４６】
図１７に戻り、ＰＬＬ制御ループＬＰＰＬＬ’は、ＢＥＭＦ検出部ＢＦＤＥＴと、位相誤差検出部ＰＨＥＤと、ＰＬＬ制御部（具体的にはＰＩ補償器）ＰＩＣＰ’と、クロック生成部ＣＧＥＮと、ＰＷＭ固定部ＰＷＭＦＣとを備える。ＢＥＭＦ検出部ＢＦＤＥＴは、相選択信号ＳＥＬに基づく検出対象相におけるＢＥＭＦのゼロクロスタイミングを検出する。
【００４７】
具体的には、ＢＥＭＦ検出部ＢＦＤＥＴは、図１９で述べたように検出対象相の駆動端子がハイインピーダンス状態に制御された状態で、マスク期間Ｔｍｓｋに含まれるＰＷＭ周期毎に、中点タップ電圧Ｖｃｔを基準とする駆動端子電圧を、ＢＥＭＦサンプル信号ＢＳＰＬに基づくサンプルタイミングでサンプルする。ＢＥＭＦ検出部ＢＦＤＥＴは、サンプルしたＢＥＭＦがゼロとなった場合にゼロクロス信号ＺＣＯＵＴをアサートする。なお、サンプルタイミングは、ＰＷＭ周期毎に各ＰＷＭ周期内のＰＷＭオン期間でアサートされる。
【００４８】
位相誤差検出部ＰＨＥＤは、概略的には、３相モータＳＰＭの回転位相を検出することで得られる検出回転位相と、３相モータＳＰＭの通電タイミングを定めるための制御用回転位相との位相誤差ＰＥＲＲを検出する。この例では、図１９で述べたように、検出回転位相は、ＢＥＭＦの位相であり、詳細には、ゼロクロス信号ＺＣＯＵＴのアサートタイミングに基づいて検出される位相である。一方、制御用回転位相は、相切替信号ＣＯＭＭ（言い換えれば通電タイミング）の位相であり、詳細には、それに同期するマスク期間Ｔｍｓｋ内の基準タイミング（中心タイミング）の位相である。
【００４９】
ＰＩ補償器ＰＩＣＰ’は、位相誤差ＰＥＲＲを逐次反映しながら位相誤差ＰＥＲＲをゼロに近づけるための周期設定値ＮＣＮＴ（すなわち操作量）をＰＩ制御によって逐次算出および出力する。言い換えれば、ＰＩ補償器ＰＩＣＰ’は、制御用回転位相となる相切替信号ＣＯＭＭの位相を検出回転位相となるＢＥＭＦの位相に同期させるための周期設定値ＮＣＮＴを算出する。クロック生成部（通電タイミング生成部）ＣＧＥＮは、周期設定値ＮＣＮＴに基づき相切替信号ＣＯＭＭの位相（ひいては周期（周波数））を逐次制御する。
【００５０】
具体的には、クロック生成部ＣＧＥＮは、図１９に示したように、周期設定値ＮＣＮＴに比例する周期を持ち、電気角３６０°の周期の中の６０°分の周期を持つ相切替信号ＣＯＭＭを生成する。また、クロック生成部ＣＧＥＮは、位相誤差検出部ＰＨＥＤの動作クロックとなる誤差カウンタクロックＥＲＲＣＬＫと、設定周期カウント値ＤＶＣＮＴとを生成する。設定周期カウント値ＤＶＣＮＴは、周期設定値ＮＣＮＴに基づいて１周期の長さが定められるクロックサイクルをカウントした値である。相切替信号ＣＯＭＭの周期は、当該クロックサイクルの例えば３２周期分等に定められる。
【００５１】
出力制御部ＯＴＣＴは、相切替信号ＣＯＭＭに基づいて３相モータＳＰＭの通電タイミングを定め、相切替信号ＣＯＭＭに基づいて前述したマスク信号ＭＳＫを含む各種信号を生成する。これにより、ＰＬＬ制御ループＬＰＰＬＬ’は、図１９で述べたように、マスク期間Ｔｍｓｋ内の中心タイミングにＢＥＭＦのゼロクロスタイミングが常時保たれるように相切替信号ＣＯＭＭの位相または周波数をフィードバック制御する。その結果、出力制御部ＯＴＣＴは、ＢＥＭＦの位相に同期する通電タイミングで３相モータＳＰＭを制御することができる。
【００５２】
ここで、通電タイミングをＢＥＭＦに高精度に同期させる（ひいては回転ジッタを低減する）ためには、ＢＥＭＦのゼロクロスタイミングを高精度に検出する必要がある。ただし、ＢＥＭＦ検出部ＢＦＤＥＴがＢＥＭＦを検出できる期間は、検出対象相（すなわちハイインピーダンス信号に伴う無通電相）を除く２相の通電相のＰＷＭ信号が共にオンレベルとなる期間に限定される。具体的には、２相の通電相の一方のハイサイドトランジスタと、２相の通電相の他方のロウサイドトランジスタとがオンとなる期間に限定される。
【００５３】
ＢＥＭＦのゼロクロスタイミングは、必ずしもこのオンレベルとなる期間に存在するとは限らず、一方の通電相がオフレベルとなる期間（言い換えれば、あるＰＷＭ周期［１］のオンレベル期間と次のＰＷＭ周期［２］のオンレベル期間との間）に存在する場合もある。この場合、ＢＥＭＦのゼロクロスタイミングは、ＰＷＭ周期［２］のオンレベル期間で検出されることになるため、タイミング誤差が生じる。このようなタイミング誤差を無くすため、この例では、ＰＷＭ固定部ＰＷＭＦＣが設けられる。ＰＷＭ固定部ＰＷＭＦＣは、詳細は図２１等で後述するが、概略的には、ＢＥＭＦのゼロクロスタイミングが存在し得るＰＷＭ周期を強制的にオンレベル期間に固定する。
【００５４】
電流制御ループＬＰＣＲは、センス電流生成回路ＳＣＲＧと、電流検出用抵抗ＲＮＦと、センスアンプＳＡと、アナログ・ディジタル変換器ＡＤＣと、電流誤差検出部ＣＥＲＤＥＴと、電流制御部（具体的にはＰＩ補償器）ＰＩＣＣと、駆動電圧位相生成部ＤＶＰＨＧと、正弦波駆動電圧生成部ＳＩＮＰＧとを備える。電流制御ループＬＰＣＲの詳細な構成および動作に関しては図２０で後述するため、ここでは簡単に説明する。
【００５５】
電流検出用抵抗ＲＮＦには、図１８で述べたように、センス電流生成回路ＳＣＲＧによって生成されるセンス電流Ｉｓｅｎｓが流れる。センス電流Ｉｓｅｎｓは、３相モータＳＰＭの各相に流れる電流に比例する電流となる。センスアンプＳＡは、電流検出用抵抗ＲＮＦの両端電圧を増幅し、アナログ・ディジタル変換器ＡＤＣは、センスアンプＳＡの出力電圧をディジタル値ＡＤＣＯに変換する。
【００５６】
電流誤差検出部ＣＥＲＤＥＴは、ディジタル信号ＡＤＣＯと電流指示値ＳＰＮＣＲとの電流誤差ＣＥＲＲを算出し、ＰＩ補償器ＰＩＣＣは、当該電流誤差ＣＥＲＲをゼロに近づけるためのＰＷＭオンカウント値を定める。駆動電圧位相生成部ＤＶＰＨＧは、所謂進角制御を行い、３相モータＳＰＭの駆動電流位相と駆動電圧位相の位相差を補償するための進角位相θｄｒｖを算出する。正弦波駆動電圧生成部ＳＩＮＰＧは、ＰＩ補償器ＰＩＣＣからのＰＷＭオンカウント値と駆動電圧位相生成部ＤＶＰＨＧからの進角位相θｄｒｖと、ＰＬＬ制御ループＬＰＰＬＬ’からの相切替信号ＣＯＭＭとに基づいて、ＰＷＭ周期毎のデューティ指示値ＰＷＭＰ，ＳＯＦＴＰを生成する。
【００５７】
パラメータ設定レジスタＰＲＥＧ’は、各種パラメータ（Ｋｐ１，Ｋｐ２，Ｋ１，Ｋ２，Ｋｃｐ，Ｋｃｉ，Ｋｒｅｖ（Ｕ，Ｌ））、ＰＷＭ周期設定値ＰＣＮＴ、電流指示値ＳＰＮＣＲ、ＢＥＭＦしきい値振幅Ｖｔｈｂおよびゼロクロスモード信号ＺＣＭＤを保持する。“Ｋｐ１”，“Ｋｐ２”は、ＰＬＬ制御用のＰＩ補償器ＰＩＣＰ’で用いられる制御ゲインであり、“Ｋｃｐ”，“Ｋｃｉ”は、電流制御用のＰＩ補償器ＰＩＣＣで用いられる制御ゲインである。
【００５８】
ここで、ＰＬＬ制御の制御周期はＢＥＭＦのゼロクロスタイミング毎となり、電流制御の制御周期はＰＷＭ周期毎となる。このため、例えば、制御ゲインＫｐ１，Ｋｐ２は、ＰＬＬ制御の制御帯域が数１００Ｈｚ程度となるように定められ、制御ゲインＫｃｐ，Ｋｃｉは、電流制御の制御帯域が数ｋＨｚ〜１０ｋＨｚ程度となるように定められる。“Ｋ１”，“Ｋ２”は、モータ定数を反映したパラメータであり、進角位相θｄｒｖを算出するために使用される。“ＫｒｅｖＵ，Ｌ”は、デューティ補正用のパラメータであり、出力制御部ＯＴＣＴで使用される。ＢＥＭＦしきい値振幅Ｖｔｈｂおよびゼロクロスモード信号ＺＣＭＤは、ＰＷＭ固定部ＰＷＭＦＣおよびＢＥＭＦ検出部ＢＦＤＥＴで使用される。
【００５９】
《電流制御ループ周りの詳細》
図２０は、図１７における電流制御ループ周りの詳細な構成例を示すブロック図である。図２０において、センス電流生成回路ＳＣＲＧ、電流検出用抵抗ＲＮＦ、センスアンプＳＡおよびアナログ・ディジタル変換器ＡＤＣは、図１８で述べたように、３相のロウサイドトランジスタ（ひいては３相モータＳＰＭ）に流れる３相の各駆動電流を検出し、その検出結果をディジタル値ＡＤＣＯで出力する。電流誤差検出部ＣＥＲＤＥＴは、電流指示値ＳＰＮＣＲと、アナログ・ディジタル変換器ＡＤＣからのディジタル値ＡＤＣＯとの電流誤差を、減算器ＳＢ１を用いて検出する。
【００６０】
ＰＩ補償器ＰＩＣＣは、積分器ＩＮＴを含み、電流誤差検出部ＣＥＲＤＥＴで検出された電流誤差を入力として、ＰＩ制御を行うことで、電流誤差を反映したＰＷＭデューティ値ＰＷＭＤを算出する。ＰＩ補償器ＰＩＣＣは、このＰＷＭデューティ値ＰＷＭＤと、ＰＷＭ周期設定値ＰＣＮＴとを乗算することでＰＷＭオンカウント値を算出する。この際に、ＰＩ制御で用いる比例ゲインＫｃｐおよび積分ゲインＫｃｉや、ＰＷＭ周期設定値ＰＣＮＴは、パラメータ設定レジスタＰＲＥＧ’で保持される。ＰＷＭ周期設定値ＰＣＮＴは、ＰＷＭ信号の１周期の時間をカウント値に換算した値であり、ＰＷＭオンカウント値は、ＰＷＭ信号の１周期におけるオン期間をカウント値に換算した値である。
【００６１】
正弦波駆動電圧生成部ＳＩＮＰＧは、ＰＩ補償器ＰＩＣＣからのＰＷＭオンカウント値およびＰＬＬ制御ループＬＰＰＬＬ’からの相切替信号ＣＯＭＭを受け、ＰＷＭ周期毎のデューティ指示値ＰＷＭＰ，ＳＯＦＴＰを生成する。当該デューティ指示値ＰＷＭＰ，ＳＯＦＴＰは、３相モータＳＰＭに対して３相の正弦波電圧を印加し、かつ、当該正弦波電圧の振幅をＰＷＭオンカウント値に応じた値に定めるための指示値となる。
【００６２】
具体的には、当該モータ駆動装置は、特許文献２の方式と同様に、正弦波の１周期（電気角３６０°）を電気角６０°毎の期間に区切り、各期間で３相の駆動出力端子ＯＵＴｕ，ＯＵＴｖ，ＯＵＴｗ中の１相を電源電圧Ｖｐｗｒまたは接地電源電圧ＧＮＤに固定し、残りの２相をＰＷＭ信号によって制御する。正弦波駆動電圧生成部ＳＩＮＰＧは、ＰＷＭ周期毎に、当該残りの２相のＰＷＭ信号のデューティ（すなわち、電気角６０°の期間内でＰＷＭ周期毎にデューティをどのように変化させるか）を定める。
【００６３】
詳細には、正弦波駆動電圧生成部ＳＩＮＰＧは、ＰＷＭパターン生成部ＰＰＧおよびソフトパターン（ＳＰ１，ＳＰ２）生成部ＳＰＧを備える。ＰＷＭパターン生成部ＰＰＧおよびソフトパターン生成部ＳＰＧは、図１９で述べたように、正弦波を生成するためのデューティパターンが規定された正規化テーブル等を予め含む。ＰＷＭパターン生成部ＰＰＧおよびソフトパターン生成部ＳＰＧは、それぞれ、ＰＷＭ周期毎に、当該正規化テーブル等の値にＰＷＭオンカウント値に基づく重み付けを行うことでデューティ指示値ＰＷＭＰ，ＳＯＦＴＰを生成する。
【００６４】
出力制御部ＯＴＣＴは、デューティ補正部ＤＣＰｐ，ＤＣＰｓと、ＰＷＭ変調部ＰＷＭＭＤとを備える。デューティ補正部ＤＣＰｐは、３相ドライバＳＰＭＤＶの入出力間で生じるデューティの誤差を検出し、デューティ指示値ＰＷＭＰに当該誤差を相殺する補正値を加えることで補正後デューティ指示値ＰＷＭＲを生成する。具体的には、デューティ補正部ＤＣＰｐは、３相ドライバＳＰＭＤＶからの出力検出信号ＯＵＴＤＥＴを受けて実際のデューティを検出し、これとデューティ指示値ＰＷＭＰとの差分に基づいて補正値を定める。
【００６５】
さらに、デューティ補正部ＤＣＰｐは、デューティ指示値ＰＷＭＰがデューティ補正パラメータＫｒｅｖＵ，Ｌで定められるデューティよりも大きい場合には、所定の演算式に基づいて補正値を定める。すなわち、デューティ指示値ＰＷＭＰが大きい場合には、トランジスタのオン・オフが不十分となることにより、デューティ指示値ＰＷＭＰが小さい場合とは異なる補正値が必要とされる場合がある。デューティ補正部ＤＣＰｐは、当該補正値を演算式に基づいて定める。デューティ補正部ＤＣＰｐの場合と同様に、デューティ補正部ＤＣＰｓは、デューティ指示値ＳＯＦＴＰに所定の補正値を加えることで補正後デューティ指示値ＳＯＦＴＲを生成する。
【００６６】
ＰＷＭ変調部ＰＷＭＭＤは、図１８に示したように、３相のＰＷＭ信号ＰＷＭｕ，ＰＷＭｖ，ＰＷＭｗを用いて３相ドライバＳＰＭＤＶを制御する。３相モータＳＰＭを正弦波電圧で駆動する際、ＰＷＭ変調部ＰＷＭＭＤは、相切替信号ＣＯＭＭに基づく電気角６０°の期間毎に、１相（例えばｕ相）のハイサイドトランジスタまたはロウサイドトランジスタをオンに固定することで、当該１相の駆動出力端子（ＯＵＴｕ）を電源電圧Ｖｐｗｒまたは接地電源電圧ＧＮＤに固定する。そして、ＰＷＭ変調部ＰＷＭＭＤは、補正後デューティ指示値ＰＷＭＲ，ＳＯＦＴＲに基づき、残りの２相（ｖ相，ｗ相）のＰＷＭ信号（ＰＷＭｖ，ＰＷＭｗ）をそれぞれ生成する。
【００６７】
このように、ＰＷＭ変調部ＰＷＭＭＤは、電気角６０°毎の切り替えを行いながら、３相ドライバＳＰＭＤＶを制御する。また、３相モータＳＰＭの駆動電流は正弦波状であるため、電流検出用抵抗ＲＮＦで検出される電流には、図２０に示されるように、正弦波の頂点を含む電気角６０°の周期を繰り返したような脈動成分が含まれる。一方、電流指示値ＳＰＮＣＲは直流成分である。このため、電流指示値ＳＰＮＣＲをそのまま用いた場合、ディジタル値ＡＤＣＯとの電流誤差を高精度に検出できない恐れがある。そこで、電流誤差検出部ＣＥＲＤＥＴは、この正弦波波形を模写したディジタルパターンを生成する指示電流補正部ＣＲＣＰと、ピーク値格納部ＰＫＨＤとを備える。
【００６８】
電流誤差検出部ＣＥＲＤＥＴは、乗算器ＭＵＬ１を用いて電流指示値ＳＰＮＣＲと指示電流補正回路ＣＲＣＰからのディジタルパターンとを乗算し、当該乗算後の電流指示値ＳＰＮＣＲ＿Ｍを減算器ＳＢ１へ出力する。また、指示電流補正回路ＣＲＣＰは、正弦波波形のピークタイミングでトリガ信号ＵＰＡＤＣを出力し、ピーク値格納部ＰＫＨＤは、当該トリガ信号ＵＰＡＤＣに応じてディジタル値ＡＤＣＯを駆動電流値ＩＳＰＮとしてラッチする。当該駆動電流値ＩＳＰＮは、駆動電流の振幅を表す。
【００６９】
駆動電圧位相生成部ＤＶＰＨＧは、ＰＬＬ制御ループＬＰＰＬＬ’からの周期設定値ＮＣＮＴと、電流誤差検出部ＣＥＲＤＥＴからの駆動電流値ＩＳＰＮと、パラメータ設定レジスタＰＲＥＧ’からのパラメータＫ１，Ｋ２とを用いて所定の演算を行うことで進角位相θｄｒｖを算出する。正弦波駆動電圧生成部ＳＩＮＰＧは、進角位相θｄｒｖに基づく電気角だけＰＷＭパターンおよびソフトパターンをシフトさせ、このシフトさせたパターンを用いてデューティ指示値ＰＷＭＰ，ＳＯＦＴＰを生成する。
【００７０】
すなわち、３相モータＳＰＭでは、ＢＥＭＦの位相と駆動電流位相とを一致させることで高効率化が図れる。ただし、実際の動作は電圧駆動であるため、ＢＥＭＦの位相と駆動電流位相とを一致させるべく駆動電圧位相を制御する必要がある。詳細には、３相モータＳＰＭの各種係数（抵抗成分、インダクタンス成分、回転速度、逆起電圧定数、駆動電流）に応じて、ＢＥＭＦの位相よりも進角位相θｄｒｖだけ進んだ位相で３相モータＳＰＭに駆動電圧を印加するような制御（進角制御と呼ばれる）が必要となる。そこで、駆動電圧位相生成部ＤＶＰＨＧは、これらの各種係数を変数とする規定の演算式に基づいて進角位相θｄｒｖを算出する。この際に、抵抗成分、インダクタンス成分および逆起電圧定数は、パラメータＫ１，Ｋ２によって定められ、回転速度は周期設定値ＮＣＮＴによって定められ、駆動電流は、駆動電流値ＩＳＰＮによって定められる。
【００７１】
《ＰＬＬ制御ループ周り（比較例）の詳細》
図２１は、図１７におけるＰＬＬ制御ループ周りの詳細な構成例を示すブロック図である。図２２は、図２１におけるＢＥＭＦ検出部の詳細な構成例を示す回路図である。図２２において、ＢＥＭＦ検出部ＢＦＤＥＴは、差動増幅回路ＤＡＭＰと、サンプルホールド回路ＳＨと、増幅回路ＳＡＭＰと、ロウパスフィルタＬＰＦと、コンパレータＣＭＰｚｃと、バイパススイッチＳＷｂとを備える。差動増幅回路ＤＡＭＰは、オペアンプＯＰＡ１および複数組の抵抗素子Ｒ１，Ｒ２を含み、中点タップ電圧Ｖｃｔを基準として、相選択信号ＳＥＬによって選択された相の駆動端子電圧（Ｖｕ，Ｖｖ，Ｖｗ）を、抵抗素子Ｒ１，Ｒ２の抵抗値に基づくゲインで増幅する。
【００７２】
サンプルホールド回路ＳＨは、当該差動増幅回路ＤＡＭＰの出力電圧をＢＥＭＦサンプル信号ＢＳＰＬに応じてサンプルし、容量素子Ｃｓｈに保持する。ＢＥＭＦサンプル信号ＢＳＰＬは、マスク期間Ｔｍｓｋ内のＰＷＭ周期毎にアサートされる。増幅回路ＳＡＭＰは、オペアンプＯＰＡ２および抵抗素子Ｒ３，Ｒ４を含み、容量素子Ｃｓｈで保持される電圧を抵抗素子Ｒ３，Ｒ４の抵抗値に基づくゲインで増幅する。増幅回路ＳＡＭＰは、後段のコンパレータＣＭＰｚｃの検出感度を向上させるために設けられる。ただし、場合によっては、増幅回路ＳＡＭＰを省略することも可能である。
【００７３】
ロウパスフィルタＬＰＦは、抵抗素子Ｒｆｔおよび容量素子Ｃｆｔを含み、増幅回路ＳＡＭＰによって増幅された逆起電圧（ＢＥＭＦ）Ｖｂｆをフィルタリングする。ロウパスフィルタＬＰＦは、ＢＥＭＦのサンプルによって生じるサンプリング誤差を低減するために設けられ、サンプルに伴い容量素子Ｃｓｈで保持される階段状の電圧をスムージングする。
【００７４】
コンパレータＣＭＰｚｃは、ロウパスフィルタＬＰＦの出力電圧Ｖｏ２とゼロ電圧（接地電源電圧ＧＮＤ）とを比較することで、ゼロクロス信号ＺＣＯＵＴを生成する。この例では、コンパレータＣＭＰｚｃは、出力電圧Ｖｏ２がゼロ電圧より高い場合に“Ｈ”レベルを出力する。また、この例では、ゼロクロス信号ＺＣＯＵＴのチャタリングを防止するためヒステリシスコンパレータが用いられる。バイパススイッチＳＷｂは、ロウパスフィルタＬＰＦの抵抗素子Ｒｆｔに並列に結合され、ゼロクロスモード信号ＺＣＭＤに応じてオンに制御された際にはロウパスフィルタＬＰＦをバイパスし、オフに制御された際にはロウパスフィルタＬＰＦをバイパスしない。
【００７５】
図２１において、位相誤差検出部ＰＨＥＤは、ＥＸＯＲゲートＥＯＲと、誤差カウンタＥＣＵＮＴとを備え、概略的には、図１７で述べたように、３相モータＳＰＭの回転位相を検出することで得られる検出回転位相と、３相モータＳＰＭの通電タイミングを定めるための制御用回転位相との位相誤差ＰＥＲＲを検出する。ＥＸＯＲゲートＥＯＲは、ＢＥＭＦ検出部ＢＦＤＥＴからのゼロクロス信号ＺＣＯＵＴと、出力制御部ＯＴＣＴからのＢＥＭＦ極性信号ＤＩＲとのＥＸＯＲ演算を行うことで、図１９に示したようなゼロクロスＥＯＲ信号ＺＣＥＯＲを出力する。
【００７６】
誤差カウンタＥＣＵＮＴは、マスク信号ＭＳＫのアサート期間（マスク期間）で動作し、クロック生成部ＣＧＥＮからの誤差カウンタクロックＥＲＲＣＬＫを用いて、ゼロクロスＥＯＲ信号ＺＣＥＯＲの論理レベルに応じてカウントアップ動作またはカウントダウン動作を行う。例えば、誤差カウンタＥＣＵＮＴは、図１９に示したように、ゼロクロスＥＯＲ信号ＺＣＥＯＲの論理レベルが“Ｈ”レベルの間はカウントアップ動作を行い、“Ｌ”レベルの間はカウントダウン動作を行う。その結果、誤差カウンタＥＣＵＮＴの最終カウント値として得られる位相誤差ＰＥＲＲは、ＢＥＭＦのゼロクロスタイミングがマスク期間Ｔｍｓｋの中心タイミングよりも進んでいる際には負の値となり、遅れている際には正の値となる。
【００７７】
ＰＩ補償器ＰＩＣＰ’は、概略的には、図１７で述べたように、位相誤差ＰＥＲＲを逐次反映しながら位相誤差ＰＥＲＲをゼロに近づけるための周期設定値ＮＣＮＴ（すなわち操作量）をＰＩ制御によって逐次算出および出力する。この例では、ＰＩ補償器ＰＩＣＰ’は、位相誤差レジスタＲＥＧＰに保持される前回（前サンプル周期での）位相誤差ＰＥＲＲと、周期設定レジスタＲＥＧＮに保持される前回（前サンプル周期での）周期設定値ＮＣＮＴと、制御ゲインＫｐ１，Ｋｐ２とを用いてＰＩ制御を行っている。
【００７８】
この際に、ＰＩ補償器ＰＩＣＰ’は、周期設定レジスタＲＥＧＮに保持される前サンプル周期での周期設定値ＮＣＮＴを制御ゲインに反映させている。これにより、制御帯域が回転速度に比例して変化するため、ＰＩ補償器ＰＩＣＰ’において、広範囲なロックレンジ、最適な応答性、安定性を得ることが可能になる。すなわち、仮に、回転速度が低い場合に合わせて固定の制御帯域を定めると、回転速度が高い場合の応答性が低下し、逆に、回転速度が高い場合に合わせて固定の制御帯域を定めると、回転速度が低い場合の安定性が低下する。当該ＰＩ補償器ＰＩＣＰ’を用いると、このような問題を解決することができる。
【００７９】
クロック生成部（通電タイミング生成部）ＣＧＥＮは、周期設定値ＮＣＮＴに基づき相切替信号（制御用回転位相）ＣＯＭＭの位相（および周波数）を逐次制御する。具体的には、相切替信号ＣＯＭＭは、周期設定値ＮＣＮＴが大きくなるほど周期が長くなる（周波数が低くなる）ように制御される。また、クロック生成部ＣＧＥＮは、設定周期カウント値ＤＶＣＮＴや誤差カウンタクロックＥＲＲＣＬＫを生成する。誤差カウンタクロックＥＲＲＣＬＫは、誤差カウンタＥＣＵＮＴの出力が３相モータＳＰＭの回転速度に対して常に一定の検出ゲインを持つように調整されたクロックである。具体的には、誤差カウンタクロックＥＲＲＣＬＫは、回転速度が低くなるほど（周期設定値ＮＣＮＴが大きくなるほど）周期が長くなる（周波数が低くなる）ように制御される。
【００８０】
ＰＷＭ固定部ＰＷＭＦＣは、アナログ・ディジタル変換器ＡＤＣと、ＢＥＭＦレベル判定部ＢＬＶＪＧと、ＰＷＭ固定シーケンサＰＷＭＦＳＱとを備える。ＰＷＭ固定部ＰＷＭＦＣは、概略的には、まず、ＢＥＭＦ検出部ＢＦＤＥＴからの逆起電圧（ＢＥＭＦ）Ｖｂｆと、ゼロクロス信号ＺＣＯＵＴ（この例では、それと等価なゼロクロスＥＯＲ信号ＺＣＥＯＲ）とを監視する。そして、ＰＷＭ固定部ＰＷＭＦＣは、逆起電圧Ｖｂｆの振幅レベルがＢＥＭＦしきい値振幅Ｖｔｈｂよりも小さくなった後の所定のタイミングからゼロクロス信号ＺＣＯＵＴ（ゼロクロスＥＯＲ信号ＺＣＥＯＲ）がアサートされるまでの期間（オン固定期間と呼ぶ）で、ＰＷＭ固定信号ＰＷＭＦＩＸをアサートレベルに制御する。ＰＷＭ変調部ＰＷＭＭＤは、ＰＷＭ固定信号ＰＷＭＦＩＸを受け、オン固定期間で、２相の通電相の一方の相のハイサイドトランジスタと他方の相のロウサイドトランジスタをＰＷＭ周期に関わらずオンに固定する。
【００８１】
具体的には、アナログ・ディジタル変換器ＡＤＣは、ＢＥＭＦ検出部ＢＦＤＥＴからの逆起電圧Ｖｂｆ（詳細にはその振幅の絶対値）をディジタル値ＡＤＣＢＦに変換する。ＢＥＭＦレベル判定部ＢＬＶＪＧは、コンパレータＣＭＰｌを備え、アナログ・ディジタル変換器ＡＤＣからのディジタル値ＡＤＣＢＦとＢＥＭＦしきい値振幅Ｖｔｈｂに対応するディジタル値とを比較し、その比較結果となるレベル検出信号ＬＶＤＥＴを出力する。ここでは、コンパレータＣＭＰｌは、ディジタル値ＡＤＣＢＦ（逆起電圧Ｖｂｆの振幅の絶対値）がＢＥＭＦしきい値振幅Ｖｔｈｂよりも小さくなると、“Ｈ”レベルのレベル検出信号ＬＶＤＥＴを出力する。
【００８２】
ＰＷＭ固定シーケンサＰＷＭＦＳＱは、アンドゲートＡＤ１〜ＡＤ３と、オアゲートＯＲ１と、フリップフロップＦＦ１〜ＦＦ３とを備える。ＰＷＭ固定シーケンサＰＷＭＦＳＱは、コンパレータＣＭＰｌからのレベル検出信号ＬＶＤＥＴと、ゼロクロス信号ＺＣＯＵＴ（詳細には、ゼロクロスＥＯＲ信号ＺＣＥＯＲ）とを受け、オン固定期間でアサートレベル（ここでは“Ｈ”レベル）となるＰＷＭ固定信号ＰＷＭＦＩＸを生成する。
【００８３】
図２３は、図１９のマスク期間における詳細な動作例を示すタイミングチャートである。図２３に示されるように、検出対象相となる無通電相（ここではｕ相）の駆動端子電圧Ｖｕは、残り２相の通電相（ｖ相，ｗ相）のＰＷＭ信号に同期して変化している。ＰＷＭ信号が“Ｈ”レベル（オンレベル）の期間（ＰＷＭオン期間Ｔｏｎと呼ぶ）では、２相の通電相（ｖ相，ｗ相）の駆動端子電圧Ｖｖ，Ｖｗは、一方がハイサイドトランジスタのオンに伴い電源電圧Ｖｐｗｒとなり、他方がロウサイドトランジスタのオンに伴い接地電源電圧ＧＮＤとなる。これにより、中点タップ電圧Ｖｃｔは、“Ｖｐｗｒ／２”となり、無通電相の駆動端子電圧Ｖｕは、当該中点タップ電圧Ｖｃｔに逆起電圧Ｖｂｅｍｆ（Ｕ）を重畳した電圧となる。
【００８４】
一方、ＰＷＭ信号が“Ｌ”レベル（オフレベル）の期間（ＰＷＭオフ期間Ｔｏｆｆと呼ぶ）では、２相の通電相（ｖ相，ｗ相）のハイサイドまたはロウサイドで還流動作が行われる。図２３には、ハイサイドで還流動作が行われる場合が例示される。還流動作に伴い、２相の通電相の駆動端子電圧Ｖｖ，Ｖｗは、共にハイサイドトランジスタのオンに伴い電源電圧Ｖｐｗｒ付近となるか、共にロウサイドトランジスタのオンに伴い接地電源電圧ＧＮＤ付近となる。このため、ＰＷＭオフ期間Ｔｏｆｆで当該駆動端子電圧Ｖｕから逆起電圧Ｖｂｅｍｆ（Ｕ）を検出することは容易でない。そこで、ＢＥＭＦのゼロクロスタイミングの検出は、ＰＷＭ周期Ｔｐｗｍ毎に、各ＰＷＭ周期Ｔｐｗｍ内のＰＷＭオン期間Ｔｏｎで行われる。
【００８５】
ＢＥＭＦ検出のためのＢＥＭＦサンプル信号ＢＳＰＬは、リンギングを避けるようなタイミングに設定され、この例ではＰＷＭ周期Ｔｐｗｍの中心以降のタイミングに設定される。また、電流制御のための電流サンプル信号ＩＳＰＬや、これに伴うアナログ・ディジタル変換器ＡＤＣの動作期間も、ＰＷＭ周期Ｔｐｗｍの中心タイミングを起点に設定される。これにより、ＰＷＭ周期Ｔｐｗｍ内における駆動電流の平均値をサンプルすることができる。
【００８６】
図２２のサンプルホールド回路ＳＨは、ＢＥＭＦサンプル信号ＢＳＰＬのアサートレベル（“Ｈ”レベル）に応じて、中点タップ電圧Ｖｃｔを基準とする無通電相の駆動端子電圧Ｖｕをサンプルする。その結果、ロウパスフィルタＬＰＦへの入力電圧（Ｖｂｆ）は、ＢＥＭＦサンプル信号ＢＳＰＬの“Ｈ”レベル期間では逆起電圧Ｖｂｅｍｆ（Ｕ）と同様に推移し、“Ｌ”レベル期間では保持に伴い一定レベルとなるため、階段状の波形となる。ロウパスフィルタＬＰＦは、階段状の波形となる入力電圧（Ｖｂｆ）をスムージングすることで出力電圧Ｖｏ２を生成する。
【００８７】
しかし、このように、ＰＷＭオン期間ＴｏｎとＰＷＭオフ期間Ｔｏｆｆを含む各ＰＷＭ周期Ｔｐｗｍ内のＰＷＭオン期間ＴｏｎでＢＥＭＦをサンプルする方式では、図１７で述べたように、例えば、ＢＥＭＦのゼロクロスタイミングがＰＷＭオフ期間Ｔｏｆｆに位置するような場合に誤差が生じ得る。そこで、ここでは、まず、ＰＷＭ固定部ＰＷＭＦＣ内のＢＥＭＦレベル判定部ＢＬＶＪＧが、階段状の逆起電圧Ｖｂｆに対してＢＥＭＦしきい値振幅Ｖｔｈｂを用いて判定を行う。
【００８８】
ＢＥＭＦしきい値振幅Ｖｔｈｂは、１回のＰＷＭ周期Ｔｐｗｍで生じるＢＥＭＦの変化量を“Ｄｂｅｍｆ”として、例えば、“２×Ｄｂｅｍｆ”等に定められる。当該ＢＥＭＦしきい値振幅Ｖｔｈｂは、例えば、予めシミュレーション等によって求められ、装置外部からパラメータ設定レジスタＰＲＥＧ’に設定される。ＢＥＭＦレベル判定部ＢＬＶＪＧは、アナログ・ディジタル変換器ＡＤＣによる変換期間（Ｂ）の終了タイミングで、逆起電圧Ｖｂｆの振幅レベルがＢＥＭＦしきい値振幅Ｖｔｈｂよりも小さくなった場合、“Ｈ”レベルのレベル検出信号ＬＶＤＥＴを出力する。
【００８９】
レベル検出信号ＬＶＤＥＴが“Ｈ”レベルになると、その後のＢＥＭＦサンプル信号ＢＳＰＬの立ち上がりエッジでＰＷＭ固定信号ＰＷＭＦＩＸが“Ｈ”レベルに制御される。ＰＷＭ固定信号ＰＷＭＦＩＸが“Ｈ”レベルの期間（オン固定期間Ｔｏｆｘ）では、通電相のＰＷＭ信号は“Ｈ”レベルに固定され、ＢＥＭＦサンプル信号ＢＳＰＬも“Ｈ”レベルに固定される。その結果、図２２のＢＥＭＦ検出部ＢＦＤＥＴは、当該オン固定期間Ｔｏｆｘでは、ＢＥＭＦをＰＷＭ周期毎ではなく継続的に検出する。これに伴い、逆起電圧Ｖｂｆも、階段状ではなく連続的な波形となる。
【００９０】
その後、ゼロクロス信号ＺＣＯＵＴ（ゼロクロスＥＯＲ信号ＺＣＥＯＲ）がアサートされると、ＰＷＭ固定信号ＰＷＭＦＩＸは“Ｌ”レベルに制御される。これに応じて、通電相のＰＷＭ信号およびＢＥＭＦサンプル信号ＢＳＰＬの“Ｈ”レベル固定も解除され、通常の動作に戻る。すなわち、通電相のＰＷＭ信号は、所定のデューティ指示値に基づく信号となり、ＢＥＭＦサンプル信号ＢＳＰＬは、ＰＷＭ周期Ｔｐｗｍ毎にＰＷＭオン期間Ｔｏｎでアサートされる信号となる。
【００９１】
このようなＰＷＭ固定部ＰＷＭＦＣの動作により、ＢＥＭＦのゼロクロスタイミングを高精度に検出することが可能になり、ひいては、回転ジッタを低減することが可能になる。なお、図２２に示したバイパススイッチＳＷｂは、このようにＰＷＭ固定部ＰＷＭＦＣを用いたゼロクロス検出動作を行う場合には、パラメータ設定レジスタＰＲＥＧ’のゼロクロスモード信号ＺＣＭＤに基づきロウパスフィルタＬＰＦをバイパスする。これにより、フィルタリングに伴う遅延時間が無くなり、ゼロクロスタイミングをより高精度に検出できるようになる。
【００９２】
一方、ＢＥＭＦの振幅は、３相モータＳＰＭの回転速度に依存して変わるため、ＢＥＭＦしきい値振幅Ｖｔｈｂに関しても、回転速度に依存した変更が必要とされる。そこで、図２３に示したようなＰＷＭ固定部ＰＷＭＦＣを用いたゼロクロス検出動作は、例えば、回転ジッタが問題となる定常回転時に有効化され、３相モータＳＰＭの起動時等では、無効化される。無効化された状態では、通常通り、ＰＷＭオン期間ＴｏｎとＰＷＭオフ期間Ｔｏｆｆを含む各ＰＷＭ周期Ｔｐｗｍ内のＰＷＭオン期間ＴｏｎでＢＥＭＦをサンプルする方式（ロウパスフィルタＬＰＦを経た階段状の逆起電圧Ｖｂｆを監視する方式）でゼロクロス検出が行われる。この有効化／無効化の切り替えは、ゼロクロスモード信号ＺＣＭＤによって行われる。
【００９３】
《クロック生成部およびＰＬＬタイミング制御部の詳細》
図２４は、図１７におけるクロック生成部およびＰＬＬタイミング制御部の詳細な構成例を示す回路図である。クロック生成部ＣＧＥＮは、カウンタＣＵＮＴｎ，ＣＵＮＴｄと、コンパレータＣＭＰｎ，ＣＭＰｃ１，ＣＭＰｃ２と、エラークロック生成部ＥＲＣＧとを備える。カウンタＣＵＮＴｎは、ディジタル制御用の基準クロックＣＫｒｅｆをトリガとしてカウントアップを行い、コンパレータＣＭＰｎは、カウンタＣＵＮＴｎのカウント値（ＴＣＮＴ）が周期設定値ＮＣＮＴに到達する時点でパルス信号を出力する。カウンタＣＵＮＴｎのカウント値（ＴＣＮＴ）は、このパルス信号（リセット信号ＴＣＮＴＲＳＴ）に応じてリセットされる。
【００９４】
カウンタＣＵＮＴｄは、コンパレータＣＭＰｎから出力されるパルス信号をトリガとしてカウントアップを行い、そのカウント値を設定周期カウント値ＤＶＣＮＴとして出力する。コンパレータＣＭＰｃ２は、設定周期カウント値ＤＶＣＮＴが所定の値（例えば３２）に到達する時点でパルス信号を出力する。カウンタＣＵＮＴｄの設定周期カウント値ＤＶＣＮＴは、このパルス信号（リセット信号ＤＣＮＴＲＳＴ）に応じてリセットされる。その結果、カウンタＣＵＮＴｄは、周期設定値ＮＣＮＴに基づく周期を３２周期カウントする（０〜３１を順次出力する）動作を繰り返す。
【００９５】
コンパレータＣＭＰｃ１は、設定周期カウント値ＤＶＣＮＴが０〜１５までの期間は“Ｈ”レベルを出力し、１６〜３１までの期間は“Ｌ”レベルを出力する。この出力信号は、相切替信号ＣＯＭＭとなる。エラークロック生成部ＥＲＣＧは、基準クロックＣＫｒｅｆを用いて、周期設定値ＮＣＮＴに応じた周期（周波数）を持つ誤差カウンタクロックＥＲＲＣＬＫを生成する。
【００９６】
ＰＬＬタイミング制御部ＰＬＬＴＣは、加算器ＡＤＤｈと、コンパレータＣＭＰｈ，ＣＭＰｍ１，ＣＭＰｍ２と、アンドゲートＡＤｈと、ナンドゲートＮＤｍと、極性信号生成部ＤＩＲＧとを備える。コンパレータＣＭＰｍ１は、設定周期カウント値ＤＶＣＮＴが２４〜３１の期間で“Ｈ”レベルを出力し、コンパレータＣＭＰｍ２は、設定周期カウント値ＤＶＣＮＴが０〜３１の期間で“Ｈ”レベルを出力する。ナンドゲートＮＤｍは、コンパレータＣＭＰｍ１，ＣＭＰｍ２の出力を論理演算することで、設定周期カウント値ＤＶＣＮＴが２４〜３１の期間でマスク信号ＭＳＫを“Ｌ”レベルにアサートする。
【００９７】
加算器ＡＤＤｈは、コンパレータＣＭＰｍ１の判定値（ここでは２４）に“−１”を加算した結果（すなわち２３）をコンパレータＣＭＰｈの判定値に定める。これにより、コンパレータＣＭＰｈは、設定周期カウント値ＤＶＣＮＴが２３〜３１の期間で“Ｈ”レベルを出力する。アンドゲートＡＤｈは、コンパレータＣＭＰｈ，ＣＭＰｍ２の出力を論理演算することで、マスク期間を含む設定周期カウント値ＤＶＣＮＴが２３〜３１の期間でハイインピーダンス信号ＨＩＺを“Ｈ”レベルにアサートする。極性信号生成部ＤＩＲＧは、相切替信号ＣＯＭＭの立ち上がりエッジ毎に極性反転を行うことでＢＥＭＦゼロクロス極性信号ＤＩＲを生成する。
【００９８】
なお、ここでは、ハイインピーダンス信号ＨＩＺのアサートタイミングは、マスク信号ＭＳＫのアサートタイミングよりも１カウント前になっている。これは、ＢＥＭＦのゼロクロスタイミングの誤検出を防止するためである。すなわち、ハイインピーダンス信号ＨＩＺのアサートに伴いＢＥＭＦの検出対象相がハイインピーダンス状態になると、キックバックによってＢＥＭＦのゼロクロスが生じる恐れがある。これに伴う誤検出を防止するためである。
【００９９】
《モータ駆動装置（比較例）の問題点》
図２５は、図１７のモータ駆動装置において、着磁ばらつきが生じる場合の動作例を示すタイミングチャートである。図２５では、図１９の場合と異なり着磁ばらつきが生じている。３相モータＳＰＭに着磁ばらつきが生じると、ＰＬＬ制御がロックした状態でも位相誤差ＰＥＲＲはゼロを保てずに変動する場合がある。例えば、図２５では、ｖ相，ｗ相のＢＥＭＦの着磁が相対的に進み位相となっている。
【０１００】
この場合、例えば、ｗ相の立ち下がりゼロクロスの検出時には、位相誤差ＰＥＲＲは負となり、周期設定値ＮＣＮＴが小さくなることで次の相切替信号ＣＯＭＭの周期が短くなる。次のｖ相の立ち上がりゼロクロスの検出時には、同じく進み位相であるため、短くなった相切替信号ＣＯＭＭの周期に伴い位相誤差ＰＥＲＲはゼロとなり、周期設定値ＮＣＮＴは大きく変化しない。続くｕ相の立ち下りクロスの検出時には、着磁ばらつきが生じないため、短くなった相切替信号ＣＯＭＭの周期に伴い位相誤差ＰＥＲＲは正となり、周期設定値ＮＣＮＴは大きくなる。なお、ここでは、説明の便宜上、周期設定値ＮＣＮＴは、位相誤差ＰＥＲＲに対して即座に追従することとしたが、実際には、ＰＩ補償器ＰＩＣＰ’の制御帯域に応じて、ある程度の遅延を経て滑らかに追従することになる。
【０１０１】
ここで、定常回転時において、仮に、着磁ばらつきが生じない理想状態の場合、図１９に示したように、ＰＩ補償器ＰＩＣＰ’の入力となる位相誤差ＰＥＲＲはゼロとなる。この理想状態では、ＢＥＭＦと通電タイミングとが常時同期した状態で３相モータＳＰＭを駆動できるため、回転ジッタは生じない。一方、着磁ばらつきが生じる場合、図２５に示したように、ＢＥＭＦの位相が相切替信号ＣＯＭＭの周期毎にばらつき、これに伴い、位相誤差ＰＥＲＲも適宜ばらつく。この状態は、ＢＥＭＦと通電タイミングとの同期にばらつきが生じている状態であるため、回転ジッタを招く。より詳細には、ＰＩ補償器ＰＩＣＰ’は、当該着磁ばらつきに伴う位相誤差ＰＥＲＲのばらつきを抑制するように動作するが、実際上は、ある程度までしか抑制することはできない。この抑制できなかったばらつき成分は、回転ジッタの発生要因となる。
【０１０２】
着磁ばらつきは、図１７のような位置センサレスの３相モータＳＰＭの場合には、例えば、ロータの磁極位置のばらつきや、ステータの取り付け位置のばらつき等によって生じる。また、センサ付きモータの場合には、位置センサの取り付け位置のばらつき等によっても生じる。一方、このような着磁ばらつき（すなわち製造ばらつき）の発生自体をある抑制し、これによって回転ジッタを低減することも可能であるが、この場合、製造コストの増加を招く。このため、着磁ばらつきが生じる場合であっても、回転ジッタを十分に低減できるような何らかの仕組みが求められる。
【０１０３】
《モータ駆動装置（実施の形態１）の概略構成》
図２は、本発明の実施の形態１によるモータ駆動装置の概略構成例を示すブロック図である。図２に示すモータ駆動装置は、図１７に示したモータ駆動装置と比較して、ＰＬＬ制御ループＬＰＰＬＬ内のＰＬＬ制御部（ＰＩ補償器）ＰＩＣＰの構成が異なっている。また、これに伴い、図２では、位置設定部ＰＳＣＴが追加されている。さらに、パラメータ設定レジスタＰＲＥＧａは、図１７で述べた各種信号に加えて、検出モード選択信号ＣＮＴＭＤおよび極数設定値ＮＰＯＬＥを出力する。
【０１０４】
ＰＩ補償器ＰＩＣＰは、詳細は後述するが、機機械角周期内に設けられる複数の検出タイミング（例えばＢＥＭＦのゼロクロスタイミング）にそれぞれ対応する複数の周期設定レジスタを有する。ＰＩ補償器ＰＩＣＰは、前回の機械角周期における複数の検出タイミング毎に、定めた周期設定値（操作量）ＮＣＮＴＳを、対応する１個の周期設定レジスタにそれぞれ格納する。そして、ＰＩ補償器ＰＩＣＰは、今回の機械角周期における複数の検出タイミング毎に、対応する１個の周期設定レジスタに格納された周期設定値ＮＣＮＴＳを反映して今回の機械角周期における周期設定値ＮＣＮＴＳを定める。
【０１０５】
位置設定部ＰＳＣＴは、クロック生成部ＣＧＥＮからの相切替信号ＣＯＭＭと、パラメータ設定レジスタＰＲＥＧａからの極数設定値ＮＰＯＬＥとに基づいて、このような複数の検出タイミング毎の周期設定レジスタの切り替えを制御する。具体的には、位置設定部ＰＳＣＴは、機械角周期内における電気角３６０°（電気角周期）の位置を表す極位置信号ＰＯＬＥと、電気角周期内における電気角６０°の区間（相切替信号ＣＯＭＭに基づく相切替区間）の位置を表す相位置信号ＣＮＴ６とを生成する。
【０１０６】
また、位置設定部ＰＳＣＴは、このような極位置および相位置に応じて、対応する周期設定レジスタの書き込みを有効化するライトイネーブル信号ＷＥＮを生成する。なお、ＰＩ補償器ＰＩＣＰは、検出モード選択信号ＣＮＴＭＤによって２つの動作モード（切替モード、固定モード）を選択可能となっている。切替モードでは、ＰＩ補償器ＰＩＣＰは、複数の検出タイミング毎に対応する周期設定レジスタを切り替えながら周期設定値ＮＣＮＴＳを算出する。一方、固定モードでは、ＰＩ補償器ＰＩＣＰは、複数の検出タイミング毎の周期設定値ＮＣＮＴＳを複数の周期設定レジスタに共通に格納することで、複数の周期設定レジスタを１個の周期設定レジスタとみなして周期設定値ＮＣＮＴＳを算出する。これにより、固定モードでは、ＰＩ補償器ＰＩＣＰは、図１７および図１９に示したＰＩ補償器ＰＩＣＰ’と同様の動作を行う。
【０１０７】
《ＰＬＬ制御ループ周り（実施の形態１）の詳細》
図３は、図２におけるＰＬＬ制御ループ周りの詳細な構成例を示すブロック図である。図４は、図３における位置設定部の詳細な構成例を示す回路図である。図３に示す構成例は、図２１に示した構成例と比較して、ＰＩ補償器ＰＩＣＰの内部構成が異なっている。また、これに伴い、位置設定部ＰＳＣＴが追加されている。ＰＩ補償器ＰＩＣＰは、ディジタルＰＬＬ制御で用いられるディジタルループフィルタに該当する。ディジタルループフィルタは、様々な構成が知られており、内部に様々な状態変数を持ち得るが、少なくとも、前回の状態変数を反映して今回の操作量（周期設定値ＮＣＮＴＳ）を定め、当該状態変数を更新して次回の操作量に反映させるような構成要素を含んでいる。
【０１０８】
図３のＰＩ補償器ＰＩＣＰａは、図２１に示した１個の周期設定レジスタＲＥＧＮの代わりに、状態変数の一つとなる周期設定値ＮＣＮＴ（ＮＣＮＴＳ）を検出タイミング毎に格納するための周期設定レジスタユニットＲＥＧＮＵａを備える。この例では、図１８に示した８極モータを想定し、機械角周期の中に４個の電気角周期が含まれ、各電気角周期の中に電気角６０°（相切替区間）毎の６個の検出タイミング（ＢＥＭＦのゼロクロスタイミング）が含まれる場合を想定している。
【０１０９】
この場合、周期設定レジスタユニットＲＥＧＮＵａは、機械角周期内の計２４個の検出タイミングにそれぞれ対応する２４個の周期設定レジスタＲＥＧＮ０＿０，０＿１，…，０＿５，１＿０，…，３＿４，３＿５を備える。周期設定レジスタＲＥＧＮｘ＿ｙ中の“ｘ”は、機械角周期内の極位置（電気角周期の位置）を表し、“ｙ”は、電気角周期内の相位置を表す。また、周期設定レジスタユニットＲＥＧＮＵａは、セレクタＳＥＬＮを備える。セレクタＳＥＬＮは、検出タイミング毎に複数の周期設定レジスタＲＥＧＮ０＿０〜３＿５の中から対応する１個の周期設定レジスタを選択し、当該選択した周期設定レジスタに格納されている周期設定値ＮＣＮＴを周期設定値ＮＣＮＴＳとしてクロック生成部ＣＧＥＮへ出力する。
【０１１０】
例えば、機械角周期（Ｔ［０］）内のある検出タイミング（ｔ［０］）に応じて周期設定レジスタＲＥＧＮ０＿０が選択された場合を想定する。この場合、周期設定レジスタＲＥＧＮ０＿０に格納されている周期設定値ＮＣＮＴが周期設定値ＮＣＮＴＳとして出力されると共に、当該周期設定値ＮＣＮＴＳを反映して乗算器および加算器を介して周期設定値ＮＣＮＴが更新され、周期設定レジスタＲＥＧＮ０＿０に書き込まれる。当該周期設定レジスタＲＥＧＮ０＿０に書き込まれた周期設定値ＮＣＮＴは、次回の機械角周期（Ｔ［１］）内の同じ検出タイミング（ｔ［０］）で用いられる。このように、ある検出タイミングにおける今回の周期設定値ＮＣＮＴＳは、同じ検出タイミングにおける前回の周期設定値ＮＣＮＴを反映して定められることになる。
【０１１１】
位置設定部ＰＳＣＴは、図３に示されるように、極位置カウンタＣＵＮＴｐｌ、相位置カウンタＣＵＮＴｐｈおよび位置デコーダＰＳＤＥＣを含み、詳細には、図４に示されるように、加えてコンパレータＣＭＰｐｈ，ＣＭＰｐｌを備える。相位置カウンタＣＵＮＴｐｈは、相切替信号ＣＯＭＭの周期をカウントし、そのカウント値を相位置信号ＣＮＴ６として出力する。コンパレータＣＭＰｐｈは、相位置信号ＣＮＴ６が判定値（ここでは“６”）に到達する時点でパルス信号を出力する。相位置カウンタＣＵＮＴｐｈのカウント値（ＣＮＴ６）は、このパルス信号（リセット信号ＣＮＴ６ＲＳＴ）に応じてリセットされる。
【０１１２】
極位置カウンタＣＵＮＴｐｌは、コンパレータＣＭＰｐｈから出力されるパルス信号をトリガとしてカウントアップを行い、そのカウント値を極位置信号ＰＯＬＥとして出力する。コンパレータＣＭＰｐｌは、極位置信号ＰＯＬＥが所定の判定値に到達する時点でパルス信号を出力する。当該所定の判定値は、極数設定値ＮＰＯＬＥの半値であり、８極モータの場合には“４”となる。極位置カウンタＣＵＮＴｐｌのカウント値（ＰＯＬＥ）は、このパルス信号（リセット信号ＰＯＬＥＲＳＴ）に応じてリセットされる。その結果、極位置信号ＰＯＬＥは、０〜３を巡回的に出力し、相位置信号ＣＮＴ６は、極位置信号ＰＯＬＥの値毎に０〜５を順次出力する。
【０１１３】
位置デコーダＰＳＤＥＣは、検出モード選択信号ＣＮＴＭＤに基づき切替モードを選択する場合、極位置信号ＰＯＬＥと相位置信号ＣＮＴ６との組み合わせに基づき複数本（ここでは２４本）のライトイネーブル信号ＷＥＮのいずれか１本をアサートする。一方、位置デコーダＰＳＤＥＣは、検出モード選択信号ＣＮＴＭＤに基づき固定モードを選択する場合、例えば、極位置信号ＰＯＬＥおよび相位置信号ＣＮＴ６を共にゼロに固定し、複数本のライトイネーブル信号ＷＥＮを共通にアサートする。
【０１１４】
図３における複数（２４個）の周期設定レジスタＲＥＧＮ０＿０〜ＲＥＧＮ３＿５は、それぞれ、複数本のライトイネーブル信号ＷＥＮのアサートに応じて、入力されている周期設定値ＮＣＮＴを格納する。セレクタＳＥＬＮは、極位置信号ＰＯＬＥと相位置信号ＣＮＴ６との組み合わせに基づいて、周期設定レジスタＲＥＧＮ０＿０〜ＲＥＧＮ３＿５のいずれかの出力を選択する。
【０１１５】
図５は、図３のＰＬＬ制御ループ周りの模式的な動作例を示すタイミングチャートである。図６は、図５における一つの電気角周期内での動作例を示すタイミングチャートである。図５に示されるように、８極モータの場合、機械角周期Ｔｃｙｃ１内に４個の電気角周期Ｔ０〜Ｔ３が含まれる。電気角周期Ｔ０内には、相切替信号ＣＯＭＭの周期に基づく６個の相切替区間Ｔ０＿０〜Ｔ０＿５が含まれる。相切替区間Ｔ０＿０〜Ｔ０＿５では、それぞれ、対応する周期設定レジスタＲＥＧＮ０＿０〜ＲＥＧＮ０＿５を用いたＰＩ制御動作が行われる。同様に、電気角周期Ｔ３に含まれる相切替区間Ｔ３＿０〜Ｔ３＿５（Ｔ３＿０〜Ｔ３＿３の図示は省略）では、それぞれ、対応する周期設定レジスタＲＥＧＮ３＿０〜ＲＥＧＮ３＿５を用いたＰＩ制御動作が行われる。
【０１１６】
ここで、実施の形態１の方式を用いた場合、概念的には、例えば、周期設定レジスタＲＥＧＮ０＿０〜ＲＥＧＮ０＿５には、それぞれ、相切替区間Ｔ０＿０〜Ｔ０＿５の長さを反映した周期設定値ＮＣＮＴが格納される。そして、機械角周期Ｔｃｙｃ１に続く機械角周期Ｔｃｙｃ２において、電気角周期Ｔ０に含まれる相切替区間Ｔ０＿０の長さ（相切替信号ＣＯＭＭの周期）は、機械角周期Ｔｃｙｃ１内で周期設定レジスタＲＥＧＮ０＿０に格納された周期設定値ＮＣＮＴを反映して定められる。
【０１１７】
図２５に示したような着磁ばらつきが生じると、例えば、機械角周期Ｔｃｙｃ２内の相切替区間Ｔ０＿０に対応するゼロクロスタイミングの間隔は、機械角周期Ｔｃｙｃ１内の相切替区間Ｔ３＿５に対応するゼロクロスタイミングの間隔とは異なり得る。図２１に示したＰＩ補償器ＰＩＣＰ’は、概念的には、この相切替区間Ｔ３＿５に対応するゼロクロスタイミングの間隔を反映して相切替区間Ｔ０＿０の長さを定める。しかし、この定めた長さは、着磁ばらつきに伴い相切替区間Ｔ０＿０に対応するゼロクロスタイミングの間隔とは異なるため、図２５に示したように位相誤差ＰＥＲＲが生じる。
【０１１８】
一方、このような着磁ばらつきが生じた場合であっても、機械角周期Ｔｃｙｃ２内の相切替区間Ｔ０＿０に対応するゼロクロスタイミングの間隔と、機械角周期Ｔｃｙｃ１内の同じく相切替区間Ｔ０＿０に対応するゼロクロスタイミングの間隔とは同じになる。図３に示したＰＩ補償器ＰＩＣＰは、概念的には、この機械角周期Ｔｃｙｃ１内の相切替区間Ｔ０＿０に対応するゼロクロスタイミングの間隔を反映して機械角周期Ｔｃｙｃ２内の相切替区間Ｔ０＿０の長さを定める。その結果、位相誤差ＰＥＲＲを抑制することができ、理想的にはゼロにすることができる。
【０１１９】
図６には、図５の電気角周期Ｔ０における詳細な動作例が示され、図２５の場合と同様に着磁ばらつきが生じる場合の動作例が示される。図６では、図２５の場合と同様に、電気角周期の中で３回生じる３相のＢＥＭＦの立ち上がりのゼロクロスタイミングと、同じく３回生じる立ち下がりのゼロクロスタイミングとをそれぞれ検出タイミングとして、位相誤差ＰＥＲＲの検出が行われる。各検出タイミングでは、図２５の場合と同様に着磁ばらつきが生じているが、図２５の場合と異なり、位相誤差ＰＥＲＲはゼロとなっている。
【０１２０】
《ＰＬＬ制御ループ周り（変形例）の詳細》
図７は、図３のＰＬＬ制御ループ周りを変形した構成例を示すブロック図である。図７の構成例は、図３の構成例と比較して、ＰＩ補償器ＰＩＣＰｂの構成が異なっている。ＰＩ補償器ＰＩＣＰｂは、図３のＰＩ補償器ＰＩＣＰａ内の１個の位相誤差レジスタＲＥＧＰの代わりに位相誤差レジスタユニットＲＥＧＰＵを備える。位相誤差レジスタユニットＲＥＧＰＵは、周期設定レジスタユニットＲＥＧＮＵａの場合と同様に、機械角周期内の計２４個の検出タイミングにそれぞれ対応する２４個の位相誤差レジスタＲＥＧＰ０＿０〜ＲＥＧＰ３＿５を備える。位相誤差レジスタＲＥＧＰ０＿０〜ＲＥＧＰ３＿５への位相誤差ＰＥＲＲの格納は、図３の周期設定レジスタの場合と同様に、ライトイネーブル信号ＷＥＮによって制御される。
【０１２１】
また、位相誤差レジスタユニットＲＥＧＰＵは、セレクタＳＥＬＰを備える。セレクタＳＥＬＰは、図３のセレクタＳＥＬＮの場合と同様に、検出タイミング毎に複数の位相誤差レジスタＲＥＧＰ０＿０〜ＲＥＧＰ３＿５の中から対応する１個の位相誤差レジスタを選択し、当該選択した位相誤差レジスタに格納されている位相誤差ＰＥＲＲを出力する。これにより、ＰＩ補償器ＰＩＣＰｂは、前回の機械角周期における複数の検出タイミング毎に、状態変数の他の一つとなる位相誤差ＰＥＲＲを、対応する１個の位相誤差レジスタにそれぞれ格納する。そして、ＰＩ補償器ＰＩＣＰｂは、今回の機械角周期における複数の検出タイミング毎に、対応する１個の位相誤差レジスタに格納された位相誤差ＰＥＲＲを反映して今回の機械角周期における周期設定値（操作量）ＮＣＮＴを定める。
【０１２２】
前述したように、ＰＩ補償器は、様々な構成で実現可能であるが、この例では、前回の位相誤差ＰＥＲＲと、前回の周期設定値ＮＣＮＴ（ＮＣＮＴＳ）とを反映して今回の周期設定値ＮＣＮＴ（ＮＣＮＴＳ）を定める（算出する）構成となっている。したがって、ＰＩ制御を厳密に行うためには、前回の位相誤差ＰＥＲＲとして、周期設定値ＮＣＮＴ（ＮＣＮＴＳ）の場合と同様に、相切替区間（電気角６０°）だけ前の検出タイミングではなく、前回の機械角周期における対応する検出タイミングでの位相誤差ＰＥＲＲを用いる必要がある。
【０１２３】
そこで、図７では、位相誤差レジスタユニットＲＥＧＰＵが設けられる。なお、実施の形態１の方式を用いると、図６に示したように、各検出タイミングにおける位相誤差ＰＥＲＲは、共に、ゼロに近い値になると考えられる。このため、図３の構成例であっても、実用上の問題は特に生じない。図３の構成例を用いると、図７の構成例と比較して、面積オーバヘッドの低減が図れる。ただし、例えば、負荷変動等が頻繁な用途では、図３のように１個の位相誤差レジスタＲＥＧＰを用いると、当該位相誤差レジスタＲＥＧＰに負荷変動に伴う位相誤差と着磁ばらつきに伴う位相誤差とが混同して格納されることになる。そこで、図７の構成例を用いると、各位相誤差レジスタの格納値から着磁ばらつきに伴う位相誤差の成分を排除できるため、図３の構成例と比較して、より安定した制御動作が可能になると考えられる。
【０１２４】
《実施の形態１の主要な効果》
以上のように、実施の形態１の方式を用いると、着磁ばらつきが生じる場合であっても、ＰＬＬ制御部（ＰＩ補償器）の入力となる位相誤差ＰＥＲＲをゼロに近づけることができる。この状態では、図１９に示した理想状態に近い状態（すなわち、ＢＥＭＦの位相と通電タイミングとが常時ほぼ同期した状態）で３相モータＳＰＭが駆動される。その結果、着磁ばらつきが生じる場合であっても、回転ジッタを低減することが可能になる。
【０１２５】
また、図３および図４に示したように、検出モード選択信号ＣＮＴＭＤによって切替モードと固定モードとを選択できるようにすることで、モータ起動時等の高速応答にも対応することができる。すなわち、例えば、モータ起動時等のように、回転ジッタではなく高速応答が重要となる期間では固定モードを選択し、その後、回転ジッタの低減が重要となる定常回転の期間では切替モードを選択するといった効率的な動作を行えるようになる。ここで、固定モードの際には、図４で述べたようなライトイネーブル信号ＷＥＮの制御によって、全ての周期設定レジスタＲＥＧＮ０＿０〜ＲＥＧＮ３＿５に同じ周期設定値ＮＣＮＴが格納される。これにより、その後に切替モードへ移行する際に、周期設定レジスタＲＥＧＮ０＿０〜ＲＥＧＮ３＿５の初期値はある程度適切な値になっていることから、切替モードの動作への移行を円滑化することができる。
【０１２６】
なお、ここでは、８極モータにおいて、機械角周期内に含まれる計２４個の検出タイミングで位相誤差ＰＥＲＲを検出する例を示した。着磁ばらつきは、機械的な要因によって生じるため、機械角３６０°の周期性を有する。また、機械角周期内の各検出タイミングでは、個々に着磁ばらつきの発生状況が異なり得る。このため、計２４個の検出タイミングで位相誤差ＰＥＲＲを検出することが望まれる。ただし、この場合、機械角周期内にハイインピーダンス期間（すなわち無通電期間）を計２４個設ける必要がある。無通電期間は駆動電流波形の乱れを招くため、無通電期間を減らしたいような場合がある。
【０１２７】
このような場合、例えば、ｕ相、ｖ相、ｗ相の立ち下がりゼロクロスを非対象とし、立ち上がりゼロクロスを対象として位相誤差ＰＥＲＲを検出する（すなわち、電気角１２０°間隔で位相誤差ＰＥＲＲを検出する）ようなことも可能である。この場合、例えば、一つ置きの周期設定レジスタＲＥＧＮ０＿１，０＿３，０＿５，…に対応するライトイネーブル信号ＷＥＮをネゲートレベルに固定すればよい。加えて、図２４のＰＬＬタイミング制御部ＰＬＬＴＣにおいて、各ライトイネーブル信号ＷＥＮのオア演算結果でハイインピーダンス信号ＨＩＺおよびマスク信号ＭＳＫを制御するように（オア演算結果が‘Ｌ’レベルの場合、ＨＩＺ＝‘Ｌ’、ＭＳＫ＝‘Ｈ’となるように）構成すればよい。
【０１２８】
また、場合によっては、例えば、ｕ相の立ち上がりゼロクロスのみを対象とし、その他を非対象としたり、あるいは、ｕ相の立ち下がりゼロクロスのみを対象とし、その他を非対象とするようなことも可能である。例えば、前者に関し、“２×Ｎ（Ｎは２以上の整数）”極モータの機械角周期において、電気角周期毎に生じ得るＮ回のｕ相の立ち上がりゼロクロスでは、それぞれ着磁ばらつきの発生状況が異なり得る。このため、実施の形態１の方式を適用することで、図２１の構成例に比べると、回転ジッタの低減効果が得られる。
【０１２９】
また、切替モードにおいて、定常回転を維持している状態では、周期設定レジスタＲＥＧＮ０＿０〜ＲＥＧＮ３＿５の各格納値は、ほぼ一定（理想的には不変）となる。したがって、切替モードにおいて、ＰＬＬによるフィードバック制御は、必ずしも、常時有効状態である必要はない。具体的には、ＰＬＬ制御ループは、図５および図６のような動作を、例えば、定常回転に達した後の初期の期間のみで行ったり、または、その後、間欠的に行うことも可能である。
【０１３０】
この場合、ＰＬＬ制御ループは、例えば、初期の期間等において、図５および図６のような動作によって周期設定レジスタＲＥＧＮ０＿０〜ＲＥＮ３＿５毎の適切な周期設定値ＮＣＮＴを探索した後、例えば、ライトイネーブル信号ＷＥＮを‘Ｌ’レベルに固定する。これに応じて、ＰＬＬタイミング制御部ＰＬＬＴＣは、ハイインピーダンス信号ＨＩＺを‘Ｌ’レベルに、マスク信号ＭＳＫを‘Ｈ’レベルに固定する。この状態で、ＰＬＬ制御ループは、当該周期設定レジスタＲＥＧＮ０＿０〜ＲＥＮ３＿５の探索値を用いて相切替信号ＣＯＭＭを生成すればよい。これによって、無通電期間の影響を低減できる。
【０１３１】
（実施の形態２）
《モータ駆動装置（実施の形態２）の構成および動作》
図８は、本発明の実施の形態２によるモータ駆動装置の概略構成例を示すブロック図である。図８に示すモータ駆動装置は、図２に示したモータ駆動装置と比較して、パラメータ設定レジスタＰＲＥＧｂがウインドウ選択信号ＷＮＭＤを出力する点と、当該ウインドウ選択信号ＷＮＭＤが出力制御部ＯＴＣＴ（詳細には、ＰＬＬタイミング制御部ＰＬＬＴＣ）に入力される点とが異なっている。
【０１３２】
図９は、図８におけるＰＬＬタイミング制御部周りの構成例を示す回路図である。図９に示すＰＬＬタイミング制御部ＰＬＬＴＣａは、図２４に示した構成例に対してセレクタＳＥＬＷ１，ＳＥＬＷ２が追加されている。セレクタＳＥＬＷ１，ＳＥＬＷ２は、ウインドウ選択信号ＷＮＭＤに応じて、マスク信号ＭＳＫのアサート期間（マスク期間Ｔｍｓｋ）およびハイインピーダンス信号ＨＩＺのアサート期間（ハイインピーダンス期間）の長さを可変設定する可変設定部として機能する。
【０１３３】
この例では、セレクタＳＥＬＷ１，ＳＥＬＷ２は、ウインドウ選択信号ＷＮＭＤが‘Ｌ’レベル（‘０’レベル）（通常ウインドウモードと呼ぶ）の場合、コンパレータＣＭＰｍ１，ＣＭＰｍ２の判定値をそれぞれ“２４”および“３２”に設定する。この場合、ＰＬＬタイミング制御部ＰＬＬＴＣａは、図２４の場合と同じ動作を行うことになる。一方、セレクタＳＥＬＷ１，ＳＥＬＷ２は、ウインドウ選択信号ＷＮＭＤが‘Ｈ’レベル（‘１’レベル）（短縮ウインドウモードと呼ぶ）の場合、コンパレータＣＭＰｍ１，ＣＭＰｍ２の判定値をそれぞれ“２６”および“３０”に設定する。その結果、マスク期間Ｔｍｓｋの長さは１／２となり、ハイインピーダンス期間の長さも約１／２となる。
【０１３４】
ＰＬＬ制御ループでは、位相誤差ＰＥＲＲを検出するため、少なくとも、マスク期間Ｔｍｓｋ（およびハイインピーダンス期間）内にＢＥＭＦのゼロクロスタイミングが含まれる必要がある。着磁ばらつきが生じる場合、ゼロクロスタイミングの位相がばらつくため、通常、このばらつきの分だけマスク期間Ｔｍｓｋの長さを広目に確保する必要がある。一方、実施の形態１で述べた切替モードを用いると、着磁ばらつきが生じる場合であっても、マスク期間Ｔｍｓｋ内の基準タイミング（中心タイミング）にゼロクロスタイミングを保つことができる。その結果、マスク期間Ｔｍｓｋ（およびハイインピーダンス期間）の長さを短縮することが可能になる。
【０１３５】
図１０は、図８および図９のモータ駆動装置の動作例を示すタイミングチャートである。図１０では、短縮ウインドウモード時の動作例が示され、図６の場合と比較して、マスク期間Ｔｍｓｋの長さとハイインピーダンス期間の長さが共に短くなっている。このハイインピーダンス期間の短縮に伴い、例えば、ｕ相の駆動端子には、短縮前後の差分の期間にＳＰ２パターンに基づく駆動端子電圧Ｖｕが生じている。このように、図１０では、図６の場合と比較して、無通電期間が短縮され、その分、通電期間が拡大している。なお、ウインドウ選択信号ＷＮＭＤの実際の使用方法として、例えば、３相モータＳＰＭが定常回転に到達し、定常回転である程度安定するまでは、通常ウインドウモードを用い、ある程度安定した段階で短縮ウインドウモードに切り替えればよい。
【０１３６】
《実施の形態２の主要な効果》
以上、実施の形態２の方式を用いることで、実施の形態１で述べた各種効果に加えて、さらに、トルクリップルの低減が図れ、ひいては、３相モータＳＰＭの低騒音、低振動化が図れる。すなわち、ハイインピーダンス期間（無通電期間）は、トルクリップルの増大を招き、３相モータＳＰＭの騒音や振動の発生要因となり得るが、無通電期間を短縮することで、このような問題が緩和することができる。
【０１３７】
（実施の形態３）
《モータ駆動装置（実施の形態３）の構成および動作》
図１１は、本発明の実施の形態３によるモータ駆動装置において、ＰＬＬタイミング制御部周りの構成例を示す回路図である。図１１に示すＰＬＬタイミング制御部ＰＬＬＴＣｂは、図９の構成例に対してセレクタＳＥＬＨが追加され、更に、ハイインピーダンス信号ＨＩＺを生成するアンドゲートＡＤｈ１ａが２入力から３入力に変更されている。セレクタＳＥＬＨは、当該アンドゲートＡＤｈ１ａの追加された１入力に対して信号を出力する。セレクタＳＥＬＨおよびアンドゲートＡＤｈ１ａは、ＢＥＭＦの立ち上がりゼロクロスのタイミングまたは立ち下がりゼロクロスのタイミングが生じた時点でハイインピーダンス状態を解除するハイインピーダンス解除部として機能する。
【０１３８】
この例では、セレクタＳＥＬＨは、ウインドウ選択信号ＷＮＭＤが“Ｌ”レベル（通常ウインドウモード）の場合には固定レベルとなる“Ｈ”レベルを出力する。この場合、図２４の場合と同様の動作が行われる。一方、セレクタＳＥＬＨは、ウインドウ選択信号ＷＮＭＤが“Ｈ”レベル（短縮ウインドウモード）の場合には、ＰＬＬ制御ループ内の位相誤差検出部ＰＨＥＤからのゼロクロスＥＯＲ信号ＺＣＥＯＲを選択して出力する。その結果、アンドゲートＡＤｈ１ａは、ゼロクロスＥＯＲ信号ＺＣＥＯＲが“Ｌ”レベルにアサートされた時点（すなわちゼロクロスタイミングが生じた時点）でハイインピーダンス信号ＨＩＺを“Ｌ”レベルにネゲートする（ハイインピーダンス状態を解除する）。
【０１３９】
図１２は、図９のＰＬＬタイミング制御部を備えたモータ駆動装置の動作例を示すタイミングチャートである。図１２では、図１０の場合と比較して、マスク期間Ｔｍｓｋの長さは同じであるが、前述したハイインピーダンス解除部によってハイインピーダンス期間の長さが短くなっている。このハイインピーダンス期間の短縮に伴い、図１２では、図１０の場合と比較して、無通電期間が更に短縮され、その分、通電期間（この例では、ＳＰ２パターンに基づくｕ相の駆動端子電圧Ｖｕの印加期間）が拡大している。
【０１４０】
マスク期間Ｔｍｓｋ内でゼロクロスタイミングの検出後は、特に、ＢＥＭＦを監視する必要はなく、単に、位相誤差検出部ＰＨＥＤによって誤差カウンタＥＣＵＮＴのカウントダウン動作が行われるのみである。このため、マスク期間Ｔｍｓｋが維持されていれば、ゼロクロスタイミングに応じてハイインピーダンス状態を解除し、通電を再開しても特に問題は生じない。
【０１４１】
《実施の形態３の主要な効果》
以上、実施の形態３の方式を用いることで、実施の形態２で述べた各種効果に加えて、トルクリップルの更なる低減が図れ、ひいては、３相モータＳＰＭの更なる低騒音、低振動化が図れる。なお、当該実施の形態３の方式は、図６の動作例や、場合によっては、図２５の動作例に組み合わせて用いることも可能である。ただし、図２５の動作例に組み合わせる場合、着磁ばらつきの影響によりゼロクロスタイミングがマスク期間Ｔｍｓｋ内の基準タイミングに対して変動するため、トルクリップル低減の効果が相切替区間毎に異なり得る。この観点で、図１０の動作例や図６の動作例に適用することが望ましい。
【０１４２】
（実施の形態４）
《ＰＬＬ制御ループ周り（実施の形態４）の詳細》
図１３は、本発明の実施の形態４によるモータ駆動装置において、図２のＰＬＬ制御ループ周りの詳細な構成例を示すブロック図である。図１３に示す構成例は、図３の構成例と比較してＰＩ補償器ＰＩＣＰｃ内の周期設定レジスタユニットＲＥＧＮＵｃの構成が異なっている。ＰＩ補償器ＰＩＣＰｃにおいて、ＰＩ演算部ＰＩＣＡＬは、図３や図７に示したＰＩ演算部ＰＩＣＡＬａ，ＰＩＣＡＬｂに該当する。
【０１４３】
ＰＩ補償器ＰＩＣＰｃでは、図３の構成例と異なり、周期設定レジスタＲＥＧＮ０＿０〜ＲＥＧＮ３＿５の一つ（ここではＲＥＧＮ０＿０）が基準レジスタに定められる。さらに、ＰＩ補償器ＰＩＣＰｃは、減算器ＳＢｎおよび加算器ＡＤＤｎを備える。減算器ＳＢｎは、複数の検出タイミング毎に更新される状態変数（ここでは周期設定値ＮＣＮＴ）と、基準レジスタに格納された状態変数（周期設定値ＮＣＮＴ）との差分値を算出する。
【０１４４】
ライトイネーブル信号ＷＥＮに基づき基準レジスタが選択された場合、図３の構成例と同様に、基準レジスタ（ＲＥＧＮ０＿０）には、ＰＩ演算部ＰＩＣＡＬからの周期設定値ＮＣＮＴが格納される。一方、ライトイネーブル信号ＷＥＮに基づき基準レジスタを除く１個の周期設定レジスタ（ＲＥＧＮ０＿１〜ＲＥＧＮ３＿５）が選択された際、減算器ＳＢｎは、当該選択された１個の周期設定レジスタに、算出した差分値を格納する。
【０１４５】
また、セレクタＳＥＬＮによって基準レジスタを除く１個のレジスタが選択された場合、加算器ＡＤＤｎは、当該１個のレジスタからの差分値と、基準レジスタに格納された状態変数（周期設定値ＮＣＮＴ）とを加算し、その加算結果を周期設定値ＮＣＮＴＳとして出力する。一方、セレクタＳＥＬＮによって基準レジスタが選択された場合、セレクタＳＥＬＮは、固定入力値となる“０”を出力し、これに応じて、加算器ＡＤＤｎは、基準レジスタに格納された状態変数（周期設定値ＮＣＮＴ）をそのまま周期設定値ＮＣＮＴＳとして出力する。
【０１４６】
《実施の形態４の主要な効果》
以上、実施の形態４の方式を用いることで、実施の形態１で述べた各種効果に加えて、差分値の格納に伴い基準レジスタ（ＲＥＧＮ０＿０）を除く各周期設定レジスタ（ＲＥＧＮ０＿１〜ＲＥＧＮ３＿５）のビット幅を狭められるため、周期設定レジスタユニットＲＥＧＮＵｃの小面積化および低コスト化が図れる。なお、実施の形態４の方式は、図７の位相誤差レジスタユニットＲＥＧＰＵに適用することも可能である。
【０１４７】
（実施の形態５）
《モータ駆動装置（実施の形態５）の概略構成》
図１４は、本発明の実施の形態５によるモータ駆動装置の概略構成例を示すブロック図である。前述した各実施の形態では、ＢＥＭＦを検出する位置センサレスモータへの適用例を示したが、実施の形態の方式は、位置センサレスモータに限らず、位置センサ付モータに適用することも可能である。図１４には、その一例として、位置センサとなるホール素子によって３相の位置検出信号となる３相のホール信号Ｈｕ，Ｈｖ，Ｈｗを出力する３相モータＳＰＭを対象としたモータ駆動装置が示される。なお、位置センサからの３相の位置検出信号は、ホール信号に限らず、例えば、ＲＤＣ（Resolver Digital Converter）からのＵＶＷ信号など、様々なものであってよい。
【０１４８】
図１４に示すモータ駆動装置は、図２の構成例と異なり、ホール信号Ｈｕ，Ｈｖ，Ｈｗを用いて位置検出を行うため、ＢＦＭＦ検出部ＢＦＤＥＴおよびＰＷＭ固定部ＰＷＭＦＣを有しない。また、これに伴い、図２の構成例と比較して、位相誤差検出部ＰＨＥＤｄおよび出力制御部ＯＴＣＴｄの構成が若干異なり、更に、パラメータ設定レジスタＰＲＥＧｄの出力から、ＢＥＭＦしきい値振幅Ｖｔｈｂおよびゼロクロスモード信号ＺＣＭＤが削除されている。位相誤差検出部ＰＨＥＤｄは、図２のゼロクロス信号ＺＣＯＵＴの代わりに、ホール信号Ｈｕ，Ｈｖ，Ｈｗを用いて位相誤差ＰＥＲＲを検出する。出力制御部ＯＴＣＴｄは、図２の構成例と異なり、ＢＥＭＦサンプル信号ＢＳＰＬや相選択信号ＳＥＬを出力せず、また、ＰＷＭ固定信号ＰＷＭＦＩＸに応じた動作も行わない。
【０１４９】
図１５は、図１４におけるＰＬＬ制御ループ周りの詳細な構成例を示すブロック図である。図１６は、図１４および図１５のモータ駆動装置の動作例を示すタイミングチャートである。図１５では、図３と比較して、位相誤差検出部ＰＨＥＤｄの構成が異なっている。位相誤差検出部ＰＨＥＤｄは、ホール信号Ｈｕ，Ｈｖ，ＨｗおよびＢＥＭＦ極性信号ＤＩＲを受けて図３の場合と同様のゼロクロスＥＯＲ信号ＺＣＥＯＲを生成するゼロクロス信号生成部ＺＣＧと、図３の場合と同様の誤差カウンタＥＣＵＮＴとを備える。
【０１５０】
図１６に示されるように、ホール信号Ｈｕ，Ｈｖ，Ｈｗは、それぞれ、理想的には３相の逆起電圧Ｖｂｅｍｆ（Ｕ，Ｖ，Ｗ）のゼロクロスタイミングに同期した立ち上がりエッジおよび立ち下がりエッジを備える矩形波信号となる。位相誤差検出部ＰＨＥＤｄは、このホール信号Ｈｕ，Ｈｖ，ＨｗとＢＥＭＦ極性信号ＤＩＲとを論理演算することで、図６の場合と同様のゼロクロスＥＯＲ信号ＺＣＥＯＲを生成する。これにより、誤差カウンタＥＣＵＮＴは、図６の場合と同様にして位相誤差ＰＥＲＲを検出することができる。なお、図１５では、相位置カウンタＣＵＮＴｐｈを用いて相位置信号ＣＮＴ６が生成されるが、ホール信号Ｈｕ，Ｈｖ，Ｈｗのデコード結果を相切替信号ＣＯＭＭでラッチすることで相位置信号ＣＮＴ６を生成することも可能である。
【０１５１】
ここで、ホール信号Ｈｕ，Ｈｖ，Ｈｗは、理想的には、逆起電圧Ｖｂｅｍｆ（Ｕ，Ｖ，Ｗ）の位相に同期する信号となる。しかし、実際のホール信号Ｈｕ，Ｈｖ，Ｈｗでは、図１６に示されるように、対応相のＢＥＭＦの位相に対してばらつき（すなわち着磁ばらつき）が生じ得る。例えば、ｖ相のホール信号Ｈｖは、ｖ相の逆起電圧Ｖｂｅｍｆ（Ｖ）に対して位相が進んでいる。このような着磁ばらつきは、例えば、ホール素子の取り付けばらつき等によって生じる。着磁ばらつきは、実施の形態１等の場合と同様に回転ジッタを招く。そこで、図１５に示されるように、図３等の場合と同様のＰＩ補償器ＰＩＣＰａを用いることが有益となる。
【０１５２】
《実施の形態５の主要な効果》
以上、実施の形態５の方式を用いることで、着磁ばらつきが生じ得る様々な種類・用途のモータシステムにおいて、実施の形態１等で述べた各種効果を得ることが可能になる。また、着磁ばらつきに関わらず回転ジッタを低減できるようになると、各種モータを安価で製造することが可能になり、ひいては、モータシステムの低コスト化等が図れる。モータシステムとしては、ＨＤＤに限らず、ＤＶＤ再生録画装置やブルーレイ再生録画装置等が挙げられる。また、場合によっては、エアコンのインバータシステム等において、より高精度な制御を行う技術として実施の形態の方式を適用することも可能である。
【０１５３】
以上、本発明者によってなされた発明を実施の形態に基づき具体的に説明したが、本発明は前記実施の形態に限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能である。例えば、前述した実施の形態は、本発明を分かり易く説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、ある実施の形態の構成の一部を他の実施の形態の構成に置き換えることが可能であり、また、ある実施の形態の構成に他の実施の形態の構成を加えることも可能である。また、各実施の形態の構成の一部について、他の構成の追加・削除・置換をすることが可能である。
【符号の説明】
【０１５４】
ＡＤＤ  加算器
ＢＦＤＥＴ  ＢＥＭＦ検出部
ＣＧＥＮ  クロック生成部
ＣＮＴ６  相位置信号
ＣＮＴＭＤ  検出モード選択信号
ＣＯＭＭ  相切替信号
ＣＵＮＴｐｈ  相位置カウンタ
ＣＵＮＴｐｌ  極位置カウンタ
ＤＩＲ  ＢＥＭＦ極性信号
ＤＳＫ  ディスク
ＥＣＵＮＴ  誤差カウンタ
Ｈ  ホール信号
ＨＩＺ  ハイインピーダンス信号
ＬＰＣＲ  電流制御ループ
ＬＰＰＬＬ  ＰＬＬ制御ループ
ＭＤＩＣ  モータ駆動装置
ＭＳＫ  マスク信号
ＮＣＮＴ，ＮＣＮＴＳ  周期設定値
ＮＰＯＬＥ  極数設定値
ＯＴＣＴ  出力制御部
ＰＥＲＲ  位相誤差
ＰＨＥＤ  位相誤差検出部
ＰＩＣＰ  ＰＩ補償器
ＰＬＬＴＣ  ＰＬＬタイミング制御部
ＰＯＬＥ  極位置信号
ＰＲＥＧ  パラメータ設定レジスタ
ＰＳＣＴ  位置設定部
ＰＳＤＥＣ  位置デコーダ
ＰＷＭＦＣ  ＰＷＭ固定部
ＰＷＭＭＤ  ＰＷＭ変調部
ＲＥＧＮ  周期設定レジスタ
ＲＥＧＮ  周期設定レジスタユニット
ＲＥＧＰ  位相誤差レジスタ
ＲＥＧＰ  位相誤差レジスタユニット
ＳＥＬＮ，ＳＥＬＰ，ＳＥＬＷ，ＳＥＬＨ  セレクタ
ＳＰＭ  ３相モータ
ＳＰＭＤＶ  ３相ドライバ
ＳＵＢ  減算器
ＷＥＮ  ライトイネーブル信号
ＷＮＭＤ  ウインドウ選択信号
ＺＣＥＯＲ  ゼロクロスＥＯＲ信号
ＺＣＧ  ゼロクロス信号生成部
ＺＣＯＵＴ  ゼロクロス信号
【図１】
2019201445.tif 000003
【図２】
2019201445.tif 000004
【図３】
2019201445.tif 000005
【図４】
2019201445.tif 000006
【図５】
2019201445.tif 000007
【図６】
2019201445.tif 000008
【図７】
2019201445.tif 000009
【図８】
2019201445.tif 000010
【図９】
2019201445.tif 000011
【図１０】
2019201445.tif 000012
【図１１】
2019201445.tif 000013
【図１２】
2019201445.tif 000014
【図１３】
2019201445.tif 000015
【図１４】
2019201445.tif 000016
【図１５】
2019201445.tif 000017
【図１６】
2019201445.tif 000018
【図１７】
2019201445.tif 000019
【図１８】
2019201445.tif 000020
【図１９】
2019201445.tif 000021
【図２０】
2019201445.tif 000022
【図２１】
2019201445.tif 000023
【図２２】
2019201445.tif 000024
【図２３】
2019201445.tif 000025
【図２４】
2019201445.tif 000026
【図２５】
2019201445.tif 000027