(57)【要約】【課題】全電子制御装置の中の一部の電子制御装置しか起動されない場合であっても、不具合が生じた場合に、その不具合の発生箇所などを診断することが可能な異常診断システムを提供する。【解決手段】動作している電子制御装置１１〜１４、２０において、供給されている電源電圧が繰り返し検出される。そして、検出された電源電圧が、前回の検出電圧から変動した場合、変動値を算出するとともに、算出した変動値を積算する。例えば、特定の電子制御装置の電源供給ラインに接触不良などがあり、電源電圧の変動が相対的に大きくなった場合、算出される積算値は、他の電子制御装置にて算出された積算値よりも大きくなる。また、電源自体に不具合が生じた場合には、すべてのＥＣＵにて算出される積算値が増加する。従って、複数の電子制御装置毎に算出された電源電圧の変動値の積算値に基づき、不具合の発生箇所などを診断することが可能となる。【選択図】図１
2014227123.tif 000002
【特許請求の範囲】
【請求項１】
複数の電子制御装置（１１〜１４、２０）が相互に通信可能に接続された車載ネットワークにおいて異常診断を行うための異常診断システムであって、
前記複数の電子制御装置に電源を供給する電源供給手段（１８）と、
前記複数の電子制御装置毎に設けられ、対応する電子制御装置が動作している間、その電子制御装置における電源電圧を繰り返し検出する電圧検出手段（３８）と、
前記電圧検出手段によって検出された電源電圧が、前回検出した電源電圧から変動した場合、その変動の大きさを示す変動値を算出するとともに、算出した変動値を、対応する電子制御装置毎にそれぞれ積算する積算手段（Ｓ１４０、Ｓ１７０）と、
前記積算手段によって、電子制御装置毎に算出された前記変動値の積算値に基づいて、異常診断を行う診断手段（Ｓ２１０〜Ｓ２８０）と、を備え、
前記電子制御装置が起動された時、前記積算手段は、前記電圧検出手段によって検出された電源電圧に対応する値を前記変動値として前記積算値を算出し、前記診断手段は、ゼロよりも大きい前記積算値だけを用いて、異常診断を行うことを特徴とする異常診断システム。
【請求項２】
前記診断手段（Ｓ２４０〜Ｓ２７０）は、電子制御装置毎に算出された前記変動値の積算値同士を比較し、比較した積算値同士に第１の所定値（Ｖ１）以上の差が生じている場合、大きい方の積算値が算出された電子制御装置に異常が発生していると診断することを特徴とする請求項１に記載の異常診断システム。
【請求項３】
前記第１の所定値は、段階的に複数設定され、前記診断手段は、いずれの段階の第１の所定値を超えたかにより、異常の程度を判別することを特徴とする請求項２に記載の異常診断システム。
【請求項４】
前記電源供給手段は、共通の電源から、前記複数の電子制御装置に電源供給を行うものであり、
前記診断手段（Ｓ２１０〜Ｓ２２０）は、複数の電子制御装置に対する複数の積算値が、いずれも第２の所定値（Ｖ２）より大きい場合、前記電源に異常が発生していると診断することを特徴とする請求項１乃至３のいずれかに記載の異常診断システム。
【請求項５】
前記電子制御装置が正常に動作を終了する場合、前記積算手段は、動作を終了する電子制御装置に対する積算値を消去することを特徴とする請求項１乃至４のいずれかに記載の異常診断システム。
【請求項６】
前記積算手段は、算出した変動値が、第３の所定値以上の大きさである場合に積算対象とし、前記第３の所定値未満の大きさである場合には積算対象から除外することを特徴とする請求項１乃至５のいずれかに記載の異常診断システム。
【請求項７】
前記積算手段は、算出した変動値を平滑化し、その平滑化変動値を積算することを特徴とする請求項１乃至５のいずれかに記載の異常診断システム。
【請求項８】
前記複数の電子制御装置は、それぞれ、異常が生じたときにリセットを実行するリセット手段を有し、リセットを実行する異常には、電源電圧の低下が含まれることを特徴とする請求項１乃至７のいずれかに記載の異常診断システム。
【請求項９】
前記複数の電子制御装置は、前記リセット手段によりリセットを行う場合、そのリセットの原因に関する情報を記憶しておくことを特徴とする請求項８に記載の異常診断システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数の電子制御装置（以下、ＥＣＵと略称する。）が相互に通信可能に接続された車載ネットワークにおいて、異常診断を行うための異常診断システムに関する。
【背景技術】
【０００２】
例えば、特許文献１には、車載電源から電源供給される事により所定機器の制御を実行する複数の機器ＥＣＵと、車載電源や電源切替リレーなどの状態を検知する電源系ＥＣＵとがネットワークにより接続されたシステムにおいて、電源系に不具合が生じた場合に、その不具合の内容や箇所を特定することが可能な異常診断システムが開示されている。
【０００３】
この異常診断システムでは、機器ＥＣＵは、自身に供給される電源電圧を検知し、電圧変動、瞬断、電圧低下などの不具合を検知した場合、その不具合を示すダイアグ情報を記憶する。電源系ＥＣＵは、各機器ＥＣＵからダイアグ情報を収集する。そして、電源系ＥＣＵは、収集したダイアグ情報から、１つ以上の機器ＥＣＵにおいて電源の不具合が生じたことが検知されると、その不具合発生時点における、すべての機器ＥＣＵにおける電源の不具合の有無、車載電源の状態、及び電源切替リレーの切替異常の有無を検知する。そして、検知結果の総合的な関係から電源の不具合の具体的内容やその不具合箇所を特定して、メモリに記憶する。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００７−１１２３０３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ここで、近年においては、車両が停止しているときにも、車両に搭載された各種のＥＣＵが、様々な制御を実行することが求められるようになっている。例えば、車両停止時の制御として、車載機と携帯キーとの相互通信を通じて、車両ドアの施錠／解錠を制御する「スマートキー制御」や、電気自動車やプラグインハイブリッド車両における「充電制御」などがある。
【０００６】
ただし、車両の停止時には、オルタネータによる発電や車載モータによる回生ブレーキが行われないので、上述した各種のＥＣＵにおいて消費される電力を極力低減することが重要となる。そのため、制御を実行する必要がないときには、上述した各種のＥＣＵをスリープモードとすることや、制御を実行する際にも、実行すべき制御に関係する一部のＥＣＵのみを起動させることが可能な技術が提案されている。
【０００７】
このように、車載ＥＣＵの中の一部のＥＣＵのみが起動するような場合、上述した特許文献１の異常診断システムでは、異常診断を適切に行い得ない虞がある。つまり、特許文献１の異常診断システムは、すべての機器ＥＣＵからのダイアグ情報と、電源系ＥＣＵにおける車載電源や電源切替リレーの異常検知結果の総合的な関係から、電源系不具合の内容や箇所を特定している。このため、一部のＥＣＵしか起動しておらず、残りのＥＣＵがスリープしている状態では、スリープしているＥＣＵから必要な情報を得ることができないので、不具合箇所の診断や特定を適切に行うことが困難となる。
【０００８】
本発明は、このような点に鑑みてなされたものであり、全ＥＣＵの中の一部のＥＣＵしか起動されない場合であっても、不具合が生じた場合に、その不具合の発生箇所などを診断することが可能な異常診断システムを提供することを目的とする。
【課題を解決するための手段】
【０００９】
上記目的を達成するために、本発明による異常診断システムは、複数のＥＣＵ（１１〜１４、２０）が相互に通信可能に接続された車載ネットワークにおいて異常診断を行うためのものであって、
複数のＥＣＵに電源を供給する電源供給手段（１８）と、
複数のＥＣＵ毎に設けられ、対応するＥＣＵが動作している間、そのＥＣＵにおける電源電圧を繰り返し検出する電圧検出手段（３８）と、
電圧検出手段によって検出された電源電圧が、前回検出した電源電圧から変動した場合、その変動の大きさを示す変動値を算出するとともに、算出した変動値を、対応するＥＣＵ毎にそれぞれ積算する積算手段（Ｓ１４０、Ｓ１７０）と、
積算手段によって、ＥＣＵ毎に算出された変動値の積算値に基づいて、異常診断を行う診断手段（Ｓ２１０〜Ｓ２８０）と、を備え、
ＥＣＵが起動された時、積算手段は、電圧検出手段によって検出された電源電圧に対応する値を変動値として積算値を算出し、診断手段は、ゼロよりも大きい積算値だけを用いて、異常診断を行うことを特徴とする。
【００１０】
上述したように、本発明では、電圧検出手段により、動作しているＥＣＵにおける電源電圧が繰り返し検出される。そして、検出された電源電圧が、前回の検出電圧から変動した場合、積算手段が、変動の大きさを示す変動値を算出するとともに、算出した変動値を、対応するＥＣＵ毎にそれぞれ積算する。例えば、特定のＥＣＵにおける電源供給ラインに接触不良などがあり、電源電圧の変動が相対的に大きくなった場合、算出される積算値は、他のＥＣＵに対して算出された積算値よりも大きくなる。また、電源自体に何らかの不具合が生じた場合には、その電源から電源電圧の供給を受けているすべてのＥＣＵに対して算出される積算値が増加することになる。このように、複数のＥＣＵ毎に算出された電源電圧の変動値の積算値に基づき、不具合の発生箇所などを診断することが可能である。
【００１１】
ここで、本発明では、ＥＣＵが起動された時、積算手段は、電圧検出手段によって検出された電源電圧に対応する値を変動値として積算値を算出する。このため、ＥＣＵが起動して、動作を開始した場合には、積算値として、必ずゼロよりも大きな値を持つことになる。そして、診断手段は、ゼロよりも大きい積算値だけを用いて、異常診断を行う。換言すると、起動していないＥＣＵに対する積算値はゼロのままであり、異常診断において、そのように起動していないＥＣＵに対する積算値が用いられることはない。従って、全ＥＣＵの中の一部のＥＣＵしか起動されない場合であっても、異常診断の誤判定を防止することができる。
【００１２】
なお、上記括弧内の参照番号は、本発明の理解を容易にすべく、後述する実施形態における具体的な構成との対応関係の一例を示すものにすぎず、なんら本発明の範囲を制限することを意図したものではない。
【００１３】
また、上述した特徴以外の本発明の特徴に関しては、後述する実施形態の説明及び添付図面から明らかになる。
【図面の簡単な説明】
【００１４】
【図１】実施形態による異常診断システムが適用される、車両内に構築されたネットワーク構成の一例を示す図である。
【図２】ＥＣＵ内部の構成を概略的に示す構成図である。
【図３】電圧変動積算処理を示すフローチャートである。
【図４】電圧変動積算値が変化する様子の一例を示すタイムチャートである。
【図５】異常診断処理を示すフローチャートである。
【発明を実施するための形態】
【００１５】
以下に本発明の実施形態を図面に基づいて説明する。図１は、本実施形態による異常診断システムが適用される、車両内に構築されたネットワーク構成の一例を示す図である。
【００１６】
本実施形態において、ネットワークが構築される車両は、走行駆動源としてモータを有するとともに、外部電源により、そのモータを駆動するための高圧バッテリを充電可能ないわゆる電気自動車もしくはプラグインハイブリッド自動車である。この電気自動車もしくはプラグインハイブリッド自動車の各種の車載機器を制御するために、図１に示すように、複数のＥＣＵ１１〜ＥＣＵ１４が設けられている。それら複数のＥＣＵ１１〜ＥＣＵ１４は、例えばＣＡＮバスなどの通信バス１０を介して、相互に通信可能に接続されている。以下、各ＥＣＵ１１〜ＥＣＵ１４の一例について説明する。
【００１７】
ＥＣＵ１１は、例えば、電源照合ＥＣＵであって、ユーザが保持する携帯キーとの間で相互通信を行なって、所定の照合処理を実行するとともに、照合が成立した場合に、各種の車載機器（例えば、ドアノブに設けられたタッチセンサ、ドアロックモータ、エンジンのスタータなど）への電源供給を許可するものである。
【００１８】
より具体的には、ＥＣＵ１１は、ドアロックが施錠された状態で車両が駐車されているとき、図示しないタイマにより所定の時間間隔でウェイクアップされ、携帯キーへ電波を送信する。そして、電波の送受信や照合処理など必要な処理が完了すると、スリープ状態となる。このように、ＥＣＵ１１は、車両が駐車されているとき、すなわちイグニッションスイッチがオフされているときに起動して動作する必要があるので、車載バッテリ１８から直接、電力の供給を受けている。
【００１９】
ＥＣＵ１２は、例えば、ボディＥＣＵであって、ＥＣＵ１１にて照合が成立して、車両ドアノブに設けられたタッチセンサに通電が行われているときに、そのタッチセンサに対するユーザの操作が検出されると、ドアロックを解錠するための処理を実行するものである。具体的には、ＥＣＵ１２は、ドアロック解錠処理として、ドアロックモータを所定の方向に駆動して、ドアロックを解錠する。また、ＥＣＵ１１にて照合が成立している状態で、車両ドアに設けられたドアロック施錠スイッチがユーザに操作された場合、ドアロックモータを解錠時とは逆方向に駆動して、ドアロックを施錠する。
【００２０】
ＥＣＵ１２は、ＥＣＵ１１において照合が行われるとき、もしくは照合が成立したときに、ＥＣＵ１１から出力されるウェイクアップ信号により起動される。すなわち、ＥＣＵ１２も、イグニッションスイッチがオフされているときに起動して動作する必要がある。そのため、ＥＣＵ１１と同様に、バッテリ１８から直接、電源の供給を受けている。
【００２１】
このように、ＥＣＵ１１とＥＣＵ１２とは、協働して、ユーザが保持する携帯キーとの相互通信を通じて車両ドアの施錠／解錠を制御する、いわゆるスマートキー制御を実行する。
【００２２】
ＥＣＵ１３は、例えば、図示しない高圧バッテリを制御するバッテリＥＣＵであって、高圧バッテリに関して、充放電電流やバッテリ電圧などに基づき、バッテリ残量（ＳＯＣ：State of Charge）を算出したり、高圧バッテリが複数のセルからなる場合に、各セルの充電状態を均等化する均等化処理を実施したりする。
【００２３】
ＥＣＵ１４は、例えば、充放電制御ＥＣＵであって、外部電源を用いて高圧バッテリを充電したり、高圧バッテリを非常用電源として用いて家庭等へ電源供給を行ったりする際に、その充放電の開始や終了を制御するものである。外部電源を用いて充電が行われるとき、ＥＣＵ１４は、ＥＣＵ１３との通信によりバッテリ残量等を確認する。そして、充電可能と判定すると、ＥＣＵ１４は、充電プラグと、高圧バッテリとを接続するリレーをオンする。これにより、高圧バッテリの充電が開始される。そして、高圧バッテリの充電が実行され、ＥＣＵ１３により満充電状態となったことが検出されると、ＥＣＵ１４は、リレーをオフし、充電を終了させる。また、車両に放電プラグが接続され、高圧バッテリを非常用電源として電源供給する際には、ＥＣＵ１４は、図示しないＡＣインバータを駆動し、高圧バッテリの直流電圧を家庭用の交流電圧に変換して出力させる。
【００２４】
ＥＣＵ１３及びＥＣＵ１４は、リレー２２を介して車載バッテリ１８に接続されている。リレー２２は電源制御ＥＣＵ２０により制御される。電源制御ＥＣＵ２０は、車両に充電プラグや放電プラグが接続されたことを検出すると、リレー２２をオンして、ＥＣＵ１３及びＥＣＵ１４への電源供給を開始する。さらに、電源制御ＥＣＵ２０は、充電プラグもしくは放電プラグが接続されたことをＥＣＵ１４に通知し、ＥＣＵ１４により充電制御もしくは放電制御を開始させる。
【００２５】
なお、上述した例では、ＥＣＵ１３及びＥＣＵ１４が、リレーを介して車載バッテリ１８から電源供給を受ける例について説明したが、車載バッテリ１８から直接、電源の供給を受けるように構成しても良い。さらに、例えばＥＣＵ１３及び／又はＥＣＵ１４が、充電プラグや放電プラグの接続をトリガとして、起動されるように構成されても良い。
【００２６】
このように、本実施形態に係る車両においては、車両が停止しているときにも、各ＥＣＵ１１〜１４、２０により、種々の制御が実行される。すなわち、上述したように、各ＥＣＵ１１〜１４、２０は、スマートキー制御、外部電源による充電、家庭用非常電源の供給などを実行する。
【００２７】
そして、制御の種類に応じて、必要なＥＣＵが動作し、それらのＥＣＵ間で必要なデータがやり取りされつつ、所望の制御が実行される。例えば、外部電源による充電は、ＥＣＵ１３とＥＣＵ１４とが、協働して動作することで実行され、スマートキー制御は、ＥＣＵ１１とＥＣＵ１２とが協働して動作することで実行される。
【００２８】
従って、車両が停止したときであっても、上述したような各種の制御を実行する必要が生じたとき、あるいはその必要性を判断する状況となったときには、該当するＥＣＵが動作を行わなければならない。従って、全てのＥＣＵ１１〜１４、２０は、電源の供給が完全にオフされて、停止した状態となることはできない。そのため、ＣＡＮプロトコルでは、例えば、所定の期間、通信バス１０がレセシブ（劣勢）レベルとなり、通信バス１０が空いている状態（アイドル状態）が継続すると、省電力のため、各ＥＣＵ１１〜１４，２０が、通信機能及び演算処理機能を停止するスリープモードとなることが可能となっている。
【００２９】
なお、ＣＡＮプロトコルでは、通信バス１０として２線式通信ラインが使用され、その２線式通信ラインの両端には終端抵抗が接続される。そして、データを送信するＥＣＵは、トランシーバにより２線式通信ラインに大小２種類の電位差を生じさせ、通信バス上で“１”又は“０”の信号を通信する。この際、ＣＡＮプロトコルでは、論理０が、２線式通信ラインに大きな電位差を生じさせるドミナント（優勢）レベルと規定されている。
【００３０】
ただし、通常のＣＡＮプロトコルでは、ＥＣＵがスリープモードのときに、通信バスにおけるレベルがドミナントになったことを検出すると、ドミナントレベルを検出したすべてのＥＣＵが、スリープモードから、通信機能及び演算処理機能を利用可能な動作モードである通常モードへ復帰（遷移）してしまう。しかし、上述したように、個々の制御毎に、その制御の実行に必要なＥＣＵは一部のＥＣＵに限られることが多い。そのため、全てのＥＣＵが起動してしまうと、無駄に電力を消費する結果となる。
【００３１】
そこで、本実施形態では、各ＥＣＵ１１〜１４、２０を個別に起動することが可能なように、各ＥＣＵ１１〜１４、２０は、図２に示すような構成のＣＡＮトランシーバ３２を備えている。なお、各ＥＣＵ１１〜１４、２０に設けられるＣＡＮトランシーバは同様の構成を有するため、ＥＣＵ１１を代表例として、以下に、ＣＡＮトランシーバ３２を含むＥＣＵ内部構成について説明する。
【００３２】
ＥＣＵ１１は、図２に示すように、各種の演算処理を実行するマイコン３０と、通信バス１０を介して他のＥＣＵと通信を行うためのトランシーバ３２とを有している。マイコン３０の送信ポートＴｘには、トランシーバ３２のトランスミッタ３４が接続されている。このトランスミッタ３４は、マイコン３０から出力された論理レベルに応じて、通信バス１０の２線式通信ラインに大小２種類の電位差を生じさせ、通信バス１０上で“１”又は“０”の信号を通信する。また、マイコン３０の受信ポートＲｘは、トランシーバ３２のレシーバ３６に接続されている。レシーバ３６は、通信バス１０上の電位差を、マイコン３０における論理レベルに変換し、マイコン３０の受信ポートＲｘに出力する。
【００３３】
さらに、トランシーバ３２は、自ＥＣＵに向けられた個別の起動信号を識別する個別起動信号検出部を備えている。個別の起動信号は、通信フレームの先頭部分において送信される。そして、自ＥＣＵに向けられた個別の起動信号であることが識別された場合、個別起動信号検出部は、その個別起動信号に続く通信データの受信を可能とすべく、トランシーバ３２のレシーバ３６による出力を許可するように作動する。
【００３４】
個別起動信号検出部は、図２に示すように、デコーダ４０、メモリ４２、及び判定部４４から構成されている。デコーダ４０は、通信バス１０上の電位差を信号にデコードして判定部４４に出力する。メモリ４２には、予め自ＥＣＵを識別するための識別コードが記憶されている。判定部４４は、デコードされた信号が、記憶された識別コードに一致する場合、レシーバ３６による出力を許可する。
【００３５】
このような構成を採用したことにより、本実施形態では、車両の停止時などに、必ずしも全てのＥＣＵ１１〜１４、２０が同時に起動して動作する訳ではなく、一部のＥＣＵのみが起動して動作することが可能となる。そして、本実施形態による異常診断システムは、このように、複数のＥＣＵ１１〜１４，２０の中の一部のＥＣＵしか起動されない場合であっても、各ＥＣＵへの電源供給や電源そのものに不具合が生じた場合に、その不具合の発生箇所などを診断することを可能としたものである。以下、本実施形態による異常診断システムにおける異常診断の手法について、図３及び図５のフローチャートを参照しつつ詳細に説明する。
【００３６】
図３のフローチャートは、ＥＣＵ１１〜１４、２０が起動されてから、正常に動作が終了するまで、各ＥＣＵ１１〜１４、２０において継続的に実行される処理を示している。なお、正常に動作が終了するとは、必要な制御処理が終了してスリープしたり、電源がオフされたり場合や、イグニッションスイッチのオフにより動作を終了したりする場合をいう。一方、ＥＣＵ１１〜１４、２０の内部演算処理に異常が生じたり、供給電圧が低下したりしてリセットされた場合は、正常に動作を終了したとはみなされず、後述する積算値が維持される。
【００３７】
なお、各ＥＣＵは、内部演算処理に異常が生じた場合や、供給される電源電圧がしきい値よりも低下した場合に、自ＥＣＵをリセットする機能を備えている。さらに、ＥＣＵ内に、マイコンから出力されるランパルスに基づいて、マイコンの動作を監視し、異常が生じた場合にリセットするウオッチドック回路が設けられている。
【００３８】
ＥＣＵが起動すると、最初のステップＳ１００において、ＥＣＵに供給される電源電圧の前回検出値をゼロに設定する。なお、この前回検出値の設定値は、少なくとも電源電圧の検出値よりも小さければ、ゼロ以外の値であっても良い。
【００３９】
続くステップＳ１１０では、所定時間が経過したか否かが判定される。この所定時間は、例えば１秒に設定される。所定時間が経過したと判定されるとステップＳ１２０の処理に進み、所定時間が経過していないと判定されるとステップＳ１２０〜Ｓ１５０の処理をスキップして、ステップＳ１６０の処理に進む。後述するステップＳ１２０において、ＥＣＵに供給される電源電圧を取得する処理を実行するが、ステップＳ１１０の処理により、電源電圧の取得は、所定時間毎に実行されることになる。また、ＥＣＵが起動したとき、その起動から所定時間が経過するまでは、電源電圧の取得が行われることはない。これにより、ＥＣＵ起動直後に電源電圧が不安定になったとしても、そのような不安定な電源電圧を検出することを避けることが可能になる。なお、ＥＣＵが起動されて、最初に電源電圧を検出するまでの時間と、電源電圧の検出間隔を規定する所定時間とは異なっていても良い。
【００４０】
ステップＳ１２０では、ＥＣＵに供給されている電源電圧を検出する。具体的には、図２に示すように、各ＥＣＵはＡ／Ｄ変換器３８を内蔵しており、そのＡ／Ｄ変換器３８により各ＥＣＵに供給されている電源電圧をデジタル値に変換して、各ＥＣＵのマイコン３０に取り込む。続くステップＳ１３０では、今回の処理にて検出した電源電圧の値である電圧今回値から、記憶している電圧前回値を減算し、その減算結果の絶対値を電圧変動値として算出する。ステップＳ１４０では、算出済みの電圧変動積算値に対して、ステップＳ１３０にて算出した電圧変動値を加算することにより、電圧変動積算値を更新する。そして、ステップＳ１５０において、電圧今回値を電圧前回値に代入することにより、次回の電圧変動値の算出に備える。
【００４１】
続くステップＳ１６０では、ＥＣＵが正常に動作を終了したか否かを判定する、正常に動作を終了していないと判定された場合、すなわち、まだ動作を継続すべきと判定された場合には、ステップＳ１１０の処理に戻る。一方、正常に処理を終了したと判定された場合には、ステップＳ１７０に進み、ステップＳ１４０で算出した電圧変動積算値をクリアする。
【００４２】
このように、本実施形態では、動作している各ＥＣＵにおいて、供給されている電源電圧が所定時間ごとに繰り返し検出される。そして、検出された電源電圧が、前回の検出電圧から変動した場合、変動の大きさを示す変動値が算出されるとともに、算出された変動値が積算される。このため、例えば、あるＥＣＵにおける電源供給ラインに接触不良などがあり、電源電圧の変動が他のＥＣＵに比較して相対的に大きくなった場合、算出される電圧変動積算値は、他のＥＣＵに対して算出された電圧変動積算値よりも大きくなる。
【００４３】
さらに、ＥＣＵの内部異常や、供給電圧の低下により、ＥＣＵがリセットされたときには、再び、ステップＳ１００から処理が再開される。この場合、ステップＳ１７０の処理は実行されていないので、電圧変動積算値は、リセット前の値を保持している。そして、ステップＳ１００において電圧前回値が０Ｖに設定されることにより、ステップＳ１４０にて算出される電圧変動積算値は、一気に大幅に増加することになる。この結果、リセットが必要になるほどの異常が生じた場合には、算出される電圧変動積算値が、他のＥＣＵの電圧変動積算値よりも大幅に大きくなる。例えば、図４には、ＥＣＵ１３がリセットされた場合、その電圧変動積算値が、同時に動作しているＥＣＵ１４の電圧変動積算値よりも大幅に大きくなる例を示している。
【００４４】
また、例えば、電源である車載バッテリ１８自体に何らかの不具合が生じて、車載バッテリ１８から電源電圧の供給を受けているすべてのＥＣＵにおいて、各ＥＣＵに供給される電源電圧が低下し、各ＥＣＵがそれぞれリセットされた場合には、図４に示されるように、各ＥＣＵ１１〜１４の電圧変動積算値がいずれも増加することになる。
【００４５】
次に、図３のフローチャートに示す電圧変動積算処理により算出された電圧変動積算値を用いて、異常の発生や、異常が発生した場合の発生箇所などを診断するための処理を、図５のフローチャートを用いて説明する。なお、図５のフローチャートに示す処理も、各ＥＣＵが起動されてから正常に動作が終了するまで継続して繰り返し実行される。
【００４６】
まず、ステップＳ２００では、動作している全ての他のＥＣＵとの通信により、各ＥＣＵから電圧変動積算値を取得する。この点について補足すると、本実施形態では、上述したように、一部のＥＣＵのみが起動して所望の制御を実行することがある。このような場合、動作しているＥＣＵだけから電圧変動積算値が取得され、起動していないＥＣＵからは電圧変動積算値が取得されることはない。
【００４７】
続くステップＳ２１０では、取得した各ＥＣＵ及び自ＥＣＵの電圧変動積算値が、いずれも第２のしきい値電圧Ｖ２を超えているか否かを判定する。このとき、すべてのＥＣＵの電圧変動積算値が、いずれも第２のしきい値電圧Ｖ２を超えていると判定されると、電源である車載バッテリ１８になんらかの異常が生じているとみなすことができる。そのため、ステップＳ２２０に進んで、電源が異常である旨を記憶する。
【００４８】
続くステップＳ２３０では、取得した他ＥＣＵの電圧変動積算値の中から、１つの他ＥＣＵの電圧変動積算値を選択する。そして、ステップＳ２４０において、選択した他ＥＣＵの電圧変動積算値と自ＥＣＵの電圧変動積算値との差の絶対値が、第１のしきい値電圧Ｖ１を超えているか否かを判定する。上述したように、あるＥＣＵにおける電源供給ラインに接触不良などがあったり、有るＥＣＵにリセットがかかるような異常が生じたりした場合、そのＥＣＵの電圧変動積算値は、他のＥＣＵの電圧変動積算値よりも大きくなる。そのため、ステップＳ２４０において肯定的な判定がなされた場合、どちらかのＥＣＵに異常が生じている可能性が高い。
【００４９】
ステップＳ２５０では、どちらのＥＣＵに異常が生じているかを判定するために、自ＥＣＵの電圧変動積算値と、他ＥＣＵの電圧変動積算値と第１のしきい値電圧との加算値との大小比較を行う。このステップＳ２５０の判定処理において肯定的判定がなされた場合、自ＥＣＵの電圧変動積算値が他ＥＣＵの電圧変動積算値よりも、少なくとも第１のしきい値電圧以上大きいことを意味する。逆に否定的判定がなされた場合、他ＥＣＵの電圧変動積算値が自ＥＣＵの電圧変動積算値よりも、第１のしきい値電圧以上大きいことを意味する。
【００５０】
そのため、ステップＳ２５０において、肯定的判定がなされた場合には、ステップＳ２６０において、自ＥＣＵに異常が生じている旨を記憶する。逆に、否定的判定がなされた場合には、ステップＳ２７０において、他ＥＣＵに異常が生じている旨を記憶する。ただし、他ＥＣＵが異常である旨は、その他ＥＣＵにおいて記憶されるので、ステップＳ２７０の処理は任意であり、省略しても良い。また、自ＥＣＵが異常である旨を記憶することに加え、自ＥＣＵにリセットがかかった場合、そのリセット要因を記憶するようにしても良い。例えば、内部の演算処理異常によるリセット、外部のウオッチドックタイマによるリセット、あるいは、低電圧異常によるリセットかを記憶する。これにより。自ＥＣＵの異常の原因の究明を容易にすることができる。
【００５１】
ステップＳ２８０では、取得したすべてのＥＣＵの電圧変動積算値との比較処理を完了したか否かを判定する。この判定処理において、すべてのＥＣＵの電圧変動積算値との比較処理が完了したと判定されると、図５のフローチャートに示す処理を終了する。一方、すべてのＥＣＵの電圧変動積算値との比較処理が完了していないと判定されると、ステップＳ２３０の処理に戻り、比較する電圧変動積算値を変更し、ステップＳ２４０以降の処理を繰り返す。
【００５２】
以上のように、本実施形態では、ＥＣＵが起動された時、電圧前回値がゼロに設定されるので、電圧変動値は、ＥＣＵに供給されている電源電圧となる。このため、ＥＣＵが起動して、動作を開始した場合には、電圧変動積算値として、必ずゼロよりも大きな値を持つことになる。そして、異常診断処理では、動作しているＥＣＵから取得したゼロよりも大きい電圧変動積算値だけを用いて、異常診断が行われる。従って、一部のＥＣＵしか起動されない場合であっても、電源である車載バッテリ１８や、ネットワーク接続されたＥＣＵに何らかの異常が生じた場合、その異常の発生箇所などを精度良く検出することが可能となる。
【００５３】
以上、本発明の好ましい実施形態について説明したが、本発明は、上述した実施形態になんら制限されることなく、本発明の主旨を逸脱しない範囲において、種々変形して実施することが可能である。
【００５４】
例えば、上述した実施形態では、各ＥＣＵにおいて、電圧変動積算値に基づき異常診断を行う例について説明した。しかしながら、その異常診断は、すべてのＥＣＵにて行わずとも、代表となるいずれか１つもしくは複数のＥＣＵを決定し（例えば、電源制御ＥＣＵ２０）、その決定したＥＣＵにおいて行うようにしても良い。この場合、異常診断を行うＥＣＵは、各ＥＣＵから電圧変動積算値を収集するが、動作していないＥＣＵから電圧変動積算値を取得することはできないため、その動作していないＥＣＵの電圧変動積算値をゼロとする。そして、電圧変動積算値を相互比較する場合には、ゼロよりも大きい電圧変動積算値だけを用いることで、動作中のＥＣＵの電圧変動積算値だけを相互比較することができる。
【００５５】
また、上述した実施形態では、電圧変動積算値同士に第１のしきい値電圧Ｖ１よりも大きな差が生じているかを判定したが、この第１のしきい値電圧Ｖ１を、段階的に複数設定しても良い。このように、第１のしきい値電圧を段階的に複数設定することにより、異常の兆候が生じている状態であるか、異常がほぼ確定した状態であるかなど、異常の程度を判別することが可能になる。
【００５６】
また、上述した実施形態において、図３のフローチャートのステップＳ１３０において算出した電圧変動値を第３のしきい値電圧Ｖ３と比較し、第３のしきい値電圧Ｖ３以上の大きさを有している場合にのみ、電圧変動積算値を求める際の積算対象としても良い。これにより、ノイズ等の影響で電圧が多少変動した場合などは、積算対象とならないので、その影響を排除することができる。同様の目的は、例えば、算出した電圧変動値をフィルタ処理により平滑化し、その平滑化変動値を積算して電圧変動積算値を求めることによっても達成することができる。
【符号の説明】
【００５７】
１０  ＣＡＮバス
１１〜１４  ＥＣＵ
１８  車載バッテリ
２０  電源制御ＥＣＵ
２２  リレー
【図１】
2014227123.tif 000003
【図２】
2014227123.tif 000004
【図３】
2014227123.tif 000005
【図４】
2014227123.tif 000006
【図５】
2014227123.tif 000007