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

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

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

特開2023-154857車載制御装置、制御方法及び制御プログラム
<>
  • 特開-車載制御装置、制御方法及び制御プログラム 図1
  • 特開-車載制御装置、制御方法及び制御プログラム 図2
  • 特開-車載制御装置、制御方法及び制御プログラム 図3
  • 特開-車載制御装置、制御方法及び制御プログラム 図4
  • 特開-車載制御装置、制御方法及び制御プログラム 図5A
  • 特開-車載制御装置、制御方法及び制御プログラム 図5B
  • 特開-車載制御装置、制御方法及び制御プログラム 図6
  • 特開-車載制御装置、制御方法及び制御プログラム 図7
  • 特開-車載制御装置、制御方法及び制御プログラム 図8
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023154857
(43)【公開日】2023-10-20
(54)【発明の名称】車載制御装置、制御方法及び制御プログラム
(51)【国際特許分類】
   H04L 12/28 20060101AFI20231013BHJP
【FI】
H04L12/28 200Z
【審査請求】未請求
【請求項の数】15
【出願形態】OL
(21)【出願番号】P 2022064471
(22)【出願日】2022-04-08
(71)【出願人】
【識別番号】395011665
【氏名又は名称】株式会社オートネットワーク技術研究所
(71)【出願人】
【識別番号】000183406
【氏名又は名称】住友電装株式会社
(71)【出願人】
【識別番号】000002130
【氏名又は名称】住友電気工業株式会社
(74)【代理人】
【識別番号】110000280
【氏名又は名称】弁理士法人サンクレスト国際特許事務所
(72)【発明者】
【氏名】遠藤 雅大
【テーマコード(参考)】
5K033
【Fターム(参考)】
5K033AA01
5K033BA06
5K033DA01
5K033DB16
5K033DB18
(57)【要約】
【課題】複数の車載装置間で通信されるメッセージを中継する中継処理と、車両に関する前記中継処理とは異なる処理とを実行する車載制御装置において、中継処理を実行するための第1期間と、中継処理とは異なる処理を実行するための第2期間とを適切に決定する。
【解決手段】
車載制御装置は、複数の車載装置間で通信されるメッセージを中継する中継処理を実行する第1処理部と、車両に関する前記中継処理とは異なる処理を実行する第2処理部と、前記第1処理部による前記中継処理を実行するための第1期間と、前記第2処理部による処理を実行するための第2期間とを動的に決定する決定部と、を備える。
【選択図】図4
【特許請求の範囲】
【請求項1】
複数の車載装置間で通信されるメッセージを中継する中継処理を実行する第1処理部と、
車両に関する前記中継処理とは異なる処理を実行する第2処理部と、
前記第1処理部による前記中継処理を実行するための第1期間と、前記第2処理部による処理を実行するための第2期間とを動的に決定する決定部と、
を備える、
車載制御装置。
【請求項2】
前記メッセージは、前記複数の車載装置間で周期的に通信され、
前記決定部は、前記メッセージの周期に基づいて、前記第1期間を決定する、
請求項1に記載の車載制御装置。
【請求項3】
前記決定部は、時間における前記メッセージを受信する確率分布に基づいて、前記第1期間を決定する、
請求項2に記載の車載制御装置。
【請求項4】
前記決定部は、前記確率分布と前記閾値との比較に基づいて、前記第1期間を決定する、
請求項3に記載の車載制御装置。
【請求項5】
前記車載制御装置は、前記確率分布を作成する作成部を備える、
請求項3に記載の車載制御装置。
【請求項6】
前記作成部は、前記車載制御装置における前記メッセージの受信履歴に基づいて、前記確率分布を作成する、
請求項5に記載の車載制御装置。
【請求項7】
前記車載制御装置は、前記メッセージの周期的な通信の位相の変化を検出する位相変化検出部を備え、
前記作成部は、前記位相変化検出部によって検出された位相の変化から後の前記メッセージの受信履歴に基づいて、前記確率分布を作成する、
請求項6に記載の車載制御装置。
【請求項8】
前記決定部は、前記車両の外部に設けられた外部装置によって作成された前記確率分布に基づいて、前記第1期間を決定する、
請求項3に記載の車載制御装置。
【請求項9】
前記決定部は、前記第1期間及び前記第2期間を含む一定の周期に基づくタイミングで、前記第1期間及び前記第2期間を決定する、
請求項1から請求項8のいずれか1項に記載の車載制御装置。
【請求項10】
前記車載制御装置は、前記車両の状態の変化を検出する状態変化検出部を備え、
前記決定部は、前記状態変化検出部によって前記状態の変化が検出された場合に、前記第1期間及び前記第2期間を決定する、
請求項1から請求項8のいずれか1項に記載の車載制御装置。
【請求項11】
前記車両の状態の変化は、前記車両の走行状態の変化を含む、
請求項10に記載の車載制御装置。
【請求項12】
前記車両の状態の変化は、前記複数の車載装置を含む車載ネットワークの構成の変化を含む、
請求項10に記載の車載制御装置。
【請求項13】
前記車両の状態の変化は、前記複数の車載装置の少なくとも1つが通常稼働状態からスリープ状態へ、又は、スリープ状態から通常稼働状態へ切り替わることを含む、
請求項10に記載の車載制御装置。
【請求項14】
複数の車載装置間で通信されるメッセージを中継する中継処理を実行するステップと、
車両に関する前記中継処理とは異なる処理を実行するステップと、
前記中継処理を実行するための第1期間と、前記中継処理とは異なる処理を実行するための第2期間とを動的に決定するステップと、
を含む、
制御方法。
【請求項15】
複数の車載装置間で通信されるメッセージを中継する中継処理と、車両に関する前記中継処理とは異なる処理とを実行する車載制御装置に用いられる制御プログラムであって、
コンピュータを、
前記中継処理を実行するための第1期間と、前記中継処理とは異なる処理を実行するための第2期間とを動的に決定する決定部、
として機能させるための、制御プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、車載制御装置、制御方法及び制御プログラムに関する。
【背景技術】
【0002】
車両には、エンジン、トランスミッション等を制御する制御系ECU(Electronic Control Unit)、ヘッドライト、パワーウインドウ等を制御するボディ系ECU、ナビゲーション装置、マルチメディア機器等の情報系ECU等、多種の車載装置が搭載される。近年、1台の車載装置において複数の仮想マシンを構築し、複数のECUの機能を設けることが提案されている。1台の車載装置において複数の仮想マシンを稼働する場合、各仮想マシンにタスクの実行時間が時分割で割り当てられる。特許文献1には、イグニッションスイッチの位置及びエンジンの状態(ACC OFF、ACC ON、IG OFF直後、IG ON直後、IG ON定常状態)に応じて、各仮想マシンに割り当てられるタスクの実行時間を変更することが開示されている。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2012-185531号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
車載装置には、複数の車載装置間の通信を中継する中継装置がある。このような中継装置を仮想マシンで実現する場合、車載装置からメッセージを受信する期間にタスクの実行時間が割り当てられなければ、中継処理を効率的に行うことができない。
【課題を解決するための手段】
【0005】
本開示の一態様に係る車載制御装置は、複数の車載装置間で通信されるメッセージを中継する中継処理を実行する第1処理部と、車両に関する前記中継処理とは異なる処理を実行する第2処理部と、前記第1処理部による前記中継処理を実行するための第1期間と、前記第2処理部による処理を実行するための第2期間とを動的に決定する決定部と、を備える。
【0006】
本開示の一態様に係る制御方法は、複数の車載装置間で通信されるメッセージを中継する中継処理を実行するステップと、車両に関する前記中継処理とは異なる処理を実行するステップと、前記中継処理を実行するための第1期間と、前記中継処理とは異なる処理を実行するための第2期間とを動的に決定するステップと、を含む。
【0007】
本開示の一態様に係る制御プログラムは、複数の車載装置間で通信されるメッセージを中継する中継処理と、車両に関する前記中継処理とは異なる処理とを実行する車載制御装置に用いられる制御プログラムであって、コンピュータを、前記中継処理を実行するための第1期間と、前記中継処理とは異なる処理を実行するための第2期間とを動的に決定する決定部、として機能させる。
【0008】
本開示は、上記のような特徴的な構成を備える車載制御装置、前記車載制御装置における特徴的な処理をステップとする制御方法、及び前記車載制御装置に特徴的な処理を実行させるための制御プログラムとして実現することができるだけでなく、前記車載制御装置を含む車載システムとして実現したり、前記車載制御装置の一部又は全部を半導体集積回路として実現したりすることができる。
【発明の効果】
【0009】
本開示によれば、複数の車載装置間で通信されるメッセージを中継する中継処理と、車両に関する前記中継処理とは異なる処理とを実行する車載制御装置において、中継処理を実行するための第1期間と、中継処理とは異なる処理を実行するための第2期間とを適切に決定することができる。
【図面の簡単な説明】
【0010】
図1】実施形態に係る車載システムの構成の一例を示すブロック図である。
図2】実施形態に係る統合ECUの構成の一例を示すブロック図である。
図3】実施形態に係る統合ECUにおける仮想環境を説明するための模式図である。
図4】実施形態に係る統合ECUの機能の一例を示す機能ブロック図である。
図5A】第1期間及び第2期間とメッセージの受信タイミングとの関係の一例を示すタイミングチャートである。
図5B】実施形態に係る統合ECUによる第1期間及び第2期間の決定を説明するための図である。
図6】メッセージ通信の位相変化の検出の一例を説明するための図である。
図7】実施形態に係る統合ECUによる期間決定処理の一例を示すフローチャートである。
図8】実施形態に係る統合ECUの機能の変形例を示す機能ブロック図である。
【発明を実施するための形態】
【0011】
<本開示の実施形態の概要>
以下、本開示の実施形態の概要を列記して説明する。
【0012】
(1) 本実施形態に係る車載制御装置は、複数の車載装置間で通信されるメッセージを中継する中継処理を実行する第1処理部と、車両に関する前記中継処理とは異なる処理を実行する第2処理部と、前記第1処理部による前記中継処理を実行するための第1期間と、前記第2処理部による処理を実行するための第2期間とを動的に決定する決定部と、 を備える。これにより、中継処理を実行するための第1期間と、中継処理とは異なる処理を実行するための第2期間とを適切に決定することができる。
【0013】
(2) 上記(1)において、前記メッセージは、前記複数の車載装置間で周期的に通信され、前記決定部は、前記メッセージの周期に基づいて、前記第1期間を決定してもよい。これにより、メッセージを受信可能な期間に第1期間を割り当てることができる。
【0014】
(3) 上記(2)において、前記決定部は、時間における前記メッセージを受信する確率分布に基づいて、前記第1期間を決定してもよい。これにより、メッセージを受信する確率が高い期間に、第1期間を割り当てることができる。
【0015】
(4) 上記(3)において、前記決定部は、前記確率分布と前記閾値との比較に基づいて、前記第1期間を決定してもよい。これにより、メッセージを受信する確率が高い期間を、閾値を用いて定めることができる。
【0016】
(5) 上記(3)又は(4)において、前記車載制御装置は、前記確率分布を作成する作成部を備えてもよい。これにより、車載制御装置において作成された確率分布を用いて第1期間を決定することができる。
【0017】
(6) 上記(5)において、前記作成部は、前記車載制御装置における前記メッセージの受信履歴に基づいて、前記確率分布を作成してもよい。これにより、メッセージの受信履歴を用いて、メッセージの受信周期を反映した確率分布を得ることができる。
【0018】
(7) 上記(6)において、前記車載制御装置は、前記メッセージの周期的な通信の位相の変化を検出する位相変化検出部を備え、前記作成部は、前記位相変化検出部によって検出された位相の変化から後の前記メッセージの受信履歴に基づいて、前記確率分布を作成してもよい。これにより、通信の位相が変化してからのメッセージの受信周期を反映した確率分布を得ることができる。
【0019】
(8) 上記(3)又は(4)において、前記決定部は、前記車両の外部に設けられた外部装置によって作成された前記確率分布に基づいて、前記第1期間を決定してもよい。これにより、車載制御装置において確率分布を作成する必要がない。車載制御装置は、外部装置において作成された確率分布を用いて第1期間を決定することができる。
【0020】
(9) 上記(1)から(8)のいずれか1つにおいて、前記決定部は、前記第1期間及び前記第2期間を含む一定の周期に基づくタイミングで、前記第1期間及び前記第2期間を決定してもよい。これにより、好適なタイミングで第1期間及び第2期間を決定することができる。
【0021】
(10) 上記(1)から(9)のいずれか1つにおいて、前記車載制御装置は、前記車両の状態の変化を検出する状態変化検出部を備え、前記決定部は、前記状態変化検出部によって前記状態の変化が検出された場合に、前記第1期間及び前記第2期間を決定してもよい。これにより、好適なタイミングで第1期間及び第2期間を決定することができる。
【0022】
(11) 上記(10)において、前記車両の状態の変化は、前記車両の走行状態の変化を含んでもよい。これにより、車両の走行状態が変化したタイミングで、第1期間及び第2期間を決定することができる。
【0023】
(12) 上記(10)において、前記車両の状態の変化は、前記複数の車載装置を含む車載ネットワークの構成の変化を含んでもよい。これにより、車載ネットワークの構成が変化したタイミングで、第1期間及び第2期間を決定することができる。
【0024】
(13) 上記(10)において、前記車両の状態の変化は、前記複数の車載装置の少なくとも1つが通常稼働状態からスリープ状態へ、又は、スリープ状態から通常稼働状態へ切り替わることを含んでもよい。これにより、車載装置の状態が通常稼働状態とスリープ状態との間で変化したタイミングで、第1期間及び第2期間を決定することができる。
【0025】
(14) 本実施形態に係る制御方法は、複数の車載装置間で通信されるメッセージを中継する中継処理を実行するステップと、車両に関する前記中継処理とは異なる処理を実行するステップと、前記前記中継処理を実行するための第1期間と、前記前記中継処理とは異なる処理を実行するための第2期間とを動的に決定するステップと、を含む。これにより、中継処理を実行するための第1期間と、中継処理とは異なる処理を実行するための第2期間とを適切に決定することができる。
【0026】
(15) 本実施形態に係る制御プログラムは、複数の車載装置間で通信されるメッセージを中継する中継処理と、車両に関する前記中継処理とは異なる処理とを実行する車載制御装置に用いられる制御プログラムであって、コンピュータを、前記中継処理を実行するための第1期間と、前記中継処理とは異なる処理を実行するための第2期間とを動的に決定する決定部、として機能させる。これにより、中継処理を実行するための第1期間と、中継処理とは異なる処理を実行するための第2期間とを適切に決定することができる。
【0027】
<本開示の実施形態の詳細>
以下、図面を参照しつつ、本発明の実施形態の詳細を説明する。なお、以下に記載する実施形態の少なくとも一部を任意に組み合わせてもよい。
【0028】
[1.車載システム]
図1は、本実施形態に係る車載システムの構成の一例を示すブロック図である。車載システム100は、車両に搭載される。
【0029】
本実施系に係る車載システム100は、統合ECU200と、個別ECU300A,300B,300C,300D,300Eとを含む。車載システム100は、統合ECU200、個別ECU300A,300B,300C,300D,300E、及びそれらを繋ぐ通信ケーブル(通信バス)によって構成される車載ネットワークである。
【0030】
複数の個別ECU300A,300B,300C,300D,300Eは、車両の各部に配置される。個別ECU300A,300B,300C,300D,300Eは、車両の各部のハードウェアを個別に制御したり、車両の各部のハードウェアの状態を監視したりする。例えば、個別ECU300A,300B,300C,300D,300Eは、制御系、ボディ系、情報系のECUである。個別ECU300A,300B,300C,300D,300Eは、「車載装置」の一例である。なお、以下の説明では、個別ECU300A,300B,300C,300D,300Eを総称して「個別ECU300」ともいう。
【0031】
統合ECU200は、個別ECU300A,300B,300C,300D,300EのそれぞれとCAN(Controller Area Network)バスのような車載バス400A,400B,400Cを介して接続されている。具体的には、バス400Aには、個別ECU300A,300Bが接続されている。バス400Bには、個別ECU300C,300Dが接続されている。バス400Cには、個別ECU300Eが接続されている。統合ECU200は、個別ECU300A,300B,300C,300D,300Eのそれぞれと相互に通信することができる。
【0032】
統合ECU200及び個別ECU300は、周期的にメッセージを送受信するための通信プロトコルを使用する。通信プロトコルは、例えば、CAN又はCAN FD(CAN with Flexible Data Rate)である。
【0033】
統合ECU200は、複数の個別ECU300間の通信を中継するゲートウェイとしての機能を有する。個別ECU300は、メッセージを送信することができる。統合ECU200は、異なるバスに接続された個別ECU間のメッセージを中継する。例えば、統合ECU200は、バス400Aに接続された個別ECU300Aと、バス400Bに接続された個別ECU300Cとの間でメッセージを中継することができる。
【0034】
統合ECU200は、バス400Cを介して外部通信装置350に接続されている。外部通信装置350は、例えば5G又は4Gに準拠した無線通信端末であり、例えば、TCU(Telematics Control Unit)である。外部通信装置350は、サーバ600と通信することができる。外部通信装置350は、統合ECU200とサーバ600との間の通信を中継する。
【0035】
[2.統合ECUの構成]
図2は、本実施形態に係る統合ECUの構成の一例を示すブロック図である。統合ECU200は、プロセッサ201と、不揮発性メモリ202と、揮発性メモリ203と、通信インタフェース(I/F)204とを含む。
【0036】
揮発性メモリ203は、例えばSRAM(Static Random Access Memory)、DRAM(Dynamic Random Access Memory)等の半導体メモリである。不揮発性メモリ202は、例えばフラッシュメモリ、ハードディスク等である。不揮発性メモリ202は、データの読み出し及び書き込みが可能である。
【0037】
プロセッサ201は、例えばCPU(Central Processing Unit)である。ただし、プロセッサ201は、CPUに限られない。プロセッサ201は、GPU(Graphics Processing Unit)であってもよい。プロセッサ201は、コンピュータプログラムを実行可能に構成される。ただしプロセッサ201は、例えば、ASIC(Application Specific Integrated Circuit)を一部に含んでもよいし、FPGA(Field Programmable Gate Array)等のプログラマブルロジックデバイスを一部に含んでもよい。
【0038】
通信I/F204は、上述した車載ネットワーク用の通信プロトコルに準拠した通信インタフェースである。通信I/F204は、複数の通信ポートを含み、バス400A,400B,400Cのそれぞれに接続されている。通信I/F204は、バス400A,400B,400Cを介して個別ECU300A,300B,300C,300D,300Eのそれぞれに接続されている。統合ECU200は、通信I/F204によって、個別ECU300A,300B,300C,300D,300Eと通信することができる。さらに、統合ECU200は、通信I/F204によって、外部通信装置350を介してサーバ600と通信することができる。
【0039】
不揮発性メモリ202には、ハイパーバイザ251、ゲストOS(Operating System)252A,252B、アプリケーション(APP)253A,253Bがインストールされている。ハイパーバイザ251は、プロセッサ201によって実行され、統合ECU200を仮想マシンとして機能させる。
【0040】
図3は、本実施形態に係る統合ECUにおける仮想環境を説明するための模式図である。ハイパーバイザ251は、ハードウェア260(プロセッサ201、不揮発性メモリ202、揮発性メモリ203、及び通信I/F204等)上で動作する。ハイパーバイザ251は、仮想ハードウェア(HW)260A,260Bをエミュレートすることができる。仮想HW260Aがエミュレートされることで、仮想マシン261Aが実現され、仮想HW260Bがエミュレートされることで、仮想マシン261Bが実現される。以下、仮想マシン261Aを「VM_1」ともいい、仮想マシン261Bを「VM_2」ともいう。VM_1は「第1処理部」の一例であり、VM_2は「第2処理部」の一例である。
【0041】
VM_1において、ゲストOS252Aは動作する。VM_1において、APP253AはゲストOS252A上で動作する。VM_2において、ゲストOS252Bは動作する。VM_2において、APP253BはゲストOS252B上で動作する。APP253Aは、ゲートウェイの機能を実現するためのソフトウェアである。プロセッサ201がAPP253Aを実行することにより、統合ECU200は、個別ECU300間のメッセージを中継する中継処理を実行することができる。APP253Bは、ゲートウェイの機能以外の機能を実現するためのソフトウェアである。APP253Bは、例えば、パワーウインドウの制御ソフトウェアである。プロセッサ201がAPP253Bを実行することにより、統合ECU200は、パワーウインドウを制御することができる。
【0042】
ハイパーバイザ251は、VM_1及びVM_2の実行期間を管理する。VM_1の実行期間及びVM_2の実行期間は時分割で割り当てられる。VM_1の実行期間は「第1期間」であり、VM_2の実行期間は「第2期間」である。
【0043】
図2に戻り、不揮発性メモリ202には、コンピュータプログラムである制御プログラム254並びに制御プログラム254において使用される周期情報255、履歴データ256、及びスケジュールテーブル257が格納される。
【0044】
制御プログラム254は、VM_1及びVM_2それぞれの実行期間を決定するためのプログラムである。
【0045】
周期情報255は、個別ECU300A,300B,300C,300D,300Eのそれぞれのメッセージの送信周期を示す情報である。個別ECU300A,300B,300C,300D,300Eの少なくとも一部において、メッセージ送信周期は互いに異なってもよい。個別ECU300A,300B,300C,300D,300Eの少なくとも一部において、メッセージ送信周期は同一であってもよい。例えば、個別ECU300Aのメッセージ送信周期はT1秒であり、個別ECU300Bのメッセージ送信周期はT2秒である。周期情報255は、個別ECU300毎のメッセージ送信周期を含む。以下、メッセージ送信周期を「個別周期」ともいう。
【0046】
履歴データ256は、統合ECU200が各個別ECU300から受信したメッセージの受信履歴である。履歴データ256は、送信元の個別ECU300の識別情報と、メッセージの受信時刻とを含む。
【0047】
スケジュールテーブル257は、第1期間及び第2期間を定義するためのテーブルである。スケジュールテーブル257には、制御プログラム254によって決定された第1期間及び第2期間が格納される。ハイパーバイザ251は、スケジュールテーブル257で指定された第1期間及び第2期間にしたがって、VM_1及びVM_2を動作させる。
【0048】
[3.統合ECUの機能]
図4は、本実施形態に係る統合ECUの機能の一例を示す機能ブロック図である。
【0049】
プロセッサ201が制御プログラム254を実行することにより、決定部211と、作成部212と、位相変化検出部213と、蓄積部214との各機能が実現される。
【0050】
決定部211は、VM_1による中継処理を実行するための第1期間と、VM_2による処理を実行するための第2期間とを動的に決定する。決定部211は、個別ECU300からのメッセージの送信周期に基づいて、第1期間を決定する。
【0051】
図5Aは、第1期間及び第2期間とメッセージの受信タイミングとの関係の一例を示すタイミングチャートである。車載システム100において使用される通信プロトコルでは、個別ECU300から周期的にメッセージが送信される。図5Aの例では、個別ECU300Aから送信されるメッセージを「M_1」、個別ECU300Bから送信されるメッセージを「M_2」、個別ECU300Cから送信されるメッセージを「M_3」で示し、第1期間を「VM_1」、第2期間を「VM_2」で示す。
【0052】
第1期間及び第2期間は、基本周期内において指定される。図5Aでは、基本周期において、第1期間及び第2期間が固定的に決定された例を示す。すなわち、図5Aの例では、各基本周期において、第1期間及び第2期間が変動しない。この場合、メッセージM_1,M_2,M_3は、第1期間中に統合ECU200によって受信されるとは限らない。図5Aの例では、メッセージM_1は第1期間において受信されるため、VM_1は第1期間にメッセージM_1の中継処理を行うことができる。しかし、メッセージM_2及びM_3は、第1期間中に受信されないため、統合ECU200は、次の第1期間を待たなければ、メッセージM_2及びM_3を中継することができない。
【0053】
本実施形態に係る統合ECU200は、個別ECU300からのメッセージの送信周期に合わせて、第1期間を決定する。このため、統合ECU200において、第1期間にメッセージM_1,M_2,M_3が受信され、中継処理が効率的に行われる。
【0054】
図4に戻り、具体的には、決定部211は、時間におけるメッセージを受信する確率分布(以下、「受信確率分布」という)に基づいて、第1期間を決定する。作成部212は、受信確率分布を作成する。
【0055】
作成部212は、周期情報255及び履歴データ256を用いて、受信確率分布を作成する。図5Bは、本実施形態に係る統合ECUによる第1期間及び第2期間の決定を説明するための図である。図5Bにおける下段のグラフは、受信確率分布を示す。図5Bにおいて、501は個別ECU300AからのメッセージM_1の受信確率分布であり、502は個別ECU300BからのメッセージM_2の受信確率分布であり、503は個別ECU300CからのメッセージM_3の受信確率分布である。個別ECU300は、設定された個別周期によってメッセージを送信するが、複数の個別ECU300から同時にメッセージが送信された場合の通信調停などによって、メッセージの送信タイミングがずれることがある。作成部212は、個別ECU300Aの個別周期と、個別ECU300AからのメッセージM_1の受信履歴を用いて、メッセージM_1の受信確率分布501を作成する。作成部212は、個別ECU300Bの個別周期と、個別ECU300BからのメッセージM_2の受信履歴を用いて、メッセージM_2の受信確率分布502を作成する。作成部212は、個別ECU300Cの個別周期と、個別ECU300CからのメッセージM_3の受信履歴を用いて、メッセージM_3の受信確率分布503を作成する。
【0056】
図4に戻り、位相変化検出部213は、メッセージの周期的な通信の位相の変化を検出する。具体的な一例では、位相変化検出部213は、周期情報255及び履歴データ256を用いて、メッセージの通信の位相変化を検出する。
【0057】
図6は、メッセージ通信の位相変化の検出の一例を説明するための図である。図6では、通信調停によるメッセージ送信タイミングのずれを考慮していない。個別ECU300Aからは、個別周期毎にメッセージM_1が送信される。個別ECU300では、メッセージ送信の位相が変化するイベントが発生することがある。例えば、個別ECU300Aはスリープ状態に入ると、メッセージM_1の送信を中断する。個別ECU300Aがスリープ状態から通常動作状態に復帰すると、メッセージM_1の周期的な送信が再開されるが、スリープ状態の前からはメッセージM_1の送信の位相が変化する。位相変化検出部213は、例えば統合ECU200におけるメッセージM_1の過去の受信状態を周期情報255及び履歴データ256から特定し、メッセージM_1の受信の位相変化を検出する。位相変化検出部213は、個別ECU300Aの状態(通常動作状態、スリープ状態)を監視することにより、メッセージM_1の受信の位相変化を検出してもよい。
【0058】
図4に戻り、作成部212は、位相変化検出部213によって検出された位相の変化から後のメッセージの受信履歴に基づいて、受信確率分布を作成する。図6の例では、位相変化検出部213は、個別ECU300Aのスリープ期間の終了時点(以下、「位相変化点」という)において位相変化が生じたことを検出する。作成部212は、履歴データ256から位相変化点以降のメッセージM_1の受信履歴を取得し、取得された受信履歴を用いてメッセージM_1の受信確率分布を作成する。これにより、位相変化点以降におけるメッセージM_1の受信確率分布が作成される。
【0059】
1つの個別ECU300からのメッセージの受信履歴において、複数回の位相変化が検出された場合、最後の位相変化点以降のメッセージの受信履歴が用いられる。これにより、現時点におけるメッセージの受信の位相を正確に反映した受信確率分布を得ることができる。
【0060】
一例では、作成部212は、複数の受信確率分布を合成する。図5Bに戻り、メッセージM_1の受信確率分布501とメッセージM_2の受信確率分布502とが合成され、合成確率分布504が作成される。さらに詳細には、作成部212は、受信確率分布501及び502の値を時刻毎に加算し、合成確率分布504を作成する。
【0061】
決定部211は、作成部212によって作成された受信確率分布と閾値との比較に基づいて、第1期間を決定する。統合ECU200において、メッセージの受信確率の閾値(図中破線で示される)が設定されている。決定部211は合成確率分布504及び受信確率分布503と閾値とを比較し、受信確率が閾値以上となる期間を第1期間として決定する。決定部211は、例えば、基本期間において第1期間以外の期間を第2期間として決定する。
【0062】
図4に戻り、作成部212は、基本周期に基づくタイミングで受信確率分布を作成し、決定部211は、基本周期に基づくタイミングで第1期間及び第2期間を決定する。具体的な一例では、基本周期が開始したタイミングで、作成部212は、位相検知点から現在の基本周期までに得られた受信履歴に基づいて、受信確率分布を作成する。決定部211は、作成部212によって作成された受信確率分布を用いて、次の基本周期における第1期間及び第2期間を決定する。なお、作成部212は基本周期毎に受信確率分布を作成しなくてもよく、決定部211は基本周期毎に第1期間及び第2期間を決定しなくてもよい。例えば、所定回数の基本周期(例えば、3回の基本周期)毎に、作成部212が受信確率分布を作成し、決定部211が第1期間及び第2期間を決定してもよい。
【0063】
決定部211は、決定した第1期間及び第2期間を、スケジュールテーブル257に格納する。これにより、スケジュールテーブル257が更新される。ハイパーバイザ251はスケジュールテーブル257において指定された第1期間及び第2期間によって、VM_1及びVM_2を動作させる。これにより、メッセージの受信確率が高い期間に、VM_1が中継処理を実行することができる。
【0064】
蓄積部214は、統合ECU200におけるメッセージの受信履歴を蓄積する。蓄積部214は、VM_1によってメッセージが中継される都度、メッセージの送信元の識別情報と、メッセージの受信時刻とを履歴データ256に記録する。これにより、履歴データ256に新たな情報が追加される。
【0065】
[4.統合ECUの動作]
以下、本実施形態に係る統合ECUの動作を説明する。統合ECU200のプロセッサ201が制御プログラム254を実行することにより、以下に説明するような期間決定処理を実行する。図7は、本実施形態に係る統合ECUによる期間決定処理の一例を示すフローチャートである。
【0066】
期間設定処理が開始すると、プロセッサ201は、基本周期が開始したか否かを判定する(ステップS101)。基本周期が開始していなければ(ステップS101においてNO)、プロセッサ201はステップS101を再度実行する。
【0067】
基本周期が開始している場合(ステップS101においてYES)、プロセッサ201は、周期情報255及び履歴データ256を参照し、個別ECU300からのメッセージ受信の位相変化を検出する(ステップS102)。プロセッサ201は、履歴データ256から位相変化点以降の受信履歴を取得する(ステップS103)。
【0068】
プロセッサ201は、周期情報255及び位相変化点以降の受信履歴に基づいて、メッセージの受信確率分布を作成する(ステップS104)。複数の受信確率分布が重なっている場合、プロセッサ201は複数の受信確率分布を合成し、合成確率分布を作成する。
【0069】
プロセッサ201は、受信確率分布と閾値とを比較し(ステップS105)、受信確率が閾値以上である期間を特定する。プロセッサ201は、特定された期間を第1期間として決定し、基本周期において第1期間以外の期間を第2期間として決定する(ステップS106)。
【0070】
プロセッサ201は、決定された第1期間及び第2期間をスケジュールテーブル257に格納し、スケジュールテーブル257を更新する(ステップS107)。以上で、期間決定処理が終了する。
【0071】
[5.変型例]
上記の実施形態では、複数の受信確率分布に重なりがある場合、受信確率分布を合成した合成確率分布を生成し、合成確率分布と閾値との比較によって第1期間を決定したが、これに限定されない。例えば、決定部211が、受信確率分布と閾値とを比較して受信確率が閾値以上の期間を特定し、2つ以上の期間が特定され、隣り合う期間の間の空白期間(受信確率が閾値未満の期間)の長さが所定値以下である場合、当該隣り合う期間と、空白期間とを合わせた期間を第1期間としてもよい。
【0072】
上記の実施形態では、統合ECU200におけるメッセージの受信確率分布に基づいて第1期間を決定したが、これに限定されない。受信確率分布を用いることなく、メッセージの周期に基づいて第1期間を決定してもよい。例えば、決定部211は、周期情報255において指定される個別ECU300のメッセージ送信周期に基づいて、次回のメッセージ受信時刻を推定し、推定されたメッセージ受信時刻を中心とした所定幅の期間を第1期間として決定することができる。
【0073】
上記の実施形態では、統合ECU200が有する作成部212が、メッセージの受信確率分布を作成したが、これに限定されない。サーバ600が作成部212と同等の機能を有し、メッセージの受信確率分布を作成してもよい。この場合、統合ECU200は、サーバから受信確率分布を通信によって取得し、取得された受信確率分布を用いて第1期間及び第2期間を決定することができる。
【0074】
上記の実施形態では、決定部211が、基本周期に基づくタイミングで第1期間及び第2期間を決定したが、これに限定されない。例えば、決定部211は、車両の状態変化が検出された場合に第1期間及び第2期間を決定してもよい。
【0075】
図8は、実施形態に係る統合ECUの機能の変形例を示す機能ブロック図である。本変形例に係る統合ECU200は、状態変化検出部215としての機能を有する。状態変化検出部215は、車両の状態の変化を検出する。作成部212は、状態変化検出部215によって車両状態の変化が検出されると、メッセージの受信確率分布を作成する。決定部211は、状態変化検出部215によって車両状態の変化が検出されると、受信確率分布に基づいて第1期間及び第2期間を決定する。
【0076】
例えば、状態変化検出部215が検出する車両の状態変化は、車両の走行状態の変化とすることができる。状態変化検出部215は、例えば車両の速度の計測値を速度センサから取得し、車両の速度から車両が走行中であるか、停止中であるかを判断する。状態変化検出部215は、車両の走行状態から停止状態への変化、又は、停止状態から走行状態への変化を検出する。状態変化検出部215によって車両の走行状態の変化が検出された場合に、作成部212が受信確率分布を作成し、決定部211が受信確率分布に基づいて第1期間及び第2期間を決定する。
【0077】
例えば、状態変化検出部215が検出する車両の状態変化は、車載ネットワークの構成の変化とすることができる。状態変化検出部215は、車載ネットワークへの新たな個別ECU300の接続を検出し、車載ネットワークから個別ECU300の取り外しを検出する。状態変化検出部215によって車載ネットワークの構成の変化が検出された場合に、作成部212が受信確率分布を作成し、決定部211が受信確率分布に基づいて第1期間及び第2期間を決定する。
【0078】
例えば、状態変化検出部215が検出する車両の状態変化は、少なくとも1つの個別ECU300における通常稼働状態とスリープ状態との間の切り替わりとすることができる。状態変化検出部215は、個別ECU300が通常稼働状態からスリープ状態に切り替わったことを検出し、スリープ状態から通常稼働状態に切り替わったことを検出する。具体的な一例では、1つの個別ECU300(例えば、個別ECU300E)が、個別ECU300A,300B,300C,300Dの電源を管理する電源管理ECUであり、電源管理ECUが個別ECU300A,300B,300C,300Dの通常稼働状態及びスリープ状態の切り替えを管理する。個別ECU300において通常稼働状態及びスリープ状態の間の切り替えが発生した場合、電源管理ECUは、個別ECU300において通常稼働状態及びスリープ状態の間の切り替えが発生したこと、及び当該個別ECU300の識別情報を統合ECU200へ通知する。状態変化検出部215は、この通知を受信した場合に、個別ECU300において通常稼働状態及びスリープ状態の間の切り替えが発生したことを検出する。状態変化検出部215によって個別ECU300における通常稼働状態とスリープ状態との間の切替が検出された場合に、作成部212が受信確率分布を作成し、決定部211が受信確率分布に基づいて第1期間及び第2期間を決定する。
【0079】
上記の実施形態では、ハイパーバイザ型の仮想マシン261A及び261Bによって中継処理及び中継処理とは異なる処理(パワーウインドウの制御処理)を実行する構成について述べたが、これに限定されない。コンテナ型の2つの仮想マシンによって中継処理及び中継処理とは異なる処理を実行してもよいし、仮想マシンではなく、共通のOS上で動作する2つのアプリケーションによって中継処理及び中継処理とは異なる処理を実行してもよい。
【0080】
[6.実施形態の効果]
統合ECU200は、仮想マシン261A(第1処理部)と、仮想マシン261B(第2処理部)と、決定部211とを含む。仮想マシン261Aは、複数の個別ECU300間で通信されるメッセージを中継する中継処理を実行する。仮想マシン261Bは、車両に関する中継処理とは異なる処理を実行する。決定部211は、仮想マシン261Aによる中継処理を実行するための第1期間と、仮想マシン261Bによる処理を実行するための第2期間とを動的に決定する。これにより、中継処理を実行するための第1期間と、中継処理とは異なる処理を実行するための第2期間とを適切に決定することができる。
【0081】
メッセージは、複数の個別ECU300間で周期的に通信されてもよい。決定部211は、メッセージの周期に基づいて、第1期間を決定してもよい。これにより、メッセージを受信可能な期間に第1期間を割り当てることができる。
【0082】
決定部211は、時間におけるメッセージの受信確率分布に基づいて、第1期間を決定してもよい。これにより、メッセージを受信する確率が高い期間に、第1期間を割り当てることができる。
【0083】
決定部211は、受信確率分布と閾値との比較に基づいて、第1期間を決定してもよい。これにより、メッセージを受信する確率が高い期間を、閾値を用いて定めることができる。
【0084】
統合ECU200は、作成部212を含んでもよい。作成部212は、受信確率分布を作成する。これにより、統合ECU200において作成された受信確率分布を用いて第1期間を決定することができる。
【0085】
作成部212は、統合ECU200におけるメッセージの受信履歴に基づいて、受信確率分布を作成してもよい。これにより、メッセージの受信履歴を用いて、メッセージの受信周期を反映した確率分布を得ることができる。
【0086】
統合ECU200は、位相変化検出部213を含んでもよい。位相変化検出部213は、メッセージの周期的な通信の位相の変化を検出する。作成部212は、位相変化検出部213によって検出された位相変化点から後のメッセージの受信履歴に基づいて、受信確率分布を作成してもよい。これにより、通信の位相変化点からのメッセージの受信周期を反映した確率分布を得ることができる。
【0087】
決定部211は、車両の外部に設けられたサーバ600(外部装置)によって作成された受信確率分布に基づいて、第1期間を決定してもよい。これにより、統合ECU200において受信確率分布を作成する必要がない。統合ECU200は、サーバ600において作成された受信確率分布を用いて第1期間を決定することができる。
【0088】
決定部211は、第1期間及び第2期間を含む基本周期(一定の周期)に基づくタイミングで、第1期間及び第2期間を決定してもよい。これにより、好適なタイミングで第1期間及び第2期間を決定することができる。
【0089】
統合ECU200は、状態変化検出部215を含んでもよい。状態変化検出部215は、車両の状態の変化を検出する。決定部211は、状態変化検出部215によって車両の状態の変化が検出された場合に、第1期間及び第2期間を決定してもよい。これにより、好適なタイミングで第1期間及び第2期間を決定することができる。
【0090】
車両の状態の変化は、車両の走行状態の変化を含んでもよい。これにより、車両の走行状態が変化したタイミングで、第1期間及び第2期間を決定することができる。
【0091】
車両の状態の変化は、複数の個別ECU300を含む車載ネットワークの構成の変化を含んでもよい。これにより、車載ネットワークの構成が変化したタイミングで、第1期間及び第2期間を決定することができる。
【0092】
車両の状態の変化は、複数の個別ECU300の少なくとも1つが通常稼働状態からスリープ状態へ、又は、スリープ状態から通常稼働状態へ切り替わることを含んでもよい。これにより、個別ECU300の状態が通常稼働状態とスリープ状態との間で変化したタイミングで、第1期間及び第2期間を決定することができる。
【0093】
[7.補記]
今回開示された実施の形態はすべての点で例示であって、制限的ではない。本発明の権利範囲は、上述の実施形態ではなく特許請求の範囲によって示され、特許請求の範囲と均等の意味及びその範囲内でのすべての変更が含まれる。
【符号の説明】
【0094】
100 車載システム
200 統合ECU(車載制御装置)
201 プロセッサ
202 不揮発性メモリ
203 揮発性メモリ
204 通信インタフェース(通信I/F)
211 決定部
212 作成部
213 位相変化検出部
214 蓄積部
215 状態変化検出部
251 ハイパーバイザ
252A,252B ゲストOS
254 制御プログラム
255 周期情報
256 履歴データ
257 スケジュールテーブル
260 ハードウェア
260A,260B 仮想ハードウェア(仮想HW)
261A 仮想マシン(第1処理部)
261B 仮想マシン(第2処理部)
300,300A,300B,300C,300D,300E 個別ECU(車載装置)
350 外部通信装置
400A,400B,400C 車載バス
501,502,503 受信確率分布
504 合成確率分布
600 サーバ(外部装置)
図1
図2
図3
図4
図5A
図5B
図6
図7
図8