(57)【要約】【課題】いかなるエンジン始動状態においても、円滑なエンジン始動を可能にする内燃機関の制御装置を提供すること。【解決手段】吸気弁および排気弁の少なくとも一方の開閉時期およびリフト量の少なくとも一方を可変に制御する可変動弁機構と、圧縮比を可変に制御する可変圧縮比機構とを有する内燃機関の制御装置であって、前記内燃機関に対する停止要求を検出する内燃機関の停止要求検出手段と、前記停止要求検出手段によって前記内燃機関に対する停止要求が検出されたとき、前記内燃機関の可変動弁機構および可変圧縮比機構を始動時の状態へと制御する内燃機関可変部制御手段と、を備える【選択図】図１
2005127239.tif 000002
【特許請求の範囲】
【請求項１】
吸気弁および排気弁の少なくとも一方の開閉時期およびリフト量の少なくとも一方を可変に制御する可変動弁機構と、圧縮比を可変に制御する可変圧縮比機構とを有する内燃機関の制御装置であって、
前記内燃機関に対する停止要求を検出する内燃機関の停止要求検出手段と、
前記停止要求検出手段によって前記内燃機関に対する停止要求が検出されたとき、前記内燃機関の可変動弁機構および可変圧縮比機構を始動時の状態へと制御する内燃機関可変部制御手段と、
を備える内燃機関の制御装置。
【請求項２】
前記内燃機関が正常な停止状態ではないことを検出する異常停止検出手段をさらに備え、内燃機関の始動時において前記異常停止検出手段が前記内燃機関の正常な停止状態ではないことを検出したとき、前記内燃機関可変部制御手段が前記内燃機関の可変動弁機構および可変圧縮比機構を始動時の状態へと制御する、請求項１記載の内燃機関の制御装置。
【請求項３】
前記可変圧縮比機構および可変動弁機構の始動時の状態は、スタータ負荷を低減する状態である請求項１または２に記載の内燃機関の制御装置。
【請求項４】
前記内燃機関の始動時において前記内燃機関の回転数が所定の回転数を超えたとき、前記可変動弁機構および可変圧縮比機構の少なくとも一方を始動に適した状態へと制御する、請求項３記載の内燃機関の制御装置。
【請求項５】
吸気弁および排気弁の少なくとも一方の開閉時期およびリフト量の少なくとも一方を可変に制御する可変動弁機構と、圧縮比を可変に制御する可変圧縮比機構とを有する内燃機関の制御装置であって、
前記内燃機関に対する始動要求を検出する内燃機関の始動要求検出手段と、
前記始動要求検出手段によって前記内燃機関に対する始動要求が検出されたときであって、前記内燃機関の可変圧縮比機構および可変動弁機構の少なくとも一方が始動時の状態でないとき、圧縮比を低下させるように可変圧縮比機構を制御する可変部制御手段と、
前記内燃機関の圧縮比が所定の圧縮比より低くなるまで内燃機関の始動を禁止する始動制御手段と、
を備える内燃機関の制御装置。
【請求項６】
吸気弁および排気弁の少なくとも一方の開閉時期およびリフト量の少なくとも一方を可変に制御する可変動弁機構と、圧縮比を可変に制御する可変圧縮比機構とを有する内燃機関の制御装置であって、
前記内燃機関に対する始動要求を検出する内燃機関の始動要求検出手段と、
前記始動要求検出手段によって前記内燃機関に対する始動要求が検出されたときであって、前記内燃機関の可変動弁機構および可変圧縮比機構の少なくとも一方が始動時の状態でないとき、吸気弁および排気弁の少なくとも一方のリフト量を始動時のリフト量へと制御する可変部制御手段と、
前記吸気弁および排気弁の少なくとも一方のリフト量が始動時のリフト量になるまで内燃機関の始動を禁止する始動制御手段と、
を備える内燃機関の制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、自在動弁機構および可変圧縮比機構を備えた内燃機関の停止動作時および始動時における制御方法に関する。
【背景技術】
【０００２】
自動車に搭載される内燃機関の効率的な運転状態を得るために、自在動弁機構および可変圧縮比機構を有する内燃機関が公開されている。自在動弁機構とは、油圧制御などによりバルブリフト中心角（クランクシャフトに対する位相）を進角または遅角へと制御することができ、さらにバルブリフト量の高低を制御することができる機構である。可変圧縮比機構とは、ピストンとクランクとを連結する複数のリンクの相対位置をアクチュエータによって移動制御してピストンの基本位置を移動させ、上死点および下死点位置を変えることにより圧縮比を変化させる機構である。
【０００３】
このような内燃機関では、これら可変部をエンジン回転数などの運転条件に適した状態へと制御することで、あらゆる運転条件に対して連続的に最適な運転状態を実現する。
【０００４】
たとえば特許文献１では、エンジン始動時のクランキング開始時において圧縮比を高圧縮比へと可変制御し、さらにリフト量を低リフト量へと可変制御してエンジン始動時の燃焼安定性を改善し、始動性を向上させる技術が開示されている。
【０００５】
一方、特許文献２では、可変圧縮比機構を有するエンジンにおいて、燃焼室表面積対燃焼室体積比を増大させないエンジン構成が開示されている。
【特許文献１】特開２００２−２７６４４６号公報
【特許文献２】特開２００２−２２１０１４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら特許文献１における開示技術では、クランキングを開始してから、バルブリフト量、バルブリフト中心角、および圧縮比をエンジン始動に適切な値へと制御する。よって、始動時においては、クランキングを開始させるものの、これらの制御が完了するまで実質的には燃料噴射、点火開始によるエンジン始動を遅らせなければならない。よって、イグニッションスイッチをオンにしてから、実際のエンジン始動までに時間を要することとなることから、より短時間のクランキングにてエンジンを始動できる手法が望まれていた。
【０００７】
また、前回のエンジン停止がエンスト等の異常停止によるものである場合、バルブリフト量、バルブリフト中心角、および圧縮比の相互の関係が所定の状態から外れ、不定状態になり、始動時に不具合が生ずるおそれがある。よって、いかなるエンジン停止状態であっても次回のエンジン始動時において不具合を生ずることなく確実にエンジン始動できる方法が望まれていた。
【０００８】
従って、本発明は、いかなるエンジン停止状態であっても、より短時間のクランキングにてエンジン始動を可能にする内燃機関の制御装置を提供することを目的とする。
【課題を解決するための手段】
【０００９】
本発明の内燃機関の制御装置は、発明の一形態（請求項１）によると、吸気弁および排気弁の少なくとも一方の開閉時期およびリフト量の少なくとも一方を可変に制御する可変動弁機構と、圧縮比を可変に制御する可変圧縮比機構とを有する内燃機関の制御装置であって、前記内燃機関に対する停止要求を検出する内燃機関の停止要求検出手段と、前記停止要求検出手段によって前記内燃機関に対する停止要求が検出されたとき、前記内燃機関の可変動弁機構および可変圧縮比機構を始動時の状態へと制御する内燃機関可変部制御手段と、を備える。この発明によると、エンジンの停止要求が検出されエンジンを停止させるとき、エンジンの可変部を始動に適した始動時の状態へと制御することができる。よって、次回のエンジン始動動作時において、各可変部の移動制御を行うことなく短時間のクランキングにてエンジンの始動をすることができる。
【００１０】
また、この発明のもう一つの形態（請求項２）による内燃機関の制御装置において、前記内燃機関が正常な停止状態ではないことを検出する異常停止検出手段をさらに備え、内燃機関の始動時において前記異常停止検出手段が前記内燃機関の正常な停止状態ではないことを検出したとき、前記内燃機関可変部制御手段が前記内燃機関の可変動弁機構および可変圧縮比機構を始動時の状態へと制御する。ここで、正常な停止状態ではないとは、前回のエンジン停止がエンジンストールによるもの、または前回のエンジン停止が正常なエンジン停止であったものの次回の始動時までに車両の牽引やエンジン整備によってエンジン可変部が不定状態となることをいう。この発明によると、前回のエンジン停止がエンジンストールなどによる停止の場合であっても、正常な停止状態ではないことを検出し、次回始動時において可変動弁機構または可変圧縮比機構をエンジン始動時の状態へと制御することができる。よって、エンジン不具合を防止しつつエンジンを始動させることができる。
【００１１】
また、この発明のもう一つの形態（請求項３）による内燃機関の制御装置において、前記可変圧縮比機構および可変動弁機構の始動時の状態は、スタータ負荷を低減する状態である。この発明によると、スタータ負荷が少なくなるようにエンジンの各可変部を制御するため、クランキング初期においてクランキング回転数を上げることができ、始動時における燃料噴射後の着火性を向上させ、エミッション低減および低温時の始動性を改善することができる。
【００１２】
また、この発明のもう一つの形態（請求項４）による内燃機関の制御装置において、前記内燃機関の始動時において前記内燃機関の回転数が所定の回転数を超えたとき、前記可変動弁機構および可変圧縮比機構の少なくとも一方を始動に適した状態へと制御する。この発明によると、クランキング回転数を上昇させた後、吸気の流入速度が早くなる遅角側へとバルブリフト中心角を制御、または圧縮比を高く制御することができるため、始動時における燃料噴射後の着火性を向上させ、さらなる始動性向上と始動時のエミッション低減を図ることができる。
【００１３】
また、この発明の一形態（請求項５）によると、吸気弁および排気弁の少なくとも一方の開閉時期およびリフト量の少なくとも一方を可変に制御する可変動弁機構と、圧縮比を可変に制御する可変圧縮比機構とを有する内燃機関の制御装置であって、前記内燃機関に対する始動要求を検出する内燃機関の始動要求検出手段と、前記始動要求検出手段によって前記内燃機関に対する始動要求が検出されたときであって、前記内燃機関の可変圧縮比機構および可変動弁機構の少なくとも一方が始動時の状態でないとき、圧縮比を低下させるように可変圧縮比機構を制御する可変部制御手段と、前記内燃機関の圧縮比が所定の圧縮比より低くなるまで内燃機関の始動を禁止する始動制御手段と、を備える。この発明によると、運転者によって始動が要求されたときであって可変部が始動時の状態でないときは、所定の圧縮比より低くなるまで始動を禁止するので、バルブとピストンとの接触等によるエンジン不具合を防止することができる。
【００１４】
また、この発明の一形態（請求項６）によると、吸気弁および排気弁の少なくとも一方の開閉時期およびリフト量の少なくとも一方を可変に制御する可変動弁機構と、圧縮比を可変に制御する可変圧縮比機構とを有する内燃機関の制御装置であって、前記内燃機関に対する始動要求を検出する内燃機関の始動要求検出手段と、前記始動要求検出手段によって前記内燃機関に対する始動要求が検出されたときであって、前記内燃機関の可変動弁機構および可変圧縮比機構の少なくとも一方が始動時の状態でないとき、吸気弁および排気弁の少なくとも一方のリフト量を始動時のリフト量へと制御する可変部制御手段と、前記吸気弁および排気弁の少なくとも一方のリフト量が始動時のリフト量になるまで内燃機関の始動を禁止する始動制御手段と、を備える。この発明によると、運転者によって始動が要求されたときであって可変部で始動時の状態にないときは、吸排気弁のリフト量が始動時のリフト量になるまで始動を禁止するので、バルブとピストンとの接触等によるエンジン不具合を防止することができる。
【発明を実施するための最良の形態】
【００１５】
１．機能ブロックの説明
図１を参照しつつ各機能ブロックについて説明する。図１は、この発明の概念を説明するための全体的な構成を示すブロック図である。
【００１６】
入力インタフェース101は、電子制御ユニット（ＥＣＵ）100とエンジン系統の各部とのインタフェース部であり、エンジン系統の様々な箇所から送られてくる車両の運転状態を示す情報を受け取って信号処理を行い、アナログ情報はデジタル信号に変換し、これらを始動要求検出部102、エンジン可変部制御部103、および異常停止検出部104に渡す。図１では、エンジン回転数NE、現在バルブリフト量、現在バルブリフト中心角、および現在圧縮比が示されているが、これらに限定されるものではなく、その他種々の情報が入力される。
【００１７】
ＥＣＵ100は、車の運転状態に応じたエンジンの空燃比制御を行うほか種々の制御を行う。ここでは説明の便宜上、始動要求検出部102、エンジン可変部制御部103、および異常停止検出部104の機能を示している。ＥＣＵ100は、演算を実行するプロセッサ、各種データを一時記憶する記憶領域およびプロセッサによる演算の作業領域を提供するランダム・アクセス・メモリ（ＲＡＭ）、プロセッサが実行するプログラムおよび演算に使用する各種のデータが予め格納されている読み出し専用メモリ（ＲＯＭ）、およびプロセッサによる演算の結果およびエンジン系統の各部から得られたデータのうち保存しておくものを格納する書き換え可能な不揮発性メモリを備えている。不揮発性メモリは、システム停止後も常時電圧供給されるバックアップ機能付きＲＡＭで実現することができる。
【００１８】
始動要求検出部102は、イグニッションスイッチからの信号IGSWを、入力インタフェース101を介して取得し、運転者の操作によってエンジンの始動および停止が指示されたか否かを検出する始動要求検出機能および停止要求検出機能を有する。
【００１９】
エンジン可変部制御部103は、エンジン始動時、運転時、および停止時にわたってバルブリフト量、バルブリフト中心角、および圧縮比を制御するように、後述するリフト中心角制御用ソレノイド制御部106、バルブリフト量制御用ソレノイド制御部107、および圧縮比制御用アクチュエータ制御部108に対して所定の指令を送出する機能を有する。また、入力インタフェース101を介して、現在バルブリフト中心角、現在バルブリフト量、および現在圧縮比などを受信し、それぞれの目標値と基準値とを比較し、その結果に応じて分岐判断などを行う機能を有する。また、後述するプロセスにおいて、所定の条件においてエンジンの始動を一時的に禁止する始動制御機能も包含する。尚、後述のプロセスにおける実行ステップは１０ｍｓのタイミングで実行される。
【００２０】
異常停止検出部104は、入力インタフェース101を介してエンジン回転数NEを受信し、エンジン回転数NEがストール判定回転数NE_stを超えているか否かを判定することによって、エンジンの異常停止を検出する機能を有する。さらに、その検出結果に応じて、エンジンストールフラグENGSTALLのセットまたはリセットを行う機能を有する。
【００２１】
出力インタフェース105は、エンジン可変部制御部103からの各種信号を後述するリフト中心角制御用ソレノイド制御部106、バルブリフト量制御用ソレノイド制御部107、および圧縮比制御用アクチュエータ制御部108へと出力する機能を有する。しかしながらこれに限定するものではなく出力インタフェース105には、他のコントローラ等を接続することもできる。
【００２２】
本明細書中のエンジンは、各可変機構によってバルブリフト中心角、バルブリフト量、および圧縮比を変化させることができる。ここでは、吸気カムシャフトに連結したベーンを、ハウジング内において油圧で回転させることにより、バルブリフト中心角を進角または遅角させる機構が搭載されている。また、ロッカーアームと揺動カムとを連結するリンクの位置を相対的に変位させることによって、バルブリフト量を変化させる機構が搭載されている。さらに、電磁式アクチュエータによって、ピストンとクランクシャフトとの間に連結される複数のリンクの位置を相対的に変位させることによってピストンの上死点および下死点を移動させ、圧縮比を変化させる機構が搭載されている。これらは、以下に説明するリフト中心角制御用ソレノイド制御部106、バルブリフト量制御用ソレノイド制御部107、および圧縮比制御用アクチュエータ制御部108によって制御され、連続的に各可変部の位置が移動される。
【００２３】
また、現在のバルブリフト量、バルブリフト中心角、および圧縮比は、各部のセンサなどにより検知され、各可変部の制御用に現在バルブリフト量、現在バルブリフト中心角、および現在圧縮比として入力インタフェース101へとフィードバックされる。
【００２４】
リフト中心角制御用ソレノイド制御部106は、エンジン可変部制御部103からの指令により、バルブの中心角を進角または遅角へと油圧制御させるべくソレノイドを制御する機能を有する。バルブリフト量制御用ソレノイド制御部107は、エンジン可変部制御部103からの指令により、バルブのリフト量を油圧制御させるべくソレノイドを制御する機能を有する。圧縮比制御用アクチュエータ制御部108は、エンジン可変部制御部103からの指令により、圧縮比を変化させるべく電磁アクチュエータを制御する機能を有する。
【実施例１】
【００２５】
２．１．本発明によるエンジンの始動時および停止時における動作プロセス
２．１．１．前回エンジン停止が正常な停止であるときのエンジン制御プロセス
図２および図４を参照しつつ、前回のエンジンの停止時において正常にエンジン停止し、エンジンの各可変部が始動に適した位置へと移動済みであるときのエンジン制御プロセスを説明する。ここで本実施形態における、始動に適した各可変部の位置とは、バルブリフト量が低いバルブリフト量（Lift_start）へと設定され、圧縮比が高めの圧縮比（Cr_start）へと設定された状態をいう。
【００２６】
最初にメインプログラムから本エンジン制御プロセスが呼び出されると、エンジン可変部制御部103は、始動要求検出部102に要求して、入力インタフェース101を介してスタータスイッチからの信号を受信させ、スタータスイッチがオンであるか否かを判定させる（S201）。始動要求検出部102は、スタータスイッチがオンであるか否かを判定し、この判定結果をエンジン可変部制御部103に通知する。スタータスイッチがオンでない場合、エンジン可変部制御部103は、後述する通常運転モード＆停止動作モードを実行する（S250）。
【００２７】
一方、スタータスイッチがオンであるとき、エンジン始動待機フラグF_ENGSTBYに待機中以外であることを示す０をセットする（S202）。そして次に、エンジン可変部制御部103は、前回のエンジン停止が正常なエンジン停止であったか否かを、メモリ中のエンジンストールフラグF_ENGSTALLを参照して判定する（S203）。エンジンストールフラグF_ENGSTALLは、整備や牽引などの理由によりエンジンの状態がエンジンが停止している間に不定となる場合、または前回のエンジン停止がエンジンストールなどによる異常停止である場合に、後述するようにこれを検知する異常停止検出部104によって１にセットされ、メモリに保持されている。本実施例では、前回のエンジン停止が正常なエンジン停止の場合であるので、エンジンストールフラグF_ENGSTALLは０にセットされており、エンジン可変部制御部103は、プロセスをS220へと進める。
【００２８】
次に、エンジン可変部制御部103は、バルブリフト量Liftinが始動バルブリフト量Liftin_startへ、圧縮比Crが始動圧縮比Cr_stratへ、バルブリフト中心角Cainが始動バルブリフト中心角Cain_startへと、それぞれ可変部の移動を完了しているか否かを判定する（S220）。ここで、始動バルブリフト量Liftin_startは、本実施形態におけるエンジン始動用の低いバルブリフト量である。ここでは、始動バルブリフト量Liftin_startは、０．５ｍｍに設定される。始動圧縮比Cr_startは、本実施形態におけるエンジン始動用の圧縮比であり、ここでは圧縮比１１．０と高く設定される。始動バルブリフト中心角Cain_startは、本実施形態におけるエンジン始動用のバルブリフト中心角である。ここでは、ＴＤＣ（上死点）後１０度からリフトを開始するバルブリフト中心角に設定される。
【００２９】
次に、エンジン可変部制御部103は、入力インタフェースを介して、現在バルブリフト量、現在バルブリフト中心角、および現在圧縮比を取得し、これらとバルブリフト量目標値Liftin_cmd（ここではLiftin_start）、リフト中心角目標値Cain_cmd（ここではCain_start）、および圧縮比目標値Cr_cmd（ここではCr_start）をそれぞれ比較して、目標値へと移動を完了しているか否かを判定する。
【００３０】
本実施形態では、前回のエンジン停止が正常なエンジン停止であるから、図４に示すように、バルブリフト量Liftin、圧縮比Cr、およびバルブリフト中心角Cainは、前回のエンジン停止時に既に上記の始動用の値へと移動済みである。よって、エンジン可変部制御部103は、プロセスをS221へと進める。このように、バルブリフト量Liftin、圧縮比Cr、およびバルブリフト中心角Cainがエンジン始動時に始動用の所定位置にあるとき、エンジン始動が可能な状態であるので、クランキング条件成立フラグF_CRKOKを１に設定する（S221）。クランキング条件成立フラグF_CRKOKを１に設定すると、エンジン可変部制御部103は、入力インタフェース101を介してエンジン回転数NEを取得し、エンジン回転数NEが所定のクランキング回転数NE_crkoffより高いか否かを判定する（S222）。ここではまだ、クランキングを開始しておらず回転数が所定回転数より高くないため、始動を完了していないとしてスタータをオン（クランキングを開始）にする（S223）。
【００３１】
次に、エンジン可変部制御部103は、バルブリフト量目標値Liftin_cmdに始動バルブリフト量Liftin_startを設定する（S224）。ここで、バルブリフト目標値Liftin_cmdは、バルブリフト量制御の目標値であって、これに値が設定されるとこの値へと追従するように、エンジン可変部制御部103からバルブリフト量制御用ソレノイド制御部107へ所定の信号が送出される。そしてバルブリフト量制御用ソレノイド制御部107は、その目標値に追従してバルブリフト量を変化させるように、バルブリフト量制御用ソレノイドの開閉を行う。ここでは、バルブリフト量目標値Liftin_cmdに始動バルブリフト量Liftin_startが設定されるが、前段階において既にバルブリフト量Liftinは始動バルブリフト量Liftin_startの位置への移動を完了しているため、その位置が保持される。
【００３２】
次に、エンジン可変部制御部103は、リフト中心角目標値Cain_cmdに始動バルブリフト中心角Cain_startを設定する（S230）。ここで、リフト中心角目標値Cain_cmdは、バルブリフト中心角の制御の目標値であって、値が設定されるとエンジン可変部制御部103からリフト中心角制御用ソレノイド制御部106へ所定の信号が送出される。そしてリフト中心角制御用ソレノイド制御部106は、その目標値に追従してバルブリフト中心角を変化させるようにバルブ位相制御用ソレノイドの開閉を行う。ここでも、リフト中心角目標値Cain_cmdに始動バルブリフト中心角Cain_startが設定されるが、前段階において既にバルブリフト中心角Cainは始動用バルブリフト中心角Cain_startの位相位置へと移動を完了しているため、その位置が保持される。
【００３３】
このようにして、S231およびS232において、バルブリフト量およびバルブリフト中心角が制御される。
【００３４】
次に、エンジン可変部制御部103は、バルブリフト量Lintinおよびバルブリフト中心角Cainがそれぞれの目標値に移動を完了しているか否かを判定する（S233）。ここでは前述の通り、既にそれぞれの目標値である始動バルブリフト量Liftin_startおよび始動バルブリフト中心角Cain_startへの移動を完了しているため、エンジン可変部制御部103は、プロセスをS235へと進め、圧縮比目標値Cr_cmdに始動圧縮比Cr_startを設定する。圧縮比目標値Cr_cmdに始動圧縮比Cr_startを設定すると、圧縮比Crが始動圧縮比Cr_startになるように、エンジン可変部制御部103は、圧縮比制御用アクチュエータ制御部108へと所定の信号を送出する。そして、圧縮比制御用アクチュエータ制御部106は、この目標値に追従して圧縮比を変化させるように電磁アクチュエータを制御する（S236）。ここでは、前述の通り、既に圧縮比Crは始動圧縮比Cr_startになるピストン位置へと移動を完了しているため、その位置が保持される。
【００３５】
エンジン可変部制御部103は、圧縮比Crが始動圧縮比Cr_startになるようにピストンの移動を完了しているか否かを判定する。ここでは前述の通り、圧縮比Crが始動圧縮比Cr_startになる位置へとピストンの移動を完了している。よって、各可変部が始動用の所定位置への移動を完了したので、エンジン始動が可能となり、エンジン可変部制御部103は燃料噴射量Toutを算出して燃料噴射を制御する（S245）。そして、エンジン可変部制御部103は、点火時期IGLOGを算出して、点火時期を制御する（S246）。そして、本プロセスを終了する。
【００３６】
このように、クランキングが開始され、燃料噴射および点火が行われるとエンジンは始動を開始する。次にメインプログラムにより再びこのエンジン制御プロセスが呼び出されると、上述と同様にプロセスはS201からS221を経てS222へと進む。S222において、エンジンは完爆し始動を開始しており、エンジン回転数NEはクランキング停止判定回転数NE_crkoffよりも高い。よって、エンジン可変部制御部103は、後述する通常運転モード＆停止動作モードへと進め（S250）、エンジンの運転を継続する。
【００３７】
２．１．２．前回に異常停止したときのエンジン制御プロセス
次に、図２および図５を参照しつつ、前回にエンジンが停止した際、または停止後の車両の牽引などによって、エンジンのバルブリフト量、バルブリフト中心角、および圧縮比が不定になっているときのエンジン制御プロセスについて説明する。エンジンストールなどによりエンジンが停止すると、後述するように、異常停止検出部104によって、エンジンストールフラグF_ENGSTALLが１に設定されている。
【００３８】
本実施例では、例えば図５示すように実際のバルブリフト量Liftinが始動バルブリフト量Liftin_startよりも高くなる位置へと移動し、バルブリフト中心角Cainが始動バルブリフト中心角よりも進角の状態へと移動し、圧縮比Crが始動圧縮比Cr_startよりも高くなるピストン位置に移動した状態でエンジン停止している場合について説明する。
【００３９】
まず、エンジンストールフラグF_ENGSTALLが１であるか否かを判定する（S203）。ここでは、前回のエンジン停止時がエンストによるものであるためエンジンストールフラグF_ENGSTALLは１に設定されており、エンジンは不定の状態である。よって、エンジン可変部制御部103は、プロセスをS204へと進める。
【００４０】
プロセスがS204へと進むと、エンジン可変部制御部103は、クランキング条件成立フラグF_CRKOKが１であるか否かを判定する。エンジンが一旦停止して初期状態になると、クランキング条件成立フラグF_CRKOKは０に設定される。よって、ここではクランキング条件成立フラグF_CRKOKは０に設定されているため、エンジン可変部制御部103はプロセスをS205へと進め、現時点においてクランキングを行わない。これは、各可変部が不定の状態であるため、エンジンの不調を引き起こす可能性があるからである。
【００４１】
エンジン可変部制御部103は、バルブリフト量目標値Liftin_cmdに始動バルブリフト量Liftin_startを設定する（S205）。そして、エンジン可変部制御部103は、圧縮比目標値Cr_cmdに圧縮比の最小値であるεminを設定する（S206）。バルブリフト量目標値Liftin_cmdおよび圧縮比目標値Cr_cmdに値を設定し、バルブリフト量制御用ソレノイド制御部107および圧縮比制御用アクチュエータ制御部108に信号を送出し、バルブリフト量および圧縮比が上記の目標値になるようにバルブリフト量およびピストン位置を移動する（S207,S208）。
【００４２】
次に、エンジン可変部制御部103は、入力インタフェースを介してバルブリフト量Liftinおよび圧縮比Crを受信し、これらが上記目標値へと移動したか否かを判定する。移動を完了しているとき、エンジン可変部制御部103はクランキング条件成立フラグF_CRKOKに１を設定する（S211）。一方、移動を完了していないとき、エンジン可変部制御部103は、クランキング条件成立フラグF_CRKOKに０を設定する（S210）。そして、エンジン可変部制御部103は、燃料噴射量Toutに０を設定して燃料噴射を停止し（S212）、さらに点火時期を制御してプラグの点火を停止する（S213）。そして、本プロセスを終了する。上述のS210においてクランキング条件成立フラグF_CRKOKを０に設定した場合、再び本エンジン制御プロセスが呼び出されると、上述と同様にS204からS213のプロセスを、バルブリフト量Liftinおよび圧縮比Crが目標値に移動を完了するまで繰り返す。
【００４３】
一方、各可変部の目標値への移動が完了し、クランキング条件成立フラグF_CRKOKに１が設定され、再び本エンジン制御プロセスが呼び出されると、エンジン可変部制御部103は、S204においてS223へと分岐する。S233以降のプロセスは正常なエンジン停止プロセスと同様であるため説明を省略する。
【００４４】
このように、前回のエンジン停止がエンジンストールであり、各可変部が不定の状態であっても、前回の異常エンジン停止を検出し、始動前に始動用の所定位置へと可変部を移動させるため、エンジン始動の不具合を防止することができる。
【００４５】
２．１．３．通常運転プロセスおよび正常停止プロセス
上述のプロセスによりエンジンが始動されると通常運転モード＆停止動作モードが実行される。ここでは、図３および図６を参照しつつ通常運転モードおよび停止動作モードのプロセスについて説明する。
【００４６】
通常の運転状態において、通常運転モード＆停止動作モードが呼び出されると、エンジン可変部制御部103は、始動要求検出部102に指令して、イグニッションスイッチからの信号を取得させ、イグニッションスイッチがオフであるか否かを判定させる（S301）。ここでは、通常運転を継続するためイグニッションスイッチはオンになっている。よって、始動要求検出部102は、エンジン可変部制御部103にその旨を通知する。そして、エンジン可変部制御部103は、プロセスをS320へと進める。次に、エンジン可変部制御部103は、異常停止検出部102に指令を送出し、エンジン回転数NEがストール判定回転数NE_st（ここでは３０ｒｐｍとする）より高いか否かを判定する。ここでは通常運転中であり、エンジン回転数NEはストール判定回転数NE_stより高いため、異常停止検出部102は、その旨をエンジン可変部制御部103に通知する。そしてエンジン可変部制御部103は、プロセスをS330へと進める。
【００４７】
次にエンジン可変部制御部103は、エンジン回転数NEを入力インタフェース101を介して取得し、バルブリフト量目標値Liftin_cmdに、このエンジン回転数NEに適したLiftinマップ値を設定する（S330）。ここで、Liftinマップ値とは、エンジン回転数によって定まるそのエンジン回転数における最適なバルブリフト量である。
【００４８】
次にエンジン可変部制御部103は、エンジン回転数NEを入力インタフェース101を介して取得し、リフト中心角目標値Cain_cmdに、このエンジン回転数NEに適したCainマップ値を設定する（S331）。ここで、Cainマップ値は、エンジン回転数によって定まるそのエンジン回転数における最適なバルブリフト中心角位置である。
【００４９】
そして、エンジン可変部制御部103は、エンジン回転数NEを入力インタフェース101を介して取得し、圧縮比目標値Cr_cmdに、このエンジン回転数NEに適したCrマップ値を設定する（S332）。ここで、Crマップ値は、エンジン回転数によって定まるそのエンジン回転数における最適な圧縮比である。
【００５０】
次にエンジン可変部制御部103は、エンジンストールフラグF_ENGSTALLを０に設定する（S333）。
【００５１】
エンジン可変部制御部103は、バルブリフト量Liftinがバルブリフト量目標値Liftin_cmdになるように、バルブリフト量制御用ソレノイド制御部に所定の信号を送出しバルブリフト量を目標値へと制御する（S334）。同様に、リフト中心角目標値Cain_cmdを設定すると、エンジン可変部制御部103は、バルブリフト中心角がリフト中心角目標値Cain_cmdになるように、リフト中心角制御用ソレノイド制御部に所定の信号を送出しバルブリフト中心角Cainをリフト中心角目標値Cain_cmdへと制御する（S335）。圧縮比Crについても同様に、圧縮比目標値Cr_cmdを設定すると、エンジン可変部制御部103は、圧縮比制御用アクチュエータ108に所定の信号を送出し、圧縮比Crを圧縮比目標値Cr_cmdへと制御する（S336）。
【００５２】
そして、エンジン可変部制御部103は、燃料噴射量Toutを算出して、燃料噴射量を制御する（S337）。次に、エンジン可変部制御部103は、点火時期IGLOGを算出し、プラグの点火時期を制御する。そして、本プロセスを終了する。
【００５３】
次にメインプログラムによって本プロセスが再び呼び出され、運転者によってイグニッションがオフにされ、エンジンの停止が要求されると、S301において、始動要求検出部102によってイグニッションオフが検出される。そして、その旨が通知されるため、エンジン可変部制御部104は、プロセスS301においてプロセスはS302へと分岐させる。S302へと分岐すると、エンジン可変部制御部103は、エンジンストールフラグF_ENGSTALLが１であるか否かを判定する。ここで１である場合には、エンジンストール後のイグニッションオフであるので、プロセスをS340へと進める。そして、Toutに０をセットして直ちに燃料噴射を停止し（S340）、点火を停止し（S341）、エンジン始動待機フラグF_ENGSTBYに１をセットしてプロセスを終了する。
【００５４】
一方、エンジンストールフラグF_ENGSTALLに１がセットされていないときは、正常なイグニッションオフであるため、以下のような動作によって次回のエンジン始動に適した状態へと移行できる。
【００５５】
エンジン可変部制御部103は、バルブリフト量目標値Liftin_cmdを始動バルブリフト量Liftin_startに設定する（S303）。次に、エンジン可変部制御部103は、リフト中心角目標値Cain_cmdに始動バルブリフト中心角Cain_startを設定する（S304）。同様に、エンジン可変部制御部103は、圧縮比目標値Cr_cmdに始動圧縮比目標値Cr_startを設定する（S305）。そして、エンジンストールフラグF_ENGSTALLに０を設定する（S306）。
【００５６】
上述のように、バルブリフト量目標値Liftin_cmdを設定すると、エンジン可変部制御部103は、バルブリフト量制御用ソレノイド制御部107に信号を送り、バルブリフト量Liftinがバルブリフト量目標値Liftin_cmdになるようにバルブリフト量を制御する（S307）。同様に、リフト中心角目標値Cain_cmdを設定すると、エンジン可変部制御部103は、リフト中心角制御用ソレノイド制御部に信号を送り、バルブリフト中心角Cainがリフト中心角目標値Cain_cmdになるようにバルブリフト中心角Cainを制御する（S308）。圧縮比Crについても同様に、圧縮比目標値Cr_cmdを設定すると、エンジン可変部制御部103は、圧縮比制御用アクチュエータ108に信号を送り、圧縮比Crが圧縮比目標値Cr_cmdになるように圧縮比Crを制御する（S309）。
【００５７】
そして、エンジン可変部制御部103は、バルブリフト量Liftin、バルブリフト中心角Cain、および圧縮比Crが上述の目標値に移動を完了したか否かを判定する（S310）。ここでは、イグニッションをオフにして間もないため、これらバルブリフト量Liftin、バルブリフト中心角Cain、および圧縮比Crは目標値へと移動を完了しておらず、エンジン可変部制御部103は、プロセスをS311へと進める。そして、各可変部が移動を完了するまでエンジンの運転を停止しないように、燃料噴射量Toutを算出して燃料噴射量を制御する（S311）。そして、エンジン可変部制御部103は、点火時期IGLOGを算出し（S338）、点火時期を制御して本プロセスを終了する。
【００５８】
次に、バルブリフト量Liftin、バルブリフト中心角Cain、および圧縮比Crが上述の目標値へと移動した後に本プロセスが再び呼び出されると、S301からS309を実行した後に、エンジン可変部制御部103は、プロセスS310においてプロセスをS312へと進め、燃料噴射量Toutに０を設定する（S312）。燃料噴射量Toutに０を設定すると、燃料の供給が止まるためエンジンの回転数は下がり始める。
【００５９】
次に、エンジン可変部制御部103は、エンジン回転数NEがストール判定回転数NE_stより高いか否かについて判定する（S313）。ここで、エンジン回転数NEが下降中でありながらも、未だNE_stよりも回転数が高いとき、エンジン可変部制御部103は、プロセスをS338へと進め点火時期IGLOGを算出して点火を行う。このように、燃料噴射量を停止した後もプラグの点火を継続するのは、燃料噴射停止後にインテーク側に残された燃料を燃焼し尽くすためである。
【００６０】
一方、S313においてエンジン回転数がNE_st以下に下がりきっていた場合、エンジン可変部制御部103は、点火を停止させる（S314）。そして、本プロセスを終了する。
【００６１】
上述のような動作によって、エンジンを停止する直前にエンジンのバルブとピストンが始動時の状態へ初期化される。よって、次回の始動時においてこのような初期化処理を省くことができ、始動時間の短縮を図ることができる。また、始動時の圧縮比を高く設定するようにピストンを移動してエンジンを停止させているため、次回の始動時において始動性を向上させることができる。
【００６２】
２．１．４．異常停止するときのエンジンの停止プロセス
次に、図３を参照しつつエンジン運転中において、何らかの原因によってエンジンストールが発生したときのエンジンの停止プロセスについて説明する。
【００６３】
プロセスS320において、エンジン可変部制御部103は、エンジンがストールしているか否かについて判定する。エンジンストールの原因は様々であるが、本実施形態では異常停止検出部104が、エンジン回転数NEがストール判定回転数NE_stを下回るか否かについて判定する。具体的には、S320において、エンジン可変部制御部103は、異常停止検出部104にエンジンストール判定の要求を送出する。そして、異常停止検出部104は、入力インタフェース101を介して、エンジン回転数NEを受信し、ストール判定回転数NE_stよりも高いか否かを判定する。
【００６４】
ここでは、エンジンストールが発生しエンジン回転数NEがストール判定回転数NE_stより下がっているので、異常停止検出部104は、その旨を通知し、エンジン可変部制御部104は、プロセスをS321へと進める。
【００６５】
プロセスをS321へと進めると、エンジン可変部制御部104は、エンジン始動待機フラグF_ENGSTBYが１であるか否かを判定する。F_ENGSTBYが１であるとき、始動前におけるイグニッションオンの待機中であるので、プロセスをS340へと進め、前述と同様のエンジンの停止動作を行う。
【００６６】
一方、エンジン始動待機フラグF_ENGSTBYが１でないときは、前述の通常のエンジン停止時と同様にバルブリフト量目標値Liftin_cmdに始動バルブリフト量Liftin_startを、リフト中心角目標値Cain_cmdに始動バルブリフト中心角Cain_startを、圧縮比目標値Cr_cmdに始動圧縮比Cr_startを設定する（S322,S323,S324）。そして、エンジンストールフラグF_ENGSTALLを１にセットする（S325）。
【００６７】
また、ここでも前述の通常のエンジン停止時と同様に、バルブリフト量制御用ソレノイド制御部107、リフト中心角制御用ソレノイド制御部106、および圧縮比制御用アクチュエータ108のそれぞれに必要な信号を送出して、バルブリフト量Liftin、バルブリフト中心角Cain、および圧縮比Crを制御する（S326,S327,S328）。
【００６８】
そして、エンジン可変部制御部104は、燃料噴射量Toutに０を設定し、燃料噴射を停止する（S329）。そして、エンジン可変部制御部104は、点火時期IGLOGを算出し点火時期を制御して（S339）、本プロセスを終了する。
【００６９】
ここでは、エンジンストール判定回転数NE_stを用いて、エンジンストールの判定を行ったが、自動車の牽引やエンジン整備などによる不定状態を検出するような構成とすることもできる。
【００７０】
エンジンストールが発生した場合、エンジンストールフラグF_ENGSTALLに１を設定するので、次回のエンジン始動時にこれを参照し、エンジン状態が不定であるときに対応した可変部制御をすることができる。
【実施例２】
【００７１】
２．２．本発明によるエンジン始動時および停止時の動作プロセス（圧縮比を低く設定する場合）
２．２．１．前回エンジン停止が正常な停止であるときのエンジンエンジン制御プロセス（圧縮比を低く設定する場合）
図７および図９を参照しつつ前回のエンジン停止時において、圧縮比を通常の始動圧縮比よりも低く設定して正常にエンジン停止したときのエンジン制御プロセスを説明する。
【００７２】
本実施形態において、図９に示すように始動時の圧縮比はCr_nup（ここでは圧縮比９．０）と、通常の圧縮比１１．０より低く設定されている。
【００７３】
本プロセスの大部分は前述の「２．１．１．前回エンジン停止が正常な停止であるときのエンジン制御プロセス」と同様である。異なるプロセスは図２におけるS233からS237のプロセスであり、このプロセスが図７のS733からS739のプロセスへと置き換えられている。よって、共通の動作プロセスについては図７における７００番台の符号を２００番台の符号へと読み替えることで省略し、S730からS739のプロセスについてのみ説明を行う。
【００７４】
S730において、エンジン可変部制御部103は、リフト中心角目標値Cain_cmdに始動バルブリフト中心角Cain_startを設定する。そして、バルブリフト量およびバルブリフト中心角を制御した後（S731,S732）、エンジン可変部制御部103は、バルブリフト量Liftinおよびバルブリフト中心角Cainが目標値へ移動を完了したか否かについて判定する（S733）。ここでは、前回のエンジン停止は正常なエンジン停止であり、バルブリフト量Liftinおよびバブル位相Cainはそれぞれ既に始動バルブリフト量Liftin_startおよび始動バルブリフト中心角Cain_startへの移動を完了している。よって、エンジン可変部制御部104は、プロセスをS735へと分岐させる。
【００７５】
次に、エンジン可変部制御部104は、エンジン回転数NEがNE_injより高いか否かを判定する（S735）。ここでは、まだクランキングを開始して間もないためエンジン回転数NEはNE_injよりも高くなく、プロセスをS737へと進める。そして、エンジン可変部制御部103は、圧縮比目標値Cr_cmdにCr_nupを設定する(S737)。
【００７６】
エンジン可変部制御部103は、目標値Cr_cmdに移動するように圧縮比Crを制御するが（S738）、すでに前回のエンジン停止時において圧縮比Crは始動圧縮比Cr_nupへと移動を完了している。よって、S739においてプロセスはS745へと進み、燃料噴射量Toutを算出して制御し（S745）、点火時期IGLOGを算出して制御する（S746）。そして、本プロセスを終了する。
【００７７】
再び、本プロセスが呼び出され、上述と同様のプロセスによってS733に達すると、同様にしてエンジン可変部制御部S103は、LiftinおよびCainが目標値への移動を完了しているか否かを判定する。ここでも上述の通り、LiftinおよびCainは目標値に移動を完了しているから、エンジン可変部制御部103は、プロセスをS735へと分岐させる。
【００７８】
前段階において燃料噴射量が算出され、点火時期が制御されているためエンジンは始動を開始している。よって、S735において、エンジン回転数NEはNE_injを超えておりプロセスを、S736へと進める。そして、エンジン可変部制御部103は、圧縮比目標値Cr_cmdにCr_nupを設定する。そして、圧縮比が目標値Cr_cmdへと移動するように制御する（S738）。
【００７９】
このように、圧縮比が低い圧縮比（Cr_nup）でクランキングをスタートするため、クランキング初期のクランキング回転数を上げることができる。その後、圧縮比を上昇させるので始動時の着火性の向上を図ることができる。
【００８０】
２．２．２．前回に異常停止したときのエンジン制御プロセス（圧縮比を低く設定する場合）
次に、図７および図１０を参照しつつ、前回にエンジンが停止した際、または停止後の車両の牽引などによって、エンジンのバルブリフト量、バルブリフト中心角、および圧縮比が不定になっているときの、圧縮比を低く設定するエンジン制御プロセスについて説明する。正常にエンジン停止が行われた場合、後述するとおり実施例２におけるバルブリフト量Liftinは始動バルブリフト量Liftin_startに、バルブリフト中心角Cainは始動バルブリフト中心角Cain_startに、圧縮比Crは始動圧縮比Cr_nupになるように各可変部の移動を完了しているはずであるが、エンジンストールなどによりエンジンが停止すると、このような位置で停止しておらず不定な状態となる。また、このように不定の場合は、後述するように、異常停止検出部104によって、エンジンストールフラグF_ENGSTALLは１に設定されている。
【００８１】
本プロセスの大部分は前述の「２．１．２．前回に異常停止したときのエンジン制御プロセス」と同様である。異なるプロセスは、図２におけるS230からS237のプロセスであるが、このプロセスの説明は上述の「２．２．１．前回エンジン停止が正常な停止であるときのエンジン制御プロセス（圧縮比を低く設定する場合）」と同様であるので説明を省略する。
【００８２】
エンジンストールフラグを参照し、前回のエンジン停止が異常なエンジン停止であるときは、クランキングを開始せず所定位置へと各可変部を移動させる。よって、エンジンの不具合を回避することができる。また、圧縮比が低い圧縮比（Cr_nup）でクランキングをスタートし、クランキング初期のクランキング速度を上げ、その後、圧縮比を上昇させるので始動時の着火性の向上を図ることができる。
【００８３】
２．２．３．通常運転プロセスおよび正常停止プロセス（圧縮比を低く設定する場合）
図８および図１１を参照しつつエンジン停止時において、圧縮比を通常の始動圧縮比よりも低く設定して正常にエンジン停止するときのプロセスを説明する。尚、ここでのエンジンの通常運転は前述の通常運転プロセスと同様であるため、説明を省略する。
【００８４】
本プロセスの大部分は前述の「２．１．３．通常運転プロセスおよび正常停止プロセス」と同様である。異なるプロセスは図３におけるS305のプロセスであり、このプロセスが図８のS805へと置き換えられている。よって、共通の動作プロセスは、図８における８００番台の符号は３００番台の符号を読み替えることで省略し、S805のプロセスおよびその効果についてのみ説明を行う。
【００８５】
S805において、エンジン可変部制御部103は、圧縮比目標値Cr_cmdに低圧縮比側始動圧縮比Cr_nupを設定する。ここで、Cr_nupは圧縮比９．０でありCr_startの１１．０よりも低い値である。
【００８６】
このように、S805において圧縮比目標値Cr_cmdに低圧縮比側始動圧縮比Cr_nupを設定するので、エンジンが停止するまでに圧縮比Crを低圧縮比側始動圧縮比Cr_nupになるようにピストンの移動を完了している。よって、次回のエンジン始動時において、エンジンの初期化を行うことなく、次回の始動時のクランキング初期におけるクランキング回転数を高めることができ着火性の向上を図ることができる。
【００８７】
２．２．４．異常停止するときのエンジンの停止プロセス（圧縮比を低く設定する場合）
図８を参照しつつエンジン停止時において、圧縮比を低く設定するときのエンジン異常停止プロセスについて説明する。
【００８８】
本プロセスの大部分は前述の「２．１．４．異常停止するときのエンジンの停止プロセス」と同様である。異なるプロセスは図３におけるS324のプロセスであり、このプロセスが図８のS824のプロセスへと置き換えられている。よって、図８における８００番台の符号は３００番台の符号を読み替えることで省略し、S824のプロセスおよび効果についてのみ説明を行う。
【００８９】
S824において、エンジン可変部制御部103は、圧縮比目標値Cr_cmdに低圧縮比側始動圧縮比Cr_nupを設定する。そして、エンジン可変部制御部103は、エンジンストールフラグF_ENGSTALLを１に設定する（S825）。
【００９０】
このように、エンジン異常停止時において、エンジンストールフラグF_ENGSTALLが１に設定されることで、次回のエンジン始動時において前回のエンジン停止がエンジンストールによるものであることを判定できる。よって、これを参照することで次回始動時において前回のエンジン異常停止に対応したエンジン始動を行うことができる。
【実施例３】
【００９１】
２．３．本発明によるエンジン始動時および停止時の動作プロセス（バルブリフト中心角を進角に設定する場合）
２．３．１．前回エンジン停止が正常な停止であるときのエンジン制御プロセス（バルブリフト中心角を進角設定する場合）
図１２および図１４を参照しつつ前回のエンジン停止時において、自在動弁系のバルブリフト中心角を通常の始動用のバルブリフト中心角よりも進角に設定して正常にエンジン停止したときのエンジン制御プロセスを説明する。
【００９２】
本実施形態において、図１２に示すように始動時のバルブリフト中心角は、始動バルブリフト中心角Cain_startよりも進角方向である進角側始動リフト中心角Cain_nupへと設定されている。
【００９３】
本プロセスの大部分は前述の「２．１．１．前回エンジン停止が正常な停止である時のエンジン制御プロセス」と同様である。異なるプロセスは図２のS230からS237のプロセスであり、このプロセスが図１２のS1230からS1241のプロセスへと置き換えられている。よって、図１２における１２００番台の符号は２００番台の符号を読み替えることで省略し、S1230からS1241のプロセスについてのみ説明を行う。
【００９４】
S1230において、エンジン可変部制御部103は、エンジン回転数NEが燃料噴射許可回転数NE_injより高いか否かを判定する。ここでは、クランキングを開始して間もないためクランキング回転数が上がっておらず、プロセスをS1231へと進める。次に、エンジン可変部制御部103は、リフト中心角目標値Cain_cmdに進角側始動リフト中心角Cain_nupを設定する（S1231）。その後、バルブリフト量およびバルブリフト中心角を目標値へと制御する（S1232,S1233）。次に、エンジン可変部制御部103は、バルブリフト量Liftinおよびバルブリフト中心角Cainが目標値へと移動を完了しているか否かを判定する（S1234）。ここでは、リフト中心角目標値Cain_cmdに値が設定されて間もないため、バルブリフト中心角Cainの移動が完了していない。従って、エンジン可変部制御部103は、プロセスをS1235へと進める。そして、エンジン可変部制御部103は、圧縮比目標値Cr_cmdに最小圧縮比εminを設定する（S1235）。そして、圧縮比Crを目標値Cr_cmd（ここではεmin）へと制御する（S1240）。
【００９５】
S1241において、エンジン可変制御部103は、バルブリフト中心角CainがCain_startへと移動を完了したか否かを判定する。しかしながら、バルブリフト中心角CainにCain_startは設定されていないため、ここではS1212へと分岐する。
【００９６】
次に本プロセスが呼び出されたときも、S1230においてエンジン回転数NEは燃料噴射許可回転数NE_injを超えていない場合がある。このときも、エンジン可変部制御部103は、プロセスをS1231以降へと進め、上述のプロセスをエンジン回転数NEが燃料噴射許可回転数NE_injを超えるまで繰り返す。
【００９７】
次に、本プロセスが呼び出されエンジン回転数Neが燃料噴射許可回転数NE_injより高い場合、プロセスを1236へと分岐する。エンジン可変部制御部103は、リフト中心角目標値Cain_cmdに始動バルブリフト中心角Cain_startを設定する（S1236）。そして、バルブリフト量Liftinおよびバルブリフト中心角Cainを目標値へと制御する（S1237,S1238）。そして、エンジン可変部制御部103は、圧縮比目標値Cr_cmdに始動圧縮比Cr_startを設定し（S1239）、圧縮比を目標値へと制御する（S1240）。
【００９８】
次に、バルブリフト中心角Cainが始動バルブリフト中心角へと移動を完了したか否かを判定する（S1241）。移動を完了していない場合は、S1212へと分岐して燃料噴射等は行わない。一方、バルブリフト中心角Cainが始動バルブリフト中心角へと移動を完了している場合は、プロセスをS1245へと進める。以下の動作は、前述のものと同様であるので説明を省略する。
【００９９】
また、S1234において、バルブリフト中心角が目標値へと移動を完了しているときも、S1239へと分岐することとしてもよい。
【０１００】
上述のプロセスでは、クランキング開始時においてバルブリフト中心角が進角であり、クランキング開始後に中心角を通常始動用の中心角へと戻している。このようにすることで、有効圧縮比を低減し、クランキング初期におけるクランキング回転数を上昇させる。その後、中心角を遅角に制御して、圧縮比を上げるので着火性の向上を図ることができる。
【０１０１】
２．３．２．前回に異常停止したときのエンジン制御プロセス（バルブリフト中心角を進角に設定する場合）
次に、図１２および図１５を参照しつつ、前回にエンジンが停止した際、または停止後の車両の牽引などによって、エンジンのバルブリフト量、バルブリフト中心角、および圧縮比が不定になっているときの、バルブリフト中心角を進角に設定するエンジン制御プロセスについて説明する。正常にエンジン停止が行われた場合、後述するとおり実施例３におけるバルブリフト量Liftinは始動バルブリフト量Liftin_startに、バルブリフト中心角Cainは進角側バルブリフト中心角Cain_nupに、圧縮比Crは始動圧縮比Cr_startになるように各可変部の移動を完了しているはずであるが、エンジンストールなどによりエンジンが停止すると、このような位置で停止しておらず不定な状態で停止している。また、このように不定状態の場合は、異常停止検出部104によって、エンジンストールフラグF_ENGSTALLに１が設定されている。
【０１０２】
本プロセスの大部分は前述の「２．１．２．前回に異常停止したときのエンジン制御プロセス」と同様である。異なるプロセスは図２におけるS230からS237のプロセスであるが、本プロセスの説明は、上述の「２．３．１．前回エンジン停止が正常な停止であるときのエンジン制御プロセス（バルブリフト中心角を進角設定する場合）」と同様であるので説明を省略する。
【０１０３】
クランキング開始時においてバルブリフト中心角が進角であり、クランキング開始後に中心角を通常始動用の中心角へと戻している。このようにすることで、有効圧縮比を低減しクランキング初期においてクランキング回転数を上げる。その後、バルブリフト中心角を遅角に制御して圧縮比を上げるので着火性の向上を図ることができる。
【０１０４】
２．３．３．通常運転プロセスおよび正常運転プロセス（バルブリフト中心角を進角に設定する場合）
図１３および図１６を参照しつつ前回のエンジン停止時において、圧縮比Crを低く設定して正常にエンジン停止するときのエンジン制御プロセスを説明する。
【０１０５】
本プロセスの大部分は前述の「２．１．３．通常運転プロセスおよび正常停止プロセス」と同様である。異なるプロセスは図３におけるS304のプロセスであり、このプロセスが図１３のS1304のプロセスへと置き換えられている。よって、図１３における１３００番台の符号は３００番台の符号へと読み替えることで省略し、S1304のプロセスおよび効果についてのみ説明を行う。
【０１０６】
S1304において、エンジン可変部制御部103は、リフト中心角目標値Cain_cmdに進角側バルブリフト中心角Cain_nupを設定する。ここで、進角側バルブリフト中心角Cain_nupは、ＴＤＣ（上死点）前１０度からリフトが始まるバルブリフト中心角である。
【０１０７】
このように、エンジン停止直前のプロセスにおいて、バルブリフト中心角を進角側へ移動する。よって、次回のエンジン始動時において、エンジンの初期化を行うことなくバルブリフト中心角進角側でクランキングを開始できる。
【０１０８】
２．３．４．異常停止するときのエンジン異常停止プロセス（バルブリフト中心角を進角に設定する場合）
図１３を参照しつつ前回のエンジン停止時において、圧縮比を低く設定しつつエンジンが異常停止するときのプロセスについて説明する。
【０１０９】
本プロセスの大部分は前述の「２．１．４．異常停止するときのエンジンの停止プロセス」と同様である。異なるプロセスは図３におけるS323のプロセスであり、このプロセスが図１３のS1323のプロセスへと置き換えられている。よって、図１３における１３００番台の符号は３００番台の符号へと読み替えることで省略し、S1323のプロセスについてのみ説明を行う。
【０１１０】
S1323において、エンジン可変部制御部103は、リフト中心角目標値Cain_cmdに進角側バルブリフト中心角Cain_nupを設定する。そして、エンジンストールフラグF_ENGSTALLを１に設定する（S1325）。
【０１１１】
このように、エンジン異常停止時において、エンジンストールフラグF_ENGSTALLが１に設定されることで、次回のエンジン始動時において前回のエンジン停止がエンジンストールによるものであることを判定できる。よって、次回始動時において前回のエンジン異常停止に対応したエンジン始動を行うことができる。
【図面の簡単な説明】
【０１１２】
【図１】この発明の一つの実施形態である内燃機関制御装置で使用するＥＣＵの一例を示す図。
【図２】本発明の実施例１におけるエンジン制御プロセスを表すフローチャート。
【図３】本発明の実施例１におけるエンジン停止プロセスを表すフローチャート。
【図４】実施例１における正常エンジン停止後のエンジン始動の制御状態を表す図。
【図５】実施例１における異常エンジン停止後のエンジン始動の制御状態を表す図。
【図６】実施例１における正常なエンジン停止の制御状態を表す図。
【図７】本発明の実施例２におけるエンジン制御プロセスを表すフローチャート。
【図８】本発明の実施例２におけるエンジン停止プロセスを表すフローチャート。
【図９】実施例２における正常エンジン停止後のエンジン始動の制御状態を表す図。
【図１０】実施例２における異常エンジン停止後のエンジン始動の制御状態を表す図。
【図１１】実施例２における正常なエンジン停止の制御状態を表す図。
【図１２】本発明の実施例３におけるエンジン制御プロセスを表すフローチャート。
【図１３】本発明の実施例３におけるエンジン停止プロセスを表すフローチャート。
【図１４】実施例３における正常エンジン停止後のエンジン始動の制御状態を表す図。
【図１５】実施例３における異常エンジン停止後のエンジン始動の制御状態を表す図。
【図１６】実施例３における正常なエンジン停止の制御状態を表す図。
【符号の説明】
【０１１３】
１０１  入力インタフェース
１０２  始動要求検出部
１０３  エンジン可変部制御部
１０４  異常停止検出部
１０５  出力インタフェース
１０６  リフト中心角制御用ソレノイド制御部
１０７  バルブリフト量制御用ソレノイド制御部
１０８  圧縮比制御用アクチュエータ制御部  
【図１】
2005127239.tif 000003
【図２】
2005127239.tif 000004
【図３】
2005127239.tif 000005
【図４】
2005127239.tif 000006
【図５】
2005127239.tif 000007
【図６】
2005127239.tif 000008
【図７】
2005127239.tif 000009
【図８】
2005127239.tif 000010
【図９】
2005127239.tif 000011
【図１０】
2005127239.tif 000012
【図１１】
2005127239.tif 000013
【図１２】
2005127239.tif 000014
【図１３】
2005127239.tif 000015
【図１４】
2005127239.tif 000016
【図１５】
2005127239.tif 000017
【図１６】
2005127239.tif 000018