(57)【要約】【課題】記憶更新処理の回数がその上限値に達すること伴って不揮発性メモリが早期に故障することを抑制することのできる内燃機関の制御ユニットを提供する。【解決手段】内燃機関の制御ユニットは、吸気バルブの最大リフト量を変更するためのアクチュエータ４と、同アクチュエータ４を構成するモータ４１の出力軸４２の基準回転角からの位置カウンタ値Ｐを記憶するＤＲＡＭ５３と、基準回転角及び位置カウンタ値Ｐに基づいて検出される現回転角を記憶する書き換え可能なＥＥＰＲＯＭ５４とを有する。また、制御ユニットへの給電を停止するに際し、現回転角を次回給電開始時以降の基準回転角としてＥＥＰＲＯＭ５４に記憶する基準操作位置更新処理を実行する。ただし、ＤＲＡＭ５３に記憶された位置カウンタ値Ｐの信頼性が低い旨判定されるときには、基準操作位置更新処理を禁止する。【選択図】図１
2008267188.tif 000002
【特許請求の範囲】
【請求項１】
機関状態量を変更するためのアクチュエータと、同アクチュエータの基準操作位置からの操作履歴情報を記憶する揮発性メモリと、前記基準操作位置及び前記操作履歴情報に基づいて検出される前記アクチュエータの現操作位置を記憶する書き換え可能な不揮発性メモリとを有する制御ユニットであって、同制御ユニットへの給電を停止するに際し前記アクチュエータの現操作位置を次回給電開始時以降の前記基準操作位置として前記不揮発性メモリに記憶する基準操作位置更新処理を実行する内燃機関の制御ユニットにおいて、
前記揮発性メモリに記憶された操作履歴情報の信頼性を判定する判定手段と、
前記判定手段により前記操作履歴情報の信頼性が低い旨判定されるときに、前記基準操作位置更新処理を禁止する禁止手段とを備える
ことを特徴とする内燃機関の制御ユニット。
【請求項２】
請求項１に記載の内燃機関の制御ユニットにおいて、
前記判定手段は前記揮発性メモリに対する給電電圧が低下したことに基づいて前記操作履歴情報の信頼性が低い旨判定する
ことを特徴とする内燃機関の制御ユニット。
【請求項３】
請求項１又は２に記載の内燃機関の制御ユニットにおいて、
前記判定手段は、前記制御ユニットに対する給電が開始された時に給電状態情報値を給電状態である旨を示す値に設定して前記不揮発性メモリに記憶するとともに、前記制御ユニットに対する給電が停止される時に前記不揮発性メモリに記憶される給電状態情報値を給電停止状態である旨を示す値に書き換える給電状態記憶処理を実行し、前記制御ユニットに対する給電の開始において給電状態記憶処理が実行される前の前記給電状態情報値が給電状態である旨を示す値に設定されている場合に前記操作履歴情報の信頼性が低い旨判定する
ことを特徴とする内燃機関の制御ユニット。
【請求項４】
請求項１〜３のいずれか一項に記載の内燃機関の制御ユニットにおいて、
前記判定手段により前記操作履歴情報の信頼性が低い旨判定されたときに前記アクチュエータを機械的に操作可能な限界操作位置にまで駆動しその操作位置を前記アクチュエータの現操作位置として学習し前記不揮発性メモリに前記基準操作位置として記憶する学習手段を備え、
前記禁止手段は前記判定手段により前記操作履歴情報の信頼性が低い旨判定された後、前記学習手段による学習が完了するまで前記基準操作位置更新処理を禁止する
ことを特徴とする内燃機関の制御ユニット。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、機関状態量を変更するためのアクチュエータを有し、同アクチュエータの基準操作位置及び同基準操作位置からの操作履歴情報に基づいてアクチュエータの現操作位置を検出する内燃機関の制御ユニットに関する。
【背景技術】
【０００２】
例えば、特許文献１等に記載されるような内燃機関の制御ユニットでは、マイクロコンピュータにより機関バルブの最大リフト量の目標値を機関運転状態に基づいて設定するとともに、この目標値に基づき最大リフト量を制御するようにしている。具体的には、この内燃機関の制御ユニットには、機関バルブの最大リフト量を変更するアクチュエータ、及びこのアクチュエータの操作量、換言すれば最大リフト量の変更量を検出する変更量センサが設けられている。また、上記制御ユニットは、この変更量センサによって検出されるアクチュエータの基準操作位置からの操作履歴情報を揮発性メモリに記憶するとともに、これら基準操作位置及び操作履歴情報に基づいてアクチュエータの現操作位置を検出する。そして、アクチュエータの現操作位置、すなわち機関バルブの最大リフト量の実際値と、機関運転状態に基づいて設定される最大リフト量の目標値との偏差が小さくなるようにアクチュエータの操作量を制御する。
【０００３】
また、制御ユニットへの給電が停止されてから次回の給電が開始されるまでの期間においてはアクチュエータの操作量が変化しないことから、制御ユニットへの給電を停止するに際して、アクチュエータの現操作位置を基準操作位置として書き換え可能な不揮発性メモリに記憶し、次回の給電開始時以降においてこの記憶された基準操作位置及び変更量センサにより検出される操作履歴情報に基づいてアクチュエータの現操作位置を検出するようにしている。
【特許文献１】特開２００１―２６３０１５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
ところが一般に、不揮発性メモリは揮発性メモリと比較してその記憶更新処理の実行可能な回数が極めて少ないため、頻繁に不揮発性メモリの記憶更新処理が行われると、記憶更新処理の回数が早期に上限値に達してその耐用期間が短くなるおそれがある。
【０００５】
なお、ここでは、機関バルブの最大リフト量などのバルブ特性を変更するための制御ユニットについて説明したが、こうした不都合は同構成に限らず、機関状態量を変更するためのアクチュエータを有し、同アクチュエータの基準操作位置及び同基準操作位置からの操作履歴情報に基づいてアクチュエータの現操作位置を検出する他の内燃機関の制御ユニットにおいても概ね共通して発生し得る。
【０００６】
この発明は、こうした実情に鑑みてなされたものであり、その目的は、書制御ユニットへの給電を停止するに際しアクチュエータの現操作位置を次回給電開始時以降の基準操作位置として不揮発性メモリに記憶する基準操作位置更新処理を実行する内燃機関の制御ユニットにおいて、不揮発性メモリにかかる耐用期間の長期化を図ることにある。
【課題を解決するための手段】
【０００７】
以下、上記課題を解決するための手段及びその作用効果について記載する。
請求項１に記載の発明は、機関状態量を変更するためのアクチュエータと、同アクチュエータの基準操作位置からの操作履歴情報を記憶する揮発性メモリと、前記基準操作位置及び前記操作履歴に基づいて検出される前記アクチュエータの現操作位置を記憶する書き換え可能な不揮発性メモリとを有する制御ユニットであって、同制御ユニットへの給電を停止するに際し前記アクチュエータの現操作位置を次回給電開始時以降の前記基準操作位置として前記不揮発性メモリに記憶する基準操作位置更新処理を実行する内燃機関の制御ユニットにおいて、前記揮発性メモリに記憶された操作履歴情報の信頼性を判定する判定手段と、前記判定手段により前記操作履歴情報の信頼性が低い旨判定されるときに、前記基準操作位置更新処理を禁止する禁止手段とを備えることをその要旨とする。
【０００８】
基準操作位置更新処理において、信頼性の低い現操作位置を次回給電開始時以降の基準操作位置として不揮発性メモリに記憶すると、次回給電開始時以降において基準操作位置を改めて更新するとともに、更新後の基準操作位置を不揮発性メモリに改めて記憶する必要が生じるため、不揮発性メモリの記憶更新処理の回数が不要に増加することとなる。
【０００９】
この点、上記構成によれば、制御ユニットへの給電を停止するに際し、揮発性メモリに記憶された操作履歴情報の信頼性が低いとき、すなわち、同操作履歴情報に基づいて検出される現操作位置の信頼性が低いときには、制御ユニットへの給電を停止するに際して基準操作位置更新処理が禁止されるようになる。このため、不揮発性メモリの記憶更新処理の回数が不要に増加することを抑制することができ、不揮発性メモリにかかる耐用期間の長期化を図ることができるようになる。
【００１０】
請求項２に記載の発明は、請求項１に記載の内燃機関の制御ユニットにおいて、前記判定手段は前記揮発性メモリに対する給電電圧が低下したことに基づいて前記操作履歴情報の信頼性が低い旨判定することをその要旨とする。
【００１１】
アクチュエータの基準操作位置からの操作履歴情報を揮発性メモリに記憶する構成にあっては、揮発性メモリに対する給電電圧が低下すると、同揮発性メモリに記憶されていた操作履歴情報が変化したり消失したりして、それ以降における操作履歴情報の信頼性が低くなることがある。
【００１２】
この点、上記構成によれば、揮発性メモリの給電状態を監視し、同揮発性メモリに対する給電電圧が低下したことに基づいて操作履歴情報の信頼性が低い旨判定されることから、操作履歴情報の信頼性が低い旨を的確に判定することができるようになる。
【００１３】
請求項３に記載の発明は、請求項１又は２に記載の内燃機関の制御ユニットにおいて、前記判定手段は、前記制御ユニットに対する給電が開始された時に給電状態情報値を給電状態である旨を示す値に設定して前記不揮発性メモリに記憶するとともに、前記制御ユニットに対する給電が停止される時に前記不揮発性メモリに記憶される給電状態情報値を給電停止状態である旨を示す値に書き換える給電状態記憶処理を実行し、前記制御ユニットに対する給電の開始において給電状態記憶処理が実行される前の前記給電状態情報値が給電状態である旨を示す値に設定されている場合に前記操作履歴情報の信頼性が低い旨判定することをその要旨とする。
【００１４】
例えば車体や内燃機関の振動により、制御ユニットの給電回路において接触不良が生じると、同制御ユニットに対する給電の一時的な停止、いわゆる瞬断が生じることがある。この場合、揮発性メモリに対する給電電圧が一時的に低下し、同揮発性メモリに記憶されていた操作履歴情報が変化したり消失したりして、それ以降における操作履歴情報の信頼性が低くなることがある。
【００１５】
この点、上記構成によれば、制御ユニットに対して給電が開始されてから停止されるまでの期間においては、給電状態情報値が給電状態である旨を示す値に設定されるとともに不揮発性メモリに記憶されることとなる。このため、制御ユニットに対して最初に給電が開始される際には、給電状態記憶処理の実行前の給電状態情報値は給電停止状態を示す値となる。一方、瞬断が生じると、不揮発性メモリに記憶された給電状態情報値は書き換えられないため、瞬断の後に制御ユニットに対して給電が再び開始される際には、給電状態記憶処理の実行前の給電状態情報値は給電状態である旨を示す値となる。こうしたロジックにより、給電状態情報値に基づいて瞬断の発生を的確に把握することができ、操作履歴情報の信頼性が低い旨を的確に判定することができるようになる。
【００１６】
請求項４に記載の発明は、請求項１〜３のいずれか一項に記載の内燃機関の制御ユニットにおいて、前記判定手段により前記操作履歴情報の信頼性が低い旨判定されたときに前記アクチュエータを機械的に操作可能な限界操作位置にまで駆動しその操作位置を前記アクチュエータの現操作位置として学習し前記不揮発性メモリに前記基準操作位置として記憶する学習手段を備え、前記禁止手段は前記判定手段により前記操作履歴情報の信頼性が低い旨判定された後、前記学習手段による学習が完了するまで前記基準操作位置更新処理を禁止することをその要旨とする。
【００１７】
上記構成では、現在の操作履歴情報の信頼性が低い旨判定されたときに、アクチュエータを機械的に操作可能な限界操作位置にまで駆動するとともにその操作位置をアクチュエータの現操作位置として学習し、これを不揮発性メモリに基準操作位置として記憶することで、その後の操作履歴情報、換言すれば現操作位置を正しい値に再設定するようにしている。ただし、こうした学習が完了するまではアクチュエータの現操作位置の信頼性が低い。このため、上記学習の実行中に制御ユニットへの給電が停止され、それに伴って基準操作位置更新処理が実行されると、信頼性の低い現操作位置を不揮発性メモリに記憶することとなり、同不揮発性メモリの記憶更新処理の回数が不要に増加することとなる。
【００１８】
この点、上記構成によれば、上記学習手段による学習が完了するまでは基準操作位置更新処理が禁止されることから、学習完了前に制御ユニットへの給電が停止される場合であっても、基準操作位置更新処理が実行されることはない。このため、不揮発性メモリの記憶更新処理回数が不要に増加することを更に抑制することができ、記憶更新処理回数の増加に伴って不揮発性メモリが早期に故障することを一層抑制することができるようになる。
【発明を実施するための最良の形態】
【００１９】
以下、この発明を、車載内燃機関の機関状態量として吸気バルブの最大リフト量を変更する制御ユニットに適用した一実施の形態について、図１〜図６を参照して説明する。
図１は、この実施の形態にかかる制御ユニットの全体構成を示すブロック図である。同図１に示されるように、制御ユニットは、大きくは、内燃機関１に設けられて吸気バルブの最大リフト量を変更するアクチュエータ４、同アクチュエータ４の操作量を制御するためのマイクロコンピュータ５、及び機関運転状態を検出するための各種センサ６によって構成されている。このうちアクチュエータ４は、コントロールシャフト３の基端部（図中右端部）に設けられたモータ４１、同モータ４１の出力軸４２に連結されて同出力軸４２の回転運動をコントロールシャフト３の軸方向への直線運動に変換するための変換機構４３によって構成される。一方、マイクロコンピュータ５は、モータ４１を駆動制御することにより、吸気バルブの最大リフト量を機関運転状態に基づいてフィードバック制御する。
【００２０】
以下、こうした制御ユニットの詳細な構成、及び同制御ユニットによる最大リフト量の制御態様について説明する。
モータ４１の出力軸４２を正・逆回転させると、その回転が変換機構４３によってコントロールシャフト３の往復動に変換される。また、コントロールシャフト３は吸気バルブの最大リフト量を変更するための仲介駆動機構に接続されており、コントロールシャフト３をその軸方向に変位させると、同コントロールシャフト３の軸方向の位置に応じて仲介駆動機構が駆動されることにより吸気バルブの最大リフト量が変更される。すなわち、吸気バルブの最大リフト量は、コントロールシャフト３の軸方向への変位量に応じて変更される。
【００２１】
ここで、内燃機関１のシリンダヘッドカバー２には、コントロールシャフト３に設けられた係止部３１がそれぞれ当接可能なＨｉ端側ストッパ２１、Ｌｏ端側ストッパ２２がコントロールシャフト３の軸方向に沿って所定距離だけ離間した状態でそれぞれ形成されている。これにより、コントロールシャフト３は、これらストッパ２１，ストッパ２２に対応する２つの限界操作位置の間において変位可能となっている。すなわち、モータ４１の出力軸４２は、上記２つの限界操作位置に対応する２つの限界回転角の間において正・逆回転可能となっている。
【００２２】
モータ４１には、３つの電気角センサＤ１〜Ｄ３が設けられるとともに、これら電気角センサＤ１〜Ｄ３に対応して出力軸４２と一体回転する８極の多極マグネット（図示略）が更に設けられている。これら電気角センサＤ１〜Ｄ３は、８極の多極マグネットの磁気に応じて図２（ａ）〜（ｃ）に示されるようなパルス状の信号、すなわち理論ハイレベル信号「Ｈ」と理論ローレベル信号「Ｌ」とを交互に出力する。なお、こうしたパルス信号の波形が得られるよう、３つの電気角センサＤ１〜Ｄ３は周方向において１２０°毎に配置されている。したがって、これら電気角センサＤ１〜Ｄ３のうちの１つから出力されるパルス信号のエッジは出力軸４２の４５°回転毎に発生している。また、これら電気角センサＤ１〜Ｄ３のうちの１つからのパルス信号は、他の電気角センサからのパルス信号に対し、出力軸４２の３０°回転分だけ進み側及び遅れ側に位相をずらした状態となっている。
【００２３】
また、モータ４１には、エンコーダとして機能する２つの位置センサＳ１，Ｓ２が設けられるとともに、これら位置センサＳ１，Ｓ２に対応して出力軸４２と一体回転する４８極の多極マグネット（図示略）が更に設けられている。これら位置センサＳ１，Ｓ２は、４８極の多極マグネットの磁気に応じてパルス状の信号、すなわち理論ハイレベル信号「Ｈ」と理論ローレベル信号「Ｌ」とを交互に出力する。なお、こうしたパルス信号の波形が得られるよう、位置センサＳ１は周方向において位置センサＳ２から１７６．２５°を隔てて配置されている。したがって、位置センサＳ１，Ｓ２のうちの１つから出力されるパルス信号のエッジは出力軸４２の７．５°回転毎に発生している。また、位置センサＳ２からのパルス信号は、位置センサＳ１からのパルス信号に対し、出力軸４２の３．７５°回転分だけ進み側及び遅れ側に位相をずらした状態となっている。
【００２４】
ここで、電気角センサＤ１〜Ｄ３を合わせたパルス信号のエッジ間隔が１５°であるのに対し、位置センサＳ１，Ｓ２を合わせたパルス信号のエッジ間隔は３．７５°となっている。したがって、電気角センサＤ１〜Ｄ３を合わせたパルス信号のエッジ発生から次回のエッジ発生までには、位置センサＳ１，Ｓ２を合わせたパルス信号のエッジが４回発生するようになっている。
【００２５】
一方、これら電気角センサＤ１〜Ｄ３及び位置センサＳ１，Ｓ２によって出力されたパルス信号はマイクロコンピュータ５に取り込まれる。このマイクロコンピュータ５は、プログラムによって数値計算や論理演算等を行う中央演算処理装置（ＣＰＵ）５１、各種の制御に必要なプログラムやデータを記憶する不揮発性メモリ（ＲＯＭ）５２、入力データや演算結果を一時的に記憶する揮発性メモリ（ＤＲＡＭ）５３、学習制御により得られた基準回転角等を記憶する書き換え可能な不揮発性メモリ（ＥＥＰＲＯＭ）５４を備えている。なお、周知のように、マイクロコンピュータ５がデータをＤＲＡＭ５３のアドレスに記憶するに際して、そのアドレスに対応する各メモリセルに対して充電・放電を行うことにより、各メモリセルに対応するビットのビットデータの値が「１」又は「０」になる。すなわち、電荷が蓄積されているメモリセルに対応するビットのビットデータの値が「１」になる一方、電荷が蓄積されていないメモリセルに対応するビットのビットデータの値が「０」になる。
【００２６】
また、マイクロコンピュータ５には、車両のアクセルペダルの開度を検出するアクセルセンサ６１や、内燃機関のクランクシャフトの回転位相を検出するクランク角センサ６２等、機関の運転状態を検出する各種センサ６が接続されている。マイクロコンピュータ５は、機関の運転状態に基づき吸気バルブの最大リフト量の制御目標値を設定するとともに、上述した電気角センサＤ１〜Ｄ３及び位置センサＳ１，Ｓ２によって出力されたパルス信号に基づいてモータ４１の出力軸４２の現回転角、換言すれば吸気バルブの最大リフト量の実際値を検出するようにしている。なお、現回転角は、アクチュエータ４の現操作位置に相当する。
【００２７】
次に、吸気バルブの最大リフト量の実際値を検出する手順について、図２及び図３を参照して詳細に説明する。
図２（ａ）〜（ｅ）は、上述したようにモータ４１の出力軸４２の回転時に電気角センサＤ１〜Ｄ３、及び位置センサＳ１，Ｓ２から出力するパルス信号の波形を示している。また、図２（ｆ）〜（ｈ）は、モータ４１の回転時における回転角の変化に対し、それぞれ電気角カウンタ値Ｅ、位置カウンタ値Ｐ、及びストロークカウンタ値Ｓの推移パターンを示している。一方、図３（ａ）は、電気角センサＤ１〜Ｄ３の出力信号のパターンと電気角カウンタ値Ｅとの対応関係を示すとともに、図３（ｂ）は、位置センサＳ１，Ｓ２の出力信号のエッジが発生するときに位置カウンタ値Ｐが増減する態様を示している。
【００２８】
まず、各カウンタ値について説明する。
［電気角カウンタ値Ｅ］
電気角カウンタ値Ｅは、電気角センサＤ１〜Ｄ３のパルス信号に基づいて決められており、モータ４１の回転位相を表す。具体的には、図３（ａ）に示されるように、各電気角センサＤ１〜Ｄ３から各々理論ハイレベル信号「Ｈ」と理論ローレベル信号「Ｌ」とのいずれが出力されているかに応じて、電気角カウンタ値Ｅに「０」〜「５」の範囲内の連続した整数値のうちのいずれかが当てはめられる。マイクロコンピュータ５は、この電気角カウンタ値Ｅに基づきモータ４１の回転位相を検出し、同モータ４１の通電相を切り替えてモータ４１を正・逆回転する。ここで、モータ４１の正回転時には、電気角カウンタ値Ｅは「０」→「１」→「２」→「３」→「４」→「５」→「０」といった順序で順方向に変化する。一方、モータ４１の逆回転時には、電気角カウンタ値Ｅは「５」→「４」→「３」→「２」→「１」→「０」→「５」といった順序で逆方向に変化する。
【００２９】
［位置カウンタ値Ｐ］
位置カウンタ値Ｐは、マイクロコンピュータ５に給電が開始された後に、その給電開始時の基準回転角に対して出力軸４２の回転角が変化した量を表す。具体的には、図３（ｂ）に示されるように、位置センサＳ１，Ｓ２のうち、一方のセンサからパルス信号の立ち上がりエッジと立下りエッジとのいずれが生じているか、及び他方のセンサから理論ハイレベル信号「Ｈ」と理論ローレベル信号「Ｌ」とのいずれが出力されているかに応じて、位置カウンタ値Ｐに対し「＋１」と「−１」とのいずれかが加算される。なお、同図３（ｂ）において、「↑」はパルス信号の立ち上がりエッジを表し、「↓」はパルス信号の立下りエッジを表している。こうした処理を実行して得られる位置カウンタ値Ｐは、各位置センサＳ１，Ｓ２からのパルス信号のエッジを計数した値になる。
【００３０】
ここで、モータ４１が正回転中であれば、位置カウンタ値Ｐは、図２（ｄ）及び（ｅ）に示される位置センサＳ１，Ｓ２からのパルス信号のエッジ毎に「１」ずつ加算され、図２（ｇ）に示されるように徐々に増大するようになる。一方、モータ４１が逆回転中であれば、位置カウンタ値Ｐは、上記パルス信号のエッジ毎に「１」ずつ減算され、図２（ｇ）に示されるように徐々に減少するようになる。なお、この位置カウンタ値Ｐは、マイクロコンピュータ５への給電を停止するための給電停止指令がなされた際に「０」にリセットされる。したがって、位置カウンタ値Ｐは、モータ４１の出力軸４２の回転角が機関始動時の基準回転角に対してどれだけ変化したか、換言すれば機関運転の吸気バルブの最大リフト量が制御ユニットへの給電開始時における基準リフト量に対してどれだけ変化したかを表すこととなる。ここで、吸気バルブの最大リフト量を迅速に変更すべく、位置カウンタ値Ｐを迅速に加減算する必要があることから、同位置カウンタ値Ｐは書き換え処理の速度が高いＤＲＡＭ５３に記憶されるようになっている。なお、基準回転角は、アクチュエータ４の基準操作位置に相当するとともに、位置カウンタ値Ｐは同基準操作位置からの操作履歴情報に相当する。
【００３１】
［ストロークカウンタ値Ｓ］
ストロークカウンタ値Ｓは、コントロールシャフト３をＨｉ端に変位させたときの出力軸４２の回転角を基準回転角（０度）とした同モータ４１の回転角を表す。すなわち、ストロークカウンタ値Ｓの初期設定として、コントロールシャフト３をＨｉ端に変位させたとき、マイクロコンピュータ５はストロークカウンタ値Ｓを「０」に設定する（以下、Ｈｉ端学習と称する）。また、マイクロコンピュータ５は、位置カウンタ値Ｐをストロークカウンタ値Ｓに加算し、同ストロークカウンタ値Ｓをこの加算された値に更新する。なお、車体や内燃機関１の振動により、制御ユニットの給電回路において接触不良が生じ、ＤＲＡＭ５３に対する給電の一時的な停止、いわゆる瞬断が生じることがある。この場合、瞬断の後に給電が復帰したときには、ＤＲＡＭ５３に記憶された位置カウンタ値Ｐは変化したり、失われたりするおそれがある。このため、瞬断が生じた後に給電が復帰した際にはＨｉ端学習を実行することにより、ストロークカウンタ値Ｓ及び位置カウンタ値Ｐを正しい値に再設定するようにしている。
【００３２】
また、マイクロコンピュータ５への給電を停止するに際しては、モータ４１の操作が停止されたときのストロークカウンタ値Ｓを次回給電開始に際して初期基準回転角Ｓｇとして利用するために、現在のストロークカウンタ値ＳをＥＥＰＲＯＭ５４に記憶する処理（基準回転角更新処理）を行うようにしている。
【００３３】
したがって、マイクロコンピュータ５は、ＥＥＰＲＯＭ５４に記憶された初期基準回転角ＳｇとＤＲＡＭ５３に記憶された位置カウンタ値Ｐとに基づきストロークカウンタ値Ｓ、換言すればコントロールシャフト３をＨｉ端に変位させたときの出力軸４２の回転角を基準回転角（０度）とした同モータ４１の現回転角を算出する。そして、マイクロコンピュータ５は、このストロークカウンタ値Ｓに基づいて吸気バルブの最大リフト量の実際値を算出するとともに、この実際値と機関運転状態に基づいて設定された制御目標値との乖離が小さくなるようにモータ４１を制御する。これにより、吸気バルブの最大リフト量を機関運転状態に適した値に変更し、内燃機関１の燃費や出力の向上を図ることができるようになる。なお、基準回転角更新処理は、制御ユニットへの給電を停止するに際して実行される基準操作位置更新処理に相当する。
【００３４】
ところで、上記ＥＥＰＲＯＭ５４には記憶更新処理の実行可能な回数に上限値があるため、頻繁にそのＥＥＰＲＯＭ５４の記憶更新処理、すなわち上記基準回転角更新処理が行われると、記憶更新処理の回数が早期に上限値に達してその耐用期間が短いものとなる。
【００３５】
そこで、この実施の形態にかかる内燃機関の制御ユニットでは、以下に説明する制御構成を採用することにより、こうした不都合を好適に回避するようにしている。すなわち、マイクロコンピュータ５への給電を停止するに際してＨｉ端学習中である場合には、ＤＲＡＭ５３に記憶された位置カウンタ値Ｐの信頼性が低いと判断して上記基準回転角更新処理を禁止するようにしている。
【００３６】
次に、図４のフローチャートを参照してＨｉ端学習中であるか否かを判定するためのＨｉ端学習判定処理の処理手順について説明する。なお、図４に示される一連の処理は、マイクロコンピュータ５により所定の制御周期をもって繰り返し実行される。
【００３７】
同図４に示されるように、この処理ではまず、今回の制御周期が、マイクロコンピュータ５への給電開始後の最初の制御周期であるか否かを判定する（ステップＳ１）。そしてこの結果、今回の制御周期が給電開始後の最初の制御周期でない旨判定された場合（ステップＳ１：ＮＯ）には、次にステップＳ５に移行する。
【００３８】
一方、今回の制御周期が給電開始後の最初の制御周期である旨判定された場合（ステップＳ１：ＹＥＳ）には、次に、マイクロコンピュータ５への給電が開始される直前の運転フラグＦｋが「オン」状態となっていたか否かを判定する（ステップＳ２）。ここで、運転フラグＦｋは、マイクロコンピュータ５に対して給電実行指令がなされているか、或いはマイクロコンピュータ５への給電を停止するための給電停止指令がなされているかを判定するためのフラグである。この運転フラグＦｋを用いた給電状態記憶処理では、マイクロコンピュータ５に対し給電実行指令がなされたときには、それまで「オフ」状態であった運転フラグＦｋを「オン」状態としてＥＥＰＲＯＭ５４に記憶する一方、マイクロコンピュータ５に対し給電停止指令がなされたときには、ＥＥＰＲＯＭ５４に記憶される運転フラグＦｋを「オフ」状態に書き換える。すなわち、運転フラグＦｋは制御ユニットの給電状態を示す給電状態情報値であり、これが「オン」に設定されている場合は、制御ユニットが給電状態にあり、「オフ」に設定されている場合には、同制御ユニットが給電停止状態であることになる。
【００３９】
したがって、給電開始後の最初の制御周期において、給電が開始される直前の運転フラグＦｋが既に「オン」状態である旨判定された場合（ステップＳ２：ＹＥＳ）には、今回の給電開始が、給電実行指令がなされたことに基づくものではなく、瞬断が生じた後に給電が復帰したことに基づくものであるとして、上記Ｈｉ端学習を実行するための学習フラグＦｇを「オン」状態に設定し、これをＥＥＰＲＯＭ５４に記憶する（ステップＳ３）。そして、この一連の処理を一旦終了する。なお、Ｈｉ端学習が完了したときには、学習フラグＦｇを再び「オフ」状態に設定し、ＥＥＰＲＯＭ５４の記憶内容を書き換える。
【００４０】
一方、給電開始後の最初の制御周期において、給電が開始される直前の運転フラグＦｋが「オフ」状態である旨判定された場合（ステップＳ２：ＮＯ）には、今回の給電開始が、給電実行指令に基づくものである旨判定し、運転フラグＦｋを「オン」状態とする（ステップＳ４）。そして次に、マイクロコンピュータ５に対し給電停止指令がなされたか否かを判定し（ステップＳ５）、その結果、給電停止指令がなされた場合（ステップＳ５：ＹＥＳ）には、運転フラグＦｋが「オフ」状態とされて（ステップＳ６）、ＥＥＰＲＯＭ５４に記憶され、この一連の処理を一旦終了する。
【００４１】
他方、給電停止指令がなされた旨判定されないとき（ステップＳ５：ＮＯ）には、この一連の処理を一旦終了する。
次に、図５のタイミングチャートを参照して図４に示される一連の処理が実行されたときの運転フラグＦｋ、マイクロコンピュータ５に対する給電状態、学習フラグＦｇの変化態様について説明する。
【００４２】
図５（ａ）に示されるように、タイミングｔ１において、内燃機関１の始動に伴って給電実行指令がなされると、その直後に運転フラグＦｋが「オン」状態とされ、図５（ｂ）に示されるように、マイクロコンピュータ５に対する給電が開始される。またこのように、マイクロコンピュータ５に対する給電が開始されると、そのＤＲＡＭ５３に対する給電も開始されて同ＤＲＡＭ５３は記憶情報を保持可能な状態となる。なお、この時点では瞬断が発生しておらずＨｉ端学習を実行する必要がないないことから、図５（ｃ）に示されるように、学習フラグＦｇは「オフ」状態とされている。そして、図５（ｂ）に示されるように、タイミングｔ２において瞬断が生じると、マイクロコンピュータ５に対する給電電圧が「０」となる。その後、タイミングｔ３においてマイクロコンピュータ５に対する給電が再開される。このとき、給電が開始される直前の運転フラグＦｋが既に「オン」状態であることから、図５（ｃ）に示されるように、タイミングｔ４において学習フラグＦｇが「オン」状態とされるとともに、Ｈｉ端学習が実行され、タイミングｔ５においてＨｉ端学習が完了すると、学習フラグＦｇは「オフ」状態とされる。そして、図５（ａ）に示されるように、タイミングｔ６において内燃機関１の運転が停止されることに伴って給電停止指令がなされると、その直後に運転フラグＦｋが「オフ」状態とされ、図５（ｂ）に示されるように、マイクロコンピュータ５に対する給電電圧が「０」とされることにより給電が停止される。
【００４３】
次に、図６のフローチャートを参照してマイクロコンピュータ５への給電を停止するに際して実行される基準回転角更新処理の処理手順について説明する。なお、図６に示される一連の処理は、マイクロコンピュータ５により所定の制御周期をもって繰り返し実行される。
【００４４】
同図６に示されるように、この処理ではまず、マイクロコンピュータ５に対し給電停止指令がなされたか否かを判定する（ステップＳ１１）。そしてこの結果、給電停止指令がなされていない旨判定された場合（ステップＳ１１：ＮＯ）には、この時点では基準回転角更新処理を行う必要がないものとしてこの一連の処理を一旦終了する。
【００４５】
一方、マイクロコンピュータ５に対し給電停止指令がなされている場合（ステップＳ１１：ＹＥＳ）には、次に、そのときの学習フラグＦｇが「オフ」状態となっているか否かを判定する（ステップＳ１２）。そしてこの結果、学習フラグＦｇが「オフ」状態である旨判定された場合（ステップＳ１２：ＹＥＳ）には、Ｈｉ端学習の実行中ではなくＤＲＡＭ５３に記憶された位置カウンタ値Ｐの信頼性が低くないと判断して基準回転角更新処理を実行し（ステップＳ１３）、その後、マイクロコンピュータ５への給電を停止し（ステップＳ１４）、この一連の処理を終了する。
【００４６】
一方、学習フラグＦｇが「オフ」状態である旨判定された場合（ステップＳ１２：ＮＯ）には、Ｈｉ端学習が実行中でありＤＲＡＭ５３に記憶された位置カウンタ値Ｐの信頼性が低いと判断してステップＳ１３をスキップして、すなわち基準回転角更新処理を実行することなく、マイクロコンピュータ５への給電を停止し（ステップＳ１４）、この一連の処理を終了する。
【００４７】
このように、位置カウンタ値Ｐの信頼性が低い場合には、マイクロコンピュータ５への給電を停止するに際して基準回転角更新処理の実行を禁止するようにしている。また、学習フラグＦｇをＥＥＰＲＯＭ５４に記憶するようにしているため、例えば内燃機関１が再始動され、それに伴ってマイクロコンピュータ５の給電が開始されると、学習フラグＦｇが「オン」状態であることに基づいて再びＨｉ学習が実行されることとなる。そしてこの場合、Ｈｉ学習が完了することなく再びマイクロコンピュータ５への給電が停止されるときも、同様に基準回転角更新処理の実行が禁止されることとなる。
【００４８】
以上説明したこの実施の形態にかかる内燃機関の制御ユニットによれば、以下に列記するような効果が得られるようになる。
（１）マイクロコンピュータ５への給電を停止するに際し、ＤＲＡＭ５３に記憶された位置カウンタ値Ｐの信頼性が低いとき、すなわち、同位置カウンタ値Ｐに基づいて検出されるストロークカウンタ値Ｓ（現回転角）の信頼性が低いときには、マイクロコンピュータ５への給電を停止するに際して基準回転角更新処理を禁止することとした。これにより、ＥＥＰＲＯＭ５４の記憶更新処理の回数が不要に増加することを抑制することができ、ＥＥＰＲＯＭ５４にかかる耐用期間の長期化を図ることができる。
【００４９】
（２）マイクロコンピュータ５に対し給電を開始する時に運転フラグＦｋを「オン」状態、すなわち給電状態である旨を示す値に設定してＥＥＰＲＯＭ５４に記憶するとともに、マイクロコンピュータ５に対し給電を停止する時にＥＥＰＲＯＭ５４に記憶される運転フラグＦｋを「オン」状態から「オフ」状態、すなわち給電停止状態である旨を示す値に書き換える給電状態記憶処理を実行することとした。そして、マイクロコンピュータ５に対し給電を開始する際に、給電状態記憶処理を実行する前の運転フラグＦｋが「オン」状態である場合には位置カウンタ値Ｐの信頼性が低い旨判定することとした。こうしたロジックにより、運転フラグＦｋに基づいて瞬断の発生を的確に把握することができ、位置カウンタ値Ｐの信頼性が低い旨を的確に判定することができる。
【００５０】
（３）現在の位置カウンタ値Ｐの信頼性が低い旨判定されたときに、コントロールシャフト３をＨｉ端に変位させるとともにそのときのストロークカウンタ値Ｓを「０」として学習するＨｉ端学習を実行することにより、ストロークカウンタ値Ｓ及び位置カウンタ値Ｐを正しい値に再設定するようにしている。ただし、こうしたＨｉ端学習が完了するまではストロークカウンタ値Ｓの信頼性が低い。このため、Ｈｉ端学習の実行中にマイクロコンピュータ５への給電が停止され、それに伴って基準回転角更新処理が実行されると、信頼性の低いストロークカウンタ値ＳをＥＥＰＲＯＭ５４に記憶することとなり、同ＥＥＰＲＯＭ５４の記憶更新処理の回数が不要に増加することとなる。
【００５１】
この点、上記実施の形態では、Ｈｉ端学習が完了するまでは基準回転角更新処理を禁止することとした。これにより、Ｈｉ端学習が完了する前にマイクロコンピュータ５への給電が停止される場合であっても、基準回転角更新処理が実行されることはない。このため、ＥＥＰＲＯＭ５４の記憶更新処理回数が不要に増加することを更に抑制することができ、記憶更新処理回数の増加に伴ってＥＥＰＲＯＭ５４が早期に故障することを一層抑制することができる。
【００５２】
なお、この発明にかかる内燃機関の制御ユニットは、上記実施の形態にて例示した構成に限定されるものではなく、これを適宜変更した例えば次のような形態として実施することもできる。
【００５３】
・上記実施の形態のように、マイクロコンピュータ５への給電を停止するに際し、ＤＲＡＭ５３に記憶された位置カウンタ値Ｐの信頼性が低い旨判定されたときには、マイクロコンピュータ５への給電を停止するに際して基準回転角更新処理を禁止し、且つ、その後、次回給電開始時以降においてＨｉ端学習が完了するまでは基準回転角更新処理を禁止することが、ＥＥＰＲＯＭ５４の記憶更新処理の回数が不要に増加することを一層抑制する上では望ましい。しかし、マイクロコンピュータ５への給電を停止する際の基準回転角更新処理を禁止するだけでも、ＥＥＰＲＯＭ５４の記憶更新処理の回数が不要に増加することを抑制することはできる。
【００５４】
・上記実施の形態では、給電状態記憶処理を実行するとともに、マイクロコンピュータ５に対し給電を開始するに際して給電状態記憶処理を実行する前の運転フラグＦｋが「オン」状態、すなわち給電状態である旨を示す値に設定されている場合に制御ユニット（マイクロコンピュータ５）に対する給電電圧が低下した旨を判定することとした。しかし、制御ユニット（マイクロコンピュータ５）に対する給電電圧が低下した旨を判定する手段はこれに限られるものではなく、給電電圧の低下を直接検出するようにしてもよい。
【００５５】
・上記実施の形態では、制御ユニット（マイクロコンピュータ５）に対する給電電圧が低下したことに基づいて位置カウンタ値Ｐの信頼性が低い旨を判定しているようにしているが、位置カウンタ値Ｐの信頼性を判定する手段はこれに限られるものではなく、他に例えば、所定期間毎にミラーチェックやパリティチェック等を通じて、位置カウンタ値Ｐの信頼性が低い旨を判定するようにしてもよい。なお、上記実施の形態では、瞬断が発生したときに、位置カウンタ値Ｐの信頼性が低いと判定し、Ｈｉ学習を実行するようにしたが、例えば瞬断の期間が極めて短い場合にはＤＲＡＭ５３の記憶値が揮発することなくそのまま維持されている場合もある。そこで、瞬断が発生したときに、ミラーチェックやパリティチェック等を通じてＤＲＡＭ５３の記憶値が揮発しているか否かを判定し、揮発したときのみ、Ｈｉ学習を実行するようにしてもよい。要するに、位置カウンタ値Ｐ、すなわち操作履歴情報の信頼性が低い旨を判定することのできる判定手段であればよい。
【００５６】
・上記実施の形態では、位置カウンタ値Ｐの信頼性が低い旨判定されたときに、上記Ｈｉ端学習を実行する学習手段について例示したが、これに代えて、コントロールシャフト３をＬｏ端に変位させるとともにそのときのストロークカウンタ値Ｓを基準回転角として学習するＬｏ端学習を実行する学習手段を採用してもよい。
【００５７】
・上記実施の形態では、コントロールシャフト３をその軸方向に変位させて吸気バルブの最大リフト量を変更するアクチュエータ４について例示したが、吸気バルブの最大リフト量を可変とするアクチュエータはこれに限られるものではなく、吸気バルブの最大リフト量を変更するアクチュエータであればこれを任意に変更することができる。
【００５８】
・上記実施の形態では、操作履歴情報を記憶するための揮発性メモリとしてＤＲＡＭを採用しているが、揮発性メモリはＤＲＡＭに限られるものではなく、ＳＲＡＭ（Static Random Access Memory）など揮発性メモリであればこれを任意に変更することができる。
【００５９】
・上記実施の形態では、基準操作位置を記憶するための不揮発性メモリとしてＥＥＰＲＯＭを採用しているが、不揮発性メモリはＥＥＰＲＯＭに限られるものではなく、ＭＲＡＭ（Ｍａｇｎｅｔｉｃ  ＲＡＭ）、ＦｅＲＡＭ（Ｆｅｒｒｏｅｌｅｃｔｒｉｃ  ＲＡＭ）など不揮発性メモリであればこれを任意に変更することができる。
【００６０】
・上記実施の形態では、吸気バルブの最大リフト量を変更するアクチュエータについて例示したが、同バルブの開時期や閉時期等、他のバルブ特性、また吸気バルブに限らず排気バルブのバルブ特性を変更するアクチュエータであってもよい。
【図面の簡単な説明】
【００６１】
【図１】この発明の一実施の形態にかかる内燃機関の制御ユニットについてその全体構成を示すブロック図。
【図２】（ａ）〜（ｈ）同実施の形態の各センサの出力波形及び各カウンタのカウンタ値が推移する際の変化態様を併せ示すタイミングチャート。
【図３】（ａ），（ｂ）同実施の形態の各センサの出力信号と電気角カウンタ及び位置カウンタとの関係を示す表。
【図４】同実施の形態の制御ユニットによるＨｉ端学習判定処理についてその処理手順を示すフローチャート。
【図５】（ａ）〜（ｃ）同実施の形態の図４に示される一連の処理が実行されたときの運転フラグ、マイクロコンピュータに対する給電電圧、及び学習フラグの変化態様を併せ示すタイミングチャート。
【図６】同実施の形態の制御ユニットによる基準回転角更新処理についてその処理手順を示すフローチャート。
【符号の説明】
【００６２】
１…内燃機関、２…シリンダヘッドカバー、２１…Ｈｉ端側ストッパ、２２…Ｌｏｗ端側ストッパ、３…コントロールシャフト、３１…係止部、４…アクチュエータ、４１…モータ、４２…出力軸、４３…変換機構、５…マイクロコンピュータ、５１…ＣＰＵ、５２…ＲＯＭ、５３…ＤＲＡＭ、５４…ＥＥＰＲＯＭ、６…各種センサ、６１…アクセルセンサ、６２…クランク角センサ。
【図１】
2008267188.tif 000003
【図２】
2008267188.tif 000004
【図３】
2008267188.tif 000005
【図４】
2008267188.tif 000006
【図５】
2008267188.tif 000007
【図６】
2008267188.tif 000008