モータ制御装置および車両用操舵装置
【課題】回転角センサを用いない新たな制御方式でモータを制御することができるモータ制御装置を提供する。
【解決手段】仮想回転座標系であるγδ座標系のγ軸電流Iγでモータが駆動される。指示電流値生成部30は、指示操舵トルクT*と検出操舵トルクTに基づいてγ軸指示電流値Iγ*を設定する。指示電流値生成部30は、指示電流増減量演算部30Aと加算器30Bとを含んでいる。指示電流増減量演算部30Aは、指示操舵トルクT*の符号と、検出操舵トルクTと指示操舵トルクT*との偏差ΔT(=T−T*)とに基づいて、指示電流値Iγ*に対する電流増減量ΔIγ*を演算する。指示電流増減量演算部30Aによって演算された電流増減量ΔIγ*は、加算器30Bにおいて、指示電流値Iγ*の前回値Iγ*(n-1)に加算される。これにより、今演算周期での指示電流値Iγ*が演算される。
【解決手段】仮想回転座標系であるγδ座標系のγ軸電流Iγでモータが駆動される。指示電流値生成部30は、指示操舵トルクT*と検出操舵トルクTに基づいてγ軸指示電流値Iγ*を設定する。指示電流値生成部30は、指示電流増減量演算部30Aと加算器30Bとを含んでいる。指示電流増減量演算部30Aは、指示操舵トルクT*の符号と、検出操舵トルクTと指示操舵トルクT*との偏差ΔT(=T−T*)とに基づいて、指示電流値Iγ*に対する電流増減量ΔIγ*を演算する。指示電流増減量演算部30Aによって演算された電流増減量ΔIγ*は、加算器30Bにおいて、指示電流値Iγ*の前回値Iγ*(n-1)に加算される。これにより、今演算周期での指示電流値Iγ*が演算される。
【発明の詳細な説明】
【技術分野】
【0001】
この発明は、ブラシレスモータを駆動するためのモータ制御装置およびそれを備えた車両用操舵装置に関する。車両用操舵装置の一例は、電動パワーステアリング装置である。
【背景技術】
【0002】
ブラシレスモータを駆動制御するためのモータ制御装置は、一般に、ロータの回転角を検出するための回転角センサの出力に応じてモータ電流の供給を制御するように構成されている。回転角センサとしては、一般的には、ロータ回転角(電気角)に対応した正弦波信号および余弦波信号を出力するレゾルバが用いられる。しかし、レゾルバは、高価であり、配線数が多く、また、設置スペースも大きい。そのため、ブラシレスモータを備えた装置のコスト削減および小型化が阻害されるという課題がある。
【0003】
そこで、回転角センサを用いることなくブラシレスモータを駆動するセンサレス駆動方式が提案されている。センサレス駆動方式は、ロータの回転に伴う誘起電圧を推定することによって、磁極の位相(ロータの電気角)を推定する方式である。ロータ停止時および極低速回転時には、磁極の位相を推定できないので、別の方式で磁極の位相が推定される。具体的には、ステータに対してセンシング信号を注入し、このセンシング信号に対するモータの応答が検出される。このモータ応答に基づいて、ロータ回転位置が推定される。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開平10-243699号公報
【特許文献2】特開2009-124811号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
上記のセンサレス駆動方式は、誘起電圧やセンシング信号を用いてロータの回転位置を推定し、その推定によって得られた回転位置に基づいてモータを制御するものである。しかし、この駆動方式は、いずれの用途にも適しているわけではなく、たとえば、車両の舵取り機構に操舵補助力を与える電動パワーステアリング装置その他の車両用操舵装置の駆動源として用いられるブラシレスモータの制御に適用するための手法は未だ確立されていない。そのため、別の方式によるセンサレス制御の実現が望まれている。
【0006】
そこで、この発明の目的は、回転角センサを用いない新たな制御方式でモータを制御することができるモータ制御装置およびそれを備えた車両用操舵装置を提供することである。
【課題を解決するための手段】
【0007】
上記の目的を達成するための請求項1記載の発明は、ロータ(50)と、このロータに対向するステータ(55)とを備えたモータ(3)を制御するためのモータ制御装置(5)であって、制御上の回転角である制御角(θC)に従う回転座標系の軸電流値(Iγ)で前記モータを駆動する電流駆動手段(30,32〜36)と、所定の演算周期毎に、制御角の前回値に加算角を加算することによって、制御角の今回値を求める制御角演算手段(26)と、前記モータによって駆動される駆動対象(2)に加えられる、モータトルク以外のトルク(T)を検出するためのトルク検出手段(1)と、前記駆動対象に作用させるべき指示トルク(T*)を設定する指示トルク設定手段(21)と、前記トルク検出手段によって検出される検出トルクと、前記指示トルク設定手段によって設定される指示トルクとの偏差であるトルク偏差に応じて前記加算角を演算する加算角演算手段(22,23)と、前記トルク偏差に基づいて、前記軸電流値の目標値である指示電流値(Iγ*)を設定するための指示電流設定手段(30,60)とを含み、前記指示電流設定手段は、前記トルク偏差に応じた補正量で、指示電流の前回値を補正することにより、指示電流の今回値を設定するものである、モータ制御装置である。なお、括弧内の英数字は後述の実施形態における対応構成要素等を表すが、むろん、この発明の範囲は当該実施形態に限定されない。以下、この項において同じ。
【0008】
この構成によれば、制御角に従う回転座標系(γδ座標系。以下「仮想回転座標系」といい、この仮想回転座標系の座標軸を「仮想軸」という。)の軸電流値(以下「仮想軸電流値」という。)によってモータが駆動される一方で、制御角は、演算周期毎に加算角を加算することによって更新される。これにより、制御角を更新しながら、すなわち、仮想回転座標系の座標軸(仮想軸)を更新しながら、仮想軸電流値でモータを駆動することによって、必要なトルクを発生させることができる。こうして、回転角センサを用いることなく、モータから適切なトルクを発生させることができる。
【0009】
この発明では、駆動対象に加えられる、モータトルク以外のトルクがトルク検出手段によって検出される。また、駆動対象に作用させるべき指示トルクが指示トルク設定手段によって設定される。そして、加算角演算手段によって、検出トルクと指示トルクとの偏差(トルク偏差)に応じて加算角が演算される。加算角演算手段は、たとえば、検出トルクを指示トルクに一致させるべく、加算角を演算するように動作する。これにより、指示トルクに応じたトルク(モータトルク以外のトルク)が駆動対象に加えられる状態となるように、モータトルクが制御される。モータトルクは、ロータの磁極方向に従う回転座標系(dq座標系)の座標軸と前記仮想軸とのずれ量である負荷角に対応する。負荷角は、制御角とロータ角との差で表される。モータトルクの制御は、負荷角を調整することによって達成され、この負荷角の調整が加算角を制御することによって達成される。
【0010】
さらに、この発明では、指示電流設定手段によって、検出トルクと指示トルクとの偏差(トルク偏差)に応じた補正量で、指示電流の前回値が補正されることにより、指示電流の今回値が設定される。これにより、トルク偏差に応じた補正量で指示電流値を増減できる。このため、検出トルクを指示トルクに速やかに一致させることが可能となるとともに、モータの発熱を抑制することが可能となる。
【0011】
請求項2記載の発明は、前記指示電流設定手段は、前記トルク偏差の絶対値が大きくなるに従って、前記補正量の絶対値が大きくなるように、前記補正量を演算する補正量演算手段(30A,60A,60B,60C)を含む、請求項1に記載のモータ制御装置である。この構成では、トルク偏差の絶対値が大きくなるに従って、補正量の絶対値が大きくされる。
【0012】
駆動対象に対して全体として或るトルクを作用させるべき場合(たとえば、モータトルクによって不足のトルクが補われる場合)、モータトルクが増加することによって、駆動対象に加えられるモータトルク以外のトルクが減少するので、検出トルクが減少することになる。一方、モータトルクが減少すれば、駆動対象に加えられるモータトルク以外のトルクが増加するので、検出トルクが増加することになる。
【0013】
そこで、検出トルクの絶対値が指示トルクの絶対値よりも大きい場合、すなわち、モータトルクが不足している場合には、たとえば、トルク偏差の絶対値が大きいほど指示電流値が増加するように、補正量が演算される。これにより、モータトルクの絶対値が増加し、検出トルクの絶対値が減少するから、検出トルクを指示トルクに速やかに一致させることが可能となる。
【0014】
一方、検出トルクの絶対値が指示トルクの絶対値よりも小さい場合には、たとえば、トルク偏差の絶対値が大きいほど指示電流値が減少するように、補正量が演算される。これにより、指示電流値が減少するので、省電力化が図れるとともにモータの発熱を抑制できる。
つまり、駆動対象に対して全体として或るトルクを作用させるべき場合(たとえば、モータトルクによって不足のトルクが補われる場合)には、前記補正量演算手段は、前記検出トルクの絶対値が前記指示トルクの絶対値よりも大きいときには、前記トルク偏差の絶対値に応じて指示電流値を増加させ、前記検出トルクの絶対値が前記指示トルクの絶対値よりも小さいときには、前記トルク偏差の絶対値に応じて指示電流値を減少させるように、前記補正量を演算する手段(30A,60A,60B,60C)を含むものであってもよい。
【0015】
請求項3記載の発明は、前記指示電流設定手段は、前記トルク偏差の絶対値が所定値(E)未満であるときおよび、前記トルク偏差の絶対値が前記所定値以上であり、かつ前記検出トルクの絶対値が前記指示トルクの絶対値よりも小さいときには、指示電流の前回値を減少させるための補正量を演算する第1補正量演算手段(80A)と、前記トルク偏差の絶対値が前記所定値より大きく、かつ前記検出トルクの絶対値が前記指示トルクの絶対値よりも大きいときには、指示電流の前回値を増加させるための補正量を演算する第2補正量演算手段(80A)とを含む、請求項1に記載のモータ制御装置である。
【0016】
トルク偏差の絶対値が所定値(E)未満であるときおよび、トルク偏差の絶対値が所定値(E)以上であり、かつ検出トルクの絶対値が指示トルクの絶対値よりも小さいときには、指示電流の前回値を減少させるための補正量(「電流減少量」)が演算される。これにより、指示電流値が減少するので、省電力化が図れるとともにモータの発熱を抑制できる。前記所定値(E)は、たとえば、トルク検出手段の検出値のばらつきに応じた値に設定される。
【0017】
一方、トルク偏差の絶対値が前記所定値(E)より大きく、かつ検出トルクの絶対値が指示トルクの絶対値よりも大きいときには、指示電流の前回値を増加させるための補正量(「電流増加量」)が演算される。これにより、モータトルクの絶対値が増加し、検出トルクの絶対値が減少するから、検出トルクを指示トルクに速やかに一致させることが可能となる。
【0018】
請求項4記載の発明は、記指示電流設定手段は、前記検出トルクの絶対値が前記指示トルクの絶対値よりも大きく、かつ前記トルク偏差の絶対値が第1の所定値(E)より大きいときには、指示電流の前回値を増加させるための補正量を演算する手段と、前記検出トルクの絶対値が前記指示トルクの絶対値よりも小さく、かつ前記トルク偏差の絶対値が第2の所定値(H)より大きいときには、指示電流の前回値を増加させるための補正量を演算する手段と、前記検出トルクの絶対値が前記指示トルクの絶対値よりも大きく、かつ前記トルク偏差の絶対値が前記第1の所定値(E)以下であるときおよび前記検出トルクの絶対値が前記指示トルクの絶対値よりも小さく、かつ前記トルク偏差の絶対値が前記第2の所定値(H)以下のときには、指示電流の前回値を減少させるための補正量を演算する手段とを含む、請求項1に記載のモータ制御装置である。
【0019】
検出トルクの絶対値が指示トルクの絶対値よりも大きく、かつトルク偏差の絶対値が第1の所定値(E)以下であるときおよび検出トルクの絶対値が指示トルクの絶対値よりも小さく、かつトルク偏差の絶対値が第2の所定値(H)以下のときには、指示電流の前回値を減少させるための補正量(「電流減少量」)が演算される。これにより、指示電流値が減少するので、省電力化が図れるとともにモータの発熱を抑制できる。前記第1の所定値(E)は、たとえば、トルク検出手段の検出値のばらつきに応じた値に設定される。前記第2の所定値(H)は、たとえば、前記第1の所定値(E)以上の値に設定される。
【0020】
検出トルクの絶対値が指示トルクの絶対値よりも大きく、かつトルク偏差の絶対値が第1の所定値(E)より大きいときには、指示電流の前回値を増加させるための補正量(「電流増加量」)が演算される。これにより、モータトルクの絶対値が増加し、検出トルクの絶対値が減少するから、検出トルクを指示トルクに速やかに一致させることが可能となる。
【0021】
検出トルクの絶対値が指示トルクの絶対値よりも小さく、かつトルク偏差の絶対値が第2の所定値(H)より大きいときには、指示電流の前回値を増加させるための補正量(「電流増加量」)が演算される。これにより、検出トルクの絶対値が指示トルクの絶対値よりも小さくなり、トルク偏差の絶対値が第2の所定値(H)より大きくなった場合においても、モータトルクを発生させることが可能となる。したがって、このモータ制御装置が電動パワーステアリング装置に適用された場合には、切り戻し操舵が行われた場合にも、モータトルク(アシストトルク)を発生させることが可能となり、運転者に適切な操舵感を与えることが可能となる。
【0022】
請求項5記載の発明は、前記指示電流の前回値を減少させる場合の補正量の絶対値が、所定値以下である請求項1、3または4に記載のモータ制御装置である。この構成によれば、モータトルクを低下させる場合に、モータトルクの変化量を低く抑えることができる。
請求項6記載の発明は、ロータ(50)と、このロータに対向するステータ(55)とを備えたモータ(3)を制御するためのモータ制御装置(5)であって、制御上の回転角である制御角(θC)に従う回転座標系の軸電流値(Iγ)で前記モータを駆動する電流駆動手段(70,32〜36)と、所定の演算周期毎に、制御角の前回値に加算角を加算することによって制御角の今回値を求める制御角演算手段(26)と、前記モータによって駆動される駆動対象(2)に加えられる、モータトルク以外のトルク(T)を検出するためのトルク検出手段(1)と、前記駆動対象に作用させるべき指示トルク(T*)を設定する指示トルク設定手段(21)と、前記トルク検出手段によって検出される検出トルクと、前記指示トルク設定手段によって設定される指示トルクとの偏差に応じて前記加算角を演算する加算角演算手段(22,23)と、前記トルク検出手段によって検出される検出トルクの変化量(δT)と、前記加算角演算手段によって演算される加算角(α)との比に基づいて、前記軸電流値の目標値である指示電流値(Iγ*)を設定するための指示電流設定手段(70)とを含み、前記指示電流設定手段は、前記検出トルクの変化量と前記加算角との比に応じた補正量で、指示電流の前回値を補正することにより、指示電流の今回値を設定するものである、モータ制御装置である。
【0023】
この構成によれば、制御角に従う回転座標系(γδ座標系。以下「仮想回転座標系」といい、この仮想回転座標系の座標軸を「仮想軸」という。)の軸電流値(以下「仮想軸電流値」という。)によってモータが駆動される一方で、制御角は、演算周期毎に加算角を加算することによって更新される。これにより、制御角を更新しながら、すなわち、仮想回転座標系の座標軸(仮想軸)を更新しながら、仮想軸電流値でモータを駆動することによって、必要なトルクを発生させることができる。こうして、回転角センサを用いることなく、モータから適切なトルクを発生させることができる。
【0024】
この発明では、駆動対象に加えられる、モータトルク以外のトルクがトルク検出手段によって検出される。また、駆動対象に作用させるべき指示トルクが指示トルク設定手段によって設定される。そして、加算角演算手段によって、検出トルクと指示トルクとの偏差(トルク偏差)に応じて加算角が演算される。加算角演算手段は、たとえば、検出トルクを指示トルクに一致させるべく、加算角を演算するように動作する。これにより、指示トルクに応じたトルク(モータトルク以外のトルク)が駆動対象に加えられる状態となるように、モータトルクが制御される。モータトルクは、ロータの磁極方向に従う回転座標系(dq座標系)の座標軸と前記仮想軸とのずれ量である負荷角に対応する。負荷角は、制御角とロータ角との差で表される。モータトルクの制御は、負荷角を調整することによって達成され、この負荷角の調整が加算角を制御することによって達成される。
【0025】
さらに、この発明では、指示電流設定手段によって、トルク検出手段によって検出される検出トルクの変化量と、加算角演算手段によって演算される加算角との比に基づいて、軸電流値の目標値である指示電流値が設定される。つまり、検出トルクの変化量と加算角との比に応じた補正量で、指示電流の前回値が補正されることにより、指示電流の今回値が設定される。これにより、検出トルクの変化量と加算角との比に応じて軸電流値を制御することができる。したがって、軸電流値に対するモータトルクの効率を向上させることが可能となる。
【0026】
モータトルクの大きさは、たとえば、モータのトルク定数をKT、軸電流値をIγとし、負荷角をθLとすると、KT・IγsinθLで表すことができる。たとえば、加算角に対する検出トルクの変化量の比の絶対値が大きい場合、すなわち、負荷角の変化量に対するモータトルクの変化量が大きい場合には、負荷角θLが0°付近にあると考えられる。負荷角θLが0°付近にある場合には、軸電流に対するモータトルクの効率が低く、負荷角θLが90°(または−90°)付近にある場合には軸電流に対するモータトルクの効率が高い。これは、負荷角θLが90°付近である場合には、ロータにほぼ直交する方向に磁界を発生させることができるからである。負荷角θLが0°付近にある場合に軸電流を減少させると、同じ大きさのモータトルクを発生させるために、負荷角θLが90°付近となるように制御されるため、軸電流値に対するモータトルクの効率を高めることができる。そこで、加算角に対する検出トルクの変化量の比の絶対値が大きい場合には、指示電流を減少させるように補正することにより、軸電流値に対するモータトルクの効率を向上させることができる。
【0027】
一方、加算角に対する検出トルクの変化量の比の絶対値が小さい場合、すなわち、負荷角の変化量に対するモータトルクの変化量が小さい場合には、たとえば、負荷角θLが90°付近にあると考えられる。負荷角θLが90°付近にある場合には、モータトルクが現在の軸電流値でのほぼ最大値に達しており、モータトルク不足により、検出トルクを指示トルクに近づけることができなくなるおそれがある。そこで、加算角に対する検出トルクの変化量の比の絶対値が小さい場合には、指示電流を増加させるように補正することにより、モータトルクを増加させる。これにより、検出トルクを指示トルクに近づけることができるようになる。
【0028】
請求項7記載の発明は、前記指示電流設定手段は、今回演算された前記補正量が指示電流の前回値を減少させるための補正量であるときには、前回の指示電流の減少時点から所定時間(Ts)以上の時間が経過している場合にのみ、今回演算された前記補正量で指示電流の前回値を補正することにより、指示電流の今回値を設定する手段(80B,S14)をさらに含む、請求項1〜6のいずれか一項に記載のモータ制御装置である。
【0029】
指示電流が減少されると、同じ大きさのモータトルクが発生するように、負荷角が制御される。指示電流が減少されてから、同じ大きさのモータトルクが発生される角度に負荷角が収束するより前に、指示電流がさらに減少されると、負荷角が適正値に収束できなくなるおそれがある。
この構成では、今回演算された補正量が指示電流の前回値を減少させるための補正量であるときには、前回の指示電流の減少時点から所定時間(Ts)以上の時間が経過している場合にのみ、今回演算された補正量で指示電流の前回値が補正されることにより、指示電流の今回値が設定される。これにより、指示電流が減少された場合に、負荷角が適正値に収束できなくなる事態を抑制または防止できる。
【0030】
前記所定時間Tsは、指示電流値が減少されてから、同じ大きさのモータトルクが発生される角度に負荷角が収束するのに要する時間の最大値に設定されることが好ましい。
請求項8記載の発明は、前記指示電流設定手段は、ロータが停止しているか否かを判別する判別手段(80B,S15)と、今回演算された前記補正量が指示電流の前回値を減少させるための補正量であるときには、前回の指示電流の減少時点から所定時間(Ts)以上の時間が経過しており、かつ前記判別手段によってロータが停止していると判別された場合にのみ、今回演算された前記補正量で指示電流の前回値を補正することにより、指示電流の今回値を設定する手段(80B,S14〜S16)と、をさらに含む請求項1〜6のいずれか一項に記載のモータ制御装置である。
【0031】
この構成では、請求項7記載の発明と同様な効果が得られる。また、この構成では、今回演算された補正量が指示電流の前回値を減少させるための補正量であっても、ロータが回転しているときには、指示電流は補正されなくなる。これにより、ロータが回転しているときに、指示電流が減少されるのを防止できる。
請求項9記載の発明は、前記モータの誘起電圧を推定する誘起電圧推定手段(37)をさらに含み、前記判別手段は、前記誘起電圧推定手段によって推定された誘起電圧に基づいてロータが停止しているか否かを判別する、請求項8に記載のモータ制御装置である。この構成では、誘起電圧推定手段によって推定された誘起電圧に基づいてロータが停止しているか否かが判別される。
【0032】
請求項10記載の発明は、車両の舵取り機構(2)に駆動力を付与するモータ(3)と、前記モータを制御する請求項1〜9のいずれか一項に記載のモータ制御装置とを含む、車両用操舵装置である。この構成では、検出トルクを指示トルクに速やかに一致させることが可能となる車両用操舵装置が得られる。また、軸電流値に対するモータトルクの効率を向上させることができる車両用操舵装置が得られる。
【0033】
前記モータ制御装置は、前記加算角を所定の制限値(ωmax)で制限する加算角制限手段をさらに含んでいてもよい。加算角に適切な制限を加えることによって、実際のロータの回転に比して過大な加算角が制御角に加算されることを抑制できる。これにより、適切にモータを制御することができる。
前記制限値は、たとえば、次式によって定められた値であってもよい。ただし、次式における「最大ロータ角速度」とは、電気角でのロータ角速度の最大値である。
【0034】
制限値=最大ロータ角速度×演算周期
たとえば、モータの回転を所定の減速比の減速機構を介して車両用操舵装置の操舵軸に伝達している場合には、最大ロータ角速度は、最大操舵角速度(操舵軸の最大回転角速度)×減速比×極対数で与えられる。「極対数」とは、ロータが有する磁極対(N極とS極との対)の数である。
【0035】
前記モータは、車両の舵取り機構(2)に駆動力を付与するものであってもよい。この場合に、前記トルク検出手段は、前記車両の操向のために操作される操作部材(10)に加えられる操舵トルクを検出するものであってもよい。また、前記指示トルク設定手段は、操舵トルクの目標値としての指示操舵トルクを設定するものであってもよい。そして、前記加算角演算手段は、前記指示トルク設定手段によって設定される指示操舵トルクと前記トルク検出手段によって検出される操舵トルクとの偏差に応じて前記加算角を演算するものであってもよい。
【0036】
この構成によれば、指示操舵トルクが設定され、この指示操舵トルクと操舵トルク(検出値)との偏差に応じて前記加算角が演算される。これにより、操舵トルクが当該指示操舵トルクとなるように加算角が定められ、それに応じた制御角が定められることになる。したがって、指示操舵トルクを適切に定めておくことによって、モータから適切な駆動力を発生させて、これを舵取り機構に付与することができる。すなわち、ロータの磁極方向に従う回転座標系(dq座標系)の座標軸と前記仮想軸とのずれ量(負荷角)が指示操舵トルクに応じた値に導かれる。その結果、適切なトルクがモータから発生され、運転者の操舵意図に応じた駆動力を舵取り機構に付与できる。
【0037】
この場合、請求項1記載の発明の前記指示電流設定手段は、前記トルク検出手段によって検出される操舵トルクと、前記指示トルク設定手段によって設定される指示操舵トルクとの偏差に応じた補正量で、指示電流の前回値を補正することにより、指示電流の今回値を設定するものであってもよい。また、請求項6記載の発明の前記指示電流設定手段は、前記トルク検出手段によって検出される操舵トルクの変化量と、前記加算角演算手段によって演算される前記加算角との比に応じた補正量で、指示電流の前回値を補正することにより、指示電流の今回値を設定するものであってもよい。
【0038】
前記モータ制御装置または前記車両用操舵装置は、前記操作部材の操舵角を検出する操舵角検出手段(4)をさらに含み、前記指示トルク設定手段は、前記操舵角検出手段によって検出される操舵角に応じて指示操舵トルクを設定するものであることが好ましい。この構成によれば、操作部材の操舵角に応じて指示操舵トルクが設定されるので、操舵角に応じた適切なトルクをモータから発生させることができ、運転者が操作部材に加える操舵トルクを操舵角に応じた値へと導くことができる。これにより、良好な操舵感を得ることができる。
【0039】
前記指示トルク設定手段は、前記車両の車速を検出する車速検出手段(6)によって検出される当該車速に応じて指示操舵トルクを設定するものであってもよい。この構成によれば、車速に応じて指示操舵トルクが設定されるので、いわゆる車速感応制御を行うことができる。その結果、良好な操舵感を実現できる。たとえば、車速が大きいほど、すなわち、高速走行時ほど指示操舵トルクを小さく設定することより、すぐれた操舵感が得られる。
【図面の簡単な説明】
【0040】
【図1】この発明の第1の実施形態に係るモータ制御装置を適用した電動パワーステアリング装置の電気的構成を説明するためのブロック図である。
【図2】モータの構成を説明するための図解図である。
【図3】前記電動パワーステアリング装置の制御ブロック図である。
【図4】操舵角に対する指示操舵トルクの特性例を示す図である。
【図5】操舵トルクリミッタの働きを説明するための図である。
【図6】図6Aは、指示操舵トルクの符号が正である場合の、トルク偏差に対する電流増減量の設定例を示す図であり、図6Bは、指示操舵トルクの符号が負である場合の、トルク偏差に対する電流増減量の設定例を示す図である。
【図7】加算角リミッタの働きを説明するためのフローチャートである。
【図8】この発明の第2の実施形態に係るモータ制御装置を適用した電動パワーステアリング装置の構成を説明するためのブロック図である。
【図9】この発明の第3の実施形態に係るモータ制御装置を適用した電動パワーステアリング装置の構成を説明するためのブロック図である。
【図10】図10Aは、加算角に対する操舵トルク変化量の比の絶対値に対する電流増減量の設定例を示す図であり、図10Bは、操舵トルク変化量に対する加算角の比の絶対値に対する電流増減量の設定例を示す図であり、図10Cは、指示電流値に対する増減量ゲインの設定例を示す図である。
【図11】指示電流増減量演算部70Aの働きを説明するための説明図である。
【図12】指示電流増減量演算部70Aの働きを説明するための説明図である。
【図13】この発明の第4の実施形態に係るモータ制御装置を適用した電動パワーステアリング装置の構成を説明するためのブロック図である。
【図14】誘起電圧推定部の構成を説明するためのブロック図である。
【図15】図15Aは、指示操舵トルクの符号が正である場合の、トルク偏差に対する電流増減量の設定例を示す図であり、図15Bは、指示操舵トルクの符号が負である場合の、トルク偏差に対する電流増減量の設定例を示す図である。
【図16】指示電流増減量演算部および出力制御部の動作を示すフローチャートである。
【図17】この発明の第5の実施形態に係るモータ制御装置を適用した電動パワーステアリング装置の構成を説明するためのブロック図である。
【図18】図18Aは、指示操舵トルクの符号が正である場合の、トルク偏差に対する電流増減量の設定例を示す図であり、図18Bは、指示操舵トルクの符号が負である場合の、トルク偏差に対する電流増減量の設定例を示す図である。
【発明を実施するための形態】
【0041】
以下では、この発明の実施の形態を、添付図面を参照して詳細に説明する。
図1は、この発明の第1の実施形態に係るモータ制御装置を適用した電動パワーステアリング装置(車両用操舵装置の一例)の電気的構成を説明するためのブロック図である。この電動パワーステアリング装置は、車両を操向するための操作部材としてのステアリングホイール10に加えられる操舵トルクTを検出するトルクセンサ1と、車両の舵取り機構2に減速機構7を介して操舵補助力を与えるモータ3(ブラシレスモータ)と、ステアリングホイール10の回転角である操舵角を検出する舵角センサ4と、モータ3を駆動制御するモータ制御装置5と、当該電動パワーステアリング装置が搭載された車両の速度を検出する車速センサ6とを備えている。舵角センサ4は、ステアリングホイール10の中立位置(基準位置)からのステアリングホイール10の正逆両方向の回転量(回転角)を検出するものであり、中立位置から右方向への回転量を正の値として出力し、中立位置から左方向への回転量を負の値として出力する。
【0042】
モータ制御装置5は、トルクセンサ1が検出する操舵トルク、舵角センサ4が検出する操舵角および車速センサ6が検出する車速に応じてモータ3を駆動することによって、操舵状況および車速に応じた適切な操舵補助を実現する。
モータ3は、この実施形態では、三相ブラシレスモータであり、図2に図解的に示すように、界磁としてのロータ50と、このロータ50に対向するステータ55に配置されたU相、V相およびW相のステータ巻線51,52,53とを備えている。モータ3は、ロータの外部にステータを対向配置したインナーロータ型のものであってもよいし、筒状のロータの内部にステータを対向配置したアウターロータ型のものであってもよい。
【0043】
各相のステータ巻線51,52,53の方向にU軸、V軸およびW軸をとった三相固定座標(UVW座標系)が定義される。また、ロータ50の磁極方向にd軸(磁極軸)をとり、ロータ50の回転平面内においてd軸と直角な方向にq軸(トルク軸)をとった二相回転座標系(dq座標系。実回転座標系)が定義される。dq座標系は、ロータ50とともに回転する回転座標系である。dq座標系では、q軸電流のみがロータ50のトルク発生に寄与するので、d軸電流を零とし、q軸電流を所望のトルクに応じて制御すればよい。ロータ50の回転角(ロータ角)θMは、U軸に対するd軸の回転角である。dq座標系は、ロータ角θMに従う実回転座標系である。このロータ角θMを用いることによって、UVW座標系とdq座標系との間での座標変換を行うことができる。
【0044】
一方、この実施形態では、制御上の回転角を表す制御角θCが導入される。制御角θCは、U軸に対する仮想的な回転角である。この制御角θCに対応する仮想的な軸をγ軸とし、このγ軸に対して90°進んだ軸をδ軸として、仮想二相回転座標系(γδ座標系。仮想回転座標系)を定義する。制御角θCがロータ角θMに等しいとき、仮想回転座標系であるγδ座標系と実回転座標系であるdq座標系とが一致する。すなわち、仮想軸としてのγ軸は実軸としてのd軸と一致し、仮想軸としてのδ軸は実軸としてのq軸と一致する。γδ座標系は、制御角θCに従う仮想回転座標系である。UVW座標系とγδ座標系との座標変換は、制御角θCを用いて行うことができる。
【0045】
制御角θCとロータ角θMとの差を負荷角θL(=θC−θM)と定義する。
制御角θCに従ってγ軸電流Iγをモータ3に供給すると、このγ軸電流Iγのq軸成分(q軸への正射影)がロータ50のトルク発生に寄与するq軸電流Iqとなる。すなわち、γ軸電流Iγとq軸電流Iqとの間に、次式(1)の関係が成立する。
Iq=Iγ・sinθL …(1)
再び図1を参照する。モータ制御装置5は、マイクロコンピュータ11と、このマイクロコンピュータ11によって制御され、モータ3に電力を供給する駆動回路(インバータ回路)12と、モータ3の各相のステータ巻線に流れる電流を検出する電流検出部13とを備えている。
【0046】
電流検出部13は、モータ3の各相のステータ巻線51,52,53に流れる相電流IU,IV,IW(以下、総称するときには「三相検出電流IUVW」という。)を検出する。これらは、UVW座標系における各座標軸方向の電流値である。
マイクロコンピュータ11は、CPUおよびメモリ(ROMおよびRAMなど)を備えており、所定のプログラムを実行することによって、複数の機能処理部として機能するようになっている。この複数の機能処理部には、操舵トルクリミッタ20と、指示操舵トルク設定部21と、トルク偏差演算部22と、PI(比例積分)制御部23と、加算角リミッタ24と、制御角演算部26と、指示電流値生成部30と、電流偏差演算部32と、PI制御部33と、γδ/UVW変換部34と、PWM(Pulse Width Modulation)制御部35と、UVW/γδ変換部36とが含まれている。
【0047】
指示操舵トルク設定部21は、舵角センサ4によって検出される操舵角と、車速センサ6によって検出される車速とに基づいて、指示操舵トルクT*を設定する。たとえば、図4に示すように、操舵角が正の値(右方向へ操舵した状態)のとき指示操舵トルクT*は正の値(右方向へのトルク)に設定され、操舵角が負の値(左方向へ操舵した状態)のとき指示操舵トルクT*は負の値(左方向へのトルク)に設定される。そして、操舵角の絶対値が大きくなるに従って、その絶対値が大きくなるように(図4の例では非線型に大きくなるように)指示操舵トルクT*が設定される。ただし、所定の上限値(正の値。たとえば、+6Nm)および下限値(負の値。たとえば−6Nm)の範囲内で指示操舵トルクT*の設定が行われる。また、指示操舵トルクT*は、車速が大きいほど、その絶対値が小さくなるように設定される。すなわち、車速感応制御が行われる。
【0048】
操舵トルクリミッタ20は、トルクセンサ1の出力を所定の上限飽和値+Tmax(+Tmax>0。たとえば+Tmax=7Nm)と下限飽和値−Tmax(−Tmax<0。たとえば−Tmax=−7Nm)との間に制限する。具体的には、操舵トルクリミッタ20は、図5に示すように、上限飽和値+Tmaxと下限飽和値−Tmaxの間では、トルクセンサ1の検出操舵トルクTをそのまま出力する。また、操舵トルクリミッタ20は、トルクセンサ1の検出操舵トルクTが上限飽和値+Tmax以上であれば、上限飽和値+Tmaxを出力する。そして、操舵トルクリミッタ20は、トルクセンサ1の検出操舵トルクTが下限飽和値−Tmax以下であれば、下限飽和値−Tmaxを出力する。飽和値+Tmaxおよび−Tmaxは、トルクセンサ1の出力信号が安定な領域(信頼性のある領域)の境界を画定するものである。つまり、トルクセンサ1の出力信号は、上限飽和値Tmaxを超える区間、および下限飽和値−Tmaxを下回る区間では不安定であり、実際の操舵トルクに対応しなくなる。換言すれば、飽和値+Tmax,−Tmaxは、トルクセンサ1の出力特性に応じて定められる。
【0049】
トルク偏差演算部22は、指示操舵トルク設定部21によって設定される指示操舵トルクT*と、トルクセンサ1によって検出され、操舵トルクリミッタ20による制限処理を受けた操舵トルクT(以下、区別するために「検出操舵トルクT」という。)との偏差(トルク偏差)ΔT(=T−T*)を求める。PI制御部23は、このトルク偏差ΔTに対するPI演算を行う。すなわち、トルク偏差演算部22およびPI制御部23によって、検出操舵トルクTを指示操舵トルクT*に導くためのトルクフィードバック制御手段が構成されている。PI制御部23は、トルク偏差ΔTに対するPI演算を行うことで、制御角θCに対する加算角αを演算する。したがって、前記トルクフィードバック制御手段は、加算角αを演算する加算角演算手段を構成している。
【0050】
加算角リミッタ24は、PI制御部23によって求められた加算角αに対して制限を加える。より具体的には、加算角リミッタ24は、所定の上限値UL(正の値)と下限値LL(負の値)との間の値に加算角αを制限する。上限値ULおよび下限値LLは、所定の制限値ωmax(ωmax>0。たとえばωmaxの既定値=45度)に基づいて定められる。この所定の制限値ωmaxの既定値は、たとえば、最大操舵角速度に基づいて定められる。最大操舵角速度とは、ステアリングホイール10の操舵角速度として想定され得る最大値であり、たとえば、800deg/sec程度である。
【0051】
最大操舵角速度のときのロータ50の電気角の変化速度(電気角での角速度。最大ロータ角速度)は、次式(2)のとおり、最大操舵角速度と、減速機構7の減速比と、ロータ50の極対数との積で与えられる。極対数とは、ロータ50が有する磁極対(N極とS極との対)の個数である。
最大ロータ角速度=最大操舵角速度×減速比×極対数 …(2)
制御角θCの演算間(演算周期)におけるロータ50の電気角変化量の最大値(ロータ角変化量最大値)は、次式(3)のとおり、最大ロータ角速度に演算周期を乗じた値となる。
【0052】
ロータ角変化量最大値=最大ロータ角速度×演算周期
=最大操舵角速度×減速比×極対数×演算周期 …(3)
このロータ角変化量最大値が一演算周期間で許容される制御角θCの最大変化量である。そこで、前記ロータ角変化量最大値を制限値ωmaxの既定値とすればよい。この制限値ωmaxを用いて、加算角αの上限値ULおよび下限値LLは、それぞれ次式(4)(5)で表すことができる。
【0053】
UL=+ωmax …(4)
LL=−ωmax …(5)
加算角リミッタ24による制限処理後の加算角αが、制御角演算部26の加算器26Aにおいて、制御角θCの前回値θC(n-1)(nは今演算周期の番号)に加算される(Z−1は信号の前回値を表す)。ただし、制御角θCの初期値は予め定められた値(たとえば零)である。
【0054】
制御角演算部26は、制御角θCの前回値θC(n-1)に加算角変更部25から与えられる加算角αを加算する加算器26Aを含む。すなわち、制御角演算部26は、所定の演算周期毎に制御角θCを演算する。そして、前演算周期における制御角θCを前回値θC(n-1)とし、これを用いて今演算周期における制御角θCである今回値θC(n)を求める。
指示電流値生成部30は、制御上の回転角である前記制御角θCに対応する仮想回転座標系であるγδ座標系の座標軸(仮想軸)に流すべき電流値を指示電流値として生成するものである。具体的には、γ軸指示電流値Iγ*およびδ軸指示電流値Iδ*(以下、これらを総称するときには「二相指示電流値Iγδ*」という。)を生成する。指示電流値生成部30は、γ軸指示電流値Iγ*を有意値とする一方で、δ軸指示電流値Iδ*を零とする。より具体的には、指示電流値生成部30は、指示操舵トルク設定部21によって設定される指示操舵トルクT*と、トルクセンサ1によって検出される検出操舵トルクTに基づいてγ軸指示電流値Iγ*を設定する。つまり、指示電流値生成部30は、二相指示電流値Iγδ*を設定するための指示電流設定手段である。
【0055】
指示電流値生成部30は、指示電流増減量演算部30Aと、加算器30Bと、上下限リミッタ30Cとを含んでいる。指示電流増減量演算部30Aは、所定の演算周期毎に、指示操舵トルクT*と検出操舵トルクTに基づいて、指示電流値Iγ*に対する電流増減量ΔIγ*を演算する。具体的には、指示電流増減量演算部30Aは、指示操舵トルクT*の符号と、指示操舵トルクT*と検出操舵トルクTとの偏差ΔT(=T−T*)とに基づいて、電流増減量ΔIγ*を演算する。
【0056】
指示電流増減量演算部30Aによる電流増減量ΔIγ*の演算方法の基本的な考え方について説明する。トルク偏差ΔTの絶対値が所定値A(A>0,図6Aおよび図6B参照)以下である場合には、現在の指示電流値Iγ*を維持させるために、電流増減量ΔIγ*を零とする。トルク偏差ΔTの絶対値が所定値Aより大きくかつ検出操舵トルクTの絶対値が指示操舵トルクT*の絶対値よりも大きい場合には、アシストトルク不足を補うために、指示電流値Iγ*を零より大きな値とする。これにより、指示電流値Iγ*が増加する。一方、トルク偏差ΔTの絶対値が所定値Aより大きくかつ検出操舵トルクTの絶対値が指示操舵トルクT*の絶対値よりも小さい場合には、省電力化を図るとともにモータの発熱を抑制するために、指示電流値Iγ*を零より小さな値とする。これにより、指示電流値Iγ*が減少する。
【0057】
指示操舵トルクT*の符号が正(T*≧0)である場合の、トルク偏差ΔTに対する電流増減量ΔIγ*の設定例は、図6Aに示されている。トルク偏差ΔTが所定値−A(A>0)以上でかつ所定値+A以下の範囲では、電流増減量ΔIγ*は零に設定される。そして、トルク偏差ΔTが所定値−Aより小さくなるに従って、その値が零より小さくなるように(図6Aの例ではリニアに小さくなるように)電流増減量ΔIγ*が設定される。また、トルク偏差ΔTが所定値+Aより大きくなるに従って、その値が零より大きくなるように(図6Aの例ではリニアに大きくなるように)電流増減量ΔIγ*が設定される。
【0058】
指示操舵トルクT*の符号が正(T*≧0)である場合において、トルク偏差ΔT(=T−T*)が零以上である場合とは、検出操舵トルクTの絶対値が指示操舵トルクT*の絶対値よりも大きい場合である。従って、この場合には、モータトルク(アシストトルク)が不足していると考えられる。そこで、トルク偏差ΔTが所定値+Aより大きい場合には、アシストトルク不足を補うように、電流増減量ΔIγ*が正の値にされている。この場合、トルク偏差ΔTの絶対値が大きいほど、電流増減量ΔIγ*の絶対値も大きくなる(絶対値の大きな正の値となる)。
【0059】
一方、トルク偏差ΔT(=T−T*)が零より小さい場合とは、検出操舵トルクTの絶対値が指示操舵トルクT*の絶対値よりも小さい場合である。従って、この場合には、アシストトルクが不足していないと考えられる。そこで、トルク偏差ΔTが所定値−A未満の場合には、省電力化を図るとともにモータの発熱を抑制するために、電流増減量ΔIγ*が負の値にされている。この場合、トルク偏差ΔTの絶対値が大きいほど、電流増減量ΔIγ*の絶対値も大きくなる(絶対値の大きな負の値となる)。
【0060】
指示操舵トルクT*の符号が負(T*<0)である場合の、トルク偏差ΔTに対する電流増減量ΔIγ*の設定例は、図6Bに示されている。トルク偏差ΔTが所定値−A以上でかつ所定値+A以下の範囲では、電流増減量ΔIγ*は零に設定される。そして、トルク偏差ΔTが所定値−Aより小さくなるに従って、その値が零より大きくなるように(図6Bの例ではリニアに大きくなるように)電流増減量ΔIγ*が設定される。また、トルク偏差ΔTが所定値+Aより大きくなるに従って、その値が零より小さくなるように(図6Bの例ではリニアに小さくなるように)電流増減量ΔIγ*が設定される。
【0061】
指示操舵トルクT*の符号が負(T*<0)である場合において、トルク偏差ΔT(=T−T*)が零以上である場合とは、検出操舵トルクTの絶対値が指示操舵トルクT*の絶対値よりも小さい場合である。この場合には、アシストトルクが不足していないと考えられる。そこで、トルク偏差ΔTが所定値+Aより大きい場合には、省電力化を図るとともにモータの発熱を抑制するために、電流増減量ΔIγ*が負の値にされている。この場合、トルク偏差ΔTの絶対値が大きいほど、電流増減量ΔIγ*の絶対値も大きくなる(絶対値の大きな負の値となる)。
【0062】
一方、トルク偏差ΔT(=T−T*)が零より小さい場合とは、検出操舵トルクTの絶対値が指示操舵トルクT*の絶対値よりも大きい場合である。従って、この場合には、アシストトルクが不足していると考えられる。そこで、トルク偏差ΔTが所定値−A未満である場合には、アシストトルク不足を補うように、電流増減量ΔIγ*が正の値にされている。この場合、トルク偏差ΔTの絶対値が大きいほど、電流増減量ΔIγ*の絶対値も大きくなる(絶対値の大きな正の値となる)。
【0063】
指示電流増減量演算部30Aによって演算された電流増減量ΔIγ*は、加算器30Bにおいて、指示電流値Iγ*の前回値Iγ*(n-1)(nは今演算周期の番号)に加算される(Z−1は信号の前回値を表す)。これにより、今演算周期での指示電流値Iγ*が演算される。ただし、指示電流値Iγ*の初期値は予め定められた値(例えば零)である。加算器30Bによって得られた指示電流値Iγ*は、上下限リミッタ30Cに与えられる。上下限リミッタ30Cは、加算器30Bによって得られた指示電流値Iγ*を、所定の下限値ξmin(ξmin≧0)と上限値ξmax(ξmax>ξmin)との間の値に制限する。
【0064】
つまり、加算器30Bによって得られた指示電流値Iγ*が、下限値ξmin以上でかつ上限値ξmax以下であるときには、上下限リミッタ30Cは、当該指示電流値Iγ*をそのまま出力する。加算器30Bによって得られた指示電流値Iγ*が下限値ξminより小さいときには、上下限リミッタ30Cは、下限値ξminを今演算周期の指示電流値Iγ*として出力する。加算器30Bによって得られた指示電流値Iγ*が上限値ξmaxより大きいときには、上下限リミッタ30Cは、上限値ξmaxを今演算周期の指示電流値Iγ*として出力する。
【0065】
電流偏差演算部32は、指示電流値生成部30によって生成されたγ軸指示電流値Iγ*に対するγ軸検出電流Iγの偏差Iγ*−Iγと、δ軸指示電流値Iδ*(=0)に対するδ軸検出電流Iδの偏差Iδ*−Iδとを演算する。γ軸検出電流Iγおよびδ軸検出電流Iδは、UVW/γδ変換部36から偏差演算部32に与えられるようになっている。
【0066】
UVW/γδ変換部36は、電流検出部13によって検出されるUVW座標系の三相検出電流IUVW(U相検出電流IU、V相検出電流IVおよびW相検出電流IW)をγδ座標系の二相検出電流IγおよびIδ(以下総称するときには「二相検出電流Iγδ」という。)に変換する。これらが電流偏差演算部32に与えられるようになっている。UVW/γδ変換部36における座標変換には、制御角演算部26で演算される制御角θCが用いられる。
【0067】
PI制御部33は、電流偏差演算部32によって演算された電流偏差に対するPI演算を行うことにより、モータ3に印加すべき二相指示電圧Vγδ*(γ軸指示電圧Vγ*およびδ軸指示電圧Vδ*)を生成する。この二相指示電圧Vγδ*が、γδ/UVW変換部34に与えられる。
γδ/UVW変換部34は、二相指示電圧Vγδ*に対して座標変換演算を行うことによって、三相指示電圧VUVW*を生成する。この座標変換には、制御角演算部26で演算された制御角θCが用いられる。三相指示電圧VUVW*は、U相指示電圧VU*、V相指示電圧VV*およびW相指示電圧VW*からなる。この三相指示電圧VUVW*は、PWM制御部35に与えられる。
【0068】
PWM制御部35は、U相指示電圧VU*、V相指示電圧VV*およびW相指示電圧VW*にそれぞれ対応するデューティのU相PWM制御信号、V相PWM制御信号およびW相PWM制御信号を生成し、駆動回路12に供給する。
駆動回路12は、U相、V相およびW相に対応した三相インバータ回路からなる。このインバータ回路を構成するパワー素子がPWM制御部35から与えられるPWM制御信号によって制御されることにより、三相指示電圧VUVW*に相当する電圧がモータ3の各相のステータ巻線51,52、53に印加されることになる。
【0069】
電流偏差演算部32およびPI制御部33は、電流フィードバック制御手段を構成している。この電流フィードバック制御手段の働きによって、モータ3に流れるモータ電流が、指示電流値生成部30によって設定された二相指示電流値Iγδ*に近づくように制御される。
図3は、前記電動パワーステアリング装置の制御ブロック図である。ただし、説明を簡単にするために、加算角リミッタ24の機能は省略してある。
【0070】
指示操舵トルクT*と検出操舵トルクTとの偏差(トルク偏差)ΔTに対するPI制御(KPは比例係数、KIは積分係数、1/sは積分演算子である。)によって、加算角αが生成される。この加算角αが制御角θCの前回値θC(n-1)に対して加算されることによって、制御角θCの今回値θC(n)=θC(n-1)+αが求められる。このとき、制御角θCとロータ50の実際のロータ角θMとの偏差が負荷角θL=θC−θMとなる。
【0071】
したがって、制御角θCに従うγδ座標系(仮想回転座標系)のγ軸(仮想軸)にγ軸指示電流値Iγ*に従ってγ軸電流Iγが供給されると、q軸電流Iq=IγsinθLとなる。このq軸電流Iqがロータ50の発生トルクに寄与する。すなわち、モータ3のトルク定数KTをq軸電流Iq(=IγsinθL)に乗じた値が、アシストトルクTA(=KT・IγsinθL)として、減速機構7を介して、舵取り機構2に伝達される。このアシストトルクTAを舵取り機構2からの負荷トルクTLから減じた値が、運転者がステアリングホイール10に与えるべき操舵トルクTである。この操舵トルクTがフィードバックされることによって、この操舵トルクTを指示操舵トルクT*に導くように系が動作する。つまり、検出操舵トルクTを指示操舵トルクT*に一致させるべく、加算角αが求められ、それに応じて制御角θCが制御される。
【0072】
このように制御上の仮想軸であるγ軸に電流を流す一方で、指示操舵トルクT*と検出操舵トルクTとの偏差ΔTに応じて求められる加算角αで制御角θCを更新していくことにより、負荷角θLが変化し、この負荷角θLに応じたトルクがモータ3から発生するようになっている。これにより、操舵角および車速に基づいて設定される指示操舵トルクT*に応じたトルクをモータ3から発生させることができるので、操舵角および車速に対応した適切な操舵補助力を舵取り機構2に与えることができる。すなわち、操舵角の絶対値が大きいほど操舵トルクが大きく、かつ、車速が大きいほど操舵トルクが小さくなるように、操舵補助制御が実行される。
【0073】
このようにして、回転角センサを用いることなくモータ3を適切に制御して、適切な操舵補助を行うことができる電動パワーステアリング装置を実現できる。これにより、構成を簡単にすることができ、コストの削減を図ることができる。
図7は、加算角リミッタ24の働きを説明するためのフローチャートである。加算角リミッタ24は、PI制御部23によって求められた加算角αを上限値ULと比較し(ステップS1)、加算角αが上限値ULを超えている場合(ステップS1:YES)には、上限値ULを加算角αに代入する(ステップS2)。したがって、制御角θCに対して上限値UL(=+ωmax)が加算されることになる。
【0074】
PI制御部23によって求められた加算角αが上限値UL以下であれば(ステップS1:NO)、加算角リミッタ24は、さらに、その加算角αを下限値LLと比較する(ステップS3)。そして、その加算角αが下限値未満であれば(ステップS3:YES)、下限値LLを加算角αに代入する(ステップS4)。したがって、制御角θCに対して下限値LL(=−ωmax)が加算されることになる。
【0075】
PI制御部23によって求められた加算角αが下限値LL以上上限値UL以下(ステップS3:NO)であれば、その加算角αがそのまま制御角θCへの加算のために用いられる。
このようにして、加算角αを上限値ULと下限値LLとの間に制限することができるので、制御の安定化を図ることができる。より具体的には、電流不足時や制御開始時に制御不安定状態(アシスト力が不安定な状態)が発生しても、この状態から安定な制御状態への遷移を促すことができる。
【0076】
前記第1の実施形態では、検出操舵トルクTの絶対値が指示操舵トルクT*の絶対値よりも大きいときには、すなわち、アシストトルクが不足している場合には、指示電流値生成部30内の指示電流増減量演算部30Aによって演算される電流増減量ΔIγ*は正の値となる。この場合、トルク偏差ΔTの絶対値が大きいほど、電流増減量ΔIγ*の絶対値も大きな値(絶対値の大きい正の値)となる。そして、この電流増減量ΔIγ*が加算器30Bによって指示電流値Iγ*の前回値に加算されるので、今演算周期での指示電流値Iγ*が増加する。この結果、アシストトルク不足が補われるから、操舵トルクTを指示操舵トルクT*に迅速に導くことができるようになる。
【0077】
一方、検出操舵トルクTの絶対値が指示操舵トルクT*の絶対値よりも小さいときには、指示電流増減量演算部30Aによって演算される電流増減量ΔIγ*が負の値となる。この場合、トルク偏差ΔTの絶対値が大きいほど、電流増減量ΔIγ*の絶対値も大きい値(絶対値の大きい負の値)となる。そして、この電流増減量ΔIγ*が加算器30Bによって指示電流値Iγ*の前回値に加算されるので、今演算周期での指示電流値Iγ*が減少する。これにより、省電力化が図れるとともにモータの発熱を抑制することができる。
【0078】
また加算器30Bによって得られた指示電流値Iγ*は、上下限リミッタ30Cによって制限されるので、指示電流値Iγ*が過大になるのを防止できる。これにより、適切なトルク制御を実現できる。
図8は、この発明の第2の実施形態に係るモータ制御装置を適用した電動パワーステアリング装置の構成を説明するためのブロック図である。この図8において、前述の図1の各部に対応する部分には図1と同じ符号を付して示す。
【0079】
この実施形態では、図1に示されている指示電流値生成部30の代わりに、指示電流値生成部60が設けられている。指示電流値生成部60は、γ軸指示電流値Iγ*を有意値とする一方で、δ軸指示電流値Iδ*を零とする。より具体的には、指示電流値生成部60は、指示操舵トルク設定部21によって設定される指示操舵トルクT*と、トルク偏差演算部22によって演算されるトルク偏差ΔTとに基づいてγ軸指示電流値Iγ*を設定する。なお、トルク偏差演算部22は、指示操舵トルク設定部21によって設定される指示操舵トルクT*と、トルクセンサ1によって検出され、操舵トルクリミッタ20による制限処理を受けた操舵トルクT(検出操舵トルクT)との偏差ΔT(=T−T*)を求める。
【0080】
指示電流値生成部60は、第1のPI制御部60Aと、第2のPI制御部60Bと、切替部60Cと、加算器60Dと、上下限リミッタ60Eとを含んでいる。
第1のPI制御部60Aは、指示操舵トルクT*の符号が正であると仮定して、トルク偏差ΔTに対するPI制御を行なうことで、指示電流値Iγ*に対する電流増減量ΔIγ*を演算する。そして、第1のPI制御部60Aは、指示操舵トルクT*の符号が正である場合に、トルク偏差ΔTが零になるように、電流増減量ΔIγ*をフィードバック制御する。つまり、第1のPI制御部60Aは、指示操舵トルクT*の符号が正(T*≧0)である場合において、トルク偏差ΔT(=T−T*)が零以上であるとき(アシストトルクが不足している場合)には、偏差ΔTを零に近づけるために、正の値の電流増減量ΔIγ*を演算し、トルク偏差ΔTが零より小さいときには、偏差ΔTを零に近づけるために、負の値の電流増減量ΔIγ*を演算することになる。いずれの場合も、電流増減量ΔIγ*の絶対値は、トルク偏差ΔTの絶対値が大きくなるほど大きくなる。
【0081】
第2のPI制御部60Bは、指示操舵トルクT*の符号が負であると仮定して、トルク偏差ΔTに対するPI制御を行なうことで、指示電流値Iγ*に対する電流増減量ΔIγ*を演算する。そして、第2のPI制御部60Bは、指示操舵トルクT*の符号が負である場合に、トルク偏差ΔTが零になるように、電流増減量ΔIγ*をフィードバック制御する。つまり、第2のPI制御部60Aは、指示操舵トルクT*の符号が負(T*<0)である場合において、トルク偏差ΔT(=T−T*)が零以上のときには、偏差ΔTを零に近づけるために、負の値の電流増減量ΔIγ*を演算し、トルク偏差ΔTが零より小さいとき(アシストトルクが不足している場合)には、偏差ΔTを零に近づけるために、正の値の電流増減量ΔIγ*を演算することになる。いずれの場合も、電流増減量ΔIγ*の絶対値は、トルク偏差ΔTの絶対値が大きくなるほど大きくなる。
【0082】
切替部60Cは、第1のPI制御部60Aによって演算される電流増減量ΔIγ*と、第2のPI制御部60Bによって演算される電流増減量ΔIγ*とを、指示操舵トルクT*の符号に応じて切換えて出力する。具体的には、切替部60Cは、指示操舵トルクT*の符号が正であるときには、第1のPI制御部60Aによって演算される電流増減量ΔIγ*を選択して出力する。一方、指示操舵トルクT*の符号が負であるときには、切替部60Cは、第2のPI制御部60Bによって演算される電流増減量ΔIγ*を選択して出力する。
【0083】
切替部60Cから出力された電流増減量ΔIγ*は、加算器60Dにおいて、指示電流値Iγ*の前回値Iγ*(n-1)(nは今演算周期の番号)に加算される(Z−1は信号の前回値を表す)。これにより、今演算周期での指示電流値Iγ*が演算される。ただし、指示電流値Iγ*の初期値は予め定められた値(例えば零)である。加算器60Dによって得られた指示電流値Iγ*は、上下限リミッタ60Eに与えられる。上下限リミッタ60Eは、加算器60Dによって得られた指示電流値Iγ*を、所定の下限値ξmin(ξmin≧0)と上限値ξmax(ξmax>ξmin)との間の値に制限する。
【0084】
つまり、加算器60Dによって得られた指示電流値Iγ*が、下限値ξmin以上でかつ上限値ξmax以下であるときには、上下限リミッタ60Eは、当該指示電流値Iγ*をそのまま出力する。加算器60Dによって得られた指示電流値Iγ*が下限値ξminより小さいときには、上下限リミッタ60Eは、下限値ξminを今演算周期の指示電流値Iγ*として出力する。加算器60Dによって得られた指示電流値Iγ*が上限値ξmaxより大きいときには、上下限リミッタ60Eは、上限値ξmaxを今演算周期の指示電流値Iγ*として出力する。この第2の実施形態においても、前記第1の実施形態と同様な効果が得られる。
【0085】
図9は、この発明の第3の実施形態に係るモータ制御装置を適用した電動パワーステアリング装置の構成を説明するためのブロック図である。この図9において、前述の図1の各部に対応する部分には図1と同じ符号を付して示す。
この実施形態では、図1に示されている指示電流値生成部30の代わりに、指示電流値生成部70が設けられている。指示電流値生成部70は、γ軸指示電流値Iγ*を有意値とする一方で、δ軸指示電流値Iδ*を零とする。具体的には、指示電流値生成部70は、トルクセンサ1によって検出され、操舵トルクリミッタ20の制限処理を受けた操舵トルクT(検出操舵トルクT)と、PI制御部23によって演算され、加算角リミッタ24による制限を受けた加算角αとに基づいて、γ軸指示電流値Iγ*を設定する。
【0086】
より具体的には、指示電流値生成部70は、検出操舵トルクTの変化量δT(以下、「操舵トルク変化量δT」という)と加算角αとの比に基づいて、γ軸指示電流値Iγ*を設定する。操舵トルク変化量δTは、今演算周期での検出操舵トルクT(n)から、前演算周期での検出操舵トルクT(n-1)を減算することによって求めることができる。
指示電流値生成部70は、指示電流増減量演算部70Aと、加算器70Bと、上下限リミッタ70Cとを含んでいる。
【0087】
指示電流増減量演算部70Aは、加算角αに対する操舵トルク変化量δTの比の絶対値|δT/α|と、操舵トルク変化量δTに対する加算角αの比の絶対値|α/δT|と、現在の指示電流値Iγ*(指示電流値Iγ*の前回値)とに基づいて、指示電流値Iγ*に対する電流増減量ΔIγ*を演算する。加算角αに対する操舵トルク変化量δTの比δT/αは、今演算周期において演算された操舵トルク変化量δTを、前演算周期または今演算周期においてPI制御部23によって演算され、加算角リミッタ24の制限処理を受けた加算角αで除算することによって求めることができる。操舵トルク変化量δTに対する加算角αの比α/δTは、前演算周期または今演算周期においてPI制御部23によって演算され、加算角リミッタ24の制限処理を受けた加算角αを、今演算周期において演算された操舵トルク変化量δTで除算することによって求めることができる。
【0088】
指示電流増減量演算部70Aは、次のようにして、指示電流値Iγ*に対する電流増減量ΔIγ*を演算する。加算角αに対する操舵トルク変化量δTの比の絶対値|δT/α|と電流増減量ΔIγ*との関係が予め設定されている。また、操舵トルク変化量δTに対する加算角αの比の絶対値|α/δT|と電流増減量ΔIγ*との関係が予め設定されている。さらに、現在の指示電流値Iγ*と増減量ゲインGとの関係が予め設定されている。
【0089】
操舵トルク変化量δTに対する加算角αの比α/δTの分母であるδTが零付近の小さい値のときには、この比α/δTの演算値には誤差が発生しやすい。そこで、指示電流増減量演算部70Aは、もう一つの比の絶対値|δT/α|に基づいて、電流増減量ΔIγ*の基本値を演算する。そして、指示電流増減量演算部70Aは、この基本値に現在の指示電流値Iγ*に応じた増減量ゲインGを乗算することにより、最終的な電流増減量ΔIγ*を演算する。
【0090】
一方、加算角αに対する操舵トルク変化量δTの比δT/αの分母であるαが零付近の小さい値のときには、この比δT/αの演算値には誤差が発生しやすい。そこで、指示電流増減量演算部70Aは、もう一つの比の絶対値|α/δT|に基づいて、電流増減量ΔIγ*の基本値を演算する。そして、指示電流増減量演算部70Aは、この基本値に現在の指示電流値Iγ*に応じた増減量ゲインGを乗算することにより、最終的な電流増減量ΔIγ*を演算する。
【0091】
図10Aは、加算角αに対する操舵トルク変化量δTの比の絶対値|δT/α|に対する電流増減量ΔIγ*の設定例を示している。前記絶対値|δT/α|が所定値B(B>0)以上で所定値C(C>B)以下の範囲内にある場合には、電流増減量ΔIγ*は零に設定される。そして、前記絶対値|δT/α|が所定値Cより大きくなるに従って、その値が零より減少するように(図10Aの例ではリニアに小さくなるように)、電流増減量ΔIγ*が設定される。また、前記絶対値|δT/α|が所定値Bより小さくなるに従って、その値が零より増加するように(図10Aの例ではリニアに大きくなるように)、電流増減量ΔIγ*が設定される。電流増減量ΔIγ*に関して図10Aに示すような設定が行われている理由について説明する。
【0092】
図11は、負荷角θLとアシストトルクTAとの関係を示している。図2を用いて説明したように、q軸電流Iqは、負荷角θLとγ軸電流Iγを用いて、Iq=IγsinθL(θL=θC―θM)で与えられる。アシストトルクTAは、モータ3のトルク定数KTをq軸電流Iqに乗じた値となる。したがって、負荷角θLに対するアシストトルクTAの変化は、図11に示すような曲線(サインカーブ)となる。図11において、曲線S1はγ軸電流Iγが比較的大きい場合の特性を示し、曲線S2はγ軸電流Iγが比較的小さい場合の特性を示している。本実施形態では、PI制御部23は、アシストトルクが単調に増加する区間である0°≦θL≦90°の区間および270゜≦θL≦360°の区間(以下、「−90°≦θL≦90°の区間」という)内で負荷角θLが制御されるように動作するものとする。なお、PI制御部23は、アシストトルクが単調に減少する区間である90°≦θL≦270°の区間で負荷角θLが制御されるように動作するものであってもよい。
【0093】
加算角αに対する操舵トルク変化量δTの比の絶対値|δT/α|が大きい場合とは、負荷角θLの変化量に対するアシストトルクTAの変化量が大きい場合である。したがって、負荷角θLが0°付近にあると考えられる。たとえば、アシストトルク特性が図11の曲線S1で表される場合、曲線S1上で負荷角θLが0°付近の点aの勾配(比δT/αに対応する)は、90°付近の点bの勾配より大きくなる。
【0094】
負荷角θLが0°付近にある場合には、γ軸電流Iγに対するアシストトルクTAの効率が低く、負荷角θLが90°(または−90°)付近にある場合には、γ軸電流Iγに対するアシストトルクTAの効率が高い。これは、負荷角θLが90°付近にある場合には、ロータ50にほぼ直交する方向にコイルの磁界を発生させることができるためである。負荷角θLが0°付近にある場合に、γ軸電流Iγを減少させると、同じ大きさのアシストトルクを発生させるために、負荷角θLが90°付近となるように制御されるため、γ軸電流Iγに対するアシストトルクTAの効率を高めることができる。たとえば、曲線S1上の点aに動作点がある場合に、γ軸電流Iγを減少させると、曲線S2上の点cに動作点を移行させることが可能となる。
【0095】
このような理由から、図10Aに示されるように、加算角αに対する操舵トルク変化量δTの比の絶対値|δT/α|が所定値Cより大きくなるに従って、その値が零より小さくなるように電流増減量ΔIγ*が設定されている。
一方、加算角αに対する操舵トルク変化量δTの比の絶対値|δT/α|が小さい場合とは、負荷角θLの変化量に対するアシストトルクTAの変化量が小さい場合である。したがって、負荷角θLが90゜(または−90°)付近にあると考えられる。負荷角θLが90゜付近にある場合には、アシストトルクが現在のγ軸電流Iγでのほぼ最大値に達しており、アシストトルク不足により、検出操舵トルクTを指示操舵トルクT*に近づけることができない状態となるおそれがある。そこで、このような場合には、アシストトルクを増加させるために、γ軸電流Iγを増加させることが好ましい。このような理由から、図10Aに示されるように、加算角αに対する操舵トルク変化量δTの比の絶対値|δT/α|が所定値Bより小さくなるに従って、その値が零より大きくなるように電流増減量ΔIγ*が設定されている。
【0096】
図10Bは、操舵トルク変化量δTに対する加算角αの比の絶対値|α/δT|に対する電流増減量ΔIγ*の設定例を示している。前記絶対値|α/δT|が所定値B(B>0)以上で所定値C(C>B)以下の範囲内にある場合には、電流増減量ΔIγ*は零に設定される。そして、前記絶対値|α/δT|が所定値Cより大きくなるに従って、その値が零より増加するように(図10Bの例ではリニアに大きくなるように)、電流増減量ΔIγ*が設定される。また、前記絶対値|α/δT|が所定値Bより小さくなるに従って、その値が零より減少するように(図10Bの例ではリニアに小さくなるように)、電流増減量ΔIγ*が設定される。
【0097】
操舵トルク変化量δTに対する加算角αの比の絶対値|α/δT|は、加算角αに対する操舵トルク変化量δTの比の絶対値|δT/α|が大きくなるほど小さくなるので、絶対値|α/δT|に対する電流増減量ΔIγ*の増減方向が、絶対値|δT/α|に対する電流増減量ΔIγ*の増減方向と逆になっている。
図10Cは、指示電流値Iγ*に対する増減量ゲインGの設定例を示している。図10Cの例では、現在の指示電流値Iγ*(指示電流値Iγ*の前回値)が大きいほど単調に減少する特性に従って増減量ゲインGが設定されている。より具体的には、現在の指示電流値Iγ*が零のときには、増減量ゲインGは1とされる。そして、現在の指示電流値Iγ*が零以上の範囲では、増減量ゲインGは、1から単調(図10Cの例ではリニア)に減少する特性に従って設定される。増減量ゲインGに関して図10Cに示すような設定が行われている理由について説明する。
【0098】
図12は、図11と同様に負荷角θLとアシストトルクTAとの関係を示している。図12において、曲線S1はγ軸電流Iγが比較的大きい場合の特性を示し、曲線S2はγ軸電流Iγが比較的小さい場合の特性を示している。
図10Aまたは図10Bに示す特性に従って演算された電流増減量ΔIγ*の基本値が負の値である場合、すなわち、指示電流値Iγ*を減少させる場合について説明する。電流増減量ΔIγ*の基本値が負の値になるのは、前述したように、前記絶対値|δT/α|が大きい場合(前記絶対値|α/δT|が小さい場合)、すなわち、負荷角θLの変化量δθLに対するアシストトルクTAの変化量δTAが大きい場合である。
【0099】
たとえば、図12において、アシストトルク特性がγ軸電流Iγが小さい場合の曲線S2であり、負荷角θLが曲線S2上の点dに対応する0°付近の角度になっている場合には、前記絶対値|δT/α|が大きくなる。このような場合には、前述したように、γ軸電流Iγに対するアシストトルクTAの効率を高くするために、γ軸電流Iγが小さくされる。これにより、負荷角θLが0°付近の角度に変化する。このように、γ軸電流Iγが小さくかつ前記絶対値|δT/α|が大きいとき(たとえば、曲線S2上の点dに動作点がある場合)に、γ軸電流Iγを減少させかつ同じ大きさのアシストトルクを得ようとする場合には、図12に矢印Y2で示すように、γ軸電流Iγを比較的大幅に下げることが可能である。
【0100】
図12において、曲線S2上の点dにおける勾配(前記絶対値|δT/α|に相当する)と同じ大きさの勾配を有する特性曲線S1上の点はeとなる。つまり、絶対値|δT/α|が同じであるとすると、γ軸電流Iγが大きい場合(曲線S1上の点e)は、γ軸電流Iγが小さい場合(曲線S2上の点d)に比べて、負荷角θLが90°により近い角度となる。従って、γ軸電流Iγが大きくかつ前記絶対値|δT/α|が大きいとき(たとえば、曲線S1上の点eに動作点がある場合)に、γ軸電流Iγを減少させかつ同じ大きさのアシストトルクを得ようとする場合には、図12に矢印Y1で示すように、γ軸電流Iγの下げ幅は比較的小さくなる。そこで、γ軸電流Iγを低下させるために、指示電流値Iγ*を減少させる場合には、現在の指示電流値Iγ*が大きいほど、その減少量を小さくすることが好ましい。
【0101】
電流増減量ΔIγ*の基本値が正の値である場合、すなわち、指示電流値Iγ*を増加させる場合について説明する。電流増減量ΔIγ*の基本値が正の値になるのは、前述したように、前記絶対値|δT/α|が小さい場合(前記絶対値|α/δT|が大きい場合)、すなわち、負荷角θLの変化量δθLに対するアシストトルクTAの変化量が小さい場合である。つまり、負荷角θLが90゜(または−90°)付近にあると考えられる場合である。このような場合には、前述したように、アシストトルクを増加させるために、γ軸電流Iγを増加させることが好ましい。しかし、既にγ軸電流Iγが大きいときに、その増加量を大きくすると、γ軸電流Iγが過大となるおそれがある。そこで、γ軸電流Iγを増加させるために、指示電流値Iγ*を増加させる場合には、現在の指示電流値Iγ*が大きいほど、その増加量を小さくすることが好ましい。以上のような理由から、図10Cに示すように、現在の指示電流値Iγ*が大きいほど、増減量ゲインGを小さくしているのである。
【0102】
図10Cの特性に基づいて求められた増減量ゲインGが、図10Aまたは図10Bの特性に基づいて演算された電流増減量ΔIγ*の基本値に乗算されることにより、最終的な電流増減量ΔIγ*が求められる。
指示電流増減量演算部70Aによって演算された電流増減量ΔIγ*は、加算器70Bにおいて、指示電流値Iγ*の前回値Iγ*(n-1)(nは今演算周期の番号)に加算される(Z−1は信号の前回値を表す)。これにより、今演算周期での指示電流値Iγ*が演算される。ただし、指示電流値Iγ*の初期値は予め定められた値(例えば零)である。加算器70Bによって得られた指示電流値Iγ*は、上下限リミッタ70Cに与えられる。上下限リミッタ70Cは、加算器70Bによって得られた指示電流値Iγ*を、所定の下限値ξmin(ξmin≧0)と上限値ξmax(ξmax>ξmin)との間の値に制限する。
【0103】
つまり、加算器70Bによって得られた指示電流値Iγ*が、下限値ξmin以上でかつ上限値ξmax以下であるときには、上下限リミッタ70Cは、当該指示電流値Iγ*をそのまま出力する。加算器70Bによって得られた指示電流値Iγ*が下限値ξminより小さいときには、上下限リミッタ70Cは、下限値ξminを今演算周期の指示電流値Iγ*として出力する。加算器70Bによって得られた指示電流値Iγ*が上限値ξmaxより大きいときには、上下限リミッタ70Cは、上限値ξmaxを今演算周期の指示電流値Iγ*として出力する。
【0104】
図13は、この発明の第4の実施形態に係るモータ制御装置を適用した電動パワーステアリング装置の構成を説明するためのブロック図である。この図13において、前述の図1の各部に対応する部分には図1と同じ符号を付して示す。
この実施形態では、マイクロコンピュータ11は、機能処理部としての誘起電圧推定部37を、さらに含んでいる。また、この実施形態では、図1に示されている指示電流値生成部30の代わりに、指示電流値生成部80が設けられている。指示電流値生成部80は、γ軸指示電流値Iγ*を有意値とする一方で、δ軸指示電流値Iδ*を零とする。より具体的には、指示電流値生成部80は、指示操舵トルク設定部21によって設定される指示操舵トルクT*と、トルクセンサ1によって検出される検出操舵トルクTと、誘起電圧推定部37によって推定される推定誘起電圧E^αβとに基づいて、γ軸指示電流値Iγ*を設定する。
【0105】
UVW/γδ変換部36は、UVW/αβ変換部36Aとαβ/γδ変換部36Bとからなる。UVW/αβ変換部36Aは、電流検出部13によって検出されるUVW座標系の三相検出電流IUVW(U相検出電流IU、V相検出電流IVおよびW相検出電流IW)を二相固定座標系であるαβ座標系の二相検出電流IαおよびIβ(以下総称するときには「二相検出電流Iαβ」という。)に変換する。αβ座標系は、図2に示すように、ロータ50の回転中心を原点として、ロータ50の回転平面内にα軸およびこれに直交するβ軸(図2の例ではU軸と同軸)を定めた固定座標系である。
【0106】
αβ/γδ変換部36Bは、二相検出電流Iαβをγδ座標系の二相検出電流IγおよびIδ(以下総称するときには「二相検出電流Iγδ」という。)に変換する。これらが電流偏差演算部32に与えられるようになっている。αβ/γδ変換部36Bにおける座標変換には、制御角演算部26で演算される制御角θCが用いられる。
γδ/UVW変換部34は、γδ/αβ変換部34Aとαβ/UVW変換部34Bとからなる。γδ/αβ変換部34Aは、PI制御部33から出力される二相指示電圧Vγδ*をαβ座標系の二相指示電圧Vαβ*に変換する。この座標変換には、制御角演算部26で演算された制御角θCが用いられる。二相指示電圧Vαβ*は、α軸指示電圧Vα*およびβ軸指示電圧Vβ*からなる。αβ/UVW変換部34Bは、二相指示電圧Vαβ*に対して座標変換演算を行うことによって、三相指示電圧VUVW*を生成する。三相指示電圧VUVW*は、U相指示電圧VU*、V相指示電圧VV*およびW相指示電圧VW*からなる。この三相指示電圧VUVW*は、PWM制御部35に与えられる。
【0107】
誘起電圧推定部37は、モータ3の回転によって生じる誘起電圧を推定するものである。図14は、誘起電圧推定部37の構成を説明するためのブロック図である。誘起電圧推定部37は、二相検出電流Iαβと二相指示電圧Vαβ*とに基づいて、モータ3の誘起電圧を推定する。より具体的には、誘起電圧推定部37は、モータ3の数学モデルであるモータモデルに基づき、モータ3の誘起電圧を外乱として推定する外乱オブザーバとしての形態を有している。モータモデルは、たとえば、(R+pL)−1と表すことができる。ただし、Rは電機子巻線抵抗、Lはαβ軸インダクタンス、pは微分演算子である。モータ3には、二相指示電圧Vαβ*と誘起電圧Eαβ(α軸誘起電圧Eαおよびβ軸誘起電圧Eβ)とが印加されると考えることができる。
【0108】
誘起電圧推定部37は、二相検出電流Iαβを入力としてモータ電圧を推定する逆モータモデル(モータモデルの逆モデル)65と、この逆モータモデル65によって推定されるモータ電圧と二相指示電圧Vαβ*との偏差を求める電圧偏差演算部66とで構成することができる。電圧偏差演算部66は、二相指示電圧Vαβ*に対する外乱を求めることになるが、図14から明らかなとおり、この外乱は誘起電圧Eαβに相当する推定値E^αβ(α軸誘起電圧推定値E^αおよびβ軸誘起電圧推定値E^β(以下、まとめて「推定誘起電圧E^αβ」という。)になる。逆モータモデル65は、たとえば、R+pLで表される。
【0109】
指示電流値生成部80は、指示電流増減量演算部80Aと、出力制御部80Bと、加算器80Cと、上下限リミッタ80Dとを含んでいる。指示電流増減量演算部80Aは、所定の演算周期毎に、指示操舵トルクT*と検出操舵トルクTに基づいて、指示電流値Iγ*に対する電流増減量ΔIγ*を演算する。具体的には、指示電流増減量演算部80Aは、指示操舵トルクT*の符号と、指示操舵トルクT*と検出操舵トルクTとの偏差ΔT(=T−T*)とに基づいて、電流増減量ΔIγ*を演算する。
【0110】
指示電流増減量演算部80Aによる電流増減量ΔIγ*の演算方法の基本的な考え方について説明する。トルク偏差ΔTの絶対値が所定値E(E>0,図15A,図15B参照)より大きくかつ検出操舵トルクTの絶対値が指示操舵トルクT*の絶対値よりも大きい場合には、アシストトルク不足を補うために、指示電流値Iγ*を零より大きな値とする。つまり、指示電流増減量演算部80Aは、指示電流値Iγ*を増加させるための電流増減量(以下、「電流増加量」という場合がある)ΔIγ*(ΔIγ*>0)を演算する。
【0111】
一方、トルク偏差ΔTの絶対値が所定値E未満である場合およびトルク偏差ΔTの絶対値が所定値E以上でありかつ検出操舵トルクTの絶対値が指示操舵トルクT*の絶対値よりも小さい場合には、省電力化を図るとともにモータの発熱を抑制するために、指示電流値Iγ*を零より小さな値とする。つまり、指示電流増減量演算部80Aは、指示電流値Iγ*を減少させるための電流増減量(「電流減少量」)ΔIγ*(ΔIγ*<0)を演算する。指示電流増減量演算部80Aの詳細については、後述する。
【0112】
出力制御部80Bは、指示電流増減量演算部80Aによって演算された電流増減量ΔIγ*が「電流増加量」である場合(ΔIγ*>0)には、その電流増減量ΔIγ*を出力する。一方、指示電流増減量演算部80Aによって演算された電流増減量ΔIγ*が「電流減少量」である場合(ΔIγ*<0)には、出力制御部80Bは、前回に指示電流値Iγ*が減少された時点から予め設定された所定時間Ts以上の時間が経過しており、かつモータ3(ロータ50)が停止している(回転していない)と判定したときにのみ、その電流増減量ΔIγ*を出力する。
【0113】
言い換えれば、出力制御部80Bは、前回に指示電流値Iγ*が減少された時点から予め設定された所定時間Ts以上の時間が経過していないとき、またはモータ3が回転しているときには、電流増減量ΔIγ*を出力しない。所定時間Tsは、指示電流値Iγ*を連続して減少させる場合の最小の周期となる。
モータ3が停止しているか否かは、この実施形態では、誘起電圧推定部37によって推定される推定誘起電圧E^αβに基づいて判別される。具体的には、α軸誘起電圧E^αおよびβ軸誘起電圧E^βの二乗和(E^α2+E^β2)が所定のしきい値H以下であれば、出力制御部80Bは、モータ3が停止していると判別する。一方、前記二乗和(E^α2+E^β2)がしきい値Hより大きければ、出力制御部80Bは、モータ3が回転していると判別する。しきい値Hは、前記二乗和(E^α2+E^β2)の推定誤差より大きな値に設定される。
【0114】
前記所定期間Tsは、次のように設定される。指示電流値Iγ*を減少させると、同じ大きさのアシストトルク(モータトルク)が発生するように、負荷角θLが制御される。前記所定期間Tsは、指示電流値Iγ*を減少させてから、同じ大きさのアシストトルクが発生される角度に負荷角θLが収束するのに要する時間の最大値に設定される。この最大値Tsは、たとえば、不適切なアシストトルクの継続を許容できると考えられる最大時間(以下、「不適切状態の許容最大時間」という)に設定される。この「不適切状態の許容最大時間」は、たとえば、100msに設定される。
【0115】
指示電流値Iγ*が減少されてから、同じ大きさのアシストトルクが発生される角度に負荷角θLが収束するより前に、指示電流値Iγ*がさらに減少されると、負荷角が適切値に収束しなくなるおそれがある。そこで、この実施形態では、前回に指示電流値Iγ*が減少された時点から予め設定された所定時間Ts以上の時間が経過していないときには、指示電流値Iγ*を減少させるような電流増減量ΔIγ*を出力しないようにしている。
【0116】
また、モータ3(ステアリングホイール10)が回転しているときに、運転者がステアリングホイール10を手放しすると、検出操舵トルクTの絶対値が小さくなるから、指示電流値Iγ*が低下しすぎるおそれがある。そうすると、本来必要となるアシストトルクが得られなくなるおそれがある。このような状態を回避するために、この実施形態では、モータ3(ステアリングホイール10)が回転しているときには、電流増減量ΔIγ*を出力しないようにしている。
【0117】
指示電流増減量演算部80Aについて、詳しく説明する。指示操舵トルクT*の符号が正(T*≧0)である場合の、トルク偏差ΔTに対する電流増減量ΔIγ*の設定例は、図15Aに示されている。トルク偏差ΔTが所定値+E(E>0)である場合には、電流増減量ΔIγ*は零に設定される。この所定値Eは、トルクセンサ1の出力のばらつきに応じた値(ばらつきによる検出誤差の最大値)に設定されている。トルク偏差ΔTが所定値+Eより大きな所定値+F(F>0)以上である場合には、電流増減量ΔIγ*は、零より大きな最大値+ΔIγmax*(ΔIγmax*>0)に固定される。所定値Fは、たとえば、2Nmに設定される。トルク偏差ΔTが所定値Eと所定値Fの間にある場合には、電流増減量ΔIγ*は、零から最大値+ΔIγmax*までの範囲内において、トルク偏差ΔTが大きくなるに従って、その値が大きくなるように(図15Aの例ではリニアに大きくなるように)設定される。
【0118】
また、トルク偏差ΔTが所定値+Eより小さな所定値+D(D>0)以下である場合には、電流増減量ΔIγ*は、零より小さい最小値−ΔIγmin*(ΔIγmin*>0)に固定される。トルク偏差ΔTが所定値+Eと所定値+Dの間にある場合には、変化電流増減量ΔIγ*は、零から最小値−ΔIγmin*までの範囲内において、トルク偏差ΔTが小さくなるに従って、その値が小さくなるように(図15Aの例ではリニアに小さくなるように)設定される。
【0119】
電流増減量ΔIγ*の最大値+ΔIγmax*の絶対値ΔIγmax*は、「電流増加量」の最大値である。この最大値+ΔIγmax*は、電流増減量ΔIγ*が最大値+ΔIγmax*に設定された場合に、前記「不適切状態の許容最大時間(この例では100ms)」以内に、指示電流値Iγ*が指示電流上限値(上下限リミッタ80Dの上限値)に達するような値に設定されている。より具体的に説明すると、指示電流増減量演算部80Aによる電流増減量ΔIγ*の演算周期は、前記「不適切状態の許容最大時間(この例では100ms)」より短く設定されている。そして、前記最大値+ΔIγmax*は、指示電流値Iγ*が下限値(上下限リミッタ80Dの下限値)となっている状態から、前記「不適切状態の許容最大時間(この例では100ms)」に相当する時間に亘って、電流増減量ΔIγ*として最大値+ΔIγmax*が演算されたときに、指示電流値Iγ*が指示電流上限値に達するような値に設定されている。
【0120】
これにより、トルク偏差ΔTが所定値+F以上である場合には、指示電流値Iγ*を「不適切状態の許容最大時間(この例では100ms)」以内に、上限値まで上昇させることが可能となる。一方、「電流増加量」を、零から最大値+ΔIγmax*に変化させると、アシストトルクが急激に変化するので好ましくない。そこで、トルク偏差ΔTが所定値+E以上で所定値+F以下の場合(アシストトルクの不足量が小さい場合)には、「電流増加量」を、零から最大値+ΔIγmax*まで徐々に増加させるようにしている。このようにすると、トルク偏差ΔTが所定値+E以上で所定値+F以下の場合には、指示電流値Iγ*を「不適切状態の許容最大時間」以内に上限値まで上昇させることができない可能性があるが、アシストトルクの不足量(トルク偏差ΔT)が小さいため、問題は生じないと考えられる。
【0121】
電流増減量ΔIγ*の最小値−ΔIγmin*の絶対値ΔIγmin*は、「電流減少量」の最大値である。この絶対値ΔIγmin*は、対応するアシストトルク変化量が所定値(たとえば、2Nm)以下であり、かつ指示電流値Iγ*を減少させてから、同じ大きさのアシストトルクが発生される角度に負荷角θLが収束するのに要する時間が前記「不適切状態の許容最大時間(この例では100ms)」以下となる大きさに設定される。
【0122】
指示操舵トルクT*の符号が正(T*≧0)である場合において、トルク偏差ΔT(=T−T*)が零より小さい場合とは、検出操舵トルクTの絶対値が指示操舵トルクT*の絶対値よりも小さい場合である。この場合には、アシストトルクが不足していないと考えられる。ただし、トルクセンサ1の出力にばらつきがある場合には、前述したようにばらつきによる検出誤差の最大値をEとすると、実際のトルク偏差ΔTが零である場合でも、演算されたトルク偏差ΔTは−E〜+Eの範囲内の値をとる可能性がある。
【0123】
そこで、実際のトルク偏差ΔTが零になっている可能性がある場合、つまり、演算されたトルク偏差ΔTが−E〜+Eの範囲内にある場合には、省電力化を図るとともにモータの発熱を抑制するために、指示電流値Iγ*を減少させるようにしている。 また、演算されたトルク偏差ΔTが−E未満の場合にも、省電力化を図るとともにモータの発熱を抑制するために、電流増減量ΔIγ*が負の値にされている。より具体的には、トルク偏差ΔTが所定値+Eと所定値+Dの間の値である場合には、トルク偏差ΔTが小さくなるにしたがって、電流増減量ΔIγ*も小さくなる(「電流減少量」が大きくなる)。また、トルク偏差ΔTが所定値+D以下の値である場合には、電流増減量ΔIγ*は最小値−ΔIγmin*(「電流減少量」の最大値)となる。
【0124】
一方、指示操舵トルクT*の符号が正(T*≧0)である場合において、トルク偏差ΔT(=T−T*)が零以上である場合とは、検出操舵トルクTの絶対値が指示操舵トルクT*の絶対値よりも大きい場合である。従って、この場合には、モータトルク(アシストトルク)が不足していると考えられる。そこで、トルク偏差ΔTが所定値+Eより大きい場合には、アシストトルク不足を補うように、電流増減量ΔIγ*が正の値にされている。より具体的には、トルク偏差ΔTが所定値+Eと所定値+Fの間の値である場合には、トルク偏差ΔTが大きくなるにしたがって、電流増減量ΔIγ*も大きくなる(「電流増加量」が大きくなる)。また、トルク偏差ΔTが所定値+F以上の値である場合には、電流増減量ΔIγ*は最大値+ΔIγmax*(「電流増加量」の最大値)となる。
【0125】
指示操舵トルクT*の符号が負(T*<0)である場合の、トルク偏差ΔTに対する電流増減量ΔIγ*の設定例は、図15Bに示されている。トルク偏差ΔTが所定値−Eのときには、電流増減量ΔIγ*は零に設定される。トルク偏差ΔTが所定値−Eより小さな所定値−F以下である場合には、電流増減量ΔIγ*は、零より大きな最大値+ΔIγmax*(ΔIγmax*>0)に固定される。トルク偏差ΔTが所定値−Eと所定値−Fの間にある場合には、電流増減量ΔIγ*は、零から最大値+ΔIγmax*までの範囲内において、トルク偏差ΔTが小さくなるに従って、その値が大きくなるように(図15Bの例ではリニアに大きくなるように)設定される。
【0126】
また、トルク偏差ΔTが所定値−Eより大きな所定値−D以上である場合には、電流増減量ΔIγ*は、零より小さい最小値−ΔIγmin*(ΔIγmin*>0)に固定される。トルク偏差ΔTが所定値−Eと所定値−Dの間にある場合には、電流増減量ΔIγ*は、零から最小値−ΔIγmin*までの範囲内において、トルク偏差ΔTが大きくなるに従って、その値が小さくなるように(図15Bの例ではリニアに小さくなるように)設定される。
【0127】
指示操舵トルクT*の符号が負(T*<0)である場合において、トルク偏差ΔT(=T−T*)が零より大きい場合とは、検出操舵トルクTの絶対値が指示操舵トルクT*の絶対値よりも小さい場合である。従って、この場合は、アシストトルクが不足していないと考えられる。ただし、トルクセンサ1の出力にばらつきがある場合には、ばらつきによる検出誤差の最大値をEとすると、実際のトルク偏差ΔTが零である場合でも、演算されたトルク偏差ΔTは−E〜+Eの範囲内の値をとる可能性がある。そこで、実際のトルク偏差ΔTが零になっている可能性がある場合、つまり、演算されたトルク偏差ΔTが−E〜+Eの範囲内にある場合には、省電力化を図るとともにモータの発熱を抑制するために、指示電流値Iγ*を減少させるようにしている。
【0128】
また、演算されたトルク偏差ΔTが所定値−Eより大きな場合にも、省電力化を図るとともにモータの発熱を抑制するために、電流増減量ΔIγ*が負の値にされている。より具体的には、トルク偏差ΔTが所定値−Eと所定値−Dの間の値である場合には、トルク偏差ΔTが大きくなるにしたがって、電流増減量ΔIγ*が小さくなる(「電流減少量」が大きくなる)。また、トルク偏差ΔTが所定値−D以上の値である場合には、電流増減量ΔIγ*は最小値−ΔIγmin*(「電流減少量」の最大値)となる。
【0129】
一方、トルク偏差ΔT(=T−T*)が零以下である場合とは、検出操舵トルクTの絶対値が指示操舵トルクT*の絶対値よりも大きい場合である。従って、この場合には、アシストトルクが不足している場合であると考えられる。そこで、トルク偏差ΔTが所定値−E未満の場合には、アシストトルク不足を補うように、電流増減量ΔIγ*が正の値にされている。より具体的には、トルク偏差ΔTが所定値−Eと所定値−Fの間の値である場合には、トルク偏差ΔTが小さくなるにしたがって、電流増減量ΔIγ*が大きくなる(「電流増加量」が大きくなる)。また、トルク偏差ΔTが所定値−F以下の値である場合には、電流増減量ΔIγ*は最大値+ΔIγmax*(「電流増加量」の最大値)となる。
【0130】
指示電流増減量演算部80Aによって演算された電流増減量ΔIγ*は、出力制御部80Bに与えられる。出力制御部80Bは、前述したような処理を行なう。
図16は、指示電流増減量演算部80Aおよび出力制御部80Bの動作を示すフローチャートである。図16に示される処理は、所定の演算周期毎に実行される。
指示電流増減量演算部80Aによって、電流増減量ΔIγ*が演算されると(ステップS11)、出力制御部80Bは、指示電流増減量演算部80Aによって演算された電流増減量ΔIγ*が「電流減少量」であるか否かを判別する(ステップS12)。具体的には、出力制御部80Bは、指示電流増減量演算部80Aによって演算された電流増減量ΔIγ*が負の値であれば、今回演算された電流増減量ΔIγ*は「電流減少量」であると判別し、電流増減量ΔIγ*が正の値であれば、今回演算された電流増減量ΔIγ*は「電流増加量」であると判別する。
【0131】
指示電流増減量演算部80Aによって演算された電流増減量ΔIγ*が「電流増加量」である場合には(ステップS12:NO)、出力制御部80Bは、今回演算された電流増減量ΔIγ*(「電流増加量」)を出力する(ステップS13)。そして、今演算周期の処理を終了する。
一方、指示電流増減量演算部80Aによって演算された電流増減量ΔIγ*が「電流減少量」であると判別された場合には(ステップS12:YES)、出力制御部80Bは、前回に指示電流Iγ*が減少された時点から所定時間Ts以上の時間が経過しているか否かを判別する(ステップS14)。所定時間Tsは、指示電流Iγ*を連続して減少させる場合の最小の周期であり、この例では、100msである。ステップS14の判別は、たとえば、出力制御部80Bによって「電流減少量」が出力された最新の時点から、所定時間Tsが経過しているか否かを判別することによって行なわれる。
【0132】
前回に指示電流Iγ*が減少された時点から所定時間Ts以上の時間が経過している場合には(ステップS14:YES)、誘起電圧推定部37によって推定される推定誘起電圧E^αβの二乗和(E^α2+E^β2)が所定のしきい値H以下であるか否かを判別する(ステップS15)。推定誘起電圧E^αβの二乗和(E^α2+E^β2)がしきい値H以下である場合には(ステップS15:YES)、出力制御部80Bは、今回演算された電流増減量ΔIγ*(「電流減少量」)を出力する(ステップS16)。そして、今演算周期の処理を終了する。
【0133】
前記ステップS14において、前回に指示電流Iγ*が減少された時点から所定時間Ts以上の時間が経過していないと判別された場合には(ステップS14:NO)または前記ステップS15において、推定誘起電圧E^αβの二乗和(E^α2+E^β2)がしきい値Hより大きいと判別された場合には(ステップS15:NO)、出力制御部80Bは、今回演算された電流増減量ΔIγ*(「電流減少量」)を出力することなく(ステップS17)、今演算周期の処理を終了する。
【0134】
図13に戻り、出力制御部80Bから出力された電流増減量ΔIγ*は、加算器80Cにおいて、指示電流値Iγ*の前回値Iγ*(n-1)(nは今演算周期の番号)に加算される(Z−1は信号の前回値を表す)。これにより、今演算周期での指示電流値Iγ*が演算される。ただし、指示電流値Iγ*の初期値は予め定められた値(例えば零)である。加算器80Cによって得られた指示電流値Iγ*は、上下限リミッタ80Dに与えられる。上下限リミッタ80Dは、加算器80Cによって得られた指示電流値Iγ*を、所定の下限値ξmin(ξmin≧0)と上限値ξmax(ξmax>ξmin)との間の値に制限する。
【0135】
つまり、加算器80Cによって得られた指示電流値Iγ*が、下限値ξmin以上でかつ上限値ξmax以下であるときには、上下限リミッタ80Dは、当該指示電流値Iγ*をそのまま出力する。加算器80Cによって得られた指示電流値Iγ*が下限値ξminより小さいときには、上下限リミッタ80Dは、下限値ξminを今演算周期の指示電流値Iγ*として出力する。加算器80Cによって得られた指示電流値Iγ*が上限値ξmaxより大きいときには、上下限リミッタ80Dは、上限値ξmaxを今演算周期の指示電流値Iγ*として出力する。
【0136】
上記実施形態では、モータ3が停止しているか否かを推定誘起電圧の二乗和(E^α2+E^β2)に基づいて判別しているが、舵角センサ4によって検出される操舵角の所定時間当たりの変化量に基づいて、判別するようにしてもよい。具体的には、所定時間当たりの操舵角変化量が所定のしきい値以下であればモータ3が停止していると判別され、所定時間当たりの操舵角変化量が所定のしきい値より大きければモータ3が回転していると判別される。
【0137】
図1に示される第1の実施形態および図9に示される第3の実施形態においても、指示電流増減量演算部30A,70Aによって演算された電流増減量ΔIγ*に対して、第4の実施形態における出力制御部80Bと同様な出力制御を行なうようにしてもよい。つまり、
図1および図9に破線で示すように、指示電流増減量演算部30A,70Aと加算器30B,70Bとの間に、第4の実施形態における出力制御部80Bと同様な出力制御を行う出力制御部80Bを設けてもよい。この場合、モータ3(ロータ50)が停止しているか否かを判別するために、第4の実施形態における誘起電圧推定部37と同様な誘起電圧推定部を設けてもよい。また、舵角センサ4によって検出される操舵角の所定時間当たりの変化量に基づいて、モータ3が停止しているか否かを判別してもよい。
【0138】
図17は、この発明の第5の実施形態に係るモータ制御装置を適用した電動パワーステアリング装置の構成を説明するためのブロック図である。この図17において、前述の図1の各部に対応する部分には図1と同じ符号を付して示す。
前述した第4の実施形態(図13参照)では、たとえば、図15Aに示すように、指示操舵トルクT*の符号が正(T*≧0)である場合において、トルク偏差ΔTが所定値E未満である場合には、省電力化を図るとともにモータの発熱を抑制するために、指示電流値Iγ*が零より小さな値にされている。図15Aでは、指示操舵トルクT*の符号が正(T*≧0)である場合において、トルク偏差ΔTが負であるときには、電流増減量ΔIγ*は最小値−ΔIγmin*となる。
【0139】
運転者が右操舵に切り込んだ後に、中立位置方向への切り戻し操舵を行った場合には、指示操舵トルクT*および検出操舵トルクTの符号は正であり、検出操舵トルクTの絶対値が減少する。このため、トルク偏差ΔT(=T−T*)が負となる。前記切り戻し操舵によってトルク偏差ΔTが負となると、電流増減量ΔIγ*は最小値−ΔIγmin*となるため、指示電流値Iγ*が減少し、アシストトルクが零になるおそれがある。そうすると、運転者は、それまで発生していたアシストトルクが無くなるため、切り戻し操舵時に違和感を感じる。第5の実施形態では、切り戻し操舵時にもアシストトルクを発生させることにより、切り戻し操舵時に運転者に違和感を感じさせないようにする。
【0140】
第5の実施形態では、図1に示されている指示電流値生成部30の代わりに、指示電流値生成部90が設けられている。指示電流値生成部90は、γ軸指示電流値Iγ*を有意値とする一方で、δ軸指示電流値Iδ*を零とする。より具体的には、指示電流値生成部90は、指示操舵トルク設定部21によって設定される指示操舵トルクT*と、トルクセンサ1によって検出される検出操舵トルクTとに基づいて、γ軸指示電流値Iγ*を設定する。
【0141】
指示電流値生成部90は、指示電流増減量演算部90Aと、加算器90Bと、上下限リミッタ90Cとを含んでいる。指示電流増減量演算部90Aは、所定の演算周期毎に、指示操舵トルクT*と検出操舵トルクTに基づいて、指示電流値Iγ*に対する電流増減量ΔIγ*を演算する。具体的には、指示電流増減量演算部90Aは、指示操舵トルクT*の符号と、指示操舵トルクT*と検出操舵トルクTとの偏差ΔT(=T−T*)とに基づいて、電流増減量ΔIγ*を演算する。
【0142】
指示電流増減量演算部90Aによる電流増減量ΔIγ*の演算方法の基本的な考え方について説明する。検出操舵トルクTの絶対値が指示操舵トルクT*の絶対値よりも大きく、かつトルク偏差ΔTの絶対値が第1の所定値E(E>0,図18A,図18B参照)より大きい場合には、アシストトルク不足を補うために、指示電流値Iγ*を零より大きな値とする。つまり、指示電流増減量演算部90Aは、指示電流値Iγ*を増加させるための電流増減量(以下、「電流増加量」という場合がある)ΔIγ*(ΔIγ*>0)を演算する。
【0143】
また、検出操舵トルクTの絶対値が指示操舵トルクT*の絶対値よりも小さく、かつトルク偏差ΔTの絶対値が第2の所定値H(H>0,図18A,図18B参照)より大きい場合には、切り戻し操舵時にアシストトルクを発生させるために、指示電流値Iγ*を零より大きな値とする。つまり、指示電流増減量演算部90Aは、指示電流値Iγ*を増加させるための電流増減量(「電流増加量」)ΔIγ*(ΔIγ*>0)を演算する。
【0144】
そして、検出操舵トルクTの絶対値が指示操舵トルクT*の絶対値よりも大きく、かつトルク偏差ΔTの絶対値が第1の所定値E以下である場合および検出操舵トルクTの絶対値が指示操舵トルクT*の絶対値よりも小さく、かつトルク偏差ΔTの絶対値が第2の所定値H以下の場合には、省電力化を図るとともにモータの発熱を抑制するために、指示電流値Iγ*を零より小さな値とする。つまり、指示電流増減量演算部90Aは、指示電流値Iγ*を減少させるための電流増減量(「電流減少量」)ΔIγ*(ΔIγ*<0)を演算する。
【0145】
指示操舵トルクT*の符号が正(T*≧0)である場合の、トルク偏差ΔTに対する電流増減量ΔIγ*の設定例は、図18Aに示されている。トルク偏差ΔTが所定値+E(E>0,第1の所定値E)である場合または所定値−H(H>0,第2の所定値Hに負の符号を付けた値)にある場合には、電流増減量ΔIγ*は零に設定される。第1の所定値Eは、トルクセンサ1の出力のばらつきに応じた値(ばらつきによる検出誤差の最大値)に設定されている。トルク偏差ΔTが所定値+Eより大きな所定値+F(F>0)以上である場合には、電流増減量ΔIγ*は、零より大きな最大値+ΔIγmax*(ΔIγmax*>0)に固定される。所定値+Fは、たとえば、2Nmに設定される。トルク偏差ΔTが所定値+Eと所定値+Fの間にある場合には、電流増減量ΔIγ*は、零から最大値+ΔIγmax*までの範囲内において、トルク偏差ΔTが大きくなるに従って、その値が大きくなるように(図18Aの例ではリニアに大きくなるように)設定される。
【0146】
所定値−Hの絶対値(第2の所定値H)は、第1の所定値E以上の値に設定される。第2の所定値Hは、たとえば、2Nm〜3Nmの範囲内の値に設定される。運転者が右操舵で切り込んだ後に切り戻し操舵(中立位置方向への操舵)を行った場合には、検出操舵トルクTの絶対値が減少するため、トルク偏差ΔTは負になる。この実施形態では、トルクセンサ1のばらつきによる検出誤差の最大値Eを考慮して、トルク偏差ΔTが−E以下の所定値−H未満であるときに、前記切り戻し操舵が行われていると判定している。
【0147】
トルク偏差ΔTが所定値−Hより小さな所定値−G(G>0)以下である場合には、電流増減量ΔIγ*は、零より大きな最大値+ΔIγmax*(ΔIγmax*>0)に固定される。所定値Gは、たとえば、5Nmに設定される。トルク偏差ΔTが所定値−Hと所定値−Gの間にある場合には、電流増減量ΔIγ*は、零から最大値+ΔIγmax*までの範囲内において、トルク偏差ΔTが小さくなるに従って、その値が大きくなるように(図18Aの例ではリニアに大きくなるように)設定される。
【0148】
トルク偏差ΔTが、所定値−Hより大きな所定値−I(I>0)以上でかつ所定値+Eより小さな所定値+D(D>0)以下の範囲内にある場合には、電流増減量ΔIγ*は、零より小さい最小値−ΔIγmin*(ΔIγmin*>0)に固定される。トルク偏差ΔTが所定値−Hと所定値−Iの間にある場合には、電流増減量ΔIγ*は、零から最小値−ΔIγmin*までの範囲内において、トルク偏差ΔTが大きくなるに従って、その値が小さくなるように(図18Aの例ではリニアに小さくなるように)設定される。トルク偏差ΔTが所定値+Eと所定値+Dの間にある場合には、電流増減量ΔIγ*は、零から最小値−ΔIγmin*までの範囲内において、トルク偏差ΔTが小さくなるに従って、その値が小さくなるように(図18Aの例ではリニアに小さくなるように)設定される。
【0149】
電流増減量ΔIγ*の最大値+ΔIγmax*の絶対値ΔIγmax*は、「電流増加量」の最大値である。この最大値+ΔIγmax*は、電流増減量ΔIγ*が最大値+ΔIγmax*に設定された場合に、前記「不適切状態の許容最大時間(この例では100ms)」以内に、指示電流値Iγ*が指示電流上限値(上下限リミッタ80Dの上限値)に達するような値に設定されてもよい。
【0150】
電流増減量ΔIγ*の最小値−ΔIγmin*の絶対値ΔIγmin*は、「電流減少量」の最大値である。この絶対値ΔIγmin*は、対応するアシストトルク変化量が所定値(たとえば、2Nm)以下であり、かつ指示電流値Iγ*を減少させてから、同じ大きさのアシストトルクが発生される角度に負荷角θLが収束するのに要する時間が前記「不適切状態の許容最大時間(この例では100ms)」以下となる大きさに設定されてもよい。
【0151】
指示操舵トルクT*の符号が正(T*≧0)である場合において、トルク偏差ΔT(=T−T*)が零以上である場合とは、検出操舵トルクTの絶対値が指示操舵トルクT*の絶対値よりも大きく、従ってアシストトルクが不足している場合であると考えられる。そこで、トルク偏差ΔTが所定値+Eより大きい場合には、アシストトルク不足を補うように、電流増減量ΔIγ*が正の値にされている。
【0152】
前述したように、運転者が右操舵で切り込んだ後に切り戻し操舵を行った場合には、検出操舵トルクTの絶対値が減少するため、トルク偏差ΔT(=T−T*)が零より小さくなる。そこで、トルク偏差ΔTが所定値−H未満となった場合には、切り戻し操舵時にアシストトルクを発生させるために、発生電流増減量ΔIγ*が正の値にされている。これにより、違和感のない切り戻し操舵が可能となる。
【0153】
トルク偏差ΔTが所定値−H以上で所定値+E以下の場合には、省電力化を図るとともにモータの発熱を抑制するために、電流増減量ΔIγ*が負の値にされている。
指示操舵トルクT*の符号が負(T*<0)である場合の、トルク偏差ΔTに対する電流増減量ΔIγ*の設定例は、図18Bに示されている。トルク偏差ΔTが所定値−Eである場合または所定値+Hにある場合には、電流増減量ΔIγ*は零に設定される。トルク偏差ΔTが所定値−Eより小さな所定値−F以下である場合には、電流増減量ΔIγ*は、零より大きな最大値+ΔIγmax*(ΔIγmax*>0)に固定される。トルク偏差ΔTが所定値−Eと所定値−Fの間にある場合には、電流増減量ΔIγ*は、零から最大値+ΔIγmax*までの範囲内において、トルク偏差ΔTが小さくなるに従って、その値が大きくなるように(図18Bの例ではリニアに大きくなるように)設定される。
【0154】
運転者が左操舵で切り込んだ後に切り戻し操舵(中立位置方向への操舵)を行った場合には、検出操舵トルクTの絶対値が減少するため、トルク偏差ΔT(=T−T*)は正になる。この実施形態では、トルクセンサ1のばらつきによる検出誤差の最大値Eを考慮して、トルク偏差ΔTが+E以上の所定値+Hより大きいときに、前記切り戻し操舵が行われていると判定している。
【0155】
トルク偏差ΔTが所定値+Hより大きな所定値+G以上ある場合には、電流増減量ΔIγ*は、零より大きな最大値+ΔIγmax*(ΔIγmax*>0)に固定される。トルク偏差ΔTが所定値+Hと所定値+Gの間にある場合には、電流増減量ΔIγ*は、零から最大値+ΔIγmax*までの範囲内において、トルク偏差ΔTが大きくなるに従って、その値が大きくなるように(図18Bの例ではリニアに大きくなるように)設定される。
【0156】
トルク偏差ΔTが、所定値−Eより大きな所定値−D以上でかつ所定値+Hより小さな所定値+I以下の範囲内にある場合には、電流増減量ΔIγ*は、零より小さい最小値−ΔIγmin*(ΔIγmin*>0)に固定される。トルク偏差ΔTが所定値+Hと所定値+Iの間にある場合には、電流増減量ΔIγ*は、零から最小値−ΔIγmin*までの範囲内において、トルク偏差ΔTが小さくなるに従って、その値が小さくなるように(図18Bの例ではリニアに小さくなるように)設定される。トルク偏差ΔTが所定値−Eと所定値−Dの間にある場合には、電流増減量ΔIγ*は、零から最小値−ΔIγmin*までの範囲内において、トルク偏差ΔTが大きくなるに従って、その値が小さくなるように(図18Bの例ではリニアに小さくなるように)設定される。
【0157】
指示操舵トルクT*の符号が負(T*<0)である場合において、トルク偏差ΔT(=T−T*)が零以下である場合とは、検出操舵トルクTの絶対値が指示操舵トルクT*の絶対値よりも大きく、従ってアシストトルクが不足している場合であると考えられる。そこで、トルク偏差ΔTが所定値−Eより小さい場合には、アシストトルク不足を補うように、電流増減量ΔIγ*が正の値にされている。
【0158】
前述したように、運転者が左操舵で切り込んだ後に切り戻し操舵を行った場合には、検出操舵トルクTの絶対値が減少するため、トルク偏差ΔT(=T−T*)が零より大きくなる。そこで、トルク偏差ΔTが所定値+Hより大きくなった場合には、切り戻し操舵時にアシストトルクを発生させるために、発生電流増減量ΔIγ*が正の値にされている。これにより、違和感のない切り戻し操舵が可能となる。
【0159】
トルク偏差ΔTが所定値−E以上でかつ所定値+H以下の範囲内にある場合には、省電力化を図るとともにモータの発熱を抑制するために、電流増減量ΔIγ*が負の値にされている。
図17に戻り、指示電流増減量演算部90Aから出力された電流増減量ΔIγ*は、加算器90Bにおいて、指示電流値Iγ*の前回値Iγ*(n-1)(nは今演算周期の番号)に加算される(Z−1は信号の前回値を表す)。これにより、今演算周期での指示電流値Iγ*が演算される。ただし、指示電流値Iγ*の初期値は予め定められた値(例えば零)である。加算器90Bによって得られた指示電流値Iγ*は、上下限リミッタ90Cに与えられる。上下限リミッタ90Cは、加算器90Bによって得られた指示電流値Iγ*を、所定の下限値ξmin(ξmin≧0)と上限値ξmax(ξmax>ξmin)との間の値に制限する。
【0160】
つまり、加算器90Bによって得られた指示電流値Iγ*が、下限値ξmin以上でかつ上限値ξmax以下であるときには、上下限リミッタ90Cは、当該指示電流値Iγ*をそのまま出力する。加算器90Bによって得られた指示電流値Iγ*が下限値ξminより小さいときには、上下限リミッタ90Cは、下限値ξminを今演算周期の指示電流値Iγ*として出力する。加算器90Bによって得られた指示電流値Iγ*が上限値ξmaxより大きいときには、上下限リミッタ90Cは、上限値ξmaxを今演算周期の指示電流値Iγ*として出力する。
【0161】
図17に示される第5の実施形態においても、指示電流増減量演算部90Aによって演算された電流増減量ΔIγ*に対して、第4の実施形態における出力制御部80Bと同様な出力制御を行なうようにしてもよい。つまり、図17に破線で示すように、指示電流増減量演算部90Aと加算器90Bとの間に、第4の実施形態における出力制御部80Bと同様な出力制御を行う出力制御部80Bを設けてもよい。この場合、モータ3(ロータ50)が停止しているか否かを判別するために、第4の実施形態における誘起電圧推定部37と同様な誘起電圧推定部を設けてもよい。また、舵角センサ4によって検出される操舵角の所定時間当たりの変化量に基づいて、モータ3が停止しているか否かを判別してもよい。 以上、この発明のいくつかの実施形態について説明したが、この発明はさらに他の形態で実施することもできる。たとえば、前述の実施形態では、PI制御部23によって加算角αを求めているが、PI制御部23に代えて、PID(比例・積分・微分)演算部を用いて加算角αを求める構成とすることもできる。
【0162】
また、前述の実施形態では、回転角センサを備えずに、専らセンサレス制御によってモータ3を駆動する構成について説明したが、レゾルバ等の回転角センサを備え、この回転角センサの故障時に前述のようなセンサレス制御を行う構成としてもよい。これにより、回転角センサの故障時にもモータ3の駆動を継続できるから、操舵補助を継続できる。
この場合、回転角センサを用いるときには、指示電流値生成部30において、操舵トルクおよび車速に応じて、所定のアシスト特性に従ってδ軸指示電流値Iδ*を発生させるようにすればよい。
【0163】
さらに、前述の実施形態では、電動パワーステアリング装置にこの発明が適用された例について説明したが、この発明は、電動ポンプ式油圧パワーステアリング装置のためのモータの制御や、パワーステアリング装置以外にも、ステア・バイ・ワイヤ(SBW)システム、可変ギヤレシオ(VGR)ステアリングシステムその他の車両用操舵装置に備えられたブラシレスモータの制御のために用いることができる。むろん、車両用操舵装置に限らず、他の用途のモータの制御のためにも本発明のモータ制御装置を適用できる。
【0164】
その他、特許請求の範囲に記載された事項の範囲で種々の設計変更を施すことが可能である。
【符号の説明】
【0165】
1…トルクセンサ、3…モータ、5…モータ制御装置、10…ステアリングホイール、11…マイクロコンピュータ、23…PI制御部、26…制御角演算部、30,60,70,80,90…指示電流値生成部、50…ロータ、51,52,53…ステータ巻線、55…ステータ
【技術分野】
【0001】
この発明は、ブラシレスモータを駆動するためのモータ制御装置およびそれを備えた車両用操舵装置に関する。車両用操舵装置の一例は、電動パワーステアリング装置である。
【背景技術】
【0002】
ブラシレスモータを駆動制御するためのモータ制御装置は、一般に、ロータの回転角を検出するための回転角センサの出力に応じてモータ電流の供給を制御するように構成されている。回転角センサとしては、一般的には、ロータ回転角(電気角)に対応した正弦波信号および余弦波信号を出力するレゾルバが用いられる。しかし、レゾルバは、高価であり、配線数が多く、また、設置スペースも大きい。そのため、ブラシレスモータを備えた装置のコスト削減および小型化が阻害されるという課題がある。
【0003】
そこで、回転角センサを用いることなくブラシレスモータを駆動するセンサレス駆動方式が提案されている。センサレス駆動方式は、ロータの回転に伴う誘起電圧を推定することによって、磁極の位相(ロータの電気角)を推定する方式である。ロータ停止時および極低速回転時には、磁極の位相を推定できないので、別の方式で磁極の位相が推定される。具体的には、ステータに対してセンシング信号を注入し、このセンシング信号に対するモータの応答が検出される。このモータ応答に基づいて、ロータ回転位置が推定される。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開平10-243699号公報
【特許文献2】特開2009-124811号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
上記のセンサレス駆動方式は、誘起電圧やセンシング信号を用いてロータの回転位置を推定し、その推定によって得られた回転位置に基づいてモータを制御するものである。しかし、この駆動方式は、いずれの用途にも適しているわけではなく、たとえば、車両の舵取り機構に操舵補助力を与える電動パワーステアリング装置その他の車両用操舵装置の駆動源として用いられるブラシレスモータの制御に適用するための手法は未だ確立されていない。そのため、別の方式によるセンサレス制御の実現が望まれている。
【0006】
そこで、この発明の目的は、回転角センサを用いない新たな制御方式でモータを制御することができるモータ制御装置およびそれを備えた車両用操舵装置を提供することである。
【課題を解決するための手段】
【0007】
上記の目的を達成するための請求項1記載の発明は、ロータ(50)と、このロータに対向するステータ(55)とを備えたモータ(3)を制御するためのモータ制御装置(5)であって、制御上の回転角である制御角(θC)に従う回転座標系の軸電流値(Iγ)で前記モータを駆動する電流駆動手段(30,32〜36)と、所定の演算周期毎に、制御角の前回値に加算角を加算することによって、制御角の今回値を求める制御角演算手段(26)と、前記モータによって駆動される駆動対象(2)に加えられる、モータトルク以外のトルク(T)を検出するためのトルク検出手段(1)と、前記駆動対象に作用させるべき指示トルク(T*)を設定する指示トルク設定手段(21)と、前記トルク検出手段によって検出される検出トルクと、前記指示トルク設定手段によって設定される指示トルクとの偏差であるトルク偏差に応じて前記加算角を演算する加算角演算手段(22,23)と、前記トルク偏差に基づいて、前記軸電流値の目標値である指示電流値(Iγ*)を設定するための指示電流設定手段(30,60)とを含み、前記指示電流設定手段は、前記トルク偏差に応じた補正量で、指示電流の前回値を補正することにより、指示電流の今回値を設定するものである、モータ制御装置である。なお、括弧内の英数字は後述の実施形態における対応構成要素等を表すが、むろん、この発明の範囲は当該実施形態に限定されない。以下、この項において同じ。
【0008】
この構成によれば、制御角に従う回転座標系(γδ座標系。以下「仮想回転座標系」といい、この仮想回転座標系の座標軸を「仮想軸」という。)の軸電流値(以下「仮想軸電流値」という。)によってモータが駆動される一方で、制御角は、演算周期毎に加算角を加算することによって更新される。これにより、制御角を更新しながら、すなわち、仮想回転座標系の座標軸(仮想軸)を更新しながら、仮想軸電流値でモータを駆動することによって、必要なトルクを発生させることができる。こうして、回転角センサを用いることなく、モータから適切なトルクを発生させることができる。
【0009】
この発明では、駆動対象に加えられる、モータトルク以外のトルクがトルク検出手段によって検出される。また、駆動対象に作用させるべき指示トルクが指示トルク設定手段によって設定される。そして、加算角演算手段によって、検出トルクと指示トルクとの偏差(トルク偏差)に応じて加算角が演算される。加算角演算手段は、たとえば、検出トルクを指示トルクに一致させるべく、加算角を演算するように動作する。これにより、指示トルクに応じたトルク(モータトルク以外のトルク)が駆動対象に加えられる状態となるように、モータトルクが制御される。モータトルクは、ロータの磁極方向に従う回転座標系(dq座標系)の座標軸と前記仮想軸とのずれ量である負荷角に対応する。負荷角は、制御角とロータ角との差で表される。モータトルクの制御は、負荷角を調整することによって達成され、この負荷角の調整が加算角を制御することによって達成される。
【0010】
さらに、この発明では、指示電流設定手段によって、検出トルクと指示トルクとの偏差(トルク偏差)に応じた補正量で、指示電流の前回値が補正されることにより、指示電流の今回値が設定される。これにより、トルク偏差に応じた補正量で指示電流値を増減できる。このため、検出トルクを指示トルクに速やかに一致させることが可能となるとともに、モータの発熱を抑制することが可能となる。
【0011】
請求項2記載の発明は、前記指示電流設定手段は、前記トルク偏差の絶対値が大きくなるに従って、前記補正量の絶対値が大きくなるように、前記補正量を演算する補正量演算手段(30A,60A,60B,60C)を含む、請求項1に記載のモータ制御装置である。この構成では、トルク偏差の絶対値が大きくなるに従って、補正量の絶対値が大きくされる。
【0012】
駆動対象に対して全体として或るトルクを作用させるべき場合(たとえば、モータトルクによって不足のトルクが補われる場合)、モータトルクが増加することによって、駆動対象に加えられるモータトルク以外のトルクが減少するので、検出トルクが減少することになる。一方、モータトルクが減少すれば、駆動対象に加えられるモータトルク以外のトルクが増加するので、検出トルクが増加することになる。
【0013】
そこで、検出トルクの絶対値が指示トルクの絶対値よりも大きい場合、すなわち、モータトルクが不足している場合には、たとえば、トルク偏差の絶対値が大きいほど指示電流値が増加するように、補正量が演算される。これにより、モータトルクの絶対値が増加し、検出トルクの絶対値が減少するから、検出トルクを指示トルクに速やかに一致させることが可能となる。
【0014】
一方、検出トルクの絶対値が指示トルクの絶対値よりも小さい場合には、たとえば、トルク偏差の絶対値が大きいほど指示電流値が減少するように、補正量が演算される。これにより、指示電流値が減少するので、省電力化が図れるとともにモータの発熱を抑制できる。
つまり、駆動対象に対して全体として或るトルクを作用させるべき場合(たとえば、モータトルクによって不足のトルクが補われる場合)には、前記補正量演算手段は、前記検出トルクの絶対値が前記指示トルクの絶対値よりも大きいときには、前記トルク偏差の絶対値に応じて指示電流値を増加させ、前記検出トルクの絶対値が前記指示トルクの絶対値よりも小さいときには、前記トルク偏差の絶対値に応じて指示電流値を減少させるように、前記補正量を演算する手段(30A,60A,60B,60C)を含むものであってもよい。
【0015】
請求項3記載の発明は、前記指示電流設定手段は、前記トルク偏差の絶対値が所定値(E)未満であるときおよび、前記トルク偏差の絶対値が前記所定値以上であり、かつ前記検出トルクの絶対値が前記指示トルクの絶対値よりも小さいときには、指示電流の前回値を減少させるための補正量を演算する第1補正量演算手段(80A)と、前記トルク偏差の絶対値が前記所定値より大きく、かつ前記検出トルクの絶対値が前記指示トルクの絶対値よりも大きいときには、指示電流の前回値を増加させるための補正量を演算する第2補正量演算手段(80A)とを含む、請求項1に記載のモータ制御装置である。
【0016】
トルク偏差の絶対値が所定値(E)未満であるときおよび、トルク偏差の絶対値が所定値(E)以上であり、かつ検出トルクの絶対値が指示トルクの絶対値よりも小さいときには、指示電流の前回値を減少させるための補正量(「電流減少量」)が演算される。これにより、指示電流値が減少するので、省電力化が図れるとともにモータの発熱を抑制できる。前記所定値(E)は、たとえば、トルク検出手段の検出値のばらつきに応じた値に設定される。
【0017】
一方、トルク偏差の絶対値が前記所定値(E)より大きく、かつ検出トルクの絶対値が指示トルクの絶対値よりも大きいときには、指示電流の前回値を増加させるための補正量(「電流増加量」)が演算される。これにより、モータトルクの絶対値が増加し、検出トルクの絶対値が減少するから、検出トルクを指示トルクに速やかに一致させることが可能となる。
【0018】
請求項4記載の発明は、記指示電流設定手段は、前記検出トルクの絶対値が前記指示トルクの絶対値よりも大きく、かつ前記トルク偏差の絶対値が第1の所定値(E)より大きいときには、指示電流の前回値を増加させるための補正量を演算する手段と、前記検出トルクの絶対値が前記指示トルクの絶対値よりも小さく、かつ前記トルク偏差の絶対値が第2の所定値(H)より大きいときには、指示電流の前回値を増加させるための補正量を演算する手段と、前記検出トルクの絶対値が前記指示トルクの絶対値よりも大きく、かつ前記トルク偏差の絶対値が前記第1の所定値(E)以下であるときおよび前記検出トルクの絶対値が前記指示トルクの絶対値よりも小さく、かつ前記トルク偏差の絶対値が前記第2の所定値(H)以下のときには、指示電流の前回値を減少させるための補正量を演算する手段とを含む、請求項1に記載のモータ制御装置である。
【0019】
検出トルクの絶対値が指示トルクの絶対値よりも大きく、かつトルク偏差の絶対値が第1の所定値(E)以下であるときおよび検出トルクの絶対値が指示トルクの絶対値よりも小さく、かつトルク偏差の絶対値が第2の所定値(H)以下のときには、指示電流の前回値を減少させるための補正量(「電流減少量」)が演算される。これにより、指示電流値が減少するので、省電力化が図れるとともにモータの発熱を抑制できる。前記第1の所定値(E)は、たとえば、トルク検出手段の検出値のばらつきに応じた値に設定される。前記第2の所定値(H)は、たとえば、前記第1の所定値(E)以上の値に設定される。
【0020】
検出トルクの絶対値が指示トルクの絶対値よりも大きく、かつトルク偏差の絶対値が第1の所定値(E)より大きいときには、指示電流の前回値を増加させるための補正量(「電流増加量」)が演算される。これにより、モータトルクの絶対値が増加し、検出トルクの絶対値が減少するから、検出トルクを指示トルクに速やかに一致させることが可能となる。
【0021】
検出トルクの絶対値が指示トルクの絶対値よりも小さく、かつトルク偏差の絶対値が第2の所定値(H)より大きいときには、指示電流の前回値を増加させるための補正量(「電流増加量」)が演算される。これにより、検出トルクの絶対値が指示トルクの絶対値よりも小さくなり、トルク偏差の絶対値が第2の所定値(H)より大きくなった場合においても、モータトルクを発生させることが可能となる。したがって、このモータ制御装置が電動パワーステアリング装置に適用された場合には、切り戻し操舵が行われた場合にも、モータトルク(アシストトルク)を発生させることが可能となり、運転者に適切な操舵感を与えることが可能となる。
【0022】
請求項5記載の発明は、前記指示電流の前回値を減少させる場合の補正量の絶対値が、所定値以下である請求項1、3または4に記載のモータ制御装置である。この構成によれば、モータトルクを低下させる場合に、モータトルクの変化量を低く抑えることができる。
請求項6記載の発明は、ロータ(50)と、このロータに対向するステータ(55)とを備えたモータ(3)を制御するためのモータ制御装置(5)であって、制御上の回転角である制御角(θC)に従う回転座標系の軸電流値(Iγ)で前記モータを駆動する電流駆動手段(70,32〜36)と、所定の演算周期毎に、制御角の前回値に加算角を加算することによって制御角の今回値を求める制御角演算手段(26)と、前記モータによって駆動される駆動対象(2)に加えられる、モータトルク以外のトルク(T)を検出するためのトルク検出手段(1)と、前記駆動対象に作用させるべき指示トルク(T*)を設定する指示トルク設定手段(21)と、前記トルク検出手段によって検出される検出トルクと、前記指示トルク設定手段によって設定される指示トルクとの偏差に応じて前記加算角を演算する加算角演算手段(22,23)と、前記トルク検出手段によって検出される検出トルクの変化量(δT)と、前記加算角演算手段によって演算される加算角(α)との比に基づいて、前記軸電流値の目標値である指示電流値(Iγ*)を設定するための指示電流設定手段(70)とを含み、前記指示電流設定手段は、前記検出トルクの変化量と前記加算角との比に応じた補正量で、指示電流の前回値を補正することにより、指示電流の今回値を設定するものである、モータ制御装置である。
【0023】
この構成によれば、制御角に従う回転座標系(γδ座標系。以下「仮想回転座標系」といい、この仮想回転座標系の座標軸を「仮想軸」という。)の軸電流値(以下「仮想軸電流値」という。)によってモータが駆動される一方で、制御角は、演算周期毎に加算角を加算することによって更新される。これにより、制御角を更新しながら、すなわち、仮想回転座標系の座標軸(仮想軸)を更新しながら、仮想軸電流値でモータを駆動することによって、必要なトルクを発生させることができる。こうして、回転角センサを用いることなく、モータから適切なトルクを発生させることができる。
【0024】
この発明では、駆動対象に加えられる、モータトルク以外のトルクがトルク検出手段によって検出される。また、駆動対象に作用させるべき指示トルクが指示トルク設定手段によって設定される。そして、加算角演算手段によって、検出トルクと指示トルクとの偏差(トルク偏差)に応じて加算角が演算される。加算角演算手段は、たとえば、検出トルクを指示トルクに一致させるべく、加算角を演算するように動作する。これにより、指示トルクに応じたトルク(モータトルク以外のトルク)が駆動対象に加えられる状態となるように、モータトルクが制御される。モータトルクは、ロータの磁極方向に従う回転座標系(dq座標系)の座標軸と前記仮想軸とのずれ量である負荷角に対応する。負荷角は、制御角とロータ角との差で表される。モータトルクの制御は、負荷角を調整することによって達成され、この負荷角の調整が加算角を制御することによって達成される。
【0025】
さらに、この発明では、指示電流設定手段によって、トルク検出手段によって検出される検出トルクの変化量と、加算角演算手段によって演算される加算角との比に基づいて、軸電流値の目標値である指示電流値が設定される。つまり、検出トルクの変化量と加算角との比に応じた補正量で、指示電流の前回値が補正されることにより、指示電流の今回値が設定される。これにより、検出トルクの変化量と加算角との比に応じて軸電流値を制御することができる。したがって、軸電流値に対するモータトルクの効率を向上させることが可能となる。
【0026】
モータトルクの大きさは、たとえば、モータのトルク定数をKT、軸電流値をIγとし、負荷角をθLとすると、KT・IγsinθLで表すことができる。たとえば、加算角に対する検出トルクの変化量の比の絶対値が大きい場合、すなわち、負荷角の変化量に対するモータトルクの変化量が大きい場合には、負荷角θLが0°付近にあると考えられる。負荷角θLが0°付近にある場合には、軸電流に対するモータトルクの効率が低く、負荷角θLが90°(または−90°)付近にある場合には軸電流に対するモータトルクの効率が高い。これは、負荷角θLが90°付近である場合には、ロータにほぼ直交する方向に磁界を発生させることができるからである。負荷角θLが0°付近にある場合に軸電流を減少させると、同じ大きさのモータトルクを発生させるために、負荷角θLが90°付近となるように制御されるため、軸電流値に対するモータトルクの効率を高めることができる。そこで、加算角に対する検出トルクの変化量の比の絶対値が大きい場合には、指示電流を減少させるように補正することにより、軸電流値に対するモータトルクの効率を向上させることができる。
【0027】
一方、加算角に対する検出トルクの変化量の比の絶対値が小さい場合、すなわち、負荷角の変化量に対するモータトルクの変化量が小さい場合には、たとえば、負荷角θLが90°付近にあると考えられる。負荷角θLが90°付近にある場合には、モータトルクが現在の軸電流値でのほぼ最大値に達しており、モータトルク不足により、検出トルクを指示トルクに近づけることができなくなるおそれがある。そこで、加算角に対する検出トルクの変化量の比の絶対値が小さい場合には、指示電流を増加させるように補正することにより、モータトルクを増加させる。これにより、検出トルクを指示トルクに近づけることができるようになる。
【0028】
請求項7記載の発明は、前記指示電流設定手段は、今回演算された前記補正量が指示電流の前回値を減少させるための補正量であるときには、前回の指示電流の減少時点から所定時間(Ts)以上の時間が経過している場合にのみ、今回演算された前記補正量で指示電流の前回値を補正することにより、指示電流の今回値を設定する手段(80B,S14)をさらに含む、請求項1〜6のいずれか一項に記載のモータ制御装置である。
【0029】
指示電流が減少されると、同じ大きさのモータトルクが発生するように、負荷角が制御される。指示電流が減少されてから、同じ大きさのモータトルクが発生される角度に負荷角が収束するより前に、指示電流がさらに減少されると、負荷角が適正値に収束できなくなるおそれがある。
この構成では、今回演算された補正量が指示電流の前回値を減少させるための補正量であるときには、前回の指示電流の減少時点から所定時間(Ts)以上の時間が経過している場合にのみ、今回演算された補正量で指示電流の前回値が補正されることにより、指示電流の今回値が設定される。これにより、指示電流が減少された場合に、負荷角が適正値に収束できなくなる事態を抑制または防止できる。
【0030】
前記所定時間Tsは、指示電流値が減少されてから、同じ大きさのモータトルクが発生される角度に負荷角が収束するのに要する時間の最大値に設定されることが好ましい。
請求項8記載の発明は、前記指示電流設定手段は、ロータが停止しているか否かを判別する判別手段(80B,S15)と、今回演算された前記補正量が指示電流の前回値を減少させるための補正量であるときには、前回の指示電流の減少時点から所定時間(Ts)以上の時間が経過しており、かつ前記判別手段によってロータが停止していると判別された場合にのみ、今回演算された前記補正量で指示電流の前回値を補正することにより、指示電流の今回値を設定する手段(80B,S14〜S16)と、をさらに含む請求項1〜6のいずれか一項に記載のモータ制御装置である。
【0031】
この構成では、請求項7記載の発明と同様な効果が得られる。また、この構成では、今回演算された補正量が指示電流の前回値を減少させるための補正量であっても、ロータが回転しているときには、指示電流は補正されなくなる。これにより、ロータが回転しているときに、指示電流が減少されるのを防止できる。
請求項9記載の発明は、前記モータの誘起電圧を推定する誘起電圧推定手段(37)をさらに含み、前記判別手段は、前記誘起電圧推定手段によって推定された誘起電圧に基づいてロータが停止しているか否かを判別する、請求項8に記載のモータ制御装置である。この構成では、誘起電圧推定手段によって推定された誘起電圧に基づいてロータが停止しているか否かが判別される。
【0032】
請求項10記載の発明は、車両の舵取り機構(2)に駆動力を付与するモータ(3)と、前記モータを制御する請求項1〜9のいずれか一項に記載のモータ制御装置とを含む、車両用操舵装置である。この構成では、検出トルクを指示トルクに速やかに一致させることが可能となる車両用操舵装置が得られる。また、軸電流値に対するモータトルクの効率を向上させることができる車両用操舵装置が得られる。
【0033】
前記モータ制御装置は、前記加算角を所定の制限値(ωmax)で制限する加算角制限手段をさらに含んでいてもよい。加算角に適切な制限を加えることによって、実際のロータの回転に比して過大な加算角が制御角に加算されることを抑制できる。これにより、適切にモータを制御することができる。
前記制限値は、たとえば、次式によって定められた値であってもよい。ただし、次式における「最大ロータ角速度」とは、電気角でのロータ角速度の最大値である。
【0034】
制限値=最大ロータ角速度×演算周期
たとえば、モータの回転を所定の減速比の減速機構を介して車両用操舵装置の操舵軸に伝達している場合には、最大ロータ角速度は、最大操舵角速度(操舵軸の最大回転角速度)×減速比×極対数で与えられる。「極対数」とは、ロータが有する磁極対(N極とS極との対)の数である。
【0035】
前記モータは、車両の舵取り機構(2)に駆動力を付与するものであってもよい。この場合に、前記トルク検出手段は、前記車両の操向のために操作される操作部材(10)に加えられる操舵トルクを検出するものであってもよい。また、前記指示トルク設定手段は、操舵トルクの目標値としての指示操舵トルクを設定するものであってもよい。そして、前記加算角演算手段は、前記指示トルク設定手段によって設定される指示操舵トルクと前記トルク検出手段によって検出される操舵トルクとの偏差に応じて前記加算角を演算するものであってもよい。
【0036】
この構成によれば、指示操舵トルクが設定され、この指示操舵トルクと操舵トルク(検出値)との偏差に応じて前記加算角が演算される。これにより、操舵トルクが当該指示操舵トルクとなるように加算角が定められ、それに応じた制御角が定められることになる。したがって、指示操舵トルクを適切に定めておくことによって、モータから適切な駆動力を発生させて、これを舵取り機構に付与することができる。すなわち、ロータの磁極方向に従う回転座標系(dq座標系)の座標軸と前記仮想軸とのずれ量(負荷角)が指示操舵トルクに応じた値に導かれる。その結果、適切なトルクがモータから発生され、運転者の操舵意図に応じた駆動力を舵取り機構に付与できる。
【0037】
この場合、請求項1記載の発明の前記指示電流設定手段は、前記トルク検出手段によって検出される操舵トルクと、前記指示トルク設定手段によって設定される指示操舵トルクとの偏差に応じた補正量で、指示電流の前回値を補正することにより、指示電流の今回値を設定するものであってもよい。また、請求項6記載の発明の前記指示電流設定手段は、前記トルク検出手段によって検出される操舵トルクの変化量と、前記加算角演算手段によって演算される前記加算角との比に応じた補正量で、指示電流の前回値を補正することにより、指示電流の今回値を設定するものであってもよい。
【0038】
前記モータ制御装置または前記車両用操舵装置は、前記操作部材の操舵角を検出する操舵角検出手段(4)をさらに含み、前記指示トルク設定手段は、前記操舵角検出手段によって検出される操舵角に応じて指示操舵トルクを設定するものであることが好ましい。この構成によれば、操作部材の操舵角に応じて指示操舵トルクが設定されるので、操舵角に応じた適切なトルクをモータから発生させることができ、運転者が操作部材に加える操舵トルクを操舵角に応じた値へと導くことができる。これにより、良好な操舵感を得ることができる。
【0039】
前記指示トルク設定手段は、前記車両の車速を検出する車速検出手段(6)によって検出される当該車速に応じて指示操舵トルクを設定するものであってもよい。この構成によれば、車速に応じて指示操舵トルクが設定されるので、いわゆる車速感応制御を行うことができる。その結果、良好な操舵感を実現できる。たとえば、車速が大きいほど、すなわち、高速走行時ほど指示操舵トルクを小さく設定することより、すぐれた操舵感が得られる。
【図面の簡単な説明】
【0040】
【図1】この発明の第1の実施形態に係るモータ制御装置を適用した電動パワーステアリング装置の電気的構成を説明するためのブロック図である。
【図2】モータの構成を説明するための図解図である。
【図3】前記電動パワーステアリング装置の制御ブロック図である。
【図4】操舵角に対する指示操舵トルクの特性例を示す図である。
【図5】操舵トルクリミッタの働きを説明するための図である。
【図6】図6Aは、指示操舵トルクの符号が正である場合の、トルク偏差に対する電流増減量の設定例を示す図であり、図6Bは、指示操舵トルクの符号が負である場合の、トルク偏差に対する電流増減量の設定例を示す図である。
【図7】加算角リミッタの働きを説明するためのフローチャートである。
【図8】この発明の第2の実施形態に係るモータ制御装置を適用した電動パワーステアリング装置の構成を説明するためのブロック図である。
【図9】この発明の第3の実施形態に係るモータ制御装置を適用した電動パワーステアリング装置の構成を説明するためのブロック図である。
【図10】図10Aは、加算角に対する操舵トルク変化量の比の絶対値に対する電流増減量の設定例を示す図であり、図10Bは、操舵トルク変化量に対する加算角の比の絶対値に対する電流増減量の設定例を示す図であり、図10Cは、指示電流値に対する増減量ゲインの設定例を示す図である。
【図11】指示電流増減量演算部70Aの働きを説明するための説明図である。
【図12】指示電流増減量演算部70Aの働きを説明するための説明図である。
【図13】この発明の第4の実施形態に係るモータ制御装置を適用した電動パワーステアリング装置の構成を説明するためのブロック図である。
【図14】誘起電圧推定部の構成を説明するためのブロック図である。
【図15】図15Aは、指示操舵トルクの符号が正である場合の、トルク偏差に対する電流増減量の設定例を示す図であり、図15Bは、指示操舵トルクの符号が負である場合の、トルク偏差に対する電流増減量の設定例を示す図である。
【図16】指示電流増減量演算部および出力制御部の動作を示すフローチャートである。
【図17】この発明の第5の実施形態に係るモータ制御装置を適用した電動パワーステアリング装置の構成を説明するためのブロック図である。
【図18】図18Aは、指示操舵トルクの符号が正である場合の、トルク偏差に対する電流増減量の設定例を示す図であり、図18Bは、指示操舵トルクの符号が負である場合の、トルク偏差に対する電流増減量の設定例を示す図である。
【発明を実施するための形態】
【0041】
以下では、この発明の実施の形態を、添付図面を参照して詳細に説明する。
図1は、この発明の第1の実施形態に係るモータ制御装置を適用した電動パワーステアリング装置(車両用操舵装置の一例)の電気的構成を説明するためのブロック図である。この電動パワーステアリング装置は、車両を操向するための操作部材としてのステアリングホイール10に加えられる操舵トルクTを検出するトルクセンサ1と、車両の舵取り機構2に減速機構7を介して操舵補助力を与えるモータ3(ブラシレスモータ)と、ステアリングホイール10の回転角である操舵角を検出する舵角センサ4と、モータ3を駆動制御するモータ制御装置5と、当該電動パワーステアリング装置が搭載された車両の速度を検出する車速センサ6とを備えている。舵角センサ4は、ステアリングホイール10の中立位置(基準位置)からのステアリングホイール10の正逆両方向の回転量(回転角)を検出するものであり、中立位置から右方向への回転量を正の値として出力し、中立位置から左方向への回転量を負の値として出力する。
【0042】
モータ制御装置5は、トルクセンサ1が検出する操舵トルク、舵角センサ4が検出する操舵角および車速センサ6が検出する車速に応じてモータ3を駆動することによって、操舵状況および車速に応じた適切な操舵補助を実現する。
モータ3は、この実施形態では、三相ブラシレスモータであり、図2に図解的に示すように、界磁としてのロータ50と、このロータ50に対向するステータ55に配置されたU相、V相およびW相のステータ巻線51,52,53とを備えている。モータ3は、ロータの外部にステータを対向配置したインナーロータ型のものであってもよいし、筒状のロータの内部にステータを対向配置したアウターロータ型のものであってもよい。
【0043】
各相のステータ巻線51,52,53の方向にU軸、V軸およびW軸をとった三相固定座標(UVW座標系)が定義される。また、ロータ50の磁極方向にd軸(磁極軸)をとり、ロータ50の回転平面内においてd軸と直角な方向にq軸(トルク軸)をとった二相回転座標系(dq座標系。実回転座標系)が定義される。dq座標系は、ロータ50とともに回転する回転座標系である。dq座標系では、q軸電流のみがロータ50のトルク発生に寄与するので、d軸電流を零とし、q軸電流を所望のトルクに応じて制御すればよい。ロータ50の回転角(ロータ角)θMは、U軸に対するd軸の回転角である。dq座標系は、ロータ角θMに従う実回転座標系である。このロータ角θMを用いることによって、UVW座標系とdq座標系との間での座標変換を行うことができる。
【0044】
一方、この実施形態では、制御上の回転角を表す制御角θCが導入される。制御角θCは、U軸に対する仮想的な回転角である。この制御角θCに対応する仮想的な軸をγ軸とし、このγ軸に対して90°進んだ軸をδ軸として、仮想二相回転座標系(γδ座標系。仮想回転座標系)を定義する。制御角θCがロータ角θMに等しいとき、仮想回転座標系であるγδ座標系と実回転座標系であるdq座標系とが一致する。すなわち、仮想軸としてのγ軸は実軸としてのd軸と一致し、仮想軸としてのδ軸は実軸としてのq軸と一致する。γδ座標系は、制御角θCに従う仮想回転座標系である。UVW座標系とγδ座標系との座標変換は、制御角θCを用いて行うことができる。
【0045】
制御角θCとロータ角θMとの差を負荷角θL(=θC−θM)と定義する。
制御角θCに従ってγ軸電流Iγをモータ3に供給すると、このγ軸電流Iγのq軸成分(q軸への正射影)がロータ50のトルク発生に寄与するq軸電流Iqとなる。すなわち、γ軸電流Iγとq軸電流Iqとの間に、次式(1)の関係が成立する。
Iq=Iγ・sinθL …(1)
再び図1を参照する。モータ制御装置5は、マイクロコンピュータ11と、このマイクロコンピュータ11によって制御され、モータ3に電力を供給する駆動回路(インバータ回路)12と、モータ3の各相のステータ巻線に流れる電流を検出する電流検出部13とを備えている。
【0046】
電流検出部13は、モータ3の各相のステータ巻線51,52,53に流れる相電流IU,IV,IW(以下、総称するときには「三相検出電流IUVW」という。)を検出する。これらは、UVW座標系における各座標軸方向の電流値である。
マイクロコンピュータ11は、CPUおよびメモリ(ROMおよびRAMなど)を備えており、所定のプログラムを実行することによって、複数の機能処理部として機能するようになっている。この複数の機能処理部には、操舵トルクリミッタ20と、指示操舵トルク設定部21と、トルク偏差演算部22と、PI(比例積分)制御部23と、加算角リミッタ24と、制御角演算部26と、指示電流値生成部30と、電流偏差演算部32と、PI制御部33と、γδ/UVW変換部34と、PWM(Pulse Width Modulation)制御部35と、UVW/γδ変換部36とが含まれている。
【0047】
指示操舵トルク設定部21は、舵角センサ4によって検出される操舵角と、車速センサ6によって検出される車速とに基づいて、指示操舵トルクT*を設定する。たとえば、図4に示すように、操舵角が正の値(右方向へ操舵した状態)のとき指示操舵トルクT*は正の値(右方向へのトルク)に設定され、操舵角が負の値(左方向へ操舵した状態)のとき指示操舵トルクT*は負の値(左方向へのトルク)に設定される。そして、操舵角の絶対値が大きくなるに従って、その絶対値が大きくなるように(図4の例では非線型に大きくなるように)指示操舵トルクT*が設定される。ただし、所定の上限値(正の値。たとえば、+6Nm)および下限値(負の値。たとえば−6Nm)の範囲内で指示操舵トルクT*の設定が行われる。また、指示操舵トルクT*は、車速が大きいほど、その絶対値が小さくなるように設定される。すなわち、車速感応制御が行われる。
【0048】
操舵トルクリミッタ20は、トルクセンサ1の出力を所定の上限飽和値+Tmax(+Tmax>0。たとえば+Tmax=7Nm)と下限飽和値−Tmax(−Tmax<0。たとえば−Tmax=−7Nm)との間に制限する。具体的には、操舵トルクリミッタ20は、図5に示すように、上限飽和値+Tmaxと下限飽和値−Tmaxの間では、トルクセンサ1の検出操舵トルクTをそのまま出力する。また、操舵トルクリミッタ20は、トルクセンサ1の検出操舵トルクTが上限飽和値+Tmax以上であれば、上限飽和値+Tmaxを出力する。そして、操舵トルクリミッタ20は、トルクセンサ1の検出操舵トルクTが下限飽和値−Tmax以下であれば、下限飽和値−Tmaxを出力する。飽和値+Tmaxおよび−Tmaxは、トルクセンサ1の出力信号が安定な領域(信頼性のある領域)の境界を画定するものである。つまり、トルクセンサ1の出力信号は、上限飽和値Tmaxを超える区間、および下限飽和値−Tmaxを下回る区間では不安定であり、実際の操舵トルクに対応しなくなる。換言すれば、飽和値+Tmax,−Tmaxは、トルクセンサ1の出力特性に応じて定められる。
【0049】
トルク偏差演算部22は、指示操舵トルク設定部21によって設定される指示操舵トルクT*と、トルクセンサ1によって検出され、操舵トルクリミッタ20による制限処理を受けた操舵トルクT(以下、区別するために「検出操舵トルクT」という。)との偏差(トルク偏差)ΔT(=T−T*)を求める。PI制御部23は、このトルク偏差ΔTに対するPI演算を行う。すなわち、トルク偏差演算部22およびPI制御部23によって、検出操舵トルクTを指示操舵トルクT*に導くためのトルクフィードバック制御手段が構成されている。PI制御部23は、トルク偏差ΔTに対するPI演算を行うことで、制御角θCに対する加算角αを演算する。したがって、前記トルクフィードバック制御手段は、加算角αを演算する加算角演算手段を構成している。
【0050】
加算角リミッタ24は、PI制御部23によって求められた加算角αに対して制限を加える。より具体的には、加算角リミッタ24は、所定の上限値UL(正の値)と下限値LL(負の値)との間の値に加算角αを制限する。上限値ULおよび下限値LLは、所定の制限値ωmax(ωmax>0。たとえばωmaxの既定値=45度)に基づいて定められる。この所定の制限値ωmaxの既定値は、たとえば、最大操舵角速度に基づいて定められる。最大操舵角速度とは、ステアリングホイール10の操舵角速度として想定され得る最大値であり、たとえば、800deg/sec程度である。
【0051】
最大操舵角速度のときのロータ50の電気角の変化速度(電気角での角速度。最大ロータ角速度)は、次式(2)のとおり、最大操舵角速度と、減速機構7の減速比と、ロータ50の極対数との積で与えられる。極対数とは、ロータ50が有する磁極対(N極とS極との対)の個数である。
最大ロータ角速度=最大操舵角速度×減速比×極対数 …(2)
制御角θCの演算間(演算周期)におけるロータ50の電気角変化量の最大値(ロータ角変化量最大値)は、次式(3)のとおり、最大ロータ角速度に演算周期を乗じた値となる。
【0052】
ロータ角変化量最大値=最大ロータ角速度×演算周期
=最大操舵角速度×減速比×極対数×演算周期 …(3)
このロータ角変化量最大値が一演算周期間で許容される制御角θCの最大変化量である。そこで、前記ロータ角変化量最大値を制限値ωmaxの既定値とすればよい。この制限値ωmaxを用いて、加算角αの上限値ULおよび下限値LLは、それぞれ次式(4)(5)で表すことができる。
【0053】
UL=+ωmax …(4)
LL=−ωmax …(5)
加算角リミッタ24による制限処理後の加算角αが、制御角演算部26の加算器26Aにおいて、制御角θCの前回値θC(n-1)(nは今演算周期の番号)に加算される(Z−1は信号の前回値を表す)。ただし、制御角θCの初期値は予め定められた値(たとえば零)である。
【0054】
制御角演算部26は、制御角θCの前回値θC(n-1)に加算角変更部25から与えられる加算角αを加算する加算器26Aを含む。すなわち、制御角演算部26は、所定の演算周期毎に制御角θCを演算する。そして、前演算周期における制御角θCを前回値θC(n-1)とし、これを用いて今演算周期における制御角θCである今回値θC(n)を求める。
指示電流値生成部30は、制御上の回転角である前記制御角θCに対応する仮想回転座標系であるγδ座標系の座標軸(仮想軸)に流すべき電流値を指示電流値として生成するものである。具体的には、γ軸指示電流値Iγ*およびδ軸指示電流値Iδ*(以下、これらを総称するときには「二相指示電流値Iγδ*」という。)を生成する。指示電流値生成部30は、γ軸指示電流値Iγ*を有意値とする一方で、δ軸指示電流値Iδ*を零とする。より具体的には、指示電流値生成部30は、指示操舵トルク設定部21によって設定される指示操舵トルクT*と、トルクセンサ1によって検出される検出操舵トルクTに基づいてγ軸指示電流値Iγ*を設定する。つまり、指示電流値生成部30は、二相指示電流値Iγδ*を設定するための指示電流設定手段である。
【0055】
指示電流値生成部30は、指示電流増減量演算部30Aと、加算器30Bと、上下限リミッタ30Cとを含んでいる。指示電流増減量演算部30Aは、所定の演算周期毎に、指示操舵トルクT*と検出操舵トルクTに基づいて、指示電流値Iγ*に対する電流増減量ΔIγ*を演算する。具体的には、指示電流増減量演算部30Aは、指示操舵トルクT*の符号と、指示操舵トルクT*と検出操舵トルクTとの偏差ΔT(=T−T*)とに基づいて、電流増減量ΔIγ*を演算する。
【0056】
指示電流増減量演算部30Aによる電流増減量ΔIγ*の演算方法の基本的な考え方について説明する。トルク偏差ΔTの絶対値が所定値A(A>0,図6Aおよび図6B参照)以下である場合には、現在の指示電流値Iγ*を維持させるために、電流増減量ΔIγ*を零とする。トルク偏差ΔTの絶対値が所定値Aより大きくかつ検出操舵トルクTの絶対値が指示操舵トルクT*の絶対値よりも大きい場合には、アシストトルク不足を補うために、指示電流値Iγ*を零より大きな値とする。これにより、指示電流値Iγ*が増加する。一方、トルク偏差ΔTの絶対値が所定値Aより大きくかつ検出操舵トルクTの絶対値が指示操舵トルクT*の絶対値よりも小さい場合には、省電力化を図るとともにモータの発熱を抑制するために、指示電流値Iγ*を零より小さな値とする。これにより、指示電流値Iγ*が減少する。
【0057】
指示操舵トルクT*の符号が正(T*≧0)である場合の、トルク偏差ΔTに対する電流増減量ΔIγ*の設定例は、図6Aに示されている。トルク偏差ΔTが所定値−A(A>0)以上でかつ所定値+A以下の範囲では、電流増減量ΔIγ*は零に設定される。そして、トルク偏差ΔTが所定値−Aより小さくなるに従って、その値が零より小さくなるように(図6Aの例ではリニアに小さくなるように)電流増減量ΔIγ*が設定される。また、トルク偏差ΔTが所定値+Aより大きくなるに従って、その値が零より大きくなるように(図6Aの例ではリニアに大きくなるように)電流増減量ΔIγ*が設定される。
【0058】
指示操舵トルクT*の符号が正(T*≧0)である場合において、トルク偏差ΔT(=T−T*)が零以上である場合とは、検出操舵トルクTの絶対値が指示操舵トルクT*の絶対値よりも大きい場合である。従って、この場合には、モータトルク(アシストトルク)が不足していると考えられる。そこで、トルク偏差ΔTが所定値+Aより大きい場合には、アシストトルク不足を補うように、電流増減量ΔIγ*が正の値にされている。この場合、トルク偏差ΔTの絶対値が大きいほど、電流増減量ΔIγ*の絶対値も大きくなる(絶対値の大きな正の値となる)。
【0059】
一方、トルク偏差ΔT(=T−T*)が零より小さい場合とは、検出操舵トルクTの絶対値が指示操舵トルクT*の絶対値よりも小さい場合である。従って、この場合には、アシストトルクが不足していないと考えられる。そこで、トルク偏差ΔTが所定値−A未満の場合には、省電力化を図るとともにモータの発熱を抑制するために、電流増減量ΔIγ*が負の値にされている。この場合、トルク偏差ΔTの絶対値が大きいほど、電流増減量ΔIγ*の絶対値も大きくなる(絶対値の大きな負の値となる)。
【0060】
指示操舵トルクT*の符号が負(T*<0)である場合の、トルク偏差ΔTに対する電流増減量ΔIγ*の設定例は、図6Bに示されている。トルク偏差ΔTが所定値−A以上でかつ所定値+A以下の範囲では、電流増減量ΔIγ*は零に設定される。そして、トルク偏差ΔTが所定値−Aより小さくなるに従って、その値が零より大きくなるように(図6Bの例ではリニアに大きくなるように)電流増減量ΔIγ*が設定される。また、トルク偏差ΔTが所定値+Aより大きくなるに従って、その値が零より小さくなるように(図6Bの例ではリニアに小さくなるように)電流増減量ΔIγ*が設定される。
【0061】
指示操舵トルクT*の符号が負(T*<0)である場合において、トルク偏差ΔT(=T−T*)が零以上である場合とは、検出操舵トルクTの絶対値が指示操舵トルクT*の絶対値よりも小さい場合である。この場合には、アシストトルクが不足していないと考えられる。そこで、トルク偏差ΔTが所定値+Aより大きい場合には、省電力化を図るとともにモータの発熱を抑制するために、電流増減量ΔIγ*が負の値にされている。この場合、トルク偏差ΔTの絶対値が大きいほど、電流増減量ΔIγ*の絶対値も大きくなる(絶対値の大きな負の値となる)。
【0062】
一方、トルク偏差ΔT(=T−T*)が零より小さい場合とは、検出操舵トルクTの絶対値が指示操舵トルクT*の絶対値よりも大きい場合である。従って、この場合には、アシストトルクが不足していると考えられる。そこで、トルク偏差ΔTが所定値−A未満である場合には、アシストトルク不足を補うように、電流増減量ΔIγ*が正の値にされている。この場合、トルク偏差ΔTの絶対値が大きいほど、電流増減量ΔIγ*の絶対値も大きくなる(絶対値の大きな正の値となる)。
【0063】
指示電流増減量演算部30Aによって演算された電流増減量ΔIγ*は、加算器30Bにおいて、指示電流値Iγ*の前回値Iγ*(n-1)(nは今演算周期の番号)に加算される(Z−1は信号の前回値を表す)。これにより、今演算周期での指示電流値Iγ*が演算される。ただし、指示電流値Iγ*の初期値は予め定められた値(例えば零)である。加算器30Bによって得られた指示電流値Iγ*は、上下限リミッタ30Cに与えられる。上下限リミッタ30Cは、加算器30Bによって得られた指示電流値Iγ*を、所定の下限値ξmin(ξmin≧0)と上限値ξmax(ξmax>ξmin)との間の値に制限する。
【0064】
つまり、加算器30Bによって得られた指示電流値Iγ*が、下限値ξmin以上でかつ上限値ξmax以下であるときには、上下限リミッタ30Cは、当該指示電流値Iγ*をそのまま出力する。加算器30Bによって得られた指示電流値Iγ*が下限値ξminより小さいときには、上下限リミッタ30Cは、下限値ξminを今演算周期の指示電流値Iγ*として出力する。加算器30Bによって得られた指示電流値Iγ*が上限値ξmaxより大きいときには、上下限リミッタ30Cは、上限値ξmaxを今演算周期の指示電流値Iγ*として出力する。
【0065】
電流偏差演算部32は、指示電流値生成部30によって生成されたγ軸指示電流値Iγ*に対するγ軸検出電流Iγの偏差Iγ*−Iγと、δ軸指示電流値Iδ*(=0)に対するδ軸検出電流Iδの偏差Iδ*−Iδとを演算する。γ軸検出電流Iγおよびδ軸検出電流Iδは、UVW/γδ変換部36から偏差演算部32に与えられるようになっている。
【0066】
UVW/γδ変換部36は、電流検出部13によって検出されるUVW座標系の三相検出電流IUVW(U相検出電流IU、V相検出電流IVおよびW相検出電流IW)をγδ座標系の二相検出電流IγおよびIδ(以下総称するときには「二相検出電流Iγδ」という。)に変換する。これらが電流偏差演算部32に与えられるようになっている。UVW/γδ変換部36における座標変換には、制御角演算部26で演算される制御角θCが用いられる。
【0067】
PI制御部33は、電流偏差演算部32によって演算された電流偏差に対するPI演算を行うことにより、モータ3に印加すべき二相指示電圧Vγδ*(γ軸指示電圧Vγ*およびδ軸指示電圧Vδ*)を生成する。この二相指示電圧Vγδ*が、γδ/UVW変換部34に与えられる。
γδ/UVW変換部34は、二相指示電圧Vγδ*に対して座標変換演算を行うことによって、三相指示電圧VUVW*を生成する。この座標変換には、制御角演算部26で演算された制御角θCが用いられる。三相指示電圧VUVW*は、U相指示電圧VU*、V相指示電圧VV*およびW相指示電圧VW*からなる。この三相指示電圧VUVW*は、PWM制御部35に与えられる。
【0068】
PWM制御部35は、U相指示電圧VU*、V相指示電圧VV*およびW相指示電圧VW*にそれぞれ対応するデューティのU相PWM制御信号、V相PWM制御信号およびW相PWM制御信号を生成し、駆動回路12に供給する。
駆動回路12は、U相、V相およびW相に対応した三相インバータ回路からなる。このインバータ回路を構成するパワー素子がPWM制御部35から与えられるPWM制御信号によって制御されることにより、三相指示電圧VUVW*に相当する電圧がモータ3の各相のステータ巻線51,52、53に印加されることになる。
【0069】
電流偏差演算部32およびPI制御部33は、電流フィードバック制御手段を構成している。この電流フィードバック制御手段の働きによって、モータ3に流れるモータ電流が、指示電流値生成部30によって設定された二相指示電流値Iγδ*に近づくように制御される。
図3は、前記電動パワーステアリング装置の制御ブロック図である。ただし、説明を簡単にするために、加算角リミッタ24の機能は省略してある。
【0070】
指示操舵トルクT*と検出操舵トルクTとの偏差(トルク偏差)ΔTに対するPI制御(KPは比例係数、KIは積分係数、1/sは積分演算子である。)によって、加算角αが生成される。この加算角αが制御角θCの前回値θC(n-1)に対して加算されることによって、制御角θCの今回値θC(n)=θC(n-1)+αが求められる。このとき、制御角θCとロータ50の実際のロータ角θMとの偏差が負荷角θL=θC−θMとなる。
【0071】
したがって、制御角θCに従うγδ座標系(仮想回転座標系)のγ軸(仮想軸)にγ軸指示電流値Iγ*に従ってγ軸電流Iγが供給されると、q軸電流Iq=IγsinθLとなる。このq軸電流Iqがロータ50の発生トルクに寄与する。すなわち、モータ3のトルク定数KTをq軸電流Iq(=IγsinθL)に乗じた値が、アシストトルクTA(=KT・IγsinθL)として、減速機構7を介して、舵取り機構2に伝達される。このアシストトルクTAを舵取り機構2からの負荷トルクTLから減じた値が、運転者がステアリングホイール10に与えるべき操舵トルクTである。この操舵トルクTがフィードバックされることによって、この操舵トルクTを指示操舵トルクT*に導くように系が動作する。つまり、検出操舵トルクTを指示操舵トルクT*に一致させるべく、加算角αが求められ、それに応じて制御角θCが制御される。
【0072】
このように制御上の仮想軸であるγ軸に電流を流す一方で、指示操舵トルクT*と検出操舵トルクTとの偏差ΔTに応じて求められる加算角αで制御角θCを更新していくことにより、負荷角θLが変化し、この負荷角θLに応じたトルクがモータ3から発生するようになっている。これにより、操舵角および車速に基づいて設定される指示操舵トルクT*に応じたトルクをモータ3から発生させることができるので、操舵角および車速に対応した適切な操舵補助力を舵取り機構2に与えることができる。すなわち、操舵角の絶対値が大きいほど操舵トルクが大きく、かつ、車速が大きいほど操舵トルクが小さくなるように、操舵補助制御が実行される。
【0073】
このようにして、回転角センサを用いることなくモータ3を適切に制御して、適切な操舵補助を行うことができる電動パワーステアリング装置を実現できる。これにより、構成を簡単にすることができ、コストの削減を図ることができる。
図7は、加算角リミッタ24の働きを説明するためのフローチャートである。加算角リミッタ24は、PI制御部23によって求められた加算角αを上限値ULと比較し(ステップS1)、加算角αが上限値ULを超えている場合(ステップS1:YES)には、上限値ULを加算角αに代入する(ステップS2)。したがって、制御角θCに対して上限値UL(=+ωmax)が加算されることになる。
【0074】
PI制御部23によって求められた加算角αが上限値UL以下であれば(ステップS1:NO)、加算角リミッタ24は、さらに、その加算角αを下限値LLと比較する(ステップS3)。そして、その加算角αが下限値未満であれば(ステップS3:YES)、下限値LLを加算角αに代入する(ステップS4)。したがって、制御角θCに対して下限値LL(=−ωmax)が加算されることになる。
【0075】
PI制御部23によって求められた加算角αが下限値LL以上上限値UL以下(ステップS3:NO)であれば、その加算角αがそのまま制御角θCへの加算のために用いられる。
このようにして、加算角αを上限値ULと下限値LLとの間に制限することができるので、制御の安定化を図ることができる。より具体的には、電流不足時や制御開始時に制御不安定状態(アシスト力が不安定な状態)が発生しても、この状態から安定な制御状態への遷移を促すことができる。
【0076】
前記第1の実施形態では、検出操舵トルクTの絶対値が指示操舵トルクT*の絶対値よりも大きいときには、すなわち、アシストトルクが不足している場合には、指示電流値生成部30内の指示電流増減量演算部30Aによって演算される電流増減量ΔIγ*は正の値となる。この場合、トルク偏差ΔTの絶対値が大きいほど、電流増減量ΔIγ*の絶対値も大きな値(絶対値の大きい正の値)となる。そして、この電流増減量ΔIγ*が加算器30Bによって指示電流値Iγ*の前回値に加算されるので、今演算周期での指示電流値Iγ*が増加する。この結果、アシストトルク不足が補われるから、操舵トルクTを指示操舵トルクT*に迅速に導くことができるようになる。
【0077】
一方、検出操舵トルクTの絶対値が指示操舵トルクT*の絶対値よりも小さいときには、指示電流増減量演算部30Aによって演算される電流増減量ΔIγ*が負の値となる。この場合、トルク偏差ΔTの絶対値が大きいほど、電流増減量ΔIγ*の絶対値も大きい値(絶対値の大きい負の値)となる。そして、この電流増減量ΔIγ*が加算器30Bによって指示電流値Iγ*の前回値に加算されるので、今演算周期での指示電流値Iγ*が減少する。これにより、省電力化が図れるとともにモータの発熱を抑制することができる。
【0078】
また加算器30Bによって得られた指示電流値Iγ*は、上下限リミッタ30Cによって制限されるので、指示電流値Iγ*が過大になるのを防止できる。これにより、適切なトルク制御を実現できる。
図8は、この発明の第2の実施形態に係るモータ制御装置を適用した電動パワーステアリング装置の構成を説明するためのブロック図である。この図8において、前述の図1の各部に対応する部分には図1と同じ符号を付して示す。
【0079】
この実施形態では、図1に示されている指示電流値生成部30の代わりに、指示電流値生成部60が設けられている。指示電流値生成部60は、γ軸指示電流値Iγ*を有意値とする一方で、δ軸指示電流値Iδ*を零とする。より具体的には、指示電流値生成部60は、指示操舵トルク設定部21によって設定される指示操舵トルクT*と、トルク偏差演算部22によって演算されるトルク偏差ΔTとに基づいてγ軸指示電流値Iγ*を設定する。なお、トルク偏差演算部22は、指示操舵トルク設定部21によって設定される指示操舵トルクT*と、トルクセンサ1によって検出され、操舵トルクリミッタ20による制限処理を受けた操舵トルクT(検出操舵トルクT)との偏差ΔT(=T−T*)を求める。
【0080】
指示電流値生成部60は、第1のPI制御部60Aと、第2のPI制御部60Bと、切替部60Cと、加算器60Dと、上下限リミッタ60Eとを含んでいる。
第1のPI制御部60Aは、指示操舵トルクT*の符号が正であると仮定して、トルク偏差ΔTに対するPI制御を行なうことで、指示電流値Iγ*に対する電流増減量ΔIγ*を演算する。そして、第1のPI制御部60Aは、指示操舵トルクT*の符号が正である場合に、トルク偏差ΔTが零になるように、電流増減量ΔIγ*をフィードバック制御する。つまり、第1のPI制御部60Aは、指示操舵トルクT*の符号が正(T*≧0)である場合において、トルク偏差ΔT(=T−T*)が零以上であるとき(アシストトルクが不足している場合)には、偏差ΔTを零に近づけるために、正の値の電流増減量ΔIγ*を演算し、トルク偏差ΔTが零より小さいときには、偏差ΔTを零に近づけるために、負の値の電流増減量ΔIγ*を演算することになる。いずれの場合も、電流増減量ΔIγ*の絶対値は、トルク偏差ΔTの絶対値が大きくなるほど大きくなる。
【0081】
第2のPI制御部60Bは、指示操舵トルクT*の符号が負であると仮定して、トルク偏差ΔTに対するPI制御を行なうことで、指示電流値Iγ*に対する電流増減量ΔIγ*を演算する。そして、第2のPI制御部60Bは、指示操舵トルクT*の符号が負である場合に、トルク偏差ΔTが零になるように、電流増減量ΔIγ*をフィードバック制御する。つまり、第2のPI制御部60Aは、指示操舵トルクT*の符号が負(T*<0)である場合において、トルク偏差ΔT(=T−T*)が零以上のときには、偏差ΔTを零に近づけるために、負の値の電流増減量ΔIγ*を演算し、トルク偏差ΔTが零より小さいとき(アシストトルクが不足している場合)には、偏差ΔTを零に近づけるために、正の値の電流増減量ΔIγ*を演算することになる。いずれの場合も、電流増減量ΔIγ*の絶対値は、トルク偏差ΔTの絶対値が大きくなるほど大きくなる。
【0082】
切替部60Cは、第1のPI制御部60Aによって演算される電流増減量ΔIγ*と、第2のPI制御部60Bによって演算される電流増減量ΔIγ*とを、指示操舵トルクT*の符号に応じて切換えて出力する。具体的には、切替部60Cは、指示操舵トルクT*の符号が正であるときには、第1のPI制御部60Aによって演算される電流増減量ΔIγ*を選択して出力する。一方、指示操舵トルクT*の符号が負であるときには、切替部60Cは、第2のPI制御部60Bによって演算される電流増減量ΔIγ*を選択して出力する。
【0083】
切替部60Cから出力された電流増減量ΔIγ*は、加算器60Dにおいて、指示電流値Iγ*の前回値Iγ*(n-1)(nは今演算周期の番号)に加算される(Z−1は信号の前回値を表す)。これにより、今演算周期での指示電流値Iγ*が演算される。ただし、指示電流値Iγ*の初期値は予め定められた値(例えば零)である。加算器60Dによって得られた指示電流値Iγ*は、上下限リミッタ60Eに与えられる。上下限リミッタ60Eは、加算器60Dによって得られた指示電流値Iγ*を、所定の下限値ξmin(ξmin≧0)と上限値ξmax(ξmax>ξmin)との間の値に制限する。
【0084】
つまり、加算器60Dによって得られた指示電流値Iγ*が、下限値ξmin以上でかつ上限値ξmax以下であるときには、上下限リミッタ60Eは、当該指示電流値Iγ*をそのまま出力する。加算器60Dによって得られた指示電流値Iγ*が下限値ξminより小さいときには、上下限リミッタ60Eは、下限値ξminを今演算周期の指示電流値Iγ*として出力する。加算器60Dによって得られた指示電流値Iγ*が上限値ξmaxより大きいときには、上下限リミッタ60Eは、上限値ξmaxを今演算周期の指示電流値Iγ*として出力する。この第2の実施形態においても、前記第1の実施形態と同様な効果が得られる。
【0085】
図9は、この発明の第3の実施形態に係るモータ制御装置を適用した電動パワーステアリング装置の構成を説明するためのブロック図である。この図9において、前述の図1の各部に対応する部分には図1と同じ符号を付して示す。
この実施形態では、図1に示されている指示電流値生成部30の代わりに、指示電流値生成部70が設けられている。指示電流値生成部70は、γ軸指示電流値Iγ*を有意値とする一方で、δ軸指示電流値Iδ*を零とする。具体的には、指示電流値生成部70は、トルクセンサ1によって検出され、操舵トルクリミッタ20の制限処理を受けた操舵トルクT(検出操舵トルクT)と、PI制御部23によって演算され、加算角リミッタ24による制限を受けた加算角αとに基づいて、γ軸指示電流値Iγ*を設定する。
【0086】
より具体的には、指示電流値生成部70は、検出操舵トルクTの変化量δT(以下、「操舵トルク変化量δT」という)と加算角αとの比に基づいて、γ軸指示電流値Iγ*を設定する。操舵トルク変化量δTは、今演算周期での検出操舵トルクT(n)から、前演算周期での検出操舵トルクT(n-1)を減算することによって求めることができる。
指示電流値生成部70は、指示電流増減量演算部70Aと、加算器70Bと、上下限リミッタ70Cとを含んでいる。
【0087】
指示電流増減量演算部70Aは、加算角αに対する操舵トルク変化量δTの比の絶対値|δT/α|と、操舵トルク変化量δTに対する加算角αの比の絶対値|α/δT|と、現在の指示電流値Iγ*(指示電流値Iγ*の前回値)とに基づいて、指示電流値Iγ*に対する電流増減量ΔIγ*を演算する。加算角αに対する操舵トルク変化量δTの比δT/αは、今演算周期において演算された操舵トルク変化量δTを、前演算周期または今演算周期においてPI制御部23によって演算され、加算角リミッタ24の制限処理を受けた加算角αで除算することによって求めることができる。操舵トルク変化量δTに対する加算角αの比α/δTは、前演算周期または今演算周期においてPI制御部23によって演算され、加算角リミッタ24の制限処理を受けた加算角αを、今演算周期において演算された操舵トルク変化量δTで除算することによって求めることができる。
【0088】
指示電流増減量演算部70Aは、次のようにして、指示電流値Iγ*に対する電流増減量ΔIγ*を演算する。加算角αに対する操舵トルク変化量δTの比の絶対値|δT/α|と電流増減量ΔIγ*との関係が予め設定されている。また、操舵トルク変化量δTに対する加算角αの比の絶対値|α/δT|と電流増減量ΔIγ*との関係が予め設定されている。さらに、現在の指示電流値Iγ*と増減量ゲインGとの関係が予め設定されている。
【0089】
操舵トルク変化量δTに対する加算角αの比α/δTの分母であるδTが零付近の小さい値のときには、この比α/δTの演算値には誤差が発生しやすい。そこで、指示電流増減量演算部70Aは、もう一つの比の絶対値|δT/α|に基づいて、電流増減量ΔIγ*の基本値を演算する。そして、指示電流増減量演算部70Aは、この基本値に現在の指示電流値Iγ*に応じた増減量ゲインGを乗算することにより、最終的な電流増減量ΔIγ*を演算する。
【0090】
一方、加算角αに対する操舵トルク変化量δTの比δT/αの分母であるαが零付近の小さい値のときには、この比δT/αの演算値には誤差が発生しやすい。そこで、指示電流増減量演算部70Aは、もう一つの比の絶対値|α/δT|に基づいて、電流増減量ΔIγ*の基本値を演算する。そして、指示電流増減量演算部70Aは、この基本値に現在の指示電流値Iγ*に応じた増減量ゲインGを乗算することにより、最終的な電流増減量ΔIγ*を演算する。
【0091】
図10Aは、加算角αに対する操舵トルク変化量δTの比の絶対値|δT/α|に対する電流増減量ΔIγ*の設定例を示している。前記絶対値|δT/α|が所定値B(B>0)以上で所定値C(C>B)以下の範囲内にある場合には、電流増減量ΔIγ*は零に設定される。そして、前記絶対値|δT/α|が所定値Cより大きくなるに従って、その値が零より減少するように(図10Aの例ではリニアに小さくなるように)、電流増減量ΔIγ*が設定される。また、前記絶対値|δT/α|が所定値Bより小さくなるに従って、その値が零より増加するように(図10Aの例ではリニアに大きくなるように)、電流増減量ΔIγ*が設定される。電流増減量ΔIγ*に関して図10Aに示すような設定が行われている理由について説明する。
【0092】
図11は、負荷角θLとアシストトルクTAとの関係を示している。図2を用いて説明したように、q軸電流Iqは、負荷角θLとγ軸電流Iγを用いて、Iq=IγsinθL(θL=θC―θM)で与えられる。アシストトルクTAは、モータ3のトルク定数KTをq軸電流Iqに乗じた値となる。したがって、負荷角θLに対するアシストトルクTAの変化は、図11に示すような曲線(サインカーブ)となる。図11において、曲線S1はγ軸電流Iγが比較的大きい場合の特性を示し、曲線S2はγ軸電流Iγが比較的小さい場合の特性を示している。本実施形態では、PI制御部23は、アシストトルクが単調に増加する区間である0°≦θL≦90°の区間および270゜≦θL≦360°の区間(以下、「−90°≦θL≦90°の区間」という)内で負荷角θLが制御されるように動作するものとする。なお、PI制御部23は、アシストトルクが単調に減少する区間である90°≦θL≦270°の区間で負荷角θLが制御されるように動作するものであってもよい。
【0093】
加算角αに対する操舵トルク変化量δTの比の絶対値|δT/α|が大きい場合とは、負荷角θLの変化量に対するアシストトルクTAの変化量が大きい場合である。したがって、負荷角θLが0°付近にあると考えられる。たとえば、アシストトルク特性が図11の曲線S1で表される場合、曲線S1上で負荷角θLが0°付近の点aの勾配(比δT/αに対応する)は、90°付近の点bの勾配より大きくなる。
【0094】
負荷角θLが0°付近にある場合には、γ軸電流Iγに対するアシストトルクTAの効率が低く、負荷角θLが90°(または−90°)付近にある場合には、γ軸電流Iγに対するアシストトルクTAの効率が高い。これは、負荷角θLが90°付近にある場合には、ロータ50にほぼ直交する方向にコイルの磁界を発生させることができるためである。負荷角θLが0°付近にある場合に、γ軸電流Iγを減少させると、同じ大きさのアシストトルクを発生させるために、負荷角θLが90°付近となるように制御されるため、γ軸電流Iγに対するアシストトルクTAの効率を高めることができる。たとえば、曲線S1上の点aに動作点がある場合に、γ軸電流Iγを減少させると、曲線S2上の点cに動作点を移行させることが可能となる。
【0095】
このような理由から、図10Aに示されるように、加算角αに対する操舵トルク変化量δTの比の絶対値|δT/α|が所定値Cより大きくなるに従って、その値が零より小さくなるように電流増減量ΔIγ*が設定されている。
一方、加算角αに対する操舵トルク変化量δTの比の絶対値|δT/α|が小さい場合とは、負荷角θLの変化量に対するアシストトルクTAの変化量が小さい場合である。したがって、負荷角θLが90゜(または−90°)付近にあると考えられる。負荷角θLが90゜付近にある場合には、アシストトルクが現在のγ軸電流Iγでのほぼ最大値に達しており、アシストトルク不足により、検出操舵トルクTを指示操舵トルクT*に近づけることができない状態となるおそれがある。そこで、このような場合には、アシストトルクを増加させるために、γ軸電流Iγを増加させることが好ましい。このような理由から、図10Aに示されるように、加算角αに対する操舵トルク変化量δTの比の絶対値|δT/α|が所定値Bより小さくなるに従って、その値が零より大きくなるように電流増減量ΔIγ*が設定されている。
【0096】
図10Bは、操舵トルク変化量δTに対する加算角αの比の絶対値|α/δT|に対する電流増減量ΔIγ*の設定例を示している。前記絶対値|α/δT|が所定値B(B>0)以上で所定値C(C>B)以下の範囲内にある場合には、電流増減量ΔIγ*は零に設定される。そして、前記絶対値|α/δT|が所定値Cより大きくなるに従って、その値が零より増加するように(図10Bの例ではリニアに大きくなるように)、電流増減量ΔIγ*が設定される。また、前記絶対値|α/δT|が所定値Bより小さくなるに従って、その値が零より減少するように(図10Bの例ではリニアに小さくなるように)、電流増減量ΔIγ*が設定される。
【0097】
操舵トルク変化量δTに対する加算角αの比の絶対値|α/δT|は、加算角αに対する操舵トルク変化量δTの比の絶対値|δT/α|が大きくなるほど小さくなるので、絶対値|α/δT|に対する電流増減量ΔIγ*の増減方向が、絶対値|δT/α|に対する電流増減量ΔIγ*の増減方向と逆になっている。
図10Cは、指示電流値Iγ*に対する増減量ゲインGの設定例を示している。図10Cの例では、現在の指示電流値Iγ*(指示電流値Iγ*の前回値)が大きいほど単調に減少する特性に従って増減量ゲインGが設定されている。より具体的には、現在の指示電流値Iγ*が零のときには、増減量ゲインGは1とされる。そして、現在の指示電流値Iγ*が零以上の範囲では、増減量ゲインGは、1から単調(図10Cの例ではリニア)に減少する特性に従って設定される。増減量ゲインGに関して図10Cに示すような設定が行われている理由について説明する。
【0098】
図12は、図11と同様に負荷角θLとアシストトルクTAとの関係を示している。図12において、曲線S1はγ軸電流Iγが比較的大きい場合の特性を示し、曲線S2はγ軸電流Iγが比較的小さい場合の特性を示している。
図10Aまたは図10Bに示す特性に従って演算された電流増減量ΔIγ*の基本値が負の値である場合、すなわち、指示電流値Iγ*を減少させる場合について説明する。電流増減量ΔIγ*の基本値が負の値になるのは、前述したように、前記絶対値|δT/α|が大きい場合(前記絶対値|α/δT|が小さい場合)、すなわち、負荷角θLの変化量δθLに対するアシストトルクTAの変化量δTAが大きい場合である。
【0099】
たとえば、図12において、アシストトルク特性がγ軸電流Iγが小さい場合の曲線S2であり、負荷角θLが曲線S2上の点dに対応する0°付近の角度になっている場合には、前記絶対値|δT/α|が大きくなる。このような場合には、前述したように、γ軸電流Iγに対するアシストトルクTAの効率を高くするために、γ軸電流Iγが小さくされる。これにより、負荷角θLが0°付近の角度に変化する。このように、γ軸電流Iγが小さくかつ前記絶対値|δT/α|が大きいとき(たとえば、曲線S2上の点dに動作点がある場合)に、γ軸電流Iγを減少させかつ同じ大きさのアシストトルクを得ようとする場合には、図12に矢印Y2で示すように、γ軸電流Iγを比較的大幅に下げることが可能である。
【0100】
図12において、曲線S2上の点dにおける勾配(前記絶対値|δT/α|に相当する)と同じ大きさの勾配を有する特性曲線S1上の点はeとなる。つまり、絶対値|δT/α|が同じであるとすると、γ軸電流Iγが大きい場合(曲線S1上の点e)は、γ軸電流Iγが小さい場合(曲線S2上の点d)に比べて、負荷角θLが90°により近い角度となる。従って、γ軸電流Iγが大きくかつ前記絶対値|δT/α|が大きいとき(たとえば、曲線S1上の点eに動作点がある場合)に、γ軸電流Iγを減少させかつ同じ大きさのアシストトルクを得ようとする場合には、図12に矢印Y1で示すように、γ軸電流Iγの下げ幅は比較的小さくなる。そこで、γ軸電流Iγを低下させるために、指示電流値Iγ*を減少させる場合には、現在の指示電流値Iγ*が大きいほど、その減少量を小さくすることが好ましい。
【0101】
電流増減量ΔIγ*の基本値が正の値である場合、すなわち、指示電流値Iγ*を増加させる場合について説明する。電流増減量ΔIγ*の基本値が正の値になるのは、前述したように、前記絶対値|δT/α|が小さい場合(前記絶対値|α/δT|が大きい場合)、すなわち、負荷角θLの変化量δθLに対するアシストトルクTAの変化量が小さい場合である。つまり、負荷角θLが90゜(または−90°)付近にあると考えられる場合である。このような場合には、前述したように、アシストトルクを増加させるために、γ軸電流Iγを増加させることが好ましい。しかし、既にγ軸電流Iγが大きいときに、その増加量を大きくすると、γ軸電流Iγが過大となるおそれがある。そこで、γ軸電流Iγを増加させるために、指示電流値Iγ*を増加させる場合には、現在の指示電流値Iγ*が大きいほど、その増加量を小さくすることが好ましい。以上のような理由から、図10Cに示すように、現在の指示電流値Iγ*が大きいほど、増減量ゲインGを小さくしているのである。
【0102】
図10Cの特性に基づいて求められた増減量ゲインGが、図10Aまたは図10Bの特性に基づいて演算された電流増減量ΔIγ*の基本値に乗算されることにより、最終的な電流増減量ΔIγ*が求められる。
指示電流増減量演算部70Aによって演算された電流増減量ΔIγ*は、加算器70Bにおいて、指示電流値Iγ*の前回値Iγ*(n-1)(nは今演算周期の番号)に加算される(Z−1は信号の前回値を表す)。これにより、今演算周期での指示電流値Iγ*が演算される。ただし、指示電流値Iγ*の初期値は予め定められた値(例えば零)である。加算器70Bによって得られた指示電流値Iγ*は、上下限リミッタ70Cに与えられる。上下限リミッタ70Cは、加算器70Bによって得られた指示電流値Iγ*を、所定の下限値ξmin(ξmin≧0)と上限値ξmax(ξmax>ξmin)との間の値に制限する。
【0103】
つまり、加算器70Bによって得られた指示電流値Iγ*が、下限値ξmin以上でかつ上限値ξmax以下であるときには、上下限リミッタ70Cは、当該指示電流値Iγ*をそのまま出力する。加算器70Bによって得られた指示電流値Iγ*が下限値ξminより小さいときには、上下限リミッタ70Cは、下限値ξminを今演算周期の指示電流値Iγ*として出力する。加算器70Bによって得られた指示電流値Iγ*が上限値ξmaxより大きいときには、上下限リミッタ70Cは、上限値ξmaxを今演算周期の指示電流値Iγ*として出力する。
【0104】
図13は、この発明の第4の実施形態に係るモータ制御装置を適用した電動パワーステアリング装置の構成を説明するためのブロック図である。この図13において、前述の図1の各部に対応する部分には図1と同じ符号を付して示す。
この実施形態では、マイクロコンピュータ11は、機能処理部としての誘起電圧推定部37を、さらに含んでいる。また、この実施形態では、図1に示されている指示電流値生成部30の代わりに、指示電流値生成部80が設けられている。指示電流値生成部80は、γ軸指示電流値Iγ*を有意値とする一方で、δ軸指示電流値Iδ*を零とする。より具体的には、指示電流値生成部80は、指示操舵トルク設定部21によって設定される指示操舵トルクT*と、トルクセンサ1によって検出される検出操舵トルクTと、誘起電圧推定部37によって推定される推定誘起電圧E^αβとに基づいて、γ軸指示電流値Iγ*を設定する。
【0105】
UVW/γδ変換部36は、UVW/αβ変換部36Aとαβ/γδ変換部36Bとからなる。UVW/αβ変換部36Aは、電流検出部13によって検出されるUVW座標系の三相検出電流IUVW(U相検出電流IU、V相検出電流IVおよびW相検出電流IW)を二相固定座標系であるαβ座標系の二相検出電流IαおよびIβ(以下総称するときには「二相検出電流Iαβ」という。)に変換する。αβ座標系は、図2に示すように、ロータ50の回転中心を原点として、ロータ50の回転平面内にα軸およびこれに直交するβ軸(図2の例ではU軸と同軸)を定めた固定座標系である。
【0106】
αβ/γδ変換部36Bは、二相検出電流Iαβをγδ座標系の二相検出電流IγおよびIδ(以下総称するときには「二相検出電流Iγδ」という。)に変換する。これらが電流偏差演算部32に与えられるようになっている。αβ/γδ変換部36Bにおける座標変換には、制御角演算部26で演算される制御角θCが用いられる。
γδ/UVW変換部34は、γδ/αβ変換部34Aとαβ/UVW変換部34Bとからなる。γδ/αβ変換部34Aは、PI制御部33から出力される二相指示電圧Vγδ*をαβ座標系の二相指示電圧Vαβ*に変換する。この座標変換には、制御角演算部26で演算された制御角θCが用いられる。二相指示電圧Vαβ*は、α軸指示電圧Vα*およびβ軸指示電圧Vβ*からなる。αβ/UVW変換部34Bは、二相指示電圧Vαβ*に対して座標変換演算を行うことによって、三相指示電圧VUVW*を生成する。三相指示電圧VUVW*は、U相指示電圧VU*、V相指示電圧VV*およびW相指示電圧VW*からなる。この三相指示電圧VUVW*は、PWM制御部35に与えられる。
【0107】
誘起電圧推定部37は、モータ3の回転によって生じる誘起電圧を推定するものである。図14は、誘起電圧推定部37の構成を説明するためのブロック図である。誘起電圧推定部37は、二相検出電流Iαβと二相指示電圧Vαβ*とに基づいて、モータ3の誘起電圧を推定する。より具体的には、誘起電圧推定部37は、モータ3の数学モデルであるモータモデルに基づき、モータ3の誘起電圧を外乱として推定する外乱オブザーバとしての形態を有している。モータモデルは、たとえば、(R+pL)−1と表すことができる。ただし、Rは電機子巻線抵抗、Lはαβ軸インダクタンス、pは微分演算子である。モータ3には、二相指示電圧Vαβ*と誘起電圧Eαβ(α軸誘起電圧Eαおよびβ軸誘起電圧Eβ)とが印加されると考えることができる。
【0108】
誘起電圧推定部37は、二相検出電流Iαβを入力としてモータ電圧を推定する逆モータモデル(モータモデルの逆モデル)65と、この逆モータモデル65によって推定されるモータ電圧と二相指示電圧Vαβ*との偏差を求める電圧偏差演算部66とで構成することができる。電圧偏差演算部66は、二相指示電圧Vαβ*に対する外乱を求めることになるが、図14から明らかなとおり、この外乱は誘起電圧Eαβに相当する推定値E^αβ(α軸誘起電圧推定値E^αおよびβ軸誘起電圧推定値E^β(以下、まとめて「推定誘起電圧E^αβ」という。)になる。逆モータモデル65は、たとえば、R+pLで表される。
【0109】
指示電流値生成部80は、指示電流増減量演算部80Aと、出力制御部80Bと、加算器80Cと、上下限リミッタ80Dとを含んでいる。指示電流増減量演算部80Aは、所定の演算周期毎に、指示操舵トルクT*と検出操舵トルクTに基づいて、指示電流値Iγ*に対する電流増減量ΔIγ*を演算する。具体的には、指示電流増減量演算部80Aは、指示操舵トルクT*の符号と、指示操舵トルクT*と検出操舵トルクTとの偏差ΔT(=T−T*)とに基づいて、電流増減量ΔIγ*を演算する。
【0110】
指示電流増減量演算部80Aによる電流増減量ΔIγ*の演算方法の基本的な考え方について説明する。トルク偏差ΔTの絶対値が所定値E(E>0,図15A,図15B参照)より大きくかつ検出操舵トルクTの絶対値が指示操舵トルクT*の絶対値よりも大きい場合には、アシストトルク不足を補うために、指示電流値Iγ*を零より大きな値とする。つまり、指示電流増減量演算部80Aは、指示電流値Iγ*を増加させるための電流増減量(以下、「電流増加量」という場合がある)ΔIγ*(ΔIγ*>0)を演算する。
【0111】
一方、トルク偏差ΔTの絶対値が所定値E未満である場合およびトルク偏差ΔTの絶対値が所定値E以上でありかつ検出操舵トルクTの絶対値が指示操舵トルクT*の絶対値よりも小さい場合には、省電力化を図るとともにモータの発熱を抑制するために、指示電流値Iγ*を零より小さな値とする。つまり、指示電流増減量演算部80Aは、指示電流値Iγ*を減少させるための電流増減量(「電流減少量」)ΔIγ*(ΔIγ*<0)を演算する。指示電流増減量演算部80Aの詳細については、後述する。
【0112】
出力制御部80Bは、指示電流増減量演算部80Aによって演算された電流増減量ΔIγ*が「電流増加量」である場合(ΔIγ*>0)には、その電流増減量ΔIγ*を出力する。一方、指示電流増減量演算部80Aによって演算された電流増減量ΔIγ*が「電流減少量」である場合(ΔIγ*<0)には、出力制御部80Bは、前回に指示電流値Iγ*が減少された時点から予め設定された所定時間Ts以上の時間が経過しており、かつモータ3(ロータ50)が停止している(回転していない)と判定したときにのみ、その電流増減量ΔIγ*を出力する。
【0113】
言い換えれば、出力制御部80Bは、前回に指示電流値Iγ*が減少された時点から予め設定された所定時間Ts以上の時間が経過していないとき、またはモータ3が回転しているときには、電流増減量ΔIγ*を出力しない。所定時間Tsは、指示電流値Iγ*を連続して減少させる場合の最小の周期となる。
モータ3が停止しているか否かは、この実施形態では、誘起電圧推定部37によって推定される推定誘起電圧E^αβに基づいて判別される。具体的には、α軸誘起電圧E^αおよびβ軸誘起電圧E^βの二乗和(E^α2+E^β2)が所定のしきい値H以下であれば、出力制御部80Bは、モータ3が停止していると判別する。一方、前記二乗和(E^α2+E^β2)がしきい値Hより大きければ、出力制御部80Bは、モータ3が回転していると判別する。しきい値Hは、前記二乗和(E^α2+E^β2)の推定誤差より大きな値に設定される。
【0114】
前記所定期間Tsは、次のように設定される。指示電流値Iγ*を減少させると、同じ大きさのアシストトルク(モータトルク)が発生するように、負荷角θLが制御される。前記所定期間Tsは、指示電流値Iγ*を減少させてから、同じ大きさのアシストトルクが発生される角度に負荷角θLが収束するのに要する時間の最大値に設定される。この最大値Tsは、たとえば、不適切なアシストトルクの継続を許容できると考えられる最大時間(以下、「不適切状態の許容最大時間」という)に設定される。この「不適切状態の許容最大時間」は、たとえば、100msに設定される。
【0115】
指示電流値Iγ*が減少されてから、同じ大きさのアシストトルクが発生される角度に負荷角θLが収束するより前に、指示電流値Iγ*がさらに減少されると、負荷角が適切値に収束しなくなるおそれがある。そこで、この実施形態では、前回に指示電流値Iγ*が減少された時点から予め設定された所定時間Ts以上の時間が経過していないときには、指示電流値Iγ*を減少させるような電流増減量ΔIγ*を出力しないようにしている。
【0116】
また、モータ3(ステアリングホイール10)が回転しているときに、運転者がステアリングホイール10を手放しすると、検出操舵トルクTの絶対値が小さくなるから、指示電流値Iγ*が低下しすぎるおそれがある。そうすると、本来必要となるアシストトルクが得られなくなるおそれがある。このような状態を回避するために、この実施形態では、モータ3(ステアリングホイール10)が回転しているときには、電流増減量ΔIγ*を出力しないようにしている。
【0117】
指示電流増減量演算部80Aについて、詳しく説明する。指示操舵トルクT*の符号が正(T*≧0)である場合の、トルク偏差ΔTに対する電流増減量ΔIγ*の設定例は、図15Aに示されている。トルク偏差ΔTが所定値+E(E>0)である場合には、電流増減量ΔIγ*は零に設定される。この所定値Eは、トルクセンサ1の出力のばらつきに応じた値(ばらつきによる検出誤差の最大値)に設定されている。トルク偏差ΔTが所定値+Eより大きな所定値+F(F>0)以上である場合には、電流増減量ΔIγ*は、零より大きな最大値+ΔIγmax*(ΔIγmax*>0)に固定される。所定値Fは、たとえば、2Nmに設定される。トルク偏差ΔTが所定値Eと所定値Fの間にある場合には、電流増減量ΔIγ*は、零から最大値+ΔIγmax*までの範囲内において、トルク偏差ΔTが大きくなるに従って、その値が大きくなるように(図15Aの例ではリニアに大きくなるように)設定される。
【0118】
また、トルク偏差ΔTが所定値+Eより小さな所定値+D(D>0)以下である場合には、電流増減量ΔIγ*は、零より小さい最小値−ΔIγmin*(ΔIγmin*>0)に固定される。トルク偏差ΔTが所定値+Eと所定値+Dの間にある場合には、変化電流増減量ΔIγ*は、零から最小値−ΔIγmin*までの範囲内において、トルク偏差ΔTが小さくなるに従って、その値が小さくなるように(図15Aの例ではリニアに小さくなるように)設定される。
【0119】
電流増減量ΔIγ*の最大値+ΔIγmax*の絶対値ΔIγmax*は、「電流増加量」の最大値である。この最大値+ΔIγmax*は、電流増減量ΔIγ*が最大値+ΔIγmax*に設定された場合に、前記「不適切状態の許容最大時間(この例では100ms)」以内に、指示電流値Iγ*が指示電流上限値(上下限リミッタ80Dの上限値)に達するような値に設定されている。より具体的に説明すると、指示電流増減量演算部80Aによる電流増減量ΔIγ*の演算周期は、前記「不適切状態の許容最大時間(この例では100ms)」より短く設定されている。そして、前記最大値+ΔIγmax*は、指示電流値Iγ*が下限値(上下限リミッタ80Dの下限値)となっている状態から、前記「不適切状態の許容最大時間(この例では100ms)」に相当する時間に亘って、電流増減量ΔIγ*として最大値+ΔIγmax*が演算されたときに、指示電流値Iγ*が指示電流上限値に達するような値に設定されている。
【0120】
これにより、トルク偏差ΔTが所定値+F以上である場合には、指示電流値Iγ*を「不適切状態の許容最大時間(この例では100ms)」以内に、上限値まで上昇させることが可能となる。一方、「電流増加量」を、零から最大値+ΔIγmax*に変化させると、アシストトルクが急激に変化するので好ましくない。そこで、トルク偏差ΔTが所定値+E以上で所定値+F以下の場合(アシストトルクの不足量が小さい場合)には、「電流増加量」を、零から最大値+ΔIγmax*まで徐々に増加させるようにしている。このようにすると、トルク偏差ΔTが所定値+E以上で所定値+F以下の場合には、指示電流値Iγ*を「不適切状態の許容最大時間」以内に上限値まで上昇させることができない可能性があるが、アシストトルクの不足量(トルク偏差ΔT)が小さいため、問題は生じないと考えられる。
【0121】
電流増減量ΔIγ*の最小値−ΔIγmin*の絶対値ΔIγmin*は、「電流減少量」の最大値である。この絶対値ΔIγmin*は、対応するアシストトルク変化量が所定値(たとえば、2Nm)以下であり、かつ指示電流値Iγ*を減少させてから、同じ大きさのアシストトルクが発生される角度に負荷角θLが収束するのに要する時間が前記「不適切状態の許容最大時間(この例では100ms)」以下となる大きさに設定される。
【0122】
指示操舵トルクT*の符号が正(T*≧0)である場合において、トルク偏差ΔT(=T−T*)が零より小さい場合とは、検出操舵トルクTの絶対値が指示操舵トルクT*の絶対値よりも小さい場合である。この場合には、アシストトルクが不足していないと考えられる。ただし、トルクセンサ1の出力にばらつきがある場合には、前述したようにばらつきによる検出誤差の最大値をEとすると、実際のトルク偏差ΔTが零である場合でも、演算されたトルク偏差ΔTは−E〜+Eの範囲内の値をとる可能性がある。
【0123】
そこで、実際のトルク偏差ΔTが零になっている可能性がある場合、つまり、演算されたトルク偏差ΔTが−E〜+Eの範囲内にある場合には、省電力化を図るとともにモータの発熱を抑制するために、指示電流値Iγ*を減少させるようにしている。 また、演算されたトルク偏差ΔTが−E未満の場合にも、省電力化を図るとともにモータの発熱を抑制するために、電流増減量ΔIγ*が負の値にされている。より具体的には、トルク偏差ΔTが所定値+Eと所定値+Dの間の値である場合には、トルク偏差ΔTが小さくなるにしたがって、電流増減量ΔIγ*も小さくなる(「電流減少量」が大きくなる)。また、トルク偏差ΔTが所定値+D以下の値である場合には、電流増減量ΔIγ*は最小値−ΔIγmin*(「電流減少量」の最大値)となる。
【0124】
一方、指示操舵トルクT*の符号が正(T*≧0)である場合において、トルク偏差ΔT(=T−T*)が零以上である場合とは、検出操舵トルクTの絶対値が指示操舵トルクT*の絶対値よりも大きい場合である。従って、この場合には、モータトルク(アシストトルク)が不足していると考えられる。そこで、トルク偏差ΔTが所定値+Eより大きい場合には、アシストトルク不足を補うように、電流増減量ΔIγ*が正の値にされている。より具体的には、トルク偏差ΔTが所定値+Eと所定値+Fの間の値である場合には、トルク偏差ΔTが大きくなるにしたがって、電流増減量ΔIγ*も大きくなる(「電流増加量」が大きくなる)。また、トルク偏差ΔTが所定値+F以上の値である場合には、電流増減量ΔIγ*は最大値+ΔIγmax*(「電流増加量」の最大値)となる。
【0125】
指示操舵トルクT*の符号が負(T*<0)である場合の、トルク偏差ΔTに対する電流増減量ΔIγ*の設定例は、図15Bに示されている。トルク偏差ΔTが所定値−Eのときには、電流増減量ΔIγ*は零に設定される。トルク偏差ΔTが所定値−Eより小さな所定値−F以下である場合には、電流増減量ΔIγ*は、零より大きな最大値+ΔIγmax*(ΔIγmax*>0)に固定される。トルク偏差ΔTが所定値−Eと所定値−Fの間にある場合には、電流増減量ΔIγ*は、零から最大値+ΔIγmax*までの範囲内において、トルク偏差ΔTが小さくなるに従って、その値が大きくなるように(図15Bの例ではリニアに大きくなるように)設定される。
【0126】
また、トルク偏差ΔTが所定値−Eより大きな所定値−D以上である場合には、電流増減量ΔIγ*は、零より小さい最小値−ΔIγmin*(ΔIγmin*>0)に固定される。トルク偏差ΔTが所定値−Eと所定値−Dの間にある場合には、電流増減量ΔIγ*は、零から最小値−ΔIγmin*までの範囲内において、トルク偏差ΔTが大きくなるに従って、その値が小さくなるように(図15Bの例ではリニアに小さくなるように)設定される。
【0127】
指示操舵トルクT*の符号が負(T*<0)である場合において、トルク偏差ΔT(=T−T*)が零より大きい場合とは、検出操舵トルクTの絶対値が指示操舵トルクT*の絶対値よりも小さい場合である。従って、この場合は、アシストトルクが不足していないと考えられる。ただし、トルクセンサ1の出力にばらつきがある場合には、ばらつきによる検出誤差の最大値をEとすると、実際のトルク偏差ΔTが零である場合でも、演算されたトルク偏差ΔTは−E〜+Eの範囲内の値をとる可能性がある。そこで、実際のトルク偏差ΔTが零になっている可能性がある場合、つまり、演算されたトルク偏差ΔTが−E〜+Eの範囲内にある場合には、省電力化を図るとともにモータの発熱を抑制するために、指示電流値Iγ*を減少させるようにしている。
【0128】
また、演算されたトルク偏差ΔTが所定値−Eより大きな場合にも、省電力化を図るとともにモータの発熱を抑制するために、電流増減量ΔIγ*が負の値にされている。より具体的には、トルク偏差ΔTが所定値−Eと所定値−Dの間の値である場合には、トルク偏差ΔTが大きくなるにしたがって、電流増減量ΔIγ*が小さくなる(「電流減少量」が大きくなる)。また、トルク偏差ΔTが所定値−D以上の値である場合には、電流増減量ΔIγ*は最小値−ΔIγmin*(「電流減少量」の最大値)となる。
【0129】
一方、トルク偏差ΔT(=T−T*)が零以下である場合とは、検出操舵トルクTの絶対値が指示操舵トルクT*の絶対値よりも大きい場合である。従って、この場合には、アシストトルクが不足している場合であると考えられる。そこで、トルク偏差ΔTが所定値−E未満の場合には、アシストトルク不足を補うように、電流増減量ΔIγ*が正の値にされている。より具体的には、トルク偏差ΔTが所定値−Eと所定値−Fの間の値である場合には、トルク偏差ΔTが小さくなるにしたがって、電流増減量ΔIγ*が大きくなる(「電流増加量」が大きくなる)。また、トルク偏差ΔTが所定値−F以下の値である場合には、電流増減量ΔIγ*は最大値+ΔIγmax*(「電流増加量」の最大値)となる。
【0130】
指示電流増減量演算部80Aによって演算された電流増減量ΔIγ*は、出力制御部80Bに与えられる。出力制御部80Bは、前述したような処理を行なう。
図16は、指示電流増減量演算部80Aおよび出力制御部80Bの動作を示すフローチャートである。図16に示される処理は、所定の演算周期毎に実行される。
指示電流増減量演算部80Aによって、電流増減量ΔIγ*が演算されると(ステップS11)、出力制御部80Bは、指示電流増減量演算部80Aによって演算された電流増減量ΔIγ*が「電流減少量」であるか否かを判別する(ステップS12)。具体的には、出力制御部80Bは、指示電流増減量演算部80Aによって演算された電流増減量ΔIγ*が負の値であれば、今回演算された電流増減量ΔIγ*は「電流減少量」であると判別し、電流増減量ΔIγ*が正の値であれば、今回演算された電流増減量ΔIγ*は「電流増加量」であると判別する。
【0131】
指示電流増減量演算部80Aによって演算された電流増減量ΔIγ*が「電流増加量」である場合には(ステップS12:NO)、出力制御部80Bは、今回演算された電流増減量ΔIγ*(「電流増加量」)を出力する(ステップS13)。そして、今演算周期の処理を終了する。
一方、指示電流増減量演算部80Aによって演算された電流増減量ΔIγ*が「電流減少量」であると判別された場合には(ステップS12:YES)、出力制御部80Bは、前回に指示電流Iγ*が減少された時点から所定時間Ts以上の時間が経過しているか否かを判別する(ステップS14)。所定時間Tsは、指示電流Iγ*を連続して減少させる場合の最小の周期であり、この例では、100msである。ステップS14の判別は、たとえば、出力制御部80Bによって「電流減少量」が出力された最新の時点から、所定時間Tsが経過しているか否かを判別することによって行なわれる。
【0132】
前回に指示電流Iγ*が減少された時点から所定時間Ts以上の時間が経過している場合には(ステップS14:YES)、誘起電圧推定部37によって推定される推定誘起電圧E^αβの二乗和(E^α2+E^β2)が所定のしきい値H以下であるか否かを判別する(ステップS15)。推定誘起電圧E^αβの二乗和(E^α2+E^β2)がしきい値H以下である場合には(ステップS15:YES)、出力制御部80Bは、今回演算された電流増減量ΔIγ*(「電流減少量」)を出力する(ステップS16)。そして、今演算周期の処理を終了する。
【0133】
前記ステップS14において、前回に指示電流Iγ*が減少された時点から所定時間Ts以上の時間が経過していないと判別された場合には(ステップS14:NO)または前記ステップS15において、推定誘起電圧E^αβの二乗和(E^α2+E^β2)がしきい値Hより大きいと判別された場合には(ステップS15:NO)、出力制御部80Bは、今回演算された電流増減量ΔIγ*(「電流減少量」)を出力することなく(ステップS17)、今演算周期の処理を終了する。
【0134】
図13に戻り、出力制御部80Bから出力された電流増減量ΔIγ*は、加算器80Cにおいて、指示電流値Iγ*の前回値Iγ*(n-1)(nは今演算周期の番号)に加算される(Z−1は信号の前回値を表す)。これにより、今演算周期での指示電流値Iγ*が演算される。ただし、指示電流値Iγ*の初期値は予め定められた値(例えば零)である。加算器80Cによって得られた指示電流値Iγ*は、上下限リミッタ80Dに与えられる。上下限リミッタ80Dは、加算器80Cによって得られた指示電流値Iγ*を、所定の下限値ξmin(ξmin≧0)と上限値ξmax(ξmax>ξmin)との間の値に制限する。
【0135】
つまり、加算器80Cによって得られた指示電流値Iγ*が、下限値ξmin以上でかつ上限値ξmax以下であるときには、上下限リミッタ80Dは、当該指示電流値Iγ*をそのまま出力する。加算器80Cによって得られた指示電流値Iγ*が下限値ξminより小さいときには、上下限リミッタ80Dは、下限値ξminを今演算周期の指示電流値Iγ*として出力する。加算器80Cによって得られた指示電流値Iγ*が上限値ξmaxより大きいときには、上下限リミッタ80Dは、上限値ξmaxを今演算周期の指示電流値Iγ*として出力する。
【0136】
上記実施形態では、モータ3が停止しているか否かを推定誘起電圧の二乗和(E^α2+E^β2)に基づいて判別しているが、舵角センサ4によって検出される操舵角の所定時間当たりの変化量に基づいて、判別するようにしてもよい。具体的には、所定時間当たりの操舵角変化量が所定のしきい値以下であればモータ3が停止していると判別され、所定時間当たりの操舵角変化量が所定のしきい値より大きければモータ3が回転していると判別される。
【0137】
図1に示される第1の実施形態および図9に示される第3の実施形態においても、指示電流増減量演算部30A,70Aによって演算された電流増減量ΔIγ*に対して、第4の実施形態における出力制御部80Bと同様な出力制御を行なうようにしてもよい。つまり、
図1および図9に破線で示すように、指示電流増減量演算部30A,70Aと加算器30B,70Bとの間に、第4の実施形態における出力制御部80Bと同様な出力制御を行う出力制御部80Bを設けてもよい。この場合、モータ3(ロータ50)が停止しているか否かを判別するために、第4の実施形態における誘起電圧推定部37と同様な誘起電圧推定部を設けてもよい。また、舵角センサ4によって検出される操舵角の所定時間当たりの変化量に基づいて、モータ3が停止しているか否かを判別してもよい。
【0138】
図17は、この発明の第5の実施形態に係るモータ制御装置を適用した電動パワーステアリング装置の構成を説明するためのブロック図である。この図17において、前述の図1の各部に対応する部分には図1と同じ符号を付して示す。
前述した第4の実施形態(図13参照)では、たとえば、図15Aに示すように、指示操舵トルクT*の符号が正(T*≧0)である場合において、トルク偏差ΔTが所定値E未満である場合には、省電力化を図るとともにモータの発熱を抑制するために、指示電流値Iγ*が零より小さな値にされている。図15Aでは、指示操舵トルクT*の符号が正(T*≧0)である場合において、トルク偏差ΔTが負であるときには、電流増減量ΔIγ*は最小値−ΔIγmin*となる。
【0139】
運転者が右操舵に切り込んだ後に、中立位置方向への切り戻し操舵を行った場合には、指示操舵トルクT*および検出操舵トルクTの符号は正であり、検出操舵トルクTの絶対値が減少する。このため、トルク偏差ΔT(=T−T*)が負となる。前記切り戻し操舵によってトルク偏差ΔTが負となると、電流増減量ΔIγ*は最小値−ΔIγmin*となるため、指示電流値Iγ*が減少し、アシストトルクが零になるおそれがある。そうすると、運転者は、それまで発生していたアシストトルクが無くなるため、切り戻し操舵時に違和感を感じる。第5の実施形態では、切り戻し操舵時にもアシストトルクを発生させることにより、切り戻し操舵時に運転者に違和感を感じさせないようにする。
【0140】
第5の実施形態では、図1に示されている指示電流値生成部30の代わりに、指示電流値生成部90が設けられている。指示電流値生成部90は、γ軸指示電流値Iγ*を有意値とする一方で、δ軸指示電流値Iδ*を零とする。より具体的には、指示電流値生成部90は、指示操舵トルク設定部21によって設定される指示操舵トルクT*と、トルクセンサ1によって検出される検出操舵トルクTとに基づいて、γ軸指示電流値Iγ*を設定する。
【0141】
指示電流値生成部90は、指示電流増減量演算部90Aと、加算器90Bと、上下限リミッタ90Cとを含んでいる。指示電流増減量演算部90Aは、所定の演算周期毎に、指示操舵トルクT*と検出操舵トルクTに基づいて、指示電流値Iγ*に対する電流増減量ΔIγ*を演算する。具体的には、指示電流増減量演算部90Aは、指示操舵トルクT*の符号と、指示操舵トルクT*と検出操舵トルクTとの偏差ΔT(=T−T*)とに基づいて、電流増減量ΔIγ*を演算する。
【0142】
指示電流増減量演算部90Aによる電流増減量ΔIγ*の演算方法の基本的な考え方について説明する。検出操舵トルクTの絶対値が指示操舵トルクT*の絶対値よりも大きく、かつトルク偏差ΔTの絶対値が第1の所定値E(E>0,図18A,図18B参照)より大きい場合には、アシストトルク不足を補うために、指示電流値Iγ*を零より大きな値とする。つまり、指示電流増減量演算部90Aは、指示電流値Iγ*を増加させるための電流増減量(以下、「電流増加量」という場合がある)ΔIγ*(ΔIγ*>0)を演算する。
【0143】
また、検出操舵トルクTの絶対値が指示操舵トルクT*の絶対値よりも小さく、かつトルク偏差ΔTの絶対値が第2の所定値H(H>0,図18A,図18B参照)より大きい場合には、切り戻し操舵時にアシストトルクを発生させるために、指示電流値Iγ*を零より大きな値とする。つまり、指示電流増減量演算部90Aは、指示電流値Iγ*を増加させるための電流増減量(「電流増加量」)ΔIγ*(ΔIγ*>0)を演算する。
【0144】
そして、検出操舵トルクTの絶対値が指示操舵トルクT*の絶対値よりも大きく、かつトルク偏差ΔTの絶対値が第1の所定値E以下である場合および検出操舵トルクTの絶対値が指示操舵トルクT*の絶対値よりも小さく、かつトルク偏差ΔTの絶対値が第2の所定値H以下の場合には、省電力化を図るとともにモータの発熱を抑制するために、指示電流値Iγ*を零より小さな値とする。つまり、指示電流増減量演算部90Aは、指示電流値Iγ*を減少させるための電流増減量(「電流減少量」)ΔIγ*(ΔIγ*<0)を演算する。
【0145】
指示操舵トルクT*の符号が正(T*≧0)である場合の、トルク偏差ΔTに対する電流増減量ΔIγ*の設定例は、図18Aに示されている。トルク偏差ΔTが所定値+E(E>0,第1の所定値E)である場合または所定値−H(H>0,第2の所定値Hに負の符号を付けた値)にある場合には、電流増減量ΔIγ*は零に設定される。第1の所定値Eは、トルクセンサ1の出力のばらつきに応じた値(ばらつきによる検出誤差の最大値)に設定されている。トルク偏差ΔTが所定値+Eより大きな所定値+F(F>0)以上である場合には、電流増減量ΔIγ*は、零より大きな最大値+ΔIγmax*(ΔIγmax*>0)に固定される。所定値+Fは、たとえば、2Nmに設定される。トルク偏差ΔTが所定値+Eと所定値+Fの間にある場合には、電流増減量ΔIγ*は、零から最大値+ΔIγmax*までの範囲内において、トルク偏差ΔTが大きくなるに従って、その値が大きくなるように(図18Aの例ではリニアに大きくなるように)設定される。
【0146】
所定値−Hの絶対値(第2の所定値H)は、第1の所定値E以上の値に設定される。第2の所定値Hは、たとえば、2Nm〜3Nmの範囲内の値に設定される。運転者が右操舵で切り込んだ後に切り戻し操舵(中立位置方向への操舵)を行った場合には、検出操舵トルクTの絶対値が減少するため、トルク偏差ΔTは負になる。この実施形態では、トルクセンサ1のばらつきによる検出誤差の最大値Eを考慮して、トルク偏差ΔTが−E以下の所定値−H未満であるときに、前記切り戻し操舵が行われていると判定している。
【0147】
トルク偏差ΔTが所定値−Hより小さな所定値−G(G>0)以下である場合には、電流増減量ΔIγ*は、零より大きな最大値+ΔIγmax*(ΔIγmax*>0)に固定される。所定値Gは、たとえば、5Nmに設定される。トルク偏差ΔTが所定値−Hと所定値−Gの間にある場合には、電流増減量ΔIγ*は、零から最大値+ΔIγmax*までの範囲内において、トルク偏差ΔTが小さくなるに従って、その値が大きくなるように(図18Aの例ではリニアに大きくなるように)設定される。
【0148】
トルク偏差ΔTが、所定値−Hより大きな所定値−I(I>0)以上でかつ所定値+Eより小さな所定値+D(D>0)以下の範囲内にある場合には、電流増減量ΔIγ*は、零より小さい最小値−ΔIγmin*(ΔIγmin*>0)に固定される。トルク偏差ΔTが所定値−Hと所定値−Iの間にある場合には、電流増減量ΔIγ*は、零から最小値−ΔIγmin*までの範囲内において、トルク偏差ΔTが大きくなるに従って、その値が小さくなるように(図18Aの例ではリニアに小さくなるように)設定される。トルク偏差ΔTが所定値+Eと所定値+Dの間にある場合には、電流増減量ΔIγ*は、零から最小値−ΔIγmin*までの範囲内において、トルク偏差ΔTが小さくなるに従って、その値が小さくなるように(図18Aの例ではリニアに小さくなるように)設定される。
【0149】
電流増減量ΔIγ*の最大値+ΔIγmax*の絶対値ΔIγmax*は、「電流増加量」の最大値である。この最大値+ΔIγmax*は、電流増減量ΔIγ*が最大値+ΔIγmax*に設定された場合に、前記「不適切状態の許容最大時間(この例では100ms)」以内に、指示電流値Iγ*が指示電流上限値(上下限リミッタ80Dの上限値)に達するような値に設定されてもよい。
【0150】
電流増減量ΔIγ*の最小値−ΔIγmin*の絶対値ΔIγmin*は、「電流減少量」の最大値である。この絶対値ΔIγmin*は、対応するアシストトルク変化量が所定値(たとえば、2Nm)以下であり、かつ指示電流値Iγ*を減少させてから、同じ大きさのアシストトルクが発生される角度に負荷角θLが収束するのに要する時間が前記「不適切状態の許容最大時間(この例では100ms)」以下となる大きさに設定されてもよい。
【0151】
指示操舵トルクT*の符号が正(T*≧0)である場合において、トルク偏差ΔT(=T−T*)が零以上である場合とは、検出操舵トルクTの絶対値が指示操舵トルクT*の絶対値よりも大きく、従ってアシストトルクが不足している場合であると考えられる。そこで、トルク偏差ΔTが所定値+Eより大きい場合には、アシストトルク不足を補うように、電流増減量ΔIγ*が正の値にされている。
【0152】
前述したように、運転者が右操舵で切り込んだ後に切り戻し操舵を行った場合には、検出操舵トルクTの絶対値が減少するため、トルク偏差ΔT(=T−T*)が零より小さくなる。そこで、トルク偏差ΔTが所定値−H未満となった場合には、切り戻し操舵時にアシストトルクを発生させるために、発生電流増減量ΔIγ*が正の値にされている。これにより、違和感のない切り戻し操舵が可能となる。
【0153】
トルク偏差ΔTが所定値−H以上で所定値+E以下の場合には、省電力化を図るとともにモータの発熱を抑制するために、電流増減量ΔIγ*が負の値にされている。
指示操舵トルクT*の符号が負(T*<0)である場合の、トルク偏差ΔTに対する電流増減量ΔIγ*の設定例は、図18Bに示されている。トルク偏差ΔTが所定値−Eである場合または所定値+Hにある場合には、電流増減量ΔIγ*は零に設定される。トルク偏差ΔTが所定値−Eより小さな所定値−F以下である場合には、電流増減量ΔIγ*は、零より大きな最大値+ΔIγmax*(ΔIγmax*>0)に固定される。トルク偏差ΔTが所定値−Eと所定値−Fの間にある場合には、電流増減量ΔIγ*は、零から最大値+ΔIγmax*までの範囲内において、トルク偏差ΔTが小さくなるに従って、その値が大きくなるように(図18Bの例ではリニアに大きくなるように)設定される。
【0154】
運転者が左操舵で切り込んだ後に切り戻し操舵(中立位置方向への操舵)を行った場合には、検出操舵トルクTの絶対値が減少するため、トルク偏差ΔT(=T−T*)は正になる。この実施形態では、トルクセンサ1のばらつきによる検出誤差の最大値Eを考慮して、トルク偏差ΔTが+E以上の所定値+Hより大きいときに、前記切り戻し操舵が行われていると判定している。
【0155】
トルク偏差ΔTが所定値+Hより大きな所定値+G以上ある場合には、電流増減量ΔIγ*は、零より大きな最大値+ΔIγmax*(ΔIγmax*>0)に固定される。トルク偏差ΔTが所定値+Hと所定値+Gの間にある場合には、電流増減量ΔIγ*は、零から最大値+ΔIγmax*までの範囲内において、トルク偏差ΔTが大きくなるに従って、その値が大きくなるように(図18Bの例ではリニアに大きくなるように)設定される。
【0156】
トルク偏差ΔTが、所定値−Eより大きな所定値−D以上でかつ所定値+Hより小さな所定値+I以下の範囲内にある場合には、電流増減量ΔIγ*は、零より小さい最小値−ΔIγmin*(ΔIγmin*>0)に固定される。トルク偏差ΔTが所定値+Hと所定値+Iの間にある場合には、電流増減量ΔIγ*は、零から最小値−ΔIγmin*までの範囲内において、トルク偏差ΔTが小さくなるに従って、その値が小さくなるように(図18Bの例ではリニアに小さくなるように)設定される。トルク偏差ΔTが所定値−Eと所定値−Dの間にある場合には、電流増減量ΔIγ*は、零から最小値−ΔIγmin*までの範囲内において、トルク偏差ΔTが大きくなるに従って、その値が小さくなるように(図18Bの例ではリニアに小さくなるように)設定される。
【0157】
指示操舵トルクT*の符号が負(T*<0)である場合において、トルク偏差ΔT(=T−T*)が零以下である場合とは、検出操舵トルクTの絶対値が指示操舵トルクT*の絶対値よりも大きく、従ってアシストトルクが不足している場合であると考えられる。そこで、トルク偏差ΔTが所定値−Eより小さい場合には、アシストトルク不足を補うように、電流増減量ΔIγ*が正の値にされている。
【0158】
前述したように、運転者が左操舵で切り込んだ後に切り戻し操舵を行った場合には、検出操舵トルクTの絶対値が減少するため、トルク偏差ΔT(=T−T*)が零より大きくなる。そこで、トルク偏差ΔTが所定値+Hより大きくなった場合には、切り戻し操舵時にアシストトルクを発生させるために、発生電流増減量ΔIγ*が正の値にされている。これにより、違和感のない切り戻し操舵が可能となる。
【0159】
トルク偏差ΔTが所定値−E以上でかつ所定値+H以下の範囲内にある場合には、省電力化を図るとともにモータの発熱を抑制するために、電流増減量ΔIγ*が負の値にされている。
図17に戻り、指示電流増減量演算部90Aから出力された電流増減量ΔIγ*は、加算器90Bにおいて、指示電流値Iγ*の前回値Iγ*(n-1)(nは今演算周期の番号)に加算される(Z−1は信号の前回値を表す)。これにより、今演算周期での指示電流値Iγ*が演算される。ただし、指示電流値Iγ*の初期値は予め定められた値(例えば零)である。加算器90Bによって得られた指示電流値Iγ*は、上下限リミッタ90Cに与えられる。上下限リミッタ90Cは、加算器90Bによって得られた指示電流値Iγ*を、所定の下限値ξmin(ξmin≧0)と上限値ξmax(ξmax>ξmin)との間の値に制限する。
【0160】
つまり、加算器90Bによって得られた指示電流値Iγ*が、下限値ξmin以上でかつ上限値ξmax以下であるときには、上下限リミッタ90Cは、当該指示電流値Iγ*をそのまま出力する。加算器90Bによって得られた指示電流値Iγ*が下限値ξminより小さいときには、上下限リミッタ90Cは、下限値ξminを今演算周期の指示電流値Iγ*として出力する。加算器90Bによって得られた指示電流値Iγ*が上限値ξmaxより大きいときには、上下限リミッタ90Cは、上限値ξmaxを今演算周期の指示電流値Iγ*として出力する。
【0161】
図17に示される第5の実施形態においても、指示電流増減量演算部90Aによって演算された電流増減量ΔIγ*に対して、第4の実施形態における出力制御部80Bと同様な出力制御を行なうようにしてもよい。つまり、図17に破線で示すように、指示電流増減量演算部90Aと加算器90Bとの間に、第4の実施形態における出力制御部80Bと同様な出力制御を行う出力制御部80Bを設けてもよい。この場合、モータ3(ロータ50)が停止しているか否かを判別するために、第4の実施形態における誘起電圧推定部37と同様な誘起電圧推定部を設けてもよい。また、舵角センサ4によって検出される操舵角の所定時間当たりの変化量に基づいて、モータ3が停止しているか否かを判別してもよい。 以上、この発明のいくつかの実施形態について説明したが、この発明はさらに他の形態で実施することもできる。たとえば、前述の実施形態では、PI制御部23によって加算角αを求めているが、PI制御部23に代えて、PID(比例・積分・微分)演算部を用いて加算角αを求める構成とすることもできる。
【0162】
また、前述の実施形態では、回転角センサを備えずに、専らセンサレス制御によってモータ3を駆動する構成について説明したが、レゾルバ等の回転角センサを備え、この回転角センサの故障時に前述のようなセンサレス制御を行う構成としてもよい。これにより、回転角センサの故障時にもモータ3の駆動を継続できるから、操舵補助を継続できる。
この場合、回転角センサを用いるときには、指示電流値生成部30において、操舵トルクおよび車速に応じて、所定のアシスト特性に従ってδ軸指示電流値Iδ*を発生させるようにすればよい。
【0163】
さらに、前述の実施形態では、電動パワーステアリング装置にこの発明が適用された例について説明したが、この発明は、電動ポンプ式油圧パワーステアリング装置のためのモータの制御や、パワーステアリング装置以外にも、ステア・バイ・ワイヤ(SBW)システム、可変ギヤレシオ(VGR)ステアリングシステムその他の車両用操舵装置に備えられたブラシレスモータの制御のために用いることができる。むろん、車両用操舵装置に限らず、他の用途のモータの制御のためにも本発明のモータ制御装置を適用できる。
【0164】
その他、特許請求の範囲に記載された事項の範囲で種々の設計変更を施すことが可能である。
【符号の説明】
【0165】
1…トルクセンサ、3…モータ、5…モータ制御装置、10…ステアリングホイール、11…マイクロコンピュータ、23…PI制御部、26…制御角演算部、30,60,70,80,90…指示電流値生成部、50…ロータ、51,52,53…ステータ巻線、55…ステータ
【特許請求の範囲】
【請求項1】
ロータと、このロータに対向するステータとを備えたモータを制御するためのモータ制御装置であって、
制御上の回転角である制御角に従う回転座標系の軸電流値で前記モータを駆動する電流駆動手段と、
所定の演算周期毎に、制御角の前回値に加算角を加算することによって制御角の今回値を求める制御角演算手段と、
前記モータによって駆動される駆動対象に加えられる、モータトルク以外のトルクを検出するためのトルク検出手段と、
前記駆動対象に作用させるべき指示トルクを設定する指示トルク設定手段と、
前記トルク検出手段によって検出される検出トルクと、前記指示トルク設定手段によって設定される指示トルクとの偏差であるトルク偏差に応じて前記加算角を演算する加算角演算手段と、
前記トルク偏差に基づいて、前記軸電流値の目標値である指示電流値を設定するための指示電流設定手段とを含み、
前記指示電流設定手段は、前記トルク偏差に応じた補正量で、指示電流の前回値を補正することにより、指示電流の今回値を設定するものである、モータ制御装置。
【請求項2】
前記指示電流設定手段は、前記トルク偏差の絶対値が大きくなるに従って、前記補正量の絶対値が大きくなるように、前記補正量を演算する補正量演算手段を含む、請求項1に記載のモータ制御装置。
【請求項3】
前記指示電流設定手段は、
前記トルク偏差の絶対値が所定値未満であるときおよび、前記トルク偏差の絶対値が前記所定値以上であり、かつ前記検出トルクの絶対値が前記指示トルクの絶対値よりも小さいときには、指示電流の前回値を減少させるための補正量を演算する第1補正量演算手段と、
前記トルク偏差の絶対値が前記所定値より大きく、かつ前記検出トルクの絶対値が前記指示トルクの絶対値よりも大きいときには、指示電流の前回値を増加させるための補正量を演算する第2補正量演算手段とを含む、請求項1に記載のモータ制御装置。
【請求項4】
前記指示電流設定手段は、
前記検出トルクの絶対値が前記指示トルクの絶対値よりも大きく、かつ前記トルク偏差の絶対値が第1の所定値より大きいときには、指示電流の前回値を増加させるための補正量を演算する手段と、
前記検出トルクの絶対値が前記指示トルクの絶対値よりも小さく、かつ前記トルク偏差の絶対値が第2の所定値より大きいときには、指示電流の前回値を増加させるための補正量を演算する手段と、
前記検出トルクの絶対値が前記指示トルクの絶対値よりも大きく、かつ前記トルク偏差の絶対値が前記第1の所定値以下であるときおよび前記検出トルクの絶対値が前記指示トルクの絶対値よりも小さく、かつ前記トルク偏差の絶対値が前記第2の所定値以下のときには、指示電流の前回値を減少させるための補正量を演算する手段とを含む、請求項1に記載のモータ制御装置。
【請求項5】
前記指示電流の前回値を減少させる場合の補正量の絶対値が、所定値以下である請求項1、3または4に記載のモータ制御装置。
【請求項6】
ロータと、このロータに対向するステータとを備えたモータを制御するためのモータ制御装置であって、
制御上の回転角である制御角に従う回転座標系の軸電流値で前記モータを駆動する電流駆動手段と、
所定の演算周期毎に、制御角の前回値に加算角を加算することによって制御角の今回値を求める制御角演算手段と、
前記モータによって駆動される駆動対象に加えられる、モータトルク以外のトルクを検出するためのトルク検出手段と、
前記駆動対象に作用させるべき指示トルクを設定する指示トルク設定手段と、
前記トルク検出手段によって検出される検出トルクと、前記指示トルク設定手段によって設定される指示トルクとの偏差に応じて前記加算角を演算する加算角演算手段と、
前記トルク検出手段によって検出される検出トルクの変化量と、前記加算角演算手段によって演算される加算角との比に基づいて、前記軸電流値の目標値である指示電流値を設定するための指示電流設定手段とを含み、
前記指示電流設定手段は、前記検出トルクの変化量と前記加算角との比に応じた補正量で、指示電流の前回値を補正することにより、指示電流の今回値を設定するものである、モータ制御装置。
【請求項7】
前記指示電流設定手段は、
今回演算された前記補正量が指示電流の前回値を減少させるための補正量であるときには、前回の指示電流の減少時点から所定時間以上の時間が経過している場合にのみ、今回演算された前記補正量で指示電流の前回値を補正することにより、指示電流の今回値を設定する手段をさらに含む、請求項1〜6のいずれか一項に記載のモータ制御装置。
【請求項8】
前記指示電流設定手段は、
ロータが停止しているか否かを判別する判別手段と、
今回演算された前記補正量が指示電流の前回値を減少させるための補正量であるときには、前回の指示電流の減少時点から所定時間以上の時間が経過しており、かつ前記判別手段によってロータが停止していると判別された場合にのみ、今回演算された前記補正量で指示電流の前回値を補正することにより、指示電流の今回値を設定する手段と、
をさらに含む請求項1〜6のいずれか一項に記載のモータ制御装置。
【請求項9】
前記モータの誘起電圧を推定する誘起電圧推定手段をさらに含み、
前記判別手段は、前記誘起電圧推定手段によって推定された誘起電圧に基づいてロータが停止しているか否かを判別する、請求項8に記載のモータ制御装置。
【請求項10】
車両の舵取り機構に駆動力を付与するモータと、
前記モータを制御する請求項1〜9のいずれか一項に記載のモータ制御装置とを含む、車両用操舵装置。
【請求項1】
ロータと、このロータに対向するステータとを備えたモータを制御するためのモータ制御装置であって、
制御上の回転角である制御角に従う回転座標系の軸電流値で前記モータを駆動する電流駆動手段と、
所定の演算周期毎に、制御角の前回値に加算角を加算することによって制御角の今回値を求める制御角演算手段と、
前記モータによって駆動される駆動対象に加えられる、モータトルク以外のトルクを検出するためのトルク検出手段と、
前記駆動対象に作用させるべき指示トルクを設定する指示トルク設定手段と、
前記トルク検出手段によって検出される検出トルクと、前記指示トルク設定手段によって設定される指示トルクとの偏差であるトルク偏差に応じて前記加算角を演算する加算角演算手段と、
前記トルク偏差に基づいて、前記軸電流値の目標値である指示電流値を設定するための指示電流設定手段とを含み、
前記指示電流設定手段は、前記トルク偏差に応じた補正量で、指示電流の前回値を補正することにより、指示電流の今回値を設定するものである、モータ制御装置。
【請求項2】
前記指示電流設定手段は、前記トルク偏差の絶対値が大きくなるに従って、前記補正量の絶対値が大きくなるように、前記補正量を演算する補正量演算手段を含む、請求項1に記載のモータ制御装置。
【請求項3】
前記指示電流設定手段は、
前記トルク偏差の絶対値が所定値未満であるときおよび、前記トルク偏差の絶対値が前記所定値以上であり、かつ前記検出トルクの絶対値が前記指示トルクの絶対値よりも小さいときには、指示電流の前回値を減少させるための補正量を演算する第1補正量演算手段と、
前記トルク偏差の絶対値が前記所定値より大きく、かつ前記検出トルクの絶対値が前記指示トルクの絶対値よりも大きいときには、指示電流の前回値を増加させるための補正量を演算する第2補正量演算手段とを含む、請求項1に記載のモータ制御装置。
【請求項4】
前記指示電流設定手段は、
前記検出トルクの絶対値が前記指示トルクの絶対値よりも大きく、かつ前記トルク偏差の絶対値が第1の所定値より大きいときには、指示電流の前回値を増加させるための補正量を演算する手段と、
前記検出トルクの絶対値が前記指示トルクの絶対値よりも小さく、かつ前記トルク偏差の絶対値が第2の所定値より大きいときには、指示電流の前回値を増加させるための補正量を演算する手段と、
前記検出トルクの絶対値が前記指示トルクの絶対値よりも大きく、かつ前記トルク偏差の絶対値が前記第1の所定値以下であるときおよび前記検出トルクの絶対値が前記指示トルクの絶対値よりも小さく、かつ前記トルク偏差の絶対値が前記第2の所定値以下のときには、指示電流の前回値を減少させるための補正量を演算する手段とを含む、請求項1に記載のモータ制御装置。
【請求項5】
前記指示電流の前回値を減少させる場合の補正量の絶対値が、所定値以下である請求項1、3または4に記載のモータ制御装置。
【請求項6】
ロータと、このロータに対向するステータとを備えたモータを制御するためのモータ制御装置であって、
制御上の回転角である制御角に従う回転座標系の軸電流値で前記モータを駆動する電流駆動手段と、
所定の演算周期毎に、制御角の前回値に加算角を加算することによって制御角の今回値を求める制御角演算手段と、
前記モータによって駆動される駆動対象に加えられる、モータトルク以外のトルクを検出するためのトルク検出手段と、
前記駆動対象に作用させるべき指示トルクを設定する指示トルク設定手段と、
前記トルク検出手段によって検出される検出トルクと、前記指示トルク設定手段によって設定される指示トルクとの偏差に応じて前記加算角を演算する加算角演算手段と、
前記トルク検出手段によって検出される検出トルクの変化量と、前記加算角演算手段によって演算される加算角との比に基づいて、前記軸電流値の目標値である指示電流値を設定するための指示電流設定手段とを含み、
前記指示電流設定手段は、前記検出トルクの変化量と前記加算角との比に応じた補正量で、指示電流の前回値を補正することにより、指示電流の今回値を設定するものである、モータ制御装置。
【請求項7】
前記指示電流設定手段は、
今回演算された前記補正量が指示電流の前回値を減少させるための補正量であるときには、前回の指示電流の減少時点から所定時間以上の時間が経過している場合にのみ、今回演算された前記補正量で指示電流の前回値を補正することにより、指示電流の今回値を設定する手段をさらに含む、請求項1〜6のいずれか一項に記載のモータ制御装置。
【請求項8】
前記指示電流設定手段は、
ロータが停止しているか否かを判別する判別手段と、
今回演算された前記補正量が指示電流の前回値を減少させるための補正量であるときには、前回の指示電流の減少時点から所定時間以上の時間が経過しており、かつ前記判別手段によってロータが停止していると判別された場合にのみ、今回演算された前記補正量で指示電流の前回値を補正することにより、指示電流の今回値を設定する手段と、
をさらに含む請求項1〜6のいずれか一項に記載のモータ制御装置。
【請求項9】
前記モータの誘起電圧を推定する誘起電圧推定手段をさらに含み、
前記判別手段は、前記誘起電圧推定手段によって推定された誘起電圧に基づいてロータが停止しているか否かを判別する、請求項8に記載のモータ制御装置。
【請求項10】
車両の舵取り機構に駆動力を付与するモータと、
前記モータを制御する請求項1〜9のいずれか一項に記載のモータ制御装置とを含む、車両用操舵装置。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【公開番号】特開2011−244678(P2011−244678A)
【公開日】平成23年12月1日(2011.12.1)
【国際特許分類】
【出願番号】特願2010−205920(P2010−205920)
【出願日】平成22年9月14日(2010.9.14)
【出願人】(000001247)株式会社ジェイテクト (7,053)
【Fターム(参考)】
【公開日】平成23年12月1日(2011.12.1)
【国際特許分類】
【出願日】平成22年9月14日(2010.9.14)
【出願人】(000001247)株式会社ジェイテクト (7,053)
【Fターム(参考)】
[ Back to top ]