(57)【要約】【課題】自装置で正常な演算結果を得ることができるにも拘らず自装置での演算結果が用いられないようにする、無駄なフェールセーフを抑える。【解決手段】第１演算装置１１ａ、第２演算装置１１ｂ、及び第３演算装置１１ｃと、安全処理ソフト１０２の同一の演算をそれぞれ実行させる演算装置を、２つ選択する入力選択部１２と、入力選択部１２で選択した２つの演算装置のそれぞれで安全処理ソフト１０２の同一の演算を実行して得られた演算結果を比較する演算結果比較部１４と、演算結果比較部１４で比較した演算結果が不一致となる演算装置の組があった場合であっても、演算結果が一致する演算装置の組が他にある場合には、フェールセーフを実行せずに、演算結果が一致した演算装置での演算結果を出力する出力選択部１６とを備える。【選択図】図１
2018067251.tif 000002
【特許請求の範囲】
【請求項１】
３つ以上の演算装置（１１ａ，１１ｂ，１１ｃ）と、
自装置で実行するソフトウェア（１０２）の同一の演算をそれぞれ実行させる前記演算装置を、前記演算装置から２つ選択する選択部（１２）と、
前記選択部で選択した２つの前記演算装置のそれぞれで前記ソフトウェアの同一の演算を実行して得られた演算結果を比較する比較部（１４）と、
前記比較部で比較した演算結果が不一致となる前記演算装置の組があった場合であっても、前記比較部で比較する演算結果が一致する前記演算装置の組が他にある場合には、自装置での前記ソフトウェアの演算結果を用いられないようにするフェールセーフを実行せずに、前記比較部で比較した演算結果が一致した前記演算装置での演算結果を、前記ソフトウェアの演算結果として用いられるようにする切替処理部（１６）とを備える電子制御装置。
【請求項２】
請求項１において、
前記切替処理部は、前記演算装置から選択する前記演算装置の組のいずれにも、前記比較部で比較する演算結果が一致する前記演算装置の組がない場合には、前記フェールセーフを実行する電子制御装置。
【請求項３】
請求項１又は２において、
前記比較部で比較する演算結果が不一致であった場合に、前記選択部で新たな前記演算装置の組を選択し、この新たな前記演算装置の組について前記比較部で演算結果を比較する処理を繰り返す一方、前記比較部で比較する演算結果が一致した場合には、この処理を行わない電子制御装置。
【請求項４】
請求項３において、
前記演算装置として少なくとも第１演算装置（１１ａ）と第２演算装置（１１ｂ）と第３演算装置（１１ｃ）とを備え、
前記選択部は、最初に前記第１演算装置と前記第２演算装置との組を選択し、前記比較部で前記第１演算装置と前記第２演算装置との演算結果を比較した結果が不一致であった場合に、前記第１演算装置と前記第３演算装置との組を選択するものであり、
前記第１演算装置と前記第２演算装置との組に加え、前記第１演算装置と前記第３演算装置との組も、前記比較部で演算結果を比較した結果が不一致であった場合に、前記第１演算装置に異常があることを示す異常情報を記憶する異常情報記憶部（１５）を備える電子制御装置。
【請求項５】
請求項４において、
前記異常情報記憶部は、前記第１演算装置と前記第２演算装置との組についての前記比較部で演算結果を比較した結果が不一致であったのに対し、前記第１演算装置と前記第３演算装置との組についての前記比較部で演算結果を比較した結果が一致であった場合に、前記第２演算装置に異常があることを示す異常情報を記憶する電子制御装置。
【請求項６】
請求項４又は５において、
前記異常情報記憶部は、前記第１演算装置と前記第２演算装置との組についての前記比較部で演算結果を比較した結果が一致であった場合に、前記第１演算装置及び前記第２演算装置に異常があることを示す異常情報を記憶しない電子制御装置。
【請求項７】
請求項１〜６のいずれか１項において、
車両に搭載され、前記車両に搭載された機器の制御を行うものであり、
前記ソフトウェアは、自装置による前記車両に搭載された機器の制御の安全を担保するための安全処理ソフトウェアである電子制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、自装置に備えられる演算装置のうちから異常がある演算装置を特定する電子制御装置に関するものである。
【背景技術】
【０００２】
特許文献１には、車両制御ＥＣＵに備えられる２つのＣＰＵで同じ演算処理を行い、両者の演算結果が一致しなかった場合に、この車両制御ＥＣＵでの演算結果が用いられないようフェールセーフを行う技術が開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００３−１５７４３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
特許文献１に開示の技術では、２つのＣＰＵのうちの一方が正常に演算できるとしても、もう一方に異常がある場合にはフェールセーフが行われ、この２つのＣＰＵを備える車両制御ＥＣＵでの演算結果が用いられなくなってしまう。よって、この２つのＣＰＵのうちの正常に演算できるＣＰＵでの演算結果を用いれば、フェールセーフを行う必要がないにも拘らず、無駄にフェールセーフが行われてしまう問題が生じる。
【０００５】
本発明は、上記従来の問題点に鑑みなされたものであって、その目的は、自装置で正常な演算結果を得ることができるにも拘らず自装置での演算結果が用いられないようにする、無駄なフェールセーフを抑えることが可能な電子制御装置を提供することにある。
【課題を解決するための手段】
【０００６】
上記目的は独立請求項に記載の特徴の組み合わせにより達成され、また、下位請求項は、発明の更なる有利な具体例を規定する。特許請求の範囲に記載した括弧内の符号は、一つの態様として後述する実施形態に記載の具体的手段との対応関係を示すものであって、本発明の技術的範囲を限定するものではない。
【０００７】
上記目的を達成するために、本発明の電子制御装置は、３つ以上の演算装置（１１ａ，１１ｂ，１１ｃ）と、自装置で実行するソフトウェア（１０２）の同一の演算をそれぞれ実行させる演算装置を、演算装置から２つ選択する選択部（１２）と、選択部で選択した２つの演算装置のそれぞれでソフトウェアの同一の演算を実行して得られた演算結果を比較する比較部（１４）と、比較部で比較した演算結果が不一致となる演算装置の組があった場合であっても、比較部で比較する演算結果が一致する演算装置の組が他にある場合には、自装置でのソフトウェアの演算結果を用いられないようにするフェールセーフを実行せずに、比較部で比較した演算結果が一致した演算装置での演算結果を、ソフトウェアの演算結果として用いられるようにする切替処理部（１６）とを備える。
【０００８】
３つ以上の演算装置から選択する２つの演算装置の組に、ソフトウェアの同一の演算を実行して得られた演算結果が不一致となる組がある場合、この組の演算装置のいずれかに異常が生じていると言える。一方、演算装置の他の組に、ソフトウェアの同一の演算を実行して得られた演算結果が一致する組がある場合には、この組の演算装置のいずれにも異常が生じていないと言える。よって、本発明の電子制御装置では、異常が生じている演算装置がある場合であっても、異常が生じていない演算装置が残っている場合には、自装置でのソフトウェアの演算結果を用いられないようにするフェールセーフを実行せずに、異常が生じていない演算装置での演算結果を、自装置で実行するソフトウェアの演算結果として用いられるようにできる。従って、自装置で正常な演算結果を得ることができるにも拘らず自装置での演算結果が用いられないようにする、無駄なフェールセーフを抑えることが可能になる。
【図面の簡単な説明】
【０００９】
【図１】ＥＣＵ１の概略的な構成の一例を示す図である。
【図２】ＥＣＵ１での異常対処関連処理の流れの一例を示すフローチャートである。
【図３】フェールセーフ実行までのＥＣＵ１での異常対処関連処理の流れの一例を示すシーケンス図である。
【発明を実施するための形態】
【００１０】
図面を参照しながら、開示のための複数の実施形態を説明する。なお、説明の便宜上、複数の実施形態の間において、それまでの説明に用いた図に示した部分と同一の機能を有する部分については、同一の符号を付し、その説明を省略する場合がある。同一の符号を付した部分については、他の実施形態における説明を参照することができる。
【００１１】
（実施形態１）
＜ＥＣＵ１の概略構成＞
以下、本発明の実施形態１について図面を用いて説明する。図１に示すＥＣＵ１は、車両に搭載されて、その車両に搭載された機器の制御を行う電子制御装置である。一例として、ＥＣＵ１は、スロットルバルブの開度、燃料噴射量、及び点火タイミング等を制御するエンジンＥＣＵであるものとする。
【００１２】
また、ＥＣＵ１は、図１に示すように、ＲＯＭ１０、第１演算装置１１ａ、第２演算装置１１ｂ、及び第３演算装置１１ｃ、入力選択部１２、演算結果選択部１３、演算結果比較部１４、異常情報記憶部１５、及び出力選択部１６を備えている。
【００１３】
ＲＯＭ１０は、不揮発性のメモリであって、制御ソフト１０１及び安全処理ソフト１０２を格納している。制御ソフト１０１は、車両に搭載された機器の制御を行うためのソフトウェアプログラム（以下、ソフトウェア）である。一例としては、制御ソフト１０１は、燃料噴射量等を制御するためのソフトウェアである。安全処理ソフト１０２は、制御ソフトの安全を担保するためのソフトウェアである。例えば、安全処理ソフト１０２は、ＥＣＵ１による制御の異常及びＥＣＵ１の異常の少なくともいずれかを検出するためのソフトウェアである。この安全処理ソフト１０２が請求項のソフトウェア及び安全処理ソフトウェアに相当する。なお、制御ソフト１０１及び安全処理ソフト１０２は、非遷移的実体的記録媒体（non-transitory tangible storage medium）に格納されていればよく、具体的な記憶媒体はＲＯＭでなくともよい。
【００１４】
第１演算装置１１ａ、第２演算装置１１ｂ、及び第３演算装置１１ｃは、制御ソフト１０１及び安全処理ソフト１０２の演算を実行可能な演算装置である。また、第１演算装置１１ａ、第２演算装置１１ｂ、及び第３演算装置１１ｃは、それぞれ独立した物理プロセッサであるものとする。第１演算装置１１ａ、第２演算装置１１ｂ、及び第３演算装置１１ｃとしては、例えばＣＰＵを用いることができる。
【００１５】
入力選択部１２は、第１演算装置１１ａ、第２演算装置１１ｂ、及び第３演算装置１１ｃから、安全処理ソフト１０２を割り振る演算装置を２つ選択し、選択した演算装置に安全処理ソフト１０２を割り振る。この入力選択部１２が請求項の選択部に相当する。また、入力選択部１２は、第１演算装置１１ａ、第２演算装置１１ｂ、及び第３演算装置１１ｃから、制御ソフト１０１を割り振る演算装置を１つ選択し、選択した演算装置に制御ソフト１０１を割り振る。
【００１６】
演算結果選択部１３は、入力選択部１２で選択した２つの演算装置のそれぞれで安全処理ソフト１０２の同一の演算を実行して得られた演算結果を選択し、演算結果比較部１４に出力する。演算結果比較部１４は、演算結果選択部１３から入力された演算結果を比較する。この演算結果比較部１４が請求項の比較部に相当する。
【００１７】
異常情報記憶部１５は、第１演算装置１１ａ、第２演算装置１１ｂ、及び第３演算装置１１ｃのうちに異常のある演算装置が判明した場合には、その演算装置に異常があることを示す異常情報が記憶される。異常情報記憶部１５は、例えばＲＡＭ等の電気的に書き換え可能なメモリとすればよい。異常情報記憶部１５に異常情報が記憶されている演算装置については、ＥＣＵ１が、例えばその演算装置で演算を行わせないようにしたり、その演算装置での演算結果を用いないようにしたりすればよい。他にも、異常情報記憶部１５に記憶されている異常情報が、車両の故障診断情報として用いられる構成としてもよい。
【００１８】
出力選択部１６は、制御ソフト１０１を割り振った演算装置での演算結果を出力する。この演算結果は、ＥＣＵ１が制御する機器の制御に用いられる。また、出力選択部１６は、安全処理ソフト１０２を割り振った演算装置のうち、異常のない演算装置での演算結果を出力する。この演算結果は、ＥＣＵ１による制御の異常及び／又はＥＣＵ１の異常を検出するのに用いられる。さらに、出力選択部１６は、第１演算装置１１ａ、第２演算装置１１ｂ、及び第３演算装置１１ｃのうちの２つの演算装置の組の全ての組について、演算結果比較部１４での比較結果が不一致の場合には、フェールセーフを実行する。この出力選択部１６が請求項の切替処理部に相当する。
【００１９】
なお、ここで言うところのフェールセーフの一例としては、安全処理ソフト１０２を演算装置で演算させないようにすることが挙げられる。他にも、安全処理ソフト１０２を演算装置で演算させた演算結果を、ＥＣＵ１が制御する燃料噴射量の異常及び／又はＥＣＵ１の演算装置自体の異常の検出に用いないようにすることも挙げられる。
【００２０】
＜ＥＣＵ１での異常対処関連処理＞
続いて、図２のフローチャート及び図３のシーケンス図を用いて、ＥＣＵ１での演算装置の異常に対する対処に関連する処理（以下、異常対処関連処理）の流れの一例について説明を行う。まず、図２のフローチャートを用いて、ＥＣＵ１での異常対処関連処理の流れの一例を説明する。図２のフローチャートは、例えば自車のイグニッション電源がオンになった場合に、一定周期で実行される構成とすればよい。
【００２１】
ステップＳ１では、入力選択部１２が第１演算装置１１ａと第２演算装置１１ｂとを選択し、第１演算装置１１ａと第２演算装置１１ｂとに安全処理ソフト１０２を割り振る。そして、第１演算装置１１ａと第２演算装置１１ｂとで安全処理ソフト１０２の同一の演算を実行する。なお、この際、入力選択部１２が第３演算装置１１ｃに制御ソフト１０１を割り振る構成としてもよいし、第３演算装置１１ｃに制御ソフト１０１を割り振らない構成としてもよい。
【００２２】
ステップＳ２では、演算結果選択部１３が、Ｓ１で実行した第１演算装置１１ａと第２演算装置１１ｂとの演算結果を選択して演算結果比較部１４に出力し、演算結果比較部１４が、第１演算装置１１ａと第２演算装置１１ｂとの演算結果を比較する。そして、第１演算装置１１ａと第２演算装置１１ｂとの演算結果が一致した場合（Ｓ２でＹＥＳ）には、これらの演算結果のいずれかを出力選択部１６から出力し、異常対処関連処理を終了する。一方、第１演算装置１１ａと第２演算装置１１ｂとの演算結果が不一致であった場合（Ｓ２でＮＯ）には、ステップＳ３に移る。
【００２３】
ステップＳ３では、入力選択部１２が第１演算装置１１ａと第３演算装置１１ｃとを選択し、第１演算装置１１ａと第３演算装置１１ｃとに安全処理ソフト１０２を割り振る。そして、第１演算装置１１ａと第３演算装置１１ｃとで安全処理ソフト１０２の同一の演算を実行する。なお、この際、入力選択部１２が第２演算装置１１ｂに制御ソフト１０１を割り振る構成としてもよいし、第２演算装置１１ｂに制御ソフト１０１を割り振らない構成としてもよい。
【００２４】
ステップＳ４では、演算結果選択部１３が、Ｓ３で実行した第１演算装置１１ａと第３演算装置１１ｃとの演算結果を選択して演算結果比較部１４に出力し、演算結果比較部１４が、第１演算装置１１ａと第３演算装置１１ｃとの演算結果を比較する。そして、第１演算装置１１ａと第３演算装置１１ｃとの演算結果が一致した場合（Ｓ４でＹＥＳ）には、ステップＳ５に移る。一方、第１演算装置１１ａと第３演算装置１１ｃとの演算結果が不一致であった場合（Ｓ４でＮＯ）には、ステップＳ６に移る。
【００２５】
ステップＳ５では、演算結果比較部１４が、第２演算装置１１ｂに異常があることを示す異常情報を異常情報記憶部１５に記憶する。また、Ｓ５では、Ｓ３で実行した第１演算装置１１ａと第３演算装置１１ｃとの演算結果のいずれかを出力選択部１６から出力し、異常対処関連処理を終了する。これは、同一の演算を実行した演算結果が一致した第１演算装置１１ａと第３演算装置１１ｃとは、いずれも正常であると言えるのに対し、正常と言える第１演算装置１１ａと演算結果が不一致である第２演算装置１１ｂは異常と言えるためである。
【００２６】
また、ステップＳ６では、演算結果比較部１４が、第１演算装置１１ａに異常があることを示す異常情報を異常情報記憶部１５に記憶する。これは、同一の演算を実行した演算結果が第２演算装置１１ｂと第３演算装置１１ｃとのいずれとも不一致である第１演算装置１１ａは異常と言えるためである。なお、Ｓ６の処理を省略する構成としてもよい。
【００２７】
ステップＳ７では、入力選択部１２が第２演算装置１１ｂと第３演算装置１１ｃとを選択し、第２演算装置１１ｂと第３演算装置１１ｃとに安全処理ソフト１０２を割り振る。そして、第２演算装置１１ｂと第３演算装置１１ｃとで安全処理ソフト１０２の同一の演算を実行する。
【００２８】
ステップＳ８では、演算結果選択部１３が、Ｓ７で実行した第２演算装置１１ｂと第３演算装置１１ｃとの演算結果を選択して演算結果比較部１４に出力し、演算結果比較部１４が、第２演算装置１１ｂと第３演算装置１１ｃとの演算結果を比較する。そして、第１演算装置１１ａと第３演算装置１１ｃとの演算結果が一致した場合（Ｓ８でＹＥＳ）には、これらの演算結果のいずれかを出力選択部１６から出力し、異常対処関連処理を終了する。一方、第２演算装置１１ｂと第３演算装置１１ｃとの演算結果が不一致であった場合（Ｓ８でＮＯ）には、ステップＳ９に移る。
【００２９】
ステップＳ９では、入力選択部１２が第２演算装置１１ｂと第３演算装置１１ｃとを選択し、第２演算装置１１ｂと第３演算装置１１ｃとに安全処理ソフト１０２を割り振る。そして、第２演算装置１１ｂと第３演算装置１１ｃとで安全処理ソフト１０２のフェールセーフに関する演算を実行する。第１演算装置１１ａに異常がある上に、第２演算装置１１ｂと第３演算装置１１ｃとで同一の演算を実行した演算結果が不一致の場合、第２演算装置１１ｂと第３演算装置１１ｃとのいずれかが正常であって一方が異常であると言える。よって、第２演算装置１１ｂと第３演算装置１１ｃとの両方でフェールセーフに関する演算を実行することで、正常な演算装置によってフェールセーフを実行することができることになる。
【００３０】
続いて、図３のシーケンス図を用いて、フェールセーフ実行までのＥＣＵ１での異常対処関連処理の流れの説明を行う。図３中の「ｏｐｔ」は、演算結果比較部１４での比較結果が不一致である条件を満たした場合のみ実行される処理を表している。
【００３１】
図３に示すように、まずは、入力選択部１２が第１演算装置１１ａと第２演算装置１１ｂとに安全処理ソフト１０２を割り振り、第１演算装置１１ａと第２演算装置１１ｂとで安全処理ソフト１０２の同一の演算を実行する。そして、演算結果比較部１４が、第１演算装置１１ａと第２演算装置１１ｂとの演算結果を比較し、比較結果が不一致であった場合に、次の処理が行われる。
【００３２】
次の処理として、入力選択部１２が第１演算装置１１ａと第３演算装置１１ｃとに安全処理ソフト１０２を割り振り、第１演算装置１１ａと第３演算装置１１ｃとで安全処理ソフト１０２の同一の演算を実行する。そして、演算結果比較部１４が、第１演算装置１１ａと第３演算装置１１ｃとの演算結果を比較し、比較結果が不一致であった場合に、次の処理が行われる。
【００３３】
次の処理として、入力選択部１２が第２演算装置１１ｂと第３演算装置１１ｃとに安全処理ソフト１０２を割り振り、第２演算装置１１ｂと第３演算装置１１ｃとで安全処理ソフト１０２の同一の演算を実行する。そして、演算結果比較部１４が、第２演算装置１１ｂと第３演算装置１１ｃとの演算結果を比較し、比較結果が不一致であった場合に、次の処理が行われる。
【００３４】
次の処理として、入力選択部１２が第２演算装置１１ｂと第３演算装置１１ｃとに再度安全処理ソフト１０２を割り振り、第２演算装置１１ｂと第３演算装置１１ｃとで安全処理ソフト１０２のフェールセーフに関する同一の演算を実行する。これにより、図２のフローチャートの説明でも前述したように、第２演算装置１１ｂと第３演算装置１１ｃとのうちのいずれか正常な演算装置からフェールセーフが実行される。
【００３５】
以上のように、異常対処関連処理では、演算結果比較部１４で比較する演算結果が不一致であった場合に、入力選択部１２で新たな演算装置の組を選択し、この新たな演算装置の組について演算結果比較部１４で演算結果を比較する処理を繰り返す。この新たな組に切り替えての処理は、演算結果比較部１４で比較する演算結果一が一致するか、若しくは全ての組についての比較が終了した場合に終了する。これにより、全ての組についての比較が終了する前に、いずれかの組で演算結果が一致した場合には、その組以降の組についての入力選択部１２での選択及び演算結果比較部１４での比較の処理を行わないで済む。よって、全ての組について処理を行う必要のない場合に、無駄な処理を軽減することが可能になる。
【００３６】
実施形態１の構成によれば、前述したように、第１演算装置１１ａ、第２演算装置１１ｂ、及び第３演算装置１１ｃのうちの１つの演算装置に異常が生じた場合でも、フェールセーフを実行せずに、同一の演算を実行して得られた演算結果が一致する演算装置の演算結果を用いることになる。同一の演算を実行して得られた演算結果が一致する演算装置は、異常が生じていない演算装置と言える。よって、自装置で正常な演算結果を得ることができるにも拘らず自装置での演算結果が用いられないようにする、無駄なフェールセーフを抑えることが可能になる。
【００３７】
（実施形態２）
実施形態１では、演算結果に異常のある演算装置が判明した場合に、その演算装置に異常があることを示す異常情報を異常情報記憶部１５に記憶する構成を示したが、必ずしもこれに限らない。例えば、ＥＣＵ１に異常情報記憶部１５を備えず、異常情報を記憶しない構成としてもよい。
【００３８】
（実施形態３）
実施形態１では、演算結果比較部１４で比較する演算結果が不一致であった場合に、入力選択部１２で新たな演算装置の組を選択し、この新たな演算装置の組について演算結果比較部１４で演算結果を比較する処理を繰り返す構成を示したが、必ずしもこれに限らない。例えば、入力選択部１２が第１演算装置１１ａ、第２演算装置１１ｂ、及び第３演算装置１１ｃの全ての演算装置を選択して安全処理ソフト１０２を割り振り、全ての演算装置に同一の演算を実行させた上で、全ての演算装置の組み合わせについて演算結果比較部１４で演算結果を比較する構成としてもよい。そして、演算結果が一致する組が１組でもあった場合には、その組の演算装置の演算結果を出力選択部１６が出力する構成とすればよい。なお、演算結果が一致する組が１組もなかった場合には、安全処理ソフト１０２のフェールセーフを行う部材によってフェールセーフを実行する構成とすればよい。
【００３９】
（実施形態４）
実施形態１では、第１演算装置１１ａ、第２演算装置１１ｂ、及び第３演算装置１１ｃの３つの演算装置である構成を示したが、必ずしもこれに限らない。例えば、４つ以上の演算装置である構成としてもよい。
【００４０】
なお、本発明は、上述した各実施形態に限定されるものではなく、請求項に示した範囲で種々の変更が可能であり、異なる実施形態にそれぞれ開示された技術的手段を適宜組み合わせて得られる実施形態についても本発明の技術的範囲に含まれる。
【符号の説明】
【００４１】
１  ＥＣＵ（電子制御装置）、１０  ＲＯＭ、１１ａ  第１演算装置（演算装置）、１１ｂ  第２演算装置（演算装置）、１１ｃ  第３演算装置（演算装置）、１２  入力選択部（選択部）、１４  演算結果比較部（比較部）、１４  演算結果選択部、１５  異常情報記憶部、１６  出力選択部（切替処理部）、１０１  制御ソフト、１０２  安全処理ソフト（ソフトウェア，安全処理ソフトウェア）
【図１】
2018067251.tif 000003
【図２】
2018067251.tif 000004
【図３】
2018067251.tif 000005