特許第6987201号(P6987201)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 三菱電機株式会社の特許一覧

<>
  • 特許6987201-車両制御装置及び車両制御方法 図000002
  • 特許6987201-車両制御装置及び車両制御方法 図000003
  • 特許6987201-車両制御装置及び車両制御方法 図000004
  • 特許6987201-車両制御装置及び車両制御方法 図000005
  • 特許6987201-車両制御装置及び車両制御方法 図000006
  • 特許6987201-車両制御装置及び車両制御方法 図000007
  • 特許6987201-車両制御装置及び車両制御方法 図000008
  • 特許6987201-車両制御装置及び車両制御方法 図000009
  • 特許6987201-車両制御装置及び車両制御方法 図000010
  • 特許6987201-車両制御装置及び車両制御方法 図000011
  • 特許6987201-車両制御装置及び車両制御方法 図000012
  • 特許6987201-車両制御装置及び車両制御方法 図000013
  • 特許6987201-車両制御装置及び車両制御方法 図000014
  • 特許6987201-車両制御装置及び車両制御方法 図000015
  • 特許6987201-車両制御装置及び車両制御方法 図000016
  • 特許6987201-車両制御装置及び車両制御方法 図000017
  • 特許6987201-車両制御装置及び車両制御方法 図000018
  • 特許6987201-車両制御装置及び車両制御方法 図000019
  • 特許6987201-車両制御装置及び車両制御方法 図000020
  • 特許6987201-車両制御装置及び車両制御方法 図000021
  • 特許6987201-車両制御装置及び車両制御方法 図000022
  • 特許6987201-車両制御装置及び車両制御方法 図000023
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B1)
(11)【特許番号】6987201
(24)【登録日】2021年12月2日
(45)【発行日】2021年12月22日
(54)【発明の名称】車両制御装置及び車両制御方法
(51)【国際特許分類】
   B60W 50/023 20120101AFI20211213BHJP
   B60W 60/00 20200101ALI20211213BHJP
【FI】
   B60W50/023
   B60W60/00
