JP7151505B2 - 車載システム - Google Patents

車載システム Download PDF

Info

Publication number
JP7151505B2
JP7151505B2 JP2019009601A JP2019009601A JP7151505B2 JP 7151505 B2 JP7151505 B2 JP 7151505B2 JP 2019009601 A JP2019009601 A JP 2019009601A JP 2019009601 A JP2019009601 A JP 2019009601A JP 7151505 B2 JP7151505 B2 JP 7151505B2
Authority
JP
Japan
Prior art keywords
dtc
specific
failure information
control unit
information
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2019009601A
Other languages
English (en)
Other versions
JP2020117058A (ja
Inventor
鉄源 潘
思遥 毛
文登 竹内
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Denso Corp
Original Assignee
Denso Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Denso Corp filed Critical Denso Corp
Priority to JP2019009601A priority Critical patent/JP7151505B2/ja
Publication of JP2020117058A publication Critical patent/JP2020117058A/ja
Application granted granted Critical
Publication of JP7151505B2 publication Critical patent/JP7151505B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02TCLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO TRANSPORTATION
    • Y02T10/00Road transport of goods or passengers
    • Y02T10/10Internal combustion engine [ICE] based vehicles
    • Y02T10/40Engine management systems

Landscapes

  • Small-Scale Networks (AREA)

Description

本開示は、車載システムに関する。
例えば下記の特許文献1には、車両に搭載される電子制御ユニット(以下、ECU)として、故障診断機能を有するものが記載されている。ECUは、「Electronic Control Unit」の略である。ECUが有する故障診断機能は、OBDとも呼ばれる。OBDは、「On-Board Diagnostics」の略である。そして、下記の特許文献1には、複数のECUの何れかで検出された故障の種別を表す故障種別コードを、他のECUに記憶させる思想が記載されている。上記故障種別コードは、一般にDTCと呼ばれる。DTCは、「Diagnostic Trouble Code」の略である。
また、近年、OBDを活用した車両検査(以下、OBD車検)の実施が検討されている。OBD車検では、車両内で検出され得る複数種類の故障のDTCのうち、特定の1つ以上のDTCが、特定DTCと定義される。そして、OBD車検の実施時において、車両に搭載されている複数のECUの何れかから、車両の外部の装置である診断ツールによって特定DTCが読み出された場合には、その車両は不合格とされる。
特開2012-210918号公報
発明者の詳細な検討の結果、下記の課題が見出された。
ECUにおいて、DTCを記憶するためのメモリ容量は有限であり、記憶可能なDTCの数には上限がある。このため、DTCの記憶数が上限に達している状態で、新たなDTCを記憶する必要が生じた場合には、例えば、新たなDTCを既に記憶されているDTCに上書きして記憶するか、あるいは、新たなDTCを破棄することが考えられる。但し、このようにすると、特定DTCが記憶されない可能性がある。特定DTCに対応する故障が生じているのに、その特定DTCが記憶されないと、例えばOBD車検の実施時において、本来ならば不合格の車両が、合格と判断されてしまう。
そこで、複数のECUのうち、何れかのECUで検出された故障のDTCを、他の複数のECUに記憶させるようにシステムを構成すれば、前述した新たなDTCの上書きあるいは破棄の必要性を抑制でき、特定DTCがどこにも記憶されなくなる可能性を低減できると考えられる。以下では、何れかのECUで検出された故障のDTCを、他のECUに記憶させることを、肩代わり記憶という。
しかし、診断ツールによって、複数のECUの何れかである読出対象ECUから、その読出対象ECUが発生元であるDTCを読み出す場合に、長い時間がかかってしまう。読出対象ECUは、診断ツールからのDTC要求に対して応答する場合に、他の各ECUに対して、当該読出対象ECUが発生元であるDTC、即ち、肩代わり記憶されたDTCを、逐次的に要求して、その肩代わり記憶されたDTCを収集する必要があるからである。
そこで、本開示の1つの局面は、検出された故障の故障情報を診断ツールに渡すのに必要な時間を、短くすることが可能な車載システムを提供する。
本開示の1つの態様による車載システムは、マスタ制御ユニット(10)と、このマスタ制御ユニットと通信バス(3)を介して接続された複数のスレーブ制御ユニット(11~14)と、を備える。
複数のスレーブ制御ユニットのそれぞれは、当該スレーブ制御ユニットが有する故障診断機能によって検出された故障の種別を表す故障情報を、マスタ制御ユニットに送信する(S110)ように構成されている。
マスタ制御ユニットは、情報テーブル(23)と、記憶領域(25)と、を備える。情報テーブルには、複数のスレーブ制御ユニットのそれぞれで検出され得る複数種類の故障の故障情報のうち、特定の用途に使用される故障情報である特定故障情報が、少なくとも記録されている。記憶領域は、複数のスレーブ制御ユニットからマスタ制御ユニットに送信された故障情報、即ち、何れかのスレーブ制御ユニットで実際に検出された故障の故障情報のうち、特定故障情報を保存するために、マスタ制御ユニットに備えられている。
マスタ制御ユニットは、複数のスレーブ制御ユニットの何れかから送信された故障情報を受信すると、当該受信した故障情報(以下、受信故障情報)が特定故障情報であるか否かを、情報テーブルに基づいて判定し、受信故障情報が特定故障情報であると判定した場合には、受信故障情報を記憶領域に記憶すると共に、受信故障情報を送信したスレーブ制御ユニットに当該受信故障情報の破棄を指示し、また、受信故障情報が特定故障情報ではないと判定した場合には、受信故障情報を送信したスレーブ制御ユニットに当該受信故障情報の記憶を指示する(S210~S250)。
このような構成によれば、スレーブ制御ユニットの何れかで検出された故障の故障情報のうち、特定故障情報は、マスタ制御ユニットの記憶領域に記憶される。このため、スレーブ制御ユニットにおいて故障情報を記憶するためのメモリ容量が少なくて済み、特定故障情報がどこにも記憶されなくなってしまうことも防止することができる。
そして、各スレーブ制御ユニットは、車両の外部の装置である診断ツールからの要求に応じて、当該スレーブ制御ユニットが発生元である故障情報を診断ツールに送信する場合には、当該スレーブ制御ユニットが発生元である特定故障情報をマスタ制御ユニットから取得すれば良い。
このため、各スレーブ制御ユニットは、他の複数の制御ユニットから特定故障情報を収集する必要がない。よって、車両で検出された故障の故障情報を診断ツールに渡すのに必要な時間を、短くすることができる。また、通信バスの負荷(即ち、トラフィック)が大きくなってしまうことも防止することができる。
また、各スレーブ制御ユニットは、当該スレーブ制御ユニットで検出された故障の故障情報をマスタ制御ユニットに送信した後、その送信した故障情報を、マスタ制御ユニットからの破棄または記憶の指示に応じて、破棄または記憶すれば良い。このことは、「どの故障情報が特定故障情報であるか」という特定故障情報の選定内容によって変わるものではない。そして、特定故障情報の選定内容が変わった場合、マスタ制御ユニットの情報テーブルに記録される特定故障情報を変更することで対応可能となる。
また、情報テーブルは、特定故障情報が、その特定故障情報の発生元のスレーブ制御ユニットを特定可能な情報と対応付けて記録されるように構成されて良い。
このような構成の情報テーブルは、どの故障情報が特定故障情報であるか、という第1種事項だけでなく、特定故障情報の発生元がどのスレーブ制御ユニットであるか、という第2種事項も表すことができる。
そして、このような構成の情報テーブルがマスタ制御ユニットに備えられる車載システムは、下記のように構成されて良い。
複数のスレーブ制御ユニットのそれぞれは、車両の外部の装置である診断ツールからの故障情報要求を受信すると、マスタ制御ユニットに、当該スレーブ制御ユニットが発生元である特定故障情報を要求するための出力要求を送信し、当該出力要求に応答してマスタ制御ユニットから特定故障情報が送られてきたなら、そのマスタ制御ユニットからの特定故障情報と、当該スレーブ制御ユニットにおいて記憶されている故障情報(即ち、非特定故障情報)とを、前記故障情報要求に対する応答として診断ツールに送信する(S310~S340)。
そして、マスタ制御ユニットは、複数のスレーブ制御ユニットの何れかが送信した前記出力要求を受信すると、その出力要求を送信したスレーブ制御ユニットが発生元である特定故障情報を、前記情報テーブルから特定し、特定した特定故障情報が前記記憶領域に記憶されていれば、当該記憶されている特定故障情報を、前記出力要求を送信したスレーブ制御ユニットに送信する(S24)。
このような構成によれば、各スレーブ制御ユニットは、診断ツールからの故障情報要求に対して、当該スレーブ制御ユニットが発生元の故障情報、即ち、特定故障情報と非特定故障情報を、まとめて応答することができる。よって、応答に要する時間が短くなる。
実施形態の車載システムの構成を示すブロック図である。 スレーブECUが行う記憶制御処理を表すフローチャートである。 マスタECUが行う記憶制御処理を表すフローチャートである。 図2,図3の処理によるスレーブECU及びマスタECUの動作を表すラダーチャートである。 診断ツールからの要求に対してスレーブECUが応答する場合の作用例を説明する説明図である。 スレーブECUが行うDTC出力制御処理を表すフローチャートである。 図6の処理によるスレーブECUの動作と、診断ツール及びマスタECUの動作とを表すラダーチャートである。 特定DTCテーブルに情報を追加する場合の、診断ツールとマスタECUの動作を表すラダーチャートである。 図8の動作による作用例を説明する説明図である。 特定DTCテーブルから情報を削除する場合の、診断ツールとマスタECUの動作を表すラダーチャートである。 図10の動作による作用例を説明する説明図である。 マスタECUが行う追加後整合用処理を表すフローチャートである。 スレーブECUが行う指示対応処理を表すフローチャートである。 図12,図13の処理によるマスタECU及びスレーブECUの動作を表すラダーチャートである。 特定DTCテーブルに特定DTCが追加記録された場合の作用例を説明する説明図である。 マスタECUが行う削除後整合用処理を表すフローチャートである。 図16の処理によるマスタECUの動作と、スレーブECUの動作とを表すラダーチャートである。 特定DTCテーブルから特定DTCが削除された場合の作用例を説明する説明図である。
以下、図面を参照しながら、本開示の実施形態を説明する。
[1.構成]
図1に示す実施形態の車載システム1は、車両に搭載されるシステムであり、マスタ制御ユニットに相当するマスタECU10と、複数のスレーブ制御ユニットに相当するスレーブECU11~14と、を備える。各スレーブECU11~14は、少なくとも1つの故障を検出するための故障診断機能を有している。そして、マスタECU10とスレーブECU11~14は、車両内に配設された通信バス3を介して通信可能に接続されている。尚、スレーブECU11~14の数は、本実施形態では4であるが、4以外であっても良い。また、図1及び図1と同様の後述する他の図では、スレーブECU11~14のそれぞれを、ECU_A~Dとして図示している。
また、マスタECU10には、通信バス3とは別の通信バス5が接続されており、その通信バス5には、車両の外部の装置である診断ツール7が着脱可能になっている。そして、マスタECU10は、診断ツール7とスレーブECU11~14との間の通信を中継するゲートウェイとしての機能(即ち、中継機能)も有している。
各ECU10~14は、当該ECUの動作を司る制御部として、例えばマイクロコンピュータ(以下、マイコン)を備える。そして、マイコンは、プログラムを実行するCPUと、CPUが実行するプログラムや該プログラムの実行時に参照されるデータ等が格納されたROMと、データを一時的に記憶するためのRAMと、他のメモリと、を備える。後述するECU10~14の処理動作は、当該ECU10~14のマイコンにおけるCPUがプログラムを実行することにより実現される。
上記他のメモリは、ECU10~14の動作停止中においてもデータを保持可能で、且つ、データの書き込み及び読み出しが可能な少なくとも1つのメモリ(以下、保持用メモリ)である。
スレーブECU11~14における保持用メモリの記憶領域の一部又は全部は、当該スレーブECU11~14の故障診断機能によって検出された故障の種別を表す故障情報としてのDTCのうち、特定DTCではないDTC(即ち、非特定DTC)を保存するための記憶領域21になっている。
特定DTCは、スレーブECU11~14のそれぞれで検出され得る複数種類の故障のDTC、即ち、車両で検出され得る複数種類の故障のDTCのうち、例えばOBD車検における車両の合否判定に用いられるDTCである。このため、非特定DTCは、車両の合否判定に用いられないDTCである。
一方、例えば、マスタECU10におけるROMの記憶領域の一部及び当該ROMと紐付けられている保持用メモリの記憶領域の一部が、情報テーブルに相当する特定DTCテーブル23を構成するための記憶領域になっている。ROMの記憶領域のうち、少なくとも特定DTCテーブル23のための記憶領域は、書き換え可能であって良い。そして、マスタECU10における保持用メモリの記憶領域のうち、特定DTCテーブル23のための記憶領域とは別の記憶領域の一部又は全部は、スレーブECU11~14からマスタECU10に送信されるDTCのうち、特定DTCを保存するための記憶領域25になっている。尚、記憶領域25と、特定DTCテーブル23のための記憶領域とのそれぞれは、1つの保持用メモリにおける異なる記憶領域であっても良いし、物理的に別々の保持用メモリにおける記憶領域であっても良い。
マスタECU10において、特定DTCテーブル23には、全ての特定DTCのそれぞれが、その特定DTCの発生元のスレーブECUを特定可能な情報と対応付けて記録されている。DTCの発生元とは、そのDTCが表す故障を検出するECUのことである。更に、特定DTCテーブル23には、特定DTCのそれぞれについて、その特定DTCが記憶領域25に記憶されているか否かを示す記憶有無情報も、記録される。
このため、特定DTCテーブル23は、縦方向に並ぶカラムとして、特定DTCの発生元のスレーブECUを示す発生元情報の例である「A~D」の何れかが記録されるカラムと、特定DTCが記録されるカラムと、記憶有無情報の例である「○」または「×」が記録されるカラムと、を備える。そして、発生元情報と特定DTCと記憶有無情報は、対応するもの同士が同じ行となるように記録される。例えば、特定DTCテーブル23に記録される情報のうち、発生元情報と特定DTCはROMに記録され、記憶有無情報は保持用メモリに記録されるようになっていて良い。
尚、図1の例では、「DTC1」、「DTC4」、「DTC5」、「DTC9」及び「DTC10」が、特定DTCである。また、DTCの後に付されている数字は、DTCを区別するための数字であり、車載システム及び車載システムの構成要素に付された符号とは別のものである。また、記憶有無情報として、「○」は、当該記憶有無情報に対応する特定DTCが記憶領域25に記憶されていること、即ち「記憶あり」を示し、「×」は、当該記憶有無情報に対応する特定DTCが記憶領域25に記憶されてないこと、即ち「記憶なし」を示す。ここでは、分かりやすくするために、「○」または「×」で説明しているが、記憶有無情報は、例えばビット値が「1」または「0」のフラグであっても良い。
また他の例として、特定DTCテーブル23の構成としては、スレーブECU11~14のそれぞれについて、そのスレーブECUが発生元となる特定DTCの記録場所(例えば、アドレス)が予め定められている構成であっても良い。このような構成であっても、特定DTCの記録場所によって、発生元のスレーブECUを特定することができる。この場合、特定DTCの記録場所が、その特定DTCの発生元のスレーブECUを特定可能な情報に相当する。
[2.DTCを記憶するための処理]
本実施形態では、検出された故障のDTCのうち、特定DTCはマスタECU10に記憶され、非特定DTCは発生元のスレーブECU11~14に記憶される。尚、DTCの記憶先の説明として、マスタECU10に記憶されるとは、詳しくは、マスタECU10の記憶領域25に記憶されることであり、スレーブECU11~14に記憶されるとは、詳しくは、スレーブECU11~14の記憶領域21に記憶されることである。
そこで次に、マスタECU10が、検出された故障のDTCのうち、特定DTCを記憶するために行う記憶制御処理と、スレーブECU11~14のそれぞれが、DTCのうち、非特定DTCを記憶するために行う記憶制御処理とについて、説明する。尚、以下の説明において、検出された又は検出したDTCとは、検出された又は検出した故障のDTCのことである。
[2-1.スレーブECUが行う記憶制御処理]
スレーブECU11~14は、当該ECUが有する故障診断機能によって何れかの故障を検出すると、図2に示す記憶制御処理を行う。
図2に示すように、スレーブECU11~14は、検出したDTCを、S110にて、マスタECU10に送信する。例えば、スレーブECU11~14は、該当のDTCを含むメッセージを、マスタECU10に送信する。また、車載システム1において、ノード間でやりとりされるメッセージには、送信元を示す送信元情報が少なくとも含まれる。ここで言うノードとしては、ECU10~14及び診断ツール7が含まれる。
スレーブECU11~14は、次のS120にて、上記S110で送信したDTCに対するマスタECU10からの指示メッセージを受信したか否かを判定し、マスタECU10からの指示メッセージを受信するまで待つ。そして、マスタECU10からの指示メッセージを受信すると、S130に進む。尚、S120で待つマスタECU10からの指示メッセージは、DTC破棄とDTC記憶との、何れかを指示するメッセージである。また、ここで言う破棄は、記憶しないことを意味する。
スレーブECU11~14は、S130では、マスタECU10からの指示メッセージが、DTC破棄を指示するメッセージであるか否かを判定し、DTC破棄を指示するメッセージであれば、S140に進む。そして、S140では、上記S110でマスタECU10に送信したDTC、即ち検出したDTCを、当該ECUの記憶領域21に記憶することなく破棄し、その後、図2の記憶制御処理を終了する。
また、スレーブECU11~14は、上記S130にて、マスタECU10からの指示メッセージが、DTC破棄を指示するメッセージではない、即ち、DTC記憶を指示するメッセージである、と判定した場合には、S150に進む。そして、S150では、上記S110でマスタECU10に送信したDTCを、当該ECUの記憶領域21に記憶し、その後、図2の記憶制御処理を終了する。
[2-2.マスタECUが行う記憶制御処理]
マスタECU10は、スレーブECU11~14の何れかが送信した、DTCを含むメッセージを受信すると、図3に示す記憶制御処理を行う。
図3に示すように、マスタECU10は、S210にて、スレーブECU11~14から受信したDTC(以下、受信DTC)を、特定DTCテーブル23に記録されている特定DTCと照合することにより、受信DTCが特定DTCテーブル23に記録されているか否かを判定する。
そして、マスタECU10は、次のS220にて、上記S210での判定結果に基づいて、受信DTCが特定DTCであるか否かを判定する。具体的には、受信DTCが特定DTCテーブル23に記録されていれば、受信DTCが特定DTCであると判定し、受信DTCが特定DTCテーブル23に記録されていなければ、受信DTCが非特定DTCであると判定する。
マスタECU10は、上記S220にて、受信DTCが特定DTCであると判定した場合には、S230に進み、受信DTCを記憶領域25に記憶する。更に、S230では、特定DTCテーブル23において、受信DTCと同じ特定DTCに対応する記憶有無情報を、「記憶あり」に書き換える。
そして、マスタECU10は、次のS240にて、スレーブECU11~14のうち、DTCを送信してきたスレーブECUに、前述のDTC破棄を指示するメッセージを送信し、その後、図3の記憶制御処理を終了する。尚、マスタECU10は、DTCを送信してきたスレーブECUを、そのDTCが含まれたメッセージ中の送信元情報によって特定することができる。
よって、スレーブECU11~14で検出されたDTCが特定DTCであった場合、その特定DTCは、マスタECU10の記憶領域25に記憶され、スレーブECU11~14には記憶されない。
また、マスタECU10は、上記S220にて、受信DTCが特定DTCではない、即ち、非特定DTCである、と判定した場合には、受信DTCを記憶領域25に記憶することなく、S250に進む。そして、S250では、スレーブECU11~14のうち、DTCを送信してきたスレーブECUに、前述のDTC記憶を指示するメッセージを送信し、その後、図3の記憶制御処理を終了する。
よって、スレーブECU11~14で検出されたDTCが非特定DTCであった場合、その非特定DTCは、マスタECU10に記憶されず、発生元のスレーブECUの記憶領域21に記憶される。
[2-3.ラダーチャートによる動作説明]
図2,図3の各処理により、スレーブECU11~14とマスタECU10は、図4に示すように動作する。尚、図4におけるスレーブECUは、スレーブECU11~14のうち、故障を検出したスレーブECUであり、ここでは、例えばスレーブECU11であるとして説明する。
図4に示すように、スレーブECU11は、S11にて、検出したDTCをマスタECU10に送信する。マスタECU10は、S12にて、スレーブECU11からの受信DTCを、特定DTCテーブル23に記録されている特定DTCと照合する。そして、受信DTCが特定DTCテーブル23に記録されていた場合、即ち、受信DTCが特定DTCである場合には、S13にて、その受信DTCを記憶領域25に記憶し、S14にて、スレーブECU11に、DTC破棄を指示するメッセージを送信する。このメッセージを受信したスレーブECU11は、マスタECU10に送信したDTCを、S15にて破棄する。
また、図4には示されていないが、マスタECU10は、受信DTCが特定DTCテーブル23に記録されていなかった場合、即ち、受信DTCが非特定DTCである場合には、その受信DTCを記憶領域25に記憶せず、スレーブECU11に、DTC記憶を指示するメッセージを送信する。このため、スレーブECU11は、マスタECU10に送信したDTC(即ち、非特定DTC)を、当該スレーブECU11の記憶領域21に記憶する。
[2-4.作用例]
例えば、図1において、スレーブECU11(即ち、ECU_A)が、DTC1に対応する故障を検出したとする。そして、DTC1は、特定DTCである。
この場合、下記〈1〉~〈5〉の動作が行われる。
〈1〉スレーブECU11は、DTC1をマスタECU10に送信する。
〈2〉マスタECU10は、スレーブECU11から受信したDTC1が特定DTCであるか否かを、特定DTCテーブル23に基づいて判定する。
DTC1は、特定DTCであり、特定DTCテーブル23に記録されているため、マスタECU10は、DTC1が特定DTCであると判定する。
〈3〉このため、マスタECU10は、スレーブECU11からのDTC1を、記憶領域25に記憶する。
〈4〉そして、マスタECU10は、スレーブECU11に、検出したDTCの破棄を指示する。
〈5〉スレーブECU11は、マスタECU10からの指示に従って、DTC1を記憶領域21に記憶せずに破棄する。
よって、特定DTCであるDTC1は、マスタECU10に記憶され、スレーブECU11には記憶されない。
また例えば、図1において、スレーブECU12(即ち、ECU_B)が、DTC3に対応する故障を検出したとする。そして、DTC3は、非特定DTCである。
この場合、下記〈6〉~〈9〉の動作が行われる。
〈6〉スレーブECU12は、DTC3をマスタECU10に送信する。
〈7〉マスタECU10は、スレーブECU12から受信したDTC3が特定DTCであるか否かを、特定DTCテーブル23に基づいて判定する。
DTC3は、非特定DTCであり、特定DTCテーブル23に記録されていないため、マスタECU10は、DTC3が非特定DTCであると判定する。このため、マスタECU10は、DTC3を記憶領域25に記憶しない。
〈8〉そして、マスタECU10は、スレーブECU11に、検出したDTCの記憶を指示する。
〈9〉スレーブECU11は、マスタECU10からの指示に従って、DTC3を記憶領域21に記憶する。
よって、非特定DTCであるDTC3は、マスタECU10に記憶されず、当該DTC3の発生元であるスレーブECU12に記憶される。
[3.DTCを診断ツールに出力するための処理]
次に、図5に示すように、診断ツール7が通信バス5に接続され、その診断ツール7からのDTC要求に対して、スレーブECU11~14が応答する場合に行われる処理について説明する。
[3-1.スレーブECUが行うDTC出力制御処理]
スレーブECU11~14は、診断ツール7からマスタECU10を経由して送られて来る当該スレーブECU宛てのDTC出力要求を受信すると、図6に示すDTC出力制御処理を行う。診断ツール7からのDTC出力要求は、スレーブECU11~14の何れかに対して、当該スレーブECUで検出されたDTCを要求するためのメッセージであり、故障情報要求に相当する。
図6に示すように、スレーブECU11~14は、S310にて、マスタECU10にDTC出力要求を送信する。スレーブECU11~14からのDTC出力要求は、マスタECU10に対して、記憶領域25に記憶された特定DTCのうち、当該スレーブECUが発生元である特定DTCを要求するためのメッセージであり、出力要求に相当する。
一方、処理の図示を省略するが、マスタECU10は、スレーブECU11~14の何れかが送信したDTC出力要求を受信すると、下記のDTC応答制御処理を行う。
マスタECU10は、DTC応答制御処理では、受信したDTC出力要求の送信元のスレーブECU(以下、要求元ECU)が発生元である特定DTCを、特定DTCテーブル23から特定する。そして、特定した特定DTCが記憶領域25に記憶されていれば、その記憶されている特定DTCを含む応答メッセージを、要求元ECUに送信する。また、上記特定した特定DTCが記憶領域25に記憶されていない場合、あるいは、そもそも要求元ECUが発生元である特定DTCが、特定DTCテーブル23に記録されていない場合には、DTCが含まれない応答メッセージを、要求元ECUに送信する。
このため、スレーブECU11~14は、マスタECU10にDTC出力要求を送信した後、図6のS320にて、マスタECU10からの応答メッセージを受信したか否かを判定し、マスタECU10からの応答メッセージを受信するまで待つ。そして、スレーブECU11~14は、マスタECU10からの応答メッセージを受信すると、S330に進む。
スレーブECU11~14は、S330では、マスタECU10からの応答メッセージにDTCが含まれているか否かを判定し、DTCが含まれていると判定した場合には、S340に進む。そして、S340では、診断ツール7への応答メッセージとして、マスタECU10からの応答メッセージに含まれていたDTC(即ち、特定DTC)と、当該スレーブECUの記憶領域21に記憶されているDTC(即ち、非特定DTC)とを含むメッセージを、送信する。その後、スレーブECU11~14は、図6のDTC出力制御処理を終了する。尚、記憶領域21にDTCが記憶されていない場合には、上記S340で送信される診断ツール7への応答メッセージに非特定DTCは含まれない。
スレーブECU11~14から診断ツール7への応答メッセージは、マスタECU10を経由して診断ツール7に送られる。そして、診断ツール7への応答メッセージに含まれるDTCは、例えば、診断ツール7に備えられた表示部に表示される。
一方、スレーブECU11~14は、上記S330にて、マスタECU10からの応答メッセージにDTCが含まれていないと判定した場合には、S350に進む。そして、S350では、診断ツール7への応答メッセージとして、当該スレーブECUの記憶領域21に記憶されているDTCを含むメッセージを、送信する。その後、スレーブECU11~14は、図6のDTC出力制御処理を終了する。尚、記憶領域21にDTCが記憶されていない場合には、上記S350で送信される診断ツール7への応答メッセージにDTCは含まれない。
[3-2.ラダーチャートによる動作説明]
上記DTC出力制御処理及びDTC応答制御処理により、スレーブECU11~14とマスタECU10は、図7に示すように動作する。尚、図7におけるスレーブECUは、例えばスレーブECU11であるとして説明する。
図7に示すように、S21にて、診断ツール7がスレーブECU11宛てのDTC出力要求を送信したとする。
マスタECU10は、S22にて、診断ツール7からの要求メッセージとしてのDTC出力要求を、そのままスレーブECU11に転送する。具体的には、診断ツール7からのDTC出力要求を通信バス3に送出する。
スレーブECU11は、診断ツール7からのDTC出力要求を受信すると、S23にて、マスタECU10にDTC出力要求を送信する。
すると、マスタECU10は、S24にて、上記DTC応答制御処理を行うことにより、記憶領域25に記憶されている特定DTCのうち、スレーブECU11が発生元である特定DTCを含む応答メッセージを、スレーブECU11に送信する。尚、この例では、スレーブECU11が発生元である特定DTCが、マスタECU10の記憶領域25に記憶されているものとする。
スレーブECU11は、マスタECU10からの応答メッセージを受信すると、S25にて、診断ツール7への応答メッセージとして、マスタECU10からの特定DTCと、当該スレーブECU11の記憶領域21に記憶されているDTC(即ち、非特定DTC)とを含むメッセージを、作成する。そして、スレーブECU11は、この作成したメッセージを、S26にて、通信バス3に送信する。
すると、マスタECU10は、スレーブECU11から送信された応答メッセージを受信し、この応答メッセージを、S27にて、そのまま診断ツール7に転送する。具体的には、スレーブECU11から受信した応答メッセージを通信バス5に送出する。そして、このスレーブECU11からの応答メッセージは、診断ツール7に受信される。
[3-3.作用例]
例えば図5において、〈11〉に示すように、診断ツール7からスレーブECU11宛てのDTC出力要求が送信されたとする。
この場合、下記〈12〉~〈14〉の動作が行われる。
〈12〉スレーブECU11は、マスタECU10にDTC出力要求を送信する。
〈13〉マスタECU10は、記憶領域25に記憶されている特定DTCのうち、発生元がスレーブECU11である特定DTC、即ち、この例ではDTC1を、スレーブECU11に送信する。
〈14〉スレーブECU11は、マスタECUから受信した特定DTCであるDTC1と、当該スレーブECU11の記憶領域21に記憶されている非特定DTCであるDTC2とを、合わせて、診断ツール7に応答する。具体的には、これらのDTCを含む診断ツール7宛の応答メッセージを送信する。
すると、診断ツール7の表示部には、DTC1とDTC2が表示される。
[4.特定DTCテーブルに特定DTCを追加記録する機能]
特定DTCが追加された場合、即ち、車両で検出されるDTCのうち、特定DTCとして定められるものが増やされた場合には、マスタECU10の特定DTCテーブル23を更新する必要がある。そこで、特定DTCテーブル23に特定DTCを追加記録する機能について説明する。
[4-1.診断ツールとマスタECUが行う動作]
図8のラダーチャートに示すように、診断ツール7が、S31にて、特定DTC追加情報を送信すると、マスタECU10は、その特定DTC追加情報を受信する。特定DTC追加情報には、追加された特定DTCと、その特定DTCの発生元であるスレーブECUを示す発生元情報とが、少なくとも含まれる。この特定DTC追加情報は、外部からの追加要求に相当する。
そして、マスタECU10は、S32にて、診断ツール7からの特定DTC追加情報に含まれている特定DTCと、その特定DTCに対応する発生元情報とを、特定DTCテーブル23に追加して記録する。また、特定DTCテーブル23において、追加した特定DTCに対応する記憶有無情報は「×」、即ち「記憶なし」とされる。
その後、マスタECU10は、S33にて、診断ツール7に、特定DTCテーブル23の更新完了を示す応答メッセージを送信する。
[4-2.作用例]
例えば図9において、〈21〉に示すように、診断ツール7からマスタECU10へ、「スレーブECU11(即ち、ECU_A)が発生元のDTC2と、スレーブECU12(即ち、ECU_B)が発生元のDTC3を、追加する」という内容を表す特定DTC追加情報が送信されたとする。
この場合、マスタECU10は、〈22〉に示すように、診断ツール7からの特定DTC追加情報に従って、特定DTCテーブル23に情報を追加する。この例では、図9において、点線で示される更新前の特定DTCテーブル23が、実線で示される特定DTCテーブル23のように更新される。
そして、マスタECU10は、特定DTCテーブル23の更新を完了すると、〈23〉に示すように、診断ツール7に対して更新完了を示す応答メッセージを送信する。
よって、OBD車検における特定DTCが追加された場合に、特定DTCテーブル23を更新することができる。
[5.特定DTCテーブルから特定DTCを削除する機能]
特定DTCが減らされる場合、即ち、車両で検出されるDTCのうち、特定DTCとして定められるものが減らされる場合もあり得る。そして、この場合には、減らされた特定DTCを、マスタECU10の特定DTCテーブル23から削除する必要がある。そこで、特定DTCテーブルから特定DTCを削除する機能について説明する。
[5-1.診断ツールとマスタECUが行う動作]
図10のラダーチャートに示すように、診断ツール7が、S41にて、特定DTC削除情報を送信すると、マスタECU10は、その特定DTC削除情報を受信する。特定DTC削除情報には、特定DTCテーブル23から削除すべき削除対象の特定DTCが少なくとも含まれる。また、特定DTC削除情報には、例えば、削除対象の特定DTCの発生元であるスレーブECUを示す発生元情報も含まれて良い。尚、この特定DTC削除情報は、外部からの削除要求に相当する。
そして、マスタECU10は、S42にて、特定DTCテーブル23から、診断ツール7からの特定DTC削除情報に含まれている特定DTCを削除する。
その後、マスタECU10は、S43にて、診断ツール7に、特定DTCテーブル23の更新完了を示す応答メッセージを送信する。
[5-2.作用例]
例えば図11において、〈31〉に示すように、診断ツール7からマスタECU10へ、「DTC2とDTC3が、削除対象の特定DTCである」という内容を表す特定DTC削除情報が送信されたとする。
この場合、マスタECU10は、〈32〉に示すように、診断ツール7からの特定DTC削除情報に従って、特定DTCテーブル23から情報を削除する。この例では、図11おいて、点線で示される更新前の特定DTCテーブル23が、実線で示される特定DTCテーブル23のように更新される。
そして、マスタECU10は、特定DTCテーブル23の更新を完了すると、〈33〉に示すように、診断ツール7に対して更新完了を示す応答メッセージを送信する。
よって、OBD車検において特定DTCが減らされた場合に、特定DTCテーブル23を更新することができる。
[6.特定DTCテーブルに特定DTCが追加記録された場合の処理]
特定DTCテーブル23に新たな特定DTCが追加記録された場合に、その新たな特定DTCがスレーブECU11~14の何れかに既に記憶されていて、マスタECU10に記憶されないと、DTC記憶の整合が崩れてしまう。ここで言うDTC記憶の整合とは、「検出されたDTCのうち、特定DTCはマスタECU10に記憶され、非特定DTCは発生元のスレーブECU11~14に記憶される」ということである。
そこで次に、特定DTCテーブル23に新たな特定DTCが追加記録された場合に、DTC記憶の整合を確保するために、マスタECU10とスレーブECU11~14とが行う処理について、説明する。
[6-1.マスタECUが特定DTCの追加記録後に行う処理]
マスタECU10は、図8の動作によって特定DTCテーブル23に特定DTCを追加記録した後、図12の追加後整合用処理を行う。尚、図12の追加後整合用処理は、スレーブECU11~14のうち、特定DTCテーブル23に追加された特定DTCの発生元のスレーブECU(以下、対象スレーブECU)毎について実施される。
図12に示すように、マスタECU10は、S410にて、対象スレーブECUにDTC出力要求を送信する。マスタECU10から対象スレーブECUへのDTC出力要求は、対象スレーブECUに対して、記憶領域21に記憶されているDTCを要求するためのメッセージである。
一方、処理の図示を省略するが、対象スレーブECUは、マスタECU10が上記S410で送信したDTC出力要求を受信すると、記憶領域21に記憶されている全てのDTCを含む応答メッセージを、マスタECU10に送信する。
このため、マスタECU10は、対象スレーブECUにDTC出力要求を送信した後、図12のS420にて、対象スレーブECUからの応答メッセージを受信したか否かを判定し、対象スレーブECUからの応答メッセージを受信するまで待つ。そして、マスタECU10は、対象スレーブECUからの応答メッセージを受信すると、S430に進む。
マスタECU10は、S430では、対象スレーブECUからの応答メッセージに含まれていたDTC(以下、応答DTC)の数を、変数であるNに代入する。そして、次のS440にて、Nが0であるか否かを判定し、Nが0でなければ、S450に進む。
マスタECU10は、S450では、応答DTCのうち、N番目のDTCと、特定DTCテーブル23に記録されている特定DTCとを照合することにより、N番目のDTCが特定DTCであるか否かを判定する。尚、N番目の決め方は、どのような規則の決め方でも良い。
マスタECU10は、上記S450にて、N番目のDTCが特定DTCであると判定した場合には、S460にて、N番目のDTCを記憶領域25に記憶する。更に、S460では、特定DTCテーブル23において、N番目のDTCと同じ特定DTCに対応する記憶有無情報を「○」、即ち「記憶あり」に書き換える。尚、この場合、N番目のDTCは、特定DTCテーブル23に追加された特定DTCであり、追加故障情報に相当する。
そして、マスタECU10は、次のS470にて、後述のS500で対象スレーブECUに送信する予定の指示メッセージに、N番目のDTCと、このDTCの破棄を意味する指示情報とを、対応付けて追加し、その後、S490に進む。尚、ここで言う破棄も、消去を意味する。
また、マスタECU10は、上記S450にて、N番目のDTCが特定DTCでない判定した場合には、S480に進む。そして、S480では、後述のS500で対象スレーブECUに送信する予定の指示メッセージに、N番目のDTCと、このDTCの保持を意味する指示情報とを、対応付けて追加し、その後、S490に進む。
マスタECU10は、S490では、Nをデクリメント(即ち、-1)し、その後、S440に戻る。
また、マスタECU10は、上記S440にて、Nが0であると判定した場合には、S500に進み、S470,S480でDTC及び指示情報が追加された指示メッセージを対象スレーブECUに送信する。そして、その後、当該追加後整合用処理を終了する。尚、応答DTCの数が0であった場合、マスタECU10は、S500では、指示メッセージを送信しなくて良い。
[6-2.スレーブECUが行う指示対応処理]
スレーブECU11~14は、マスタECU10が上記S500で送信した当該スレーブECU宛ての指示メッセージを受信すると、図13に示す指示対応処理を行う。
図13に示すように、スレーブECU11~14は、S510にて、マスタECU10からの指示メッセージに含まれていたDTCの数を、変数であるNに代入する。
スレーブECU11~14は、次のS520にて、Nが0であるか否かを判定し、Nが0でなければ、S530に進む。
スレーブECU11~14は、S530では、マスタECU10からの指示メッセージに含まれているDTC及び指示情報のうち、N番目のDTCに対する指示情報を判別することにより、N番目のDTCを記憶するか否かを判定する。具体的には、N番目のDTCに対応する指示情報が、DTCの保持を意味する指示情報であれば、N番目のDTCを記憶すると判定される。また、N番目のDTCに対応する指示情報が、DTCの破棄を意味する指示情報であれば、N番目のDTCを記憶しない(即ち、消去する)と判定される。
スレーブECU11~14は、上記S530にて、N番目のDTCを記憶すると判定した場合には、S550に進み、指示メッセージに含まれていたN番目のDTCを保持する。つまり、このN番目のDTCは、当該スレーブECUの記憶領域21に記憶されているDTCであり、このDTCを引き続き記憶領域21に記憶させておく。そして、その後、S560に進む。
また、スレーブECU11~14は、上記S530にて、N番目のDTCを記憶しないと判定した場合には、S540に進み、指示メッセージに含まれていたN番目のDTCを記憶領域21から消去する。そして、その後、S560に進む。
スレーブECU11~14は、S560では、Nをデクリメントし、その後、S520に戻る。
また、スレーブECU11~14は、上記S520にて、Nが0であると判定した場合には、そのまま当該指示対応処理を終了する。
[6-3.ラダーチャートによる動作説明]
上記追加後整合用処理及び指示対応処理により、マスタECU10とスレーブECU11~14は、図14に示すように動作する。尚、図14におけるスレーブECUは、例えばスレーブECU11であるとして説明する。
図14に示すように、マスタECU10は、S51にて、スレーブECU11にDTC出力要求を送信する。
すると、スレーブECU11は、S52にて、記憶領域21に記憶されている全てのDTCをマスタECU10に送信する。
マスタECU10は、S53にて、スレーブECU11から受信したDTCを、特定DTCテーブル23に記録されている特定DTCと照合することにより、受信したDTCが特定DTCであるか非特定DTCであるかを判別する。
そして、マスタECU10は、スレーブECU11から受信したDTCのうち、特定DTCであると判定したDTCについては、S54にて、記憶領域25に記憶し、更に、S55にて、そのDTCの破棄をスレーブECU11に指示する。
また、マスタECU10は、スレーブECU11から受信したDTCのうち、特定DTCでない(即ち、非特定DTCである)と判定したDTCについては、記憶領域25に記憶せず、S55にて、そのDTCの保持をスレーブECU11に指示する。
そして、スレーブECU11は、S56にて、マスタECU10からの指示に従いDTCの破棄(即ち、消去)又は保持を行う。
[6-4.作用例]
例えば図15に示すように、図9の例と同様に、点線で示される更新前の特定DTCテーブル23が、実線で示される特定DTCテーブル23のように更新されたとする。つまり、発生元がスレーブECU11(即ち、ECU_A)のDTC2と、発生元がスレーブECU12(即ち、ECU_B)のDTC3とが、新たな特定DTCとして、特定DTCテーブル23に追加記録されたとする。
この場合、対象スレーブECUは、スレーブECU11とスレーブECU12となる。そして、スレーブECU11ついては、下記〈41〉~〈46〉の動作が行われ、スレーブECU12ついては、下記〈51〉~〈55〉の動作が行われる。
〈41〉マスタECU10は、スレーブECU11にDTC出力要求を送信する。
〈42〉スレーブECU11は、記憶領域21に記憶されている全てのDTCを、マスタECU10に送信する。この例では、DTC2がマスタECU10に送信される。
〈43〉マスタECU10は、スレーブECU11から送られてきたDTC(即ち、DTC2)が特定DTCであるか否かを、特定DTCテーブルを用いて判定する。この例では、特定DTCテーブル23にDTC2が追加記録されているため、DTC2は特定DTCであると判定される。
〈44〉このため、マスタECU10は、DTC2を記憶領域25に記憶する。更に、特定DTCテーブル23において、DTC2に対応する記憶有無情報を「○」に書き換える。
〈45〉そして、マスタECU10は、スレーブECU11に、DTC2の破棄を指示する。
〈46〉スレーブECU11は、マスタECU10からの指示に従って、記憶領域21からDTC2を削除する。
このように、特定DTCテーブル23に追加記録されたDTC2が、発生元のスレーブECU11に既に記憶されている場合には、そのDTC2は、マスタECU10に記憶され、スレーブECU11からは消去される。
〈51〉マスタECU10は、スレーブECU12にもDTC出力要求を送信する。
〈52〉スレーブECU12は、記憶領域21に記憶されている全てのDTCを、マスタECU10に送信する。この例では、DTC7がマスタECU10に送信される。
〈53〉マスタECU10は、スレーブECU12から送られてきたDTC(即ち、DTC7)が特定DTCであるか否かを、特定DTCテーブルを用いて判定する。この例では、特定DTCテーブル23にDTC7が記録されていないため、DTC7は非特定DTCであると判定される。
〈54〉よって、マスタECU10は、DTC7を記憶領域25に記憶せず、スレーブECU12に、DTC7の保持を指示する。
〈55〉スレーブECU11は、マスタECU10からの指示に従って、記憶領域21にDTC7を記憶したままにする。
[7.特定DTCテーブルから特定DTCが削除された場合の処理]
特定DTCテーブル23から何れかの特定DTCが削除された場合には、特定DTCでなくなったDTC(即ち、非特定DTC)がマスタECU10に記憶された状態になる可能性がある。つまり、DTC記憶の整合が崩れてしまう可能性がある。
そこで次に、特定DTCテーブル23から特定DTCが削除された場合に、DTC記憶の整合を確保するために、マスタECU10とスレーブECU11~14とが行う処理について、説明する。尚、マスタECU10は、図10の動作による特定DTCテーブル23の更新、即ち、特定DTCを削除する更新を行った場合、少なくとも、後述する図16の削除後整合用処理を完了するまでは、更新前の特定DTCテーブル23を保存しておくようになっている。
[7-1.マスタECUが特定DTCの削除後に行う処理]
マスタECU10は、図10の動作によって特定DTCテーブル23から何れかの特定DTCを削除した後、図16の削除後整合用処理を行う。
図16に示すように、マスタECU10は、S610にて、記憶領域25に記憶されているDTCの数を、変数であるNに代入する。そして、次のS620にて、Nが0であるか否かを判定し、Nが0でなければ、S630に進む。
マスタECU10は、S630では、記憶領域25に記憶されているDTCのうち、N番目のDTCと、更新後の特定DTCテーブル23に記録されている特定DTCとを照合することにより、N番目のDTCが特定DTCであるか否かを判定する。
マスタECU10は、上記S630にて、N番目のDTCが特定DTCであると判定した場合には、そのままS660に進む。
また、マスタECU10は、上記S630にて、N番目のDTCが特定DTCでないと判定した場合には、S640に進む。この場合、N番目のDTCは、特定DTCテーブル23から削除された旧来の特定DTC、即ち、特定DTCから非特定DTCに変更されたDTCであり、削除故障情報に相当する。
マスタECU10は、S640では、N番目のDTCを記憶領域25から削除する。
マスタECU10は、次のS650にて、N番目のDTCの発生元のスレーブECUを、更新前の特定DTCテーブル23から特定する。そして、特定した発生元のスレーブECU宛ての指示メッセージに、N番目のDTCと、このDTCの記憶を意味する指示情報(以下、記憶指示情報)とを、対応付けて追加し、その後、S660に進む。
マスタECU10は、S660では、Nをデクリメントし、その後、S620に戻る。
また、マスタECU10は、上記S620にて、Nが0であると判定した場合には、S670に進む。そして、S670では、上記S650で特定した発生元のスレーブECU宛ての指示メッセージであって、記憶対象のDTCと記憶指示情報とが含まれた指示メッセージを送信する。そして、その後、当該追加後整合用処理を終了する。
尚、特定DTCテーブル23から削除されたDTCの発生元のスレーブECUが複数あるのであれば、S670では、その複数の各スレーブECUに対する指示メッセージが送信される。また、記憶領域25に記憶されているDTCの数が0であった場合、あるいは、S650の処理が一回も行われなかった場合、マスタECU10は、S670では、指示メッセージを送信しなくて良い。
一方、処理の図示を省略するが、スレーブECU11~14は、マスタECU10が上記S670で送信した当該スレーブECU宛ての指示メッセージを受信すると、その指示メッセージ内の記憶指示情報に従って、その指示メッセージ内のDTCを記憶領域21に記憶する。
[7-2.ラダーチャートによる動作説明]
マスタECU10が上記削除後整合用処理を行うことにより、マスタECU10とスレーブECU11~14は、図17に示すように動作する。
図17に示すように、マスタECU10は、S61にて、記憶領域25に記憶されているDTCを、更新後の特定DTCテーブル23に記録されている特定DTCと照合することにより、記憶領域25に記憶されているDTCのそれぞれについて、特定DTCであるか否かを判定する。
そして、マスタECU10は、特定DTCでないと判定したDTC(即ち、旧来の特定DTC)を、S62にて、記憶領域25から削除し、S63にて、その削除したDTCの発生元のスレーブECUに対して、そのDTCの記憶を指示する。すると、この指示を受けたスレーブECUは、S64にて、指示されたDTCを記憶領域21に記憶する。
[7-3.作用例]
例えば図18に示すように、図11の例と同様に、点線で示される更新前の特定DTCテーブル23が、実線で示される特定DTCテーブル23のように更新されたとする。つまり、発生元がスレーブECU11(即ち、ECU_A)のDTC2と、発生元がスレーブECU12(即ち、ECU_B)のDTC3とが、特定DTCテーブル23から削除されたとする。
この場合、下記〈61〉~〈64〉の動作が行われる。
〈61〉マスタECU10は、記憶領域25に記憶されているDTCのそれぞれについて、特定DTCであるか否かを、更新後の特定DTCテーブル23に基づき判定する。この例では、記憶領域25に記憶されているDTC2が、特定DTCでないと判定される。
〈62〉このため、マスタECU10は、記憶領域25からDTC2を削除する。
〈63〉そして、マスタECU10は、DTC2の発生元のスレーブECU11に対して、DTC2の記憶を指示する。
〈64〉スレーブECU11は、マスタECU10からの指示に従って、記憶領域21にDTC2を記憶する。
このように、特定DTCテーブル23から削除されたDTC2が、マスタECU10に記憶されていた場合には、そのDTC2が、マスタECU10から削除され、発生元のスレーブECU11に記憶される。
[8.効果]
以上詳述した実施形態によれば、以下の効果を奏する。尚、上記実施形態では、DTCが故障情報に相当し、特定DTCが特定故障情報に相当している。
(1)スレーブECU11~14の何れかで検出されたDTCのうち、特定DTCは、マスタECU10に記憶される。このため、スレーブECU11~14においてDTCを記憶するためのメモリ容量(例えば、記憶領域21の容量)が少なくて済み、特定DTCがどこにも記憶されなくなってしまうことも防止することができる。
(2)そして、各スレーブECU11~14は、当該ECUが発生元であるDTCを診断ツール7に送信する場合には、当該ECUが発生元である特定DTCをマスタECU10から取得すれば良い。このため、各スレーブECU11~14は、他の複数のECUから特定DTCを収集する必要がない。よって、車両で検出されたDTCを診断ツール7に渡すのに必要な時間を、短くすることができる。更に、通信バス3の負荷(即ち、トラフィック)が大きくなってしまうことも防止することができる。
(3)また、各スレーブECU11~14は、当該ECUで検出されたDTCをマスタECU10に送信した後、その送信したDTCを、マスタECU10からの破棄または記憶の指示に応じて、破棄または記憶すれば良い。このことは、「どのDTCが特定DTCであるか」という特定DTCの選定内容によって変わるものではない。そして、特定DTCの選定内容が変わった場合、特定DTCテーブル23に記録される特定DTCを変更することで対応可能となる。
(4)特定DTCテーブル23には、特定DTCが、その特定DTCの発生元のスレーブECUを特定可能な情報と対応付けて記録されている。このため、特定DTCテーブル23は、どのDTCが特定DTCであるか、という第1種事項だけでなく、特定DTCの発生元がどのスレーブECUであるか、という第2種事項も表すことができる。
(5)スレーブECU11~14は、診断ツール7から送信された当該ECU宛てのDTC出力要求を受信すると、図6のDTC出力制御処理を行う。そして、マスタECU10は、スレーブECU11~14が図6のS310で送信するDTC出力要求を受信すると、前述のDTC応答制御処理を行う。このため、スレーブECU11~14は、診断ツール7からのDTC出力要求に対して、当該ECUが発生元の特定DTCと非特定DTCを、まとめて応答することができる。よって、応答に要する時間が短くなる。
(6)マスタECU10は、診断ツール7からの特定DTC追加情報(即ち、追加要求)に従って、特定DTCテーブル23に特定DTCを追加して記録する追加機能を備える。このため、車両で検出されるDTCのうち、特定DTCとして定められるものが増やされた場合にも、対応することができる。
(7)マスタECU10は、診断ツール7からの特定DTC削除情報(即ち、削除要求)に従って、特定DTCテーブル23から既に記録されている特定DTCの何れかを削除する削除機能を備える。このため、車両で検出されるDTCのうち、特定DTCとして定められるものが減らされた場合にも、対応することができる。
(8)マスタECU10は、特定DTCテーブル23に特定DTCを追加した場合に、その追加された特定DTCが発生元のスレーブECUに記憶されているならば、その追加された特定DTCを、記憶領域25に記憶すると共に、発生元のスレーブECUから消去させる。このため、特定DTCテーブル23に特定DTCが追加された場合に、DTC記憶の整合が崩れてしまうことを自動的に解消することができる。
(9)マスタECU10は、特定DTCテーブル23から特定DTCの何れかを削除した場合に、その削除されたDTCが記憶領域25に記憶されているならば、そのDTCを記憶領域25から削除すると共に、そのDTCを、発生元のスレーブECUに記憶させる。このため、特定DTCテーブル23から特定DTCの何れかが削除された場合にも、DTC記憶の整合が崩れてしまうことを自動的に解消することができる。
[9.他の実施形態]
以上、本開示の実施形態について説明したが、本開示は上述の実施形態に限定されることなく、種々変形して実施することができる。
例えば、各ECU10~14の記憶領域21,25には、DTCと対応付けて、そのDTCに関連する他の情報が、付加情報として記憶されても良い。付加情報としては、例えば、DTCが表す故障の検出時刻や、故障が検出されたときの車両の状態情報(即ち、フリーズフレームデータ)であって良い。フリーズフレームデータとしては、例えば、車速やエンジン回転数やブレーキ操作有無などであって良い。
また、診断ツール7は、通信バス3に接続されるように構成されても良い。この場合、マスタECU10は、ゲートウェイ機能を備えなくても良い。
また、特定DTCは、OBD車検における合否判定に使用されるDTCに限らず、例えば、車両の特定機能の修理要否を判定するために使用されるDTC等であっても良い。
また、本開示に記載の制御ユニット(即ち、ECU10~14)及びその手法は、コンピュータプログラムにより具体化された一つ乃至は複数の機能を実行するようにプログラムされたプロセッサ及びメモリを構成することによって提供された専用コンピュータにより、実現されても良い。あるいは、本開示に記載の制御ユニット及びその手法は、一つ以上の専用ハードウェア論理回路によってプロセッサを構成することによって提供された専用コンピュータにより、実現されても良い。もしくは、本開示に記載の制御ユニット及びその手法は、一つ乃至は複数の機能を実行するようにプログラムされたプロセッサ及びメモリと一つ以上のハードウェア論理回路によって構成されたプロセッサとの組み合わせにより構成された一つ以上の専用コンピュータにより、実現されても良い。また、コンピュータプログラムは、コンピュータにより実行されるインストラクションとして、コンピュータ読み取り可能な非遷移有形記録媒体に記憶されても良い。また、制御ユニットに含まれる各部の機能を実現する手法には、必ずしもソフトウェアが含まれている必要はなく、その全部の機能が、一つあるいは複数のハードウェアを用いて実現されても良い。
また、上記実施形態における1つの構成要素が有する複数の機能を、複数の構成要素によって実現したり、1つの構成要素が有する1つの機能を、複数の構成要素によって実現したりしても良い。また、複数の構成要素が有する複数の機能を、1つの構成要素によって実現したり、複数の構成要素によって実現される1つの機能を、1つの構成要素によって実現したりしても良い。また、上記実施形態の構成の一部を省略しても良い。
また、上述した車載システム1の他、当該車載システム1の構成要素となるECU10~14、当該ECU10~14としてコンピュータを機能させるためのプログラム、このプログラムを記録した半導体メモリ等の非遷移的実態的記録媒体、故障情報の記憶方法など、種々の形態で本開示を実現することもできる。
1…車載システム、3…通信バス、10…マスタECU、11~14…スレーブECU、23…特定DTCテーブル、25…記憶領域

Claims (6)

  1. 車載システムであって、
    マスタ制御ユニット(10)と、
    前記マスタ制御ユニットと通信バス(3)を介して接続された複数のスレーブ制御ユニット(11~14)と、を備え、
    前記複数のスレーブ制御ユニットのそれぞれは、
    当該スレーブ制御ユニットが有する故障診断機能によって検出された故障情報を、前記マスタ制御ユニットに送信する(S110)ように構成され、
    前記マスタ制御ユニットは、
    前記複数のスレーブ制御ユニットのそれぞれで検出され得る複数種類の故障の故障情報のうち、特定の用途に使用される故障情報である特定故障情報が、少なくとも記録された情報テーブル(23)と、
    前記複数のスレーブ制御ユニットから当該マスタ制御ユニットに送信された前記故障情報のうち、前記特定故障情報を保存するための記憶領域(25)と、を備え、
    更に、前記マスタ制御ユニットは、
    前記複数のスレーブ制御ユニットの何れかから送信された前記故障情報を受信すると、当該受信した故障情報である受信故障情報が前記特定故障情報であるか否かを、前記情報テーブルに基づいて判定し、前記受信故障情報が前記特定故障情報であると判定した場合には、前記受信故障情報を前記記憶領域に記憶すると共に、前記受信故障情報を送信したスレーブ制御ユニットに当該受信故障情報の破棄を指示し、また、前記受信故障情報が前記特定故障情報ではないと判定した場合には、前記受信故障情報を送信したスレーブ制御ユニットに当該受信故障情報の記憶を指示する(S210~S250)ように構成されており、
    前記マスタ制御ユニットは、
    当該マスタ制御ユニットの外部からの追加要求に従って、前記情報テーブルに前記特定故障情報を追加して記録する追加機能(S32)を備える、
    車載システム。
  2. 車載システムであって、
    マスタ制御ユニット(10)と、
    前記マスタ制御ユニットと通信バス(3)を介して接続された複数のスレーブ制御ユニット(11~14)と、を備え、
    前記複数のスレーブ制御ユニットのそれぞれは、
    当該スレーブ制御ユニットが有する故障診断機能によって検出された故障情報を、前記マスタ制御ユニットに送信する(S110)ように構成され、
    前記マスタ制御ユニットは、
    前記複数のスレーブ制御ユニットのそれぞれで検出され得る複数種類の故障の故障情報のうち、特定の用途に使用される故障情報である特定故障情報が、少なくとも記録された情報テーブル(23)と、
    前記複数のスレーブ制御ユニットから当該マスタ制御ユニットに送信された前記故障情報のうち、前記特定故障情報を保存するための記憶領域(25)と、を備え、
    更に、前記マスタ制御ユニットは、
    前記複数のスレーブ制御ユニットの何れかから送信された前記故障情報を受信すると、当該受信した故障情報である受信故障情報が前記特定故障情報であるか否かを、前記情報テーブルに基づいて判定し、前記受信故障情報が前記特定故障情報であると判定した場合には、前記受信故障情報を前記記憶領域に記憶すると共に、前記受信故障情報を送信したスレーブ制御ユニットに当該受信故障情報の破棄を指示し、また、前記受信故障情報が前記特定故障情報ではないと判定した場合には、前記受信故障情報を送信したスレーブ制御ユニットに当該受信故障情報の記憶を指示する(S210~S250)ように構成されており、
    前記マスタ制御ユニットは、
    当該マスタ制御ユニットの外部からの削除要求に従って、前記情報テーブルから当該情報テーブルに記録されている前記特定故障情報の何れかを削除する削除機能(S42)を備える、
    車載システム。
  3. 請求項に記載の車載システムであって、
    前記マスタ制御ユニットは、
    前記追加機能によって前記情報テーブルに前記特定故障情報を追加した場合に、前記情報テーブルに追加した特定故障情報である追加故障情報が、前記複数のスレーブ制御ユニットのうち、当該追加故障情報の発生元のスレーブ制御ユニットに記憶されているならば、前記追加故障情報を前記記憶領域に記憶すると共に、前記発生元のスレーブ制御ユニットから前記追加故障情報を消去させる(S410~S500)ように構成されている、
    車載システム。
  4. 請求項に記載の車載システムであって、
    前記マスタ制御ユニットは、
    前記削除機能によって前記情報テーブルから前記特定故障情報の何れかを削除した場合に、前記情報テーブルから削除した特定故障情報である削除故障情報が前記記憶領域に記憶されているならば、当該削除故障情報を前記記憶領域から削除すると共に、当該削除故障情報を、前記複数のスレーブ制御ユニットのうち、当該削除故障情報の発生元のスレーブ制御ユニットに記憶させる(S610~S670)ように構成されている、
    車載システム。
  5. 請求項1ないし請求項4の何れか1項に記載の車載システムであって、
    前記情報テーブルは、
    前記特定故障情報が、当該特定故障情報の発生元の前記スレーブ制御ユニットを特定可能な情報と対応付けて記録されるように構成されている、
    車載システム。
  6. 請求項に記載の車載システムであって、
    前記複数のスレーブ制御ユニットのそれぞれは、
    両の外部の装置である診断ツールからの故障情報要求を受信すると、前記マスタ制御ユニットに、当該スレーブ制御ユニットが発生元である前記特定故障情報を要求するための出力要求を送信し、当該出力要求に応答して前記マスタ制御ユニットから前記特定故障情報が送られてきたなら、前記マスタ制御ユニットからの前記特定故障情報と、当該スレーブ制御ユニットにおいて記憶されている前記故障情報とを、前記故障情報要求に対する応答として前記診断ツールに送信する(S310~S340)ように構成されており、
    前記マスタ制御ユニットは、
    前記複数のスレーブ制御ユニットの何れかが送信した前記出力要求を受信すると、前記出力要求を送信したスレーブ制御ユニットが発生元である前記特定故障情報を、前記情報テーブルから特定し、特定した特定故障情報が前記記憶領域に記憶されていれば、当該記憶されている特定故障情報を、前記出力要求を送信したスレーブ制御ユニットに送信する(S24)ように構成されている、
    車載システム。
JP2019009601A 2019-01-23 2019-01-23 車載システム Active JP7151505B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2019009601A JP7151505B2 (ja) 2019-01-23 2019-01-23 車載システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019009601A JP7151505B2 (ja) 2019-01-23 2019-01-23 車載システム

Publications (2)

Publication Number Publication Date
JP2020117058A JP2020117058A (ja) 2020-08-06
JP7151505B2 true JP7151505B2 (ja) 2022-10-12

Family

ID=71891720

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019009601A Active JP7151505B2 (ja) 2019-01-23 2019-01-23 車載システム

Country Status (1)

Country Link
JP (1) JP7151505B2 (ja)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011005901A (ja) 2009-06-24 2011-01-13 Denso Corp 通信装置及び通信システム
JP2013203236A (ja) 2012-03-28 2013-10-07 Denso Corp 車両用データ出力装置

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011005901A (ja) 2009-06-24 2011-01-13 Denso Corp 通信装置及び通信システム
JP2013203236A (ja) 2012-03-28 2013-10-07 Denso Corp 車両用データ出力装置

Also Published As

Publication number Publication date
JP2020117058A (ja) 2020-08-06

Similar Documents

Publication Publication Date Title
JP4661438B2 (ja) 車両通信システム
JP5007315B2 (ja) 車載のゲートウェイ装置
US11126422B2 (en) Program update system, control system, mobile body, program update method, recording medium
US11128711B2 (en) In-vehicle communication system, gateway, switching device and communication control method
JP4987760B2 (ja) 中継装置、通信システム及び通信方法
JP5598491B2 (ja) 車両用データ出力装置
WO2019163297A1 (ja) 書き換え装置、書き換えシステム、書き換え方法及び制御プログラム
JP2021056804A (ja) 中継装置および外部装置
JP7151505B2 (ja) 車載システム
JP7087334B2 (ja) 電子制御装置
WO2019221058A1 (ja) 車載中継装置、通信システム、バス決定方法及びコンピュータプログラム
CN116633780A (zh) 车辆的网关升级方法、装置、车辆及存储介质
US11451411B2 (en) First relay device, second relay device, and relay system
JP2007334668A (ja) メモリダンプ方法、クラスタシステム、それを構成するノードおよびプログラム
JP6631676B2 (ja) 車載更新装置、更新システム及び更新処理プログラム
JP6890737B1 (ja) 制御装置、方法、および、プログラム
JP2006236371A (ja) 制御システム
JP2021071824A (ja) 制御通信システム
WO2023112623A1 (ja) 車載制御装置、制御方法及びコンピュータプログラム
JP7487693B2 (ja) 通信システム、および中継装置
JP4973182B2 (ja) データ中継装置
JP2009171138A (ja) 個体情報記憶システム、個体情報記憶方法、ノード、及び検査装置
JP2007135107A (ja) 中継接続ユニット
JP2024110619A (ja) 車両用のデータ中継装置、及びデータ中継方法
CN118435567A (zh) 传输装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210625

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220628

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20220630

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220812

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20220830

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220912

R151 Written notification of patent or utility model registration

Ref document number: 7151505

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151