−第1実施形態−
図1は、第1実施形態における制御装置を備えた電動車両の主要構成を示すブロック図である。なお、電動車両とは、車両の駆動源の一部または全部として電動モータを備え、電動モータの駆動力により走行可能な自動車のことであり、電気自動車や、ハイブリッド自動車が含まれる。
電動モータコントローラ2には、車速V、アクセル開度θ、電動モータ4の回転子位相α、電動モータ4の電流iu、iv、iw等の車両状態を示す信号がデジタル信号として入力される。電動モータコントローラ2は、入力された信号に基づいて電動モータ4を制御するためのPWM信号を生成する。また、生成したPWM信号に応じてインバータ3の駆動信号を生成する。
インバータ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は、ブレーキペダル13の操作量(踏み込み量)に応じて摩擦ブレーキ制動量指令値を設定し、摩擦ブレーキ制動量指令値に応じてブレーキ液圧を制御する。また、ブレーキコントローラ11は、後述する摩擦ブレーキ制動量演算処理に用いるために、摩擦ブレーキ制動量指令値を電動モータコントローラ2に出力する。
摩擦ブレーキ10は、ブレーキコントローラ11から入力されるブレーキ制動量Fdbに応じてブレーキ液圧を立ち上げることで、ブレーキパッドをロータに押し当て、駆動輪9a、9bに制動力を発生させる。ブレーキ制動量Fdbについては後で述べる。
図2は、電動モータコントローラ2によって行われる処理の流れを示すフローチャートである。ステップS201からステップS206に係る処理は、車両システムが起動している間、一定の間隔で常時実行される。
ステップS201では、車両状態を示す信号が電動モータコントローラ2に入力される。ここでは、車速V(km/h)、アクセル開度θ(%)、電動モータ4の回転子位相α(rad)、電動モータ4の回転速度Nm(rpm)、電動モータ4に流れる三相交流電流iu、iv、iw、バッテリ1の直流電圧値Vdc(V)、従動輪摩擦ブレーキ指令値Fbf *、駆動輪摩擦ブレーキ指令値Fbd *、駆動軸トルクTdsft、及び、車両前後加速度検出値asが入力される。
車速V(km/h)は、図示しない車速センサや、他のコントローラより通信にて取得される。または、電動モータコントローラ2は、回転子機械角速度ωmにタイヤ動半径Rを乗算し、ファイナルギアのギア比で除算することにより車速v(m/s)を求め、3600/1000を乗算することで単位変換して、車速V(km/h)を求める。
電動モータコントローラ2は、アクセル開度θ(%)を、図示しないアクセル開度センサから取得する。なお、アクセル開度θ(%)は、図示しない車両コントローラ等の他のコントローラから取得するようにしても良い。
電動モータ4の回転子位相α(rad)は、回転センサ6から取得される。電動モータ4の回転速度Nm(rpm)は、回転子角速度ω(電気角)を電動モータの極対数pで除算して、電動モータ4の機械的な角速度であるモータ回転速度ωm(rad/s)を求め、求めたモータ回転速度ωmに60/(2π)を乗算することによって求められる。回転子角速度ωは、回転子位相αを微分することによって求められる。
電動モータ4に流れる電流iu、iv、iw(A)は、電流センサ7から取得される。
直流電流値Vdc(V)は、バッテリ1とインバータ3間の直流電源ラインに設けられた電圧センサ(不図示)により検出する。なお、直流電圧値Vdc(V)は、バッテリコントローラ(不図示)から送信される信号により検出するようにしてもよい。
従動輪摩擦ブレーキ指令値Fbf *及び駆動輪摩擦ブレーキ指令値Fbd *は、ブレーキコントローラ11から取得される。なお、図1に示す摩擦ブレーキ制動量指令値は、これらを包括して記載したものである。
駆動軸トルクTdsftは、図示しない他のコントローラから取得される。
車両前後加速度検出値asは、車両前後加速度を検出するGセンサ12から取得される。車両前後加速度検出値asの符号は、車両が平坦路で加速している時の値が正となるように定められる。
ステップS202では、電動モータコントローラ2が基本目標トルク目標値としての目標トルク指令値Tm1*を設定する。具体的には、電動モータコントローラ2は、ステップS201で入力されたアクセル開度θ及び車速Vに基づいて、図3に示すアクセル開度−トルクテーブルを参照することにより、目標トルク指令値Tm1*を設定する。
ステップS203では、電動モータコントローラ2は、従動輪摩擦ブレーキ指令値Fbf *、駆動輪摩擦ブレーキ指令値Fbd *、及び、車速Vに基づいて、従動輪ブレーキ制動量Fdbf、及び、駆動輪ブレーキ制動量Fdbdを算出する。また、電動モータコントローラ2は、従動輪ブレーキ制動量Fdbfと駆動輪ブレーキ制動量Fdbdとを加算して、総ブレーキ制動量Fdbを算出する。
具体的には、従動輪ブレーキ制動量Fdbfは、以下式(1)を用いて算出され、駆動輪ブレーキ制動量Fdbdは、以下式(2)を用いて算出される。総ブレーキ制動量Fdbは、以下式(3)により算出される。
上記式(1)、(2)で使用される伝達関数Gb(s)は、次式(4)の通りである。
上記式(1)〜(4)における各パラメータは以下に示す通りである。
τb:ブレーキ応答遅れ時定数
Lbs:ブレーキ応答遅れ無駄時間
Fbf *:従動輪摩擦ブレーキ指令値(2輪分の制動量の絶対値を示す)
Fbd *:駆動輪摩擦ブレーキ指令値(2輪分の制動量の絶対値を示す)
Fdbf:従動輪ブレーキ制動量(2輪分)
Fdbd:駆動輪ブレーキ制動量(2輪分)
Fdb:総ブレーキ制動量(4輪分)
V:車速
なお、従動輪ブレーキ制動量Fdbf、駆動輪ブレーキ制動量Fdbd、及び、総ブレーキ制動量Fdbの値は、ブレーキ液圧を検出する液圧センサ(不図示)や、ドライバーのブレーキ操作量を検出するストロークセンサ13a等の検出値を用いても良い。なお、以降の説明では、これらブレーキ制動量に関わる値を一括して、摩擦ブレーキ制動量と記載する。
ステップS204では、電動モータコントローラ2が制振制御演算処理を行う。具体的には、電動モータコントローラ2は、ステップS202で設定された目標トルク指令値Tm1*と、モータ回転速度ωmとに基づいて、駆動軸トルクを無駄にすることなく、駆動力伝達系振動(駆動軸8のねじり振動など)を抑制する最終トルク目標値Tm2*を算出する。制振制御演算処理の詳細については後述する。
ステップS205では、電動モータコントローラ2が電流指令値算出処理を行う。具体的には、電動モータコントローラ2は、ステップS204で算出された最終トルク目標値Tm2*に加え、モータ回転速度ωmや直流電圧値Vdcに基づいて、d軸電流目標値id*、q軸電流目標値iq*を求める。例えば、トルク指令値、モータ回転速度、及び、直流電圧値と、d軸電流目標値及びq軸電流目標値との関係を定めたテーブルを予め用意しておいて、このテーブルを参照することにより、d軸電流目標値id*及びq軸電流目標値iq*が求められる。
ステップS206では、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軸電圧指令値vd、vqと、電動モータ4の回転子位相αから、三相交流電圧指令値vu、vv、vwを求める。そして、求めた三相交流電圧指令値vu、vv、vwと、電流電圧値Vdcから、PWM信号tu(%)、tv(%)、tw(%)を求める。このようにして求めたPWM信号tu、tv、twにより、インバータ3のスイッチング素子を開閉することによって、電動モータ4を目標トルク指令値Tm*で指示された所望のトルクで駆動することができる。
続いて、本実施形態の電動車両の制御装置において、駆動力トルク制御に用いられる車両モデルについて説明する。
図4は、車両の駆動力伝達系をモデル化した図であり、同図における各パラメータは、以下に示す通りである。
Jm:モータイナーシャ
Jw:駆動輪イナーシャ(1軸分)
Kd:ドライブシャフトのねじり剛性
Kt:タイヤと路面の摩擦に関する係数
N:オーバーオールギヤ比
r:タイヤの荷重半径
η:トランスミッショントルク伝達効率
ωm:モータ角速度
ωw:駆動輪角速度
Tm:モータトルク
Td:駆動軸トルク
F:駆動力(2軸分)
V:車両の速度
θ:ドライブシャフトのねじり角
図4より、以下の運動方程式(5)〜(10)を導くことができる。
式(5)〜(10)をラプラス変換して、トルク指令値Tmからモータ角速度ωmまでの伝達特性を求めると、次式(11)、(12)となる。
ただし、式(12)中の各パラメータは、次式(13)で表される。
駆動軸トルク制御に用いられる車両モデルの駆動力伝達系は、モータトルクが車両の駆動軸トルクに伝達されない不感帯を有する。本実施形態における駆動力伝達系が有する不感帯幅は、電動モータ4から駆動軸8までのギアバックラッシュ量の総和に相当する。
したがって、車両モデルにおける駆動軸トルクTdは、不感帯を考慮していない上記式(8)に代わり、不感帯を考慮した次式(14)を用いる。これにより、車両モデルは不感帯モデルを含み、ギアバックラッシュ特性を模擬することが可能となるため、ギアバックラッシュ発生時にも、駆動軸ねじり振動を抑制することができる。車両モデルの運動方程式は、式(5)、(6)、(7)、(9)、(10)、及び、次式(14)で表される。
ただし、式(14)中のθdは、モータから駆動軸までのオーバーオールのギアバックラッシュ量を表す。
この式(14)中のθdが、車両モデルにおいて補償される不感帯幅(ギアバックラッシュ量)である。本実施形態に係る駆動軸トルク制御において、駆動力伝達系が有する不感帯に対する補償量は、θdの大きさで表される。
このように構成された車両モデル503を用いて実行されるステップS204の制振制御演算処理の詳細について、図5を参照しながら説明する。
<制振制御演算処理>
図5は、ステップS204に係る制振制御演算処理を実行する制振制御演算部400の制御ブロック図である。
最終トルク目標値Tm2*を設定する制振制御演算部400は、フィードフォワード補償器501(以下、F/F補償器501と呼ぶ)と、フィードバック補償器502(以下、F/B補償器502と呼ぶ)と、加算器506とから構成される。
F/F補償器501は、ギアバックラッシュを模擬した不感帯モデルを含む車両モデル503と、トルク指令値から擬似ねじり角速度にフィードバックゲイン(F/Bゲイン)を積算した値を減算する駆動軸ねじり角速度F/Bモデル504と、制御系遅れ要素505とを備える。
そして、F/F補償器501は、目標トルク指令値Tm1*及び摩擦ブレーキ制動量(従動輪ブレーキ制動量Fdbf、駆動輪ブレーキ制動量Fdbd)に基づいて、加算器506に対して第1のトルク目標値を、F/B補償器502に対して第1のトルク目標値に対するモータ回転数推定値ωm^を出力する。また、F/F補償器501が有する車両モデル503は、駆動軸ねじり角速度F/Bモデル504に対して、疑似駆動軸ねじり角速度ωd^を出力する。
駆動軸ねじり角速度F/Bモデル504は、車両モデル503で算出された前回値の疑似駆動軸ねじり角速度ωd^にF/BゲインKFB1を積算した値と、目標トルク指令値Tm1*との偏差を第1のトルク目標値として出力する。なお、ゲインKFB1は、制御系の安定性を損なわない程度の大きさであって、かつ、制振性能を満足させる値に定められる。
制御系遅れ要素505は、第1のトルク目標値に対してモータ応答遅れGa(s)を考慮することで、モータトルク応答目標値Tmr*を算出し、モータトルク応答目標値Tmr*を車両モデル503に出力する。なお、モータ応答遅れGa(s)は、次式(15)で表される。
ただし、τaはモータ応答時定数である。
F/B補償器502は、F/F補償器501の車両モデル503から求めた第1のトルク目標値に対するモータ回転速度推定値ωm^およびモータ回転速度検出値ωmに基づいて、より具体的にはモータ回転数推定値ωm^とモータ回転速度検出値ωmとの偏差に応じて、第2のトルク目標値を出力する。
加算器506は、F/F補償器501から出力される第1のトルク目標値と、F/B補償器502から出力される第2のトルク目標値とを加算して、最終トルク目標値Tm2*を出力する。
次に、本実施形態の電動車両の制御装置に特徴的な、不感帯モデルに対して摩擦ブレーキ制動量を考慮する車両モデル503の詳細について説明する。
車両モデル503は、前述の通り車両パラメータとギアバックラッシュを模擬した不感帯モデルとにより構成されるため、ギアバックラッシュ発生時でも駆動軸ねじり振動を抑制することができる。ただし、車両モデル503において補償されるギアバックラッシュ量は、上記式(14)において示した電動モータ4から駆動軸8までのオーバーオールのギアバックラッシュ量θdであって、車両設計値や予め行った実験により得た実験値から定められた値である。
しかしながら、駆動軸8の回転がギアバックラッシュ区間を通過する際に、摩擦ブレーキ10の介入による制動力が駆動軸8に作用すると、制動力の大きさに応じて、バックラッシュ区間においての実際の車両におけるギアが詰まるまでの時間と、車両モデル503における式(14)に基づき想定される時間とにずれが生じるため、見かけ上のギアバックラッシュ量が変化する。その結果、車両モデル503において補償されるギアバックラッシュ量θdと、実際の車両において補償すべきギアバックラッシュ量とに誤差(モデル化誤差)が発生する。このモデル化誤差が生じた状態で駆動軸トルクが制御されると、トルク制御性が悪化する。このため、ギアバックラッシュ区間を通過する際に、摩擦ブレーキ10の介入による制動力が駆動軸8に作用すると、トルクの立上り遅れによる違和感や、駆動軸ねじり振動に起因する加速度ショックが生じる場合がある。
例えば、制動力を与えるブレーキ制動量が駆動軸8にほぼ一定値で入力された場合は、駆動軸側ギアが減速することでギアバックラッシュが詰まりやすくなるため、実車両における見かけ上のギアバックラッシュ量が小さくなることに起因するモデル化誤差が発生する。その結果、ギアバックラッシュを通過しているにもかかわらずトルクが立ち上がらないような場面が生じ得るため、車両の乗員は、トルクの立上り遅れによる停滞感等の違和感を感じてしまう。
また、ギアバックラッシュ区間において駆動軸8に入力されていたブレーキ制動量が、ギアバックラッシュが詰まりきる前にゼロになった場合は、ブレーキ制動の解放直後にモータ側軸ギアの回転よりも駆動軸側ギアの回転が早くなる場合があるため、ギアバックラッシュが詰まりにくくなり、実車両における見かけ上のギアバックラッシュ量が大きくなることによるモデル化誤差が発生する。その結果、ギアバックラッシュ通過中にトルクが急峻に立ち上がり、車両に加速度ショックを発生させる。
以下に説明する処理は、摩擦ブレーキ制動量に応じて車両モデル503において補償するギアバックラッシュ量を調整し、実際の車両と車両モデル503間で生じるモデル化誤差に起因するトルク制御性の悪化を抑制する事で、上述のトルクの立上り遅れによる違和感や、駆動軸ねじり振動に起因する加速度ショックを低減することを目的とする。以下、図を参照しながら詳細を説明する。
図6は、ギアバックラッシュ量の調整に係る処理を含む車両状態演算処理の流れを表したフローチャートである。
ステップS601では、電動モータコントローラ2は、摩擦ブレーキ制動量に基づいて、実際の車両と車両モデル503間とでモデル化誤差が発生するか否かを判断する。このように、電動モータコントローラ2は、ギアバックラッシュ量に対する補償量を調整する必要があるか否かを判定する補償量調整許可判定部として機能する。
ステップS602では、電動モータコントローラ2は、摩擦ブレーキ制動量と最終トルク目標値とに基づいて、実際の車両と車両モデル503間のモデル化誤差が解消されたか否かを判断する。つまり、電動モータコントローラ2は、車両モデル503において補償するギアバックラッシュ量を、元の補償量である電動モータ4から駆動軸8までのオーバーオールのギアバックラッシュ量に戻すか否かを判定する補償量調整非許可判定部として機能する。
ステップS603では、電動モータコントローラ2は、ステップS601およびステップS602での判定結果に基づいて、車両モデル503において補償するギアバックラッシュ量を決定する。
そして、ステップS604では、ステップS603において決定されたギアバックラッシュ量が設定された車両モデル503により、モータ回転速度推定値ωm^、及び、疑似駆動軸ねじり角速度ωd^が算出される。
以下、ステップS601〜S604で実行される処理の詳細を説明する。
ステップS601では、電動モータコントローラ2は、補償量調整許可判定を図7に示すフローチャートに従って実行する。
図7は、車両モデル503におけるギアバックラッシュ量の補償量調整許可判定に係る処理を表したフローチャートである。
ステップS701では、電動モータコントローラ2は、摩擦ブレーキ制動量が既定値より大きいか否か判定する。摩擦ブレーキ制動量が既定値より大きい場合は、摩擦ブレーキ10の介入により実際の車両と車両モデル503間でのモデル化誤差が生じていると判断し、ギアバックラッシュ量の補償量調整許可判定値を許可に設定するために、続くステップS702の処理を実行する。
なお、ここでの既定値とは、モデル化誤差が生じ得るブレーキ制動量を予め実験等により求めた適正値であって、車両設計値との関係により定まる値である。なお、ギアバックラッシュ区間におけるブレーキ制動量が0より大きい場合は、実際の車両と車両モデル503間でのモデル化誤差が生じ得るため、上記既定値の下限値は0である。
ステップS702では、電動モータコントローラ2は、後段の処理(ステップS603)においてギアバックラッシュに対する補償量の調整を実行するか否かの指標となる補償量調整許可判定値を許可に設定する。そして、電動モータコントローラ2は、図7に係る処理を終了して、続く図6のステップS602の処理を実行する。
ステップS701において摩擦ブレーキ制動量が既定値以下の場合は、補償するギアバックラッシュ量の調整に係る許可/非許可の判定は行わず、ステップS602に係るギアバックラッシュ量の補償量調整非許可判定に移行するため、図7に係る許可判定処理を終了する。なお、補償量調整許可判定値は、1サイクル前のステップS602における判定結果も含めた前回処理に係る補償量調整許可判定値が保持される。
ステップS602(図6参照)では、電動モータコントローラ2は、ギアバックラッシュ量の調整処理の実行を非許可とするか否かの判定(補償量調整非許可判定)を行う。補償量調整非許可判定は図8に示すフローチャートに従って実行される。
図8は、ギアバックラッシュ量の補償量調整非許可判定に係る処理を示すフローチャートである。
ステップS801では、電動モータコントローラ2は、摩擦ブレーキ制動量が既定値より大きいか否かを判定する。既定値より大きい場合は、車両モデル503と実際の車両間でモデル化誤差が生じている場合であり、ギアバックラッシュ量を調整する必要がある状態がステップS601に係る処理時から継続しているため、補償量調整許可判定値が許可に設定された状態を保持して、補償量調整非許可判定に係る処理を終了する。摩擦ブレーキ制動量が既定値以下の場合、すなわち、モデル化誤差が生じるほどの摩擦ブレーキ10の介入がないと判断される場合には、続くステップS802の処理が実行される。
ステップS802では、電動モータコントローラ2は、制振制御演算部400により算出された最終トルク目標値が既定値より大きいか否かを判定する。摩擦ブレーキ制動量が既定値以下であり、且つ、最終トルク目標値が規定値より大きい場合は、少なくとも車両モデル503と実際の車両間のモデル化誤差が解消されたと考えられるため、車両モデル503において補償するギアバックラッシュ量を元の設定値であるオーバーオールのギアバックラッシュ量θd相当に戻す必要がある。
このため、ステップS802において最終トルク目標値が既定値より大きい場合は、補償量調整許可判定値を非許可に設定するステップS803の処理を実行する。なお、ここでの既定値とは、モデル化誤差がない、或いは、モデル化誤差が解消されたと判断できる最終トルク目標値を予め実験等により求めた適正値であって、車両設計値との関係により定まる値である。
ステップS803では、電動モータコントローラ2は、後段の処理(ステップS603)において補償するギアバックラッシュ量の調整に係る処理を実行するか否かの指標となる補償量調整許可判定値を非許可に設定して、続く図6のステップS603の処理を実行する。
ステップS801において摩擦ブレーキ制動量が既定値より大きい場合、又は、ステップS802において最終トルク指令値が既定値以下の場合は、電動モータコントローラ2は、ギアバックラッシュ量の調整に係る許可/非許可の判定は行わず、前段の処理であるステップS601(図6参照)の時点で設定されている補償量調整許可判定値を保持して、続くステップS603の処理を実行する。
ステップS603(図6参照)では、電動モータコントローラ2は、ステップS601又はステップS602に係る処理にて設定された、ギアバックラッシュ量の補償量調整許可判定値に応じて、車両モデル503において補償するギアバックラッシュ量θd *の値を設定する処理を実行する。ギアバックラッシュ量θd *は、後段のステップS604に係る車両状態演算処理において、車両モデル503を構成する上記式(14)中のギアバックラッシュ量θdに代入される値である。ギアバックラッシュ量θdは、車両設計値等から定まる電動モータ4から駆動軸8までのオーバーオールのギアバックラッシュ量であるため、この値を変更することで、車両モデル503におけるギアバックラッシュ量に対する補償量を調整することができる。ギアバックラッシュ量θd *の値を設定する処理は、図9に示すフローチャートに従って実行される。
図9は、ギアバックラッシュ量θd *の値を設定する処理を表したフローチャートである。
ステップS901では、電動モータコントローラ2は、上述のステップS601、S602の処理において設定されたギアバックラッシュ量の補償量調整許可判定値を判定する。補償量調整許可判定値が許可の場合は、実際の車両と車両モデル503間にモデル化誤差が生じているため、車両モデル503におけるギアバックラッシュ量の補償量を調整するステップS902の処理が実行される。演算許可判定値が非許可の場合は、実際の車両と車両モデル503とが一致している状態であるため、車両モデル503におけるギアバックラッシュ量の補償量を元の設定値とするステップS903の処理が実行される。
ステップS902では、電動モータコントローラ2は、車両モデル503において補償されるギアバックラッシュ量θd *を、演算許可判定値が非許可の場合に設定されるギアバックラッシュ量θd0よりも小さい値であるギアバックラッシュ量θd1に設定する。
上述のとおり、車両の駆動軸8に摩擦ブレーキ10による制動力が作用すると、ギアが詰まるまでの時間と従来設定値の車両モデル503において想定される時間とに誤差が生じる為、見かけ上のギアバックラッシュ量が変化する。
本実施形態においては、ブレーキ制動量の作用により見かけ上のギアバックラッシュ量が小さくなる場合及び大きくなる場合の双方とも、ギアバックラッシュ量θd *に、ギアバックラッシュ量θdよりも小さい値であるギアバックラッシュ量θd1を設定する。
これにより、見かけ上のギアバックラッシュ量が小さくなった場合には、車両モデル503で補償するギアバックラッシュ量を実際の車両において補償すべきギアバックラッシュ量に近づけることができるので、摩擦ブレーキ10の介入によって生じた実際の車両と車両モデル503間のモデル化誤差を低減して、トルク制御性の悪化を抑制することができる。
また、見かけ上のギアバックラッシュ量が大きくなる場合であっても、車両モデル503で補償するギアバックラッシュ量をより小さく設定することで、駆動軸トルクを早いタイミングから緩やかに立ち上げ、駆動軸側ギアに対してモータ軸側ギアを緩やかに詰めることが可能となるので、トルク制御性の悪化に伴う加速度ショックを低減することができる。
したがって、ステップS902では、電動モータコントローラ2は、ギアバックラッシュ量θd *にギアバックラッシュ量θdよりも小さい値であるギアバックラッシュ量θd1を設定する処理を行う。これにより、摩擦ブレーキ10の介入によって生じた実際の車両と車両モデル503間のモデル化誤差に起因するトルク制御性の悪化を抑制することができる。
ギアバックラッシュ量θd1は、摩擦ブレーキ制動量に応じて可変であっても良いが(第3実施形態参照)、本実施形態では、車両モデル503の不感帯モデルによる補償量を最大量減ずる場合について説明する。すなわち、ギアバックラッシュ量θd *に代入するギアバックラッシュ量θd1の値をブレーキ制動量の大きさに関わらず0とする。これにより、車両モデル503におけるギアバックラッシュに対する補償量は0となる。
すなわち、本実形態に係る電動車両の制御装置では、ステップS701、S801において既定値を超える摩擦ブレーキ制動量が検知された場合は、電動モータ4から駆動軸8までのギアバックラッシュは存在しないものとして第1のトルク目標値が算出される。これにより、加速度ショック、或いは、トルクの立上り遅れ等に起因する違和感を生じさせない適切な駆動軸トルク制御が可能となり、実際の車両と車両モデル503間のモデル化誤差に起因するトルク制御性の悪化を抑制することができる。
ギアバックラッシュ量θd *にギアバックラッシュ量θd1が設定されることで、ギアバックラッシュに対する補償量調整処理は終了し、続くステップS604(図6参照)の処理が実行される。
他方、補償量調整許可判定値が非許可の場合は、実際の車両と車両モデル503とが一致している状態であるため、車両モデル503におけるギアバックラッシュ量の補償量を元の設定値とするため、ステップS903の処理が実行される。
ステップS903では、電動モータコントローラ2は、車両モデル503において補償されるギアバックラッシュ量θd *を、電動モータ4から駆動軸8までのオーバーオールのギアバックラッシュ量θd0に設定する。ギアバックラッシュ量θd0は、車両設計値や、予め行った実験により得た実験値から求められる値であり、上記式(14)において予め設定されているギアバックラッシュ量θdと同じ値である。
これにより、車両設計値等に基づいて定められた従来設定値のギアバックラッシュ量(補償量)が設定された車両モデル503による制振制御に戻すことができるので、摩擦ブレーキ10の介入による外乱がなく、実際の車両と車両モデル503間のモデル化誤差が発生していない場面においても、ギアバックラッシュ区間の通過時における駆動軸ねじり振動を適切に抑制することができる。
ギアバックラッシュ量θd *にギアバックラッシュ量θd0が設定されることで、ギアバックラッシュに対する補償量調整処理は終了し、続くステップS604の処理が実行される。
ステップS604(図6参照)では、電動モータコントローラ2は、車両状態演算処理を行う。
具体的には、電動モータコントローラ2は、車両モデル503において、モータトルク応答目標値Tmr*、従動輪ブレーキ制動量Tdbf、及び、駆動輪ブレーキ制動量Tdbdに基づいて、上記式(12)を用いてモータ回転速度推定値ωm^を算出する。また、モータ回転速度推定値ωm^と駆動輪角速度ωwとに基づいて、疑似駆動軸ねじり角速度ωd^が算出される。ただし、車両モデル503を構成する上記式(14)で用いられるギアバックラッシュ量θdは、上述のステップS603で設定されたギアバックラッシュ量θd *である。
以上で、図6で示したギアバックラッシュに対する補償量の調整を含む車両状態演算処理を終了する。本処理により、車両モデル503におけるギアバックラッシュに対する補償量を摩擦ブレーキ制動量に応じて可変とすることができる。これにより、実際の車両状態に適した第1のトルク目標値を算出することができる。この結果、ギアバックラッシュを通過する区間において、摩擦ブレーキ10の介入による制動力が車両の駆動軸に作用しても、トルク制御性を悪化させることなく、車両の駆動軸ねじり振動や、乗員が感じる違和感を効果的に抑制することができる。
ここで、ギアバックラッシュ区間を通過するシーンにおける駆動軸トルク制御(制振制御)について、第1実施形態の電動車両の制御装置による制御結果と従来例による制御結果との比較を、図10を参照して説明する。
図10は、第1実施形態の制御装置を電動車両に適用した際の制御結果の一例と従来例に係る制御結果とを示したタイムチャートである。図10は、上から順に、目標トルク指令値、最終トルク目標値、ブレーキ制動量、車両の前後加速度を表している。また、最終トルク目標値、及び、前後加速度を示すチャート内の破線は、比較例による制御結果を示す。
図10で表されるのは、平坦路において、摩擦ブレーキとモータ回生ブレーキとの協調制御状態で走行している状態から、ドライバーがブレーキペダルを緩やかに離すとともに、アクセルペダルに踏みかえて、アクセルペダルを緩やかに踏み込んだ場合に、モータトルクが負から正に反転し、ギアバックラッシュを通過する場面におけるタイムチャートである。このような場面では、ギアバックラッシュ中に一定量入力されていたブレーキ制動量がゼロになることにより、モータ側軸ギアの回転よりも駆動軸側ギアの回転が速くなり、見かけ上のギアバックラッシュ量は大きくなる。
時刻t0.5付近〜t5にかけては、ブレーキペダルを緩やかに離しているため、ブレーキ制動量は徐々に減少していく。時刻t5で、ブレーキペダルは完全に離され、ブレーキ制動量は0となる。これと同時に、アクセルペダルが緩やかに踏み込まれ、時刻t5以降、目標トルク指令値が徐々に増加していく。
ところで、時刻t0〜t6では、モータトルクが負から正に反転するため、ギアのバックラッシュ区間を通過する。この際、ギアのバックラッシュを考慮した制振制御では、ギアが詰まるまでの間、最終トルク目標値を一定に保ちつつ、ギアが詰まった時点から再び最終トルク目標値を立ち上げる。このギアバックラッシュ区間の通過の際に、摩擦ブレーキによる制動力等の外乱が生じなければ、車両のギアが詰まるタイミングと最終トルク目標値が立ち上がるタイミングは一致する。
しかし、本タイムチャートにおける事例では、t0〜t5に係るギアバックラッシュ区間の通過の際に摩擦ブレーキ10の介入が継続しているため、外乱となるブレーキ制動量が車両の駆動軸8に印加されている。
従来例では、このような外乱を考慮しない車両モデルを用いているため、制振制御における当該車両モデルと実際の車両間にモデル化誤差が生じ、時刻t6〜t7においてギアが詰まる前に最終トルク目標値が立ち上がる。このため、制振制御のF/B補償器の作用との関係から、時刻t6.5付近において、前後加速度が急峻に立ち上がることに伴う加速度ショックが車両に発生する。
これに対して、第1実施形態による制御であれば、F/F補償器501の車両モデル503におけるギアバックラッシュ量(θd)を、ブレーキ制動量に応じて変更する。より詳細には、ドライバーがブレーキペダル13を踏み込むことにより発生した既定値を越えたブレーキ制動量が検知されることで、車両モデル503で補償されるギアバックラッシュ量θdが0となる。
そうすると、駆動力伝達系においてギアバックラッシュ量に基づく不感帯幅がないものとして駆動軸トルクが制御されるので、時刻t5の時点で、目標トルク指令値に追従して最終トルク目標値も上昇し始める。その結果、モータ軸側ギアが駆動軸側ギアに早いタイミングで緩やかに詰まるので、本実施形態においてギアが詰まるタイミング(a付近)の最終トルク目標値は、比較例においてギアが詰まるタイミング(b付近)の最終トルク指令値よりも低い値となる。これにより、ギアが詰まるタイミングで発生する前後加速度の急峻な上昇を比較例と比べて小さくすることができるので(時刻t6〜t7参照)、車両に発生する加速度ショックを従来例よりも効果的に抑制することができる。
以上、第1実施形態の電動車両の制御装置は、目標トルク指令値に基づいて第1のトルク目標値を演算し、第1のトルク目標値に従ってモータトルクを制御する。また、第1のトルク目標値の演算においては、駆動力伝達系においてモータトルクが車両の駆動軸に伝達されない不感帯を補償するように構成された、モータトルクから駆動軸ねじり角速度までの特性をモデル化した車両モデル503と、車両モデル503から出力される駆動軸ねじり角速度を目標トルク指令値にフィードバックさせる駆動軸ねじり角速度フィードバックモデル504とを用いて、第1のトルク目標値を演算し、第1のトルク目標値の演算において考慮される不感帯に対する補償量を、車両に制動力を加える摩擦ブレーキ制動量に応じて調整する。
また、第1実施形態の電動車両の制御装置は、駆動力伝達系が有する不感帯幅を、モータから駆動軸までのギアバックラッシュ量の総和とする。
また、第1実施形態の電動車両の制御装置は、運転者のブレーキ操作量を検出するストロークセンサ13a等のブレーキ操作量検出部をさらに備え、第1のトルク目標値の演算において考慮されるギアバックラッシュに対する補償量を、摩擦ブレーキ制動量指令値(摩擦制動量指令値)、又は、ブレーキ操作量の検出値に応じて調整する。
そして、第1実施形態の電動車両の制御装置は、摩擦ブレーキ制動量が予め定めた既定値より大きい場合は、ギアバックラッシュに対する補償量を0とする。
これにより、摩擦ブレーキ制動量等の車両状態信号に応じてギアバックラッシュ量の補償量を調整することができるので、トルク制御性の悪化を抑制して、車両状況に応じた適切な駆動軸トルク制御が可能となるので、車両モデル503と実際の車両間とのモデル化誤差に起因する乗り心地の悪化を回避することができる。
また、第1実施形態の電動車両の制御装置は、ギアバックラッシュに対する補償量を摩擦ブレーキ制動量に応じて調整する際は、摩擦ブレーキ制動量が予め定めた既定値以下になった場合、および、モータトルク指令値が予め定められた既定値を越えた場合の少なくとも一方が成立した場合に、摩擦ブレーキ制動量に応じて調整された補償量を元の補償量に戻す。なお、元の補償量とは、車両の通常走行時における補償量であって、式(14)中におけるモータ4から駆動軸8までのオーバーオールのギアバックラッシュ量θdに相当する補償量である。これにより、実際の車両と車両モデル503間のモデル化誤差が解消された場合には、車両設計値や実験値で定めたギアバックラッシュ量θd0を用いた制御に戻すことができる。その結果、摩擦ブレーキ等の外乱の介入が無く、モデル化誤差が発生していない状況におけるギアバックラッシュ区間を通過する際においても適切に駆動軸トルクを制御して、駆動軸ねじり振動を抑制することができる。
また、第1実施形態の電動車両の制御装置は、車両モデル503において補償されるギアバックラッシュ量θdを摩擦ブレーキ制動量に応じて減ずることによりギアバックラッシュに対する補償量を調整する。これにより、摩擦ブレーキ制動量に基づいて車両モデル503のギアバックラッシュ量θd *の設定を変更するだけの少ない演算量により、実際の車両と車両モデル503間のモデル化誤差によるトルク制御性の悪化を低減することができ、上述のとおりの駆動軸ねじり振動抑制効果等を実現することができる
−第2実施形態−
第2実施形態の電動車両の制御装置も、ギアバックラッシュ発生時における実際の車両と車両モデル503間のモデル化誤差に起因するトルク制御性の悪化を回避するものであるが、その回避方法が第1実施形態と異なる。
上述の通り、ギアバックラッシュ発生時に、摩擦ブレーキ10による制動力の介入によるモデル化誤差が生じた状態で駆動軸トルクを制御すると、トルク制御性が悪化する。第1実施形態では、車両モデル503において補償されるギアバックラッシュ量を摩擦ブレーキ制動量に応じて調整することで、モデル化誤差に起因するトルク制御性の悪化を抑制した。
以下に説明する第2実施形態では、摩擦ブレーキ制動量が既定値を超え、実際の車両と車両モデル503間にモデル化誤差が生じると判断された場合は、電動モータコントローラ2は、車両モデル503を用いて第1のトルク目標値を演算するのに替えて、インバースフィルタ1101を用いて第1のトルク目標値を演算する。これにより、上述のモデル化誤差に起因するトルク制御性の悪化を回避する。
図11は、第2実施形態に特徴的な制御を概念的に表した制御ブロック図である。本実施形態における電動モータコントローラ2は、インバースフィルタ1101と、切替部1102とをさらに有する。そして、切替部1102は、第1のトルク目標値を、インバースフィルタ1101を用いて算出するか、又は、第1実施形態と同様にF/F補償器501を用いて算出するかを、摩擦ブレーキ制動量に応じて選択する。
ここで、本実施形態で用いられるインバースフィルタ1101とは、駆動力伝達系に係る車両モデルの振動特性を打ち消す線形フィルタである。具体的には、上記式(12)で示した、モータトルクTmからモータ角速度ωmまでの伝達特性Gp(s)の逆系と、伝達特性Gp(s)の分母定数の振動成分をキャンセルするように調整された伝達特性Gm(s)を用いて、車両モデルの振動特性を打ち消す線形フィルタGm(s)/Gp(s)を構成する。本実施形態では、この線形フィルタGm(s)/Gp(s)をインバースフィルタ1101と呼ぶ。
また、インバースフィルタ1101の出力値は、入力値に追従する。このため、インバースフィルタ1101を用いて第1のトルク目標値を算出すると、入力である目標トルク指令値Tm1*に追従して第1のトルク目標値が立ち上がる。最終トルク目標値Tm2*は、第1のトルク目標値に追従するので、結果として、入力である目標トルク指令値Tm1*に追従して最終トルク目標値Tm2*が出力される。
このため、ギアバックラッシュ区間において摩擦ブレーキ制動量が既定値より大きい場合に、車両モデル503に替えて、インバースフィルタ1101を用いて第1のトルク目標値を演算することで、ギアバックラッシュ区間中においても、目標トルク指令値に追従して最終トルク目標値が立ち上がる。これにより、ギアバックラッシュを通過しているにもかかわらずトルクが立ち上がらない、又は、ギアバックラッシュ通過中にトルクが急峻に立ち上がる、という事態を回避することができ、トルク制御性の悪化に伴う乗員が感じる違和感や駆動軸ねじり振動を効果的に抑制することができる。
図12は、第1のトルク目標値を演算するための処理の流れを表したフローチャートである。なお、ステップS1201、S1202の処理によって、図11における切替部1102の挙動が決定される。
ステップS1201では、電動モータコントローラ2は、インバースフィルタ1101による第1のトルク目標値の演算処理を許可するか否かを判定する(フィルタ演算許可判定)。フィルタ演算許可判定は、図13に示すフローチャートに従って実行される。
図13は、インバースフィルタ1101による第1のトルク目標値のフィルタ演算許可判定に係る処理を表したフローチャートである。
ステップS1301では、電動モータコントローラ2は、摩擦ブレーキ制動量が既定値より大きいか否かを判定する。摩擦ブレーキ制動量が既定値より大きい場合は、実際の車両と車両モデル503間でのモデル化誤差が生じると判断し、インバースフィルタ1101による演算処理を許可するために、続くステップS1302の処理を実行する。なお、ここでの既定値も、第1実施形態と同様、モデル化誤差が生じると判断できる摩擦ブレーキ制動量を予め実験等により求めた適正値であって、車両設計値との関係により定まる値である。
ステップS1302では、電動モータコントローラ2は、後段の処理(ステップS1203)においてインバースフィルタ1101による第1のトルク目標値の演算を実行するか否かの指標となるフィルタ演算許可判定値を許可に設定する。図11でいえば、切替部1102は、目標トルク指令値Tm1*の入力を、インバースフィルタ1101への出力側に接続する。フィルタ演算許可判定値を許可に設定した後、図13に係るフィルタ演算許可判定は終了し、続いて図12に係るステップS1202の処理が実行される。
なお、ステップS1301において摩擦ブレーキ制動量が既定値以下と判断された場合は、インバースフィルタ1101による第1のトルク目標値の演算に係る許可/非許可の判定は行わず、後述するステップS1202に係るフィルタ演算非許可判定の判定結果も含めた前回処理におけるフィルタ演算許可判定値を保持して、続くステップS1202の処理が実行される。
ステップS1202(図12参照)では、インバースフィルタ1101による第1のトルク目標値の演算を非許可とするか否かの判定(フィルタ演算非許可判定)を行う。フィルタ演算非許可判定は、図14に示すフローチャートに従って実行される。
図14は、インバースフィルタ1101による第1のトルク目標値のフィルタ演算非許可判定に係る処理を表したフローチャートである。
ステップS1401では、電動モータコントローラ2は、摩擦ブレーキ制動量に基づいて、インバースフィルタ1101による第1のトルク目標値のフィルタ演算非許可判定を行う。摩擦ブレーキ制動量が既定値以下の場合には、ステップS1402の処理が実行される。
ステップS1402では、電動モータコントローラ2は、最終トルク目標値が既定値より大きいか否かを判定する。摩擦ブレーキ制動量が既定値以下であり、且つ、最終トルク目標値が規定値より大きい場合は、車両モデル503と実際の車両とのモデル化誤差が解消されたと考えられる。したがって、摩擦ブレーキ10による制動力の介入がない場合においても適切にギアバックラッシュを補償することができるように、従来設定値の車両モデル503によって第1のトルク目標値を演算する制振制御に戻す必要がある。
このため、最終トルク目標値が既定値より大きい場合は、フィルタ演算許可判定値を非許可に設定するステップS1403の処理を実行する。なお、ここでの既定値も、第1実施形態と同様、実際の車両と車両モデル503間のモデル化誤差がない、或いは、モデル化誤差が解消されたと判断できる目標トルク指令値を、予め実験等により求めた適正値であって、車両設計値との関係により定まる値である。
ステップS1403では、電動モータコントローラ2は、フィルタ演算許可判定値を非許可に設定する。図11でいえば、切替部1102は、目標トルク指令値Tm1*の入力を、F/F補償器501への出力側に接続する。そして、電動モータコントローラ2は、図14に係るフィルタ演算非許可判定処理を終了して、図12に係るステップS1203の処理を実行する。
ステップS1401において摩擦ブレーキ制動量が既定値より大きい場合、又は、ステップS1402において最終トルク目標値が既定値以下の場合は、電動モータコントローラ2は、インバースフィルタ1101による第1のトルク目標値の演算処理の許可/非許可に関する判定は行わず、上述したステップS1201時点で設定されている第1のトルク目標値に係る演算許可判定値を保持して、図14に係る終了判定処理を終了する。続いて、ステップS1203の処理が実行される。
ステップS1203(図12参照)では、電動モータコントローラ2は、ステップS1302又はステップS1403に係る処理にて設定された、インバースフィルタ1101による第1のトルク目標値のフィルタ演算許可判定値に応じて、第1のトルク目標値を演算する。
ステップS1203において、演算許可判定値が許可の場合は、電動モータコントローラ2は、インバースフィルタ1101を用いて第1のトルク目標値を算出する。
そして、特開2003−9566等に開示されているような、伝達特性Gp(s)の分母次数と分子次数との差分以上となる伝達特性H(s)を用いたフィルタH(s)/Gp(s)を具備するF/B補償器(不図示)を用いて算出した第2のトルク目標値と、前述の第1のトルク目標値とを加算することにより、最終トルク目標値が算出される。
以上のとおり、ギアバックラッシュ区間において摩擦ブレーキ制動量が既定値より大きい場合にインバースフィルタ1101を用いて第1のトルク目標値を演算することで、目標トルク指令値に追従して最終トルク目標値が立ち上がる。これにより、ギアバックラッシュ発生時に実際の車両と車両モデル503間のモデル化誤差に起因して発生する、ギアバックラッシュを通過しているにもかかわらずトルクが立ち上がらない、又は、ギアバックラッシュ通過中にトルクが急峻に立ち上がってしまうような場面を回避し、トルク制御性の悪化を効果的に抑制することができる。
他方、ステップS1203において、フィルタ演算許可判定値が非許可の場合は、第1実施形態で説明したのと同様に、F/F補償器501、F/B補償器502、及び、加算器506を用いて最終トルク目標値を算出する(図5参照)。この際、F/F補償器501が備える車両モデル503に設定されるギアバックラッシュ量θd *は、従来設計値と同等な電動モータ4から駆動軸8までのオーバーオールのギアバックラッシュ量θd0とする。
なお、第2実施形態における電動車両の制御装置による制振制御においても、第1実施形態において図10を用いて説明した制御結果と同様の制御結果を得ることができる。
以上、第2実施形態の電動車両の制御装置は、摩擦ブレーキ制動量が予め定められた既定値より大きい場合は、F/F補償器501を用いて第1のトルク目標値を演算するのに替えて、車両モデルの振動特性を打ち消すインバースフィルタ1101を用いて第1のトルク目標値を演算する。これにより、ギアバックラッシュ区間の通過中においては目標トルク指令値に追従して最終トルク目標値が立ち上がるため、第1実施形態と同様に、駆動軸ねじり振動を効果的に抑制することができる。
−第3実施形態−
第3実施形態の電動車両の制御装置は、第1実施形態の電動車両の制御装置と比べて、特に図9のステップS902で説明したギアバックラッシュ量θd *に代入するギアバックラッシュ量θd1の演算方法が異なる。また、本実施形態における制御は、特に、ギアバックラッシュ区間を経過する際に駆動軸8にブレーキ制動量がほぼ一定値で入力される場合に有効な制御である。このような場合における実際の車両の見かけ上のギアバックラッシュ量は、上述の通り、ブレーキ制動量の大きさに応じて小さくなる。
したがって、本実施形態におけるギアバックラッシュ量θd1は、ブレーキ制動量の大きさに応じて可変とする。第2実施形態におけるギアバックラッシュ量θd1は、図15に基づいて算出される。
図15は、車両設計値や、予め行った実験により取得した実験値から定めた、摩擦ブレーキ制動量と、車両モデル503の駆動力伝達系において補償すべきギアバックラッシュ量との関係を表した関係図である。横軸は摩擦ブレーキ制動量を表し、縦軸は補償すべきギアバックラッシュ量を表している。摩擦ブレーキ制動量が0の時のギアバックラッシュ量は電動モータ4から駆動軸8までのオーバーオールのギアバックラッシュ量θd0である。上述したとおり、摩擦ブレーキ制動量が大きくなるほど、見かけ上の不感帯幅(ギアバックラッシュ量)は小さくなるので、車両モデル503において補償すべきギアバックラッシュ量θd1は、ギアバックラッシュ量θd0に対して、摩擦ブレーキ制動量が大きくなるほど減少していることが分かる。
本実施形態では、図9のステップS902において、図15に表される摩擦ブレーキ制動量とギアバックラッシュ量との関係式に基づいて、摩擦ブレーキ制動量に応じたギアバックラッシュ量θd1を算出して、ギアバックラッシュ量θd *に設定する。これにより、式(14)中で補償されるギアバックラッシュ量が実際の車両における補償すべきギアバックラッシュ量と略一致するので、実際の車両と車両モデル503間のモデル化誤差が解消される。
以上、第3実施形態の電動車両の制御装置は、ギアバックラッシュに対する補償量を摩擦ブレーキ制動量に応じて調整する際は、前記車両モデルにおいて補償されるギアバックラッシュ量を、摩擦ブレーキ制動量に応じた量減ずることにより当該補償量を調整する。これにより、摩擦ブレーキ制動量に応じて、車両モデル503において補償すべき最適なギアバックラッシュ量を調整できるので、ギアバックラッシュ区間を経過する際に摩擦ブレーキ10に起因する外乱が生じても、適切な駆動軸トルク制御を実現することができる。
本発明は、上述した一実施形態に限定されることはない。例えば、上述の説明で用いた摩擦ブレーキ制動量は、摩擦ブレーキ制動量指令値、又は、ブレーキ操作量の検出値に基づく値であったが、必ずしもこれに限定されず、例えば、摩擦ブレーキ10を使用したか否かのみを検知する他の手段を設け、当該手段の結果に基づいて、ギアバックラッシュ量に対する補償量を調整してもよい。
また、第1実施形態から第3実施形態において考慮されるギアバックラッシュ中の外乱として示した摩擦ブレーキ制動量は、フットブレーキ13に起因する摩擦ブレーキ制動量に限らず、車両の減速機の駆動軸8に作用する空気抵抗等の他の抵抗成分を含んでもよい。