JP2012257122A - 車両制御装置、車両制御システム - Google Patents
車両制御装置、車両制御システム Download PDFInfo
- Publication number
- JP2012257122A JP2012257122A JP2011129535A JP2011129535A JP2012257122A JP 2012257122 A JP2012257122 A JP 2012257122A JP 2011129535 A JP2011129535 A JP 2011129535A JP 2011129535 A JP2011129535 A JP 2011129535A JP 2012257122 A JP2012257122 A JP 2012257122A
- Authority
- JP
- Japan
- Prior art keywords
- data
- request level
- operation request
- unit
- accurate operation
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000001514 detection method Methods 0.000 claims abstract description 134
- 230000006854 communication Effects 0.000 claims abstract description 108
- 238000004891 communication Methods 0.000 claims abstract description 107
- 230000005540 biological transmission Effects 0.000 claims abstract description 50
- 238000013523 data management Methods 0.000 claims description 25
- 238000000034 method Methods 0.000 abstract description 38
- 238000010586 diagram Methods 0.000 description 38
- 230000006870 function Effects 0.000 description 29
- 238000013500 data storage Methods 0.000 description 12
- 230000006378 damage Effects 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 230000007257 malfunction Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/0001—Systems modifying transmission characteristics according to link quality, e.g. power backoff
- H04L1/0009—Systems modifying transmission characteristics according to link quality, e.g. power backoff by adapting the channel coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0056—Systems characterized by the type of code used
- H04L1/0061—Error detection codes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L12/40169—Flexible bus arrangements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L2012/40208—Bus networks characterized by the use of a particular bus standard
- H04L2012/40215—Controller Area Network CAN
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L2012/40267—Bus for use in transportation systems
- H04L2012/40273—Bus for use in transportation systems the transportation system being a vehicle
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Quality & Reliability (AREA)
- Remote Sensing (AREA)
- Radar, Positioning & Navigation (AREA)
- Aviation & Aerospace Engineering (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Small-Scale Networks (AREA)
- Detection And Prevention Of Errors In Transmission (AREA)
- Detection And Correction Of Errors (AREA)
Abstract
【課題】要求される安全水準が異なるECU間で、それぞれのECUについて要求される安全水準を満たしつつ通信するための技術を提供する。
【解決手段】本発明に係る車両制御装置は、受信側の装置がどの程度正確に動作することを要求されているかに応じて、データ送信時に用いる誤り検出方式を変更する。
【選択図】図2
【解決手段】本発明に係る車両制御装置は、受信側の装置がどの程度正確に動作することを要求されているかに応じて、データ送信時に用いる誤り検出方式を変更する。
【選択図】図2
Description
本発明は、車両制御装置間で通信する技術に関するものである。
近年の多くの車両制御システムは、電子化された車両制御機器を操作するECU、すなわち電子制御装置(Electronic Control Unit)と、複数のECU間の通信を可能にする車載LAN(Local Area Network)から構成される。この車載LANの1つとして広く利用されているネットワークに、CAN(Controller Area Network)がある。
車両制御システムでは、通信データの意図しない変化(データ誤り)を防ぐために、データ誤りを検出するデータ誤り検出方式が用いられる。データ誤り検出方式には、パリティデータチェック、CRC(Cyclic Redundancy Check)、チェックサム等がある。
送信ECUは、採用するデータ誤り検出方式に基づいて、送信するデータから検出符号を算出し、送信するデータと検出符号をセットにして送信する。受信ECUは、送信ECUと同じデータ誤り検出方式を用いて、受信したデータから検出符号を算出し、算出した検出符号と受信した検出符号を比較する。検出符号が一致すればデータ誤りはなく、不一致であればデータ誤りがあることを示す。
近年、車両制御システムが正常に動作し、人間に可能な限り危害を与えないことを保証すること、また説明可能であることが重要になってきている。具体的には、機能の誤作動等によって人間に危害が及ぶことを防ぐため、その機能ごとに安全水準を割り当て、それを満たすように車両制御システムを開発する必要がある。
安全水準は、守るべき安全性の度合いを示し、割り当てる機能が正常に動作しないときの被害の大きさ等によって決定される。例えば、安全水準は4段階で定義され、機能が正確に動作しないときの被害が大きいほど、その機能には高い安全水準が割り当てられる。開発者は、安全水準ごとに検出すべきデータ誤り検出率を定め、それを達成するように車両制御システムを開発する。安全水準は、ECUが備える機能単位やECU単位に割り当ててもよいし、複数のECU間で通信することによって動作する機能の場合、通信する機能同士の組合せに割り当ててもよい。
下記特許文献1に記載されている技術では、制御装置がデータを受信する度に通信のエラー率等を算出し、データを送信する際にそのエラー率に応じてデータ誤り検出方式を切り替える。通信環境(伝送路の状態)に応じてデータ誤り検出方式を切り替えることにより、高信頼な通信が可能となる。
下記特許文献2に記載されている技術では、受信装置は通信環境から信頼度情報を算出し、信頼度情報に基づいて符号化率を送信装置に通知する。通知を受信した送信装置は、通知された符号化率を用いてデータ誤り検出方式を符号化する。これにより、高信頼な通信が可能となる。
車両制御システムは、異なるECUの機能が協調して高度な制御を実施するため、要求される安全水準が異なるECU間では、より高い方の安全水準に準じたデータ誤り検出率を保証しつつ、通信する必要がある。
上記特許文献1に記載されている技術では、通信のエラー率等によってデータ誤り検出方式を切り替えることができるが、ECUや機能ごとに割り当てられる安全水準に応じてデータ誤り検出方式を切り替えることができない。
上記特許文献2に記載されている技術では、通信環境が悪化しても符号化率を高くすることによって信頼性の高い通信を行うことができるが、上記特許文献1と同様に、ECUや機能ごとに割り当てられる安全水準に応じてデータ誤り検出方式を切り替えることができない。
本発明は、上記のような課題を解決するためになされたものであり、要求される安全水準が異なるECU間で、それぞれのECUについて要求される安全水準を満たしつつ通信するための技術を提供することを目的とする。
本発明に係る車両制御装置は、受信側の装置がどの程度正確に動作することを要求されているかに応じて、データ送信時に用いる誤り検出方式を変更する。
本発明に係る車両制御装置は、受信ECUがどの程度正確に動作する必要があるかに応じてデータ誤り検出方式を選択するため、安全水準が異なるECU間で、求められる安全水準を確保しつつ通信することができる。
<実施の形態1>
図1は、本発明の実施形態1に係る車両制御システム1000の構成図である。車両制御システム1000は、車両を制御する1以上のECUをネットワークで接続した構成を有する。
図1は、本発明の実施形態1に係る車両制御システム1000の構成図である。車両制御システム1000は、車両を制御する1以上のECUをネットワークで接続した構成を有する。
各ECUは、車両の各部を制御するとともに、必要に応じて他のECUと通信する。例えばカメラECU1は、車載カメラ11を用いて外界の状況を認識し、車間距離データをCAN5に送信する。車間距離制御ECU2は、車間距離データを受信し、これを用いてブレーキ力データを算出してCAN5に送信する。プリクラッシュセーフ制御ECU3は、車間距離データを受信し、これを用いて衝突の可能性を判定し、衝突可能性が高い場合は急ブレーキ要求データをCAN5に送信する。ブレーキ制御ECU4は、ブレーキ力データと急ブレーキ要求データを受信し、それらに応じてブレーキ41を制御する。
図2は、カメラECU1の構成図である。カメラECU1は、演算装置101、メモリ102、入出力回路115、CANコントローラ116を備える。
演算装置101は、メモリ102が格納する各プログラムを実行するプロセッサ(Central Processing Unit)である。同等の機能を、回路デバイスなどのハードウェアを用いて構成することもできる。
メモリ102は、プログラム領域103とデータ記憶領域111を有する。プログラム領域103は、カメラ制御部104、通信処理部105、正確動作要求レベル判定部106、データ誤り検出方式選択部107、パリティデータ付与部108、CRC符号付与部109、通信制御部110を格納する。これらプログラムの機能については後述する。データ記憶領域111は、後述の図6で説明する通信データ管理テーブル112、図7で説明する要求レベル判定テーブル113、図8で説明する検出方式選択テーブル114を格納する。
CANコントローラ116は、CRC回路117と信号入出力回路118を備える。CRC回路117は、CANバス5へ送信するデータを用いてCRC符号を算出し、通信パケットに付与してCANバス5へ送信する。また、CANバス5から受信したデータを用いてCRC符号を算出し、受信したCRC符号と算出したCRC符号を比較することにより、データ誤りを検出する。信号入出力回路118は、CANバス5から受信した通信信号をデジタル変換するなどの必要な処理を適宜実行する。
図3は、車間距離制御ECU2の構成図である。車間距離制御ECU2は、演算装置201、メモリ202、入出力回路215、CANコントローラ216を備える。
演算装置201は、メモリ202が格納する各プログラムを実行するプロセッサである。同等の機能を、回路デバイスなどのハードウェアを用いて構成することもできる。
メモリ202は、プログラム領域203とデータ記憶領域211を有する。プログラム領域203は、車間距離制御部204、通信処理部205、正確動作要求レベル判定部206、データ誤り検出方式選択部207、パリティデータ検出部208、CRC符号付与部209、通信制御部210を格納する。これらプログラムの機能については後述する。データ記憶領域211は、後述の図9で説明する通信データ管理テーブル212、図10で説明する要求レベル判定テーブル213、図8で説明する検出方式選択テーブル114、図11で説明する受信バッファ214を格納する。
CANコントローラ216の構成は、カメラECU1が備えるCANコントローラ116と同様である。
図4は、プリクラッシュセーフ制御ECU3の構成図である。プリクラッシュセーフ制御ECU3は、演算装置301、メモリ302、入出力回路315、CANコントローラ316を備える。
演算装置301は、メモリ302が格納する各プログラムを実行するプロセッサである。同等の機能を、回路デバイスなどのハードウェアを用いて構成することもできる。
メモリ302は、プログラム領域303とデータ記憶領域311を有する。プログラム領域303は、プリクラッシュセーフ制御部304、通信処理部305、正確動作要求レベル判定部306、データ誤り検出方式選択部307、CRC符号検出部308、CRC符号付与部309、通信制御部310を格納する。これらプログラムの機能については後述する。データ記憶領域311は、後述の図12で説明する通信データ管理テーブル312、図13で説明する要求レベル判定テーブル313、図8で説明する検出方式選択テーブル114、図14で説明する受信バッファ314を格納する。
CANコントローラ316の構成は、カメラECU1が備えるCANコントローラ116と同様である。
図5は、ブレーキ制御ECU4の構成図である。ブレーキ制御ECU4は、演算装置401、メモリ402、入出力回路409、CANコントローラ410、ブレーキ41を制御するブレーキアクチュエータ413を備える。
演算装置401は、メモリ402が格納する各プログラムを実行するプロセッサである。同等の機能を、回路デバイスなどのハードウェアを用いて構成することもできる。
メモリ402は、プログラム領域403とデータ記憶領域407を有する。プログラム領域403は、ブレーキ制御部404、CRC符号検出部405、通信制御部406を格納する。これらプログラムの機能については後述する。データ記憶領域407は、後述の図15で説明する受信バッファ408を格納する。
CANコントローラ410の構成は、カメラECU1が備えるCANコントローラ116と同様である。
図6は、カメラECU1が備える通信データ管理テーブル112の例を示す図である。通信データ管理テーブル112は、カメラECU1が送信するデータの種類を管理するテーブルであり、indexフィールド1120、データIDフィールド1121、CAN IDフィールド1122、データ名フィールド1123、受信先ECU IDフィールド1124を有する。
indexフィールド1120は、各レコードを識別する番号を保持する。データIDフィールド1121は、カメラECU1が送信するデータの種類を識別する値を保持する。CAN IDフィールド1122は、カメラECU1が送信するデータのCAN IDを保持する。データ名フィールド1123は、カメラECU1が送信するデータ名称を保持する。受信先ECU IDフィールド1124は、データの宛先となるECUの識別子を保持する。
図7は、カメラECU1が備える要求レベル判定テーブル113の例を示す図である。要求レベル判定テーブル113は、カメラECU1が制御データを送信する宛先ECUがどの程度正確に動作することを要求されているかを判定するために用いるテーブルであり、ECU IDフィールド1130、ECU名フィールド1131、正確動作要求レベルフィールド1132を有する。
ECU IDフィールド1130は、車両制御システム1000内のECUを識別する識別子を保持する。ECU名フィールド1131は、ECU IDフィールド1130によって識別されるECUの名称を保持する。正確動作要求レベルフィールド113は、ECU IDフィールド1130によって識別されるECUがどの程度正確に動作することを要求されているかを示す値を保持する。このフィールドの値が高いほど、より正確に動作することが要求されていることになる。
ECUが正確に動作するとは、そのECUが設計意図通りに動作することをいう。正確に動作しなければ安全に影響を及ぼす度合いが強いECUほど、より正確に動作することが要求されるので、正確動作要求レベルフィールド1132の値は高い。
図8は、カメラECU1、車間距離制御ECU2、プリクラッシュセーフ制御ECU3が備える検出方式選択テーブル114の例を示す図である。検出方式選択テーブル114は、受信側ECUに要求されている正確動作要求レベルに応じてデータ誤り検出方式を選択するために用いるテーブルであり、受信側要求レベルフィールド1141、データ誤り検出方式1142を有する。
受信側要求レベルフィールド1141は、受信側ECUに要求されている正確動作要求レベルの値を列挙する。データ誤り検出方式1142は、受信側要求レベルフィールド1141の値に適したデータ誤り検出方式を指定する値を保持する。
図9は、車間距離制御ECU2が備える通信データ管理テーブル212の例を示す図である。通信データ管理テーブル212の構成は、カメラECU1が備える通信データ管理テーブル112と同様であるが、保持するレコードの内容は車間距離制御ECU2が送信する制御データに対応するものとなっている。
図10は、車間距離制御ECU2が備える要求レベル判定テーブル213の例を示す図である。要求レベル判定テーブル213の構成は、カメラECU1が備える要求レベル判定テーブル113と同様であるが、保持するレコードの内容は車間距離制御ECU2が制御データを送信する宛先に対応するものとなっている。
図11は、車間距離制御ECU2が備える受信バッファ214の例を示すである。受信バッファ214は、車間距離制御ECU2が受信したデータを一時的に格納するバッファであり、受信CAN IDフィールド2140、データ値フィールド2141、受信フラグフィールド2142を有する。
受信CAN IDフィールド2140は、受信したデータのCAN IDを保持する。データ値フィールド2141は、受信したデータの値を保持する。受信フラグフィールド2142は、CANバス5からデータを受信したか否かを示すフラグ値を保持する。
図12は、プリクラッシュセーフ制御ECU3が備える通信データ管理テーブル312の例を示す図である。通信データ管理テーブル312の構成は、カメラECU1が備える通信データ管理テーブル112と同様であるが、保持するレコードの内容はプリクラッシュセーフ制御ECU3が送信する制御データに対応するものとなっている。
図13は、プリクラッシュセーフ制御ECU3が備える要求レベル判定テーブル313の例を示す図である。要求レベル判定テーブルテーブル313の構成は、カメラECU1が備える要求レベル判定テーブルテーブル113と同様であるが、保持するレコードの内容はプリクラッシュセーフ制御ECU3が制御データを送信する宛先に対応するものとなっている。
図14は、プリクラッシュセーフ制御ECU3が備える受信バッファ314の例を示す図である。受信バッファ314の構成は、車間距離制御ECU2が備える受信バッファ214と同様であるが、保持するレコードの内容はプリクラッシュセーフ制御ECU3が受信するデータに対応するものとなっている。
図15は、ブレーキ制御ECU4が備える受信バッファ408の例を示す図である。受信バッファ408の構成は、車間距離制御ECU2が備える受信バッファ214と同様であるが、保持するレコードの内容はブレーキ制御ECU4が受信するデータに対応するものとなっている。
以上、車両制御システム1000が有する各機器の構成について説明した。以下では、カメラECU1が車載カメラ11を用いて車間距離を算出し、車間距離データをCAN5に送信する処理を例として、各機器の動作フローを説明する。
受信ECUが車間距離制御ECU2である場合は、車間距離制御ECU2の動作要求レベルが2であるので、カメラECU1はデータ誤り検出方式としてパリティデータを用いて検出符号を算出し、車間距離データとセットにして送信する。受信ECUがプリクラッシュセーフ制御ECU3である場合は、プリクラッシュセーフ制御ECU3の動作要求レベルが4であるので、カメラECU1はデータ誤り検出方式としてCRCを用いて検出符号を算出し、車間距離データとセットにして送信する。
車間距離制御ECU2は、受信した車間距離データの値に応じてブレーキ力を算出し、データ誤り検出方式としてCRCを用いて、ブレーキ力データをブレーキ制御ECU4に送信する。
プリクラッシュセーフ制御ECU3は、受信した車間距離データの値に応じて急ブレーキ要求を出すか否かを判定し、データ誤り検出方式としてCRCを用いて、急ブレーキ要求データをブレーキ制御ECU4に送信する。
ブレーキ制御ECU4は、受信したブレーキ力データと急ブレーキ要求データに応じてブレーキ41を制御する。
図16は、カメラECU1が備えるカメラ制御部104の動作フローを示す図である。以下、図16の各ステップについて説明する。
(図16:ステップS104000)
カメラ制御部104は、車載カメラ11が撮像した映像データを読み出し、これを用いて車間距離データを算出する。
カメラ制御部104は、車載カメラ11が撮像した映像データを読み出し、これを用いて車間距離データを算出する。
(図16:ステップS104001)
カメラ制御部104は、車間距離データとそのデータIDを引数として通信処理部105を呼び出し、車間距離データを送信し、本動作フローを終了する。例えば、車間距離データのデータIDが1であるとき、車間距離データの値とデータIDの1を引数として通信処理部105を呼び出す。本ステップの詳細は図17で説明する。
カメラ制御部104は、車間距離データとそのデータIDを引数として通信処理部105を呼び出し、車間距離データを送信し、本動作フローを終了する。例えば、車間距離データのデータIDが1であるとき、車間距離データの値とデータIDの1を引数として通信処理部105を呼び出す。本ステップの詳細は図17で説明する。
図17は、カメラECU1が備える通信処理部105の動作フローを示す図である。通信処理部205、通信処理部305も同様の動作フローを実施する。以下、図17の各ステップについて説明する。
(図17:ステップSS105000)
通信処理部105は、通信データ管理テーブル112のindexフィールド1120の値を格納する変数countを0にセットする。通信処理部105は、受け取った引数に等しいデータIDフィールド1121が得られるまで、変数countの値を1つずつ増やしながら通信データ管理テーブル112内のレコードを順に取得する。
通信処理部105は、通信データ管理テーブル112のindexフィールド1120の値を格納する変数countを0にセットする。通信処理部105は、受け取った引数に等しいデータIDフィールド1121が得られるまで、変数countの値を1つずつ増やしながら通信データ管理テーブル112内のレコードを順に取得する。
(図17:ステップS105001)
通信処理部105は、変数countの値に対応する通信データ管理テーブル112内のレコードを参照し、受信先ECU IDフィールド1124を取得する。通信処理部105は、取得した受信ECU IDフィールド1124の値を引数として正確動作要求レベル判定部106を呼び出し、正確動作要求レベルの値を返戻値として取得する。例えば図6で説明したデータ例によれば、count(=index)が0であるとき、受信先ECU IDフィールド1124は2であるので、引数として2を指定して正確動作要求レベル判定部106を呼び出す。本ステップの詳細は図18で説明する。
通信処理部105は、変数countの値に対応する通信データ管理テーブル112内のレコードを参照し、受信先ECU IDフィールド1124を取得する。通信処理部105は、取得した受信ECU IDフィールド1124の値を引数として正確動作要求レベル判定部106を呼び出し、正確動作要求レベルの値を返戻値として取得する。例えば図6で説明したデータ例によれば、count(=index)が0であるとき、受信先ECU IDフィールド1124は2であるので、引数として2を指定して正確動作要求レベル判定部106を呼び出す。本ステップの詳細は図18で説明する。
(図17:ステップS105002)
通信処理部105は、取得した正確動作要求レベルと通信処理部105への引数として受け取ったデータを引数としてデータ誤り検出方式選択部107を呼び出し、返戻値として検出符号付き送信データを取得する。例えば図7で説明したデータ例によれば、通信処理部105が引数として受け取ったデータが車間距離データであり、車間距離制御ECU2へ送信する場合は、正確動作要求レベルの2と車間距離データの値を引数としてデータ誤り検出方式選択部107を呼び出す。同様に、通信処理部105が引数として受け取ったデータが車間距離データであり、プリクラッシュセーフ制御ECU4へ送信するときには、正確動作要求レベルの4と車間距離データの値を引数としてデータ誤り検出方式選択部107を呼び出す。本ステップの詳細は図19で説明する。
通信処理部105は、取得した正確動作要求レベルと通信処理部105への引数として受け取ったデータを引数としてデータ誤り検出方式選択部107を呼び出し、返戻値として検出符号付き送信データを取得する。例えば図7で説明したデータ例によれば、通信処理部105が引数として受け取ったデータが車間距離データであり、車間距離制御ECU2へ送信する場合は、正確動作要求レベルの2と車間距離データの値を引数としてデータ誤り検出方式選択部107を呼び出す。同様に、通信処理部105が引数として受け取ったデータが車間距離データであり、プリクラッシュセーフ制御ECU4へ送信するときには、正確動作要求レベルの4と車間距離データの値を引数としてデータ誤り検出方式選択部107を呼び出す。本ステップの詳細は図19で説明する。
(図17:ステップS105003)
通信処理部105は、通信データ管理テーブル112を参照し、countの値に対応するレコードのCAN IDフィールド1122を取得する。例えば図6で説明したデータ例によれば、count(=index)が0であるとき、CAN IDフィールド1122の値として100を取得する。
通信処理部105は、通信データ管理テーブル112を参照し、countの値に対応するレコードのCAN IDフィールド1122を取得する。例えば図6で説明したデータ例によれば、count(=index)が0であるとき、CAN IDフィールド1122の値として100を取得する。
(図17:ステップSS105004)
通信処理部105は、ステップS105003で取得したCAN IDとステップS105002で取得した検出符号付き送信データを引数として通信制御部(送信処理)110を呼び出し、検出符号付き送信データ値を送信する。本ステップの詳細は図23で説明する。
通信処理部105は、ステップS105003で取得したCAN IDとステップS105002で取得した検出符号付き送信データを引数として通信制御部(送信処理)110を呼び出し、検出符号付き送信データ値を送信する。本ステップの詳細は図23で説明する。
(図17:ステップS105005)
通信処理部105は、同じデータIDに関してすべてのCAN IDを用いて送信済みであるか否かを判定する。送信済みである場合は本動作フローを終了し、送信済みでない場合はステップS105006へ進む。例えば、通信処理部105はcountが1であれば送信完了したと判定し、通信処理部205と通信処理部305はcountが0であれば送信完了したと判定する。
通信処理部105は、同じデータIDに関してすべてのCAN IDを用いて送信済みであるか否かを判定する。送信済みである場合は本動作フローを終了し、送信済みでない場合はステップS105006へ進む。例えば、通信処理部105はcountが1であれば送信完了したと判定し、通信処理部205と通信処理部305はcountが0であれば送信完了したと判定する。
(図17:ステップS105006)
通信処理部105は、countの値に1を加え、ステップS105001へ戻る。
通信処理部105は、countの値に1を加え、ステップS105001へ戻る。
図18は、正確動作要求レベル判定部106の動作フローを示す図である。正確動作要求レベル判定部206、正確動作要求レベル判定部306も同様の動作フローを実施する。以下、図18の各ステップについて説明する。
(図18:ステップS106000)
正確動作要求レベル判定部106は、要求レベル判定テーブル113を参照し、ECU IDフィールド1130の値が引数である受信ECU IDと合致するレコードから正確動作要求レベルフィールド1132を取得する。例えば図7のデータ例によれば、引数である受信ECU IDが2である場合は、正確動作要求レベルとして2を取得する。
正確動作要求レベル判定部106は、要求レベル判定テーブル113を参照し、ECU IDフィールド1130の値が引数である受信ECU IDと合致するレコードから正確動作要求レベルフィールド1132を取得する。例えば図7のデータ例によれば、引数である受信ECU IDが2である場合は、正確動作要求レベルとして2を取得する。
(図18:ステップS106001)
正確動作要求レベル判定部106は、正確動作要求レベルフィールド1132を返戻値として返し、本動作フローを終了する。
正確動作要求レベル判定部106は、正確動作要求レベルフィールド1132を返戻値として返し、本動作フローを終了する。
図19は、データ誤り検出方式選択部107の動作フローを示す図である。データ誤り検出方式選択部207、データ誤り検出方式選択部307も同様の動作フローを実施する。以下、図19の各ステップについて説明する。
(図19:ステップS107000)
データ誤り検出方式選択部107は、検出方式選択テーブル114を参照して、受信側正確動作要求レベルフィールド1141の値が引数である正確動作要求レベルと等しいレコードから、データ誤り検出方式フィールド1142の値を取得する。例えば図8のデータ例によれば、正確動作要求レベルが2である場合、データ誤り検出方式としてパリティデータ付与部を選択することになる。なお、検出方式選択テーブル114が記述している全てのデータ誤り検出方式を全てのECUが搭載していなくてもよい。あるいは、全てのECUが使用するデータ誤り検出方式のみを検出方式選択テーブル内に記述するようにしてもよい。
データ誤り検出方式選択部107は、検出方式選択テーブル114を参照して、受信側正確動作要求レベルフィールド1141の値が引数である正確動作要求レベルと等しいレコードから、データ誤り検出方式フィールド1142の値を取得する。例えば図8のデータ例によれば、正確動作要求レベルが2である場合、データ誤り検出方式としてパリティデータ付与部を選択することになる。なお、検出方式選択テーブル114が記述している全てのデータ誤り検出方式を全てのECUが搭載していなくてもよい。あるいは、全てのECUが使用するデータ誤り検出方式のみを検出方式選択テーブル内に記述するようにしてもよい。
(図19:ステップS107001)
データ誤り検出方式選択部107は、引数として受け取った送信データを引数として、ステップS107000で選択したデータ誤り検出方式に対応する検出符号付与部を呼び出し、返戻値として検出符号付き送信データを取得する。例えば、ステップS107000で選択したデータ誤り検出方式1142がパリティデータ付与部である場合は、パリティデータ付与部108を呼び出す。本ステップにおいてパリティデータ付与部108を呼び出す場合の動作例は図21で説明し、CRC符号付与部109を呼び出す場合の動作例は図22で説明する。
データ誤り検出方式選択部107は、引数として受け取った送信データを引数として、ステップS107000で選択したデータ誤り検出方式に対応する検出符号付与部を呼び出し、返戻値として検出符号付き送信データを取得する。例えば、ステップS107000で選択したデータ誤り検出方式1142がパリティデータ付与部である場合は、パリティデータ付与部108を呼び出す。本ステップにおいてパリティデータ付与部108を呼び出す場合の動作例は図21で説明し、CRC符号付与部109を呼び出す場合の動作例は図22で説明する。
(図19:ステップS107002)
データ誤り検出方式選択部107は、取得した検出符号付き送信データを返戻値として返し、本動作フローを終了する。
データ誤り検出方式選択部107は、取得した検出符号付き送信データを返戻値として返し、本動作フローを終了する。
図20は、検出符号付き送信データ510の構造図である。検出符号付き送信データ510は、送信データ511と検出符号512を有する。送信データ511は、カメラ制御部104、車間距離制御部204、またはプリクラッシュセーフ制御部304が演算したデータである。
本実施形態1ではネットワークとしてCANを用いることを想定しているため、検出符号付き送信データ510の最大サイズは8バイトとしたが、これに限るものではない。例えば、ネットワークとしてFlexRayを用いる場合は、検出符号付き送信データ510の最大サイズは254バイトである。
図21は、パリティデータ付与部108の動作フローを示す図である。以下、図21の各ステップについて説明する。
(図21:ステップS108000)
パリティデータ付与部108は、引数として受け取った送信データを用いて、パリティデータを算出する。
パリティデータ付与部108は、引数として受け取った送信データを用いて、パリティデータを算出する。
(図21:ステップS108001)
パリティデータ付与部108は、引数である送信データとステップS108000で算出したパリティデータを結合し、検出符号付き送信データを生成する。
パリティデータ付与部108は、引数である送信データとステップS108000で算出したパリティデータを結合し、検出符号付き送信データを生成する。
(図21:ステップS108002)
パリティデータ付与部108は、ステップS108001で生成した検出符号付き送信データを返戻値として返し、本動作フローを終了する。
パリティデータ付与部108は、ステップS108001で生成した検出符号付き送信データを返戻値として返し、本動作フローを終了する。
図22は、CRC符号付与部109の動作フローを示す図である。CRC符号付与部209も同様の動作フローを実施する。以下、図22の各ステップについて説明する。
(図22:ステップS109000)
CRC符号付与部109は、引数として受け取った送信データを用いて、CRC検出符号を算出する。
CRC符号付与部109は、引数として受け取った送信データを用いて、CRC検出符号を算出する。
(図22:ステップS109001)
CRC符号付与部109は、引数である送信データとステップS109000で算出したCRC検出符号を結合し、検出符号付き送信データを生成する。
CRC符号付与部109は、引数である送信データとステップS109000で算出したCRC検出符号を結合し、検出符号付き送信データを生成する。
(図22:ステップS109002)
CRC符号付与部109は、ステップS109001で生成した検出符号付き送信データを返戻値として返し、本動作フローを終了する。
CRC符号付与部109は、ステップS109001で生成した検出符号付き送信データを返戻値として返し、本動作フローを終了する。
図23は、通信制御部(送信処理)110の動作フローを示す図である。通信制御部(送信処理)210、通信制御部(送信処理)310も同様の動作フローを実施する。以下、図23の各ステップについて説明する。
(図23:ステップS110000)
通信制御部(送信処理)110は、引数として受け取った検出符号付き送信データをCANコントローラ116のメールボックスに格納する。
通信制御部(送信処理)110は、引数として受け取った検出符号付き送信データをCANコントローラ116のメールボックスに格納する。
(図23:ステップS110001)
通信制御部(送信処理)110は、CANコントローラ116の送信要求フラグをセットし、本動作フローを終了する。CANコントローラ116は、セットされた送信要求フラグに対応するメールボックスのデータをCANバス5に送信する。
通信制御部(送信処理)110は、CANコントローラ116の送信要求フラグをセットし、本動作フローを終了する。CANコントローラ116は、セットされた送信要求フラグに対応するメールボックスのデータをCANバス5に送信する。
図24は、車間距離制御ECU2が備える車間距離制御部204の動作フローを示す図である。以下、図24の各ステップについて説明する。
(図24:ステップS204000)
車間距離制御部204は、通信制御部(受信処理)210を呼び出し、車間距離データを受信する。本ステップの詳細は図25で説明する。
車間距離制御部204は、通信制御部(受信処理)210を呼び出し、車間距離データを受信する。本ステップの詳細は図25で説明する。
(図24:ステップS204001)
車間距離制御部204は、車間距離データを受信したことを示す、受信バッファ214の受信フラグフィールド2142が、1であるか否かを判定する。受信フラグフィールド2142が1であるときはステップS204002へ進み、0であるときは本動作フローを終了する。
車間距離制御部204は、車間距離データを受信したことを示す、受信バッファ214の受信フラグフィールド2142が、1であるか否かを判定する。受信フラグフィールド2142が1であるときはステップS204002へ進み、0であるときは本動作フローを終了する。
(図24:ステップS204002)
車間距離制御部204は、受信バッファ214のデータ値フィールド2141が保持している車間距離データを取得し、同じレコード内の受信フラグフィールド2142を0にする。
車間距離制御部204は、受信バッファ214のデータ値フィールド2141が保持している車間距離データを取得し、同じレコード内の受信フラグフィールド2142を0にする。
(図24:ステップS204003)
車間距離制御部204は、受信バッファ214から取得した車間距離データを引数として、パリティデータ検出部208を呼び出し、返戻値として判定結果を取得する。本ステップの詳細は図26で説明する。
車間距離制御部204は、受信バッファ214から取得した車間距離データを引数として、パリティデータ検出部208を呼び出し、返戻値として判定結果を取得する。本ステップの詳細は図26で説明する。
(図24:ステップS204004)
車間距離制御部204は、ステップS204003で取得した判定結果がデータ誤りなしを示しているか否かを判定する。データ誤りがない場合はステップS204005へ進み、データ誤りがある場合は本動作フローを終了する。
車間距離制御部204は、ステップS204003で取得した判定結果がデータ誤りなしを示しているか否かを判定する。データ誤りがない場合はステップS204005へ進み、データ誤りがある場合は本動作フローを終了する。
(図24:ステップS204005)
車間距離制御部204は、受信した車間距離データを用いて、車間距離を一定に保つために必要なブレーキ力を算出する。
車間距離制御部204は、受信した車間距離データを用いて、車間距離を一定に保つために必要なブレーキ力を算出する。
(図24:ステップS204006)
車間距離制御部204は、算出したブレーキ力データと、ブレーキ力データに対応する通信データ管理テーブル212内のデータIDフィールド2121の値(図9のデータ例では2)とを引数として、通信処理部205を呼び出し、本動作フローを終了する。
車間距離制御部204は、算出したブレーキ力データと、ブレーキ力データに対応する通信データ管理テーブル212内のデータIDフィールド2121の値(図9のデータ例では2)とを引数として、通信処理部205を呼び出し、本動作フローを終了する。
図25は、通信制御部(受信処理)210の動作フローを示す図である。通信制御部(受信処理)310、通信制御部(受信処理)406も同様の動作フローを実施する。以下、図25の各ステップについて説明する。
(図25:ステップS210000)
通信制御部(受信処理)210は、CANコントローラ216の受信フラグを確認し、受信データがあるか否かを判定する。受信データがある場合はステップS210001へ進み、受信データがない場合は本動作フローを終了する。
通信制御部(受信処理)210は、CANコントローラ216の受信フラグを確認し、受信データがあるか否かを判定する。受信データがある場合はステップS210001へ進み、受信データがない場合は本動作フローを終了する。
(図25:ステップS210001)
通信制御部(受信処理)210は、CANコントローラ216のメールボックスから受信データを読み出す。
通信制御部(受信処理)210は、CANコントローラ216のメールボックスから受信データを読み出す。
(図25:ステップS210002)
通信制御部(受信処理)210は、受信したデータのCAN IDと等しい受信バッファ214の受信CAN IDフィールド2140を検索し、受信データをデータ値フィールド2141に格納する。通信制御部(受信処理)210は、同レコードの受信フラグフィールド2142の値を1にセットし、本動作フローを終了する。
通信制御部(受信処理)210は、受信したデータのCAN IDと等しい受信バッファ214の受信CAN IDフィールド2140を検索し、受信データをデータ値フィールド2141に格納する。通信制御部(受信処理)210は、同レコードの受信フラグフィールド2142の値を1にセットし、本動作フローを終了する。
図26は、パリティデータ検出部208の動作フローを示す図である。以下、図26の各ステップについて説明する。
(図26:ステップS208000)
パリティデータ検出部208は、引数として受け取った検出符号付き受信データを、パリティデータとデータに分割する。データとは、例えば車間距離データである。
パリティデータ検出部208は、引数として受け取った検出符号付き受信データを、パリティデータとデータに分割する。データとは、例えば車間距離データである。
(図26:ステップS208001)
パリティデータ検出部208は、ステップS208000で取得したデータを用いてパリティデータを算出する。
パリティデータ検出部208は、ステップS208000で取得したデータを用いてパリティデータを算出する。
(図26:ステップS208002)
パリティデータ検出部208は、ステップS208001で算出したパリティデータと引数として受け取ったパリティデータを比較する。
パリティデータ検出部208は、ステップS208001で算出したパリティデータと引数として受け取ったパリティデータを比較する。
(図26:ステップS208003)
パリティデータ検出部208は、ステップS208001で算出したパリティデータと引数として受け取った受信したパリティデータが一致するか否かを判定する。一致する場合はステップS208004に進み、一致しない場合はステップS208005へ進む。
パリティデータ検出部208は、ステップS208001で算出したパリティデータと引数として受け取った受信したパリティデータが一致するか否かを判定する。一致する場合はステップS208004に進み、一致しない場合はステップS208005へ進む。
(図26:ステップS208004)
パリティデータ検出部208は、返戻値としてデータ誤りなしを示す0を返し、本動作フローを終了する。
パリティデータ検出部208は、返戻値としてデータ誤りなしを示す0を返し、本動作フローを終了する。
(図26:ステップS208005)
パリティデータ検出部208は、返戻値としてデータ誤りありを示す1を返し、動作フローを終了する。
パリティデータ検出部208は、返戻値としてデータ誤りありを示す1を返し、動作フローを終了する。
図27は、プリクラッシュセーフECU3が備えるプリクラッシュセーフ制御部304の動作フローを示す図である。以下、図27の各ステップについて説明する。
(図27:ステップS304000)
プリクラッシュセーフ制御部304は、通信制御部(受信処理)310を呼び出し、車間距離データを受信する。
プリクラッシュセーフ制御部304は、通信制御部(受信処理)310を呼び出し、車間距離データを受信する。
(図27:ステップS304001)
プリクラッシュセーフ制御部304は、車間距離データを受信したことを示す、受信バッファ314の受信フラグフィールド3142が、1であるかを判定する。受信フラグフィールド3142が1であるときはステップS304002へ進み、0であるときは本動作フローを終了する。
プリクラッシュセーフ制御部304は、車間距離データを受信したことを示す、受信バッファ314の受信フラグフィールド3142が、1であるかを判定する。受信フラグフィールド3142が1であるときはステップS304002へ進み、0であるときは本動作フローを終了する。
(図27:ステップS304002)
プリクラッシュセーフ制御部304は、受信バッファ314のデータ値フィールド3141が保持している車間距離データを取得し、同じレコード内の受信フラグフィールド3142を0にする。
プリクラッシュセーフ制御部304は、受信バッファ314のデータ値フィールド3141が保持している車間距離データを取得し、同じレコード内の受信フラグフィールド3142を0にする。
(図27:ステップS304003)
プリクラッシュセーフ制御部304は、受信した車間距離データを引数として、CRC符号検出部308を呼び出し、返戻値として判定結果を取得する。
プリクラッシュセーフ制御部304は、受信した車間距離データを引数として、CRC符号検出部308を呼び出し、返戻値として判定結果を取得する。
(図27:ステップS304004)
プリクラッシュセーフ制御部304は、ステップS304003で取得した判定結果がデータ誤りなしを示しているか否かを判定する。データ誤りがない場合はステップS304005へ進み、データ誤りがある場合は本動作フローを終了する。
プリクラッシュセーフ制御部304は、ステップS304003で取得した判定結果がデータ誤りなしを示しているか否かを判定する。データ誤りがない場合はステップS304005へ進み、データ誤りがある場合は本動作フローを終了する。
(図27:ステップS304005)
プリクラッシュセーフ制御部304は、ステップS304002で取得した車間距離データの値が100より大きいか否かを判定する。100より大きい場合はステップS304006へ進み、100以下である場合はステップS304007に進む。
プリクラッシュセーフ制御部304は、ステップS304002で取得した車間距離データの値が100より大きいか否かを判定する。100より大きい場合はステップS304006へ進み、100以下である場合はステップS304007に進む。
(図27:ステップS304006)
プリクラッシュセーフ制御部304は、急ブレーキ要求データを1にセットする。急ブレーキ要求データが1である場合は、急ブレーキを実施するようブレーキ制御ECU4に指示することを示す。
プリクラッシュセーフ制御部304は、急ブレーキ要求データを1にセットする。急ブレーキ要求データが1である場合は、急ブレーキを実施するようブレーキ制御ECU4に指示することを示す。
(図27:ステップS304007)
プリクラッシュセーフ制御部304は、急ブレーキ要求データを0にセットする。急ブレーキ要求データが0である場合は、急ブレーキを実施しないことを示す。
プリクラッシュセーフ制御部304は、急ブレーキ要求データを0にセットする。急ブレーキ要求データが0である場合は、急ブレーキを実施しないことを示す。
(図27:ステップS304008)
プリクラッシュセーフ制御部304は、急ブレーキ要求データと、急ブレーキ要求データに対応する通信データ管理テーブル312のデータIDフィールド3121の値(図12のデータ例では3)とを引数として、通信処理部305を呼び出し、本動作フローを終了する。
プリクラッシュセーフ制御部304は、急ブレーキ要求データと、急ブレーキ要求データに対応する通信データ管理テーブル312のデータIDフィールド3121の値(図12のデータ例では3)とを引数として、通信処理部305を呼び出し、本動作フローを終了する。
図28は、CRC符号検出部308の動作フローを示す図である。CRC符号検出部405も同様の動作フローを実施する。以下、図28の各ステップについて説明する。
(図28:ステップS308000)
CRC符号検出部308は、引数として受け取った検出符号付き受信データを、CRC符号とデータに分割する。データとは、例えば車間距離データを示す。
CRC符号検出部308は、引数として受け取った検出符号付き受信データを、CRC符号とデータに分割する。データとは、例えば車間距離データを示す。
(図28:ステップS308001)
CRC符号検出部308は、ステップS308000で取得したデータを用いてCRC符号を算出する。
CRC符号検出部308は、ステップS308000で取得したデータを用いてCRC符号を算出する。
(図28:ステップS308002)
CRC符号検出部308は、ステップS308001で算出したCRC符号と引数として受け取ったCRC符号を比較する。
CRC符号検出部308は、ステップS308001で算出したCRC符号と引数として受け取ったCRC符号を比較する。
(図28:ステップS308003)
CRC符号検出部308は、ステップS308001で算出したCRC符号と引数として受け取ったCRC符号が一致するか否かを判定する。一致する場合はステップS308004へ進み、一致しない場合はステップS308005へ進む。
CRC符号検出部308は、ステップS308001で算出したCRC符号と引数として受け取ったCRC符号が一致するか否かを判定する。一致する場合はステップS308004へ進み、一致しない場合はステップS308005へ進む。
(図28:ステップS308004)
CRC符号検出部308は、返戻値としてデータ誤りなしを示す0を返し、本動作フローを終了する。
CRC符号検出部308は、返戻値としてデータ誤りなしを示す0を返し、本動作フローを終了する。
(図28:ステップS308005)
CRC符号検出部308は、返戻値としてデータ誤りありを示す1を返し、動作フローを終了する。
CRC符号検出部308は、返戻値としてデータ誤りありを示す1を返し、動作フローを終了する。
図29は、ブレーキ制御部404の動作フローを示す図である。以下、図29の各ステップについて説明する。
(図29:ステップS404000)
ブレーキ制御部404は、通信制御部(受信処理)406を呼び出し、データを受信する。
ブレーキ制御部404は、通信制御部(受信処理)406を呼び出し、データを受信する。
(図29:ステップS404001)
ブレーキ制御部404は、受信バッファ408の受信CAN IDフィールド4080が300であるレコードの受信フラグフィールド4082が1であるか否かを判定する。1である場合はステップS404002に進み、1でない場合はステップS404006に進む。
ブレーキ制御部404は、受信バッファ408の受信CAN IDフィールド4080が300であるレコードの受信フラグフィールド4082が1であるか否かを判定する。1である場合はステップS404002に進み、1でない場合はステップS404006に進む。
(図29:ステップS404002)
ブレーキ制御部404は、受信バッファ408のデータ値フィールド4081が保持しているブレーキ力データを取得し、同じレコードの受信フラグフィールド4082を0にする。
ブレーキ制御部404は、受信バッファ408のデータ値フィールド4081が保持しているブレーキ力データを取得し、同じレコードの受信フラグフィールド4082を0にする。
(図29:ステップS404003)
ブレーキ制御部404は、受信したブレーキ力データを引数として、CRC符号検出部405を呼び出し、返戻値として判定結果を取得する。
ブレーキ制御部404は、受信したブレーキ力データを引数として、CRC符号検出部405を呼び出し、返戻値として判定結果を取得する。
(図29:ステップS404004)
ブレーキ制御部404は、ステップS404003で取得した判定結果がデータ誤りなしを示しているか否かを判定する。データ誤りがない場合はステップS404005へ進み、データ誤りがある場合は本動作フローを終了する。
ブレーキ制御部404は、ステップS404003で取得した判定結果がデータ誤りなしを示しているか否かを判定する。データ誤りがない場合はステップS404005へ進み、データ誤りがある場合は本動作フローを終了する。
(図29:ステップS404005)
ブレーキ制御部404は、受信したブレーキ力データに基づいてブレーキアクチュエータ413を制御し、本動作フローを終了する。
ブレーキ制御部404は、受信したブレーキ力データに基づいてブレーキアクチュエータ413を制御し、本動作フローを終了する。
(図29:ステップS404006)
ブレーキ制御部404は、受信バッファ408の受信CAN IDフィールド4080が350であるレコードの受信フラグフィールド4082が1であるか否かを判定する。1である場合はステップS404007に進み、1でない場合は本動作フローを終了する。
ブレーキ制御部404は、受信バッファ408の受信CAN IDフィールド4080が350であるレコードの受信フラグフィールド4082が1であるか否かを判定する。1である場合はステップS404007に進み、1でない場合は本動作フローを終了する。
(図29:ステップS404007)
ブレーキ制御部404は、受信バッファ408のデータ値フィールド4081が保持している急ブレーキ要求データを取得し、同じレコードの受信フラグフィールド4082を0にする。
ブレーキ制御部404は、受信バッファ408のデータ値フィールド4081が保持している急ブレーキ要求データを取得し、同じレコードの受信フラグフィールド4082を0にする。
(図29:ステップS404008)
ブレーキ制御部404は、受信した急ブレーキ要求データを引数として、CRC符号検出部405を呼び出し、返戻値として判定結果を取得する。
ブレーキ制御部404は、受信した急ブレーキ要求データを引数として、CRC符号検出部405を呼び出し、返戻値として判定結果を取得する。
(図29:ステップS404009)
ブレーキ制御部404は、ステップS404008で取得した判定結果がデータ誤りなしを示しているか否かを判定する。データ誤りがない場合はステップS404010へ進み、データ誤りがある場合は本動作フローを終了する。
ブレーキ制御部404は、ステップS404008で取得した判定結果がデータ誤りなしを示しているか否かを判定する。データ誤りがない場合はステップS404010へ進み、データ誤りがある場合は本動作フローを終了する。
(図29:ステップS404010)
ブレーキ制御部404は、受信した急ブレーキ要求データに基づいてブレーキアクチュエータ413を制御し、本動作フローを終了する。
ブレーキ制御部404は、受信した急ブレーキ要求データに基づいてブレーキアクチュエータ413を制御し、本動作フローを終了する。
図30は、通信プロトコルとしてCANを用いたデータフレーム520を示す。データフレーム520は、フレームの開始を示すSOF521、フレームを一意に識別可能とする識別子(ID)522、フレームのサイズ長を示すCTRL523、送信するデータを格納するデータフィールド524、通信データの誤り検出用のCRC525、正常に受信されたことを示すACK526、フレーム終了を示すEOF527を有する。図20で述べた検出符号付き送信データ510の送信データ511は送信データ528であり、検出符号512は検出符号529である。
本実施形態1では、通信プロトコルとしてCANを採用し、カメラ制御部104、車間距離制御部204、プリクラッシュセーフ制御部304、ブレーキ制御部404は周期的に(例えば10ms間隔)上述の処理を実行するように構成した。一方、各ECUは他のECUから制御データを受信した時点で各処理を実施するようにしてもよい。前者の場合は各ECUを接続するネットワークはタイムトリガネットワークとなり、後者の場合はイベントトリガネットワークとなる。
<実施の形態1:まとめ>
以上のように、本実施形態1によれば、カメラECU1、車間距離制御ECU2、プリクラッシュセーフ制御ECU3は、受信ECUの正確動作要求レベルに応じてデータ誤り検出方式を選択する。これにより、正確動作要求レベルが異なるECUごとにデータ誤り検出率を保証することができる。
以上のように、本実施形態1によれば、カメラECU1、車間距離制御ECU2、プリクラッシュセーフ制御ECU3は、受信ECUの正確動作要求レベルに応じてデータ誤り検出方式を選択する。これにより、正確動作要求レベルが異なるECUごとにデータ誤り検出率を保証することができる。
また、本実施形態1によれば、カメラECU1、車間距離制御ECU2、プリクラッシュセーフ制御ECU3は、受信ECUの正確動作要求レベルに応じてデータ誤り検出方式を選択するので、データ誤り検出率を保証しつつ、検出符号のサイズを最小に留めることができる。これにより、ネットワークの通信負荷を抑え、CPUの演算負荷を抑えることができる。
また、本実施形態1によれば、通信パケットのデータフィールド部分に検出符号を付与することにより、通信経路以外におけるデータエラーを検出することができる。例えばCANコントローラ116が通信パケット全体にCRCコード525を付与してネットワーク上におけるデータエラーを検出したとしても、ECUにいったん到達すると通信パケットはメールボックス内に書き込まれCRCコード525は必要なくなる。そのため、受信ECUに通信パケットが到達してからこれがメールボックスより取り出されるまでの間にデータエラーが生じると、エラーを検出できない。本実施形態1では、データフィールドにも検出符号を付与することにより、受信ECUへ通信パケットが到達した後のデータエラーも検出することができる。
<実施の形態2>
実施形態1では、正確動作要求レベルをECU単位で割り当てているが、これに限らない。例えば、各ECUが制御データを用いて実施する機能毎に正確動作要求レベルを割り当ててもよい。この場合は、要求レベル判定テーブル113において、各ECUが備える機能毎に正確動作要求レベルを定義するようにすればよい。
実施形態1では、正確動作要求レベルをECU単位で割り当てているが、これに限らない。例えば、各ECUが制御データを用いて実施する機能毎に正確動作要求レベルを割り当ててもよい。この場合は、要求レベル判定テーブル113において、各ECUが備える機能毎に正確動作要求レベルを定義するようにすればよい。
さらには、データを送信する側の機能とデータを受信する側の機能の組合せに対して、正確動作要求レベルを割り当ててもよい。この場合は、要求レベル判定テーブル113において、各ECUが備える送信側機能と受信側機能の組合せを記述し、その組合せ毎に正確動作要求レベルを定義するようにすればよい。
さらには、ネットワークバスに対して正確動作要求レベルを割り当ててもよい。この場合は、要求レベル判定テーブル113において、受信ECUとその受信ECU宛にデータを送信する際に用いるネットワークの組合せを記述し、その組合せ毎に正確動作要求レベルを定義するようにすればよい。
<実施の形態3>
実施形態1〜2において、要求レベル判定テーブル113などを用いずに、受信ECUの正確動作要求レベルを判定することができる場合は、その手法を用いてもよい。例えばデータ種別毎に正確動作要求レベルが定まっているような場合は、データIDやCAN IDを用いて、受信ECUの正確動作要求レベルを判定することができる。
実施形態1〜2において、要求レベル判定テーブル113などを用いずに、受信ECUの正確動作要求レベルを判定することができる場合は、その手法を用いてもよい。例えばデータ種別毎に正確動作要求レベルが定まっているような場合は、データIDやCAN IDを用いて、受信ECUの正確動作要求レベルを判定することができる。
本発明は上記した実施形態に限定されるものではなく、様々な変形例が含まれる。上記した実施形態は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、ある実施形態の構成の一部を他の実施形態の構成に置き換えることができる。また、ある実施形態の構成に他の実施形態の構成を加えることも可能である。また、各実施形態の構成の一部について、他の構成を追加・削除・置換することができる。
例えば、上記各テーブルの構成は各図面で説明したものでなくともよく、同様の機能を実現することができればよい。さらには、必ずしもテーブル形式で実装する必要はない。
また、要求レベル判定テーブル113などの静的なデータを格納するテーブルは、各ECUを製造するときに定義してもよいし、例えば動作中にネットワーク経由で各テーブルが保持する値を受信して保存するようにしてもよい。
上記の各構成、機能、処理部、処理手段等は、それらの一部や全部を、例えば集積回路で設計する等によりハードウェアで実現してもよい。また、上記の各構成、機能等は、プロセッサがそれぞれの機能を実現するプログラムを解釈し、実行することによりソフトウェアで実現してもよい。各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリ、ハードディスク、SSD(Solid State Drive)等の記録装置、ICカード、SDカード、DVD等の記録媒体に格納することができる。
1:カメラECU、11:車載カメラ、101:演算装置、102:メモリ、103:プログラム領域、104:カメラ制御部、105:通信処理部、106:正確動作要求レベル判定部、107:データ誤り検出方式選択部、108:パリティデータ付与部、109:CRC符号付与部、110:通信制御部、111:データ記憶領域、112:通信データ管理テーブル、113:要求レベル判定テーブル、114:検出方式選択テーブル、115:入出力回路、116:CANコントローラ、117:CRC回路、118:信号入出力回路、2:車間距離制御ECU、201:演算装置、202:メモリ、203:プログラム領域、204:車間距離制御部、205:通信処理部、206:正確動作要求レベル判定部、207:データ誤り検出方式選択部、208:パリティデータ検出部、209:CRC符号付与部、210:通信制御部、211:データ記憶領域、212:通信データ管理テーブル、213:要求レベル判定テーブル、214:受信バッファ、215:入出力回路、216:CANコントローラ、217:CRC回路、218:信号入出力回路、3:プリクラッシュセーフ制御ECU、301:演算装置、302:メモリ、303:プログラム領域、304:プリクラッシュセーフ制御部、305:通信処理部、306:正確動作要求レベル判定部、307:データ誤り検出方式選択部、308:CRC符号検出部、309:CRC符号付与部、310:通信制御部、311:データ記憶領域、312:通信データ管理テーブル、313:要求レベル判定テーブル、314:受信バッファ、315:入出力回路、316:CANコントローラ、317:CRC回路、318:信号入出力回路、4:ブレーキ制御ECU、41:ブレーキ、401:演算装置、402:メモリ、403:プログラム領域、404:ブレーキ制御部、405:CRC符号検出部、406:通信制御部、407:データ記憶領域、408:受信バッファ、409:入出力回路、410:CANコントローラ、413:ブレーキアクチュエータ、5:CAN、1000:車両制御システム。
Claims (11)
- ネットワークを介して制御データを送受信する通信部と、
前記送信部が送信する制御データに誤り検出符号を付与する検出符号付与部と、
前記制御データを受信する受信装置がどの程度正確に動作することを要求されているかを示す正確動作要求レベルを判定する正確動作要求レベル判定部と、
を備え、
前記検出符号付与部は、
前記正確動作要求レベル判定部が判定した前記正確動作要求レベルに応じて、前記誤り検出符号の誤り検出能力を変更する
ことを特徴とする車両制御装置。 - 前記検出符号付与部は、
前記通信部が送信する通信パケットのうち前記制御データを記述した部分に、前記誤り検出符号を付与する
ことを特徴とする請求項1記載の車両制御装置。 - 前記通信部は、
前記検出符号付与部が前記誤り検出符号を付与した前記制御データを格納した通信パケットに、前記検出符号付与部が付与する前記誤り検出符号とは別の誤り検出符号を付与する
ことを特徴とする請求項2記載の車両制御装置。 - 前記受信装置と前記正確動作要求レベルの対応関係を記述した正確動作要求レベルテーブルを備え、
前記正確動作要求レベル判定部は、
前記正確動作要求レベルテーブルの記述にしたがって、前記受信装置の前記正確動作要求レベルを判定する
ことを特徴とする請求項1記載の車両制御装置。 - 前記正確動作要求レベル判定部は、
前記受信装置が前記制御データを用いて実行する機能毎に、前記正確動作要求レベルを判定する
ことを特徴とする請求項1記載の車両制御装置。 - 前記正確動作要求レベル判定部は、
前記受信装置が前記制御データを用いて実行する機能と、前記車両制御装置が備える機能との組合せ毎に、前記正確動作要求レベルを判定する
ことを特徴とする請求項1記載の車両制御装置。 - 前記正確動作要求レベル判定部は、
前記ネットワークと前記受信装置の組合せ毎に、前記正確動作要求レベルを判定する
ことを特徴とする請求項1記載の車両制御装置。 - 前記制御データを受信する受信装置と、前記制御データの種別との対応関係を記述した通信データ管理テーブルを備え、
前記正確動作要求レベル判定部は、前記通信データ管理テーブルの記述にしたがって前記制御データを受信する受信装置を特定し、その受信装置が要求されている前記正確動作要求レベルを判定する
ことを特徴とする請求項1記載の車両制御装置。 - 請求項1記載の車両制御装置を複数有し、
複数の前記車両制御装置が前記ネットワークを介して接続されている
ことを特徴とする車両制御システム。 - 前記ネットワークはイベントトリガネットワークである
ことを特徴とする請求項9記載の車両制御システム。 - 前記ネットワークはタイムトリガネットワークである
ことを特徴とする請求項9記載の車両制御システム。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011129535A JP2012257122A (ja) | 2011-06-09 | 2011-06-09 | 車両制御装置、車両制御システム |
DE112012002408.7T DE112012002408T5 (de) | 2011-06-09 | 2012-06-04 | Fahrzeug-Steuervorrichtung, Fahrzeug-Steuersystem |
US14/124,149 US20140107863A1 (en) | 2011-06-09 | 2012-06-04 | Vehicle Control Device, Vehicle Control System |
PCT/JP2012/064360 WO2012169456A1 (ja) | 2011-06-09 | 2012-06-04 | 車両制御装置、車両制御システム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011129535A JP2012257122A (ja) | 2011-06-09 | 2011-06-09 | 車両制御装置、車両制御システム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2012257122A true JP2012257122A (ja) | 2012-12-27 |
Family
ID=47296019
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2011129535A Pending JP2012257122A (ja) | 2011-06-09 | 2011-06-09 | 車両制御装置、車両制御システム |
Country Status (4)
Country | Link |
---|---|
US (1) | US20140107863A1 (ja) |
JP (1) | JP2012257122A (ja) |
DE (1) | DE112012002408T5 (ja) |
WO (1) | WO2012169456A1 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2019502297A (ja) * | 2015-11-13 | 2019-01-24 | サンデル・アビオニクス・インコーポレイテッド | アビオニクスシステム、アーキテクチャ、および方法 |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101519777B1 (ko) * | 2014-01-29 | 2015-05-12 | 현대자동차주식회사 | 차량 네트워크 내의 제어기간의 데이터 송신 방법 및 수신 방법 |
US11277558B2 (en) * | 2016-02-01 | 2022-03-15 | Magna Electronics Inc. | Vehicle vision system with master-slave camera configuration |
CN107181725A (zh) * | 2016-03-11 | 2017-09-19 | 比亚迪股份有限公司 | 车辆安全通信方法、装置、车辆多媒体系统及车辆 |
CN107181722A (zh) * | 2016-03-11 | 2017-09-19 | 比亚迪股份有限公司 | 车辆安全通信方法、装置、车辆多媒体系统及车辆 |
DE102018218257A1 (de) * | 2018-10-25 | 2020-04-30 | Robert Bosch Gmbh | Steuergerät |
US20200361452A1 (en) * | 2019-05-13 | 2020-11-19 | Toyota Research Institute, Inc. | Vehicles and methods for performing tasks based on confidence in accuracy of module output |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS63237628A (ja) * | 1987-03-26 | 1988-10-04 | Furukawa Electric Co Ltd:The | 車両用多重伝送システムにおける符号化方法 |
JPH11177590A (ja) * | 1997-12-12 | 1999-07-02 | Denso Corp | 多重通信システム |
JP2001265402A (ja) * | 2000-03-22 | 2001-09-28 | Hitachi Ltd | 車両用制御装置 |
JP2004193664A (ja) * | 2002-12-06 | 2004-07-08 | Fanuc Ltd | エラー検出/訂正方式及び該方式を用いた制御装置 |
JP2007043680A (ja) * | 2005-06-30 | 2007-02-15 | Hitachi Ltd | 送信装置,受信装置及び通信システム |
JP2007038904A (ja) * | 2005-08-04 | 2007-02-15 | Fujitsu Ten Ltd | 車載ゲートウェイ装置及び同装置におけるメッセージ中継方法 |
JP2010098626A (ja) * | 2008-10-20 | 2010-04-30 | Hitachi Automotive Systems Ltd | 車載ゲートウェイ装置におけるルーティング方法 |
JP2010178098A (ja) * | 2009-01-30 | 2010-08-12 | Hitachi Automotive Systems Ltd | 車両制御ネットワーク中継装置 |
Family Cites Families (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH11175331A (ja) * | 1997-12-15 | 1999-07-02 | Denso Corp | 車両用lanシステムにおけるromの書換方法及び車載制御装置 |
US6654648B2 (en) * | 2000-04-03 | 2003-11-25 | Toyota Jidosha Kabushiki Kaisha | Technique of monitoring abnormality in plurality of CPUs or controllers |
DE10248456A1 (de) * | 2001-10-19 | 2003-06-18 | Denso Corp | Fahrzeugkommunikationssystem |
JP4281109B2 (ja) * | 2003-12-11 | 2009-06-17 | 株式会社デンソー | 車両用補機診断システム |
JP4789420B2 (ja) * | 2004-03-04 | 2011-10-12 | トヨタ自動車株式会社 | 車両制御システムにおけるデータ処理装置 |
CN101171153B (zh) * | 2005-05-11 | 2010-05-12 | 株式会社日立制作所 | 汽车及汽车内的通信与控制装置 |
JP4682916B2 (ja) * | 2005-10-11 | 2011-05-11 | 株式会社デンソー | 通信システム及び通信装置 |
JP4734089B2 (ja) * | 2005-10-27 | 2011-07-27 | 日立オートモティブシステムズ株式会社 | 車載端末 |
US20080298256A1 (en) * | 2007-05-30 | 2008-12-04 | Hitachi, Ltd. | Distributed System |
JP4512621B2 (ja) * | 2007-08-06 | 2010-07-28 | 株式会社日立製作所 | 分散システム |
JP2009166550A (ja) * | 2008-01-11 | 2009-07-30 | Mitsubishi Electric Corp | 車載機器遠隔制御システムおよび車載機器遠隔制御方法 |
DE112009001289B4 (de) * | 2008-05-29 | 2016-03-10 | Autonetworks Technologies, Ltd. | Kommunikationsvorrichtung, Kommunikationssystem und Kommunikationsverfahren |
JP5608409B2 (ja) * | 2010-04-23 | 2014-10-15 | ルネサスエレクトロニクス株式会社 | 自己診断システム及び検査回路判定方法 |
JP5510275B2 (ja) * | 2010-11-08 | 2014-06-04 | 株式会社デンソー | 通信システム、マスタノード、スレーブノード |
JP5353867B2 (ja) * | 2010-12-02 | 2013-11-27 | 株式会社デンソー | 回転機の制御装置 |
JP5541234B2 (ja) * | 2011-06-08 | 2014-07-09 | 株式会社デンソー | トランシーバ |
JP2013062722A (ja) * | 2011-09-14 | 2013-04-04 | Denso Corp | 通信システム及び、当該通信システムを構成するスレーブノード |
CN103959718B (zh) * | 2011-12-02 | 2017-04-26 | 株式会社自动网络技术研究所 | 发送消息生成装置以及车载通信系统 |
JP2014058210A (ja) * | 2012-09-18 | 2014-04-03 | Hitachi Automotive Systems Ltd | 車両制御装置および車両制御システム |
JP5721754B2 (ja) * | 2013-01-28 | 2015-05-20 | オムロンオートモーティブエレクトロニクス株式会社 | 通信システム及び通信装置 |
US8869281B2 (en) * | 2013-03-15 | 2014-10-21 | Shape Security, Inc. | Protecting against the introduction of alien content |
-
2011
- 2011-06-09 JP JP2011129535A patent/JP2012257122A/ja active Pending
-
2012
- 2012-06-04 US US14/124,149 patent/US20140107863A1/en not_active Abandoned
- 2012-06-04 WO PCT/JP2012/064360 patent/WO2012169456A1/ja active Application Filing
- 2012-06-04 DE DE112012002408.7T patent/DE112012002408T5/de not_active Withdrawn
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS63237628A (ja) * | 1987-03-26 | 1988-10-04 | Furukawa Electric Co Ltd:The | 車両用多重伝送システムにおける符号化方法 |
JPH11177590A (ja) * | 1997-12-12 | 1999-07-02 | Denso Corp | 多重通信システム |
JP2001265402A (ja) * | 2000-03-22 | 2001-09-28 | Hitachi Ltd | 車両用制御装置 |
JP2004193664A (ja) * | 2002-12-06 | 2004-07-08 | Fanuc Ltd | エラー検出/訂正方式及び該方式を用いた制御装置 |
JP2007043680A (ja) * | 2005-06-30 | 2007-02-15 | Hitachi Ltd | 送信装置,受信装置及び通信システム |
JP2007038904A (ja) * | 2005-08-04 | 2007-02-15 | Fujitsu Ten Ltd | 車載ゲートウェイ装置及び同装置におけるメッセージ中継方法 |
JP2010098626A (ja) * | 2008-10-20 | 2010-04-30 | Hitachi Automotive Systems Ltd | 車載ゲートウェイ装置におけるルーティング方法 |
JP2010178098A (ja) * | 2009-01-30 | 2010-08-12 | Hitachi Automotive Systems Ltd | 車両制御ネットワーク中継装置 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2019502297A (ja) * | 2015-11-13 | 2019-01-24 | サンデル・アビオニクス・インコーポレイテッド | アビオニクスシステム、アーキテクチャ、および方法 |
Also Published As
Publication number | Publication date |
---|---|
WO2012169456A1 (ja) | 2012-12-13 |
US20140107863A1 (en) | 2014-04-17 |
DE112012002408T5 (de) | 2014-04-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2012169456A1 (ja) | 車両制御装置、車両制御システム | |
US9787817B2 (en) | Communication system and control device | |
US9894081B2 (en) | Method and device for avoiding manipulation of a data transmission | |
US11843477B2 (en) | Anomaly determination method, anomaly determination device, and recording medium | |
US9323596B2 (en) | Network apparatus and method of monitoring processor | |
CN112347021B (zh) | 用于串行通信装置的安全模块 | |
JP2008225558A (ja) | データ中継集積回路、データ中継装置およびデータ中継方法 | |
CN110870286B (zh) | 容错处理的方法、装置和服务器 | |
JP2015225574A (ja) | 制御装置、制御方法及びプログラム | |
CN104270287A (zh) | 一种报文乱序检测方法及装置 | |
US8108736B2 (en) | Multi-partition computer system, failure handling method and program therefor | |
US20190273755A1 (en) | Communication control device, communication control method, and program | |
JP6223498B2 (ja) | ネットワークシステム | |
JP2006253922A (ja) | ゲートウェイ装置及びゲートウェイ装置におけるデータ転送方法 | |
US20160147702A1 (en) | Communication control device, method of communicating a frame, and storage medium | |
JP2014204287A (ja) | 通信システム、及び通信ノード並びに通信方法 | |
JP7005201B2 (ja) | 通信メッセージ変換装置 | |
JP2019029921A (ja) | 送信装置、受信装置、及び通信方法 | |
KR102474800B1 (ko) | 게이트웨이 및 게이트웨이 제어방법 | |
JP2014050091A (ja) | ストリーム処理装置、サーバ、及び、ストリーム処理方法 | |
CN110785967B (zh) | 管理装置、通信系统、管理方法及存储介质 | |
CN115378756B (zh) | 监控控制器域网络(can)xl节点 | |
US20240154910A1 (en) | Selective and diverse traffic replication | |
CN111026694A (zh) | 数据接收方法、设备,图像形成装置、系统和电子设备 | |
EP4092970A1 (en) | Monitoring controller area network (can) xl nodes |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20130502 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20140415 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20140610 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20141209 |