説明

車載電子制御装置

【課題】マイクロコンピュータの異常の詳細を適切に診断することができる車載電子制御装置を提供する。
【解決手段】マイクロコンピュータ(MCU2)の内部に、ハードウェア部21の主機能22の入出力を監視することで故障を検出する監視機能23と、ソフトウェア部24の主機能25の演算結果を監視することで異常を検出する監視機能26とを設ける。監視機能23は、ハードウェア部21の主機能22とは演算処理の特性が等しく且つ異なる実装とし、監視機能26は、ソフトウェア部24の主機能25とは演算処理の特性が等しく且つ異なる実装とする。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、マイクロコンピュータの故障/異常を監視する機能を有する車載電子制御装置に関するものである。
【背景技術】
【0002】
従来のCPU監視機能を有する車載電子制御装置としては、例えば特許文献1及び2に記載の技術がある。この技術は、上記監視機能としてロックステップ方式を採用したものであり、同一構成を有するA系とB系の2つの情報処理部における処理結果を照合する照合回路を備える。そして、照合回路による照合結果が不一致である場合に、A系又はB系が故障していると判定する。
また、上記監視機能として、制御CPUを監視CPUで監視する、所謂2CPU方式を採用したものもある(例えば、特許文献3参照)。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2010−262432号公報
【特許文献2】特開2010−160649号公報
【特許文献3】特開2006−344086号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、上記のようなロックステップ方式を採用した監視機能では、制御部と監視部とが同一コアを使用していると、コアの演算器に演算ミスが生じるような不具合があった場合に、異常として検出することができない。また、上記のような2CPU方式を採用した監視機能では、制御CPUの演算をきめ細かく診断することができない。
このように、異常の詳細を診断することができないため、異常発生時には、異常の詳細によらず一律に制御を停止していた。ところが、車両の大型化による制御停止時のドライバ負担や車両安全制御の規格化などの観点から、異常の詳細によっては異常発生時にも制御を続行することが望まれる。
そこで、本発明は、マイクロコンピュータの異常の詳細を適切に診断することができる車載電子制御装置を提供することを課題としている。
【課題を解決するための手段】
【0005】
上記課題を解決するために、本発明に係る車載電子制御装置の第一形態は、車両に搭載されたセンサからの検出信号に基づいて、アクチュエータの駆動信号を生成するマイクロコンピュータを備える車載電子制御装置であって、前記マイクロコンピュータは、ハードウェア部とソフトウェア部とを含んで構成されており、前記マイクロコンピュータの内部に設けられ、前記ハードウェア部の各要素とは演算処理の特性が等しく、且つ前記ハードウェア部の各要素の演算処理回路とは異なる実装で、前記ハードウェア部の各要素の異常を監視するハードウェア要素監視手段と、前記マイクロコンピュータの内部に設けられ、前記ソフトウェア部の各要素とは演算処理の特性が等しく、且つ前記ソフトウェア部の各要素の演算処理部とは異なる実装で、前記ソフトウェア部の各要素の異常を監視するソフトウェア要素監視手段と、を備えることを特徴としている。
【0006】
このように、マイクロコンピュータをハードウェア監視とソフトウェア監視とで総合監視するので、マイクロコンピュータの異常の詳細を診断することができる。そのため、マイクロコンピュータの異常発生時には、異常の詳細に応じた適切な処置が可能となる。また、監視用ハードウェア要素を、監視対象のハードウェア要素とは演算処理の特性が等しく、且つ監視対象のハードウェア要素とは異なる実装とするので、監視対象のハードウェア要素の入出力を監視することで故障を検出することができる。さらに、例えば、両者で処理完了までの遅延時間を異ならせることができるので、両者が共通して影響を受ける故障要因に対しても、適切に故障として検出することができる。監視用ソフトウェア要素についても同様である。
【0007】
また、上記において、前記ハードウェア要素監視手段は、監視用演算処理回路と比較回路とを備え、前記監視用演算処理回路を、監視対象のハードウェア要素の演算処理回路と同一の信号を入力したとき、前記監視対象のハードウェア要素の演算処理回路と同一の信号を出力するものとし、前記監視対象のハードウェア要素の演算処理回路での演算処理よりも簡素化した演算処理を行うようにしてもよい。
【0008】
これにより、監視対象のハードウェア要素の故障を適切に検出することができる。
さらに、上記において、前記監視用演算処理回路は、前記監視対象のハードウェア要素の演算処理回路とは異なるトランジスタ数で実装するようにしてもよい。
これにより、監視用演算処理回路を、監視対象のハードウェア要素の演算処理回路に対して簡素化した構造とすることができる。
【0009】
また、上記において、前記ソフトウェア要素監視手段は、監視用演算処理部と比較処理部とを備え、前記監視用演算処理部を、監視対象のソフトウェア要素の演算処理部と数式上同一となる演算処理を行うものとし、前記監視対象のソフトウェア要素の演算処理部での演算処理よりも簡素化した演算処理を行うようにしてもよい。
これにより、監視対象のソフトウェア要素の故障を適切に検出することができる。
さらにまた、上記において、前記監視用演算処理部は、前記監視対象のソフトウェア要素の演算処理部とは異なるインストラクション数で演算処理するようにしてもよい。
【0010】
これにより、監視用演算処理部の演算処理を、監視対象のソフトウェア要素の演算処理部の演算処理に対して簡素化したものとすることができる。
また、上記において、前記マイクロコンピュータの外部に設けられ、前記マイクロコンピュータの異常を監視する外部監視手段を備え、前記外部監視手段は、前記ハードウェア要素監視手段及び前記ソフトウェア要素監視手段が動作していないとき、これを前記マイクロコンピュータの異常として検出するようにしてもよい。
これにより、マイクロコンピュータをハードウェア監視、ソフトウェア監視、外部監視の3つで総合監視することができ、マイクロコンピュータの異常をより詳細に診断することができる。
【発明の効果】
【0011】
本発明の車載電子制御装置では、マイクロコンピュータのハードウェア部及びソフトウェア部を、これらとは異なる実装の監視用ハードウェア要素及び監視用ソフトウェア要素によって内部監視することが可能であるため、マイクロコンピュータの異常の詳細を適切に診断することができる。その結果、異常の詳細に応じた適切な処置が可能となる。
【図面の簡単な説明】
【0012】
【図1】本実施形態における車載電子制御装置の機能を示す図である。
【図2】ハードウェア部の監視機能を示すブロック図である。
【図3】MCU内部要素の診断例を示すブロック図である。
【図4】S/W要素の診断例を示すブロック図である。
【図5】異常診断領域の例を示す図である。
【図6】異常診断領域の例を示す図である。
【図7】故障処理回路の構成を示すブロック図である。
【発明を実施するための形態】
【0013】
以下、本発明の実施の形態を図面に基づいて説明する。
図1は、本実施形態における車載電子制御装置の機能を示す図である。
図中、符号1は車両の制御を行う車載電子制御装置であり、この車載電子制御装置は、マイクロコンピュータ(MCU)2を備える。MCU2は、ハードウェア部21とソフトウェア部22とを含んで構成されている。
【0014】
ハードウェア部21は、複数のMCU内部要素と、これらMCU内部要素のうちの主機能22の故障を監視する監視機能23とを備える。ここで、MCU内部要素とは、中央演算処理回路(CPU)やバス、ROM、RAM、周辺回路(タイマ、シリアル通信、CAN通信、外部出力ポート)などである。また、ソフトウェア部24は、ソフトウェア要素(S/W要素)と、S/W要素のうちの主機能25で実行する演算処理の異常を監視する監視機能26とを備える。
【0015】
すなわち、MCU2内部において、ハードウェア要素の監視とソフトウェア要素の監視とを行うようになっている。
MCU2には、車両に搭載されている各種センサ11で検出した検出信号が、入力I/F回路3を介して入力される。そして、MCU2は、入力された検出信号に基づいて、車両に搭載されたアクチュエータ(ブレーキアクチュエータ、アクティブサスペンション等)12を駆動制御するための指令信号を演算し、これをアクチュエータ駆動回路4に出力する。
【0016】
アクチュエータ駆動回路4は、ブリッジ回路(FET)、FET駆動回路、リレー、リレー駆動回路などを含んで構成されており、MCU2で演算した指令信号をもとにアクチュエータ12を駆動制御する。
また、車載電子制御装置1は、MCU2の外部でMCU2の故障を監視する故障処理回路5を備える。
なお、図1において、監視機能23がハードウェア要素監視手段に対応し、監視機能26がソフトウェア要素監視手段に対応し、故障処理回路5が外部監視手段に対応している。
【0017】
次に、MCU2のハードウェア部21の監視機能23について詳細に説明する。
図2は、ハードウェア部21の監視機能23を説明するためのブロック図である。この図2に示すように、複数のMCU内部要素(主機能)31に、それぞれ監視機能23として故障処理要素32が配置されている。ここで、MCU内部要素31と故障処理要素32とは、異なる構造で実装する。
【0018】
故障処理要素32は、監視対象のMCU内部要素31の入出力を監視し、当該MCU内部要素31が故障しているか否かを診断する。ここでは、図3に示すように、故障処理要素32は、演算処理回路(監視用演算処理回路)32aと比較回路32bとを備える。演算処理回路32aは、監視対象のMCU内部要素31を構成する演算処理回路31aとは異なる実装で、且つ演算処理回路31aと入出力特性が等しい。
【0019】
すなわち、演算処理回路32aは、その機能が正常である場合に演算処理回路31aと同一の信号を入力したとき、演算処理回路31aと同一の信号を出力するものであり、演算処理回路31aとは異なるトランジスタ数で実装する。故障処理用の演算処理は、診断のための演算値が求められればよいため、主機能の演算処理よりも簡素化できる。そのため、ここでは、トランジスタ数を異ならせて、演算処理回路32aを演算処理回路31aに対して簡素化した構造とする。
【0020】
そして、この演算処理回路32aに演算処理回路31aの入力信号を入力し、その出力信号を比較回路32bに入力する。すると、比較回路32bは、演算処理回路31aの出力信号と演算処理回路32aの出力とを比較する。このとき、同一結果となっていない場合には、MCU内部要素31が故障していると判断し、故障処理要素32は、図2に示すMCU内部要素(外部出力機能)33及び故障後処置要素34に故障を検出したことを示す診断結果を通知する。
MCU内部要素33は、故障処理要素32の診断結果を受けて、アクチュエータ駆動回路4へ故障後処置の実施指令を出力する。
【0021】
故障後処置の実施指令の例としては、例えば、アクチュエータ駆動回路4を構成するブリッジ回路のFET駆動回路への停止信号がある。この場合、当該停止信号が出力されることで、全FETがOFFし、アクチュエータ12を停止させることができる。また、故障後処置の実施指令の別の例としては、例えば、アクチュエータ駆動回路4のリレー駆動回路への停止信号がある。この場合、当該停止信号が出力されることで、リレーがOFFし、アクチュエータ12への電力供給を停止することができる。このように、本実施形態では、故障後処置としてアクチュエータ12の停止処置を適用する。
【0022】
また、故障後処置要素34は、故障処理要素32の診断結果を受けて、故障処理回路5へMCU内部要素31の故障を通知する。故障処理回路5は、故障後処置要素34から当該故障通知を受け取ると、アクチュエータ駆動回路4へ故障後処置の実施指令を出力する。
このように、通知手段を冗長化することにより、MCU内部要素33及び故障後処置要素34の何れかの通知機能が失われた状態でも、確実にアクチュエータ駆動回路4へ故障後処置の実施指令を出力することができる。
【0023】
次に、MCU2のソフトウェア部24の監視機能26について詳細に説明する。
図4は、S/W要素の診断例を示すブロック図である。この図4に示すように、S/W要素(主機能)41には、監視機能26として異常処理S/W42が配置されている。ここで、S/W要素41と異常処理S/W42とは、異なる構造で実装する。
異常処理S/W42は、監視対象のS/W要素41の演算結果を監視し、当該S/W要素に異常が発生しているか否かを診断する。ここでは、異常処理S/W42は、演算処理(監視用演算処理部)42aと、比較処理(比較処理部)42bと、制限処理42cとを備える。演算処理42aは、監視対象のS/W要素41の演算処理41aとは異なる実装で、且つ演算処理41aと同等の演算を行う。
【0024】
すなわち、演算処理42aは、演算処理41aとは異なるインストラクション数で、演算処理41aと数式上同一となる演算を行うものである。故障処理用の演算処理は、診断のための演算値が求められればよいため、主機能の演算処理よりも簡素化できる。そのため、ここでは、インストラクション数を異ならせて、演算処理42aを演算処理41aに対して簡素化したものとする。
【0025】
そして、この演算処理42aに演算処理41aの入力信号を入力し、その演算結果を比較処理42bに入力する。すると、比較処理42bは、演算処理41aの演算結果と演算処理42aの演算結果とを比較する。このとき、両者の誤差が所定の許容範囲内にない場合には、S/W要素41に異常が発生していると判断する。
すなわち、図5に示すように、主機能側の値(演算処理41aの演算結果)が監視側の値(演算処理42aの演算結果)に対して±所定範囲となる領域を許容領域とし、それ以外の斜線で示す領域を異常診断領域とする。そして、主機能側の値と監視側の値とによって決まる点が異常診断領域内にあるとき、上記誤差が許容範囲内にないと判断する。なお、図5の破線で示す直線は、主機能側の値と監視側の値とが等しい領域である。
【0026】
このように、所定の許容範囲を設定するため、演算処理42aを簡素化したことにより生じる演算誤差分を考慮した異常判定を行うことができる。
また、異常診断領域は、例えば図6に示すように設定することもできる。この例は、主機能側の値と監視側の値とが同符号で、且つ主機能側の値の絶対値が監視側の値の絶対値よりも小さい領域±所定範囲を許容範囲としたものである。すなわち、主機能側の値と監視側の値とによって決まる点が、図6の斜線に示す異常診断領域内にあるとき、上記誤差が許容範囲内にないと判断する。これにより、実際の動作の値が小さいものは、不具合発生に繋がる可能性が低いと判断して許容することができるので、むやみに異常判定されるのを抑制することができる。
【0027】
そして、比較処理42bは、S/W要素41に異常が発生していることを検出すると、その診断結果を図4の制限処理(制限手段)42cに出力する。
制限処理42cには、演算処理41aの演算結果が入力される。比較処理42bから異常を検出したことを示す診断結果が入力された場合には、制限処理42cは、演算処理41aの演算結果を許容できる制限値まで制限して出力する。ここで、上記制限値は、車両で許容できる範囲を実験的に検証して決定することが望ましい。一方、比較処理42bから異常を検出したことを示す診断結果が入力されていない場合には、制限処理42cは、演算処理41aの演算結果をそのまま出力する。
【0028】
次に、故障処理回路5の構成について具体的に説明する。
図7は、故障処理回路5の機能を示すブロック図である。故障処理回路5は、MCU2の故障をMCU2の外部から監視するものである。MCU2の監視方法としては、MCU2のクロック27を監視する方法と、MCU2の監視機能23及び26が動作していることを監視する方法とを採用する。
【0029】
すなわち、故障処理回路5は、MCU2のクロック27を監視するために、MCU2とは独立したクロック51と、クロック監視処理52とを備える。クロック監視処理52は、クロック27のクロックパルスとクロック51のクロックパルスとを比較することで、クロック27の故障を検出する。クロック27は、MCU2の一連の作業の基準となるものであり、例えばRC発振回路やセラミック振動子、水晶振動子、水晶振動子内蔵オシレータ、水晶振動子・分周器内蔵オシレータなどからなる。
【0030】
なお、図7では、クロック監視処理52を故障処理回路5内部のS/Wで実装する場合について示しているが、MCU2内部のH/WやS/Wで実装することもできる。
また、故障処理回路5は、MCU2の監視機能23の動作を監視するために、故障処理要素32のウォッチドッグタイマの出力パルスを監視するパルス監視処理53を備える。パルス監視処理53は、上記出力パルスが所定時間停止したことをもって、監視機能23の異常を検出する。
【0031】
なお、図7では監視機能23の異常検出についてのみ示しているが、監視機能26(異常処理S/W42)についても同様の方法で異常を検出するものとする。
すなわち、監視機能26(異常処理S/W42)が正しく実行されたときにウォッチドッグタイマからパルスを出力することによって、監視機能26が実行されない状態(監視されていない状態)をMCU2の外部の故障処理回路5で診断することができる。
【0032】
そして、故障処理回路5は、クロック監視処理52及びパルス監視処理53の少なくとも一方でMCU2の故障を検出すると、アクチュエータ12を停止させるべく、アクチュエータ駆動回路4に対して故障後処置の実施指令を出力する。
このように、本実施形態では、MCUをハードウェア監視、ソフトウェア監視、外部監視の3つで総合監視するので、MCUの異常を詳細に監視することができる。
【0033】
すなわち、ハードウェア監視においては、MCU内部要素ごとに故障処理要素を配置してMCU内部要素の入出力信号を監視するので、MCU内部要素の故障をきめ細かく診断することができる。
また、このとき、故障処理要素を監視対象のMCU内部要素とは異なる構造で実装するので、例えば、両者で処理完了までの遅延時間を異ならせることができる。その結果、両者に共通して影響を受ける故障要因に対しても、適切に故障として検出することができる。さらに、トランジスタ数を少なくするなどにより、故障処理要素を監視対象のMCU内部要素よりも簡素化した構造で実装するので、比較的簡易且つ安価に故障処理要素を設けることができる。
【0034】
さらに、上記ハードウェア監視の他に、MCU内部でソフトウェア監視を行うので、ハードウェア監視の故障処理要素で検出しきれない演算不具合を検出することができる。
このとき、ソフトウェア監視においては、S/W要素に異常処理S/Wを配置してS/W要素の演算結果を監視するので、S/W要素の異常を適切に診断することができる。さらに、異常処理S/Wを監視対象のS/W要素とは異なる構造で実装するので、例えば、両者で演算に使用されるインストラクションを異ならせることができる。その結果、両者に共通して影響を受ける異常要因に対しても、適切に異常として検出することができる。
【0035】
また、演算結果の比較に際し、所定の許容範囲を設定するので、異常処理S/Wを簡素化した構造としたことにより生じる演算誤差を考慮した異常診断を行うことができる。例えば、監視対象のS/W要素の演算結果と異常処理S/Wの演算結果とが同符号であり、且つ監視対象のS/W要素の演算結果の絶対値が異常処理S/Wの演算結果の絶対値よりも小さい範囲を、上記許容範囲とする。これにより、監視対象のS/W要素の演算結果が、アクチュエータの実際の制御動作が小さく不具合を発生する動作に繋がりにくいような値の場合には、監視対象のS/W要素の演算結果と異常処理S/Wの演算結果とに比較的大きな誤差が生じている場合でも許容することができる。そのため、むやみに異常診断するのを抑制することができる。
【0036】
そして、ハードウェア監視においてMCU内部要素の故障を検出した場合には、アクチュエータを停止する処置を行い、ソフトウェア監視においてS/W要素の異常を検出した場合には、S/W要素の演算結果を許容範囲内に制限する補正を行って、アクチュエータの駆動制御を続行する処置を行う。
車両に搭載される電子制御用MCUは、異常発生時には異常の詳細によらず制御を停止させるのが一般的であった。ところが、車両の大型化による制御停止時のドライバ負担や車両安全制御の規格化などの観点から、異常発生時にも異常の詳細によっては制御を続行させる必要がある。本実施形態では、MCUの異常をきめ細かく診断することができるので、異常の詳細に応じて制御を停止したり制御を続行したりすることができるなど、適切な処置を行うことができる。
【0037】
さらに、MCU外部でMCUの故障を監視する外部監視を行うので、MCU内部の監視機能であるハードウェア監視とソフトウェア監視とが共通して影響を受ける要因に対して診断を実施することができる。
例えば、MCUの外部にMCUとは独立したクロックを配置し、MCUのクロックを監視することで、MCU内部の各監視機能が共通して影響を受けるクロック異常が発生し、MCU内部で故障/異常の診断が行えない場合には、これを異常として検出することができる。また、MCU内部の各監視機能のウォッチドッグタイマの出力パルスを監視することで、MCU内部の各監視機能が動作していない場合には、これを異常として検出することができる。このように、MCUの機能不全をMCUの外部で検出し、処置することができる。
【0038】
そして、この外部監視においては、自身の監視機能でMCUの故障を検出した場合や、異常処理要素からMCU内部要素の故障を検出したことを示す情報を取得した場合に、アクチュエータを停止する処置を行う。すなわち、ハードウェア監視でMCU内部要素の故障を検出した場合には、ハードウェア監視によって直接アクチュエータを停止する処置を行う手段と、外部監視を介してアクチュエータを停止する処置を行う手段とを併用することができる。その結果、MCU内部要素の故障が発生した場合には、確実にアクチュエータを停止することができる。
【符号の説明】
【0039】
1…車載電子制御装置、2…マイクロコンピュータ(MCU)、3…入力I/F回路、4…アクチュエータ駆動回路、5…故障処理回路、11…センサ、12…アクチュエータ、21…ハードウェア部、22…H/W主機能、23…H/W監視機能、24…ソフトウェア部、25…S/W主機能、26…S/W監視機能、27…クロック、31…MCU内部要素(主機能)、31a…演算処理回路、32…故障処理要素、32a…演算処理回路、32b…比較回路、33…MCU内部要素(外部出力機能)、34…故障後処置要素、41…S/W要素、41a…演算処理、42…異常処理S/W、42a…演算処理、42b…比較処理、42c…制限処理、51…クロック、52…クロック監視処理、53…パルス監視処理

