IP Force 特許公報掲載プロジェクト 2022.1.31 β版

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

▶ 株式会社オートネットワーク技術研究所の特許一覧 ▶ 住友電装株式会社の特許一覧 ▶ 住友電気工業株式会社の特許一覧

特開2023-152421車載装置、車載システム、制御方法及びコンピュータプログラム
<>
  • 特開-車載装置、車載システム、制御方法及びコンピュータプログラム 図1
  • 特開-車載装置、車載システム、制御方法及びコンピュータプログラム 図2
  • 特開-車載装置、車載システム、制御方法及びコンピュータプログラム 図3
  • 特開-車載装置、車載システム、制御方法及びコンピュータプログラム 図4
  • 特開-車載装置、車載システム、制御方法及びコンピュータプログラム 図5
  • 特開-車載装置、車載システム、制御方法及びコンピュータプログラム 図6
  • 特開-車載装置、車載システム、制御方法及びコンピュータプログラム 図7
  • 特開-車載装置、車載システム、制御方法及びコンピュータプログラム 図8
  • 特開-車載装置、車載システム、制御方法及びコンピュータプログラム 図9
  • 特開-車載装置、車載システム、制御方法及びコンピュータプログラム 図10
  • 特開-車載装置、車載システム、制御方法及びコンピュータプログラム 図11
  • 特開-車載装置、車載システム、制御方法及びコンピュータプログラム 図12
  • 特開-車載装置、車載システム、制御方法及びコンピュータプログラム 図13
  • 特開-車載装置、車載システム、制御方法及びコンピュータプログラム 図14
  • 特開-車載装置、車載システム、制御方法及びコンピュータプログラム 図15
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023152421
(43)【公開日】2023-10-17
(54)【発明の名称】車載装置、車載システム、制御方法及びコンピュータプログラム
(51)【国際特許分類】
   G06F 8/65 20180101AFI20231010BHJP
   B60R 16/02 20060101ALI20231010BHJP
