(57)【特許請求の範囲】
【請求項１】
エンジンの吸排気ポートに介装した吸排気バルブを電磁コイルにより駆動制御する電磁駆動バルブにおいて、
上記吸気排気バルブにバルブリフトセンサを併設し、
エンジン停止時或いは非燃焼動作での始動時に、複数の上記吸排気バルブを順次動作させて最初の全開及び全閉動作時に検出した上記バルブリフトセンサの出力値に基づき上記各吸排気バルブに対する上記バルブリフトセンサの基準値を個別に学習する
ことを特徴とする電磁駆動バルブの制御装置。
【請求項２】
前記基準値に基づき前記電磁コイルに対する通電制御タイミングを補正することを特徴とする請求項１に記載の電磁駆動バルブの制御装置。
【請求項３】
前記基準値の学習において、前記吸排気バルブの全閉動作時に、前記バルブリフトセンサの出力値が、全閉動作時の出力値として初期設定されている所定の値から所定の範囲内にある場合に、前記吸排気バルブの全閉出力値であると判定し、前記バルブリフトセンサの出力値に基づき、前記バルブリフトセンサの全閉時の基準値を学習する
ことを特徴とする請求項１に記載の電磁駆動バルブの制御装置。
【請求項４】
前記基準値の学習において、前記吸排気バルブの全開動作時に、前記バルブリフトセンサの出力値が、全開動作時の出力値として初期設定されている所定の値から所定の範囲内にある場合に、前記吸排気バルブの全開時の出力値であると判定し、前記バルブリフトセンサの出力値に基づき、前記バルブリフトセンサの全開時の基準値を学習する
ことを特徴とする請求項１或いは２に記載の電磁駆動バルブの制御装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、エンジンの吸排気バルブを電磁駆動によって開閉動作させる電磁駆動バルブの制御装置に関する。
【０００２】
【従来の技術】
近年、エンジンの吸排気バルブの開閉動作を、カムシャフト等によって機械的に行うのではなく、電磁駆動により行うことで、吸排気バルブの開閉タイミングを電子制御する動弁システムが開発されており、例えば特開平８−１７０５０９号公報、或いは特開平８−２００１０８号公報に開示されている。
【０００３】
これらの先行技術に開示されている電磁駆動バルブは、吸排気バルブのバルブステムの上端に平板状のアーマチュアを固設し、このアーマチュアを挟んで吸気バルブを閉弁方向へ付勢するスプリングと開弁方向へ付勢するスプリングとを対設すると共に、この各スプリングの外周に開弁用電磁コイルと閉弁用電磁コイルとを配設し、上記閉弁用電磁コイルを励磁すると、上記アーマチュアが開弁用スプリングの付勢力に抗して吸引されて吸排気バルブが閉弁し、又、開弁用電磁コイルを励磁すると、上記アーマチュアが閉弁用スプリングの付勢力に抗して吸引されて吸排気バルブが開弁する。この吸排気バルブの開閉タイミングをクランク軸の回転に同期して制御することで、エンジンを駆動させる。
【０００４】
【発明が解決しようとする課題】
しかし、上記各電磁コイルが非通電状態である初期状態における吸排気バルブは、対向するスプリングの付勢力で中立位置に静止しているが、この両スプリング力には製造誤差があるため、このときの静止位置はバルブ毎に相違している。
【０００５】
従って、正確なタイミングで吸排気バルブを全閉或いは全開させるには、電磁駆動回路の容量に余裕を持たせ、比較的大きな電流により吸排気バルブを動作させる必要がある。
【０００６】
その結果、装置全体の大型化、構造の複雑化を招いてしまうばかりでなく、閉弁、或いは開弁状態を維持するバルブホールド電流のピーク値が高くなり、消費電力を浪費してしまうことになる。
【０００７】
これに対処するに、上記吸排気バルブの中立、或いは全閉、全開位置を検出するバルブリフトセンサを上記吸排気バルブに併設し、このバルブリフトセンサの出力値に基づいてバルブホール電流の通電タイミングを制御することも考えられるが、上記バルブリフトセンサにも個体差があり、更には経時劣化してしまうため、吸排気バルブの絶対位置を常に正確に検出することはできない。
【０００８】
本発明は、上記事情に鑑み、装置全体の大型化、構造の複雑化を招くことなく、吸排気バルブの位置を常に正確に検出することのできる電磁駆動バルブの制御装置を提供することを目的とする。
【０００９】
【課題を解決するための手段】
上記目的を達成するため本発明による電磁駆動バルブの制御装置は、エンジンの吸排気ポートに介装した吸排気バルブを電磁コイルにより駆動制御する電磁駆動バルブにおいて、
上記吸気排気バルブにバルブリフトセンサを併設し、エンジン停止時或いは非燃焼状態での始動時に、複数の上記吸排気バルブを順次動作させて最初の全開及び全閉動作時に検出した上記バルブリフトセンサの出力値に基づき上記各吸排気バルブに対する上記バルブリフトセンサの基準値を個別に学習することを特徴とする。
【００１０】
この場合、好ましくは、前記基準値に基づき前記電磁コイルに対する通電制御タイミングを補正することを特徴とする。
【００１１】
又、前記基準値の学習において、前記吸排気バルブの全閉動作時に、前記バルブリフトセンサの出力値が、全閉動作時の出力値として初期設定されている所定の値から所定の範囲内にある場合に、前記吸排気バルブの全閉出力値であると判定し、前記バルブリフトセンサの出力値に基づき、前記バルブリフトセンサの全閉時の基準値を学習することを特徴とする。
【００１２】
更に、前記基準値の学習において、前記吸排気バルブの全開動作時に、前記バルブリフトセンサの出力値が、全開動作時の出力値として初期設定されている所定の値から所定の範囲内にある場合に、前記吸排気バルブの全開時の出力値であると判定し、前記バルブリフトセンサの出力値に基づき、前記バルブリフトセンサの全開時の基準値を学習することを特徴とする。
【００１３】
本発明によれば、エンジン停止時或いは始動時に、吸排気バルブを最初に全開或いは全閉させたときのバルブリフトセンサの出力値を検出し、この出力値に基づき上記吸排気バルブに対する上記バルブリフトセンサの基準値を学習し、以後、この基準値に基づいて上記吸排気バルブを吸引する電磁コイルに対する通電制御タイミングを補正する。
【００１４】
【発明の実施の形態】
以下、図面に基づいて本発明の一実施の形態を説明する。図１〜図７に本発明の第１実施の形態を示す。
【００１５】
図１の符号１は、エンジンの各気筒の吸気ポート及び排気ポートに介装される電磁駆動バルブであり、本実施の形態では、シリンダヘッド２の植設されたバルブステムガイド３に摺動自在に支持されているバルブ４（吸気バルブ或いは排気バルブ）を開閉動作させるため、開弁用電磁コイル５と閉弁用電磁コイル６とを対向配置したツインコイル方式を採用している。
【００１６】
上記電磁駆動バルブ１では、上記開弁用電磁コイル５がヨーク７に収納されて上記シリンダヘッド２側に配設され、各部材の個体間の寸法ばらつきを吸収して上記バルブ４のリフト量を調整するためのリフトアジャスタ８を介して上記閉弁用電磁コイル６を収納するヨーク９と結合されている。さらに、上記閉弁用電磁コイル６を収納するヨーク９の上部には、後述するアーマチュア１７を軸方向に移動させるためのガイド部を形成するとともに上記バルブ４のリフト量を検出するためのリフト位置センサの一例である渦電流式バルブリフトセンサ１０を装着するケース１１が接合されている。
【００１７】
上記開弁用電磁コイル５の内部には、上記バルブ４のバルブヘッド４ａをバルブシート１２に押圧する方向に付勢する閉弁用スプリング１３が収納されている。この閉弁用スプリング１３は、上記バルブ４のバルブステム４ｂ端部にコッタピン１４を介して固着されるリテーナ１５と、上記シリンダヘッド２側の上記バルブステムガイド３周囲に形成された受け座部分との間に介装されている。尚、上記バルブステム４ｂ先端には、後述するクリアランス調整用のシム１６が装着されている。
【００１８】
また、上記電磁駆動バルブ１の上記リフトアジャスタ８によって形成される空間内には、上記開弁用電磁コイル５或いは上記閉弁用電磁コイル６が励磁されたとき、これらからの磁力を受けて上記バルブ４を開閉動作させるための平板状のアーマチュア１７が配設されている。
【００１９】
上記アーマチュア１７の上記開弁用電磁コイル５側の中心部には、アーマチュアステム１７ａが一体的或いは別体で立設されており、このアーマチュアステム１７ａが上記閉弁用電磁コイル６内部に突出する上記ケース１１の円筒部分に設けられたアーマチュアステムガイド１８に摺動自在に挿通されている。また、上記アーマチュア１７と上記ケース１１の円筒部分基部に形成された受け部との間には、上記バルブヘッド４ａを上記バルブシート１２から離間する方向に付勢する開弁用スプリング１９が介装されている。
【００２０】
尚、上記開弁用電磁コイル５及び閉弁用電磁コイル６が共にＯＦＦの状態では、上記アーマチュア１７は、上記バルブステム４ｂ先端のシム１６に当接して上記閉弁用スプリング１３の付勢力と上記開弁用スプリング１９の付勢力との釣り合う位置で静止している。
【００２１】
さらに、上記アーマチュアステム１７ａの先端側は、細径のニードル状に形成されて上記バルブリフトセンサ１０の被検出体であるリフトセンサ用ターゲット１７ｃとなっており、このリフトセンサ用ターゲット１７ｃの軸方向の動きが上記バルブ４のリフトとして上記バルブリフトセンサ１０によって検出される。尚、上記バルブリフトセンサ１０は、バルブリフト量に対してリニアな電圧を出力するものとする。
【００２２】
上記構成による電磁駆動バルブ１は、電磁バルブ駆動制御装置３０によって駆動制御される。この電磁バルブ駆動制御装置３０では、マイクロコンピュータ（マイコン）３１により、エンジン回転数、アクセル開度、クランク角パルス、エンジン冷却水温等の各種データに基づいて各気筒の吸気バルブ及び排気バルブの開閉タイミングを演算し、閉弁用電磁コイル６、開弁用電磁コイル５を、それぞれ、閉弁用電磁コイル駆動回路３６、開弁用電磁コイル駆動回路３７を介して交互にＯＮすることで、バルブ４を開閉動作させる。
【００２３】
すなわち、バルブ４を閉弁状態から開弁させるには、閉弁用電磁コイル６をＯＦＦとして所定のタイミングで開弁用電磁コイル５をＯＮする。これにより開弁用電磁コイル５に吸引力が発生し、アーマチュア１７が閉弁用スプリング１３の付勢力と開弁用スプリング１９の付勢力との釣り合い位置から更に開弁用電磁コイル５側に移動し、アーマチュア１７が開弁用電磁コイル５側に吸着されて停止したとき、バルブ４が最大リフト位置（バルブ全開位置）に達して開弁動作が完了する。
【００２４】
一方、バルブ４を開弁状態から閉弁させるには、開弁用電磁コイル５をＯＦＦとした後、所定のタイミングで閉弁用電磁コイル６をＯＮする。この閉弁動作では、閉弁用スプリング１３の付勢力と開弁用スプリング１９の付勢力との釣り合い位置への復帰力、及び、閉弁用電磁コイル６の吸引力により、アーマチュア１７が閉弁用電磁コイル６側に移動し、最終的にアーマチュア１７が閉弁用電磁コイル６側に吸着されて停止したとき、アーマチュア１７がバルブステム４ｂ先端のシム１６から離間して所定のクリアランスが形成され、閉弁用スプリング１３によってバルブヘッド４ａがバルブシート１２に押圧されて着座する（バルブ全閉）。
【００２５】
上記電磁バルブ駆動制御装置３０は、マイクロコンピュータ３１、電磁コイル制御回路３３、ホールド電流制御回路３５を備えている。上記マイクロコンピュータ３１では、エンジン回転数、アクセル開度、クランク角パルス、エンジン冷却水温等の各種データに基づいて、各気筒の吸気バルブ及び排気バルブの開閉タイミングを演算し、電磁コイル制御回路３３へ吸気バルブ及び排気バルブの閉弁或いは開弁の開始を表すトリガ信号を出力すると共に、上記ホールド電流制御回路３５へ、バルブ全開或いはバルブ全閉の保持期間を定めるバルブホールド時間データ及びＰＷＭ信号を出力する。尚、図においては、１個の電磁駆動バルブ１を駆動する回路系統を代表して示しており、実際には、マイクロコンピュータ３１の後段に、同様の構成の回路がエンジンの吸排気バルブの数に応じた系統数だけ備えられている。
【００２６】
電磁コイル制御回路３３では、上記マイクロコンピュータ３１からのトリガ信号に基づき、閉弁用電磁コイル駆動回路３６及び開弁用電磁コイル駆動回路３７へ閉弁時或いは開弁時の駆動パルス信号を出力する。
【００２７】
上記閉弁用電磁コイル駆動回路３６、及び開弁用電磁コイル駆動回路３７では、上記電磁コイル制御回路３３から出力される駆動パルス信号に基づき、高電圧での過励磁を行ってコイル電流の立ち上げを迅速化して必要な吸引力を確保し、全閉位置あるいは全開位置に達したとき、上記ホールド電流制御回路３５から出力されるＰＷＭ信号に基づいて定格電圧でのチョッパ制御を行い、規定のホールド電流を維持する。
【００２８】
閉弁用電磁コイル駆動回路３６及び開弁用電磁コイル駆動回路３７は同様の構成であり、図２に示すように、電源（バッテリ）７１にチャージャ制御部７２を介して高圧電源チャージャ７３が接続され、この高圧電源チャージャ７３に、ダイオード７５を介して、立ち上がり初期の吸排気バルブを加速させる過励磁（一次過励磁）用電源をチャージするコンデンサ７６が接続されているとともに、ダイオード７９を介して上記立ち上がり初期の過励磁電圧より若干低い高電圧での、全閉或いは全開に達する直前の速度を微調整する過励磁（二次過励磁）用電源をチャージするコンデンサ８０が接続されている。
【００２９】
上記チャージャ制御部７２は、マイクロコンピュータ３１からのチャージ信号（閉弁チャージ信号あるいは開弁チャージ信号）によって上記高圧電源チャージャ７３を動作させ、上記高圧電源チャージャ７３の出力側に接続された充電電圧検出部７４からの信号に基づいて、上記電源７１の電圧を設定電圧（例えば、１２０Ｖ）に昇圧させ、上記各コンデンサ７６，８０へ充電する。
【００３０】
一次過励磁用電源をチャージするコンデンサ７６には、ＮＰＮ型パワートランジスタ７７のコレクタが接続されており、このパワートランジスタ７７のエミッタがダイオード７８を介して開弁用電磁コイル５あるいは閉弁用電磁コイル６に接続されている。
【００３１】
又、二次過励磁用電源をチャージするコンデンサ８０には、ＮＰＮ型パワートランジスタ８１のコレクタが接続されており、このパワートランジスタ８１のエミッタがダイオード８２を介して開弁用電磁コイル５あるいは閉弁用電磁コイル６に接続されている。
【００３２】
更に、上記電源７１にホールド電流用のＮＰＮ型パワートランジスタ８３のコレクタが接続されており、このパワートランジスタ８３のエミッタがダイオード８４を介して開弁用電磁コイル５あるいは閉弁用電磁コイル６に接続されている。
【００３３】
又、上記各パワートランジスタ７７，８１のベースに電磁コイル制御回路３３が接続され、一方パワートランジスタ８３のベースにホールド電流制御回路３５が接続されている。
上記電磁コイル制御回路３３では、吸気バルブ或いは排気バルブの立ち上がり初期の区間では、上記パワートランジスタ７７のベースにトリガ信号を出力し、又、吸気バルブ或いは排気バルブの全開或いは全閉に達する直前の区間では、上記パワートランジスタ８１のベースにトリガ信号を出力する。又、上記ホールド電流制御回路３５では、バルブ全開、或いは全閉の区間において、上記パワートランジスタ８３のベースにＰＷＭ信号を出力し、上記開弁用電磁コイル５（或いは閉弁用電磁コイル６）に通電するホールド電流を生成する。
【００３４】
その結果、吸排気バルブの閉弁或いは開弁初期の加速応答性が良くなり、又全閉或いは全開に達するときには速度が微調整されるため着座時の衝撃が緩和される。
【００３５】
又、上記マイクロコンピュータ３１の入力側には、バルブリフトセンサ１０以外に、イグニッションスイッチ４０、スタータスイッチ４１、及びクランク角センサ４２が接続されていると共に、充電電圧検出部７４が接続されて、コンデンサ電圧がモニタされる。
【００３６】
更に、上記マイクロコンピュータ３１の出力側には、エンジン制御ユニット（図示せず）が接続されており、このエンジン制御ユニット対し、スタータモータの通電を許可するスタータモータ通電信号、電磁駆動バルブ１の制御が始動時制御を終了して正規バルブタイミングでの制御に切換ったことを通知し、燃料噴射及び点火時期を正規のタイミングで動作させるための正規タイミングバルブ動作信号が出力される。
【００３７】
尚、イグニッションスイッチ４０がＯＦＦ状態にあるときの上記電磁駆動バルブ１に設けた各電磁コイル５，６は非通電状態にあるため、各バルブ４は、両スプリング１３，１９の釣り合いのとれた中立位置、即ち、図３に示すように、バルブ半開状態で静止している。そのため、各バルブ４が中立位置にあるとき互いに干渉しないように、バルブ形状或いは配置が設定されており、又、ピストン４６には中立位置にあるときのバルブ４との干渉を避けるためにハーフリセス４６ａが形成されている。
【００３８】
上記電磁バルブ駆動制御装置３０における電磁駆動バルブ１の始動時制御は、図４、図５に示すフローチャートに従って処理される。
【００３９】
以下、図４の始動時制御ルーチン、及び図５のバルブ吸引サブルーチンに従い、図６のタイミングチャートを参照しながら、本実施の形態で採用する始動時制御処理について説明する。
本実施の形態では、始動時に閉弁用のコンデンサを先に充電させた後にスタータモータを起動させる。そして、エンジン回転数が所定回転数に到達したときにすべてのバルブを順次クランク角度に非同期で閉弁動作させてバルブ全閉時の上記バルブリフトセンサ１０の出力値を全閉基準値として設定する。その後、それぞれのバルブ４を正規のバルブタイミングで開弁動作させ、このときの最初のバルブ全開時の上記バルブリフトセンサ１０の出力値を全開基準値として設定する。
【００４０】
図４の始動時制御ルーチンでは、先ず、ステップＳ１で、イグニッションスイッチ４０を参照し、イグニッションスイッチ４０がＯＦＦのときは、そのままルーチンを抜け、イグニッションスイッチ４０がＯＮするまで待機する。そして、イグニッションスイッチ４０がＯＮしたとき（時間ｔ１）、ステップＳ２へ進み、閉弁用電磁コイル駆動回路３６のコンデンサ７６，８０に対する充電を開始し、ステップＳ３で、コンデンサ電圧を検出する。
【００４１】
そして、上記コンデンサ電圧がバルブ４を吸引するに十分な電圧（設定電圧）まで達したか否かを調べ、達していないときはステップＳ１へ戻る。一方、上記コンデンサ電圧が設定電圧に達したとき（時間ｔ２）は、ステップＳ４へ進み、スタータスイッチ４１を参照する。ここで、スタータスイッチ４１がＯＮされていないときは、クランキング開始前の状態であるためステップＳ１へ戻り、又、スタータスイッチ４１がＯＮされているときは、ステップＳ５へ進み、スタータモータの通電を許可するスタータモータ通電信号を、図示しないエンジン制御装置へ出力し、スタータモータを起動させる。従って、イグニッションスイッチ４０をＯＮした直後にスタータスイッチ４１をＯＮしても、コンデンサ電圧が設定値まで達ていないときはスタータモータは起動しない。
【００４２】
上記ステップＳ５で、スタータモータに対する通電が許可されると、ステップＳ６では、開弁用電磁コイル駆動回路３７のコンデンサ７６，８０に対する充電を開始する。
【００４３】
上記スタータモータを起動させるとき、上記両電磁コイル駆動回路３６，３７では、コンデンサ７６，８０に電圧を充電しているだけであるため、各気筒に配設されているバルブ４は、スプリング１３，１９で釣り合いのとれた中立位置、即ち、半開状態にあるため、燃焼室内がピストン４６により圧縮、或いは膨張されず、スタータモータの起動負荷が軽減され、その分、クランク軸を回転するスタータモータの容量を小さくすることができる。
【００４４】
そして、スタータモータが起動されると、クランク角センサ４２で検出した、クランク軸に同期して出力されるクランクパルスに基づき算出したエンジン回転数と設定回転数とを比較し、エンジン回転数が設定回転数に達するまでは、ステップＳ１へ戻り、設定回転数に達したとき（時間ｔ３）、ステップＳ８へ進み、全バルブ４を閉弁させる処理を行う。
【００４５】
このバルブ閉弁処理は、図５に示すバルブ吸引サブルーチンで行われる。以下、このバルブ吸引サブルーチンにおいては、先ず、ステップＳ２１で、特定のバルブ４（例えば、ある気筒の吸気バルブ）の閉弁用電磁コイル６に、上記コンデンサ７６，８０に充電されている一次過励磁電流、二次過励磁電流、ホールド電流を所定のタイミングで通電する（時間ｔ３〜ｔ４）。
【００４６】
そして、ステップＳ２２で次回のバルブ吸引に備えて閉弁用電磁コイル駆動回路３６のコンデンサ７６，８０を再充電する。さらに、ステップＳ２３でバルブリフトセンサ１０の出力を読込みホールド状態を判別する。
【００４７】
本実施の形態では、上記バルブリフトセンサ１０の出力値が全閉時の出力値として初期設定されている値から１０％以内で、且つバルブリフトセンサ１０の出力変化が１％以内の状態が継続したとき、バルブホールド、即ち、吸気バルブ４が着座した状態の出力値であると判定し、このときのバルブリフトセンサ１０の出力値を検出し、マイコン３１のＲＡＭ（図示せず）に全閉基準値として記憶し、ルーチンを抜ける。
【００４８】
以後、イグニッションスイッチ４０がＯＦＦされるまで、上記全閉基準値と上記バルブリフトセンサ１０からの出力値とを比較し、この出力値が上記全閉基準値に達したとき、吸気バルブ４が着座した状態と判定し、全閉状態を維持するホールド電流を設定時間出力する。
【００４９】
そして、１つのバルブ４のバルブホールドの検出が終了した後は、他のバルブ４（例えば、ある気筒の排気バルブ）について、上述したバルブ吸引サブルーチンを実行し、閉弁用電磁コイル６に対して所定タイミングで、一次過励磁電流、二次過励磁電流、ホールド電流を通電し（時間ｔ４〜ｔ５）、当該バルブ４のバルブホールド状態をバルブリフトセンサ１０の出力値に基づいて判定し、バルブホールドと判定したときは、このときのバルブリフトセンサ１０の出力値を検出し、マイコン３１のＲＡＭ（図示せず）に全閉基準値として記憶する。
【００５０】
以後、このときのバルブリフトセンサ１０の出力値と上記全閉基準値とを比較し、出力値が全閉基準値に達したとき、排気バルブ４が着座したと判定し、全閉状態を維持するホールド電流を設定時間出力する。
【００５１】
そして、上記排気バルブ４のバルブホールドの検出が終了したときは、他の全てのバルブ４についても、上記バルブ吸引サブルーチンを実行し、バルブ４を閉弁動作させると共にバルブホールド時のバルブリフトセンサ１０の全閉基準値を学習する。
【００５２】
上記バルブ吸引サブルーチンにより全てのバルブ４が閉弁したときは、上記始動時制御ルーチンのステップＳ９へ進み、クランク角センサ４２で検出したクランクパルスを検出し、ステップＳ１０にて特定クランク角パルスを基準として正規のバルブタイミングで、各気筒の吸気バルブ及び排気バルブを順次、全開動作させる。
【００５３】
そして、このときの上記バルブリフトセンサ１０のバルブホールドを判定し、このときのバルブリフトセンサ１０の出力値を全開基準値として、マイコン３１のＲＡＭ（図示せず）に記憶する。尚、このときのバルブホールド条件は、前述したバルブ吸引サブルーチンと同様であっても良い。
【００５４】
又、図６に示すように、本実施の形態では、クランク角センサ４２はクランク軸１回転で、１−２−１−３のクランク角パルスを発生するように設定されており、パルス数をカウントすることで、何れのクランク角を示すクランク角パルスであるかを特定することができる。
【００５５】
その後、ステップＳ１１へ進み、エンジン制御装置へ正規タイミングでバルブ動作開始されたことを示す正規タイミングバルブ動作信号を出力し、燃料噴射と点火とを許可し、ルーチンを抜ける。
【００５６】
その結果、燃料噴射対象気筒、及び点火対象気筒に対する燃料噴射と点火とが正規のタイミングで順次開始され、エンジンが始動する。尚、燃料噴射と点火は、全てのバルブ４が閉弁したときに開始するようにしても良い。
【００５７】
このように、本実施の形態では、イグニッションスイッチ４０をＯＮした後、スタータスイッチ４１をＯＮさせても、各電磁コイル駆動回路３６，３７に設けたコンデンサ７６，８０に対する充電が完了するまでは、スタータモータに対する通電を禁止するようにしたので、コンデンサ７６，８０への充電を十分に行うことができ、バルブ４を確実に吸引することができる。
【００５８】
又、起動時には、全バルブ４がスプリング１３，１９のスプリング力の釣り合いにより半開状態を維持しているため燃焼室が圧縮、膨張されず、スタータモータの起動負荷が軽減され、その分、スタータモータの容量を小さくすることができるばかりでなく、エンジン回転数を早く上昇させることができる。
【００５９】
更に、イグニッションスイッチＯＮ後の最初のバルブ全閉、及びバルブ全開時のホールド状態をそれぞれ検出し、そのときのバルブリフトセンサ１０の出力値を全閉基準値、全開基準値として記憶することで、エンジン始動の際に学習するようにしたので、バルブリフトセンサ１０の個体差、及び経時劣化による出力値の変動が修正され、バルブ４の全閉位置、及び全開位置を正確に検出できるようになり、その後のバルブタイミングの制御精度が向上する。
【００６０】
又、閉弁用電磁コイル駆動回路３６のコンデンサ７６，８０に対する充電を、イグニッションスイッチ４０をＯＮしたときに開始するようにしたので、イグニッションスイッチ４０をＯＮしたときからスタータモータ通電信号をＯＮするまでの時間を有効に利用することができ、エンジン始動時間を短縮することができる。
【００６１】
更に、始動時においては、各バルブ４を順次、全閉、全開動作させるようにしたので、バルブ動作時の電力が十分確保できると共に、動作後のコンデンサ７６，８０に対する再充電が同時に行われることがなく、その分、ピーク電流を低く抑えることができ、又、他のバルブの電流変化によるノイズ等も防止でき、全閉、全開位置の検出精度が向上する。
【００６２】
始動時はクランク角非同期で、各バルブ４を閉弁させるようにしたので、早期に各バルブ４を正規のタイミングにより全開動作させることができ、従って、燃料噴射、及び点火を正規のタイミングで早期に出力することができるようになり、エンジン始動時間の短縮を図ることができる。
【００６３】
又、ピストン４６にハーフリセスを形成したので、始動時にバルブ４が中立位置にあってもピストン４６とバルブ４とが干渉することが無く、燃焼室形状の設計の自由度が大きくなる。
【００６４】
尚、本実施の形態では、始動時制御において、始動時エンジン回転数が設定回転数まで上昇したとき、先ず、各バルブ４を順次閉弁させ、次いで、順次開弁させるようにしているが、これとは逆に、始動時エンジン回転数が設定回転数まで上昇したとき、先ず、全バルブ４を順次開弁させ、次いで、順次閉弁させるようにしても良い。この場合、図７に示すように、リフト中のバルブ４とピストン４６との干渉を回避するために、このピストン４６にフルリセス４６を形成し、更に、個々のバルブ４同士は、リフト中に衝突しないような配列、或いは形状に設定する。
【００６５】
始動初期において全バルブ４を最初に全開させることで、クランク軸に非同期で、バルブ４を短時間に動かしても、吸気バルブと排気バルブとが同時に閉弁することがないので、始動時の圧縮、膨張仕事が急激に発生せず、クランキング時の回転数変動が少なくなる。
【００６６】
ところで、上記マイコン３１では、全バルブ４を一旦全開及び全閉動作させた後、スタータモータにてエンジンを回転させて、バルブ４をエンジンと同期させて動作させる際、図６に示すような、電磁コイル５，６に対する一次過励磁ＯＮ／ＯＦＦ、二次過励磁ＯＮ／ＯＦＦの各タイミングを示すトリガリフト値を、始動の際に学習した上記全閉基準値及び全開基準値に基づいて補正し、上記バルブリフトセンサ１０の個体差、経時劣化を修正した実際の各トリガリフト値を算出する。
【００６７】
例えば、図８では、同図（ａ）に示すように、設計上のバルブ動作範囲が０〜８（mm）、バルブ全開時の上記各タイミング毎のトリガリフト初期値が下表のように設定されており、
0004082478.tif 000002
上記バルブリフトセンサ１０で検出した全閉基準値が０．５（mm）の場合、バルブ全閉時の各トリガリフト値は、下式に基づいてそれぞれ算出される。
トリガリフト値＝初期値−（全閉基準値−全閉時設計値）
１）一次過励磁ＯＮタイミング用トリガリフト値
４．５＝５．０−（０．５−０．０）
２）一次過励磁ＯＦＦタイミング用トリガリフト値
６．５＝７．０−（０．５−０．０）
３）二次過励磁ＯＮタイミング用トリガリフト値
７．０＝７．５−（０．５−０．０）
４）二次過励磁ＯＦＦタイミング用トリガリフト値
７．３＝７．８−（０．５−０．０）
【００６８】
一方、バルブ全閉時の上記各タイミング毎のトリガリフト初期値が、下表のように設定されており、
0004082478.tif 000003
上記バルブリフトセンサ１０で検出した全開基準値が７．５（mm）の場合、バルブ全開時の各トリガリフト値は、下式に基づいてそれぞれ算出される。
トリガリフト値＝初期値−（全開基準値−全開時設計値）
具体的には、以下のようになる（図８(b)参照）。
１）一次過励磁ＯＮタイミング用トリガリフト値
５．５＝５．０−（７．５−８．０）
２）一次過励磁ＯＦＦタイミング用トリガリフト値
１．５＝１．０−（７．５−８．０）
３）二次過励磁ＯＮタイミング用トリガリフト値
１．０＝０．５−（７．５−８．０）
４）二次過励磁ＯＦＦタイミング用トリガリフト値
０．７＝０．２−（７．５−８．０）
【００６９】
その結果、始動時にバルブ４を電磁コイル５，６で吸引する際、実際のバルブリフトセンサ１０の出力値に適合した吸引特性を得ることができ、着座時の衝撃力を始動初期の状態から減少させることが可能となる。
【００７０】
又、図９に示すように、始動前に動作させたときにバルブリフトセンサ１０で検出した全閉基準値、全開基準値に応じ、予め設定されている電磁コイル５，６に対する各タイミングを示すトリガリフト値を、それらの間のずれに応じた割合で補正するようにしても良い。
【００７１】
この場合、トリガリフト値の設計値、及びバルブリフトセンサ１０の出力特性が、図８と同一である場合には、実際のトリガリフト値は、下式に基づいて算出する。
0004082478.tif 000004
閉弁時
１）一次過励磁ＯＮタイミング用トリガリフト値
４．８７５０＝０．８７５・５．０＋０．５
２）一次過励磁ＯＦＦタイミング用トリガリフト値
６．６２５０＝０．８７５・７．０＋０．５
３）二次過励磁ＯＮタイミング用トリガリフト値
７．０６２５＝０．８７５・７．５＋０．５
４）二次過励磁ＯＦＦタイミング用トリガリフト値
７．３２５０＝０．８７５・７．８＋０．５
【００７２】
開弁時
１）一次過励磁ＯＮタイミング用トリガリフト値
４．８７５０＝０．８７５・５．０＋０．５
２）一次過励磁ＯＦＦタイミング用トリガリフト値
１．３７５０＝０．８７５・１．０＋０．５
３）二次過励磁ＯＮタイミング用トリガリフト値
０．９３７５＝０．８７５・０．５＋０．５
４）二次過励磁ＯＦＦタイミング用トリガリフト値
０．６７５０＝０．８７５・０．２＋０．５
【００７３】
このように、バルブリフトセンサ１０の検出値と設計上のリフト値とのずれの割合に応じてトリガリフト値を補正することで、バルブリフトセンサ１０の出力に大きなずれが生じた場合であっても、実際のアーマチュア１７の位置を設計上と同じ位置で、トリガリフト値のタイミングを設定することかできるので、始動初期の状態から高精度の着座制御を行うことができる。
【００７４】
又、図１０、図１１に本発明の第２実施の形態を示す。本実施の形態では、始動時に閉弁用と開弁用の両コンデンサを先に充電させた後にスタータモータを起動させるものであり、エンジン回転数が所定回転数に到達時に、それぞれのバルブについて、そのときのピストン動作方向に応じて閉弁させるか開弁させるかを選択し、順次クランク角度に非同期で選択された方向へ動作させ、さらにその後、それぞれのバルブ４を順次クランク角度に非同期で逆の方向へ動作させる。
【００７５】
即ち、図１０に示す始動時制御ルーチンでは、ステップＳ１でイグニッションスイッチ４０のＯＮが検出されると、ステップＳ３１へ進み、両電磁コイル駆動回路３６，３７のコンデンサ７６，８０に対する充電を開始し、ステップＳ３で、コンデンサ電圧を検出し、バルブ４を吸引するのに十分な電荷が上記各コンデンサ７６，８０に充電されたとき、即ち、コンデンサ７６，８０の電圧が設定電圧以上になったとき、ステップＳ４へ進み、スタータスイッチ４１がＯＮか否かを調べ、ＯＮのときはステップＳ５へ進み、スタータモータへの通電を許可するスタータモータ通電信号を、エンジン制御装置へ出力して、スタータモータを始動させる。
【００７６】
このとき、各バルブ４は、スプリング１３，１９の釣り合いにより半開状態で静止しているため、燃焼室内がピストン４６により圧縮、或いは膨張されず、スタータモータの起動負荷が軽減され、その分、クランク軸を回転するスタータモータの容量を小さくすることができることは、第１実施の形態と同様である。尚、エンジンが起動すると、クランク角センサ４２から、クランク軸に同期して出力されるクランク角パルスが検出され、このクランク角パルスに基づきエンジン回転数、及びクランク角度が算出される。
【００７７】
次いで、ステップＳ７で、エンジン回転数と設定回転数とを比較し、エンジン回転数が設定回転数まで上昇したときは、ステップＳ３２へ進み、クランク角パルスに基づきクランク角度を検出する。そして、ステップＳ３３へ進み、全バルブ４を、クランク角度に非同期で順次吸引して、全閉或いは全開動作する処理を行う。
【００７８】
このバルブ吸引処理は、図１１に示すバルブ吸引サブルーチンで行われる。このバルブ吸引サブルーチンにおいては、先ず、ステップＳ４１で、ある気筒のピストン位置を上記クランクパルスから算出したクランク角度に基づき検出し、下降中のときは、ステップＳ４２へ進み、上昇中のときはステップＳ４３へ進む。
【００７９】
ステップＳ４２では、当該気筒のバルブ開弁条件成立と判定し、ステップＳ２１で当該気筒のバルブ４（例えば、吸気バルブ）の開弁用電磁コイル５に対して、開弁用電磁コイル駆動回路３７のコンデンサ７６，８０に充電さている電荷を所定タイミングで通電し、上記バルブ４を開弁方向へ吸引する。
【００８０】
又、上記ステップＳ４１でピストン上昇と判定されてステップＳ４３へ進むと、バルブ閉弁条件成立と判定し、ステップＳ２１で当該気筒のバルブ４（例えば、吸気バルブ）の閉弁用電磁コイル６に対して、閉弁用電磁コイル駆動回路３６のコンデンサ７６，８０に充電さている電荷を所定タイミングで放電させ、上記バルブ４を閉弁方向へ吸引する。
【００８１】
そして、ステップＳ２２以下で、第１実施の形態と同様に、コンデンサ７６，７８を再充電すると共に、バルブ４の全開、或いは全閉におけるホールド状態を検出し、このときのバルブリフトセンサ１０の出力値を下降中の気筒であれば全開基準値、上昇中の気筒であれば全閉基準値としてマイコン３１のＲＡＭに記憶し、ルーチンを抜ける。
【００８２】
上記バルブ吸引サブルーチンは、全バルブ４に対して順次行い、全バルブ４の全閉或いは全開時のバルブリフトセンサ１０の出力値を全閉基準値、全開基準値としてマイコン３１のＲＡＭに記憶したら、上記始動時制御ルーチンのステップＳ９へ進む。
【００８３】
ステップＳ９では、クランク角パルスを再び検出し、ステップＳ３２で検出したクランク角パルスに対して、クランク角度が、例えば１８０°回転したときは、ステップＳ３４へ進み、上記バルブ吸引サブルーチンを再度実行する。
【００８４】
このとき、前回よりもクランク角度が１８０°進んでいるため、前回の下降中であった気筒は上昇過程にあり、又、前回上昇中であった気筒では、今回は下降過程にある。従って、前回、全閉方向へ吸引されたバルブ４は、今回は全開方向へ吸引され、又、前回、全開方向へ吸引されたバルブは、今回は全閉方向へ吸引されることになり、このときのバルブリフトセンサ１０の出力値を全開基準値、全閉基準値としてマイコン３１のＲＡＭに記憶する。
【００８５】
そして、全てのバルブ４に対するバルブリフトセンサ１０の全閉基準値、全開基準値を学習した後は、ステップＳ３５へ進み、エンジン制御装置（図示せず）へ正規タイミングバルブ動作信号を出力し、燃料噴射と点火とを許可し、ルーチンを抜ける。その結果、燃料噴射対象気筒、及び点火対象気筒に対する燃料噴射と点火とが正規のタイミングで順次開始され、エンジンが始動する。
【００８６】
このように、本実施の形態では、クランク角度に同期せずに各バルブ４を吸引するようにしたので、イグニッションスイッチＯＮ後、最初のバルブホールド時のバルブリフトセンサ１０の出力値である全閉基準値と全開基準値とを短時間で学習することができ、従って、その後の正規のバルブタイミングでの吸気量制御を早期に実行することができ、始動時間の短縮化が図れるばかりでなく、始動時の空燃比制御性が向上する。
【００８７】
又、クランキング開始前に、閉弁用電磁コイル駆動回路３６、開弁用電磁コイル駆動回路３７のコンデンサ７６，８０を充電するようにしたので、充電時間が短くて済み、スタータモータに多くの電流が奪われても、バルブを確実に吸引させることができる。
【００８８】
又、図１２、図１３に本発明の第３実施の形態を示す。本実施の形態は第２実施の形態の変形例であり、エンジン回転数が所定回転数に到達時にそれぞれのバルブ４をクランク角度に同期させて正規のバルブタイミングで閉弁もしくは開弁させるものである。
【００８９】
図１２に示す始動時制御ルーチンでは、ステップＳ３２まで、前述した第２実施の形態の図１０に示すフローチャートと同様の処理を行い、ステップＳ３２からステップＳ４６へ進むと、各バルブ４をクランク軸に同期させて順次、全開、および全閉動作させるバルブ吸引処理を実行する。
【００９０】
このバルブ吸引処理は、図１３に示すバルブ吸引サブルーチンで実行される。先ず、ステップＳ５１で、クランク角パルスに基づいて算出したクランク角度から、ある気筒のバルブ４が正規の開弁、或いは閉弁時期に達したか否かを調べ、所定の開弁或いは閉弁のタイミングになったとき、ステップＳ２１へ進み、それぞれの開弁用電磁コイル駆動回路３７、或いは閉弁用電磁コイル駆動回路３６のコンデンサ７６，８０に充電されている電荷を所定タイミングで放電し、上記バルブ４の開弁用電磁コイル５或いは閉弁用電磁コイル６を過励磁することで、上記バルブ４を全開、或いは全閉位置まで吸引する。
【００９１】
その後、ステップＳ２２以下では、前述した第１或いは第２実施の形態と同様、コンデンサ７６，８０を再充電すると共に、それぞれのバルブ４の全閉、全開時におけるバルブホールドを検出し、そのときのバルブリフトセンサ１０の出力値を全閉基準値、全開基準値としてマイコン３１のＲＡＭに記憶する処理を行う。
【００９２】
そして、全バルブ４の全開、及び全閉時のバルブリフトセンサ１０の出力値を学習した後は、上記始動時制御ルーチンのステップＳ３５へ進み、エンジン制御装置（図示せず）へ正規タイミングバルブ動作信号を出力し、燃料噴射と点火とを許可し、ルーチンを抜ける。その結果、燃料噴射対象気筒、及び点火対象気筒に対する燃料噴射と点火とが正規のタイミングで順次開始され、エンジンが始動する。
【００９３】
このように、本実施の形態では、クランク角度と同期し、正規のバルブタイミングで各バルブ４を吸引するようにしたので、第２実施の形態に比し、少なくともピストン４６にハーフリセス４６ａ（図３参照）を形成するだけで、バルブ４とピストン４６との干渉を回避することができ、しかも、正規のバルブタイミングで燃料噴射、及び点火が開始されるまでは、各気筒内のバルブ４が同時に全閉となることが無いので、始動時のクランク角が大きく変動することが無い。
【００９４】
更に、設定回転数までエンジン回転数が上昇した後は、クランク軸が２回転した後に、各バルブ４が、順次、正規のバルブタイミングで吸引されるので、燃料噴射開始までの時間が短くなり、始動時間の短縮化が図れる。
【００９５】
又、図１４に本発明の第４実施の形態を示す。本実施の形態は第３実施の形態の変形例で、始動時、最初にバルブを動作させる方向（閉弁または開弁）を予め設定しておき、エンジン回転数が所定回転数に到達時にそれぞれのバルブ４をクランク角度に同期させて正規のバルブタイミングで予め設定された一方向へ動作させ、その後にクランク角度に同期させて正規のバルブタイミングで他方向へ動作させるものである。
【００９６】
即ち、図１４の始動時制御ルーチンでは、イグニッションスイッチがＯＮされて、ステップＳ１からステップＳ５６へ進むと、閉弁用電磁コイル駆動回路３６と開弁用電磁コイル駆動回路３７のうち予め設定された一方のコンデンサ７６，８０に対して充電を開始し、このコンデンサ電圧が設定電圧以上になると、スタータモータに対する通電を許可し、ステップＳ４でスタータスイッチがＯＮと判定したときは、ステップＳ５へ進み、スタータモータに対する通電を開始する。
【００９７】
その後、ステップＳ５７で、他方のコンデンサ７６，８０に対して充電を開始する。
【００９８】
そして、エンジン回転数が設定回転数以上に上昇したら、ステップＳ７からステップＳ３２へ進み、クランク角パルスに基づきクランク角度を検出し、ステップＳ５８で、上記クランク角度に同期して、正規のバルブタイミングでバルブ４を順次吸引して、予め設定された一方向（全閉或いは全開）へ動作させ、そのときのバルブリフトセンサ１０の出力値を全閉基準値或いは全開基準値としてマイコン３１のＲＡＭに記憶させる処理を行う。
【００９９】
このバルブ吸引処理は、前述した第３実施の形態の図１３に示すバルブ吸引サブルーチンと同様であるため、説明を省略する。
【０１００】
そして、全バルブ４が一方向へ動作したときは、ステップＳ５９へ進み、クランク角度に同期して、バルブ４を逆方向へ順次吸引して他の方向（全開或いは全閉）へ動作させ、そのときのバルブリフトセンサ１０の出力値を全開基準値或いは全閉基準値としてマイコン３１のＲＡＭに記憶させる処理を、上記図１３に示すバルブ吸引サブルーチンに従い実行する。
【０１０１】
その後、ステップＳ３５へ進み、エンジン制御装置（図示せず）へ正規タイミングバルブ動作信号を出力し、燃料噴射と点火とを許可し、ルーチンを抜ける。
【０１０２】
このように、本実施の形態では、クランキング開始前には、閉弁用電磁コイル駆動回路３６と開弁用電磁コイル駆動回路３７との何れか一方に設けられているコンデンサ７６，８０にのみ充電するようにしたので、前述した第３実施の形態に比し、充電時間が短く、短時間でスタータモータを始動させることができる。
【０１０３】
又、図１５に本発明の第５実施の形態を示す。本実施の形態では、クランキング開始前に、先ず全バルブ４を順次全開動作させ、始動開始後に、全バルブ４を順次全閉動作させるようにしたものである。
【０１０４】
以下、図１５に示す始動時制御ルーチンに従い、始動時制御処理について説明する。
先ず、イグニッションスイッチがＯＮされると、ステップＳ１からステップＳ６１へ進み、開弁用電磁コイル駆動回路３７のコンデンサ７６，８０に対して充電を開始し、このコンデンサ電圧が所定電圧に達したとき、ステップＳ３からステップＳ６２へ進み、バルブ吸引サブルーチンを実行し、開弁用電磁コイル駆動回路３７のコンデンサ７６，８０に充電されている電荷を所定タイミングで放電し、上記バルブ４の開弁用電磁コイル５を過励磁することで、上記バルブ４を全開位置まで吸引する。
【０１０５】
尚、上記バルブ吸引サブルーチンは、第１実施の形態で示す図５のフローチャートと同様の処理が行われるため、ここでの説明を省略する。
【０１０６】
そして、全バルブ４が全開したときは、ステップＳ６３へ進み、閉弁用電磁コイル駆動回路３６のコンデンサ７６，８０に対して充電を開始し、ステップＳ４でスタータスイッチがＯＮかを調べ、ＯＮのときは、ステップＳ５でスタータモータを始動させる。
【０１０７】
その後、ステップＳ３２でクランク角パルスに基づきクランク角度を検出し、ステップＳ６４へ進み、クランク角度に同期した正規バルブタイミングで各バルブ４を順次全閉動作させてバルブホールド状態を検出し、このときのバルブリフトセンサ１０の出力値を全閉基準値としてマイコン３１のＲＡＭに記憶する。
【０１０８】
そして、ステップＳ１１へ進み、エンジン制御装置へ正規タイミングバルブ動作信号を出力し、燃料噴射と点火とを許可し、ルーチンを抜ける。
【０１０９】
このように、本実施の形態では、最も電力を必要とする中立位置からのバルブ吸引を、クランキング開始前に行うようにしたので、前述した第１実施の形態のように、充電中にスタータモータに電力を奪われることが無く、確実にバルブを吸引することができるばかりでなく、バルブリフトセンサ１０の出力信号にスタータモータのノイズが混入されないため、全開基準値を精度良く検出することができる。
【０１１０】
又、エンジン回転後に、全開されているバルブ４を全閉させるようにしたので、始動初期のピストン４６による圧縮や膨張が無く、スタータモータ起動時のエネルギー消費が少なく、クランキング回転変動も少なくなる。
【０１１１】
又、図１６に本発明の第６実施の形態を示す。本実施の形態は第５実施の形態の変形例であり、クランキング開始前に、全バルブ４を一旦全閉動作させ、次いで全開動作させた後、スタータモータを起動させるようにしたものである。
【０１１２】
即ち、同図に示す始動時制御ルーチンでは、ステップＳ１でイグニッションスイッチの信号を読込み、ＯＮのときはステップＳ６６へ進み、全バルブ４の閉弁動作が終了したか否かを調べる。イグニッションスイッチがＯＮされた直後の各バルブ４は、スプリング１３，１９により保持された中立位置にあり、閉弁動作は未終了であるため、ステップＳ２へ進み、閉弁用電磁コイル駆動回路３６のコンデンサ７６，８０に対して充電を開始する。そして、このコンデンサ７６，８０に対するコンデンサ電圧が設定値以上になったときは、ステップＳ３からステップＳ６７へ進み、各バルブ４を順次全閉動作させて、そのときのバルブリフトセンサ１０の出力値を全閉基準値としてマイコン３１のＲＡＭに記憶させる処理を行う。
【０１１３】
この処理はバルブ吸引サブルーチンで実行されるが、このルーチンは、第１実施の形態で示す図５のフローチャートと同様の処理が行われるため、ここでの説明は省略する。但し、本実施の形態では、ステップＳ２２のコンデンサ再充電の処理は行わず、ステップＳ２１からステップＳ２３へジャンプする。
【０１１４】
そして、全バルブ４が全閉したときはステップＳ６へ進み、開弁用電磁コイル駆動回路３７のコンデンサ７６，８０に対して通電を開始し、ステップＳ６８で、コンデンサ電圧を検出し、コンデンサ電圧が設定値よりも低いときは、ステップＳ１へ戻り、イグニッションスイッチの状態を調べ、ＯＮのままのときは、ステップＳ６６へ進み、全バルブ４の閉弁動作が終了したか否かを調べる。既に、全バルブ４の全閉動作が終了しているため、ステップＳ６へ進み、再び開弁用電磁コイル駆動回路３７のコンデンサ７６，８０に充電する。
【０１１５】
そして、上記コンデンサ７６，８０に充電したコンデンサ電圧が設定値以上になったとき、ステップＳ６９へ進み、各バルブ４を順次全開動作させて、そのときのバルブリフトセンサ１０の出力値を全開基準値としてマイコン３１のＲＡＭに記憶させる処理を行う。この処理はバルブ吸引サブルーチンで実行されるが、このルーチンは、上述したように、第１実施の形態で示す図５のフローチャートと、ほぼ同様の処理が行われるため、ここでの説明は省略する。但し、本実施の形態では、ステップＳ２２のコンデンサ再充電の処理は行わず、ステップＳ２１からステップＳ２３へジャンプする。
【０１１６】
そして、全バルブ４の全開動作が終了すると、ステップＳ７０で、両電磁コイル駆動回路３６，３７のコンデンサ７６，８０に対し、次回の放電に備えて再充電する。
【０１１７】
その後、ステップＳ４でスタータスイッチがＯＮか否かを調べ、ＯＮのときは、ステップＳ５でスタータモータを始動させ、エンジンを起動させる。次いで、ステップＳ３２でクランク角パルスに基づきクランク角度を検出し、ステップＳ７１で、クランク角度に同期した正規バルブタイミングで各バルブ４を順次全閉動作させ、ステップＳ１１へ進み、エンジン制御装置へ正規タイミングバルブ動作信号を出力し、燃料噴射と点火とを許可し、ルーチンを抜ける。
【０１１８】
このように、本実施の形態では、クランキング開始前に、全バルブ４を全閉、及び全開動作させているので、前述の第５実施の形態に比し、始動後、速やかに正規のタイミングで各バルブ４を動作させることができる。又、スタータモータの起動とは無関係にバルブ４を全閉、及び全開動作させているため、バルブリフトセンサ１０の出力をノイズ等の影響を受けずに検出することができ、全閉基準値、及び全開基準値を精度良く検出することができる。
【０１１９】
又、図１７に本発明の第７実施の形態を示す。本実施の形態は、第６実施の形態の変形例であり、クランキング開始前に、全バルブ４を一旦全開動作させ、次いで全閉動作させた後、スタータモータを起動させるようにしたものである。
【０１２０】
即ち、同図に示す始動時制御ルーチンでは、ステップＳ１でイグニッションスイッチの信号を読込み、ＯＮのときはステップＳ１からステップＳ７６へ進み、全バルブ４の開弁動作が終了したか否かを調べる。イグニッションスイッチがＯＮされた直後の各バルブ４は、スプリング１３，１９により保持された中立位置にあり、開弁動作は未終了であるため、ステップＳ７７へ進み、開弁用電磁コイル駆動回路３７のコンデンサ７６，８０に対して充電を開始する。そして、このコンデンサ７６，８０に対するコンデンサ電圧が設定値以上になったときは、ステップＳ３からステップＳ７８へ進み、各バルブ４を順次全開動作させて、そのときのバルブリフトセンサ１０の出力値を全開基準値としてマイコン３１のＲＡＭに記憶させる処理を行う。この処理はバルブ吸引サブルーチンで実行されるが、このルーチンは、第６実施の形態のステップＳ６９での処理と同様であるため、ここでの説明は省略する。
【０１２１】
そして、全バルブ４が全開したときはステップＳ７９へ進み、閉弁用電磁コイル駆動回路３６のコンデンサ７６，８０に対して通電を開始し、ステップＳ６８で、コンデンサ電圧を検出し、コンデンサ電圧が設定値よりも低いときは、ステップＳ１へ戻り、イグニッションスイッチの状態を調べ、ＯＮのままのときは、ステップＳ７６へ進み、全バルブ４の全開動作が終了したか否かを調べる。既に、全バルブ４の全閉動作が終了しているため、ステップＳ６へ進み、再び閉弁用電磁コイル駆動回路３６のコンデンサ７６，８０に充電する。
【０１２２】
そして、上記コンデンサ７６，８０に充電したコンデンサ電圧が設定値以上になったとき、ステップＳ８０へ進み、各バルブ４を順次全閉動作させて、そのときのバルブリフトセンサ１０の出力値を全閉基準値としてマイコン３１のＲＡＭに記憶させる処理を行う。この処理は第６実施の形態のステップＳ６７での処理と同様であるため、ここでの説明は省略する。
【０１２３】
そして、全バルブ４の全閉動作が終了すると、ステップＳ７０で、両電磁コイル駆動回路３６，３７のコンデンサ７６，８０に対し、次回の放電に備えて再充電する。
【０１２４】
その後、ステップＳ４〜Ｓ３２まで、第６実施の形態と同様の処理を行い、ステップＳ８１でクランク角度に同期した正規バルブタイミングで各バルブ４を順次全開動作させ、ステップＳ１１へ進み、エンジン制御装置へ正規タイミングバルブ動作信号を出力し、燃料噴射と点火とを許可し、ルーチンを抜ける。
【０１２５】
このように、本実施の形態では、第６実施の形態の効果に加え、クランキング開始前に全バルブ４を一旦全閉状態にしているため、クランキング時にバルブを全開させて即座に吸気行程を開始することができ、エンジンを早期に始動させることができる。
【０１２６】
図１８、図１９に本発明の第８実施の形態を示す。本実施の形態は第７実施の形態の変形例であり、バッテリ交換後、最初の始動時のみクランキング開始前（スタータ作動前）に、全バルブ４を全開及び全閉作動させて、全開基準値と全閉基準値との両方を学習するようにしたものである。
【０１２７】
従って、図１８に示すように、マイコン３１にはバッテリ電源が入力されており、始動時制御ルーチンを示す図１９のフローチャートでは、第７実施の形態で示す始動時制御ルーチンのステップＳ７９とステップＳ６８との間に、ステップＳ８６としてバックアップ電源を参照する処理を加え、イグニッションスイッチＯＮ後、最初のルーチン実行時において、バックアップ電源が直前に遮断されたか否かの履歴を調べる。
【０１２８】
そして、バックアップ電源が遮断されていないときは、ステップＳ４へジャンプし、一方、バックアップ電源が遮断されたと判断したときは、ステップＳ８０へ進む。従って、バルブリフトセンサ１０の全開基準値は毎始動時、ステップＳ７８にてクランキング前に学習されるが、全閉基準値は、バッテリ電源が交換された後、最初のルーチン実行時のみクランキング前に学習することになり、それ以降は、クランキング開始後のステップＳ８１にて学習される。尚、バルブリフトセンサ１０の全開基準値と全閉基準値との関係は逆でも良い。
【０１２９】
このように、本実施の形態では、バッテリ交換後、最初の始動時以外は、クランキング前のバルブの動作は一方向（全開或いは全閉方向）だけであるため、クランキングを早期に開始することができる。
【０１３０】
図２０、図２１に本発明の第９実施の形態を示す。本実施の形態は第８実施の形態の変形例であり、クランキング開始前にバルブリフトセンサ１０の全開基準値と全閉基準値との何れか一方の学習を必ず実行し、クランキング開始前の他方の基準値は、設定始動回数毎に行うようにしたものである。
【０１３１】
従って、図２０に示すように、マイコン３１には、０〜既定値（本実施の形態では１５）を繰り返す始動回数カウンタ４３を接続し、始動時制御ルーチンを示す図２１のフローチャートでは、第８実施の形態で示す始動時制御ルーチンのステップＳ８６に代えて、上記始動回数カウンタ４３の始動回数をカウントアップするステップＳ９１と、上記始動回数カウンタ４３が所定カウントに達したか否かを判別するステップＳ９２と、上記始動回数カウンタ４３をクリアするステップＳ９３とを加える。
【０１３２】
そして、イグニッションスイッチがＯＮする毎に、ステップＳ９１では始動回数カウントをアップさせ、ステップＳ９２で上記始動回数カウンタ４３のカウント値を参照し、カウント数が所定カウント数に達しないときは、ステップＳ４へジャンプし、又、所定カウント数に達したときはステップＳ９３でカウンタをクリアして、ステップＳ６８へ進む。
【０１３３】
上記所定カウント数は任意に設定できるもので、この値に応じて、バルブリフトセンサ１０の全閉基準値が定期的に学習される。
【０１３４】
尚、第８実施の形態と同様、本実施の形態においても、バルブリフトセンサ１０の全開基準値と全閉基準値との関係は逆でも良い。
【０１３５】
【発明の効果】
以上、説明したように本発明によれば、エンジン停止時或いは始動時において、吸排気バルブを最初に全閉或いは全開動作させたときに検出したバルブリフトセンサの出力値に基づき吸排気バルブに対するバルブリフトセンサの基準値を学習するようにしたので、この基準値に基づき上記吸排気バルブを動作させる電磁コイルに対する通電制御タイミングを補正することで、バルブリフトセンサ及び吸排気バルブの個体差等を含む製品のばらつきや、バルブリフトセンサ自体の経時劣化等の影響を受けることなく、常に吸排気バルブの位置を正確に検出することができ、その結果、正確なタイミングで吸排気バルブを開閉動作させることができる。
【０１３６】
又、電磁コイルに対する通電制御タイミングが上記基準値に基づいて補正されるため、吸排気バルブとバルブリフトセンサとの相対位置に誤差が生じても、吸排気バルブの開閉タイミングを高精度に制御することが可能となる。
【図面の簡単な説明】
【図１】第１実施の形態による電磁バルブ駆動制御装置の全体構成図
【図２】同、駆動回路の構成図
【図３】同、ピストン及びバルブの概略図
【図４】同、始動時制御ルーチンを示すフローチャート
【図５】同、バルブ吸引サブルーチンを示すフローチャート
【図６】同、各動作部の動作状態を示すタイミングチャート
【図７】同、他の態様によるピストン及びバルブの概略図
【図８】同、バルブの動作状態を示すタイミングチャート
【図９】同、他の態様によるバルブの動作状態を示すタイミングチャート
【図１０】第２実施の形態による始動時制御ルーチンを示すフローチャート
【図１１】同、バルブ吸引サブルーチンを示すフローチャート
【図１２】第３実施の形態による始動時制御ルーチンを示すフローチャート
【図１３】同、バルブ吸引サブルーチンを示すフローチャート
【図１４】第４実施の形態による始動時制御ルーチンを示すフローチャート
【図１５】第５実施の形態による始動時制御ルーチンを示すフローチャート
【図１６】第６実施の形態による始動時制御ルーチンを示すフローチャート
【図１７】第７実施の形態による始動時制御ルーチンを示すフローチャート
【図１８】第８実施の形態による電磁バルブ駆動制御装置の全体構成図
【図１９】同、始動時制御ルーチンを示すフローチャート
【図２０】第９実施の形態による電磁バルブ駆動制御装置の全体構成図
【図２１】同、始動時制御ルーチンを示すフローチャート
【符号の説明】
１…電磁駆動バルブ
４…吸排気バルブ
５，６…電磁コイル
１０…バルブリフトセンサ
【図１】
0004082478.tif 000005
【図２】
0004082478.tif 000006
【図３】
0004082478.tif 000007
【図４】
0004082478.tif 000008
【図５】
0004082478.tif 000009
【図６】
0004082478.tif 000010
【図７】
0004082478.tif 000011
【図８】
0004082478.tif 000012
【図９】
0004082478.tif 000013
【図１０】
0004082478.tif 000014
【図１１】
0004082478.tif 000015
【図１２】
0004082478.tif 000016
【図１３】
0004082478.tif 000017
【図１４】
0004082478.tif 000018
【図１５】
0004082478.tif 000019
【図１６】
0004082478.tif 000020
【図１７】
0004082478.tif 000021
【図１８】
0004082478.tif 000022
【図１９】
0004082478.tif 000023
【図２０】
0004082478.tif 000024
【図２１】
0004082478.tif 000025