【特許請求の範囲】
【請求項1】
車両に搭載されたセンサからの検出信号に基づいて、アクチュエータの駆動信号を生成するマイクロコンピュータを備える車載電子制御装置であって、
前記マイクロコンピュータは、ハードウェア部とソフトウェア部とを含んで構成されており、
前記マイクロコンピュータの内部に設けられ、前記ハードウェア部の各要素とは演算処理の特性が等しく、且つ前記ハードウェア部の各要素の演算処理回路とは異なる実装で、前記ハードウェア部の各要素の異常を監視するハードウェア要素監視手段と、
前記マイクロコンピュータの内部に設けられ、前記ソフトウェア部の各要素とは演算処理の特性が等しく、且つ前記ソフトウェア部の各要素の演算処理部とは異なる実装で、前記ソフトウェア部の各要素の異常を監視するソフトウェア要素監視手段と、を備えることを特徴とする車載電子制御装置。
【請求項2】
前記ハードウェア要素監視手段は、監視用演算処理回路と比較回路とを備え、
前記監視用演算処理回路は、監視対象のハードウェア要素の演算処理回路と同一の信号を入力したとき、前記監視対象のハードウェア要素の演算処理回路と同一の信号を出力するものであり、前記監視対象のハードウェア要素の演算処理回路での演算処理よりも簡素化した演算処理を行うことを特徴とする請求項1に記載の車載電子制御装置。
【請求項3】
前記監視用演算処理回路は、前記監視対象のハードウェア要素の演算処理回路とは異なるトランジスタ数で実装することを特徴とする請求項2に記載の車載電子制御装置。
【請求項4】
前記ソフトウェア要素監視手段は、監視用演算処理部と比較処理部とを備え、
前記監視用演算処理部は、監視対象のソフトウェア要素の演算処理部と数式上同一となる演算処理を行うものであり、前記監視対象のソフトウェア要素の演算処理部での演算処理よりも簡素化した演算処理を行うことを特徴とする請求項1〜3の何れか1項に記載の車載電子制御装置。
【請求項5】
前記監視用演算処理部は、前記監視対象のソフトウェア要素の演算処理部とは異なるインストラクション数で演算処理することを特徴とする請求項4に記載の車載電子制御装置。
【請求項6】
前記マイクロコンピュータの外部に設けられ、前記マイクロコンピュータの異常を監視する外部監視手段を備え、
前記外部監視手段は、前記ハードウェア要素監視手段及び前記ソフトウェア要素監視手段が動作していないとき、これを前記マイクロコンピュータの異常として検出することを特徴とする請求項1〜5の何れか1項に記載の車載電子制御装置。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate


【公開番号】特開2013−12220(P2013−12220A)
【公開日】平成25年1月17日(2013.1.17)
【国際特許分類】
【出願番号】特願2012−186547(P2012−186547)
【出願日】平成24年8月27日(2012.8.27)
【分割の表示】特願2011−144690(P2011−144690)の分割
【原出願日】平成23年6月29日(2011.6.29)
【出願人】(000004204)日本精工株式会社 (8,378)
【Fターム(参考)】