【請求項の数】13
【全頁数】31
(21)【出願番号】特願2020-177280(P2020-177280)
(22)【出願日】2020年10月22日
【審査請求日】2020年10月22日
(73)【特許権者】
【識別番号】000006013
【氏名又は名称】三菱電機株式会社
(74)【代理人】
【識別番号】100088672
【弁理士】
【氏名又は名称】吉竹 英俊
(74)【代理人】
【識別番号】100088845
【弁理士】
【氏名又は名称】有田 貴弘
(72)【発明者】
【氏名】中村 恒毅
(72)【発明者】
【氏名】吉川 篤志
(72)【発明者】
【氏名】田仲 徹
【審査官】 佐々木 佳祐
(56)【参考文献】
【文献】 特開2019−189029(JP,A)
【文献】 特開2015−163498(JP,A)
【文献】 特開2020−156303(JP,A)
【文献】 特開平6−48224(JP,A)
【文献】 国際公開第2020/016622(WO,A1)
(58)【調査した分野】(Int.Cl.,DB名)
B60W 10/00−10/30
B60W 30/00−60/00
G08G 1/00−99/00
(57)【特許請求の範囲】
【請求項1】
第1システムに含まれ、AD(Autonomous Driving)制御及びADAS(Advanced Driver Assistance System)制御の少なくともいずれかを含む車両制御が可能である第1制御部と、
第2システムに含まれ、前記車両制御が可能である第2制御部と
を備え、
前記第1制御部は、
前記第1制御部の前記車両制御で用いられる指令値の演算処理を行う第1演算部と、
前記第1演算部で得られる前記指令値の送信処理を行う第1通信処理部と
を含み、
前記第2制御部は、
前記第2制御部の前記車両制御で用いられる指令値の演算処理を行う第2演算部と、
前記第2演算部で得られる前記指令値の送信処理を行う第2通信処理部と
を含み、
前記第1システムの故障を検出する故障監視部と、
前記第1システムの故障を示す故障情報と、前記第1通信処理部が送信処理中であるか否かを示す送信情報とに基づいて、または、前記故障情報と、前記送信情報と、前記第1演算部が演算処理中であるか否かを示す演算情報とに基づいて、前記第1システムの前記第1通信処理部を用いた前記指令値の送信である第1システム送信から、前記第2システムの前記第2通信処理部を用いた前記指令値の送信である第2システム送信に切り替えるタイミングを変更する出力切替部と
をさらに備える、車両制御装置。
【請求項2】
請求項1に記載の車両制御装置であって、
前記出力切替部は、
前記故障情報と前記送信情報とに基づいて、前記第1通信処理部の送信処理開始から送信処理完了までの間に前記第1システムの故障が発生したと判定した場合に、当該送信処理後に前記第1システム送信を停止し、
前記故障情報と前記送信情報とに基づいて、前記第1通信処理部の送信処理完了から送信処理開始までの間に前記第1システムの故障が発生したと判定した場合に、当該判定直後に前記第1システム送信を停止する、車両制御装置。
【請求項3】
請求項1に記載の車両制御装置であって、
前記出力切替部は、
前記故障情報と前記送信情報と前記演算情報とに基づいて、前記第1演算部の演算処理完了から当該演算処理完了直後の前記第1通信処理部の送信処理完了までの間に前記第1システムの故障が発生したと判定した場合に、当該送信処理後に前記第1システム送信を停止し、
前記故障情報と前記送信情報と前記演算情報とに基づいて、前記第1演算部の演算処理完了直後の前記第1通信処理部の送信処理完了から前記第1演算部の演算処理完了までの間に前記第1システムの故障が発生したと判定した場合に、当該判定直後に前記第1システム送信を停止する、車両制御装置。
【請求項4】
請求項1から請求項3のうちのいずれか1項に記載の車両制御装置であって、
前記故障監視部は、
前記第1制御部における複数種類の領域の故障をさらに検出し、
前記出力切替部は、
前記故障監視部で故障が検出された領域の種類を考慮して前記タイミングを変更する、車両制御装置。
【請求項5】
請求項4に記載の車両制御装置であって、
前記複数種類の領域は、
前記第1通信処理部の通信処理に関する領域である通信領域、及び、前記第1演算部の演算処理に関する領域である演算領域の少なくともいずれか1つを含む、車両制御装置。
【請求項6】
請求項1から請求項5のうちのいずれか1項に記載の車両制御装置であって、
前記故障監視部は、
前記第1システムにおけるハードウェアの故障をさらに検出し、
前記出力切替部は、
前記ハードウェアの故障を考慮して前記タイミングを変更する、車両制御装置。
【請求項7】
請求項1から請求項3のうちのいずれか1項に記載の車両制御装置であって、
前記故障監視部は、
前記第1システムに含まれる第1故障監視部を含み、かつ、前記第1通信処理部の通信処理に関する領域である通信領域の故障をさらに検出し、
前記故障監視部で前記通信領域の故障が検出されなかった場合には、前記出力切替部によって前記第1システム送信を停止するか否かが判定され、
前記故障監視部で前記通信領域の故障が検出された場合には、前記第1故障監視部または前記出力切替部によって前記第1システム送信を停止するか否かが判定される、車両制御装置。
【請求項8】
請求項1から請求項7のうちのいずれか1項に記載の車両制御装置であって、
前記出力切替部は、
前記第1システムが故障状態から正常状態へ復帰する場合、前記第2システム送信を停止した後に前記第1システム送信を行う、車両制御装置。
【請求項9】
請求項1から請求項8のうちのいずれか1項に記載の車両制御装置であって、
前記第2システムは、予防安全システムであり、
前記第1システムは、前記第2システムよりも自動化レベルが高い自動運転システムである、車両制御装置。
【請求項10】
請求項1から請求項4のうちのいずれか1項に記載の車両制御装置であって、
前記出力切替部は、
前記第1システムに含まれる第1出力切替部と、
前記第2システムに含まれる第2出力切替部と
を含み、
前記第1出力切替部及び前記第2出力切替部のそれぞれは、
前記故障情報と前記送信情報とに基づいて、または、前記故障情報と前記送信情報と前記演算情報とに基づいて、前記タイミングを変更する、車両制御装置。
【請求項11】
請求項10に記載の車両制御装置であって、
前記故障監視部は、
前記第1制御部における複数種類の領域の故障をさらに検出し、
前記第1出力切替部及び前記第2出力切替部のそれぞれは、
前記故障監視部で故障が検出された領域の種類を考慮して前記タイミングを変更する、車両制御装置。
【請求項12】
請求項11に記載の車両制御装置であって、
前記複数種類の領域は、
前記第1通信処理部の通信処理に関する領域である通信領域、及び、前記第1演算部の演算処理に関する領域である演算領域を含み、
前記故障監視部は、
前記第1システムに含まれる第1故障監視部を含み、
前記第1故障監視部は、
前記故障監視部で前記通信領域の故障が検出され、前記第1故障監視部が前記第1システム送信を停止可能である場合に、前記第1システム送信を停止し、
前記第2出力切替部は、
前記故障監視部で前記通信領域の故障が検出され、前記第1故障監視部が前記第1システム送信を停止可能でない場合に、前記故障情報と、前記送信情報と、前記演算情報と、前記故障監視部で故障が検出された領域の種類とに基づいて、前記第1システム送信を停止し、
前記第1出力切替部は、
前記故障監視部で前記通信領域の故障が検出されずに前記演算領域の故障が検出された場合に、前記第1通信処理部の送信処理後に前記第1システム送信を停止し、
前記故障監視部で前記通信領域の故障及び前記演算領域の故障のいずれも検出されず、かつ、前記故障情報と前記送信情報と前記演算情報とに基づいて、前記第1演算部の演算処理完了から当該演算処理完了直後の前記第1通信処理部の送信処理完了までの間に前記第1システムの故障が発生したと判定した場合に、当該送信処理後に前記第1システム送信を停止し、
前記故障監視部で前記通信領域の故障及び前記演算領域の故障のいずれも検出されず、かつ、前記故障情報と前記送信情報と前記演算情報とに基づいて、前記第1演算部の演算処理完了直後の前記第1通信処理部の送信処理完了から前記第1演算部の演算処理完了までの間に前記第1システムの故障が発生したと判定した場合に、当該判定直後に前記第1システム送信を停止する、車両制御装置。
【請求項13】
車両制御装置を用いた車両制御方法であって、
前記車両制御装置は、
第1システムに含まれ、AD(Autonomous Driving)制御及びADAS(Advanced Driver Assistance System)制御の少なくともいずれかを含む車両制御が可能である第1制御部と、
第2システムに含まれ、前記車両制御が可能である第2制御部と
を備え、
前記第1制御部は、
前記第1制御部の前記車両制御で用いられる指令値の演算処理を行う第1演算部と、
前記第1演算部で得られる前記指令値の送信処理を行う第1通信処理部と
を含み、
前記第2制御部は、
前記第2制御部の前記車両制御で用いられる指令値の演算処理を行う第2演算部と、
前記第2演算部で得られる前記指令値の送信処理を行う第2通信処理部と
を含み、
前記車両制御方法は、
前記第1システムの故障を検出し、
前記第1システムの故障を示す故障情報と、前記第1通信処理部が送信処理中であるか否かを示す送信情報とに基づいて、または、前記故障情報と、前記送信情報と、前記第1演算部が演算処理中であるか否かを示す演算情報とに基づいて、前記第1システムの前記第1通信処理部を用いた前記指令値の送信である第1システム送信から、前記第2システムの前記第2通信処理部を用いた前記指令値の送信である第2システム送信に切り替えるタイミングを変更する、車両制御方法。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、車両制御装置及び車両制御方法に関する。
【背景技術】
【0002】
近年、AD(Autonomous Driving)制御及びADAS(Advanced Driver Assistance System)制御などの車両制御を行うシステムについて様々な技術が提案されている。例えば、特許文献1には、2つのCPUで二重化した処理系において、どちらか一方のCPUが故障した際に、他方のCPUの送信(出力)を用いることで、一方の処理系が故障しても他方の処理系を用いて運行を継続できるというフェールセーフ化が図られた制御システムが提案されている。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特許第6675487号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
特許文献1の制御システムでは、処理系を冗長化することによって、一方の処理系が故障した場合でも機能の継続が実現されている。しかしながら、当該制御システムでは、故障が発生すると、一方の処理系の送信から他方の処理系の送信に強制的に即座に切り替える。このため、適切に演算されたデータの送信途中であってもその送信を停止したり、切り替えが間に合わなかったりするため、アクチュエータ等の受信側でフェールが発生する場合があると考えられる。
【0005】
そこで、本開示は、上記のような問題点を鑑みてなされたものであり、故障発生時において送信を切り替えるタイミングを適切化可能な技術を提供することを目的とする。
【課題を解決するための手段】
【0006】
本開示に係る車両制御装置は、第1システムに含まれ、AD(Autonomous Driving)制御及びADAS(Advanced Driver Assistance System)制御の少なくともいずれかを含む車両制御が可能である第1制御部と、第2システムに含まれ、前記車両制御が可能である第2制御部とを備え、前記第1制御部は、前記第1制御部の前記車両制御で用いられる指令値の演算処理を行う第1演算部と、前記第1演算部で得られる前記指令値の送信処理を行う第1通信処理部とを含み、前記第2制御部は、前記第2制御部の前記車両制御で用いられる指令値の演算処理を行う第2演算部と、前記第2演算部で得られる前記指令値の送信処理を行う第2通信処理部とを含み、前記第1システムの故障を検出する故障監視部と、前記第1システムの故障を示す故障情報と、前記第1通信処理部が送信処理中であるか否かを示す送信情報とに基づいて、または、前記故障情報と、前記送信情報と、前記第1演算部が演算処理中であるか否かを示す演算情報とに基づいて、前記第1システムの前記第1通信処理部を用いた前記指令値の送信である第1システム送信から、前記第2システムの前記第2通信処理部を用いた前記指令値の送信である第2システム送信に切り替えるタイミングを変更する出力切替部とをさらに備える。
【発明の効果】
【0007】
本開示によれば、第1システムの故障情報と、第1通信処理部の送信情報とに基づいて、第1システム送信から第2システム送信に切り替えるタイミングを変更する。このような構成によれば、故障発生時において送信を切り替えるタイミングを適切化することができる。
【図面の簡単な説明】
【0008】
図1】実施の形態1に係る車両制御装置の構成を示すブロック図である。
図2】実施の形態1に係る車両制御装置の動作の概要を説明するための図である。
図3】実施の形態1に係る車両制御装置の動作を示すフローチャートである。
図4】実施の形態1に係る車両制御装置の動作を示すフローチャートである。
図5】変形例1−1に係る車両制御装置の動作の概要を説明するための図である。
図6】変形例1−1に係る車両制御装置の動作を示すフローチャートである。
図7】変形例1−1に係る車両制御装置の動作を示すフローチャートである。
図8】変形例1−2に係る車両制御装置に関連する装置の動作の概要を説明するための図である。
図9】変形例1−2に係る車両制御装置の動作の概要を説明するための図である。
図10】変形例1−2に係る車両制御装置の動作を示すフローチャートである。
図11】変形例1−3に係る車両制御装置の動作を示すフローチャートである。
図12】変形例1−3に係る車両制御装置の動作を示すフローチャートである。
図13】変形例1−5に係る車両制御装置の動作を示すフローチャートである。
図14】変形例1−5に係る車両制御装置の動作を示すフローチャートである。
図15】変形例1−6に係る車両制御装置の動作を示すフローチャートである。
図16】実施の形態2に係る車両制御装置の構成を示すブロック図である。
図17】実施の形態2に係る車両制御装置の動作を示すフローチャートである。
図18】実施の形態2に係る車両制御装置の動作を示すフローチャートである。
図19】変形例2−1に係る車両制御装置の動作を示すフローチャートである。
図20】変形例2−1に係る車両制御装置の動作を示すフローチャートである。
図21】変形例2−2に係る車両制御装置の動作を示すフローチャートである。
図22】変形例2−2に係る車両制御装置の動作を示すフローチャートである。
【発明を実施するための形態】
【0009】
<実施の形態1>
図1は、本実施の形態1に係る車両制御装置の構成を示すブロック図である。図1の車両制御装置は、ECU11を含む第1システムと、ECU21を含む第2システムとを備える。
【0010】
ECU11は、第1制御部であるCPU(Central Processing Unit)12と、第1故障監視部である故障監視部13と、通信回路14と、スイッチ15とを含む。ECU21は、第2制御部であるCPU22と、第2故障監視部である故障監視部23と、通信回路24とを含む。図1の車両制御装置では、CPU12及びCPU22の一方が故障した場合に他方を用いるフェールセーフ機能が実現さるように、ECU11及びECU21は互いに通信可能となっている。
【0011】
CPU12は、AD(Autonomous Driving)制御及びADAS(Advanced Driver Assistance System)制御の少なくともいずれかを含む車両制御が可能である。CPU22は、CPU12の車両制御と同様の車両制御が可能である。
【0012】
ここで、SIP(戦略的イノベーション創造プログラム)自動走行システム研究開発計画(内閣府、2015年5月21日)には、自動車の自動運転の自動化レベル(自動運転レベル)について、次のように定義されている。
【0013】
レベル1:加速、操舵、制動のいずれかをシステムが行う状態
レベル2:加速、操舵、制動のうち複数の操作をシステムが行う状態
レベル3:加速、操舵、制動の全てをシステムが行い、システムが要請したときは運転者が対応する状態
レベル4:加速、操舵、制動の全てを運転者以外が行い、運転者が全く関与しない状態
なお、ここでいう「システム」とは、自動車が自律センサや通信等により得られる情報から道路環境などを判断し、自動車の加速、操舵、制動の全てまたは一部を行う仕組みを意味する。
【0014】
各レベルの定義から分かるように、自動車の運転権限は、レベル3以上ではシステム側にあり、レベル2以下では運転者側にある。レベル2以下の車両制御は、運転者の安全な運転を支援するものであり、「ADAS制御」と呼ばれる。ADAS制御よりもレベルが高い車両制御は、「AD制御」と呼ばれる。AD制御及びADAS制御は、例えば、自動ブレーキ制御、ACC(Adaptive Cruise Control)などの自動加減速制御、自動駐車制御、車線維持制御などを含む。
【0015】
以下の説明では、CPU12及びCPU22によって車両制御(AD制御、ADAS制御)が行われる車両を「自車両」と記すこともある。
【0016】
CPU12は、第1演算部である演算部12aと、第1通信処理部である通信処理部12bとを含む。CPU22は、第2演算部である演算部22aと、第2通信処理部である通信処理部22bと、出力切替部22cとを含む。演算部12a,22aと、通信処理部12b,22bと、出力切替部22cとについては、後で詳細に説明する。
【0017】
故障監視部13は、第1システムの故障を検出する自己診断機能と、第1システムの動作と、第2システムの動作とを比較することで、第1システム及び第2システムのいずれかの故障を検出する相互診断機能とを有している。同様に、故障監視部23は、第2システムの故障を検出する自己診断機能と、第1システムの動作と、第2システムの動作とを比較することで、第1システム及び第2システムのいずれかの故障を検出する相互診断機能とを有している。
【0018】
自己診断は、例えば、いわゆるウォッチドッグタイマーを用いて実現される。相互診断は、例えば、第1システム及び第2システムのそれぞれにおいて、相互監視を目的とした同一のアプリ(プログラム)を実行して同一の演算を行い、両者の出力結果が一致するかどうかを確認することによって実現される。自己診断と相互診断とを行うことで、第1システム及び第2システムの故障状態の判定精度を高めることができる。
【0019】
故障監視部13,23は、相互診断機能などによって、CPU12における複数種類の領域の故障を検出し、第1システムにおけるCPU12以外のハードウェア(H/W)の故障を検出する。複数種類の領域は、例えば、通信処理部12bの通信処理に関するメモリ領域などの通信領域、及び、演算部12aの演算処理に関するメモリ領域などの演算領域を含む。第1システムにおけるハードウェア(H/W)の故障は、例えば、電圧異常、通信回路のオープン及びショートを含む。H/Wの故障判定には、例えば、特許第4656421号に記載された、ショート故障及びオープン故障を判定する手法を用いてもよい。
【0020】
同様に、故障監視部13,23は、相互診断機能などによって、CPU22における複数種類の領域の故障を検出し、第2システムにおけるCPU22以外のハードウェア(H/W)の故障を検出する。
【0021】
故障監視部13,23は、以上の検出結果に基づいて、第1システムの故障を示す故障情報、CPU12,22における複数種類の領域の故障、ハードウェアの故障などを、出力切替部22cに出力する。
【0022】
なお、故障監視部13,23による2重系システムの相互監視では、第1システム及び第2システムのどちらが壊れたか判定できない。そのため、3重系システムにして多数決をとってもよいし、後述するように第1システム及び第2システムの一方の判定を他方の判定よりも優先してもよい。また、2つの故障監視部(故障監視部13,23)の代わりに、故障監視部13,23の機能を有する1つの故障監視部が設けられてもよい。また、故障監視部13,23はECU11,21の外部に設けられてもよいし、CPU12,22内の機能として設けられてもよい。
【0023】
通信処理部12bは、第1システムにおいて車両制御(AD制御、ADAS制御)を行うのに必要な情報の送受信処理を行う。同様に、通信処理部22bは、第2システムにおいて車両制御(AD制御、ADAS制御)を行うのに必要な情報の送受信処理を行う。また、通信処理部12b,22bは、切り替えタイミングを判定するのに必要な情報の送受信処理を行う。
【0024】
通信回路14は、通信処理部12bの送受信処理によってシステムと送受信を行い、通信回路24は、通信処理部22bの送受信処理によってシステムと送受信を行う。通信処理部12b,22bは例えばソフトウェアで実現され、通信回路14は例えばCAN(Controller Area Network)のICやハーネスを含む回路などのハードウェアで構成される。
【0025】
通信処理部12b,22bは、外部装置から通信回路14,24を介して、例えば、自車両の周辺環境の状態を示す情報(周辺情報)を取得する。ここでいう外部装置は、例えば、GPS(Global Positioning System)装置、車載通信機、周辺センサ、ナビゲーションシステムなどを含む。GPS装置は、複数のGPS衛星からGPS信号を受信して、自車両の位置を測位する。車載通信機は、自車両と他車両との間の通信(車車間通信)や、自車両と路側機との間の通信(路車間通信)を行う。周辺センサは、ミリ波レーダーや超音波ソナーなどの距離感知センサであり、自車両の周囲に存在する他車両、歩行者、建物、障害物などの物体の位置を検出するとともに、検出された物体が移動体(他車両、歩行者等)であるときはその移動速度も検出する。周辺センサはこれらに限られず、自車両の周辺環境の状態を認識できるものであれば、他のセンサ(例えば、車載カメラなど)であってもよい。ナビゲーションシステムは、GPS装置が取得した自車両の位置情報と地図情報とを用いて、地図画面上に自車両の位置を表示したり、目的地までの経路を案内したりする。
【0026】
また、通信処理部12b,22bは、外部装置から通信回路14,24を介して、例えば、自車両の動作状態を示す情報(車両情報)を取得する。ここでいう外部装置は、例えば、舵角センサ、車速センサ、ウィンカーセンサ、ライトセンサなどを含む。舵角センサは、自車両のステアリング角を検出する。車速センサは、自車両の走行速度を検出する。ウィンカーセンサは、自車両の方向指示器の指示方向を検出する。ライトセンサは、自車両のライトのオン、オフを検出する。車両情報を検出するセンサはこれらに限られず、自車両の動作状態を認識できるものであれば、他のセンサ(例えば、ブレーキ、ギア、ワイパーなどの動作状態を検出するセンサなど)であってもよい。
【0027】
また、通信処理部12b,22bは、外部装置から通信回路14,24を介して、例えば、自車両の運転者の状態を示す情報(運転者情報)を取得する。運転者の状態としては、例えば、眠気があるか、脇見運転をしていないか、冷静であるか(興奮していないか)、などである。運転者情報を取得する外部装置は、例えば、運転者を撮影する車内カメラと、当該車内カメラが撮影した画像の画像解析により、運転者の眼球や顔の動きを検出し、運転者の視線の方向、顔の向きなどから、運転者の状態を判定する判定装置とを含む。運転者情報を取得する外部装置はこれらに限られず、運転者の挙動を検出できれば、車内カメラの代わりに、他の取得装置(例えば、運転者の音声を取得する集音マイク、ハンドルに設けられた生体センサ、脳波センサなど)を用いてもよい。
【0028】
通信処理部12bは、後述する演算部12aで得られる演算結果である指令値の送信処理を行うことによって、通信回路14は指令値をシステム(例えばアクチュエータのシステム)へ送信する。同様に、通信処理部22bは、後述する演算部22aで得られる演算結果である指令値の送信処理を行うことによって、通信回路24は指令値をシステム(例えばアクチュエータのシステム)へ送信する。なお、アクチュエータは、例えばステアリング、スロットル、ブレーキ、シフト、ウィンカーなどのアクチュエータを含む。送信手段としては、例えば、演算結果を所定サンプリング毎にデータフレームに格納して送信するCAN通信が用いられてもよいし、Ethernet(登録商標)通信やSPI(Serial Peripheral Interface)通信が用いられてもよい。
【0029】
また、通信処理部12b,22bは、通信処理部12b,22bが送信処理中であるか否かを示す送信情報を、出力切替部22cに出力する。送信情報は、例えば、データフレームへの車両制御(AD制御,ADAS制御)の指令値の格納完了/未完了を示すフラグや、送信許可/不許可の状態を示すレジスタやメモリの値を含む。
【0030】
さらに、通信処理部12b,22bは、ある特定のデータフレームを送信したかどうかの情報を出力切替部22cに出力する。この情報は、例えば、最も送信優先度が高いデータフレームへの演算結果の格納/未格納を示すフラグや、ある特定のデータフレームの送信許可/不許可の状態を含む。送信情報などの通信手段には、通信処理部12b,22bと出力切替部22cの間の専用の通信が用いられてもよいし、CPU12とCPU22との間の汎用の通信が用いられてもよい。
【0031】
演算部12aは、通信処理部12bで取得される周辺情報、車両情報、運転者情報の少なくとも1つに基づいて、CPU12の車両制御(AD制御、ADAS制御)に用いられるアクチュエータの指令値(制御指令値)の演算処理を行う。同様に、演算部22aは、通信処理部22bで取得される周辺情報、車両情報、運転者情報の少なくとも1つに基づいて、CPU22の車両制御(AD制御、ADAS制御)に用いられるアクチュエータの指令値(制御指令値)の演算処理を行う。
【0032】
また、演算部12aは、所定サンプリング毎またはイベント起動ごとに演算を行い、演算中か否かの状態を示す演算状態をメモリに記録する。そして、演算部12aは、演算部12aが演算処理中であるか否かを示す演算情報を出力切替部22cに出力する。同様に、演算部22aは、演算部22aが演算処理中であるか否かを示す演算情報を出力切替部22cに出力する。
【0033】
出力切替部22cは、第1システムの故障情報と、通信処理部12bの送信情報とに基づいて、第1システム送信から第2システム送信に切り替えるタイミングを変更する。ここで、第1システム送信は、第1システムの通信処理部12bを用いた指令値の送信であり、第2システム送信は、第2システムの通信処理部22bを用いた指令値の送信である。以下、第1システム送信から第2システム送信に切り替えるタイミングを、「切り替えタイミング」と記すこともある。
【0034】
なお、本実施の形態1では、スイッチ15を介して通信回路14が制御されることにより第1システム送信が制御されるが、通信処理部12bが制御されることにより第1システム送信が制御されてもよい。また、本実施の形態1では、通信処理部22bが制御されることにより第2システム送信が制御されるが、図示しないスイッチを介して通信回路24が制御されることにより第2システム送信が制御されてもよい。また図1では、出力切替部22cはCPU22に設けられているが、故障監視部13,23はCPU22の外部、ひいてはECU21の外部に設けられてもよい。
【0035】
<動作>
図2は、本実施の形態1に係る車両制御装置の動作の概要を説明するための図である。出力切替部22cは、第1システムの故障情報と、通信処理部12bの送信情報とに基づいて、通信処理部12bの送信処理開始から送信処理完了までの間に第1システムの故障が発生したか否かを判定する。逆に言えば、出力切替部22cは、第1システムの故障情報と、通信処理部12bの送信情報とに基づいて、通信処理部12bの送信処理完了から送信処理開始までの間に第1システムの故障が発生したか否かを判定する。
【0036】
出力切替部22cは、図2(a)のように、通信処理部12bの送信処理開始から送信処理完了までの間に第1システムの故障が発生したと判定した場合には、当該送信処理後に第1システム送信を停止する。本実施の形態1では、出力切替部22cは、スイッチ15を介して通信回路14を制御することにより第1システム送信を停止するが、通信処理部12bを制御することにより第1システム送信を停止してもよい。
【0037】
出力切替部22cは、図2(b)のように、通信処理部12bの送信処理完了から送信処理開始までの間に第1システムの故障が発生したと判定した場合には、当該判定直後に第1システム送信を停止する。
【0038】
図3は、本実施の形態1に係る第1システムの動作を示すフローチャートである。図3の動作は、第1システムの故障が故障監視部13で検出された場合に行われる。
【0039】
まずステップS1にて、故障監視部13は、第1システムの故障情報を、故障監視部23を介して出力切替部22cに出力し、通信処理部12bは、通信処理部12bの送信情報を出力切替部22cに出力する。
【0040】
ステップS2にて、故障監視部13は、第1システム送信が停止したか否かを判定する。第1システム送信が停止したと判定された場合には処理がステップS4に進み、第1システム送信が停止したと判定されなかった場合には処理がステップS3に進む。なお、後者の場合は、故障監視部13が、第1システム送信が停止していないと判定した場合と、故障監視部13が、第1システム送信の停止を判定するための情報を取得できなかった場合とを含む。
【0041】
ステップS3にて、故障監視部13は、ステップS2の判定を行ってから経過した時間が予め定められた閾値以上であるか否か、つまりタイムアウトしたか否かを判定する。タイムアウトしたと判定された場合には処理がステップS4に進み、タイムアウトしたと判定されなかった場合には処理がステップS2に戻る。なお、上記閾値を無限大に設定して、ステップS3からステップS4に処理が進まないようにしてもよい。
【0042】
ステップS4にて、故障監視部13は、CPU12をリセットし、CPU12の復帰処理を行う。これにより、故障監視部13は、第1システム送信の停止を判定できない場合にタイムアウトする(ステップS3でYes)と、リセット(復帰処理)を行う。
【0043】
ステップS5にて、故障監視部13は、第1システムが正常に復帰したか否かを判定する。第1システムが正常に復帰したと判定された場合には図3の動作が終了し、第1システムが正常に復帰したと判定されなかった場合には図3の動作が再度行われる。
【0044】
図4は、本実施の形態1に係る第2システムの動作を示すフローチャートである。図4の動作は、第1システムの故障が故障監視部13で検出された場合に行われる。
【0045】
まずステップS11にて、故障監視部23は、第1システムの故障情報を故障監視部13から受けて出力切替部22cに出力する。
【0046】
ステップS12にて、出力切替部22cは、第1システムの故障情報と、通信処理部12bの送信情報とに基づいて、通信処理部12bの送信処理開始から送信処理完了までの間に第1システムの故障が発生したか否かを判定する。通信処理部12bの送信処理開始から送信処理完了までの間に第1システムの故障が発生したと判定された場合には処理がステップS13に進み、通信処理部12bの送信処理開始から送信処理完了までの間に第1システムの故障が発生したと判定されなかった場合には処理がステップS15に進む。なお、後者の場合は、出力切替部22cが、通信処理部12bの送信処理完了から送信処理開始からまでの間に第1システムの故障が発生したと判定した場合と、出力切替部22cが、送信情報を取得できなかった場合とを含む。
【0047】
ステップS13にて、出力切替部22cは、通信処理部12bの送信処理を含む第1システム送信が完了したか否かを判定する。この判定は、例えば、通信処理部12bから新しく出力された送信情報などに基づいて行われる。第1システム送信が完了したと判定された場合には処理がステップS15に進み、第1システム送信が完了したと判定されなかった場合には処理がステップS14に進む。なお、後者の場合は、出力切替部22cが、第1システム送信が完了していないと判定した場合と、出力切替部22cが、第1システム送信の完了を判定するための情報を取得できなかった場合とを含む。
【0048】
ステップS14にて、出力切替部22cは、ステップS13の判定を行ってから経過した時間が予め定められた閾値以上であるか否か、つまりタイムアウトしたか否かを判定する。タイムアウトしたと判定された場合には処理がステップS15に進み、タイムアウトしたと判定されなかった場合には処理がステップS13に戻る。なお、上記閾値を無限大に設定して、ステップS14からステップS15に処理が進まないようにしてもよい。
【0049】
ステップS15にて、出力切替部22cは、第1システム送信を停止する。
【0050】
ステップS16にて、出力切替部22cは、第2システム送信を開始する。その後、図4の動作が終了する。なお、ステップS15の動作が行われた後に、図3のステップS2から動作が行われてもよい。
【0051】
<実施の形態1のまとめ>
以上のような本実施の形態1に係る車両制御装置(車両制御方法)では、第1システムの故障情報と、通信処理部12bの送信情報とに基づいて、第1システム送信から第2システム送信に切り替えるタイミングを変更する。このような構成によれば、図2(a)のような場合であっても、故障発生時において送信を切り替えるタイミングを適切化することができる。このため、アクチュエータ等の受信側でフェールが発生することを抑制することができ、スムーズな切り替えが期待できる。
【0052】
<変形例1−1>
実施の形態1では、出力切替部22cは、第1システムの故障情報と、通信処理部12bの送信情報とに基づいて切り替えタイミングを変更したが、これに限ったものではない。例えば、出力切替部22cは、演算部12aの演算情報を考慮して切り替えタイミングを変更してもよい。すなわち、出力切替部22cは、第1システムの故障情報と、通信処理部12bの送信情報と、演算部12aの演算情報とに基づいて切り替えタイミングを変更してもよい。
【0053】
図5は、本変形例1−1に係る車両制御装置の動作の概要を説明するための図である。出力切替部22cは、第1システムの故障情報と、通信処理部12bの送信情報と、演算部12aの演算情報とに基づいて、演算部12aの演算処理完了から当該演算処理完了直後の通信処理部12bの送信処理完了までの間に第1システムの故障が発生したか否かを判定する。逆に言えば、出力切替部22cは、第1システムの故障情報と、通信処理部12bの送信情報と、演算部12aの演算情報とに基づいて、演算部12aの演算処理完了直後の通信処理部12bの送信処理完了から演算部12aの演算処理完了までの間に第1システムの故障が発生したか否かを判定する。
【0054】
出力切替部22cは、図5(a)のように、演算部12aの演算処理完了から当該演算処理完了直後の通信処理部12bの送信処理完了までの間に第1システムの故障が発生したと判定した場合には、当該送信処理後に第1システム送信を停止する。
【0055】
出力切替部22cは、図5(b)のように、演算部12aの演算処理完了直後の通信処理部12bの送信処理完了から演算部12aの演算処理完了までの間に第1システムの故障が発生したと判定した場合には、当該判定直後に第1システム送信を停止する。
【0056】
図6は、本変形例1−1に係る第1システムの動作を示すフローチャートである。図6の動作は、図3の動作のステップS1をステップS1aに変更した動作と同様である。
【0057】
ステップS1aにて、故障監視部13は、第1システムの故障情報を出力切替部22cに出力し、通信処理部12bは、通信処理部12bの送信情報を出力切替部22cに出力する。また、演算部12aは、演算部12aの演算情報を出力切替部22cに出力する。
【0058】
図7は、本変形例1−1に係る第2システムの動作を示すフローチャートである。図7の動作は、図4の動作のステップS12をステップS12aに変更し、ステップS14のタイムアウトの判定を削除した動作と同様である。なお、図7ではバリエーションを示すためにステップS14を削除したが、もちろんステップS14は行われてもよく、このことは以下の説明においても同様である。
【0059】
ステップS12aにて、出力切替部22cは、第1システムの故障情報と、通信処理部12bの送信情報と、演算部12aの演算情報とに基づいて、演算部12aの演算処理完了から当該演算処理完了直後の通信処理部12bの送信処理完了までの間に第1システムの故障が発生したか否かを判定する。
【0060】
演算部12aの演算処理完了から当該演算処理完了直後の通信処理部12bの送信処理完了までの間に第1システムの故障が発生したと判定された場合には処理がステップS13に進む。一方、演算部12aの演算処理完了から当該演算処理完了直後の通信処理部12bの送信処理完了までの間に第1システムの故障が発生したと判定されなかった場合には処理がステップS15に進む。なお、後者の場合は、出力切替部22cが、演算部12aの演算処理完了直後の通信処理部12bの送信処理完了から演算部12aの演算処理完了までの間に第1システムの故障が発生した場合と、出力切替部22cが、送信情報または演算情報を取得できなかった場合とを含む。
【0061】
ステップS13にて、出力切替部22cは、通信処理部12bの送信処理を含む第1システム送信が完了したか否かを判定する。第1システム送信が完了したと判定された場合には処理がステップS15に進み、第1システム送信が完了したと判定されなかった場合にはステップS13の処理が再度行われる。
【0062】
以上のような本変形例1−1によれば、第1システムの故障情報と、通信処理部12bの送信情報と、演算部12aの演算情報とに基づいて第1システム送信から第2システム送信に切り替えるタイミングを変更する。このような構成によれば、故障発生時において送信を切り替えるタイミングを適切化することができる。
【0063】
<変形例1−2>
変形例1−1では、出力切替部22cは、演算部12aの演算処理完了直後の通信処理部12bの送信処理完了から演算部12aの演算処理完了までの間に第1システムの故障が発生したと判定した場合には、当該判定直後に第1システム送信を停止した。この場合、図8に示すように、出力切替部22cは、第2システム送信への切り替え時間が間に合わず、アクチュエータ等の受信側でフェールが発生してしまうことも考えられる。
【0064】
そこで、出力切替部22cは、図9に示すように、演算処理完了直後の送信処理完了から演算処理完了までの間に第1システムの故障が発生したと判定した場合でも、第1システム送信の実施中のデータが存在する場合には、当該第1システム送信の完了後に、その送信を停止してもよい。
【0065】
本変形例1−2に係る第1システムの動作を示すフローチャートは、図6のフローチャートと同じである。図10は、本変形例1−2に係る第2システムの動作を示すフローチャートである。図10の動作は、図7の動作にステップS17及びステップS18を追加した動作と同様である。
【0066】
図10ではステップS12aにて、演算部12aの演算処理完了から当該演算処理完了直後の通信処理部12bの送信処理完了までの間に第1システムの故障が発生したと判定されなかった場合には処理がステップS17に進む。
【0067】
ステップS17にて、出力切替部22cは、第1システム送信が実施中であるか否か、つまり第1システム送信の実施中のデータが存在するか否かを判定する。この判定は、例えば、通信処理部12bから新しく出力された送信情報などに基づいて行われる。第1システム送信が実施中であると判定された場合には処理がステップS18に進み、第1システム送信が実施中でないと判定された場合には処理がステップS15に進む。
【0068】
ステップS18にて、出力切替部22cは、通信処理部12bの送信処理を含む第1システム送信が完了したか否かを判定する。第1システム送信が完了したと判定された場合には処理がステップS15に進み、第1システム送信が完了していないと判定された場合にはステップS18の処理が再度行われる。
【0069】
以上のような本変形例1−2によれば、故障発生時において送信を切り替えるタイミングを適切化することができる。
【0070】
<変形例1−3>
出力切替部22cは、故障監視部13で故障が検出されたCPU12の領域の種類を考慮して切り替えタイミングを変更してもよい。つまり、出力切替部22cは、第1システムの故障情報と、通信処理部12bの送信情報と、故障が検出された領域の種類とに基づいて、切り替えタイミングを変更してもよい。または、出力切替部22cは、第1システムの故障情報と、通信処理部12bの送信情報と、演算部12aの演算情報と、故障が検出された領域の種類とに基づいて、切り替えタイミングを変更してもよい。以下では、後者について説明するが、前者の説明も以下の説明と概ね同じである。
【0071】
また、故障監視部13で通信領域の故障が検出されなかった場合には、出力切替部22cによって第1システム送信を停止するか否かが判定されてもよく、故障監視部13で通信領域の故障が検出された場合には、故障監視部13または出力切替部22cによって第1システム送信を停止するか否かが判定されてもよい。
【0072】
図11は、本変形例1−3に係る第1システムの動作を示すフローチャートである。図11の動作は、図6の動作にステップS6、ステップS7及びステップS8を追加し、ステップS1aをステップS1bに変更した動作と同様である。
【0073】
まず、ステップS6にて、故障監視部13は、通信処理部12bの通信領域が故障したか否かを判定する。通信領域が故障したと判定された場合には処理がステップS7に進み、通信領域が故障していないと判定された場合には処理がステップS1bに進む。
【0074】
ステップS1bにて、故障監視部13は、第1システムの故障情報と、故障が検出された領域の種類とを出力切替部22cに出力する。通信処理部12bは、通信処理部12bの送信情報を出力切替部22cに出力する。演算部12aは、演算部12aの演算情報を出力切替部22cに出力する。
【0075】
ステップS7にて、故障監視部13は、故障監視部13が第1システムのハードウェアの電源オフ及びリセット並びにソフトウェアの送信処理停止を行うことによって第1システム送信を停止可能であるか否かを判定する。故障監視部13が第1システム送信を停止可能であると判定された場合には処理がステップS8に進み、故障監視部13が第1システム送信を停止可能でないと判定された場合には処理がステップS2に進む。
【0076】
ステップS8にて、出力切替部22cではなく故障監視部13が、第1システム送信を停止する。その後、処理がステップS4に進む。
【0077】
図12は、本変形例1−3に係る第2システムの動作を示すフローチャートである。図12の動作は、図7の動作にステップS19、ステップS20及びステップS21を追加した動作と同様である。
【0078】
ステップS11後のステップS19にて、出力切替部22cは、故障監視部13が第1システム送信を停止可能であるか否かを判定する。故障監視部13が第1システム送信を停止可能であると判定された場合には処理がステップS15に進み、故障監視部13が第1システム送信を停止可能でないと判定された場合には処理がステップS20に進む。
【0079】
なお、ステップS19からステップS15に処理が進んだ場合には、第1システムによる第1システム送信の停止よりも前に、第2システムの出力切替部22cが第1システム送信を停止してしまう可能性がある。そこで、出力切替部22cは、CPU12の処理周期よりも十分遅いタイミングでスイッチ15を介して通信回路14をオフしてもよいし、通信処理部12bの出力が停止することを確認してからスイッチ15を介して通信回路14をオフしてもよい。
【0080】
ステップS20にて、出力切替部22cは、通信処理部12bの通信領域が故障したか否かを判定する。通信処理部12bの通信領域が故障したと判定された場合には処理がステップS15に進み、第1システム送信を停止する。通信処理部12bの通信領域が故障していないと判定された場合には処理がステップS21に進む。
【0081】
ステップS21にて、出力切替部22cは、演算部12aの演算領域が故障したか否かを判定する。演算部12aの演算領域が故障したと判定された場合には処理がステップS13に進み、第1システム送信が完了した後に第1システム送信を停止する。演算部12aの演算領域が故障していないと判定された場合には処理がステップS12aに進む。
【0082】
以上のような本変形例1−3によれば、故障箇所に合わせて第1システム送信を適切に停止することができるため、アクチュエータ等の受信側でフェールが発生することを抑制することができる。
【0083】
なお、出力切替部22cは、第1システムにおけるCPU12以外のH/Wの故障を考慮して切り替えタイミングを変更してもよい。例えば、ステップS21と同様に、H/Wが故障したと判定された場合には処理がステップS13に進み、H/Wが故障していないと判定された場合には処理がステップS12aに進むように、出力切替部22cが構成されてもよい。
【0084】
<変形例1−4>
実施の形態1から変形例1−4までのステップS13の代わりに、出力切替部22cは、ある特定のデータフレームが第1システム送信によって送信されたか否かを判定してもよい。この判定は、例えば、最も送信優先度の高いデータフレームへの演算結果の格納/未格納を示すフラグや、ある特定のデータフレームの送信許可/不許可の状態を用いて判定されてもよい。
【0085】
<変形例1−5>
出力切替部22cは、第1システムが故障状態から正常状態へ復帰する場合、第2システム送信を停止した後に第1システム送信を行ってもよい。また、出力切替部22cは、第1システムの復帰情報と、通信処理部22bの送信情報とに基づいて、第2システム送信から第1システム送信に切り替えるタイミングを変更してもよい。または、出力切替部22cは、第1システムの復帰情報と、通信処理部22bの送信情報と、演算部22aの演算情報とに基づいて、第2システム送信から第1システム送信に切り替えるタイミングを変更してもよい。
【0086】
図13は、本変形例1−5に係る第1システムの動作を示すフローチャートである。なお、図13の動作は、第1システムが正常に復帰した場合に行われる。
【0087】
まずステップS31にて、故障監視部13は、第1システムの復帰情報を、故障監視部23を介して第2システムに出力する。
【0088】
ステップS32にて、演算部12aは、指令値などの演算を開始し、その演算結果を通信処理部12bに出力する。
【0089】
ステップS33にて、CPU12は、第2システムから送信許可を受けたか否かを判定する。送信許可を受けたと判定した場合には処理がステップS34に進み、送信許可を受けなかったと判定した場合にはステップS33の処理が再度行われる。
【0090】
ステップS34にて、第1システムは、第1システム送信を開始する。その後、図13の動作が終了する。
【0091】
図14は、本変形例1−5に係る第2システムの動作を示すフローチャートである。なお、図14の動作は、第1システムが正常に復帰した場合に行われる。
【0092】
まずステップS41にて、故障監視部23は、第1システムの復帰情報を故障監視部13から受けて出力切替部22cに出力する。
【0093】
ステップS42にて、演算部22aは、演算部22aの演算情報を出力切替部22cに出力し、通信処理部22bは、通信処理部22bの送信情報を出力切替部22cに出力する。
【0094】
ステップS43にて、出力切替部22cは、第1システムの復帰情報と、通信処理部22bの送信情報と、演算部22aの演算情報とに基づいて、演算部22aの演算処理完了から当該演算処理完了直後の通信処理部22bの送信処理完了までの間に第1システムが復帰したか否かを判定する。
【0095】
演算部22aの演算処理完了から当該演算処理完了直後の通信処理部22bの送信処理完了までの間に第1システムが復帰したと判定された場合には処理がステップS44に進む。一方、演算部22aの演算処理完了から当該演算処理完了直後の通信処理部22bの送信処理完了までの間に第1システムが復帰したと判定されなかった場合には処理がステップS45に進む。
【0096】
ステップS44にて、出力切替部22cは、通信処理部22bの送信処理を含む第2システム送信が完了したか否かを判定する。第2システム送信が完了したと判定された場合には処理がステップS45に進み、第1システム送信が完了したと判定されなかった場合にはステップS44の処理が再度行われる。
【0097】
ステップS45にて、出力切替部22cは、第2システム送信を停止する。
【0098】
ステップS46にて、出力切替部22cは、送信許可を第1システムに出力する。これにより図13のステップS34にて第1システム送信が開始される。その後、図14の動作が終了する。なお、ステップS46の動作が行われた後に、図13のステップS33から動作が行われてもよい。
【0099】
以上のような本変形例1−5によれば、第1システム送信を適切に開始することができる。
【0100】
<変形例1−6>
第2システムの演算結果を送信可能な、第1システム及び第2システムの両方が正常である状態から、第2システムが故障した場合、つまりCPU22などが故障(冗長システムが崩壊)した場合を想定する。この場合、出力切替部22cが送信を切り替えずに、CPU12が縮退制御を行ってもよい。なお、縮退制御は、例えば、運転者にCPU22が故障したことを通知するとともに、運転手主体の自動運転レベルに引き下げること、及び、第1システムによって安全な車両をスペースに自動で停止する制御を行うことなどを含む。
【0101】
図15は、本変形例1−5に係る第1システム及び第2システムの動作を示すフローチャートである。図15の動作は、第2システムの故障が故障監視部23で検出された場合に行われる。
【0102】
ステップS51にて、故障監視部23は、第2システムの故障情報を第1システムに送信する。
【0103】
ステップS52にて、故障監視部23は、CPU22をリセットし、CPU22の復帰処理を行う。
【0104】
ステップS53にて、故障監視部13は、第2システムの故障情報を故障監視部23から受けてCPU12に出力する。
【0105】
ステップS54にて、CPU12は縮退制御を行う。その後、図15の動作が終了する。
【0106】
以上のような本変形例1−5によれば、第2システムが故障した場合に適切な車両制御を行うことができる。
【0107】
<変形例1−7>
以上の説明では、故障監視部13と故障監視部23との両方が相互監視機能(比較機能)を有する構成としたが、その機能はそれらの片方のみに持たせてもよい。例えば、CPU22は、CPU12に比べて故障率が低い構成にし、故障監視部23のみに相互監視機能を持たせてもよい。
【0108】
また以上の説明において、CPU22の故障監視部23は、CPU12の故障監視部13よりも故障率が低く、信頼性が高くなるように、故障監視部13,23は構成されてもよい。そして、その構成において、故障監視部23による故障診断の結果は、故障監視部13による故障診断の結果よりも優先度が高く設定されてもよい。つまり、故障監視部23による診断結果と故障監視部13による診断結果とが互いに異なる場合、故障監視部23の診断結果が優先されてもよい。例えば、CPU12の故障監視部13では故障が検出されていないが、CPU22の故障監視部23の相互監視機能によって故障が検出された場合には、CPU12側で故障が発生したものと判定されてもよい。
【0109】
なお本変形例1−7の以上の構成では、故障監視部23及び故障監視部13の優先度は、それらの故障率に対応させて設定されたが、これに限ったものではない。例えば、ISO26262に規定されるASIL(Automotive Safety Integrity Level)に従い、ASILレベルの高い方に、高い優先度を持たせてもよい。また、第2システムは、予防安全システムであり、第1システムは、第2システムよりも自動化レベルが高い自動運転システムであってもよい。
【0110】
<実施の形態2>
図16は、本実施の形態2に係る車両制御装置の構成を示すブロック図である。以下、本実施の形態2に係る構成要素のうち、上述の構成要素と同じまたは類似する構成要素については同じまたは類似する参照符号を付し、異なる構成要素について主に説明する。
【0111】
本実施の形態2では、出力切替部は、第2システムに含まれる出力切替部22c(第2出力切替部)だけでなく、第1システムに含まれる出力切替部12c(第1出力切替部)を含む。そして変形例1−1と同様、出力切替部12c及び出力切替部22cのそれぞれは、第1システムの故障情報と、通信処理部12bの送信情報と、演算部12aの演算情報とに基づいて、切り替えタイミングを変更する。また変形例1−3と同様、出力切替部12c及び出力切替部22cのそれぞれは、故障監視部13で故障が検出された領域の種類を考慮して切り替えタイミングを変更する。
【0112】
<動作>
図17は、本実施の形態2に係る第1システムの動作を示すフローチャートである。図17の動作は、第1システムの故障が故障監視部13で検出された場合に行われる。
【0113】
まずステップS61にて、故障監視部13は、第1システムの故障情報と、故障が検出された領域の種類とを出力切替部12c,22cに出力する。通信処理部12bは、通信処理部12bの送信情報を出力切替部12c,22cに出力する。演算部12aは、演算部12aの演算情報を出力切替部12c,22cに出力する。
【0114】
ステップS62にて、故障監視部13は、通信処理部12bの通信領域が故障したか否かを判定する。通信領域が故障したと判定された場合には処理がステップS63に進み、通信領域が故障していないと判定された場合には処理がステップS66に進む。
【0115】
ステップS63にて、故障監視部13は、故障監視部13が第1システムのハードウェアの電源オフ及びリセット並びにソフトウェアの送信処理停止を行うことによって第1システム送信を停止可能であるか否かを判定する。故障監視部13が第1システム送信を停止可能であると判定された場合には処理がステップS71に進み、故障監視部13が第1システム送信を停止可能でないと判定された場合には処理がステップS64に進む。なお、ステップS64に処理が進んだ場合には、後述する第2システムの動作(図18のステップS15)によって第1システム送信が停止される。
【0116】
ステップS64にて、故障監視部13は、第1システム送信が停止したか否かを判定する。第1システム送信が停止したと判定された場合には処理がステップS72に進み、第1システム送信が停止したと判定されなかった場合には処理がステップS65に進む。
【0117】
ステップS65にて、故障監視部13は、ステップS64の判定を行ってから経過した時間が予め定められた閾値以上であるか否か、つまりタイムアウトしたか否かを判定する。タイムアウトしたと判定された場合には処理がステップS72に進み、タイムアウトしたと判定されなかった場合には処理がステップS64に戻る。
【0118】
ステップS66にて、故障監視部13は、故障監視部13がCPU12を停止することにより第1システム送信を停止可能であるか否かを判定する。故障監視部13が第1システム送信を停止可能であると判定された場合には処理がステップS67に進み、故障監視部13が第1システム送信を停止可能でないと判定された場合には処理がステップS64に進む。なお、ステップS67に処理が進んだ場合には、以下で説明するように、出力切替部12cが、変形例1−3で出力切替部22cが行った図12のステップS21以降の処理の一部と同様の処理を行う。
【0119】
ステップS67にて、出力切替部12cは、演算部12aの演算領域が故障したか否かを判定する。演算部12aの演算領域が故障したと判定された場合には処理がステップS69に進み、演算部12aの演算領域が故障していないと判定された場合には処理がステップS68に進む。
【0120】
ステップS68にて、出力切替部12cは、第1システムの故障情報と、通信処理部12bの送信情報と、演算部12aの演算情報とに基づいて、演算部12aの演算処理完了から当該演算処理完了直後の通信処理部12bの送信処理完了までの間に第1システムの故障が発生したか否かを判定する。
【0121】
演算部12aの演算処理完了から当該演算処理完了直後の通信処理部12bの送信処理完了までの間に第1システムの故障が発生したと判定された場合には処理がステップS69に進む。一方、演算部12aの演算処理完了から当該演算処理完了直後の通信処理部12bの送信処理完了までの間に第1システムの故障が発生したと判定されなかった場合には処理がステップS71に進む。
【0122】
ステップS69にて、出力切替部12cは、通信処理部12bの送信処理を含む第1システム送信が完了したか否かを判定する。この判定は、例えば、通信処理部12bから新しく出力された送信情報などに基づいて行われる。第1システム送信が完了したと判定された場合には処理がステップS71に進み、第1システム送信が完了したと判定されなかった場合には処理がステップS70に進む。
【0123】
ステップS70にて、出力切替部12cは、ステップS69の判定を行ってから経過した時間が予め定められた閾値以上であるか否か、つまりタイムアウトしたか否かを判定する。タイムアウトしたと判定された場合には処理がステップS72に進み、タイムアウトしたと判定されなかった場合には処理がステップS69に戻る。
【0124】
ステップS71にて、出力切替部12cは、第1システム送信を停止する。
【0125】
ステップS72にて、故障監視部13は、CPU12をリセットし、CPU12の復帰処理を行う。
【0126】
ステップS73にて、故障監視部13は、第1システムが正常に復帰したか否かを判定する。第1システムが正常に復帰したと判定された場合には図17の動作が終了し、第1システムが正常に復帰したと判定されなかった場合には図17の動作が再度行われる。
【0127】
図18は、本実施の形態2に係る第2システムの動作を示すフローチャートである。図18の動作は、第1システムの故障が故障監視部13で検出された場合に行われる。図18の動作は、図12の動作に図4のステップS14を追加した動作と同様である。
【0128】
ステップS13にて、出力切替部22cは、通信処理部12bの送信処理を含む第1システム送信が完了したか否かを判定する。第1システム送信が完了したと判定された場合には処理がステップS15に進み、第1システム送信が完了したと判定されなかった場合には処理がステップS14に進む。
【0129】
ステップS14にて、出力切替部22cは、ステップS13の判定を行ってから経過した時間が予め定められた閾値以上であるか否か、つまりタイムアウトしたか否かを判定する。タイムアウトしたと判定された場合には処理がステップS15に進み、タイムアウトしたと判定されなかった場合には処理がステップS13に戻る。
【0130】
なお、ステップS15の動作が行われた後に、図17のステップS64から動作が行われてもよい。
【0131】
<動作の概要>
以上の図17及び図18の動作の概要について説明する。
【0132】
故障監視部13で通信領域の故障が検出され、故障監視部13が第1システム送信を停止可能である場合(図17のステップS63でYes)に、故障監視部13は、第1システム送信を停止する(図17のステップS71)。
【0133】
故障監視部13で通信領域の故障が検出され、故障監視部13が第1システム送信を停止可能でない場合(図17のステップS63でNo、図18のステップS19でNo)を想定する。この場合に、出力切替部22cは、第1システムの故障情報と、通信処理部12bの送信情報と、演算部12aの演算情報と、故障監視部13で故障が検出された領域の種類とに基づいて、第1システム送信を停止する(図18のステップS20、ステップS21、ステップS12a、ステップS13、ステップS15)。
【0134】
故障監視部13で通信領域の故障が検出されずに演算領域の故障が検出された場合(図17のステップS67でYes)に、出力切替部12cは、通信処理部12bの送信処理後に第1システム送信を停止する(図17のステップS69、ステップS71)。
【0135】
故障監視部13で通信領域の故障及び演算領域の故障のいずれも検出されず(図17のステップS67でNo)、かつ、演算部12aの演算処理完了から当該演算処理完了直後の通信処理部12bの送信処理完了までの間に第1システムの故障が発生したと判定した場合(図17のステップS68でYes)を想定する。この場合に、出力切替部12cは、通信処理部12bの送信処理後に第1システム送信を停止する(図17のステップS69、ステップS71)。
【0136】
故障監視部13で通信領域の故障及び演算領域の故障のいずれも検出されず(図17のステップS67でNo)、かつ、演算部12aの演算処理完了直後の通信処理部12bの送信処理完了から演算部12aの演算処理完了までの間に第1システムの故障が発生したと判定した場合(図17のステップS68でNo)を想定する。この場合に、出力切替部12cは、当該判定直後に第1システム送信を停止する(ステップS71)。
【0137】
なお、出力切替部12cは、第1システムにおけるCPU12以外のH/Wの故障を考慮して切り替えタイミングを変更してもよい。例えば、ステップS67の代わりに、出力切替部12cは、第1システムにおけるCPU12以外のH/Wが故障しているか否かについての判定医を用いてもよい。
【0138】
<実施の形態2のまとめ>
以上のような本実施の形態2に係る車両制御装置では、出力切替部12c及び出力切替部22cのそれぞれは、第1システムの故障情報と、通信処理部12bの送信情報と、演算部12aの演算情報とに基づいて、切り替えタイミングを変更する。このような構成によれば、出力切替部12c及び出力切替部22cのいずれかに故障が生じても、送信を適切に切り替えることができる。
【0139】
<変形例2−1>
実施の形態2では、出力切替部12c及び出力切替部22cのそれぞれは、第1システムの故障情報と、通信処理部12bの送信情報と、演算部12aの演算情報とに基づいて、切り替えタイミングを変更した。しかしこれに限ったものではなく、出力切替部12c及び出力切替部22cのそれぞれは、切り替えタイミングの変更に、演算部12aの演算情報を考慮しなくてもよい。つまり、出力切替部12c及び出力切替部22cのそれぞれは、第1システムの故障情報と、通信処理部12bの送信情報とに基づいて、切り替えタイミングを変更してもよい。
【0140】
また実施の形態2では、出力切替部12c及び出力切替部22cのそれぞれは、故障監視部13で故障が検出された領域の種類を考慮して切り替えタイミングを変更したが、考慮しなくてもよい。
【0141】
図19は、本変形例2−1に係る第1システムの動作を示すフローチャートである。図19の動作は、第1システムの故障が故障監視部13で検出された場合に行われる。
【0142】
まずステップS81にて、故障監視部13は、第1システムの故障情報を、故障監視部23を介して出力切替部22cに出力し、通信処理部12bは、通信処理部12bの送信情報を出力切替部22cに出力する。
【0143】
ステップS82にて、故障監視部13は、故障監視部13が第1システムのハードウェアの電源オフ及びリセット並びにソフトウェアの送信処理停止を行うことによって第1システム送信を停止可能であるか否かを判定する。故障監視部13が第1システム送信を停止可能であると判定された場合には処理がステップS85に進み、故障監視部13が第1システム送信を停止可能でないと判定された場合には処理がステップS83に進む。
【0144】
ステップS83にて、故障監視部13は、第1システム送信が停止したか否かを判定する。第1システム送信が停止したと判定された場合には処理がステップS89に進み、第1システム送信が停止したと判定されなかった場合には処理がステップS84に進む。
【0145】
ステップS84にて、故障監視部13は、ステップS83の判定を行ってから経過した時間が予め定められた閾値以上であるか否か、つまりタイムアウトしたか否かを判定する。タイムアウトしたと判定された場合には処理がステップS89に進み、タイムアウトしたと判定されなかった場合には処理がステップS83に戻る。
【0146】
ステップS85にて、出力切替部12cは、第1システムの故障情報と、通信処理部12bの送信情報とに基づいて、通信処理部12bの送信処理開始から送信処理完了までの間に第1システムの故障が発生したか否かを判定する。通信処理部12bの送信処理開始から送信処理完了までの間に第1システムの故障が発生したと判定された場合には処理がステップS86に進み、通信処理部12bの送信処理開始から送信処理完了までの間に第1システムの故障が発生したと判定されなかった場合には処理がステップS88に進む。
【0147】
ステップS86にて、出力切替部12cは、通信処理部12bの送信処理を含む第1システム送信が完了したか否かを判定する。この判定は、例えば、通信処理部12bから新しく出力された送信情報などに基づいて行われる。第1システム送信が完了したと判定された場合には処理がステップS88に進み、第1システム送信が完了したと判定されなかった場合には処理がステップS87に進む。
【0148】
ステップS87にて、出力切替部12cは、ステップS86の判定を行ってから経過した時間が予め定められた閾値以上であるか否か、つまりタイムアウトしたか否かを判定する。タイムアウトしたと判定された場合には処理がステップS89に進み、タイムアウトしたと判定されなかった場合には処理がステップS86に戻る。なお、ステップS87の閾値を無限大に設定して、ステップS87からステップS89に処理が進まないようにしてもよい。
【0149】
ステップS88にて、出力切替部12cは、第1システム送信を停止する。
【0150】
ステップS89にて、故障監視部13は、CPU12をリセットし、CPU12の復帰処理を行う。
【0151】
ステップS90にて、故障監視部13は、第1システムが正常に復帰したか否かを判定する。第1システムが正常に復帰したと判定された場合には図19の動作が終了し、第1システムが正常に復帰したと判定されなかった場合には図19の動作が再度行われる。
【0152】
図20は、本変形例2−1に係る第2システムの動作を示すフローチャートである。図20の動作は、第1システムの故障が故障監視部13で検出された場合に行われる。
【0153】
まずステップS101にて、故障監視部23は、第1システムの故障情報を故障監視部13から受けて出力切替部22cに出力する。
【0154】
ステップS102にて、出力切替部22cは、故障監視部13が第1システム送信を停止可能であるか否かを判定する。故障監視部13が第1システム送信を停止可能であると判定された場合には処理がステップS106に進み、故障監視部13が第1システム送信を停止可能でないと判定された場合には処理がステップS103に進む。
【0155】
ステップS103にて、出力切替部22cは、第1システムの故障情報と、通信処理部12bの送信情報とに基づいて、通信処理部12bの送信処理開始から送信処理完了までの間に第1システムの故障が発生したか否かを判定する。通信処理部12bの送信処理開始から送信処理完了までの間に第1システムの故障が発生したと判定された場合には処理がステップS104に進み、通信処理部12bの送信処理開始から送信処理完了までの間に第1システムの故障が発生したと判定されなかった場合には処理がステップS106に進む。
【0156】
ステップS104にて、出力切替部22cは、通信処理部12bの送信処理を含む第1システム送信が完了したか否かを判定する。この判定は、例えば、通信処理部12bから新しく出力された送信情報などに基づいて行われる。第1システム送信が完了したと判定された場合には処理がステップS106に進み、第1システム送信が完了したと判定されなかった場合には処理がステップS105に進む。
【0157】
ステップS105にて、出力切替部22cは、ステップS104の判定を行ってから経過した時間が予め定められた閾値以上であるか否か、つまりタイムアウトしたか否かを判定する。タイムアウトしたと判定された場合には処理がステップS106に進み、タイムアウトしたと判定されなかった場合には処理がステップS104に戻る。
【0158】
ステップS106にて、出力切替部22cは、第1システム送信を停止する。なお、ステップS102からステップS106に処理が進んだ場合には、第1システムによる第1システム送信の停止よりも前に、第2システムの出力切替部22cが第1システム送信を停止してしまう可能性がある。そこで、出力切替部22cは、CPU12の処理周期よりも十分遅いタイミングでスイッチ15を介して通信回路14をオフしてもよいし、通信処理部12bの出力が停止することを確認してからスイッチ15を介して通信回路14をオフしてもよい。
【0159】
ステップS107にて、出力切替部22cは、第2システム送信を開始する。その後、図20の動作が終了する。なお、ステップS106の動作が行われた後に、図19のステップS83から動作が行われてもよい。
【0160】
<動作の概要>
以上の図19及び図20の動作の概要について説明する。
【0161】
故障監視部13が第1システム送信を停止可能であり(図19のステップS82でYes)、かつ、通信処理部12bの送信処理開始から送信処理完了までの間に第1システムの故障が発生した場合(図19のステップS85でYes)を想定する。この場合に、出力切替部12cは、通信処理部12bの送信処理後に第1システム送信を停止する(図19のステップS86、ステップS88)。
【0162】
故障監視部13が第1システム送信を停止可能であり(図19のステップS82でYes)、かつ、通信処理部12bの送信処理完了から送信処理開始までの間に第1システムの故障が発生した場合(図19のステップS85でNo)を想定する。この場合に、出力切替部12cは、当該判定直後に第1システム送信を停止する(図19のステップS88)。
【0163】
送信情報を取得できずにタイムアウトした場合(図20のステップS105のYes)には、出力切替部22cは第1システム送信を停止する(図20のステップS106)。
【0164】
故障監視部13が第1システム送信を停止可能でない場合(図19のステップS82でNo、図20のステップS102でNo)を想定する。この場合に、出力切替部22cは、第1システムの故障情報と、通信処理部12bの送信情報とに基づいて、第1システム送信を停止する(図20のステップS103、ステップS104、ステップS105、ステップS106)。
【0165】
故障監視部13が第1システム送信を停止可能である場合(図20のステップS102でYes)、好ましくは第1システムが第1システム送信を停止してから、出力切替部22cは、第1システム送信を停止する(図20のステップS106)。
【0166】
故障監視部13は、第1システム送信の停止後に、CPU12をリセットし、CPU12の復帰処理を行う(図19のステップS89)。また、故障監視部13は、第1システム送信の停止を判定できない場合にタイムアウトする(図19のステップS87でYes)と、リセット(復帰処理)を行う(図19のステップS89)。
【0167】
<変形例2−2>
実施の形態2では、出力切替部12c及び出力切替部22cのそれぞれは、故障監視部13で故障が検出された領域の種類を考慮して切り替えタイミングを変更したが、考慮しなくてもよい。
【0168】
図21は、本変形例2−2に係る第1システムの動作を示すフローチャートである。図21の動作は、図19の動作のステップS81及びステップS85を、ステップS81a及びステップS85aにそれぞれ変更した動作と同様である。
【0169】
ステップS81aにて、故障監視部13は、第1システムの故障情報を出力切替部22cに出力し、通信処理部12bは、通信処理部12bの送信情報を出力切替部22cに出力する。また、演算部12aは、演算部12aの演算情報を出力切替部22cに出力する。
【0170】
ステップS85aにて、出力切替部12cは、第1システムの故障情報と、通信処理部12bの送信情報と、演算部12aの演算情報とに基づいて、演算部12aの演算処理完了から当該演算処理完了直後の通信処理部12bの送信処理完了までの間に第1システムの故障が発生したか否かを判定する。
【0171】
演算部12aの演算処理完了から当該演算処理完了直後の通信処理部12bの送信処理完了までの間に第1システムの故障が発生したと判定された場合には処理がステップS86に進む。一方、演算部12aの演算処理完了から当該演算処理完了直後の通信処理部12bの送信処理完了までの間に第1システムの故障が発生したと判定されなかった場合には処理がステップS88に進む。
【0172】
図22は、本変形例2−2に係る第2システムの動作を示すフローチャートである。図22の動作は、図20の動作のステップS103を、ステップS103aに変更した動作と同様である。
【0173】
ステップS103aにて、出力切替部22cは、第1システムの故障情報と、通信処理部12bの送信情報と、演算部12aの演算情報とに基づいて、演算部12aの演算処理完了から当該演算処理完了直後の通信処理部12bの送信処理完了までの間に第1システムの故障が発生したか否かを判定する。
【0174】
演算部12aの演算処理完了から当該演算処理完了直後の通信処理部12bの送信処理完了までの間に第1システムの故障が発生したと判定された場合には処理がステップS104に進む。一方、演算部12aの演算処理完了から当該演算処理完了直後の通信処理部12bの送信処理完了までの間に第1システムの故障が発生したと判定されなかった場合には処理がステップS106に進む。
【0175】
<動作の概要>
以上の図21及び図22の動作の概要について説明する。
【0176】
故障監視部13が第1システム送信を停止可能であり(図21のステップS82でYes)、かつ、演算部12aの演算処理完了から当該演算処理完了直後の通信処理部12bの送信処理完了までの間に第1システムの故障が発生した場合(図21のステップS85aでYes)を想定する。この場合に、出力切替部12cは、通信処理部12bの送信処理後に第1システム送信を停止する(図21のステップS86、ステップS88)。
【0177】
故障監視部13が第1システム送信を停止可能であり(図21のステップS82でYes)、かつ、演算部12aの演算処理完了直後の通信処理部12bの送信処理完了から演算部12aの演算処理完了までの間に第1システムの故障が発生した場合(図21のステップS85aでNo)を想定する。この場合に、出力切替部12cは、当該判定直後に第1システム送信を停止する(図21のステップS88)。
【0178】
送信情報を取得できずにタイムアウトした場合(図22のステップS105のYes)には、出力切替部22cは第1システム送信を停止する(図22のステップS106)。
【0179】
故障監視部13が第1システム送信を停止可能でない場合(図21のステップS82でNo、図22のステップS102でNo)を想定する。この場合に、出力切替部22cは、第1システムの故障情報と、通信処理部12bの送信情報とに基づいて、第1システム送信を停止する(図22のステップS103a、ステップS104、ステップS105、ステップS106)。
【0180】
故障監視部13が第1システム送信を停止可能である場合(図22のステップS102でYes)、好ましくは第1システムが第1システム送信を停止してから、出力切替部22cは、第1システム送信を停止する(図22のステップS106)。
【0181】
故障監視部13は、第1システム送信の停止後に、CPU12をリセットし、CPU12の復帰処理を行う(図21のステップS89)。また、故障監視部13は、第1システム送信の停止を判定できない場合にタイムアウトする(図21のステップS87でYes)と、リセット(復帰処理)を行う(図21のステップS89)。
【0182】
<その他>
以上で説明した車両制御装置は、CPU及びメモリなどのハードウェアと、車両制御装置の動作を制御するための制御プログラムなどのソフトウェアとが協働することによって実現されてもよいし、処理回路などの専用のハードウェアによって実現されてもよい。
【0183】
なお、各実施の形態及び各変形例を自由に組み合わせたり、各実施の形態及び各変形例を適宜、変形、省略したりすることが可能である。
【符号の説明】
【0184】
12,22 CPU、12a,22a 演算部、12b,22b 通信処理部、13,23 故障監視部、12c,22c 出力切替部。
【要約】
【課題】故障発生時において送信を切り替えるタイミングを適切化可能な技術を提供することを目的とする。
【解決手段】車両制御装置は、AD制御及びADAS制御の少なくともいずれかを含む車両制御が可能である第1制御部と、第2システムに含まれ、車両制御が可能である第2制御部と、故障情報と送信情報とに基づいて、または、故障情報と送信情報と演算情報とに基づいて、第1システム送信から第2システム送信に切り替えるタイミングを変更する出力切替部とを備える。
【選択図】図1
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17
図18
図19
図20
図21
図22