以下では、本発明による電動車両の制御装置を、電動機(以下、電動モータ、或は単にモータと呼ぶ)を駆動源とする電気自動車に適用した例について説明する。
[第1実施形態]
図1は、第1実施形態における電動車両の制御装置を備えた電気自動車の主要構成を示すブロック図である。本発明の電動車両の制御装置は、車両の駆動源の一部または全部として電動モータを備え、電動モータの駆動力により走行可能な電動車両に適用可能である。電動車両には、電気自動車だけでなく、ハイブリッド自動車や燃料電池自動車も含まれる。特に、本実施形態における電動車両の制御装置は、アクセルペダルの操作のみで車両の加減速や停止を制御することができる車両に適用することができる。この車両ではドライバは、加速時にアクセルペダルを踏み込み、減速時や停止時には、踏み込んでいるアクセルペダルの踏み込み量を減らすか、または、アクセルペダルの踏み込み量をゼロとする。なお、登坂路においては、車両の後退を防ぐためにアクセルペダルを踏み込みつつ停止状態に近づく場合もある。
モータコントローラ2は、車速V、アクセル開度θ、モータ(三相交流モータ)4の回転子位相α、モータ4の三相交流電流iu、iv、iw等の車両状態を示す信号がデジタル信号として入力される。モータコントローラ2は、入力された信号に基づいて、モータ4を制御するためのPWM信号を生成する。また、モータコントローラ2は、生成したPWM信号に応じてインバータ3のスイッチング素子を開閉制御する。モータコントローラ2はさらに、ドライバによるアクセル操作量、あるいは、ブレーキペダル10の操作量に応じて、摩擦制動量指令値を生成する。
インバータ3は、相ごとに備えられた2個のスイッチング素子(例えば、IGBTやMOS−FET等のパワー半導体素子)をオン/オフすることにより、バッテリ1から供給される直流の電流を交流に変換し、モータ4に所望の電流を流す。
モータ4は、インバータ3から供給される交流電流により駆動力を発生し、減速機5およびドライブシャフト8を介して、左右の駆動輪9a、9bに駆動力を伝達する。また、モータ4は、車両の走行時に駆動輪9a、9bに連れ回されて回転するときに、回生駆動力を発生させることで、車両の運動エネルギーを電気エネルギーとして回収する。この場合、インバータ3は、モータ4の回生運転時に発生する交流電流を直流電流に変換して、バッテリ1に供給する。
電流センサ7は、モータ4に流れる3相交流電流Iu、Iv、Iwを検出する。ただし、3相交流電流Iu、Iv、Iwの和は0であるため、任意の2相の電流を検出して、残りの1相の電流は演算により求めても良い。
回転センサ6は、例えばレゾルバやエンコーダであり、モータ4の回転子位相αを検出する。
ブレーキコントローラ11は、モータコントローラ2で生成された摩擦制動量指令値に応じたブレーキ液圧を発生させるブレーキアクチュエータ指令値を摩擦ブレーキ13に出力する。
液圧センサ12は、ブレーキ制動量検出手段として機能し、摩擦ブレーキ13のブレーキ液圧を検出して、検出したブレーキ液圧(摩擦制動量)をブレーキコントローラ11とモータコントローラ2へ出力する。
摩擦ブレーキ13は、摩擦制動部として機能する。具体的には、摩擦ブレーキ13は、左右の駆動輪9a、9bにそれぞれ設けられ、ブレーキ液圧に応じてブレーキパッドをブレーキロータに押しつけて、車両に制動力を発生させる。
前後Gセンサ15は、主に前後加速度を検出し、検出値をモータコントローラ2へ出力する。これにより、モータコントローラ2は、前後Gセンサ検出値に基づいて、車両の前後方向の傾斜状態を検出できるとともに、モータ4に作用する勾配抵抗と概ね一致する外乱トルク成分を算出することができる。
図2は、モータコントローラ2によって実行されるようにプログラムされたモータ電流制御の処理の流れを示すフローチャートである。
ステップS201では、車両状態を示す信号がモータコントローラ2に入力される。ここでは、車速V(m/s)、アクセル開度θ(%)、モータ4の回転子位相α(rad)、モータ4の回転速度Nm(rpm)、モータ4に流れる三相交流電流iu、iv、iw、バッテリ1とインバータ3間の直流電圧値Vdc(V)、ブレーキ操作量、及び、ブレーキ液圧が入力される。
車速V(km/h)は、車両駆動時において駆動力を伝達する車輪(駆動輪9a、9b)の車輪速ωwから取得することができる。車速Vは、車輪速センサ11a、11bや、図示しない他のコントローラより通信にて取得される。または、車速V(km/h)は、回転子機械角速度ωmにタイヤ動半径rを乗算し、ファイナルギヤのギヤ比で除算することにより車速v(m/s)を求め、3600/1000を乗算することにより単位変換して求められる。
アクセル開度θ(%)は、ドライバによるアクセル操作量を示す指標として、図示しないアクセル開度センサから取得されるか、図示しない車両コントローラ等の他のコントローラから通信にて取得される。
モータ4の回転子位相α(rad)は、回転センサ6から取得される。モータ4の回転速度Nm(rpm)は、回転子角速度ω(電気角)をモータ4の極対数pで除算して、モータ4の機械的な角速度であるモータ回転速度ωm(rad/s)を求め、求めたモータ回転速度ωmに60/(2π)を乗算することによって求められる。回転子角速度ωは、回転子位相αを微分することによって求められる。
モータ4に流れる三相交流電流iu、iv、iw(A)は、電流センサ7から取得される。
直流電圧値Vdc(V)は、バッテリ1とインバータ3間の直流電源ラインに設けられた電圧センサ(不図示)、または、バッテリコントローラ(不図示)から送信される電源電圧値から求められる。
ブレーキ制動量は、液圧センサ12が検出したブレーキ液圧センサ値から取得される。あるいは、ドライバのペダル操作によるブレーキペダルの踏み込み量を検出するストロークセンサ(不図示)等による検出値(ブレーキ操作量)がブレーキ制動量として使用されても良い。
ステップS202のトルク目標値算出処理では、モータコントローラ2が第1のトルク目標値Tm1*を設定する。具体的には、まず初めに、ステップS201で入力されたアクセル開度θおよびモータ回転速度ωmに応じて算出される駆動力特性の一態様を表した図3に示すアクセル開度−トルクテーブルを参照することにより、ドライバ要求トルクとしての基本トルク目標値Tm0*(トルク目標値)が設定される。続いて、勾配抵抗と概ね一致する外乱トルク推定値Tdを求める。そして、基本トルク目標値Tm0*と外乱トルク推定値Tdとを加算することによって、勾配抵抗成分がキャンセルされた第1のトルク目標値Tm1*が設定される。
なお、上述したように、本実施形態における電動車両の制御装置は、アクセルペダルの操作のみで車両の加減速や停止を制御することができる車両に適用可能であり、少なくともアクセルペダルの全閉によって車両を停止させることが可能である。そのため、図3に示すアクセル開度−トルクテーブルでは、アクセル開度が0(全閉)あるいは1/8の時には、回生制動力が働くように負のモータトルクが設定されている。ただし、図3に示すアクセル開度−トルクテーブルは一例であって、これに限定されない。
ステップS203では、コントローラ2が停止制御処理を行う。具体的には、コントローラ2が、停車間際か否かを判定し、停車間際でない場合は、ステップS202で算出した第1のトルク目標値Tm1*をモータトルク指令値Tm*に設定し、停車間際の場合は、第2のトルク目標値Tm2*をモータトルク指令値Tm*に設定する。この第2のトルク目標値Tm2*は、モータ回転速度の低下とともに外乱トルク推定値Td、或いは後述する外乱補正トルクに収束するものであって、登坂路では正トルク、降坂路では負トルク、平坦路では概ねゼロである。これにより、路面の勾配に関わらず、停車状態を維持することができる。
続くステップS204では、コントローラ2が電流指令値算出処理を行う。具体的には、ステップS203で算出したトルク目標値Tm*(モータトルク指令値Tm*)に加え、モータ回転速度ωmや直流電圧値Vdcに基づいて、d軸電流目標値id*、q軸電流目標値iq*を求める。例えば、トルク指令値、モータ回転速度、および直流電圧値と、d軸電流目標値およびq軸電流目標値との関係を定めたテーブルを予め用意しておいて、このテーブルを参照することにより、d軸電流目標値id*およびq軸電流目標値iq*を求める。
ステップS205では、d軸電流idおよびq軸電流iqをそれぞれ、ステップS204で求めたd軸電流目標値id*およびq軸電流目標値iq*と一致させるための電流制御を行う。このため、まず初めに、ステップS201で入力された三相交流電流iu、iv、iwと、電動モータ4の回転子位相αとに基づいて、d軸電流idおよびq軸電流iqを求める。続いて、d軸、q軸電流指令値id*、iq*と、d軸、q軸電流id、iqとの偏差から、d軸、q軸電圧指令値vd、vqを算出する。なお、算出したd軸、q軸電圧指令値vd、vqに対して、d−q直交座標軸間の干渉電圧を相殺するために必要な非干渉電圧を加算するようにしてもよい。
そして、d軸、q軸電圧指令値vd、vqと、電動モータ4の回転子位相αから、三相交流電圧指令値vu、vv、vwを求める。求めた三相交流電圧指令値vu、vv、vwと直流電圧値Vdcから、PWM信号tu(%)、tv(%)、tw(%)を求める。このようにして求めたPWM信号tu、tv、twにより、インバータ3のスイッチング素子を開閉することによって、電動モータ4をモータトルク指令値Tm*で指示された所望のトルクで駆動することができる。
図2のステップS202で行われる処理、すなわち、第1のトルク目標値Tm1*を設定する方法の詳細を、図4を用いて説明する。
基本トルク目標値設定器401は、アクセル開度およびモータ回転速度ωmに基づいて、図3に示すアクセル開度−トルクテーブルを参照することにより、基本トルク目標値Tm0*を設定する。
外乱トルク推定器402は、モータトルク指令値Tm*とモータ回転速度ωmとブレーキ制動量Bとに基づいて、外乱トルク推定値Tdを求める。
図5は、外乱トルク推定器402の詳細な構成を示すブロック図である。外乱トルク推定器402は、制御ブロック501と、制御ブロック502と、減算器503と、制御ブロック504とを備える。
制御ブロック501は、H(s)/Gp(s)なる伝達特性を有するフィルタとしての機能を担っており、モータ回転速度ωmを入力してフィルタリング処理を行うことにより、第1のモータトルク推定値を算出する。Gp(s)は、モータトルクTmからモータ回転速度ωmまでの伝達特性であり、詳細については後述する。H(s)は、分母次数と分子次数との差分が、モデルGr(s)の分母次数と分子次数との差分以上となる伝達特性を有するローパスフィルタである。なお、図5で図示する制御ブロック上、及び、上記の説明においては、モータ回転速度ωmから第1のモータトルク推定値を算出する旨説明したが、モータ回転速度ωmに比例する速度パラメータとしての車輪速ωwから、第1のモータトルク推定値を算出してもよい。
制御ブロック502は、H(s)なる伝達特性を有するローパスフィルタとしての機能を担っており、モータトルク指令値Tm*を入力してフィルタリング処理を行うことにより、第2のモータトルク推定値を算出する。
減算器503は、第2のモータトルク推定値から第1のモータトルク推定値を減算することによって、外乱トルク推定値Tdを算出する。この外乱トルク推定値Tdは、概ね勾配抵抗と一致する値となり、登坂路では正トルク、降坂路では負トルク、平坦路では概ねゼロとなる。
本実施形態では、第2のモータトルク推定値と第1のモータトルク推定値との偏差に対して、制御ブロック504によりフィルタリング処理を施すことにより、外乱トルク推定値Tdを算出する。制御ブロック504は、Hz(s)なる伝達特性を有するフィルタとしての機能を担っており、第2のモータトルク推定値と第1のモータトルク推定値との偏差を入力してフィルタリング処理を行うことにより、外乱トルク推定値Tdを算出する。Hz(s)の詳細については、後述する。
図4に戻って説明を続ける。外乱トルク推定器402にて算出された外乱トルク推定値Tdは、通常であれば加算器404に入力されて、基本トルク目標値Tm0*に加算される。これにより、基本トルク目標値Tm0*に対して、外乱トルク推定値Tdに基づく勾配補正が行われ、勾配抵抗成分がキャンセルされた第1のトルク目標値Tm1*が算出される。
ここで、外乱トルク推定値Tdは、車両の駆動力伝達系を模した車両モデル(詳細は後述する)を用いて、モータ回転速度ωm、或いは、車輪速ωwと、モータトルク指令値Tm*とに基づいて推定される。ところが、例えば車両の整備時に駆動輪がジャッキアップされた際は、該車両モデルを構成するパラメータが、実際の車両状態と極端に相違する。この状態でアクセル操作や他の外力により駆動輪が回転すると、路面との摩擦がない状態で駆動輪が回転するので、モータトルクに対して、モータ回転速度、或いは車輪速が相対的に高く検出されてしまう。その結果、外乱トルク推定値Tdが誤推定され、車両が降坂路を走行中であると誤認識するため、モータに制動トルクを出力させる方向(回生側)での勾配補正が実行されてしまう。そうすると、今度は、モータトルク指令値に対してモータ回転速度、或いは車輪速が低く検出されるので、車両が登坂路を走行中であると誤推定し、モータに駆動トルクを出力させる方向(力行側)での勾配補正が実行されてしまう。
このように、車両の駆動輪がジャッキアップされた際や、凍結路面等の低μ路などを走行する時等、車輪と路面との間に作用する摩擦力が通常走行時よりも低下する場面で、実際の車両状態と車両モデルとが極端に相違する場合には、外乱トルクを正確に推定することができない。また、外乱トルクを正確に推定できないだけではなく、降坂路から登坂路、またはその逆の方向への誤推定が繰り返されることにより、外乱トルク推定値Tdが正負に異常変動し、これに起因して車両に自励振動が発生する場合がある。
このようにして発生し得る自励振動を抑制するために、本実施形態に係る電動車両の制御装置は、外乱トルク推定値Tdが異常値であるか否かを判定し、外乱トルク推定値Tdが異常と判定された場合には勾配補正を中止する補正可否判断処理を実行する。補正可否判断処理を実行するための構成について、以下説明を続ける。
図4に図示する外乱推定トルク異常判定器405は、外乱トルク推定器402にて推定された外乱トルク推定値Tdの変動周波数から、外乱トルク推定値Tdが異常値であるか否かを判定する。外乱推定トルク異常判定器405は、外乱トルク推定値Tdが異常値であると判定すると、勾配補正を中止するために、勾配補正中止フラグを1に設定して、外乱補正トルク設定器406に出力する。外乱推定トルク異常判定器405において実行される補正可否判断処理の詳細については後述する。
外乱補正トルク設定器406は、外乱推定トルク異常判定器405の出力値である勾配補正中止フラグに応じて、外乱補正トルクを設定する。勾配外乱補正中止フラグが0(初期値)の場合は、外乱トルク推定値Tdは正常と判定されるので、通常通り外乱トルク推定値Tdを外乱補正トルクに設定する。勾配外乱補正中止フラグが1の場合は、外乱トルク推定値Tdは異常と判定されるので、外乱トルク推定値Tdに基づく勾配補正を中止するために外乱補正トルクを0に設定する。
加算器404は、基本トルク目標値設定器401で算出された基本トルク目標値Tm0*と外乱補正トルクとを加算することにより、第1のトルク目標値Tm1*を算出する。これにより、勾配外乱補正中止フラグが0の場合は、外乱トルク推定値Tdに基づく勾配補正がなされた第1のトルク目標値Tm1*が算出される。そして、外乱トルク推定値Tdが異常値を示すために勾配外乱補正中止フラグが1に設定された場合は、勾配補正は行われず、ドライバ要求トルクとしての基本トルク目標値Tm0*が、そのままモータトルク指令値Tm*として設定される。
続いて、本実施形態における電動車両の制御装置において、モータトルクTmからモータ回転速度ωmまでの伝達特性Gp(s)について説明する。なお、この伝達特性Gp(s)は、外乱トルク推定値を算出する際に、車両の駆動力伝達系をモデル化した車両モデルとして用いられる。
図6は、車両の駆動力伝達系をモデル化した図であり、同図における各パラメータは、以下に示すとおりである。
Jm:電動モータのイナーシャ
Jw:駆動輪のイナーシャ
M:車両の重量
Kd:駆動系の捻り剛性
Kt:タイヤと路面の摩擦に関する係数
N:オーバーオールギヤ比
r:タイヤの荷重半径
ωm:モータ回転速度
Tm:トルク目標値Tm*
Td:駆動輪のトルク
F:車両に加えられる力
V:車両の速度
ωw:駆動輪の角速度(車輪速)
そして、図6より、以下の運動方程式を導くことができる。
ただし、式(1)〜(3)中の符号の右上に付されているアスタリスク(*)は、時間微分を表している。
式(1)〜(5)で示す運動方程式に基づいて、モータ4のモータトルクTmからモータ回転速度ωmまでの伝達特性Gp(s)を求めると、次式(6)で表される。
ただし、式(6)中の各パラメータは、次式(7)で表される。
式(6)に示す伝達関数の極と零点を調べると、次式(8)の伝達関数に近似することができ、1つの極と1つの零点は極めて近い値を示す。これは、次式(8)のαとβが極めて近い値を示すことに相当する。
従って、式(8)における極零相殺(α=βと近似する)を行うことにより、次式(9)に示すように、Gp(s)は、(2次)/(3次)の伝達特性を構成する。
続いて、図7、8を参照して、ステップS203で実行される停止制御処理の詳細について説明する。
<停止制御処理>
図7は、停止制御処理を実現するためのブロック図である。停止制御処理は、モータ回転速度F/Bトルク設定器701と、加算器703と、トルク比較器704とを用いて行われる。以下、それぞれの構成の詳細を説明する。
モータ回転速度F/Bトルク設定器701は、検出されたモータ回転速度ωmに基づいて、モータ回転速度フィードバックトルク(以下、モータ回転速度F/Bトルクと呼ぶ)Tωを算出する。詳細は図8を用いて説明する。
図8は、モータ回転速度ωmに基づいて、モータ回転速度F/BトルクTωを算出する方法を説明するための図である。モータ回転速度F/Bトルク設定器701は、乗算器801を備え、モータ回転速度ωmにゲインKvrefを乗算することにより、モータ回転速度F/BトルクTωを算出する。ただし、Kvrefは、電動車両の停止間際に電動車両を停止させるのに必要な負(マイナス)の値であり、例えば、実験データ等により適宜設定される。モータ回転速度F/BトルクTωは、モータ回転速度ωmが大きいほど、大きい制動力が得られるトルクとして設定される。
なお、モータ回転速度F/Bトルク設定器701は、モータ回転速度ωmにゲインKvrefを乗算することによりモータ回転速度F/BトルクTωを算出するものとして説明したが、モータ回転速度ωmに対する回生トルクを定めた回生トルクテーブルや、モータ回転速度ωmの減衰率を予め記憶した減衰率テーブル等を用いて、モータ回転速度F/BトルクTωを算出してもよい。
図7に戻って説明を続ける。加算器703は、モータ回転速度F/Bトルク設定器701によって算出されたモータ回転速度F/BトルクTωと、上述した外乱補正トルク設定器406の出力値である外乱補正トルクとを加算することによって、第2のトルク目標値Tm2*を算出する。外乱補正トルクは外乱トルク推定値Tdに応じて設定される値であって、詳細は図4を用いて上述した通りである。
ここで、外乱トルク推定値Tdに関して、図5に示した制御ブロック504の詳細を説明する。制御ブロック504は、Hz(s)なる伝達特性を有するフィルタであり、減算器503の出力を入力してフィルタリング処理を行う事により、外乱トルク推定値Tdを算出する。
伝達特性Hz(s)について説明する。式(9)を書き換えると、次式(10)が得られる。ただし、式(10)中のζz、ωz、ζp、ωpはそれぞれ、式(11)で表される。
以上より、Hz(s)を次式(12)で表す。ただし、ζc>ζzとする。また、ギヤのバックラッシュを伴う減速シーンで振動抑制効果を高めるために、ζc>1とする。
このように、本実施形態では、外乱トルクは、図5に示す通り、外乱オブザーバにより推定される。
ここで、外乱としては、空気抵抗、乗員数や積載量に起因する車両質量の変動によるモデル化誤差、タイヤの転がり抵抗、路面の勾配抵抗等が考えられるが、停車間際で支配的となる外乱要因は勾配抵抗である。外乱要因は運転条件により異なるが、外乱トルク推定器402は、モータトルク指令値Tm*とモータ回転速度ωmと、車両モデルGp(s)に基づいて、外乱トルク推定値Tdを算出するので、上述した外乱要因を一括して推定することができる。これにより、上述の車両モデルと実車両の駆動力伝達系が概ね一致している限り、いかなる運転条件においても、減速からの滑らかな停車を実現することができる。
図7に戻って説明を続ける。加算器703は、モータ回転速度F/Bトルク設定器701によって算出されたモータ回転速度F/BトルクTωと、外乱補正トルクとを加算することによって、第2のトルク目標値Tm2*を算出する。
トルク比較器704は、第1のトルク目標値Tm1*と第2のトルク目標値Tm2*の大きさを比較し、値が大きい方のトルク目標値をモータトルク指令値Tm*に設定する。車両の走行中、第2のトルク目標値Tm2*は第1のトルク目標値Tm1*よりも小さく、車両が減速して停車間際(車速、或いは車速に比例する速度パラメータが所定値以下)になると、第1のトルク目標値Tm1*よりも大きくなる。従って、トルク比較器704は、第1のトルク目標値Tm1*が第2のトルク目標値Tm2*より大きければ、停車間際以前と判断して、モータトルク指令値Tm*を第1のトルク目標値Tm1*に設定する。また、トルク比較器704は、第2のトルク目標値Tm2*が第1のトルク目標値Tm1*より大きくなると、車両が停車間際と判断して、モータトルク指令値Tm*を第1のトルク目標値Tm1*から第2のトルク目標値Tm2*に切り替える。なお、停車状態を維持するため、第2のトルク目標値Tm2*は、登坂路では正トルク、降坂路では負トルク、平坦路では概ねゼロに収束する。
以上、伝達特性Gp(s)及び停止制御処理の詳細について説明した。上述した通り、車両の駆動輪がジャッキアップされた際などでは、上記車両モデルを構成する車重や、路面との摩擦係数等のパラメータが、実際の車両状態と極端に相違する場合がある。本実施形態では、このような場面で誤推定された外乱トルク推定値に起因して発生し得る自励振動を抑制するために補正可否判断処理を実行する。以下、外乱推定トルク異常判定器405(図4参照)において実行される補正可否判断処理の詳細を説明する。
図9は、第1実施形態における補正可否判断処理の流れを示すフローチャートである。当該フローは、モータコントローラ2において、一定のサイクルで繰り返し実行されるようにプログラムされている。
ステップS801では、モータコントローラ2が、外乱トルク推定値Tdの変動周波数を検出する。なお、外乱トルク推定値Tdは、図5を参照して説明した外乱オブザーバを用いて算出される。
続くステップS802では、モータコントローラ2が、検出した外乱トルク推定値Tdの変動周波数から、該外乱トルク推定値Tdが異常か否かを判定する。
ここで、外乱トルク推定値Tdは、本来、車両が路面を走行する際の路面勾配に応じて算出される値である。また、外乱トルク推定値Tdは、登坂路では正の符号を持ち、降坂路では負の符号を持つ。したがって、外乱トルク推定値Tdの符号の正負の変動周波数と実際に車両が走行する路面状態との比較に基づいて、外乱トルク推定値Tdの異常を検知することができる。例えば、通常車両が走行する路面において、1秒の間に登坂路から降坂路へ、或いはその逆への変化を繰り返すことはほぼない。したがって、外乱トルク推定値Tdの正負の変動周波数(以下単に変動周波数と呼ぶ)が例えば1Hz以上であれば、当該外乱トルク推定値Tdは異常値と判断することができる。なお、ここで示した1Hzは例示であって、それ以下、あるいはそれ以上の周波数が外乱トルク推定値Tdの異常を判断し得る周波数として設定されてもよい。
ステップS802では、モータコントローラ2は、外乱トルク推定値Tdの変動周波数が1Hz以上であれば、当該外乱トルク推定値Tdは異常値と判定し、当該異常が所定時間継続するか否かを判定するために続くステップS803の処理を実行する。外乱推定トルクの変動周波数が1Hzより小さければ、勾配補正を実行するために、ステップS804の処理を実行する。
ステップS803では、モータコントローラ2は、外乱トルク推定値Tdの変動周波数異常が所定時間以上続くか否かを判定する。本ステップは、外乱トルク推定値Tdが異常値であると誤って判定した場合に、勾配補正を無用に中止することを防ぐための処理である。また例えば、外乱トルク推定値Tdが異常な振動を示しても、該振動がすぐに収束する場合は、勾配補正を必ずしも中止する必要はない。このような場合でも、本ステップの処理を実行することにより勾配補正を無用に中止するのを防ぐことができる。ここでの所定時間は、例えば、車両の足上げ時に発生する可能性のある外乱トルク推定値の振動が0に収束する場合の減衰時間を予め測定した値等に応じて設定される。モータコントローラ2は、該変動周波数異常が所定時間以上継続したと判定した場合は、勾配補正を中止するために続くステップS805の処理を実行する。該変動周波数異常が所定時間以上継続していないと判定した場合は、外乱トルク推定値Tdの現在値を算出するためにステップS801の処理を繰り返し実行する。
ここで、ステップS801からS803において実行される変動周波数の異常判断を実現する制御ブロックについて、図10、11を参照して説明する。
図10、11は、変動周波数の異常判断を実行する外乱推定トルク異常判定器405(図5参照)の構成の一例を示す制御ブロック図である。外乱推定トルク異常判定器405は、例えば、図10に示す半周期カウンタ810と、図11に示す周波数成分抽出フィルタ820と、周波数比較器830と、タイマ840と、から構成される。
半周期カウンタ810は、符号判定器811と、エッジ検出器812と、タイマカウンタ813とから構成され、外乱トルク推定値Tdを入力して、外乱トルク推定値Tdの半周期時間(0跨ぎ後時間)を検出する。より具体的には、符号判定器811が外乱トルク推定値Tdの正負を判定し、エッジ検出器812が外乱トルク推定値Tdの立上りエッジと立下りエッジを検出する。そして、タイマカウンタ813によって、外乱トルク推定値Tdの正あるいは負の立上りエッジと立下りエッジ間に係る0跨ぎ後時間が検出される。このように検出された外乱トルク推定値の半周期時間は、周波数成分抽出フィルタ820(図11参照)に出力される。
図11に図示する周波数成分抽出フィルタ820は、下限比較器821と、上限比較器823と、アンド回路824とから構成され、タイマカウンタ813からの半周期時間を入力して、フィルタリング処理を行うことにより、共振近傍半周期時間を算出する。
下限比較器821は、半周期時間と、予め設定された半周期時間下限値とを比較して、通常走行時において通常検出し得る路面勾配変化に伴う周波数変動以下の半周期時間をカットする。
上限比較器823は、半周期時間と、予め設定された半周期時間上限値とを比較して、チャタリング等により発生する高周波ノイズをカットする。ただし、車両のジャッキアップ時の変動周波数は予め実験等により特定することができるので、下限比較器821と上限比較器823の比較値を、変動周波数の近傍値のみを抽出する値に設定しても良い。
そして、アンド回路824は、半周期カウンタ810から出力される半周期時間から半周期時間下限値以上、半周期時間上限値以下の周波数成分(共振近傍半周期)を抽出して、周波数比較器830に出力する。
周波数比較器830は、共振近傍半周期をカウントして外乱トルク推定値Tdの変動周波数を算出するとともに、外乱トルク推定値Tdの変動周波数が所定の周波数以上か否かを判定する。所定の周波数は、上記の通り例えば1Hzに設定される。そして、外乱推定トルクの変動周波数が所定値以上であれば、外乱推定トルクが異常値であると判断して、外乱推定トルクが異常値であることを示すフラグ(周波数異常フラグ)をタイマ840に出力する。
タイマ840は、周波数異常フラグの継続時間をカウントすることにより、外乱トルク推定値Tdの変動周波数異常が所定時間続くか否かを判定する。周波数異常フラグが所定時間以上継続する場合は、勾配補正を中止するためのフラグ(勾配補正中止フラグ)を1に設定して、図4に図示する外乱補正トルク設定器406に出力する。
以上の構成により、外乱推定トルク異常判定器405は、外乱トルク推定値Tdの変動周波数が異常値であるか否かを判定することができる。
フローに戻って説明を続ける。ステップS805では、ステップS802において外乱トルク推定値が異常値と判定され、且つ、ステップS803において外乱トルク推定値Tdの異常が所定時間続いたと判定されたため、モータコントローラ2は外乱補正トルクを0に設定することにより勾配補正を中止して、補正可否判断処理を終了する。
他方、ステップS804では、外乱トルク推定値がその変動周波数から正常値と判定されたため、モータトルク指令値に対する勾配補正を実行するために、外乱補正トルクとしての外乱トルク推定値Tdを設定する。外乱トルク推定値Tdが外乱補正トルクとして設定された後、続くステップS806の処理を実行する。
ステップS806では、モータコントローラ2は、外乱補正トルクとしての外乱トルク推定値Tdを、ドライバ要求トルクとしての基本トルク目標値Tm0*に加算することにより勾配補正を行う。このようにして勾配補正が実行された後、モータコントローラ2は、補正可否判断処理を終了する。
以上説明した第1実施形態の電動車両の制御装置を電気自動車に適用した際の効果について、図12を参照して説明する。
図12は、本実施形態における電動車両の制御装置による制御結果の一例を説明するタイムチャートである。図12で示すのは、車両の整備時に車両がジャッキアップされた状態で、誤ってアクセル操作された場面での制御結果であり、上から順に、アクセル開度、ドライバ要求トルク、外乱トルク推定値Td、周波数異常フラグ(0:正常、1:異常)、外乱補正中止フラグ(0:外乱補正継続、1:外乱補正中止)、モータトルクを表している。
アクセル開度が上昇すると、アクセル開度に応じてドライバ要求トルクとしての基本トルク目標値が算出される(時刻t1)。そして、勾配補正により、基本トルク目標値に外乱トルク推定値が加算されることにより得たモータトルク指令値に従ってモータトルクが発生し、モータ4が回転する。ここで、車両はジャッキアップされているので、外乱トルク推定値を算出するために用いられる運動方程式(式1〜式5参照)と、実際の車両運動とが極端に相違する結果、外乱トルク推定値が誤推定される。そうすると、誤推定された外乱トルク推定値が加算された値に基づいてトルク目標値が算出されるとともに、該トルク目標値に基づいて発生したモータトルクに応じたモータ回転数がフィードバックされるので、外乱トルク指令値の誤推定が連続して、外乱トルク推定値とモータトルクとが振動する。
ここで、外乱トルク推定値の変動周波数が所定値(例えば1Hz)を超えると、変動周波数が異常と判断され、周波数異常フラグが1となる(時刻t2)。その後、所定時間経過しても外乱トルク推定値の振動は収束せず、周波数異常フラグは1のままであるため、外乱補正可否フラグが1となる(時刻t3)。これにより、外乱補正トルクとしての外乱トルク推定値の出力値が0に固定され、勾配補正が中止される。その結果、モータトルクは減衰していき、ドライバ要求トルクに収束するので、車体の自励振動が抑制される。
以上、第1実施形態の電動車両の制御装置は、走行駆動源として機能するとともに、車両に回生制動力を与えるモータを備える電動車両の制御方法を実現する制御装置である。当該制御装置は、アクセル操作量に応じた制駆動トルクをモータに出力させるトルク目標値を算出し、車輪速と、トルク目標値とに基づき推定した路面勾配に対応する抵抗として前記モータに作用する外乱トルクを推定する。そして、トルク目標値から外乱トルク成分を除去する補正を実行し、補正後のトルク目標値に基づきモータを制御し、外乱トルクの変動周波数が予め定めた周波数以上になると、該補正を中止する。これにより、外乱トルク推定値Tdが異常値と判定された場合に勾配補正が中止されるので、該外乱トルク推定値Tdが誤推定されることに起因して発生する車体の自励振動を抑制することができる。
また、第1実施形態の電動車両の制御装置は、外乱トルク(外乱トルク推定値)は、登坂路では正の値、降坂路では負の値として推定され、勾配補正は、トルク目標値と外乱トルク推定値Tdとを加算することによって実行される。これにより、通常走行時においては、ドライバのアクセル開度に応じたドライバ要求トルクに対して路面勾配に応じた勾配抵抗がキャンセルされたモータトルク指令値を算出することができる。
[第2実施形態]
第2実施形態は、外乱トルク推定値が異常値と判定された場合の外乱補正トルクの処理方法が第1実施形態と主に異なる。
図13は、本実施形態における第1のトルク目標値Tm1*の算出方法の詳細を説明する制御ブロック図である。なお、第1実施形態と同様に機能する構成には、図4と同一の符号を付し、説明を省略する。
本実施形態における外乱補正トルク設定器940は、外乱推定トルク異常判定器405から出力される外乱補正中止フラグが1(外乱トルク推定値Tdが異常値)の場合は、図4で示す外乱トルク推定器402とは別の手段(第2手段)により算出された第2の外乱推定値を外乱補正トルクに設定する。
この第2の外乱推定値とは、前後Gセンサ15の検出値に基づいて算出された路面勾配推定値であって、車両の駆動力伝達系を模した車両モデルを用いずに算出された外乱推定値を示す。すなわち、第2手段とは、車体がジャッキアップされた場合などに、実際の車両状態と車両モデルとが乖離した場合でも、車両の勾配(車両の傾斜状態)を正しく検出することができる手段である。このように検出された第2の外乱推定値は、車体の傾斜状態が変化しない限り原則一定値となる。
これにより、外乱トルク推定値Tdが異常値と判定された場合には、一定値の第2の外乱推定値に基づいて勾配補正されたトルク指令値に従ってモータ4が制御されるので、外乱トルク推定値Tdの誤推定に起因する振動に応じて発生し得る車体の自励振動を抑制することができる。
以下、図14を参照して、本実施形態における補正可否判断処理の詳細を説明する。
図14は、第2実施形態における補正可否判断処理の流れを示すフローチャートである。当該フローは、モータコントローラ2において、一定のサイクルで繰り返し実行されるようにプログラムされている。
ステップS901では、モータコントローラ2が、第1手段による外乱トルク推定値(第1の外乱推定値)を検出する。ここでの第1手段とは、第1実施形態における推定手段と同じであって、具体的には、図5を参照して説明した外乱オブザーバを用いて外乱トルク推定値Tdを算出することを示す。モータコントローラ2は、第1の外乱推定値としての外乱トルク推定値Tdを取得した後、続くステップS902の処理を実行する。
ステップS902では、モータコントローラ2は、第1の外乱推定値が異常か否かを判定する。ここでは、第1実施形態と同様に、第1の外乱推定値の変動周波数が所定値(例えば1Hz)以上か否かが判定される。第1の外乱推定値の変動周波数が1Hz以上であれば、当該第1の外乱推定値は異常値と判定された場合は、該異常値が所定時間継続するか否かを判定するために、続くステップS903の処理が実行される。第1の外乱推定値の変動周波数が1Hzより小さければ、第1の外乱推定値に基づく勾配補正を実行するために、ステップS904の処理が実行される。
ステップS904では、第1の外乱推定値がその変動周波数から正常値と判定されたため、基本トルク目標値に対する勾配補正を実行するために、第1の外乱推定値としての外乱トルク推定値Tdを外乱補正トルクに設定する。外乱トルク推定値Tdが外乱補正トルクに設定された後、モータコントローラ2は、続くステップS907の処理を実行する。
一方、ステップS903では、モータコントローラ2は、外乱トルク推定値Tdの変動周波数異常が所定時間続くか否かを判定する。本ステップは、外乱トルク推定値Tdが異常値であると誤って判定した場合に、勾配補正を無用に中止することを防ぐための処理である。外乱トルク推定値Tdの変動周波数異常が所定時間継続していなければ、ステップS901の処理が繰り返し実行される。外乱トルク推定値Tdの変動周波数異常が所定時間継続したと判定されると、続くステップS906の処理を実行する。
ステップS905では、モータコントローラ2は、第1の外乱推定値が異常値と判定されたため、第2手段による勾配補正を実行するために第2の外乱推定値を取得する。第2の外乱推定値が取得されると、第2の外乱推定値による勾配補正を行うために、続くステップS907の処理が実行される。
ステップS907では、第1の外乱推定値が正常であればステップS903(第1手段)、第1の外乱推定値が異常であればステップS904(第2手段)で設定された外乱補正トルクに基づく勾配補正を実行して、補正可否判断処理を終了する。
以上説明した第2実施形態の電動車両の制御装置を電気自動車に適用した際の効果について、図15を参照して説明する。
図15は、第2実施形態における電動車両の制御装置による制御結果の一例を説明するタイムチャートである。図15で示すのは、車両の整備時に車両がジャッキアップされた状態で、誤ってアクセル操作された場面での制御結果であり、上から順に、アクセル開度、ドライバ要求トルク、第1の外乱推定値(外乱トルク推定値Td)、第2の外乱推定値、周波数異常フラグ(0:正常、1:異常)、外乱補正切替フラグ(0:第1の外乱推定値、1:第2の外乱推定値)、モータトルクを表している。
アクセル開度が上昇すると、アクセル開度に応じてドライバ要求トルクとしての基本トルク目標値が算出される(時刻t1)。ここで、車両はジャッキアップされているので、外乱トルク推定値Td(第1の外乱推定値)を算出するために用いられる運動方程式(式1〜式5参照)と、実際の車両運動とが極端に相違する結果、第1の外乱推定値が誤推定される。そうすると、誤推定された外乱トルク推定値が加算された値に基づいてトルク目標値が算出されるとともに、該トルク目標値に基づいて発生したモータトルクに応じたモータ回転数がフィードバックされるので、外乱トルク指令値の誤推定が連続して、外乱トルク推定値とモータトルクとが振動する。
ここで、第1の外乱推定値の変動周波数が所定値(例えば1Hz)を超えると、変動周波数が異常と判断され、周波数異常フラグが1となる(時刻t2)。その後、所定時間経過しても外乱トルク推定値の振動は収束しておらず、周波数異常フラグは1のままであるため、外乱補正切替フラグが1となる(時刻t3)。
その結果、外乱補正切替フラグに応じて、勾配補正が第2の外乱推定値に基づく外乱補正に切り替えられる。第2の外乱推定値は、前後Gセンサに基づいて算出された値であって、車両の実際の状態に基づく一定値の勾配値である。したがって、値が0のドライバ要求トルクに対して第2の外乱推定値が加算されるので、モータトルクは一定値の第2の外乱推定値に収束していき、車体の自励振動が抑制される。
以上、第2実施形態の電動車両の制御装置は、推定された外乱トルク推定値を第1の外乱推定値(第1の外乱トルク)とし、第1の外乱推定値とは異なる手段により取得された外乱推定値を第2の外乱推定値(第2の外乱トルク)とし、推定した第1の外乱推定値に基づいて、トルク目標値から当該第1の外乱トルク成分を除去する補正を実行する。そして、第1の外乱推定値の変動周波数が予め定めた周波数以上になると、勾配補正を中止するとともに、第2の外乱推定値に基づいて、トルク目標値から当該第2の外乱トルク成分を除去する補正(勾配補正)を実行する。これにより、外乱トルク推定値Tdが異常値と判定された場合に勾配補正が中止され、一定値である第2の外乱推定値に基づいて勾配補正が実行されるので、該外乱トルク推定値Tdが誤推定されることに起因して発生する車体の自励振動を抑制することができる。
また、第2実施形態の電動車両の制御装置によれば、第2の外乱推定値は、車両の前後方向の傾斜状態を検出可能なセンサ(前後Gセンサ15)の出力値に基づいて算出される。これにより、車両がジャッキアップされている時等、車両の運動方程式(式1〜式5参照)と、実際の車両運動とが極端に相違する場合でも、車体の傾斜状態を検知することができる。
[第3実施形態]
第3実施形態における補正可否判断処理では、第1、第2実施形態と比べて車両の状態をより詳細に判定したうえで、補正可否を判断する。
図16は、本実施形態におけるモータトルク指令値の算出方法の詳細を説明する制御ブロック図である。本実施形態は、最大値設定器1030と、外乱補正トルク設定器1040と、停車状態判定器1050とをさらに備える点に特徴がある。なお、第1、第2実施形態と同様に機能する構成には、図4および図13と同一の符号を付し、説明を省略する。
最大値設定器1030には、第1の外乱推定値としての外乱トルク推定値Tdと、第2実施形態で説明したのと同様に取得した第2の外乱推定値とが入力される。そして、最大値設定器1030は、第1の外乱推定値の絶対値と第2の外乱推定値の絶対値とを比較して、大きい方の値を示す外乱推定値を選択し、選択したほうの外乱推定値を外乱補正トルク設定器1040に出力する。例えば、第2の外乱推定値の絶対値が第1の外乱推定値の絶対値より大きければ、第2の外乱推定値を外乱補正トルク設定器1040に出力する。
停車状態判定器1050は、車両が停車しているか否か、停車している場合は、該停車が摩擦ブレーキによるものか否かを判定して、判定結果を外乱補正トルク設定器1040に出力する。車両が停車状態か否かの判定手法は特に限定されない。例えば、車両の従動輪速や、GPSによる車両の位置情報などから判定すればよい。
そして、外乱補正トルク設定器1040は、外乱推定トルク異常判定器405から出力される外乱補正中止フラグが1(外乱推定トルクが異常値)であって、且つ、車両が停車していない場合、又は、外乱補正中止フラグが1であって、且つ、車両がモータの制動トルク等の摩擦ブレーキ以外の制動力により停車している場合は、外乱補正トルクを0に設定することにより勾配補正を中止する。
また、外乱補正トルク設定器1040は、外乱補正中止フラグが1(外乱推定トルクが異常値)であって、且つ、車両が摩擦ブレーキで停車している場合は、最大値設定器1030の出力値を外乱補正トルクに設定する。これにより、摩擦ブレーキによる停車により外乱トルク推定値Tdの変動が収束するとともに、第1の外乱推定値の絶対値と第2の外乱推定値の絶対値とを比較し、より値の大きい方の外乱推定値が外乱補正トルクとして選択されるので、車両の自励振動が抑制されるとともに、車両の停車状態をより確実に維持することができる。
なお、外乱推定トルク異常判定器405から出力される外乱補正中止フラグが0であり、第1の外乱推定値が正常値である場合には、外乱補正トルク設定器1040は、第1の外乱推定値を外乱補正トルクに設定する。
図17は、第3実施形態における補正可否判断処理の流れを示すフローチャートである。当該フローは、モータコントローラ2において、一定のサイクルで繰り返し実行されるようにプログラムされている。
ステップS1001では、モータコントローラ2が、第1手段による外乱推定値(第1の外乱推定値)を取得する。ここでの第1の外乱推定値とは、第1実施形態において図5を参照して説明した外乱オブザーバを用いて算出された外乱トルク推定値Tdを示す。モータコントローラ2は、第1の外乱推定値を取得した後、続くステップS1002の処理を実行する。
ステップS1002では、モータコントローラ2は、第1の外乱推定値が異常か否かを判定する。ここでは、第1、第2実施形態と同様に、第1の外乱推定値の変動周波数が所定値(例えば1Hz)以上か否かが判定される。第1の外乱推定値の変動周波数が1Hz以上であれば、該第1の外乱推定値は異常値と判定し、該異常値が所定時間継続するか否かを判定するために、続くステップS1003の処理を実行する。第1の外乱推定値は異常値と判定されなければ、第1の外乱推定値に基づく勾配補正を実行するために、ステップS1010の処理が実行される。
ステップS1010では、第1の外乱推定値がその変動周波数から正常値と判定されたため、勾配補正を実行するために、第1の外乱推定値を外乱補正トルクに設定する。第1の外乱推定値が外乱補正トルクとして設定された後、モータコントローラ2は、続くステップS1009において、第1の外乱推定値に基づく勾配補正を実行する。
一方、ステップS1003では、モータコントローラ2は、第1の外乱推定値の変動周波数異常が所定時間続くか否かを判定する。本ステップは、外乱トルク推定値Tdが異常値であると誤って判定した場合に、勾配補正を無用に中止することを防ぐための処理である。第1の外乱推定値の変動周波数異常が所定時間継続していなければ、ステップS1001の処理が繰り返し実行される。外乱トルク推定値Tdの変動周波数異常が所定時間継続したと判定されると、続くステップS1004の処理を実行する。
ステップS1004では、モータコントローラ2は、車両が停車状態か否かを判定する。ここで、車両が停車していないと判定された場合は、第1のトルク推定値が異常値であり、且つ、車両が動いている状態である。このような場面は、少なくとも通常走行時ではないと判断できるので、勾配補正を中止する。したがって、モータコントローラ2は、本ステップにおいて車両が停車していないと判定された場合は、勾配補正を中止するために、ステップS1006の処理を実行する。車両が停車していると判定された場合は、車両が摩擦ブレーキ13により停車しているか否かを判定するために、続くステップS1005の処理を実行する。
ステップS1005では、車両が摩擦ブレーキ13により停車しているか否かが判定される。車両が摩擦ブレーキ13により停車しているか否かは、ブレーキ液圧や、パーキングブレーキの状態等の情報から判断することができる。ここで、第1のトルク推定値が異常値であって、且つ、車両が摩擦ブレーキ13により停車していると判定された場合は、第2手段による外乱推定値を取得するために続くステップS1007の処理が実行される。車両が摩擦ブレーキ13により停車していないと判定された場合は、車両はモータの制駆動力で止まっており、外力により駆動輪が回転しやすい状態にあると推察されるので、車両の自励振動が容易に引き起こされる可能性がある。したがって、モータコントローラ2は、勾配補正を中止するために、ステップS1006の処理を実行する。
ステップS1006では、モータコントローラ2は、上記のステップS1004、又は、ステップS1005におけるNO判定に応じて勾配補正を中止して、補正可否判断処理を終了する。
ステップS1007では、第2の外乱補正トルク(第2の外乱推定値)を取得する。第2の外乱推定値の取得方法は第2実施形態の説明において述べたものと同じである。そして、モータコントローラ2は、第1の外乱推定値と第2の外乱推定値とから外乱補正トルクを選択するために、続くステップS1008の処理を実行する。
ステップS1008では、モータコントローラ2は、外乱補正トルクを選択する。具体的には、ステップS1001で算出した第1の外乱推定値の絶対値と、第2の外乱推定値の絶対値とを比較して、大きい方の値を外乱補正トルクとして選択する。
本ステップでは、車体は摩擦ブレーキにより停車しており、モータ回転速度は0となるので、第1の外乱推定値の誤推定に起因する周波数変動は収束していく。このとき、外乱補正トルクが上述のように選択されることにより、0に収束する前の第1の外乱推定値のように、正負が入れ替わって変動することのない外乱補正トルクを算出することができる。外乱補正トルクが選択された後、モータコントローラ2は、外乱補正トルクに基づく勾配補正を実行するために、続くステップS1009の処理を実行する。
ステップS1009では、ステップS1008で選択された外乱推定値(外乱補正トルク)に基づく勾配補正を実行して、補正可否判断処理を終了する。
以上説明した第3実施形態の電動車両の制御装置を電気自動車に適用した際の効果について、図18を参照して説明する。
図18は、本実施形態における電動車両の制御装置による制御結果の一例を説明するタイムチャートである。図18で示すのは、車両の整備時に車両がジャッキアップされた状態で、誤ってアクセル操作された場面で、且つ、車両が摩擦ブレーキによる制動力で停止している場面での制御結果であり、上から順に、アクセル開度、ドライバ要求トルク、外乱推定値(実線:第1の外乱推定値(外乱トルク推定値Td)、点線:第2の外乱推定値)、周波数異常フラグ(0:正常、1:異常)、外乱補正選択フラグ、モータトルクを表している。なお、外乱補正選択フラグが0の時は第1の外乱推定値が外乱補正トルクに設定され、外乱補正選択フラグが1の時は、第1の外乱推定値と第2の外乱推定値の絶対値が大きい方の外乱推定値が外乱補正トルクに設定されるものとする。
アクセル開度が上昇すると、アクセル開度に応じてドライバ要求トルクとしてのモータトルク指令値が算出される(時刻t1)。ここで、車両はジャッキアップされているので、外乱トルク推定値Td(第1の外乱推定値)を算出するために用いられる運動方程式(式1〜式5参照)と、実際の車両運動とが極端に相違する結果、第1の外乱推定値が誤推定される。そうすると、誤推定された外乱トルク推定値が加算された値に基づいてトルク目標値が算出されるとともに、該トルク目標値に基づいて発生したモータトルクに応じたモータ回転数がフィードバックされるので、外乱トルク指令値の誤推定が連続して、外乱トルク推定値とモータトルクとが振動する。
ここで、第1の外乱推定値の変動周波数が所定値(例えば1Hz)を超えると、変動周波数が異常と判断され、周波数異常フラグが1となる(時刻t2)。その後、所定時間経過しても外乱トルク推定値の振動は収束しておらず、周波数異常フラグは1のままであり、且つ、車両が摩擦ブレーキの制動力により停車しているため、外乱補正選択フラグが1となる(時刻t3)。
その結果、外乱補正選択フラグに応じて、第1の外乱推定値の絶対値と第2の外乱推定値の絶対値とを比較して大きい方の値が外乱補正トルクとして選択される。これにより、摩擦ブレーキによる停車により第1の外乱推定値の変動が収束するとともに、第1の外乱推定値の絶対値と第2の外乱推定値の絶対値とを比較し、より値の大きい方の外乱推定値が外乱補正トルクとして選択されるので、外乱補正トルクが正負へ変動することを回避して、車両の自励振動が抑制されるとともに、車両の停車状態を維持することができる。
以上、第3実施形態の電動車両の制御装置は、推定された前記外乱トルクを第1の外乱推定値とし、第1の外乱推定値とは異なる手段により取得された外乱推定値を第2の外乱推定値とし、推定した前記第1の外乱推定値に基づいて、基本トルク目標値Tm0*から当該第1の外乱トルク成分を除去する勾配補正を実行する。そして、車両が摩擦ブレーキの制動力により停車しているか否か判定し、第1の外乱推定値の変動周波数が予め定めた周波数以上になり、且つ、車両が前記摩擦ブレーキの制動力により停車していない場合は、勾配補正を中止する。また、第1の外乱推定値の変動周波数が予め定めた周波数以上になり、且つ、車両が摩擦ブレーキの制動力により停車している場合は、第1の外乱推定値に基づく勾配補正を中止するとともに、第1の外乱推定値の絶対値と第2の外乱推定値の絶対値とを比較して、該絶対値が大きい方の外乱トルクに基づいて、基本トルク指令値から該外乱トルク成分を除去する補正を実行する。
これにより、外乱トルク推定値Tdが異常値と判定された場合であって、且つ、車両が摩擦ブレーキにより停車していない場合は、勾配補正が中止されるので、外乱トルク推定値Tdの振動に起因する車両の自励振動を抑制することができる。
また、外乱トルク推定値Tdが異常値と判定された場合であって、且つ、車両が摩擦ブレーキにより停車している状態でも、より値の大きい方の外乱推定値が外乱補正トルクとして選択されるので、外乱補正トルクが正負へ変動することを回避して、車両の自励振動を抑制することができるとともに、車両の停車状態を維持することができる。
以上、第1から第3実施形態に係る電動車両の制御装置について説明したが、本発明は、上述した一実施形態に限定されることはない。例えば、上述した説明では、アクセル操作量が所定値以下であり、かつ、電動車両が停車間際になると、電動モータ4の回転速度の低下とともにモータトルク指令値Tm*を補正後の外乱トルク推定値Td(外乱補正トルク)に収束させる停止制御が実行されるものとして説明した。しかし、車輪速や車体速度、ドライブシャフトの回転速度などの速度パラメータは、電動モータ4の回転速度と比例関係にあるため、電動モータ4の回転速度に比例する速度パラメータの低下とともにモータトルク指令値Tm*を外乱トルク推定値Tdに収束させるようにしてもよい。また、そもそも、上述の停止制御は停車間際において必ずしも実行される必要はなく、図2のステップS203に係る停止制御処理は削除しても良い。
また、第1、第3実施形態の説明では、勾配補正を中止する際には外乱補正トルクをゼロに設定する旨説明したが、必ずしもゼロに設定する必要はなく、外乱トルク推定値Tdの現在値から徐々にゼロに収束するように補正された値を、外乱補正トルクとして設定しても良い。
また、外乱推定トルク異常判定器405において外乱トルク推定値Tdが異常値であるか否かの判定は、上述したように必ずしも外乱トルク推定値Tdの変動周波数に基づき判定される必要はない。たとえば、外乱トルク推定値Tdの絶対値振幅を検出して、該振幅から検知できる勾配変化に基づいて、外乱トルク推定値Tdが異常値であるか否かを判定しても良い。具体的には、例えば、図19、20で一例を示す制御ブロック構成により判定することもできる。
図19で示す信号抽出フィルタ1100は、ハイパスフィルタ1101と、ローパスフィルタ1102とから構成されており、外乱トルク推定値を入力して、フィルタリング処理を行うことにより、外乱トルク推定値Tdの共振近傍値を抽出する。ハイパスフィルタ1101のカットオフ周波数は、第1実施形態の説明において述べたとおり例えば1Hzに設定される。ローパスフィルタ1102は、高周波ノイズ成分を除去する。ただし、車両の足上げ時の変動周波数は予め実験等により特定することができるので、ハイパスフィルタ1101とローパスフィルタ1102とにより、当該変動周波数の近傍値のみを抽出するバンドパスフィルタを構成しても良い。これにより、外乱トルク推定値において異常と判断し得る変動周波数の近傍値(外乱トルク共振近傍値)を抽出することができる。
そして、外乱トルク共振近傍値の変化率を検出して、所定の変化率以上であれば、外乱トルクが異常と判断することができる。ここでの所定の変化率は、通常の路面ではありえない勾配変化率が設定される。例えば、通常車両が走行する路面において、平坦路から傾斜角度50°以上の勾配路に突然変化することはほぼない。したがって、外乱補正トルクの変化率が、例えば勾配変化率50°以上に相当する場合に、当該外乱推定トルクは異常値と判断してもよい。そして、図10、11で説明したのと同様に、タイマ1300において該異常が所定時間継続したと判定された場合は、勾配補正中止フラグが1に設定される。
なお、上述した外乱トルク推定値Tdの異常が所定時間継続したか否かの判定は、省略することもできる。すなわち、第1から第3実施形態の説明で用いたフローチャートを参照すれば、図9で示すステップS803、図14で示すステップS903、及び、図17で示すステップS1003は省略してもよい。