(57)【特許請求の範囲】
【請求項１】
原動機の発生トルクを流体式トルクコンバータを介して駆動輪に伝達する車両の加速度を検出する加速度検出手段と、
前記車両の駆動力を推定する駆動力推定手段と、
前記検出された加速度と前記推定された駆動力とに基づいて前記車両の重量を推定する車両重量推定手段とを備えた車両重量推定装置において、
前記車両が降坂路を走行しているか否かを判定する降坂路走行判定手段と、
前記車両が降坂路を走行していると判定された場合に前記車両重量推定手段による車両重量の推定を無効とする推定無効手段とを備えたことを特徴とする車両重量推定装置。
【請求項２】
請求項１に記載の車両重量推定装置において、
前記降坂路走行判定手段は、前記原動機に対して同原動機の発生トルクを増大させる指示がなされた時点と、前記車両の速度が所定速度よりも大きくなる時点との関係に基づいて前記車両が降坂路を走行しているか否かを判定するように構成されたことを特徴とする車両重量推定装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、自動変速機の変速段の決定などに利用される車両の重量（車重）を推定する車両重量推定装置に関する。
【０００２】
【従来の技術】
従来から、車両用自動変速機の変速制御装置は、車速とエンジンのスロットル開度（アクセルペダル操作量）とに基づいて達成すべき変速段を決定するようになっている。また、搭乗者の人数や積載量等により変動する車両の重量を同車両の加速度及び同車両に加わる駆動力等を基にして推定するとともに、同推定された車両重量を前記変速段の決定等に使用し、降坂路走行時にエンジンブレーキを有効に発揮させたり、登坂路走行時の加速性能を向上する変速制御装置も知られている。
【０００３】
【発明が解決しようとする課題】
しかしながら、従来の技術においては、車両に加わる駆動力を用いて車両重量を推定する条件が十分に検討されていないため、車両重量の推定精度が良好でないという問題があった。
【０００４】
【発明の概要】
本発明は、上記課題に対処すべくなされたものであって、その特徴は、原動機の発生トルクを流体式トルクコンバータを介して駆動輪に伝達する車両の加速度を検出する加速度検出手段と、前記車両の駆動力を推定する駆動力推定手段と、前記検出された加速度と前記推定された駆動力とに基づいて前記車両の重量を推定する車両重量推定手段とを備えた車両重量推定装置において、前記車両が降坂路を走行しているか否かを判定する降坂路走行判定手段と、前記車両が降坂路を走行していると判定された場合に前記車両重量推定手段による車両重量の推定を無効とする推定無効手段とを備えたことにある。
【０００５】
上記車両重量推定装置は、加速度検出手段により車両の加速度を検出するとともに、駆動力推定手段により車両の駆動力を推定し、車両重量推定手段により前記検出された加速度と前記推定された駆動力とに基づいて車両の重量を推定する。また、降坂路走行判定手段により車両が降坂路を走行していると判定された場合には、推定無効手段が前記車両重量推定手段による車両重量の推定を無効とする。
【０００６】
降坂路走行時においては、車両の駆動力が小さく、十分な精度をもって同駆動力を推定することが困難であるから、降坂路走行時に推定された車両重量は精度が良好でない場合がある。そこで、降坂路走行時に推定される車両重量を無効とすることで、車両重量の推定精度を向上することができる。なお、推定される車両重量を無効とすることは、車両重量の推定自体を停止すること、または車両重量の推定を行うがその結果を最終的な車両重量としては採用しないことの何れであってもよい。
【０００７】
この場合において、前記降坂路走行判定手段は、前記原動機に対して同原動機の発生トルクを増大させる指示がなされた時点と、前記車両の速度が所定速度よりも大きくなる時点との関係に基づいて前記車両が降坂路を走行しているか否かを判定するように構成されることが好適である。
【０００８】
平坦路及び登坂路の発進時においては、原動機の発生トルクを増大させる指示（例えば、エンジンのスロットル開度を増大させること）があった後に車速が所定速度に到達する。他方、降坂路の発進時においては、原動機の発生トルクを増大させる指示がなされる前に車速が所定速度に到達する。従って、上記のように構成することで、車両が降坂路を走行しているか否かを容易に判定することができる。
【０００９】
【発明の実施の形態】
以下、本発明による車両重量推定装置の一実施形態について図面を参照しつつ説明する。図１は、この車両重量推定装置を含む変速制御装置を車両に搭載した例を概略的に示している。この車両は、原動機としてのエンジン１０と、ロックアップクラッチ付流体式トルクコンバータ２０と、２乃至３組の遊星歯車ユニットなどから構成された有段（ここでは、前進４段、後進１段）の自動変速機３０と、トルクコンバータ２０及び自動変速機３０に供給される油圧を制御するための油圧制御回路４０と、油圧制御回路４０に制御指示信号を与える電気制御装置５０とを含んでいて、図示しないアクセルペダルの操作により増減されるエンジン１０の発生トルクを、ロックアップ付トルクコンバータ２０、自動変速機３０、及び図示しない差動歯車装置（ディファレンシャルギヤ）などを介して駆動輪へ伝達するようになっている。
【００１０】
ロックアップ付トルクコンバータ２０は、エンジン１０が発生する動力を流体（作動油）を介して自動変速機３０に伝達する流体式伝達機構２１と、この流体式伝達機構２１に対して並列に連結されたロックアップクラッチ機構２２とからなっている。流体式伝達機構２１は、図示を省略したエンジン１０のクランク軸と一体的に回転するトルクコンバータ入力軸１２に連結されたポンプ羽根車２１ａと、同ポンプ羽根車２１ａが発生する作動油の流れにより回転されるとともに自動変速機３０の入力軸３１に連結されたタービン羽根車２１ｂと、図示を省略したステータ羽根車とを含んでいる。ロックアップクラッチ機構２２は、ロックアップクラッチを含んで構成されていて、接続された油圧制御回路４０による作動油の給排により、トルクコンバータ入力軸１２と自動変速機３０の入力軸３１とを同ロックアップクラッチにより機械的に結合してこれらを一体的に回転させる係合状態と、前記ロックアップクラッチによる機械的な結合を解除してエンジン１０の発生トルクを自動変速機３０に伝達しない非係合状態とを達成し得るようになっている。
【００１１】
自動変速機３０は、前記入力軸３１と、図示を省略した車両の駆動輪に差動歯車装置などを介して連結された出力軸３２とを備えていて、接続された油圧制御回路４０による作動油の給排により作動される複数の油圧式摩擦係合装置の組合わせに応じ、複数の前進変速段（前進ギヤ段）および後進ギヤ段のうちの１つを選択的に成立させ、選択されたギヤ段を介して入力軸３１と出力軸３２とを一体的に回転させる周知の有段式遊星歯車装置として構成されている。この自動変速機３０は、１速及び２速を除く変速段（３速，４速）において駆動輪側からエンジン１０を駆動する逆駆動状態（エンジンブレーキ状態）が達成されるようになっている。一方、１速及び２速においては、図示しないワンウエイクラッチの作動により前記逆駆動状態が達成されない状態と、図示しない摩擦係合部材を係合させて前記ワンウエイクラッチの機能を非作動とすることで前記逆駆動状態が達成される状態とに制御され得るようになっている。
【００１２】
油圧制御回路４０は、電気制御装置５０からの信号によりＯＮ−ＯＦＦ駆動される複数の電磁弁（図示省略）を含んでいて、前記電磁弁の作動の組み合わせに基づいてロックアップクラッチ機構２２及び自動変速機３０に対する作動油の給排を行うようになっている。
【００１３】
電気制御装置５０は、何れも図示を省略したＣＰＵ、メモリ（ＲＯＭ，ＲＡＭ）、及びインタフェースなどから成るマイクロコンピュータであって、スロットル開度センサ６１、エンジン回転速度センサ６２、タービン回転速度センサ６３、出力軸回転速度センサ６４、及びブレーキスイッチ６５と接続されていて、これらのセンサ及びスイッチが発生する信号を入力するようになっている。
【００１４】
スロットル開度センサ６１は、エンジン１０の吸気通路に設けられ図示しないアクセルペダルの操作に応じて開閉されるスロットルバルブ１１の開度を検出し、同スロットル開度ｔｈを表す信号を発生するようになっている。エンジン回転速度センサ６２は、エンジン１０の回転速度を検出し、同エンジン回転速度ｎｅを表す信号を発生するようになっている。タービン回転速度センサ６３は、自動変速機の入力軸３１の回転速度を検出し、同タービン回転速度ｎｔを表す信号を発生するようになっている。出力軸回転速度センサ６４は、自動変速機の出力軸３２の回転速度を検出し、同出力軸回転速度（即ち、車速に比例する値）ｎоを表す信号を発生するようになっている。ブレーキスイッチ６５は、サービスブレーキ用のブレーキペダル７０の操作・非操作に応じて、ハイレベル（「１」）信号及びローレベル信号（「０」）にそれぞれ変化するブレーキ作動信号stopを出力するようになっている。
【００１５】
次に、上記自動変速機の変速制御について説明する。電気制御装置５０は、出力軸回転速度（車速）ｎоとスロットル開度ｔｈとで構成される図２（Ａ）に示した変速マップをメモリ内に記憶しており、検出された出力軸回転速度（車速）ｎоと検出されたスロットル開度ｔｈにより定まる点が同変速マップに示された変速線を横切るとき、同変速線に従う変速を行うように油圧制御回路４０の電磁バルブを制御する。
【００１６】
同様に、電気制御装置５０は、出力軸回転速度ｎоとスロットル開度ｔｈとで構成される図３に示したロックアップクラッチ作動マップをメモリ内に記憶しており、検出された出力軸回転速度ｎоと検出されたスロットル開度ｔｈとが前記ロックアップクラッチ作動マップのロックアップ領域にあるとき、油圧制御回路４０の電磁バルブを制御してロックアップクラッチ機構２２を係合状態とする。
【００１７】
更に、電気制御装置５０は、搭乗人数や荷物の実積載量に応じて変化する車両重量ｍを推定していて、同車両重量ｍが所定値ｍ０以上のとき、上記変速マップを図２（Ａ）に示したものから図２（Ｂ）に示したものに切換えて達成される低速段領域を拡大するとともに、１速及び２速におけるワンウエイクラッチを非作動としてエンジンブレーキ効果を発揮させる。なお、この変速制御は、電気制御装置５０のマイクロコンピュータが変速制御プログラムを実行することにより達成される。
【００１８】
次に、上記のように構成された電気制御装置５０が実行する車両重量ｍの推定原理について説明する。車両の運動方程式は、車両質量をｍ、加速度をdv、車両に働く力のうち道路勾配による力を除いた力をＦ（以下、実質駆動力Ｆと云う。
）、道路勾配をΘ、重力加速度をｇとすれば、数１に示した通りとなる。
【００１９】
【数１】
ｍ・dv＝Ｆ−ｍ・ｇ・sinΘ
【００２０】
上記数１の左辺における車両の加速度dvは、車速の微分値であるあから、車速に対応する出力軸回転速度ｎоを微分（時間微分）することで算出され得る。なお、車両の加速度dvは、車両に搭載された加速度センサの出力から求めることもできる。
【００２１】
上記数１の右辺における実質駆動力Ｆは、エンジン１０の発生するトルクに基いてトルクコンバータ２０を介して得られる駆動力Ｆ０から走行抵抗ＲＬを差し引くことで求められる。
【００２２】
上記車両の駆動力Ｆ０は、ロックアップクラッチが係合状態にある場合、エンジン１０のスロットル開度ｔｈ（又は、アクセル操作量、吸入空気量等で表されるエンジン負荷）とエンジン回転速度ｎｅとからエンジン１０の出力トルクT0を推定し、この出力トルクT0に自動変速機３０が達成している変速段のギヤ比k1、同変速段のギヤ効率k2、及び及び差動歯車機構のギヤ効率k3などの定数を乗じることで求めることができる。この場合、エンジン１０が静的状態（定常状態）で運転されていれば、スロットル開度ｔｈとエンジン回転速度ｎｅとから同エンジン１０の出力トルクT0をある程度の精度をもって求めることができる。しかしながら、車両の発進時においてエンジン１０は過渡的状態で運転されることが殆どであるから、エンジン１０の出力トルクT0を精度良く求めることは一般に困難である。
【００２３】
一方、ロックアップクラッチが非係合状態にある場合、即ち、流体式伝達機構２１にてトルク伝達を行っている場合、エンジン１０の出力トルクT0に応じたトルクコンバータの出力トルクＴは下記数２に基づき求めることができる。下記数２は過渡的な運転状態にあっても成立するので、同数２を用いることによりエンジン１０の運転時におけるトルクコンバータ２０の出力トルクＴを精度良く求めることができる。なお、下記数２において、λは流体式伝達機構２１のトルク増幅率であり、Ｃｐは同流体式伝達機構２１の容量係数である。
【００２４】
【数２】
Ｔ＝λ・Ｃｐ・ｎｅ2
【００２５】
従って、上記駆動力Ｆ０は、下記数３により求めることができる。この数３において、定数ｋは、自動変速機３０が達成している変速段のギヤ比k1、同変速段のギヤ効率k2、及び差動歯車機構のギヤ効率k3、及び補正係数k4の積である。
【００２６】
【数３】
Ｆ０＝ｋ・λ・Ｃｐ・ｎｅ2
【００２７】
一方、上記走行抵抗ＲＬは、ころがり抵抗などの摩擦抵抗Ｒ１と空気抵抗Ｒ２の和である。ころがり抵抗などの摩擦抵抗Ｒ１は車両に固有の一定値であるから、予め測定により求めておくことができる。空気抵抗Ｒ２は、車速の２乗に略比例して変化する値であるが、ある車両について車速と空気抵抗Ｒ２との関係を予め測定により求めておくとともに実際の車速を検出するように構成すれば、実際の空気抵抗Ｒ２を求めることができる。以上から、車速（本例では、出力軸回転速度ｎо）を検出することにより、走行抵抗ＲＬ（＝Ｒ１＋Ｒ２）を求めることができる。従って、実質駆動力Ｆは、下記数４により求めることができる。
【００２８】
【数４】
Ｆ＝ｋ・λ・Ｃｐ・ｎｅ2−ＲＬ
【００２９】
ところで、上記数１によれば、車両重量ｍは道路勾配Θを求めなければ求めることができない。一方、上記数１は異なる時刻t1，t2においても成立するから、下記数５及び数６を得ることができる。ここでF(t1)、dv(t1)、及びΘ（t1）は、ぞれぞれ第１の時点の時刻t1における実質駆動力Ｆ、加速度dv、道路勾配Θであり、F(t2)、dv(t2)、及びΘ(t2)は、ぞれぞれ第２の時点の時刻t2における実質駆動力Ｆ、加速度dv、道路勾配Θである。
【００３０】
【数５】
ｍ・dv(t1)＝F(t1)−ｍ・ｇ・sinΘ(t1)
【００３１】
【数６】
ｍ・dv(t2)＝F(t2)−ｍ・ｇ・sinΘ(t2)
【００３２】
また、一般に時刻t1と時刻t2との時間差が小さければ、道路勾配Θ(t1)と道路勾配Θ(t2)は等しいと仮定することができる。この仮定と上記数５及び数６とから下記数７が得られる。
【００３３】
【数７】
ｍ＝（F(t2)−F(t1)）／（dv(t2)-dv(t1)）
【００３４】
更に、本装置においては、後述するようにマイクロコンピュータにより、所定時間ｔｓの経過毎に実質駆動力F(t)及び加速度dv(t)を求めるとともに、連続するｎ個（本例においては、ｎ＝１０個）の実質駆動力F(t)及び加速度dv(t)の平均値（実際には平均値に対応した積分値）を求めることで、実質駆動力F(t)及び加速度dv(t)の精度を向上するようになっている。即ち、実質駆動力F(t1)、加速度dv(t1)、実質駆動力F(t2)、及び加速度dv(t2)は、下記数８〜数１１により求められる。
【００３５】
【数８】
F(t1)＝｛F(t1)+ F(t1-ts)+F(t1-2・ts)+…+F(t1-8・ts)+F(t1-9・ts)｝/10
【００３６】
【数９】
dv(t1)＝｛dv(t1)+dv(t1-ts)+dv(t1-2・ts)+…+dv(t1-8・ts)+dv(t1-9・ts)｝/10
【００３７】
【数１０】
F(t2)＝｛F(t2)+ F(t2-ts)+F(t2-2・ts)+…+F(t2-8・ts)+F(t2-9・ts)｝/10
【００３８】
【数１１】
dv(t2)＝｛dv(t2)+dv(t2-ts)+dv(t2-2・ts)+…+dv(t2-8・ts)+dv(t2-9・ts)｝/10
【００３９】
次に、電気制御装置５０が上記原理に基づいて行う車両重量ｍの推定に係る実際の作動について、図４〜図８を参照しながら説明する。なお、図４〜図６及び図８は、電気制御装置５０のマイクロコンピュータが実行するプログラムを機能ブロック図で表したものであり、これらのプログラムはＲＯＭ内に記憶されている。また、図４〜図６及び図８において、ｎｅ，ｎｔ，ｎо，ｔｈ，及びstopは、上述の各センサ及びスイッチ６１〜６５により得られる変数であり、siftは上述の変速制御プログラムの実行によりマイクロコンピュータが認識している自動変速機３０の実際の変速指令値である。
【００４０】
マイクロコンピュータは、図４に示したように、上記数４に基づいて実質駆動力Ｆを推定するための駆動力推定プログラム１００と、上記数７〜数１１に基づいて車両重量ｍを推定する二点差分による車両重量推定プログラム２００と、降坂路判定プログラム（降坂路判定手段）３００とを実行するようになっている。また、マイクロコンピュータは、ゲート（推定無効手段）４００の機能を実行することにより、降坂路判定プログラム３００の判定結果に基づき、二点差分による車両重量推定プログラム２００の実行により推定した車両重量ｍを降坂路走行時には無効とし、平坦路走行時又は登坂路走行時において推定された推定車両重量ｍのみを正規の車両重量ｍとして上記変速制御プログラムに出力するようになっている。以下、各プログラムについて順に説明する。
【００４１】
（駆動力推定プログラム）
マイクロコンピュータは図５に詳細に示した上記駆動力推定プログラム１００を所定時間ｔｓ（ここでは、２０msec）の経過毎に実行し、駆動力Ｆを推定するようになっている。具体的に述べると、マイクロコンピュータはブロック１１０にてエンジン回転速度ｎｅの逆数１／ｎｅを求め、ブロック１２０にてタービン回転速度ｎｔとの積を求めることにより速度比ｅ（＝ｎｔ／ｎｅ）を求める。
【００４２】
次いで、マイクロコンピュータはブロック１３０にて、速度比ｅと積値λ・Ｃｐとの関係を示すマップ（ルックアップテーブル、以下「λ・Ｃｐマップ」と云う。）と上記ブロック１２０により求めた実際の速度比ｅとから実際の積値λ・Ｃｐ（ｅ）を算出する。上記ブロック１３０にて用いるλ・Ｃｐマップは、予め実験に基づいて作成され、電気制御装置５０のＲＯＭに記憶されている。なお、このλ・Ｃｐマップは、自動変速機３０の変速段を１速に固定しておき、積載量を変更することにより車両重量を種々の値に変化させた車両を平坦路及び登坂路（即ち、降坂路を除く）にて走行させ、実際の速度比ｅに対する実際のλ・Ｃｐを測定することで作成する。実際の積値λ・Ｃｐは、エンジン１０の実際の出力トルクT0（トルクセンサにより計測）及び実際のエンジン回転速度ｎｅ（エンジン回転速度センサから計測）と、上記数２とに基づいて求める。
【００４３】
次に、マイクロコンピュータはブロック１４０にて上記ブロック１３０にて求めた積値λ・Ｃｐとエンジン回転速度ｎｅの２乗ｎｅ2との積(λ・Ｃｐ・ｎｅ2)を求め、上記数３にしたがってブロック１５０にて前記積値(λ・Ｃｐ・ｎｅ2)を定数ｋ´倍して上記駆動力Ｆ０を求める。この定数ｋ´は、１速のギヤ比ｋ１´と、同１速のギヤ効率ｋ２´と、上記差動歯車装置のギヤ効率ｋ３の積に、所定の定数ｋ４´を乗じた値である。
【００４４】
一方、マイクロコンピュータはブロック１６０にて、自動変速機３０の出力軸回転速度ｎｏと走行抵抗ＲＬとの関係を記憶したマップ（ルックアップテーブル、以下「走行抵抗マップ」と云う。）と、実際の出力軸回転速度ｎｏとから実際の走行抵抗ＲＬを求める。なお、上記走行抵抗マップも、予め実験に基づいて作成され、電気制御装置５０のＲＯＭに記憶されている。そして、マイクロコンピュータは、上記数４に従い、ブロック１７０にて上記駆動力Ｆ０(＝ｋ´・λ・Ｃｐ・ｎｅ2)から上記走行抵抗ＲＬを減じ、これにより推定駆動力Ｆ（推定された実質駆動力Ｆ）を求め、以下に説明する二点差分による車両重量推定プログラム２００において使用する。
【００４５】
（二点差分による車両重量推定プログラム）
マイクロコンピュータは図６に詳細に示した上記二点差分による車両重量推定プログラム２００を上記所定時間ｔｓの経過毎に実行し、車両重量ｍを推定するようになっている。具体的に述べると、マイクロコンピュータはブロック２０５にて出力軸回転速度ｎｏが所定車速spd0（例えば、０．１ｋｍ／ｈ）に相当する値より大きいか否かを判定し、出力軸回転速度ｎｏが所定車速spd0より大きい場合には値「１」を、小さい場合には値「０」を出力する。同時にマイクロコンピュータはブロック２１０にてスロットル開度ｔｈが所定スロットル開度th0（例えば、１％）より大きいか否かを判定し、スロットル開度ｔｈが所定スロットル開度th0より大きい場合には値「１」を、小さい場合には値「０」を出力する。
【００４６】
次いで、マイクロコンピュータはブロック２１５にて上記ブロック２０５と上記ブロック２１０の出力の論理積を求める。具体的には、出力軸回転速度ｎｏが所定車速spd0より大きく、且つ、スロットル開度ｔｈが所定スロットル開度th0より大きいか否かを判定し、「Ｙｅｓ」と判定される場合、即ち、車両が発進状態にあると判定した場合にのみ値「１」をブロック２２０に出力する。即ち、上記ブロック２０５，２１０，２１５は、車両が発進したか否かを検出する発進検出手段を構成している。次いで、マイクロコンピュータは、ブロック２２０にて前記ブロック２１５の出力を論理反転し、ブロック２２５に出力する。この結果、ブロック２２５の入力信号は、車両の発進が検出されるまでは値「１」であり、同発進が検出されたときに値「１」から値「０」へと変化する。
【００４７】
マイクロコンピュータは、続くブロック２２５にて同ブロック２２５の入力信号を第１所定時間（例えば、５００msec）遅延し、同遅延した信号を第１駆動力積分ブロック２３０の積分許可信号（イネーブル信号）、及び第１加速度積分ブロック２４０の積分許可信号（イネーブル信号）として出力する。
【００４８】
一方、マイクロコンピュータは、第１駆動力積分ブロック２３０にて、上記駆動力推定プログラム１００の実行により所定時間ｔｓの経過毎に更新される推定駆動力Ｆの値の過去１０個分の合計を求める。即ち、F1(-n)をｎ回前の駆動力推定プログラム１００の実行により求められた推定駆動力F1とすると、第１駆動力積分ブロック２３０により求められる積分値ΣF1は、下記数１２にて与えられる。
【００４９】
【数１２】
ΣF1＝F1(0)＋F1(-1)＋F1(-2)＋・・・＋F1(-8)＋F1(-9)
【００５０】
この第１駆動力積分ブロック２３０は、前記遅延ブロック２２５から与えられる積分許可信号が値「１」であるときのみ上記数１２の演算を行い、同積分許可信号が値「１」から値「０」に変化した時点でそのときの積分値ΣF1を保持する。この結果、第１駆動力積分ブロック２３０は、車両発進後約３２０msecから５００msec内において算出された推定駆動力Ｆの積分値（総和）ΣF1を出力することになる。この期間は図７における時刻t1´〜t1に相当している。
【００５１】
また、マイクロコンピュータは、ブロック２３５にて前記所定時間ｔｓの経過毎に現在の出力軸回転速度ｎоと同所定時間ｔｓ前の出力軸回転速度ｎоoldとの差分を求めることにより、同出力軸回転速度ｎоの時間微分値を求め、これに定数を乗じることで車両の加速度dvを演算する。また、マイクロコンピュータは第１加速度積分ブロック２４０にて、前記所定時間ｔｓの経過毎に更新される加速度dvの値の過去１０個分の合計を求める。即ち、dv１(-n)をｎ・ｔｓ前に演算された加速度dvとすると、第１加速度積分ブロック２４０により求められる積分値Σdv１は、下記数１３にて与えられる。
【００５２】
【数１３】
Σdv１＝dv１(0)＋dv１(-1)＋dv１(-2)＋・・・＋dv１(-8)＋dv１(-9)
【００５３】
この第１加速度積分ブロック２４０は、上記第１駆動力積分ブロック２３０と同様に、前記遅延ブロック２２５から与えられる積分許可信号が値「１」であるときのみ上記数１３の演算を行い、同積分許可信号が値「１」から値「０」に変化した時点でそのときの積分値Σdv１を保持する。この結果、第１加速度積分ブロック２４０は、車両発進後約３２０msec（時刻t1´）から５００msec（時刻t1）内において算出された加速度dvの積分値Σdv１を出力する。
【００５４】
このように、車両が発進されると、マイクロコンピュータは、図７に示した時刻t1´〜t1間（第１の時点である時刻t1を含む第１所定期間）の推定駆動力Ｆ及び加速度dvの総和を求め（即ち、積分して）、第１駆動力積分値ΣF1及び第１加速度積分値Σdv１を求める。
【００５５】
同時に、マイクロコンピュータはブロック２５０にて自動変速機３０の変速段が１速であるか否かを判定していて、変速段が１速であるときブロック２５０から値「１」を、１速でないとき値「０」を出力する。また、マイクロコンピュータはブロック２５５にて現在の推定駆動力Ｆと上記所定時間ｔｓ前の推定駆動力Ｆoldとの差を求めることにより、推定駆動力Ｆの時間微分値(dF/dt)を求め、続くブロック２６０にて同推定駆動力Ｆの時間微分値(dF/dt)が０より大きいか否かを判定し、同時間微分値(dF/dt)が０より大きい場合に同ブロック２６０から値「１」を、０より小さい場合に値「０」を出力する。このブロック２６０は、図示を省略したが、上記ブロック２１５と接続されていて、同ブロック２１５の出力に基づいて、発進後において１回のみ値「１」から値「０」への変化が許容されるようになっている。即ち、ブロック２６０は、車両の発進後において推定駆動力が最初に最大値となったことを検出する最大値発生検出手段を構成している。
【００５６】
そして、マイクロコンピュータは、ブロック２６５にて前記ブロック２５０と前記ブロック２６０の出力の論理積を求める。車両発進直後においては、車両の変速段は１速であり、且つ通常は実際の車両の駆動力も時間経過とともに増大するから、前記ブロック２５０と前記ブロック２６０の出力はともに値「１」である。従って、マイクロコンピュータはブロック２６５から値「１」を出力する。
【００５７】
その後、アクセルペダルの踏込みが戻される等の理由によりエンジン１０の発生トルクが減少すると、推定駆動力Ｆの時間微分値(dF/dt)は０より小さくなる（負となる）。従って、ブロック２６０から出力される値は値「１」から値「０」へと変化し、これによりブロック２６５から出力される値も値「１」から値「０」へと変化する。即ち、ブロック２６５の出力は、推定駆動力Ｆが発進後において初めて最大値となったときに、値「１」から「０」へと変化する。
【００５８】
一方、マイクロコンピュータは、第２駆動力積分ブロック２７０にて、上記第１駆動力積分ブロック２３０と同様に、前記所定時間ｔｓの経過毎に更新される推定駆動力Ｆの値の過去１０個分の合計を求める。即ち、F2(-n)をｎ回前の駆動力推定プログラム１００の実行により求められた推定駆動力F2とすると、第２駆動力積分ブロック２７０により求められる積分値ΣF2は、下記数１４にて与えられる。
【００５９】
【数１４】
ΣF2＝F2(0)＋F2(-1)＋F2(-2)＋・・・＋F2(-8)＋F2(-9)
【００６０】
この第２駆動力積分ブロック２７０は、前記ブロック２６５から与えられる積分許可信号が値「１」であるときのみ上記数１４の演算を行い、同積分許可信号が値「１」から値「０」に変化した時点でそのときの積分値ΣF2を保持する。前述したように、ブロック２６５の出力は、推定駆動力Ｆが発進後において初めて最大値となったときに、値「１」から「０」へと変化する。この結果、第２駆動力積分ブロック２７０は、推定駆動力Ｆが最大値となった図７に示す時刻t2から約１８０msec前の時刻t2´までの期間において算出された推定駆動力Ｆの積分値（総和）ΣF2を出力することになる。
【００６１】
また、マイクロコンピュータは、第２加速度積分ブロック２７５にて、前記所定時間ｔｓの経過毎に更新される加速度dvの値の過去１０個分の合計を求める。即ち、dv2(-n)をｎ・ｔｓ前に演算された加速度dvとすると、第２加速度積分ブロック２７５により求められる積分値Σdv２は、下記数１５にて与えられる。
【００６２】
【数１５】
Σdv２＝dv２(0)＋dv２(-1)＋dv２(-2)＋・・・＋dv２(-8)＋dv２(-9)
【００６３】
この第２加速度積分ブロック２７５は、上記第２駆動力積分ブロック２７０と同様に、前記ブロック２６５から与えられる積分許可信号が値「１」であるときのみ上記数１５の演算を行い、同積分許可信号が値「１」から値「０」に変化した時点でそのときの積分値Σdv２を保持する。この結果、第２加速度積分ブロック２７５は、上記の時刻t2´〜t2までにおいて算出された加速度の積分値（総和）Σdv２を出力する。
【００６４】
このように、車両の発進後において推定駆動力Ｆが最大値となると、マイクロコンピュータは、図７に示した時刻t2´〜t2間（第２の時点である時刻t2を含む第２所定期間）の推定駆動力Ｆ及び加速度dvを積分して、それぞれ第２駆動力積分値ΣF2び第２加速度積分値Σdv２を求める。
【００６５】
マイクロコンピュータは、ブロック２８０にて、上記ブロック２７０によって演算された第２駆動力積分値ΣF2から上記ブロック２３０によって演算された第１駆動力積分値ΣF1を減算し、その結果（ΣF2−ΣF1）をブロック２９０に出力する。同様に、マイクロコンピュータは、ブロック２８５にて、上記ブロック２７５によって演算された第２加速度積分値Σdv２から上記ブロック２４０によって演算された第１加速度積分値Σdv１を減算し、その結果（Σdv２−Σdv１）をブロック２９０に出力する。
【００６６】
上記ブロック２９０は、上記ブロック２６５から入力されてくる信号が値「１」から値「０」へと変化したとき、即ち、発進後において推定駆動力Ｆが最大値となったとき、上記ブロック２８０により求められた差（ΣF2−ΣF1）を上記ブロック２８５により求められた差（Σdv２−Σdv１）で除した結果を出力する。この結果、上記数７、上記数８〜数１１、及び上記数１２〜数１５により明らかなように、車両重量推定値ｍが求められ、ブロック２９０から出力される。
【００６７】
なお、車両の発進後において、ブロック２６０にて推定駆動力Ｆの最大値が検出される前に自動変速機３０の変速が発生し、変速段が１速でなくなった場合には、その時点でブロック２５０、従ってブロック２６５の出力が値「１」から値「０」へと変化するから、この変化が生じた時点から約１８０msec前までの間の推定駆動力Ｆと加速度dvがブロック２７０及びブロック２７５にてそれぞれ積分され、上記と同様にして車両重量ｍが推定される。
【００６８】
（降坂路判定プログラム）
更に、マイクロコンピュータは図８に詳細に示した上記降坂路判定プログラム３００を上記所定時間ｔｓの経過毎に実行している。具体的に説明すると、マイクロコンピュータはブロック３１０にてタービン回転速度ｎｔが所定値（２５０rpm）より大きいか否かを判定し、大きい場合に値「１」を、小さい場合には値「０」を出力する。同時に、マイクロコンピュータはブロック３２０にてスロットル開度ｔｈが「０」より大きいか否かを判定し、「０」より大きい場合には値「１」を、小さい場合には値「０」を出力する。
【００６９】
次いで、マイクロコンピュータは、ブロック３３０にてこれらのブロック３１０，３２０の出力の排他的論理和（２入力のうち、何れかの入力値が「１」で他が「０」の場合に出力が「１」となり、その他の場合には出力が「０」となる）を求め、ブロック３４０に出力する。
【００７０】
車両が平坦路又は登坂路において発進する場合には、スロットル開度ｔｈが増大してブロック３２０の出力が値「１」となった後に、タービン回転速度ｎｔ（出力軸回転速度ｎо（車速）に応じた値）が増大してブロック３１０の出力が値「１」に変化する。従って、ブロック３３０はスロットル開度ｔｈが「０」より大きくなったときから車速がタービン回転速度２５０rpmに相当する値に増大するまで値「１」を出力することになる。他方、車両が降坂路において発進する場合には、スロットル開度ｔｈが０より大きくなる前に車速がタービン回転速度２５０rpmに相当する値より大きくなる。従って、この場合、ブロック３３０は、車速がタービン回転速度２５０rpmに相当する値に増大してから、スロットル開度ｔｈが「０」より大きくなるまで値「１」を出力する。
【００７１】
また、マイクロコンピュータはブロック３５０にて、上記ブロック３２０の出力から上記ブロック３１０の出力を減じ、その結果をブロック３４０に出力する。従って、ブロック３５０の出力は、スロットル開度ｔｈの立上り（エンジン１０のスロットル開度ｔｈの増大）がタービン回転速度ｎｔ（車速に応じた値）の立上りに先行して行われる場合（登坂路、平坦路走行時）には「＋１」となり、タービン回転速度の立上りｎｔがスロットル開度ｔｈの立上りに先行して行われる場合は「−１」となり（降坂路走行時）、タービン回転速度ｎｔの立上りとスロットル開度ｔｈの立上りとが同時に行われる場合は「０」となる。このように、本実施形態は、エンジン１０のスロットル開度ｔｈの増大がなされた時点と、車速に応じた値が所定値（タービン回転速度２５０rpmに相当する値）より大きくなる時点との関係に基いて車両が降坂路を走行しているか否かを判定している。
【００７２】
同時に、マイクロコンピュータはブロック３６０にて出力軸回転速度ｎоが「０」より大きいか否かを判定し、出力軸回転速度ｎｏが「０」より大きい場合には値「１」を、小さい場合には値「０」をブロック３４０に出力する。また、マイクロコンピュータはブロック３７０にてブレーキ作動信号stopの値が「０」か否かを判定し、同ブレーキ作動信号stopの値が「０」の場合（即ち、ブレーキペダル７０が操作されていない場合）に値「１」を、同ブレーキ作動信号stopの値が「１」の場合に値「０」をブロック３４０に出力する。
【００７３】
マイクロコンピュータは、ブロック３４０にて、上記ブロック３３０、３６０及びブロック３７０の出力が総て値「１」の場合にのみ、上記ブロック３５０の出力をブロック３８０に出力する。この結果、ブロック３４０の出力は、車両が平坦路又は登坂路にある場合には、ブレーキペダル７０が非操作状態（ブロック３７０参照）で、車速が「０」より大きく（ブロック３６０参照）、スロットル開度ｔｈが「０」より大きくなったときから車速がタービン回転速度２５０rpmに相当する値に増大するまで（ブロック３１０〜３３０参照）値「１」となる。他方、ブロック３４０の出力は、車両が降坂路にある場合には、ブレーキペダル７０が非操作状態（ブロック３７０参照）で、車速が「０」より大きく（ブロック３６０参照）、車速がタービン回転速度２５０rpmに相当する値より大きくなったときからスロットル開度ｔｈが「０」より大きくなるまで（ブロック３１０〜３３０参照）値「−１」となる。また、ブロック３４０の出力は、上記以外の場合に、値「０」となる。
【００７４】
そして、マイクロコンピュータは、ブロック３８０にて上記ブロック３４０の出力を積分する。従って、車両が平坦路又は登坂路にて発進した場合には、同ブロック３８０の出力値Σは「０」より大きい値となり、車両が降坂路にて発進した場合には「０」より小さくなる。次いで、マイクロコンピュータはブロック３９０にて、上記ブロックの出力値Σが「０」より大きいか否かを判定し、出力値Σが「０」より大きいとき許可信号ｆαを値「１」として出力し、出力値Σが「０」以下のとき許可信号ｆαを値「０」として出力する。
【００７５】
このブロック３９０の出力、即ち許可信号ｆαは図４に示したゲート４００に入力される。ゲート４００は、上記二点差分による車両重量推定プログラム２００の実行により推定した車両重量ｍを、前記許可信号ｆαの値が「１」のとき有効として出力し、同許可信号ｆαの値が「０」のとき無効として出力しない。この結果、平坦路走行時又は登坂路走行時において推定された推定車両重量ｍのみが正規の車両重量ｍとして上述の変速制御プログラムにおいて使用されることになる。
【００７６】
以上、説明したように、本実施形態においては、車両重量ｍを推定するために必要な駆動力Ｆ０を、λＣｐマップから求めることとした。これにより、車両の駆動力Ｆ０を、速度比ｅに対するトルク増幅率λ及び容量係数Ｃｐを個別にマップ化して記憶し、これらのマップから個々に得られるトルク増幅率λ及び容量係数Ｃｐの積値から求める場合に比べて、一層精度良く、しかもメモリの容量を増大することなく推定することができ、その結果、車両重量ｍの推定精度が向上する。更に、λＣｐマップは、車両重量ｍの推定精度が低下する降坂路走行時を除いたデータにより作成されるとともに、降坂路判定プログラム３００及びゲート４００により、降坂路走行時に推定された車両重量ｍは無効としているので、この点においても車両重量ｍの推定精度が向上する。降坂路走行時は車両重量ｍの推定に使用する駆動力Ｆ０が小さく、同駆動力Ｆ０の精度が良くないからである。
【００７７】
また、本実施形態においては、車両発進直後の所定期間（図７に示した時刻t1´〜t1間）に求められた推定駆動力Ｆ及び加速度dvの平均値（実際の計算上は積分値に相当する総和）と、車両発進後に初めて車両の推定駆動力Ｆが最大値となった時点から過去に遡る所定期間（図７に示した時刻t2´〜t2）に求められた推定駆動力Ｆ及び加速度dvの平均値（実際の計算上は積分値に相当する総和）とに基づいて、車両重量ｍを推定しているから、同推定駆動力Ｆ及び同加速度dvの精度を高めることができ、その結果、車両重量ｍの推定精度が向上する。特に、出力軸回転速度ｎоには、車両の駆動力伝達系に生じる捩り振動に基づくサスペンション、プロペラシャフト、エンジン１０等に発生する固有振動が重畳するから、出力軸回転速度ｎоを時間微分することで加速度dvを求める上記実施形態においては、加速度dv（即ち、車両重量ｍ）の推定精度を大きく向上することができる。
【００７８】
以上，本発明の一実施形態に基づいて本発明を説明したが、本発明は同実施形態に限定されることはなく、本発明の範囲内において種々の変形例を採用することができる。例えば、上記実施形態においては、数９（数１３）と数１１（数１５）とに基づいて、出力軸回転速度ｎоを微分した加速度dvの積分値Σdv１，Σdv２を求めるようにしていたが、これらは、下記数１６、数１７に示したように、時刻t1´,t1,t2´,t2における車速（出力軸回転速度ｎо）であるv(t1´),v(t1),v(t2´),v(t2)から求めるように構成することもできる。
【００７９】
【数１６】
0004583615.tif 000002
【００８０】
【数１７】
0004583615.tif 000003
【００８１】
これによれば、出力軸回転速度ｎоの微分値を計算する必要がないので、制御を簡素化することができる。
【図面の簡単な説明】
【図１】本発明による車両重量推定装置を含む変速制御装置を車両に搭載した場合のシステム構成図である。
【図２】（Ａ）及び（Ｂ）は、図１に示した電気制御装置が変速制御に使用する変速線図である。
【図３】図１に示した電気制御装置がロックアップ機構の制御に使用するマップである。
【図４】図１に示した電気制御装置のマイクロコンピュータが実行するプログラムを機能ブロックで表した図である。
【図５】図４に示した駆動力推定プログラムの詳細を機能ブロックで表した図である。
【図６】図４に示した二点差分による車両重量推定プログラムの詳細を機能ブロックで表した図である。
【図７】車両発進後における推定駆動力とスロットル開度の変化を示すタイムチャートである。
【図８】図４に示した降坂路判定プログラムの詳細を機能ブロックで表した図である。
【符号の説明】
１０…エンジン、１１…スロットルバルブ、１２…トルクコンバータ入力軸、２０…トルクコンバータ、２１…流体式伝達機構、２１ａ…ポンプ羽根車、２１ｂ…タービン羽根車、２２…ロックアップクラッチ機構、３０…自動変速機、３１…入力軸、３２…出力軸、４０…油圧制御回路、５０…電気制御装置、６１…スロットル開度センサ、６２…エンジン回転速度センサ、６３…タービン回転速度センサ、６４…出力軸回転速度センサ、６５…ブレーキスイッチ。
【図１】
0004583615.tif 000004
【図２】
0004583615.tif 000005
【図３】
0004583615.tif 000006
【図４】
0004583615.tif 000007
【図５】
0004583615.tif 000008
【図６】
0004583615.tif 000009
【図７】
0004583615.tif 000010
【図８】
0004583615.tif 000011