(57)【要約】【課題】車両の重量が変化したタイミングに合わせて、車両の重量を高精度に推定する車両重量推定装置及び車両重量推定方法を提供する。【解決手段】車両重量推定装置３０は、ポジションセンサ２４、回転速度センサ２５、車速センサ２６、加速度センサ２７、制御部２８、及び車両重量演算部３１を備え、車両重量演算部３１が、パラメータ取得部３２、推定部３３、及び選択部３４を有し、選択部３４により、積算値Σｍｘ（ｋ）が誤差の範囲から外れた場合に、出力値ｍｘとして推定値ｍｘ（ｋ）を選択して出力し、積算値Σｍｘ（ｋ）が誤差の範囲に収まった場合に、出力値ｍｘとして前回出力値ｍ（ｘ−１）を選択して出力する構成にした。【選択図】図４
2019117051.tif 000002
【特許請求の範囲】
【請求項１】
車両の走行中に変化するパラメータを取得するパラメータ取得手段と、
前記パラメータが入力されて、そのパラメータに基づいた前記車両の重量の推定値を出力する推定手段と、
前記推定値が入力される選択手段と、を備えて、
前記選択手段により、前記推定値及び予め設定された基準値の差分が所定の範囲から外れた場合に、その推定値に応じた出力値が選択されて、その差分が前記所定の範囲に収まった場合に、前記推定値を推定するよりも前に前記選択手段から出力された出力値である前回出力値が選択されて、選択された前記出力値又は前記前回出力値のいずれか一方が出力される構成にすることを特徴とする車両重量推定装置。
【請求項２】
前記選択手段は、前記推定値及び前記基準値の差分を、前記推定値が入力される時までの前記基準値から前記推定値までの変化の積算値として算出する手段である請求項１に記載の車両重量推定装置。
【請求項３】
前記選択手段は、前記推定値及び前記基準値の差分が前記所定の範囲から外れたときに、その推定値を次回の基準値に設定する手段である請求項１又は２のいずれか１項に記載の車両重量推定装置。
【請求項４】
前記選択手段は、前記積算値が前記所定の範囲から外れたと判定したときに、その積算値をゼロにする手段である請求項２に記載の車両重量推定装置。
【請求項５】
前記推定手段は、前記推定値を予め設定された誤差の範囲で推定する手段であり、
前記所定の範囲が、前記誤差の範囲に設定される請求項１〜４のいずれか１項に記載の車両重量推定装置。
【請求項６】
前記推定手段は、入力された前記パラメータ及びそのパラメータを取得するよりも前に推定した推定値である前回推定値に基づいて平滑化処理を用いて前記推定値を推定する手段である請求項１〜５のいずれか１項に記載の車両重量推定装置。
【請求項７】
前記推定手段は、前記パラメータ及び前記前回推定値に基づいて、前記車両の前後方向の運動方程式を伝達関数として見做して、前記平滑化処理として適応アルゴリズムを用いて前記推定値を推定する手段である請求項６に記載の車両重量推定装置。
【請求項８】
車両の走行中に変化するパラメータを取得し、
前記パラメータに基づいて、前記車両の重量として推定値を推定し、
推定した前記推定値及び予め設定された基準値の差分を算出し、
算出した前記差分が所定の範囲から外れたか否かを判定し、
前記差分が前記所定の範囲から外れたと判定した場合に、前記車両の重量として前記推定値に応じた出力値を選択し、
前記差分が前記所定の範囲に収まったと判定した場合に、前記推定値を推定するよりも前に前記車両の重量として出力された出力値である前回出力値を選択し、
選択された前記出力値又は前記前回出力値のいずれか一方を出力することを特徴とする車両重量推定方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、車両重量推定装置及び車両重量推定方法に関し、より詳細には、車両の重量を高精度に推定する車両重量推定装置及び車両重量推定方法に関する。
【背景技術】
【０００２】
推定した車両重量を平滑化した値が予め設定した範囲から外れた場合は、その値をその範囲に収まるように補正する装置が提案されている（例えば、特許文献１参照）。この装置は、範囲として車両重量最大値に基づく上限値と車両重量最小値に基づく下限値とを用いることで、車両の重量の推定を行っている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００４−３０１５７６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところで、推定された車両の重量は車両の走行に関する制御に用いられている。それ故、推定に用いたパラメータにノイズなどの影響による誤差が生じて、推定された車両の重量が変化するごとに、車両の走行に関する制御も変化する。このような制御の変化としては、変速機の変速段を変更するタイミングの変化が例示される。この制御の変化は、運転者へ違和感を与えて、運転性（ドライバビリティ）を低下させる要因となっている。
【０００５】
つまり、上記一例の装置において、実際の車両の重量が変化していなくても、その推定した車両の重量に更新されることになるため、車両の走行に関する制御に変化が生じる頻度が多くなる可能性が有る。
【０００６】
本開示は、上記のことを鑑みてなされたものであり、その目的は、車両の重量が変化したタイミングに合わせて、車両の重量を高精度に推定する車両重量推定装置及び車両重量推定方法を提供することである。
【課題を解決するための手段】
【０００７】
上記の目的を達成する本発明の一態様の車両重量推定装置は、車両の走行中に変化するパラメータを取得するパラメータ取得手段と、前記パラメータが入力されて、そのパラメータに基づいた前記車両の重量の推定値を出力する推定手段と、前記推定値が入力される選択手段と、を備えて、前記選択手段により、前記推定値及び予め設定された基準値の差分が所定の範囲から外れた場合に、その推定値に応じた出力値が選択されて、その差分が前記所定の範囲に収まった場合に、前記推定値を推定するよりも前に前記選択手段から出力された出力値である前回出力値が選択されて、選択された前記出力値又は前記前回出力値のいずれか一方が出力される構成にすることを特徴とする。
【０００８】
上記の目的を達成する本発明の一態様の車両重量推定方法は、車両の走行中に変化するパラメータを取得し、前記パラメータに基づいて、前記車両の重量として推定値を推定し、推定した前記推定値及び予め設定された基準値の差分を算出し、算出した前記差分が所定の範囲から外れたか否かを判定し、前記差分が前記所定の範囲から外れたと判定した場合に、前記車両の重量として前記推定値に応じた出力値を選択し、前記差分が前記所定の範囲に収まったと判定した場合に、前記推定値を推定するよりも前に前記車両の重量として出力された出力値である前回出力値を選択し、選択された前記出力値又は前記前回出力値のいずれか一方を出力することを特徴とする。
【発明の効果】
【０００９】
本発明の一態様によれば、車両の重量が変化したタイミングに合わせて、車両の重量を高精度に推定することができる。
【図面の簡単な説明】
【００１０】
【図１】車両重量推定装置の第一実施形態を例示する説明図である。
【図２】図１の制御装置を例示するブロック図である。
【図３】図２の車両重量演算部を例示するブロック図の一部である。
【図４】図２の車両重量演算部を例示するブロック図の一部である。
【図５】車両重量推定方法の第一実施形態を例示するフロー図である。
【図６】エンジン回転速度及び燃料噴射量と、エンジントルクとの関係を例示する関係図である。
【発明を実施するための形態】
【００１１】
以下に、車両重量推定装置及び車両重量推定方法の実施形態について説明する。
【００１２】
図１〜図４に例示する実施形態の車両重量推定装置３０は、車両１０に搭載されて、その車両１０の走行中に変化するパラメータに基づいて車両１０の重量を推定する装置である。以下、符号にｘ、ｙが付随するものは変数であり、センサなどの検出値や推定値を示し、符号にｋが付随するものは時系列を示し、このｋはサンプリング周期ｔｓごとに「１」ずつ増加する。
【００１３】
図１に例示するように、車両重量推定装置３０が搭載される車両１０は、シャーシ１１の前方側に運転室（キャブ）１２が配置され、シャーシ１１の後方側にボディ１３が配置される。
【００１４】
シャーシ１１には、エンジン１４、クラッチ１５、トランスミッション１６、プロペラシャフト１７、及びディファレンシャルギア１８が設置される。エンジン１４の回転動力は、クラッチ１５を介してトランスミッション１６に伝達される。トランスミッション１６で変速された回転動力は、プロペラシャフト１７を通じてディファレンシャルギア１８に伝達され、後輪である一対の駆動輪１９にそれぞれ駆動力として分配される。エンジン１４とクラッチ１５との間にトルクコンバータを介在させてもよい。
【００１５】
制御装置２０は、エンジン１４、クラッチ１５、トランスミッション１６、及び各種センサに一点鎖線で示す信号線を介して電気的に接続される。各種センサとして、運転室１２には、アクセルペダル２１の踏み込み量からアクセル開度Ａｘを検出するアクセル開度センサ２２、シフトレバー２３のレバーポジションＰｘを検出するポジションセンサ２４が設置される。シャーシ１１には、エンジン１４の図示しないクランクシャフトの回転速度Ｎｘを検出する回転速度センサ２５、車速センサ２６、及び、加速度センサ２７が設置される。
【００１６】
制御装置２０は、各種情報処理を行うＣＰＵ、その各種情報処理を行うために用いられるプログラムや情報処理結果を読み書き可能な内部記憶装置、及び各種インターフェースなどから構成されるハードウェアである。
【００１７】
図２に例示するように、制御装置２０は、エンジン１４、クラッチ１５、及びトランスミッション１６を制御する制御部２８と、車両１０の重量を演算する車両重量演算部３１と、を各機能要素として有する。この実施形態で、各機能要素は、プログラムとして内部
記憶装置に記憶されるが、各機能要素が個別のハードウェアで構成されてもよい。
【００１８】
車両重量推定装置３０は、ポジションセンサ２４、回転速度センサ２５、車速センサ２６、加速度センサ２７、制御部２８、及び車両重量演算部３１を備える。車両重量演算部３１は、パラメータ取得手段、推定手段、及び選択手段として機能して、それらのセンサの検出値や演算部の演算結果が入力され、各検出値や演算結果に基づいて演算した結果を出力値ｍｘとして出力する。
【００１９】
制御部２８は、パラメータ取得手段の一部として機能する機能要素であり、この実施形態では、サンプリング周期ｔｓごとにエンジン１４における燃料噴射量Ｑｘを取得する。燃料噴射量Ｑｘは、エンジン１４の図示しないインジェクタの噴射時間（駆動パルス）に比例することから噴射時間の合計値から求められる。
【００２０】
制御部２８は、アクセル開度センサ２２により検出したアクセル開度Ａｘが入力されて、そのアクセル開度Ａｘに基づいて、基準噴射時間を算出する。次いで、制御部２８は、車両１０に搭載されてエンジン１４により駆動する車載装置の駆動の有無、エンジン１４から排出された排気ガスを浄化する排気ガス浄化装置の再生の有無などに基づいて、追加噴射時間を算出する。この追加噴射時間に基づいた燃料噴射量が噴射されると、車載装置の駆動力を補ったり、排気ガス浄化装置を再生したりする。次いで、制御部２８は、サンプリング周期ｔｓごとに基準噴射時間及び追加噴射時間の合計値に基づいて燃料噴射量Ｑｘを算出する。
【００２１】
制御部２８としては、エンジン１４における実際に噴射された燃料噴射量Ｑｘを取得できればよく、この構成に限定されない。制御部２８としては、図示しないインテークマニホールドの内圧、体積効率、及び要求空燃比から、あるいは、吸入空気量及びエンジン回転速度Ｎｘから基準噴射時間を算出してもよい。車載装置としては、エアコンプレッサやモータジェネレータなどが例示できる。排気ガス浄化装置としては、排気ガス中の粒子状物質を捕集する捕集フィルタが例示できる。
【００２２】
ポジションセンサ２４は、パラメータ取得手段の一部として機能する装置であり、車両１０の運転者によって操作されるシフトレバー２３の位置を電気的に検出することによって運転者が要求するレバーポジションＰｘを検出する。ポジションセンサ２４は、サンプリング周期ｔｓごとにレバーポジションＰｘに応じたトランスミッション１６のギア比ｉｘを検出する。レバーポジションＰｘとしては、駐車ポジション（Ｐポジション）、後進ポジション（Ｒポジション）、ニュートラルポジション（Ｎポジション）、前進ポジション（Ｄレンジ）などが例示できる。前進ポジションは、例えば、１速〜６速の複数段が設定されている。各前進ポジションには、１速から段数が上がるごとに小さくなるギア比ｉｘが設定されている。トランスミッション１６がＡＭＴで構成されている場合は、ポジションセンサ２４の代わりに、制御部２８で制御されたトランスミッション１６の変速段を読み取る機能を有したものを用いてもよい。また、制御部２８の制御信号からトランスミッション１６のギア比ｉｘを取得する場合に、そのギア比ｉｘは、車速ｖｘとエンジン回転速度Ｎｘとに基づいて求めることもできる。
【００２３】
車速センサ２６は、パラメータ取得手段の一部として機能する装置であり、プロペラシャフト１７の回転速度に比例したパルス信号を読み取り、制御装置２０の図示しない車速演算処理によりサンプリング周期ｔｓごとに車速ｖｘを取得するセンサである。車速センサ２６が回転速度に比例したパルス信号に基づいて車速ｖｘを取得することから、取得された車速ｖｘは、負ではなくゼロ以上の値になる。車速センサ２６としては、トランスミッション１６の図示しないアウトプットシャフト、駆動輪１９、従動輪などの回転速度から車速ｖｘを取得するセンサを用いてもよい。なお、駆動輪１９、従動輪などの回転速度から車速ｖｘを取得するセンサを用いる場合には、左右一対の車輪のそれぞれの回転速度を取得して、その平均値を車速ｖｘとするとよい。
【００２４】
加速度センサ２７は、パラメータ取得手段の一部として機能する装置であり、車両１０の前後方向での速度変化に伴う加速度成分と車両１０の姿勢変化に伴う重力加速度成分とによって動作する。加速度センサ２７は、サンプリング周期ｔｓごとに、それらを合成した路面に平行な加速度成分、すなわち車両１０の前後方向の加速度Ｇｘを取得するセンサである。加速度センサ２７としては、機械的変位測定方式、光学的方式、半導体方式などが例示できる。
【００２５】
図３及び図４に例示するように、この実施形態で、車両重量演算部３１は、各機能要素として、パラメータ取得部３２、推定部３３、及び選択部３４を有する。車両重量演算部３１の各機能要素は、プログラムとして内部記憶装置に記憶されるが、各機能要素が個別のハードウェアで構成されてもよい。
【００２６】
パラメータ取得部３２は、パラメータ取得手段として機能しており、制御部２８及び各センサの検出値が入力される。パラメータ取得部３２は、サンプリング周期ｔｓごとに車両１０が走行中に変化するパラメータとして第一パラメータΦｘと第二パラメータΦｙとを推定部３３に出力する機能要素である。パラメータ取得部３２は、第一パラメータ算出ブロック３２ａ、第二パラメータ算出ブロック３２ｂ、及びエンジントルク算出ブロック３２ｃを有している。
【００２７】
第一パラメータ算出ブロック３２ａは、加速度Ｇｘが入力されて、第一パラメータΦｘを算出する機能要素である。第二パラメータ算出ブロック３２ｂは、車速ｖｘ、トランスミッション１６のギア比ｉｘ、及びエンジントルクＴｅが入力されて、第二パラメータΦｙを算出する機能要素である。エンジントルク算出ブロック３２ｃは、エンジン回転速度Ｎｘ、燃料噴射量Ｑｘが入力されて、エンジン１４から実際に出力されるエンジントルクＴｅを算出する機能要素である。
【００２８】
推定部３３は、推定手段として機能しており、第一パラメータΦｘ、第二パラメータΦｙが入力されて、それらとサンプリング周期ｔｓにおける一つ前に推定した前回推定値ｍｘ（ｋ−１）とに基づいて、平滑化処理を用いて推定した推定値ｍｘ（ｋ）を出力する機能要素である。推定部３３は、ＲＬＳ推定ブロックから構成されている。ＲＬＳ推定ブロックは、推定演算における変数をサンプリング周期ｔｓごとに更新している。つまり、ＲＬＳ推定ブロックは、新たなパラメータが入力される時に、前回推定値ｍｘ（ｋ−１）、共分散行列Ｐ（ｋ−１）、ＲＬＳアルゴリズムで計算されるゲインＫ（ｋ−１）が記憶された状態になっている。
【００２９】
選択部３４は、選択手段として機能しており、推定部３３から出力された推定値ｍｘ（ｋ）が逐次入力される。選択部３４は、推定値ｍｘ（ｋ）及び基準値ｍａの差分に基づいて、出力値ｍｘとして推定値ｍｘ（ｋ）又は前回出力値ｍ（ｘ−１）のいずれか一方を選択して出力する機能要素である。
【００３０】
推定値ｍｘ（ｋ）及び基準値ｍａの差分は、推定値ｍｘ（ｋ）が入力された時までの基準値ｍａから推定値ｍｘ（ｋ）までの間の経時的な変化の積算値Σｍｘ（ｋ）である。つまり、選択部３４は、入力された推定値ｍｘ（ｋ）及び前回推定値ｍｘ（ｋ−１）の差分である変化量Δｍｘ（ｋ）を前回推定値ｍｘ（ｋ−１）及び基準値ｍａの差分Δｍｘ（ｋ−１）に積算した積算値Σｍｘ（ｋ）を算出する機能要素である。
【００３１】
基準値ｍａは、推定値ｍｘ（ｋ）が出力値ｍｘとして出力されたタイミングで更新され
る値である。基準値ｍａの初期値としては、基準車重Ｗ０が例示される。基準車重Ｗ０としては、空車時の車両１０の重量である車両重量、つまり、車両１０の本体（シャーシ１１、運転室１２、ボディ１３）の重量（エンジン１４なども含む）が例示される。なお、車両重量としては、燃料、オイル、冷却水、スペアタイヤ及び工具などの重量を含めてもよい。また、基準値ｍａとしては、車両総重量、つまり、車両重量に、最大乗車定員の合計体重と最大積載量の荷の重量とを合計した重量も例示される。
【００３２】
この実施形態で、選択部３４は、前回推定値取得ブロック（ディレイブロック）３４ａ、加算ブロック３４ｂ、積算ブロック（積分器又はインテグレータともいう）３４ｃ、絶対値ブロック３４ｄ、比較ブロック３４ｅ、スイッチブロック３４ｆ、及び前回出力値取得ブロック（ディレイブロック）３４ｇを有する。
【００３３】
前回推定値取得ブロック３４ａ、加算ブロック３４ｂ、及び積算ブロック３４ｃは、入力された推定値ｍｘ（ｋ）及び基準値ｍａの差分を算出する機能要素であり、その差分として積算値Σｍｘ（ｋ）を算出する機能要素である。具体的に、前回推定値取得ブロック３４ａ、加算ブロック３４ｂ、及び積算ブロック３４ｃは、一定周期（サンプリング時間）ごとに推定値ｍｘ（ｋ−１）及び前回推定値ｍｘ（ｋ−１）の差分である変化量Δｍｘ（ｋ）を算出し、算出した変化量Δｍｘ（ｋ）を積算した積算値Σｍｘ（ｋ）を算出する機能要素である。
【００３４】
変化量Δｍｘ（ｋ）は、取得した現在の推定値ｍｘ（ｋ）と前回取得した前回推定値ｍｘ（ｋ−１）との差分である。変化量Δｍｘ（ｋ）としては、例えば、一定周期（サンプリング時間）あたりの変化量を用いてもよい。変化量Δｍｘ（ｋ）は、前回推定値ｍｘ（ｋ−１）から推定値ｍｘ（ｋ）に増加した場合を正（＋）とし、減少の場合を負（−）とする。積算値Σｍｘ（ｋ）は、一定周期（サンプリング時間）ごとに算出される変化量Δｍｘ（ｋ）の総和であり、リセットされてから現時点までの一定周期ごとの変化量Δｍｘ（ｋ）を順次、加算して算出される。例えば、前回の周期でリセットされた場合に積算値Σｍｘ（ｋ）は変化量Δｍｘ（ｋ）となり、一度もリセットされていない場合に積算値Σｍｘ（ｋ）は変化量Δｍｘ（１）〜変化量Δｍｘ（ｋ）の総和となる。積算ブロック３４ｃは、比較ブロック３４ｅから発進された二値信号である「１」が入力されると、積算値Σｍｘ（ｋ）をリセット、つまりゼロ（「０」）にする。なお、積算値Σｍｘ（ｋ）をリセットすることは、実質的に、基準値ｍａを推定値ｍｘ（ｋ）に更新する、つまり、推定値ｍｘ（ｋ）を次回の基準値ｍａに設定することと同義である。
【００３５】
絶対値ブロック３４ｄ及び比較ブロック３４ｅは、積算値Σｍｘ（ｋ）が誤差の範囲（−Ｗａ〜＋Ｗａ）から外れたか否かを判定する機能要素である。比較ブロック３４ｅは、積算値Σｍｘ（ｋ）が誤差の範囲から外れた場合に（｜ΣＷｘ｜＞Ｗａ）、二値信号として「１」（真を示す信号）を発信する。一方、積算値Σｍｘ（ｋ）が誤差の範囲に収まった場合に（｜ΣＷｘ｜≦Ｗａ）、二値信号として「０」（偽を示す信号）を発信する。なお、本明細書において、積算値Σｍｘ（ｋ）が＋Ｗａ又は−Ｗａの値の場合は、誤差の範囲に収まったものとする。
【００３６】
次に、この実施形態の推定部３３による推定値ｍｘ（ｋ）の推定演算について説明する。推定部３３は、各パラメータ及び前回推定値ｍｘ（ｋ−１）に基づいて、車両１０の前後方向の運動方程式を伝達関数として見做して、平滑化処理として適応アルゴリズムを用いて推定値ｍｘ（ｋ）を推定する。適応アルゴリズムとしては、ＲＬＳ（Ｒｅｃｕｒｓｉｖｅ  Ｌｅａｓｔ  Ｓｑｕａｒｅ）アルゴリズム（逐次最小二乗法アルゴリズム）を用いている。
【００３７】
車両１０の前後方向の運動方程式は、下記の数式（１）で表される。数式（１）におい
て、ｖｘ’は車速ｖｘを時間微分した微分値を、Ｔｗは駆動輪１９に伝達される駆動トルクを、ｒｗは駆動輪１９の車輪径を、Δｍｘは後述する回転部分相当質量を、Ｂは定数を、ｇは重力加速度を、μは転がり抵抗係数をそれぞれ示している。定数Ｂは、「０．５」、空気密度ρ、車両１０の前面投影面積Ａｆ、及び空気抵抗係数Ｃｄを乗算した定数である。車輪径ｒｗ、定数Ｂ、転がり抵抗係数μは、車両１０に固有の値として求められる。
【００３８】
【数１】
2019117051.tif 000003
上記の数式（１）を変形すると、車両１０の重量ｍｘは、下記の数式（２）に表される。
【００３９】
【数２】
2019117051.tif 000004
上記の数式（２）は、第一パラメータΦｘを入力値、第二パラメータΦｙを出力値、推定値ｍｘを変数とした伝達関数として見做せる。そこで、その伝達関数（Φｙ（ｋ）＝Φｘ（ｋ）・ｍｘ（ｋ））を、ＲＬＳアルゴリズムに従って自己適応させて、推定値ｍｘ（ｋ）を推定する。推定値ｍｘ（ｋ）は以下の数式（３）〜（５）で表される。以下の数式で、ｍｘ（ｋ−１）はサンプリング周期ｔｓにおける一つ前に推定した推定値である前回推定値を、Ｋ（ｋ）はＲＬＳアルゴリズムで計算されるゲインを、Ｐ（ｋ）は共分散行列を、Ｉは単位行列を、「T」は転置行列をそれぞれ示している。
【００４０】
【数３】
2019117051.tif 000005
【００４１】
【数４】
2019117051.tif 000006
【００４２】
【数５】
2019117051.tif 000007
共分散行列Ｐ（ｋ）の初期値Ｐ（０）を定めれば、パラメータΦｘにより、上記の数式（５）に基づいて共分散行列Ｐ（ｋ）を、及び数式（４）に基づいてゲインＫ（ｋ）をそれぞれ算出できる。つまり、新しく第一パラメータΦｘ及び第二パラメータΦｙが得られる度に、共分散行列Ｐ（ｋ）とゲインＫ（ｋ）を新たに更新する。そして、それらと数式（３）に基づいて、直前に推定した前回推定値ｍｘ（ｋ−１）を修正していく方式で推定
値ｍｘ（ｋ）を算出できる。
【００４３】
初期値Ｐ（０）は、定数αと単位行列Ｉとの積で表される。定数αとしては、通常１０００程度の値が用いられるが、ノイズが大きい場合には定数αを小さく設定するとよい。この定数αは、ノイズの大きさにより決定される。また、初期値ｍ（0）としては、例えば、運転者や荷を除いた空車時の車両重量、最大積載時の車両総重量、あるいは推定値ｍｘ（ｋ）の平均値を用いるとよい。
【００４４】
共分散行列Ｐ（ｋ）が大きくなると、推定値ｍｘ（ｋ）は真値から遠ざかり、共分散行列Ｐ（ｋ）が小さく収束すると、推定値ｍｘ（ｋ）は真値に近づく。
【００４５】
このように、上記の数式（２）を伝達関数として見做して、推定値ｍｘ（ｋ）を適応アルゴリズムにより推定することで、推定値ｍｘ（ｋ）を逐次、平滑化処理できる。これにより、真値への収束の高速化と、雑音、外乱、あるいは各センサの検出値の統計的性質の変化などに対するロバスト性の向上には有利になり、推定誤差を低減できる。これに伴い、車両１０の重量を高精度に推定できる。
【００４６】
この実施形態では、適応アルゴリズムのうちのＲＬＳアルゴリズムを用いることで、上記の数式（３）〜数式（５）により推定値ｍｘ（ｋ）を求めることができる。これにより、オンライン推定には有利になり、リアルタイムで推定値ｍｘ（ｋ）を算出できる。また、各センサで取得した検出値に対してローパスフィルタによりノイズを除去する方式と比して、車両１０の重量の推定の応答性の確保には有利になる。
【００４７】
加えて、サンプリング周期ｔｓごとに前回推定値ｍｘ（ｋ−１）、共分散行列Ｐ（ｋ−１）、ゲインＫ（ｋ−１）を更新するだけでよく、制御装置２０の内部記憶装置に記憶させる数値を最小限にできる。それ故、制御装置２０の内部記憶装置に車両１０の不確定な走行期間に対して無限の記憶領域を確保しなければならないオフライン推定（バッチ処理推定）による方式に比して、推定に要する記憶容量の削減には有利になる。なお、ここでいうオフライン推定とは、一括処理最小二乗法や、全ての推定値ｍｘ（０）〜ｍｘ（ｋ）の平均値を算出する方法などが例示できる。
【００４８】
さらに、ＲＬＳアルゴリズムを用いることで、サンプリング周期ｔｓごとに推定値ｍｘ（ｋ）を算出できる。これにより車両１０の状態（例えば、ギア比ｉｘや駆動トルクＴｗ）が変化したときや所定の距離を走行したときに推定する方式に比して、リアルタイムでの推定には有利になる。
【００４９】
次に、車両重量推定方法について、図５のフロー図を参照しながら、車両重量演算部３１の各機能として説明する。以下の車両重量推定方法は、車両１０の制御装置２０が通電すると開始されて、サンプリング周期ｔｓごとに繰り返し行われてリアルタイムに車両１０の重量を推定する。つまり、スタートからリターンまでを一つのサンプリング周期ｔｓで処理する。そして、制御装置２０が停電すると終了する。
【００５０】
スタートすると、車両重量演算部３１は、パラメータ取得部３２の機能により、車両１０の走行中に変化するパラメータを取得する（Ｓ１１０）。パラメータは、第一パラメータΦｘ、及び第二パラメータΦｙである。
【００５１】
具体的に、パラメータ取得部３２は、制御部２８及び各センサにより検出した検出値からそれらのパラメータを取得する。まず、制御部２８により燃料噴射量Ｑｘを、ポジションセンサ２４によりトランスミッション１６のギア比ｉｘを、回転速度センサ２５によりエンジン回転速度Ｎｘを、車速センサ２６により車速ｖｘを、加速度センサ２７により加
速度Ｇｘをそれぞれ取得する。
【００５２】
次いで、第一パラメータ算出ブロック３２ａは、各ブロックにより下記の数式（６）に示す第一パラメータΦｘを算出する。
【００５３】
【数６】
2019117051.tif 000008
加速度Ｇｘは、上述したとおり車両１０の前後方向での速度変化に伴う加速度成分と車両１０の姿勢変化に伴う重力加速度成分とを合成した路面に平行な加速度成分である。つまり、加速度Ｇｘは、微分値ｖｘ’と重力加速度成分ｇ・ｓｉｎβとを加算した値になる。したがって、数式（６）は、上記の数式（２）の分子と同義である。
【００５４】
第一パラメータΦｘの変数としては、上記の数式（２）に示すように、加速度Ｇｘの代わりに、車速ｖｘの微分値ｖｘ’と、車両１０の走行している路面勾配に基づいた重力加速度成分ｇ・ｓｉｎβとを用いてもよい。この場合は、加速度センサ２７の代わりに、車速センサ２６と車両１０が走行している路面勾配を取得する勾配センサや路面勾配を演算する機能要素を用いるとよい。
【００５５】
次いで、エンジントルク算出ブロック３２ｃは、燃料噴射量Ｑｘとエンジン回転速度Ｎｘとに基づいて、エンジン１４から出力される実際のエンジントルクＴｅを算出する。
【００５６】
図６に例示するように、エンジン１４から出力されるエンジントルクＴｅは、エンジン回転速度Ｎｘ及び燃料噴射量Ｑｘのそれぞれに対して正の関係にあり、エンジン回転速度Ｎｘが速く且つ燃料噴射量Ｑｘが大きいほど、大きくなる。このマップデータは予め実験や試験により求めておき、データブロックであるエンジントルク算出ブロック３２ｃに記憶させておく。
【００５７】
この実施形態では、エンジン回転速度Ｎｘ及び燃料噴射量Ｑｘの関係からエンジントルクＴｅを算出したが、燃料噴射量Ｑｘの代わりにアクセル開度センサ２２が取得したアクセル開度Ａｘを用いてもよいし、他の取得方法でもよい。
【００５８】
次いで、第二パラメータ算出ブロック３２ｂは、下記の数式（７）を用いて、駆動輪１９に伝達される駆動トルクＴｗを算出する。数式（７）において、ｉｆはディファレンシャルギア１８のギア比を、ηはギア比で異なる伝達効率をそれぞれ示している。駆動トルクＴｗはトルクセンサを用いて得てもよいし、他の方法で得てもよい。
【００５９】
【数７】
2019117051.tif 000009
次いで、第二パラメータ算出ブロック３２ｂは、ルックアップテーブルブロック３２ｄにより回転部分相当質量Δｍｘを算出する。
【００６０】
回転部分相当質量Δｍｘは、変数であるギア比ｉxに応じて決まる値である。ルックアップテーブルブロック３２ｄは、ギア比ｉｘごとの複数の回転部分相当質量Δｍｘが設定されており、ギア比ｉｘに応じたものを選択する。回転部分相当質量Δｍｘは、空車時の車両重量、ギア比ｉｘ、及び所定の係数との関係から算出してもよい。
【００６１】
次いで、第二パラメータ算出ブロック３２ｂは、各ブロックにより下記の数式（８）に示す第二パラメータΦｙを算出する。
【００６２】
【数８】
2019117051.tif 000010
この実施形態では、第二パラメータΦｙを上記の数式（８）で示したが、エンジン１４、クラッチ１５、トランスミッション１６、ディファレンシャルギア１８などに働く摩擦トルクＴｆを考慮してもよい。この場合は、駆動トルクＴｗから摩擦トルクＴｆを減算した値を駆動輪１９の車輪径ｒｗで除算するとよい。摩擦トルクＴｆを考慮すると、推定精度の向上には有利になる。
【００６３】
以上のように各パラメータを取得すると、車両重量演算部３１は、推定部３３の上述した推定方法により、推定値ｍｘ（ｋ）を推定する（Ｓ１２０）。
【００６４】
次いで、車両重量演算部３１は、選択部３４により、入力された推定値ｍｘ（ｋ）と、この推定値ｍｘ（ｋ）が入力される直前に入力された値である前回推定値ｍｘ（ｋ−１）との差分である変化量Δｍｘ（ｋ）を算出する（Ｓ１３０）。具体的に、このステップでは、前回推定値取得ブロック３４ａ及び加算ブロック３４ｂにより変化量Δｍｘ（ｋ）を算出する。なお、変化量Δｍｘ（ｋ）は、単位時間あたりの推定値ｍｘ（ｋ）の変化量として算出してもよい。また、制御装置２０が通電された直後の前回推定値ｍｘ（ｋ−１）は、制御装置２０が停止される直前に入力された推定値でもよく、前述した基準値ｍａの初期値である基準車重Ｗ０でもよい。
【００６５】
次いで、車両重量演算部３１は、選択部３４により、推定値ｍｘ（ｋ）が入力された時までの基準値ｍａから推定値ｍｘ（ｋ）までの間の経時的な変化の積算値Σｍｘ（ｋ）を算出する（Ｓ１４０）。具体的に、このステップでは、積算ブロック３４ｃにより、前回推定値ｍｘ（ｋ−１）及び基準値ｍａの差分である前回の積算値Σｍｘ（ｋ−１）に、ステップＳ１３０で算出された変化量Δｍｘ（ｋ）を加算して、積算値Σｍｘ（ｋ）を算出する。つまり、前回の積算値Σｍｘ（ｋ−１）がゼロ（「０」）の場合に、このステップで算出される積算値Σｍｘ（ｋ）は、変化量Δｍｘ（ｋ）となる。
【００６６】
次いで、車両重量演算部３１は、選択部３４により積算値Σｍｘ（ｋ）が誤差の範囲（−Ｗａ〜＋Ｗａ）から外れるか否かを判定する（Ｓ１５０）。このステップでは、選択部３４により積算値Σｍｘ（ｋ）の絶対値が誤差の範囲の数値Ｗａを超えた場合は、仮推定値ｍｘ（ｋ）を出力値ｍｘとして出力するステップへ進む。一方、積算値Σｍｘ（ｋ）の絶対値が誤差の範囲の数値Ｗａ以下の場合は、前回出力値ｍ（ｘ−１）を維持するステップへ進む。
【００６７】
積算値Σｍｘ（ｋ）の絶対値が誤差の範囲の数値Ｗａを超えた場合に、車両重量演算部３１は、選択部３４により推定値ｍｘ（ｋ）を選択する（Ｓ１６０）。次いで、車両重量演算部３１は、選択部３４により積算値Σｍｘ（ｋ）をリセットする（Ｓ１７０）。このステップでは、積算値Σｍｘ（ｋ）をリセットしてその値をゼロにすることで、実質的に、基準値ｍａを推定値ｍｘ（ｋ）に更新する。次いで、車両重量演算部３１は、選択部３４により選択された推定値ｍｘ（ｋ）を出力値ｍｘとして出力して（Ｓ１８０）、スタートへリターンする。
【００６８】
一方、積算値Σｍｘ（ｋ）の絶対値が誤差の範囲の数値Ｗａ以下の場合に、車両重量演算部３１は、選択部３４により、前回出力値ｍ（ｘ−１）を選択する（Ｓ１９０）。次いで、車両重量演算部３１は、選択部３４により選択された前回出力値ｍ（ｘ−１）を出力
値ｍｘとして出力して（Ｓ１８０）、スタートへリターンする。
【００６９】
具体的に、選択部３４では、比較ブロック３４ｅにより積算値Σｍｘ（ｋ）の絶対値が誤差の範囲の数値Ｗａを超えたか否かを判定する（Ｓ１５０）。積算値Σｍｘ（ｋ）の絶対値が誤差の範囲の数値Ｗａを超えた場合は、比較ブロック３４ｅから発進された二値信号である「１」が入力されたスイッチブロック３４ｆにより、推定値ｍｘ（ｋ）が選択される（Ｓ１６０）。次いで、比較ブロック３４ｅから発進された二値信号である「１」が入力された積算ブロック３４ｃにより積算値Σｍｘ（ｋ）がリセットされる（Ｓ１７０）。
【００７０】
一方、積算値Σｍｘ（ｋ）の絶対値が誤差の範囲の数値Ｗａ以下の場合は、スイッチブロック３４ｆにより、前回出力値ｍ（ｘ−１）が選択される（Ｓ１９０）。
【００７１】
以上のように、車両重量演算部３１は、積算値Σｍｘ（ｋ）が誤差の範囲（−Ｗａ〜＋Ｗａ）から外れた時を車両の重量が変化したタイミングと見做して、その時に推定された推定値ｍｘ（ｋ）を出力値ｍｘとして出力する。一方、車両重量演算部３１は、積算値Σｍｘ（ｋ）が誤差の範囲（−Ｗａ〜＋Ｗａ）に収まった時を車両の重量が変化していない時と見做して、その時に前回出力値ｍ（ｘ−１）の出力を維持する。
【００７２】
つまり、車両重量演算部３１は、センシングにおける誤差を排除して、車両１０の重量が変化したタイミングを見極めて、出力値ｍｘを出力することで、車両１０の重量が更新される頻度を抑えるには有利になる。また、推定値ｍｘ（ｋ）が誤差の範囲に収まった値で徐々に変化した場合でも、その変化を積算値Σｍｘ（ｋ）で判断することで、車両１０の重量の変化を見逃す事態を回避するには有利になる。このように、車両重量演算部３１は、車両１０の重量が変化したタイミングに合わせて、その重量を高精度に推定できるので、その重量を用いる制御の変動を起因とした違和感を運転者に与えずに運転性（ドライバビリティ）を向上することができる。
【００７３】
例えば、車両１０の重量を用いる制御がトランスミッション１６の変速制御の場合に、車両１０の重量が更新されると、その更新に伴ってトランスミッション１６における変速タイミングが変化する。そこで、実施形態の車両重量演算部３１は、車両１０の重量が実際に変化したときに出力値ｍｘを更新する。それ故、車両１０の重量の変化に合わせて変速タイミングを変化させることができるので、変速タイミングの変化による違和感を運転者に与えずに運転性を向上することができる。
【００７４】
また、車両重量演算部３１は、積算値Σｍｘ（ｋ）が誤差の範囲に収まる場合に、つまり、実際に車両の重量が変化していない場合に、前回出力値ｍ（ｘ−１）の出力を維持するので、車重の推定誤差を低減するには有利になる。
【００７５】
車両重量演算部３１は、積算値Σｍｘ（ｋ）に対する閾値として誤差の範囲を用いたが、車両の重量が変化したことを判定可能な範囲であれば誤差の範囲以外の範囲を用いてもよい。但し、誤差の範囲を用いることで、各センサの精度や感度による誤差や、車両１０の振動に起因するセンサの振動による誤差の影響を排除することが可能になり、路面勾配の推定誤差を低減するには有利になる。
【００７６】
既述した実施形態では、推定値ｍｘ（ｋ）及び基準値ｍａの差分として、積算値Σｍｘ（ｋ）を算出する構成を例示したが、基準値ｍａをリセットごとにリセットされたときの推定値ｍｘ（ｋ）に更新する構成にして、推定値ｍｘ（ｋ）及び基準値ｍａの差分を一定周期（サンプリング時間）ごとに算出してもよい。
【００７７】
この実施形態では、推定値ｍｘ（ｋ）の推定演算としてＲＬＳアルゴリズムを用いた例を説明したが、推定部３３としては、車両１０の重量を推定できればよく、推定演算はこれに限定されない。例えば、ＲＬＳアルゴリズムの代わりに、適応アルゴリズムとしてＬＭＳ（Ｌｅａｓｔ  Ｍｅａｎ  Ｓｑｕａｒｅ）アルゴリズムやＮＬＭＳ（Ｎｏｍａｌｉｚｅｄ  Ｌｅａｓｔ  Ｍｅａｎ  Ｓｑｕａｒｅ）アルゴリズムなどを用いてもよい。また、推定した全ての推定値ｍｘ（０）〜推定値ｍｘ（ｋ）の平均値を出力する平均化処理を施してもよい。なお、平均化処理は、平滑化処理の特定のパターンである。
【００７８】
仮推定値ｍｘ（ｋ）は簡易的な方法で算出することができればよく、上記の数式（２）で示す車両１０の前後方向の運動方程式のみを用いる方式に限定しない。例えば、車両１０がエアサスペンションを搭載している場合は、車両１０の上下方向の変化に基づく方式を用いてもよい。また、変速の前後のトランスミッションに入力されるトルクとそのトランスミッションから出力される回転数の変化量とに基づく方式を用いてもよい。また、積載量の変化に伴うボディ１３の重量をロードセルなどの重量センサで取得した値に空車時の車両重量を加算した値を仮推定値Ｍｘとしてもよい。
【００７９】
また、既述した実施形態では、車両重量推定装置３０が、車両重量演算部３１と各センサなどから構成された例を説明したが、本開示はこれに限定されない。例えば、車両重量推定装置３０がパラメータ取得手段及び仮推定手段として機能する一つのセンサと、推定手段及び維持手段として機能するハードウェアとから構成されていてもよい。
【符号の説明】
【００８０】
１０  車両
２４  ポジションセンサ
２５  回転速度センサ
２６  車速センサ
２７  加速度センサ
２８  制御部
３０  車両重量推定装置
３１  車両重量演算部
３２  パラメータ取得部
３３  推定部
３４  選択部
Φｘ  第一パラメータ
Φｙ  第二パラメータ
ｍｘ（ｋ）  推定値
ｍｘ（ｋ−１）  前回出力値
ｍｘ  出力値
ｍａ  基準値
Δｍｘ（ｋ）  変化量
Σｍｘ（ｋ）  推定値及び基準値の差分（変化量の積算値）
【図１】
2019117051.tif 000011
【図２】
2019117051.tif 000012
【図３】
2019117051.tif 000013
【図４】
2019117051.tif 000014
【図５】
2019117051.tif 000015
【図６】
2019117051.tif 000016