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