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

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

▶ 株式会社デンソーの特許一覧

<>
  • 特許6981357-車両制御装置 図000002
  • 特許6981357-車両制御装置 図000003
  • 特許6981357-車両制御装置 図000004
  • 特許6981357-車両制御装置 図000005
  • 特許6981357-車両制御装置 図000006
  • 特許6981357-車両制御装置 図000007
  • 特許6981357-車両制御装置 図000008
  • 特許6981357-車両制御装置 図000009
  • 特許6981357-車両制御装置 図000010
  • 特許6981357-車両制御装置 図000011
  • 特許6981357-車両制御装置 図000012
  • 特許6981357-車両制御装置 図000013
  • 特許6981357-車両制御装置 図000014
  • 特許6981357-車両制御装置 図000015
  • 特許6981357-車両制御装置 図000016
  • 特許6981357-車両制御装置 図000017
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6981357
(24)【登録日】2021年11月22日
(45)【発行日】2021年12月15日
(54)【発明の名称】車両制御装置
(51)【国際特許分類】
   B60W 50/023 20120101AFI20211202BHJP
   B60W 50/029 20120101ALI20211202BHJP
   B60W 50/04 20060101ALI20211202BHJP
   B60R 16/02 20060101ALI20211202BHJP
   B60R 16/023 20060101ALI20211202BHJP
【FI】
   B60W50/023
   B60W50/029
   B60W50/04
   B60R16/02 660J
   B60R16/023 P
