説明

操舵装置

【課題】 不揮発性メモリに推定温度データを書き込むことができなかった場合でも、過熱防止機能を維持しつつ、電動モータによる操舵機能が十分得られるようにする。
【解決手段】 マイコンは、EEPROMのデータが異常である場合には、予め高温設定された仮基板温度Tbmaxから温度センサにより検出された基板温度Tbを減算した基板温度変化値ΔT(Tbmax−Tb)を使って、モータ推定温度を計算するための各仮温度値SUM1max,SUM2max,SUM3maxを補正する(S61,S62)。従って、基板温度Tbに応じた初期値SUM1(n-1),SUM2(n-1),SUM3(n-1)を設定することができる。この場合、温度センサが異常である場合には、基板温度変化値ΔT(Tbmax−Tb)を使った補正を行わない(S63)。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、電動モータにより操舵トルクを発生させる電動パワーステアリング装置などの操舵装置に関する。
【背景技術】
【0002】
従来から、この種の操舵装置としては、例えば、電動パワーステアリング装置が知られている。電動パワーステアリング装置は、操舵ハンドルの操舵操作に対して操舵アシストトルクを発生する電動モータと、この電動モータの通電を制御する電子制御ユニット(ECUと呼ぶ)とを備える。ECUは、主要部がマイクロコンピュータから構成され電動モータの目標通電制御量を演算する演算回路と、この演算回路からの指令信号に応じて電動モータに通電するモータ駆動回路を備える。
【0003】
このような電動パワーステアリング装置においては、電動モータやモータ駆動回路が発熱して損傷してしまうことを防止するためにそれらの温度をモニターし、モニター温度が過熱防止用の設定温度を上回る場合には、電動モータに流す電流を制限するようにしている。この場合、電動モータの温度は、温度センサにより直接測定することが難しい。そこで、特許文献1に提案された電動パワーステアリング装置においては、電動モータに流れる電流値に基づいて演算により電動モータの温度を推定する。
【0004】
この特許文献1に提案された電動パワーステアリング装置においては、アシスト制御中に、電動モータの推定温度を繰り返し演算し、イグニッションスイッチがオフされてアシスト制御を終了すると、そのときの推定温度に対応する推定温度データを不揮発性メモリに記憶する。ECUは、次回のアシスト制御開始時に、不揮発性メモリに記憶されている推定温度データを読み出して、それを推定温度の初期値として温度推定演算に利用する。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開2008−195246号
【発明の概要】
【0006】
しかしながら、推定温度データが不揮発性メモリに適正に書き込まれないことがある。例えば、アシスト制御が終了して推定温度データを不揮発性メモリに書き込んでいる途中で、イグニッションスイッチがオンされてクランキング動作が行われた場合には、バッテリの一時的な電圧降下により、ECUのマイクロコンピュータがリセットされてしまうことがある。このようなケースにおいては、推定温度データを不揮発性メモリに適正に書き込むことができない。
【0007】
そこで、ECUは、このように不揮発性メモリに推定温度データを書き込むことができなかった場合には、アシスト制御を開始するときに、予め設定した仮の推定温度初期値を使って、推定温度の演算を開始する。しかし、仮の推定温度初期値は、どのような状況でアシスト制御が開始されても電動モータの過熱を防止できるように、電動モータのとり得る温度範囲の最高温度に設定されるため、実際には、モータ温度が低い状態であっても、演算された推定温度は高温となる。従って、必要以上に過熱防止機能が働いて電動モータに流す電流が制限されてしまう。このため、ハンドル操作が重くなり運転者の負担が増大してしまう。
【0008】
本発明は、上記問題に対処するためになされたもので、不揮発性メモリに推定温度データを書き込むことができなかった場合でも、過熱防止機能を維持しつつ、電動モータによる操舵機能が十分得られるようにすることを目的とする。
【0009】
上記目的を達成するために、本発明の特徴は、操舵トルクを発生する電動モータ(15)と、前記電動モータの温度を逐次演算により推定する温度推定手段(S21〜S26)と、操舵ハンドルの操舵状態を検出する操舵検出手段(S11)と、前記推定された電動モータの推定温度に基づいた電流制限を加えながら、前記検出された操舵ハンドルの操舵状態に基づいて前記電動モータの目標通電制御量を演算し、前記演算された目標通電制御量に従って前記電動モータを駆動制御するモータ制御手段(S12〜S19)と、前記電動モータの推定温度に関する推定温度データを記憶するための不揮発性記憶手段(44)と、前記電動モータの駆動制御の終了時に前記温度推定手段により推定された前記電動モータの推定温度に関する推定温度データを前記不揮発性記憶手段に書き込むとともに、次回の前記電動モータの駆動制御開始時に前記不揮発性記憶手段に記憶されている推定温度データを読み出す推定温度データ読み書き手段(S51,S39,S42)とを備え、前記温度推定手段は、前記電動モータの駆動制御開始時に前記推定温度データ読み書き手段により読み出された推定温度データを利用して前記電動モータの推定温度の演算を開始する操舵装置において、前記電動モータの温度変化とともに温度が変化する部位の温度を関連温度として測定する関連温度測定手段(25)と、前記電動モータの駆動制御開始時に前記不揮発性記憶手段のデータが異常であるか否かを判断するデータ異常検出手段(S52)と、予め過熱防止用高温度に設定された仮推定温度初期値(SUM1max,SUM2max,SUM3max)を記憶しており、前記不揮発性記憶手段のデータの異常が検出された場合に、前記関連温度測定手段により測定される前記関連温度(Tb)を取得し、前記仮推定温度初期値を前記関連温度が低いほど減少するように補正した補正推定温度初期値(SUM1(n-1),SUM2(n-1),SUM3(n-1))を演算する異常時補正推定温度初期値演算手段(S61,S62)とを備え、前記温度推定手段は、前記不揮発性記憶手段のデータの異常が検出された場合、前記異常時補正推定温度初期値演算手段により演算された補正推定温度初期値を使って前記電動モータの推定温度の演算を開始することにある。
【0010】
この発明においては、温度推定手段が電動モータの温度を逐次演算により推定し、モータ制御手段がこの推定温度に基づいた電流制限を加えながら操舵ハンドルの操舵状態に基づいて電動モータの目標通電制御量を演算し、この目標通電制御量に従って電動モータを駆動制御する。こうして電動モータの駆動制御により操舵トルクが発生する。このとき、電動モータは、推定温度に基づいた電流制限によりその過熱が防止される。尚、電動モータの温度とは、電動モータそのものの温度に限らず、電動モータの温度上昇分であってもよい。どちらでも、電動モータの過熱を防止できるからである。
【0011】
推定温度データ読み書き手段は、電動モータの駆動制御の終了時に推定された電動モータの推定温度データを不揮発性記憶手段に書き込み、次回の電動モータの駆動制御時に不揮発性記憶手段に記憶されている推定温度データを読み出す。この読み出された推定温度データは、モータ推定温度の演算を開始するために必要な初期値データとなる。
【0012】
推定温度データを不揮発性記憶手段に書き込む途中で、マイコンリセットが生じた場合には、推定温度データを適正に不揮発性記憶手段に書き込むことができない。この場合には、モータ推定温度の演算に必要な適正な初期値データが得られない。そこで、本発明においては、関連温度測定手段と、データ異常検出手段と、異常時補正推定温度初期値演算手段とを備えている。
【0013】
関連温度測定手段は、電動モータの温度変化とともに温度が変化する部位の温度を関連温度として測定する。関連温度測定手段は、電動モータの温度が時間経過とともに低下(上昇)していく場合には、これに伴って温度が低下(上昇)していく部位を温度測定すればよい。例えば、電動モータを駆動する駆動回路の基板温度は、電動モータの温度と関連性が高いため、基板温度を関連温度として用いることができる。
【0014】
データ異常検出手段は、電動モータの駆動制御開始時に不揮発性記憶手段のデータが異常であるか否かを判断する。そして、不揮発性記憶手段のデータの異常が検出された場合に、異常時補正推定温度初期値演算手段が、モータ推定温度の演算を開始するために必要な初期値となる補正推定温度初期値を演算する。この補正推定温度初期値を演算するにあたって、異常時補正推定温度初期値演算手段は、仮推定温度初期値を記憶している。この仮推定温度初期値は、予め過熱防止用高温度に設定された温度である。つまり、仮推定温度初期値は、電動モータがどのような発熱状態であっても過熱防止を行えるような温度、例えば、電動モータがとり得る温度範囲の最高温度に設定されている。
【0015】
異常時補正推定温度初期値演算手段は、不揮発性記憶手段のデータの異常が検出された場合に、関連温度測定手段により測定される関連温度を取得し、仮推定温度初期値を、関連温度が低いほど仮推定温度初期値が減少するように補正した補正推定温度初期値を演算する。
【0016】
不揮発性記憶手段のデータが異常である場合には、仮推定温度初期値をそのまま用いて推定温度を計算すると、計算された推定温度が高温になる。このため、実際には電動モータの温度が低くても、電流制限が大きく働くようになり、電動モータの能力を十分に発揮させることができない。しかし、電動モータの駆動制御開始時における関連温度が低ければ、電動モータの温度もこれに合わせて低いと推測できる。そこで、本発明においては、異常時補正推定温度初期値演算手段が、仮推定温度初期値を、関連温度が低いほど仮推定温度初期値が減少するように補正した補正推定温度初期値を演算する。温度推定手段は、この異常時補正推定温度初期値演算手段により演算された補正推定温度初期値を使って電動モータの推定温度の演算を開始する。
【0017】
従って、本発明によれば、不揮発性記憶手段への推定温度データの書き込み不良が生じた場合であっても、過熱防止機能を維持しつつ、電動モータによる操舵機能が十分得られるようなり、運転者の負担が低減する。
【0018】
尚、本発明における推定温度に関する推定温度データとは、推定温度そのものを表すデータは勿論のこと、推定温度を導き出すことのできるデータをも含むものである。また、操舵検出手段は、操舵ハンドルの操舵状態を検出するものであって、例えば、操舵ハンドルに加えられる操舵トルク、操舵ハンドルの操舵角、操舵ハンドルの操舵角速度などの少なくとも1つを検出するものであればよい。
【0019】
また、本発明の他の特徴は、前記異常時補正推定温度初期値演算手段は、予め過熱防止用高温度に設定された仮関連温度初期値(Tbmax)を記憶しており、前記仮関連温度初期値と前記関連温度測定手段により測定される関連温度(Tb)との温度差(ΔT)に基づいて、前記仮推定温度初期値を前記温度差が大きいほど減少するように補正した補正推定温度初期値を演算することにある。
【0020】
本発明においては、異常時補正推定温度初期値演算手段は、予め過熱防止用高温度に設定された仮関連温度初期値を記憶している。この仮関連温度初期値とは、電動モータが仮推定温度初期値相当の高温度となるときに関連温度がとる温度に相当する値であって、仮推定温度初期値に対応して設定されたものである。異常時補正推定温度初期値演算手段は、この仮関連温度初期値と関連温度測定手段により測定される関連温度との温度差に基づいて、仮推定温度初期値を、この温度差(仮関連温度初期値−測定関連温度)が大きいほど仮推定温度初期値が減少するように補正した補正推定温度初期値を演算する。従って、一層適正な補正推定温度初期値を演算することができる。この結果、更に適正に過熱防止を行うことができ、これに伴って操舵操作性が向上する。
【0021】
本発明の他の特徴は、前記電動モータの駆動制御の終了時に前記関連温度測定手段により測定された前記関連温度に関する関連温度データを前記不揮発性記憶手段に書き込むとともに、次回の前記電動モータの駆動制御開始時に前記不揮発性記憶手段に記憶されている関連温度データを読み出す関連温度データ読み書き手段(S53,S39,S42)と、前記電動モータの駆動制御開始時に前記不揮発性記憶手段のデータの異常が検出されない場合には、前記関連温度データ読み書き手段により読み出された関連温度データで表される関連温度(TBo)と前記関連温度測定手段により測定される関連温度(TB)との温度差(ΔT)に基づいて、前記推定温度データ読み書き手段により読み出された推定温度データで表される推定温度(SUM1o,SUM2o,SUM2o)を前記温度差が大きいほど減少するように補正した補正推定温度初期値を演算する正常時補正推定温度初期値演算手段(S57,S58)とを備え、前記温度推定手段は、前記不揮発性記憶手段のデータの異常が検出されない場合には、前記正常時補正推定温度初期値演算手段により演算された補正推定温度初期値を使って前記電動モータの推定温度の演算を開始することにある。
【0022】
本発明においては、不揮発性記憶手段のデータの異常が検出されない場合においても、一層適正な補正推定温度初期値を計算できるように、関連温度データ読み書き手段と正常時補正推定温度初期値演算手段とを備えている。関連温度データ読み書き手段は、電動モータの駆動制御の終了時に関連温度測定手段により測定された関連温度に関する関連温度データを不揮発性記憶手段に書き込むとともに、次回の電動モータの駆動制御開始時に不揮発性記憶手段に記憶されている関連温度データを読み出す。
【0023】
電動モータの駆動制御開始時における関連温度が、前回の電動モータの駆動制御の終了時における関連温度に比べて低下している場合は、その温度低下に合わせて電動モータの温度も低下していると想定できる。そこで、正常時補正推定温度初期値演算手段は、電動モータの駆動制御開始時に不揮発性記憶手段のデータの異常が検出されない場合には、推定温度データ読み書き手段により読み出された推定温度データで表される推定温度を、関連温度データ読み書き手段により読み出された関連温度データで表される関連温度と関連温度測定手段により測定される関連温度との温度差が大きいほど推定温度が減少するように補正した補正推定温度初期値を演算する。つまり、前回の電動モータの駆動制御の終了時における推定温度を、前回の電動モータの駆動制御の終了時から次の電動モータの駆動制御を開始する時までの関連温度の温度低下を用いて、この温度低下が大きいほど、推定温度が減少するように補正し、この補正した値を補正推定温度初期値に設定する。このため、一層適正な補正推定温度初期値を演算することができる。
【0024】
そして、温度推定手段は、不揮発性記憶手段のデータの異常が検出されない場合には、正常時補正推定温度初期値演算手段により演算された補正推定温度初期値を使って電動モータの推定温度の演算を開始する。この結果、電動モータの温度推定精度が向上し、良好な過熱防止性能と操舵操作性能とが得られる。
【0025】
本発明の他の特徴は、前記関連温度測定手段が異常であるか否かを判断する温度測定異常検出手段(S54)を備え、前記正常時補正推定温度初期値演算手段は、前記関連温度測定手段の異常が検出された場合には、前記推定温度データ読み書き手段により読み出された推定温度データで表される推定温度を補正することなく推定温度初期値として設定する(S59,S58)ことにある。
【0026】
関連温度を適正に測定できない場合には、関連温度の温度低下を用いて補正してしまうと、適正な補正推定温度初期値を演算することができない。そこで、本発明においては、そうした場合、推定温度の補正を行わずに前回の電動モータの駆動制御の終了時における推定温度を推定温度初期値として設定する。この場合、温度推定手段は、この推定温度初期値を使って電動モータの推定温度の演算を開始する。これにより、関連温度測定手段が異常であっても、確実に過熱防止を行うことができる。
【0027】
本発明の他の特徴は、前記関連温度測定手段が異常であるか否かを判断する温度測定異常検出手段(S54)を備え、前記異常時補正推定温度初期値演算手段は、前記関連温度測定手段の異常が検出された場合には、前記仮推定温度初期値を補正することなく推定温度初期値として設定する(S63,S62)ことにある。
【0028】
本発明においては、不揮発性記憶手段のデータが異常であり、かつ、関連温度測定手段が異常である場合には、仮推定温度初期値を補正することなく推定温度初期値として設定する。この場合、温度推定手段は、この推定温度初期値を使って電動モータの推定温度の演算を開始する。従って、確実に過熱防止を行うことができる。
【0029】
尚、上記説明においては、発明の理解を助けるために、実施形態に対応する発明の構成に対して、実施形態で用いた符号を括弧書きで添えているが、発明の各構成要件を前記符号によって規定される実施形態に限定させるものではない。
【図面の簡単な説明】
【0030】
【図1】本発明の実施形態に係る電動パワーステアリング装置の全体構成図である。
【図2】電動パワーステアリング装置における制御システムおよび電源供給系を表す概略回路構成図である。
【図3】アシスト制御ルーチンを表すフローチャートである。
【図4】アシストトルクマップを表す特性図である。
【図5】上限電流値マップを表す特性図である。
【図6】モータ温度推定ルーチンを表すフローチャートである。
【図7】データ読み書き制御ルーチンを表すフローチャートである。
【図8】温度データの読み書きタイミングを示すタイミングチャートである。
【図9】推定温度初期値演算ルーチンを表すフローチャートである。
【発明を実施するための形態】
【0031】
以下、本発明の一実施形態について図面を用いて説明する。図1は、本発明の操舵装置の実施形態としての車両の電動パワーステアリング装置を概略的に示し、図2は、その電動パワーステアリング装置における制御システムおよび電源供給系を概略的に示している。
【0032】
この車両の電動パワーステアリング装置1は、大別すると、操舵ハンドル11の操舵により転舵輪を操舵する操舵機構10と、操舵機構10に組み付けられ操舵アシストトルクを発生する電動モータ15と、操舵ハンドル11の操舵状態に応じて電動モータ15の作動を制御する電子制御ユニット30とから構成される。
【0033】
操舵機構10は、操舵ハンドル11の回転操作により左右前輪FW1,FW2を操舵するための機構で、操舵ハンドル11を上端に一体回転するように接続したステアリングシャフト12を備える。このステアリングシャフト12の下端には、ピニオンギヤ13が一体回転するように接続されている。ピニオンギヤ13は、ラックバー14に形成されたラック歯と噛み合ってラックアンドピニオン機構を構成する。ラックバー14の両端には、図示しないタイロッドおよびナックルアームを介して左右前輪FW1,FW2が操舵可能に接続されている。左右前輪FW1,FW2は、ステアリングシャフト12の軸線回りの回転に伴うラックバー14の軸線方向の変位に応じて左右に操舵される。従って、操舵ハンドル11、ステアリングシャフト12、ラックアンドピニオン機構13,14、タイロッド、ナックルアーム等により操舵機構10が構成される。
【0034】
ステアリングシャフト12には減速ギヤ16を介して電動モータ15が組み付けられている。電動モータ15は、本実施形態においては、ブラシ付モータが使用される。電動モータ15は、ロータの回転により減速ギヤ16を介してステアリングシャフト12をその中心軸周りに回転駆動して、操舵ハンドル11の回動操作に対してアシストトルクを付与する。
【0035】
ステアリングシャフト12には、操舵トルクセンサ21が設けられる。操舵トルクセンサ21は、操舵ハンドル11の回動操作によってステアリングシャフト12に作用する操舵トルクに応じた信号を出力する。この操舵トルクセンサ21から出力される信号により検出される操舵トルクの値を、以下、操舵トルクThと呼ぶ。操舵トルクThは、正負の値により操舵ハンドル11の操作方向が識別される。本実施形態においては、操舵ハンドル11の右方向への操舵時における操舵トルクThを正の値で、操舵ハンドル11の左方向への操舵時における操舵トルクThを負の値で示す。従って、操舵トルクThの大きさは、その絶対値の大きさとなる。
【0036】
電動モータ15には、回転角センサ23が設けられる。この回転角センサ23は、電動モータ15内に組み込まれ、電動モータ15の回転子の回転角度位置に応じた検出信号を出力する。この回転角センサ23の検出信号は、電動モータ15の回転角および回転角速度の計算に利用される。一方、この電動モータ15の回転角は、操舵ハンドル11の操舵角に比例するものであるので、操舵ハンドル11の操舵角としても共通に用いられる。また、電動モータ15の回転角を時間微分した回転角速度は、操舵ハンドル11の操舵角速度に比例するものであるため、操舵ハンドル11の操舵角速度としても共通に用いられる。
【0037】
以下、回転角センサ23の出力信号により検出される操舵ハンドル11の操舵角の値を操舵角θと呼び、その操舵角θを時間微分して得られる操舵角速度の値を操舵角速度ωと呼ぶ。尚、操舵角θおよび操舵角速度ωは、後述する電子制御回路40のマイコン41により演算される。操舵角θは、正負の値により操舵ハンドル11の中立位置に対する右方向および左方向の舵角をそれぞれ表す。本実施形態においては、操舵ハンドル11の中立位置を「0」とし、中立位置に対する右方向への舵角を正の値で示し、中立位置に対する左方向への舵角を負の値で示す。
【0038】
次に、電子制御ユニット30について図2を用いて説明する。電子制御ユニット30(以下、ECU30と呼ぶ)は、電動モータ15の目標通電制御量を演算し、演算された目標通電制御量にて電動モータ15を駆動制御する電子制御回路40と、電子制御回路40からの制御指令により電動モータ15を駆動するモータ駆動回路32とを含んで構成される。
【0039】
電子制御回路40は、CPU,ROM,RAM等からなるマイクロコンピュータ41(以下、マイコン41と呼ぶ)と、入力インタフェース42と、出力インタフェース43と、EEPROM(Electric Erasable PROM)44とから構成される。マイコン41内のROMには後述する制御プログラムや各種データ等が記憶されている。
【0040】
入力インタフェース42は、バスを介してマイコン41に接続されるとともに、操舵トルクセンサ21、車速センサ22、回転角センサ23、電流センサ24、温度センサ25が接続され、マイコン41に対して各センサの検出信号を供給するようになっている。また、入力インタフェース42には、電子制御回路40に供給された電源から、その電源電圧に応じたデジタル信号を生成してマイコン41に供給するA/Dコンバータ(図示略)を備える。車速センサ22は、車両の走行速度vxを表す車速信号を出力する。
【0041】
出力インタフェース43は、バスを介してマイコン41に接続されるとともに、モータ駆動回路32および常開(ノーマル・オープン)型の電源リレー57に接続されていて、マイコン41からの指令に基づきこれらの導通状態を変更する信号を送出するようになっている。また、EEPROM44は、電源装置50からの電源供給を受けない状態においてもデータを記憶・保持する不揮発性記憶手段であり、バスを介してマイコン41と接続されていている。
【0042】
モータ駆動回路32は、ゲートが出力インタフェース43にそれぞれ接続されたMOSFETからなる4個のスイッチング素子Tr1〜Tr4と、2つの抵抗R1,R2とを備えている。抵抗R1の一端は、電源装置50の電源ライン55に接続され、抵抗R1の他端は、スイッチング素子Tr1,Tr2の各ソースに接続されている。スイッチング素子Tr1,Tr2のドレインは、スイッチング素子Tr3,Tr4のソースにそれぞれ接続され、スイッチング素子Tr3,Tr4のドレインは抵抗R2を介して接地されている。また、スイッチング素子Tr1とTr3との間は電動モータ15の一方の極に接続され、スイッチング素子Tr2とTr4との間は電動モータ15の他方の極に接続されている。抵抗R2とスイッチング素子Tr3,Tr4との間には電流センサ24が設けられ、電動モータ15に流れる電流値Imを表す検出信号を入力インタフェース42に出力する。
【0043】
モータ駆動回路32は、電源が供給されている状態において、スイッチング素子Tr1,Tr4が選択的に導通状態(オン状態)とされたとき、電動モータ15に所定方向の電流が流れて同モータ15は右回転し、スイッチング素子Tr2,Tr3が選択的に導通状態とされたとき、電動モータ15に前記所定の方向と反対方向の電流が流れて同モータ15は左回転する。
【0044】
また、モータ駆動回路32には、各スイッチング素子Tr1〜Tr4が設けられる回路基板の温度を検出するためのサーミスタなどによって構成された温度センサ25が設けられる。温度センサ25は、スイッチング素子Tr1〜Tr4の発熱状態に応じた温度となる基板温度Tbを検出し、基板温度Tbを表す信号を出力する。また、スイッチング素子Tr1〜Tr4の発熱状態は、電動モータ15の発熱状態と関連性を有する。つまり、電動モータ15の発熱量が多いほど、基板温度Tbは高温になる。従って、この基板温度Tbは、本発明における「関連温度」に相当し、温度センサ25は、本発明における関連温度測定手段に相当する。
【0045】
次に、電子制御回路40およびモータ駆動回路32への電源供給回路構成について図2を用いて説明する。ECU30は、バッテリ51と、エンジンの回転により発電するオルタネータ52とからなる電源装置50から電源供給される。バッテリ51としては、定格出力電圧が12Vの一般の車載バッテリが用いられる。
【0046】
この電源装置50は、電動パワーステアリング装置1だけでなくエンジン始動装置等を含む他の車載電気負荷への電源供給も共通して行う。バッテリ51の電源端子(+端子)に接続される電源供給元ライン53には、イグニッションスイッチ60が接続される。ECU30は、このイグニッションスイッチ60の二次側から電子制御回路40に電源供給する制御電源供給ライン54と、イグニッションスイッチ60の一次側(電源側)から主にモータ駆動回路32に電源供給する駆動電源供給ライン55とを備える。
【0047】
制御電源供給ライン54には、ダイオード56が設けられる。このダイオード56は、カソードを電子制御回路40側、アノードを電源装置50側に向けて設けられ、電源供給方向にのみ通電可能とする逆流防止素子である。駆動電源供給ライン55には、その途中に電源リレー57が設けられる。この電源リレー57は、電子制御回路40からの制御信号によりオンして電動モータ15への電力供給回路を形成するものである。
【0048】
駆動電源供給ライン55には、この電源リレー57よりも負荷側において連結ライン58により制御電源供給ライン54と接続される。この連結ライン58は、制御電源供給ライン54におけるダイオード56と電子制御回路40との間に接続される。連結ライン58にはダイオード59が接続される。このダイオード59は、カソードを制御電源供給ライン54側、アノードを駆動電源供給ライン55側に向けて設けられ、駆動電源供給ライン55から制御電源供給ライン54に向けてのみ通電可能とする逆流防止素子である。このように構成された電源供給系においては、電源リレー57がオン状態とされたときには、イグニッションスイッチ60の状態にかかわらず、電子制御回路40およびモータ駆動回路32に電源が供給される構成となっている。
【0049】
次に、ECU30の行う処理について説明する。ECU30は、運転者によるハンドル操作に対して適度なアシストトルクを付与するアシスト制御処理と、アシスト制御時において電動モータ15の過熱防止を図るためにモータ温度を推定演算するモータ温度推定処理と、アシスト制御を終了したときにモータ推定温度および基板温度Tbを表すデータをEEPROM44に書き込み次回のアシスト制御を開始するときにそのデータを読み出すデータ読み書き制御処理と、読み出されたデータから電動モータ15の推定温度初期値を演算する推定温度初期値演算処理とを行う。
【0050】
まず、ECU30が実行するアシスト制御処理について説明する。図3は、マイコン41により行われるアシスト制御ルーチンを表すもので、マイコン41のROM内に制御プログラムとして記憶され、短い周期で繰り返し実行される。この制御ルーチンは、イグニッションスイッチ60がオンされて所定の初期診断が完了すると起動し、後述するモータ温度推定ルーチンと並行して実行される。
【0051】
本制御ルーチンが起動すると、マイコン41は、まず、ステップS11において、車速センサ22によって検出された車速vxと、操舵トルクセンサ21によって検出した操舵トルクThを読み込む。
【0052】
続いて、図4に示すアシストトルクテーブルを参照して、入力した車速vxおよび操舵トルクThに応じて設定される基本アシストトルクTasを計算する(S12)。アシストトルクテーブルは、マイコン41のROM内に記憶されるもので、操舵トルクThの増加にしたがって基本アシストトルクTasも増加し、しかも、車速vxが低くなるほど大きな値となるように設定される。
【0053】
尚、図4の特性グラフは、正領域すなわち右方向の操舵トルクThおよび基本アシストトルクTasの関係についてのみ示しているが、負領域すなわち左方向の操舵トルクThおよび基本アシストトルクTasに関しては、図4の特性グラフを原点を中心に点対称の位置に移動した関係になる。また、本実施形態では、基本アシストトルクTasをアシストトルクテーブルを用いて算出するようにしたが、アシストトルクテーブルに代えて操舵トルクThおよび車速vxに応じて変化する基本アシストトルクTasを定義した関数を用意しておき、その関数を用いて基本アシストトルクTasを計算するようにしてもよい。また、基本アシストトルクTasの算出に関しては、必ずしも車速vxと操舵トルクThとの組み合わせから算出する必要はなく、少なくとも操舵状態に応じた検出信号に基づいて行えばよい。
【0054】
続いて、マイコン41は、ステップS13において、この基本アシストトルクTasに補償トルクを加算して目標トルクT*を算出する。この補償トルクは、基本アシストトルクTasを補償するためのトルクであって、必ずしも必要としないが、例えば、戻しトルクとダンピングトルクとの和を用いることができる。戻しトルクは、運転者が操舵ハンドル11の握りを緩めながら切り戻すときに、中立位置に向かって良好なアシストトルクが働くように設定したもので、操舵角θに応じて設定される。また、ダンピングトルクは、ステアリング系全体における振動を減衰させるもので、操舵角速度ωに応じて設定される。この計算に当たっては、回転角センサ23にて検出した電動モータ15の回転角θおよび電動モータ15の角速度ω(操舵ハンドル11の操舵角θを時間で微分した操舵角速度ωに相当)を入力して算出する。
【0055】
続いて、マイコン41は、ステップS14において、目標トルクT*を発生させるために必要な必要電流I*を計算する。必要電流I*は、目標トルクT*をトルク定数で除算することにより求められる。
【0056】
続いて、マイコン41は、ステップS15において、後述するモータ温度推定ルーチンにて計算した最新のモータ推定温度Tmを読み込む。次に、ステップS16において、このモータ推定温度Tmから電動モータ15に通電する上限電流値Imaxを設定する。この上限電流値Imaxは、図5に示す上限電流値マップを参照して求められる。この上限電流値マップは、マイコン41のROMに記憶され、モータ推定温度Tmが高いほど上限電流値Imaxを小さな値に設定する。尚、この上限電流値Imaxは、その大きさ、つまり電流を流す向きに関係しない絶対値を表す。
【0057】
続いて、マイコン41は、その処理をステップS17に進め、ステップS14で算出された必要電流I*とステップS16にて算出された上限電流値Imaxとから最終的な目標電流I**を求める。必要電流I*の大きさ(絶対値)が上限電流値Imax以下であれば、目標電流I**は必要電流I*と同一値に設定され、必要電流I*の大きさが上限電流値Imaxより大きければ、目標電流I**は上限電流値Imaxと同じ大きさに設定される。
【0058】
続いて、マイコン41は、その処理をステップS18に進め、目標電流I**と実電流Imとの偏差ΔIを算出し、この偏差ΔIに基づくPI制御(比例積分制御)により目標指令電圧V*を計算する。ステップS15,S18の演算に用いられる実電流Imは、電流センサ24により検出した電動モータ15に流れる電流値である。
目標指令電圧V*は、例えば、下記式により計算する。
V*=Kp・ΔI+Ki・∫ΔI dt
ここでKpは、PI制御における比例項の制御ゲイン、Kiは、PI制御における積分項の制御ゲインである。
【0059】
そして、マイコン41は、ステップS19において、目標指令電圧V*に応じたPWM制御電圧信号をモータ駆動回路32に出力して本アシスト制御ルーチンを一旦終了する。本制御ルーチンは、所定の短い周期で繰り返し実行される。従って、本制御ルーチンの実行により、モータ駆動回路32のスイッチング素子Tr1〜Tr4のデューティ比がPWM制御により制御されて、運転者の操舵操作に応じた操舵アシストトルクが得られる。また、このアシスト制御においては、モータ推定温度Tmに応じた電流制限が加えられることにより、電動モータ15およびモータ駆動回路32の過熱損傷を防止することができる。
【0060】
尚、上記アシスト制御ルーチンにおいて、温度センサ25により基板温度Tbを検出し、基板温度Tbに基づいて上限電流値Ibmaxを設定する処理をステップS18の処理に追加するようにしてもよい。この場合、マイコン41は、図5に示す上限電流値マップと同様なマップ(横軸はTb、縦軸はIbmax)を使って、基板温度Tbが高いほど上限電流値Ibmaxを小さな値に設定する。そして、モータ推定温度Tmから設定される上限電流値Imaxと、基板温度Tbから設定される上限電流値Ibmaxとのうち、小さいほうの値を上限電流値Imaxに設定する。従って、モータ駆動回路32のスイッチング素子Tr1〜Tr4が、電動モータ15よりも先に過熱防止温度に近づくような状況が発生するシステムにおいては、モータ駆動回路32の過熱防止をも行うことができる。
【0061】
次に、モータ温度推定処理について説明する。図6は、マイコン41により行われるモータ温度推定ルーチンを表すもので、マイコン41のROM内に制御プログラムとして記憶され、短い周期で繰り返し実行される。このルーチンは、イグニッションスイッチ60がオンされて所定の初期診断が完了すると起動し、後述するデータ読み書き制御ルーチンの終了とともに終了する。
【0062】
モータ温度推定ルーチンが起動すると、マイコン41は、まず、ステップS21において、電流センサ24により検出される電動モータ15に流れる電流値Imを読み込む。続いて、ステップS22において、ヒートマス温度推定用電流二乗積算値SUM1(以下、ヒートマス温度値SUM1と呼ぶ)を計算する。ヒートマス温度値SUM1は、電動モータ15の筐体の上昇温度に相当する値を表すもので、次式(1)により計算される。
SUM1(n)=SUM1(n-1)+Ka1・(Im−SUM1(n-1)) ・・・・(1)
【0063】
ここで、Ka1は、電流値Imの二乗値に応じて電動モータ15の筐体が温度変化する程度を表す予め設定した係数である。また、(n)は、所定の短い周囲にて繰り返し実行されるモータ温度推定ルーチンにおける今回の処理により演算される値であることを意味し、(n-1)は、モータ温度推定ルーチンにおける1演算周期前の処理で演算された値であることを意味する。従って、SUM1(n)は、今回計算により求めようとするヒートマス温度値SUM1であり、SUM1(n-1)は、1演算周期前に算出したヒートマス温度値SUM1である。以下の説明において、(n),(n-1)は、演算周期を特定する必要が無い場合には記載しない。
【0064】
続いて、マイコン41は、ステップS23において、コイル温度推定用電流二乗積算値SUM2(以下、コイル温度値SUM2と呼ぶ)を計算する。コイル温度値SUM2は、電動モータ15のコイルの上昇温度に相当する値を表すもので、次式(2)により計算される。
SUM2(n)=SUM2(n-1)+Ka2・(Im−SUM2(n-1)) ・・・・(2)
ここで、Ka2は、電流値Imの二乗値に応じて電動モータ15のコイルが温度変化する程度を表す予め設定した係数である。
【0065】
続いて、マイコン41は、ステップS24において、ブラシ温度推定用電流二乗積算値SUM3(以下、ブラシ温度値SUM3と呼ぶ)を計算する。ブラシ温度値SUM3は、電動モータ15のブラシの上昇温度に相当する値を表すもので、次式(3)により計算される。
SUM3(n)=SUM3(n-1)+Ka3・(Im−SUM3(n-1)) ・・・・(3)
ここで、Ka3は、電流値Imの二乗値に応じて電動モータ15のブラシが温度変化する程度を表す予め設定した係数である。
【0066】
続いて、マイコン41は、ステップS25において、モータ推定温度Tmを計算する。モータ推定温度Tmは、電動モータ15の発熱による温度上昇分を表し、ヒートマス温度値SUM1(n),コイル温度値SUM2(n),ブラシ温度値SUM3(n)に基づいて、次式(4)により計算される。
Tm=Kb1・SUM1(n)+Kb2・SUM2(n)+Kb3・SUM3(n)
・・・・(4)
ここで、Kb1,Kb2,Kb3は、それぞれ、ヒートマス温度値SUM1,コイル温度値SUM2,ブラシ温度値SUM3がモータ推定温度に影響する度合(ゲイン)を考慮した上昇温度換算係数である。
【0067】
このように、本実施形態においては、電動モータ15の発熱を、筐体における発熱要素と、コイルにおける発熱要素と、ブラシにおける発熱要素に分け、各発熱要素毎の上昇温度にゲインを乗じた値を加算してモータ推定温度Tmを計算しているため、その推定精度が高い。
【0068】
尚、本実施形態においては、モータ推定温度Tmは、電動モータ15の発熱による温度上昇分を表すものであり、電動モータ15自身の温度を表すものではないが、例えば、外気温センサを設け、外気温センサにより検出される外気温に電動モータ15の温度上昇分を加算した値をモータ推定温度とするなど、電動モータ15自身の温度を推定するようにしてもよい。どちらでも過熱防止を図ることができるからである。
【0069】
続いて、マイコン41は、ステップS26において、今回計算したヒートマス温度値SUM1(n),コイル温度値SUM2(n),ブラシ温度値SUM3(n)を、1演算周期前のヒートマス温度値SUM1(n-1),コイル温度値SUM2(n-1),ブラシ温度値SUM3(n-1)として記憶しておく。この処理は、1演算周期後のステップS42,S43,S44の演算処理のために行うものである。
【0070】
マイコン41は、ステップS26の処理を行った後、モータ温度推定ルーチンを一旦終了する。モータ温度推定ルーチンは、所定の短い周期で繰り返し実行されるため、モータ推定温度Tmが所定時間毎に順次計算されることになる。こうして逐次計算される最新のモータ推定温度Tmは、アシスト制御におけるモータ上限電流値Imaxを決定するために利用される(S16)。
【0071】
モータ推定温度Tmを算出するに当たっては、アシスト制御開始からの電動モータ15の発熱量だけでは推定できず、アシスト制御開始時において電動モータ15に残存していた熱も考慮しなければならない。従って、ヒートマス温度値SUM1,コイル温度値SUM2,ブラシ温度値SUM3の初期値が必要となる。そこで、本実施形態においては、アシスト制御ルーチンの終了時に、その時点におけるヒートマス温度値SUM1,コイル温度値SUM2,ブラシ温度値SUM3、および、温度センサ25により検出された基板温度Tbを表す温度データをEEPROM44に書き込み、次回のアシスト制御ルーチンを開始するときに、EEPROM44に記憶されている温度データを読み出す。そして、温度データで表される値に基づいて後述する推定温度初期値演算ルーチンを実行することにより、ヒートマス温度値SUM1,コイル温度値SUM2,ブラシ温度値SUM3の初期値を演算する。
【0072】
本実施形態においては、ヒートマス温度値SUM1,コイル温度値SUM2,ブラシ温度値SUM3に基づいてモータ推定温度Tmを演算するため、ヒートマス温度値SUM1,コイル温度値SUM2,ブラシ温度値SUM3を一組としたデータは、モータ推定温度Tmを表すデータとなる。従って、以下、EEPROM44に記憶されたヒートマス温度値SUM1,コイル温度値SUM2,ブラシ温度値SUM3をまとめてモータ推定温度データと呼ぶ。また、EEPROM44に記憶された基板温度Tbのデータを基板温度データTbと呼び、基板温度データTbで表される温度の値を示す場合には、その値を基板温度Tboと呼ぶ。
【0073】
次に、マイコン41の実行するデータ読み書き制御処理について説明する。図7は、マイコン41の実行するデータ読み書き制御ルーチンを表す。このルーチンは、マイコン41のROM内に制御プログラムとして記憶されており、イグニッションスイッチ60がオンすると起動する。また、図8は、その処理を時系列に表したタイミングチャートである。
【0074】
イグニッションスイッチ60がオフ状態からオン状態に切り替わると、電源装置50からECU30に電源供給される。マイコン41は、電源供給を受けると、本制御ルーチンを開始し(時刻t0)、まず、ステップS31において初期診断を行う。つまり、電動パワーステアリング装置1におけるシステム内の診断および初期設定等を行う。
【0075】
続いて、マイコン41は、ステップS50において、推定温度初期値演算処理を行う(時刻t1)。この推定温度初期値演算処理については、図9に示す推定温度初期値演算ルーチンを使って後述する。推定温度初期値演算ルーチンでは、EEPROM44からモータ推定温度データ(ヒートマス温度値SUM1,コイル温度値SUM2,ブラシ温度値SUM3)および基板温度データTbを読み込み、これらのデータに基づいて、モータ推定温度Tmを計算するための初期値((ヒートマス温度値SUM1(n-1),コイル温度値SUM2(n-1),ブラシ温度値SUM3(n-1))を算出する。尚、推定温度初期値演算処理は、電動パワーステアリング装置1の初期診断時において行われる。
【0076】
マイコン41は、初期診断が完了すると、ステップS32において、上述したアシスト制御を開始する(時刻t2)。このアシスト制御の開始時には、電源リレー57がオンされて電動モータ15への電源供給回路が形成される。このとき、アシスト制御と並行してモータ温度推定処理も開始される。
【0077】
アシスト制御が開始されると、マイコン41は、まずステップS33において、フラグFが「1」であるか否かを判断する。このフラグFは、本制御ルーチンが起動されたときにはF=0に設定され、後述のステップS35の処理により仮温度データがEEPROM44に書き込まれるとF=1に設定されるものである。アシスト制御が開始された直後は、F=0に設定されているため、ステップS33の判断は「NO」となり、マイコン41は、その処理をステップS34に進める。
【0078】
ステップS34においては、仮温度データの書き込みタイミングか否かを判断する。この書き込みタイミングは、例えば、推定温度初期値演算処理(S50)を行ってから設定時間(例えば、数秒)だけ経過した時点に設定されている。従って、ここでは、推定温度初期値演算処理(S50)を行ってからの経過時間が設定時間に達したか否かを判断する。マイコン41は、書き込みタイミングではない場合は、ステップS37に処理を進めてイグニッションスイッチ60がオフになったか否かを判断する。イグニッションスイッチ60がオン状態を維持する間は、ステップS33に戻り上述した判断を繰り返す。
【0079】
こうした判断が繰り返され、仮温度データの書き込みタイミングとなると(S34:Yes)、マイコン41は、ステップS35において、予めROMに記憶されている仮温度データを読み出してEEPPROM44に書き込む(時刻t3)。EEPPROM44には、後述するステップS39,S42において、アシスト制御の終了時におけるモータ推定温度データ(ヒートマス温度値SUM1,コイル温度値SUM2,ブラシ温度値SUM3)、および、基板温度データTbからなる温度データが書き込まれている。そして、この温度データを使ってステップS50の推定温度初期値演算処理によりモータ推定温度Tmを算出する。従って、ステップS35においては、前回のアシスト制御終了時に書き込んだ温度データを仮温度データに書き換える処理である。
【0080】
このステップS35の処理は、アシスト制御途中でマイコン41がリセットしてモータ推定温度Tmを表す情報が消失してしまう事態に備えて行う処理であり、そうした事態が発生した場合にのみ、次のアシスト制御の開始時におけるモータ推定温度Tmを演算するための初期値として仮温度データが使用される。
【0081】
この仮温度データは、仮ヒートマス温度値SUM1max,仮コイル温度値SUM2max,仮ブラシ温度値SUM3max、および、仮基板温度Tbmaxから構成されており、過熱防止を図る観点でモータ推定温度Tmが高い温度に演算されるような値に設定されている。つまり、仮ヒートマス温度値SUM1max,仮コイル温度値SUM2max,仮ブラシ温度値SUM3maxは、ステップS25の計算式(4)におけるSUM1(n),SUM2(n),SUM3(n)に代入して使用されるものであって、SUM1max,SUM2max,SUM3maxを代入して計算して得られたモータ推定温度Tmが、電動モータ15がどのような発熱状態であっても過熱防止できるような高温度(過熱防止用高温度)となるように予め設定されている。つまり、電動モータ15のとり得る温度の最高温度に相当する値に設定されている。
【0082】
また、仮基板温度Tbmaxは、電動モータ15がSUM1max,SUM2max,SUM3maxを用いて計算して得られたモータ推定温度Tmとなるときに基板温度Tbがとる温度に相当する値であって、基板温度Tbがとり得る最高温度になるように予め設定されている。このステップS35の処理は、マイコン41がリセットしてアシスト制御が中断したときに、電動モータ15がどのような発熱状態にあったかわからないため安全上の処置である。
【0083】
マイコン41は、ステップS35にて仮温度データのEEPROM44への書き込みが完了すると、続くステップS36において、フラグFをF=1に設定する。従って、それ以降は、ステップS33の判断は「YES」となり、ステップS37のイグニッションスイッチ60のオフ状態判定が継続されることになる。
【0084】
そして、イグニッションスイッチ60が操作されオフ状態が検知されると(時刻t4)、ステップS38においてアシスト制御を終了する。従って、これ以降、電動モータ15は駆動制御されない。続いて、マイコン41は、ステップS39において、このアシスト制御終了時におけるモータ推定温度データ(SUM1,SUM2,SUM3)、および、温度センサ25により検出された基板温度を表す基板温度データTbをEEPROM44に書き込む。従って、先のステップS35でEEPROM44に書き込まれた仮温度データは、アシスト制御終了時における温度データ(SUM1,SUM2,SUM3,Tb)に書き換えられる。
【0085】
続いて、マイコン41は、ステップS40においてタイマを起動し、ステップS41にて所定時間(例えば、10分)の経過を判断する。そして、アシスト制御が終了して所定時間の経過が確認されると(S41:YES)、マイコン41は、ステップS42において、その時点におけるモータ推定温度データ(SUM1,SUM2,SUM3)、および、基板温度データTbをEEPROM44に書き込む(時刻t5)。マイコン41は、アシスト制御の終了後においてもモータ温度推定ルーチンによりモータ推定温度Tmの演算を行っている。この場合、電動モータ15には所定時間以上電流が流れていない状態となっているため、モータ推定温度データで表されるモータ推定温度Tmおよび基板温度Tbは、ステップS39における値より小さな値となる。
【0086】
こうして、先のステップS39においてEEPROM44に記憶された温度データは、最終的には、その所定時間経過後の温度データに書き換えられる。この温度データ(SUM1,SUM2,SUM3,Tb)は、次回のイグニッションスイッチ60がオンしたときに、ステップS50の推定温度初期値演算処理において読み出され、モータ推定温度データ(SUM1,SUM2,SUM3)の初期値の演算に使用される。
【0087】
ステップS42にて温度データのEEPROM44への書き込みが完了すると、マイコン41は、ステップS43において、電源リレー57をオフして全ての処理を終了する。尚、所定時間の待機中(時刻t4〜t5)においてイグニッションスイッチ60がオン状態に切り替わった場合には、マイコン41は、最終的な温度データの書き込みを行うことなく上述した初期診断(S31)からの処理を開始する。
【0088】
次に、推定温度初期値演算処理について説明する。図9は、マイコン41の実行する推定温度初期値演算ルーチンを表す。この推定温度初期値演算ルーチンは、データ読み書き制御ルーチンにおけるステップS50のサブルーチンとして組み込まれている。
【0089】
推定温度初期値演算ルーチンが起動すると、マイコン41は、まずステップS51において、EEPROM44に記憶されている温度データ(SUM1,SUM2,SUM3,Tb)を読み出す。続いて、ステップS52において、温度データの状態をチェックサム(Check Sum:誤り検出符号)を使ってチェックする。
【0090】
EEPROM44には、ヒートマス温度値SUM1,コイル温度値SUM2,ブラシ温度値SUM3,基板温度Tbを別々に記憶するための4つの温度データフィールドと、チェックサムを記憶するためのチェックサムフィールドが設けられている。マイコン41は、温度データ(SUM1,SUM2,SUM3,Tb)をEEPROM44に書き込む場合、ヒートマス温度値SUM1SUM1,コイル温度値SUM2,ブラシ温度値SUM3,基板温度Tbを各温度データフィールドに順番に書き込む。また、温度データ(SUM1,SUM2,SUM3,Tb)からチェックサムを計算し、その計算したチェックサムをチェックサムフィールドに書き込む。
【0091】
マイコン41は、ステップS52において、EEPROM44から読み出した温度データ(SUM1,SUM2,SUM3,Tb)のチェックサムを計算し、このチェックサムがチェックサムフィールドに記憶されている値と同じであるか否かを判断することにより、温度データ(SUM1,SUM2,SUM3,Tb)の状態が正常であるか否かを判定する。
【0092】
例えば、アシスト制御が終了して温度データをEEPROM44に書き込んでいる途中で、イグニッションスイッチ60がオンされてクランキング動作が行われた場合には、バッテリ51の一時的な電圧降下により、マイコン41がリセットしてしまうことがある。そうした場合には、EEPROM44に温度データが正しく書き込めない。そこで、マイコン41は、ステップS52において、チェックサムを使って温度データ(SUM1,SUM2,SUM3,Tb)の異常の有無を判別する。
【0093】
続いて、マイコン41は、ステップS53において、温度センサ25にて検出される現時点の基板温度Tbを読み込む。続いて、ステップS54において、温度センサ25に異常が生じているか否かについてチェックする。例えば、温度センサ25により検出される基板温度Tbが、予め想定される範囲を超える異常値となる状態、電源ラインの異常(断線、短絡)等を検出することにより温度センサ25の異常を判定する。
【0094】
また、必ずしもセンサ異常とは言えないが、基板温度Tbに応じてモータ推定温度を補正すべきでない状況にあるときにも、便宜上センサ異常であると判定する。この補正すべきでない状況としては、温度センサ25により検出された基板温度Tbが予め設定した推定温度補正許可基板温度よりも高くなっている状況、および、温度センサ25により検出された基板温度TbがEEPROM44から読み出した基板温度データTbの表す基板温度Tboに比べて高くなっている状況に設定されている。
【0095】
続いて、マイコン41は、ステップS55において、温度データのチェック結果に基づいて、温度データが正常であったか否かを判断し、正常であった場合には、続くステップS56において、温度センサ25が正常であったか否かを判断する。そして、温度データ、温度センサ25ともに正常であった場合には、ステップS57において、基板温度変化値ΔTを算出する。この場合、基板温度変化値ΔTは、EEPROM44に記憶されている基板温度データTbが表す温度値である基板温度Tboから、ステップS53で温度センサ25により検出された基板温度Tbを減算した値(Tbo−Tb)に設定される。
【0096】
続いて、マイコンは、ステップS58において、ヒートマス温度値SUM1を計算するための初期値SUM1(n-1)を次式(5)により計算し、コイル温度値SUM2を計算するための初期値SUM2(n-1)を次式(6)により計算し、ブラシ温度値SUM3を計算するための初期値SUM3(n-1)を次式(7)により計算する。
SUM1(n-1)=SUM1o−α・ΔT ・・・・(5)
SUM2(n-1)=SUM2o−β・ΔT ・・・・(6)
SUM3(n-1)=SUM3o−γ・ΔT ・・・・(7)
【0097】
ここで、SUM1oは、EEPROM44に記憶されているヒートマス温度値SUM1の値を表し、SUM2oは、EEPROM44に記憶されているコイル温度値SUM2の値を表し、SUM3oは、EEPROM44に記憶されているブラシ温度値SUM3の値を表す。また、α,β,γは、予め設定された補正係数である(例えば、0.5)。この補正係数α,β,γは、発熱要素の特性に合わせて別々の値に設定することが好ましいが、同一の値に設定してもよい。また、補正係数α,β,γは、必ずしも一定値にする必要はなく、基板温度変化値ΔTに応じて変化させるようにしてもよい。
【0098】
こうして算出された初期値SUM1(n-1),SUM2(n-1),SUM3(n-1)は、上述したモータ温度推定ルーチン(図6)が開始されたときの最初のステップS22,S23,S24において使用される。これにより、ステップS25において、モータ推定温度Tmが計算される。
【0099】
また、ステップS58の処理においては、基板温度変化値ΔTに応じて、基板温度変化値ΔTが大きいほど、初期値SUM1(n-1),SUM2(n-1),SUM3(n-1)が小さくなくなるように、EEPROM44に記憶されている値(SUM1o,SUM2o,SUM3o)を補正して算出される。このことは、基板温度変化値ΔTが大きいほど(検出した基板温度Tbが低いほど)モータ推定温度Tmの初期値を小さくする側に補正することを意味している。電動モータ15の温度は、基板温度Tbと関連性を有する。従って、アシスト制御の開始時において基板温度Tbが前回のアシスト制御終了時における基板温度Tboよりも低下していれば、その低下量に比例して低下すると推測される。そこで、基板温度変化値ΔTに比例した温度だけ、モータ推定温度Tmの演算に関わる項の値(SUM1o,SUM2o,SUM3o)を小さくするわけである。これにより、適正なモータ推定温度Tmを演算することができる。
【0100】
一方、温度センサ25が異常であると判定された場合(S56:No)には、ステップS59において、基板温度変化値ΔTをゼロ(ΔT=0)に設定し、上記式(5)〜(7)を使って初期値SUM1(n-1),SUM2(n-1),SUM3(n-1)を計算する。従って、この場合は、次式のように、初期値SUM1(n-1),SUM2(n-1),SUM3(n-1)は、基板温度変化値ΔTにより補正されることなく、EEPROM44に記憶されているヒートマス温度値SUM1o,コイル温度値SUM2o,ブラシ温度値SUM3oと同じ値に設定される。
SUM1(n-1)=SUM1o
SUM2(n-1)=SUM2o
SUM3(n-1)=SUM3o
【0101】
また、ステップS55において、EEPROM44の温度データが異常であると判断された場合には、ステップS60において、温度センサ25が正常であったか否かを判断する。そして、温度センサ25が正常であると判断した場合(S60:Yes)、つまり、温度データが異常であり、かつ、温度センサ25が正常であった場合には、ステップS61において、基板温度変化値ΔTを算出する。この場合、マイコン41は、予めROMに記憶されている仮基板温度Tbmaxを読み出して、この仮基板温度Tbmaxから、ステップS53で温度センサ25により検出された基板温度Tbを減算した値(Tbmax−Tb)を基板温度変化値ΔTに設定する。この仮基板温度Tbmaxは、基板温度Tbがとり得る最高の温度になるように予め設定されており、ステップS35において使用したものと同一でよい。
【0102】
続いて、マイコンは、ステップS62において、ヒートマス温度値SUM1を計算するための初期値SUM1(n-1)を次式(8)により計算し、コイル温度値SUM2を計算するための初期値SUM2(n-1)を次式(9)により計算し、ブラシ温度値SUM3を計算するための初期値SUM3(n-1)を次式(10)により計算する。
SUM1(n-1)=SUM1max−α・ΔT ・・・・(8)
SUM2(n-1)=SUM2max−β・ΔT ・・・・(9)
SUM3(n-1)=SUM3max−γ・ΔT ・・・・(10)
【0103】
ここで、SUM1max,SUM2max,SUM3maxは、予めROMに記憶された仮ヒートマス温度値SUM1max,仮コイル温度値SUM2max,仮ブラシ温度値SUM3maxであって、過熱防止を図る観点でモータ推定温度Tmが高い温度に演算されるような値に設定されている。尚、仮ヒートマス温度値SUM1max,仮コイル温度値SUM2max,仮ブラシ温度値SUM3maxは、ステップS35において使用したものと同一でよい。
【0104】
こうして算出された初期値SUM1(n-1),SUM2(n-1),SUM3(n-1)は、上述したモータ温度推定ルーチン(図6)が開始されたときの最初のステップS22,S23,S24において使用される。これにより、ステップS25において、モータ推定温度Tmが計算される。
【0105】
上述したように、温度データをEEPROM44に書き込んでいる途中でマイコン41がリセットしてしまった場合には、EEPROM44には正しい温度データが書き込まれていない。そこで、ステップS62においては、EEPROM44のモータ推定温度データに代えて、電動モータ15がどのような発熱状態であっても過熱防止できるような高温度に設定された仮ヒートマス温度値SUM1max,仮コイル温度値SUM2max,仮ブラシ温度値SUM3maxを用いる。
【0106】
この場合、そのまま各仮温度値SUM1max,SUM2max,SUM3maxを用いてモータ推定温度Tmを計算すると、実際には電動モータ15が低温状態であってもアシスト制御における上限電流値Imaxが低く設定され、ハンドル操作が重くなり運転者の負担が増大してしまう。
【0107】
そこで、マイコン41は、モータ推定温度Tmの計算にあたって、予め設定された仮基板温度Tbmaxから温度センサ25により検出された基板温度Tbを減算した基板温度変化値ΔT(Tbmax−Tb)を使って、各仮温度値SUM1max,SUM2max,SUM3maxを補正した値を初期値SUM1(n-1),SUM2(n-1),SUM3(n-1)に設定する。従って、モータ推定温度Tmは、基板温度変化値ΔTが大きいほど(検出した基板温度Tbが低いほど)小さくなる側に補正される。
【0108】
尚、基板温度変化値ΔT(Tbmax−Tb)は,ステップS57で計算した基板温度変化値ΔT(Tbo−Tb)よりも大きな値となるが、各仮温度値SUM1max,SUM2max,SUM3maxが各部の最高温度相当の値に設定されており、この仮温度値SUM1max,SUM2max,SUM3maxを基板温度変化値ΔT(Tbmax−Tb)で補正するため、演算されたモータ推定温度Tmは、適正値となる。このため、EEPROM44に温度データを書き込めず仮温度値SUM1max,SUM2max,SUM3maxを使ってモータ推定温度Tmを計算した場合であっても、過熱防止機能を維持できるとともに、電動モータ15による操舵アシストが十分得られる。このため、運転者にとって使い勝手がよい。
【0109】
一方、ステップS60において、温度センサ25が異常であると判定された場合には、ステップS63において、基板温度変化値ΔTをゼロ(ΔT=0)に設定し、上記式(8)〜(10)を使って初期値SUM1(n-1),SUM2(n-1),SUM3(n-1)を計算する。従って、この場合は、次式のように、初期値SUM1(n-1),SUM2(n-1),SUM3(n-1)は、基板温度変化値ΔTにより補正されることなく、ROMから読み出した仮ヒートマス温度値SUM1max,仮コイル温度値SUM2max,仮ブラシ温度値SUM3maxと同じ値に設定される。
SUM1(n-1)=SUM1max
SUM2(n-1)=SUM2max
SUM3(n-1)=SUM3max
【0110】
マイコン41は、ステップS58あるいはステップS62において、初期値SUM1(n-1),SUM2(n-1),SUM3(n-1)を演算すると、推定温度初期値演算ルーチンを終了する。従って、モータ温度推定ルーチン(図6)が開始されると、ステップS22〜ステップS24において、この初期値SUM1(n-1),SUM2(n-1),SUM3(n-1)を使ってヒートマス温度値SUM1,コイル温度値SUM2,ブラシ温度値SUM3が計算され、ステップS25において、それらの計算値からモータ推定温度Tmが計算されることになる。
【0111】
以上説明した本実施形態の電動パワーステアリング装置1によれば、以下の効果を奏する。
1.電動モータ15の温度を推定し、この推定温度Tmに基づいて電動モータ15に流すことのできる上限電流値Imaxを設定しているため、電動モータ15やモータ駆動回路32の過熱防止を行うことができる。
【0112】
2.電動モータ15の温度推定に当たっては、EEPROM44に記憶されている温度データのチェックを行い、温度データが異常である場合には、過熱防止用に高温度に設定された仮温度データ(SUM1max,SUM2max,SUM3max)を用いてモータ推定温度Tmの計算を開始するため、そうした場合であっても、過熱防止を確実に行うことができる。
【0113】
3.温度データが異常である場合には、基板温度変化値ΔT(Tbmax−Tb)を使って、基板温度変化値ΔT(Tbmax−Tb)が大きくなるほど、小さくなるように補正した初期値SUM1(n-1),SUM2(n-1),SUM3(n-1)を用いてモータ推定温度Tmの計算を開始するため(S61,S62)、過熱防止機能を維持しつつ、電動モータ15による操舵アシスト機能が十分得られ、運転者の負担が低減される。
【0114】
4.温度センサ25の異常が検出された場合には、基板温度変化値ΔT(Tbmax−Tb)による温度補正を行わないため(S63)、確実に過熱防止を行うことができる。この場合、ハンドル操作が重くなるため、運転者に異常を気付かせることができる。
【0115】
5.温度データが正常である場合には、基板温度変化値ΔT(Tbo−Tb)を使って、基板温度変化値ΔT(Tbo−Tb)が大きくなるほど、小さくなるように補正した初期値SUM1(n-1),SUM2(n-1),SUM3(n-1)を用いてモータ推定温度Tmの計算を開始するため(S57〜S58)、モータ推定温度Tmを最適な値にすることができる。これにより、電動モータ15の電流制限が一層適切に行われ、良好な過熱防止性能と操舵操作性能とが得られる。
【0116】
6.温度データが正常であっても温度センサ25の異常が検出された場合には、基板温度変化値ΔT(Tbo−Tb)による温度補正を行わないため(S59)、確実に過熱防止を行うことができる。
【0117】
7.モータ温度を推定するに当たって、電動モータ15の発熱を、筐体における発熱要素と、コイルにおける発熱要素と、ブラシにおける発熱要素とに分け、各発熱要素毎の上昇温度にゲインを乗じた値を加算してモータ推定温度Tmを計算しているため(S22〜S25)、その推定精度が高い。また、初期値SUM1(n-1),SUM2(n-1),SUM3(n-1)の計算にあたっては、補正係数α,β,γを発熱要素毎に設定しているため(S58,S62)、それぞれ最適な値にすることができる。この結果、精度の良い過熱防止を行うことができる。
【0118】
8.アシスト制御中にマイコン41がリセットして推定温度データが失われる事態に備えて、EEPROM44に仮温度データを書き込むようにしているため、確実に過熱防止を行うことができる(S35)。
【0119】
以上、本実施形態の電動パワーステアリング装置について説明したが、本発明は上記実施形態に限定されるものではなく、本発明の目的を逸脱しない限りにおいて種々の変更が可能である。
【0120】
例えば、本実施形態においては、電動モータ15の発熱を3つの発熱要素に分け、それぞれの温度上昇分からモータ推定温度Tmを計算しているが、必ずしも、そのように発熱要素に分ける必要はなく、単に、電動モータ15に流れる電流の二乗の積算値により計算するようにしてもよい。
【0121】
また、本実施形態においては、基板温度Tbを使って仮温度値SUM1max,SUM2max,SUM3maxを補正するようにしているが、必ずしも基板温度Tbを用いる必要はなく、電動モータ15の温度変化とともに温度が変化する部位の温度を検出し、その温度を使って補正するようにしてもよい。例えば、電動モータ15の近傍に温度センサを設け、この温度センサにより検出されるモータ雰囲気温度を使って補正するようにしてもよい。
【0122】
また、本実施形態においては、基板温度変化値ΔTを使って、温度値(SUM1max,SUM2max,SUM3max、あるいは、SUM1o,SUM2o,SUM3o)を補正して初期値SUM1(n-1),SUM2(n-1),SUM3(n-1)を演算しているが、基板温度変化値ΔTを使わずに、単に、基板温度Tb(アシスト制御を開始するときの基板温度)に基づいて、基板温度Tbが低いほど初期値SUM1(n-1),SUM2(n-1),SUM3(n-1)が減少するように温度値(SUM1max,SUM2max,SUM3max、あるいは、SUM1o,SUM2o,SUM3o)を補正する構成であってもよい。
【0123】
また、本実施形態においては、チェックサムを使って温度データの異常を検出しているが、データの異常検出に関しては、チェックサムに限らず種々の手法が知られているため、それらの任意のものを使用すればよい。
【0124】
また、本実施形態においては、温度データをEEPROM44に記憶するようにしているが、必ずしもEEPROM44を用いる必要はなく、他の不揮発性メモリに記憶するようにしてもよい。また、電動モータに関しても、ブラシモータに限らずブラシレスモータであってもよいし、単相モータに限らず3相モータであってもよい。
【0125】
また、本実施形態の電動パワーステアリングは、電動モータ15でステアリングシャフト12に回転力を付与するコラムアシストタイプであるが、電動モータ15でラックバー14に軸力を付与するラックアシストタイプに適用しても良い。
【0126】
また、本実施形態においては、ハンドル操作をアシストする電動パワーステアリング装置について説明したが、操舵ハンドルと転舵輪とを機械的に切り離したステアリングバイワイヤ方式の操舵装置にも適用できる。つまり、運転者のハンドル操作に対して操舵反力トルクを発生する電動モータと、転舵輪を操舵するための操舵トルクを発生する電動モータの少なくとも一方を備え、その少なくとも一方の電動モータの温度を推定し、その推定温度に基づいて電流制限を加えるようにして過熱防止を図るものであってもよい。
【符号の説明】
【0127】
1…電動パワーステアリング装置、10…操舵機構、11…操舵ハンドル、15…電動モータ、21…操舵トルクセンサ、22…車速センサ、23…回転角センサ、24…電流センサ、25…温度センサ、30…電子制御ユニット(ECU)、32…モータ駆動回路、40…電子制御回路、41…マイコン、42…入力インタフェース、43…出力インタフェース、44…EEPROM、50…電源装置、51…バッテリ、60…イグニッションスイッチ、FW1,FW2…左右前輪(操舵輪)、SUM1…ヒートマス温度推定用電流二乗積算値、SUM1max…仮ヒートマス温度値、SUM1o…ヒートマス温度値、SUM2…コイル温度推定用電流二乗積算値、SUM2max…仮コイル温度値、SUM2o…コイル温度値、SUM3…ブラシ温度推定用電流二乗積算値、SUM3max…仮ブラシ温度値、SUM3o…ブラシ温度値、Tb…基板温度、Tbmax…仮基板温度、Tbo…基板温度、Th…操舵トルク、Tm…モータ推定温度、α,β,γ…補正係数、ΔT…基板温度変化値。

【特許請求の範囲】
【請求項1】
操舵トルクを発生する電動モータと、
前記電動モータの温度を逐次演算により推定する温度推定手段と、
操舵ハンドルの操舵状態を検出する操舵検出手段と、
前記推定された電動モータの推定温度に基づいた電流制限を加えながら、前記検出された操舵ハンドルの操舵状態に基づいて前記電動モータの目標通電制御量を演算し、前記演算された目標通電制御量に従って前記電動モータを駆動制御するモータ制御手段と、
前記電動モータの推定温度に関する推定温度データを記憶するための不揮発性記憶手段と、
前記電動モータの駆動制御の終了時に前記温度推定手段により推定された前記電動モータの推定温度に関する推定温度データを前記不揮発性記憶手段に書き込むとともに、次回の前記電動モータの駆動制御開始時に前記不揮発性記憶手段に記憶されている推定温度データを読み出す推定温度データ読み書き手段と
を備え、
前記温度推定手段は、前記電動モータの駆動制御開始時に前記推定温度データ読み書き手段により読み出された推定温度データを利用して前記電動モータの推定温度の演算を開始する操舵装置において、
前記電動モータの温度変化とともに温度が変化する部位の温度を関連温度として測定する関連温度測定手段と、
前記電動モータの駆動制御開始時に前記不揮発性記憶手段のデータが異常であるか否かを判断するデータ異常検出手段と、
予め過熱防止用高温度に設定された仮推定温度初期値を記憶しており、前記不揮発性記憶手段のデータの異常が検出された場合に、前記関連温度測定手段により測定される前記関連温度を取得し、前記仮推定温度初期値を前記関連温度が低いほど減少するように補正した補正推定温度初期値を演算する異常時補正推定温度初期値演算手段と
を備え、
前記温度推定手段は、前記不揮発性記憶手段のデータの異常が検出された場合、前記異常時補正推定温度初期値演算手段により演算された補正推定温度初期値を使って前記電動モータの推定温度の演算を開始することを特徴とする操舵装置。
【請求項2】
前記異常時補正推定温度初期値演算手段は、予め過熱防止用高温度に設定された仮関連温度初期値を記憶しており、前記仮関連温度初期値と前記関連温度測定手段により測定される関連温度との温度差に基づいて、前記仮推定温度初期値を前記温度差が大きいほど減少するように補正した補正推定温度初期値を演算することを特徴とする請求項1記載の操舵装置。
【請求項3】
前記電動モータの駆動制御の終了時に前記関連温度測定手段により測定された前記関連温度に関する関連温度データを前記不揮発性記憶手段に書き込むとともに、次回の前記電動モータの駆動制御開始時に前記不揮発性記憶手段に記憶されている関連温度データを読み出す関連温度データ読み書き手段と、
前記電動モータの駆動制御開始時に前記不揮発性記憶手段のデータの異常が検出されない場合には、前記関連温度データ読み書き手段により読み出された関連温度データで表される関連温度と前記関連温度測定手段により測定される関連温度との温度差に基づいて、前記推定温度データ読み書き手段により読み出された推定温度データで表される推定温度を前記温度差が大きいほど減少するように補正した補正推定温度初期値を演算する正常時補正推定温度初期値演算手段と
を備え、
前記温度推定手段は、前記不揮発性記憶手段のデータの異常が検出されない場合には、前記正常時補正推定温度初期値演算手段により演算された補正推定温度初期値を使って前記電動モータの推定温度の演算を開始することを特徴とする請求項1または2記載の操舵装置。
【請求項4】
前記関連温度測定手段が異常であるか否かを判断する温度測定異常検出手段を備え、
前記正常時補正推定温度初期値演算手段は、前記関連温度測定手段の異常が検出された場合には、前記推定温度データ読み書き手段により読み出された推定温度データで表される推定温度を補正することなく推定温度初期値として設定することを特徴とする請求項3記載の操舵装置。
【請求項5】
前記関連温度測定手段が異常であるか否かを判断する温度測定異常検出手段を備え、
前記異常時補正推定温度初期値演算手段は、前記関連温度測定手段の異常が検出された場合には、前記仮推定温度初期値を補正することなく推定温度初期値として設定することを特徴とする請求項1ないし請求項4の何れか一項記載の操舵装置。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate


【公開番号】特開2012−46049(P2012−46049A)
【公開日】平成24年3月8日(2012.3.8)
【国際特許分類】
【出願番号】特願2010−189273(P2010−189273)
【出願日】平成22年8月26日(2010.8.26)
【出願人】(000003207)トヨタ自動車株式会社 (59,920)
【Fターム(参考)】