(57)【要約】【課題】モータ駆動電圧算出時のパラメータに発生するノイズを抑制し、モータをより安定的に駆動する。【解決手段】オープンループ制御部２２は、ｄｑ軸上の指令電流ｉd*、ｉq*とモータの角速度ωe に基づき、モータの回路方程式に従いｄｑ軸上の指令電圧ｖd 、ｖq を求める。ｄｑ軸／３相変換部２３は、指令電圧ｖd 、ｖq を３相の指令電圧に変換する。Ｒ算出部２６は、ｑ軸指令電圧ｖq と電流センサ１４で検出した電流値ｉa と角速度ωe に基づき、モータの回路方程式に含まれる電機子巻線抵抗を含む回路抵抗Ｒを求める。Ｒ平滑部２７はＲ算出部２６で求めたＲ値に対して平滑化処理を行い、オープンループ制御部２２は指令電圧ｖd 、ｖq を求めるときに平滑化されたＲ値を使用する。モータの回路方程式に含まれる電機子巻線鎖交磁束数Φを求めるときにも、同様の平滑化処理を行う。【選択図】図２
2010252484.tif 000002
【特許請求の範囲】
【請求項１】
モータを駆動するモータ制御装置であって、
前記モータに供給すべき電流の量を示す指令電流値と前記モータのロータの角速度とに基づき、モータの回路方程式に従い、前記モータの駆動に用いられる指令電圧のレベルを求めるオープンループ制御手段と、
前記オープンループ制御手段で求めたレベルの電圧を用いて前記モータを駆動するモータ駆動手段と、
前記モータに流れる電流を検出する電流検出手段と、
前記電流検出手段で検出された電流値に基づき、モータの回路方程式に含まれるパラメータを求めるパラメータ算出手段と、
前記パラメータ算出手段で求めたパラメータを平滑化して前記オープンループ制御手段に対して出力する平滑手段とを備えた、モータ制御装置。
【請求項２】
前記平滑手段の時定数は、前記オープンループ制御手段による制御が安定し、かつ、前記パラメータ算出手段で求めたパラメータが温度変化に追従して変化するように決定されていることを特徴とする、請求項１に記載のモータ制御装置。
【請求項３】
前記平滑手段の時定数は、前記オープンループ制御手段の演算周期以上、かつ、前記パラメータ算出手段で求めたパラメータの温度変化に対する時定数以下であることを特徴とする、請求項２に記載のモータ制御装置。
【請求項４】
前記平滑手段の時定数は、前記オープンループ制御手段による制御開始当初はその後よりも小さく制御されることを特徴とする、請求項１に記載のモータ制御装置。
【請求項５】
前記パラメータ算出手段は、前記電流検出手段で検出された電流値に基づき、モータの回路方程式に含まれる電機子巻線抵抗を含む回路抵抗を求め、
前記平滑手段は、前記パラメータ算出手段で求めた電機子巻線抵抗を含む回路抵抗を平滑化することを特徴とする、請求項１〜４のいずれか１項に記載のモータ制御装置。
【請求項６】
前記パラメータ算出手段は、前記電流検出手段で検出された電流値に基づき、モータの回路方程式に含まれる電機子巻線鎖交磁束数を求め、
前記平滑手段は、前記パラメータ算出手段で求めた電機子巻線鎖交磁束数を平滑化することを特徴とする、請求項１〜４のいずれか１項に記載のモータ制御装置。
【請求項７】
前記パラメータ算出手段は、前記電流検出手段で検出された電流値に基づき、モータの回路方程式に含まれる電機子巻線抵抗を含む回路抵抗を求める処理と、モータの回路方程式に含まれる電機子巻線鎖交磁束数を求める処理とを選択的に実行し、
前記平滑手段は、前記パラメータ算出手段で選択的に求めたパラメータを平滑化することを特徴とする、請求項１〜４のいずれか１項に記載のモータ制御装置。
【請求項８】
前記指令電流値と前記電流検出手段で検出された電流値との差に比例積分演算を施して前記指令電圧のレベルを求めるフィードバック制御手段と、
前記フィードバック制御手段で求めた指令電圧のレベルと、前記オープンループ制御手段で求めた指令電圧のレベルとを切り替えて出力する指令電圧選択手段とをさらに備えた、請求項１〜４のいずれか１項に記載のモータ制御装置。
【請求項９】
請求項１〜８のいずれか１項に記載のモータ制御装置を備えた、電動パワーステアリング装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、モータ制御装置、および、モータ制御装置を備えた電動パワーステアリング装置に関する。
【背景技術】
【０００２】
従来から、運転者がハンドル（ステアリングホイール）に加える操舵トルクに応じて電動モータを駆動することにより車両のステアリング機構に操舵補助力を与える電動パワーステアリング装置が用いられている。電動パワーステアリング装置の電動モータには従来からブラシモータが広く使用されているが、信頼性および耐久性の向上や慣性の低減などの観点から、近年ではブラシレスモータも使用されている。
【０００３】
一般にモータ制御装置は、モータで発生するトルクを制御するために、モータに流れる電流を検出し、モータに供給すべき電流と検出した電流との差に基づきＰＩ制御（比例積分制御）を行う。３相ブラシレスモータを駆動するモータ制御装置には、２相以上の電流を検出するために、２個または３個の電流センサが設けられる。
【０００４】
この電流センサは、モータ制御装置の小型化の妨げになる。そこで、モータ制御装置を小型化するために、電流センサをすべて除去し、モータの回路方程式に従いオープンループ制御（フィードフォワード制御）を行う方法が知られている。また、特段の工夫を行わずにオープンループ制御を行うと、モータの回路方程式に含まれるパラメータが変動したときにモータを正しく駆動できなくなるという問題が生じる。この問題を解決するために、特許文献１には、電流センサを１個だけ設け、電流センサで検知した電流値に基づき、モータの回路方程式に含まれるパラメータを求めることが記載されている。
【０００５】
また、特許文献２には、モータ速度制御装置において、トルク外乱の推定値を求め、これを打ち消すように制御量指令値の推定値を求め、求めた推定値をフィルタ処理した値により制御量指令値を補正することが記載されている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００８−２２０１５５号公報
【特許文献２】特開平５−１２２９７０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、特許文献１記載のモータ制御装置は、電流センサで検出した電流値やモータの角速度などのように変動する信号に基づき、モータの回路方程式に含まれるパラメータを求める。このため、求めたパラメータにノイズが発生し、モータの制御が不安定になることがある。
【０００８】
それ故に、本発明は、モータ駆動電圧算出時のパラメータに発生するノイズを抑制し、モータをより安定的に駆動できるモータ制御装置、および、これを備えた電動パワーステアリング装置を提供することを目的とする。
【課題を解決するための手段】
【０００９】
第１の発明は、モータを駆動するモータ制御装置であって、
前記モータに供給すべき電流の量を示す指令電流値と前記モータのロータの角速度とに基づき、モータの回路方程式に従い、前記モータの駆動に用いられる指令電圧のレベルを求めるオープンループ制御手段と、
前記オープンループ制御手段で求めたレベルの電圧を用いて前記モータを駆動するモータ駆動手段と、
前記モータに流れる電流を検出する電流検出手段と、
前記電流検出手段で検出された電流値に基づき、モータの回路方程式に含まれるパラメータを求めるパラメータ算出手段と、
前記パラメータ算出手段で求めたパラメータを平滑化して前記オープンループ制御手段に対して出力する平滑手段とを備える。
【００１０】
第２の発明は、第１の発明において、
前記平滑手段の時定数は、前記オープンループ制御手段による制御が安定し、かつ、前記パラメータ算出手段で求めたパラメータが温度変化に追従して変化するように決定されていることを特徴とする。
【００１１】
第３の発明は、第２の発明において、
前記平滑手段の時定数は、前記オープンループ制御手段の演算周期以上、かつ、前記パラメータ算出手段で求めたパラメータの温度変化に対する時定数以下であることを特徴とする。
【００１２】
第４の発明は、第１の発明において、
前記平滑手段の時定数は、前記オープンループ制御手段による制御開始当初はその後よりも小さく制御されることを特徴とする。
【００１３】
第５の発明は、第１〜第４のいずれかの発明において、
前記パラメータ算出手段は、前記電流検出手段で検出された電流値に基づき、モータの回路方程式に含まれる電機子巻線抵抗を含む回路抵抗を求め、
前記平滑手段は、前記パラメータ算出手段で求めた電機子巻線抵抗を含む回路抵抗を平滑化することを特徴とする。
【００１４】
第６の発明は、第１〜第４のいずれかの発明において、
前記パラメータ算出手段は、前記電流検出手段で検出された電流値に基づき、モータの回路方程式に含まれる電機子巻線鎖交磁束数を求め、
前記平滑手段は、前記パラメータ算出手段で求めた電機子巻線鎖交磁束数を平滑化することを特徴とする。
【００１５】
第７の発明は、第１〜第４のいずれかの発明において、
前記パラメータ算出手段は、前記電流検出手段で検出された電流値に基づき、モータの回路方程式に含まれる電機子巻線抵抗を含む回路抵抗を求める処理と、モータの回路方程式に含まれる電機子巻線鎖交磁束数を求める処理とを選択的に実行し、
前記平滑手段は、前記パラメータ算出手段で選択的に求めたパラメータを平滑化することを特徴とする。
【００１６】
第８の発明は、第１〜第４のいずれかの発明において、
前記指令電流値と前記電流検出手段で検出された電流値との差に比例積分演算を施して前記指令電圧のレベルを求めるフィードバック制御手段と、
前記フィードバック制御手段で求めた指令電圧のレベルと、前記オープンループ制御手段で求めた指令電圧のレベルとを切り替えて出力する指令電圧選択手段とをさらに備える。
【００１７】
第９の発明は、第１〜第８のいずれかの発明に係るモータ制御装置を備えた電動パワーステアリング装置である。
【発明の効果】
【００１８】
上記第１の発明によれば、モータの回路方程式に従いオープンループ制御によってモータの駆動電圧を求めるときに、検出した電流値に基づき求めたパラメータを平滑化した値を使用する。したがって、このパラメータが製造ばらつきや温度変化などによって変動するときでも、モータを高い精度で駆動して所望のモータ出力を得ると共に、パラメータに発生するノイズを抑制してモータをより安定的に駆動することができる。また、パラメータの初期値が予め規定値として設定されており、装置の起動時に上記規定値に基づくモータ制御から製造ばらつきを有する各個体のパラメータに基づくモータ制御に移行するときに、制御の急変を防止することができる。
【００１９】
上記第２の発明によれば、平滑手段の時定数を好適に決定することにより、オープンループ制御手段による制御を安定させると共に、パラメータを温度変化に追従して変化させることができる。
【００２０】
上記第３の発明によれば、平滑手段の時定数をオープンループ制御手段の演算周期以上にすることにより、オープンループ制御手段による制御を安定させると共に、平滑手段の時定数をパラメータの温度変化に対する時定数以下にすることにより、パラメータを温度変化に追従して変化させることができる。
【００２１】
上記第４の発明によれば、モータ制御開始当初は平滑手段の時定数を小さくすることにより、モータ制御開始当初はパラメータを素早く変化させてモータ制御の応答性を高め、その後はパラメータを安定的に変化させてモータ制御の安定性を高めることができる。
【００２２】
上記第５の発明によれば、モータの回路方程式に含まれる電機子巻線抵抗を含む回路抵抗が製造ばらつきや温度変化などによって変動するときでも、モータを高い精度で駆動すると共に、電機子巻線抵抗を含む回路抵抗に発生するノイズを抑制してモータをより安定的に駆動することができる。また、電機子巻線抵抗を含む回路抵抗の初期値が予め規定値として設定されており、装置の起動時に上記規定値に基づくモータ制御から製造ばらつきを有する各個体の電機子巻線抵抗を含む回路抵抗に基づくモータ制御に移行するときに、制御の急変を防止することができる。
【００２３】
上記第６の発明によれば、モータの回路方程式に含まれる電機子巻線鎖交磁束数が製造ばらつきや温度変化などによって変動するときでも、モータを高い精度で駆動すると共に、電機子巻線鎖交磁束数に発生するノイズを抑制してモータをより安定的に駆動することができる。また、電機子巻線鎖交磁束数の初期値が予め規定値として設定されており、装置の起動時に上記規定値に基づくモータ制御から製造ばらつきを有する各個体の電機子巻線鎖交磁束数に基づくモータ制御に移行するときに、制御の急変を防止することができる。
【００２４】
上記第７の発明によれば、電機子巻線抵抗を含む回路抵抗を求めるときと電機子巻線鎖交磁束数を求めるときとを切り替えることにより、これら２個のパラメータを正確に求めてモータを高い精度で駆動することができる。また、これら２個のパラメータに発生するノイズを抑制してモータをより安定的に駆動することができる。
【００２５】
上記第８の発明によれば、フィードバック制御とオープンループ制御を切り替えて行う場合に、フィードバック制御を行うときだけでなくオープンループ制御を行うときでも、モータを高い精度で駆動して所望のモータ出力を得ることができる。
【００２６】
上記第９の発明によれば、モータの回路方程式に含まれるパラメータが製造ばらつきや温度変化などによって変動するときでも、モータを高い精度で安定的に駆動できるので、スムーズで安定した操舵補助が可能となる。また、パラメータの初期値が予め規定値として設定されており、装置の起動時に上記規定値に基づくモータ制御から製造ばらつきを有する各個体のパラメータに基づくモータ制御に移行するときに、制御の急変を防止し、安定した操舵補助を行うことができる。
【図面の簡単な説明】
【００２７】
【図１】本発明の実施形態に係る電動パワーステアリング装置の構成を示すブロック図である。
【図２】本発明の第１の実施形態に係るモータ制御装置の構成を示すブロック図である。
【図３】３相ブラシレスモータにおける３相交流座標とｄｑ座標を示す図である。
【図４】本発明の第２の実施形態に係るモータ制御装置の構成を示すブロック図である。
【図５】本発明の第３の実施形態に係るモータ制御装置の構成を示すブロック図である。
【図６】本発明の第４の実施形態に係るモータ制御装置の構成を示すブロック図である。
【図７】本発明の第５の実施形態に係るモータ制御装置の構成を示すブロック図である。
【発明を実施するための形態】
【００２８】
図１は、本発明の実施形態に係る電動パワーステアリング装置の構成を、それに関連する車両の構成と共に示す概略図である。図１に示す電動パワーステアリング装置は、ブラシレスモータ１、減速機２、トルクセンサ３、車速センサ４、位置検出センサ５、および、電子制御ユニット（Electronic Control Unit ：以下、ＥＣＵという）１０を備えたコラムアシスト型の電動パワーステアリング装置である。
【００２９】
図１に示すように、ステアリングシャフト１０２の一端にはハンドル（ステアリングホイール）１０１が固着されており、ステアリングシャフト１０２の他端はラックピニオン機構１０３を介してラック軸１０４に連結されている。ラック軸１０４の両端は、タイロッドおよびナックルアームからなる連結部材１０５を介して車輪１０６に連結されている。運転者がハンドル１０１を回転させると、ステアリングシャフト１０２は回転し、これに伴いラック軸１０４は往復運動を行う。ラック軸１０４の往復運動に伴い、車輪１０６の向きが変わる。
【００３０】
電動パワーステアリング装置は、運転者の負荷を軽減するために、以下に示す操舵補助を行う。トルクセンサ３は、ハンドル１０１の操作によってステアリングシャフト１０２に加えられる操舵トルクＴを検出する。車速センサ４は、車速Ｓを検出する。位置検出センサ５は、ブラシレスモータ１のロータの回転位置Ｐを検出する。位置検出センサ５は、例えばレゾルバで構成される。
【００３１】
ＥＣＵ１０は、車載バッテリ１００から電力の供給を受け、操舵トルクＴ、車速Ｓおよび回転位置Ｐに基づきブラシレスモータ１を駆動する。ブラシレスモータ１は、ＥＣＵ１０によって駆動されると、操舵補助力を発生させる。減速機２は、ブラシレスモータ１とステアリングシャフト１０２との間に設けられる。ブラシレスモータ１で発生した操舵補助力は、減速機２を介して、ステアリングシャフト１０２を回転させるように作用する。
【００３２】
この結果、ステアリングシャフト１０２は、ハンドル１０１に加えられる操舵トルクと、ブラシレスモータ１で発生した操舵補助力の両方によって回転する。このように電動パワーステアリング装置は、ブラシレスモータ１で発生した操舵補助力を車両のステアリング機構に与えることにより操舵補助を行う。
【００３３】
本発明の実施形態に係る電動パワーステアリング装置は、ブラシレスモータ１を駆動する制御装置（モータ制御装置）に特徴がある。そこで以下では、各実施形態に係る電動パワーステアリング装置に含まれるモータ制御装置について説明する。
【００３４】
（第１の実施形態）
図２は、本発明の第１の実施形態に係るモータ制御装置の構成を示すブロック図である。図２に示すモータ制御装置は、ＥＣＵ１０を用いて構成されており、ｕ相、ｖ相およびｗ相の３相巻線（図示せず）を有するブラシレスモータ１を駆動する。ＥＣＵ１０は、位相補償器１１、マイクロコンピュータ（以下、マイコンと略称する）２０、３相／ＰＷＭ（Pulse Width Modulation）変調器１２、モータ駆動回路１３、および、電流センサ１４を備えている。
【００３５】
ＥＣＵ１０には、トルクセンサ３から出力された操舵トルクＴ、車速センサ４から出力された車速Ｓ、および、位置検出センサ５から出力された回転位置Ｐが入力される。位相補償器１１は、操舵トルクＴに対して位相補償を施す。マイコン２０は、ブラシレスモータ１の駆動に用いられる指令電圧のレベルを求める制御手段として機能する。マイコン２０の機能の詳細については、後述する。
【００３６】
３相／ＰＷＭ変調器１２とモータ駆動回路１３は、ハードウェア（回路）で構成されており、マイコン２０で求めたレベルの電圧を用いてブラシレスモータ１を駆動するモータ駆動手段として機能する。３相／ＰＷＭ変調器１２は、モータを駆動制御するための信号として、マイコン２０で求めた３相の電圧のレベルに応じたデューティ比を有する３種類のＰＷＭ信号（図２に示すＵ、Ｖ、Ｗ）を生成する。モータ駆動回路１３は、スイッチング素子として６個のＭＯＳ−ＦＥＴ（Metal Oxide Semiconductor Field Effect Transistor ）を含むＰＷＭ電圧形インバータ回路である。６個のＭＯＳ−ＦＥＴは、３種類のＰＷＭ信号とその否定信号によって制御される。ＰＷＭ信号を用いてＭＯＳ−ＦＥＴの導通状態を制御することにより、ブラシレスモータ１に対して３相の駆動電流（ｕ相電流、ｖ相電流およびｗ相電流）が供給される。このようにモータ駆動回路１３は、ブラシレスモータ１に電流を供給するか否かを切り替える複数のスイッチング素子を有している。
【００３７】
電流センサ１４は、ブラシレスモータ１に流れる電流を検出する電流検出手段として機能する。電流センサ１４は、例えば抵抗体やホール素子で構成され、モータ駆動回路１３と電源の間に１個だけ設けられる。図２に示す例では、電流センサ１４はモータ駆動回路１３と電源のマイナス側（接地）との間に設けられているが、電流センサ１４をモータ駆動回路１３と電源のプラス側との間に設けてもよい。
【００３８】
ブラシレスモータ１が回転している間、電流センサ１４で検出される電流値は、ＰＷＭ信号に応じて変化する。ＰＷＭ信号の１周期内では、電流センサ１４によって１相の駆動電流が検知されるときと、２相の駆動電流の和が検知されるときとがある。３相の駆動電流の和はゼロになるので、２相の駆動電流の和に基づき、残り１相の駆動電流を求めることができる。したがって、ブラシレスモータ１が回転している間、１個の電流センサ１４を用いて３相の駆動電流を検出することができる。電流センサ１４で検出された電流値ｉa は、マイコン２０に入力される。
【００３９】
マイコン２０は、ＥＣＵ１０に内蔵されたメモリ（図示せず）に格納されたプログラムを実行することにより、指令電流算出部２１、オープンループ制御部２２、ｄｑ軸／３相変換部２３、角度算出部２４、角速度算出部２５、Ｒ算出部２６、および、Ｒ平滑部２７として機能する。マイコン２０は、以下に示すように、ブラシレスモータ１に供給すべき電流の量を示す指令電流値とブラシレスモータ１のロータの角速度とに基づき、モータの回路方程式に従い、モータ駆動回路１３に与えるべき電圧（以下、指令電圧という）のレベルを求める。
【００４０】
角度算出部２４は、位置検出センサ５で検出した回転位置Ｐに基づき、ブラシレスモータ１のロータの回転角（以下、角度θという）を求める。角速度算出部２５は、角度θに基づき、ブラシレスモータ１のロータの角速度ωe を求める。なお、図３に示すようにブラシレスモータ１に対してｕ軸、ｖ軸およびｗ軸を設定し、ブラシレスモータ１のロータ６に対してｄ軸およびｑ軸を設定したとき、ｕ軸とｄ軸のなす角が角度θとなる。
【００４１】
指令電流算出部２１は、位相補償後の操舵トルクＴ（位相補償器１１の出力信号）と車速Ｓに基づき、ブラシレスモータ１に供給すべきｄ軸電流とｑ軸電流を求める（以下、前者をｄ軸指令電流ｉd*、後者をｑ軸指令電流ｉq*という）。より詳細には、指令電流算出部２１は、車速Ｓをパラメータとして、操舵トルクＴと指令電流との対応づけを記憶したテーブル（以下、アシストマップという）を内蔵しており、アシストマップを参照して指令電流を求める。アシストマップを用いることにより、ある大きさの操舵トルクが与えられたときに、その大きさに応じた適切な大きさの操舵補助力を発生させるためにブラシレスモータ１に供給すべきｄ軸指令電流ｉd*とｑ軸指令電流ｉq*を求めることができる。
【００４２】
なお、指令電流算出部２１で求めるｑ軸指令電流ｉq*は符号付きの電流値であり、その符号は操舵補助の方向を示す。例えば、符号がプラスのときには右方向へ曲がるための操舵補助が行われ、符号がマイナスのときには左方向へ曲がるための操舵補助が行われる。また、ｄ軸指令電流ｉd*は、典型的にはゼロに設定される。
【００４３】
オープンループ制御部２２は、ｄ軸指令電流ｉd*、ｑ軸指令電流ｉq*および角速度ωe に基づき、ブラシレスモータ１に供給すべきｄ軸電圧とｑ軸電圧を求める（以下、前者をｄ軸指令電圧ｖd 、後者をｑ軸指令電圧ｖq という）。ｄ軸指令電圧ｖd とｑ軸指令電圧ｖq は、次式（１）と（２）に示すモータの回路方程式を用いて算出される。
ｖd＝（Ｒ＋ＰＬd）ｉd*−ωeＬqｉq*          …（１）
ｖq＝（Ｒ＋ＰＬq）ｉq*＋ωeＬdｉd*＋ωeΦ   …（２）
ただし、式（１）と（２）において、ｖd はｄ軸指令電圧、ｖq はｑ軸指令電圧、ｉd*はｄ軸指令電流、ｉq*はｑ軸指令電流、ωe はロータの角速度、Ｒは電機子巻線抵抗を含む回路抵抗、Ｌd はｄ軸の自己インダクタンス、Ｌq はｑ軸の自己インダクタンス、ΦはＵ、Ｖ、Ｗ相電機子巻線鎖交磁束数の最大値の√（３／２）倍、Ｐは微分演算子である。このうちＲ、Ｌd 、Ｌq およびΦは、既知のパラメータとして扱われる。なお、上記回路抵抗には、ブラシレスモータ１とＥＣＵ１０との間の配線抵抗やＥＣＵ１０内でのモータ駆動回路１３の抵抗および配線抵抗などが含まれる。この点は、他の実施形態でも同様である。
【００４４】
ｄｑ軸／３相変換部２３は、オープンループ制御部２２で求めたｄ軸指令電圧ｖd とｑ軸指令電圧ｖq を３相交流座標軸上の指令電圧に変換する。より詳細には、ｄｑ軸／３相変換部２３は、ｄ軸指令電圧ｖd とｑ軸指令電圧ｖq に基づき、次式（３）〜（５）を用いてｕ相指令電圧Ｖu 、ｖ相指令電圧Ｖv およびｗ相指令電圧Ｖw を求める。
Ｖu＝√（２／３）×｛ｖd×ｃｏｓθ−ｖq×ｓｉｎθ｝   …（３）
Ｖv＝√（２／３）×｛ｖd×ｃｏｓ（θ−２π／３）
−ｖq×ｓｉｎ（θ−２π／３）｝    …（４）
Ｖw＝−Ｖu−Ｖv                                       …（５）
なお、式（３）と（４）に含まれる角度θは、角度算出部２４で求めたものである。
【００４５】
このようにマイコン２０は、ｄｑ座標軸上の指令電流ｉd*、ｉq*を求める処理と、モータの回路方程式に従いｄｑ座標軸上の指令電圧ｖd 、ｖq を求める処理と、求めた指令電圧ｖd 、ｖq を３相の指令電圧Ｖu 、Ｖv 、Ｖw に変換する処理とを行う。３相／ＰＷＭ変調器１２は、マイコン２０で求めた３相の指令電圧Ｖu 、Ｖv 、Ｖw に基づき、３種類のＰＷＭ信号を出力する。これにより、ブラシレスモータ１の３相巻線には、各相の指令電圧に応じた正弦波状の電流が流れ、ブラシレスモータ１のロータは回転する。これに伴い、ブラシレスモータ１の回転軸には、ブラシレスモータ１を流れる電流に応じたトルクが発生する。発生したトルクは、操舵補助に用いられる。
【００４６】
Ｒ算出部２６には、電流センサ１４で検出された電流値ｉa と、角度算出部２４で算出された角度θと、角速度算出部２５で算出された角速度ωe とが入力される。Ｒ算出部２６は、まず電流値ｉa に基づきブラシレスモータ１に流れるｕ相とｖ相の電流を求め（以下、前者をｕ相検出電流ｉu 、後者をｖ相検出電流ｉv という）、これらをｄｑ座標軸上の電流値に変換する。より詳細には、Ｒ算出部２６は、ｕ相検出電流ｉu とｖ相検出電流ｉv に基づき、次式（６）と（７）を用いてｄ軸検出電流ｉd とｑ軸検出電流ｉq を求める。
ｉd＝√２×｛ｉv×ｓｉｎθ−ｉu×ｓｉｎ（θ−２π／３）｝   …（６）
ｉq＝√２×｛ｉv×ｃｏｓθ−ｉu×ｃｏｓ（θ−２π／３）｝   …（７）
なお、式（６）と（７）に含まれる角度θは、角度算出部２４で求めたものである。
【００４７】
次に、Ｒ算出部２６は、ｉq ≠０のときに、ｑ軸指令電圧ｖq 、ｄ軸検出電流ｉd 、ｑ軸検出電流ｉq および角速度ωe に基づき、次式（８ａ）を用いて式（１）と（２）に含まれる電機子巻線抵抗を含む回路抵抗Ｒを求める。
Ｒ＝（ｖq−ＰＬqｉq−ωeＬdｉd−ωeΦ）／ｉq  …（８ａ）
なお、式（８ａ）は、式（２）のｄ軸指令電流ｉd*とｑ軸指令電流ｉq*にｄ軸検出電流ｉd とｑ軸検出電流ｉq を代入し、その式をＲについて解いたものである。
【００４８】
Ｒ算出部２６は、演算を簡素化するために、式（８ａ）に代えて次式（８ｂ）や（８ｃ）を使用してもよい。
Ｒ＝（ｖq−ωeＬdｉd−ωeΦ）／ｉq  …（８ｂ）
Ｒ＝（ｖq−ωeΦ）／ｉq             …（８ｃ）
式（８ｂ）は式（８ａ）から微分項を省略したものであり、式（８ｃ）は式（８ｂ）からｉd を含む項を省略したものである。
【００４９】
Ｒ算出部２６は、ｉq ≠０を満たす任意のタイミングでＲ値を繰り返し求める。Ｒ算出部２６は、例えば、所定の時間間隔でＲ値を求めてもよく、温度などの状態が変化したときにＲ値を求めてもよい。また、ｉq がゼロに近いときに求めたＲ値には誤差が発生しやすいので、Ｒ算出部２６はｉq が所定の閾値以上であるときに限りＲ値を求めてもよい。
【００５０】
Ｒ平滑部２７は、Ｒ算出部２６で求めたＲ値に対して平滑化処理を行う。Ｒ算出部２６で求めたＲ値は、温度変化や製造ばらつきによる誤差を補正するためのものであり、それほど急激には変化しない。そこでＲ平滑部２７は、Ｒ値の変動の主要因である温度変化（自己発熱を含む）に対して十分に応答する時定数を持つフィルタ処理を行う。本実施形態では、Ｒ平滑部２７は、Ｒ算出部２６で求めたＲ値に対して所定の時定数τを有するローパスフィルタを適用する。
【００５１】
ローパスフィルタの時定数τは、オープンループ制御部２２による制御が安定し、かつ、Ｒ算出部２６で求めたＲ値が温度変化に追従して変化するように決定される。電機子巻線抵抗を含む回路抵抗Ｒは、環境温度の変化や自己発熱によって変化する。環境温度の変化と自己発熱によるＲ値の変化の時定数が５０秒であるとき、時定数τは５０秒以下に決定される。また、モータ制御を安定させるための時定数が０．０２秒であるとき、時定数τは０．０２秒以上に決定される。この場合、時定数τは０．０２秒以上かつ５０秒以下に決定される。
【００５２】
オープンループ制御部２２による制御を安定させるためには、ローパスフィルタの時定数τは、オープンループ制御部２２の演算周期以上であることが好ましく、特に、この演算周期の２倍以上であることがより好ましい。また、Ｒ算出部２６で求めたＲ値を温度変化に追従して変化させるためには、ローパスフィルタの時定数τは、Ｒ値の温度変化に対する時定数以上であることが好ましく、特に、この時定数の２倍以上であることがより好ましい。環境温度の変化と自己発熱によるＲ値の変化は、実験などにより求めることができる。
【００５３】
なお、Ｒ平滑部２７は、Ｒ算出部２６で求めたＲ値に対して多段構成（例えば、２段構成）のローパスフィルタを適用してもよい。また、Ｒ平滑部２７は、Ｒ算出部２６で求めたＲ値に対してローパスフィルタ以外の平滑化処理を行ってもよい。例えば、Ｒ平滑部２７は、平滑化処理として、前回のＲ値と今回のＲ値の平均値を求める処理、過去の複数のＲ値と今回のＲ値の平均値を求める処理、あるいは、過去の複数のＲ値の平均値と今回のＲ値の平均値を求める処理などを行ってもよい。
【００５４】
Ｒ平滑部２７は、平滑化したＲ値（図２に示すＲs ）をオープンループ制御部２２に対して出力する。オープンループ制御部２２は、式（１）と（２）を用いてｄ軸指令電圧ｖd とｑ軸指令電圧ｖq を求めるときに、Ｒ平滑部２７で平滑化されたＲ値を使用する。このようにマイコン２０は、モータの回路方程式に含まれる電機子巻線抵抗を含む回路抵抗Ｒを求め、求めたＲ値を平滑化し、ｄ軸指令電圧ｖd とｑ軸指令電圧ｖq を求めるときには平滑化されたＲ値を使用する。
【００５５】
以上に示すように、本実施形態に係るモータ制御装置は、モータの回路方程式に従いオープンループ制御によってモータの駆動電圧を求めるときに、電流センサで検出した電流値に基づきモータの回路方程式に含まれるＲの値を求め、求めたＲ値を平滑化し、モータの駆動電圧を求めるときには平滑化されたＲ値を使用する。
【００５６】
したがって、本実施形態に係るモータ制御装置によれば、モータの回路方程式に含まれるＲ値が製造ばらつきや温度変化（自己発熱を含む）によって変動するときでも、電流センサで検出した電流値に基づきＲ値を求めることにより、モータを高い精度で駆動して所望のモータ出力を得ると共に、Ｒ値に対して平滑化処理を行うことにより、Ｒ値に発生するノイズを抑制してモータをより安定的に駆動することができる。また、Ｒ値の初期値が予め規定値として設定されており、装置の起動時に上記規定値に基づくモータ制御から製造ばらつきを有する各個体のＲ値に基づくモータ制御に移行するときに、制御の急変を防止することができる。
【００５７】
なお、Ｒ算出部２６は、ｉd ≠０のときに、ｄ軸指令電圧ｖd 、ｄ軸検出電流ｉd 、ｑ軸検出電流ｉq および角速度ωe に基づき、次式（８ｄ）〜（８ｆ）のいずれかを用いて式（１）と（２）に含まれる電機子巻線抵抗を含む回路抵抗Ｒを求めてもよい。
Ｒ＝（ｖd−ＰＬdｉd＋ωeＬqｉq）／ｉd   …（８ｄ）
Ｒ＝（ｖd＋ωeＬqｉq）／ｉd             …（８ｅ）
Ｒ＝ｖd／ｉd                            …（８ｆ）
式（８ｄ）は、式（１）のｄ軸指令電流ｉd*とｑ軸指令電流ｉq*にｄ軸検出電流ｉd とｑ軸検出電流ｉq を代入し、その式をＲについて解いたものである。式（８ｅ）は式（８ｄ）から微分項を省略したものであり、式（８ｆ）は式（８ｅ）からｉq を含む項を省略したものである。
【００５８】
ｄ軸検出電流ｉd は、モータトルクの発生に寄与しないので、一般にはゼロに制御される。ただし、式（８ｄ）〜（８ｆ）を使用する場合には、ｄ軸検出電流ｉd はゼロ以外の値に制御される。この制御は、常時行ってもよく、Ｒ値を求めるときにだけ行ってもよい。また、いわゆる弱め磁束制御ではｄ軸検出電流ｉd を流すように制御するので、弱め磁束制御には式（８ｄ）〜（８ｆ）を用いたＲ値の算出を好適に適用できる。この方法によれば、Φ値の影響を受けることなく正確にＲ値を求めることができる。
【００５９】
また、本実施形態に係るモータ制御装置では、電流センサ１４が１つしか設けられていないので、３相の指令電圧Ｖu 、Ｖv 、Ｖw に差がないときには、式（６）と（７）に含まれるｕ相検出電流ｉu とｖ相検出電流ｉv を求めることができない。そこで、Ｒ算出部は、電流を検出できるときには式（８ａ）などを用いてＲ値を求め、電流を検出できないときには別の方法でＲ値を求めてもよい。例えば、Ｒ算出部は、電流を検出できないときには、オープンループ制御部２２からｄ軸指令電流ｉd*とｑ軸指令電流ｉq*を受け取り、これらの２乗和（ｉd*2＋ｉq*2）を求め、求めた値に銅の温度係数を乗算することにより発熱量を求め、求めた発熱量から所定の放熱量を引いて得られた温度上昇量に基づきＲ値を求めてもよい。これにより、電流センサ１４で電流を検出できないときを含めて、常にＲ値を求めることができる。
【００６０】
（第２の実施形態）
図４は、本発明の第２の実施形態に係るモータ制御装置の構成を示すブロック図である。図４に示すモータ制御装置は、第１の実施形態に係るモータ制御装置において、Ｒ平滑部２７を含むマイコン２０を計時部３１とＲ平滑部３２を含むマイコン３０に置換したものである。本実施形態の構成要素のうち、第１の実施形態と同一の要素については、同一の参照符号を付して説明を省略する。
【００６１】
計時部３１は、モータ制御開始からの経過時間を測定する。Ｒ平滑部３２は、第１の実施形態に係るＲ平滑部２７と同様に、Ｒ算出部２６で求めたＲ値に対してローパスフィルタを適用する。この際、Ｒ平滑部３２は、計時部３１で測定した時間（すなわち、モータ制御開始からの経過時間）に応じて、ローパスフィルタの時定数τを変化させる。具体的には、Ｒ平滑部３２は、経過時間が小さいときには時定数τを小さくし、経過時間が大きいときには時定数τを大きくする。
【００６２】
例えばＲ平滑部３２は、モータ制御開始から所定の時間が経過するまではローパスフィルタの時定数τを０．０１秒に設定し、その後はローパスフィルタの時定数τを１秒に設定する。また、Ｒ平滑部３２は、モータ制御開始からの経過時間に応じて、ローパスフィルタの時定数τを３段階以上に切り替えてもよい。
【００６３】
第１の実施形態に係るＲ算出部２６で求めたＲ値は、モータ制御開始当初は実際の値とは異なり、時間の経過と共に実際の値に接近する。しかしながら、Ｒ算出部２６で求めたＲ値に対してＲ平滑部２７で平滑化処理（ローパスフィルタなど）を行うので、Ｒ値が実際の値に接近するのに時間がかかり、その間にモータ制御が不安定になることがある。
【００６４】
そこで、本実施形態に係るＲ平滑部３２では、ローパスフィルタの時定数τは、オープンループ制御部２２による制御開始当初はその後よりも小さく制御される。これにより、モータ制御開始当初は時定数の小さなローパスフィルタを用いてＲ値を素早く変化させてモータ制御の応答性を高め、その後は時定数の大きなローパスフィルタを用いてＲ値を安定的に変化させてモータ制御の安定性を高めることができる。
【００６５】
なお、本実施形態に係るモータ制御装置については、以下の変形例を構成することができる。例えば、マイコンにモータ制御開始からの補正回数を数える計数部を設け、Ｒ平滑部は計数部のカウント値が小さい間はローパスフィルタの時定数τを小さくし、その後はローパスフィルタの時定数τを大きくしてもよい。また、マイコンにＲ値の変化が大きいか否かを判定する判定部を設け、Ｒ平滑部はＲ値の変化が大きい間はローパスフィルタの時定数τを小さくし、その後はローパスフィルタの時定数τを大きくしてもよい。これら変形例に係るモータ制御装置は、図４に示すモータ制御装置と同じ効果を奏する。
【００６６】
（第３の実施形態）
図５は、本発明の第３の実施形態に係るモータ制御装置の構成を示すブロック図である。図５に示すモータ制御装置は、第１の実施形態に係るモータ制御装置において、Ｒ算出部２６とＲ平滑部２７を含むマイコン２０をΦ算出部４１とΦ平滑部４２を含むマイコン４０に置換したものである。本実施形態の構成要素のうち、第１の実施形態と同一の要素については、同一の参照符号を付して説明を省略する。
【００６７】
Φ算出部４１には、Ｒ算出部２６と同様に、電流センサ１４で検出された電流値ｉa と、角度算出部２４で算出された角度θと、角速度算出部２５で算出された角速度ωe とが入力される。Φ算出部４１は、まず電流値ｉa に基づきｕ相検出電流ｉu とｖ相検出電流ｉv を求め、これらを式（６）と（７）を用いてｄｑ座標軸上の電流値に変換する。
【００６８】
次に、Φ算出部４１は、ωe ≠０のときに、ｑ軸指令電圧ｖq 、ｄ軸検出電流ｉd 、ｑ軸検出電流ｉq および角速度ωe に基づき、次式（９ａ）を用いて式（２）に含まれる電機子巻線鎖交磁束数Φを求める。
Φ＝｛ｖq−（Ｒ＋ＰＬq）ｉq−ωeＬdｉd｝／ωe   …（９ａ）
なお、式（９ａ）は、式（２）のｄ軸指令電流ｉd*とｑ軸指令電流ｉq*にｄ軸検出電流ｉd とｑ軸検出電流ｉq を代入し、その式をΦについて解いたものである。
【００６９】
Φ算出部４１は、演算を簡素化するために、式（９ａ）に代えて次式（９ｂ）や（９ｃ）を使用してもよい。
Φ＝（ｖq−Ｒｉq−ωeＬdｉd）／ωe  …（９ｂ）
Φ＝（ｖq−Ｒｉq）／ωe             …（９ｃ）
式（９ｂ）は式（９ａ）から微分項を省略したものであり、式（９ｃ）は式（９ｂ）からｉd を含む項を省略したものである。
【００７０】
Φ算出部４１は、ωe ≠０を満たす任意のタイミングでΦ値を繰り返し求める。Φ算出部４１は、例えば、所定の時間間隔でΦ値を求めてもよく、温度などの状態が変化したときにΦ値を求めてもよい。また、ωe がゼロに近いときに求めたΦ値には誤差が発生しやすいので、Φ算出部４１はωe が所定の閾値以上であるときに限りΦ値を求めてもよい。
【００７１】
Φ平滑部４２は、Φ算出部４１で求めたΦ値に対して平滑化処理を行う。Φ算出部４１で求めたΦ値は、第１の実施形態に係るＲ値と同様に、それほど急激には変化しない。そこでΦ平滑部４２では、Φ値の変動の主要因である温度変化に対して十分に応答する時定数を持つフィルタ処理を行う。本実施形態では、Φ平滑部４２では、Φ算出部４１で求めたΦ値に対して所定の時定数τを有するローパスフィルタを適用する。
【００７２】
本実施形態でも第１の実施形態と同様に、ローパスフィルタの時定数τは、オープンループ制御部２２による制御が安定し、かつ、Φ算出部４１で求めたΦ値が温度変化に追従して変化するように決定される。ただし、Φ値は自己発熱によって変化しないので、Φ平滑部４２に含まれるローパスフィルタの時定数τを決定するときには、自己発熱によるΦ値の変化を考慮する必要がない。また、Φ平滑部４２は、Φ算出部４１で求めたΦ値に対して多段構成のローパスフィルタを適用してもよく、ローパスフィルタ以外の平滑化処理を行ってもよい。
【００７３】
Φ平滑部４２は、平滑化したΦ値（図５に示すΦs ）をオープンループ制御部２２に対して出力する。オープンループ制御部２２は、式（２）を用いてｑ軸指令電圧ｖq を求めるときに、Φ平滑部４２で平滑化されたΦ値を使用する。このようにマイコン４０は、モータの回路方程式に含まれる電機子巻線鎖交磁束数Φを求め、求めたΦ値を平滑化し、ｑ軸指令電圧ｖq を求めるときには平滑化されたΦ値を使用する。
【００７４】
以上に示すように、本実施形態に係るモータ制御装置は、モータの回路方程式に従いオープンループ制御によってモータの駆動電圧を求めると共に、電流センサで検出した電流値に基づきモータの回路方程式に含まれるΦの値を求め、求めたΦ値を平滑化し、モータの駆動電圧を求めるときには平滑化されたΦ値を使用する。
【００７５】
したがって、本実施形態に係るモータ制御装置によれば、モータの回路方程式に含まれるΦ値が製造ばらつきや温度変化によって変動するときでも、電流センサで検出した電流値に基づきΦ値を求めることにより、モータを高い精度で駆動して所望のモータ出力を得ると共に、Φ値に対して平滑化処理を行うことにより、Φ値に発生するノイズを抑制してモータをより安定的に駆動することができる。また、Φ値の初期値が予め規定値として設定されており、装置の起動時に上記規定値に基づくモータ制御から製造ばらつきを有する各個体のΦ値に基づくモータ制御に移行するときに、制御の急変を防止することができる。
【００７６】
（第４の実施形態）
図６は、本発明の第４の実施形態に係るモータ制御装置の構成を示すブロック図である。図６に示すモータ制御装置は、第１の実施形態に係るモータ制御装置において、Ｒ算出部２６とＲ平滑部２７を含むマイコン２０を、Ｒ算出部５１、Ｒ平滑部５２、Φ算出部５３およびΦ平滑部５４を含むマイコン５０に置換したものである。本実施形態の構成要素のうち、第１および第３の実施形態と同一の要素については、同一の参照符号を付して説明を省略する。
【００７７】
Ｒ算出部５１は、第１の実施形態に係るＲ算出部２６と同様に、式（８ａ）などを用いてＲ値を求める。Φ算出部５３は、第３の実施形態に係るΦ算出部４１と同様に、式（９ａ）などを用いてΦ値を求める。Ｒ算出部５１で求めたＲ値は、オープンループ制御部２２を介してΦ算出部５３に入力され、Φ算出部５３でΦ値を求めるときに使用される。Φ算出部５３で求めたΦ値は、オープンループ制御部２２を介してＲ算出部５１に入力され、Ｒ算出部５１でＲ値を求めるときに使用される。
【００７８】
式（１）と（２）に示すモータの回路方程式では、Ｒ値とΦ値のうち一方が変化してもその影響が小さいときには、その影響を無視できる。そこで、本実施形態に係るモータ制御装置では、Φ値の変化による影響が小さいときには、Ｒ算出部５１が動作してＲ値を求め、Ｒ値の変化による影響が小さいときには、Φ算出部５３が動作してΦ値を求める。このようにＲ算出部５１とΦ算出部５３が選択的に動作することにより、Ｒ値とΦ値の両方を正確に求めることができる。
【００７９】
Ｒ平滑部５２は、第１の実施形態に係るＲ平滑部２７と同様に、Ｒ算出部５１で求めたＲ値に対して平滑化処理を行う。Φ平滑部５４は、第３の実施形態に係るΦ平滑部４２と同様に、Φ算出部５３で求めたΦ値に対して平滑化処理を行う。ただし、Ｒ平滑部５２はＲ算出部５１がＲ値を求めたときに動作し、Φ平滑部５４はΦ算出部５３がΦ値を求めたときに動作する。
【００８０】
以下、Ｒ値の算出とΦ値の算出を切り替える方法の具体例を説明する。式（９ａ）〜（９ｃ）においてＲ値はｑ軸検出電流ｉq と乗算されるので、ｑ軸検出電流ｉq が小さいときには、Ｒ値の大小に関わらずΦ値を正確に求めることができる。この点を考慮して、ｑ軸検出電流ｉq が小さいときにはΦ値を求め、ｑ軸検出電流ｉq が大きいときにはＲ値を求める方法がある（第１の方法）。例えば、ωe ≠０の場合において、ｑ軸検出電流ｉq が所定の閾値未満のときにはΦ値を求め、それ以外のときにはＲ値を求めればよい。あるいは、ｑ軸検出電流ｉq に代えてｑ軸指令電流ｉq*やｑ軸推定電流などを閾値と比較してもよい。
【００８１】
また、式（８ａ）〜（８ｃ）においてΦ値は角速度ωe と乗算されるので、角速度ωe が小さいときには、Φ値の大小に関わらずＲ値を正確に求めることができる。この点を考慮して、ロータの角速度ωe が小さいときにはＲ値を求め、角速度ωe が大きいときにはΦ値を求める方法がある（第２の方法）。例えば、ｉq ≠０の場合において、角速度ωe が所定の閾値未満のときにはＲ値を求め、それ以外のときにはΦ値を求めればよい。
【００８２】
また、大小２個の値がある場合、大きい値のほうが小さい値よりも正確に求めることができる。この点を考慮して、式（２）のｄ軸指令電流ｉd*とｑ軸指令電流ｉq*にｄ軸検出電流ｉd とｑ軸検出電流ｉq を代入した式において、Ｒ値を含む項（Ｒ＋ＰＬq）ｉqとΦ値を含む項ωeΦ を比較し、前者のほうが大きいときにはＲ値を求め、後者のほうが大きいときにはΦ値を求める方法がある（第３の方法）。
【００８３】
また、Ｒ値の算出とΦ値の算出を切り替えるときに、２個の閾値ＴＨ１、ＴＨ２（ただし、ＴＨ１＜ＴＨ２）を使用し、切り替えにヒステリシス特性を持たせてもよい。例えば上記第１の方法では、ｑ軸検出電流ｉq が閾値ＴＨ１以下になると、Ｒ値の算出を停止してΦ値の算出を開始し、ｑ軸検出電流ｉq が閾値ＴＨ２以上になると、Φ値の算出を停止してＲ値の算出を開始してもよい。上記第２の方法では、角速度ωe が閾値ＴＨ１以下になると、Φ値の算出を停止してＲ値の算出を開始し、角速度ωe が閾値ＴＨ２以上になると、Ｒ値の算出を停止してΦ値の算出を開始してもよい。上記第３の方法では、（Ｒ＋ＰＬq）ｉq／ωeΦ が閾値ＴＨ１以下になると、Ｒ値の算出を停止してΦ値の算出を開始し、（Ｒ＋ＰＬq）ｉq／ωeΦ が閾値ＴＨ２以上になると、Φ値の算出を停止してＲ値の算出を開始してもよい。第３の方法では、（Ｒ＋ＰＬq）ｉq／ωeΦ に代えて、｛（Ｒ＋ＰＬq）ｉq−ωeΦ ｝を閾値と比較してもよい。
【００８４】
１個の閾値を用いてＲ値の算出とΦ値の算出を切り替えた場合、比較対象の値（ｑ軸検出電流ｉq など）が閾値の近傍で小さく変化しただけでも、Ｒ値の算出とΦ値の算出が切り替わり、Ｒ値とΦ値を正確に求めることができないことがある。これに対して、２個の閾値を用いて切り替えにヒステリシス特性を持たせた場合、比較対象の値が閾値の近傍で小さく変化しても、Ｒ値の算出とΦ値の算出は切り替わらない。したがって、比較対象の値が閾値の近傍で小さく変化したときを含めて、常にＲ値とΦ値を正確に求めることができる。
【００８５】
以上に示すように、本実施形態に係るモータ制御装置は、モータの回路方程式に従いオープンループ制御によってモータの駆動電圧を求めると共に、電流センサで検出した電流値に基づきモータの回路方程式に含まれるＲの値とΦの値を選択的に求め、求めたＲ値とΦ値を平滑化し、指令電圧を求めるときには平滑化されたＲ値または平滑化されたΦ値を使用する。
【００８６】
したがって、本実施形態に係るモータ制御装置によれば、Ｒ値を求めるときとΦ値を求めるときとを切り替えることにより、Ｒ値とΦ値の両方を正確に求め、モータを高い精度で駆動して所望のモータ出力を得ると共に、Ｒ値とΦ値に対して平滑化処理を行うことにより、Ｒ値とΦ値に発生するノイズを抑制してモータをより安定的に駆動することができる。
【００８７】
（第５の実施形態）
図７は、本発明の第５の実施形態に係るモータ制御装置の構成を示すブロック図である。図７に示すモータ制御装置は、第１の実施形態に係るモータ制御装置においてマイコン２０と電流センサ１４をそれぞれマイコン６０と電流センサ１５に置換したものである。このモータ制御装置は、電流センサ１５が正常に動作しているときにはフィードバック制御を行い、電流センサ１５に異常が発生したときにはオープンループ制御を行う。本実施形態の構成要素のうち、第１の実施形態と同一の要素については、同一の参照符号を付して説明を省略する。
【００８８】
電流センサ１５は、ブラシレスモータ１に供給される３相の駆動電流が流れる経路上に１個ずつ設けられ、３相の駆動電流を個別に検出する。電流センサ１５で検出された３相の電流値（以下、ｕ相検出電流ｉu 、ｖ相検出電流ｉv およびｗ相検出電流ｉw という）は、マイコン６０に入力される。
【００８９】
マイコン６０は、マイコン２０に対して、３相／ｄｑ軸変換部６１、減算部６２、フィードバック制御部６３、異常監視部６４、および、指令電圧選択部６５を追加したものである。３相／ｄｑ軸変換部６１は、電流センサ１５で検出されたｕ相検出電流ｉu とｖ相検出電流ｉv に基づき、式（６）と（７）を用いてｄ軸検出電流ｉd とｑ軸検出電流ｉq を求める。
【００９０】
減算部６２は、ｄ軸指令電流ｉd*とｄ軸検出電流ｉd の偏差Ｅd 、および、ｑ軸指令電流ｉq*とｑ軸検出電流ｉq の偏差Ｅq を求める。フィードバック制御部６３は、偏差Ｅd 、Ｅq に対して次式（１０）と（１１）に示す比例積分演算を施して、ｄ軸指令電圧ｖd#とｑ軸指令電圧ｖq#を求める。
ｖd#＝Ｋ×｛Ｅd＋（１／Ｔ）∫Ｅd・ｄｔ｝  …（１０）
ｖq#＝Ｋ×｛Ｅq＋（１／Ｔ）∫Ｅq・ｄｔ｝  …（１１）
ただし、式（１０）と（１１）において、Ｋは比例ゲイン定数であり、Ｔは積分時間である。
【００９１】
異常監視部６４は、電流センサ１５で検出された３相の電流値が正常範囲内にあるか否かを調べ、電流センサ１５が正常に動作しているか否かを判断する。異常監視部６４は、３相の電流値がすべて正常範囲内にあるときには「正常」と判断し、１相以上の電流値が正常範囲外にあるときには「異常」と判断する。異常監視部６４は、判断結果を示す制御信号を出力する。
【００９２】
指令電圧選択部６５は、異常監視部６４で正常と判断されたときには、フィードバック制御部６３で求めたｄ軸指令電圧ｖd#とｑ軸指令電圧ｖq#を出力し、異常監視部６４で異常と判断されたときには、オープンループ制御部２２で求めたｄ軸指令電圧ｖd とｑ軸指令電圧ｖq を出力する。
【００９３】
電流センサ１５が正常に動作しているときには、異常監視部６４は正常と判断し、指令電圧選択部６５はフィードバック制御部６３の出力を選択する。このとき、指令電流算出部２１、ｄｑ軸／３相変換部２３、角度算出部２４、３相／ｄｑ軸変換部６１、減算部６２およびフィードバック制御部６３が動作し、フィードバック制御が行われる。これに加えて、電流センサ１５が正常に動作しているときは、角速度算出部２５、Ｒ算出部２６およびＲ平滑部２７が動作する。このとき、Ｒ算出部２６は式（８ａ）などを用いて式（１）と（２）に含まれる電機子巻線抵抗を含む回路抵抗Ｒを求め、Ｒ平滑部２７はＲ算出部２６で求めたＲ値に対して平滑化処理を行う。
【００９４】
その後、電流センサ１５に異常が発生すると、異常監視部６４は異常と判断し、指令電圧選択部６５はオープンループ制御部２２の出力を選択する。このとき、指令電流算出部２１、オープンループ制御部２２、ｄｑ軸／３相変換部２３および角度算出部２４が動作し、オープンループ制御が行われる。オープンループ制御部２２は、電流センサ１５が正常に動作している間に求められたＲ値（平滑化されたＲ値）を用いて、ｄ軸指令電圧ｖd とｑ軸指令電圧ｖq を求める。
【００９５】
以上に示すように、本実施形態に係るモータ制御装置は、電流センサが正常に動作しているときには、指令電流値と電流センサで検出された電流値との差に比例積分演算を施してモータの駆動電圧を求め、電流センサに異常が発生したときには、指令電流値とロータの角速度とに基づき、モータの回路方程式に従いオープンループ制御によってモータの駆動電圧を求める。また、オープンループ制御を行うときには、電流センサが正常に動作している間に求めたＲ値（平滑化されたＲ値）が使用される。
【００９６】
したがって、本実施形態に係るモータ制御装置によれば、電流センサが正常に動作している間は、フィードバック制御によってブラシレスモータを高い精度で駆動することができる。また、電流センサに異常が発生し、フィードバック制御を行えないときには、フィードバック制御を行っている間に求めたＲ値を用いてオープンループ制御を行うことにより、モータを高い精度で駆動して所望のモータ出力を得ることができる。また、Ｒ値に対して平滑化処理を行うことにより、Ｒ値に発生するノイズを抑制し、モータをより安定的に駆動することができる。このようにフィードバック制御とオープンループ制御を切り替えて行う場合において、フィードバック制御を行うときだけでなくオープンループ制御を行うときでも、モータを高い精度で駆動して所望のモータ出力を得ることができる。
【００９７】
なお、本発明のモータ制御装置については、各種の変形例を構成することができる。まず、各実施形態に係るモータ制御装置では、式（１）などに含まれるＬd とＬq を指令電流や検出電流などに基づき演算で求めてもよく、Ｌd とＬq に同じ値を使用してもよい（例えば、円筒型のモータの場合）。また、第２および第５の実施形態に係るモータ制御装置において、Ｒ算出部とＲ平滑部をΦ算出部とΦ平滑部に置換してもよい。また、第１〜第４の実施形態に係るモータ制御装置に、各相の駆動電流を個別に検出するために、複数の電流センサを設けてもよい。また、第５の実施形態に係るモータ制御装置では、上記以外の判断によって（例えば、運転者の選択によって）フィードバック制御とオープンループ制御を切り替えてもよい。これら変形例に係るモータ制御装置によれば、各実施形態に係るモータ制御装置と同様の効果が得られる。
【００９８】
以上に示すように、本発明のモータ制御装置では、モータの回路方程式に従いオープンループ制御によってモータの駆動電圧を求めるときに、検出した電流値に基づき求めたパラメータを平滑化した値を使用する。したがって、このパラメータが製造ばらつきや温度変化などによって変動するときでも、モータを高い精度で駆動して所望のモータ出力を得ると共に、パラメータに発生するノイズを抑制してモータをより安定的に駆動することができる。また、パラメータの初期値が予め規定値として設定されており、装置の起動時に上記規定値に基づくモータ制御から製造ばらつきを有する各個体のパラメータに基づくモータ制御に移行するときに、制御の急変を防止することができる。また、このモータ制御装置を備えた電動パワーステアリング装置によれば、スムーズで安定した操舵補助が可能となる。
【００９９】
なお、本発明は、上述したコラムアシスト型の電動パワーステアリング装置だけでなく、ピニオンアシスト型やラックアシスト型の電動パワーステアリング装置にも適用できる。また、本発明は、電動パワーステアリング装置以外のモータ制御装置にも適用できる。
【符号の説明】
【０１００】
１３…モータ駆動回路、２０、３０、４０、５０、６０…マイコン
【図１】
2010252484.tif 000003
【図２】
2010252484.tif 000004
【図３】
2010252484.tif 000005
【図４】
2010252484.tif 000006
【図５】
2010252484.tif 000007
【図６】
2010252484.tif 000008
【図７】
2010252484.tif 000009