(57)【要約】【課題】燃料噴射制御に関連する処理をオペレーションシステム上で動作させる場合でも、処理負荷の増加を抑えつつ、開弁タイミング又は閉弁タイミングの適切な取得が可能な噴射制御装置等の提供。【解決手段】エンジン制御装置は、エンジンに設けられたインジェクタの制御に関連する処理を、オペレーションシステム上で動作させる噴射制御装置として機能する。エンジン制御装置は、エンジンの状態を示す状態情報、及びインジェクタの開弁タイミングｔｖｏ及び閉弁タイミングｔｖｃの少なくとも一方を検出した検出結果を取得する。エンジン制御装置は、検出結果を取得する取得処理Ｐｏと、状態情報に基づきインジェクタにおける一回の燃料噴射での噴射量を演算する演算処理Ｐｃとを、一つの複合タスクＴＳ２として実行する。複合タスクＴＳ２は、インジェクの駆動開始タイミングｔｄｓよりも前に開始される。【選択図】図２
2019152145.tif 000002
【特許請求の範囲】
【請求項１】
内燃機関（２）に設けられた燃料噴射弁（１０）の制御に関連する処理を、オペレーションシステム上で動作させる噴射制御装置であって、
前記内燃機関の状態を示す状態情報を取得する情報取得部（５１）と、
前記燃料噴射弁における開弁タイミング（ｔｖｏ）及び閉弁タイミング（ｔｖｃ）の少なくとも一方を検出する開閉弁検出部（５２，７０）と、
前記開閉弁検出部による検出結果を取得する取得処理（Ｐｏ）、及び前記状態情報に基づき前記燃料噴射弁における一回の燃料噴射での噴射量を演算する演算処理（Ｐｃ）を、前記オペレーションシステムにおける一つのタスク（ＴＳ２）として、前記燃料噴射を行うための前記燃料噴射弁の駆動開始タイミング（ｔｄｓ）よりも前に開始する演算実行部（５３）と、
を備える噴射制御装置。
【請求項２】
前記演算実行部は、前記駆動開始タイミングよりも前に前記取得処理が完了するように、前記タスクの開始タイミング（ｔｃｓ）を前記駆動開始タイミングの所定時間（Ｔｐｔ）前に設定する請求項１に記載の噴射制御装置。
【請求項３】
前記演算実行部は、前記燃料噴射弁の駆動終了タイミング（ｔｄｆ）よりも前に前記演算処理が完了するように、前記タスクの開始タイミング（ｔｃｓ）を前記駆動開始タイミングの所定時間前に設定する請求項１又は２に記載の噴射制御装置。
【請求項４】
前記演算実行部は、前記演算処理にて、前記噴射量に基づく噴射時間をさらに演算する請求項１〜３のいずれか一項に記載の噴射制御装置。
【請求項５】
前記演算実行部は、
前記駆動開始タイミングよりも前に前記演算処理が終了するように、前記タスクの開始タイミング（ｔｃｓ）を前記駆動開始タイミングの所定時間（Ｔｐｔ）前に設定し、
前記演算処理にて演算された前記噴射時間に基づいて、前記駆動開始タイミングを調整する請求項４に記載の噴射制御装置。
【請求項６】
前記演算実行部は、前記演算処理にて演算された前記噴射時間に基づいて、前記燃料噴射弁の駆動終了タイミング（ｔｄｆ）を調整する請求項４に記載の噴射制御装置。
【請求項７】
前記演算実行部は、前記駆動開始タイミング及び前記タスクの開始タイミング（ｔｃｓ）を、前記内燃機関の出力軸の角度を基準として設定する請求項１〜６のいずれか一項に記載の噴射制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この明細書による開示は、燃料噴射弁の制御に関連する処理を行う噴射制御装置に関する。
【背景技術】
【０００２】
従来、例えば特許文献１に開示の燃料噴射制御装置は、インジェクタにおける電磁弁の開弁及び閉弁を検知する検知部を備えている。検知部による開弁及び閉弁の検知結果は、制御部にて、インジェクタの駆動制御に用いられる。制御部は、前回の燃料噴射にて検知された検知結果を取得する処理と、今回の燃料噴射での噴射量を演算する処理とを実行する。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１５−３４４９２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
特許文献１のような燃料噴射制御に関連する処理は、オペレーションシステム上で動作させることができる。こうした噴射制御装置では、開閉弁の検知結果を取得する取得処理と、噴射量を演算する演算処理とを、オペレーションシステムでの別々のタスクとして実行することが考えられる。しかし、これらの処理を別々のタスクとして実行した場合、個々のタスクの生成に要する処理が増加し得た。
【０００５】
本開示は、燃料噴射制御に関連する処理をオペレーションシステム上で動作させる場合でも、処理負荷の増加を抑えつつ、開弁タイミング又は閉弁タイミングの適切な取得が可能な噴射制御装置の提供を目的とする。
【課題を解決するための手段】
【０００６】
上記目的を達成するため、開示された一つの態様は、内燃機関（２）に設けられた燃料噴射弁（１０）の制御に関連する処理を、オペレーションシステム上で動作させる噴射制御装置であって、内燃機関の状態を示す状態情報を取得する情報取得部（５１）と、燃料噴射弁における開弁タイミング（ｔｖｏ）及び閉弁タイミング（ｔｖｃ）の少なくとも一方を検出する開閉弁検出部（５２，７０）と、開閉弁検出部による検出結果を取得する取得処理（Ｐｏ）、及び状態情報に基づき燃料噴射弁における一回の燃料噴射での噴射量を演算する演算処理（Ｐｃ）を、オペレーションシステムにおける一つのタスク（ＴＳ２）として、燃料噴射を行うための燃料噴射弁の駆動開始タイミング（ｔｄｓ）よりも前に開始する演算実行部（５３）と、を備える噴射制御装置とされる。
【０００７】
これらの態様によれば、燃料噴射弁の駆動開始タイミングよりも前に、検出結果の取得処理及び噴射量の演算処理が一つのタスクとして開始される。故に、前回の燃料噴射における開弁タイミング及び閉弁タイミングの少なくとも一方を検出した検出結果は、今回の燃料噴射の開始前に取得され得る。
【０００８】
加えて、検出結果の取得処理と共に噴射量の演算処理が行われれば、これらの処理を個別のタスクで実行するよりも、タスクの生成に要する処理が低減され得る。したがって、燃料噴射制御に関連する処理をオペレーションシステム上で動作させる場合でも、処理負荷の増加を抑えつつ、開弁タイミング又は閉弁タイミングの適切な取得が可能になる。
【０００９】
尚、上記括弧内の参照番号は、後述する実施形態における具体的な構成との対応関係の一例を示すものにすぎず、技術的範囲を何ら制限するものではない。
【図面の簡単な説明】
【００１０】
【図１】第一実施形態によるエンジン制御装置を含む燃料噴射制御システムの全体構成を示す図である。
【図２】燃料噴射に伴って実行される各タスクの詳細を示すタイミングチャートである。
【図３】一回の燃焼サイクルにおいて実行される処理の詳細を示すタイミングチャートであって、駆動開始タイミングを調整する一例を示す図である。
【図４】一回の燃焼サイクルにおいて実行される処理の詳細を示すタイミングチャートであって、駆動終了タイミングを調整する一例を示す図である。
【図５】駆動開始タイミング及び演算開始タイミングがクランクシャフトの角度基準で設定されていることを説明するための図である。
【図６】噴射制御処理におけるメイン処理の詳細を示すフローチャートである。
【図７】上死点前４５０°ＣＡ時処理又は上死点前２７０°ＣＡ時処理の詳細を示すフローチャートである。
【図８】先行時間前処理の詳細を示すフローチャートである。
【図９】駆動終了タイミング処理の詳細を示すフローチャートである。
【図１０】第二実施形態によるエンジン制御装置を含む燃料噴射制御システムの全体構成を示す図である。
【発明を実施するための形態】
【００１１】
以下、本開示の複数の実施形態を図面に基づいて説明する。尚、各実施形態において対応する構成要素には同一の符号を付すことにより、重複する説明を省略する場合がある。各実施形態において構成の一部分のみを説明している場合、当該構成の他の部分については、先行して説明した他の実施形態の構成を適用することができる。また、各実施形態の説明において明示している構成の組み合わせばかりではなく、特に組み合わせに支障が生じなければ、明示していなくても複数の実施形態の構成同士を部分的に組み合わせることができる。そして、複数の実施形態及び変形例に記述された構成同士の明示されていない組み合わせも、以下の説明によって開示されているものとする。
【００１２】
（第一実施形態）
本開示の第一実施形態によるエンジン制御装置１００は、図１に示す燃料噴射制御システムに用いられている。燃料噴射制御システムは、ガソリンエンジン（以下、「エンジン２」）の稼動を制御するシステムであり、状態センサ群２０、複数のインジェクタ１０、及びエンジン制御装置１００等によって構成されている。エンジン２は、火花点火式の内燃機関であって、例えば走行用の動力を発生させる動力源として車両に搭載されている。
【００１３】
状態センサ群２０は、エンジン制御装置１００に直接的又は間接的に電気接続されている。状態センサ群２０は、エンジン２の状態を検出した検出結果を、エンジン制御装置１００へ向けて逐次出力する。状態センサ群２０には、回転センサ２１、空気流量センサ２２、水温センサ２３、吸気温センサ２４、燃圧センサ２５、及びアクセルポジションセンサ等のその他のセンサが含まれている。
【００１４】
回転センサ２１は、例えば電磁ピックアップ等である。回転センサ２１は、シグナルロータ等と組み合わされて、エンジン２のクランクシャフトの回転を検出する。回転センサ２１は、クランクシャフトの角度の検出結果を、状態情報としてエンジン制御装置１００に逐次出力する。
【００１５】
空気流量センサ２２は、各気筒２ｂに繋がる吸気流路に設けられている。空気流量センサ２２は、各気筒２ｂに吸入される吸入空気量に応じた信号を状態情報として出力する。水温センサ２３は、エンジン２を冷却する冷却水の温度に応じた信号を状態情報として出力する。吸気温センサ２４は、各気筒２ｂに吸入される吸入空気の温度に応じた信号を状態情報として出力する。燃圧センサ２５は、各インジェクタ１０に供給される燃料の圧力に応じた信号を状態情報として出力する。
【００１６】
インジェクタ１０は、エンジン制御装置１００と電気的に接続されている。インジェクタ１０は、エンジン２のヘッド部材２ａに設けられた挿通孔２ｃに挿入されており、ヘッド部材２ａに保持されている。インジェクタ１０には、電磁アクチュエータ及びピエゾアクチュエータ等の駆動部１２が設けられている。インジェクタ１０は、駆動部１２への電流又は電圧の印加により、噴孔１１を開閉する。インジェクタ１０は、エンジン制御装置１００の制御に従って噴孔１１を開閉する作動により、各気筒２ｂの燃焼室へ向けて、噴孔１１から燃料を噴射する。
【００１７】
エンジン制御装置１００は、状態センサ群２０から取得するエンジン２の状態情報に基づき、インジェクタ１０による各気筒２ｂへの燃料供給を制御する電子制御ユニットである。エンジン制御装置１００は、一回の燃焼サイクルにて複数回（例えば三回）の燃料噴射が行われるように各インジェクタ１０を制御する。エンジン制御装置１００の制御回路５０ａは、噴射弁駆動部６０、開閉検出部７０及びマイクロコントローラ（以下、「マイコン５０」）等によって構成されている。
【００１８】
噴射弁駆動部６０は、マイコン５０から入力される制御信号に基づき、噴孔１１を開弁させるための電力を、各インジェクタ１０の駆動部１２に供給する。噴射弁駆動部６０には、例えば車両のバッテリ等から電力が供給されている。噴射弁駆動部６０は、制御信号に従うタイミングで、駆動部１２に電力を供給し、開弁方向への弁体の変位を生じさせることで、噴孔１１から燃料噴射を開始させる。また噴射弁駆動部６０は、制御信号に従うタイミングで、駆動部１２への電力供給を停止し、閉弁方向への弁体の変位を生じさせることで、噴孔１１からの燃料噴射を終了させる。
【００１９】
開閉検出部７０は、インジェクタ１０において噴孔１１を開閉する噴射弁の動きを検出する。開閉検出部７０は、噴射弁の変位によって生じる駆動電流の変化を、インジェクタ１０毎に計測する。図１及び図２に示すように、開閉検出部７０は、インジェクタ１０の開閉弁期間に合わせて、検出期間Ｔｖｓを設定する。検出期間Ｔｖｓの開始点は、インジェクタ１０の駆動開始タイミングｔｄｓ（後述する）とされる。検出期間Ｔｖｓの終了点は、インジェクタ１０の駆動終了タイミングｔｄｆ（後述する）から、予め規定された閉弁待機期間Ｔｗｃ後とされる。
【００２０】
開閉検出部７０は、検出期間Ｔｖｓにおける駆動電流の変化の態様から、各インジェクタ１０における開弁タイミングｔｖｏ及び閉弁タイミングｔｖｃの両方を検出する検出演算を行う。開閉検出部７０は、開弁タイミングｔｖｏ及び閉弁タイミングｔｖｃの検出結果を保持し、マイコン５０からの要求に応じて、検出結果をマイコン５０へ向けて出力する。尚、開弁タイミングｔｖｏは、噴孔１１からの燃料噴射が開始されるタイミングである。閉弁タイミングｔｖｃは、噴孔１１からの燃料噴射が終了されるタイミングである。
【００２１】
開閉検出部７０は、検出期間Ｔｖｓの開始時に、前回の検出結果を削除する。開閉検出部７０は、一つのインジェクタ１０について、直前の燃料噴射における開弁タイミングｔｖｏ及び閉弁タイミングｔｖｃのみを保持する。開閉検出部７０は、各インジェクタ１０における燃料噴射の繰り返しにより、検出結果を自動的に更新する。
【００２２】
マイコン５０は、プロセッサ及び入出力インターフェースを有する構成である。マイコン５０は、開閉検出部７０及び噴射弁駆動部６０と電気的に接続されている。マイコン５０は、噴射弁駆動部６０へ向けて制御信号を出力する。マイコン５０は、開閉検出部７０との通信（例えばＳＰＩ通信等）によって検出結果を受信する。
【００２３】
マイコン５０には、記憶部５４が設けられている。記憶部５４は、例えばフラッシュメモリ等の不揮発性の記憶媒体である。記憶部５４には、マイコン５０にて実行されるオペレーションシステムのプログラム、及びオペレーションシステム上で動作する複数のアプリケーションプログラムが格納されている。
【００２４】
マイコン５０は、例えばＯＳＥＫ等の組み込み型のＲＴＯＳ（Real-time operating system）を動作させる。マイコン５０は、各インジェクタ１０の制御に関連する種々の処理を、オペレーションシステム上でのタスクとして動作させる。タスクは、オペレーションシステムにおいて規定されたひと纏りの実行単位である。オペレーションシステムは、個々のタスクについての実行状態及び優先度等を統合的に管理し、多数の処理がマイコン５０にて逐次的に実行されるようにスケジューリングを行う。尚、記憶部５４は、マイコン５０に内蔵されていなくてもよい。記憶部５４は、マイコン５０と電気接続されたエンジン制御装置１００の構成であってもよく、又はエンジン制御装置１００と電気接続されるメモリカード等の態様であってもよい。
【００２５】
マイコン５０は、記憶部５４に記憶された噴射制御プログラムの実行により、燃料噴射制御に関連する複数の機能部を構築する。具体的に、マイコン５０には、情報取得部５１及び演算実行部５３等が、機能部として構築される。
【００２６】
情報取得部５１は、エンジン２の状態を示す状態情報を、状態センサ群２０から取得する。情報取得部５１による状態情報の取得は、所定の周期で繰り返し実施される。情報取得部５１にて取得された最新の状態情報が、マイコン５０におけるエンジン制御のための演算に用いられる。
【００２７】
演算実行部５３は、情報取得部５１にて取得された状態情報に基づき、マイコン５０から噴射弁駆動部６０に出力される制御信号を生成する。演算実行部５３は、状態情報に基づき、一回の燃焼サイクルにおいて各気筒２ｂに噴射される燃料の総噴射量、一回の燃焼サイクルにおいて実施される燃料噴射の回数、各燃料噴射にて噴射される噴射量及び噴射時間、並びに開閉弁のタイミング等を設定する。尚、以下の説明では、燃焼（膨張）行程、排気行程、吸気行程、及び圧縮行程を、一回の燃焼サイクルとする。
【００２８】
演算実行部５３にて設定される噴射時間は、駆動部１２への電力供給の開始を指示する駆動開始タイミングｔｄｓから、電力供給の停止を指示する駆動終了タイミングｔｄｆまでの時間である。演算実行部５３は、各回の燃料噴射について、駆動開始タイミングｔｄｓ及び駆動終了タイミングｔｄｆを、制御信号によって規定する。インジェクタ１０の開弁タイミングｔｖｏは、駆動開始タイミングｔｄｓよりも後となる。同様に、インジェクタ１０の閉弁タイミングｔｖｃは、駆動終了タイミングｔｄｆよりも後となる。
【００２９】
演算実行部５３は、取得処理Ｐｏ及び演算処理Ｐｃを実施する。取得処理Ｐｏでは、開閉検出部７０による検出結果を通信によって取得し、直前の燃料噴射について、開弁タイミングｔｖｏ及び閉弁タイミングｔｖｃを確定させる処理が行われる。上述したように、前回の検出結果のクリアが検出期間Ｔｖｓの開始点である駆動開始タイミングｔｄｓにて実施されるため、取得処理Ｐｏは、駆動開始タイミングｔｄｓの前に完了される必要がある。
【００３０】
演算処理Ｐｃでは、制御信号の生成に関連する処理であって、例えば各回の燃料噴射での噴射量、噴射時間、及び各実施タイミング等を設定する処理が行われる。図３及び図４に示すように、演算処理Ｐｃは、一回の燃料噴射に対して原則的に二回ずつ実施される。
【００３１】
図１〜図３に示すように、演算実行部５３は、取得処理Ｐｏ及び演算処理Ｐｃを含む各タスクを、エンジン２のクランクシャフト（出力軸）の回転に合わせて、オペレーションシステム上で実行する。演算実行部５３は、取得処理Ｐｏを行うタスク（以下、「取得タスクＴＳｏ」）において、タスク生成処理Ｐｔの実行後に、取得処理Ｐｏを実行する。同様に、演算実行部５３は、演算処理Ｐｃを行うタスク（以下、「演算タスクＴＳｃ」）にて、タスク生成処理Ｐｔの実行後に、演算処理Ｐｃを実行する。さらに、演算実行部５３は、タスク生成処理Ｐｔの実行後に、取得処理Ｐｏ及び演算処理Ｐｃを順に実行する複合タスクＴＳ２を生成可能である。
【００３２】
図３及び図４には、燃料噴射パターンの一例として、一回の燃焼サイクルにて、吸気行程で一回、圧縮行程で二回、それぞれ燃料噴射を行う場合が想定されている。こうした燃料噴射にて、演算実行部５３により設定される各タスクの詳細を、以下、図３及び図４に基づき、図１及び図２を参照しつつ説明する。
【００３３】
図３に示す燃料噴射パターンでは、吸気行程における燃料噴射の噴射態様は、排気行程のうちに実施される初回の演算によって設定される。吸気行程における噴射演算のため、演算実行部５３は、クランク位置が上死点前４５０°となるタイミングで、演算タスクＴＳｃを開始する。この演算タスクＴＳｃでは、吸気行程における燃料噴射の駆動開始タイミングｔｄｓ及び駆動終了タイミングｔｄｆが設定される。さらに、吸気行程の噴射再演算を開始する演算開始タイミングｔｃｓが、駆動開始タイミングｔｄｓと実質同時に設定される。こうした設定によれば、演算開始タイミングｔｃｓを駆動開始タイミングｔｄｓよりも前に開始させるためのタイマセットの処理が不要になる。よって、マイコン５０の処理負荷が軽減される。
【００３４】
そして、クランク位置が演算開始タイミングｔｃｓに達すると、再演算のための演算タスクＴＳｃが開始される。さらに、演算タスクＴＳｃの開始に合わせて、開閉検出部７０による駆動電流の検出演算が開始される。演算タスクＴＳｃによる再演算が完了すると、算出された噴射期間に基づき、駆動終了タイミングｔｄｆが再設定される。
【００３５】
圧縮行程における各燃料噴射の噴射態様は、吸気行程のうちに実施される初回の演算によって共に設定される。圧縮行程における噴射演算のため、演算実行部５３は、クランク位置が上死点前２７０°となるタイミングで、演算タスクＴＳｃを開始する。この演算タスクＴＳｃでは、圧縮行程における各燃料噴射の駆動開始タイミングｔｄｓ及び駆動終了タイミングｔｄｆと、噴射量及び噴射時間の再演算を開始する各演算開始タイミングｔｃｓとが設定される。
【００３６】
圧縮行程における噴射再演算では、取得処理Ｐｏと演算処理Ｐｃとを連続的に実行する複合タスクＴＳ２が実行される。各演算開始タイミングｔｃｓは、駆動開始タイミングｔｄｓに対して先行時間Ｔｐｔ前に設定される。先行時間Ｔｐｔは、駆動開始タイミングｔｄｓよりも前に取得処理Ｐｏが完了し、且つ、インジェクタ１０の駆動終了タイミングｔｄｆよりも前に演算処理Ｐｃが完了するような値（例えば３００μ秒）に設定される。
【００３７】
クランク位置が２回目の燃料噴射の演算開始タイミングｔｃｓに到達すると、複合タスクＴＳ２が開始される。複合タスクＴＳ２の取得処理Ｐｏにより、吸気行程での燃料噴射における開閉検出部７０の検出結果が取得され、前回の燃料噴射における開弁タイミングｔｖｏ及び閉弁タイミングｔｖｃが確定される。
【００３８】
そして、演算処理Ｐｃでの噴射量及び噴射時間の再演算により、駆動開始タイミングｔｄｓが再設定される。駆動開始タイミングｔｄｓの調整により、２回目の燃料噴射での噴射量は、最新の状態情報を反映した値に変更される。また、駆動開始タイミングｔｄｓを開始点として、開閉検出部７０による駆動電流の検出演算が開始される。
【００３９】
クランク位置が３回目の燃料噴射の演算開始タイミングｔｃｓに到達すると、複合タスクＴＳ２が開始される。複合タスクＴＳ２の取得処理Ｐｏにより、２回目の燃料噴射の開弁タイミングｔｖｏ及び閉弁タイミングｔｖｃが確定される。さらに、複合タスクＴＳ２の演算処理Ｐｃにより、３回目の燃料噴射における駆動開始タイミングｔｄｓが再設定される。以上のように、噴射時間の調整が駆動開始タイミングｔｄｓの変更によって実施されれば、駆動終了タイミングｔｄｆと点火タイミングとの時間間隔Ｔｉは、維持される。
【００４０】
そして、再設定された駆動開始タイミングｔｄｓを開始点として、開閉検出部７０における検出期間Ｔｖｓが設定される。３回目の燃料噴射における開弁タイミングｔｖｏ及び閉弁タイミングｔｖｃの検出結果は、点火後の排気行程（例えば上死点前５４０°）にて開始される取得タスクＴＳｏにより、演算実行部５３に取得される。
【００４１】
図４に示す燃料噴射パターンでは、圧縮行程での燃料噴射の噴射時間の調整手法が図３に示す燃料噴射パターンとは異なっている。図４の２回目噴射及び３回目噴射では、複合タスクＴＳ２の演算処理Ｐｃによって再演算された噴射時間に基づき、駆動終了タイミングｔｄｆが変更されている。この場合、複合タスクＴＳ２における演算処理Ｐｃは、駆動開始タイミングｔｄｓよりも前に完了されなくてもよい。故に、駆動終了タイミングｔｄｆを変更する場合では、駆動開始タイミングｔｄｓを変更する場合よりも、先行時間Ｔｐｔが短く規定され得る。その結果、より噴射開始に近いタイミングでの噴射量の再演算が可能となる。
【００４２】
以上の圧縮行程における各燃料噴射では、図５に示すように、駆動開始タイミングｔｄｓ及び演算開始タイミングｔｃｓは、共にクランクシャフトの角度を基準に設定される。即ち、駆動開始タイミングｔｄｓをカウントするタイマＴｍｄと、演算開始タイミングｔｃｓをカウントするタイマＴｍｔとは、共に、クランクシャフトの回転によって値を減らして行くタイマとされる。こうした設定であれば、クランクシャフトの回転速度が変動した場合でも、駆動開始タイミングｔｄｓ及び演算開始タイミングｔｃｓの前後関係は、維持される。その結果、複合タスクＴＳ２は、駆動開始タイミングｔｄｓよりも前に開始される。
【００４３】
以上のマイコン５０にて実施される噴射制御処理の詳細を、図６〜図９に基づき、図１を参照しつつ、さらに説明する。図６〜図９に示す噴射制御処理は、エンジン２の始動によって開始され、エンジン２が停止されるまで、繰り返し開始される。
【００４４】
図６に示すメイン処理のＳ１１では、回転センサ２１にて検出される状態情報に基づき、クランクシャフトの角度（角度位置）を判定する。Ｓ１１にて、クランク位置が上死点前４５０°又は２７０°である場合、Ｓ１２に進む。Ｓ１２では、上死点前４５０°ＣＡ時処理又は上死点前２７０°ＣＡ時処理（図７参照）を実行し、メイン処理を一旦終了する。
【００４５】
Ｓ１１にて、クランク位置が上死点前４５０°及び２７０°のいずれでも無いと判定した場合、Ｓ１３に進む。Ｓ１３では、再設定のタイミングである駆動開始タイミングｔｄｓの先行時間Ｔｐｔ前になったか否かを判定する。Ｓ１３の再設定のタイミングは、後述するＳ１０３又はＳ１０６（図７参照）にて設定される。Ｓ１３にて、再設定のタイミングであると判定した場合、Ｓ１４に進む。Ｓ１４では、先行時間前処理（図８参照）を実行し、メイン処理を一旦終了する。
【００４６】
Ｓ１３にて、再設定のタイミングでないと判定した場合、Ｓ１５に進む。Ｓ１５では、駆動終了タイミングｔｄｆになったか否かを判定する。Ｓ１５にて、駆動終了タイミングｔｄｆではないと判定した場合、メイン処理を一旦終了する。一方で、Ｓ１５にて、駆動終了タイミングｔｄｆであると判定した場合、Ｓ１６に進む。Ｓ１６では、駆動終了タイミング処理（図９参照）を実行し、メイン処理を一旦終了する。
【００４７】
図７に示す上死点前４５０°ＣＡ時処理又は上死点前２７０°ＣＡ時処理では、吸気行程噴射又は圧縮行程噴射における各タイミングが仮設定される。具体的に、Ｓ１０１では、Ｓ１０と同様に、クランクシャフトの角度位置を判定する。Ｓ１０１にて、クランク位置が上死点前４５０°であると判定した場合、Ｓ１０２に進む。Ｓ１０２では、吸気圧程にて行う一回の燃料噴射で要求される総噴射量、噴射時間及び駆動開始タイミングｔｄｓ等を演算し、Ｓ１０３に進む。
【００４８】
Ｓ１０３では、Ｓ１０２にて演算した駆動開始タイミングｔｄｓよりも先行時間Ｔｐｔだけ前に、噴射量及び噴射時間を再演算する先行時間前処理の開始タイミング（演算開始タイミングｔｃｓ）を設定し、Ｓ１０４に進む。Ｓ１０４では、Ｓ１０２にて演算した駆動開始タイミングｔｄｓを設定し、処理を終了する。Ｓ１０３及びＳ１０４において、各開始タイミングは、クランクシャフトの角度を基準として設定される。
【００４９】
Ｓ１０１にて、クランク位置が上死点前２７０°であると判定した場合、Ｓ１０５に進む。Ｓ１０５では、圧縮行程にて行う二回の燃料噴射で要求される総噴射量、それぞれの噴射時間及び駆動開始タイミングｔｄｓを演算し、Ｓ１０６に進む。
【００５０】
Ｓ１０６では、Ｓ１０５にて演算した駆動開始タイミングｔｄｓよりも先行時間Ｔｐｔだけ前に、噴射量及び噴射時間を再演算する先行時間前処理の開始タイミング（演算開始タイミングｔｃｓ）を設定し、Ｓ１０７に進む。Ｓ１０７では、Ｓ１０５にて演算した駆動開始タイミングｔｄｓを設定し、処理を終了する。Ｓ１０６及びＳ１０７においても、各開始タイミングは、クランクシャフトの角度を基準として設定される。
【００５１】
図８に示す先行時間前処理では、上述の複合タスクＴＳ２が実行され、前回の開閉弁タイミングの確定と、今回の噴射時間の調整とが実施される。Ｓ１１１では、取得処理Ｐｏの実行により、開閉検出部７０から検出結果を通信によって取得する。そして、前回の燃料噴射における開弁タイミングｔｖｏ及び閉弁タイミングｔｖｃを確定し、Ｓ１１２に進む。
【００５２】
Ｓ１１２では、実施されている燃料噴射の行程を判定する。Ｓ１１２にて、吸気行程の噴射が行われていると判定した場合、Ｓ１１３に進む。Ｓ１１３では、吸気行程での燃料噴射における噴射量及び噴射時間の再演算を実施し、Ｓ１１４に進む。Ｓ１１４では、Ｓ１１３にて再演算した噴射時間に基づき、駆動終了タイミングｔｄｆを再設定し、処理を終了する。
【００５３】
一方、Ｓ１１２にて、圧縮行程の噴射が行われていると判定した場合、Ｓ１１５に進む。Ｓ１１５では、圧縮行程での燃料噴射における噴射量及び噴射時間の再演算を実施し、Ｓ１１６に進む。Ｓ１１６では、駆動開始タイミングｔｄｓまでの残り時間を判定する。具体的に、Ｓ１１６にて、駆動開始タイミングｔｄｓまでの残り時間が第一閾時間（例えば２０μ秒）未満であると判定した場合、Ｓ１１７に進む。Ｓ１１７では、Ｓ１１５にて再演算した噴射時間に基づき、駆動終了タイミングｔｄｆを再設定し、処理を終了する。
【００５４】
一方、Ｓ１１６にて、駆動開始タイミングｔｄｓまでの残り時間が第一閾時間以上であると判定した場合、Ｓ１１８に進む。Ｓ１１８では、駆動開始タイミングｔｄｓを仮設定の時期から早める補正した場合に、補正後の駆動開始タイミングｔｄｓまでの残り時間が第二閾時間（例えば１０μ秒）以上確保されるか否かを判定する。Ｓ１１８にて、補正後の駆動開始タイミングｔｄｓまでの残り時間が第二閾時間未満であると判定した場合、Ｓ１１７に進み、駆動終了タイミングｔｄｆの再設定を行う。一方で、Ｓ１１８にて、残り時間が第二閾値時間以上であると判定した場合、Ｓ１１９に進む。Ｓ１１９では、駆動開始タイミングｔｄｓを再設定し、処理を終了する。
【００５５】
図９に示す駆動終了タイミング処理のＳ１２１では、追加の噴射設定の要否を判定する。Ｓ１２１にて、噴射済みの燃料量が要求された噴射量に概ね達していると判定した場合、追加の噴射設定は不要であると判定し、処理を終了する。一方でＳ１２１にて、要求された総噴射量に対して噴射済みの燃料量が少ないと判定した場合、追加の噴射設定が必要であると判定し、Ｓ１２２に進む。
【００５６】
Ｓ１２２では、次回の燃料噴射の駆動開始タイミングｔｄｓを設定し、Ｓ１２３に進む。Ｓ１２３では、状態情報のうちのエンジン２の回転数の最新値に基づき、先行時間Ｔｐｔを角度に換算し、Ｓ１２４に進む。Ｓ１２４では、Ｓ１２３にて換算した角度の値を用いて、次回の先行時間前処理の開始タイミングを設定し、処理を終了する。
【００５７】
ここまで説明したように、演算実行部５３は、開閉検出部７０での検出結果の削除を回避するため、前回の燃料噴射での検出結果を、今回の駆動開始タイミングｔｄｓよりも前に取得する必要がある。一方で、最新の状態情報を反映した噴射量制御のためには、噴射量の再演算は、駆動開始タイミングｔｄｓと概ね同時に開始されることが望ましい。これらの理由により、取得処理Ｐｏと演算処理Ｐｃとを、別々のタスクＴＳｏ，ＴＳｃとして実行することが考えられる。しかし、これらの処理Ｐｏ，Ｐｃを個別のタスクＴＳｏ，ＴＳｃとして実行してしまうと、それぞれのタスクにて、タスク生成処理Ｐｔを実行する必要が生じる。
【００５８】
そこで第一実施形態では、インジェクタ１０の駆動開始タイミングｔｄｓよりも前に、取得処理Ｐｏ及び演算処理Ｐｃが一つの複合タスクＴＳ２として開始される。故に、前回の燃料噴射における開弁タイミングｔｖｏ及び閉弁タイミングｔｖｃを検出した検出結果は、今回の燃料噴射の開始前に取得され得る。
【００５９】
加えて、取得処理Ｐｏと共に演算処理Ｐｃが行われれば、これらの処理を個別のタスクで実行するよりも、タスク生成処理Ｐｔが低減され得る。したがって、燃料噴射制御に関連する処理をオペレーションシステム上で動作させる場合でも、処理負荷の増加を抑えつつ、開弁タイミングｔｖｏ及び閉弁タイミングｔｖｃの適切な取得が可能になる。
【００６０】
さらに、複合タスクＴＳ２における演算処理Ｐｃは、駆動開始タイミングｔｄｓの直前に開始され得る。故に、演算処理Ｐｃにて再演算される噴射量には、エンジン２における最新の状態情報が反映され得る。したがって、エンジン制御装置１００は、エンジン２の最新の状況を把握して、噴射量演算の精度を確保できる。
【００６１】
また、取得処理Ｐｏ及び演算処理Ｐｃを一つの複合タスクＴＳ２で実施することによるタスク生成処理Ｐｔの削減効果は、一回の燃焼サイクルにて実施される分割噴射回数が多いほど、及びエンジン２の気筒２ｂの数が多いほど、いっそう顕著となる。
【００６２】
さらに、例えば２回目噴射と３回目噴射との間のインターバルが短くなった場合、取得処理Ｐｏと演算処理Ｐｃとを別々のタスクＴＳｏ，ＴＳｃで実行しようとすると、演算処理Ｐｃと取得処理Ｐｏとの処理順序が入れ替わり得る。しかし、取得処理Ｐｏと演算処理Ｐｃとが一つの複合タスクＴＳ２として纏められていれば、取得処理Ｐｏの後に演算処理Ｐｃを実行するという処理順序は、維持される。故に、処理順序の入れ替わりを防ぐための場合分け等が不要になるため、噴射制御処理の内容が簡素化され得る。さらに、燃料噴射の間隔が短く設定された場合でも、開弁タイミングｔｖｏ及び閉弁タイミングｔｖｃの取得は、適切に実施される。
【００６３】
加えて第一実施形態での先行時間Ｔｐｔは、取得処理Ｐｏに必要な処理時間を考慮し、複合タスクＴＳ２における取得処理Ｐｏが駆動開始タイミングｔｄｓよりも前に完了するように規定される。故に、演算実行部５３は、燃料噴射での検出結果によって更新されてしまわないうちに、前回の燃料噴射における開弁タイミングｔｖｏ及び閉弁タイミングｔｖｃを確定できる。
【００６４】
また第一実施形態での先行時間Ｔｐｔは、複合タスクＴＳ２における演算処理Ｐｃが駆動終了タイミングｔｄｆよりも前に完了するように規定される。故に、演算実行部５３は、新しい状態情報を用いて再演算した情報で、仮設定の情報を更新し得る。その結果、最新の状態情報に基づく噴射量がインジェクタ１０によって各気筒２ｂに供給され得る。
【００６５】
さらに第一実施形態の演算実行部５３は、複合タスクＴＳ２における演算処理Ｐｃを駆動開始タイミングｔｄｓの前に完了させたうえで、再演算された噴射量に基づき、駆動開始タイミングｔｄｓを調整する。こうした調整であれば、噴射量を変更したとしても、駆動終了タイミングｔｄｆ、ひいては閉弁タイミングｔｖｃは、実質的に変更されない。故に、点火タイミングとの時間間隔Ｔｉを維持したまま、燃料噴射における噴射量が補正可能となる。
【００６６】
加えて第一実施形態の演算実行部５３は、複合タスクＴＳ２の演算処理Ｐｃにて再演算された噴射量に基づき、駆動終了タイミングｔｄｆを変更可能である。駆動終了タイミングｔｄｆの調整が許容されれば、演算処理Ｐｃの開始時期を遅らせて、より新しい状態情報を噴射量の再演算に用いることが可能になる。その結果、最新のエンジン２の状態を反映した高精度な噴射量制御が可能になる。
【００６７】
また第一実施形態では、駆動開始タイミングｔｄｓ及び複合タスクＴＳ２の演算開始タイミングｔｃｓは、共にクランクシャフトの回転角度を基準として設定される。故に、クランクシャフトの回転速度に変動が生じた場合でも、駆動開始タイミングｔｄｓ及び演算開始タイミングｔｃｓの順序は、入れ替わることなく、適切に維持され得る。
【００６８】
尚、第一実施形態では、エンジン２が「内燃機関」に相当し、インジェクタ１０が「燃料噴射弁」に相当し、マイコン５０が「処理部」に相当し、エンジン制御装置１００が「噴射制御装置」に相当する。また、複合タスクＴＳ２が「タスク」に相当し、演算開始タイミングｔｃｓが「（タスクの）開始タイミング」に相当し、先行時間Ｔｐｔが「所定時間」に相当する。
【００６９】
（第二実施形態）
図１０に示す本開示の第二実施形態は、第一実施形態の変形例である。第二実施形態では、エンジン制御装置２００の制御回路２５０ａの構成が、第一実施形態とは異なっている。第二実施形態では、開閉検出部７０（図１参照）と実質同一の機能を有する開閉検出部５２が、マイコン２５０の機能部の一つとして、情報取得部５１及び演算実行部５３と共に設けられている。
【００７０】
開閉検出部５２は、入力インターフェースとしてマイコン２５０に設けられたＡＤ変換器の機能を利用している。開閉検出部５２は、第一実施形態と同様の検出期間Ｔｖｓ（図２参照）にて、インジェクタ１０に印加される駆動電流を、特定のサンプリング周期（例えば１μ秒毎）でＡＤ変換する。開閉検出部５２は、蓄積されたＡＤ変換結果の示す駆動電流の変化態様に基づき、開弁タイミングｔｖｏ及び閉弁タイミングｔｖｃ（図２参照）を検出する。開弁タイミングｔｖｏ及び閉弁タイミングｔｖｃの検出結果は、取得処理Ｐｏによって演算実行部５３に取得される。開閉検出部５２は、次の検出期間ＴｖｓまでＡＤ変換結果及び検出結果を保持し、次の燃料噴射の駆動開始タイミングｔｄｓでＡＤ変換結果及び検出結果をクリアする。
【００７１】
こまで説明した第二実施形態でも、取得処理Ｐｏ及び演算処理Ｐｃを一連の複合タスクＴＳ２で実行すれば、開閉弁の各タイミングｔｖｏ，ｔｖｃは、適切に取得可能となる。故に、開閉検出部５２がマイコン２５０の機能部であっても、第一実施形態と同様の効果が獲得される。尚、第二実施形態では、マイコン２５０が「処理部」に相当し、エンジン制御装置２００が「噴射制御装置」に相当する。
【００７２】
（他の実施形態）
以上、本開示の複数の実施形態について説明したが、本開示は、上記実施形態に限定して解釈されるものではなく、本開示の要旨を逸脱しない範囲内において種々の実施形態及び組み合わせに適用することができる。
【００７３】
上記実施形態での複合タスクＴＳ２では、取得処理Ｐｏと演算処理Ｐｃとが連続して実行されていた。しかし、取得処理Ｐｏと演算処理Ｐｃとの間に、別の処理が実行されてもよい。即ち、複合タスクＴＳ２には、タスク生成処理Ｐｔ、取得処理Ｐｏ及び演算処理Ｐｃとは異なる処理が含まれていてもよい。
【００７４】
上記実施形態における先行時間Ｔｐｔの長さは、適宜変更可能である。上記実施形態のように、先行時間Ｔｐｔは、仮設定された駆動開始タイミングｔｄｓよりも前に演算処理Ｐｃが完了するよう規定されてもよく、駆動期間中に演算処理Ｐｃが完了するように規定されてもよい。
【００７５】
さらに、圧縮行程での初回の燃料噴射（図３  ２回目噴射参照）での先行時間と、次の燃料噴射（図３  ３回目噴射参照）での先行時間は、異なっていてもよい。例えば、点火直前の燃料噴射は、駆動開始タイミングｔｄｓの変更によって噴射時間が調整可能なように、初回等の燃料噴射よりも長い先行時間が設けられていてもよい。
【００７６】
上記実施形態の吸気行程での燃料噴射では、駆動開始タイミングｔｄｓから演算タスクＴＳｃが開始されていた。しかし、演算実行部は、上死点前５４０°での取得タスクＴＳｏを省略し、駆動開始タイミングｔｄｓの先行時間Ｔｐｔ前に複合タスクＴＳ２を開始させてもよい。
【００７７】
上記実施形態にて説明した燃料噴射パターンでは、吸気行程での噴射回数は、１回のみであった。しかし、吸気行程にて複数回の分割噴射が実施されてもよい。この場合、再演算に基づく噴射量の調整は、駆動開始タイミングｔｄｓ及び駆動終了タイミングｔｄｆのいずれかの変更によって実現されてよい。さらに、圧縮行程での噴射回数も適宜変更されてよい。
【００７８】
上記実施形態では、駆動開始タイミングのみを変更するケース（図３参照）と、駆動終了タイミングのみを変更するケース（図４参照）とを例示した。しかし、噴射量の調整は、駆動開始タイミング及び駆動終了タイミングの両方の調整によって実現されてもよい。
【００７９】
上記実施形態のマイコンにおいて、駆動開始タイミング、演算開始タイミング、開閉弁のタイミング等は、クランクシャフトの角度への関連付けによって設定されていた。しかし、各タイミングは、マイコンにおいてカウントされている時間に関連付けて、設定されてもよい。
【００８０】
上記実施形態の開閉検出部及び取得処理では、開弁タイミング及び閉弁タイミングの両方が取得されていた。しかし、開閉弁検出部及び取得処理では、開弁タイミング及び閉弁タイミングの少なくとも一方が取得されればよい。例えば、演算実行部は、取得処理にて開弁タイミングのみを取得してもよく、又は閉弁タイミングのみを取得してもよい。
【００８１】
上記実施形態において、エンジン制御装置の制御回路によって提供されていた機能は、上述のものとは異なるハードウェア及びソフトウェア、或いはこれらの組み合わせによって提供可能である。例えばエンジン制御装置は、マイコンに相当する構成のみを備えており、噴射弁駆動部に相当する機能を備えた駆動装置に、制御信号を出力する電子制御ユニットであってもよい。また、マイコンに組み込まれるＲＴＯＳは、ＯＳＥＫには限定されず、適宜変更されてよい。
【００８２】
上記実施形態では、燃料噴射弁によるガソリン噴射を制御するエンジン制御装置に対し、本開示の噴射制御方法を適用した例を説明した。しかし、上記の噴射制御方法は、ガソリン以外の燃料、例えば軽油等を噴射する燃料噴射弁を制御するエンジン制御装置に対しても、適用可能である。
【００８３】
上記実施形態のエンジン制御装置は、車載されたエンジンを制御する燃料噴射制御システムに用いられていた。しかし、エンジン制御装置の制御対象とされる機関は、車載された動力用のエンジンに限定されず、各種輸送機器に搭載される機関及び各種民生用機器に用いられる機関であってよい。
【符号の説明】
【００８４】
２  エンジン（内燃機関）、１０  インジェクタ（燃料噴射弁）、５０，２５０  マイコン（処理部）、５１  情報取得部、５２，７０  開閉検出部、５３  演算実行部、５４  記憶部、１００，２００  エンジン制御装置、Ｐｃ  演算処理、Ｐｏ  取得処理、ＴＳｏ  取得タスク、ＴＳｃ  演算タスク、ＴＳ２  複合タスク（タスク）、Ｔｐｔ  先行時間（所定時間）、ｔｃｓ  演算開始タイミング（開始タイミング）、ｔｄｓ  駆動開始タイミング、ｔｄｆ  駆動終了タイミング、ｔｖｃ  閉弁タイミング、ｔｖｏ  開弁タイミング
【図１】
2019152145.tif 000003
【図２】
2019152145.tif 000004
【図３】
2019152145.tif 000005
【図４】
2019152145.tif 000006
【図５】
2019152145.tif 000007
【図６】
2019152145.tif 000008
【図７】
2019152145.tif 000009
【図８】
2019152145.tif 000010
【図９】
2019152145.tif 000011
【図１０】
2019152145.tif 000012