(57)【特許請求の範囲】
【請求項１】
モータを駆動するモータ制御装置であって、
前記モータの駆動に用いられる指令電圧のレベルを求める制御手段と、
前記制御手段で求めたレベルの電圧を用いて前記モータを駆動するモータ駆動手段と、
前記モータに流れる電流を検出する電流検出手段と、
前記電流検出手段で検出された電流値に基づき、前記指令電圧のレベルを求めるときに使用するパラメータを求めるパラメータ算出手段とを備え、
前記制御手段は、前記モータに供給すべき電流の量を示す指令電流値と前記モータのロータの角速度とに基づき、モータの回路方程式に従い前記指令電圧のレベルを求めるオープンループ制御手段を含み、
前記パラメータ算出手段は、前記電流検出手段で検出された電流値に基づき、モータの回路方程式に含まれる複数のパラメータのうちの１つを、前記回路方程式または前記回路方程式の近似式により求め、
前記パラメータ算出手段は、前記電流検出手段で検出された電流値に基づき、モータの回路方程式に含まれる電機子巻線抵抗を含む回路抵抗の変化による影響を無視できる場合にモータの回路方程式に含まれる電機子巻線鎖交磁束数を求め、前記電機子巻線鎖交磁束数の変化による影響を無視できる場合に前記電機子巻線抵抗を含む回路抵抗を求め、かつ、前記電機子巻線鎖交磁束数を求める場合と、前記回路抵抗を求める場合とが、前記検出された電流値に基づき算出されるｄ−ｑ座標系におけるｑ軸検出電流値の変化によってヒステリシスを持って切り替わるよう、前記ｑ軸検出電流値が所定の第１の閾値よりも小さい場合に前記電機子巻線鎖交磁束数を求め、前記ｑ軸検出電流値が前記第１の閾値より大きい第２の閾値よりも大きい場合に前記回路抵抗を求め、前記ｑ軸検出電流値が前記第１の閾値以上前記第２の閾値以下である場合には前記電機子巻線鎖交磁束数および前記回路抵抗のうちの直前に求められた方を求めることを特徴とする、モータ制御装置。
【請求項２】
前記制御手段は、
前記指令電流値と前記電流検出手段で検出された電流値との差に比例積分演算を施して前記指令電圧のレベルを求めるフィードバック制御手段と、
前記フィードバック制御手段で求めた指令電圧のレベルと、前記オープンループ制御手段で求めた指令電圧のレベルとを切り替えて出力する指令電圧選択手段とをさらに含むことを特徴とする、請求項１に記載のモータ制御装置。
【請求項３】
前記指令電圧選択手段は、前記電流検出手段が正常に動作しているときには、前記フィードバック制御手段で求めた指令電圧のレベルを出力し、前記電流検出手段が故障したときには、前記オープンループ制御手段で求めた指令電圧のレベルを出力し、
前記パラメータ算出手段は、前記電流検出手段が正常に動作している間に、モータの回路方程式に含まれるパラメータを求めることを特徴とする、請求項２に記載のモータ制御装置。
【請求項４】
前記制御手段は、
前記パラメータ算出手段により求められた前記電機子巻線鎖交磁束数を次元変換することにより現在のトルク定数を算出する次元変換手段と、
前記次元変換手段から前記現在のトルク定数を受け取り、前記現在のトルク定数で前記モータに生じるべき目標となるトルク値を除算した値に相当する前記モータに供給すべき電流の量を示す指令電流値を求める指令電流値算出手段と
を含むことを特徴とする、請求項１に記載のモータ制御装置。
【請求項５】
前記モータに加わる電圧に対応する電圧を検出する電圧検出手段をさらに備え、
前記モータ駆動手段は、
複数のスイッチング素子を有し、前記複数のスイッチング素子がオン・オフされることにより前記モータに電流を供給するスイッチング回路と、
前記制御手段で求めたレベルの電圧と前記電圧検出手段で検出される電圧とを用いて前記複数のスイッチング素子をオン・オフするモータ電圧決定手段と
を含み、
前記電圧検出手段は、前記モータを駆動するための電源のプラス側に接続される前記スイッチング回路の一端から前記電源のプラス側までの経路上の一点と、前記電源のマイナス側に接続される前記スイッチング回路の他端から前記電源のマイナス側までの経路上の他点との間の電圧を測定することを特徴とする、請求項１に記載のモータ制御装置。
【請求項６】
前記モータ駆動手段は、複数のスイッチング素子を有し、前記モータに電流を供給するスイッチング回路を含み、
前記電流検出手段は、前記スイッチング回路と電源との間に１個だけ設けられていることを特徴とする、請求項１〜５のいずれか１項に記載のモータ制御装置。
【請求項７】
請求項１〜６のいずれか１項に記載のモータ制御装置を備えた、電動パワーステアリング装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、モータ制御装置、および、モータ制御装置を備えた電動パワーステアリング装置に関する。
【背景技術】
【０００２】
従来から、運転者がハンドル（ステアリングホイール）に加える操舵トルクに応じて電動モータを駆動することにより車両のステアリング機構に操舵補助力を与える電動パワーステアリング装置が用いられている。電動パワーステアリング装置の電動モータには従来からブラシモータが広く使用されているが、信頼性および耐久性の向上や慣性の低減などの観点から、近年ではブラシレスモータも使用されている。
【０００３】
一般にモータ制御装置は、モータで発生するトルクを制御するために、モータに流れる電流を検出し、モータに供給すべき電流と検出した電流との差に基づきＰＩ制御（比例積分制御）を行う。３相ブラシレスモータを駆動するモータ制御装置には、２相以上の電流を検出するために、２個または３個の電流センサが設けられる。
【０００４】
なお、本願発明に関連して、特許文献１には、モータの回路方程式を用いてｄ軸指令電圧とｑ軸指令電圧を求めることが開示されている。また、特許文献２には、モータの温度に応じてｄ軸指令電流を補正することが開示されている。
【特許文献１】特開２００１−１８７５７８号公報
【特許文献２】特開２０００−１８４７７３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
電動パワーステアリング装置に含まれるモータ制御装置では、電流センサは１００Ａ以上の大電流を検出する必要がある。この電流センサは、サイズが大きく、電動パワーステアリング装置の制御装置の小型化を妨げている。このため、電動パワーステアリング装置などに含まれるモータ制御装置では、電流センサの削減が課題とされている。電流センサを削減できれば、モータ制御装置のコストや消費電力も低減できる。
【０００６】
電流センサを削減する方法としては、電流センサを１個に削減し、従来と同様のフィードバック制御を行う方法や、電流センサをすべて除去し、モータの回路方程式に従いオープンループ制御（フィードフォワード制御）を行う方法などが考えられる。
【０００７】
しかしながら、前者の方法には、モータのロータの回転位置によっては、１個の電流センサではフィードバック制御に必要な複数相の電流を検出できないことがあり、モータの制御が不連続になるという問題がある。また、後者の方法には、モータの回路方程式に含まれるパラメータが変動すると、モータを正しく駆動できなくなるという問題がある。
【０００８】
それ故に、本発明は、モータ駆動電圧算出時のパラメータが変動するときでも高い精度でモータを駆動できるモータ制御装置、および、これを備えた電動パワーステアリング装置を提供することを目的とする。
【課題を解決するための手段】
【０００９】
第１の発明は、モータを駆動するモータ制御装置であって、
前記モータの駆動に用いられる指令電圧のレベルを求める制御手段と、
前記制御手段で求めたレベルの電圧を用いて前記モータを駆動するモータ駆動手段と、
前記モータに流れる電流を検出する電流検出手段と、
前記電流検出手段で検出された電流値に基づき、前記指令電圧のレベルを求めるときに使用するパラメータを求めるパラメータ算出手段とを備え、
前記制御手段は、前記モータに供給すべき電流の量を示す指令電流値と前記モータのロータの角速度とに基づき、モータの回路方程式に従い前記指令電圧のレベルを求めるオープンループ制御手段を含み、
前記パラメータ算出手段は、前記電流検出手段で検出された電流値に基づき、モータの回路方程式に含まれる複数のパラメータのうちの１つを、前記回路方程式または前記回路方程式の近似式により求め、
前記パラメータ算出手段は、前記電流検出手段で検出された電流値に基づき、モータの回路方程式に含まれる電機子巻線抵抗を含む回路抵抗の変化による影響を無視できる場合にモータの回路方程式に含まれる電機子巻線鎖交磁束数を求め、前記電機子巻線鎖交磁束数の変化による影響を無視できる場合に前記電機子巻線抵抗を含む回路抵抗を求め、かつ、前記電機子巻線鎖交磁束数を求める場合と、前記回路抵抗を求める場合とが、前記検出された電流値に基づき算出されるｄ−ｑ座標系におけるｑ軸検出電流値の変化によってヒステリシスを持って切り替わるよう、前記ｑ軸検出電流値が所定の第１の閾値よりも小さい場合に前記電機子巻線鎖交磁束数を求め、前記ｑ軸検出電流値が前記第１の閾値より大きい第２の閾値よりも大きい場合に前記回路抵抗を求め、前記ｑ軸検出電流値が前記第１の閾値以上前記第２の閾値以下である場合には前記電機子巻線鎖交磁束数および前記回路抵抗のうちの直前に求められた方を求めることを特徴とする。
【００１３】
第２の発明は、第１の発明において、
前記制御手段は、
前記指令電流値と前記電流検出手段で検出された電流値との差に比例積分演算を施して前記指令電圧のレベルを求めるフィードバック制御手段と、
前記フィードバック制御手段で求めた指令電圧のレベルと、前記オープンループ制御手段で求めた指令電圧のレベルとを切り替えて出力する指令電圧選択手段とをさらに含むことを特徴とする。
【００１４】
第３の発明は、第２の発明において、
前記指令電圧選択手段は、前記電流検出手段が正常に動作しているときには、前記フィードバック制御手段で求めた指令電圧のレベルを出力し、前記電流検出手段が故障したときには、前記オープンループ制御手段で求めた指令電圧のレベルを出力し、
前記パラメータ算出手段は、前記電流検出手段が正常に動作している間に、モータの回路方程式に含まれるパラメータを求めることを特徴とする。
【００１８】
第４の発明は、第１の発明において、
前記制御手段は、
前記パラメータ算出手段により求められた前記電機子巻線鎖交磁束数を次元変換することにより現在のトルク定数を算出する次元変換手段と、
前記次元変換手段から前記現在のトルク定数を受け取り、前記現在のトルク定数で前記モータに生じるべき目標となるトルク値を除算した値に相当する前記モータに供給すべき電流の量を示す指令電流値を求める指令電流値算出手段と
を含むことを特徴とする。
【００１９】
第５の発明は、第１の発明において、
前記モータに加わる電圧に対応する電圧を検出する電圧検出手段をさらに備え、
前記モータ駆動手段は、
複数のスイッチング素子を有し、前記複数のスイッチング素子がオン・オフされることにより前記モータに電流を供給するスイッチング回路と、
前記制御手段で求めたレベルの電圧と前記電圧検出手段で検出される電圧とを用いて前記複数のスイッチング素子をオン・オフするモータ電圧決定手段と
を含み、
前記電圧検出手段は、前記モータを駆動するための電源のプラス側に接続される前記スイッチング回路の一端から前記電源のプラス側までの経路上の一点と、前記電源のマイナス側に接続される前記スイッチング回路の他端から前記電源のマイナス側までの経路上の他点との間の電圧を測定することを特徴とする。
【００２０】
第６の発明は、第１〜第５のいずれかの発明において、
前記モータ駆動手段は、複数のスイッチング素子を有し、前記モータに電流を供給するスイッチング回路を含み、
前記電流検出手段は、前記スイッチング回路と電源との間に１個だけ設けられていることを特徴とする。
【００２１】
第７の発明は、第１〜第６のいずれかの発明に係るモータ制御装置を備えた電動パワーステアリング装置である。
【発明の効果】
【００２２】
上記第１の発明によれば、電流検出手段で検出された電流値に基づき、指令電圧のレベルを求めるときに使用するパラメータが求められる。したがって、このパラメータが製造ばらつきや温度変化などによって変動するときでも、高い精度でモータを駆動し、所望のモータ出力を得ることができる。さらに、モータの回路方程式に従いオープンループ制御を行う場合に、モータの回路方程式に含まれるパラメータである電機子巻線鎖交磁束数および電機子巻線抵抗を含む回路抵抗が製造ばらつきや温度変化などによって変動するときでも、高い精度でモータを駆動し、所望のモータ出力を得ることができる。
また上記第１の発明によれば、パラメータ算出手段によって、モータの回路方程式に含まれる電機子巻線抵抗を含む回路抵抗または電機子巻線鎖交磁束数のうちの一方の値の変化による影響を無視できる場合に他方の値が求められるので、双方の値をともに正確に求めることができる。
さらに電機子巻線鎖交磁束数を求める場合と、回路抵抗を求める場合とがヒステリシスを持って切り替わるので、短い時間で入れ替わらないようにすることができ、値を正確に求めることができる。
【００２６】
上記第２の発明によれば、フィードバック制御とオープンループ制御を切り替え、フィードバック制御およびオープンループ制御を行うときでも、高い精度でモータを駆動し、所望のモータ出力を得ることができる。
【００２７】
上記第３の発明によれば、電流検出手段が正常に動作している間は、フィードバック制御を行い、高い精度でモータを駆動することができる。また、電流検出手段が故障し、フィードバック制御を行えないときには、フィードバック制御を行っている間に求めたパラメータを用いてオープンループ制御を行うことにより、高い精度でモータを駆動することを継続でき、所望のモータ出力を得ることができる。
【００３１】
上記第４の発明によれば、次元変換手段により算出される現在のトルク定数を使用して指令電流値が求められるので、装置毎の個体差があり、また温度変化に応じて変化するトルク定数に、予め定められた固定値ではなく現在の値を使用することができる。したがって、指令電流によっても必要なアシストトルクが得られずそのことにより制御が不安定になることを抑制することができる。
【００３２】
上記第５の発明によれば、電圧検出手段によりモータに加わる電圧に対応する電圧が検出されるので、スイッチング回路に含まれる複数のスイッチング素子のオン・オフ（典型的にはＰＷＭ信号のデューティー比）を定める基準となる電圧を正確に取得することできるので、制御を正確に安定して行うことができる。
【００３３】
上記第６の発明によれば、電流検出手段を削減することにより、モータ制御装置の小型化、低コスト化および低消費電力化が可能となる。
【００３４】
上記第７の発明によれば、指令電圧のレベルを求めるときに使用するパラメータが製造ばらつきや温度変化などによって変動するときでも、高い精度でモータを駆動し、所望のモータ出力を得ることができるので、スムーズな操舵補助が可能となる。
【発明を実施するための最良の形態】
【００３５】
図１は、本発明の実施形態に係る電動パワーステアリング装置の構成を、それに関連する車両の構成と共に示す概略図である。図１に示す電動パワーステアリング装置は、ブラシレスモータ１、減速機２、トルクセンサ３、車速センサ４、位置検出センサ５、および、電子制御ユニット（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×ｃｏｓ（θ−２π／３）｝   …（７）
なお、式（６）と（７）に含まれる角度θは、角度算出部２４で求めたものである。
【００５４】
次に、Φ算出部２６は、ωe ≠０のときに、ｑ軸指令電圧ｖq 、ｄ軸検出電流ｉd 、ｑ軸検出電流ｉq および角速度ωe に基づき、次式（８ａ）を用いて式（２）に含まれる電機子巻線鎖交磁束数Φを求める。
Φ＝｛ｖq−（Ｒ＋ＰＬq）ｉq−ωeＬdｉd｝／ωe  …（８ａ）
なお、式（８ａ）は、式（２）のｄ軸指令電流ｉd*とｑ軸指令電流ｉq*にｄ軸検出電流ｉd とｑ軸検出電流ｉq を代入し、その式をΦについて解いたものである。
【００５５】
Φ算出部２６は、求めたΦ値をオープンループ制御部２２に対して出力する。オープンループ制御部２２は、式（２）を用いてｑ軸指令電圧ｖq を求めるときに、Φ算出部２６で算出されたΦ値を使用する。このようにマイコン２０は、モータの回路方程式に含まれる電機子巻線鎖交磁束数Φを求め、ｑ軸指令電圧ｖq を求めるときにはそのΦ値を使用する。
【００５６】
Φ算出部２６は、演算を簡素化するために、式（８ａ）に代えて次式（８ｂ）や（８ｃ）を使用してもよい。
Φ＝（ｖq−Ｒｉq−ωeＬdｉd）／ωe  …（８ｂ）
Φ＝（ｖq−Ｒｉq）／ωe             …（８ｃ）
式（８ｂ）は式（８ａ）から微分項を省略したものであり、式（８ｃ）は式（８ｂ）からｉd を含む項を省略したものである。
【００５７】
Φ算出部２６は、ωe ≠０である限り、任意のタイミングでΦ値を求めてもよい。Φ算出部２６は、例えば、所定の時間間隔でΦ値を求めてもよく、ブラシレスモータ１の駆動開始後に１回だけΦ値を求めてもよく、温度などの状態が変化したときにΦ値を求めてもよい。また、ωe がゼロに近いときに求めたΦ値には誤差が発生しやすいので、Φ算出部２６は、ωe が所定の閾値以上であるときに限りΦ値を求めることとしてもよい。
【００５８】
以上に示すように、本実施形態に係るモータ制御装置は、指令電流値とロータの角速度とに基づき、モータの回路方程式に従いオープンループ制御により指令電圧を求めると共に、電流センサで検出した電流値に基づきモータの回路方程式に含まれるΦを求め、指令電圧を求めるときにはそのΦ値を使用する。
【００５９】
したがって、本実施形態に係るモータ制御装置によれば、モータの回路方程式に含まれるΦ値が製造ばらつきや温度変化によって変動するときでも、電流センサで検出した電流値に基づきΦ値を求めることにより、高い精度でブラシレスモータを駆動し、所望のモータ出力を得ることができる。
【００６０】
また、本実施形態に係るモータ制御装置には、電流センサは１個だけ設けられている。したがって、本実施形態に係るモータ制御装置によれば、電流センサを削減することにより、モータ制御装置の小型化、低コスト化および低消費電力化が可能となる。
【００６１】
また、本実施形態に係るモータ制御装置はオープンループ制御を行うので、１個の電流センサを用いてフィードバック制御を行うモータ制御装置とは異なり、モータの制御が不連続にならない。したがって、本実施形態に係るモータ制御装置によれば、音や振動を抑制することができる。
【００６２】
（第２の実施形態）
図４は、本発明の第２の実施形態に係るモータ制御装置の構成を示すブロック図である。図４に示すモータ制御装置は、第１の実施形態に係るモータ制御装置において、Φ算出部２６を含むマイコン２０をＲ算出部２８を含むマイコン２７に置換したものである。以下、この実施形態の各構成要素のうち、先に述べた実施形態と同一の要素については、同一の参照符号を付して説明を省略する。
【００６３】
Ｒ算出部２８には、Φ算出部２６と同様に、電流センサ１４で検出された電流値ｉa と、角度算出部２４で算出された角度θと、角速度算出部２５で算出された角速度ωe とが入力される。Ｒ算出部２８は、まず電流値ｉa に基づきｕ相検出電流ｉu とｖ相検出電流ｉv を求め、これらを式（６）と（７）を用いてｄｑ座標軸上の電流値に変換する。
【００６４】
次に、Ｒ算出部２８は、ｉq ≠０のときに、ｑ軸指令電圧ｖq 、ｄ軸検出電流ｉd 、ｑ軸検出電流ｉq および角速度ωe に基づき、次式（９ａ）を用いて式（１）と（２）に含まれる電機子巻線抵抗を含む回路抵抗Ｒを求める。
Ｒ＝（ｖq−ＰＬqｉq−ωeＬdｉd−ωeΦ）／ｉq   …（９ａ）
なお、式（９ａ）は、式（２）のｄ軸指令電流ｉd*とｑ軸指令電流ｉq*にｄ軸検出電流ｉd とｑ軸検出電流ｉq を代入し、その式をＲについて解いたものである。
【００６５】
Ｒ算出部２８は、求めたＲ値をオープンループ制御部２２に対して出力する。オープンループ制御部２２は、式（１）と（２）を用いてｄ軸指令電圧ｖd とｑ軸指令電圧ｖq を求めるときに、Ｒ算出部２８で算出されたＲ値を使用する。このようにマイコン２７は、モータの回路方程式に含まれる電機子巻線抵抗を含む回路抵抗Ｒを求め、ｄ軸指令電圧ｖd とｑ軸指令電圧ｖq を求めるときにはそのＲ値を使用する。
【００６６】
Ｒ算出部２８は、演算を簡素化するために、式（９ａ）に代えて次式（９ｂ）や（９ｃ）を使用してもよい。
Ｒ＝（ｖq−ωeＬdｉd−ωeΦ）／ｉq  …（９ｂ）
Ｒ＝（ｖq−ωeΦ）／ｉq             …（９ｃ）
式（９ｂ）は式（９ａ）から微分項を省略したものであり、式（９ｃ）は式（９ｂ）からｉd を含む項を省略したものである。
【００６７】
Ｒ算出部２８は、ｉq ≠０である限り、任意のタイミングでＲ値を求めてもよい。Ｒ算出部２８は、例えば、所定の時間間隔でＲ値を求めてもよく、ブラシレスモータ１の駆動開始後に１回だけＲ値を求めてもよく、温度などの状態が変化したときにＲ値を求めてもよい。また、ｉq がゼロに近いときに求めたＲ値には誤差が発生しやすいので、Ｒ算出部２８は、ｉ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 に同じ値を使用してもよい（例えば、円筒型のモータの場合）。また、第１および第２の実施形態に係るモータ制御装置に、各相の駆動電流を個別に検出するために、複数の電流センサを設けてもよい。また、第３の実施形態に係るモータ制御装置では、上記以外の判断によって（例えば、運転者の選択によって）フィードバック制御とオープンループ制御を切り替えてもよい。
【００８２】
以上に示すように、本発明の各実施形態に係るモータ制御装置では、電流センサで検出された電流値に基づき、指令電圧のレベルを求めるときに使用するパラメータを求めるので、このパラメータが製造ばらつきや温度変化などによって変動するときでも、高い精度でモータを駆動し、所望のモータ出力を得ることができる。したがって、このモータ制御装置を備えた電動パワーステアリング装置によれば、スムーズな操舵補助が可能となる。
【００８３】
なお、本発明は、上述したコラムアシスト型の電動パワーステアリング装置だけでなく、ピニオンアシスト型やラックアシスト型の電動パワーステアリング装置にも適用できる。また、本発明は、電動パワーステアリング装置以外のモータ制御装置にも適用できる。
【００８４】
（各実施形態の変形例）
上記第１の実施形態では、Φ算出部２６は、角速度ωe が所定の閾値以上であるときに限りΦ値を求めることとしてもよいとし、上記第２の実施形態では、Ｒ算出部２８は、ｑ軸検出電流ｉq が所定の閾値以上であるときに限りＲ値を求めることとしてもよいとした。しかし、いずれの実施形態においてもΦ値とＲ値とを同時に求めることはできず、また異なる時点で求めた両値の関係から連立方程式を解くことにより求める方法も検出電流が大きく変化しない等の問題があることから実際的ではない。そのため、常に両値を正しく求めることは極めて困難である。
【００８５】
そこで、本変形例では、図７に示すように上記実施形態におけるΦ算出部２６に相当するΦ算出部４６およびＲ算出部２８に相当するＲ算出部４８が同時に備えられ、両値のうちの一方の値の変化による影響が小さい場合にはその一方の値の変化によって生じる算出値に対する影響を無視することができるので、その場合に他方の値を算出する動作が行われる。そうすれば、両値とも正確に算出することが可能となる。その算出法としては以下の３つが考えられる。
【００８６】
まず、第１の算出法として、ｑ軸電流が小さい領域ではΦ値を算出し、ｑ軸電流が大きい領域ではＲ値を算出する。これは上式（８ａ）〜（８ｃ）を参照すればわかるように、Ｒ値はｑ軸検出電流ｉq と必ず乗算されるので、ｑ軸検出電流ｉq が小さければ、Ｒ値の大小に関わらずΦ値を正確に求めることができるからである。例えば、角速度ωe がゼロでない場合において、ｑ軸検出電流ｉq が所定の閾値未満（例えば１０Ａ未満）であるときには、上式（８ａ）〜（８ｃ）のいずれかに基づいてΦ算出部４６がΦ値を算出し、ｑ軸検出電流ｉq が上記閾値以上（例えば１０Ａ以上）であるときには、上式（９ａ）〜（９ｃ）のいずれかに基づいてＲ算出部４８がＲ値を算出する。そうすれば、Φ値とＲ値とをそれぞれ正確に求めることができる。
【００８７】
なお、上記閾値に比較されるｑ軸検出電流ｉq に代えて、ｑ軸指令電流ｉq*やｑ軸推定電流等が使用されてもよい。また、角速度ωe がゼロに近いときに求めた値には誤差が発生しやすいので、角速度ωe が所定の閾値以上であるときに限りΦ値とＲ値とを求めることにしてもよい。
【００８８】
ここで、上記閾値近傍ではｑ軸検出電流ｉq がわずかに大小変化するだけでΦ値が算出される場合とＲ値が算出される場合とが入れ替わるように変化する。よって、短い時間に交互に値の算出が繰り返される場合、Φ値およびＲ値は正確な値から離れてしまうことがある。そこで、Φ値が算出される場合とＲ値が算出される場合とが短い時間で入れ替わらないよう、１つの閾値ではなくヒステリシス特性を持たせるよう（典型的には）２つの閾値を設定してもよい。
【００８９】
例えば、ｑ軸検出電流ｉq が第２の閾値未満（例えば１５Ａ未満）であるときにはΦ算出部４６がΦ値を算出するが、当該時点でＲ算出部４８がＲ値を算出している場合には、第２の閾値より小さい第１の閾値未満（例えば５Ａ未満）であるときに限ってΦ算出部４６がΦ値を算出し、それまではＲ算出部４８がＲ値を算出する。なお、ここではオープンループ制御部２２を介してΦ算出部４６はＲ算出部４８により算出されたＲ値を受け取り、Ｒ算出部４８がＲ値を算出している場合であるか否かを判別するものとする。
【００９０】
また逆に、ｑ軸検出電流ｉq が第１の閾値以上であるときにはＲ算出部４８がＲ値を算出するが、当該時点でΦ算出部４６がΦ値を算出している場合には、第２の閾値以上であるときに限ってＲ算出部４８がＲ値を算出し、それまではΦ算出部４６がΦ値を算出する。なお、ここではオープンループ制御部２２を介してＲ算出部４８はΦ算出部４６により算出されたΦ値を受け取り、Φ算出部４６がΦ値を算出している場合であるか否かを判別するものとする。
【００９１】
このようにヒステリシス特性を有するよう閾値を設定することにより、ｑ軸検出電流ｉq が第１の閾値から第２の閾値までまたはその逆に変化するまではΦ値が算出される場合とＲ値が算出される場合とが入れ替わらないようにすることができる。このことにより、Φ値とＲ値とをそれぞれ正確に求めることができる。
【００９２】
なお、このようなヒステリシス特性を持たせるための構成には特に限定がなく、例えばΦ算出部４６またはＲ算出部４８のいずれか一方のみがヒステリシス特性を持って動作するようこれらを制御する切り替え部が設けられてもよいし、Φ算出部４６およびＲ算出部４８は、他方の構成要素が値を算出している場合か否かを個々に判別してもよい。
【００９３】
次に、第２の算出方法として、ロータの角速度が小さい領域ではＲ値を算出し、角速度が大きい領域ではΦ値を算出する。これは上式（９ａ）〜（９ｃ）を参照すればわかるように、Φ値は角速度ωe と必ず乗算されるので、角速度ωe が小さければ、Φ値の大小に関わらずＲ値を正確に求めることができるからである。例えば、ｑ軸検出電流ｉq が０でない場合において、角速度ωe が閾値未満（例えば１００ｒｐｍ未満）であるときには、上式（９ａ）〜（９ｃ）のいずれかに基づいてＲ算出部４８がＲ値を算出し、角速度ωe が上記閾値以上（例えば１００ｒｐｍ以上）であるときには、上式（８ａ）〜（８ｃ）のいずれかに基づいてΦ算出部４６がΦ値を算出する。そうすれば、Φ値とＲ値とをそれぞれ正確に求めることができる。
【００９４】
なお、上記閾値は、電源電圧の変化に応じた適宜の値になるよう再設定されてもよい。また、ｑ軸検出電流ｉq がゼロに近いときに求めた値には誤差が発生しやすいので、ｑ軸検出電流ｉq が所定の閾値以上であるときに限りΦ値とＲ値とを求めることとしてもよい。
【００９５】
ここで、上記第２の算出方法においても第１の算出方法の場合と同様、上記閾値近傍では角速度ωe が少し変化するだけでΦ値が算出される場合とＲ値が算出される場合とが入れ替わるように変化するので、短い時間に交互に値の算出が繰り返される場合、Φ値およびＲ値は正確な値から離れてしまうことがある。そこで、同様に１つの閾値ではなくヒステリシス特性を持たせるよう２つの閾値を設定してもよい。例えば、角速度ωe が第２の閾値未満（例えば１５０ｒｐｍ未満）であるときにはＲ算出部４８がＲ値を算出するが、当該時点でΦ算出部４６がΦ値を算出している場合には、第２の閾値より小さい第１の閾値未満（例えば５０ｒｐｍ未満）であるときに限ってＲ算出部４８がＲ値を算出し、それまではΦ算出部４６がΦ値を算出する。また逆に、角速度ωe が第１の閾値以上であるときにはΦ算出部４６がΦ値を算出するが、当該時点でＲ算出部４８がＲ値を算出している場合には、第２の閾値以上であるときに限ってΦ算出部４６がΦ値を算出し、それまではＲ算出部４８がＲ値を算出する。このようにヒステリシス特性を有するよう閾値を設定することにより、Φ値とＲ値とをそれぞれ正確に求めることができる。
【００９６】
最後に、第３の算出方法として、上式（２）のｄ軸指令電流ｉd*とｑ軸指令電流ｉq*にｄ軸検出電流ｉd とｑ軸検出電流ｉq を代入した式におけるＲ値の項（Ｒ＋ＰＬq）ｉqとΦ値の項ωeΦ とを比較し、Ｒ値の項の方が大きい領域ではＲ値を算出し、Φ値の項の方が大きい領域ではΦ値を算出する。一方の値が他方より小さければ大きい他方の値をより正確に求めやすいからである。したがって、（Ｒ＋ＰＬq）ｉq≧ωeΦ の不等式を満たす場合にはＲ算出部４８がＲ値を算出し、（Ｒ＋ＰＬq）ｉq＜ωeΦ の不等式を満たす場合にはΦ算出部４６がΦ値を算出する。そうすれば、Φ値とＲ値とをそれぞれ正確に求めることができる。なお、Ｒ算出部４８はΦ値を、Φ算出部４６はＲ値をそれぞれオープンループ制御部２２から受け取るものとする。
【００９７】
ここで、この第３の算出方法においても同様に、短い時間に交互に値の算出が繰り返される場合、Φ値およびＲ値は正確な値から離れてしまうことがある。そこで、同様にヒステリシス特性を持たせるよう以下のような不等式を設定してもよい。例えば、比率係数αを適宜の正の実数とし、比率係数βをαより大きい適宜の正の実数とするとき、（Ｒ＋ＰＬq）ｉq・α≧ωeΦ の不等式を満たす場合にはＲ算出部４８がＲ値を算出するが、当該時点でΦ算出部４６がΦ値を算出している場合には、（Ｒ＋ＰＬq）ｉq・β≧ωeΦ の不等式を満たす場合に限ってＲ算出部４８がＲ値を算出し、それまではΦ算出部４６がΦ値を算出する。また逆に、（Ｒ＋ＰＬq）ｉq・β＜ωeΦ の不等式を満たす場合にはΦ算出部４６がΦ値を算出するが、当該時点でＲ算出部４８がＲ値を算出している場合には、（Ｒ＋ＰＬq）ｉq・α＜ωeΦ の不等式を満たす場合に限ってΦ算出部４６がΦ値を算出し、それまではＲ算出部４８がＲ値を算出する。このようにヒステリシス特性を有するよう所定の比率係数α、βを不等式に設定することにより、Φ値とＲ値とをそれぞれ正確に求めることができる。なお、不等式の左辺に比率係数α、βを乗算する構成に代えて、ヒステリシス特性を有するよう所定の正の実数を加算してもよい。
【００９８】
なお、上記第１から第３までの算出方法においてΦ算出部４６およびＲ算出部４８は、上記条件を満たす限り、任意のタイミングでΦ値およびＲ値を求めてもよい。Φ算出部４６およびＲ算出部４８は、例えば、所定の時間間隔でΦ値およびＲ値を求めてもよく、ブラシレスモータ１の駆動開始後に１回だけΦ値およびＲ値を求めてもよく、温度などの状態が変化したときにΦ値およびＲ値を求めてもよい。また、上記第１から第３までの算出方法における閾値や不等式は、異なる値や条件式が用いられてもよい。
【００９９】
次に、上記第２の実施形態では、Ｒ算出部２８は、上式（２）のｄ軸指令電流ｉd*とｑ軸指令電流ｉq*にｄ軸検出電流ｉd とｑ軸検出電流ｉq を代入し、その式をＲについて解くことを前提にしているが、上式（１）のｄ軸指令電流ｉd*とｑ軸指令電流ｉq*にｄ軸検出電流ｉd とｑ軸検出電流ｉq を代入し、その式をＲについて解くことも考えられる。そうすれば、Φ値の影響を全く受けることなく正確にＲ値を算出することができる。
【０１００】
すなわちＲ算出部２８は、ｉd ≠０のときに、ｄ軸指令電圧ｖd 、ｄ軸検出電流ｉd 、ｑ軸検出電流ｉq および角速度ωe に基づき、次式（１２ａ）を用いて式（１）に含まれる電機子巻線抵抗を含む回路抵抗Ｒを求めてもよい。
Ｒ＝（ｖd−ＰＬdｉd＋ωeＬqｉq）／ｉd   …（１２ａ）
【０１０１】
なおＲ算出部２８は、演算を簡素化するために、式（１２ａ）に代えて次式（１２ｂ）や（１２ｃ）を使用してもよい。
Ｒ＝（ｖd＋ωeＬqｉq）／ｉd …（１２ｂ）
Ｒ＝ｖd／ｉd                …（１２ｃ）
式（１２ｂ）は式（１２ａ）から微分項を省略したものであり、式（１２ｃ）は式（１２ｂ）からｉq を含む項を省略したものである。
【０１０２】
もっとも、ｄ軸検出電流ｉd はモータトルクの発生に寄与しないので一般的にはゼロになるよう制御されることが多いが、本変形例ではｄ軸検出電流ｉd は０とは異なる値になるよう制御される。この制御は常時なされてもよいし、上記のようにＲ値を算出する場合に一時的になされてもよい。また、いわゆる弱め磁束制御が行われる場合にはｄ軸検出電流ｉd を流すよう制御されるので、上記のようにＲ値を算出する場合の制御方式として好適である。
【０１０３】
なお、上記Ｒ算出部２８は、上記条件を満たす限り、任意のタイミングで、例えば所定の時間間隔でＲ値を求めてもよく、ブラシレスモータ１の駆動開始後に１回だけ値を求めてもよく、温度などの状態が変化したときにＲ値を求めてもよい。またｑ軸検出電流ｉq がゼロに近いときに求めた値には誤差が発生しやすいので、所定の閾値以上であるときに限り値を求めることとしてもよい。さらに前述したように、式（１）などに含まれるＬd とＬq を指令電流や検出電流などに基づき演算で求めてもよく、Ｌd とＬq に同じ値を使用してもよい（例えば、円筒型のモータの場合）。さらにまた、第３の実施形態に係るモータ制御装置では、電流センサが正常に動作している間は、フィードバック制御を行い、電流センサが故障し、フィードバック制御を行えないときには、フィードバック制御を行っている間に求めた上記Ｒ値を用いてオープンループ制御を行うことにより、高い精度でブラシレスモータを駆動し、所望のモータ出力を得ることができる。
【０１０４】
続いて、上記第２の実施形態および変形例において、上記条件を満たす場合であってもＲ算出部２８、４８はＲ値を算出できない場合がある。前述したように、電流センサ１４が１つしか設けられておらず、３相の指令電圧Ｖu 、Ｖv 、Ｖw に差がない場合には電流検出ができないからである。しかし、Ｒ値は通電による発熱によって変化するので、常に補正（算出）されることが好ましい。また、常に補正されない場合には、補正ができるようになった時点で急にＲ値が補正されるので、その時点でのトルク変動が大きくなってしまう。このことはトルク変動を抑制することが好ましい電動パワーステアリング装置におけるモータ制御においては特に問題となる。
【０１０５】
そこで、常にＲ値を補正（算出）するため、本変形例におけるＲ算出部（不図示）は、電流検出が可能な場合には、上記第２の実施形態および上述した変形例におけると同様にＲ値を算出するとともに、電流検出が不可能な場合には、オープンループ制御部２２から受け取ったｄ軸指令電流ｉd*およびｑ軸指令電流ｉq*に基づきＲ値を算出する。具体的には、（ｉd*2＋ｉq*2）を算出し、この算出値に銅の温度係数を乗算することにより発熱量を算出し、この発熱量から所定の放熱量を差し引くことによって得られる温度上昇量に基づきＲ値を算出する。そうすれば、電流検出が不可能な場合にも常にＲ値が補正されるので、上記トルク変動を抑制することができる。
【０１０６】
なお、電流検出が不可能な場合における温度上昇量および補正のためのＲ値の算出は、電流検出が可能な場合においても典型的には一度行われてもよい。そのときに得られる補正のためのＲ値は上記第２の実施形態および上述した変形例における算出方式により得られる（正しい）Ｒ値と比較される。このことにより、装置毎の個体差を修正するための補正値を算出すれば、電流検出が不可能な場合における算出に当該補正値を用いることにより、より正確にＲ値を算出することができる。
【０１０７】
また、上記温度上昇量は実験やシミュレーションなどにより求めてもよいし、Ｒ値は（ｉd*2＋ｉq*2）についてあらかじめ求めた近似式により算出されてもよい。さらに、上記Ｒ値は各相毎に各相の指示電流に基づき算出されてもよい。さらにまた、電流センサ１４が複数設けられる構成であっても電流を検出できない領域がある場合には同様にＲ値を算出してもよいし、電流センサ１４の数とは無関係に、電流センサ１４が故障した場合に上記のようにｄ軸指令電流ｉd*およびｑ軸指令電流ｉq*に基づきＲ値を算出する構成であってもよい。
【０１０８】
次に、上記各実施形態における指令電流算出部２１は、前述したように車速Ｓをパラメータとして、操舵トルクＴと指令電流との対応づけを記憶したアシストマップを参照して指令電流を求める。このアシストマップにおいて指令電流は、（所定の不感帯および飽和領域を除き）操舵トルクＴをアシストマップ作成時に予め定められたモータのトルク定数Ｋｔに基づく値で除算することにより算出される。しかし、このトルク定数Ｋｔは、装置毎の個体差があり、また温度変化に応じてその値が変化する。したがって、指令電流によっても必要なアシストトルクが得られない場合があり、そのことにより制御が不安定になることがある。
【０１０９】
そこで、同期モータにおいてトルク定数Ｋｔは電機子巻線鎖交磁束数Φと等しいことから、指令電流算出部２１は、上記第１の実施形態におけるΦ算出部２６により算出されたΦ［Ｗｂ］を次元変換することにより得られる現在のトルク定数Ｋｔ’［Ｎｍ／Ａ］に基づき指令電流を算出する。この点で指令電流算出部２１は、次元変換手段および指令電流値算出手段として機能する。具体的には指令電流算出部２１は、上記現在のトルク定数Ｋｔ’をアシストマップ作成時に予め定められたトルク定数Ｋｔで除算することにより得られる値（Ｋｔ’／Ｋｔ）を算出し、アシストマップを参照して求められる指令電流をこの値（Ｋｔ’／Ｋｔ）で除算する。そうすれば、上記アシストマップを現在のトルク定数Ｋｔ’に基づき作成した場合に得られるべき指令電流と同じ指令電流を得ることができるので、温度が変化しても安定した制御を行うことができる。
【０１１０】
また、アシストマップを使用する上記構成に代えて、指令電流算出部２１は、車速Ｓをパラメータとして、操舵トルクＴと指令トルクＴａとの対応づけを記憶したアシストトルクマップを参照して指令トルクＴａを求め、この指令トルクＴａをΦ算出部２６により算出されたΦに基づく現在のトルク定数Ｋｔ’で除算した値を指令電流としてもよい。そうすれば、現在のトルク定数Ｋｔ’に基づいて指令電流を得ることができるので、温度が変化しても安定した制御を行うことができる。
【０１１１】
なお、上記現在のトルク定数Ｋｔ’の算出は、前述と同様に任意のタイミング、例えば、所定の時間間隔で求めてもよいし、温度などの状態が変化したときに求めてもよい。また、このように現在のトルク定数Ｋｔ’を算出する構成は、電動パワーステアリング装置におけるモータ制御に限定されず、トルク制御を行うモータ制御全般に広く用いることができる。
【０１１２】
続いて、上記第１および第２の実施形態において、電流センサ１４は、図２および図４に示すようにモータ駆動回路１３と電源のマイナス側（接地）との間に設けられているため、電流センサ１４内のシャント抵抗や配線抵抗などに印加される電圧が存在することにより、電源電圧がそのままモータに印加される電圧となるわけではない。従って、実際にモータに印加される電源電圧部分はＰＷＭ信号のデューティ比を定める基準となる電圧であり、これを正確に取得する必要がある。そこで、本変形例では、実際にモータに印加される電源電圧部分を検出する手段（電圧センサなど）を設け、これによりＰＷＭ信号のデューティ比を定める基準となる電圧を正確に取得することができるので、制御を正確に安定して行うことができる。なお、このことは電流センサ１４をモータ駆動回路１３と電源のプラス側との間に設ける場合であっても同様である。そこで、本変形例では、モータ駆動回路１３の両端間の電圧を測定するための電圧センサ１６を新たに設ける。
【０１１３】
ここで、検出したモータ駆動回路１３の両端電圧Ｖｂと各相指令電圧Ｖｕ、Ｖｖ、Ｖｗに基づき、次式（１３）〜（１５）を用いてｕ相指令デューティー比Ｄｕ、ｖ相指令デューティー比Ｄｖ、ｗ相指令デューティー比Ｄｗを求める。なお、以下ではデューティー比１００％を１として表している。
Ｄｕ＝Ｖｕ／Ｖｂ＋０．５    …（１３）
Ｄｖ＝Ｖｖ／Ｖｂ＋０．５    …（１４）
Ｄｗ＝Ｖｗ／Ｖｂ＋０．５    …（１５）
【０１１４】
図８は、この変形例に係る電圧センサ１６を含むモータ制御装置の構成例を示すブロック図である。この変形例にかかるモータ制御装置は、第１の実施形態に係るモータ制御装置において、電圧センサ１６を新たに設けたものであり、先に述べた実施形態と同一の要素については、同一の参照符号を付して説明を省略する。なお、電流センサ１４に含まれるシャント抵抗１７については本変形例において重要であるので特に図示されているに過ぎない。
【０１１５】
この図８を参照すればわかるように、本変形例の電圧センサ１６は、差動増幅器を含み、その入力端の一方はモータ駆動回路１３と電源のプラス側との間に接続され、その入力端の他方はモータ駆動回路１３とシャント抵抗１７との間に接続され、その出力端は３相／ＰＷＭ変調器１２に接続されている。このように電圧センサ１６を設けることにより、モータ駆動回路１３に印加される電圧を正確に検出することができるので、配線抵抗等の影響を受けることなくＰＷＭ信号のデューティー比を定める基準となる電圧を正確に検出することができる。
【０１１６】
なお、図８ではシャント抵抗１７の一端は、電源のマイナス側（接地）に接続されているが、電源のプラス側に接続されてもよい。この場合には、電圧センサ１６の入力端の一方はモータ駆動回路１３とこのシャント抵抗１７との間に接続される。
【０１１７】
さらに、前述した上記変形例における電源電圧を検出する手段は、上記電圧センサ１６の変形例であるともいえる。すなわち、電圧センサ１６の入力端の一方を電源のプラス側に接続し、その入力端の他方を電源のマイナス側に接続してもよい。ただし、この構成ではモータ駆動回路１３に印加される電圧を直ちに検出することができるわけではなく、３相／ＰＷＭ変調器１２により生成される各相毎のＰＷＭ信号のデューティ比を取得し、これに基づき電源電圧に対するモータ印加電圧の電圧降下量をＰＷＭ周期毎に逐次演算する。このことにより演算負荷はかかるものの、モータ駆動回路１３に印加される電圧を正確に検出（算出）することができる。
【０１１８】
以上のように電圧センサ１６は、少なくともモータ駆動回路１３の一端から電源のプラス側までの経路上の一点と、モータ駆動回路１３の他端から電源のマイナス側までの経路上の他点との間の電圧を測定すればよい。
【図面の簡単な説明】
【０１１９】
【図１】本発明の実施形態に係る電動パワーステアリング装置の構成を示すブロック図である。
【図２】本発明の第１の実施形態に係るモータ制御装置の構成を示すブロック図である。
【図３】３相ブラシレスモータにおける３相交流座標とｄｑ座標を示す図である。
【図４】本発明の第２の実施形態に係るモータ制御装置の構成を示すブロック図である。
【図５】本発明の第３の実施形態に係るモータ制御装置の構成を示すブロック図である。
【図６】本発明の第３の実施形態の変形例に係るモータ制御装置の構成を示すブロック図である。
【図７】本発明の変形例におけるモータ制御装置の構成の一例を示すブロック図である。
【図８】本発明の変形例における電圧センサを含むモータ制御装置の構成例を示すブロック図である。
【符号の説明】
【０１２０】
１…ブラシレスモータ、２…減速機、３…トルクセンサ、４…車速センサ、５…位置検出センサ、６…ロータ、１０…ＥＣＵ、１１…位相補償器、１２…３相／ＰＷＭ変調器、１３…モータ駆動回路、１４、１５…電流センサ、１６…電圧センサ、１７…シャント抵抗、２０、２７、３０、３６…マイコン、２１…指令電流算出部、２２…オープンループ制御部、２３…ｄｑ軸／３相変換部、２４…角度算出部、２５…角速度算出部、２６、４６…Φ算出部、２８、４８…Ｒ算出部、３１…３相／ｄｑ軸変換部、３２…減算部、３３…フィードバック制御部、３４…故障監視部、３５…指令電圧選択部
【図１】
0005453714.tif 000002
【図２】
0005453714.tif 000003
【図３】
0005453714.tif 000004
【図４】
0005453714.tif 000005
【図５】
0005453714.tif 000006
【図６】
0005453714.tif 000007
【図７】
0005453714.tif 000008
【図８】
0005453714.tif 000009