(57)【特許請求の範囲】
【請求項１】
エンジンと、前記エンジンをクランキング可能なモータと、前記モータに電力を供給可能なバッテリと、前記エンジンの排気系に取り付けられて空燃比に応じて出力値が変化する空燃比センサと、を備えるハイブリッド自動車の制御装置であって、
前記モータによる前記エンジンのクランキング時且つ燃料噴射が行なわれていないときにおける前記空燃比センサの出力値の傾きを用いて前記空燃比センサの応答性の学習を行なう、
ことを特徴とするハイブリッド自動車の制御装置。
【請求項２】
請求項１記載のハイブリッド自動車の制御装置であって、
前記エンジンのクランキング時における前記空燃比センサの出力値の傾きの最大値であるクランキング時最大傾き値を、前記エンジンのクランキング開始時における前記空燃比センサの出力値と大気圧とスロットル開度とのうち少なくとも一つを用いて正規化し、該正規化後のクランキング時最大傾き値を用いて前記空燃比センサの応答性の学習値を演算する、
ハイブリッド自動車の制御装置。
【請求項３】
請求項２記載のハイブリッド自動車の制御装置であって、
前記演算した正規化後のクランキング時最大傾き値に値０より大きく値１より小さな反映係数を乗じた値と、前回の前記空燃比センサの応答性の学習値に値１から反映係数を減じた値を乗じた値と、の和を前記空燃比センサの応答性の学習値として演算する、
ハイブリッド自動車の制御装置。
【請求項４】
請求項１ないし３のいずれか１つの請求項に記載のハイブリッド自動車の制御装置であって、
前記モータの出力が閾値未満に制限されているか前記エンジンのクランキング時の該エンジンの回転数の立ち上がりが閾値より遅いときには、前記空燃比センサの応答性の学習を行なわない、
ハイブリッド自動車の制御装置。
【請求項５】
請求項１ないし４のいずれか１つの請求項に記載のハイブリッド自動車の制御装置であって、
前記エンジンの始動後において、空燃比フィードバック制御を開始するタイミングを、前記空燃比センサの応答性が低いほど遅くなる傾向に設定する、
ハイブリッド自動車の制御装置。
【請求項６】
請求項１ないし５のいずれか１つの請求項に記載のハイブリッド自動車の制御装置であって、
空燃比フィードバック制御における積分項の制限値を、前記空燃比センサの応答性が低いほど小さくなる傾向に設定する、
ハイブリッド自動車の制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ハイブリッド自動車の制御装置に関する。
【背景技術】
【０００２】
従来、この種のハイブリッド自動車の制御装置としては、空燃比センサの出力値に基づいてエンジンの空燃比フィードバック制御を行なうものにおいて、エンジンの一時停止後の再始動から所定時間が経過したときにおける空燃比センサの出力値がリーン領域のときに、空燃比センサの応答遅れの異常を検出してエンジンの間欠運転を不許可とするものが提案されている（例えば、特許文献１参照）。このハイブリッド自動車では、こうした制御により、再始動時の排気エミッションの悪化を抑制している。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００８−１４３４８２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
上述のハイブリッド自動車の制御装置では、エンジンの再始動から所定時間が経過する前にエンジンの運転を停止する場合などには、空燃比センサに応答遅れの異常があるか否かを判定することができない。また、上述のハイブリッド自動車の制御装置では、空燃比センサの応答遅れの異常を検出するだけで、その応答性自体については把握（学習）していない。したがって、空燃比センサの応答性の学習方法を構築することやその学習を比較的多くの機会に行なえるようにすることが課題の一つとされている。
【０００５】
本発明のハイブリッド自動車は、空燃比センサの応答性の学習方法を構築することやその学習を比較的多くの機会に行なえるようにすることを主目的とする。
【課題を解決するための手段】
【０００６】
本発明のハイブリッド自動車の制御装置は、上述の主目的を達成するために以下の手段を採った。
【０００７】
本発明のハイブリッド自動車の制御装置は、
エンジンと、前記エンジンをクランキング可能なモータと、前記モータに電力を供給可能なバッテリと、前記エンジンの排気系に取り付けられて空燃比に応じて出力値が変化する空燃比センサと、を備えるハイブリッド自動車の制御装置であって、
前記モータによる前記エンジンのクランキング時における前記空燃比センサの出力値の傾きを用いて前記空燃比センサの応答性の学習を行なう、
ことを特徴とする。
【０００８】
このハイブリッド自動車の制御装置では、モータによるエンジンのクランキング時における空燃比センサの出力値の傾きを用いて空燃比センサの応答性の学習を行なう。通常、エンジンのクランキング時には、吸気管に新たな空気（新気）が導入されることから、空燃比がリーン側に変化する。そして、この空燃比の変化に応じて空燃比センサの出力値が変化する。したがって、エンジンのクランキング時における空燃比センサの出力値の傾きを用いることにより、空燃比センサの応答性の学習を行なうことができる。また、ハイブリッド自動車では、システム起動からシステム停止までエンジンを間欠運転しながら走行することから、エンジンのクランキング時における空燃比センサの出力値の傾きを用いて空燃比センサの応答性の学習を行なうことにより、エンジンの始動後に所定時間が経過してから学習を行なうものに比して、より多くの機会に学習を行なうことができると考えられる。ここで、「空燃比センサ」は、空燃比が大きいほど出力値が略リニアに大きくなるセンサである、ものとすることもできる。
【０００９】
こうした本発明のハイブリッド自動車の制御装置において、
前記エンジンのクランキング時における前記空燃比センサの出力値の傾きの最大値であるクランキング時最大傾き値を、前記エンジンのクランキング開始時における前記空燃比センサの出力値と大気圧とスロットル開度とのうち少なくとも一つを用いて正規化し、該正規化後のクランキング時最大傾き値を用いて前記空燃比センサの応答性の学習値を演算する、ものとすることもできる。ここで、「正規化」は、クランキング時最大傾き値を、エンジンのクランキング開始時における空燃比センサの出力値が所定空燃比のときのクランキング時最大傾き値に変換したり、大気圧が所定気圧のときのクランキング最大傾き値に変換したり、スロットル開度が所定開度のときのクランキング時最大傾き値に変換したりする、ものとすることもできる。
【００１０】
この正規化後のクランキング時最大傾き値を用いて空燃比センサの応答性の学習値を演算する態様のハイブリッド自動車の制御装置において、前記演算した正規化後のクランキング時最大傾き値に値０より大きく値１より小さな反映係数を乗じた値と、前回の前記空燃比センサの応答性の学習値に値１から反映係数を減じた値を乗じた値と、の和を前記空燃比センサの応答性の学習値として演算する、ものとすることもできる。ここで、「反映係数」は、値０より大きく値１より小さな値を用いることができる。
【００１１】
また、本発明のハイブリッド自動車の制御装置において、前記モータの出力が閾値未満に制限されているか前記エンジンのクランキング時の該エンジンの回転数の立ち上がりが閾値より遅いときには、前記空燃比センサの応答性の学習を行なわない、ものとすることもできる。
【００１２】
さらに、本発明のハイブリッド自動車の制御装置において、前記エンジンの始動後において、空燃比フィードバック制御を開始するタイミングを、前記空燃比センサの応答性が低いほど遅くなる傾向に設定する、ものとすることもできる。この態様のハイブリッド自動車の制御装置において、前記エンジンの始動から所定時間が経過した後で、且つ、前記空燃比センサの出力値が、目標空燃比よりリッチ側で且つ前記空燃比センサの応答性が低いほど目標空燃比に近づくよう定められた閾値または該閾値より理論空燃比側に至ったときに、空燃比フィードバック制御を開始する、ものとすることもできる。
【００１３】
あるいは、本発明のハイブリッド自動車の制御装置において、空燃比フィードバック制御における積分項の制限値を、前記空燃比センサの応答性が低いほど小さくなる傾向に設定する、ものとすることもできる。
【図面の簡単な説明】
【００１４】
【図１】本発明の一実施例としてのハイブリッド自動車２０の構成の概略を示す構成図である。
【図２】エンジン２２の構成の概略を示す構成図である。
【図３】空燃比センサ１３５ａおよび酸素センサ１３５ｂの出力特性の一例を示す説明図である。
【図４】電池温度Ｔｂと入出力制限Ｗｉｎ，Ｗｏｕｔの基本値との関係の一例を示す説明図である。
【図５】バッテリ５０の蓄電割合ＳＯＣと出力制限用補正係数と入力制限用補正係数との関係の一例を示す説明図である。
【図６】実施例のエンジンＥＣＵ２４により実行される空燃比センサ応答性学習ルーチンの一例を示すフローチャートである。
【図７】開始時電圧Ｖａｆ０と最大傾き値ΔＶａｆｍａｘとの関係を示す関係ラインの一例を示す説明図である。
【図８】モータＭＧ１によってエンジン２２をクランキングして始動する際のエンジン２２の回転数Ｎｅ，吸入空気量Ｑａ，空燃比センサ１３５ａの出力電圧Ｖａｆ，傾き値ΔＶａｆの時間変化の様子を示す説明図である。
【図９】エンジンＥＣＵ２４により実行される空燃比Ｆ／Ｂ制御開始許可ルーチンの一例を示すフローチャートである。
【図１０】開始空燃比設定用マップの一例を示す説明図である。
【図１１】エンジン２２の回転数Ｎｅ，空燃比センサ１３５ａの出力電圧Ｖａｆ，空燃比フィードバック補正量ΔＱｆ，空燃比フィードバック制御の実行の有無の時間変化の様子の一例を示す説明図である。
【図１２】変形例の空燃比センサ応答性学習ルーチンの一例を示すフローチャートである。
【図１３】変形例の空燃比センサ応答性学習ルーチンの一例を示すフローチャートである。
【図１４】大気圧Ｐａと最大傾き値ΔＶａｆｍａｘとの関係を示す関係ラインの一例を示す説明図である。
【図１５】スロットル開度ＴＨと最大傾き値ΔＶａｆｍａｘとの関係を示す関係ラインの一例を示す説明図である。
【図１６】積分項制限値設定用マップの一例を示す説明図である。
【図１７】変形例のハイブリッド自動車１２０の構成の概略を示す構成図である。
【図１８】変形例のハイブリッド自動車２２０の構成の概略を示す構成図である。
【図１９】変形例のハイブリッド自動車３２０の構成の概略を示す構成図である。
【図２０】変形例のハイブリッド自動車４２０の構成の概略を示す構成図である。
【発明を実施するための形態】
【００１５】
次に、本発明を実施するための形態を実施例を用いて説明する。
【実施例】
【００１６】
図１は、本発明の一実施例としてのハイブリッド自動車２０の構成の概略を示す構成図である。実施例のハイブリッド自動車２０は、図示するように、ガソリンや軽油などを燃料として動力を出力するエンジン２２と、エンジン２２を駆動制御するエンジン用電子制御ユニット（以下、エンジンＥＣＵという）２４と、エンジン２２のクランクシャフト２６にキャリアが接続されると共に駆動輪３８ａ，３８ｂにデファレンシャルギヤ３７を介して連結された駆動軸３６にリングギヤが接続されたプラネタリギヤ３０と、例えば同期発電電動機として構成されて回転子がプラネタリギヤ３０のサンギヤに接続されたモータＭＧ１と、例えば同期発電電動機として構成されて回転子が駆動軸３６に接続されたモータＭＧ２と、モータＭＧ１，ＭＧ２を駆動するためのインバータ４１，４２と、インバータ４１，４２の図示しないスイッチング素子をスイッチング制御することによってモータＭＧ１，ＭＧ２を駆動制御するモータ用電子制御ユニット（以下、モータＥＣＵという）４０と、例えばリチウムイオン二次電池として構成されてインバータ４１，４２を介してモータＭＧ１，ＭＧ２と電力をやりとりするバッテリ５０と、バッテリ５０を管理するバッテリ用電子制御ユニット（以下、バッテリＥＣＵという）５２と、車両全体を制御するハイブリッド用電子制御ユニット（以下、ＨＶＥＣＵという）７０と、を備える。
【００１７】
エンジン２２は、例えばガソリンまたは軽油などの炭化水素系の燃料により動力を出力可能な内燃機関として構成されており、図２に示すように、エアクリーナ１２２により清浄された空気をスロットルバルブ１２４を介して吸入すると共に燃料噴射弁１２６からガソリンを噴射して吸入された空気とガソリンとを混合し、この混合気を吸気バルブ１２８を介して燃焼室に吸入し、点火プラグ１３０による電気火花によって爆発燃焼させて、そのエネルギにより押し下げられるピストン１３２の往復運動をクランクシャフト２６の回転運動に変換する。エンジン２２からの排気は、一酸化炭素（ＣＯ）や炭化水素（ＨＣ），窒素酸化物（ＮＯｘ）の有害成分を浄化する浄化触媒（三元触媒）１３４ａを有する浄化装置１３４を介して外気へ排出される。三元触媒１３４ａでは、エンジン２２からの排気が理論空燃比に対してリーン雰囲気のときには排気から酸素が吸蔵され、エンジン２２からの排気が理論空燃比に対してリッチ雰囲気のときには吸蔵された酸素が排気へ放出される。また、エンジン２２の排気管における浄化装置１３４の上流側には空燃比に応じて出力値（出力電圧Ｖａｆ）が略リニアに変化する空燃比センサ１３５ａが設けられており、浄化装置１３４の下流側には空燃比が理論空燃比に対してリッチ側かリーン側かに応じて出力値（出力電圧Ｖｏ）が急激に変化する酸素センサ１３５ｂが設けられている。図３に空燃比センサ１３５ａおよび酸素センサ１３５ｂの出力特性の一例を示す。図３の例では、空燃比センサ１３５ａは、空燃比が大きいほど出力電圧Ｖａｆが略リニアに大きくなり、酸素センサ１３５ｂは、空燃比が理論空燃比に対してリッチ側のときには出力値Ｖｏが比較的大きくなり、リーン側のときには出力値Ｖｏが比較的小さくなる。
【００１８】
エンジンＥＣＵ２４は、ＣＰＵ２４ａを中心とするマイクロプロセッサとして構成されており、ＣＰＵ２４ａの他に、処理プログラムを記憶するＲＯＭ２４ｂと、データを一時的に記憶するＲＡＭ２４ｃと、図示しない入出力ポートおよび通信ポートとを備える。エンジンＥＣＵ２４には、エンジン２２の状態を検出する種々のセンサからの信号、例えば、クランクシャフト２６の回転位置を検出するクランクポジションセンサ１４０からのクランクポジションやエンジン２２の冷却水の温度を検出する水温センサ１４２からの冷却水温Ｔｗ，燃焼室内に取り付けられた図示しない圧力センサからの筒内圧力Ｐｉｎ，燃焼室へ吸排気を行なう吸気バルブ１２８や排気バルブを開閉するカムシャフトの回転位置を検出するカムポジションセンサ１４４からのカムポジション，スロットルバルブ１２４のポジションを検出するスロットルバルブポジションセンサ１４６からのスロットル開度ＴＨ，吸気管に取り付けられたエアフローメータ１４８からの吸入空気量Ｑａ，同じく吸気管に取り付けられた温度センサ１４９からの吸気温Ｔｉｎ，浄化触媒１３４ａの温度を検出する温度センサ１３４ｂからの触媒温度Ｔｃ，排気管に取り付けられた空燃比センサ１３５ａからの出力電圧Ｖａｆ，同じく排気管に取り付けられた酸素センサ１３５ｂからの出力電圧Ｖｏなどが入力ポートを介して入力されている。また、エンジンＥＣＵ２４からは、エンジン２２を駆動するための種々の制御信号、例えば、燃料噴射弁１２６への駆動信号や、スロットルバルブ１２４のポジションを調節するスロットルモータ１３６への駆動信号、イグナイタと一体化されたイグニッションコイル１３８への制御信号、吸気バルブ１２８の開閉タイミングを変更可能な可変バルブタイミング機構１５０への制御信号などが出力ポートを介して出力されている。エンジンＥＣＵ２４は、ＨＶＥＣＵ７０と通信しており、ＨＶＥＣＵ７０からの制御信号によりエンジン２２を運転制御すると共に必要に応じてエンジン２２の運転状態に関するデータを出力する。なお、エンジンＥＣＵ２４は、クランクポジションセンサ１４０からのクランクポジションに基づいてクランクシャフト２６の回転数、即ちエンジン２２の回転数Ｎｅも演算している。
【００１９】
モータＥＣＵ４０は、図示しないが、ＣＰＵを中心とするマイクロプロセッサとして構成されており、ＣＰＵの他に、処理プログラムを記憶するＲＯＭやデータを一時的に記憶するＲＡＭ，入出力ポート，通信ポートを備える。モータＥＣＵ４０には、モータＭＧ１，ＭＧ２を駆動制御するために必要な信号、例えばモータＭＧ１，ＭＧ２の回転子の回転位置を検出する回転位置検出センサ４３，４４からの回転位置θｍ１，θｍ２や図示しない電流センサにより検出されるモータＭＧ１，ＭＧ２に印加される相電流などが入力ポートを介して入力されており、モータＥＣＵ４０からは、インバータ４１，４２の図示しないスイッチング素子へのスイッチング制御信号などが出力ポートを介して出力されている。また、モータＥＣＵ４０は、ＨＶＥＣＵ７０と通信しており、ＨＶＥＣＵ７０からの制御信号によってモータＭＧ１，ＭＧ２を駆動制御すると共に必要に応じてモータＭＧ１，ＭＧ２の運転状態に関するデータをＨＶＥＣＵ７０に出力する。なお、モータＥＣＵ４０は、回転位置検出センサ４３，４４からのモータＭＧ１，ＭＧ２の回転子の回転位置θｍ１，θｍ２に基づいてモータＭＧ１，ＭＧ２の回転角速度ωｍ１，ωｍ２や回転数Ｎｍ１，Ｎｍ２も演算している。
【００２０】
バッテリＥＣＵ５２は、図示しないが、ＣＰＵを中心とするマイクロプロセッサとして構成されており、ＣＰＵの他に、処理プログラムを記憶するＲＯＭやデータを一時的に記憶するＲＡＭ，入出力ポート，通信ポートを備える。バッテリＥＣＵ５２には、バッテリ５０を管理するのに必要な信号、例えば、バッテリ５０の端子間に設置された図示しない電圧センサからの端子間電圧Ｖｂやバッテリ５０の出力端子に接続された電力ラインに取り付けられた図示しない電流センサからの充放電電流Ｉｂ，バッテリ５０に取り付けられた温度センサ５１からの電池温度Ｔｂなどが入力されており、必要に応じてバッテリ５０の状態に関するデータを通信によりＨＶＥＣＵ７０に送信する。また、バッテリＥＣＵ５２は、バッテリ５０を管理するために、電流センサにより検出された充放電電流Ｉｂの積算値に基づいてそのときのバッテリ５０から放電可能な電力の容量の全容量に対する割合である蓄電割合ＳＯＣを演算したり、演算した蓄電割合ＳＯＣと電池温度Ｔｂとに基づいてバッテリ５０を充放電してもよい最大許容電力である入出力制限Ｗｉｎ，Ｗｏｕｔを演算したりしている。なお、バッテリ５０の入出力制限Ｗｉｎ，Ｗｏｕｔは、電池温度Ｔｂに基づいて入出力制限Ｗｉｎ，Ｗｏｕｔの基本値を設定し、バッテリ５０の蓄電割合ＳＯＣに基づいて出力制限用補正係数と入力制限用補正係数とを設定し、設定した入出力制限Ｗｉｎ，Ｗｏｕｔの基本値に補正係数を乗じることにより設定することができる。図４に電池温度Ｔｂと入出力制限Ｗｉｎ，Ｗｏｕｔの基本値との関係の一例を示し、図５にバッテリ５０の蓄電割合ＳＯＣと出力制限用補正係数と入力制限用補正係数との関係の一例を示す。こうして設定される入力制限Ｗｉｎは、電池温度Ｔｂが所定温度Ｔｂｌｏ（例えば、０℃や５℃，１０℃など）より低い領域で電池温度Ｔｂが低いほど大きく制限される（絶対値が小さい値となる）と共に電池温度Ｔｂが所定温度Ｔｂｈｉ（例えば、４５℃や５０℃，５５℃など）より高い領域で電池温度Ｔｂが高いほど大きく制限され、蓄電割合ＳＯＣが所定値Ｓｈｉ（例えば、５５％や６０％，６５％など）より高い領域で蓄電割合ＳＯＣが大きいほど大きく制限される。また、出力制限Ｗｏｕｔは、電池温度Ｔｂが所定温度Ｔｂｌｏより低い領域で電池温度Ｔｂが低いほど大きく制限されると共に電池温度Ｔｂが所定温度Ｔｂｈｉより高い領域で電池温度Ｔｂが高いほど大きく制限され、蓄電割合ＳＯＣが所定値Ｓｌｏ（例えば、３５％や４０％，４５％など）より低い領域で蓄電割合ＳＯＣが小さいほど大きく制限される。
【００２１】
ＨＶＥＣＵ７０は、図示しないが、ＣＰＵを中心とするマイクロプロセッサとして構成されており、ＣＰＵの他に、処理プログラムを記憶するＲＯＭやデータを一時的に記憶するＲＡＭ，入出力ポート，通信ポートを備える。ＨＶＥＣＵ７０には、イグニッションスイッチ８０からのイグニッション信号やシフトレバー８１の操作位置を検出するシフトポジションセンサ８２からのシフトポジションＳＰ，アクセルペダル８３の踏み込み量を検出するアクセルペダルポジションセンサ８４からのアクセル開度Ａｃｃ，ブレーキペダル８５の踏み込み量を検出するブレーキペダルポジションセンサ８６からのブレーキペダルポジションＢＰ，車速センサ８８からの車速Ｖ，大気圧センサ８９からの大気圧Ｐａなどが入力ポートを介して入力されている。ＨＶＥＣＵ７０は、前述したように、エンジンＥＣＵ２４やモータＥＣＵ４０，バッテリＥＣＵ５２と通信ポートを介して接続されており、エンジンＥＣＵ２４やモータＥＣＵ４０，バッテリＥＣＵ５２と各種制御信号やデータのやりとりを行なっている。
【００２２】
こうして構成された実施例のハイブリッド自動車２０では、運転者によるアクセルペダルの踏み込み量に対応するアクセル開度Ａｃｃと車速Ｖとに基づいて駆動軸３６に出力すべき要求トルクＴｒ＊を計算し、この要求トルクＴｒ＊に対応する要求動力が駆動軸３６に出力されるように、エンジン２２とモータＭＧ１とモータＭＧ２とが運転制御される。エンジン２２とモータＭＧ１とモータＭＧ２との運転制御としては、要求動力に見合う動力がエンジン２２から出力されるようにエンジン２２を運転制御すると共にエンジン２２から出力される動力のすべてがプラネタリギヤ３０とモータＭＧ１とモータＭＧ２とによってトルク変換されて駆動軸３６に出力されるようモータＭＧ１およびモータＭＧ２を駆動制御するトルク変換運転モードや、要求動力とバッテリ５０の充放電に必要な電力との和に見合う動力がエンジン２２から出力されるようにエンジン２２を運転制御すると共にバッテリ５０の充放電を伴ってエンジン２２から出力される動力の全部またはその一部がプラネタリギヤ３０とモータＭＧ１とモータＭＧ２とによるトルク変換を伴って要求動力が駆動軸３６に出力されるようモータＭＧ１およびモータＭＧ２を駆動制御する充放電運転モード，エンジン２２の運転を停止してモータＭＧ２からの要求動力に見合う動力を駆動軸３６に出力するよう運転制御するモータ運転モードなどがある。なお、トルク変換運転モードと充放電運転モードとは、いずれもエンジン２２の運転を伴って要求動力が駆動軸３６に出力されるようエンジン２２とモータＭＧ１とモータＭＧ２とを制御するモードであり、実質的な制御における差異はないため、以下、両者を合わせてエンジン運転モードという。
【００２３】
エンジン運転モードでは、ＨＶＥＣＵ７０は、アクセルペダルポジションセンサ８４からのアクセル開度Ａｃｃと車速センサ８８からの車速Ｖとに基づいて駆動軸３６に出力すべき要求トルクＴｒ＊を設定し、設定した要求トルクＴｒ＊に駆動軸３６の回転数Ｎｒ（例えば、モータＭＧ２の回転数Ｎｍ２や車速Ｖに換算係数を乗じて得られる回転数）を乗じて走行に要求される走行用パワーＰｄｒｖ＊を計算し、計算した走行用パワーＰｄｒｖ＊からバッテリ５０の充放電要求パワーＰｂ＊（バッテリ５０から放電するときが正の値）を減じてエンジン２２から出力すべきパワーとしての要求パワーＰｅ＊を設定する。そして、要求パワーＰｅ＊を効率よくエンジン２２から出力することができるエンジン２２の回転数ＮｅとトルクＴｅとの関係としての動作ライン（例えば燃費最適動作ライン）を用いてエンジン２２の目標回転数Ｎｅ＊と目標トルクＴｅ＊とを設定し、バッテリ５０の入出力制限Ｗｉｎ，Ｗｏｕｔの範囲内で、エンジン２２の回転数Ｎｅが目標回転数Ｎｅ＊となるようにするための回転数フィードバック制御によってモータＭＧ１から出力すべきトルクとしてのトルク指令Ｔｍ１＊を設定すると共にモータＭＧ１をトルク指令Ｔｍ１＊で駆動したときにプラネタリギヤ３０を介して駆動軸３６に作用するトルクを要求トルクＴｒ＊から減じてモータＭＧ２のトルク指令Ｔｍ２＊を設定し、設定した目標回転数Ｎｅ＊と目標トルクＴｅ＊とについてはエンジンＥＣＵ２４に送信し、トルク指令Ｔｍ１＊，Ｔｍ２＊についてはモータＥＣＵ４０に送信する。目標回転数Ｎｅ＊と目標トルクＴｅ＊とを受信したエンジンＥＣＵ２４は、目標回転数Ｎｅ＊と目標トルクＴｅ＊とによってエンジン２２が運転されるようエンジン２２の吸入空気量制御や燃料噴射制御，点火制御などを行ない、トルク指令Ｔｍ１＊，Ｔｍ２＊を受信したモータＥＣＵ４０は、モータＭＧ１，ＭＧ２がトルク指令Ｔｍ１＊，Ｔｍ２＊で駆動されるようインバータ４１，４２のスイッチング素子のスイッチング制御を行なう。こうした制御により、エンジン２２を効率よく運転しながらバッテリ５０の入出力制限Ｗｉｎ，Ｗｏｕｔの範囲内で要求トルクＴｒ＊を駆動軸３６に出力して走行することができる。このエンジン運転モードでは、エンジン２２の要求パワーＰｅ＊がエンジン２２を運転停止した方がよい要求パワーＰｅ＊の範囲の上限として定められた停止用閾値Ｐｓｔｏｐ以下に至ったときなどに、エンジン２２の停止条件が成立したと判定して、エンジン２２の運転を停止してモータ運転モードに移行する。
【００２４】
ここで、エンジン２２の燃料噴射制御について説明する。燃料噴射制御では、まず、エアフローメータ１４８からの吸入空気量Ｑａに基づいて空燃比を目標空燃比ＡＦ＊（例えば理論空燃比）とするための基本燃料噴射量Ｑｆｔｍｐを設定し、空燃比センサ１３５ａの出力電圧Ｖａｆに対応する空燃比（以下、検出空燃比ＡＦｄｅｔという）が目標空燃比ＡＦ＊となるよう次式（１）により空燃比フィードバック補正量ΔＱｆを設定し、設定した空燃比フィードバック補正量ΔＱｆを基本燃料噴射量Ｑｆｔｍｐに加えて目標燃料噴射量Ｑｆ＊を設定し、設定した目標燃料噴射量Ｑｆ＊を用いて燃料噴射弁１２６を制御する。ここで、式（１）は、検出空燃比ＡＦｄｅｔが目標空燃比ＡＦ＊となるようにするためのフィードバック制御（空燃比フィードバック制御）における関係式であり、式（１）中、「ｋ１」は比例項のゲインであり、「ｋ２」は積分項のゲインである。なお、エンジン２２の始動完了直後など空燃比フィードバック制御を実行しないときには、基本燃料噴射量Ｑｆｔｍｐを目標燃料噴射量Ｑｆ＊を設定し、設定した目標燃料噴射量Ｑｆ＊を用いて燃料噴射弁１２６を制御する。
【００２５】
ΔQf=k1・(AF*-AFdet)+k2・∫(AF*-AFdet)dt                      (1)
【００２６】
モータ運転モードでは、ＨＶＥＣＵ７０は、アクセル開度Ａｃｃと車速Ｖとに基づいて駆動軸３６に出力すべき要求トルクＴｒ＊を設定し、モータＭＧ１のトルク指令Ｔｍ１＊に値０を設定する共にバッテリ５０の入出力制限Ｗｉｎ，Ｗｏｕｔの範囲内で要求トルクＴｒ＊が駆動軸３６に出力されるようモータＭＧ２のトルク指令Ｔｍ２＊を設定してモータＥＣＵ４０に送信する。そして、トルク指令Ｔｍ１＊，Ｔｍ２＊を受信したモータＥＣＵ４０は、モータＭＧ１，ＭＧ２がトルク指令Ｔｍ１＊，Ｔｍ２＊で駆動されるようインバータ４１，４２のスイッチング素子のスイッチング制御を行なう。こうした制御により、エンジン２２を運転停止した状態でバッテリ５０の入出力制限Ｗｉｎ，Ｗｏｕｔの範囲内で要求トルクＴｒ＊を駆動軸３６に出力して走行することができる。このモータ運転モードでは、要求トルクＴｒ＊に駆動軸３６の回転数Ｎｒを乗じて得られる走行用パワーＰｄｒｖ＊からバッテリ５０の充放電要求パワーＰｂ＊を減じて得られるエンジン２２の要求パワーＰｅ＊がエンジン２２を始動した方がよい要求パワーＰｅ＊の範囲の下限として定められた始動用閾値Ｐｓｔａｒｔ以上に至ったときなどに、エンジン２２の始動条件が成立したと判定して、エンジン２２を始動してエンジン運転モードに移行する。
【００２７】
エンジン２２の始動は、バッテリ５０の入出力制限Ｗｉｎ，Ｗｏｕｔの範囲内で、エンジン２２をクランキングするためのクランキングトルクＴｃをモータＭＧ１から出力すると共にこのトルクの出力に伴って駆動軸３６に作用するトルクをキャンセルするためのトルクをモータＭＧ２から出力することによってエンジン２２をクランキングし、エンジン２２の回転数Ｎｅが所定回転数Ｎｅｓｔ（例えば１０００ｒｐｍ）に至ったときに燃料噴射制御や点火制御などを開始する、ことによって行なわれる。なお、このエンジン２２の始動の最中も要求トルクＴｒ＊が駆動軸３６に出力されるようモータＭＧ２の駆動制御が行なわれる。即ち、モータＭＧ２から出力すべきトルクは、要求トルクＴｒ＊とモータＭＧ１によってエンジン２２をクランキングする際に駆動軸３６に作用するトルクをキャンセルするためのトルクとの和のトルクとなる。また、モータＭＧ１によってエンジン２２をクランキングする際、実施例では、エンジン２２については、スロットル開度ＴＨがアイドル運転を行なう際のスロットル開度ＴＨとしてのアイドル用目標開度ＴＨｉｄ＊となるよう制御するものとした。
【００２８】
また、実施例のハイブリッド自動車２０では、エンジン２２のアイドル運転を行なう際には、エンジン２２の回転数Ｎｅがアイドル回転数Ｎｉｄｌとなるよう予め定められた基本開度ＴＨｔｍｐに対して、エンジン２２の回転数Ｎｅとアイドル回転数Ｎｉｄｌとの差分が打ち消されるよう補正を施してアイドル用目標開度ＴＨｉｄ＊を設定し、設定したアイドル用目標開度ＴＨｉｄ＊を用いてエンジン２２を制御すると共に、アイドル用目標開度ＴＨｉｄ＊を学習する。
【００２９】
次に、こうして構成された実施例のハイブリッド自動車２０の動作、特に、空燃比センサ１３５ａの応答性の学習を行なう際の動作について説明する。図６は、実施例のエンジンＥＣＵ２４により実行される空燃比センサ応答性学習ルーチンの一例を示すフローチャートである。このルーチンは、繰り返し実行される。
【００３０】
空燃比センサ応答性学習ルーチンが実行されると、エンジンＥＣＵ２４のＣＰＵ２４ａは、まず、エンジン２２の始動条件が不成立から成立になったときであるか否かを判定し（ステップＳ１００）、エンジン２２の始動条件が不成立から成立になったときでないと判定されたときには、本ルーチンを終了する。ここで、エンジン２２の始動条件が不成立から成立になったときとしては、モータ運転モードでの走行中に要求パワーＰｅ＊が始動用閾値Ｐｓｔａｒｔ以上に至ったときなどを考えることができる。このステップＳ１００の処理は、モータＭＧ１によるエンジン２２のクランキングの開始時であるか否かを判定する処理である。
【００３１】
ステップＳ１００でエンジン２２の始動条件が不成立から成立になったときであると判定されたときには、空燃比センサ１３５ａの応答性の学習条件が成立しているか否かを判定し（ステップＳ１１０）、学習条件が成立していないと判定されたときには、本ルーチンを終了する。ここで、学習条件は、例えば、エンジン２２の運転停止後に所定時間（例えば、１秒や２秒など）が経過している時間条件や、空燃比センサ１３５ａの出力電圧Ｖａｆが所定電圧Ｖａｆｒｅｆ未満である電圧条件などを用いることができる。ここで、所定電圧Ｖａｆｒｅｆは、理論空燃比（値１４．６）より大きい所定空燃比（例えば、値１７や値１８など）に対応する電圧を用いるものとした。実施例では、時間条件や電圧条件などのうち少なくとも一つが成立しないときには学習条件は成立していないと判定し、これらの全てが成立しているときには学習条件が成立していると判定するものとした。
【００３２】
ステップＳ１１０で学習条件が成立していると判定されたときには、空燃比センサ１３５ａの出力電圧Ｖａｆを入力してそれをエンジン２２のクランキング開始時の出力電圧Ｖａｆとしての開始時電圧Ｖａｆ０に設定すると共に（ステップＳ１２０，Ｓ１３０）、出力電圧Ｖａｆの単位時間（例えば、５０ｍｓｅｃや６０ｍｓｅｃ，７０ｍｓｅｃなど）当たりの変化量としての傾き値ΔＶａｆ，その傾き値ΔＶａｆの最大値としての最大傾き値ΔＶａｆｍａｘ，最大傾き値ΔＶａｆｍａｘを正規化した値としての正規化後最大傾き値ΔＶａｆｍａｘｌｖのそれぞれに初期値としての値０を設定する（ステップＳ１４０）。
【００３３】
続いて、傾き値ΔＶａｆを入力すると共に（ステップＳ１５０）、入力した傾き値ΔＶａｆを最大傾き値ΔＶａｆｍａｘと比較し（ステップＳ１６０）、傾き値ΔＶａｆが最大傾き値ΔＶａｆｍａｘより大きいときには、傾き値ΔＶａｆを最大傾き値ΔＶａｆｍａｘに設定すなわち最大傾き値ΔＶａｆｍａｘを更新し（ステップＳ１７０）、傾き値ΔＶａｆが最大傾き値ΔＶａｆｍａｘ以下のときには、ステップＳ１７０の処理を実行しない。ここで、傾き値ΔＶａｆは、エンジンＥＣＵ２４により実行される図示しない傾き値演算ルーチンにより、空燃比センサ１３５ａの現在の出力電圧Ｖａｆから単位時間だけ前の出力電圧Ｖａｆを減じた値を入力するものとした。
【００３４】
そして、エンジン２２の始動が完了したか否か（エンジン２２のクランキングが終了したか否か）を判定し（ステップＳ１８０）、エンジン２２の始動が完了していない（エンジン２２のクランキングが終了していない）と判定されたときには、ステップＳ１５０に戻る。なお、エンジン２２の始動が完了したか否かは、例えば、エンジン２２が完爆したか否かなどによって判定することができる。
【００３５】
こうしてステップＳ１５０〜Ｓ１８０の処理を繰り返し実行して、ステップＳ１８０でエンジン２２の始動が完了した（エンジン２２のクランキングが終了した）と判定されると、開始時電圧Ｖａｆ０を用いて最大傾き値ΔＶａｆｍａｘを正規化して正規化後最大傾き値ΔＶａｆｍａｘｎｏを設定すると共に（ステップＳ１９０）、設定した正規化後最大傾き値ΔＶａｆｍａｘｎｏを用いて空燃比センサ１３５ａの応答性の学習値ΔＶａｆｍａｘｌｖを設定して（ステップＳ２００）、本ルーチンを終了する。
【００３６】
ステップＳ１９０の正規化後最大傾き値ΔＶａｆｍａｘｎｏの設定は、実施例では、最大傾き値ΔＶａｆｍａｘを、開始時電圧Ｖａｆ０を用いて、所定空燃比（例えば理論空燃比）ＡＦｓｅｔに対応する空燃比センサ１３５ａの出力電圧Ｖａｆである所定空燃比対応電圧Ｖａｆｓｅｔにおける最大傾き値ΔＶａｆｍａｘとして正規化（変換）することによって行なうものとした。図７は、開始時電圧Ｖａｆ０と最大傾き値ΔＶａｆｍａｘとの関係を示す関係ラインの一例を示す説明図である。以下、この関係ラインにおける、各開始時電圧Ｖａｆ０に対応する最大傾き値を「ΔＶａｆｍａｘｆ［Ｖａｆ０］」として表わす。関係ラインは、例えば、開始時電圧Ｖａｆ０と最大傾き値ΔＶａｆｍａｘとの関係を予め実験や解析などによって複数求めてそれぞれ点としてプロットすると共にプロットした複数の点を用いて最小二乗法などによって関数近似を行なうことによって求めることができる。図７から分かるように、空燃比センサ１３５ａは、開始時電圧Ｖａｆ０に応じて最大傾き値ΔＶａｆｍａｘが異なる特性、具体的には、開始時電圧Ｖａｆ０が所定空燃比対応電圧Ｖａｆｓｅｔ近傍で極大となり、所定空燃比対応電圧Ｖａｆｓｅｔ近傍から離れるほど最大傾き値ΔＶａｆｍａｘが小さくなる特性を有している。これを踏まえて、実施例では、最大傾き値ΔＶａｆｍａｘと、関係ラインにおける開始時電圧Ｖａｆ０，所定空燃比対応電圧Ｖａｆｓｅｔに対応する最大傾き値ΔＶａｆｍａｘｆ［Ｖａｆ０］，ΔＶａｆｍａｘｆ［Ｖａｆｓｅｔ］と、を用いて次式（２）により正規化後最大傾き値ΔＶａｆｍａｘｍｏを計算するものとした。こうした処理により、データ（正規化後最大傾き値ΔＶａｆｍａｘｍｏ）を利用しやすくすることができる。また、図７では、参考のために、上述の所定電圧Ｖａｆｒｅｆについても図示した。開始時電圧Ｖａｆ０が所定電圧Ｖａｆｒｅｆ以上の領域では、式（２）における「ΔＶａｆｍａｘｆ［Ｖａｆｓｅｔ］／ΔＶａｆｍａｘｆ［Ｖａｆ０］」の値がかなり大きくなるため、正規化の精度（信頼性）が比較的低くなると考えられる。このため、実施例では、上述のステップＳ１１０の処理では、空燃比センサ１３５ａの出力電圧Ｖａｆが所定電圧Ｖａｆｒｅｆ未満である電圧条件を考慮するものとした。
【００３７】
ΔVafmaxno=ΔVafmax・ΔVafmaxf[Vafset]/ΔVafmaxf[Vaf0]        (2)
【００３８】
ステップＳ２００の空燃比センサ１３５ａの応答性の学習値ΔＶａｆｍａｘｌｖの設定は、正規化後最大傾き値ΔＶａｆｍａｘｍｏと空燃比センサ１３５ａの応答性の前回の学習値（前回ΔＶａｆｍａｘｌｖ）とを用いて次式（３）により計算することによって行なうものとした。ここで、式（３）中、「ｋｖ」は、正規化後最大傾き値ΔＶａｆｍａｘｍｏを新たな学習値ΔＶａｆｍａｘｌｖに反映させるための反映係数ｋｖであり、値０より大きく値１より小さな値、例えば、値０．１０や値０．１５，値０．２０などを用いることができる。このように反映係数ｋｖを用いて空燃比センサ１３５ａの応答性の学習値ΔＶａｆｍａｘｌｖを計算することにより、学習値ΔＶａｆｍａｘｌｖの急変を抑制することができる。
【００３９】
ΔVafmaxlv=kv・ΔVafmaxmo＋(1-kv)・前回ΔVafmaxlv             (3)
【００４０】
ここで、エンジン２２のクランキング時に空燃比センサ１３５ａの応答性の学習を行なう理由について説明する。図８は、モータＭＧ１によってエンジン２２をクランキングして始動する際のエンジン２２の回転数Ｎｅ，吸入空気量Ｑａ，空燃比センサ１３５ａの出力電圧Ｖａｆ，傾き値ΔＶａｆの時間変化の様子を示す説明図である。図８に示すように、モータＭＧ１によるエンジン２２のクランキングが開始されると（時刻ｔ１１）、エンジン２２の回転数Ｎｅや吸入空気量Ｑａの増加によって空燃比センサ１３５ａの出力電圧Ｖａｆが増加し（リーン側の値となり）、傾き値ΔＶａｆが増加する。エンジン２２のクランキング時（特に、回転数Ｎｅが所定回転数Ｎｅｓｔに至る前）には、エンジン２２で燃料噴射が行なわれておらず且つ吸入空気量Ｑａが比較的小さい。したがって、エンジン２２での燃料噴射が行なわれている運転時や、エンジン２２で燃料噴射は行なわれていないが吸入空気量Ｑａが比較的大きい（エンジン２２がある程度大きな回転数Ｎｅで回転しながらフューエルカットされている）フューエルカット時に比して、空燃比センサ１３５ａの応答性のより細かな違いが傾き値ΔＶａｆに現われやすい。この結果、エンジン２２のクランキング時に空燃比センサ１３５ａの応答性の学習値ΔＶａｆｍａｘｌｖを計算することにより、空燃比センサ１３５ａの応答性の学習をより適正に行なうことができる。また、ハイブリッド自動車２０では、システム起動からシステム停止までのいわゆる１トリップにおいて、エンジン２２を間欠運転しながら（エンジン２２の始動や停止を行ないながら）走行するから、エンジン２２のクランキング時に空燃比センサ１３５ａの応答性の学習を行なうことにより、エンジン２２の始動後にある程度の時間が経過してから空燃比センサ１３５ａの応答性の学習を行なうものに比して、学習をより多くの機会に行なうことができると考えられる。
【００４１】
以上、空燃比センサ１３５ａの応答性の学習（学習値ΔＶａｆｍａｘｌｖの更新）を行なう際の動作について説明した。次に、空燃比センサ１３５ａの応答性の学習値ΔＶａｆｍａｘｌｖを用いて、エンジン２２の始動後に空燃比フィードバック制御の開始を許可する際の動作について説明する。図９は、エンジンＥＣＵ２４により実行される空燃比Ｆ／Ｂ制御開始許可ルーチンの一例を示すフローチャートである。このルーチンは、エンジン２２の始動完了時に実行が開始される。
【００４２】
空燃比Ｆ／Ｂ制御開始許可ルーチンが実行されると、エンジンＥＣＵ２４のＣＰＵ２４ａは、まず、学習値ΔＶａｆｍａｘｌｖを入力すると共に（ステップＳ３００）、入力した学習値ΔＶａｆｍａｘｌｖに基づいて空燃比フィードバック制御の開始を許可する空燃比としての開始空燃比ＡＦｓｔを設定する（ステップＳ３１０）。ここで、開始空燃比ＡＦｓｔは、実施例では、学習値ΔＶａｆｍａｘｌｖと開始空燃比ＡＦｓｔとの関係を予め定めて開始空燃比設定用マップとしてＲＯＭ２４ｂに記憶しておき、学習値ΔＶａｆｍａｘｌｖが与えられるとマップから対応する開始空燃比ＡＦｓｔを導出して設定するものとした。開始空燃比設定用マップの一例を図１０に示す。開始空燃比ＡＦｓｔは、図示するように、目標空燃比ＡＦ＊（例えば理論空燃比）より小さい（リッチ側の）範囲で、学習値ΔＶａｆｍａｘｌｖが所定値ΔＶａｆｍａｘｌｖ１以上の領域では固定値ＡＦｓｔ１を設定し、学習値ΔＶａｆｍａｘｌｖが所定値ΔＶａｆｍａｘｌｖ１未満の領域では学習値ΔＶａｆｍａｘｌｖが小さいほど大きくなる傾向に設定するものとした。こうした傾向に開始空燃比ＡＦｓｔを設定する理由については後述する。
【００４３】
こうして開始空燃比ＡＦｓｔを設定すると、空燃比センサ１３５ａの出力電圧Ｖａｆに対応する検出空燃比ＡＦｄｅｔを入力し（ステップＳ３２０）、エンジン２２の始動完了から所定時間Ｔｒｅｆ（例えば、４００ｍｓｅｃや５００ｍｓｅｃ，６００ｍｓｅｃなど）が経過したか否か（ステップＳ３３０）、および、検出空燃比ＡＦｄｅｔが開始空燃比ＡＦｓｔ以上か否か判定し（ステップＳ３４０）、エンジン２２の始動完了から所定時間Ｔｒｅｆが経過していないときや、検出空燃比ＡＦが開始空燃比ＡＦｓｔ未満のときには、ステップＳ３２０に戻り、エンジン２２の始動完了か所定時間Ｔｒｅｆが経過しており且つ検出空燃比ＡＦｄｅｔが開始空燃比ＡＦｓｔ以上のときに、空燃比フィードバック制御の開始を許可して（ステップＳ３５０）、本ルーチンを終了する。
【００４４】
図１１は、エンジン２２の回転数Ｎｅ，空燃比センサ１３５ａの出力電圧Ｖａｆ，空燃比フィードバック補正量ΔＱｆ，空燃比フィードバック制御の実行の有無の時間変化の様子の一例を示す説明図である。図中、実線は実施例の様子を示し、一点鎖線はエンジン２２の始動完了から所定時間Ｔｒｅｆが経過した時刻ｔ２１に空燃比フィードバック制御を開始する比較例の様子を示す。図１１の例では、空燃比センサ１３５ａの応答性が比較的低いときの様子を示した。また、実際の空燃比（実ＡＦ）は、通常、エンジン２２の始動時（クランキング時）にリーン側に比較的大きく振れ、エンジン２２の始動完了後に、一旦リッチ側に大きく振れてから目標空燃比ＡＦ＊に近づく。比較例では、時刻ｔ２１に空燃比フィードバック制御を開始するから、検出空燃比ＡＦｄｅｔが目標空燃比ＡＦ＊からある程度離れている状態で空燃比フィードバック制御を開始することになり実際の空燃比（実ＡＦ）が目標空燃比ＡＦ＊に対してリーン側に大きく振れてしまう場合がある。これに対して、実施例では、時刻ｔ２１に検出空燃比ＡＦｄｅｔが開始空燃比ＡＦｓｔ未満のときには、検出空燃比ＡＦｄｅｔが開始空燃比ＡＦｓｔ以上に至った時刻ｔ２２に空燃比フィードバック制御を開始することにより、実際の空燃比（実ＡＦ）がリーン側に大きく振れるのを抑制することができる。所定時間Ｔｒｅｆは、空燃比センサ１３５ａの応答性が高いとき（例えば、学習値ΔＶａｆｍａｘｌｖが所定値ΔＶａｆｍａｘｌｖ１以上のとき）に、空燃比フィードバック制御を開始しても実際の空燃比（実ＡＦ）が目標空燃比ＡＦ＊よりリーン側に大きく振れないと考えられる時間を用いるものとした。また、開始空燃比ＡＦｓｔは、空燃比センサ１３５ａの応答性の学習値ΔＶａｆｍａｘｌｖ（実際の空燃比（実ＡＦ）と検出空燃比ＡＦｄｅｔとの乖離しやすさ）に応じて、空燃比フィードバック制御を開始しても実際の空燃比（実ＡＦ）が目標空燃比ＡＦ＊よりリーン側に大きく振れないと考えられる値を設定するものとした。したがって、学習値ΔＶａｆｍａｘｌｖに応じて開始空燃比ＡＦｓｔを設定することにより、空燃比フィードバック制御をより適正なタイミングで開始することができる。なお、目標空燃比ＡＦ＊よりリッチ側で且つ学習値ΔＶａｆｍａｘｌｖが小さいほど大きくなる傾向（目標空燃比ＡＦ＊に近づく傾向）に開始空燃比ＡＦｓｔを設定することにより、空燃比フィードバック制御を開始するタイミングは、学習値ΔＶａｆｍａｘｌｖが小さいほど遅い傾向となる。
【００４５】
以上説明した実施例のハイブリッド自動車２０によれば、エンジン２２のクランキング時における空燃比センサ１３５ａの出力電圧Ｖａｆの傾き値ΔＶａｆに基づく最大傾き値ΔＶａｆｍａｘを用いて空燃比センサ１３５ａの応答性の学習値ΔＶａｆｍａｘｌｖを計算するから、空燃比センサ１３５ａの応答性の学習をより適正に且つ比較的多くの機会に行なうことができる。
【００４６】
実施例のハイブリッド自動車２０では、エンジン２２をクランキングしたときには、空燃比センサ１３５ａの応答性の学習を行なうものとしたが、エンジン２２をクランキングしたときの状況によっては空燃比センサ１３５ａの応答性の学習を行なわないものとしてもよい。この場合の空燃比センサ応答性学習ルーチンの一例を図１２に示す。このルーチンは、ステップＳ４００〜Ｓ４２０の処理を追加した点を除いて、図６の空燃比センサ応答性学習ルーチンと同様である。したがって、同一の処理については同一のステップ番号を付し、その詳細な説明は省略する。
【００４７】
図１２の空燃比センサ応答性学習ルーチンでは、ステップＳ１８０でエンジン２２の始動が完了した（エンジン２２のクランキングが終了した）と判定されると、バッテリ５０の電池温度Ｔｂと、モータＭＧ１によるエンジン２２のクランキングを開始してからエンジン２２が１回転したときのエンジン２２の回転数Ｎｅである判定用回転数Ｎｅｊと、を入力し（ステップＳ４００）、バッテリ５０の電池温度Ｔｂを閾値Ｔｂｒｅｆ１，Ｔｂｒｅ２と比較すると共に（ステップＳ４１０）、エンジン２２の判定用回転数Ｎｅを閾値Ｎｅｒｅｆと比較する（ステップＳ４２０）。ここで、バッテリ５０の電池温度Ｔｂは、温度センサ５１により検出されたものをバッテリＥＣＵ５２からＨＶＥＣＵ７０を介して入力するものとした。また、エンジン２２の判定用回転数Ｎｅｊは、実施例では、クランクポジションセンサ１４０からのクランクポジションに基づいて演算されたものを読み込んで入力するものとした。
【００４８】
上述したように、エンジン２２の始動時には、バッテリ５０の入出力制限Ｗｉｎ，Ｗｏｕｔの範囲内で、クランキングトルクＴｃをモータＭＧ１から出力すると共にこのクランキングトルクＴｃの出力に伴って駆動軸３６に作用するトルクをキャンセルするためのトルクをモータＭＧ２から出力することによってエンジン２２をクランキングする。電池温度Ｔｂが適正温度範囲より低いときや高いときには、バッテリ５０の出力制限Ｗｏｕｔが比較的小さくなることから、このクランキングトルクＴｃが比較的小さくなり、エンジン２２の回転数Ｎｅの立ち上がりが遅くなる（回転数Ｎｅの増加が緩やかになる）。閾値Ｔｂｒｅｆ１，Ｔｂｒｅｒｆ２や閾値Ｎｅｒｅｆは、こうした状況か否かを判定するために用いられるものである。閾値Ｔｂｒｅｆ１は、例えば、上述の所定温度Ｔｂｌｏ（例えば、０℃や５℃，１０℃など）より若干低い温度などを用いることができる。また、閾値Ｔｂｒｅｆ２は、例えば、上述の所定温度Ｔｂｈｉ（例えば、４５℃や５０℃，５５℃など）より若干高い温度などを用いることができる。さらに、閾値Ｎｅｒｅｆは、例えば、３００ｒｐｍや４００ｒｐｍ，５００ｒｐｍなどを用いることができる。
【００４９】
電池温度Ｔｂが閾値Ｔｂｒｅｆ１以上かつ閾値Ｔｂｒｅｆ２以下でエンジン２２の判定用回転数Ｎｅｊが閾値Ｎｅｒｅｆ以上のときには、実施例と同様に、最大傾き値ΔＶａｆｍａｘを正規化して正規化後最大傾き値ΔＶａｆｍａｘｎｏを設定すると共に（ステップＳ１９０）、設定した正規化後最大傾き値ΔＶａｆｍａｘｎｏを用いて空燃比センサ１３５ａの応答性の学習値ΔＶａｆｍａｘｌｖを設定して（ステップＳ２００）、本ルーチンを終了する。この場合、空燃比センサ１３５ａの応答性の学習を行なうことになる。
【００５０】
一方、電池温度Ｔｂが閾値Ｔｂｒｅｆ１未満のときや閾値Ｔｂｒｅｆ２より高いとき，エンジン２２の判定用回転数Ｎｅｊが閾値Ｎｅｒｅｆ未満のときには、ステップＳ１９０，Ｓ２００の処理を実行せずに、本ルーチンを終了する。この場合、空燃比センサ１３５ａの応答性の学習を行なわないことになる。
【００５１】
クランキングトルクＴｃが小さくエンジン２２の回転数Ｎｅの立ち上がりが遅い（回転数Ｎｅの増加が緩やかな）ときには、エンジン２２からの排気量が小さいため、空燃比センサ１３５ａの出力電圧Ｖａｆのリーン側の値への変化が鈍化し、最大傾き値ΔＶａｆｍａｘが小さくなる。このため、このときの最大傾き値ΔＶａｆｍａｘを用いて空燃比センサ１３５ａの応答性の学習を行なうと、学習値ΔＶａｆｍａｘｌｖがバラツキやすくなる場合がある。この変形例では、これを踏まえて、電池温度Ｔｂが閾値Ｔｂｒｅｆ１未満のときや閾値Ｔｂｒｅｆ２より高いとき、エンジン２２の判定用回転数Ｎｅｊが閾値Ｎｅｒｅｆ未満のときには、空燃比センサ１３５ａの応答性の学習を行なわないものとした。これにより、学習値ΔＶａｆｍａｘｌｖのバラツキを抑制することができる。
【００５２】
この変形例によれば、電池温度Ｔｂが閾値Ｔｂｒｅｆ１未満のときや閾値Ｔｂｒｅｆ２より高いとき、エンジン２２の判定用回転数Ｎｅｊが閾値Ｎｅｒｅｆ未満のときには、空燃比センサ１３５ａの応答性の学習を行なわないから、学習値ΔＶａｆｍａｘｌｖのバラツキを抑制することができる。
【００５３】
この変形例では、電池温度Ｔｂとエンジン２２の判定用回転数Ｎｅｊとを用いて空燃比センサ１３５ａの応答性の学習を行なうか否かを判定するものとしたが、いずれか一方だけを用いて空燃比センサ１３５ａの応答性の学習を行なうか否かを判定するものとしてもよい。
【００５４】
また、この変形例では、電池温度Ｔｂが閾値Ｔｂｒｅｆ１未満のときや閾値Ｔｂｒｅｆ２より高いときには、空燃比センサ１３５ａの応答性の学習を行なわないものとしたが、これに代えて、クランキングトルクＴｃ（バッテリ５０の出力制限Ｗｏｕｔの範囲内で設定されるトルク）が閾値Ｔｃｒｅｆ未満に制限されているときには、空燃比センサ１３５ａの応答性の学習を行なわないものとしてもよい。ここで、閾値Ｔｃｒｅｆは、電池温度Ｔｂが閾値Ｔｂｒｅｆ１や閾値Ｔｂｒｅｆ２のときのバッテリ５０の出力制限Ｗｏｕｔに対応するトルクなどを用いることができる。
【００５５】
さらに、この変形例では、エンジン２２の判定用回転数Ｎｅｊ（モータＭＧ１によるエンジン２２のクランキングを開始してからエンジン２２が１回転したときのエンジン２２の回転数Ｎｅ）が閾値Ｎｅｒｅｆ未満のときには、空燃比センサ１３５ａの応答性の学習を行なわないものとしたが、これに代えて、エンジン２２の回転数Ｎｅの増加速度（単位時間当たりの増加量）ΔＮｅが閾値ΔＮｅｒｅｆ未満のときには空燃比センサ１３５ａの応答性の学習を行なわないものとしたり、エンジン２２の回転数Ｎｅが閾値Ｎｅｒｅｆに至るのに要する時間ｔｓｔが閾値ｔｓｔｒｅｆより長いときには空燃比センサ１３５ａの応答性の学習を行なわないものとしたりするなどしてもよい。ここで、閾値ΔＮｅｒｅｆや閾値ｔｓｔｒｅｆは、それぞれ、閾値Ｎｅｒｅｆに対応する値などを用いることができる。
【００５６】
実施例のハイブリッド自動車２０では、開始時電圧Ｖａｆ０を用いて最大傾き値ΔＶａｆｍａｘを正規化して正規化後最大傾き値ΔＶａｆｍａｘｎｏを設定するものとしたが、開始時電圧Ｖａｆ０に代えて又は加えて、開始時電圧Ｖａｆ０以外の１以上のパラメータ（例えば、大気圧Ｐａやスロットル開度ＴＨ，吸気温Ｔｉｎなど）を用いて最大傾き値ΔＶａｆｍａｘを正規化して正規化後最大傾き値ΔＶａｆｍａｘｎｏを設定するものとしてもよい。開始時電圧Ｖａｆ０に代えて大気圧Ｐａとスロットル開度ＴＨとを用いて最大傾き値ΔＶａｆｍａｘを正規化して正規化後最大傾き値ΔＶａｆｍａｘｎｏを設定する場合の空燃比センサ応答性学習ルーチンの一例を図１３に示す。このルーチンは、ステップＳ１９０の処理に代えてステップＳ５００，Ｓ５１０の処理を実行する点を除いて、図６の空燃比センサ応答性学習ルーチンと同様である。したがって、同一の処理については同一のステップ番号を付し、その詳細な説明は省略する。
【００５７】
図１３の空燃比センサ応答性学習ルーチンでは、ステップＳ１８０でエンジン２２の始動が完了した（エンジン２２のクランキングが終了した）と判定されると、大気圧センサ８９により検出されてＨＶＥＣＵ７０から受信した大気圧Ｐａと、スロットルバルブポジションセンサ１４６からのスロットル開度ＴＨと、を入力し（ステップＳ５００）、入力した大気圧Ｐａとスロットル開度ＴＨとを用いて最大傾き値ΔＶａｆｍａｘを正規化して正規化後最大傾き値ΔＶａｆｍａｘｎｏを設定すると共に（ステップＳ５１０）、設定した正規化後最大傾き値ΔＶａｆｍａｘｎｏを用いて空燃比センサ１３５ａの応答性の学習値ΔＶａｆｍａｘｌｖを設定して（ステップＳ２００）、本ルーチンを終了する。
【００５８】
ステップＳ５１０の正規化後最大傾き値ΔＶａｆｍａｘｎｏの設定は、実施例では、最大傾き値ΔＶａｆｍａｘを、大気圧Ｐａとスロットル開度ＴＨとを用いて、所定気圧（例えば１気圧など）Ｐａｓｅｔおよび所定開度（例えば、上述の基本開度ＴＨｔｍｐなど）ＴＨｓｅｔにおける最大傾き値ΔＶａｆｍａｘとして正規化（変換）することによって行なうものとした。図１４は、大気圧Ｐａと最大傾き値ΔＶａｆｍａｘとの関係を示す関係ラインの一例を示す説明図であり、図１５は、スロットル開度ＴＨと最大傾き値ΔＶａｆｍａｘとの関係を示す関係ラインの一例を示す説明図である。以下、大気圧Ｐａと最大傾き値ΔＶａｆｍａｘとの関係ラインにおける、大気圧Ｐａに対応する最大傾き値を「ΔＶａｆｍａｘｆ［Ｐａ］」として表わし、スロットル開度ＴＨと最大傾き値ΔＶａｆｍａｘとの関係ラインにおける、スロットル開度ＴＨに対応する最大傾き値を「ΔＶａｆｍａｘｆ［ＴＨ］」として表わす。図１４および図１５の関係ラインは、図７の関係ラインと同様に求めることができる。図１４や図１５から分かるように、空燃比センサ１３５ａは、大気圧Ｐａやスロットル開度ＴＨに応じて最大傾き値ΔＶａｆｍａｘが異なる特性、具体的には、大気圧Ｐａが小さいほど小さくなりスロットル開度ＴＨが小さいほど小さくなる特性を有している。これを踏まえて、この変形例では、図１４の関係ラインにおける所定気圧Ｐａｓｅｔに対応する最大傾き値ΔＶａｆｍａｘｆ［Ｐａｓｅｔ］を大気圧Ｐａに対応する最大傾き値ΔＶａｆｍａｘｆ［Ｐａ］を除してられる補正係数Ｋｐａと、図１５の関係ラインにおける所定開度ＴＨｓｅｔに対応する最大傾き値ΔＶａｆｍａｘｆ［ＴＨｓｅｔ］をスロットル開度ＴＨに対応する最大傾き値ΔＶａｆｍａｘｆ［ＴＨ］で除して得られる補正係数Ｋｔｈと、を最大傾き値ΔＶａｆｍａｘに乗じて正規化後最大傾き値ΔＶａｆｍａｘｍｏを計算するものとした。こうした処理により、実施例と同様に、データ（正規化後最大傾き値ΔＶａｆｍａｘｍｏ）を利用しやすくすることができる。
【００５９】
実施例のハイブリッド自動車２０では、エンジン２２のクランキング時における最大傾き値ΔＶａｆｍａｘを正規化して正規化後最大傾き値ΔＶａｆｍａｘｎｏを設定すると共に設定した正規化後最大傾き値ΔＶａｆｍａｘｎｏを用いて空燃比センサ１３５ａの応答性の学習値ΔＶａｆｍａｘｌｖを計算するとしたが、最大傾き値ΔＶａｆｍａｘを正規化せずに、例えば、開始時電圧Ｖａｆ０と最大傾き値ΔＶａｆｍａｘとを関連づけて学習値ΔＶａｆｍａｘｌｖ［Ｖａｆ０］として設定するなどしてもよい。
【００６０】
実施例のハイブリッド自動車２０では、正規化後最大傾き値ΔＶａｆｍａｘｍｏと空燃比センサ１３５ａの応答性の前回の学習値（前回ΔＶａｆｍａｘｌｖ）と反映係数ｋｖとを用いて上述の式（３）により学習値ΔＶａｆｍａｘｌｖを計算するものとしたが、正規化後最大傾き値ΔＶａｆｍａｘｍｏをそのまま学習値ΔＶａｆｍａｘｌｖに設定するものとしてもよい。
【００６１】
実施例のハイブリッド自動車２０では、空燃比センサ１３５ａの応答性の学習値ΔＶａｆｍａｘｌｖを、空燃比フィードバック制御の開始タイミングの設定に用いるものとしたが、これに加えてまたは代えて、例えば、空燃比フィードバック補正量ΔＱｆの設定（例えば、式（１）における比例項のゲインｋ１や積分項のゲインｋ２，比例項や積分項の制限に用いる制限値の設定など）などに用いるものとしてもよい。
【００６２】
実施例のハイブリッド自動車２０では、目標燃料噴射量Ｑｆ＊の設定に用いる空燃比フィードバック補正量ΔＱｆは、空燃比センサ１３５ａの出力電圧Ｖａｆに対応する空燃比である検出空燃比ＡＦｄｅｔと目標空燃比ＡＦ＊とを用いて上述の式（１）により計算するものとしたが、次式（４）に示すように、式（１）における積分項を制限値ΔＱｆｌｉｍ，−ΔＱｆｌｉｍで制限して計算するものとしてもよい。この場合、制限値ΔＱｆｌｉｍは、空燃比センサ１３５ａの応答性の学習値ΔＶａｆｍａｘｌｖと制限値ΔＱｆｌｉｍとの関係を予め定めた図１６に例示する積分項制限値設定用マップに学習値ΔＶａｆｍａｘｌｖを適用して設定するものとしてもよい。図１６の例では、制限値ΔＱｆｌｉｍは、学習値ΔＶａｆｍａｘｌｖが小さいほど小さくなる傾向に設定するものとした。空燃比センサ１３５ａの応答性が低いときには、応答性が高いときに比して検出空燃比ＡＦｄｅｔが目標空燃比ＡＦ＊に対して乖離しやすく、式（１）における積分項の大きさひいては空燃比フィードバック補正量ΔＱｆの大きさが大きくなりやすいと考えられるが、学習値ΔＶａｆｍａｘｌｖが小さいほど小さくなる傾向に設定した制限値ΔＱｆｌｉｍを用いて式（１）における積分項を制限して空燃比フィードバック補正量ΔＱｆの設定に用いることにより、式（１）における積分項の大きさひいては空燃比フィードバック補正量ΔＱｆの大きさが過剰に大きくなるのを抑制することができる。
【００６３】
ΔQf=k1・(AF*-AF)+max(min(k2・∫(AF*-AF)dt,ΔQflim),-ΔQflim)   (4)
【００６４】
実施例のハイブリッド自動車２０では、モータＭＧ２からの動力を駆動軸３６に出力するものとしたが、図１７の変形例のハイブリッド自動車１２０に例示するように、モータＭＧ２からの動力を駆動軸３６が接続された車軸（駆動輪３８ａ，３８ｂが接続された車軸）とは異なる車軸（図１７における車輪３９ａ，３９ｂに接続された車軸）に接続するものとしてもよい。
【００６５】
実施例のハイブリッド自動車２０では、エンジン２２からの動力をプラネタリギヤ３０を介して駆動輪３８ａ，３８ｂに接続された駆動軸３６に出力するものとしたが、図１８の変形例のハイブリッド自動車２２０に例示するように、エンジン２２のクランクシャフトに接続されたインナーロータ２３２と駆動輪３８ａ，３８ｂに動力を出力する駆動軸３６に接続されたアウターロータ２３４とを有しエンジン２２からの動力の一部を駆動軸３６に伝達すると共に残余の動力を電力に変換する対ロータ電動機２３０を備えるものとしてもよい。
【００６６】
実施例のハイブリッド自動車２０では、エンジン２２からの動力をプラネタリギヤ３０を介して駆動輪３８ａ，３８ｂに接続された駆動軸３６に出力すると共にモータＭＧ２からの動力を駆動軸３６に出力するものとしたが、図１９の変形例のハイブリッド自動車３２０に例示するように、駆動輪３８ａ，３８ｂに接続された駆動軸３６に変速機３３０を介してモータＭＧを取り付けると共にモータＭＧの回転軸にクラッチ３２９を介してエンジン２２を接続する構成とし、エンジン２２からの動力をモータＭＧの回転軸と変速機３３０とを介して駆動軸３６に出力すると共にモータＭＧからの動力を変速機３３０を介して駆動軸に出力するものとしてもよい。あるいは、図２０の変形例のハイブリッド自動車４２０に例示するように、エンジン２２からの動力を変速機４３０を介して駆動輪３８ａ，３８ｂに接続された駆動軸３６に出力すると共にモータＭＧからの動力を駆動輪３８ａ，３８ｂが接続された車軸とは異なる車軸（図２０における車輪３９ａ，３９ｂに接続された車軸）に出力するものとしてもよい。即ち、エンジンと走行用の動力を入出力する電動機とを備えるものであれば如何なるタイプのハイブリッド自動車としてもよいのである。
【００６７】
実施例の主要な要素と課題を解決するための手段の欄に記載した発明の主要な要素との対応関係について説明する。実施例では、エンジン２２が「エンジン」に相当し、モータＭＧ１が「モータ」に相当し、バッテリ５０が「バッテリ」に相当し、エンジン２２のクランキング時における空燃比センサ１３５ａの出力電圧Ｖａｆの傾き値ΔＶａｆに基づく最大傾き値ΔＶａｆｍａｘを用いて空燃比センサ１３５ａの応答性の学習値ΔＶａｆｍａｘｌｖを計算する図６の空燃比センサ応答性学習ルーチンを実行するエンジンＥＣＵ２４が「制御装置」に相当する。
【００６８】
ここで、「エンジン」としては、ガソリンや軽油などを燃料として動力を出力するエンジン２２に限定されるものではなく、水素エンジンなど、如何なるタイプのエンジンであっても構わない。「モータ」としては、同期発電電動機として構成されたモータＭＧ１に限定されるものではなく、誘導電動機など、エンジンをクランキング可能なものであれば如何なるタイプのモータであっても構わない。「バッテリ」としては、リチウムイオン二次電池として構成されたバッテリ５０に限定されるものではなく、ニッケル水素二次電池やニッケルカドミウム二次電池，鉛蓄電池など、モータと電力のやりとりが可能なものであれば如何なるタイプのバッテリであっても構わない。「制御装置」としては、エンジン２２のクランキング時における空燃比センサ１３５ａの出力電圧Ｖａｆの傾き値ΔＶａｆに基づく最大傾き値ΔＶａｆｍａｘを用いて空燃比センサ１３５ａの応答性の学習値ΔＶａｆｍａｘｌｖを計算するものに限定されるものではなく、モータによるエンジンのクランキング時における空燃比センサの出力値の傾きを用いて空燃比センサの応答性の学習を行なうものであれば如何なるものとしても構わない。
【００６９】
なお、実施例の主要な要素と課題を解決するための手段の欄に記載した発明の主要な要素との対応関係は、実施例が課題を解決するための手段の欄に記載した発明を実施するための形態を具体的に説明するための一例であることから、課題を解決するための手段の欄に記載した発明の要素を限定するものではない。即ち、課題を解決するための手段の欄に記載した発明についての解釈はその欄の記載に基づいて行なわれるべきものであり、実施例は課題を解決するための手段の欄に記載した発明の具体的な一例に過ぎないものである。
【００７０】
以上、本発明を実施するための形態について実施例を用いて説明したが、本発明はこうした実施例に何等限定されるものではなく、本発明の要旨を逸脱しない範囲内において、種々なる形態で実施し得ることは勿論である。
【産業上の利用可能性】
【００７１】
本発明は、ハイブリッド自動車の制御装置の製造産業などに利用可能である。
【符号の説明】
【００７２】
２０，１２０，２２０，３２０，４２０  ハイブリッド自動車、２２  エンジン、２４  エンジン用電子制御ユニット（エンジンＥＣＵ）、２６  クランクシャフト、３０  プラネタリギヤ、３６  駆動軸、３７  デファレンシャルギヤ、３８ａ，３８ｂ  駆動輪、３９ａ，３９ｂ  車輪、４０  モータ用電子制御ユニット（モータＥＣＵ）、４１，４２  インバータ、４３，４４  回転位置検出センサ、５０  バッテリ、５１  温度センサ、５２  バッテリ用電子制御ユニット（バッテリＥＣＵ）、７０  ハイブリッド用電子制御ユニット（ＨＶＥＣＵ）、７２  ＣＰＵ、７４  ＲＯＭ、７６  ＲＡＭ、８０  パワースイッチ、８１  シフトレバー、８２  シフトポジションセンサ、８３  アクセルペダル、８４  アクセルペダルポジションセンサ、８５  ブレーキペダル、８６  ブレーキペダルポジションセンサ、８８  車速センサ、８９  大気圧センサ、１２２  エアクリーナ、１２４  スロットルバルブ、１２６  燃料噴射弁、１２８  吸気バルブ、１３０  点火プラグ、１３２  ピストン、１３４  浄化装置、１３４ａ  浄化触媒、１３４ｂ  温度センサ、１３５ａ  空燃比センサ、１３５ｂ  酸素センサ、１３６，スロットルモータ、１３８  イグニッションコイル、１４０  クランクポジションセンサ、１４２  水温センサ、１４３  圧力センサ、１４４  カムポジションセンサ、１４６  スロットルバルブポジションセンサ、１４８  エアフローメータ、１４９  温度センサ、１５０  可変バルブタイミング機構、２３０  対ロータ電動機、２３２  インナーロータ、２３４  アウターロータ、３２９  クラッチ、３３０，４３０  変速機、ＭＧ，ＭＧ１，ＭＧ２  モータ。
【図１】
0005459333.tif 000002
【図２】
0005459333.tif 000003
【図３】
0005459333.tif 000004
【図４】
0005459333.tif 000005
【図５】
0005459333.tif 000006
【図６】
0005459333.tif 000007
【図７】
0005459333.tif 000008
【図８】
0005459333.tif 000009
【図９】
0005459333.tif 000010
【図１０】
0005459333.tif 000011
【図１１】
0005459333.tif 000012
【図１２】
0005459333.tif 000013
【図１３】
0005459333.tif 000014
【図１４】
0005459333.tif 000015
【図１５】
0005459333.tif 000016
【図１６】
0005459333.tif 000017
【図１７】
0005459333.tif 000018
【図１８】
0005459333.tif 000019
【図１９】
0005459333.tif 000020
【図２０】
0005459333.tif 000021