以下に、本発明の路面勾配推定装置及び路面勾配推定方法の実施形態について説明する。以下では、推定する路面勾配は、道路の縦断勾配であり、登坂路の路面勾配を正とし、降坂路の路面勾配を負とする。
図1〜図3に例示する第一実施形態の路面勾配推定装置30は、車両10に搭載されて、その車両10が走行している路面勾配を推定する装置である。
図1に例示するように、路面勾配推定装置30が搭載される車両10は、シャーシ11の前方側に運転部として運転室(キャブ)12が配置され、シャーシ11の後方側にボディ13が配置されている。
シャーシ11には、エンジン14、クラッチ15、変速機16、プロペラシャフト17、ディファレンシャルギア18が設置されている。エンジン14の回転動力は、クラッチ15を介して変速機16に伝達される。変速機16で変速された回転動力は、プロペラシャフト17を通じてディファレンシャルギア18に伝達され、後輪である一対の駆動輪19にそれぞれ駆動力として分配される。
制御装置20は、エンジン14、クラッチ15、変速機16、及び各種センサに一点鎖線で示す信号線を介して電気的に接続されている。各種センサとして、運転室12には、アクセルペダル21の踏み込み量からアクセル開度を検出するアクセル開度センサ22、シフトレバー23のポジションを検出するポジションセンサ24が設置されている。シャーシ11には、エンジン14の図示しないクランクシャフトの回転数を検出するエンジン回転数センサ25、車速センサ26、及び、加速度センサ27が設置されている。
制御装置20は、各種情報処理を行うCPU、その各種情報処理を行うために用いられるプログラムや情報処理結果を読み書き可能な内部記憶装置、及び各種インターフェースなどから構成されるハードウェアである。
図2に例示するように、制御装置20は、エンジン14、クラッチ15、及び変速機16を制御する制御部28と、車両10の車重を演算する車重演算部29と、車両10が走行している路面勾配を演算する路面勾配演算部31とを各機能要素として有している。この実施形態で、各機能要素は、プログラムとして内部記憶装置に記憶されているが、各機能要素が個別のハードウェアで構成されてもよい。
本発明の路面勾配推定装置30は、路面勾配演算部31、アクセル開度センサ22、車速センサ26、及び加速度センサ27から構成されており、それらのセンサの検出値が入力され、各検出値に基づいて演算した結果を出力値θxとして出力する。路面勾配演算部31は、それらのセンサを利用して、車速取得手段、加速度取得手段、推定手段、フィルタ手段、及び変更手段として機能する。
アクセル開度センサ22は、車両10の駆動力を規定する要因に関する数値として、車両10の駆動に要するトルクを調節する操作指令を取得する要因取得手段として機能する装置である。この実施形態で、アクセル開度センサ22は、エンジン14から出力される出力トルクTxを調節する操作指令としてのアクセルペダル21の踏み込み量をアクセル開度Axに数値化して出力するセンサである。
車速センサ26は、車速取得手段として機能する装置であり、この実施形態では、プロペラシャフト17の回転速度に比例したパルス信号を読み取り、制御装置20の車速演算処理により車速vxとして取得するセンサである。車速センサ26が回転速度に比例したパルス信号に基づいて車速vxを取得することから、取得された車速vxは、負ではなくゼロ以上の値になる。車速センサ26としては、変速機16の図示しないアウトプットシャフト、駆動輪19、従動輪などの回転速度から車速vxを取得するセンサを用いてもよい。なお、駆動輪19、従動輪などの回転速度から車速vxを取得するセンサを用いる場合には、左右一対の車輪のそれぞれの回転速度を取得して、その平均値を車速vxとするとよい。車輪の回転速度から車速vxを取得する車速センサ26は、発進時や加速時のプロペラシャフト17の回転速度変動に影響されないため、プロペラシャフト17の回転速度変動が大きい場合に用いるとよい。
加速度センサ27は、加速度取得手段として機能する装置であり、この実施形態では、車両10の前後方向での速度変化に伴う加速度成分と車両10の姿勢変化に伴う重力加速度成分とによって動作して、それらを合成した路面に平行な加速度成分、すなわち車両10の前後方向の加速度Gxを取得するセンサである。加速度センサ27としては、機械的変位測定方式、光学的方式、半導体方式などが例示できる。
図3に例示するように、この実施形態で、路面勾配演算部31は、各機能要素として、推定部32、フィルタ部34、及び変更部35を有している。路面勾配演算部31の各機能要素は、プログラムとして内部記憶装置に記憶されているが、各機能要素が個別のハードウェアで構成されてもよい。
推定部32は、車速センサ26により取得した車速vx及び加速度センサ27により取得した加速度Gxが入力され、車両10が走行している路面勾配の推定値θzを出力する機能要素である。推定部32は、微分ブロック32a、加算ブロック32b、除算ブロック32c、及び逆正弦関数ブロック32dを有している。道路勾配が小さいと考えられる場合、sinθ≒θとなることから、逆正弦関数ブロック32dは用いなくてもよい。
フィルタ部34は、可変自在の時定数tcを有して推定部32と出力部33との間に介在しており、推定部32から出力された推定値θzが入力され、その推定値θzにフィルタ処理を施した出力値θxを出力する機能要素である。時定数tcは、後述する変更部35から出力される。
この実施形態で、フィルタ部34は、一次遅れのローパスフィルタであり、推定値θzに対して時定数tcにより規定される遮断周波数fc(=1/(2π×tc))よりも低い低周波数成分を殆んど減衰させずに透過させる一方で、その遮断周波数fcよりも高い高周波数成分を逓減させるフィルタ処理を施して出力する可変ローパスフィルタである。可変ローパスフィルタは、下記の数式(1)で示される伝達関数で表される。ここで、Kは通過域の利得とし、Sはラプラス変換の変数とする。下記の数式(1)で示した伝達関数を離散化し、離散時間伝達関数を使用する。なお、ローパスフィルタは1次のみだけでなく、高次ローパスフィルタを適用することもある。
変更部35は、アクセル開度Axが入力されて、要因に関する数値としてアクセル開度変化量ΔAxに応じた時定数tcをフィルタ部34に出力する機能要素である。
この実施形態で、変更部35は、スイッチブロック35a、データブロック35b、前回値取得ブロック(ユニットディレイブロック)35c、加算ブロック35d、及び絶対値ブロック35eを有している。変更部35は、それらの機能により、可変ローパスフィルタの時定数tcを変更する。具体的に、変更部35は、アクセル開度変化量ΔAxの絶対値が予め設定した閾値ΔAaを超えた場合は、時定数tcを下限値t0よりも大きい規定値tsにする。一方で、変更部35は、アクセル開度変化量ΔAxの絶対値が閾値ΔAa以下になった場合は、時定数tcを下限値t0にする。
閾値ΔAaは、車両10の駆動力を規定する要因に関する数値からピッチング運動による車両10の姿勢変化の発生を特定できる値に設定されている。特に、閾値ΔAaは、極低速領域におけるピッチング運動による姿勢変化の発生を特定できる値に設定されることが望ましい。極低速領域は、車速センサ26が車速vxを検出できない、あるいは、ゼロを検出する領域である。つまり、極低速領域は、車両10が移動していない状態、あるい
は車両10が移動する瞬間の状態、あるいは車両10の移動距離が短く車速センサ26でパルスを検出できない状態を含んでいる。
下限値t0は、センサ自体の精度や感度による誤差などの車両10の姿勢変化に伴わないノイズのみを除去可能な時定数である。
規定値tsは、下限値t0よりも大きい値に設定された時定数である。この実施形態で、規定値tsは、アクセル開度変化量ΔAxの絶対値に応じて設定されており、ピッチング運動による車両10の姿勢変化の影響により推定値θzの変化が大きくなっても、その変化をノイズとして除去可能な時定数である。規定値tsとしては、例えば、アクセル開度変化量ΔAxの絶対値を閾値ΔAa以下にする時定数を用いてもよい。
図4に例示するように、規定値tsは、アクセル開度変化量ΔAxの絶対値が閾値ΔAaを超えた場合は、アクセル開度変化量ΔAxの絶対値に対して正の関係にあり、アクセル開度変化量ΔAxの絶対値が大きくなる程、大きくなる。この図4に例示するマップデータは予め実験や試験により求めておき、データブロック35bに記憶させておく。規定値tsは、マップデータでなく、定数値とすることも可能である。
次に、本発明の路面勾配推定方法について、図5のフロー図を参照しながら、路面勾配演算部31の各機能として説明する。以下の路面勾配推定方法は、車両10の制御装置20が通電すると開始されて、一定周期(サンプリング時間)ごとに繰り返し行われてリアルタイムに路面勾配を推定する。そして、制御装置20が停電すると終了する。
スタートすると、路面勾配推定装置30は、アクセル開度センサ22によりアクセル開度Axを、車速センサ26により車速vxを、加速度センサ27により加速度Gxをそれぞれ取得する(S110)。
次いで、路面勾配演算部31は、推定部32の機能により、車両10が走行している路面勾配の推定値θzを推定する(S120)。具体的に、推定部32では、微分ブロック32aにより入力された車速vxを時間微分した微分値vx’を出力する。次いで、加算ブロック32bにより加速度Gxから微分値vx’を減算した値を車両10の前後方向の重力加速度成分(Gx−vx’)として出力する。次いで、除算ブロック32cにより重力加速度成分(Gx−vx’)を重力加速度gで除算した値を出力する。次いで、逆正弦関数ブロック32dにより、入力された値に逆正弦関数(sin−1)を用いて推定値θzを推定する。道路勾配が小さいと考えられる場合、sinθ≒θとなることから、逆正弦関数ブロック32dは用いなくてもよい。
次いで、路面勾配推定装置30は、変更部35の機能により、アクセル開度変化量ΔAxの絶対値を算出する(S130)。具体的に、変更部35では、前回値取得ブロック35cにより入力されたアクセル開度Axの直前に入力された前回値A(x−1)を出力する。次いで、加算ブロック35dによりアクセル開度Axと前回値A(x−1)との差分をアクセル開度変化量ΔAxとして出力する。次いで、絶対値ブロック35eによりアクセル開度変化量ΔAxの絶対値を出力する。なお、アクセル開度変化量ΔAxは、一定周期(サンプリング時間)あたりの変化量として算出してもよい。
次いで、路面勾配推定装置30は、変更部35の機能により、アクセル開度変化量ΔAxの絶対値が閾値ΔAaを超えたか否かを判定する(S140)。次いで、路面勾配演算部31は、変更部35の機能により、アクセル開度変化量ΔAxの絶対値が閾値ΔAaを超えたと判定した場合は、時定数tcを規定値tsに変更する(S150)。一方、アクセル開度変化量ΔAxの絶対値が閾値ΔAa以下と判定した場合は、時定数tcを下限値
t0に変更する(S160)。
具体的に、変更部35では、スイッチブロック35aにより、アクセル開度変化量ΔAxの絶対値と閾値ΔAaとを比較する。アクセル開度変化量ΔAxの絶対値が閾値ΔAaを超えた場合は、データブロック35bにより入力されたアクセル開度変化量ΔAxに応じた規定値tsを時定数tcとして出力する。一方、アクセル開度変化量ΔAxの絶対値が閾値ΔAaを超えていない場合は、下限値t0を時定数tcとして出力する。
次いで、路面勾配演算部31は、フィルタ部34により、推定値θzに対して、入力された時定数tcで決まる遮断周波数fcより低い周波数成分を殆んど減衰させずに透過させる一方で、その遮断周波数fcよりも高い高周波数成分を逓減させるフィルタ処理を施す(S170)。このとき、フィルタ部34では、アクセル開度変化量ΔAxの絶対値が閾値ΔAaを超えた場合に、つまりピッチング運動による車両10の姿勢変化が発生した場合に、時定数tcとして規定値tsが設定されて、遮断周波数fcが低くなる。一方で、アクセル開度変化量ΔAxの絶対値が閾値ΔAa以下の場合に、つまりピッチング運動が生じていない場合に、時定数tcとして下限値t0が設定されて、遮断周波数fcが高くなる。
次いで、路面勾配演算部31は、フィルタ部34の機能により、フィルタ処理が施された値を出力値θxとして出力する(S180)。そして、スタートへリターンする。
以上のように、車両10の駆動力を規定する要因に関する数値としてのアクセル開度変化量ΔAxに基づいて、フィルタ処理の時定数tcを変更するので、駆動力の大小や増減に起因したピッチング運動による車両10の姿勢変化を実際に車両10に発生する前に特定して、一時的な変化として捉えてフィルタ処理によりノイズとして除去できる。これにより、車速センサ26により車速vxを検出できない極低車速領域でも、路面勾配の推定誤差の低減には有利になり、路面勾配を高精度に推定することができる。
また、この実施形態では、アクセル開度変化量ΔAxの絶対値が閾値ΔAaを超えた場合は、車両10にピッチング運動が生じたと特定して、フィルタ処理の時定数tcを大きくして遮断周波数fcを低くする。つまり、フィルタ処理による透過範囲を狭くする。それ故、ピッチング運動による車両10の姿勢変化を一時的な変化として捉えてフィルタ処理によりノイズとして除去できる。これにより、車速センサ26により車速vxを検出できない極低車速領域における路面勾配の推定誤差の低減には有利になる。
フィルタ処理によるノイズ除去効果と応答性とはトレードオフの関係にある。つまり、常時、ピッチング運動による一時的な姿勢変化をフィルタ処理によりノイズとして除去しようとすると、路面勾配の推定の応答性が悪化するおそれがある。
一方、この実施形態では、アクセル開度変化量ΔAxの絶対値が閾値ΔAaを超える場合以外では、時定数tcを小さくして遮断周波数fcを高くするので、フィルタ処理による出力遅延を抑制できる。これにより、ピッチング運動により車両10に姿勢変化が生じた場合は、その変化をノイズとして除去するとともに、姿勢変化が生じない場合は、時定数tcを小さくして、路面勾配の推定の応答性を確保することができる。
この実施形態では、アクセル開度変化量ΔAxの絶対値が閾値ΔAa以下の場合に、時定数tcを車両10の姿勢変化に伴わないノイズのみを除去可能な下限値t0に設定するので、フィルタ処理による出力遅延を最小にできる。これにより、路面勾配の推定の応答性の確保には有利になる。なお、必要な応答性を十分に確保できるように下限値t0の値を決めておく。
この実施形態では、フィルタ部34を出力部33の手前に配置して、フィルタ処理を施して出力するので、別のパラメータに基づいた制限や補正を掛けた後の値にフィルタ処理を施すことが可能になる。これにより、車速や加速度にフィルタ処理を施す場合に比して、フィルタ処理による出力遅延の低減には有利になる。
この実施形態では、車両10の駆動力を規定する要因に関する数値として、アクセルペダル21の踏み込み量の変化量、すなわち、アクセル開度変化量ΔAxを用いている。それ故、アクセル開度変化量ΔAxが大きくなった時に、ピッチング運動による車両10の姿勢変化が大きくなると見做して、フィルタ部34の時定数tcを大きくするので、車両10の姿勢変化が生じる前に時定数tcを大きくできる。これにより、路面勾配の推定誤差の低減には有利になる。
この実施形態では、車両10の駆動力を規定する要因に関する数値として、アクセルペダル21の踏み込み量を用いた例を説明した。車両10の駆動力を規定する要因に関する数値とは、その数値の変化により車両10の駆動力が実際に変化する前に取得可能な数値である。このように、要因に関する数値として車両10の駆動力が実際に変化する前に取得可能な数値を取得することで、極低速領域におけるピッチング運動による車両10の姿勢変化の特定には有利になる。
この要因に関する数値としては、駆動に要するトルク、トルクの変化量、このトルクを調節する車両の運転者の操作指令、又は、その操作指令の変化量が例示できる。より具体的に、トルクとしては、エンジン14の出力トルクTxやプロペラシャフト17を経由して駆動輪19に伝達される駆動トルクTwが例示でき、操作指令としては、アクセルペダル21の踏み込み量を示すアクセル開度Ax、図示しないブレーキペダルの踏み込み量が例示できる。
そこで、上記の実施形態では、要因取得手段として、エンジン回転速度Nxを取得するエンジン回転数センサ25と燃料噴射量Qxを取得する制御部28とを、要因取得手段として機能させて、変更部35を、エンジン回転速度Nxと燃料噴射量Qxとに基づいて、要因に関する数値Fxとしてエンジン14の出力トルクTxを用いた機能要素としてもよい。また、変更部35を、要因に関する数値としてエンジン14の出力トルク変化量ΔTxの絶対値を用いた機能要素としてもよい。また、プロペラシャフト17の回転速度に基づいて駆動トルクTwを取得するトルクセンサを要因取得手段として機能させてもよい。また、変更部35を、要因に関する数値としてアクセル開度Axや図示しないインジェクタから実際に噴射された燃料噴射量Qxを用いた機能要素してもよい。
以上のように、要因に関する数値としては様々な数値が例示されるので、変更部35においては、用いる要因に関する数値によって、閾値や規定値の値をその要因に関する数値に応じた値にするとよい。要因に関する数値としてエンジン14の出力トルク変化量ΔTxの絶対値を用いる場合は、この実施形態と略同様の値を用いるとよい。要因に関する数値としてアクセル開度Ax、出力トルクTxを用いる場合は、閾値の値を、エンジン14の運転状態が高負荷状態になったことを特定できる値にして、規定値の値を、エンジン14の運転状態が高負荷状態になった時に時定数tcが大きくなるようにするとよい。
図6〜図9に例示する第二実施形態の路面勾配推定装置30は、第一実施形態に対して要因に関する数値としてエンジン14の出力トルクTxを用いており、変更部35が異なっている。
図6に例示するように、この実施形態で、変更部35は、エンジン回転速度Nxと燃料
噴射量Qxとが入力されて、要因に関する数値としてそれらに基づいたエンジン14の出力トルクTxを用いている。変更部35は、出力トルクTxに応じた時定数tcをフィルタ部34に出力する機能要素である。変更部35は、スイッチブロック35a、データブロック35f、35g、35hを有している。
スイッチブロック35aは、出力トルクTxが予め設定した閾値Taを超えた場合は、時定数tcを高時定数thにする。一方で、変更部35は、出力トルクTxが閾値Ta以下になった場合は、時定数tcを低時定数tlにする。閾値Taは、出力トルクTxの大小に起因するピッチング運動による車両10の姿勢変化の発生を特定できる値である。特に、閾値Taは、エンジン14の運転状態が高負荷状態になったときに生じるピッチング運動による車両10の姿勢変化の発生を特定できる値が望ましい。
図7に例示するように、出力トルクTxは、エンジン回転速度Nx及び燃料噴射量Qxのそれぞれに対して正の関係にあり、エンジン回転速度Nxが速く且つ燃料噴射量Qxが多いほど、大きくなる。このマップデータは予め実験や試験により求めておき、データブロック35fに記憶させておく。
データブロック35gは、車速vxが入力されて、その車速vxに応じた高時定数thを出力する機能要素である。データブロック35hは、車速vxが入力されて、その車速vxに応じた低時定数tlを出力する機能要素である。高時定数thは、同一の車速vxにおける低時定数tlよりも大きい値に設定されている。
図8に例示するように、高時定数thは、一定値になるまでは、車速vxに対して負の関係にあり、車速vxが速くなる程、小さくなる。図9に例示するように、低時定数tlは、下限値t0になるまでは、車速vxに対して負の関係にあり、車速vxが速くなる程、小さくなる。これらのマップデータは予め実験や試験により求めておき、データブロック35g、35hのそれぞれに記憶させておく。なお、高時定数th及び低時定数tlは車速センサ26が車速vxを検出できない場合は、車速vxがゼロと見なされて算出される。
このように、この実施形態では、エンジン14の出力トルクTxが閾値Taを超えた場合は、車両10にピッチング運動が生じたと特定して、フィルタ処理の時定数tcを大きくして遮断周波数fcを低くする。それ故、実際に車両10の前後方向の加速度が生じていても、車速vxを検出できない極低速領域におけるピッチング運動による姿勢変化の特定には有利になり、その姿勢変化を一時的な変化として捉えてフィルタ処理によりノイズとして除去できる。これにより、路面勾配の推定誤差を低減できる。
特に、この実施形態では、エンジン14の出力トルクTxと閾値Taとを比較するので、車両10が発進する瞬間などで、車速センサ26が車速vxを検出できない場合でも、車両10にピッチング運動を特定できる。これにより、車両10に生じるピッチング運動による推定誤差の低減には有利になる。
また、この実施形態では、車速vxに応じて時定数tcを可変にするので、路面勾配の変化速度に応じて、トレードオフの関係にあるノイズ除去効果と応答性とを最適化できる。これにより、車速vxが速くノイズが少ない場合は、時定数tcを小さくして路面勾配の推定の応答性を高めることができる。一方で、車速vxが遅く応答性が遅くてもよい場合は、時定数tcを大きくしてノイズ除去効果を高めることができる。
図10に例示する第三実施形態の路面勾配推定装置30は、既述した実施形態に対して、要因に関する数値としてエンジン14の出力トルク変化量ΔTxを用いており、変更部35が異なっている。
この実施形態で、変更部35は、エンジン回転速度Nxと燃料噴射量Qxとが入力されて、要因に関する数値としてそれらの基づいたエンジン14の出力トルク変化量ΔTxの絶対値を用いている。変更部35は、出力トルク変化量ΔTxの絶対値と閾値ΔTaとを比較して、時定数tcをフィルタ部34に出力する機能要素である。変更部35は、第一実施形態におけるデータブロック35bに相当するデータブロック35iを有している。また、変更部35は、データブロック35iから出力された規定値tsとデータブロック35gから出力された高時定数thとを加算する加算ブロック35jを有している。閾値ΔTaは、出力トルク変化量ΔTxの変化に起因するピッチング運動による車両10の姿勢変化の発生を特定できる値に設定されている。
この実施形態の規定値tsは、第一実施形態に比して、高時定数thと低時定数tlとの差分の平均値の分だけ小さく設定されている。つまり、この実施形態で、規定値tsは、高時定数thの補正値として機能する。
このように、この実施形態では、出力トルク変化量ΔTxが閾値ΔTaを超えた場合は、時定数tcを出力トルク変化量ΔTxに応じた規定値tsと、その時の車速vxに応じた高時定数thとを加算した値に設定するので、出力トルク変化量ΔTxの変化に加えて車速vxに応じたピッチング運動による車両10の姿勢変化をフィルタ処理によりノイズとして除去できる。これにより、路面勾配の推定誤差の低減には有利になる。
図11に例示する第四実施形態の路面勾配推定装置30は、既述した実施形態に対して、要因に関する数値としてアクセル開度Axを用いており、変更部35が異なり、さらに、フィルタ部34の配置位置が異なっている。
この実施形態のフィルタ部34は、車速センサ26と推定部32との間、加速度センサ27と推定部32との間にそれぞれ介在している。フィルタ部34は、車速vx及び加速度Gxのそれぞれが入力されて、それらの車速vx及び加速度Gxにフィルタ処理を施して推定部32に出力する。
この実施形態のように、取得した車速vx及び加速度Gxにフィルタ処理を施してもよい。なお、車速vxをフィルタ処理するフィルタ部34を推定部32の微分ブロック32aと加算ブロック32bとの間に介在させて、車速vxの代わりに、車速vxを時間微分した微分値vx’のノイズを除去してもよい。また、車速vxのノイズを除去するフィルタ部34と、加速度Gxのノイズを除去するフィルタ部とでそれぞれ時定数tcを異ならせてもよい。
図12〜図14に例示する第五実施形態の路面勾配推定装置30は、既述した実施形態に対して、ブレーキセンサ40を備えると共に、路面勾配演算部31に、複数の変更部35A〜35Dと、選択部39とを備えた点で異なっている。
図12に例示するように、ブレーキセンサ40は、図示しないブレーキペダルの踏み込み量をブレーキ開度Bxとして検出するセンサである。ブレーキセンサ40としては、図示しない機械式ブレーキに供給されるブレーキ圧を検出するセンサも例示できる。
変更部35Aは既述した実施形態のいずれかに記載の構成のうちの出力トルクTxに関するものであり、その出力先を選択部39に代えた機能要素である。変更部35Cは既述した実施形態のいずれかに記載の構成のうちのアクセル開度Axに関するものであり、その出力先を選択部39に代えた機能要素である。
変更部35B、35Dは、車両10の前後方向での速度変化に伴う加速度成分が入力されて、その速度変化に伴う加速度成分に応じた時定数tcを選択部39に出力する機能要素である。速度変化に伴う加速度成分としては、車速センサ26で取得した車速vxを時間微分した微分値vx’や、加速度センサ27で取得した加速度Gxが例示できる。加速度センサ27を用いる場合は、車両10の姿勢変化に伴う重力加速度成分を除外するようにフィルタを用いるとよい。
変更部35B、35Dは、微分値vx’が予め設定した閾値α、βを超えた場合は、時定数tcとして規定値tB、tDを出力する。一方で、変更部35B、35Dは、微分値vx’が閾値α、β以下になった場合は、時定数tcとして下限値t0を出力する。
閾値α、βは、車両10の加速度である微分値vx’からピッチング運動による車両10の姿勢変化の発生を特定できる値に設定されている。この実施形態で、閾値αは駆動力が正の場合(加速時)の閾値であり、閾値βは制動力が正の場合(減速時)の閾値である。閾値α、βはそれぞれ別々の値に設定されてもよく、同一の値に設定されてもよい。
変更部35A〜35Dのそれぞれは、入力された値と閾値とを比較して、規定値tA〜tD又は下限値t0を選択部39に出力する。変更部35A〜35Dとしては、規定値の代わりに高時定数を、下限値の代わりに低時定数をそれぞれ出力する機能要素を用いてもよい。
選択部39は、変更部35A〜35Dから出力された時定数tcが入力されて、条件に応じて選択された値を時定数tcとしてフィルタ部34に出力する機能要素である。この実施形態で、選択部39は、判定ブロック39a、選択ブロック39b、及びスイッチブロック39cを有している。この実施形態の選択ブロック39bは、入力された値のうちの最大値をスイッチブロック39cに出力する。
次に、この実施形態の路面勾配推定方法について、図13〜図14のフロー図を参照しながら、路面勾配演算部31の各機能として説明する。以下、車両10の前進、後進を問わず、駆動輪19を駆動させる力が生じた場合の駆動力を正とし、駆動輪19を制動させる力が生じた場合の制動力を正とする。
図13に例示するように、スタートして既述したステップを行うと、路面勾配演算部31は、選択部39の判定ブロック39aにより、駆動力が正か否かを判定し(S200)、制動力が正か否かを判定する(S210)。これらのステップにより、駆動力が正の場合と、制動力が正の場合と、それ以外の場合とを判定する。この実施形態では、出力トルクTxが正の場合を駆動力が正と判定し、出力トルクTxがゼロ以下で、且つブレーキ開度Bxが正の場合を制動力が正と判定する。判定ブロック39aは、二つのチェックブロックと加算ブロックで構成されているが、駆動力が正か否かを判定し、制動力が正か否かを判定できればよく、イフブロックで構成されてもよい。
図14に例示するように、駆動力が正と判定した場合は、路面勾配演算部31は、並列処理にて変更部35A〜変更部35Cの機能と、選択ブロック39bの機能とにより、変更部35A〜35Cから出力された時定数のうちで最大となる値を選択値として出力する。
具体的に、変更部35Aの機能により、出力トルクTxが閾値Taを超えたか否かを判定し(S220)、超えた場合は規定値tAを出力し(S250)、超えていない場合は下限値t0を出力する(S280)。変更部35Bの機能により、微分値vx’が閾値α
を超えたか否かを判定し(S230)、超えた場合は規定値tBを出力し(S260)、超えていない場合は下限値t0を出力する(S280)。変更部Cの機能により、アクセル開度Axが閾値Aaを超えたか否かを判定し(S240)、超えた場合は規定値tCを出力し(S270)、超えていない場合は下限値t0を出力する(S280)。
次いで、選択ブロック39bの機能により、規定値tA〜tC、下限値t0のうちの最大の値を出力する(S290)。
図13に例示するように、並列処理が完了すると、路面勾配演算部31は、選択部39のスイッチブロック39cの機能により、時定数tcを選択ブロック39bで選択された選択値に変更する(S300)。
制動力が正と判定した場合は、路面勾配演算部31は、変更部35Dの機能により、微分値vx’が閾値βを超えたか否かを判定し(S310)、超えたと判定した場合は時定数tcを規定値tDに変更する(S320)。一方、超えていないと判定した場合は時定数tcを下限値t0に変更する(S330)。駆動力がゼロ以下で、且つ、制動力がゼロ以下と判定した場合は、時定数tcを下限値t0に変更する(S330)。
以上のように時定数tcを変更すると、既述したステップを行って、スタートへリターンする。
図15に例示する第六実施形態の路面勾配推定装置30は、第五実施形態に対して、選択部39での時定数の選択が異なっている。
この実施形態で、駆動力が正と判定した場合は、路面勾配演算部31は、変更部35A〜変更部35Cの機能と、選択ブロック39bの機能とにより、変更部35A〜35Cから出力された時定数に優先順位をつけて、その優先順位が高いものを出力する。優先順位は、規定値tA、規定値tB、規定値tC、及び下限値t0の順に低く設定され、規定値tAが最優先となっている。
具体的に、変更部35Aの機能により、出力トルクTxが閾値Taを超えたか否かを判定し(S220)、超えた場合は規定値tAを出力する(S250)。出力トルクTxが閾値Taを超えていない場合は、変更部35Bの機能により、微分値vx’が閾値αを超えたか否かを判定し(S230)、超えた場合は規定値tBを出力する(S260)。微分値vx’が閾値αを超えていない場合は、変更部Cの機能により、アクセル開度Axが閾値Aaを超えたか否かを判定し(S240)、超えた場合は規定値tCを出力する(S270)。いずれも閾値を超えていない場合は下限値t0を出力する(S280)。
次いで、路面勾配演算部31は、選択部39のスイッチブロック39cの機能により、時定数tcを、選択ブロック39bで選択された選択値に変更する(S300)。
このように、これらの実施形態では、駆動力が正の場合は、複数の変更部35A〜35Cから出力される値に時定数tcを設定する一方で、制動力が正の場合は、変更部35Dから出力される値に時定数tcを設定する。それ故、車速や加速度を検出できない極低車速領域に加えて、車両10の重量が軽くなり出力トルクTxが閾値Ta以下でも車両10が大きく加速する場合のピッチング運動による誤差をノイズとして除去できる。これにより、路面勾配の推定誤差の低減には有利になり、路面勾配を高精度に推定することができる。
また、これらの実施形態では、出力トルクTxや微分値vx’などの物理量のみではな
く、アクセル開度Axなどの操作量に基づいて、時定数tcを変更するので、物理量が取得できない場合でも、路面勾配の推定誤差の低減には有利になる。
加えて、これらの実施形態では、駆動力が正の場合と、制動力が正の場合と、それ以外の場合とで、条件を区別して、時定数tcを変更するので、車両10の走行状況に応じた時定数tcに設定できる。これにより、走行状況に応じて異なる路面勾配の推定誤差の低減には有利になる。
既述した実施形態では、車両10がトラックなどの大型車両を例に説明したが、本発明の路面勾配推定装置30は、バス、普通車両、牽引車(トラクタ)にも適用でき、車両10の種類には限定されない。
また、既述した実施形態では、路面勾配推定装置30が、路面勾配演算部31、車速センサ26、及び加速度センサ27から構成された例を説明したが、本発明はこれに限定されない。例えば、路面勾配推定装置30が車速取得手段、加速度取得手段、推定手段、及び出力手段として機能する一つのセンサと、フィルタ手段及び変更手段として機能するハードウェアとから構成されていてもよい。
また、既述した実施形態では、フィルタ部34として、一次伝達関数ブロックを用いたが、本発明はこれに限定されない。フィルタ部34としては、例えば、定数倍ブロックと、加算ブロックと、積分ブロックとから構成し、1回積分の結果をフィードバック加算するものを用いてもよいし、ローパスフィルタの次数は高次でもよい。