(57)【特許請求の範囲】
【請求項１】
ＤＣブラシレスモータの電機子に流れる電流を検出する電流検出手段と、該電流検出手段による検出電流を所定の目標電流に収束させるように前記電機子に印加すべき基本駆動電圧を決定する基本駆動電圧決定手段と、該基本駆動電圧に該基本駆動電圧の周波数よりも高周波の周期信号を重畳してなる駆動電圧を前記電機子に印加することにより該電機子に通電する通電手段と、前記周期信号による前記電機子の電流変化を検出し、その電流変化に基づき前記モータのロータ角度を推定する角度推定手段とを備えたＤＣブラシレスモータのロータ角度推定装置において、
前記電機子の電流路に外挿して設けられた環状の磁性体コアと、該磁性体コアに巻回され、前記電機子の通電時に該磁性体コアに発生する磁束の時間的変化率に応じた電圧を出力するサーチコイルと、該サーチコイルの出力を前記基本駆動電圧が一定に維持される状態で前記周期信号の１周期内の所定期間で積分する積分手段とを備え、
前記角度推定手段は、前記積分手段の出力に基づき、前記所定期間における電流変化を検出し、その検出した電流変化に基づき前記モータのロータ角度を推定する手段であり、前記通電手段は、前記基本駆動電圧に前記周期信号を重畳してなる駆動電圧を、所定の制御サイクルで決定しつつＰＷＭ制御により前記電機子に印加する手段であり、前記所定の制御サイクルは、前記ＰＷＭ制御のキャリアの１周期の期間であり、前記周期信号は、２制御サイクル以上の期間を１周期とする周期信号であり、前記キャリアは、その１周期分の波形が該１周期の前半と後半とで対称となる三角波であり、前記所定期間は、該キャリアの各周期の前半または後半のいずれかの期間であり、該キャリアの各周期のうちの前記所定期間以外の期間で前記積分手段の出力を０にリセットする手段を備えたことを特徴とするＤＣブラシレスモータのロータ角度推定装置。
【請求項２】
前記磁性体コアは、前記電流検出手段にその電流検出用としてあらかじめ備えられた磁性体コアであることを特徴とする請求項１記載のＤＣブラシレスモータのロータ角度推定装置。
【請求項３】
前記電流検出手段による前記所定期間における検出電流の変化と、前記積分手段の出力が示す電流変化とを比較することにより、前記電流検出手段の故障の有無を判断する故障検出手段を備えたことを特徴とする請求項１又は２記載のＤＣブラシレスモータのロータ角度推定装置。
【請求項４】
ＤＣブラシレスモータの電機子に流れる電流を電流検出手段により検出しつつ、その検出電流を所定の目標電流に収束させるように該電機子に印加すべき基本駆動電圧を決定する第１ステップと、該基本駆動電圧に該基本駆動電圧の周波数よりも高周波の周期信号を重畳してなる駆動電圧を前記電機子に印加することにより該電機子に通電する第２ステップとを備え、該電機子の通電時に前記周期信号による電機子の電流変化を検出し、その検出した電流変化に基づき前記モータのロータ角度を推定するＤＣブラシレスモータのロータ角度推定方法において、
前記電機子の電流路に外挿して設けられた環状の磁性体コアと、該磁性体コアに巻回され、前記電機子の通電時に該磁性体コアに発生する磁束の時間的変化率に応じた電圧を出力するサーチコイルとを備えておき、
前記基本駆動電圧が一定に維持される状態で前記サーチコイルの出力を前記周期信号の１周期内の所定期間で積分することにより、該所定期間における電機子の電流変化を検出するステップを備え、その検出した電流変化に基づき前記モータのロータ角度を推定する方法であり、
前記第２ステップは、前記基本駆動電圧に前記周期信号を重畳してなる駆動電圧、所定の制御サイクルで決定しつつ前記電機子にＰＷＭ制御により印加するステップであり、前記所定の制御サイクルは、前記ＰＷＭ制御のキャリアの１周期の期間であり、前記周期信号は、２制御サイクル以上の期間を１周期とする周期信号であり、前記キャリアは、その１周期分の波形が該１周期の前半と後半とで対称となる三角波であり、前記所定期間は、該キャリアの各周期の前半または後半のいずれかの期間であり、該キャリアの各周期のうちの前記所定期間以外の期間で前記サーチコイルの出力の積分値を０にリセットするようにしたことを特徴とするＤＣブラシレスモータのロータ角度推定方法。
【請求項５】
前記磁性体コアは、前記電流検出手段にその電流検出用としてあらかじめ備えられた磁性体コアであることを特徴とする請求項４記載のＤＣブラシレスモータのロータ角度推定方法。
【請求項６】
前記電流検出手段による前記所定期間における検出電流の変化と、該所定期間における前記積分により検出された電流変化とを比較することにより、前記電流検出手段の故障の有無を判断するステップをさらに備えたことを特徴とする請求項４又は５記載のＤＣブラシレスモータのロータ角度推定方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はＤＣブラシレスモータのロータ（突極型ロータ）の電気角をセンサを使用せずに推定する装置および方法に関する。
【背景技術】
【０００２】
ＤＣブラシレスモータに所望の出力トルクを発生させるためには、磁極を有するロータの電気角（本明細書では、ロータ角度という）に対応した適切な位相でステータに備えた電機子に電圧を印加する必要がある。従って、該モータの適切な制御を行なうためには、ロータ角度を認識する必要がある。この場合、位置検出センサをモータに組付けて、該センサによりロータ角度を検出することが一般的である。しかるに、位置検出センサを備えることは、モータおよびその駆動装置のコストアップを伴う。また、位置検出センサのモータへの組付け精度のばらつきなどに起因して、ロータ角度の検出誤差も生じやすい。ひいては、その検出誤差を補償するための付加的な技術も必要となる。
【０００３】
このため、ロータ角度を検出する位置検出センサを備えずに（いわゆるセンサレスで）、ロータ角度を推定する種々様々な手法が従来より提案されている（例えば特許文献１、２を参照）。また、本願出願人も、センサレスでロータ角度を推定する手法を例えば特許文献３などにて提案している。
【０００４】
これらの特許文献１〜３に見られる技術では、基本的には、モータに所望のトルクを発生させるように（電流センサにより検出されるモータの電機子の通電電流を所望の目標電流に一致させるように）決定したモータの駆動電圧（以下、基本駆動電圧という）に、該基本駆動電圧の周波数よりも高周波の周期信号を重畳させてなる駆動電圧を電機子に印加して、該モータを駆動する。そして、特許文献１に見られる技術（特に重畳する周期信号を方形波とした場合の技術）では、この駆動時の電機子の電流変化（重畳した周期信号によるαβ座標系での電流変化）を電流センサの出力から観測し、その電流変化に基づいてロータ角度を推定する。また、特許文献２、３に見られる技術では、周期信号を重畳した駆動電圧によるモータの駆動時の電機子の電流変化（重畳した周期信号による各相の電機子の電流変化、あるいは、ｄｑ座標系での電流変化）を電流センサの出力から観測し、その電流変化に基づいて（より具体的には、電流変化の２階差分に基づいて）ロータ角度を推定する。
【０００５】
なお、本願出願人は、電流変化の１階差分に基づいて、ロータ角度を推定する手法も、特願２００４−３０４４９２号にて提案している。
【特許文献１】特開２０００−２６２５９２号公報
【特許文献２】特開２０００−１２５５８９号公報
【特許文献３】特開２００４−１２０８３４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
ところで、上記のように、モータの基本駆動電圧に高周波の周期信号を重畳させながらロータ角度を推定する従来の技術では、電機子の電流変化は、モータのトルク制御のためにあらかじめ該モータに備えられた電流センサの出力を基に観測される。この場合、電流センサの出力をアクティブフィルタ等により構成したハイパスフィルタに通すことで、高周波の周期信号に応じた電流成分を抽出し（モータの基本駆動電圧の周波数などの低周波域の電流成分を相対的に減少させる）、その抽出した電流成分の変化が重畳する周期信号に応じた電流変化として検出される。
【０００７】
一方、モータの基本駆動電圧に高周波の周期信号を重畳して、該モータを駆動すると、その周期信号の重畳に伴う耳障りな可聴域の音が発生する場合がある。そして、その発生音は、重畳する周期信号の振幅レベルを大きくするほど、大きくなる。従って、該発生音をできるだけ小さくするために、基本駆動電圧に重畳する周期信号の振幅レベルは、できるだけ小さいことが望ましい。
【０００８】
しかしながら、周期信号の振幅レベルを小さくすると、電流センサの出力からハイパスフィルタで抽出される電流成分のレベルも小さくなり、該電流成分の変化を高分解能で観測することが困難となる。これは、ハイパスフィルタの入力である電流センサの出力のレベル（絶対値）、あるいはハイパスフィルタのフルスケール入力に対して、前記周期信号に対応する電流成分のレベルが小さくなり過ぎるからである。
【０００９】
これに対する対策としては、ハイパスフィルタのゲインを大きくすることが考えられる。あるいは、ハイパスフィルタを多段にして、低周波域の減衰率を高くすることが考えられる。しかるに、ハイパスフィルタのゲインを周期信号の周波数付近の高周波域だけ大きくすることは一般には困難である。このため、ハイパスフィルタのゲインを大きくすると、周期信号の周波数付近の高周波域だけでなく、低周波数域においてもゲインが大きくなる。その結果、ハイパスフィルタの出力には、前記基本駆動電圧の周波数に相当する低周波域の成分が多く含まれるようになり、該ハイパスフィルタの出力から、周期信号に応じた電流変化を検出することが困難となる。さらに、ハイパスフィルタのゲインを大きくし過ぎると、ハイパスフィルタの出力のうち、周期信号に応じた高周波成分が飽和して、該周期信号に応じた電流変化を適切に観測することが困難となる。
【００１０】
また、ハイパスフィルタを多段にした場合には、電流センサの出力に対するハイパスフィルタの出力の位相ずれが大きくなるため、周期信号に応じた電流変化を適切に観測することが困難となる。
【００１１】
本発明はかかる背景に鑑みてなされたものであり、基本駆動電圧に重畳する周期信号の振幅レベルを小さくしても、該周期信号に応じた電機子の電流変化を検出することができ、ひいては、周期信号の重畳に伴う発生音を十分に小さくしつつ、ロータ角度の推定を行なうことができるＤＣブラシレスモータのロータ角度推定装置およびロータ角度推定方法を提供することを目的とする。さらには、そのロータ角度推定のための手段を利用して、ＤＣブラシレスモータに備えた電流センサの故障検知も行なうことを可能としたロータ角度推定装置およびロータ角度推定方法を提供することを目的とする。
【課題を解決するための手段】
【００１２】
まず、本発明の基本的原理を説明する。図１に実線で示すように、ＤＣブラシレスモータの電機子の電流路１（電機子の電流を流す導線）に環状の磁性体コア３を外挿して設けたとき（環状の磁性体コア３の軸心部（中空部分）に電流路１を通したとき）、次式（１）に示される如く、該磁性体コア３に発生する磁束Φは、電流路１に流れる電流Ｉ（磁性体コア３の軸心部を貫通する電流）に比例する。
【００１３】
Φ＝ｋ1・Ｉ      ……（１）
なお、式（１）の右辺の比例定数ｋ1は、磁性体コア３の磁路長ｌm、磁路面積Ａ、および透磁率μに応じて定まる磁性体コア３の磁気抵抗Ｒm（具体的にはＲm＝ｌm／（μ・Ａ））の逆数である。補足すると、図１の仮想線で示す如く、電流路１を環状に巻回して、磁性体コア３の軸心部を通る電流路１の総数（導線数）を複数にしても、ΦとＩとの間の比例関係は成立する。但し、この場合には、式（１）の比例定数ｋ1の値は、磁性体コア３の磁気抵抗Ｒmの逆数に、磁性体コア３の軸心部を通る電流路１の総数ｎ1を乗じた値となる。従って、ｋ1の値は、一般的には、ｎ1＝１の場合を含めて、ｋ1＝ｎ1／Ｒmである。
【００１４】
ここで、図１に示す如く、磁性体コア３に巻き数ｎ2のサーチコイル５を巻回した場合を想定する。このとき、該サーチコイル５の出力電圧Ｖは、次式（２）により表される。
【００１５】
Ｖ＝ｎ2・dΦ/dt    ……（２）
そして、この式（２）の右辺に前記式（１）を適用すると、次式（３）が得られる。
【００１６】
Ｖ＝ｎ2・ｋ1・dＩ/dt    ……（３）
従って、サーチコイル５の出力電圧Ｖは、電流Ｉの微分値（時間的変化率）に比例する。換言すれば、サーチコイル５の出力電圧Ｖは、電流Ｉの値の大きさ（絶対値）には依存せず、該電流Ｉの時間的変化だけに依存する。そこで、出力電圧Ｖを、所望の期間内で積分することで、電流Ｉの値の大きさによらずに、該期間における電流Ｉの変化量を検出できることとなる。
【００１７】
本発明は、この原理を利用するものである。以下に本発明を説明する。
【００１８】
本発明のＤＣブラシレスモータのロータ角度推定装置は、前記の目的を達成するために、ＤＣブラシレスモータの電機子に流れる電流を検出する電流検出手段と、該電流検出手段による検出電流を所定の目標電流に収束させるように前記電機子に印加すべき基本駆動電圧を決定する基本駆動電圧決定手段と、該基本駆動電圧に該基本駆動電圧の周波数よりも高周波の周期信号を重畳してなる駆動電圧を前記電機子に印加することにより該電機子に通電する通電手段と、前記周期信号による前記電機子の電流変化を検出し、その電流変化に基づき前記モータのロータ角度を推定する角度推定手段とを備えたＤＣブラシレスモータのロータ角度推定装置において、前記電機子の電流路に外挿して設けられた環状の磁性体コアと、該磁性体コアに巻回され、前記電機子の通電時に該磁性体コアに発生する磁束の時間的変化率に応じた電圧を出力するサーチコイルと、該サーチコイルの出力を前記基本駆動電圧が一定に維持される状態で前記周期信号の１周期内の所定期間で積分する積分手段とを備え、前記角度推定手段は、前記積分手段の出力に基づき、前記所定期間における電流変化を検出し、その検出した電流変化に基づき前記モータのロータ角度を推定する手段である。さらに、前記通電手段は、前記基本駆動電圧に前記周期信号を重畳してなる駆動電圧を、所定の制御サイクルで決定しつつＰＷＭ制御により前記電機子に印加する手段であり、前記所定の制御サイクルは、前記ＰＷＭ制御のキャリアの１周期の期間であり、前記周期信号は、２制御サイクル以上の期間を１周期とする周期信号であり、前記キャリアは、その１周期分の波形が該１周期の前半と後半とで対称となる三角波であり、前記所定期間は、該キャリアの各周期の前半または後半のいずれかの期間であり、該キャリアの各周期のうちの前記所定期間以外の期間で前記積分手段の出力を０にリセットする手段を備えたことを特徴とする（第１発明）。
【００１９】
かかる第１発明によれば、前記サーチコイルの出力は、前記したように電機子を流れる電流の時間的変化率に比例するので、該サーチコイルの出力を前記所定期間（ロータ角度の推定に必要な電流変化を検出すべき所定期間）で前記積分手段により積分することにより得られる該積分手段の出力（積分値）は、該所定期間における電流変化量（該所定期間の開始時から終了時までの電流変化量）を示すものとなる。この場合、前記サーチコイルの出力は、前記所定期間における電機子の電流の大きさ（これは主に前記基本駆動電圧に依存する）に依存せず、その時間的変化率（これは主に前記周期信号に依存する）だけに依存するので、前記積分手段の入力の中心レベルをほぼ０にできる。このため、サーチコイルの出力に対する該積分手段の出力の感度を高めることが可能となり、前記周期信号の振幅レベルが微小であっても、該所定期間における電流変化を積分手段の出力に基づいて精度よく検出することが可能となる。そして、このように検出した電流変化を基に、ロータ角度を推定するので、その推定を適切に行なうことができる。
【００２０】
従って、第１発明のロータ角度推定装置によれば、基本駆動電圧に重畳する周期信号の振幅レベルを小さくしても、該周期信号に応じた電機子の電流変化を前記積分手段の出力に基づいて精度よく検出することができ、ひいては、周期信号の重畳に伴う発生音を十分に小さくしつつ、ロータ角度の推定を適切に行なうことができる。
【００２２】
また、前記ＰＷＭ制御では、所定の制御サイクル毎に、各制御サイクルの期間における駆動電圧を三角波などのキャリアのレベルと比較することで、ＰＷＭインバータ回路の制御信号（パルス）を生成することとなる。このため、前記所定期間を該ＰＷＭ制御のキャリアに同期した期間とすることによって、前記駆動電圧に含まれる周期信号に対応した電流変化を前記積分手段の出力に基づいて適切に検出することができる。
【００２４】
さらに、前記キャリア（三角波）の１周期の前半と後半とで、前記電機子に流れる電流変化はほぼ同一となる。従って、該キャリアの１周期の前半または後半の期間を前記所定期間として、前記積分手段による積分を行ない、また、該所定期間以外の期間で積分手段の出力を０にリセットすることで、前記所定の制御サイクル毎に（前記キャリアの１周期毎に）、各制御サイクルの全期間における電機子の電流変化量の半分の電流変化量が検出できる。従って、キャリアの１周期を１制御サイクルとする各制御サイクル毎に周期信号のレベルを変更しながら、その周期信号に対応した電流変化量を積分手段の出力に基づいて検出できる。このため、周期信号の１周期内の電流変化量をＰＷＭ制御のキャリアの１周期毎に細かく検出することができ、ひいては、ロータ角度の推定の精度を高めることが可能となる。
【００２５】
また、以上説明した第１発明のロータ角度推定装置では、前記磁性体コアは、前記電流検出手段にその電流検出用としてあらかじめ備えられた磁性体コアであることが好ましい（第２発明）。
【００２６】
すなわち、サーチコイルを巻回する磁性体コアとして、電流検出手段に備えられている磁性体コアを用いることで、ロータ角度推定装置の部品点数を少なくできる。なお、電流検出手段としては、ホール素子型の電流センサが好適である。より一般的には、電流検出手段は、それが備える磁性体コアに発生する磁束が、該磁性体コアの軸心部を通る電流（電機子の電流路の電流）のみに依存する（電流検出が該磁束に影響を及ぼさない）ような電流センサであればよい。
【００２７】
また、前記第１又は第２発明のロータ角度推定装置では、前記電流検出手段による前記所定期間における検出電流の変化と、前記積分手段の出力が示す電流変化とを比較することにより、前記電流検出手段の故障の有無を判断する故障検出手段を備えることが好ましい（第３発明）。
【００２８】
すなわち、電流検出手段による前記所定期間における検出電流の変化は、該電流検出手段が正常であれば、前記積分手段の出力が示す電流変化と概ね同じになる。従って、電流検出手段による前記所定期間における検出電流の変化と、前記積分手段の出力が示す電流変化とを比較することにより、前記電流検出手段の故障の有無を判断することができる。
【００２９】
また、本発明のＤＣブラシレスモータのロータ角度推定方法は、前記の目的を達成するために、ＤＣブラシレスモータの電機子に流れる電流を電流検出手段により検出しつつ、その検出電流を所定の目標電流に収束させるように該電機子に印加すべき基本駆動電圧を決定する第１ステップと、該基本駆動電圧に該基本駆動電圧の周波数よりも高周波の周期信号を重畳してなる駆動電圧を前記電機子に印加することにより該電機子に通電する第２ステップとを備え、該電機子の通電時に前記周期信号による電機子の電流変化を検出し、その検出した電流変化に基づき前記モータのロータ角度を推定するＤＣブラシレスモータのロータ角度推定方法において、前記電機子の電流路に外挿して設けられた環状の磁性体コアと、該磁性体コアに巻回され、前記電機子の通電時に該磁性体コアに発生する磁束の時間的変化率に応じた電圧を出力するサーチコイルとを備えておき、前記基本駆動電圧が一定に維持される状態で前記サーチコイルの出力を前記周期信号の１周期内の所定期間で積分することにより、該所定期間における電機子の電流変化を検出するステップを備え、その検出した電流変化に基づき前記モータのロータ角度を推定する方法であり、前記第２ステップは、前記基本駆動電圧に前記周期信号を重畳してなる駆動電圧、所定の制御サイクルで決定しつつ前記電機子にＰＷＭ制御により印加するステップであり、前記所定の制御サイクルは、前記ＰＷＭ制御のキャリアの１周期の期間であり、前記周期信号は、２制御サイクル以上の期間を１周期とする周期信号であり、前記キャリアは、その１周期分の波形が該１周期の前半と後半とで対称となる三角波であり、前記所定期間は、該キャリアの各周期の前半または後半のいずれかの期間であり、該キャリアの各周期のうちの前記所定期間以外の期間で前記サーチコイルの出力の積分値を０にリセットするようにしたことを特徴とする（第４発明）。
【００３０】
かかる第４発明によれば、前記所定期間（ロータ角度の推定に必要な電流変化を検出すべき所定期間）で前記サーチコイルの出力を積分するので、前記第１発明のロータ角度推定装置と同様に、該所定期間における電流変化を積分手段の出力に基づいて精度よく検出することが可能となる。そして、このように検出した電流変化を基に、ロータ角度を推定するので、その推定を適切に行なうことができる。
【００３１】
従って、第６発明のロータ角度推定方法によれば、基本駆動電圧に重畳する周期信号の振幅レベルを小さくしても、該周期信号に応じた電機子の電流変化を前記積分手段の出力に基づいて精度よく検出することができ、ひいては、周期信号の重畳に伴う発生音を十分に小さくしつつ、ロータ角度の推定を適切に行なうことができる。
【００３３】
また、前記第１発明と同様に、前記駆動電圧に含まれる周期信号に対応した電流変化を前記積分手段の出力に基づいて適切に検出することができる。
【００３５】
さらに、前記第１発明と同様に、キャリアの１周期を１制御サイクルとする各制御サイクル毎に周期信号のレベルを変更しながら、その周期信号に対応した電流変化量を前記所定期間における積分値（１制御サイクルの全期間における電流変化量の半分）に基づいて検出できるので、周期信号の１周期内の電流変化量をＰＷＭ制御のキャリアの１周期毎に細かく検出することができ、ひいては、ロータ角度の推定の精度を高めることが可能となる。
【００３６】
また、前記第４発明のロータ角度推定方法では、前記磁性体コアは、前記電流検出手段にその電流検出用としてあらかじめ備えられた磁性体コアであることが好ましい（第５発明）。
【００３７】
この第５発明によれば、前記第２発明と同様に、サーチコイルを巻回する磁性体コアとして、電流検出手段に備えられている磁性体コアを用いることで、ロータ角度推定装置の部品点数を少なくできる。なお、電流検出手段としては、ホール素子型の電流センサなど、それが備える磁性体コアに発生する磁束が、該磁性体コアの軸心部を通る電流のみに依存するような電流センサであればよい。
【００３８】
また、前記第４又は第５発明では、前記電流検出手段による前記所定期間における検出電流の変化と、該所定期間における前記積分により検出された電流変化とを比較することにより、前記電流検出手段の故障の有無を判断するステップをさらに備えることが好ましい（第６発明）。
【００３９】
この第６発明によれば、電流検出手段による前記所定期間における検出電流の変化と、前記積分により検出された電流変化とを比較することにより、前記第３発明と同様に、前記電流検出手段の故障の有無を判断することができる。
【００４０】
なお、以上説明した第１〜第６発明において、前記基本駆動電圧に周期信号を重畳してなる駆動電圧を所定の制御サイクルで決定しつつ前記電機子に印加する場合、前記周期信号は、例えば２制御サイクル以上の期間を１周期とする周期信号とする。そして、該周期信号は、その１周期の期間における該周期信号の電圧の総和（時間平均値）が０となり、または、該１周期のうちの２制御サイクル以上の期間毎の該周期信号の電圧の総和（時間平均値）が０となるような周期信号とする。この場合、該周期信号の電圧の総和が０となる期間内の各制御サイクルにおける前記電機子の電流変化を前記積分手段の出力もしくは積分値に基づいて検出することで、当該期間内の各制御サイクルの電流変化の検出値から、ロータ角度を推定することができる。なお、この場合、前記基本駆動電圧は、周期信号の電圧の総和が０となる期間で一定値に維持されるように（該期間を１サイクルとする更新周期で）、決定するようにすればよい。
【発明を実施するための最良の形態】
【００４１】
本発明の一実施形態を図２〜図７を参照して説明する。図２は本実施形態に係るＤＣブラシレスモータの制御装置の機能的構成を示すブロック図、図３は該制御装置に備えたパワードライブユニットによるＰＷＭ制御を説明するための図、図４（ａ）は本実施形態で基本駆動電圧に重畳する周期信号の例を示す図、図４（ｂ）は周期信号の他の例を示す図、図５は本実施形態での電流センサ、サーチコイルおよび積分器の構成を示す図、図６（ａ），（ｂ）はＰＷＭ制御のキャリアと積分器の動作との関係を示す図、図７はロータ角度の推定処理を示すフローチャートである。
【００４２】
図２を参照して、１０はＤＣブラシレスモータ、１２はＤＣブラシレスモータ１を制御する制御装置である。本実施形態では、ＤＣブラシレスモータ１０（以下、単にモータ１０という）は、３相（Ｕ相、Ｖ相、Ｗ相）の電機子１４Ｕ，１４Ｖ，１４Ｗをステータに備えたモータである。また、モータ１０のロータ（図示省略）は、永久磁石により構成された突極型のロータである。なお、以下の説明では、各電機子１４Ｕ，１４Ｖ，１４Ｗを互いに区別する必要がないときは、単に電機子１４という。
【００４３】
このモータ１０を制御する制御装置１２は、マイクロコンピュータを含む電子回路により構成されている。該制御装置１２は、その機能を概略的に説明すると、モータ１０の各相の電機子１４に流れる電流（相電流）を所要の目標電流にフィードバック制御する機能を持つ。
【００４４】
この場合、本実施形態では、モータ１０のロータの界磁極の磁束方向をｑ軸、該ｑ軸と直交する方向をｄ軸とするｄｑ座標系（ロータと一体に回転する回転座標系）を使用し、モータ１０を、ｑ軸上のｑ軸電機子とｄ軸のｄ軸電機子とを有する等価回路に変換して扱う。そして、制御装置１２は、外部から与えられるｄ軸電流の目標値であるｄ軸目標電流Ｉd_cとｑ軸電流の目標値であるｑ軸目標電流Ｉq_cとに応じて、ｄ軸電機子に流れる電流（以下、ｄ軸電流という）とｑ軸電機子に流れる電流（以下、ｑ軸電流という）とをフィードバック制御する。すなわち、ｄ軸電流およびｑ軸電流をそれぞれＩd_c、Ｉq_cに一致させるように（収束させるように）フィードバック制御する。なお、周知のように、ｄ軸電流およびｑ軸電流は、ロータ角度に応じた変換行列（各要素値がロータ角度に応じて定まる変換行列）によって、モータ１の各相の電機子１４の電流（相電流）との間で一義的に変換できるので、ｄ軸電流およびｑ軸電流をそれぞれＩd_c、Ｉq_cに制御するということは、モータ１の各相の相電流を、Ｉd_c、Ｉq_cに対応する目標電流（Ｉd_c、Ｉq_cを変換してなる相電流）に制御することと等価である。
【００４５】
また、制御装置１２は、上記のようなフィードバック制御を行ないながら、ロータ角度を逐次推定する処理も実行する。従って、該制御装置１２は、本発明のロータ角度推定装置としての機能も含んでいる。
【００４６】
以下に制御装置１２を詳細に説明する。
【００４７】
制御装置１２は、モータ１の３相の電機子１４Ｕ，１４Ｖ，１４Ｗのうちの２相の電機子、例えばＵ相電機子１４ＵおよびＷ相電機子１４Ｗに流れる電流をそれぞれ検出するＵ相電流センサ１６およびＷ相電流センサ１８と、Ｕ相電流センサ１６の検出電流値ＩuとＷ相電流センサ１８の検出電流値Ｉwとからｄ軸電流の検出値であるｄ軸実電流Ｉdとｑ軸電流の検出値であるｑ軸実電流Ｉqとを算出する３相／ｄｑ変換部２０とを備えている。電流センサ１６，１８は本発明における電流検出手段に相当する。
【００４８】
補足すると、各相の電機子１４を流れる電流の総和は０になるので、３相の電機子１４Ｕ，１４Ｖ，１４Ｗのうちの２相の電機子のそれぞれを流れる電流を検出すれば、それらの検出値から残りの１相の電機子を流れる電流を算出できる。このため、本実施形態では、３相／ｄｑ変換部２０において、検出電流値Ｉu，ＩwからＶ相電機子１４Ｖを流れる電流の検出値としての検出電流値Ｉv（＝−Ｉu−Ｉw）が算出される。そして、これらの検出電流値Ｉu，Ｉv，Ｉwからなるベクトル(Ｉu，Ｉv，Ｉw)ｔ（「ｔ」は転置を意味する）に、ロータ角度に応じて各要素値が決定される公知の変換行列（２行３列行列）を乗じることにより、ｄ軸実電流Ｉdとｑ軸実電流Ｉqとからなる実電流ベクトル(Ｉd，Ｉq)ｔが算出される。この場合、３相／ｄｑ変換部２０の変換行列の各要素値は、後述する角度推定部５０で求められたロータ角度の推定値θ^に応じて決定される。
【００４９】
また、制御装置１２は、ｄ軸実電流Ｉdおよびｑ軸実電流Ｉqと外部から与えられる前記ｄ軸目標電流Ｉd_cおよびｑ軸目標電流Ｉq_cとに応じてｄ軸電機子への印加電圧の基本指令値であるｄ軸基本駆動電圧Ｖfbdとｑ軸電機子への印加電圧の基本指令値であるｑ軸基本駆動電圧Ｖfbqとを決定する処理を行なう基本駆動電圧決定部２２（これは本発明における基本駆動電圧決定手段に相当する）と、そのｄ軸基本駆動電圧Ｖfbdおよびｑ軸基本駆動電圧Ｖfbqにそれぞれロータ角度検出用の周期信号ＶhdおよびＶhqを重畳する周期信号重畳部２４と、その重畳により得られたｄ軸駆動電圧指令値Ｖd_cおよびｑ軸駆動電圧指令値Ｖq_cをモータ１０のＵ相、Ｖ相、Ｗ相のそれぞれの相電圧指令値Ｖu_c，Ｖv_c，Ｖw_cに変換するｄｑ／３相変換部２６と、相電圧指令値Ｖu_c，Ｖv_c，Ｖw_cの電圧をそれぞれＰＷＵ制御によりモータ１０のＵ相電機子１４Ｕ、Ｖ相電機子１４Ｖ、Ｗ相電機子１４Ｗに印加して、各相の電機子１４に通電するパワードライブユニット２８（以下、ＰＤＵ２８という）とを備えている。なお、本実施形態では、周期信号重畳部２４、ｄｑ／３相変換部２６およびＰＤＵ２８により本発明における通電手段が構成されている。
【００５０】
ＰＤＵ２８は、公知のＰＷＭインバータ回路により構成されたものであり、図３に示す如く、三角波のキャリアＣaと、各相電圧指令値Ｖu_c，Ｖv_c，Ｖw_cとを比較することにより、図示しないインバータ回路のスイッチング素子の制御信号Ｓを生成し、この制御信号Ｓによりスイッチング素子をＯＮ・ＯＦＦさせることで、各相の電機子１４に通電する。なお、本実施形態では、キャリアＣa（以下、ＰＷＭキャリアＣaという）は、その１周期分の個々の三角波形が、該１周期の前半と後半とで対称となる三角波である。
【００５１】
また、基本駆動電圧決定部２２は、より具体的には、図示の如く、減算器３０、ＰＩ演算部３２、加算器３４、および非干渉演算部３６を備えており、これらにより、次のようにしてｄ軸基本駆動電圧Ｖfbdおよびｑ軸基本駆動電圧Ｖfbqを決定する。
【００５２】
すなわち、３相／ｄｑ変換部２０で算出される実電流ベクトル(Ｉd，Ｉq)ｔと、前記ｄ軸目標電流Ｉd_cおよびｑ軸目標電流Ｉq_cから成る目標電流ベクトル(Ｉd_c，Ｉq_c)ｔとの差である電流偏差ベクトル(Ｉd_c−Ｉd，Ｉq_c−Ｉq)ｔが減算器３０により算出される。
【００５３】
そして、この電流偏差ベクトル(Ｉd_c−Ｉd，Ｉq_c−Ｉq)ｔに応じて、ＰＩ演算部３２により要求駆動電圧ベクトル(Ｖfbd_s，Ｖfbd_s)ｔが算出される。該要求駆動電圧ベクトル(Ｖfbd_s，Ｖfbd_s)ｔは、電流偏差ベクトル(Ｉd_c−Ｉd，Ｉq_c−Ｉq)ｔのｄ軸成分(Ｉd_c−Ｉd)を０に収束させるために要求されるｄ軸電機子の要求駆動電圧Ｖfbd_sと、ｑ軸成分(Ｉq_c−Ｉq)を０に収束させるために要求されるｑ軸電機子の要求駆動電圧Ｖfbd_sとからなるベクトルである。ＰＩ演算部３２は、この要求駆動電圧ベクトル(Ｖfbd_s，Ｖfbd_s)ｔを、電流偏差ベクトル(Ｉd_c−Ｉd，Ｉq_c−Ｉq)ｔからフィードバック制御則としてのＰＩ制御則（比例・積分制御則）により算出する。なお、ＰＩ制御則以外のフィードバック制御則を使用してもよい。
【００５４】
一方、非干渉演算部３６は、ｄ軸とｑ軸との間で干渉し合う速度起電力の影響（電流偏差ベクトル(Ｉd_c−Ｉd，Ｉq_c−Ｉq)ｔを０に収束させるための制御に対する影響）を打ち消すためのｄ軸電機子の駆動電圧の補償量Ｖcdとｑ軸電機子の駆動電圧の補償量Ｖcqとからなるベクトルである非干渉成分ベクトル(Ｖcd，Ｖcq)ｔをｄ軸実電流Ｉdおよびｑ軸実電流Ｉqに応じて算出する。そして、基本駆動電圧決定部２２は、この非干渉成分ベクトル(Ｖcd，Ｖcq)ｔを、加算器３４により前記要求駆動電圧ベクトル(Ｖfbd_s，Ｖfbd_s)ｔに加算することにより、ｄ軸基本駆動電圧Ｖfbdおよびｑ軸基本駆動電圧Ｖfbqから成る基本駆動電圧ベクトル(Ｖfbd，Ｖfbd)ｔを算出する。
【００５５】
以上説明した基本駆動電圧決定部２２の処理により、ｄ軸実電流Ｉdおよびｑ軸実電流Ｉqをそれぞれｄ軸目標電流Ｉd_c、ｑ軸目標電流Ｉq_cに一致させるように、ｄ軸基本駆動電圧Ｖfbdおよびｑ軸基本駆動電圧Ｖfbqが決定されることとなる。
【００５６】
制御装置１２は、基本的には、ｄ軸基本駆動電圧Ｖfbdおよびｑ軸基本駆動電圧Ｖfbqをそれぞれｄ軸駆動電圧指令値Ｖd_cおよびｑ軸駆動電圧指令値Ｖq_cとしてｄｑ／３相変換部２６に入力し、このｄ軸駆動電圧指令値Ｖd_cおよびｑ軸駆動電圧指令値Ｖq_cからｄｑ／３相変換部２６により相電圧指令値Ｖu_c，Ｖv_c，Ｖw_cを決定する。該ｄｑ／３相変換部２６は、ロータ角度に応じて各要素値が決定される公知の変換行列（３行２列行列）をｄ軸駆動電圧指令値Ｖd_cおよびｑ軸駆動電圧指令値Ｖq_cから成る駆動電圧指令値ベクトル(Ｖd_c，Ｖq_c)ｔに乗じることにより、相電圧指令値Ｖu_c，Ｖv_c，Ｖw_cから成る相電圧指令値ベクトル(Ｖu_c，Ｖv_c，Ｖw_c)ｔを算出する。この場合、ｄｑ／３相変換部２６の変換行列の各要素値は、前記３相／ｄｑ変換部２０の変換行列と同様に、後述する角度推定部５０で求められたロータ角度の推定値θ^に応じて決定される。
【００５７】
そして、制御装置１２は、このように決定された相電圧指令値Ｖu_c，Ｖv_c，Ｖw_cに応じて、前記したようにＰＤＵ２８によりモータ１０の各相の電機子１４の通電を制御することで、ｄ軸電流およびｑ軸電流をそれぞれ前記ｄ軸目標電流Ｉd_c、ｑ軸目標電流Ｉq_cに一致させるようにフィードバック制御する。
【００５８】
なお、制御装置１２の処理は、所定の制御サイクルで実行される。この場合、１制御サイクルの時間は、本実施形態では、前記ＰＷＭキャリアＣａ（三角波）の１周期の時間（具体的には、三角波の谷部（極小点）の時刻から次の谷部の時刻までの時間）と同じである（前記図３を参照）。但し、後述するロータ角度の推定処理を実行しているときは、基本駆動電圧決定部２２は、前記周期信号重畳部２４により周期信号Ｖhd，Ｖhqを重畳するｄ軸基本駆動電圧Ｖfbdおよびｑ軸基本駆動電圧Ｖfbqを、該周期信号Ｖhd，Ｖhqの１周期に相当する所定数ｎ（ｎ≧２）の制御サイクルの期間（本実施形態ではｎ＝３）で一定に維持するように（ｎ制御サイクル毎にＶfbdおよびＶfbqを更新するように）、ＶfbdおよびＶfbqを決定する。
【００５９】
モータ１０のｄ軸電流およびｑ軸電流を上記のようにフィードバック制御するためには、前記３相／ｄｑ変換部２０およびｄｑ／３相変換部２６の処理で、ロータ角度が必要となる。そこで、本実施形態では、このロータ角度をセンサレスで（レゾルバ等の位置検出センサを使用せずに）推定するために、前記周期信号重畳部２４によりｄ軸基本駆動電圧Ｖfbdおよびｑ軸基本駆動電圧Ｖfbqにそれぞれ周期信号Ｖhd，Ｖhqを重畳する。具体的には、該周期信号重畳部２４は、基本駆動電圧決定部２２で決定された基本駆動電圧ベクトル(Ｖfbd，Ｖfbq)ｔに、周期信号Ｖhd，Ｖhqの値（電圧値）を成分とする周期信号ベクトル(Vhd，Ｖhq)ｔを加算器３８を介して加算することにより、該周期信号Ｖhd，Ｖhqをそれぞれ、Ｖfbd、Ｖfbqに重畳する。この重畳により、Ｖfbd＋Ｖhd、Ｖfbq＋Ｖhqがそれぞれｄ軸駆動電圧指令値Ｖd_c、ｑ軸駆動電圧指令値Ｖq_cとして決定され、このｄ軸駆動電圧指令値Ｖd_cおよびｑ軸駆動電圧指令値Ｖq_cがｄｑ／３相変換部２６を介して相電圧指令値Ｖu_c，Ｖv_c，Ｖw_cに変換される。
【００６０】
ここで、周期信号Ｖhd，Ｖhqは、一般的には、ｎ個（ｎ≧２）の連続する制御サイクルを１周期とし、且つ、その１周期内の連続した２制御サイクル以上の期間（１周期の全期間を含む）における周期信号Ｖhd，Ｖhqのそれぞれの総和（当該期間における時間平均値）が０となるような周期信号である。より正確には、周期信号Ｖhd，Ｖhqは、次式（４）を満たす信号である。
【００６１】
【数１】
0004657892.tif 000002
【００６２】
なお、Ｖhd(j)，Ｖhq(j)（ｊ＝１，２，…，ｎ）は、周期信号Ｖhd，Ｖhqの１周期内のｊ番目の制御サイクルにおけるＶhd，Ｖhqの値（電圧値）である。
【００６３】
本実施形態では、例えば図４（ａ）に示す如く、周期信号Ｖhd，Ｖhqは、３制御サイクルを１周期とし（ｎ＝３とする）、且つ、その１周期の各制御サイクル（時刻Ｔ11、Ｔ12、Ｔ13の制御サイクル）におけるＶhd，Ｖhqのそれぞれの電圧値の総和（１周期の期間における時間平均値）が０となるようなパターンで設定された周期信号である。また、該周期信号Ｖhd，Ｖhqの電圧値の大きさは、それぞれｄ軸基本駆動電圧Ｖfbd、ｑ軸基本駆動電圧Ｖfbqに比して十分小さいものに設定されている。なお、図４（ａ）の丸付き数字を付した各矢印は、周期信号Ｖhd，Ｖhqの１周期の各制御サイクル（時刻Ｔ11、Ｔ12、Ｔ13の制御サイクル）における周期信号ベクトル(Ｖhd，Ｖhq)ｔを示している。また、丸付き数字は、１周期における周期信号ベクトル(Ｖhd，Ｖhq)ｔの発生順番を示している。
【００６４】
補足すると、周期信号Ｖhd，Ｖhqは、例えば図４（ｂ）に示すように、４制御サイクルを１周期とし、且つ、その１周期内の連続した２制御サイクル毎の（時刻Ｔ11、Ｔ12、Ｔ13の制御サイクル）電圧値の総和（時刻Ｔ21，Ｔ22の２つの制御サイクルおける電圧値の総和と、時刻Ｔ23，Ｔ24の２つの制御サイクルにおける電圧値の総和）が０となるようなパターンで設定してもよい。なお、図４（ｂ）の丸付き数字を付した各矢印および該丸付き数字の意味は、図４（ａ）の場合と同様である。
【００６５】
また、周期信号Ｖhd，Ｖhqをｄ軸基本駆動電圧Ｖfbdおよびｑ軸基本駆動電圧Ｖfbqに重畳するということは、基本駆動電圧ベクトル(Ｖfbd，Ｖfbq)ｔをｄｑ／３相変換部２６により変換してなる各相の相電圧指令値に、周期信号ベクトル(Ｖhd，Ｖhq)ｔをｄｑ／３相変換部２６により変換してなる各相の周期信号（この周期信号もその１周期における電圧値の総和が０になる）を重畳することと等価である。従って、周期信号の重畳は、ｄｑ／３相変換部２６の入力側で行う代わりに、出力側で行うようにしてもよい。
【００６６】
なお、上記のような周期信号Ｖhd，Ｖhqをそれぞれｄ軸基本駆動電圧Ｖfbd、ｑ軸基本駆動電圧Ｖfbqに重畳してモータ１０の通電制御を行なったとき、周期信号Ｖhd，Ｖhqの１周期の期間（あるいは周期信号Ｖhd，Ｖhqの電圧値の総和が０となる期間）における基本駆動電圧ベクトル(Ｖfbd，Ｖfbq)ｔを一定としたとき、該期間におけるモータ１０の各相の電機子１４の電流、あるいは、ｄ軸電機子およびｑ軸電機子の電流は、基本駆動電圧ベクトル(Ｖfbd，Ｖfbq)ｔに応じた電流（モータ１０に所望のトルクを発生させるための電流）を中心として、周期信号Ｖhd，Ｖhqと同じ周期で微小変動することとなる。
【００６７】
制御装置１２は、モータ１０のロータ角度の推定処理を実行するために、さらに、次のような構成を備えている。
【００６８】
すなわち、図２に示すように、制御装置１２は、前記Ｕ相電流センサ１６およびＷ相電流センサ１８の後述する磁性体コアにそれぞれ組み付けられたサーチコイル４０，４２の出力電圧Ｖsu、Ｖswをそれぞれ後述する所定期間（本実施形態では各制御サイクル内の所定期間）において積分する積分器４４，４６と、該積分器４４，４６の出力がそれぞれ示すＵ相電機子１４Ｕの電流変化量ΔＩuおよびＷ相電機子１４Ｗの電流変化量ΔＩwから、ｄ軸電機子の電流変化量であるｄ軸電流変化量ΔＩdとｑ軸電機子の電流変化量であるｑ軸電流変化量ΔＩqとを算出する３相／ｄｑ変換部４８と、このｄ軸電流変化量ΔＩdおよびｑ軸電流変化量ΔＩqを用いてモータ１０のロータ角度を推定する（ロータ角度の推定値θ^を算出する）角度推定部５０とを備えている。さらに、制御装置１２は、ロータ角度の推定処理と併せて、Ｕ相電流センサ１６およびＷ相電流センサ１８の故障の有無を検知するために、ｄ軸電流変化量ΔＩdおよびｑ軸電流変化量ΔＩqと前記３相／ｄｑ変換部２０により算出されたｄ軸実電流Ｉdおよびｑ軸実電流Ｉq（詳しくは積分器４４，４６の積分期間におけるｄ軸実電流Ｉdおよびｑ軸実電流Ｉqの変化量）とを基にＵ相電流センサ１６およびＷ相電流センサ１８の故障の有無を検知する故障検知部５２とを備えている。なお、積分器４４，４６は、本発明における積分手段に相当し、角度推定部５０は、本発明における角度推定手段に相当し、故障検知部５２は、本発明における故障検知手段に相当する。
【００６９】
ここで、各電流センサ１６，１８、サーチコイル４０，４２および積分器４４，４６のより具体的な構成を図５を参照して説明する。なお、Ｕ相電流センサ１６、サーチコイル４０および積分器４４の組に関する構成と、電流センサ１８、サーチコイル４２および積分器４６の組に関する構成とは、同じ構成であるので、図５では、Ｗ相電流センサ１８、サーチコイル４２および積分器４６を括弧付きの参照符号で示す。そして、以下では、Ｕ相電流センサ１６、サーチコイル４０および積分器４４の組について、代表的に説明する。
【００７０】
電流センサ１６は、公知のホール素子型電流センサであり、Ｕ相電機子１４Ｕの電流路１Ｕ（ＰＤＵ２８からＵ相電機子１４Ｕに通電する導線）に外挿された環状の磁性体コア５４と、該磁性体コア５４に装着されたホール素子５６と、このホール素子５６の出力を増幅する増幅器５８とを備えている。そして、電流センサ１６は、磁性体コア５４の軸心部を貫通する電流路１Ｕを流れる電流Ｉの値（Ｕ相電機子１４Ｕの検出電流値Ｉu）を示す信号をホール素子５６から増幅器５８を介して出力する。
【００７１】
本実施形態では、このような構成の電流センサ１６の磁性体コア５４を、前記図１に示した磁性体コア３として利用し、該電流センサ１６の磁性体コア５４にサーチコイル４０を巻回している。この場合、サーチコイル４０の出力電圧Ｖは、前記したように、磁性体コア５４の軸心部を貫通する電流路１Ｕを流れる電流Ｉの時間的変化率に比例する。そして、本実施形態では、このサーチコイル４０の出力電圧Ｖを、オペアンプ６０を含む増幅回路６２により増幅した後、スイッチ素子６４を介して積分器４４に入力して積分するようにしている。この場合、積分器４４は、オペアンプ６６とコンデンサ６８とを使用して構成されたものであり、コンデンサ６８の充電電圧を、サーチコイル４０の出力電圧Ｖの積分値、換言すれば、積分器４４の積分期間における電流路１Ｕの電流Ｉの変化量を示すものとして出力する。また、スイッチ素子６４は、その動作状態が、前記ＰＷＭキャリアＣaに同期した制御信号によって、増幅回路６２の出力を積分器４４に入力する状態（以下、ＯＮ状態という）と、その入力を遮断しつつコンデンサ６８を短絡する状態（積分器４４の出力を０にリセットする状態。以下、ＯＦＦ状態という）とに切替わるものである。
【００７２】
上述した電流センサ１６、サーチコイル４０および積分器４４に関する構成は、Ｗ相に関する電流センサ１８、サーチコイル４２および積分器４６の組についても同様である。
【００７３】
ここで、本実施形態におけるロータ角度の推定手法の概要を説明しておく。なお、この手法の基本的原理は、本願出願人が先に出願した特願２００４−３０４４９２号にて詳細に説明されているので、本明細書では、概略的な説明に留める。
【００７４】
ｄ軸電機子のインダクタンスをＬd、ｑ軸電機子のインダクタンスをＬqとし、変数Ｌ0、Ｌ1を次式（５）により定義する。
【００７５】
【数２】
0004657892.tif 000003
【００７６】
また、ロータ角度の実際の値（真値）θと角度推定部５０による推定値θ^との偏差（以下、位相差という）をθe（≡θ−θ^）とおく。そして、前記したように基本駆動電圧ベクトル(Ｖfbd，Ｖfbq)ｔに周期信号ベクトル(Ｖhd，Ｖhq)ｔを重畳した状態において、ある番数ｉの制御サイクルに対して、ｉ＋１番目の制御サイクルからｉ＋ｎ番目の制御サイクルまでの期間における周期信号ベクトル(Ｖhd，Ｖhq)ｔの総和が０で、且つ、該期間における基本駆動電圧ベクトル(Ｖfbd，Ｖfbq)ｔが一定であるとする。また、ｉ＋ｊ番目（ｊ＝１，２，……，ｎ）の制御サイクルからｉ＋ｊ＋１番目の制御サイクルまでの１制御サイクルの期間におけるｄ軸実電流Ｉdの１階差分ｄＩd(i+j)（＝（Ｉd(i+j+1)−Ｉd(i+j)）／ΔＴ）とｑ軸実電流Ｉqの１階差分ｄＩq(i+j)（＝（Ｉq(i+j+1)−Ｉq(i+j)）／ΔＴ）とからなる１階差分ベクトル(ｄＩd(i+j)，ｄＩq(i+j))ｔをｄＩdq(i+j)とおく（ΔＴは１制御サイクルの時間）。このとき、次式（６）が成立する。
【００７７】
【数３】
0004657892.tif 000004
【００７８】
従って、１階差分ベクトルｄＩdq(i+j)（ｊ＝１，２，…，ｎ）を観測することにより、その観測値から、式（６）により、位相差θeの２倍角の正弦値、余弦値にそれぞれ比例する値としての正弦参照値Ｖsdq、余弦参照値Ｖcdqを算出することができる。そして、位相差θeは、これらの正弦参照値Ｖsdq、余弦参照値Ｖcdqから、次式（７）により算出できる。
【００７９】
【数４】
0004657892.tif 000005
【００８０】
なお、θeが十分に０に近い場合には、近似的に次式（８）によりθeを算出してもよい。
【００８１】
【数５】
0004657892.tif 000006
【００８２】
さらに、式（７）の右辺は、次式（９）により近似してもよい。
【００８３】
【数６】
0004657892.tif 000007
【００８４】
補足すると、前記式（６）の但し書きで定義した１階差分ベクトルｄＩdq(i+j)（ｊ＝１，２，……，ｎ）に任意の定数（≠０。例えばΔＴ）を乗じてなるベクトルをｄＩdq(i+j)の代わりに用いて、前記式（６）の演算を行なうことにより、正弦参照値Ｖsdqおよび余弦参照値Ｖcdqを算出するようにしてもよい。このようにしても、前記式（７）または（８）または（９）により算出される位相差θeは、式（６）の但し書きで定義した１階差分ベクトルｄＩdqを使用した場合と同じになる。そこで、以降の説明では、式（６）の但し書きで定義した１階差分ベクトルｄＩdqの定数倍（１倍を含む）のベクトルを改めて１階差分ベクトルｄＩdqという。
【００８５】
本実施形態では、上記のように算出される位相差θeを用いて、次式（１０）により表されるオブザーバによって、ロータ角度の推定値θ^を逐次算出する。
【００８６】
【数７】
0004657892.tif 000008
【００８７】
なお、ω^は、ロータ角度の角速度の推定値（θ^の時間的変化率）、Δｔはロータ角度の推定値θ^の更新サイクルの時間、ｋはθ^の更新番数、K1，K2，K~は、あらかじめ設定されるゲイン係数、offsetはあらかじめ設定されるオフセット値である。
【００８８】
かかる式（１０）により表されるオブザーバは、位相差θeを０に近づけるように（ロータ角度の推定値θ^を実際の値θに近づけるように）、推定値θ^をΔｔのサイクルで逐次更新しつつ算出するものである。
【００８９】
以上が、本実施形態におけるロータ角度の推定処理の基本的な手法である。そして、本実施形態では、この手法に基づいてロータ角度を推定するために、前記積分器４４，４６を使用して、前記式（６）における１階差分ベクトルｄＩdq(i+j)（ｊ＝１，２，…，ｎ）を検出する（本実施形態ではｎ＝３）。さらに、その検出した１階差分ベクトルｄＩdq(i+j)から、角度推定部５０によって、式（６）の演算と、式（７）または式（８）または式（９）の演算と、式（１０）の演算とを順次実行することで、ロータ角度の推定値θ^を算出する。なお、本実施形態では、θeを算出するために、３制御サイクル分の１階差分ベクトルｄＩdqが必要となるので、式（１０）によるロータ角度の更新も３制御サイクル毎に行なわれる（Δｔ＝３・ΔＴ）。
【００９０】
この場合、１階差分ベクトルｄＩdq(i+j)（本実施形態ではｊ＝１，２，３）を検出するために、図６（ａ）または（ｂ）で示す如く、ＰＷＭキャリアＣaに同期して、積分器４４，４６の積分動作を行なう。
【００９１】
具体的には、図６（ａ）に示す如く、（ｉ＋ｊ）番目の制御サイクルの開始時刻Ｔjから、（ｉ＋ｊ＋１）番目の制御サイクルの開始時刻Ｔj+1までの１制御サイクルの期間ΔＴのうち、ＰＷＭキャリアＣaの三角波のレベル（電圧値）が増加する前半の期間ΔＴfにおいて、サーチコイル４０，４２の出力電圧Ｖをそれぞれ積分器４４，４６により積分させる。すなわち時刻ＴjにおいてＰＷＭキャリアＣaの三角波のレベルが減少から増加に転じる（極小値になる）ことをトリガとして、各積分器４４，４６の入力側のスイッチ素子６４をＯＮ状態に制御して、各積分器４４，４６の積分動作を開始させる。そして、時刻ＴmにおいてＰＷＭキャリアＣaの三角波のレベルが増加から減少に転じる（極大値になる）ことをトリガとして、スイッチ素子６４をＯＦＦ状態に切り換えて、各積分器４４，４６の積分動作を中止する。なお、１制御サイクルの期間ΔＴのうち、ＰＷＭキャリアＣaの三角波のレベルが減少する後半の期間ΔＴr（時刻Ｔmから時刻Ｔj+1の期間）においては、スイッチ素子６４はＯＦＦ状態に維持される。このため、該期間ΔＴrにおいて、各積分器４４，４６がリセットされる（各積分器４４，４６の出力が０になる）。
【００９２】
あるいは、図６（ｂ）に示す如く、図６（ａ）の場合と逆に、１制御サイクルの期間ΔＴのうち、前半の期間ΔＴfにおいては、スイッチ素子６４をＯＦＦ状態に維持して、各積分器４４，４６をリセットしておき、後半の期間Ｔrにおいて、スイッチ素子６４をＯＮ状態にして、サーチコイル４０，４２の出力電圧Ｖをそれぞれ積分器４４，４６により積分させるようにしてもよい。
【００９３】
ここで、本実施形態では、（ｉ＋１）番目の制御サイクルから（ｉ＋３）番目の制御サイクルまでの３制御サイクルの期間（周期信号Ｖhd，Ｖhqの１周期の期間）における基本駆動電圧ベクトル(Ｖfbd，Ｖfbq)ｔは一定に維持される（３制御サイクル毎に、基本駆動電圧ベクトル(Ｖfbd，Ｖfbq)ｔを更新する）。さらに、１制御サイクルの時間は、ＰＷＭキャリアＣaの１周期の時間と同じで、且つ、該ＰＷＭキャリアＣaの波形は、その１周期の前半と後半とで対称な三角波である。
【００９４】
このため、（ｉ＋１）番目の制御サイクルから（ｉ＋３）番目の制御サイクルまでの各制御サイクルにおけるモータ１０の各相の電機子１４の電流の変化量（周期信号Ｖhd，Ｖhqに応じた電流変化量）は、該制御サイクルの前半と後半とでほぼ等しくなる。従って、上記のように、１制御サイクルの期間ΔＴのうちの前半または後半の期間ΔＴfにおいて各積分器４４，４６による積分動作を実行したとき、その積分動作の終了時における各積分器４４，４６の出力がそれぞれ示すＵ相電機子１４Ｕの電流変化量ΔＩuおよびＷ相電機子１４Ｗの電流変化量ΔＩwと、これらから算出されるＶ相電流変化量ΔＩv（＝−ΔＩu−ΔＩw）とは、それぞれ１制御サイクルの期間ΔＴの全体における各相の電機子の電流変化量の半分となる。なお、以下の説明では、各積分器４４，４６の出力がそれぞれ示す電流変化量ΔＩu，ΔＩwをそれぞれ単に、積分器４４の出力ΔＩu、積分器４６の出力ΔＩwということがある。
【００９５】
また、各制御サイクルで、各積分器４４，４６の出力（積分動作の終了時の出力）ΔＩu，ΔＩwから、これらに対応するｄ軸電流変化量ΔＩdおよびｑ軸電流変化量ΔＩqを前記３相／ｄｑ変換部４８により算出したとき、そのΔＩd，ΔＩqは、それぞれ１制御サイクルの期間ΔＴの全体におけるｄ軸電流変化量、ｑ軸電流変化量の半分となる。
【００９６】
そこで、角度推定部５０では、各制御サイクル毎の各積分器４４，４６の出力ΔＩu，ΔＩwから３相／ｄｑ変換部４８により算出されるｄ軸電流変化量ΔＩdとｑ軸電流変化量ΔＩqとからなるベクトル(ΔＩd，ΔＩq)ｔを前記式（６）で使用する１階差分ベクトルｄＩdqとして検出する。
【００９７】
なお、(ΔＩd，ΔＩq)ｔを定数倍（例えば２倍もしくは２／ΔＴ倍）したベクトルを１階差分ベクトルｄＩdqとして検出するようにしてもよい。(ΔＩd，ΔＩq)ｔを２倍した場合には、各制御サイクルの全期間におけるｄ軸電流変化量およびｑ軸電流変化量が検出されることとなり、２／ΔＴ倍した場合には、各制御サイクルにおけるｄ軸電流およびｑ軸電流の時間的変化率が検出されることとなる。
【００９８】
また、３相／ｄｑ変換部４８では、各積分器４４，４６の出力ΔＩu，ΔＩwから、Ｖ相電機子１４Ｖの電流変化量ΔＩv（＝−ΔＩu−ΔＩw）が算出される。そして、これらの電流変化量ΔＩu，ΔＩv，ΔＩwからなるベクトル(ΔＩu，ΔＩv，ΔＩw)ｔに、前記３相／ｄｑ変換部２０で使用する変換行列と同様の変換行列（２行３列行列）を乗じることにより、ｄ軸電流変化量ΔＩdとｑ軸電流変化量ΔＩqとからなるベクトル(ΔＩd，ΔＩq)ｔが算出される。この場合、３相／ｄｑ変換部４８の変換行列の各要素値は、角度推定部５０で求められたロータ角度の推定値θ^に応じて決定される。
【００９９】
次に、本実施形態におけるロータ角度の推定処理を図７のフローチャートを参照して具体的に説明する。補足すると、この推定処理は、本願出願人が先に出願した特願２００４−３０４４９２号に記載した第２実施形態のものと、１階差分ベクトルｄＩdqの検出手法だけが相違するものである。
【０１００】
制御装置１２は、前記基本駆動電圧決定部２２の処理を行いつつ、カウンタ変数ptrを０に初期化して、周期信号重畳部２４により基本駆動電圧ベクトル(Ｖfbd，Ｖfbq)ｔに周期信号ベクトル(Ｖhd，Ｖhq)ｔを重畳する。そして、この状態で、制御装置１２は、図７のフローチャートの処理を所定の制御サイクルで繰り返し実行する。
【０１０１】
制御装置１２は、まず、ＳＴＥＰ１で、Ｕ相電流センサ１６の検出電流値Ｉuと、Ｗ相電流センサ１８の検出電流値Ｉwとを取り込む。
【０１０２】
次いで、ＳＴＥＰ２において、各積分器４４，４６の出力ΔＩu，ΔＩvを取り込む。この場合、前記図６（ａ）のように、ＰＷＭキャリアＣaの前半の期間ΔＴfで各積分器４４，４６の積分動作を行なう場合には、その積分動作の終了時刻（図６（ａ）の時刻Ｔm）で各積分器４４，４６の出力ΔＩu，ΔＩvが角度推定部５０に取り込まれる。この場合には、取り込まれる出力ΔＩu，ΔＩvは、今回の（現在の）制御サイクルの全期間における電流変化量の半分に相当するものとなる。
【０１０３】
また、前記図６（ｂ）のように、ＰＷＭキャリアＣaの後半の期間ΔＴrで各積分器４４，４６の積分動作を行なう場合には、各制御サイクルの開始時（図６（ｂ）の時刻Ｔj、Ｔj+1など）に各積分器４４，４６の出力ΔＩu，ΔＩvが角度推定部５０に取り込まれる。この場合には、取り込まれる出力ΔＩu，ΔＩvは、前回の制御サイクルの全期間における電流変化量の半分に相当するものとなる。
【０１０４】
次いで、ＳＴＥＰ３に進み、制御装置１２は、ＳＴＥＰ２で取り込んだΔＩu，ΔＩwを３相／ｄｑ変換部４８によりｄｑ座標系に変換して、ｄｑ座標系での電流変化量ΔＩd，ΔＩqからなるベクトルを１階差分ベクトルｄＩdqとして算出し、それを保持する。
【０１０５】
この場合、前記図６（ａ）のように、ＰＷＭキャリアＣaの前半の期間ΔＴfで各積分器４４，４６の積分動作を行なう場合には、前回の制御サイクルのＳＴＥＰ２で取り込んだΔＩu，ΔＩwから、３相／ｄｑ変換部４８により１階差分ベクトルｄＩdqが算出される。また、図６（ｂ）のように、ＰＷＭキャリアＣaの前半の期間ΔＴfで各積分器４４，４６の積分動作を行なう場合には、今回の制御サイクルのＳＴＥＰ２で取り込んだΔＩu，ΔＩwから、３相／ｄｑ変換部４８により１階差分ベクトルｄＩdqが算出される。従って、いずれの場合でも、ＳＴＥＰ３で算出される１階差分ベクトルｄＩdqは、前回の制御サイクルの期間内での電流変化量（詳しくは前回の制御サイクルの全期間における電流変化量の半分）に相当する。
【０１０６】
なお、３相／ｄｑ変換部４８の処理（前記変換行列の各要素値を決定する処理）で必要なロータ角度の推定値θ^としては、後述するＳＴＥＰ８の処理が実行された過去の制御サイクルのうちの最新の制御サイクルでＳＴＥＰ８の処理により更新された値が用いられる。
【０１０７】
次いで、ＳＴＥＰ４に進み、カウンタ変数ptrの現在値が１であるか否かを判断する。このときptrが１であるときには、制御装置１２は、ＳＴＥＰ５〜８の処理を角度推定部５０により実行し、カウンタ変数ptrが１でないときには、制御装置１２の処理は、ＳＴＥＰ９に分岐する。
【０１０８】
ここで、カウンタ変数ptrは、ＳＴＥＰ１４で各制御サイクル毎にインクリメントされ、ＳＴＥＰ１５で、ptr＝３になったときにＳＴＥＰ１６で０にリセットされる。このため、周期信号Ｖhd，Ｖhqの１周期に相当する３制御サイクルが経過する毎にＳＴＥＰ４でptr＝１となって、ＳＴＥＰ５〜８の処理が実行される。なお、以降の説明では、各制御サイクルの開始時のカウンタ変数ptrの値が０、１、２となる制御サイクルをそれぞれ制御サイクル（０）、制御サイクル（１）、制御サイクル（２）ということがある。
【０１０９】
ＳＴＥＰ４の判断結果がptr＝１である場合（今回の制御サイクルが制御サイクル（１）である場合）においては、まず、ＳＴＥＰ５において、角度推定部５０により、前記式（５）（詳しくは、式（５）におけるｎをｎ＝３としてなる式）を使用して、正弦参照値Ｖsdqおよび余弦参照値Ｖcdqが算出される。具体的には、前々回の制御サイクル（２）でＳＴＥＰ３の処理により算出された１階差分ベクトルｄＩdqと、前回の制御サイクル（０）でＳＴＥＰ３の処理により算出された１階差分ベクトルｄＩdqと、今回の制御サイクル（１）でＳＴＥＰ３の処理により算出された１階差分ベクトルｄＩdqとを、それぞれ式（６）のｄＩdq(j+1)、ｄＩdq(j+2)、ｄＩdq(j+3)（＝ｄＩdq(j+n)）として用いて、式（６）の左辺の演算を実行することによって、正弦参照値Ｖsdqおよび余弦参照値Ｖcdqが算出される。
【０１１０】
次いで、ＳＴＥＰ６に進み、角度推定部５０は、上記の如く算出した正弦参照値Ｖsdqおよび余弦参照値Ｖcdqから、前記式（７）または式（８）または式（９）により、位相差θeを算出する。
【０１１１】
次いでＳＴＥＰ７に進み、制御装置１０は、ＳＴＥＰ１で取り込んだＩu，Ｉwを前記３相／ｄｑ変換部２０によりｄｑ座標系に変換することで、電流フィードバック制御用のｄ軸実電流Ｉdおよびｑ軸実電流Ｉq、すなわち、基本駆動電圧決定部２２の処理に使用する実電流ベクトル(Ｉd，Ｉq)ｔを取り込んで保持する。このＳＴＥＰ７で取り込まれる実電流ベクトル(Ｉd，Ｉq)ｔは、次次回（次回の次の回）の制御サイクル（０）の後述するＳＴＥＰ１０で、基本駆動電圧決定部２２により基本駆動電圧ベクトル(Ｖfbd，Ｖfbq)ｔを更新するために使用される。
【０１１２】
なお、ＳＴＥＰ７で３相／ｄｑ変換部２０の処理（前記変換行列の各要素値を決定する処理）で使用するロータ角度の推定値θ^は、今回の制御サイクル（０）のＳＴＥＰ３で前記３相／ｄｑ変換部４８の処理で使用したθ^の値と同じである。
【０１１３】
次いで、ＳＴＥＰ８に進み、角度推定部５０は、ｄｑ変換用のロータ角度の推定値θ^の値（詳しくは、３相／ｄｑ変換部２０，４８の処理で使用するθ^の値）を、前回の制御サイクル（０）の後述するＳＴＥＰ１１で新たに決定された値に更新する。従って、前記ＳＴＥＰ３における３相／ｄｑ変換部４８の処理で使用するθ^の値は、制御サイクル（２）から制御サイクル（１）までの３制御サイクルの期間において一定に維持される。また、この３制御サイクルの期間のうちの制御サイクル（１）でＳＴＥＰ７の３相／ｄｑ変換部２０の処理に使用するθ^の値は、当該３制御サイクルの期間において３相／ｄｑ変換部４８の処理（ＳＴＥＰ３の処理）で使用するθ^の値と同じになる。
【０１１４】
以上のＳＴＥＰ５〜８の処理により、ptr＝１となる制御サイクル（１）において（３制御サイクル毎に）、３制御サイクル分の１階差分ベクトルｄＩdq(i+1)，ｄＩdq(i+2)，ｄＩdq(i+2)を基に、位相差θeが算出される。このとき３制御サイクル分の１階差分ベクトルｄＩdq(i+1)，ｄＩdq(i+2)，ｄＩdq(i+2)は、積分器４４，４６の出力ΔＩu，ΔＩvから、同じ値のロータ角度の推定値θ^を使用して算出される。
【０１１５】
上記のようにＳＴＥＰ８の処理を実行した後、あるいは、前記ＳＴＥＰ４でptr≠１である場合には、制御装置１２は、ＳＴＥＰ９においてカウンタ変数ptrの現在値が０であるか否かを判断する。
【０１１６】
このときptr＝０である場合には、制御装置１２は、ＳＴＥＰ１０，１１の処理を前記基本駆動電圧決定部２２および角度推定部５０により順次実行し、ptr≠０である場合には、制御装置１２の処理は、ＳＴＥＰ１２に分岐する。
【０１１７】
ＳＴＥＰ９の判断結果がptr＝０である場合（今回の制御サイクルが制御サイクル（０）である場合）においては、まず、ＳＴＥＰ１０において、基本駆動電圧決定部２２により、前述の演算処理によってｄ軸基本駆動電圧Ｖfbdおよびｑ軸基本駆動電圧Ｖfbqを算出する（基本駆動電圧ベクトル(Ｖfbd，Ｖfbq)ｔを算出する）。なお、この場合、(Ｖfbd，Ｖfbq)ｔを算出するために必要となる前記偏差ベクトル(Ｉd_c−Ｉd，Ｉq_c−Ｉq)ｔは、前々回の制御サイクル（１）の前記ＳＴＥＰ７で取り込んだ実電流ベクトル(Ｉd，Ｉq)ｔ（すなわち、実電流ベクトル(Ｉd，Ｉq)ｔの最新値）と、目標電流ベクトル(Ｉd_c，Ｉq_c)ｔの今回値（最新値）とから算出される。なお、目標電流ベクトル(Ｉd_c，Ｉq_c)ｔは、制御サイクル（０）から制御サイクル（２）までの３制御サイクルの期間において一定に維持される。
【０１１８】
次いで、ＳＴＥＰ１１に進んで、角度推定部５０により、ロータ角度の推定値θ^（推定角度θ^)を前記式（１０）により更新する。この場合、ロータ角度の推定値θ^の更新に必要な位相差θeとして、前々回の制御サイクル（１）の前記ＳＴＥＰ６で算出された値、すなわち、θeの最新値が用いられる。
【０１１９】
以上のようにして、ptr＝０となる制御サイクル（０）では、基本駆動電圧ベクトル(Ｖfbd，Ｖfbq)ｔが更新されると共に、ロータ角度の推定値θ^が更新される。従って、３制御サイクル毎に、基本駆動電圧ベクトル(Ｖfbd，Ｖfbq)ｔとロータ角度の推定値θ^とが更新される。
【０１２０】
なお、前記ＳＴＥＰ８の処理を有するため、ＳＴＥＰ１１で更新されたロータ角度の推定値θ^は、次回の制御サイクル（１）のＳＴＥＰ８の処理が実行されるまでは、３相／ｄｑ変換部２０，４８の処理（ＳＴＥＰ３，７の処理）では使用されず、次次回の制御サイクル（２）から制御サイクル（１）までの３制御サイクルの期間において、前記ＳＴＥＰ３の処理（３相／ｄｑ変換部４８の処理）で使用されると共に、この３制御サイクルの期間のうちの制御サイクル（１）において、前記ＳＴＥＰ７の処理（３相／ｄｑ変換部２０の処理）で使用される。
【０１２１】
上記のようにＳＴＥＰ１１の処理を実行した後、あるいは、前記ＳＴＥＰ９でptr≠０である場合には、制御装置１２は、ＳＴＥＰ１２において、周期信号重畳部１２により周期信号ベクトル(Ｖhd，Ｖhq)ｔを基本駆動電圧ベクトル(Ｖfbd，Ｖfbq)ｔの最新値に重畳する（加算する）ことにより、駆動電圧指令値ベクトル(Ｖd_c，Ｖq_c)ｔを算出する。
【０１２２】
なお、ＳＴＥＰ１２で周期信号ベクトル(Ｖhd，Ｖhq)ｔを重畳する基本駆動電圧ベクトル(Ｖfbd，Ｖfbq)ｔは、今回の制御サイクルおよび過去の制御サイクルのうち、ptr＝０となる最新の制御サイクル（０）のＳＴＥＰ１０で算出された値である。従って、ＳＴＥＰ１２で算出される駆動電圧指令値ベクトル(Ｖd_c，Ｖq_c)ｔのうちの、基本駆動電圧ベクトル(Ｖfbd，Ｖfbq)ｔは制御サイクル（０）から制御サイクル（２）までの３制御サイクルの期間では一定に維持される。このため、該期間の各制御サイクルで算出される駆動電圧指令値ベクトル(Ｖd_c，Ｖq_c)ｔは、周期信号ベクトル(Ｖhd，Ｖhq)ｔの成分だけが互いに相違するものとなる。但し、当該３制御サイクルの期間における周期信号ベクトル(Ｖhd，Ｖhq)ｔの総和は０であるので、該期間における駆動電圧指令値ベクトル(Ｖd_c，Ｖq_c)ｔの平均値は、該期間で一定値となる基本駆動電圧ベクトル(Ｖfbd，Ｖfbq)ｔに一致する。
【０１２３】
次いで、ＳＴＥＰ１３に進み、制御装置１２は、ＳＴＥＰ１２で求めた駆動電圧指令値ベクトル(Ｖd_c，Ｖq_c)ｔをｄｑ／３相変換部２６により相電圧指令値ベクトル(Ｖu_c，Ｖv_c，Ｖw_c)ｔに変換する。
【０１２４】
なお、このＳＴＥＰ１３におけるｄｑ／３相変換部２６の処理（前記変換行列の各要素値を決定する処理）で使用するロータ角度の推定値θ^の値は、今回の制御サイクルおよび過去の制御サイクルのうち、ptr＝０となる最新の制御サイクル（０）のＳＴＥＰ１１で角度推定部５０により更新された値（ロータ角度の新たな推定値）である。従って、制御サイクル（０）から制御サイクル（２）までの期間の各制御サイクルのＳＴＥＰ１３の処理（ｄｑ／３相変換部２６の処理）では、同じ値のθ^を使用して、相電圧指令値ベクトル(Ｖu_c，Ｖv_c，Ｖw_c)ｔが算出される。
【０１２５】
また、このＳＴＥＰ１３で算出された相電圧指令値ベクトル(Ｖu_c，Ｖv_c，Ｖw_c)ｔは次回の制御サイクルにおいて、前記ＰＤＵ２８に出力される。従って、ＳＴＥＰ１３で算出された相電圧指令値ベクトル(Ｖu_c，Ｖv_c，Ｖw_c)ｔに応じた駆動電圧をＰＤＵ２８を介してモータ１０の各相の電機子１４に実際に印加することは、１制御サイクル遅れて行なわれる。
【０１２６】
次いで、ＳＴＥＰ１４に進んで、制御装置１２はカウンタ変数ptrの値を１だけインクリメントする。さらに、制御装置１２は、ＳＴＥＰ１５において、インクリメント後のptrの値が３であるか否かを判断し、ptr＝３である場合には、ＳＴＥＰ１６において、ptrの値を０にリセットし、今回の制御サイクルの処理を終了する。また、ptr≠３である場合には、そのまま今回の制御サイクルの処理を終了する。
【０１２７】
以上の処理によって、ＰＤＵ２８による各相の電機子１４への実際の印加電圧のうちの基本駆動電圧ベクトル(Ｖfbd，Ｖfbq)ｔに応じた成分は、制御サイクル（１）から制御サイクル（０）までの３制御サイクル分の期間（周期信号Ｖhd，Ｖhqの１周期の期間）において一定に維持される。そして、この３制御サイクル分の期間において、ＰＤＵ２８によるモータ１０の各相の電機子１４への実際の印加電圧のうちの周期信号ベクトル(Ｖhd，Ｖhq)ｔに応じた成分は、該期間を１周期として、該期間内の各制御サイクル毎に変化する。但し、該期間におけるモータ１０の各相の電機子１４への実際の印加電圧の平均値は、周期信号ベクトル(Ｖhd，Ｖhq)ｔに依存せずに、基本駆動電圧ベクトル(Ｖfbd，Ｖfbq)ｔに応じた値となる。このため、該期間におけるモータ１０の各相の電機子１４の通電電流の平均値が、目標電流ベクトル(Ｉd_c，Ｉq_c)ｔに対応する電流値に一致するように制御されることとなる。
【０１２８】
さらに、制御サイクル（１）から制御サイクル（０）までの３制御サイクルの期間内の各制御サイクルにおける電流変化量（該期間において重畳されている周期信号に応じた電流変換量）としての１階差分ベクトルｄＩdqが当該３制御サイクルの期間から１制御サイクル遅れた３制御サイクルの期間（制御サイクル（２）から制御サイクル（１）までの期間）において積分器４４，４６を介して検出される。
【０１２９】
この場合、積分器４４，４６にそれぞれ入力されるサーチコイル４０，４２の出力電圧Ｖは、モータ１０の各相の電機子１４を流れる電流の大きさには依存せず、該電流の時間的変化にのみ依存するので、前記図６（ａ）または（ｃ）に示した期間で各積分器４４，４６の積分動作を行なわせることで、該積分器４４，４６の出力ΔＩu，ΔＩwは、その積分期間における電流変化量を精度よく示すものとなる。また、積分器４４，４６の出力ΔＩu，ΔＩwのフルスケール値が過大にならないので、その出力ΔＩu，ΔＩwをＡ／Ｄ変換しても高い分解能で観測できる。従って、各制御サイクルにおける電流変化量に相当する１階差分ベクトルｄＩdqを精度よく観測することができる。このため、周期信号Ｖhd，Ｖhqの電圧値を微小なものとすることができ、ひいては、周期信号の重畳に伴う発生音を十分に小さくできる。
【０１３０】
また、制御サイクル（２）から制御サイクル（１）までの期間の各制御サイクル（２），（０），（１）で検出される１階差分ベクトルｄＩdq(i+1)，ｄＩdq(i+2)，ｄＩdq(i+3)は、それぞれ２制御サイクル前の制御サイクル（０），（１），（２）のＳＴＥＰ１２で決定された駆動電圧指令値ベクトル(Ｖd_c，Ｖq_c)ｔのうちの周期信号ベクトル(Ｖhd，Ｖhq)ｔに応じた電流変化量に相当する。そして、制御サイクル（２）から制御サイクル（１）までの期間で１階差分ベクトルｄＩdq(i+1)，ｄＩdq(i+2)，ｄＩdq(i+3)を算出するときに３相／ｄｑ変換部４８で使用するロータ角度の推定値θ^は一定に維持されると共に、そのθ^の値は、該１階差分ベクトルｄＩdq(i+1)，ｄＩdq(i+2)，ｄＩdq(i+3)にそれぞれ対応する駆動電圧指令値ベクトル(Ｖd_c，Ｖq_c)ｔを算出するときにｄｑ／３相変換部２６で使用するロータ角度の推定値θ^と一致する。このため、制御サイクル（０）から制御サイクル（２）までの期間で基本駆動電圧ベクトル(Ｖfbd，Ｖfbq)ｔを一定として算出された駆動電圧指令値ベクトル(Ｖd_c，Ｖq_c)ｔに応じた電流変化量（詳しくは、(Ｖd_c，Ｖq_c)ｔのうちの周期信号ベクトル(Ｖhd，Ｖhq)ｔに応じた電流変化量）に相当する１階差分ベクトルｄＩdq(i+1)，ｄＩdq(i+2)，ｄＩdq(i+3)を、制御サイクル（２）から制御サイクル（１）までの期間において、該期間内のロータ角度の変化の影響を受けずに適切に検出できる。
【０１３１】
そして、制御サイクル（２）から制御サイクル（１）までの期間の各制御サイクルで検出された１階差分ベクトルｄＩdqを基に、位相差θeが算出され、この位相差θeを用いて、ptr＝０となる制御サイクル（０）毎（３制御サイクル毎に）、ロータ角度の推定値θ^が算出（更新）される。同時に、制御サイクル（０）では、基本駆動電圧ベクトル(Ｖfbd，Ｖfbq)ｔが更新される。従って、ロータ角度の推定値θ^の更新と、基本駆動電圧ベクトル(Ｖfbd，Ｖfbq)ｔの更新とは３制御サイクル毎に、同期して行なわれる。
【０１３２】
次に、前記故障検知部５２の処理を説明する。
【０１３３】
前記したように周期信号ベクトル(Ｖhd，Ｖhq)ｔを基本駆動電圧ベクトル(Ｖfbd，Ｖfbq)ｔに重畳しながら、モータ１０の各相の電機子１４に通電している状態において、故障検知部５２には、各制御サイクル毎に、検出電流値Ｉu，Ｉwから３相／ｄｑ変換部２０で算出される実電流ベクトル(ｉd，Ｉq)ｔが取り込まれる。そして、故障検知部５２は、各制御サイクル毎に、取り込んだ実電流ベクトル(ｉd，Ｉq)ｔの今回値（最新値）と前回値との差を演算することによって、１制御サイクルの期間におけるｄ軸電流の変化量ΔＩd2（以下、ｄ軸電流変化量センサ値ΔＩd2という）およびｑ軸電流の変化量ΔＩq2（以下、ｑ軸電流変化量センサ値ΔＩq2という）を算出する。また、故障検知部５２には、各制御サイクル毎に、積分器４４，４６の出力ΔＩu，ΔＩwから前記３相／ｄｑ変換部４８で算出される１階差分ベクトルｄＩdq＝(ΔＩd，ΔＩq)ｔが取り込まれる。そして、故障検知部５２は、ｄ軸電流電流変化量ΔＩd2およびｑ軸電流変化量センサ値ΔＩq2を、それぞれ１階差分ベクトルｄＩdq＝(ΔＩd，ΔＩq)ｔの各成分ΔＩd，ΔＩqの２倍値と比較する。あるいは、ΔＩd2，ΔＩq2のそれぞれの１／２倍の値を、それぞれΔＩd，ΔＩqと比較する。
【０１３４】
このとき、ΔＩd2，ΔＩq2の精度（分解能）はΔＩd，ΔＩqに比べて低いものの、電流センサ１６，１８が正常であれば、ΔＩd2≒２ΔＩd且つΔＩq2≒２ΔＩq、あるいは、ΔＩd2／２≒ΔＩd且つΔＩq2／２≒ΔＩqとなるはずである。そこで、本実施形態では、故障検知部５２は、例えば｜ΔＩd2−２ΔＩd｜、｜ΔＩq2−２ΔＩq｜のいずれかがあらかじめ定めた所定量よりも大きいとき、あるいは、｜ΔＩd2／２−ΔＩd｜、｜ΔＩq2／２−ΔＩq｜のいずれかがあらかじめ定めた所定量よりも大きいときに、電流センサ１６，１８のいずれかが故障していると判断し、そうでないときには、電流センサ１６，１８が正常であると判断する。そして、故障検知部５２は、電流センサ１６，１８のいずれかが故障していると判断したときには、その旨を示すエラー信号を出力する。
【０１３５】
補足すると、電流検出値Ｉu，Ｉwから、各制御サイクル毎のＵ相、Ｖ相の電機子１４Ｕ，１４Ｖの電流変化量ΔＩu2，ΔＩw2を算出し、そのΔＩu2，ΔＩw2のそれぞれを、積分器４４，４６の出力ΔＩu，ΔＩwのそれぞれの２倍値と比較し、あるいは、ΔＩu２，ΔＩw2のそれぞれの１／２倍値を、積分器４４，４６の出力ΔＩu，ΔＩwのそれぞれと比較することで、電流センサ１６，１８の故障の有無を判断するようにしてもよい。
【０１３６】
なお、以上説明した実施形態では、積分器４４，４６の積分動作をＰＷＭキャリアCaの半周期の期間で行なうようにしたが、例えば図８に示す如く、制御装置１２の１制御サイクルの期間をＰＷＭキャリアＣaの２周期分の期間とし、その期間内におけるＰＷＭキャリアＣaの１周期分の期間（１制御サイクルの期間の半分の期間）で、積分器４４，４６の積分動作を実行するようにしてもよい。この場合、図８の例では、１制御サイクルの期間の後半の期間で積分器４４，４６の積分動作を実行するようにしているが、前半の期間で積分器４４，４６の積分動作を実行するようにしてもよい。
【０１３７】
あるいは、各電流センサ１６，１８に備えたサーチコイル４０，４６のそれぞれの出力を積分する積分器を２つずつ備えておき、それらの積分器の積分動作をＰＷＭキャリアＣaの１周期分づつ、交互に行なうようにしてもよい。この場合には、ＰＷＭキャリアＣaの１周期を１制御サイクルの期間としつつ、各制御サイクルにおける電流変化量を２つの積分器により交互に検出できることとなる。
【０１３８】
また、前記実施形態では、ｄｑ座標系での１階差分ベクトルｄＩdqを検出して、ロータ角度の推定値θ^を求める手法に関して説明したが、特願２００４−３０４４９２号の第１実施形態にて本願出願人が提案している如く、相電流の１階差分を検出して、ロータ角度の推定値θ^を求めるようにしてもよい。あるいは、前記特許文献１〜３のいずれかの手法を適用して、ロータ角度θ^を推定するようにしてもよい。本願発明は、周期信号を基本駆動電圧信号に重畳しながら、電機子の電流変化を検出し、その電流変化に基づいてロータ角度を推定するいずれの手法にも適用することができる。
【図面の簡単な説明】
【０１３９】
【図１】本発明の原理を説明するための図。
【図２】本発明の一実施形態におけるＤＣブラシレスモータの制御装置の機能的構成を示すブロック図。
【図３】図２の制御装置に備えたパワードライブユニット（ＰＤＵ）によるＰＷＭ制御の説明図。
【図４】図４（ａ），（ｂ）はそれぞれ図２の制御装置で基本駆動電圧に重畳する周期信号の例を示す図。
【図５】図２の制御装置に備えた電流センサ、サーチコイルおよび積分器の構成を示す図。
【図６】図６（ａ），（ｂ）は図５に示した積分器による積分動作の例を示すグラフ。
【図７】図２の制御装置によるロータ角度の推定に係わる処理を示すフローチャート。
【図８】積分器による積分動作の他の例を示すグラフ。
【符号の説明】
【０１４０】
１０…ＤＣブラシレスモータ、１４（１４Ｕ，１４Ｖ，１４Ｗ）…電機子、１６，１８…電流センサ（電流検出手段）、２２…基本駆動電圧決定部（基本駆動電圧決定手段）、２４…周期信号重畳部（通電手段）、２６…ｄｑ／３相変換部（通電手段）、２８…パワードライブユニット（通電手段）、５，４０，４２…サーチコイル、４４，４６…積分器（積分手段）、５０…角度推定部（角度推定手段）、５２…故障検知部（故障検知手段）。
【図１】
0004657892.tif 000009
【図２】
0004657892.tif 000010
【図３】
0004657892.tif 000011
【図４】
0004657892.tif 000012
【図５】
0004657892.tif 000013
【図６】
0004657892.tif 000014
【図７】
0004657892.tif 000015
【図８】
0004657892.tif 000016