【請求項の数】8
【全頁数】21
(21)【出願番号】特願2018-84257(P2018-84257)
(22)【出願日】2018年4月25日
(65)【公開番号】特開2019-189029(P2019-189029A)
(43)【公開日】2019年10月31日
【審査請求日】2020年10月14日
(73)【特許権者】
【識別番号】000004260
【氏名又は名称】株式会社デンソー
(74)【代理人】
【識別番号】110000578
【氏名又は名称】名古屋国際特許業務法人
(72)【発明者】
【氏名】長谷川 高輔
【審査官】 増子 真
(56)【参考文献】
【文献】 特開2017−196965(JP,A)
【文献】 特開2016−055832(JP,A)
【文献】 国際公開第2017/199967(WO,A1)
【文献】 特開2010−136286(JP,A)
【文献】 特開平05−097004(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
B60W 10/00 − 10/30
B60W 30/00 − 60/00
B60R 16/00 − 17/02
(57)【特許請求の範囲】
【請求項1】
自動運転の制御に使用する制御データであるメイン操作量を繰り返し生成するメイン処理部(30)と、
自動運転の制御に使用する制御データであるサブ操作量を繰り返し生成するサブ処理部(40)と、
前記メイン処理部に接続されるメインバス(8)と、
前記サブ処理部に接続されるサブバス(9)と、
前記メインバス及び前記サブバスのいずれにも接続される複数の制御実行部(50)と、
を備え、
前記制御実行部は、
前記メイン操作量及び前記サブ操作量のいずれかを選択操作量として、前記選択操作量に従って車両制御を実行する実行部(534)と、
初期状態では前記メイン操作量を前記選択操作量に設定し、前記メインバスを介して行われる通信が予め設定された切替条件を満たす場合に、前記選択操作量を前記メイン操作量から前記サブ操作量に切り替える選択部(533:S410、S460、S470、S500)と、
を備え
前記メイン処理部は、予め設定された指示条件を満たす場合に、前記メインバスを介して切替指示を送信する指示通知部(334)を備え、
前記制御実行部は、前記選択部で使用される前記切替条件の一つとして、前記メインバスを介して前記切替指示を受信することを含む
車両制御装置。
【請求項2】
請求項1に記載の車両制御装置であって、
前記メイン処理部は、当該メイン処理部の動作および前記メインバスを介した通信のうち少なくとも一方について異常があるか否かを繰り返し判断するメイン判断部(332,333)を更に備えると共に、前記指示通知部で使用される前記指示条件の一つとして、前記メイン判断部での判断結果が異常ありであることを含む
車両制御装置。
【請求項3】
請求項1または請求項2に記載の車両制御装置であって、
前記制御実行部は、
前記メインバスを介した通信に異常があるか否かを判断するメインバス判断部(531)と、
前記メインバス判断部での判断結果を表すバス故障通知を、前記メインバスを介して送信するメイン故障通知部(533:S410、S420、S480)と、を更に備え、
前記メイン処理部は、前記指示通知部で使用される前記指示条件の一つとして、前記メインバスを介して受信する前記バス故障通知の受信が一定時間以上途絶えること、および前記バス故障通知の内容が異常ありであることのうち少なくとも一方を含む
車両制御装置。
【請求項4】
請求項3に記載の車両制御装置であって、
前記制御実行部は、前記選択部で使用される前記切替条件の一つとして、前記メインバス判断部により異常ありと判断されることを含む
車両制御装置。
【請求項5】
請求項3または請求項4に記載の車両制御装置であって、
前記メインバス判断部は、前記制御データの受信が一定時間以上途絶えた場合、又は、前記制御データの内容に誤りがある場合に、異常ありと判断する
車両制御装置。
【請求項6】
請求項1から請求項5までのいずれか1項に記載の車両制御装置であって、
前記サブ処理部は、
当該サブ処理部の動作および前記サブバスを介した通信のうち少なくとも一方について異常があるか否かを判断するサブ判断部(432,433)と、
前記サブ判断部での判断結果を表すサブ状態を、前記サブバスを介して送信する状態通知部(434)と、
を備える、車両制御装置。
【請求項7】
請求項6に記載の車両制御装置であって、
前記制御実行部は、
前記サブバスを介した通信に異常があるか否かを判断するサブバス判断部(532)と、
前記サブバス判断部での判断結果を表すバス故障通知を、前記サブバスを介して送信するサブ故障通知部(532:S430〜S450、S490)と、を更に備え、
前記サブ処理部の前記状態通知部は、前記サブバスを介して受信する前記バス故障通知により異常の有無を判断する
車両制御装置。
【請求項8】
請求項1から請求項7までのいずれか1項に記載の車両制御装置であって、
前記メインバスおよび前記サブバスに接続され、前記メインバスおよび前記サブバスを介した通信に異常があるか否かを判断し、前記メインバスおよび前記サブバスの少なくとも一方にて異常ありと判断された場合に、車両のドライバーに対する報知を行う報知実行部(60)を更に備える
車両制御装置。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、自動運転制御の信頼性を向上させる技術に関する。
【背景技術】
【0002】
下記特許文献1には、自動運転制御に関する操作量を演算する機能を有する電子制御装置(以下、メインECU)と、操作量に従って制御を実行する機能を有する複数の電子制御装置(以下、ACT系ECU)とが接続された車載ネットワークにおいて、メインECUを冗長化する技術が記載されている。具体的には、メインECUと同様の機能を有するサブECUを設け、メインECUおよびサブECUのいずれもが、操作量の演算の他に、故障等の検出を行って故障検出結果を共通のネットワークを介して送信する。ACT系ECUは、ネットワークを介して受信するメインECUおよびサブECUの故障検出結果に従って、メインECUにて生成された操作量またはサブECUにて生成された操作量のいずれかを選択して自動運転のための制御を実行する。これにより、メインECUおよびサブECUのいずれか一方のECUに故障が発生しても、他方のECUにて演算された操作量を用いて自動運転制御の継続が可能となる。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2017−196965号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、発明者の詳細な検討の結果、特許文献1に記載の従来技術では、以下の課題が見出された。
即ち、従来技術では、メインECUとサブECUとは、同一のネットワークに接続されているため、サブECUがネットワークを占有して使えなくしてしまう故障等が想定される。つまり、サブECUの動作がメインECUの動作に影響を与える可能性があるため、サブECUの設計には、メインECUと同等の高い安全基準が求められる。なお、安全基準が高い場合、ECUに、高いバスの故障検出率、および低い故障率が要求される他、設計において多くのドキュメントを作成することが要求される。また、従来技術では、メインECUが故障した場合、ACT系ECUは、サブECUから操作量を取得することで自動運転制御を継続することができる。しかし、ネットワークが故障した場合、ACT系ECUは、メインECUおよびサブECUのいずれからも操作量を取得できないため、自動運転制御を継続することができなかった。
【0005】
本開示の1つの局面は、自動運転制御における冗長系の設計負荷を軽減しつつ、制御の信頼性を向上させる技術を提供することにある。
【課題を解決するための手段】
【0006】
本開示の一態様による車両制御装置は、メイン処理部(30)と、サブ処理部(40)と、メインバス(8)と、サブバス(9)と、複数の制御実行部(50)と、を備える。
メイン処理部は、自動運転の制御に使用する制御データであるメイン操作量を繰り返し生成する。サブ処理部は、自動運転の制御に使用する制御データであるサブ操作量を繰り返し生成する。メインバスは、メイン処理部に接続される。サブバスは、サブ処理部に接続される。複数の制御実行部は、メインバス及びサブバスのいずれにも接続される。
【0007】
制御実行部は、実行部(534)と、選択部(533:S410、S460、S470、S500)と、を備える。
実行部は、メイン操作量及びサブ操作量のいずれかを選択操作量として、選択操作量に従って車両制御を実行する。選択部は、初期状態ではメイン操作量を選択操作量に設定し、メインバスを介して行われる通信が予め設定された切替条件を満たす場合に、選択操作量をメイン操作量からサブ操作量に切り替える。
【0008】
このような構成によれば、メイン処理部に接続されるメインバスとは別に、サブ処理部に接続されるサブバスが設けられているため、サブ処理部の動作がメイン処理部の動作に影響を与えることがない。このため、サブ処理部は、メイン処理部と比較して、低い安全基準を適用して設計できるため、サブ処理部やサブバスに関わる部分の設計を簡略化できる。また、メインバスが故障してもサブバスを用いて自動運転制御を継続できるため、制御の信頼性を向上させることができる。
【0009】
なお、この欄及び特許請求の範囲に記載した括弧内の符号は、一つの態様として後述する実施形態に記載の具体的手段との対応関係を示すものであって、本開示の技術的範囲を限定するものではない。
【図面の簡単な説明】
【0010】
図1】自動運転システムの構成を示すブロック図である。
図2】メインバスおよびサブバスを介して送受信される情報に関する説明図である。
図3】ACT系ECUおよびHMI系ECUにおけるバス判定処理のフローチャートである。
図4】ACT系ECUにおける選択処理のフローチャートである。
図5】メインECUにおけるメイン判定処理のフローチャートである。
図6】サブECUにおけるサブ判定処理のフローチャートである。
図7】HMI系ECUにおける報知処理のフローチャートである。
図8】メインECUにて異常が検出された場合の動作を示す説明図である。
図9】メインバスが故障した場合、およびメインECUがメインバスを介して送受信不能である場合の動作を示す説明図である。
図10】メインECUがメインバスを介して受信不能である場合の動作を示す説明図である。
図11】メインECUがメインバスを介して送信不能である場合の動作を示す説明図である。
図12】ACT系ECUの一つがメインバスを介して受信不能である場合の動作を示す説明図である。
図13】ACT系ECUの一つがメインバスを介して送受信不能である場合の動作を示す説明図である。
図14】ACT系ECUの一つがメインバスを介して送信不能である場合の動作を示す説明図である。
図15】サブECUにて異常が検出された場合の動作を示す説明図である。
図16】ACT系ECUにてサブバスの異常が検出された場合の動作を示す説明図である。
【発明を実施するための形態】
【0011】
以下、図面を参照しながら、本開示の実施形態を説明する。
[1.構成]
[1−1.概要]
図1に示す自動運転システム1は、車両に搭載され、設定経路に従って自動で走行制御を行う自動運転を実現する。以下では、自動運転システム1を搭載した車両を自車両といる。
【0012】
自動運転システム1は、情報取得部2と、制御指示部3と、制御対象部5と、センサバス7と、メインバス8と、サブバス9と、を備える。
情報取得部2は、自動運転に必要な様々な情報を取得して制御指示部3に供給する。情報取得部2は、車両情報部21と、周辺情報部22と、道路情報部23と、を備える。
【0013】
車両情報部21は、自車両に設けられた各種センサから情報を収集して、自車両の挙動を表す車両情報を生成する。車両情報には、自車両の位置、速度、加速度、ヨーレート、及び舵角等が含まれてもよい。
【0014】
周辺情報部22は、自車両の前後左右に設置されたカメラからの画像およびレーダセンサからの検出結果に基づき、自車両の周辺領域に存在する他車両を含む各種物体に関する情報や路面に描かれた区画線や標識等に関する情報を生成する。なお、レーダセンサとしては、例えば、ミリ波レーダやレーザレーダ、超音波レーダ等を用いることができる。
【0015】
道路情報部23は、VICS等の路車間通信を利用したシステム等を用いて取得される情報、および自動運転用の高精度地図が記憶された地図データベースの情報に基づき、走行中の道路に関する規制情報を含んだ各種道路情報を取得する。なお、VICSとは、Vehicle Information and Communication Systemの略称であり、登録商標である。また、道路情報部23は、周辺情報部22による路面に描かれた区画線や標識等の検出結果から認識される情報を用いてもよい。
【0016】
制御指示部3は、メインECU30と、サブECU40とを備える。メインECU30およびサブECU40は、いずれも、情報取得部2を構成する各部21〜23と共にセンサバス7に接続される。また、メインECU30は、メインバス8に接続され、サブECU40は、サブバス9に接続される。メインECU30およびサブECU40は、いずれも情報取得部2から取得される情報、および別途生成される自動運転のための経路情報に基づいて、車両に搭載された様々なアクチュエータの操作量を生成する。以下では、メインECU30が生成する操作量をメイン操作量、サブECU40が生成する操作量をサブ操作量という。
【0017】
制御対象部5は、複数のACT系ECU50と、一つ以上のHMI系ECU60とを備える。ACTは、アクチュエータの略であり、HMIは、ヒューマン・マシン・インタフェースの略である。ACT系ECU50およびHMI系ECU60は、いずれも、メインバス8およびサブバス9の両方に接続される。
【0018】
ACT系ECU50は、制御指示部3からメインバス8またはサブバス9を介して取得される制御データであるアクチュエータの操作量に従って、自ECUに割り当てられたアクチュエータを駆動する。ACT系ECU50には、駆動系ECU50a、制動系ECU50b、および操舵系ECU50c等の種類が存在する。駆動系ECU50aは、少なくともエンジンの作動に関わるアクチュエータを制御する。制動系ECU50bは、少なくともブレーキの作動に関わるアクチュエータを制御する。操舵系ECU50cは、少なくともステアリングの作動に関わるアクチュエータを制御する。ACT系ECU50は、駆動対象となるアクチュエータが異なり駆動対象に応じた制御を行う以外は、いずれも同様に構成される。
【0019】
HMI系ECU60は、メインバス8およびサブバス9の通信状態を監視し、自車両のドライバーに対して監視結果に応じた報知を実行する。
なお、メインECU30がメイン処理部、サブECU40がサブ処理部、ACT系ECU50が制御実行部、HMI系ECU60が報知実行部に相当する。
【0020】
[1−2.メインバス/サブバス]
メインバス8およびサブバス9を介して送受信される情報を、図2を用いて説明する。
メインバス8では、メイン操作量、切替指示、およびメインバス故障通知が送受信される。
【0021】
メイン操作量は、メインECU30からACT系ECU50に向けて送信される。メイン操作量には、ACT系ECU50のそれぞれにて使用される自動運転制御に必要な操作量が列挙して示される。
【0022】
切替指示は、メインECU30からACT系ECU50およびHMI系ECU60に向けて送信される。切替指示は、ACT系ECU50において使用する操作量を、メイン操作量からサブ操作量へ切り替えることが必要であるか否かを示す情報であり、具体的には、「切替必要」または「切替不要」が示される。
【0023】
メインバス故障通知は、ACT系ECU50からメインECU30に向けて送信される。メインバス故障通知は、ACT系ECU50においてメインバス8の通信状態に異常があるか否かを判断した結果、即ちメインバス8の故障を検出したか否かを表す情報であり、具体的には、「故障あり」または「故障なし」が示される。
【0024】
サブバス9では、サブ操作量、サブ系状態、サブバス故障通知が送受信される。
サブ操作量は、サブECU40からACT系ECU50に向けて送信される。サブ操作量には、ACT系ECU50のそれぞれにて使用される自動運転に必要なサブ操作量が列挙して示される。
【0025】
サブ系状態は、サブECU40からACT系ECU50およびHMI系ECU60に向けて送信される。サブ系状態は、サブECU40にて、自身の動作状態およびサブバス7の通信状態に異常があるか否かを判断した結果を表す情報であり、具体的には、「異常あり」または「異常なし」が示される。
【0026】
サブバス故障通知は、ACT系ECU50からサブECU40に向けて送信される。サブバス故障通知は、ACT系ECU50においてサブバス9の通信状態に異常があるか否かを判断した結果、即ち、サブバス9の故障を検出したか否かを表す情報であり、具体的には、「故障あり」または「故障なし」が示される。
【0027】
なお、メインバス8およびサブバス9を介して送受信される上述した各情報には、送信される毎にインクリメントされる送信順情報、およびCRC等の誤り検出情報が付加される。
【0028】
[1−3.ECU]
図1に示すように、メインECU30は、センサバスIF部31と、メインバスIF部32と、メイン演算部33とを備える。サブECU40は、センサバスIF部41と、サブバスIF部42と、サブ演算部43とを備える。ACT系ECU50は、メインバスIF部51と、サブバスIF部52と、ACT演算部53とを備える。HMI系ECU60は、メインバスIF部61と、サブバスIF部62と、HMI演算部63とを備える。
【0029】
センサバスIF部31,41は、センサバス7を介した通信を行う通信回路である。メインバスIF部32,51,61は、メインバス8を介した通信を行う通信回路である。サブバスIF部42,52,62は、サブバス9を介した通信を行う通信回路である。
【0030】
メイン演算部33、サブ演算部43、ACT演算部53、およびHMI演算部63は、いずれも、CPUと、例えば、RAM又はROM等の半導体メモリ(以下、メモリ)と、を有するマイクロコンピュータを備える。各演算部33,43,53,63が実現する各機能は、CPUが非遷移的実体的記録媒体に格納されたプログラムを実行することにより実現される。この例では、メモリが、プログラムを格納した非遷移的実体的記録媒体に該当する。また、このプログラムが実行されることで、プログラムに対応する方法が実行される。なお、各演算部33,43,53,63は、それぞれが1つのマイクロコンピュータを備えてもよいし、複数のマイクロコンピュータを備えてもよい。
【0031】
各演算部33,43,53,63が実行する各機能を実現する手法はソフトウェアに限るものではなく、その一部又は全部の機能は、一つあるいは複数のハードウェアを用いて実現されてもよい。例えば、上記機能がハードウェアである電子回路によって実現される場合、その電子回路は、デジタル回路、又はアナログ回路、あるいはこれらの組合せによって実現されてもよい。
【0032】
[2.処理]
[2−1.メイン演算部]
メイン演算部33は、機能ブロックとして、操作量生成部331と、動作判断部332と、バス判断部333と、指示通知部334と、を備える。なお、動作判断部332およびバス判断部333がメイン判断部に相当する。
【0033】
操作量生成部331は、センサバスIF部31を介して情報取得部2から取得した情報に基づいてメイン操作量を繰り返し生成する。
動作判断部332は、メイン演算部33の動作に異常があるか否かを判断する。具体的には、CPUについては、例えば、デュアルロックステップ等、CPUに同じ演算を行わせた結果を検算することで異常の有無を判断してもよい。メモリについては、例えば、メモリへのアクセス時に行われる誤り検出によって、異常の有無を判断してもよい。
【0034】
バス判断部333は、メインバス8を介した通信状態の異常を判断する。
指示通知部334は、操作量生成部331で生成されたメイン操作量を、メインバス8を介して送信すると共に、動作判断部332およびバス判断部333での判断結果に従って、切替指示を送信する。
【0035】
ここで、メイン演算部33が、バス判断部333としての機能を実現するために実行するバス判断処理、および指示通知部334としての機能を実現するために実行する通知処理について、図3および図4のフローチャートを用いて説明する。
【0036】
バス判断処理は、メインバス8を介してメインバス故障通知を受信する毎に実行される。以下、受信したバス故障通知を、単に受信通知という。
図3に示すように、メイン演算部33は、バス判断処理が開始されると、まず、S110では、メインバス8について既に異常ありと判断されているか否かを判断する。メイン演算部33は、既に異常ありと判断されている場合は、S160に処理を移行し、未だ異常ありと判断されていない場合は、S120に処理を移行する。
【0037】
メイン演算部33は、S120では、受信通知の前回の受信からの経過時間が、予め設定された規定時間内であるか否かを判断する。規定時間は、例えば、受信通知の正常時における平均的な受信間隔の2倍程度に設定されてもよい。メイン演算部33は、経過時間が規定時間を超えていると判断した場合は、S160に処理を移行し、経過時間が規定時間内であると判断した場合は、S130に処理を移行する。
【0038】
メイン演算部33は、S130では、受信通知に付与されている順序情報に異常があるか否かを判断する。具体的には、前回の受信通知に付与された順序情報と比較することで、順番の入れ替わり、情報の欠落、同一情報の反復受信等が検出された場合に異常があると判断する。なお、本ステップの判断は、受信通知の送信元毎に個別に実施する。メイン演算部33は、制御対象部5に属するいずれかのECUからの受信通知について、順序情報に異常があると判断した場合は、S160に処理を移行し、順序情報に異常がないと判断した場合は、S140に処理を移行する。
【0039】
メイン演算部33は、S140では、受信通知に符号誤りがあるか否かを判断する。具体的には、受信通知に付与されている誤り検出情報を用いて符号誤りの有無を判断する。メイン演算部33は、受信通知に符号誤りがあると判断した場合は、S160に処理を移行し、受信通知に符号誤りはないと判断した場合は、S150に処理を移行する。
【0040】
メイン演算部33は、S150では、メインバス8の通信状態に異常はないと判断して、処理を終了する。
メイン演算部33は、S160では、メインバス8の通信状態に異常があると判断して、処理を終了する。
【0041】
なお、メインバス8の通信状態に異常があるか否かの判断結果は、例えば、メイン演算部33が有するメモリに記憶される。
次に、通知処理は、予め設定された一定周期毎に繰り返し実行される。一定周期は、例えば、メイン操作量の送信周期と一致するように設定されてもよい。
【0042】
図4に示すように、メイン演算部33は、通知処理が開始されると、まず、S210では、動作判断部332での判断結果が異常ありであるか否かを判断する。メイン演算部33は、判断結果が異常ありであればS260に処理を移行し、判断結果が異常なしであればS220に処理を移行する。
【0043】
メイン演算部33は、S220では、バス判断部333での判断結果が異常ありであるか否かを判断する。メイン演算部33は、判断結果が異常ありであればS260に処理を移行し、判断結果が異常なしであればS230に処理を移行する。
【0044】
メイン演算部33は、S230では、メインバス8を介して「故障あり」と示されたバス故障通知(以下、故障あり通知)を受信したか否かを判断する。メイン演算部33は、故障あり通知を受信している場合は、S260に処理を移行し、故障あり通知を受信していない場合は、S240に処理を移行する。
【0045】
メイン演算部33は、S240では、操作量生成部331で生成された操作量であるメイン操作量を、メインバス8を介して送信する。
メイン演算部33は、続くS250では、「切替不要」と示された切替指示を、メインバス8を介して送信して、処理を終了する。
【0046】
メイン演算部33は、S260では、「切替必要」と示された切替指示通知を、メインバス8を介して送信して、処理を終了する。
なお、S210〜S230の判断にて肯定判断される条件が指示条件に相当する。
【0047】
[2−2.サブ演算部]
サブ演算部43は、図1に示すように、機能ブロックとして、操作量生成部431と、動作判断部432と、バス判断部433と、状態通知部434と、を備える。なお、動作判断部432およびバス判断部433がサブ判断部に相当する。
【0048】
操作量生成部431は、センサバスIF部41を介して情報取得部2から取得した情報に基づいてサブ操作量を繰り返し生成する。なお、サブ操作量はメイン操作量と同様の手法を用いて生成されてもよいし、メイン操作量とは異なる手法を用いて生成されてもよい。例えば、サブ操作量は、より演算量の少ない簡易な手法を用いたり、精度の有効桁数を落としたりして生成してもよい。
【0049】
動作判断部432は、サブ演算部43の動作に異常があるか否かを判定する。具体的には、メイン演算部33の動作判断部332と同様の手法を用いてもよい。
バス判断部433は、サブバス9を介した通信状態の異常を判定する。具体的な判定の手法は、メイン演算部33のバス判断部333と同様の手法を用いてもよい。つまり、サブ演算部43が、バス判断部433としての機能を実現するために実行するバス判断処理の内容は、メイン演算部33が実行するバス判断処理と同様である。但し、上述のS110〜S260の説明において、メイン演算部33はサブ演算部43に、メインバス8はサブバス9に、メインバス故障通知はサブバス故障通知に読み替えるものとする。
【0050】
状態通知部434は、操作量生成部431で生成されたサブ操作量を送信すると共に、動作判断部432およびバス判断部433での判断結果に従って、サブ状態を送信する。
ここで、サブ演算部43が、状態通知部434としての機能を実現するために実行する通知処理について、図5のフローチャートを用いて説明する。
【0051】
通知処理は、予め設定された一定周期毎に繰り返し実行される。一定周期は、例えば、サブ操作量の送信周期と一致するように設定されてもよい。
サブ演算部43は、通知処理が開始されると、S310では、動作判断部432での判断結果が異常ありであるか否かを判断し、S320では、バス判断部433での判断結果が異常ありであるか否かを判断し、S330では、サブバス9を介して「故障あり」と示されたサブバス故障通知(以下、故障あり通知)を受信したか否かを判断する。
【0052】
サブ演算部43は、S310またはS320にて異常ありと判断した場合、あるいはS330にて故障あり通知を受信したと判断した場合は、S360に処理を移行し、それ以外の場合は、S340に処理を移行する。
【0053】
サブ演算部43は、S340では、操作量生成部431で生成された操作量であるサブ操作量を、サブバス9を介して送信する。
サブ演算部43は、続くS350では、「異常なし」と示されたサブ状態を、サブバス9を介して送信して、処理を終了する。
【0054】
サブ演算部43は、S360では、「異常あり」と示されたサブ状態を、サブバス9を介して送信して、処理を終了する。
[2−3.ACT演算部]
ACT演算部53は、機能ブロックとして、メインバス判断部531と、サブバス判断部532と、選択部533と、実行部534と、を備える。
【0055】
メインバス判断部531は、メインECU30のバス判断部333と同様に構成され、サブバス判断部532は、サブECU40のバス判断部433と同様に構成される。
選択部533は、メインバス判断部531およびサブバス判断部532での判断結果等に従って、バス故障通知を送信すると共に、メイン操作量およびサブ操作量のいずれかを選択操作量として選択し、実行部534に供給する。なお、出荷時や修理後等の初期状態では、選択操作量として、メイン操作量が選択される。
【0056】
実行部534は、選択部533から供給される選択操作量に従って、アクチュエータ等の制御を実行する。
ここで、ACT演算部53が、選択部533としての機能を実現するために実行する選択処理について、図6のフローチャートを用いて説明する。
【0057】
選択処理は、予め設定された一定周期毎に繰り返し実行される。
ACT演算部53は、選択処理が開始されると、S410では、メインバス判断部531での判断結果が異常ありであるか否かを判断する。ACT演算部53は、判断結果が異常ありである場合、S480に処理を移行し、判断結果が異常なしである場合、S420に処理を移行する。
【0058】
ACT演算部53は、S420では、「故障なし」と示されたメインバス故障通知を、メインバス8を介して送信する。
ACT演算部53は、続くS430では、サブバス判断部532での判断結果が異常ありであるか否かを判断する。ACT演算部53は、判断結果が異常ありである場合、S440に処理を移行し、判断結果が異常なしである場合、S450に処理を移行する。
【0059】
ACT演算部53は、S440では、「故障あり」と示されたサブバス故障通知を、サブバス9を介して送信し、S460に処理を進める。
ACT演算部53は、S450では、「故障なし」と示されたサブバス故障通知を、サブバス9を介して送信し、S460に処理を進める。
【0060】
ACT演算部53は、S460では、メインバス8を介して「切替必要」と示された切替指示(以下、要切替指示)を受信したか否かを判断する。ACT演算部53は、要切替指示を受信している場合、S500に処理を移行し、要切替指示を受信していない場合、S470に処理を移行する。
【0061】
ACT演算部53は、S470では、実行部534に供給する操作量として、メイン操作量を選択して、処理を終了する。
ACT演算部53は、S480では、「故障あり」と示されたメインバス故障通知を、メインバス8を介して送信する。
【0062】
ACT演算部53は、続くS490では、「故障なし」と示されたサブバス故障通知を、サブバス9を介して送信して、S500に処理を進める。
ACT演算部53は、S500では、実行部534に供給する操作量として、サブ操作量を選択して、処理を終了する。
【0063】
なお、S410に係るS110〜S140およびS470での判断にて肯定判断される条件が切替条件に相当する。また、S420、S420、S480がメイン故障通知部に相当し、S430〜S450、S490がサブ故障通知部に相当する。
【0064】
[2−4.HMI演算部]
HMI演算部63は、機能ブロックとして、メインバス判断部631と、サブバス判断部632と、報知部633と、を備える。
【0065】
メインバス判断部631は、メインECU30のバス判断部333と同様に構成され、サブバス判断部632は、サブECU40のバス判断部433と同様に構成される。
報知部633は、メインバス判断部631およびサブバス判断部632での判断結果等に従って、自車両のドライバーに対する報知を実行する。
【0066】
ここで、HMI演算部63が、報知部633としての機能を実現するために実行する報知処理について、図7のフローチャートを用いて説明する。
報知処理は、予め設定された一定周期毎に繰り返し実行される。
【0067】
HMI演算部63は、報知処理が開始されると、S610では、メインバス判断部631での判断結果が異常ありであるか否かを判断する。HMI演算部63は、判断結果が異常ありである場合、S650に処理を移行し、判断結果が異常なしである場合、S620に処理を移行する。
【0068】
HMI演算部63は、S620では、サブバス判断部632での判断結果が異常ありであるか否かを判断する。HMI演算部63は、判断結果が異常ありである場合、S650に処理を移行し、判断結果が異常なしである場合、S630に処理を移行する。
【0069】
HMI演算部63は、S630では、メインバス8を介して、「切替必要」と示された切替指示(即ち、要切替指示)を受信したか否かを判断する。HMI演算部63は、要切替指示を受信している場合、S650に処理を移行し、要切替指示を受信していない場合、S640に処理を移行する。
【0070】
HMI演算部63は、S640では、メインバス8またはサブバス9を介して、「故障あり」と示されたメインバス故障通知またはサブバス故障通知(以下、故障あり通知)を受信したか否かを判断する。HMI演算部63は、いずれかの故障あり通知を受信している場合、S650に処理を移行し、いずれの故障あり通知も受信していない場合、処理を終了する。
【0071】
HMI演算部63は、S650では、検出された異常の形態に応じて、ドライバーに対する報知を実行して、処理を終了する。
ドライバーに対する報知として、具体的には、例えば、異常が生じたことを異常箇所と共に示す報知を行ってもよい。また、自動運転から手動運転への切替をドライバーに促す報知を行ってもよい。
【0072】
[3.動作例]
自動運転システム1の代表的な動作例を、図8図16を用いて説明する。
基本的に、メインECU30は、メインバス8を介して、メイン操作量および切替指示を繰り返し送信し、サブECU40は、サブバス9を介して、サブ操作量およびサブ状態を繰り返し送信する。また、ACT系ECU50は、メイン操作量を受信する毎に、メインバス8を介してメインバス故障通知を送信し、サブ操作量を受信する毎に、サブバス9を介してサブバス故障通知を送信する。
【0073】
図8図16では、「切替不要」と示された切替指示、「故障なし」と示されたメインバス故障通知およびサブバス故障通知については記載を省略する。以下の説明では、「切替必要」と示された切替指示を、短に切替指示と記述し、「故障あり」と示されたメインバス故障通知およびサブバス故障通知を、単にメインバス故障通知およびサブバス故障通知と記述する。
【0074】
図8は、メインECU30にて、メイン演算部33の動作に異常が検出された場合の動作を示す。
メインECU30にて異常が検出される前は、ACT系ECU50は、メインバス8を介して取得されるメイン操作量に従って制御を実行する。メインECU30にて異常が検出されると、メインECU30は、メインバス8を介して切替指示を送信する。
【0075】
切替指示を受信したACT系ECU50は、選択操作量をメイン操作量からサブ操作量に切り替えるサブ操作量選択を行なう。以後、全てのACT系ECU50は、サブバス9を介して取得されるサブ操作量に従って制御を実行する。また、切替指示を受信したHMI系ECU50は、ドライバーに対する報知を実行する。
【0076】
図9は、メインバス8の故障によりメインバス8を介した通信が不能になった場合、または、メインバス8は正常であるが、メインECU30がメインバス8を介して送受信不能になった場合の動作を示す。
【0077】
全てのACT系ECU50およびHMI系ECU60は、メインバス8を介した受信が、規定時間以上途絶えた時点で、メインバス8の通信状態が異常であると判断する。つまり、全てのACT系ECU50およびHMI系ECU60にて、メインバス8の故障が検出される。このとき、HMI系ECU60は、ドライバーに対する報知を実行する。全てのACT系ECU50は、サブ操作量選択を行うことで、以後、サブバス9を介して取得されるサブ操作量に従って制御を実行する。また、全てのACT系ECU50は、それぞれ、メインバス8を介してメインバス故障通知を送信する。但し、この場合、メインECU30は、これらの通知を正常に受信できない。
【0078】
メインECU30は、メインバス8を介した受信が規定時間以上途絶えることで、メインバス8の通信状態が異常であると判断する。つまり、メインECU30でも、メインバス8の故障が検出され、メインECU30は、メインバス8を介して切替指示を送信する。但し、この場合、全てのACT系ECU50及びHMI系ECU60は、切替指示を正常に受信できない。
【0079】
図10は、メインバス8は正常であるが、メインECU30がメインバス8を介して受信不能になった場合の動作を示す。
全てのACT系ECU50は、メインバス8を介した受信を正常に行うことができるため、それぞれ、「故障なし」を示したメインバス故障通知を繰り返し送信する。但し、この場合、メインECU30は、これらの通知を正常に受信できない。
【0080】
メインECU30は、メインバス8を介した受信が規定時間以上途絶えることで、メインバス8の通信状態が異常であると判断し、メインバス8を介して切替指示を送信する。
全てのACT系ECU50およびHMI系ECU60は、切替指示を受信することで、サブ操作量選択およびドライバーへの報知を実行する。以後、全てのACT系ECU50が、サブバス9を介して取得されるサブ操作量に従って制御を実行する。
【0081】
図11は、メインバス8は正常であるが、メインECU30がメインバス8を介して送信不能になった場合の動作を示す。
全てのACT系ECU50およびHMI系ECU60は、メインバス8を介した受信が、規定時間以上途絶えた時点で、メインバス8の通信状態が異常であると判断し、サブ操作量選択およびドライバーへの報知を実行する。以後、全てのACT系ECU50が、サブバス8を介して取得されるサブ操作量に従って制御を実行する。また、全てのACT系ECU50は、それぞれ、メインバス8を介してメインバス故障通知を送信する。
【0082】
メインECU30は、メインバス故障通知を受信するとこで、メインバス8の通信状態が異常であると判断し、メインバス8を介して切替指示を送信する。但し、この場合、全てのACT系EUC50およびHMI系ECU60は、切替指示を正常に受信できない。
【0083】
図12は、メインバス8は正常であるが、ACT系ECU50の一つである駆動系ECU50aがメインバス8を介して受信不能になった場合の動作を示す。
駆動系ECU50aは、メインバス8を介した受信が規定時間以上途絶えることで、メインバス8の通信状態が異常であると判断し、サブ操作量選択を実行すると共に、メインバス8を介してメインバス故障通知を送信する。
【0084】
メインECU30は、メインバス故障通知を受信すると、メインバス8の通信状態に異常があると判断し、メインバス8を介して切替指示を送信する。
駆動系ECU50a以外のACT系ECU50およびHMI系ECU60は、切替指示を受信することで、サブ操作量選択およびドライバーへの報知を実行する。以後、全てのACT系ECU50が、サブバス9を介して取得されるサブ操作量に従って制御を実行する。
【0085】
図13は、メインバス8は正常であるが、ACT系ECU50の一つである駆動系ECU50aがメインバス8を介して送受信不能になった場合の動作を示す。
駆動系ECU50aは、メインバス8を介した受信が規定時間以上途絶えることで、メインバス8の通信状態が異常であると判断し、サブ操作量選択を実行すると共に、メインバス8を介してメインバス故障通知を送信する。但し、この場合は、メインECU30は、メインバス故障通知を正常に受信できない。
【0086】
メインECU30は、駆動系ECU50aからの受信が規定時間以上途絶えることで、メインバス8の通信状態が異常であると判断し、メインバス8を介して切替指示を送信する。
【0087】
駆動系ECU50a以外のACT系ECU50およびHMI系ECU60は、切替指示を受信することで、サブ操作量選択およびドライバーへの報知を実行する。以後、全てのACT系ECU50が、サブバス9を介して取得されるサブ操作量に従って制御を実行する。
【0088】
図14は、メインバス8は正常であるが、ACT系ECU50の一つである駆動系ECU50aがメインバス8を介して送信不能になった場合の動作を示す。
駆動系ECU50aは、他のACT系ECU50と同様に、「故障なし」を示したメインバス故障通知を送信する。但し、この場合、メインECU30は、駆動系ECU50aからの通知を正常に受信できない。
【0089】
メインECU30は、駆動系ECU50aからの受信が規定時間以上途絶えることで、メインバス8の通信状態が異常であると判断し、メインバス8を介して切替指示を送信する。
【0090】
駆動系ECU50aを含む全てのACT系ECU50およびHMI系ECU60は、切替指示を受信することで、サブ操作量選択およびドライバーへの報知を実行する。以後、全てのACT系ECU50が、サブバス9を介して取得されるサブ操作量に従って制御を実行する。
【0091】
図15は、メイン操作量に従った制御の実行時に、サブECU40にてサブ演算部43の動作異常が検出された場合の動作を示す。
全てのACT系ECU50は、メインバス8を介して取得されるメイン操作量に従って制御を実行する。このとき、サブECU40にて異常が検出されると、サブECU40は、サブバス9を介してサブ状態を送信する。サブ状態を受信したHMI系ECU60は、ドライバーに対する報知を実行する。
【0092】
なお、サブECU40にて、サブバス9を介した受信が規定時間以上途絶えた場合も、図15に示したものと、同様の動作となる。
図16は、メイン操作量に従った制御の実行時に、ACT系ECU50の一つである駆動系ECU50aにて、サブバス9を介した通信状態に異常が検出された場合の動作を示す。
【0093】
全てのACT系ECU50は、メインバス8を介して取得されるメイン操作量に従って制御を実行する。
駆動系ECU50aは、何等かの理由で、サブバス9を介した受信が規定時間以上途絶えると、サブバス9を介してサブバス故障通知を送信する。
【0094】
サブECU40は、サブバス故障通知を受信すると、サブバス9を介してサブ状態を送信する。サブ状態を受信したHMI系ECU60は、ドライバーに対する報知を実行する。
[4.効果]
以上詳述した第1実施形態によれば、以下の効果を奏する。
【0095】
(1)自動運転システム1では、メインECU30に接続されるメインバス8とは別に、サブECU40に接続されるサブバス9が設けられ、しかも、メイン操作量からサブ操作量への切り替えに関わる情報の送受信を、メインバス8を介して行う。このため、サブECU40の動作およびサブバス9の通信状態が、メインECU30の動作およびメインバス8の通信状態に影響を与えることがない。その結果、自動運転システム1によれば、サブECU40およびサブバス9(以下、サブ系)は、メインECU30およびメインバス8(以下、メイン系)と比較して、設計において低い安全基準を適用でき、サブ系に関わる部分の設計を簡略化できる。また、メインECU30の故障時はもちろん、メインバス8の故障時にも、サブ系を用いて自動運転制御を継続できるため、制御の信頼性を向上させることができる。
【0096】
(2)自動運転システム1では、メインバス8を介した通信状態の異常が、一部のACT系ECU50で検出された場合に、「切替必要」が示された切替指示を送信することで、全てのACT系ECU50にサブ操作量を選択させる。このため、メイン操作量とサブ操作量との間で整合がとれている保証がない場合であっても、全てのACT系ECU50は、互いに整合のとれた制御を行うことができる。
【0097】
(3)自動運転システム1では、何等かの異常が検出されていない場合および操作量の選択を切り替える必要がない場合でも、その旨を示すメインバス故障通知、サブバス故障通知、および切替指示が、常時送信される。このため、メインバス8およびサブバス9の故障によって、これらの通知自体を送受信できない場合であっても、これらの通知の受信が途絶することから、通信状態の異常を検出できる。
【0098】
[5.安全基準について]
サブ系(即ち、サブバス9およびサブECU40)を用いて送受信される情報は、通常時、メイン系(即ち、メインバス8およびメインECU30)に故障がないときには、使用されない。このため、サブ系に故障があったとしても即座に危険にはならず、ISO26262におけるレイテントフォールトの扱いとなる。従って、自動運転システム1の全体に、最も高い安全基準「ASIL D」が要求されるとしても、サブECU40の故障検出の設計、および各ECUにおけるサブバス9の故障検出の設計については、より低い安全基準「ASIL B」での設計が許容される。
【0099】
但し、例えば、メインECU30から切替指示をメインバス8ではなくサブバス9で送信する構成を仮定した場合、サブECU40がサブバス9を占有する事態が生じたときに、切替指示を送信できなくなるおそれがある。このため、サブECU40においても高い安全基準が要求される。
【0100】
また、サブバス9にノイズがのった場合、誤った切替指示、かつ異常なサブ操作量が送信される可能性がある。この場合、ACT系ECU50にて、正常なメイン操作量から異常なサブ操作量への意図しない切り替えが実行され、異常な車両挙動を示す可能性がある。従って、ACT系ECU50におけるサブバス9の故障検出に対しても高い安全基準が要求される。
【0101】
更に、ACT系ECU50からメインバス故障通知をサブバス9で送信する構成を仮定した場合、上述のサブバス9にノイズがのった場合と同様に、誤ったメインバス故障かつ異常なサブ操作量が送信される可能性がある。この場合、メインバス故障を受信したメインECU30から切替指示が送信されることで、全てのACT系ECU50にて、正常なメイン操作量から異常なサブ操作量へ意図しない切り替えが実行され、異常な車両挙動を示す可能性がある。従って、ACT系ECU50におけるサブバス9の故障検出に対しても高い安全基準が要求される。
【0102】
つまり、自動運転システム1では、メイン操作量からサブ操作量への切り替えに関わる情報の送受信を、メインバス8にて行っているため、サブバス9での通信異常または故障が、メイン系を用いた通常時の制御に影響を与えることがない。
【0103】
なお、自動運転システム1では、メインECU30の動作判断部332、バス判断部333およびメインバスIF部32、並びに、ACT系ECU50のメインバス判断部531およびメインバスIF部51に、高い安全基準である「ASIL D」が要求される。また、サブECU40の動作判断部432、バス判断部433およびサブバスIF部42、並びに、ACT系ECU50のサブバス判断部532およびサブバスIF部52は、低い安全基準である「ASIL B」でよい。
【0104】
[6.他の実施形態]
以上、本開示の実施形態について説明したが、本開示は上述の実施形態に限定されることなく、種々変形して実施することができる。
【0105】
(a)上記実施形態では、異常の有無および操作量切替の要不要に関わらず、メインバス故障通知、サブバス故障通知、および切替指示を、繰り返し送信するように構成されているが、本開示は、これに限定されるものではない。例えば、異常がある場合、または操作量の切替が必要であり場合にのみ、これらの通知を送信するように構成されてもよい。
【0106】
(b)上記実施形態では、メインECU30から送信される切替指示に従って、ACT系ECU50は、メイン操作量からサブ操作量への切替を行うように構成されているが、本開示は、これに限定されるものではない。例えば、ACT系ECU50は、他のACT系ECU50が送信したメインバス故障通知に従って切替を行うように構成されてもよい。
【0107】
(c)上記実施形態では、メイン演算部33とサブ演算部43とが、別々のマイクロコンピュータによって実現されているが、これらは単一のマイクロコンピュータによって実現されてもよい。
【0108】
(d)上記実施形態における1つの構成要素が有する複数の機能を、複数の構成要素によって実現したり、1つの構成要素が有する1つの機能を、複数の構成要素によって実現したりしてもよい。また、複数の構成要素が有する複数の機能を、1つの構成要素によって実現したり、複数の構成要素によって実現される1つの機能を、1つの構成要素によって実現したりしてもよい。また、上記実施形態の構成の一部を省略してもよい。また、上記実施形態の構成の少なくとも一部を、他の上記実施形態の構成に対して付加又は置換してもよい。なお、特許請求の範囲に記載した文言から特定される技術思想に含まれるあらゆる態様が本開示の実施形態である。
【0109】
(e)上述した車両制御装置(即ち、制御指示部3、制御対象部5、メインバス8およびサブバス9)の他、当該車両制御装置を構成要素とするシステム、当該車両制御装置を構成するメイン処理部(即ち、メインECU30)、サブ処理部(即ち、サブECU40)、および制御実行部(即ち、ACT系ECU50およびHMI系ECU60)のいずれかとしてコンピュータを機能させるためのプログラム、このプログラムを記録した半導体メモリ等の非遷移的実態的記録媒体など、種々の形態で本開示を実現することもできる。
【符号の説明】
【0110】
1…自動運転システム、3…制御指示部、5…制御実行部、7…センサバス、8…メインバス、9…サブバス、30…メインECU、40…サブECU、50…ACT系ECU、53…ACT演算部、531…メインバス判断部、532…サブバス判断部、533…選択部、534…実行部。
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16