(57)【要約】【課題】制御部が出力した制御データ及びコマンドデータを、制御対象機器の駆動部に対して、シリアルに送信する制御システムにおいて、コマンドデータが、制御対象機器の駆動状態を変化させるための駆動制御データと競合することを回避できるようにする。【解決手段】マイクロセカンドバスインターフェース１５によるデータフレーム及びコマンドフレームの送信に関して、コマンドフレームが制御対象機器の駆動状態を変化させるための制御データを含むデータフレームと競合しないように、コマンドフレームの送信開始タイミングを調停するコマンドフレーム送信タイミング決定部３３を備える。【選択図】図３
2014127078.tif 000002
【特許請求の範囲】
【請求項１】
制御対象機器を制御するための制御システム（１００）であって、
前記制御対象機器を駆動する駆動信号を出力する駆動部（２３、２４）と、
前記駆動信号を生成するための駆動制御データと、当該駆動部に所定の動作を指示するコマンドデータとを出力する制御部（１１）と、
前記制御部が出力した、前記駆動制御データを含むデータフレーム及び前記コマンドデータを含むコマンドフレームを、前記駆動部に対して、シリアルに送信する通信インターフェース（１５、２１）と、を備え、
前記制御部は、前記通信インターフェースによる前記データフレーム及び前記コマンドフレームの送信に関して、前記コマンドフレームが前記制御対象機器の駆動状態を変化させるための駆動制御データを含むデータフレームと競合しないように、前記コマンドフレームの送信開始タイミングを調停する調停部（３３、３６）を備えることを特徴とする制御システム。
【請求項２】
前記制御システムは、複数の前記制御対象機器を制御するものであり、
１つの前記データフレームは、複数の前記制御対象機器のための駆動制御データを含み、当該フレームデータが、繰り返し送信され、
前記調停部は、複数の前記制御対象機器の内、前記コマンドフレームとの競合による前記データフレームの送信開始タイミングの遅れが制御上問題となる制御対象機器の駆動状態を変化させる駆動制御データを含むデータフレームを対象として、前記コマンドフレームの送信開始タイミングの調停を行うことを特徴とする請求項１に記載の制御システム。
【請求項３】
前記調停部（３３）は、前記通信インターフェースにおいて、前記制御対象機器の駆動状態を変化させるための駆動制御データを含むデータフレームの送信から所定期間内に、前記コマンドフレームが送信されるように、前記コマンドフレームの送信開始タイミングを設定することを特徴とする請求項１又は２に記載の制御システム。
【請求項４】
前記調停部は、前記通信インターフェースにおいて、前記制御対象機器の駆動状態を変化させるための駆動制御データを含むデータフレームの次に、前記コマンドフレームが送信されるように、前記コマンドフレームの送信開始タイミングを設定することを特徴とする請求項３に記載の制御システム。
【請求項５】
前記調停部は、前記制御対象機器の駆動状態を変化させるための駆動制御データを含むデータフレームの送信タイミングに所定の遅延時間を加えることにより、前記コマンドフレームの送信開始タイミングを設定することを特徴とする請求項３又は４に記載の制御システム。
【請求項６】
前記調停部（３６）は、前記制御対象機器の駆動状態を変化させるための駆動制御データを含むデータフレームの送信タイミングを基準として、前記コマンドフレームの送信禁止期間を定め、前記制御部により前記コマンドデータが出力されたとき、前記送信禁止期間に該当した場合、前記通信インターフェースに対して前記コマンドデータの送信指示を保留し、前記送信禁止期間に該当しない場合、前記コマンドデータの送信指示を行うことを特徴とする請求項１又は２に記載の制御システム。
【請求項７】
前記調停部は、前記制御対象機器の駆動状態を変化させるための駆動制御データを含むデータフレームの送信開始タイミングの前後に渡る所定期間を、前記コマンドフレームの送信禁止期間として定めることを特徴とする請求項６に記載の制御システム。
【請求項８】
前記所定期間は、前記制御対象機器の駆動状態を変化させるための駆動制御データを含むデータフレームの送信開始タイミングの前後で、それぞれ１つのデータフレームの長さに相当する期間に定められることを特徴とする請求項７に記載の制御システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、制御対象機器を制御するための制御システムに関する。
【背景技術】
【０００２】
例えば、特許文献１には、計算装置と、当該計算装置とシリアル多線バスを介して接続された周辺構成素子とを有する制御装置が開示されている。この周辺構成素子は、計算装置から出力されたシリアルデータを、センサ、診断テスタ等の外部装置へ伝送する。
【０００３】
このように、計算装置と外部装置との間に、周辺構成素子を介在させ、その周辺構成素子との間をシリアル多線バスを介して接続するようにすると、計算装置が、各外部装置にパラレルにデータを送信する構成に比較して、信号線や接続端子の数を少なくすることができる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特表２００９−５０７３０５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
上述した制御システムにおけるシリアル通信を、例えば車両のエンジン制御に適用しようとした場合、点火装置、燃料噴射装置、燃料ポンプ、電子スロットルなどの制御対象機器の駆動回路（ドライバ）とマイコンとの間に、シリアル通信を行うための通信インターフェースを介在させることが考えられる。
【０００６】
しかし、このような構成において、マイコンが出力する信号は、各駆動回路が対応する制御対象機器に出力する駆動信号を生成するための駆動制御データばかりではない。例えば、マイコンは、各駆動回路において故障診断を実行し、その結果を通知するよう指示したり、あるいは、制御対象機器の種類や状態に応じて、駆動回路において用いられる設定データの変更を指示したりするためのコマンドデータを出力することも必要となる場合がある。
【０００７】
ここで、例えば点火装置によりエンジンのシリンダ内の燃料を着火させるタイミングや、そのシリンダ内に燃料を噴射するタイミングは、エンジンの運転状態を大きく左右する。従って、エンジンを望ましい運転状態に制御するためには、点火装置や燃料噴射装置の駆動回路に対して、タイミング良く、点火を指示したり、燃料の噴射を指示したりするための駆動制御データを与える必要がある。
【０００８】
その一方で、上述したように、マイコンはコマンドデータを出力することがある。このコマンドデータが、上述したような良好なタイミング精度が求められる駆動制御データとタイミング的に競合し、コマンドデータの送信が優先されてしまうと、エンジンの運転状態を望ましい運転状態に維持することが困難になる虞が生じる。
【０００９】
本発明は、上述した点に鑑みてなされたもので、制御部が出力した駆動制御データ及びコマンドデータを、制御対象機器の駆動部に対して、シリアルに送信する制御システムにおいて、コマンドデータが、制御対象機器の駆動状態を変化させるための駆動制御データと競合することを回避することが可能な制御システムを提供することを目的とする。
【課題を解決するための手段】
【００１０】
上記目的を達成するために、本発明による制御システム（１００）は、
制御対象機器を駆動する駆動信号を出力する駆動部（２３、２４）と、
駆動信号を生成するための駆動制御データと、当該駆動部に所定の動作を指示するコマンドデータとを出力する制御部（１１）と、
制御部が出力した、駆動制御データを含むデータフレーム及びコマンドデータを含むコマンドフレームを、駆動部に対して、シリアルに送信する通信インターフェース（１５、２１）と、を備え、
制御部は、通信インターフェースによるデータフレーム及びコマンドフレームの送信に関して、コマンドフレームが制御対象機器の駆動状態を変化させるための駆動制御データを含むデータフレームと競合しないように、コマンドフレームの送信開始タイミングを調停する調停部（３３、３６）を備えることを特徴とする。
【００１１】
このような構成を採用したことにより、通信インターフェースを介して、制御部から駆動部へ、データフレーム及びコマンドフレームを送信する場合であっても、コマンドフレームが、制御対象機器の駆動状態を変化させるための駆動制御データを含むデータフレームと競合することを回避することができる。そのため、駆動制御データにより、良好なタイミング精度にて制御対象機器の駆動状態を変化させることができる。
【００１２】
本発明による制御システムは、複数の制御対象機器を制御するものであり、１つのデータフレームは、複数の制御対象機器のための駆動制御データを含み、このフレームデータが、繰り返し送信され、調停部は、複数の制御対象機器の内、コマンドフレームとの競合によるデータフレームの送信開始タイミングの遅れが制御上問題となる制御対象機器の駆動状態を変化させる駆動制御データを含むデータフレームを対象として、コマンドフレームの送信開始タイミングの調停を行うことが好ましい。
【００１３】
このような構成を採用することにより、制御システムは、複数の制御対象機器をそれぞれ制御するための駆動制御データを、１つのデータフレームにて同時に送信することができる。その一方、それらの駆動制御データが、対応する制御対象機器の駆動状態を変化させるタイミングは、種々の条件に応じてそれぞれ決定される。そのため、複数の制御対象機器の内、コマンドフレームとの競合によるデータフレームの送信開始タイミングの遅れが制御上問題となる制御対象機器を選定し、その選定された制御対象機器の駆動状態を変化させる駆動制御データを含むデータフレームを対象として、コマンドフレームの送信開始タイミングの調停を行う。これにより、コマンドフレームとの競合を回避することが必要なデータフレームに関して、確実にコマンドフレームの送信開始時期の調停を行うことができる。
【００１４】
コマンドフレームの送信開始タイミングの調停の具体例として、調停部（３３）は、通信インターフェースにおいて、制御対象機器の駆動状態を変化させるための駆動制御データを含むデータフレームの送信から所定期間内に、コマンドフレームが送信されるように、コマンドフレームの送信開始タイミングを設定するようにしても良い。この手法は、一度、制御対象機器の駆動状態を変化させるための駆動制御データが出力されると、ある程度の期間は、そのような駆動制御データが出力されない場合に効果的である。
【００１５】
また、調停部（３６）は、制御対象機器の駆動状態を変化させるための駆動制御データを含むデータフレームの送信タイミングを基準として、コマンドフレームの送信禁止期間を定め、制御部によりコマンドデータが出力されたとき、送信禁止期間に該当している場合、通信インターフェースに対してコマンドデータの送信指示を保留し、送信禁止期間に該当しない場合、コマンドデータの送信指示を行うようにしても良い。このようにしても、コマンドフレームが、制御対象機器の駆動状態を変化させるための駆動制御データを含むデータフレームと競合することを回避することができる。
【００１６】
なお、上記括弧内の参照番号は、本発明の理解を容易にすべく、後述する実施形態における具体的な構成との対応関係の一例を示すものにすぎず、なんら本発明の範囲を制限することを意図したものではない。
【００１７】
また、上述した特徴以外の本発明の特徴に関しては、後述する実施形態の説明及び添付図面から明らかになる。
【図面の簡単な説明】
【００１８】
【図１】第１実施形態による制御システムの概略的な構成を示す構成図である。
【図２】マイコンから拡張ＩＣへ送信されるデータフレーム及びコマンドフレームの一例を示す説明図である。
【図３】第１実施形態において、コマンドフレームの送信タイミングを調停するためのマイコンの機能をブロックとして表した機能構成図である。
【図４】第１実施形態による、コマンドフレームの送信タイミングの調停に基づく作用を説明するための説明図である。
【図５】第１実施形態において、コマンドフレームの送信タイミングの調停を行うための制御処理を示すフローチャートである。
【図６】第２実施形態において、コマンドフレームの送信タイミングを調停するためのマイコンの機能をブロックとして表した機能構成図である。
【図７】第２実施形態による、コマンドフレームの送信タイミングの調停に基づく作用を説明するための説明図である。
【発明を実施するための形態】
【００１９】
（第１実施形態）
以下、本発明の第１実施形態による制御システムについて、図面を参照しつつ説明する。なお、本実施形態では、制御システムが、車両のエンジンの運転状態を制御するために適用された例について説明する。しかし、本発明による制御システムの制御対象は、エンジンに限られる訳ではなく、その他の機器や装置を制御対象としても良い。
【００２０】
図１は、本実施形態による制御システム１００の概略的な構成を示す構成図である。図１に示すように、制御システム１００は、マイコン１０と拡張ＩＣ２０とを有する。
【００２１】
マイコン１０は、エンジン（図示せず）の運転状態を検出するために、入出力部（Ｉ／Ｏ）１４を介して、各種のセンサの検出信号を取り込む。例えば、マイコン１０は、吸気管に設けられたスロットルバルブの開度を検出するスロットル開度センサ、エンジンの所定クランク角毎にクランク角信号を出力するクランク角センサ、エンジンの吸入空気量を検出するエアフローセンサ、エンジン冷却水の温度を検出する冷却水温センサ、排気中の酸素濃度を検出する酸素濃度センサなどから検出信号を取り込む。
【００２２】
マイコン１０は、ＣＰＵ１１、ＲＯＭ１２、ＲＡＭ１３を有する。そして、制御部としてのＣＰＵ１１が、ＲＯＭ１２に記憶された各種の演算プログラムを実行することで、現在のエンジンの運転状態に基づき、そのエンジンの運転状態を所望の状態になるように制御するための制御データを演算する。例えば、マイコン１０は、上記各種センサ等から各々検出信号を入力し、それらの各種信号に基づき、制御データとして、点火時期を示す点火データ、燃料噴射時期及びその量を指示する噴射データ、スロットル開度を制御するための駆動データ、燃料ポンプの回転数を制御するための駆動データなどを演算する。
【００２３】
また、例えばエアフローセンサは大きな温度特性を有するため、定期的に温度検出を行なうことが必要となる場合がある。この場合、エアフローセンサの近傍に温度センサを設けるのではなく、エアフローセンサの温度と相関する、エアフローセンサのインピーダンスを検出し、その検出したインピーダンスから温度を推定することが考えられる。このような場合、マイコン１０は、エアフローセンサのインピーダンス検出を行なう時期が到来したか否かを判断し、その検出時期が到来したと判断した場合には、インピーダンス検出を行なうべく、エアフローセンサへの所定電流の通電を指示する通電データを制御データとして出力する。
【００２４】
さらに、マイコン１０は、拡張ＩＣ２０に設けられた各種のドライバ２３〜２５に対して、各ドライバ２３〜２５において故障診断を実行し、その結果を通知するよう指示したり、あるいは、制御対象機器の種類や状態に応じて、対応するドライバ２３〜２５において用いられる設定データの変更を指示したりするためのコマンドデータを出力する。
【００２５】
マイコン１０及び拡張ＩＣ２０は、それぞれマイクロセカンドバスインターフェース（ＭＳＢＩＦ）１５、２１を有し、これらＭＳＢＩＦ１５，２１を介して、相互に通信可能に接続されている。ＭＳＢＩＦ１５、２１は、高速にシリアル通信を行うための通信インターフェースであり、例えば通信フレームを１〜数μｓ以内の時間で送信することが可能なものである。ＭＳＢＩＦ１５は、マイコン１０から出力された制御データやコマンドデータに基づき、制御データを含むデータフレーム（ＤＦ）及びコマンドデータを含むコマンドフレーム（ＣＦ）を生成し、ダウンストリーム（ＤＳ）用の送信ラインを用いて、拡張ＩＣ２０のＭＳＢＩＦ２１に送信する。逆に、拡張ＩＣ２０において、例えばエアフローセンサのインピーダンス検出結果や、故障診断結果が得られたときには、ＭＳＢＩＦ２１が、それらの検出結果や故障診断結果を含むデータフレームを生成し、アップストリーム（ＵＳ）用の送信ラインを用いて、マイコン１０のＭＳＢＩＦ１５に送信する。
【００２６】
ＭＳＢＩＦ１５は、例えば図２（ａ）、（ｂ）に示すように、連続的にかつ繰り返しデータフレームを送信する。各データフレームには、エンジンの運転状態を制御するために必要な全ての制御データの項目が含まれている。例えば、データフレームには、エンジンの気筒数分の点火データ、噴射データ（直噴エンジンであれば、気筒数分の噴射データ）、スロットルバルブモータの駆動データ、燃料ポンプモータの駆動データ、及びインピーダンス検出のための通電データなどをそれぞれ示す制御データが含まれる。すなわち、データフレームは、送信すべき制御データの種類や長さに応じて、予め複数に区分され、いずれの区分において、いずれの制御データを送信するかが事前に定められている。この制御データの中で、例えば点火データや噴射データは、点火や噴射を行うべき期間はオンし、それ以外はオフするものとなり、各モータの駆動データは、モータの回転数を直接的に指示するものであったり、モータの回転数の増減を指示するものとなる。
【００２７】
さらに、ＭＳＢＩＦ１５からＭＳＢＩＦ２１へは、クロック送信ラインを介して、クロック信号が与えられている。このクロック信号は、ＭＳＢＩＦ１５が、ＣＰＵ１１から出力された制御データやコマンドデータを、データフレームやコマンドフレームに載せる際に、各データの単位長さ（ビット）を区分するために用いられるものである。このクロック信号をＭＳＢＩＦ２１に与えることにより、ＭＳＢＩＦ２１では、受信したデータフレームやコマンドフレームから各種の制御データやコマンドデータを復号することができる。さらに、ＭＳＢＩＦ２１が、そのクロック信号を用いてインピーダンス検出結果を示すデータなどの単位長さを区分しつつデータフレームに載せることにより、ＭＳＢＩＦ１５において、そのようなデータを復号することができるようになる。
【００２８】
拡張ＩＣ２０は、さらに、レジスタ２２及び各種のドライバ２３〜２５を有する。レジスタ２２は、上述したインピーダンス検出結果や故障診断結果を一時的に保存したり、少なくとも１つのドライバの設定を変更するための設定データを保存しておくものである。拡張ＩＣ２０の各種のドライバ２３〜２５は、上述した各種の制御データに基づいて、エンジンに設けられた各種の機器や装置に対して駆動信号を出力する。例えば、点火用ドライバ２３は、点火データに基づいて、図示しない点火装置に対して点火信号を出力する。すなわち、点火用ドライバ２３は、点火データがオンしているとき点火信号を出力し、点火プラグにより火花を発生させる。また、噴射用ドライバ２４は、噴射データに基づいて、図示しない燃料噴射装置に対して噴射信号を出力する。すなわち、噴射用ドライバ２４は、噴射データがオンしている間、噴射信号を出力する。それにより、燃料噴射弁が開弁され、エンジン内に燃料が噴射される。
【００２９】
その他のドライバ２５は、例えば、スロットルバルブモータの駆動データに基づいて、スロットルバルブモータに対して駆動信号を出力し、スロットルバルブ開度を所望の開度となるように制御する。また、拡張ＩＣ２０には、燃料ポンプモータの駆動データに基づいて燃料ポンプモータに駆動信号を出力して、燃料ポンプの回転数を所望の回転数となるように制御したり、インピーダンス検出のための通電データに基づいて、エアフローセンサにインピーダンス検出用の電流を通電したりするドライバなども設けられる。
【００３０】
ここで、上述した制御データの中で、特に、点火データに基づき、エンジンのシリンダ内の燃料を着火させるタイミングや、噴射データに基づき、エンジンの吸気管やシリンダ内に燃料を噴射するタイミングは、エンジンを望ましい運転状態に制御する上で非常に重要となる。換言すると、エンジンを望ましい運転状態に制御するためには、点火装置や燃料噴射装置のドライバ２３、２４に対して、タイミング良く、点火の開始及び終了を指示したり、燃料の噴射の開始及び終了を指示したりするための制御データを与える必要がある。
【００３１】
その一方で、上述したように、マイコン１０はコマンドデータを出力することがある。このコマンドデータが、上述したような良好なタイミング精度が求められる制御データとタイミング的に競合し、コマンドデータの送信が優先されてしまうと、エンジンの運転状態を望ましい運転状態に維持することが困難になる虞が生じる。
【００３２】
例えば、図２（ａ）は、点火信号をオフからオンに変化させる点火データ（最初の点火Ｈ出力データ）を含むデータフレームの送信前にコマンドフレームが送信された例を示し、図２（ｂ）は、最初の点火Ｈ出力データを含むデータフレームとコマンドフレームとの送信タイミングが競合した例を示している。
【００３３】
図２（ａ）に示す例では、コマンドフレームと、点火信号をオフするための点火データ（点火Ｌ出力データ）を含むデータフレームとが競合している。この場合、コマンドフレームの送信が行われ、点火Ｌ出力データを含むデータフレームは送信されていないが、競合負けしたデータフレームの点火Ｌ出力データは、点火装置の駆動状態を変化させるものではない。そのため、この場合、コマンドフレームが送信されても、エンジンの運転状態の制御に実質的な影響が及ぶことはない。しかし、図２（ｂ）に示す例のように、点火データが、点火Ｌ出力データから点火Ｈ出力データに変化するとき、その変化直後の点火H出力データを含むデータフレームがコマンドフレームと競合し、コマンドフレームが出力されてしまうと、点火の開始タイミングが所望のタイミングから遅れてしまう。この結果、エンジンの運転状態を望ましい運転状態に維持することは困難になってしまう。
【００３４】
そこで、本実施形態においては、コマンドフレームとの競合によるデータフレームの送信タイミングの遅れが制御上問題となる、点火装置や燃料噴射装置の駆動状態を変化させる制御データを含むデータフレームを対象として、その対象データフレームと競合しないように、コマンドフレームの送信タイミングの調停を行うこととした。これにより、データフレームに含まれる点火データや噴射データにより、良好なタイミング精度にて点火装置や燃料噴射装置の駆動状態を変化させることが可能となる。
【００３５】
なお、いずれの制御データを含むデータフレームがコマンドフレームと競合したときに制御上問題が生じるかは、通信フレームの長さ、制御対象機器の応答性、その制御対象機器の駆動状態による制御対象への影響の大きさなどに基づいて、適宜、決定すれば良い。
【００３６】
以下、点火の開始や終了を指示する点火データを含むデータフレームを例として、そのデータフレームと競合しないように、コマンドフレームの送信タイミングの調停を行うための、マイコン１０の機能構成や制御処理について説明する。図３は、コマンドフレームの送信タイミングを調停するためのマイコン１０の機能をブロックとして表した機能構成図である。
【００３７】
図３において、点火出力変化タイミング算出部３１は、上述した各種センサの検出信号に基づいて、点火信号をオフからオンに変化させる指示を行うべきタイミング及びオンからオフに変化させる指示を行うべきタイミングを算出する。この点火出力変化タイミング算出部３１の算出結果は、制御データ生成部３２及びコマンドフレーム送信タイミング決定部３３に出力される。
【００３８】
制御データ生成部３２は、点火出力変化タイミング算出部３１の算出結果に基づき、点火Ｌ出力データもしくは点火Ｈ出力データを制御データとして算出する。さらに、制御データ生成部３２は、他の制御データを生成するための演算結果を取り込み、それぞれの制御データを算出する。そして、各制御データを予め定めた順番で並べた制御データ列を作成し、ＭＳＢＩＦ１５のデータフレームバッファ１６に出力する。
【００３９】
コマンドフレーム送信タイミング決定部３３は、点火Ｌ出力から点火Ｈ出力もしくは点火Ｈ出力から点火Ｌ出力に変化する点火データを含むデータフレームの送信から所定期間以内に、コマンドフレームが送信されるように、コマンドフレームの送信タイミングを決定する。点火信号がオフからオンに変化したり、オンからオフに変化したりした直後から所定の期間は、少なくとも、その変化後の点火信号の状態が維持される。そのため、コマンドフレームの送信タイミングを上述したように決定すると、点火信号の状態が維持されている間にコマンドフレームを送信することができ、点火信号の状態を変化させるための点火データを含むデータフレームと競合することを避けることができる。
【００４０】
より好ましくは、図４に示すように、コマンドフレーム送信タイミング決定部３３は、点火Ｌ出力から点火Ｈ出力もしくは点火Ｈ出力から点火Ｌ出力に変化する点火データを含むデータフレームの次に、コマンドフレームが送信されるように、コマンドフレームの送信タイミングを決定する。このようにすれば、より確実に、点火信号の状態を変化させる点火データを含むデータフレームとの競合を回避することができる。ただし、次に、点火信号の状態を変化させる点火データを含むデータフレームが用意されるまでの期間内であれば、そのようなデータフレームとの競合は回避できる。従って、コマンドフレームは、必ずしも、点火信号の状態を変化させる点火データを含むデータフレームの次に送信されなくとも良い。
【００４１】
コマンドフレーム送信タイミング決定部３３は、例えば図４に示すように、点火信号の状態を変化させる点火データを含むデータフレームの送信タイミング（点火信号の状態を変化させる指示を行うべきタイミング）に所定の遅延時間を加えることで、コマンドフレームの送信タイミングを決定することができる。この場合、遅延時間に依存して、点火信号の状態を変化させるデータフレームの次のフレームとしてコマンドフレームを送信することも可能であるし、さらにそれよりも後のフレームとしてコマンドフレームを送信することも可能となる。
【００４２】
マイコン１０のコマンドデータ生成部３４は、必要に応じて、故障診断を指示したり、設定データを変更することを指示するコマンドデータを生成する。コマンドデータ生成部３４によって生成されたコマンドデータは、コマンドデータ出力部３５に、一時的に保存される。コマンドデータ出力部３５は、保存しているコマンドデータがある場合、コマンドフレーム送信タイミング決定部３３により決定された送信タイミングが到来したかを判断し、到来したと判断した場合に、保存しているコマンドデータをＭＳＢＩＦ１５のコマンドフレームバッファ１７に出力する。なお、コマンドフレームの送信タイミングが到来したか否かは、コマンドフレーム送信タイミング決定部３３において判断しても良い。
【００４３】
ＭＳＢＩＦ１５は、ダウンストリーム用コントローラ１８を有する。このダウンストリーム用コントローラ１８は、データフレームバッファ１６あるいはコマンドフレームバッファ１７に保存されている制御データ列あるいはコマンドデータに基づき、データフレームあるいはコマンドフレームを送信する。すなわち、ダウンストリーム用コントローラ１８は、制御データ列あるいはコマンドデータを、単位データで区分しつつ、順番に送信する。このようにして送信される制御データ列の集合がデータフレームとなり、コマンドデータの集合がコマンドフレームとなる。
【００４４】
また、ダウンストリーム用コントローラ１８は、データフレームバッファ１６とコマンドフレームバッファ１７の両方にデータが保存されている場合には、いずれのバッファにより早くデータが保存されたかに基づいて、どちらを先に送信するかを決定する。もしくは、本実施形態では、コマンドフレームの送信タイミングは、競合を回避すべきデータフレームの送信タイミングからずれるように調停されているので、コマンドデータがコマンドフレームバッファ１７に保存されているときには、コマンドフレームの送信を優先するようにしても良い。
【００４５】
次に、図５のフローチャートを参照しつつ、コマンドフレームの送信タイミングの調停を行うための制御処理について説明する。
【００４６】
まず、ステップＳ１００では、各種センサの検出信号に基づいて、点火信号をオフからオンに変化させるタイミングＴIGON及びオンからオフに変化させるタイミングＴIGOFFを算出する。続くステップＳ１１０では、ステップＳ１００にて算出したタイミングＴIGON、ＴIGOFFに所定の遅延時間を加えることで、コマンドフレームの送信タイミングＴCOを決定する。
【００４７】
ステップＳ１２０では、点火データとして、点火信号をオフからオンに変化させるタイミングＴIGON以前は点火Ｌ出力データを生成し、点火信号をオフからオンに変化させるタイミングＴIGONからオンからオフに変化させるタイミングＴIGOFFまでは点火Ｈ出力データを生成し、点火信号をオンからオフに変化させるタイミングＴIGOFF以後は点火Ｌ出力データを生成する。このようにして生成される点火データは、順次、データフレームバッファ１６に出力される。
【００４８】
ステップＳ１３０では、例えばタイマを用いて、ステップＳ１００にて算出したタイミングＴIGON、ＴIGOFFからの経過時間をカウントし、その経過時間が所定の遅延時間に一致したか否かにより、コマンドフレームの送信タイミングＴCOとなったか否かを判定する。送信タイミングとなったと判定した場合には、ステップＳ１４０に進み、送信すべきコマンドデータが生成され、保存されているかどうかを判定する。この判定処理において、コマンドデータが保存されていると判定されると、ステップＳ１５０において、コマンドデータをコマンドフレームバッファ１７に出力する。
【００４９】
（第２実施形態）
次に、本発明の第２実施形態による制御システムについて、図面を参照しつつ説明する。
【００５０】
上述した第１実施形態では、点火出力を変化させるべきタイミングに基づいて、コマンドフレームの送信タイミングを決定するものであった。それに対して、第２実施形態では、点火出力を変化させるべきタイミングに基づいて、コマンドフレームの送信禁止期間を定める。そして、送信すべきコマンドデータが生じたとき、送信禁止期間に該当していれば、送信を行わず、送信禁止期間外であれば、コマンドフレームの送信を行う。このようにしても、コマンドフレームが、点火装置などの駆動状態を変化させる制御データを含むデータフレームと競合しないように、コマンドフレームの送信タイミングの調停を行うことができる。
【００５１】
図６は、本実施形態において、コマンドフレームの送信タイミングを調停するためのマイコン１０の機能をブロックとして表した機能構成図である。なお、第１実施形態と同一の構成に対しては、同じ参照番号を付与することにより、説明を省略する。
【００５２】
本実施形態では、図６に示すように、マイコン１０が、コマンドフレーム送信禁止期間決定部３６を備える。このコマンドフレーム送信禁止期間決定部３６は、点火出力変化タイミング算出部３１が算出した、点火信号をオフからオンに変化させるタイミング及びオンからオフに変化させるタイミングを基準として、コマンドフレームの送信禁止期間を定めるものである。例えば、コマンドフレーム送信禁止期間決定部３６は、図７に示すように、点火出力変化タイミング算出部３１が算出したタイミングの前後に渡る所定期間を、コマンドフレームの送信禁止期間として定めることが好ましい。これにより、コマンドフレームが、点火装置の状態を変化させる点火データを含むデータフレームと競合することをより確実に回避することができるためである。
【００５３】
特に、図７に示す例では、コマンドフレーム送信禁止期間が、点火装置の状態を変化させるための点火データを含むデータフレームの送信開始タイミングの前後で、それぞれ１つのデータフレームの長さに相当する期間に定められている。このようにすれば、必要なデータフレームとの競合を回避しつつ、コマンドフレームの送信機会の減少を極力抑制することが可能となる。
【００５４】
なお、コマンドフレーム送信禁止期間において、マイコン１０により生成されたコマンドデータは、コマンドデータ出力部３７からコマンドフレームバッファ１７に出力されず、その送信がキャンセルされる。ただし、コマンドデータ出力部３７は、コマンドフレーム送信禁止期間中、コマンドデータを保持しておき、送信禁止期間の経過後に、保持しているコマンドデータをコマンドフレームバッファ１７に出力するようにしても良い。
【符号の説明】
【００５５】
１０  マイコン
１１  ＣＰＵ
１２  ＲＯＭ
１３  ＲＡＭ
１４  Ｉ／Ｏ
１５  マイクロセカンドバスインターフェース
２０  拡張ＩＣ
２１  マイクロセカンドバスインターフェース
２２  レジスタ
２３  点火用ドライバ
２４  噴射用ドライバ
２５  ドライバ
１００  制御システム
【図１】
2014127078.tif 000003
【図２】
2014127078.tif 000004
【図３】
2014127078.tif 000005
【図４】
2014127078.tif 000006
【図５】
2014127078.tif 000007
【図６】
2014127078.tif 000008
【図７】
2014127078.tif 000009