【FI】
G06F8/65
B60R16/02 660U
【審査請求】未請求
【請求項の数】12
【出願形態】OL
(21)【出願番号】P 2022062434
(22)【出願日】2022-04-04
(71)【出願人】
【識別番号】395011665
【氏名又は名称】株式会社オートネットワーク技術研究所
(71)【出願人】
【識別番号】000183406
【氏名又は名称】住友電装株式会社
(71)【出願人】
【識別番号】000002130
【氏名又は名称】住友電気工業株式会社
(74)【代理人】
【識別番号】110000280
【氏名又は名称】弁理士法人サンクレスト国際特許事務所
(72)【発明者】
【氏名】後呂 翔太
【テーマコード(参考)】
5B376
【Fターム(参考)】
5B376CA27
5B376GA08
(57)【要約】      (修正有)
【課題】ECUの更新に掛かる電力消費を抑制する車載装置、車載システム、制御方法及びコンピュータプログラムを提供する。
【解決手段】車両において、外部から提供される更新データを、通信バスを介して接続され、複数のクラスタのうち少なくとも1個のクラスタにそれぞれ属する複数のECUに配信する車載装置は、制御部を備える。制御部は、複数のクラスタのうち第1クラスタを対象とする更新データである第1更新データの配信に先立って、第1クラスタに属する複数のECUのうち、第1更新データによって更新される更新ECUが属し、第1更新データによって更新されない非更新ECUが属さない仮クラスタを設定するための設定情報を、第1クラスタに属する複数のECUに配信し、第1更新データの配信の際に、第1クラスタを無効とし、仮クラスタを有効とした制御メッセージを複数のECUに配信する。
【選択図】図8
【特許請求の範囲】
【請求項1】
車両の外部から提供される更新データを、通信バスを介して接続されている複数のECUに配信する車載装置であって、
前記車載装置は、制御部を備え、
複数の前記ECUは、
複数のクラスタのうち少なくとも1個のクラスタにそれぞれ属し、
前記通信バスから受信した制御メッセージにおいて、自ECUが属する前記クラスタが無効となっている場合に通常モードよりも機能を制限して消費電力を抑えるスリープモードとなり、自ECUが属する前記クラスタが有効となっている場合に前記通常モードとなり、
前記制御部は、
複数の前記クラスタのうち第1クラスタを対象とする前記更新データである第1更新データの配信に先立って、前記第1クラスタに属する複数の前記ECUのうち、前記第1更新データによって更新される更新ECUが属し、前記第1更新データによって更新されない非更新ECUが属さない仮クラスタを設定するための設定情報を、前記第1クラスタに属する複数の前記ECUに配信し、
前記第1更新データの配信の際に、前記第1クラスタを無効とし、前記仮クラスタを有効とした前記制御メッセージを複数の前記ECUに配信する、
車載装置。
【請求項2】
複数の前記ECUと、複数の前記ECUがそれぞれ属する前記クラスタとを紐付けたクラスタ情報を記憶している記憶部をさらに備え、
前記制御部は、前記第1更新データ又は前記第1更新データの提供に先立って前記車両の外部から提供される更新情報と、前記クラスタ情報と、に基づいて、前記第1クラスタに属する複数の前記ECUが、前記更新ECUであるか、前記非更新ECUであるかをそれぞれ判定する、
請求項1に記載の車載装置。
【請求項3】
前記制御部は、前記第1更新データを配信した後、前記仮クラスタの設定を破棄するための破棄情報を、前記第1クラスタに属する複数の前記ECUに配信する、
請求項2に記載の車載装置。
【請求項4】
前記制御部は、
前記第1更新データの配信に先立って前記第1クラスタに属する新たなECUが前記通信バスに追加される場合に、前記新たなECUに関する情報である追加情報を前記新たなECUが追加される前に取得し、
前記第1更新データの配信に先立って、前記第1クラスタに属する複数の前記ECUに、前記追加情報を配信する、
請求項1に記載の車載装置。
【請求項5】
前記制御部は、
前記第1クラスタを有効とした前記制御メッセージによって前記第1クラスタに属する複数の前記ECUを前記通常モードとしている状態で、前記設定情報を前記第1クラスタに属する複数の前記ECUに配信する、
請求項1に記載の車載装置。
【請求項6】
前記制御部は、前記更新ECUが前記第1更新データにより更新された後、前記更新ECUと同じ前記通信バスに接続されている前記非更新ECUである第1非更新ECUが前記通常モードとなった際に、前記第1非更新ECUに対して前記更新ECUの前記第1更新データによる更新内容を通知する、
請求項5に記載の車載装置。
【請求項7】
複数の前記ECUは、前記仮クラスタの設定前において第1制御メッセージにより前記通常モードに切り替わり、前記仮クラスタの設定後において前記第1制御メッセージによっては前記通常モードに切り替わらず、前記第1制御メッセージとは異なる第2制御メッセージによって前記通常モードに切り替わる競合ECUを含み、
前記制御部は、
前記仮クラスタの設定後に前記制御部が前記競合ECUを宛先とする前記第1制御メッセージを受信した場合に、前記競合ECUに前記第2制御メッセージを送信し、
前記第2制御メッセージにより前記競合ECUを前記通常モードとしている状態で、前記競合ECUに対して、前記第1制御メッセージが前記競合ECUを前記通常モードに切り替えるように設定するための有効化情報を送信し、
前記有効化情報を送信した後に、前記第1制御メッセージを前記競合ECUに送信する、
請求項1に記載の車載装置。
【請求項8】
前記制御部は、前記有効化情報及び前記第1制御メッセージを前記競合ECUに送信した後、前記競合ECUに対して、前記第1制御メッセージが前記競合ECUを前記通常モードに切り替えないように設定するための無効化情報を送信する、
請求項7に記載の車載装置。
【請求項9】
前記制御メッセージは、
前記制御部が前記制御メッセージを受信してから、前記競合ECUにおいて前記制御メッセージに基づく制御が実行されるまでの許容時間が第1閾値未満の即時性メッセージと、
前記許容時間が前記第1閾値以上の非即時性メッセージと、
を含み、
前記第1制御メッセージは、前記非即時性メッセージである、
請求項7又は請求項8に記載の車載装置。
【請求項10】
請求項1から請求項8のいずれか1項に記載の車載装置と、
前記車載装置に前記通信バスを介して接続されている複数の前記ECUと、
を備える、車載システム。
【請求項11】
車両の外部から提供される更新データを、通信バスを介して接続されている複数のECUに配信する車載装置を制御するための制御方法であって、
複数の前記ECUは、
複数のクラスタのうち少なくとも1個のクラスタにそれぞれ属し、
前記通信バスから受信した制御メッセージにおいて、自ECUが属する前記クラスタが無効となっている場合に通常モードよりも機能を制限して消費電力を抑えるスリープモードとなり、自ECUが属する前記クラスタが有効となっている場合に前記通常モードとなり、
前記制御方法は、
複数の前記クラスタのうち第1クラスタを対象とする前記更新データである第1更新データの配信に先立って、前記第1クラスタに属する複数の前記ECUのうち、前記第1更新データによって更新される更新ECUが属し、前記第1更新データによって更新されない非更新ECUが属さない仮クラスタを設定するための設定情報を、前記第1クラスタに属する複数の前記ECUに配信する第1ステップと、
前記第1更新データの配信の際に、前記第1クラスタを無効とし、前記仮クラスタを有効とした前記制御メッセージを複数の前記ECUに配信する第2ステップと、
を備える、制御方法。
【請求項12】
車両の外部から提供される更新データを、通信バスを介して接続されている複数のECUに配信する車載装置を制御するためのコンピュータプログラムであって、
複数の前記ECUは、
複数のクラスタのうち少なくとも1個のクラスタにそれぞれ属し、
前記通信バスから受信した制御メッセージにおいて、自ECUが属する前記クラスタが無効となっている場合に通常モードよりも機能を制限して消費電力を抑えるスリープモードとなり、自ECUが属する前記クラスタが有効となっている場合に前記通常モードとなり、
前記コンピュータプログラムは、コンピュータに、
複数の前記クラスタのうち第1クラスタを対象とする前記更新データである第1更新データの配信に先立って、前記第1クラスタに属する複数の前記ECUのうち、前記第1更新データによって更新される更新ECUが属し、前記第1更新データによって更新されない非更新ECUが属さない仮クラスタを設定するための設定情報を、前記第1クラスタに属する複数の前記ECUに配信する第1ステップと、
前記第1更新データの配信の際に、前記第1クラスタを無効とし、前記仮クラスタを有効とした前記制御メッセージを複数の前記ECUに配信する第2ステップと、
を実行させる、コンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、車載装置、車載システム、制御方法及びコンピュータプログラムに関する。
【背景技術】
【0002】
複数のECU(Electronic Control Unit)が接続されている車載ネットワークが知られている。近年、車両に搭載されるECUの個数の増加に伴い、システム全体における消費電力を抑えるために、制御に用いる一部のECUのみをウェイクアップさせ、その他のECUをスリープさせるパーシャルネットワーク機能が発展してきた。パーシャルネットワーク機能を用いる場合、協働するECU群をクラスタリングすることで、ECUを円滑にウェイクアップさせる技術が知られている。
【0003】
非特許文献1には、ネットワークマネジメントメッセージ(NMメッセージ)を用いて、ECU間のパーシャルネットワーククラスタ(PNC:Partial Network Cluster)の要求及び開放情報を通信する技術が開示されている。
【0004】
特許文献1には、互いにデータフレームの通信を行うECU間でPNCを形成する技術が開示されている。例えばエアコン用ECUと、エアコンの稼働状況を示すメータ用ECUとの間で第1のPNCを形成する。各ECUは、複数のPNCのうちいずれのPNCにおいてデータフレームの通信が行われるかを示すPNC情報を含むNMフレームを作成して、車載ネットワークを介して当該NMフレームを他のECUに送信する。
【0005】
特許文献2には、第1クラスタに属する制御装置と、第2クラスタに属する制御装置とが開示されている。各制御装置は、クラスタ毎のスリープ可否を示すスリープ可否ビットを含むネットワークマネジメントフレームを他の制御装置に送信する。ネットワークマネジメントフレームに含まれる第1クラスタのスリープ可否ビットが「1」の場合、第1クラスタに属する制御装置はスリープを停止して起動状態になる。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】特開2021-182679号公報
【特許文献2】特開2014-872号公報
【非特許文献】
【0007】
【非特許文献1】AUTOSAR Layered Software Architecture,[online],[令和4年3月2日検索],インターネット<https://www.autosar.org/fileadmin/user_upload/standards/classic/4-3/AUTOSAR_EXP_LayeredSoftwareArchitecture.pdf> p.161-p.165
【発明の概要】
【発明が解決しようとする課題】
【0008】
PNC等のクラスタ単位でECUのウェイクアップ及びスリープを制御する車載システムにおいて、クラスタ単位で配信される更新データによってECUのプログラムを更新する場合がある。この場合、所定のクラスタを対象とする更新データが配信されると、当該所定のクラスタに属するECUがすべてウェイクアップする。
【0009】
しかしながら、当該所定のクラスタに、更新データによって更新されないECUが含まれている場合がある。すなわち、更新データによって、当該所定のクラスタに属するECUのうち一部のECUのみが更新される場合がある。この場合、更新されないECUも不必要にウェイクアップされるため、ECUを更新する際の車載システムにおいて、余分な電力消費が生じるおそれがある。
【0010】
特に、ECUの更新は、車両のイグニッションがオフされている場合等、車両のバッテリの電力消費をより抑制したい状況下で実行される場合が多い。このため、ECUの更新に掛かる電力消費を抑制する必要がある。
【0011】
かかる課題に鑑み、本開示は、ECUの更新に掛かる電力消費を抑制することができる車載装置、車載システム、制御方法及びコンピュータプログラムを提供することを目的とする。
【課題を解決するための手段】
【0012】
本開示の車載装置は、車両の外部から提供される更新データを、通信バスを介して接続されている複数のECUに配信する車載装置であって、前記車載装置は、制御部を備え、複数の前記ECUは、複数のクラスタのうち少なくとも1個のクラスタにそれぞれ属し、前記通信バスから受信した制御メッセージにおいて、自ECUが属する前記クラスタが無効となっている場合に通常モードよりも機能を制限して消費電力を抑えるスリープモードとなり、自ECUが属する前記クラスタが有効となっている場合に前記通常モードとなり、前記制御部は、複数の前記クラスタのうち第1クラスタを対象とする前記更新データである第1更新データの配信に先立って、前記第1クラスタに属する複数の前記ECUのうち、前記第1更新データによって更新される更新ECUが属し、前記第1更新データによって更新されない非更新ECUが属さない仮クラスタを設定するための設定情報を、前記第1クラスタに属する複数の前記ECUに配信し、前記第1更新データの配信の際に、前記第1クラスタを無効とし、前記仮クラスタを有効とした前記制御メッセージを複数の前記ECUに配信する、車載装置である。
【0013】
本開示の制御方法は、車両の外部から提供される更新データを、通信バスを介して接続されている複数のECUに配信する車載装置を制御するための制御方法であって、複数の前記ECUは、複数のクラスタのうち少なくとも1個のクラスタにそれぞれ属し、前記通信バスから受信した制御メッセージにおいて、自ECUが属する前記クラスタが無効となっている場合に通常モードよりも機能を制限して消費電力を抑えるスリープモードとなり、自ECUが属する前記クラスタが有効となっている場合に前記通常モードとなり、前記制御方法は、複数の前記クラスタのうち第1クラスタを対象とする前記更新データである第1更新データの配信に先立って、前記第1クラスタに属する複数の前記ECUのうち、前記第1更新データによって更新される更新ECUが属し、前記第1更新データによって更新されない非更新ECUが属さない仮クラスタを設定するための設定情報を、前記第1クラスタに属する複数の前記ECUに配信する第1ステップと、前記第1更新データの配信の際に、前記第1クラスタを無効とし、前記仮クラスタを有効とした前記制御メッセージを複数の前記ECUに配信する第2ステップと、を備える、制御方法である。
【0014】
本開示のコンピュータプログラムは、車両の外部から提供される更新データを、通信バスを介して接続されている複数のECUに配信する車載装置を制御するためのコンピュータプログラムであって、複数の前記ECUは、複数のクラスタのうち少なくとも1個のクラスタにそれぞれ属し、前記通信バスから受信した制御メッセージにおいて、自ECUが属する前記クラスタが無効となっている場合に通常モードよりも機能を制限して消費電力を抑えるスリープモードとなり、自ECUが属する前記クラスタが有効となっている場合に前記通常モードとなり、前記コンピュータプログラムは、コンピュータに、複数の前記クラスタのうち第1クラスタを対象とする前記更新データである第1更新データの配信に先立って、前記第1クラスタに属する複数の前記ECUのうち、前記第1更新データによって更新される更新ECUが属し、前記第1更新データによって更新されない非更新ECUが属さない仮クラスタを設定するための設定情報を、前記第1クラスタに属する複数の前記ECUに配信する第1ステップと、前記第1更新データの配信の際に、前記第1クラスタを無効とし、前記仮クラスタを有効とした前記制御メッセージを複数の前記ECUに配信する第2ステップと、を実行させる、コンピュータプログラムである。
【発明の効果】
【0015】
本開示によれば、ECUの更新に掛かる電力消費を抑制することができる。
【図面の簡単な説明】
【0016】
図1図1は、実施形態に係る車載システムの一例を示す図である。
図2図2は、実施形態に係る車載装置の内部構成の一例を示す図である。
図3図3は、実施形態に係るECUの内部構成の一例を示す図である。
図4図4は、実施形態に係るクラスタ情報の一例を示すテーブルである。
図5図5は、データフィールドの各ビットとクラスタとの紐付けを例示する図である。
図6図6は、実施形態に係る制御メッセージの一例を示す図である。
図7図7は、実施形態に係る制御方法の一例を示すフローチャートである。
図8図8は、図7の仮クラスタ形成工程の詳細を示すフローチャートである。
図9図9は、仮クラスタを含むクラスタ情報の一例を示すテーブルである。
図10図10は、図7の更新工程の詳細を示すフローチャートである。
図11図11は、仮クラスタのみを有効とした制御メッセージを示す図である。
図12図12は、図7の仮クラスタ破棄工程の詳細を示すフローチャートである。
図13図13は、変形例に係る車載システムを示す図である。
図14図14は、変形例に係る制御方法を示すフローチャートである。
図15図15は、変形例に係る制御方法を示すフローチャートである。
【発明を実施するための形態】
【0017】
[本開示の実施形態の説明]
本開示の実施形態には、その要旨として、以下の構成が含まれる。
【0018】
(1)本開示の車載装置は、車両の外部から提供される更新データを、通信バスを介して接続されている複数のECUに配信する車載装置であって、前記車載装置は、制御部を備え、複数の前記ECUは、複数のクラスタのうち少なくとも1個のクラスタにそれぞれ属し、前記通信バスから受信した制御メッセージにおいて、自ECUが属する前記クラスタが無効となっている場合に通常モードよりも機能を制限して消費電力を抑えるスリープモードとなり、自ECUが属する前記クラスタが有効となっている場合に前記通常モードとなり、前記制御部は、複数の前記クラスタのうち第1クラスタを対象とする前記更新データである第1更新データの配信に先立って、前記第1クラスタに属する複数の前記ECUのうち、前記第1更新データによって更新される更新ECUが属し、前記第1更新データによって更新されない非更新ECUが属さない仮クラスタを設定するための設定情報を、前記第1クラスタに属する複数の前記ECUに配信し、前記第1更新データの配信の際に、前記第1クラスタを無効とし、前記仮クラスタを有効とした前記制御メッセージを複数の前記ECUに配信する、車載装置である。
【0019】
第1クラスタを無効とし、仮クラスタを有効とした制御メッセージを複数のECUに配信することで、更新ECUのみをウェイクアップさせ、非更新ECUをスリープモードのまま維持することができるため、ECUの更新に掛かる電力消費を抑制することができる。
【0020】
(2)前記(1)の車載装置において、複数の前記ECUと、複数の前記ECUがそれぞれ属する前記クラスタとを紐付けたクラスタ情報を記憶している記憶部をさらに備えてもよく、前記制御部は、前記第1更新データ又は前記第1更新データの提供に先立って前記車両の外部から提供される更新情報と、前記クラスタ情報と、に基づいて、前記第1クラスタに属する複数の前記ECUが、前記更新ECUであるか、前記非更新ECUであるかをそれぞれ判定してもよい。
【0021】
これにより、制御部において第1クラスタに属する複数のECUが、更新ECUであるか、非更新ECUであるかをそれぞれ判定することができる。
【0022】
(3)前記(1)又は前記(2)の車載装置において、前記制御部は、前記第1更新データを配信した後、前記仮クラスタの設定を破棄するための破棄情報を、前記第1クラスタに属する複数の前記ECUに配信してもよい。
【0023】
このように構成することで、限られたクラスタ数の中で動的に仮クラスタを設定することができる。
【0024】
(4)前記(1)から前記(3)のいずれかの車載装置において、前記制御部は、前記第1更新データの配信に先立って前記第1クラスタに属する新たなECUが前記通信バスに追加される場合に、前記新たなECUに関する情報である追加情報を前記新たなECUが追加される前に取得してもよく、前記第1更新データの配信に先立って、前記第1クラスタに属する複数の前記ECUに、前記追加情報を配信してもよい。
【0025】
このように構成することで、第1更新データを配信する前に、第1クラスタに属するECUに予め新たなECUに関する情報を伝えることができる。これにより、第1更新データを配信する際にスリープモードのまま維持される非更新ECUは、新たなECUが追加されるであろうことを事前に検知することができる。これにより、車載システムの信頼性を向上させることができる。
【0026】
(5)前記(1)から前記(4)のいずれかの車載装置において、前記制御部は、前記第1クラスタを有効とした前記制御メッセージによって前記第1クラスタに属する複数の前記ECUを前記通常モードとしている状態で、前記設定情報を前記第1クラスタに属する複数の前記ECUに配信してもよい。
【0027】
配信先のECUがスリープモードである場合であっても、制御部が配信先のECUを一時的にウェイクアップさせてから、設定情報を配信するため、より確実にECUに設定情報を配信することができる。
【0028】
(6)前記(1)から前記(5)のいずれかの車載装置において、前記制御部は、前記更新ECUが前記第1更新データにより更新された後、前記更新ECUと同じ前記通信バスに接続されている前記非更新ECUである第1非更新ECUが前記通常モードとなった際に、前記第1非更新ECUに対して前記更新ECUの前記第1更新データによる更新内容を通知してもよい。
【0029】
これにより、更新ECUの更新内容が第1非更新ECUの動作に不具合を生じさせることを抑制することができる。
【0030】
(7)前記(1)から前記(6)のいずれかの車載装置において、複数の前記ECUは、前記仮クラスタの設定前において第1制御メッセージにより前記通常モードに切り替わり、前記仮クラスタの設定後において前記第1制御メッセージによっては前記通常モードに切り替わらず、前記第1制御メッセージとは異なる第2制御メッセージによって前記通常モードに切り替わる競合ECUを含んでもよく、前記制御部は、前記仮クラスタの設定後に前記制御部が前記競合ECUを宛先とする前記第1制御メッセージを受信した場合に、前記競合ECUに前記第2制御メッセージを送信してもよく、前記第2制御メッセージにより前記競合ECUを前記通常モードとしている状態で、前記競合ECUに対して、前記第1制御メッセージが前記競合ECUを前記通常モードに切り替えるように設定するための有効化情報を送信してもよく、前記有効化情報を送信した後に、前記第1制御メッセージを前記競合ECUに送信してもよい。
【0031】
仮クラスタの競合によってウェイクアップしなくなった競合ECUのクラスタ設定を一時的に変更することで、競合ECUにおける所定の制御を実行可能とすることができる。これにより、クラスタ数が制限され、既に利用されているクラスタに仮クラスタを設定するような場合であっても、車載システムにおける不具合の発生を抑制することができる。
【0032】
(8)前記(7)の車載装置において、前記制御部は、前記有効化情報及び前記第1制御メッセージを前記競合ECUに送信した後、前記競合ECUに対して、前記第1制御メッセージが前記競合ECUを前記通常モードに切り替えないように設定するための無効化情報を送信する。
【0033】
このように、競合ECUのクラスタ設定を元に戻すことで、第1更新データによる更新ECUの更新の際に、競合ECUをスリープモードのまま維持することができるため、更新の際の車載システムにおける電力消費を抑制することができる。
【0034】
(9)前記(7)又は前記(8)の車載装置において、前記制御メッセージは、前記制御部が前記制御メッセージを受信してから、前記競合ECUにおいて前記制御メッセージに基づく制御が実行されるまでの許容時間が第1閾値未満の即時性メッセージと、前記許容時間が前記第1閾値以上の非即時性メッセージと、を含み、前記第1制御メッセージは、前記非即時性メッセージである。
【0035】
このように構成することで、許容時間の短い制御に遅延が生じることを抑制することができる。
【0036】
(10)前記(1)から前記(9)のいずれかに記載の車載装置と、前記車載装置に前記通信バスを介して接続されている複数の前記ECUと、を備える、車載システム。
【0037】
(11)本開示の制御方法は、車両の外部から提供される更新データを、通信バスを介して接続されている複数のECUに配信する車載装置を制御するための制御方法であって、複数の前記ECUは、複数のクラスタのうち少なくとも1個のクラスタにそれぞれ属し、前記通信バスから受信した制御メッセージにおいて、自ECUが属する前記クラスタが無効となっている場合に通常モードよりも機能を制限して消費電力を抑えるスリープモードとなり、自ECUが属する前記クラスタが有効となっている場合に前記通常モードとなり、前記制御方法は、複数の前記クラスタのうち第1クラスタを対象とする前記更新データである第1更新データの配信に先立って、前記第1クラスタに属する複数の前記ECUのうち、前記第1更新データによって更新される更新ECUが属し、前記第1更新データによって更新されない非更新ECUが属さない仮クラスタを設定するための設定情報を、前記第1クラスタに属する複数の前記ECUに配信する第1ステップと、前記第1更新データの配信の際に、前記第1クラスタを無効とし、前記仮クラスタを有効とした前記制御メッセージを複数の前記ECUに配信する第2ステップと、を備える、制御方法である。
【0038】
第1クラスタを無効とし、仮クラスタを有効とした制御メッセージを複数のECUに配信することで、更新ECUのみをウェイクアップさせ、非更新ECUをスリープモードのまま維持することができるため、ECUの更新に掛かる電力消費を抑制することができる。
【0039】
(12)本開示のコンピュータプログラムは、車両の外部から提供される更新データを、通信バスを介して接続されている複数のECUに配信する車載装置を制御するためのコンピュータプログラムであって、複数の前記ECUは、複数のクラスタのうち少なくとも1個のクラスタにそれぞれ属し、前記通信バスから受信した制御メッセージにおいて、自ECUが属する前記クラスタが無効となっている場合に通常モードよりも機能を制限して消費電力を抑えるスリープモードとなり、自ECUが属する前記クラスタが有効となっている場合に前記通常モードとなり、前記コンピュータプログラムは、コンピュータに、複数の前記クラスタのうち第1クラスタを対象とする前記更新データである第1更新データの配信に先立って、前記第1クラスタに属する複数の前記ECUのうち、前記第1更新データによって更新される更新ECUが属し、前記第1更新データによって更新されない非更新ECUが属さない仮クラスタを設定するための設定情報を、前記第1クラスタに属する複数の前記ECUに配信する第1ステップと、前記第1更新データの配信の際に、前記第1クラスタを無効とし、前記仮クラスタを有効とした前記制御メッセージを複数の前記ECUに配信する第2ステップと、を実行させる、コンピュータプログラムである。
【0040】
第1クラスタを無効とし、仮クラスタを有効とした制御メッセージを複数のECUに配信することで、更新ECUのみをウェイクアップさせ、非更新ECUをスリープモードのまま維持することができるため、ECUの更新に掛かる電力消費を抑制することができる。
【0041】
[1.本開示の実施形態の詳細]
以下、図面を参照して、本開示の実施形態の詳細を説明する。
【0042】
[1.1 車載システムの構成]
図1は、実施形態に係る車載システム1の構成例を示す図である。
車載システム1は、自動車等の車両V1に搭載されているシステムである。車載システム1は、車載装置10と、複数のECU20と、通信バス30と、通信線41,42と、通信装置50と、を備える。
【0043】
車載装置10は、例えば、複数のECU20を管理する統合ECU(Electronic Control Unit)として機能する。例えば、車載装置10は、マスタECUとして機能し、複数のECU20はそれぞれスレーブECUとして機能する。車載装置10は、車両V1の外部(具体的には、外部装置61、ダイアグ装置62又は記録媒体17)から提供される更新データを複数のECU20に配信する。
【0044】
車載装置10は、複数のECU20の間で送受信されるデータを中継するGW-ECU(Gateway-ECU)として機能してもよい。車載装置10は、例えば、複数の異なるLAN(Local Area Network)が車両V1内に存在するネットワーク環境において、各LANに存在する複数のECU20が送受信するデータを中継してもよく、具体的にはセントラルゲートウェイ(CGW:Central Gateway)であってもよい。車載装置10の内部構成については、後述する。
【0045】
通信装置50は、例えばインターネット等のネットワークN1を介して外部装置61と無線通信を行う通信インターフェースである。通信装置50は、具体的には、TCU(Telematics Communication Unit)である。通信装置50は、車載装置10から通信線41を介して出力されるデータをネットワークN1を介して外部装置61に送信する。また、通信装置50は、外部装置61からネットワークN1を介して送信されるデータ(更新データ、更新情報Y1等)を通信線41を介して車載装置10に入力する。
【0046】
外部装置61は、車両V1の外部に設置されている装置である。外部装置61は、例えば、制御部、記憶部及び通信部を備えるサーバである。外部装置61の記憶部は、例えば、車載システム1の各部(例えば、車載装置10又はECU20)を制御するためのプログラム又はデータを記憶する。例えばECU20の製造者は、必要に応じて当該プログラム又はデータを修正し、修正されたプログラム又はデータを随時、外部装置61の記憶部に格納する。外部装置61の通信部は、修正されたプログラム又はデータを、更新データとして車載装置10に送信する。このため、外部装置61は、OTA(Over The Air)サーバとも称される。
【0047】
外部装置61は、更新データの車載装置10への送信に先立って、当該更新データによって更新されるECUを識別する情報(ECUのアドレス等)を含む更新情報Y1を車載装置10に送信してもよい。
【0048】
更新データは、ECU20のソフトウェアを更新するためのプログラム(アプリプログラム)であってもよいし、ECU20のファームウェアを更新のためのプログラム(ファームウェアプログラム)であってもよい。また、更新データは、ECU20に記憶されているパラメータ情報を更新するためのデータであってもよい。パラメータ情報は、ECU20において実現されるソフトウェアに使用されるデータであり、具体的には、地図情報、制御パラメータ等である。
【0049】
ダイアグ装置62(「ダイアグツール」とも称される)は、車両V1の整備を担う車両整備業者(例えば、ディーラー)によって用いられる装置である。ダイアグ装置62は、例えば、車載システム1の各部(ECU20等)の状態を診断するアプリケーションがインストールされたパソコン、タブレット端末又はスマートフォン等の汎用情報端末である。また、ダイアグ装置62は、当該アプリケーションがインストールされた専用端末であってもよい。
【0050】
ダイアグ装置62は、制御部、記憶部及び通信部を有する。ダイアグ装置62を用いて車載システム1の保守作業等を行う際に、ダイアグ装置62の通信部は、通信線42を介して車載装置10に接続される。ダイアグ装置62の通信部は、例えばWi-Fi等の無線通信規格に従って、ネットワークN1を介して外部装置61と通信する。ダイアグ装置62は、外部装置61からネットワークN1を介して更新データをダウンロードする。ダイアグ装置62は、更新データを通信線42を介して車載装置10に送信する。
【0051】
通信バス30は、車載装置10から延びている。通信バス30には、複数のECU20がそれぞれバス接続されている。図1の例では、2本の通信バス30が車載装置10から延びているが、通信バス30の本数は特に限定されない。2本の通信バス30を区別する場合、通信バス31,32とそれぞれ称する。通信バス30は、例えばCAN(Controller Area Network)、CAN-FD(CAN with Flexible Data Rate)、Ethernet(登録商標)、LIN(Local Interconnect Network)、CXPI(Clock Extension Peripheral Interface)又はFlexRay(登録商標)等の通信プロトコルに準拠している。
【0052】
車載装置10は、通信バス30を介して複数の(図1の例では5個の)ECU20に接続されている。図1の例では、車載装置10は通信バス31を介して3個のECU20に接続され、通信バス32を介して2個のECU20に接続されている。複数のECU20を区別する場合、通信バス31に接続されているECU20を上から順にECU21,22,23とそれぞれ称し、通信バス32に接続されているECU20を上から順にECU24,25とそれぞれ称する。
【0053】
車載システム1に含まれるECU20の個数は、2個以上であれば特に限定されない。ECU20は、例えば車両V1の各部(例えば、制動装置、ドア、バッテリ、エアコンディショナ等)を制御する装置(操作系ECU)である。ECU20の機能は特に限定されず、ECU20は、センサと通信して、車両V1の各部の状態を監視する装置(認知系ECU)であってもよい。複数のECU20は、それぞれ異なる機能を有してもよいし、それぞれ同じ機能を有してもよい。
【0054】
複数のECU20は、パーシャルネットワーク機能に対応しており、複数のクラスタのうち少なくとも1個のクラスタにそれぞれ属している。ここで、クラスタは、複数のECU20のうちウェイクアップ及びスリープのうち少なくとも一方を同期的に実行するECUの組を定義したデータセットであり、例えばパーシャルネットワーククラスタ(PNC:Partial Network Cluster)である。車載システム1に設定されているクラスタの具体例については、後述する。
【0055】
[1.2 車載装置10の内部構成]
図2は、車載装置10の内部構成の一例を示す図である。
車載装置10は、制御部12及び記憶部13を含むマイクロコントローラーユニット11(以下、「マイコン11」と称する。)と、読取部14と、複数のトランシーバ15a~15dと、を有する。これら各部は、バス16によって電気的に接続されている。
【0056】
制御部12は、例えばプロセッサ等の回路構成(Circuitry)を含む。制御部12は、具体的には、1個又は複数個のCPU(Central Processing Unit)を含む。制御部12に含まれるプロセッサは、GPU(Graphics Processing Unit)であってもよい。この場合、制御部12は、記憶部13に記憶されているコンピュータプログラムを読み出して、各種の演算及び制御を実行する。
【0057】
制御部12は、予め所定のプログラムが書き込まれたプロセッサを含んでもよい。例えば、制御部12は、CPLD(Complex Programmable Logic Device)、FPGA(Field-Programmable Gate Array)又はASIC(Application Specific Integrated Circuit)等の集積回路であってもよい。この場合、制御部12は、予め書き込まれたプログラムに基づいて、各種の演算及び制御を実行する。
【0058】
記憶部13は、揮発性メモリと、不揮発性メモリと有し、各種のデータを記憶する。揮発性メモリは、例えばRAM(Random Access Memory)を含む。不揮発性メモリは、例えばフラッシュメモリ、HDD(Hard Disk Drive)、SSD(Solid State Drive)又はROM(Read Only Memory)等を含む。当該不揮発性メモリの一部は、マイコン11外に設けられていてもよい。
【0059】
記憶部13は、例えば、不揮発性メモリにコンピュータプログラム、後述のクラスタ情報、及び各種のパラメータを記憶している。記憶部13は、外部装置61からネットワークN1及び通信装置50を介してダウンロードされるコンピュータプログラムを記憶してもよい。
【0060】
読取部14は、コンピュータが読取り可能な記録媒体17から情報を読み取る。記録媒体17は、例えばCD、DVD等の光学ディスク、SDメモリーカード又はUSBフラッシュメモリである。読取部14は、例えば光学ドライブ、メモリーカード用スロット又はUSB端子である。記録媒体17にはコンピュータプログラム、更新データ及び各種のパラメータが記録されており、記録媒体17を読取部14に読み取らせることで、コンピュータプログラム、更新データ及び各種のパラメータが記憶部13の不揮発性メモリに記憶される。
【0061】
トランシーバ15a~15dは、通信バス30又は通信線41,42を流れる信号をそれぞれポート(図示省略)を介して受信し、マイコン11において読取り可能な信号に変換する。トランシーバ15aは通信バス31と接続し、トランシーバ15bは通信バス32と接続し、トランシーバ15cは通信線41と接続し、トランシーバ15dは通信線42と接続している。
【0062】
[1.3 ECU20の内部構成]
図3は、ECU21の内部構成の一例を示す図である。その他のECU20の内部構成は、ECU21と同様であるため、説明を省略する。
【0063】
ECU21は、制御部73及び記憶部74を含むマイクロコントローラーユニット71(以下、「マイコン71」と称する。)と、レジスタ75を含むトランシーバ72と、を有する。トランシーバ72は、マイコン71に電気的に接続されている。ECU21は、電源(図示省略)から供給される電力を変換して、これらの各部71,72に変換後の電力を供給する電源回路(図示省略)をさらに有する。
【0064】
制御部73は、制御部12と同様に、プロセッサ等の回路構成(Circuitry)を含む。例えば、制御部73は、記憶部74に記憶されているコンピュータプログラムを読み出して、各種の演算及び制御を実行する。また、制御部73は、制御部12と同様に、予め所定のプログラムが書き込まれたプロセッサを含んでもよい。この場合、制御部73は、予め書き込まれたプログラムに基づいて、各種の演算及び制御を実行する。
【0065】
記憶部74は、記憶部13と同様に、揮発性メモリと、不揮発性メモリと有し、各種のデータを記憶する。記憶部74は、例えば、不揮発性メモリにコンピュータプログラム及び各種のパラメータを記憶している。
【0066】
トランシーバ72は、パーシャルネットワーク機能に対応しているトランシーバであり、集積回路(IC)を含む。トランシーバ72は、例えばCANトランシーバ又はSBC(System Basis Chip)である。トランシーバ72は、通信バス31に接続されており、通信バス31から各種の制御メッセージを受信する。
【0067】
トランシーバ72は、送信回路、受信回路及び検出回路(それぞれ図示省略)を含む。送信回路及び受信回路は、通信バス31と同様の通信プロトコルに準拠して、通信を行う。送信回路は、マイコン71が出力するデジタル信号のデータを3レベルのアナログ信号に変換して、通信バス31に送出する。アナログ信号化されたデータは、通信バス31にブロードキャストされる。受信回路は、通信バス31から入力されたアナログ信号をマイコン71が読取り可能なデジタル信号に変換し、マイコン71に当該デジタル信号を出力する。
【0068】
検出回路は、通信バス31から受信した制御メッセージが、ECU21を宛先とする制御メッセージであるか否かを判断する機能を有する。そして、検出回路は、受信した制御メッセージがECU21を宛先とする制御メッセージであると判断すると、ECU21をスリープモードから通常モードに切り替える。
【0069】
具体的には、トランシーバ72は、レジスタ75に記録されている後述のクラスタ情報T2に適合する制御メッセージを受信した場合に、ECU21をスリープモードから通常モードに切り替える(すなわち、ECU21をウェイクアップさせる)。
【0070】
[1.4 車載システム1のパーシャルネットワーキング]
車載システム1は、車載システム1全体での消費電力を抑えるために、ネットワークマネジメント機能を用いて、制御に用いる一部のECU20のみをウェイクアップさせ、その他のECU20は常時スリープさせる。ECU20は、通常モードと、スリープモードとに切替可能であり、これらのモード切り替えは、基本的には通信バス30にブロードキャストされる制御メッセージに基づいて実行される。制御メッセージは、ネットワークマネジメントフレーム(NMフレーム)とも称される。
【0071】
通常モードは、ECU20がウェイクアップしており、各種の制御のために必要なECU20の機能が使用可能となっているモードである。例えば、通常モードは、ECU20に含まれるプロセッサのクロック回路が、予め設定された所定のクロック数により動作している状態である。
【0072】
スリープモードは、通常モードよりもECU20の機能を制限して消費電力を抑えるモードである。例えば、スリープモードは、ECU20に含まれるプロセッサのクロック回路への電力供給が停止することで、クロック回路の動作及びプロセッサの動作が停止している状態である。なお、スリープモードは、ECU20に含まれるプロセッサのクロック回路に電力供給がなされているものの、通常モードでのクロック数よりも少ないクロック数により動作させることで消費電力を抑えている状態であってもよい。
【0073】
例えば、ECU20は、自身が所定時間継続して使用されない場合に、又は、所定の制御を実行した場合に、自動的に通常モードからスリープモードに切り替わる。ECU20がスリープモードとなっている間も、ECU20の電源回路からトランシーバ72の検出回路への電力供給は継続される。これにより、スリープモードにおいて、トランシーバ72は制御メッセージを検出することができる。
【0074】
ECU20をスリープモードから通常モードに切り替える制御メッセージは、例えば車載装置10又は他のECU20において生成され、通信バス30にブロードキャストされる。制御メッセージには、ウェイクアップすべきクラスタを示す情報パターンが含まれており、各ECU20は、当該制御メッセージに基づいて、各ECU20がそれぞれ属するクラスタごとにウェイクアップされる。
【0075】
ここで、クラスタについて説明する。複数のECU20は、それぞれ少なくとも1個のクラスタにそれぞれ属している。車載装置10の記憶部13は、複数のECU20と、複数のECU20がそれぞれ属するクラスタとを紐付けたクラスタ情報T1を記憶している。
【0076】
図4は、クラスタ情報T1の一例を示すテーブルである。クラスタ情報T1では、8個のクラスタC1~C8に、それぞれどのECU20が属しているかを示している。なお、図4におけるクラスタ数は例示であり、9個以上のクラスタが用意されてもよい。テーブル中において、「1」はその行のクラスタにECU20が属していることを示し、「0」はその行のクラスタにECU20が属していないことを示している。
【0077】
例えば、クラスタC1には、図1に示すように、ECU21,22,24,25が属している。また、クラスタC2には、ECU22,23が属している。クラスタC3にはECU21~25が属している。このように、1個のECU20が複数のクラスタに属していてもよい。そして、クラスタC8には、ECU21~25が属しておらず、いわゆる「空き」のクラスタとなっている。以下の説明では、「クラスタC1に属するECU21,22,24,25をウェイクアップさせる」ことを、単に「クラスタC1をウェイクアップさせる」とも表現する。他のクラスタC2~C8についても同様の表現を用いる。
【0078】
次に、ECU20をクラスタごとにウェイクアップさせる制御メッセージを説明する。制御メッセージには、複数のクラスタC1~C8のうちウェイクアップさせるクラスタを指示するデータフィールドF1が含まれている。
【0079】
図5は、データフィールドF1の各ビットとクラスタC1~C8との紐付けを例示する図である。データフィールドF1は、例えば8ビットで構成され、各ビットにクラスタC1~C8が割り当てられている。例えば、1番目のビット(Bit0)にクラスタC1が割り当てられている。
【0080】
図6は、制御メッセージに含まれるデータフィールドF1の一例を示す図である。制御メッセージを受信したECU20は、データフィールドF1において「1」となっているビットに対応するクラスタに属する場合に、ウェイクアップする。例えば、図6のデータフィールドF1では、Bit0が「1」となっており、Bit1~7は「0」となっている。このため、図5に示すように、このデータフィールドF1を含む制御メッセージを受信したECU20のうち、クラスタC1に属するECU21,22,24,25のみがウェイクアップする。
【0081】
以下では、制御メッセージのデータフィールドF1において、ビットを「1」に設定することを、そのビットに対応するクラスタを「有効にする」と適宜表現し、ビットを「0」に設定することを、そのビットに対応するクラスタを「無効にする」と適宜表現する。
【0082】
各ECU20は、レジスタ75にクラスタ情報T2を格納している。クラスタ情報T2は、ECU20自身が属するクラスタを示す情報である。例えば、ECU21の場合、図4に示すクラスタ情報T1のうち1列目(ECU21が属するクラスタを示す列)の情報をクラスタ情報T2としてレジスタ75に記憶している。また、ECU22の場合、クラスタ情報T1のうち2列目の情報をクラスタ情報T3としてレジスタ75に記憶している。
【0083】
ECU20のトランシーバ72は、データフィールドF1を含む制御メッセージを通信バス30を介して受信すると、自身のレジスタ75に格納されているクラスタ情報T2とデータフィールドF1とが適合するか否かを判断する。具体的には、トランシーバ72は、クラスタ情報T2のビットと、データフィールドF1のうち対応するビットとの積を1ビットごとに算出する。そして、算出後に「1」となるビットがある場合には、クラスタ情報T2とデータフィールドF1とが「適合する」と判断して、ECU20をウェイクアップさせる。
【0084】
図4から図6の例では、クラスタ情報T2は「101・・・0」という8ビットのパターンを有しており、データフィールドF1は「100・・・0」という8ビットのパターンを有している。図5により、クラスタ情報T2のnビット目が、データフィールドF1のnビット目に対応している。そして、クラスタ情報T2の1ビット目とデータフィールドF1の1ビット目の積が「1」となるため、ECU21はウェイクアップする。
【0085】
[1.5 本実施形態が解決しようとする課題]
車載システム1において、ECU20のプログラムを更新する更新データが、例えば外部装置61、ダイアグ装置62又は記録媒体17等の車両V1の外部から車載装置10に提供される。車載システム1では、クラスタ単位で複数のECU20のウェイクアップ及びスリープを制御するため、更新データもクラスタ単位で車載装置10に提供される。
【0086】
従来であれば、車載装置10は、車両V1の外部から提供されたクラスタ単位の更新データを、そのまま複数のECU20に配信することにより、クラスタ単位でECU20の更新を実行していた。例えば、車載装置10は、クラスタC1を対象とする更新データを外部から受け取ると、図6に示すデータフィールドF1を含む制御メッセージとともに更新データを配信することで、クラスタC1に属するECU21,22,24,25をすべてウェイクアップさせていた。
【0087】
しかしながら、クラスタC1に、更新データによって更新されないECU20が含まれている場合がある。図1の例では、ハッチングを付して示すECU21,24,25が更新データの更新対象となるECU(更新ECU21,24,25)であり、ハッチングを付していないECU22が更新データの更新対象となっていないECU(非更新ECU22)である。この場合、クラスタC1をウェイクアップさせると、非更新ECU22も不必要にウェイクアップされるため、車載システム1において、余分な電力消費が生じるおそれがある。
【0088】
特に、ECU20の更新は、車両V1のイグニッションがオフされている場合等、車両V1のバッテリの電力消費をより抑制したい状況下で実行される場合が多い。このため、ECU20の更新に掛かる電力消費を抑制する必要がある。
【0089】
そこで、本実施形態では、車載装置10はクラスタC1を対象とする更新データ(以下、第1更新データD1と称する。)の配信に先立って、第1更新データD1によって更新される更新ECU21,24,25が属し、第1更新データD1によって更新されない非更新ECU22が属さない仮クラスタを設定するための設定情報Y2を、クラスタC1に属する複数のECU21,22,24,25に配信する。
【0090】
そして、車載装置10は、各ECU21,22,24,25において仮クラスタの設定後、第1更新データD1の配信の際に、クラスタC1を無効とし、仮クラスタを有効とした制御メッセージM1を複数のECU20に配信する。これにより、非更新ECU22をスリープさせた状態で、更新ECU21,24,25のみを更新に際してウェイクアップさせることができるため、ECU20の更新に掛かる電力消費を抑制することができる。
【0091】
以下、第1更新データD1によってECU20を更新する場合を例に挙げて、車載システム1における具体的な制御内容について説明する。
【0092】
[1.6 制御方法]
図7は、車載システム1が実行する制御方法の一例を示すフローチャートである。車載装置10が実行する制御を図7の左側に示し、ECU21(更新ECU)が実行する制御を図7の中央に示し、ECU22(非更新ECU)が実行する制御を図7の右側に示している。図8以降のフローチャートにおいても、同様に車載装置10、ECU21及びECU22が実行する制御を示している。
【0093】
車載装置10が実行する制御は、マイコン11又はトランシーバ15a~15dが実行する。マイコン11が制御を実行する場合、制御部12が記憶部13からコンピュータプログラムを読み取って(又は制御部12に予め書き込まれているプログラムに従って)、各種の演算及び処理を実行する。
【0094】
ECU21が実行する制御は、マイコン71又はトランシーバ72が実行する。マイコン71が制御を実行する場合、制御部73が記憶部74からコンピュータプログラムを読み取って(又は制御部73に予め書き込まれているプログラムに従って)、各種の演算及び処理を実行する。
【0095】
図7に示すように、車載システム1は、第1更新データD1によって更新される更新ECU21,24,25のみが含まれる仮クラスタを形成する仮クラスタ形成工程(ステップS100)と、仮クラスタに属するECU20を更新する更新工程(ステップS200)と、仮クラスタの設定を破棄する仮クラスタ破棄工程(ステップS300)と、を実行する。なお、仮クラスタ破棄工程(ステップS300)は省略されてもよい。
【0096】
仮クラスタ形成工程S100は、例えば車両V1のイグニッションスイッチがオンになっている状態で実行される。そして、更新工程S200は、車両V1のイグニッションスイッチがオフになっている状態で実行される。すなわち、更新データは、車両V1の走行中においてOTA等により車載装置10に提供される。そして、車両V1の駐車中において、更新データによるECU20の更新が実行される。
【0097】
なお、仮クラスタ形成工程S100は、車両V1のイグニッションスイッチがオフになっている状態で実行されてもよい。また、仮クラスタ破棄工程S300を実行する際の車両V1の状態は特に限定されない。
【0098】
[1.6.1 仮クラスタ形成工程]
図8は、図7の仮クラスタ形成工程S100の詳細を示すフローチャートである。
はじめに、車載装置10は、車両V1の外部から更新情報Y1を取得する(ステップS111)。更新情報Y1は、例えば第1更新データD1が対象とするクラスタを識別する情報(例えば、クラスタC1のクラスタ番号)と、第1更新データD1によって更新される更新ECUを識別する情報(例えば、更新ECU21,24,25のアドレス)と、を含む。
【0099】
車載装置10は、例えば、外部装置61からネットワーク及び通信装置50を介して配信される第1更新データD1を受信する。そして、車載装置10は、受信した第1更新データD1に基づいて(例えば、第1更新データD1のデータ内容を分析することで)更新情報Y1を取得する。なお、車載装置10には、車両V1の外部からの第1更新データD1の提供に先立って、更新情報Y1そのものが提供されてもよい。
【0100】
次に、車載装置10は、更新情報Y1及びクラスタ情報T1に基づいて、クラスタC1に属するECU21,22,24,25が、第1更新データD1によって更新される更新ECUであるか、第1更新データD1によって更新されない非更新ECUであるかをそれぞれ判定する(ステップS112)。
【0101】
例えば、車載装置10は、更新情報Y1に基づいて、複数のクラスタC1~C8のうちから更新対象のクラスタC1を特定する。そして、クラスタ情報T1に基づいて、複数のECU20のうちから、クラスタC1に属するECU21,22,24,25を特定する。最後に、車載装置10は、更新情報Y1に基づいて、ECU21,22,24,25のうちから第1更新データD1によって更新される更新ECU21,24,25を抽出する。そして、抽出されなかった残りのECU22を非更新ECUと判定する。
【0102】
続いて、車載装置10は、更新ECU21,24,25が属し、非更新ECU22が属さない仮クラスタを生成する(ステップS113)。具体的には、制御部12は、仮クラスタを含むクラスタ情報T1aを生成して、クラスタ情報T1aを記憶部13に記憶させる。
【0103】
図9は、仮クラスタを含むクラスタ情報T1aの一例を示すテーブルである。図9に示すように、制御部12は、クラスタC8を仮クラスタとして利用する。具体的には、クラスタC8において、更新ECU21,24,25は「1」とされ、非更新ECU22を含むその他のECU20は「0」とされている。クラスタC8は、仮クラスタの設定前において、いずれのECU20も属さない空きのクラスタであるため、そのようなクラスタC8を仮クラスタとすることで、既存のクラスタに影響が及ぶことを抑制することができる。
【0104】
続いて、制御部12は、クラスタC1に属するECU21,22,24,25に、仮クラスタを設定するための設定情報Y2を配信する(ステップS114,S115)。例えば、制御部12は、ECU21宛にクラスタ情報T2aを送信し(ステップS114)、ECU22宛にクラスタ情報T3aを送信する(ステップS115)。クラスタ情報T2aは「101・・・1」という8ビットのパターンを有し、クラスタ情報T3aは「111・・・0」という8ビットのパターンを有している。
【0105】
設定情報Y2の配信先のECU20がスリープモードである場合、制御部12は配信先のECU20を一時的にウェイクアップさせてから、設定情報Y2を配信する。具体的には、クラスタC1に属するECU21,22,24,25がスリープモードである場合、制御部12はクラスタC1を有効としたデータフィールドF1を含む制御メッセージ(図6に示す制御メッセージ)を複数のECU20に配信することで、クラスタC1に属するECU21,22,24,25を通常モードとし、この状態で設定情報Y2を各ECU21,22,24,25に配信する。
【0106】
ECU21は、設定情報Y2としてのクラスタ情報T2aを受信すると、レジスタ75に格納されているクラスタ情報T2(101・・・0)をクラスタ情報T2aに書き換える(8ビット目の「0」を「1」にする)ことで、仮クラスタを含む新たなクラスタ設定を実行する(ステップS121)。ECU21においてレジスタ75の書き換えが完了すると、ECU21は車載装置10に完了通知を送信する(ステップS122)。
【0107】
ECU22は、設定情報Y2としてのクラスタ情報T3aを受信すると、レジスタ75に格納されているクラスタ情報T3をクラスタ情報T3aに書き換えることで、仮クラスタを含む新たなクラスタ設定を実行する(ステップS131)。ECU22においてレジスタ75の書き換えが完了すると、ECU22は車載装置10に完了通知を送信する(ステップS132)。
【0108】
なお、ECU22において、仮クラスタの設定前後においてクラスタ設定に変化はなく、クラスタ情報T3とクラスタ情報T3aは同じである。この場合、車載システム1は、ステップS115,S131,S132の実行を省略してもよい。
【0109】
制御部12は、クラスタC1に属するECU21,22,24,25から完了通知を受信し、かつその他のスリープ条件も満たされている場合、ECU21,22,24,25をスリープさせるためのスリープ信号を配信する(ステップS116)。ECU21,22,24,25は、スリープ信号を受信すると、通常モードからスリープモードに切り替わる(ステップS123,S133)。以上により、仮クラスタ形成工程S100が終了する。
【0110】
[1.6.2 更新工程]
図10は、図7の更新工程S200の詳細を示すフローチャートである。
制御部12は、第1更新データD1の配信に際して、更新ECU21,24,25のみをウェイクアップさせるための制御メッセージM1を配信する(ステップS211)。制御部12は、図10に示すように、第1更新データD1の配信に先立って制御メッセージM1を配信してもよいし、第1更新データD1及び制御メッセージM1を同時に送信してもよい。また、制御メッセージM1に第1更新データD1が含まれていてもよい。
【0111】
図11は、制御メッセージM1のデータフィールドF2の一例を示す図である。
データフィールドF2では、第1更新データD1が対象とするクラスタC1(1ビット目)が無効となっており、仮クラスタ(本例では、クラスタC8であり、8ビット目)が有効となっている。
【0112】
制御メッセージM1は、車載装置10から通信バス30にブロードキャストされ、複数のECU20においてそれぞれ受信される。各ECU20のトランシーバ72は、上記したように制御メッセージM1が自身のレジスタ75に格納されているクラスタ情報に適合するか否かを判定し、適合する場合にウェイクアップする。
【0113】
ECU21は、仮クラスタ形成工程によって仮クラスタに属しているため(すなわち、クラスタ情報T2aの8ビット目が「1」となっているため)、制御メッセージM1を受信するとウェイクアップする(ステップS221)。同様に、他の更新ECU24,25もウェイクアップする。一方で、ECU22は仮クラスタに属していないため、制御メッセージM1を受信してもウェイクアップせず、スリープモードのまま維持される。
【0114】
そして、制御部12は複数のECU20に第1更新データD1を配信する(ステップS212)。なお、上記のとおり制御メッセージM1に第1更新データD1が含まれる場合、ステップS211,S212は同時に実行される。第1更新データD1はウェイクアップしている更新ECU21,24,25に受信され、更新ECU21,24,25がそれぞれ更新される(ステップS222)。ECU21は、更新が完了すると、完了通知を車載装置10に送信し(ステップS223)、その後通常モードからスリープモードに切り替わる(ステップS224)。
【0115】
以上により、更新工程S200が終了する。このように、クラスタC1を無効とし、仮クラスタを有効とした制御メッセージM1を複数のECU20に配信することで、更新ECU21,24,25のみをウェイクアップさせ、非更新ECU22をスリープモードのまま維持することができるため、ECU20の更新に掛かる電力消費を抑制することができる。
【0116】
[1.6.3 仮クラスタ破棄工程]
図12は、図7の仮クラスタ破棄工程S300の詳細を示すフローチャートである。
制御メッセージにおいて、クラスタの設定のために割り当てられているデータフィールドは有限であるため、設定できるクラスタ数にも限りがある。例えば、図6及び図11に示すデータフィールドF1,F2は、1バイト(8ビット)であるため、設定できるクラスタ数の上限値は8個となっている。このため、車載装置10は、ECU20の更新が完了した後、クラスタC8に設定した仮クラスタを破棄して、クラスタC8に新たな仮クラスタを設定可能な状態とする。
【0117】
制御部12は、更新工程S200の後、図9に示すクラスタ情報T1aのクラスタC8の行の値をすべて「0」に設定することで、仮クラスタの設定を破棄する(ステップS311)。これにより、クラスタ情報T1aは、図4に示すクラスタ情報T1となる。なお、第1更新データD1によって、例えばECU21が新たにクラスタC2に属するように変更された場合、その変更はそのまま維持される。すなわち、制御部12は、更新後のクラスタ情報T1aのうち、仮クラスタの値のみ、クラスタ情報T1の状態に戻す。
【0118】
次に、制御部12は、クラスタC1に属するECU21,22,24,25に、仮クラスタの設定を破棄するための破棄情報Y3を配信する(ステップS312,S313)。例えば、制御部12は、ECU21宛にクラスタ情報T2を送信し(ステップS312)、ECU22宛にクラスタ情報T3を送信する(ステップS313)。
【0119】
ECU21は、破棄情報Y3としてのクラスタ情報T2を受信すると、レジスタ75に格納されているクラスタ情報T2aをクラスタ情報T2に書き換えることで、仮クラスタを含まない新たなクラスタ設定を実行する(ステップS321)。すなわち、クラスタ情報T2aのうち仮クラスタに対応するビットを「1」から「0」に変更する。当該クラスタ設定により、ECU21は仮クラスタに属さなくなる。ECU21においてレジスタ75の書き換えが完了すると、ECU21は車載装置10に完了通知を送信する(ステップS322)。
【0120】
ECU22は、破棄情報Y3としてのクラスタ情報T3を受信すると、レジスタ75に格納されているクラスタ情報T3aをクラスタ情報T3に書き換えることで、仮クラスタを含まない新たなクラスタ設定を実行する(ステップS331)。ECU22においてレジスタ75の書き換えが完了すると、ECU22は車載装置10に完了通知を送信する(ステップS332)。
【0121】
なお、仮クラスタ形成工程S100においてECU22におけるレジスタ75の書き換えを実行していない場合(すなわち、ステップS115,S131,S132の実行を省略した場合)、車載システム1は、ステップS313,S331,S332の実行を省略してもよい。
【0122】
以上により、仮クラスタ破棄工程S300が終了する。更新工程S200後に、仮クラスタの設定を破棄することで、限られたクラスタ数の中で動的に仮クラスタを設定することができる。例えば、他のクラスタ(例えばクラスタC2,C3)を対象とする更新データが続けざまに配信された場合に、工程S100,S200,S300の流れを連続して実行することができる。
【0123】
[2. 変形例]
以下、実施形態の変形例について説明する。変形例において、上記の実施形態と同じ構成については同じ符号を付して説明を省略する。
【0124】
[2.1 ECUの追加]
図13は、車載システム1に新たに1個のECU20が追加された様子を示す図である。新たなECU20を、ECU26と称する。ECU26は、追加後にクラスタC1に属するECUである。
【0125】
例えば、車両V1のイグニッションスイッチがオフであり、クラスタC1に属するECU20がすべてスリープモードとなっている状態でECU26が追加される場合を考える。この場合、例えばECU26の追加に伴って、クラスタC1に属するECU20の更新が行われることがあるが、上記の実施形態に係る制御方法により更新を実行すると、非更新ECU22は更新工程S200においてスリープモードに維持されているため、非更新ECU22はECU26の追加を検知することができない。
【0126】
このため、本変形例の制御部12は、第1更新データD1の配信に先立ってクラスタC1に新たなECU26が追加される場合に、新たなECU26に関する情報である追加情報Y4を新たなECU26が追加される前に取得する。そして、制御部12は、第1更新データD1の配信に先立って、クラスタC1に属する複数のECU20に、追加情報Y4を配信する。
【0127】
これにより、第1更新データD1を配信する前に、クラスタC1に属するECU20に予めECU26に関する情報を伝えることができるため、第1更新データD1を配信する際にスリープモードのまま維持される非更新ECU22は、ECU26が追加されるであろうことを事前に検知することができる。これにより、車載システム1の信頼性を向上させることができる。
【0128】
図14は、変形例に係る制御方法を示すフローチャートである。車載装置10は、はじめに追加情報Y4を取得する(ステップS411)。追加情報Y4は、例えば外部装置61、ダイアグ装置62又は記録媒体17から第1更新データD1とともに車載装置10に提供される。追加情報Y4は、例えば、ECU26を識別する情報(例えば、ECU26のアドレス)と、ECU26が属するクラスタに関する情報(例えば、クラスタ番号)と、を含む。
【0129】
車載装置10は、ECU26が追加されるよりも前に、通信バス30を介してクラスタC1(ECU26が属する予定のクラスタ)に属するECU20に追加情報Y4を配信する(ステップS412)。例えば、車載装置10は、ステップS412を、クラスタC1に属するECU20が通常モードとなっている状態で行う。具体的には、車載装置10は、車両V1のイグニッションスイッチがオンになっている状態で、追加情報Y4を配信する。
【0130】
クラスタC1に属するECU20(非更新ECU22を含む)は、受信した追加情報Y4を記憶部74にそれぞれ記憶する。これにより、クラスタC1に属するECU20は、新たにクラスタC1に属する予定のECU26に関する情報を事前に検知することができる。
【0131】
続いて、ECU26が車載システム1に実際に追加される(ステップS421)。例えばECU26は通信バス32に接続される。接続が完了すると、ECU26は車載装置10に追加完了通知を送信する(ステップS422)。
【0132】
その後、車載システム1は、仮クラスタ形成工程S100と、更新工程S200を実行する。ECU26は、第1更新データD1によって更新される更新ECUであってもよいし、第1更新データD1によって更新されない非更新ECUであってもよい。
【0133】
車載装置10は、ステップS422において追加完了通知を受信した後、クラスタC1に属するECU20がそれぞれウェイクアップした時に、クラスタC1に属するECU20に対して、ECU26の追加が完了した旨を伝える追加完了情報Y5を送信する(ステップS413)。
【0134】
追加完了情報Y5の送信タイミングは、ECU20がウェイクアップするタイミングによってそれぞれ異なっていてもよい。例えば、更新ECU21,24,25の場合、仮クラスタ形成工程S100において仮クラスタを設定したり、更新工程S200において更新をしたりする際にウェイクアップするため、その時に車載装置10は追加完了情報Y5を更新ECU21,24,25に送信する。
【0135】
非更新ECU22の場合、仮クラスタ形成工程S100において仮クラスタを設定する場合には、その際に非更新ECU22が通常モードとなるため、追加完了情報Y5を送信してもよい。しかし、仮クラスタ形成工程S100において非更新ECU22をウェイクアップさせない場合(図8のステップS115,S131,S132を省略する場合)、非更新ECU22はスリープモードのままとなっている。このため、車載装置10は、車両V1のイグニッションスイッチがオンとなり、クラスタC1に属するECU20がすべて通常モードとなった状態で、追加完了情報Y5をECU21,22,24,25に配信してもよい。
【0136】
[2.2 更新内容の非更新ECUへの通知]
上記の実施形態において、非更新ECU22は更新工程S200においてスリープモードに維持されている。このため、非更新ECU22は、更新ECU21の更新内容を知ることができない。例えば、更新ECU21の更新内容が非更新ECU22の動作に影響を及ぼす場合には、たとえ非更新ECU22自身のプログラムに更新がなくとも、非更新ECU22が当該更新内容を把握しておくことが車載システム1の不具合防止のために好適である。
【0137】
ここで、通信バス31に接続されたECU20から、異なる通信バス32に接続されたECU20にデータが送信される場合、当該データは車載装置10を通るため、車載装置10において、通信バス32に接続されたECU20に不具合を生じさせるようなデータが通信バス32に送信されないようにストップさせることが可能である。これに対し、同じ通信バス31内に更新ECU21と非更新ECU22とが混在する場合、更新ECU21から通信バス31に送信されるデータは、非更新ECU22にそのまま届くため、車載装置10のストッパー機能が効かず、非更新ECU22の動作に不具合が発生するおそれが高い。
【0138】
このため、本変形例に係る制御部12は、同じ通信バス31内に更新ECU21と非更新ECU22とが混在する場合に、第1更新データD1による更新ECU21の更新内容を収集して、記憶部13に記憶する。そして、制御部12は、更新ECU21が第1更新データD1により更新された後、更新ECU21と同じ通信バス31に接続されている非更新ECU22(第1非更新ECU)が通常モードとなった際に、非更新ECU22に対して更新ECU21の第1更新データD1による更新内容を通知する。
【0139】
これにより、更新ECU21の更新内容が非更新ECU22の動作に不具合を生じさせることを抑制することができる。
【0140】
[2.3 競合状態にある仮クラスタ]
上記の実施形態では、仮クラスタを「空き」のクラスタC8に設定した。しかしながら、実際には「空き」のクラスタC8がない場合がある。この場合、例えば使用頻度の低いクラスタ等を、一時的に仮クラスタに設定することが考えられる。
【0141】
例えば、仮クラスタ形成工程S100から仮クラスタ破棄工程S300までの間、クラスタC3を、第1更新データD1により更新される更新ECU21,24,25のみが属する仮クラスタに一時的に変更する場合を考える。
【0142】
この場合、ECU22は、仮クラスタの設定前において、クラスタC3を有効とするデータフィールドを含む制御メッセージ(以下、「第1制御メッセージMx1」と称する。)によって通常モードに切り替わる。一方で、仮クラスタの設定後において、ECU22はクラスタC3に属さなくなるため、ECU22は第1制御メッセージMx1によっては通常モードに切り替わらない。
【0143】
なお、ECU22は、仮クラスタの設定前であっても、設定後であっても、クラスタC2を有効とするデータフィールドを含む制御メッセージ(以下、「第2制御メッセージMx2」と称する。)によって通常モードに切り替わる。
【0144】
このような場合、クラスタC3によってECU22をウェイクアップさせたい事象が生じても、仮クラスタの設定によってECU22をウェイクアップさせることができなくなる。例えば、クラスタC3は、元々、車両V1のドアロック解除に伴って動作するECU20が属するように設定されている場合を考える。具体的には、ECU21が車両V1のドアロックが解除されたことを示す解除信号をセンサから受信するためのECUであり、ECU22が車両V1のドアロック解除に伴って車両V1のミラーを外側に開くためのアクチュエータを制御するECUである。
【0145】
このとき、ECU21は、解除信号を受信すると、通信バス31に第1制御メッセージMx1を送信して、ECU22を含むドアロック解除に伴って動作するECU20をウェイクアップさせようとする。しかしながら、クラスタC3に仮クラスタが設定されている場合、本来であれば第1制御メッセージMx1によってウェイクアップするはずであったECU22がウェイクアップせず、車両V1のミラーを開けない等の不具合が生じうる。
【0146】
このため、本変形例では、仮クラスタの設定が元々のクラスタと競合する場合でも、車載システム1における不具合を抑制するために、第1制御メッセージMx1によってウェイクアップしなくなったECU22を車載装置10が他の制御メッセージによってウェイクアップさせる。
【0147】
図15は、変形例に係る制御方法を示すフローチャートである。
ECU21は、仮クラスタ形成工程S100の後、仮クラスタ破棄工程S300の前に、第1制御メッセージMx1を通信バス31に送信する。第1制御メッセージMx1は、通信バス31を介してECU22に受信される(ステップS521)とともに、車載装置10にも受信される(ステップS522)。上記のとおり、仮クラスタの設定後において、ECU22は第1制御メッセージMx1を受信してもウェイクアップしない。
【0148】
制御部12は、例えば仮クラスタ形成工程S100の際に、クラスタ情報T1のうち仮クラスタの設定によって「1」から「0」に変更された部分に関する情報(変更情報)を記憶部13に記憶させる。そして、制御部12は、ステップS522の後、第1制御メッセージMx1が有効とする仮クラスタが、元々のクラスタと競合するか否かを判定する(ステップS511)。
【0149】
具体的には、制御部12は、第1制御メッセージMx1を受信した場合に、第1制御メッセージMx1が仮クラスタの設定によりクラスタ情報T1において「1」から「0」に変更されたECU20を宛先とするか否かを判定する。すなわち、第1制御メッセージMx1の宛先が、仮クラスタの設定前は第1制御メッセージMx1によってウェイクアップしていたのに、仮クラスタの設定によって第1制御メッセージMx1によってはウェイクアップしなくなったECU20(競合ECU)であるか否かを判定する。
【0150】
制御部12は、判定の結果、第1制御メッセージMx1の宛先が競合ECUであると判定すると、競合ECU(本例では、ECU22)に対して、第2制御メッセージMx2を送信する(ステップS512)。ECU22は、第2制御メッセージMx2の受信によりスリープモードから通常モードに切り替わる(ステップS531)。
【0151】
次に、制御部12は、第2制御メッセージMx2によりECU22を通常モードとしている状態で、ECU22に対して有効化情報Y6を送信する(ステップS513)。ここで、有効化情報Y6とは、第1制御メッセージMx1がECU22を通常モードに切り替えるようにECU22のクラスタ設定を変更するための情報である。
【0152】
例えば、ECU22のレジスタ75において、仮クラスタ形成工程S100の前にクラスタ情報T3(111・・・0)が記憶され、仮クラスタ形成工程S100後にクラスタ情報T3b(例えば、110・・・0)が記憶されている場合、有効化情報Y6は、クラスタ情報T3c(111・・・0)のように、クラスタ情報T3bにおいて仮クラスタとなっている3ビット目の「0」を「1」に変更するための情報である。
【0153】
ECU22は、有効化情報Y6に基づいて、レジスタ75のクラスタ情報を書き換えることで、クラスタを新たに設定する(ステップS532)。これにより、ECU22は、仮クラスタ(クラスタC3)が有効となったデータフィールドを含む制御メッセージによってウェイクアップしたり、各種の制御を行ったりすることが可能となる。
【0154】
続いて、車載装置10は、ECU22に第1制御メッセージMx1を送信する(ステップS514)。なお、車載装置10は、ECU21に第1制御メッセージMx1の再送を指示してもよい。この場合、当該指示を受けたECU21からECU22に第1制御メッセージMx1が送信される。
【0155】
ECU22は、第1制御メッセージMx1に基づいて、所定の制御を実行する(ステップS533)。所定の制御は、例えば車両V1のミラーを開く制御である。所定の制御の実行後、更新工程S200の実行前に、車載装置10はECU22に無効化情報Y7を送信する(ステップS515)。
【0156】
ここで、無効化情報Y7とは、第1制御メッセージMx1がECU22を通常モードに切り替えないようにECU22のクラスタ設定を変更するための情報である。例えば、無効化情報Y7は、クラスタ情報T3c(111・・・0)の3ビット目のように、有効化情報Y6によって一時的に「0」から「1」に変更したビットを「0」に戻すための情報である。
【0157】
ECU22は、無効化情報Y7に基づいて、レジスタ75のクラスタ情報を書き換えることで、クラスタを新たに設定する(ステップS534)。これにより、ECU22は、仮クラスタ(クラスタC3)が有効となったデータフィールドを含む制御メッセージによってウェイクアップしなくなる。その後、ECU22はスリープモードに切り替わる(ステップS535)。
【0158】
以上のように、仮クラスタの競合によってウェイクアップしなくなったECU22のクラスタ設定を一時的に変更することで、ECU22における所定の制御を実行可能とすることができる。これにより、クラスタ数が制限され、既に利用されているクラスタに仮クラスタを設定するような場合であっても、車載システム1における不具合の発生を抑制することができる。
【0159】
また、ECU22における所定の制御の後に、ECU22のクラスタ設定を元に戻すことで、更新工程S200においてECU22をスリープモードのまま維持することができるため、更新の際の車載システム1における電力消費を抑制することができる。
【0160】
[2.4 仮クラスタの競合回避]
図15に示す制御方法によれば、仮クラスタに競合が生じる場合であっても、ECU22を動作させることができる。しかしながら、図15の例では、ECU21からECU22に第1制御メッセージMx1を送信してから所定の制御を行うまで、所要時間TM1が掛かる。クラスタC3に仮クラスタの設定がなければ、ECU21からECU22に第1制御メッセージMx1を送信した後すぐに(すなわち、図15のステップS511,S512,S531,S513,D532,S514の経過を経ずに)所定の制御が実行されるため、仮クラスタの競合が無い方が、ECU22は早く反応することができる。このため、より早い制御が要求されるようなクラスタには、仮クラスタを設定しないことが好適である。
【0161】
例えば、制御メッセージは、即時制御が要求される即時性メッセージと、即時性メッセージほどには即時制御は要求されない非即時性メッセージと、を含む。即時性メッセージは、例えば、ECU21がECU22を宛先とする制御メッセージを送信してから、ECU22において当該制御メッセージに基づく処理が実行されるまでの許容時間が、第1閾値Th1未満である制御メッセージである。
【0162】
即時性メッセージによって実行される制御は、例えば、車両V1のドアロックを解除する制御である。ドアロック解除制御は、車両V1のユーザがドアの解除を待つ時間が長いと、ユーザが不快感を覚えるおそれが高いため、即時的な制御が要求される。また、即時性メッセージによって実行される制御は、車両V1のシートモータを駆動させる制御であってもよい。当該制御は、遅延するとユーザが違和感を覚えるおそれが高いため、即時的な制御が要求される。
【0163】
また、即時性メッセージによって実行される制御は、車両V1のヘッドライトを点灯させる制御であってもよいし、車両V1のハザードを点灯させる制御であってもよいし、車両V1のワイパを動作させる制御であってもよい。これらの制御は、車両V1の安全に関係する制御であるため、即時的な制御が要求される。
【0164】
また、即時性メッセージによって実行される制御は、セキュリティ制御(例えば、ガラス割れ検知、盗難防止アラームの発報等)であってもよいし、イルミネーション制御であってもよい。セキュリティ制御に遅延が生じると、車両V1の盗難リスクが上がるおそれがあるため、即時的な制御が要求される。また、車両V1のライトの点滅にずれが生じると、ライトを目視した人が違和感を覚えるおそれがあるため、即時的な制御が要求される。
【0165】
非即時性メッセージは、例えば、ECU21がECU22を宛先とする制御メッセージを送信してから、ECU22において当該制御メッセージに基づく処理が実行されるまでの許容時間が、第1閾値Th1以上である制御メッセージである。
【0166】
非即時性メッセージによって実行される制御は、例えば車両V1のドアロック解除に伴ってミラーを開く制御である。車両V1のドアロック解除後、車両V1が発進するまで、例えばユーザがシートベルトを締める等の時間がかかるため、ミラーが開くまでに多少の遅延が生じても、ユーザは不快感を覚えるおそれは低い。
【0167】
複数のECU20のうち、即時性メッセージを送受信するECU20は予め決まっており、記憶部13は即時性メッセージを送受信するECU20に関する情報を記憶している。そして、制御部12は、仮クラスタの設定の際に、即時性メッセージを送受信するECU20が「1」となっているクラスタには、仮クラスタを設定しない。この結果、第1制御メッセージとなりえるのは、非即時性メッセージのみとなる。これにより、許容時間の短い制御に遅延が生じることを抑制することができる。
【0168】
[3.補記]
なお、上記の実施形態及び各種の変形例については、その少なくとも一部を、相互に任意に組み合わせてもよい。また、今回開示された実施形態及び変形例はすべての点で例示であって制限的なものではないと考えられるべきである。本開示の範囲は特許請求の範囲によって示され、特許請求の範囲と均等の意味及び範囲内での全ての変更が含まれることが意図される。
【符号の説明】
【0169】
1 車載システム
10 車載装置
11 マイクロコントローラーユニット(マイコン)
12 制御部
13 記憶部
14 読取部
15a トランシーバ
15b トランシーバ
15c トランシーバ
15d トランシーバ
16 バス
17 記録媒体
20 ECU
21 ECU(更新ECU)
22 ECU(非更新ECU、第1非更新ECU、競合ECU)
23 ECU(更新ECU)
24 ECU(更新ECU)
25 ECU(更新ECU)
26 ECU(新たなECU)
30 通信バス
31 通信バス
32 通信バス
41 通信線
42 通信線
50 通信装置
61 外部装置
62 ダイアグ装置
71 マイクロコントローラーユニット(マイコン)
72 トランシーバ
73 制御部
74 記憶部
75 レジスタ
V1 車両
N1 ネットワーク
C1 クラスタ(第1クラスタ)
C2 クラスタ
C3 クラスタ
C8 クラスタ
T1 クラスタ情報
T1a クラスタ情報
T2 クラスタ情報
T2a クラスタ情報
T3 クラスタ情報
T3a クラスタ情報
T3b クラスタ情報
T3c クラスタ情報
F1 データフィールド
F2 データフィールド
D1 第1更新データ
M1 制御メッセージ
Mx1 第1制御メッセージ
Mx2 第2制御メッセージ
Y1 更新情報
Y2 設定情報
Y3 破棄情報
Y4 追加情報
Y5 追加完了情報
Y6 有効化情報
Y7 無効化情報
TM1 所要時間
Th1 第1閾値
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15