(57)【要約】【課題】自身の作成した通信フレームの送信処理と他の電子制御装置が作成した通信フレームのゲートウエイ処理とを調停して、それぞれの通信フレームを遅滞なく送信すること。【解決手段】ＥＮＧ用送受信部２０にて作成されたＥＮＧフレームとＥＣＴ用ゲートウエイ処理部にてゲートウエイされるＥＣＴフレームとを同時期に送信する場合、送信調停部３１はＥＮＧフレームとＥＣＴフレームとを交互に送信する。このため、一方のフレームの送信を優先処理する場合に比較して、両者のフレームとも最も早いタイミングで送信を開始することができる。【選択図】      図１
2004249817.tif 000002
【特許請求の範囲】
【請求項１】
送信すべきメッセージに応じた通信フレームを作成する通信フレーム作成部と、
ゲートウエイ処理すべき他の電子制御装置から送信された通信フレームを一時的に記憶する記憶部と、
前記通信フレーム作成部にて作成された通信フレームと前記記憶部に記憶された通信フレームとを交互にバスを介して外部に送信する送信調停部とを備えることを特徴とする電子制御装置。
【請求項２】
前記通信フレーム作成部は、異常診断によって検出された異常内容を示すコードをメッセージとして、そのメッセージに応じた通信フレームを作成することを特徴とする請求項１に記載の電子制御装置。
【請求項３】
前記電子制御装置は、車両に搭載された車載機器の制御を行なうものであって、前期通信フレーム作成部は、前記車載機器の状態を示す信号をメッセージとして、そのメッセージに応じた通信フレームを作成することを特徴とする請求項１または請求項２に記載の電子制御装置。
【請求項４】
第１のバスに接続された第１の電子制御装置と、
前記第１の電子制御装置と第２のバスを介して接続された第２の電子制御装置とを備え、
前記第１及び第２の電子制御装置は、外部からのメッセージ作成要求に応じて、送信すべきメッセージに応じた通信フレームの作成を行い、当該通信フレームを前記第１のバスを介して送信する制御システムであって、
前記第１の電子制御装置は、当該第１の電子制御装置が作成した通信フレームと前記第２の電子制御装置により作成され前記第２のバスを介して前記第１の電子制御装置に送信された通信フレームとを同時期に前記第１のバスを介して送信する場合、前記第１の電子制御装置が作成した通信フレームと前記第２の電子制御装置が作成した通信フレームとを交互に送信する送信調停部を備えることを特徴とする複数の電子制御装置からなる制御システム。
【請求項５】
前記第１のバスには、メッセージ作成要求を出力する外部ツールが接続され、前記第１及び第２の電子制御装置は、前記第１のバスを介して前記外部ツールからのメッセージ作成要求を受領したときに、送信すべきメッセージに対応する通信フレームを作成することを特徴とする請求項４に記載の複数の電子制御装置からなる制御システム。
【請求項６】
前記外部ツールは、前記第１及び第２の電子制御装置に対して異常診断結果に関するメッセージの作成要求を行い、前記第１及び第２の電子制御装置は、それぞれ異常診断によって検出された異常内容を示すコードをメッセージとして送信することを特徴とする請求項５に記載の複数の電子制御装置からなる制御システム。
【請求項７】
前記第１及び第２の電子制御装置は、車両のエンジンの駆動状態を制御する電子制御装置と車両の自動変速機を制御する電子制御装置であることを特徴とする請求項４乃至請求項６のいずれかに記載の複数の電子制御装置からなる制御システム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、第１の電子制御装置と第２の電子制御装置とが専用のバスで接続され、かつ異常診断装置等の外部ツールや他の電子制御装置が接続される共通バスには第１の電子制御装置のみが接続されるように構成されている制御システムに関し、特に第１及び第２の電子制御装置が同時期に共通バスを介してメッセージを送信する場合の調停を最適に行なうことができる制御システムに関する。
【０００２】
【従来の技術】
上述した構成を備える制御システムとしては、例えば車両のエンジンの駆動状態を制御する制御装置（ＥＮＧＥＣＵ）と車両の自動変速機を制御する制御装置（ＥＣＴＥＣＵ）から構成される車両用制御システムがある。この車両用制御システムでは、ＥＮＧＥＣＵとＥＣＴＥＣＵとの間の通信データ量が大きいため、これらのＥＣＵ間を専用のバスにて接続する。これにより、他の制御装置（ブレーキ、サスペンション、エアバック等のＥＣＵ）等が接続された共通バスにおける通信負荷を低減できる。
【０００３】
【発明が解決しようとする課題】
このようなバス構成を有する制御システムにおいて、例えば共通のバスに異常診断装置を接続して、この異常診断装置が各ＥＣＵから異常診断（ダイアグノーシス）に関するメッセージを取得する場合、ＥＮＧＥＣＵは、ＥＣＴＥＣＵからのメッセージを送信するための通信フレームを専用バスから共通バスへとゲートウエイする必要がある。
【０００４】
さらに、ＥＮＧＥＣＵは、ＥＣＴＥＣＵからの通信フレームをゲートウエイするだけでなく、自身が作成したメッセージを示す通信フレームも共通バスを介して異常診断装置に送信する必要がある。この場合、ＥＮＧＥＣＵが自身の作成したメッセージに応じた通信フレームを優先して送信し、ＥＣＴＥＣＵからの通信フレームのゲートウエイ処理をその後に実施したとすると、ＥＣＴＥＣＵからのメッセージの送信タイミングが遅れてしまう。
【０００５】
この異常診断時における送信時間は、ＩＳＯ１５０３１−５等の規格により規定されており、異常診断装置からのメッセージ送信要求から少なくとも５０ｍｓ以内に最初の送信フレームを送信する必要がある。
【０００６】
しかしながら、上述したようにＥＮＧＥＣＵのメッセージの送信処理の優先度を高めた場合、そのメッセージの長さによっては、ＥＣＴＥＣＵからのメッセーッジの送信が、規格で定められた時間内に行ない得ない可能性が生じる。
【０００７】
本発明は上記の点に鑑みてなされたものであり、自身の作成した通信フレームの送信処理と他の電子制御装置が作成した通信フレームのゲートウエイ処理とを調停して、それぞれの通信フレームを遅滞なく送信することが可能な電子制御装置を提供することを第１の目的とする。
【０００８】
また、第１の電子制御装置と第２の電子制御装置とが専用のバスで接続され、かつ共通バスには第１の電子制御装置のみが接続されるように構成されている制御システムにおいて、第１及び第２の電子制御装置が同時期に共通バスを介してそれぞれのメッセージに対応する通信フレームを送信する場合に調停を行い、第１及び第２の電子制御装置からの通信フレームを遅滞なく送信することが可能な制御システムを提供することを第２の目的とする。
【０００９】
【課題を解決するための手段】
上記目的を達成するために、請求項１に記載の電子制御装置は、
送信すべきメッセージに応じた通信フレームを作成する通信フレーム作成部と、
ゲートウエイ処理すべき他の電子制御装置から送信された通信フレームを一時的に記憶する記憶部と、
通信フレーム作成部にて作成された通信フレームと記憶部に記憶された通信フレームとを交互にバスを介して外部に送信する送信調停部とを備えることを特徴とする。
【００１０】
このように、請求項１に記載の電子制御装置は、通信フレーム作成部にて作成した通信フレームとゲートウエイ処理すべき通信フレームとが競合する場合、交互にバスを介して送信することとした。このため、一方の通信フレームの送信を優先処理する場合に比較して、両者の通信フレームとも最も早いタイミングで送信を開始することができる。
【００１１】
請求項２に記載したように、通信フレーム作成部は、異常診断によって検出された異常内容を示すコードをメッセージとして、そのメッセージに応じた通信フレームを作成することが好ましい。異常診断装置によるメッセージ作成要求に対しては、その応答時間が規格で定められているため、特に、異常内容を示すコードをメッセージとして送信する場合に通信フレームを遅滞なく送信できる本発明が有効となるためである。
【００１２】
また、請求項３に記載したように、電子制御装置は、車両に搭載された車載機器の制御を行なうものであって、通信フレーム作成部は、車載機器の状態を示す信号をメッセージとして、そのメッセージに応じた通信フレームを作成するようにしても良い。異常内容を示すコードとは独立して、または、異常が生じたときの車載機器の状態を取得することにより、車載機器の動作状態の確認や異常の原因究明に役立てることができる。
【００１３】
次に、上述した第２の目的を達成するために、請求項４に記載の制御システムは、第１のバスに接続された第１の電子制御装置と、第１の電子制御装置と第２のバスを介して接続された第２の電子制御装置とを備え、
第１及び第２の電子制御装置は、外部からのメッセージ作成要求に応じて、送信すべきメッセージに応じた通信フレームの作成を行い、当該通信フレームを第１のバスを介して送信する制御システムであって、
第１の電子制御装置は、当該第１の電子制御装置が作成した通信フレームと第２の電子制御装置により作成され第２のバスを介して第１の電子制御装置に送信された通信フレームとを同時期に第１のバスを介して送信する場合、第１の電子制御装置が作成した通信フレームと第２の電子制御装置が作成した通信フレームとを交互に送信する送信調停部を備えることを特徴とする。
【００１４】
このように、請求項４に記載した制御システムでは、第１の電子制御装置が作成した通信フレームと第２の電子制御装置が作成した通信フレームとを交互に送信する送信調停部を備えている。このため、第１及び第２の電子制御装置が作成した通信フレームについて、それぞれ最も早いタイミングで送信を開始することができる。
【００１５】
請求項５に記載したように、第１のバスには、メッセージ作成要求を出力する外部ツールが接続され、第１及び第２の電子制御装置は、第１のバスを介して外部ツールからのメッセージ作成要求を受領したときに、送信すべきメッセージに対応する通信フレームを作成するように構成することができる。これにより、例えば異常診断装置等の外部ツールを第１のバスに接続するだけで、必要な情報を第１及び第２の電子制御装置から取得することができる。
【００１６】
また、請求項６に記載したように、外部ツールが、第１及び第２の電子制御装置に対して異常診断結果に関するメッセージの作成要求を行なうものである場合には、第１及び第２の電子制御装置は、それぞれ異常診断によって検出された異常内容を示すコードをメッセージとして送信する。上述したように、異常診断装置によるメッセージ作成要求に対しては、その応答時間が規格で定められている。このような場合であっても、本発明による制御システムは、送信調停部を備えているため、第１及び第の電子制御装置が作成した通信フレームの送信を遅滞なく開始できる。従って、特に、異常内容を示すコードをメッセージとして送信する場合に本発明は好適である。
【００１７】
請求項７に記載したように、第１及び第２の電子制御装置は、車両のエンジンの駆動状態を制御する電子制御装置と車両の自動変速機を制御する電子制御装置として構成することができる。これらのエンジン用制御装置と変速機用制御装置とは、相互のデータ通信量が大きいため、専用のバスで接続することが好ましいためである。
【００１８】
【発明の実施の形態】
以下、本発明の実施の形態における制御システムに関して、図面に基づいて説明する。本実施形態においては、制御システムが、車両のエンジン用電子制御装置（ＥＮＧＥＣＵ）と変速機用制御装置（ＥＣＴＥＣＵ）とを備える例について説明するが、車両の他の電子制御装置や車両以外における電子制御装置に本発明による制御システムを適用することも可能である。
【００１９】
図１は、本実施形態に係わる制御システムの概略構成を示す構成図である。同図に示すように、制御システムは、エンジン用電子制御装置（ＥＮＧＥＣＵ）１０と変速機用制御装置（ＥＣＴＥＣＵ）５０とを備える。これらのＥＮＧＥＣＵ１０とＥＣＴＥＣＵ５０とは、専用のバス７０によって接続されている。
【００２０】
ＥＮＧＥＣＵ１０は、エンジンの排気管に設けられたＯ２センサ、エンジンの冷却水温を検出する水温センサ、車両の走行速度を検出する車速センサ、エンジンの回転数を検出する回転数センサ、エンジンへの吸入空気量を検出するエアフローセンサ、スロットルバルブの開度を検出するスロットルポジションセンサ等の各種のセンサの検出信号に基づいて、インジェクタによって噴射される燃料量や噴射時期を制御する。なお、ＥＮＧＥＣＵ１０による燃料噴射量や噴射時期に関する制御は公知であるため、図１において、各種のセンサやインジェクタ等の部品は図示を省略している。
【００２１】
ＥＣＴＥＣＵ５０は、エンジン回転数、スロットルバルブ開度、車両の走行速度等に基づいて、変速機のギア位置を制御する。この変速機の制御に関しても公知であるため、図１では、それに関連する部品等の図示を省略している。なお、各種のセンサによる検出信号は、ＥＮＧＥＣＵ１０からＥＣＴＥＣＵ５０へ、またはＥＣＴＥＣＵ５０からＥＮＧＥＣＵ１０へ専用のバス７０を介して送信される。
【００２２】
本実施形態におけるＥＮＧＥＣＵ１０及びＥＣＴＥＣＵ５０は、上述した制御を行なう以外に、それぞれ、上述したセンサや部品の作動が正常であるかチェックするとともに、各ＥＣＵ内のメモリやそのメモリに記憶されたプログラム等が正常であるか否かをチェックする異常診断処理を行なう診断部１５，５５をそれぞれ備えている。これらの診断部１５，５５は、定期的に異常診断処理を行い、異常が発見された場合には、その異常個所及び異常内容に応じたダイアグコードを図示しない不揮発性メモリに記憶する。さらに、このダイアグコードとともに、その異常が生じた時の、各ＥＣＵの制御対象であるエンジンや自動変速機の動作状態、例えばエンジン回転数等も記憶される。
【００２３】
エンジンＥＣＵ１０は、ＥＣＴＥＣＵ５０以外の他の制御装置等が接続された共通バス８０にも接続されている。この共通バス８０には、図示しない異常診断装置等の外部ツールが接続可能である。共通バス８０に異常診断装置が接続された場合、異常診断装置は、ＥＮＧＥＣＵ１０，ＥＣＴＥＣＵ５０を含む各ＥＣＵに対して異常診断によって検出された異常内容を示すコードをメッセージとして送信するように、メッセージ作成要求を出力する。ＥＮＧＥＣＵ１０及びＥＣＴＥＣＵ５０は、このメッセージ作成要求を受領すると、それぞれ不揮発性メモリに記憶されたダイアグコードに応じた通信フレームを作成し、この通信フレームを異常診断装置に対して共通バス８０を介して送信する。さらに、ＥＮＧＥＣＵ１０やＥＣＴＥＣＵ５０は、異常内容を示すコード以外に、制御対象であるエンジン、自動変速機の現在の動作状態を示す信号（エンジン回転数等）に関する通信フレームも作成し、異常診断装置に送信する。
【００２４】
以下に、ＥＮＧＥＣＵ１０及びＥＣＴＥＣＵ５０における、メッセージ作成要求を受領するための構成及びダイアグコード等に応じた通信フレームを作成し送信するための構成について説明する。
【００２５】
図１に示すように、ＥＮＧＥＣＵ１０は、共通バス８０に接続された入出力部３０を備えている。この入出力部３０は、共通バス８０を介してＥＮＧＥＣＵ１０あるいはＥＣＴＥＣＵ５０に対して送信された通信フレームを一時的に保存する受信バッファ３４と、ＥＮＧＥＣＵ１０及びＥＣＴＥＣＵ５０において作成された通信フレームを調停して共通バス８０に出力する送信調停部３１とからなる。送信調停部３１は、ＥＮＧＥＣＵ１０において作成された通信フレームを一時的に保存するＥＮＧ用バッファ３２と、ＥＣＴＥＣＵ５０において作成された通信フレームを一時的に保存するＥＣＴ用バッファ３３とを備えている。
【００２６】
ここで、通信フレームとは、専用バス７０及び共通バス８０において送受信されるデータの単位をいい、本実施形態では、通信フレームのデータ長を８バイトの固定長としている。この通信フレームの詳細については後述する。
【００２７】
各通信フレームには、送信元と送信先とを示すＩＤが付加される。従って、受信バッファ３４にて受信した通信フレームに関しては、このＩＤに基づいて、ＥＮＧＥＣＵ１０に対する通信フレームであるのかＥＣＴＥＣＵ５０に対する通信フレームであるのか、もしくはＥＮＧＥＣＵ１０及びＥＣＴＥＣＵ５０の両方に対する通信フレームであるのかを識別でき、入出力部３０は、その識別結果に応じて転送先を切り換える。
【００２８】
ＥＮＧＥＣＵ１０は、送信バッファ２１及び受信バッファ２２を有するＥＮＧ用送受信部２０を備えている。このＥＮＧ用送受信部２０は、診断部１５と入出力部３０との間において、通信フレームの送受信に関し、以下の役割を果たす。
【００２９】
まず、ＥＮＧ用送受信部２０は、診断部１５により検出された異常内容を示すコードをメッセージとして送信する場合、そのメッセージを共通バス８０を介して送信可能なように、通信フレーム単位に分割する。なお、送信すべきメッセージが８バイト未満である場合には、単一の通信フレームが作成される。メッセージが複数の通信フレームに分割された場合には、分割された通信フレームは、送信バッファ２０に順次蓄積される。この送信バッファ２１はＦＩＦＯ（Ｆｉｒｓｔ  Ｉｎ  Ｆｉｒｓｔ  Ｏｕｔ）方式のバッファであり、通信フレームの作成順序に従って送信バッファ２１に蓄積され、最も早く蓄積された通信フレームから順に１つずつ送信調停部３１のＥＮＧ用バッファ３２に送られる。
【００３０】
また、ＥＮＧ用送受信部２０は、入出力部３０の受信バッファ３４に保存された通信フレームを、１つずつ受け取る受信バッファ２２を備えている。そして、ＥＮＧ用送受信部２０は、受信バッファ２２で受け取った通信フレームから１つのメーセージを組み立てて、そのメッセージを診断部１５に送信する。
【００３１】
さらに、ＥＮＧＥＣＵ１０は、ＥＣＴＥＣＵ５０に対して送信された通信フレームを専用バス７０を介してＥＴＣＥＣＵ５０に送信するとともに、ＥＴＣＥＣＵ５０から出力された通信フレームを共通バス８０に出力するゲートウエイ処理を行なうゲートウエイ処理部２５を備えている。このゲートウエイ処理部２５は、ともにＦＩＦＯ方式の送信バッファ２６及び受信バッファ２７を備えている。この受信バッファ２７に蓄積された通信フレームは、最も早く蓄積された通信フレームから順に１つずつＥＣＴＥＣＵ５０に送られる。また、ＥＴＣＥＣＵ５０から送信された通信フレームを蓄積する送信バッファ２６は、最も早く蓄積した通信フレームから順に１つずつ送信調停部３１のＥＣＴ用バッファ３２に送出する。
【００３２】
ＥＣＴＥＣＵ５０は、専用バス７０を介して送受信される通信フレームの送受信処理を行なうＥＣＴ用送受信部６０を備えている。このＥＣＴ用送受信部６０は、ＥＮＧＥＣＵ１０におけるＥＮＧ用送受信部２０と同様の機能を発揮するものであり、送信バッファ６１と受信バッファ６２とを備えている。
【００３３】
次に、通信フレームに関して、図２（ａ）〜（ｃ）に基づいて詳細に説明する。上述したように、通信フレームは８バイトの固定データ長を有している。ただし、この通信フレームには、図２（ａ）〜（ｃ）に示すように４つの種類があり、それぞれの種類に応じてダイアグコードの送信に利用できる最大バイト数は異なる。
【００３４】
まず、通信フレームの第１の種類としてのシングルフレームＳＦの構造を図２（ａ）に示す。このシングルフレームＳＦとは、送信すべきダイアグデータが８バイト未満であり、複数の通信フレームに分割して送信することが不要である場合に使用される通信フレームである。このシングルフレームＳＦにおいては、第１バイトにプロトコルコントロールインフォメーション（ＰＣＩ）が書き込まれる。ＰＣＩは、シングルフレームＳＦの場合、主にダイアグデータの長さ（＃１〜＃７）を示す。なお、各種のダイアグコードは、基本的に２バイトのデータ長を持つ。従って、送信すべきダイアグコードが３個以下である場合には、シングルフレームＳＦによって送信することができる。
【００３５】
次に、通信フレームの第２及び第３の種類としてのファーストフレームＦＦ及びコンセキューティブフレームＣＦの構造を図２（ｂ）に示し、通信フレームの第４の種類としてのフローコントロールフレームＦＣの構造を図２（ｃ）に示す。これら図２（ｂ）、（ｃ）に示す通信フレームは、いずれも送信すべきダイアグデータの長さが８バイト以上である場合に使用されるものである。
【００３６】
ファーストフレームＦＦは、ダイアグデータを複数の通信フレームに分割して送信する場合に、最初に送信されるフレームであり、コンセキューティブフレームＣＦは、ファーストフレームＦＦに続いて送信される２つ目以降の通信フレームとして使用されるフレームである。図２（ｂ）に示すように、ファーストフレームＦＦは、全ダイアグデータのデータ長を示すために、ＰＣＩに２バイトを割り当てている。従って、ファーストフレームＦＦにおいて送信可能なダイアグデータのデータ長は最大６バイトとなる。一方、コンセキューティブフレームＣＦにおいては、ＰＣＩによって主にコンセキューティブフレームを連番（１→２→…→Ｆ→０→１→…）にて示すため、ＰＣＩに１バイトを割り当てている。
【００３７】
また、図２（ｃ）に示すフローコントロールフレームＦＣは、受信側がファーストフレームＦＦを受信した場合に、受信側から送信元に返信されるフレームである。このフローコントロールフレームＦＣはＰＣＩデータのみからなり、フローコントロールフレームＦＣを受信した後に、送信元が分割送信するフレームの最大数や、最短送信間隔等をＰＣＩによって伝達する。
【００３８】
次に、本実施形態の制御システムにおいて、異常診断装置からＥＮＧＥＣＵ１０及びＥＣＴＥＣＵ５０に対して異常診断によって検出された異常内容を示すコードをメッセージとして送信するようにメッセージ作成要求が出力された場合の、ＥＮＧＥＣＵ１０及びＥＣＴＥＣＵ５０にて実施される処理を図３〜図６のフローチャートを用いて説明する。
【００３９】
図３は、ＥＮＧＥＣＵ１０における送信調停部３１において実行される処理を示すフローチャートである。このフローチャートは、所定間隔（例えば１ｍｓ）毎に繰り返し実行される。
【００４０】
まず、ステップＳ１００では、前回、共通バス８０を介して異常診断装置に送信した通信フレームが、ＥＮＧ用バッファ３２からのＥＮＧフレームであったかどうかを判定する。具体的には、後述するステップＳ１６０及びステップ２１０において、ＥＮＧ用バッファ３２からＥＮＧフレームを送信した場合には、「前回ＥＮＧフレーム送信」と記憶し、ＥＣＴ用バッファ３３からＥＣＴフレームを送信した場合には「前回ＥＣＴフレーム送信」とメモリに記憶している。ステップＳ１００では、この記憶状態に基づいて、前回、ＥＮＧフレームを送信したか否かを判定する。なお、本フローチャートの処理が開始された直後においては、「前回ＥＮＧフレーム送信」との記憶はなされていないため、ステップＳ１００では「Ｎｏ」と判定される。
【００４１】
このステップＳ１００において、前回、ＥＮＧフレームを送信したと判定された場合には、ステップＳ１１０に進む。ステップＳ１１０では、前回、ＥＮＧフレームを送信したので、今回は、ＥＣＴ用バッファ３３からＥＣＴフレームを送信すべく、ゲートウエイ処理部２５からＥＣＴフレームの送信要求があったかどうかを確認する。なお、ゲートウエイ処理部２５における処理については後述する。
【００４２】
ゲートウエイ処理部２５からＥＣＴフレームの送信要求が有ると判定された場合には、ゲートウエイ処理部２５の送信バッファ２６から、送信調停部３１のＥＣＴ用バッファ３３に送信すべきＥＣＴフレームが送信され、そのＥＣＴフレームがＥＣＴ用バッファ３３に保存された状態である。このためステップＳ２００以降の処理を実施することにより、ＥＣＴ用バッファ３３に保存されたＥＣＴフレームの送信処理を実施する。
【００４３】
一方、ステップＳ１１０にてＥＣＴフレームの送信要求は無いと判定された場合には、ステップＳ１２０に進む。ステップＳ１２０では、ＥＮＧ用送受信部２０からＥＮＧフレームの送信要求があったかどうかを確認する。未だ、全てのＥＮＧフレームの送信が完了していない場合には、ＥＮＧ用送受信部２０からＥＮＧフレームの送信要求が出される。この場合、ステップＳ１５０以降の処理を実施することにより、継続してＥＮＧフレームの送信を行なう。そして、すべてのＥＮＧフレームの送信が完了すると、ＥＮＧ用送受信部２０からのＥＮＧフレームの送信要求が無くなる。この場合、ステップＳ１２０の判定が「Ｎｏ」となり、本フローチャートによる処理を終了する。なお、ＥＮＧ用送受信部２０における処理については後述する。
【００４４】
また、ステップＳ１００において、前回、ＥＮＧフレームを送信していないと判定した場合、今回、ＥＮＧフレームを送信すべく、まずステップＳ１３０においてＥＮＧ用送受信部２０からＥＮＧフレームの送信要求が有るか否かを判定する。このステップＳ１３０において、ＥＮＧフレームの送信要求が有ると判定されると、前述したと同様に、ステップＳ１５０以降の処理を実施して、ＥＮＧフレームの送信を行なう。
【００４５】
一方、ステップＳ１３０においてＥＮＧフレームの送信要求が無いと判定された場合には、ステップＳ１４０において、ＥＣＴフレームの送信要求が有るかどうかを確認する。このとき、ＥＣＴフレームの送信要求があれば、前述と同様に、ステップＳ２００以降の処理を実施して、ＥＣＴフレームの送信を行なう。ステップＳ１４０における判定が「Ｎｏ」となった場合には、ＥＮＧフレームの送信要求及びＥＣＴフレームの送信要求とも無いため、本フローチャートによる処理を終了する。
【００４６】
このように、図３に示すフローチャートによれば、ＥＮＧフレームとＥＣＴフレームとの送信を同時期に行なう必要が生じた場合、送信調停部３１はＥＮＧフレームとＥＣＴフレームとを交互に送信するように処理する。従って、異常診断装置からのメッセージ作成要求に対して、遅滞なく両フレームの送信を開始することができる。
【００４７】
次に、ステップＳ１５０以降のＥＮＧフレームの送信処理について説明する。まず、ステップＳ１５０では、ＥＮＧ用バッファ３２に保存されているＥＮＧフレームの送信を開始する。続くステップＳ１６０では、上述したステップＳ１００の判定に用いるため、「前回ＥＮＧフレーム送信」と記憶する。ステップＳ１７０では、ＥＮＧフレームの送信が完了したか否かを判定し、完了するまで待機する。
【００４８】
ＥＮＧフレームの送信が完了すると、ステップＳ１７０における判定が「Ｙｅｓ」となり、ステップＳ１８０の処理に進む。ステップＳ１８０では、ＥＮＧ用送受信部２０から出されたＥＮＧフレームの送信要求をクリアする。そして、ステップＳ１９０では、ＥＮＧ用送受信部２０に対して、図５（ａ）に示すＥＮＧ用送受信部２０の処理（Ａ）を実行するように要求する。
【００４９】
ここで、図５（ａ）に示すＥＮＧ用送受信部２０の処理（Ａ）について説明する。ステップＳ１５０からステップＳ１８０までの処理によって、送信調停部３１のＥＮＧ用バッファ３２に保存されたＥＮＧフレームの送信は完了した状態となる。そのため、ＥＮＧ用送受信部２０の処理（Ａ）では、さらに送信すべきＥＮＧフレームがあるか否かを判定する。そして、送信すべきＥＮＧフレームがある場合には、ＥＮＧフレームの送信要求を発行するとともに、送信すべきＥＮＧフレームをＥＮＧ用送受信部２０の送信バッファ２１から送信調停部３１のＥＮＧ用バッファ３２に送信する。
【００５０】
すなわち、図５（ａ）のステップＳ５００では、ＥＮＧ用送受信部２０の送信バッファ２１にＥＮＧフレームが有るか否かを判定する。送信バッファ２１にＥＮＧフレームがある場合には、このＥＮＧフレームの送信を行なう必要があるため、ステップＳ５１０にて送信調停部３１にＥＮＧフレームの送信要求を発行する。ステップＳ５２０では、この送信要求が送信調停部３１において受理されたか否かを判定し、受理された場合には、ステップＳ５３０において、送信バッファ２１から送信すべき１つのＥＮＧフレームを送信調停部３１のＥＮＧ用バッファ３２に送信する。これにより、新たなＥＮＧフレームの送信要求が発生するので、図２のステップＳ１９０を実行後はステップＳ１００に戻り、上述した処理を繰り返し実行する。一方、ステップＳ５２０にて送信調停部３１から送信要求無効との通知を受けたと判定した場合には、そのまま処理を終了する。
【００５１】
また、ステップＳ２００以降のＥＣＴフレームの送信処理も、ＥＮＧフレームの送信処理とほぼ同様に実施される。すなわち、ステップＳ２００にて、ＥＣＴフレームの送信を開始する。続くステップＳ２１０では、「前回ＥＣＴフレーム送信」と記憶する。ステップＳ２２０では、ＥＣＴフレームの送信が完了したか否かを判定し、完了するまで待機する。ステップＳ２３０では、ＥＣＴ用ゲートウエイ処理部２５から出されたＥＣＴフレームの送信要求をクリアする。そして、ステップＳ２４０では、ＥＣＴ用ゲートウエイ処理部２５に対して、図６（ａ）に示すＥＣＴ用ゲートウエイ処理部２５の処理（Ａ）を実行するように要求する。
【００５２】
図６（ａ）に示すＥＣＴ用ゲートウエイ処理部の処理（Ａ）も、図５（ａ）に示すＥＮＧ用送受信部２０の処理（Ａ）とほぼ同様である。すなわち、ステップＳ７００では、ＥＣＴ用ゲートウエイ処理部２５の送信バッファ２６にＥＣＴフレームが有るか否かを判定する。送信バッファ２６にＥＣＴフレームがある場合には、このＥＣＴフレームの送信を行なう必要があるため、ステップＳ７１０にて送信調停部３１にＥＣＴフレームの送信要求を発行する。ステップＳ７２０では、この送信要求が送信調停部３１において受理されたか否かを判定し、受理された場合には、ステップＳ７３０において、送信バッファ２６から送信すべき１つのＥＣＴフレームを送信調停部３１のＥＣＴ用バッファ３３に送信する。
【００５３】
ＥＮＧ用送受信部２０は、上述した処理（Ａ）以外に、診断部１５から送信すべきダイアグコードを受領した場合に、そのダイアグコードを複数の通信フレームに分割して、送信バッファ２１に蓄積する処理（Ｂ）を実施する。このＥＮＧ用送受信部２０の処理（Ｂ）を図５（ｂ）のフローチャートに示す。
【００５４】
まず、ステップＳ６００では、診断部１５から受領したダイアグコードのダイアグデータ長に応じた種類で、通信フレームを作成する。すなわち、ダイアグデータ長が８バイト未満であればシングルフレームＳＦによって通信フレームを作成し、８バイト以上であれば、ファーストフレームＦＦとコンセキューティブフレームＣＦとで通信フレームを作成する。ステップＳ６１０では、作成した通信フレームを送信バッファ２１に順次記憶させる。そして、ステップＳ６２０では、送信バッファ２１にＥＮＧフレームが蓄積されたので、送信調停部３１に対してＥＮＧフレームの送信要求を発行するために、図５（ａ）に示すＥＮＧ用送受信部２０の処理（Ａ）の実施を要求する。
【００５５】
また、ＥＣＴ用ゲートウエイ処理部２５も、上述した処理（Ａ）以外に、ＥＣＴ用送受信部６０から送信すべき通信フレームを受領した場合に、その受領した通信フレームを、送信バッファ２６に蓄積する処理（Ｂ）を実施する。このＥＣＴ用ゲートウエイ処理部２５の処理（Ｂ）を図６（ｂ）のフローチャートに示す。
【００５６】
まず、ステップＳ８００では、ＥＣＴ用送受信部６０から受領した通信フレームをその受領した順序に従って送信バッファ２６に記憶させる。そして、ステップＳ８１０では、送信バッファ２６にＥＣＴフレームが蓄積されたので、送信調停部３１に対してＥＣＴフレームの送信要求を発行するために、図６（ａ）に示すＥＣＴ用ゲートウエイ処理部の処理（Ａ）の実施を要求する。
【００５７】
ここで、送信調停部３１は、ＥＮＧ用送受信部２０及びＥＣＴ用ゲートウエイ処理部２５の処理（Ａ）によってそれぞれのフレームの送信要求が出された場合に、図４（ａ）、（ｂ）に示す処理を実行する。
【００５８】
図４（ａ）はＥＮＧフレーム送信要求が発行された場合の処理であり、まず、ステップＳ３００において、ＥＮＧフレームの送信要求を記憶中であるか否かを判定する。すなわち、送信調停部３１のＥＮＧ用バッファ３２に未送信のＥＮＧフレームが保存されており、ＥＮＧフレーム送信要求がクリアされていない状態であるか否かを判定する。この場合、ＥＮＧフレームの送信要求を記憶中であると、新たなＥＮＧフレームをＥＮＧ用バッファ３２に送信することができないため、ステップＳ３２０において、ＥＮＧ用送受信部２０に対して送信要求無効を通知する。
【００５９】
一方、送信調停部３１のＥＮＧ用バッファ３２からＥＮＧフレームを送信済みであり、新たなＥＮＧフレームを受け入れることが可能な場合には、ステップＳ３００にて「Ｎｏ」との判定がなされる。この場合、ステップＳ３１０において、ＥＮＧ用送受信部２０の送信バッファ２１から送信調停部３１のＥＮＧ用バッファ３２にＥＮＧフレームを送信するとともに、ＥＮＧフレームの送信要求をメモリに記憶する。
【００６０】
図４（ｂ）はＥＣＴフレーム送信要求が発行された場合の処理であるが、上述したＥＮＧフレーム送信要求が発行された場合の処理とほぼ同様である。すなわち、ステップＳ４００では、ＥＣＴフレームの送信要求を記憶中であるか否かを判定する。このとき、ＥＣＴフレームの送信要求を記憶中と判定されると、新たなＥＣＴフレームをＥＣＴ用バッファ３３に送信することができない状態であるため、ステップＳ４２０において、ＥＣＴ用ゲートウエイ処理部２５に対して送信要求無効を通知する。一方、ステップＳ４００において、ＥＣＴフレームの送信要求記憶中ではないと判定された場合には、ステップＳ４１０において、ＥＣＴ用ゲートウエイ処理部２５の送信バッファ２６から送信調停部３１のＥＣＴ用バッファ３３にＥＣＴフレームを送信するとともに、ＥＣＴフレームの送信要求をメモリに記憶する。
【００６１】
なお、ＥＣＴＥＣＵ５０におけるＥＣＴ用送受信部６０は、異常診断装置からのメーセージ作成要求を受領して、診断部５５に与えるとともに、診断部５５から送信すべきダイアグコードを受領すると、そのダイアグコードに応じた通信フレームを作成し、送信バッファ６１に蓄積する。また、この送信バッファ６１に蓄積された通信フレームは専用バス７０を介して順次ＥＣＴ用ゲートウエイ処理部２５の送信バッファ２６に送信される。ＥＣＴ用送受信部６０はこのような処理を実施するのみであるため、その処理に関するフローチャートは省略する。
【００６２】
上述した図３〜図６のフローチャートに示す処理を実施することにより、ＥＮＧフレームとＥＣＴフレームとの送信を同時期に行なう必要が生じた場合、送信調停部３１はＥＮＧフレームとＥＣＴフレームとを交互に送信する。図７に、ＥＮＧフレームとＥＣＴフレームとが交互に送信される場合のタイムチャートの一例を示す。
【００６３】
図７に示す例では、異常診断装置からのメッセージ作成要求に対して、まずＥＮＧフレームのファーストフレームＦＦ（ＥＮＧ）が異常診断装置に送信され、その後、ＥＣＴフレームのファーストフレームＦＦ（ＥＣＴ）が送信される例を示している。なお、各通信フレームが送信元から送信先に送信された場合、送信先はアクノリッジ（Ａｃｋ）信号を送信元に返信する。
【００６４】
図７に示すように、異常診断装置がＥＮＧフレームのファーストフレームＦＦ（ＥＮＧ）を受信すると、その後、フローコントロールフレームＦＣ（ＥＮＧ）を返信する。このフローコントロールフレームＦＣ（ＥＮＧ）の受信後に、送信調停部３１は、ＥＣＴフレームのファーストフレームＦＦ（ＥＣＴ）を異常診断装置に送信する。すると、異常診断装置は、ＥＣＴフレームのファーストフレームＦＦに対してフローコントロールフレームＦＣ（ＥＣＴ）を返信する。
【００６５】
送信調停部３１は、それぞれのフローコントロールフレームＦＣ（ＥＮＧ），ＦＣ（ＥＣＴ）を受信した後は、ＥＮＧフレームのコンセキューティブフレームＣＦ（ＥＮＧ）とＥＣＴフレームのコンセキューティブフレームＣＦ（ＥＣＴ）とを、交互に送信する。
【００６６】
このような送信調停部３１の処理により、両通信フレームの送信を最も早いタイミングで開始することが可能となる。
【図面の簡単な説明】
【図１】本実施形態に係わる制御システムの概略構成を示す構成図である。
【図２】（ａ）は通信フレームの第１の種類としてのシングルフレームＳＦの構造を示す説明図であり、（ｂ）は通信フレームの第２及び第３の種類としてのファーストフレームＦＦ及びコンセキューティブフレームＣＦの構造を示す説明図であり、（ｃ）は通信フレームの第４の種類としてのフローコントロールフレームＦＣの構造を示す説明図である。
【図３】ＥＮＧＥＣＵ１０における送信調停部３１において定期的に実行される処理を示すフローチャートである。
【図４】（ａ）はＥＮＧ用送受信部２０からＥＮＧフレーム送信要求が発行された場合に送信調停部３１において実行される処理を示すフローチャートであり、（ｂ）はＥＣＴ用ゲートウエイ処理部２５においてＥＣＴフレーム送信要求が発行された場合に送信調停部３１において実行される処理を示すフローチャートである。
【図５】ＥＮＧ用送受信部２０において実行される処理のフローチャートであり、（ａ）は送信調停部３１に対してＥＮＧフレームの送信要求を発行するための処理を示し、（ｂ）はＥＮＧフレームを作成し、送信バッファ２１に蓄積するための処理を示す。
【図６】ＥＣＴ用ゲートウエイ処理部２５において実行される処理のフローチャートであり、（ａ）は送信調停部３１に対してＥＣＴフレームの送信要求を発行するための処理を示し、（ｂ）はＥＣＴフレームを受信し、送信バッファ２６に蓄積するための処理を示す。
【図７】異常診断装置とＥＮＧＥＣＵ１０及びＥＣＴＥＣＵ５０との間で通信される通信フレームを示すタイムチャートである。
【符号の説明】
１０  ＥＮＧＥＣＵ
１５  診断部
２０  ＥＮＧ用送受信部
２５  ＥＣＴ用ゲートウエイ処理部
３０  入出力部
３１  送信調停部
５０  ＥＣＴＥＣＵ
６０  ＥＣＴ用送受信部
７０  専用バス
８０  共通バス
【図１】
2004249817.tif 000003
【図２】
2004249817.tif 000004
【図３】
2004249817.tif 000005
【図４】
2004249817.tif 000006
【図５】
2004249817.tif 000007
【図６】
2004249817.tif 000008
【図７】
2004249817.tif 000009