(57)【要約】【課題】機関状態量の変更履歴に誤差が生じることによる機関状態量の制御精度低下を抑制しつつ、機関運転が停止した旨の誤判断がなされることに起因して機関運転中に機関状態量に対する補正が誤って行われて機関運転状態が急激に変化してしまうことを抑制する内燃機関の制御システムを提供する。【解決手段】位置センサＳ１，Ｓ２の出力信号に基づいて位置カウンタ値を算出するとともに、位置カウンタ値に基づいて吸気バルブの最大リフト量を算出する。位置センサＳ１，Ｓ２の出力信号と電気角センサＤ１〜Ｄ３の出力信号とを比較することにより位置カウンタ値の誤差を検出する。クランク角センサ７４によって検出された機関回転速度が閾値よりも小さな値となった状態が所定期間継続したことを条件に内燃機関が停止した旨判断し、位置カウンタ値の誤差に基づいて最大リフト量の最終値を補正して次回機関始動時における初期値として記憶する。【選択図】図４
2008223486.tif 000002
【特許請求の範囲】
【請求項１】
機関状態量について機関始動時における初期値からの変更履歴を検出する履歴検出手段と、前記履歴検出手段によって検出される前記変更履歴と前記初期値とに基づいて機関状態量の値を算出するとともに、その算出値と機関状態量にかかる目標値との乖離が小さくなるように機関状態量をフィードバック制御するフィードバック制御手段と、機関停止後に機関状態量の最終値を次回機関始動時における初期値として記憶する初期値記憶手段と、前記履歴検出手段により検出される変更履歴の誤差を検出する誤差検出手段と、内燃機関が停止したことを判断する停止判断手段と、前記停止判断手段により内燃機関が停止した旨が判断されたときに、機関状態量の最終値を次回機関始動時における初期値として記憶するのに先立ち前記検出される変更履歴の誤差に基づいて補正する補正手段とを備える内燃機関の制御システムにおいて、
前記停止判断手段は機関停止を判定するための判定値が機関停止を示す値である状態が所定期間継続したことを条件に内燃機関が停止した旨判断する
ことを特徴とする内燃機関の制御システム。
【請求項２】
請求項１に記載の内燃機関の制御システムにおいて、
前記停止判断手段は機関回転速度を前記判定値とし、機関回転速度が通常機関運転時における最低値よりも小さな値となった状態が所定期間継続したことを条件に内燃機関が停止した旨判断する
ことを特徴とする内燃機関の制御システム。
【請求項３】
請求項１又は２に記載の内燃機関の制御システムにおいて、
前記履歴検出手段は、機関状態量の変更に応じてパルス信号を出力するエンコーダの出力信号に基づき前記変更履歴を検出する
ことを特徴とする内燃機関の制御システム。
【請求項４】
請求項３に記載の内燃機関の制御システムにおいて、
機関状態量はブラシレスモータをアクチュエータとして変更されるものであり、前記エンコーダは前記ブラシレスモータの出力軸が所定角度回転する毎にパルス信号を出力するロータリーエンコーダであり、前記誤差検出手段は前記ブラシレスモータに設けられた磁極センサの出力信号に基づいて生成されるカウンタ値の推移と前記ロータリーエンコーダのパルス信号から生成されるカウンタ値の推移とを比較し、その比較結果に基づいて前記誤差を検出する
ことを特徴とする内燃機関の制御システム。
【請求項５】
請求項１〜４のいずれか一項に記載の内燃機関の制御システムにおいて、
機関状態量は、機関バルブのバルブ状態量である
ことを特徴とする内燃機関の制御システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、機関状態量について機関始動時における初期値からの変更履歴をエンコーダ等によって検出し、その変更履歴と初期値とに基づいてその機関状態量の値を算出するとともに、その算出値と機関状態量にかかる目標値との乖離が小さくなるように機関状態量をフィードバック制御する内燃機関の制御システムに関する。
【背景技術】
【０００２】
こうした内燃機関の制御システムでは、例えば特許文献１に記載されるように、マイクロコンピュータにより機関バルブの最大リフト量にかかる目標値を機関運転状態に基づいて設定するとともに、その目標値と一致するように最大リフト量をフィードバック制御するものが知られている。このような制御システムの一般的な構成としては、以下の構成を採用することができる。すなわち、この制御システムにあっては、最大リフト量を変更するアクチュエータと、アクチュエータの作動位置について機関始動時における初期位置からの変化量、換言すれば最大リフト量の変更履歴を検出するセンサとが設けられている。そして、この種のセンサとしては、アクチュエータの駆動に応じてパルス信号を出力するエンコーダが通常採用される。機関運転中に、マイクロコンピュータは、エンコーダのパルス信号に基づきアクチュエータの作動位置の変化量を検出し、この変化量とマイクロコンピュータの書き換え可能な不揮発性メモリ（ＥＥＰＲＯＭ）に記憶された機関始動時における初期作動位置とに基づいてアクチュエータの現在の操作位置、換言すれば機関バルブの最大リフト量を算出する。そして、マイクロコンピュータは、この最大リフト量の算出値と機関運転状態に基づいて設定されたその目標値との乖離が小さくなるように、アクチュエータの駆動を通じて機関バルブの最大リフト量をフィードバック制御している。そして、内燃機関が停止すると、アクチュエータの最終的な操作位置が次回機関始動時におけるアクチュエータの初期操作位置としてＥＥＰＲＯＭに記憶される。
【０００３】
ところで、例えばエンコーダによって出力されるパルス信号にノイズが重畳した場合に、そのエンコーダを通じて検出したアクチュエータの操作位置の変化量、すなわち最大リフト量の変更履歴に誤差が生じることがある。こうした誤差が生じると、フィードバック制御に用いられる最大リフト量の値と実際の値との間にずれが発生し、上述した制御の精度が低下することとなる。
【０００４】
もっとも、こうしたずれが発生した場合であっても、フィードバック制御に用いられる最大リフト量の値が実際の値と一致するようにこれを補正することはできる。但し、機関運転中にこのずれに対する補正を行うと、その補正タイミングにおいて機関バルブの最大リフト量が不連続的に変化することとなり、機関運転状態が急激に変化するおそれがある。このため、こうした補正は機関運転が停止した後に行うことが望ましい。具体的には、機関運転中にその履歴の検出値と実際値とのずれを検出したときに、そのずれをメモリに記憶し、機関運転が停止した後に、メモリに記憶されるずれに基づいてアクチュエータの最終的な操作位置を補正する。そして、この補正された操作位置を次回機関始動時のアクチュエータの初期操作位置としてメモリに記憶する。これにより、次回機関始動時に、メモリに記憶される初期操作位置とその時点の操作位置の実際値とが一致することとなり、エンコーダによる出力信号にノイズが生じることに起因する最大リフト量の制御精度の低下を抑制することができるようになる。
【０００５】
なお、機関運転が停止したか否かを判断するためには、以下の構成が通常採用される。すなわち、マイクロコンピュータには、回転速度センサから機関回転速度に応じた信号が入力されており、マイクロコンピュータは、この機関回転速度をメモリに記憶する。そして、マイクロコンピュータは、このメモリに記憶された機関回転速度の検出値と所定の閾値（例えば２００ｒｐｍ）とを比較し、その検出値が所定の閾値以上であるときには、内燃機関が運転している旨判断する一方、その検出値がその閾値よりも小さいときには、内燃機関が停止した旨判断するようにしている。
【特許文献１】特開２００５−２０１１１７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
このように、機関運転が停止した旨判断した後にアクチュエータの最終的な操作位置の補正を行うことにより、機関運転状態の急激な変化を回避しつつも、次回の機関始動時からはエンコーダの出力信号にノイズが重畳することに起因して機関バルブの最大リフト量にかかる制御精度が低下することを抑制することができるようにはなる。ただし、例えばメモリのデータ化けや回転速度センサから入力される信号の異常等により、メモリに記憶された検出値が一時的に例えば「０ｒｐｍ」等、機関回転速度の実際値と対応しない値になることがある。したがって、内燃機関が運転しているにもかかわらず、機関回転速度の検出値が所定の閾値よりも小さくなり、これにより内燃機関が停止した旨の判断がなされてしまうおそれがある。そしてこのような誤判断が発生すると、機関運転中にメモリに記憶される上記履歴の検出値と実際値とのずれに基づいてアクチュエータの操作位置が補正されてしまい、機関運転状態が急激に変化することが懸念される。
【０００７】
なお、機関バルブの最大リフト量を制御する制御システムについて説明したが、こうした不都合は同システムに限らず、その他の機関状態量をフィードバック制御するようにした内燃機関の制御システムにおいても概ね共通して発生し得る。
【０００８】
本発明は、こうした従来の実情に鑑みてなされたものであり、その目的は、機関状態量の変更履歴に誤差が生じることによる機関状態量の制御精度低下を抑制しつつ、機関運転が停止した旨の誤判断がなされることに起因して機関運転中に機関状態量に対する補正が誤って行われて機関運転状態が急激に変化してしまうことを抑制することのできる内燃機関の制御システムを提供することにある。
【課題を解決するための手段】
【０００９】
以下、上記課題を解決するための手段及びその作用効果について記載する。
請求項１に記載の発明は、機関状態量について機関始動時における初期値からの変更履歴を検出する履歴検出手段と、前記履歴検出手段によって検出される前記変更履歴と前記初期値とに基づいて機関状態量の値を算出するとともに、その算出値と機関状態量にかかる目標値との乖離が小さくなるように機関状態量をフィードバック制御するフィードバック制御手段と、機関停止後に機関状態量の最終値を次回機関始動時における初期値として記憶する初期値記憶手段と、前記履歴検出手段により検出される変更履歴の誤差を検出する誤差検出手段と、内燃機関が停止したことを判断する停止判断手段と、前記停止判断手段により内燃機関が停止した旨が判断されたときに、機関状態量の最終値を次回機関始動時における初期値として記憶するのに先立ち前記検出される変更履歴の誤差に基づいて補正する補正手段とを備える内燃機関の制御システムにおいて、前記停止判断手段は機関停止を判定するための判定値が機関停止を示す値である状態が所定期間継続したことを条件に内燃機関が停止した旨判断することをその要旨とする。
【００１０】
同構成によれば、内燃機関が停止した後に、誤差検出手段によって検出された機関状態量の変更履歴にかかる誤差に基づいて機関状態量の最終値を補正し、その補正後の値が次回機関始動時における初期値として記憶されるため、機関運転中において機関状態量の変更履歴に誤差が生じたような場合でも、次回の機関始動時からは、その誤差に起因する機関状態量の制御精度低下を抑制することができる。また、機関停止を判定するための判定値が機関停止を示す値である状態が所定の期間よりも長く継続したことを条件に内燃機関が停止した旨判断するようにしているため、例えばその判定値が何らかの要因で一時的に異常値となり、機関運転中であるにも関わらずこれが機関停止を示す値になった場合であっても、所定の期間が経過する前にその判定値が正常値に復帰すれば、機関運転中に機関停止状態にある旨の誤った判断がなされることはない。したがって、上記構成によれば、機関状態量の変更履歴に誤差が生じることによる機関状態量の制御精度低下を抑制しつつ、機関運転が停止した旨の誤判断がなされることに起因して機関運転中に機関状態量に対する補正が誤って行われて機関運転状態が急激に変化してしまうことを抑制することができるようになる。
【００１１】
請求項２に記載の発明は、請求項１に記載の内燃機関の制御システムにおいて、前記停止判断手段は機関回転速度を前記判定値とし、機関回転速度が通常機関運転時における最低値よりも小さな値となった状態が所定期間継続したことを条件に内燃機関が停止した旨判断することをその要旨とする。
【００１２】
同構成によれば、内燃機関が停止した旨を正確に判断することができる。
請求項３に記載の発明は、請求項１又は２に記載の内燃機関の制御システムにおいて、前記履歴検出手段は、機関状態量の変更に応じてパルス信号を出力するエンコーダの出力信号に基づき前記変更履歴を検出することをその要旨とする。
【００１３】
エンコーダの出力信号に基づいて機関状態量の変更履歴を検出する場合、その出力信号にパルス状のノイズが重畳すると、検出される変更履歴に誤差が生じることとなる。このように、エンコーダの出力信号に基づいて機関状態量の変更履歴を検出する場合には、その変更履歴に誤差が比較的生じやすい。
【００１４】
この点、上記構成によれば、このように機関状態量の変更履歴に誤差が生じやすい制御システムにあっても、その誤差による悪影響を抑制することができるようになる。
なお、請求項３に記載の構成は、例えば請求項４に記載されるように、機関状態量はブラシレスモータをアクチュエータとして変更されるものであり、前記エンコーダは前記ブラシレスモータの出力軸が所定角度回転する毎にパルス信号を出力するロータリーエンコーダであり、前記誤差検出手段は前記ブラシレスモータに設けられた磁極センサの出力信号に基づいて生成されるカウンタ値の推移と前記ロータリーエンコーダのパルス信号から生成されるカウンタ値の推移とを比較し、その比較結果に基づいて前記誤差を検出する、といった態様にて具体化することができる。
【００１５】
請求項５に記載の発明は、請求項１〜４のいずれか一項に記載の内燃機関の制御システムにおいて、機関状態量は、機関バルブのバルブ状態量であることをその要旨とする。
例えば機関バルブの最大リフト量等のバルブ状態量を制御する制御システムにおいて、機関運転が停止した旨を誤判断し、機関運転中にバルブ状態量に対する補正を誤って行うと、吸入空気量が変化して機関出力がするため、機関運転状態の急激な変化を招きやすい。
【００１６】
この点、上記構成によれば、機関運転が停止した旨を誤判断することに起因して、機関運転中に機関バルブのバルブ状態量に対する補正が誤って行われることを抑制することができ、そうしたバルブ状態量の補正に起因して機関運転状態が急激に変化することを好適に抑制することができる。
【発明を実施するための最良の形態】
【００１７】
以下、本発明を機関バルブの最大リフト量を制御する内燃機関の制御システムに適用した一実施形態について、図１〜図１０を参照して説明する。ここで、図１は、車両に搭載される内燃機関の吸・排気動弁装置の一部断面構造を示す断面図であり、図２は、内燃機関の吸・排気動弁装置の配設態様を示す平面図である。
【００１８】
図１及び図２に示されるように、内燃機関は４つの気筒を有しており、そのシリンダヘッド２にはこれら気筒に対応した一対の排気バルブ１０と吸気バルブ２０とが往復動可能にそれぞれ設けられている。また、シリンダヘッド２には、それら排気バルブ１０と吸気バルブ２０とに対応して排気動弁装置９０と吸気動弁装置１００とがそれぞれ設けられている。
【００１９】
排気動弁装置９０には、各排気バルブ１０に対応してラッシュアジャスタ１２が設けられるとともに、このラッシュアジャスタ１２と排気バルブ１０との間にはロッカーアーム１３が架設されている。ロッカーアーム１３は、その一端がラッシュアジャスタ１２に支持されるとともに他端が排気バルブ１０の基端部に当接されている。また、シリンダヘッド２に回転可能に支持された排気カムシャフト１４には複数のカム１５が形成されており、それらカム１５の外周面はロッカーアーム１３の中間部分に設けられたローラ１３ａに当接されている。排気バルブ１０にはリテーナ１６が設けられるとともに、このリテーナ１６とシリンダヘッド２との間にはバルブスプリング１１が設けられている。このバルブスプリング１１の付勢力によって排気バルブ１０は閉弁方向に付勢されている。そしてこれにより、ロッカーアーム１３のローラ１３ａはカム１５の外周面に押圧されている。機関運転時にカム１５が回転すると、ロッカーアーム１３はラッシュアジャスタ１２により支持される部分を支点として揺動する。その結果、排気バルブ１０はロッカーアーム１３によって開閉駆動されるようになる。
【００２０】
一方、吸気動弁装置１００には、排気側と同様にバルブスプリング２１、吸気バルブ２０に設けられたリテーナ２６、ロッカーアーム２３及びラッシュアジャスタ２２が設けられている。シリンダヘッド２に回転可能に支持された吸気カムシャフト２４には複数のカム２５が形成されている。ここで、排気動弁装置９０とは異なり、吸気動弁装置１００には、カム２５とロッカーアーム２３との間に仲介駆動機構５０が設けられている。この仲介駆動機構５０は入力部５１と一対の出力部５２とを有しており、これら入力部５１及び出力部５２はシリンダヘッド２に固定された支持パイプ５３に揺動可能に支持されている。ロッカーアーム２３は、ラッシュアジャスタ２２及びバルブスプリング２１の付勢力によって出力部５２側に付勢され、同ロッカーアーム２３の中間部分に設けられたローラ２３ａが出力部５２の外周面に当接されている。これにより、入力部５１が出力部５２とともに左回り方向Ｗ１に揺動付勢され、入力部５１においてその径方向に延出した部分の先端に設けられたローラ５１ａがカム２５の外周面に押圧される。
【００２１】
こうした吸気動弁装置１００では、機関運転時にカム２５が回転すると、同カム２５はローラ５１ａに摺接しつつ入力部５１を押圧し、これにより出力部５２が支持パイプ５３の周方向に揺動するようになる。そして出力部５２が揺動すると、ロッカーアーム２３はラッシュアジャスタ２２により支持される部分を支点として揺動する。その結果、吸気バルブ２０はロッカーアーム２３によって開閉駆動されるようになる。
【００２２】
また、支持パイプ５３には、その軸方向に沿って駆動可能なコントロールシャフト５４が挿入されている。このコントロールシャフト５４は、連結部材を介して入力部５１及び出力部５２に駆動連結されており、同コントロールシャフト５４がその軸方向に沿って駆動すると、それら入力部５１及び出力部５２が相対的に揺動するようになる。次に、図３を参照してコントロールシャフト５４と入力部５１，出力部５２とを連結する仲介駆動機構５０について詳述する。尚、図３は仲介駆動機構５０の内部構造を示す破断斜視図である。
【００２３】
図３に示されるように、入力部５１はそれら一対の出力部５２の間に設けられており、これら入力部５１と出力部５２との内部には略円筒状の連通空間が形成されている。また、入力部５１の内周面にはヘリカルスプライン５１ｈが形成されるとともに、出力部５２の内周面には入力部５１のヘリカルスプライン５１ｈとその歯すじが逆向きに傾斜するヘリカルスプライン５２ｈが形成されている。
【００２４】
入力部５１と出力部５２との内部に形成された空間には、略円筒状のスライダギア５５が設けられている。このスライダギア５５の外周面の中央部分には、入力部５１のヘリカルスプライン５１ｈに噛合するヘリカルスプライン５５ａが形成されるとともに、その外周面の両端部には出力部５２のヘリカルスプライン５２ｈに噛合するヘリカルスプライン５５ｂが形成されている。
【００２５】
また、この略円筒状のスライダギア５５の内壁には、その周方向に沿って延伸する溝５５ｃが形成されており、この溝５５ｃにはブッシュ５６が嵌合されている。なお、このブッシュ５６は、溝５５ｃの伸びる方向に沿って同溝５５ｃの内周面を摺動することができるが、スライダギア５５に対するその軸方向の相対変位は溝５５ｃによって規制されている。
【００２６】
そして、支持パイプ５３はスライダギア５５の内部に形成された貫通空間に挿入されるとともに、コントロールシャフト５４はその支持パイプ５３に挿入されている。また、支持パイプ５３の管壁にはその軸方向に延伸する長孔５３ａが形成されている。スライダギア５５とコントロールシャフト５４との間には、長孔５３ａを通じてこれらスライダギア５５とコントロールシャフト５４とを連結する係止ピン５７が設けられている。この係止ピン５７の一端がコントロールシャフト５４に形成された凹部（図示略）に挿入されるとともに、他端がブッシュ５６に形成された貫通孔５６ａに挿入されている。
【００２７】
こうした仲介駆動機構５０にあって、コントロールシャフト５４がその軸方向に沿って変位すると、これに連動してスライダギア５５が軸方向に変位する。スライダギア５５の外周面に形成されたヘリカルスプライン５５ａ，５５ｂは、入力部５１及び出力部５２の内周面に形成されたヘリカルスプライン５１ｈ、５２ｈとそれぞれ噛合されているため、スライダギア５５がその軸方向に変位すると、入力部５１と出力部５２とは逆の方向に回転する。その結果、入力部５１と出力部５２との相対位相差が変更され、吸気バルブ２０の最大リフト量が変更される。
【００２８】
ここで、先の図２に示されるように、コントロールシャフト５４の基端部（図中右端部）には、ブラシレスモータ６０が設けられており、このブラシレスモータ６０は、マイクロコンピュータ７０に接続されている。マイクロコンピュータ７０は、ＣＡＮ（コントローラ・エリア・ネットワーク）を介して内燃機関の制御を統括的に実行する電子制御ユニット８０に接続されており、ブラシレスモータ６０を駆動制御することにより吸気バルブ２０の最大リフト量を電子制御ユニット８０によって設定された目標リフト量と一致するようにフィードバック制御する。以下、このマイクロコンピュータ７０による最大リフト量のフィードバック制御について、図４〜図６を参照して説明する。ここで、図４は、コントロールシャフト５４、ブラシレスモータ６０、マイクロコンピュータ７０及び電子制御ユニット８０を示すブロック図であり、図５は、各センサの出力波形及び各カウンタ値の推移態様を示すタイミングチャートである。
【００２９】
図４に示されるように、コントロールシャフト５４の基端部は、変換機構６１を介してブラシレスモータ６０の出力軸６０ａに連結されている。この変換機構６１は、出力軸６０ａの回転運動をコントロールシャフト５４の軸方向への直線運動に変換するためのものである。すなわち、出力軸６０ａを正・逆回転させると、その回転が変換機構６１によってコントロールシャフト５４の往復動に変換される。また、コントロールシャフト５４には、係止部５４ａが形成されるとともに、内燃機関のシリンダヘッドカバー３には、この係止部５４ａが当接可能な２つのストッパ３ａ，３ｂが形成されている。コントロールシャフト５４は、これらストッパ３ａ，３ｂに係止部５４ａが当接するようになる２つの駆動限界位置の間において駆動可能となっている。ここで、コントロールシャフト５４の係止部５４ａがストッパ３ａに当接する駆動限界位置（以下「Ｈｉ端」と称する）に駆動したときにブラシレスモータ６０の作動量、すなわち回転角が設計最大値ＤＨ０になる。一方、コントロールシャフト５４の係止部５４ａがストッパ３ｂに当接する駆動限界位置（以下「Ｌｏ端」と称する）に駆動したときにブラシレスモータ６０の回転角が設計最小値ＤＬ０になる。
【００３０】
ブラシレスモータ６０には、３つの電気角センサＤ１〜Ｄ３と、これら電気角センサＤ１〜Ｄ３に対応して出力軸６０ａと一体回転する８極の多極マグネット（図示略）とが設けられている。これら電気角センサＤ１〜Ｄ３は、８極の多極マグネットの磁気に応じて図５（ａ）〜（ｃ）に示されるようなパルス状の信号、すなわち論理ハイレベル信号「Ｈ」と論理ローレベル信号「Ｌ」とを交互に出力する。なお、こうしたパルス信号の波形が得られるよう、３つの電気角センサＤ１〜Ｄ３は出力軸６０ａの周方向において１２０°毎に配置されている。したがって、これら電気角センサＤ１〜Ｄ３のうちの１つから出力されるパルス信号のエッジは出力軸６０ａの４５°回転毎に発生している。また、これら電気角センサＤ１〜Ｄ３のうちの１つからのパルス信号は、他の電気角センサからのパルス信号に対し、出力軸６０ａの３０°回転分だけ進み側及び遅れ側に位相をずらした状態となっている。
【００３１】
また、ブラシレスモータ６０には、ロータリーエンコーダとして機能する２つの位置センサＳ１，Ｓ２と、これら位置センサＳ１，Ｓ２に対応して出力軸６０ａと一体回転する４８極の多極マグネット（図示略）とが設けられている。これら位置センサＳ１，Ｓ２は、４８極の多極マグネットの磁気に応じて図５（ｄ）及び（ｅ）に示されるようなパルス状の信号、すなわち論理ハイレベル信号「Ｈ」と論理ローレベル信号「Ｌ」とを交互に出力する。なお、こうしたパルス信号の波形が得られるよう、位置センサＳ１は出力軸６０ａの周方向において位置センサＳ２から１７６．２５°を隔てて配置されている。したがって、位置センサＳ１，Ｓ２のうちの１つから出力されるパルス信号のエッジは出力軸６０ａの７．５°回転毎に発生している。また、位置センサＳ２からのパルス信号は、位置センサＳ１からのパルス信号に対し、出力軸６０ａの３．７５°回転分だけ進み側及び遅れ側に位相をずらした状態となっている。
【００３２】
ここで、電気角センサＤ１〜Ｄ３を合わせたパルス信号のエッジ間隔が１５°であるのに対し、位置センサＳ１，Ｓ２を合わせたパルス信号のエッジ間隔は３．７５°となっている。したがって、電気角センサＤ１〜Ｄ３を合わせたパルス信号のエッジ発生から次回のエッジ発生までには、位置センサＳ１，Ｓ２を合わせたパルス信号のエッジが４回発生するようになっている。
【００３３】
これら電気角センサＤ１〜Ｄ３及び位置センサＳ１，Ｓ２によって出力されたパルス信号はマイクロコンピュータ７０に取り込まれる。このマイクロコンピュータ７０は、プログラムによって数値計算や情報処理等を行う中央演算処理装置（ＣＰＵ）７１、各種の制御に必要なプログラムやデータを記憶する不揮発性メモリ（ＲＯＭ）７２ａ、入力データや演算結果を一時的に記憶する揮発性メモリ（ＤＲＡＭ）７２ｂ、学習制御により得られた初期値等を記憶する書き換え可能な不揮発性メモリ（ＥＥＰＲＯＭ）７２ｃを備えている。なお、周知のように、マイクロコンピュータ７０がデータをＤＲＡＭ７２ｂのアドレスに記憶するとき、そのアドレスに対応する各メモリセルに対して充電・放電を行うことにより、各メモリセルに対応するビットのビットデータの値が「１」又は「０」になる。すなわち、電荷が蓄積されているメモリセルに対応するビットのビットデータの値が「１」になる一方、電荷が蓄積されていないメモリセルに対応するビットのビットデータの値が「０」になる。
【００３４】
また、マイクロコンピュータ７０は、上述した電気角センサＤ１〜Ｄ３及び位置センサＳ１，Ｓ２によって出力されたパルス信号に基づいてブラシレスモータ６０の回転位相、換言すれば吸気バルブ２０の最大リフト量の実際値を検出するようにしている。以下、吸気バルブ２０の最大リフト量の実際値を検出する手順について、図５及び図６を参照して詳細に説明する。
【００３５】
ここで、図５（ａ）〜（ｅ）は、上述したようにブラシレスモータ６０の出力軸６０ａの回転時に電気角センサＤ１〜Ｄ３、及び位置センサＳ１，Ｓ２から出力するパルス信号の波形を示している。そして図５（ｆ）〜（ｈ）は、ブラシレスモータ６０の回転時における回転角の変化に対し、それぞれ電気角カウンタ値Ｅ、位置カウンタ値Ｐ、及びストロークカウンタ値Ｓが推移するパターンを示している。また、図６（ａ）は、電気角センサＤ１〜Ｄ３の出力信号のパターンと電気角カウンタ値Ｅとの対応関係を示すとともに、図６（ｂ）は、位置センサＳ１，Ｓ２の出力信号のエッジが発生するときに位置カウンタ値Ｐが増減する態様を示している。
【００３６】
まず、各カウンタ値について説明する。
［電気角カウンタ値Ｅ］
電気角カウンタ値Ｅは、電気角センサＤ１〜Ｄ３のパルス信号に基づいて設定され、ブラシレスモータ６０の回転位相を表す。具体的には、図６（ａ）に示されるように、各電気角センサＤ１〜Ｄ３から各々論理ハイレベル信号「Ｈ」と論理ローレベル信号「Ｌ」とのいずれが出力されているかに応じて、電気角カウンタ値Ｅに「０」〜「５」範囲内の連続した整数値のうちのいずれかに設定される。マイクロコンピュータ７０は、この電気角カウンタ値Ｅに基づきブラシレスモータ６０の回転位相を検出し、同ブラシレスモータ６０の通電相を切り替えてブラシレスモータ６０を正・逆回転する。ここで、ブラシレスモータ６０の正回転時には、電気角カウンタ値Ｅは「０」→「１」→「２」→「３」→「４」→「５」→「０」といった順序で順方向に変化する。一方、ブラシレスモータ６０の逆回転時には、電気角カウンタ値Ｅ「５」→「４」→「３」→「２」→「１」→「０」→「５」といった順序で逆方向に変化する。
【００３７】
［位置カウンタ値Ｐ］
位置カウンタ値Ｐは、内燃機関が始動した後に、その機関始動時の初期回転角に対して出力軸６０ａの回転角が変化した量、換言すれば吸気バルブ２０の最大リフト量について機関始動時における初期値からの変更履歴を表す。具体的には、位置センサＳ１，Ｓ２のうち、一方のセンサからパルス信号の立ち上がりエッジ及びと立下りエッジのいずれが生じているか、及び他方のセンサから論理ハイレベル信号「Ｈ」と論理ローレベル信号「Ｌ」とのいずれが出力されているかに応じて、位置カウンタ値Ｐに対し「＋１」と「−１」とのいずれかが加算される（図６（ｂ）参照）。なお、同図６（ｂ）において、「↑」はパルス信号の立ち上がりエッジを表し、「↓」はパルス信号の立下りエッジを表している。こうした処理を実行して得られる位置カウンタ値Ｐは、各位置センサＳ１，Ｓ２からのパルス信号のエッジを計数した値になる。
【００３８】
ここで、ブラシレスモータ６０の正回転中であれば、位置カウンタ値Ｐは、図５（ｄ）及び（ｅ）に示される位置センサＳ１，Ｓ２からのパルス信号のエッジ毎に「１」ずつ加算され、図５（ｇ）に示されるパターンに沿って右方向に推移するようになる。一方、ブラシレスモータ６０の逆回転中であれば、位置カウンタ値Ｐは、上記パルス信号のエッジ毎に「１」ずつ減算され、図５（ｇ）に示されるパターンに沿って左方向に推移するようになる。なお、この位置カウンタ値Ｐは、内燃機関の運転が停止すると、「０」にリセットされる。したがって、位置カウンタ値Ｐは、ブラシレスモータ６０の出力軸６０ａの回転位置が機関始動時の初期位置に対してどれだけ変化したか、換言すれば機関運転の吸気バルブ２０の最大リフト量が機関始動時の初期値に対してどれだけ変化したかを表す。また、位置カウンタ値Ｐは、吸気動弁装置１００の駆動に基づいて迅速に加減算する必要があるため、ＤＲＡＭ７２ｂに記憶される。
【００３９】
［ストロークカウンタ値Ｓ］
ストロークカウンタ値Ｓは、コントロールシャフト５４をＨｉ端に変位させたときの出力軸６０ａの回転角を基準値（０度）とした同ブラシレスモータ６０の回転角を表す。すなわち、ストロークカウンタ値Ｓの初期設定として、コントロールシャフト５４をＨｉ端に変位させたとき、マイクロコンピュータ７０はストロークカウンタ値Ｓを「０」に設定する。マイクロコンピュータ７０は、位置カウンタ値Ｐをストロークカウンタ値Ｓに加算し、ストロークカウンタ値Ｓをこの加算された値に更新される。なお、機関停止が完了し、吸気動弁装置１００の駆動が停止されたときのストロークカウンタ値Ｓの最終値が次回機関運転の開始時の初期値Ｓｇとして学習されてＥＥＰＲＯＭ７２ｃに記憶される。
【００４０】
したがって、マイクロコンピュータ７０は、ＥＥＰＲＯＭ７２ｃに記憶された初期値ＳｇとＤＲＡＭ７２ｂに記憶された位置カウンタ値Ｐとに基づきストロークカウンタ値Ｓ、換言すればコントロールシャフト５４をＨｉ端に変位させたときの出力軸６０ａの回転角を基準値（０度）とした同ブラシレスモータ６０の回転角を算出する。そして、マイクロコンピュータ７０は、このストロークカウンタ値Ｓに基づいて吸気バルブ２０の最大リフト量の実際値を算出する。
【００４１】
上述した電子制御ユニット８０には、車両のアクセルペダルの操作量を検出するアクセルセンサ７３や、内燃機関のクランクシャフトの回転に応じてパルス信号を出力するクランク角センサ７４等、機関の運転状態を検出するセンサの信号が取り込まれる。電子制御ユニット８０は、機関の運転状態に基づき吸気バルブ２０の最大リフト量の制御目標値を設定してＣＡＮを通じてマイクロコンピュータ７０に送信する。マイクロコンピュータ７０は、上述したように吸気バルブ２０の最大リフト量の実際値を算出するとともに、この実際値と電子制御ユニット８０によって設定された制御目標値との乖離が小さくなるようにブラシレスモータ６０を制御する。これにより、吸気バルブ２０の最大リフト量を機関運転状態に適した値に変更し、内燃機関の燃費や出力の向上を図ることができるようになる。
【００４２】
ところで、位置カウンタ値Ｐは、常にブラシレスモータ６０の実際の回転角に対応しているとは限らず、その実際の回転角からずれることがある。例えば、位置センサＳ１，Ｓ２から出力される信号にノイズが重畳すると、マイクロコンピュータ７０はそのノイズのエッジと位置センサＳ１，Ｓ２からのパルス信号のエッジとを峻別することができない。このため、このノイズのエッジがパルス信号のエッジと誤検出され、位置カウンタ値Ｐ、ひいてにストロークカウンタ値Ｓがブラシレスモータ６０の実際の回転角と対応しなくなる。その結果、ストロークカウンタ値Ｓに基づき検出される吸気バルブ２０の最大リフト量の検出値はその実際値との間にずれが生じることとなる。
【００４３】
以下、こうした不具合発生の詳細について、モータ正・逆回転中にノイズが発生した場合を例に、図７，８を参照して説明する。なお、図７はブラシレスモータ６０の正・逆回転中にノイズが発生した場合における位置センサＳ１，Ｓ２の出力波形及び電気角カウンタ値Ｅ、位置カウンタ値Ｐの推移を示す図であり、図８はノイズによる位置カウンタ値Ｐの加減算態様を示す図である。
【００４４】
ブラシレスモータ６０の正回転中、例えば図７（ａ）に示されるように、位置センサＳ１からの信号にノイズが重畳し、そのノイズによって位置センサＳ１の出力信号が論理ハイレベル信号「Ｈ」になっているときに位置センサＳ２からのパルス信号の立ち下がりエッジが検出されると、上記ノイズの発生しているタイミングａ，ｂ，ｃでの位置センサＳ１，Ｓ２からの信号の出力パターンは、図８（ａ）に示されるようなパターンとなる。その結果、タイミングａ，ｂ，ｃでそれぞれ位置カウンタ値Ｐに「−１」が加算され、図７（ｄ）のタイミングａ，ｂ，ｃでは当該カウンタ値が一点鎖線で示されるように「１」ずつ減少するようになる。一方、仮に上記ノイズが発生していないとすれば、タイミングａ，ｂ，ｃではタイミングｂで位置カウンタ値Ｐに「１」が加算されるだけとなるはずである。このため、上記ノイズが発生したときの位置カウンタ値Ｐは、タイミングｃ以降、ブラシレスモータ６０の実際の回転角に対応する値（実線）に対し、二点鎖線で示されるように「４」だけ小さくなる。
【００４５】
一方、ブラシレスモータ６０の逆回転中、例えば図７（ａ）に示されるノイズが発生し、そのノイズによって位置センサＳ１の出力信号が論理ハイレベル信号「Ｈ」になっているときに位置センサＳ２からのパルス信号の立ち上がりエッジが検出された場合にも、位置カウンタ値Ｐがブラシレスモータ６０の実際の回転角に対応する値からずれることになる。この場合には、時間の経過とともに図７の各パターンに沿って左側に推移することとなる。すなわち、上記ノイズの発生しているタイミングｃ，ｂ，ａでの位置センサＳ１，Ｓ２からの信号の出力パターンが図８（ｂ）に示されるようなパターンとなり、タイミングｃ，ｂ，ａでそれぞれ位置カウンタ値Ｐに「１」が加算され、図７（ｅ）のタイミングｃ，ｂ，ａでは当該カウンタ値が一点鎖線で示されるように「１」ずつ増加するようになる。一方、仮に上記ノイズが発生していないとすれば、タイミングｃ，ｂ，ａではタイミングｂで位置カウンタ値Ｐに「−１」が加算されるだけとなるはずである。このため、上記ノイズが発生したときの位置カウンタ値Ｐは、タイミングａ以降、ブラシレスモータ６０の実際の回転角に対応する値（実線）に対し、二点鎖線で示されるように「４」だけ大きくなる。
【００４６】
以上のように、位置センサＳ１，Ｓ２によって出力されるパルス信号にノイズが重畳すると、位置カウンタ値Ｐ、換言すれば吸気バルブ２０の最大リフト量の変更履歴に誤差が生じる。こうした誤差が生じると、上述したフィードバック制御に用いられる最大リフト量の値と実際の値との間にずれが発生し、制御の精度が低下することとなる。
【００４７】
もっとも、こうした誤差が発生した場合であっても、位置カウンタ値Ｐの推移と電気角カウンタ値Ｅの推移とを比較することによりその誤差を検出し、フィードバック制御に用いられる最大リフト量の値が実際の値と一致するようにこれを補正することはできる。但し、機関運転中にこの誤差に対する補正を行うと、その補正タイミングにおいて吸気バルブ２０の最大リフト量が不連続的に変化することとなり、機関運転状態が急激に変化するおそれがある。このため、こうした補正は機関運転が停止した後に行うことが望ましい。
【００４８】
以下、マイクロコンピュータ７０により実行される位置カウンタ値Ｐの誤差検出処理及びその誤差に基づいて位置カウンタ値Ｐを補正する処理について説明する。
この処理ではまず、各電気角センサＤ１〜Ｄ３から出力されるパルス信号のエッジ発生毎に、今回のエッジ発生時における位置カウンタ値Ｐｎと前回のエッジ発生時における位置カウンタ値Ｐｎ-1とのカウント差（Ｐｎ−Ｐｎ-1）を算出する。
【００４９】
電気角カウンタ値Ｅの変化に基づきブラシレスモータ６０の回転状態が正回転中、逆回転中、及び正逆回転反転中のうちのいずれであるかを判断する。より詳しくは、各電気角センサＤ１〜Ｄ３からのパルス信号の前回のエッジ発生時と今回のエッジ発生時とにおける各々の電気角カウンタ値Ｅの変化方向に基づき、ブラシレスモータ６０が正回転中、逆回転中、及び正逆回転反転中のいずれであるかを判断する。すなわち、前回のエッジ発生時と今回のエッジ発生時との電気角カウンタ値Ｅの変化方向が共に増加方向であればモータ正回転中である旨の判断を行い、それらが共に減少方向であればモータ逆回転中である旨の判断を行う。また、前回のエッジ発生時と今回のエッジ発生時との電気角カウンタ値Ｅの変化方向が増加方向と減少方向とで異なっていれば、モータ正逆回転反転中である旨の判断を行う。
【００５０】
そして、ブラシレスモータ６０の回転状態に応じてカウント差（Ｐｎ−Ｐｎ-1）の正常時の値である正常値Ｊを設定する。正常値Ｊの設定では、電気角センサＤ１〜Ｄ３からのパルス信号のエッジ間における位置センサＳ１，Ｓ２から出力されるパルス信号のエッジ数の適正値ｍ（本実施形態では「４」）に対応し、正常値Ｊがブラシレスモータ６０正回転中であれば値「ｍ」とされ、モータ逆回転中であれば値「−ｍ」とされ、モータ正逆回転反転中であれば「０」とされる。
【００５１】
正常値Ｊに対するカウント差（Ｐｎ−Ｐｎ-1）のずれ量、すなわち位置カウンタ値Ｐの誤差ΔＰを下記の演算式（１）に基づいて算出する。
ΔＰ  ←  Ｊ−（Ｐｎ−Ｐｎ-1）  ・・・（１）
そして、ＤＲＡＭ７２ｂに記憶される累積誤差ＰＧを下記の演算式（２）に基づいて更新する。
【００５２】
ＰＧ  ←  ＰＧ＋ΔＰ  ・・・（２）
内燃機関の運転が停止したときに、ストロークカウンタ値Ｓの最終値Ｓｅを下記の演算式（３）に基づいて補正し、次回機関始動時における初期値Ｓｇとして学習してＥＥＰＲＯＭ７２ｃに記憶する。
【００５３】
Ｓｇ  ←  Ｓｅ−ＰＧ  ・・・（３）
このように、機関運転が停止した後にストロークカウンタ値Ｓの最終値Ｓｅ、換言すればブラシレスモータ６０の最終的な作動位置の補正を行うことにより、機関運転状態の急激な変化を回避しつつも、位置センサＳ１，Ｓ２による出力信号にノイズが重畳することに起因して吸気バルブ２０の最大リフト量の制御精度が低下することを抑制することができるようになる。
【００５４】
ところで前述したように、内燃機関が停止したことを判断する停止判断手段として、以下の構成が採用される。すなわち、電子制御ユニット８０はクランク角センサ７４の出力信号に基づいてクランクシャフトの回転速度、すなわち機関回転速度Ｎｅを検出してＣＡＮを通じてマイクロコンピュータ７０に送信するとともに、マイクロコンピュータ７０は、電子制御ユニット８０によって送信された機関回転速度ＮｅをＤＲＡＭ７２ｂに記憶する。そして、マイクロコンピュータ７０は、このＤＲＡＭ７２ｂに記憶された機関回転速度Ｎｅの検出値が所定の閾値（例えば２００ｒｐｍ）よりも小さくなったときに、内燃機関が停止した旨判断するようにしている。
【００５５】
こうした構成を採用した場合、例えばＤＲＡＭ７２ｂのデータ化けやＣＡＮを介して転送される信号の異常等により、ＤＲＡＭ７２ｂに記憶された機関回転速度Ｎｅの検出値が一時的に例えば「０ｒｐｍ」等、機関回転速度Ｎｅの実際値と対応しない値になることがある。したがって、内燃機関が運転しているにもかかわらず、機関回転速度Ｎｅの検出値が所定の閾値よりも小さくなり、これにより内燃機関が停止した旨の判断がなされてしまうおそれがある。そしてこのような誤判断が発生すると、機関運転中にＤＲＡＭ７２ｂに記憶される累積誤差ＰＧに基づいてストロークカウンタ値Ｓが補正されてしまい、最大リフト量の変化に伴って機関出力が不連続的に変化して機関運転状態が急激に変化することが懸念される。
【００５６】
そこで、本実施形態にかかる制御システムでは、こうした不都合を好適に抑制する構成を採用するようにしている。以下、図９のフローチャートを参照してストロークカウンタ値Ｓを補正する処理の手順について説明する。なお、図９に示される一連の処理は、マイクロコンピュータ７０により所定の周期をもって繰り返し実行される。
【００５７】
この処理ではまず、上述したように位置カウンタ値Ｐの誤差ΔＰを検出するとともに、ＤＲＡＭ７２ｂに記憶される累積誤差ＰＧを更新する（ステップＳ１０）。そして、電子制御ユニット８０によって送信された機関回転速度Ｎｅを受信してＤＲＡＭ７２ｂに記憶する（ステップＳ２０）。
【００５８】
ＤＲＡＭ７２ｂに記憶された機関回転速度Ｎｅが予めＥＥＰＲＯＭ７２ｃに記憶された閾値Ｎｓよりも小さいか否かを判断する（ステップＳ３０）。なお、この閾値Ｎｓは、通常の機関運転時における機関回転速度の最低値に設定されている。
【００５９】
機関回転速度Ｎｅが閾値Ｎｓよりも大きい旨判断した場合（ステップＳ３０：ＮＯ）には、内燃機関が停止していないと判断し、タイマ値ｔをリセットして（ステップＳ３１）この一連の処理を一旦終了する。ここで、このタイマ値ｔは、機関回転速度Ｎｅがその閾値Ｎｓよりも小さな値となった状態が継続した期間の長さを示すものであり、機関始動時に「０」に設定される。
【００６０】
一方、機関回転速度Ｎｅが閾値Ｎｓよりも小さい旨判断した場合（ステップＳ３０：ＹＥＳ）、換言すれば機関回転速度Ｎｅが機関停止を示す値である場合には、タイマ値ｔをインクリメントし（ステップＳ４０）、インクリメントされたタイマ値ｔが予めＲＯＭ７２ａに記憶された所定値ｔ０よりも大きいか否かを判断する（ステップＳ５０）。
【００６１】
タイマ値ｔが所定値ｔ０よりも小さい旨判断した場合（ステップＳ５０：ＮＯ）には、機関回転速度Ｎｅが閾値Ｎｓよりも小さな値となっているが、何らかの要因でその機関回転速度Ｎｅが一時的に異常値となった可能性があると判断し、上記ステップ２０に戻って機関回転速度Ｎｅを再度検出する。
【００６２】
一方、タイマ値ｔが所定値ｔ０よりも大きい旨判断した場合（ステップＳ５０：ＹＥＳ）には、内燃機関が停止したと判断し、その時点の累積誤差ＰＧに基づいてストロークカウンタ値Ｓの最終値Ｓｅを補正する（ステップＳ６０）。そして、更新された最終値Ｓｅを次回機関始動時の初期値Ｓｇとして学習してＥＥＰＲＯＭ７２ｃに記憶し（ステップＳ７０）、この一連の処理を一旦終了する。
【００６３】
以下、図１０を参照して上述した補正処理についてその一具体例を説明する。ここで、図１０は、機関運転中における機関回転速度Ｎｅ、ストロークカウンタ値Ｓ、累積誤差ＰＧ及びタイマ値ｔの時間的な推移例を示すタイミングチャートである。
【００６４】
図１０に示されるように、内燃機関の始動時（時点Ｔ１）に、マイクロコンピュータ７０は、ＥＥＰＲＯＭ７２ｃに記憶された前回機関停止時のストロークカウンタ値Ｓの最終値、すなわち今回機関始動時のストロークカウンタ値Ｓの初期値Ｓｇを読み出すとともに、累積誤差ＰＧ及びタイマ値ｔを「０」に設定する。そして、吸気バルブ２０の最大リフト量がマイクロコンピュータ７０により機関運転状態に基づいて制御されるとともに、ストロークカウンタ値Ｓが更新される。
【００６５】
機関運転中に、マイクロコンピュータ７０は、上述したようにノイズの発生等により生じた位置カウンタ値Ｐの誤差ΔＰを検出してＤＲＡＭ７２ｂに記憶される累積誤差ＰＧを更新する（ステップＳ１０）とともに、電子制御ユニット８０によって送信された機関回転速度Ｎｅを受信してＤＲＡＭ７２ｂに記憶する（ステップＳ２０）。
【００６６】
例えば時点Ｔ２から、ＤＲＡＭ７２ｂに記憶される機関回転速度Ｎｅが予めＥＥＰＲＯＭ７２ｃに記憶された閾値Ｎｓ（例えば２００ｒｐｍ）よりも小さくなった場合（ステップＳ３０：ＹＥＳ）には、所定の期間毎にタイマ値ｔをインクリメントする（ステップＳ４０）。
【００６７】
タイマ値ｔが予めＥＥＰＲＯＭ７２ｃに記憶された所定値ｔ０よりも大きくなる前（時点Ｔ３）に、ＤＲＡＭ７２ｂに記憶される機関回転速度Ｎｅが正常値に復帰した場合（ステップＳ３０：ＮＯ）には、マイクロコンピュータ７０は、内燃機関の停止ではなく、機関回転速度Ｎｅが一時的に異常値となり閾値Ｎｓよりも小さくなった旨判断する。そしてマイクロコンピュータ７０は、累積誤差ＰＧ及びストロークカウンタ値Ｓを維持するとともに、タイマ値ｔをリセットする（ステップＳ３１）。
【００６８】
一方、例えば時点Ｔ４から機関回転速度Ｎｅが閾値Ｎｓよりも小さくなり、タイマ値ｔが所定値ｔ０よりも大きくなったとき（時点Ｔ５）まで、その機関回転速度Ｎｅが閾値Ｎｓよりも小さくなった状態が継続した場合（ステップＳ５０：ＹＥＳ）には、マイクロコンピュータ７０は、内燃機関が停止した旨判断し、ストロークカウンタ値Ｓの最終値Ｓｅを補正する（ステップＳ６０）。具体的には、最終値Ｓｅから時点Ｔ５の累積誤差ＰＧｅを引いた差を算出し、ＤＲＡＭ７２ｂに記憶される最終値Ｓｅをその算出された差に書き替える。そして、補正された最終値Ｓｅを次回機関始動時の初期値Ｓｇ１として学習してＥＥＰＲＯＭ７２ｃに記憶する（ステップＳ７０）。
【００６９】
以上説明した第１の実施形態によれば、以下の効果が得られるようになる。
（１）内燃機関が停止した後に、位置カウンタ値Ｐにかかる累積誤差ＰＧに基づいてストロークカウンタ値Ｓの最終値Ｓｅを補正し、その補正後の値を次回機関始動時における初期値Ｓｇとして記憶することとした。そのため、機関運転中において位置カウンタ値Ｐに誤差が生じたような場合でも、次回の機関始動時からは、その誤差に起因する吸気バルブ２０の最大リフト量の制御精度低下を抑制することができる。また、機関回転速度Ｎｅが閾値Ｎｓよりも小さくなった状態、換言すれば機関回転速度Ｎｅが機関停止を示す値である状態が、タイマ値ｔが所定値ｔ０よりも大きくなったときまで継続したことを条件に内燃機関が停止した旨判断することとした。そのため、例えばＤＲＡＭ７２ｂに記憶される機関回転速度Ｎｅが何らかの要因で一時的に異常値となり、機関運転中であるにも関わらずこれが機関停止を示す値にあった場合であっても、所定の期間が経過する前、すなわちタイマ値ｔが所定値ｔ０よりも大きくなる前に復帰すれば、機関運転中に機関停止状態にある旨の誤った判断がなされることはない。したがって、本実施形態の構成によれば、位置カウンタ値Ｐに誤差、換言すれば吸気バルブ２０の最大リフト量の変更履歴に誤差が生じることによる最大リフト量の制御精度低下を抑制しつつ、機関運転が停止した旨の誤判断がなされることに起因して機関運転中に最大リフト量に対する補正が誤って行われることを抑制することができる。その結果、吸気バルブ２０の最大リフト量の補正に起因して機関運転状態が急激に変化することを好適に抑制することができる。
【００７０】
（２）本実施形態のように、ロータリーエンコーダ（位置センサＳ１，Ｓ２）の出力信号に基づいて最大リフト量の変更履歴を検出する等、その変更履歴に誤差が生じやすい場合にあっても、その誤差による悪影響を抑制することができる。
【００７１】
なお、上記実施形態は、これを適宜変更した以下の形態にて実施することもできる。
・上記実施形態では、機関回転速度Ｎｅが機関停止を示す値であるかどうかを判断するための閾値Ｎｓを通常機関運転時における機関回転速度の最低値に設定するようにしているが、これに限らず、閾値Ｎｓはこれを例えば「０ｒｐｍ」とする等、機関停止を適切に検出することのできる値であれば適宜変更することができる。
【００７２】
・上記実施形態では、吸気バルブ２０の最大リフト量について機関始動時における初期値からの変更履歴を検出する手段として、マグネットの磁気に応じて信号を出力するエンコーダ（位置センサＳ１，Ｓ２）を採用している。これに限らず、例えば光学式エンコーダ等、その変更履歴を検出することのできる他種のセンサを採用することもできる。
【００７３】
・上記実施形態では、マイクロコンピュータ７０がＣＡＮを通じて内燃機関の制御を統括的に行う電子制御ユニット８０に接続され、電子制御ユニット８０によって送信される吸気バルブ２０の最大リフト量の目標値や機関回転速度Ｎｅ等に基づいてブラシレスモータ６０を駆動制御する構成を採用している。これに限らず、クランク角センサ７４等、機関状態量を検出するセンサがマイクロコンピュータ７０に接続され、マイクロコンピュータ７０により吸気バルブ２０の最大リフト量の目標値と設定するとともにその最大リフト量の実際値を算出し、これら実際値と目標値との偏差に基づいてブラシレスモータ６０を駆動制御する構成を採用することもできる。
【００７４】
・上記実施形態では、機関停止を判断するための判定値として、機関回転速度Ｎｅを採用し、タイマ値ｔが所定値ｔ０よりも大きくなったときまで機関回転速度Ｎｅが閾値Ｎｓよりも小さくなった状態が継続したことを条件に内燃機関が停止した旨判断するようにしている。これに限らず、例えば内燃機関のオイルポンプの吐出圧や吸入空気量など、機関停止を示すことのできる他の状態量を採用することもできる。例えばオイルポンプの吐出圧を判定値として採用する場合には、タイマ値ｔが所定値ｔ０よりも大きくなったときまでその吐出圧が所定の圧力よりも小さくなった状態が継続したことを条件に内燃機関が停止した旨判断することもできる。
【００７５】
・上記実施形態では、吸気バルブ２０の最大リフト量をフィードバック制御する内燃機関の制御システムに本発明を適用する場合について例示したが、排気バルブ１０の最大リフト量をフィードバック制御するシステムにおいても、基本的に同様の態様をもって本発明を適用することができる。また、機関バルブの最大リフト量に限らず、他の機関状態量をフィードバック制御する内燃機関の制御システムにも本発明を適用することができる。
【図面の簡単な説明】
【００７６】
【図１】この発明の一実施形態にかかる内燃機関の動弁系についてその一部断面構造を示す断面図。
【図２】内燃機関の動弁系についてその配設態様を示す平面図。
【図３】機械的仲介駆動機構についてその内部構造を示す破断斜視図。
【図４】コントロールシャフト、ブラシレスモータ、マイクロコンピュータ及び電子制御ユニットを示すブロック図。
【図５】（ａ）〜（ｈ）各センサの出力波形及び各カウンタ値が推移するパターン変化を示すタイミングチャート。
【図６】（ａ），（ｂ）各センサの出力信号と電気角カウンタ値及び位置カウンタ値との関係を示す表。
【図７】（ａ）〜（ｅ）ブラシレスモータの正・逆回転中にノイズが発生した場合における位置センサの出力波形及び電気角カウンタ値、位置カウンタ値の推移を示すタイミングチャート。
【図８】（ａ），（ｂ）ブラシレスモータの正・逆回転中にノイズが発生したときにノイズによる位置カウンタ値Ｐの加減算態様を示す図。
【図９】ストロークカウンタ値Ｓを補正する処理についてその処理手順を示すフローチャート。
【図１０】ストロークカウンタ値Ｓを補正する処理における回転速度、ストロークカウンタ値、累積誤差及びタイマ値の時間的な推移例を示すタイミングチャート。
【符号の説明】
【００７７】
Ｓ１，Ｓ２…位置センサ、Ｄ１〜Ｄ３…電気角センサ、２…シリンダヘッド、３…シリンダヘッドカバー、３ａ，３ｂ…ストッパ、１０…排気バルブ、１１…バルブスプリング、１２…ラッシュアジャスタ、１３…ロッカーアーム、１３ａ…ローラ、１４…排気カムシャフト、１５…カム、１６…リテーナ、２０…吸気バルブ、２１…バルブスプリング、２２…ラッシュアジャスタ、２３…ロッカーアーム、２３ａ…ローラ、２４…吸気カムシャフト、２５…カム、２６…リテーナ、５０…仲介駆動機構、５１…入力部、５１ａ…ローラ、５１ｈ…ヘリカルスプライン、５２…出力部、５２ｈ…ヘリカルスプライン、５３…支持パイプ、５３ａ…長孔、５４…コントロールシャフト、５４ａ…係止部、５５…スライダギア、５５ａ…ヘリカルスプライン、５５ｂ…ヘリカルスプライン、５５ｃ…溝、５６…ブッシュ、５６ａ…貫通孔、５７…係止ピン、６０…ブラシレスモータ、６０ａ…出力軸、６１…変換機構、７０…マイクロコンピュータ（履歴検出手段、フィードバック制御手段、初期値記憶手段）、７１…中央演算処理装置（ＣＰＵ）、７２ａ…不揮発性メモリ（ＲＯＭ）、７２ｂ…揮発性メモリ（ＤＲＡＭ）、７２ｃ…不揮発性メモリ（ＥＥＰＲＯＭ）、７３…アクセルセンサ、７４…クランク角センサ、８０…電子制御ユニット、９０…排気動弁装置、１００…吸気動弁装置。
【図１】
2008223486.tif 000003
【図２】
2008223486.tif 000004
【図３】
2008223486.tif 000005
【図４】
2008223486.tif 000006
【図５】
2008223486.tif 000007
【図６】
2008223486.tif 000008
【図７】
2008223486.tif 000009
【図８】
2008223486.tif 000010
【図９】
2008223486.tif 000011
【図１０】
2008223486.tif 000012