JP5784786B1 - 電子制御装置 - Google Patents
電子制御装置 Download PDFInfo
- Publication number
- JP5784786B1 JP5784786B1 JP2014081643A JP2014081643A JP5784786B1 JP 5784786 B1 JP5784786 B1 JP 5784786B1 JP 2014081643 A JP2014081643 A JP 2014081643A JP 2014081643 A JP2014081643 A JP 2014081643A JP 5784786 B1 JP5784786 B1 JP 5784786B1
- Authority
- JP
- Japan
- Prior art keywords
- data
- program
- electronic control
- rewrite
- ecu
- 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.)
- Active
Links
- 230000005540 biological transmission Effects 0.000 claims abstract description 65
- 238000000034 method Methods 0.000 claims description 111
- 238000004891 communication Methods 0.000 claims description 106
- 238000012545 processing Methods 0.000 claims description 31
- 230000007704 transition Effects 0.000 claims description 9
- 230000008569 process Effects 0.000 description 107
- 238000012544 monitoring process Methods 0.000 description 22
- 238000010586 diagram Methods 0.000 description 14
- 238000012546 transfer Methods 0.000 description 12
- 230000008859 change Effects 0.000 description 9
- 230000006870 function Effects 0.000 description 9
- 238000005259 measurement Methods 0.000 description 4
- 230000000737 periodic effect Effects 0.000 description 4
- 230000006399 behavior Effects 0.000 description 3
- 238000012937 correction Methods 0.000 description 2
- 238000007562 laser obscuration time method Methods 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 1
- 230000005856 abnormality Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
Images
Landscapes
- Stored Programmes (AREA)
Abstract
Description
前記第一の電子制御装置は、前記書換え状態時に、前記第一の記憶手段に格納された前記代替プログラムに含まれる前記書換えプログラムを実行し、実行によって得られた代替データを前記第二の通信線へ送信し、且つ前記書換え状態において前記第二の電子制御装置の前記第二のプログラムの更新を完了した後、予め決められた条件が満たされるまで、前記書換えプログラムを実行し、前記代替データを前記第二の通信線へ送信するものであって、前記予め決められた条件は、前記代替データと、前記第二の電子制御装置から受信する前記真データの差分が、予め決められた範囲内であることを特徴とするものである。
以下に、本発明の実施の形態1に係る車両に搭載されるゲートウェイECU101について説明する。
通常状態ではサブECU102と他ドメインECUX103や他ドメインECUY104間のデータの送受信を中継するゲートウェイ機能を持つ。書換え状態ではサブECU102の書換えを実行しながら、サブECU102に代わってサブECUのプログラム(以下、書換えプログラム)を実行し、データ(以下、代替データ)を他ドメインECUX103へ送信する機能を持つ。
第一の電子制御装置であるゲートウェイECU101は、第一の通信線であるCAN通信線105を介して第二の電子制御装置であるサブECU102と接続し、FlexRay通信線106を介して第三の電子制御装置である他ドメインECUX103や他ドメインECUY104と接続したネットワークシステムを構築している。
サブECU102には制御対象であるアクチュエータA107や制御対象の状態を検出するセンサA108、他ドメインECUX103にはセンサB109やアクチュエータB110、他ドメインECUY104には受信アンテナ111が接続されている。サブECU102と他ドメインECUX103や他ドメインECUY104間では制御対象の制御量や状態を示すデータ(以下、制御データ)を送受信して共有することで、高度な制御を実現している。
他ドメインECUX103は、制御データとして他ドメインデータ124を送信し、サブECU102は、制御データとして真データ125を送信しているものとする。ゲートウェイECU101は通常状態ではこれらのデータを中継する。
また、他ドメインECUY104は、受信アンテナ111によってサブECU102が実行する書換えプログラムを外部から取得すると、FlexRay通信線106を介してゲートウェイECU101に送信する機能を備える。
ここでは便宜上、4つのECU101〜104のみ記載しているが、これらのECUが更に別の通信線と接続していたり、FlexRay通信線106に他のECUが接続されていたり、ゲートウェイECU101に別の制御対象が接続されていてもよい。
ステップS201では、受信したデータがFlexRay通信線106からのデータであるか判断する。FlexRay通信線106からのデータを受信したときにはステップS202に進み、それ以外の場合にはステップS208に進む。
ステップS202では、受信したデータが他ドメインデータ124であるか判断する。他ドメインデータ124である場合にはステップS203に進み、それ以外の場合にはステップS206に進む。これらの判断には、FlexRay通信プロトコルが定めるデータに付与されるIDを用いることができる。
ステップS203では、受信した他ドメインデータ124をメモリ117へ格納し、ステップS204に進む。
ステップS204では、メモリ117内の書換え状態フラグ128を参照し、ONの場合には、受信した他ドメインデータ124はCAN通信線105へは送信(転送)せずに、処理を終了する。OFFの場合にはステップS205に進む。
ステップS205では、通常状態であるため、他ドメインデータ124をCAN通信線105へ転送し、処理を終了する。
ステップS202からステップS206に進んだ場合には、受信したデータが書換えプログラム123であるか判断する。書換えプログラム123である場合にはステップS207に進む。書換えプログラム123でない場合には、受信したデータに対する処理は不要であるとして、処理を終了する。
ステップS207では、格納プログラム121を起動して、処理を終了する。
ステップS201からステップS208に進んだ場合には、受信したデータがCAN通信線105からのデータであるか判断する。CAN通信線105からのデータを受信したときにはステップS209に進む。CAN通信線105からのデータの受信でない場合には、受信したデータに対する処理は不要であるとして、処理を終了する。
ステップS209では、受信したデータが真データ125であるか判断する。真データ125である場合にはステップS210に進み、それ以外の場合には受信したデータに対する処理は不要であるとして、処理を終了する。これらの判断には、CAN通信プロトコルが定めるデータに付与されるIDを用いることができる。
ステップS210では、受信した真データ125をメモリ117へ格納し、ステップS211に進む。
ステップS211では、真データ125をFlexRay通信線106へ転送し、処理を終了する。
ステップS301では、書換え状態フラグ127を参照し、OFFである場合には、ステップS302に進み、ONの場合にはステップS304に進む。
ステップS302では、受信した書換えプログラム123で、メモリ117内の書換えプログラム123を上書きあるいは新規格納する。格納が完了すると、ステップS303に進む。
ステップS303では、書換えプログラム123のメモリ117への格納が完了していることから、書換え状態時プログラム122を起動し、処理を終了する。
一方、ステップS301からステップS304に進んだ場合には、メモリ117内の書換えプログラム123によって書換えを実行中であることから、新しく受信している書換えプログラム123は格納できないとして、書換えプログラム123の送信元である他ドメインECUY104に対して、書換え状態であることを通知して処理を終了する。他ドメインECUY104は、この通知を受けて、後でこのプログラムを再送したり、エラーであるとしてエラー処理をしたりするなど、対応することができる。
ステップS401では、ゲートウェイECU101は書換え開始通知をCAN通信線105、すなわちサブECU102へ送信する。サブECU102は、この通知を受けて、アクチュエータA107の制御と真データ125の送信を停止し、プログラムの書換えに必要な状態に遷移する。そしてステップS402に進む。
ステップS402では、書換え状態であることを示す書換え状態フラグ127をONにする。そしてステップS403に進む。
ステップS403では、格納プログラム121でメモリ117へ格納した書換えプログラム123を、サブECU102へ送信して、書換えを開始し、ステップS404に進む。ステップS404では、サブECU102から書換え完了通知を受信しているか判断する。書換え完了通知を受信している場合にはステップS407に進む。書換え完了通知を受信していない場合には、ステップS405に進む。書換え完了通知は、書換えが完了するとサブECU102が送信するデータであるが、メモリ117には格納されないため、図1中には図示していない。
ステップS405では、ゲートウェイECU101がメモリ117内の書換えプログラム123を実行し、実行によって得られたデータを代替データ126としてメモリ117へ格納し、ステップS406に進む。
ステップS406では、ステップS405で格納した代替データ126をFlexRay通信線106を介して他ドメインECUX103へ送信する。そして、ステップS404に戻る。
サブECU102から書換え完了通知を受信し、ステップS407に進むと、ゲートウェイECU101は書換え状態フラグ127をOFFにし、書換え状態時プログラム122を終了する。サブECU102は、書換え完了とともに、更新された書換えプログラム123の実行を開始し、真データ125の送信を再開する。
ケース1A:通常状態、書換え状態フラグ127がOFFであるときに他ドメインデータ124を受信
ケース1B:通常状態、書換え状態フラグ127がOFFであるときに真データ125を受信
ケース1C:通常状態、書換え状態フラグ127がOFFであるときに書換えプログラム123を受信
書換え状態時プログラム122では、ステップS401〜ステップS402の順に進み、書換え開始をサブECU102へ通知し、書換え状態フラグ127をONにする。この通知を受けてサブECU102は真データ125の送信を停止し、書換え準備を行う。続いてゲートウェイECU101はステップS403からステップS404に進み、書換えプログラム123をサブECU102へ送信し、サブECU102の書換えを実行する。さらに、ゲートウェイECU101はサブECU102からの書換え完了通知を待ちながら、ステップS405でサブECU102を書換え中であるのと同じ書換えプログラム123を、自ECU101でも実行し、得られたデータを代替データ126としてメモリ117へ格納する。そして、ステップS406において、代替データ126を他ドメインECUX103へ送信する。この書換えプログラム123の実行と得られた代替データ126の送信は、サブECU102からの書換え完了通知が来るまで継続する。サブECU102から書換え完了通知が来ると、ステップS407において書換え状態フラグ127をOFFにして書換え状態時プログラムを終了する。これによりケース1A〜ケース1Cで説明した処理が再開される。また、サブECU102は、更新された書換えプログラム123の実行を開始し、実行の結果得られる制御データを真データ125として、CAN通信線105への送信を再開する。
この書換え状態時プログラム122を実行中も、FlexRay通信線106上ではゲートウェイECU101と他ドメインECUX103や他ドメインECUY104間で通常状態と変わらずデータの送受信が可能である。他ドメインECUX103からデータを受信した場合、転送プログラム120は起動するが、書換え状態フラグ128がONであればCAN通信線105への転送は行わないため、書換え状態時にCAN通信線105上に書換え用途以外のデータが送信されることはない。また書換え状態時はサブECU102も書換え用途以外のデータは送信しない。これにより安全にサブECU102を書換えることができる。
以下に、本発明の実施の形態2に係る車両に搭載されるゲートウェイECU501について説明する。ゲートウェイECU501は実施の形態1におけるゲートウェイECU101と同じく通常状態と書換え状態を持つ。
ステップS609では、受信したデータが真データ125か判断する。真データ125である場合にはステップS210に進み、それ以外の場合にはステップS615に進む。
ステップS611では、切替タイマ529が停止中であるか判断する。停止中の場合には、ステップS612に進む。一方、動作中の場合には、書換え状態から通常状態へ切り替わった直後であることから、真データ125は転送せずに処理を終了する。
ステップS612では、送信周期タイマ528が動作しているか判断する。動作中の場合には、ステップS614に進み、動作していない場合にはステップS613に進む。
ステップS613では、送信周期タイマ528を開始し、ステップS614に進む。このようにすることで、送信周期タイマ528はCAN通信線105からFlexRay通信線106へ真データ125を初めて転送するときに開始されることになる。
ステップS614では、真データ125をFlexRay通信線106へ転送し、送信周期タイマ528をリセットし、処理を終了する。
一方、ステップS609からステップS615に進んだ場合には、受信したデータが書換え状態用データ530か判断する。書換え状態用データ530である場合にはステップS616に進み、それ以外の場合には、受信したデータに対する処理は不要であるとして、処理を終了する。
ステップS616では、受信した書換え状態用データ530をメモリ117へ格納し、処理を終了する。
ステップS702では、切替タイマ529が停止中であるか判断する。停止中の場合には、通常状態であり、かつ書換え状態から遷移した直後ではないと判断でき、ステップS302に進む。一方、切替タイマ529が動作中の場合には、書換え状態から通常状態へ切り替わった直後であり、ゲートウェイECU501が書換えプログラム123を実行中であることから、ステップS703に進む。
ステップS703では、ゲートウェイECU501が実行中の書換えプログラム123を停止し、メモリ内117の書換えプログラム123を更新可能な状態にする。また、切替タイマ529を停止する。そしてステップS302に進む。
ゲートウェイECU501は、書換え開始を通知し、書換え状態フラグをONにした後、ステップS803では、サブECU102から書換え状態用データ530を受信するまで待機する。書換え状態用データ530を受信するとステップS403に進む。
また、書換えプログラム123を実行し、代替データ126を格納した後、ステップS807では、送信周期タイマ528が満了するまで待機する。送信周期タイマ528が満了すると、ステップS808に進む。
ステップS808では、ステップS405で格納した代替データ126をFlexRay通信線106を介して他ドメインECUX103へ送信するとともに、送信周期タイマ528をリセットする。そして、ステップS404に戻る。
ステップS404において、サブECU102から書換え完了通知を受信し、ステップS809に進むと、ゲートウェイECU501は切替タイマ529を開始し、ステップS407に進む。サブECU102は、書換え完了とともに、更新された書換えプログラム123の実行を開始し、実行の結果得られる制御データを真データ125として、CAN通信線105へ送信を再開する。
次に、ステップS407では、書換え状態フラグ127をOFFにした後、ステップS811では、切替タイマ529が満了しているか判断する。満了している場合には、ステップS815に進み、満了していない場合にはステップS812に進む。
ステップS812〜ステップS814の動作は、ステップS806〜ステップS808の動作と同じであるため、説明を省略する。ただし、ステップS814では代替データ126の送信を完了すると、ステップS811に戻る。
ステップS815では、満了した切替タイマ519を終了し、書換え状態時プログラム522を終了する。
ケース2A:通常状態、書換え状態フラグ127がOFF、切替タイマ529が停止中に他ドメインデータ124を受信
ケース2B:通常状態、書換え状態フラグ127がOFF、切替タイマ529が停止中に真データ125を受信
ケース2C:通常状態、書換え状態フラグ127がOFF、切替タイマ529が停止中に書換えプログラム123を受信
書換え状態時プログラム522では、ステップS401〜ステップS402の順に進み、書換え開始をサブECU102へ通知し、書換え状態フラグ127をONにする。この通知を受けてサブECU102は書換え準備を行うとともに、書換え状態用データ530をゲートウェイECU501へ送信する。ゲートウェイECU501では、書換え状態フラグ127がONであっても、データを受信すると転送プログラム520が起動し、ステップS201、ステップS208、ステップS609、ステップS615〜ステップS616の順に進み、書換え状態用データ530を受信することができる。その結果、ステップS803からステップS403に進み、書換えプログラム123をサブECU102へ送信し、サブECU102の書換えを実行する。さらに、ゲートウェイECU501はサブECU102からの書換え完了通知を待ちながら、ステップS405でサブECU102で書換え中であるのと同じ書換えプログラム123を実行し、得られたデータを代替データ126としてメモリ117へ格納する。そして、ステップS807からステップS808において、送信周期タイマ528が満了するタイミングで、代替データ126を他ドメインECUX103へ送信する。また、送信とともに送信周期タイマ528をリセットする。この書換えプログラム123の実行と得られた代替データ126の周期送信を、サブECU102からの書換え完了通知が来るまで継続する。サブECU102から書換え完了通知が来ると、ステップS809以降では、切替タイマ529を開始、書換え状態フラグ127をOFFにし、切替タイマ529が満了するまで、ステップS405からステップS808と同じように、書換えプログラム123の実行と、送信周期タイマ518満了タイミングでの代替データ126の送信を継続する。サブECU102は、書換え完了とともに、更新された書換えプログラム123の実行を開始し、実行の結果得られる制御データを真データ125として、CAN通信線105へ送信を再開する。しかし、ゲートウェイECU501は切替タイマ529が停止するまでは、上記のとおり、真データ125のFlexRay通信線106への転送は行わない。切替タイマ529が満了すると、切替タイマ529を停止し、書換え状態時プログラムを終了する。これにより書換えプログラム123は実行されなくなり、ケース2Aとケース2Bで説明した処理が再開され、サブECU102が送信する真データ125のFlexRay通信線106への転送が再開される。
サブECU102での実行時に使用した他ドメインデータ124は、書換え状態時にも、ゲートウェイECU501は転送プログラム520によって他ドメインECUX103から受信することができるため、サブECU102での実行と同じように使用することができる。
一方、センサA108のデータは、書換え状態時にはCAN通信線105は制御データを送信することはできないことから、ゲートウェイECU501は入手することができない。また、このセンサA108のデータはサブECU102内部でのみ使用するため、サブECU102はCAN通信線105へ出力しておらず、ゲートウェイECU501は通常状態であってもセンサA108のデータを受信していない。この代わりとして、ゲートウェイECU501は書換え状態時プログラム522のステップS401において書換え開始をサブECU102へ通知すると、サブECU102はゲートウェイECU501へセンサA108からの最新のデータを書換え状態用データ530として送信してから、書換えに必要な状態に遷移する。ゲートウェイECU501は、ステップS803においてこの書換え状態用データ530を受信してから書換えを開始する。したがって、この書換え状態用データ530を、センサデータとして、書換えプログラム123の入力に使用することができる。
さらに、ゲートウェイECU501は通常状態での転送プログラム520によるCAN通信線105からFlexRay通信線106へのデータの転送において、ステップS210で真データ125をメモリ117に格納している。したがって、通常状態から書換え状態へ遷移した後、ゲートウェイECU501が最初に書換えプログラム123を実行する際には、最後にゲートウェイECU501がサブECU102から受信した真データ125を前回値データとすることができる。また、書換えプログラム123の2回目以降の実行時は、初回書換えプログラム123の実行によって得られた代替データ126を使用すればよい。
以下に、本発明の実施の形態3に係る車両に搭載されるゲートウェイECU1101について説明する。ゲートウェイECU1101は本発明の実施の形態1におけるゲートウェイECU101と同じく通常状態と書換え状態を持つ。
ゲートウェイECU1101は、CAN通信線105を介して、サブECU102の他に非書換え対象サブECU1131とも接続している。
第四の電子制御装置である非書換え対象サブECU1131には制御対象であるアクチュエータC1132と制御対象の状態を検出するセンサC1133が接続されており、他ドメインECUX103と制御データを送受信して共有することで、高度な制御を実現している。
非書換え対象サブECU1131は、制御データとして第2の真データ1139を送信している。また、書換え状態時に備えて、通常状態時もセンサC1133のデータを周期的に送信している。非書換え対象サブECU1131は書換え対象ではないため、ゲートウェイECU1101が書換え状態になっても、非書換え対象サブECU1131のプログラムは書換えられることはない。しかし、サブECU102が書換え中は、CAN通信線105上には書換え用途のデータのみ送信可能であるため、非書換え対象サブECU1131が制御データを送信したり、他ドメインECUX103から制御データを受信したりすることはできない。
他ドメインECUX103は、アクチュエータB110の制御のために、真データ125あるいは代替データ126に加えて、非書換え対象サブECUが送信する第2の真データ1139を使用する。
ステップS202からステップS1206に進んだ場合には、受信したデータが書換えプログラム123とそれに続く非書換えプログラム1136であるか判断する。書換えプログラム123と非書換えプログラム1136である場合には、ステップS207に進む。書換えプログラム123と非書換えプログラム1136でない場合には、受信したデータに対する処理は不要であるとして、処理を終了する。
ステップS208からステップS1211に進んだ場合には、受信したデータが真データ125であるか判断する。真データ125である場合にはステップS210に進み、それ以外の場合にはステップS1213に進む。
ステップS1212では、切替監視タイマ1135が停止中であるか判断する。停止中の場合にはステップS211に進む。一方、動作中の場合には、書換え状態から通常状態へ切り替わった直後であることから、真データ125は転送せずに処理を終了する。
ステップS1211からステップS1213に進んだ場合には、受信したデータが第2の真データ1139であるか判断する。第2の真データ1139である場合にはステップS1214に進み、それ以外の場合にはステップS1218に進む。
ステップS1214では、受信した第2の真データ1139をメモリ117へ格納し、ステップS1215に進む。
ステップS1215では、第2の代替データ用送信周期タイマ1134が動作しているか判断する。動作中の場合には、ステップS1217に進み、動作していない場合にはステップS1216に進む。
ステップS1216では、第2の代替データ用送信周期タイマ1134を開始し、ステップS1217に進む。このようにすることで、第2の代替データ用送信周期タイマ1134はCAN通信線105からFlexRay通信線106へ第2の真データ1139を初めて転送するときに開始されることになる。
ステップ1217では、第2の真データ1139をFlexRay通信線106へ転送し、第2の代替データ用送信周期タイマ1134をリセットし、処理を終了する。
一方、ステップS1213からステップS1218に進んだ場合には、受信したデータがセンサC1133のデータであるか判断する。センサC1133のデータである場合にはステップS1219に進み、それ以外の場合には、受信したデータに対する処理は不要であるとして処理を終了する。
ステップS1219では、受信したセンサC1133をメモリ117の第2の書換え状態用データFIFO1138へ格納し、処理を終了する。
ステップS1301では、切替監視タイマ1135が停止中であるか判断する。停止中の場合には、通常状態であり、かつ書換え状態から遷移した直後ではないと判断でき、ステップS1303に進む。一方、切替監視タイマ1135が動作中の場合には、書換え状態から通常状態へ切り替わった直後であり、ゲートウェイECU1101が書換えプログラム123と非書換えプログラム1136を実行中であることから、ステップS1302に進む。
ステップS1302では、ゲートウェイECU1101が実行中の書換えプログラム123と非書換えプログラム1136を停止し、メモリ内117の書換えプログラム123と非書換えプログラム1136を更新可能な状態にする。また、切替監視タイマ1135を停止する。そしてステップS1303に進む。
ステップS1303では、受信した書換えプログラム123と非書換えプログラム1136で、メモリ117内の書換えプログラム123と非書換えプログラム1136をそれぞれ上書きあるいは新規格納する。格納が完了すると、ステップS303に進む。
ゲートウェイECU1101は、サブECU102からの書換え完了通知を待つ間、ステップS1401では、メモリ117内の書換えプログラム123と非書換えプログラム1136を実行し、実行によって得られたデータをそれぞれ代替データ126と第2の代替データ1140としてメモリ117へ格納し、ステップS1402に進む。
ステップS1402では、ステップS1401で格納した代替データ126をFlexRay通信線106を介して他ドメインECUX103へ送信する。そしてステップS1403に進む。
ステップS1403では、第2の代替データ用送信周期タイマ1134が満了するまで待機する。第2の代替データ用送信周期タイマ1134が満了すると、ステップS1404に進む。
ステップS1404では、ステップS1401で格納した第2の代替データ1140をFlexRay通信線106を介して他ドメインECUX103へ送信するとともに、第2の代替データ用送信周期タイマ1134をリセットする。そしてステップS404に戻る。
ステップS404において、サブECU102から書換え完了通知を受信し、ステップS1405に進むと、ゲートウェイECU1101は切替監視タイマ1135を開始し、ステップS407に進む。サブECU102は書換え完了とともに、更新された書換えプログラム123の実行を開始し、実行の結果得られる制御データを真データ125として、CAN通信線105へ送信を再開する。また、非書換え対象サブECU1131も、この書換え完了通知を受信することができ、第2の真データ1139とセンサC1133のデータの送信を再開する。ゲートウェイECU1101は、第2の真データ1139をCAN通信線105を介して受信すると、FlexRay通信線106への転送を行う。
ステップS1406では、切替監視タイマが満了しているか判断する。満了している場合にはステップS1407に進み、満了していない場合にはステップS1408に進む。
ステップS1407では、サブECU102の書換えが失敗していると判断されるため、エラー処理を実施し、書換え状態時プログラム1122を終了する。エラー処理は、ゲートウェイECU1101が書換えプログラム123を再送して、サブECU102を再度書換えたり、書換えプログラム123を他ドメインECUY104から再度受信したりするなど考えられる。
一方、ステップS1406において、切替監視タイマ1135が満了していないためステップS1408に進むと、書換えプログラム123を実行し、実行によって得られたデータを代替データ126としてメモリ117へ格納し、ステップS1409に進む。
ステップS1409では、ステップS1408で格納した代替データ126と、ステップS404において書換え完了通知受信後、サブECU102が送信を再開し、転送プログラム1120のステップS210でメモリ117へ格納されるようになった真データ125との差分を、差分基準データ1137の値Qと比較する。そして、次の式が満たされれば、ステップS1411に進み、満たされなければ、ステップS1410に進む。
(式): |代替データ126 − 真データ125| ≦ Q
ステップS1410では、サブECU102による書換えプログラム123の実行結果である真データ125の値が安定していないとして、ゲートウェイECU1101が書換えプログラム123を実行した結果である代替データ126をFlexRay通信線106へ送信する。そしてステップS1406に戻る。
一方、S1409で条件が満たされると、ステップS1411では、書換え後の真データ125の値が安定しているとして、真データ125のFlexRay通信線106への転送を行うため、切替監視タイマ1135を終了し、書換え状態時プログラム1122を終了する。
ケース3A:通常状態、書換え状態フラグ127がOFF、切替監視タイマ1135が停止中に他ドメインデータ124を受信
ケース3B:通常状態、書換え状態フラグ127がOFF、切替監視タイマ1135が停止中に真データ125を受信
ケース3C:通常状態、書換え状態フラグ127がOFF、切替監視タイマ1135が停止中に書換えプログラム123と非書換えプログラム1136を受信
格納プログラム1121では、書換え状態フラグ127がOFF、切替監視タイマ1135が停止中であることから、ステップS301、ステップS1301、ステップS1303、ステップS303の順に進み、受信した書換えプログラム123と非書換えプログラム1136をメモリ117に格納した後、書換えを実行するために書換え状態時プログラム1122を起動する。
書換え状態時プログラム1122では、ステップS401〜ステップS404の順に進み、書換え開始をサブECU102へ通知し、書換え状態フラグ127をONにする。この通知を受けて、サブECU102は書換え準備を行う。また、非書換え対象サブECU1131も送信や受信処理を停止し、サブECU102からの書換え完了通知を待つ。
その後、ゲートウェイECU1101はサブECU102からの書換え完了通知を待ちながら、ステップS1401においてサブECU102で書換え中であるのと同じ書換えプログラム123と、非書換え対象ECU1131が第2の真データ1139を出力するのに使用するのと同じ非書換えプログラム1136を実行する。そして書換えプログラム123の実行により得られたデータを代替データ126として送信する。また、非書換えプログラム1136の実行により得られたデータを第2の代替データ1140として、第2の代替データ用送信周期タイマ1134が満了するタイミングで、他ドメインECUX103へ送信する。また、送信とともに送信周期タイマ1134をリセットする。これらの書換えプログラム123と非書換えプログラム1136の実行と、得られた代替データ126や第2の代替データ1140の周期送信を、サブECU102からの書換え完了通知が来るまで継続する。サブECU102から書換え完了通知が来ると、ステップS1405以降では、切替監視タイマ1135を開始、書換え状態フラグ127をOFFにする。また、書換え完了通知により、サブECU102と非書換え対象サブECU1131は、それぞれデータの送信を開始する。これによりゲートウェイECU1101は、非書換え対象サブECU1131が送信する第2の真データ1139については、FlexRay通信線107への転送を再開する。しかし、書換え直後であるサブECU102が送信する真データ125は、値が安定するのを待つ必要がある。そこで、切替監視タイマ1135が満了しない限り、真データ125の値が条件を満たすまで、ゲートウェイECU1101は書換えプログラム123の実行と得られる代替データ126の送信を継続し、得られる代替データ126と、受信する真データ125の比較を行って、この値の差分が差分基準データ1137の値Q以下となるまで、代替データ126をFlexRay通信線107へ送信する。条件値Qを満たすと、サブECU102の書換えが成功し、真データ125が他ドメインECUX103での制御に使用可能な信頼性を持つと判断され、ゲートウェイECU1101は真データ125についてもFlexRay通信線107への転送を再開する。一方、この差分が条件値Qを満たす前に切替監視タイマ1135が満了した場合には、サブECU102の書換えが失敗し、サブECU102が送信する真データ125は信頼性が低いものとして、エラー処理を開始する。
さらに、切替監視タイマ1135を備えることで、サブECU102に異常が発生している場合にこれを検出することができるようになり、書換えを再度実行するなどのエラー処理を行えるようになる。
非書換え対象サブECU1131での実行時に使用した他ドメインデータ124は、書換え状態時にも、ゲートウェイECU1101は転送プログラム1120によって他ドメインECUX103から受信することができるため、非書換え対象サブECU1131での実行と同じように使用することができる。
一方、センサC1133のデータは、書換え状態時にはCAN通信線105は制御データを送信することはできないことから、ゲートウェイECU1101は入手することができない。しかし、通常状態時に、非書換え対象サブECU1131は、センサC1133のデータを周期的にゲートウェイECU1101へ送信しており、ゲートウェイECU1101はこれを第2の書換え状態用データFIFO1138へ格納している。ゲートウェイECU1101は、これらの書換え状態遷移前までのセンサC1133の複数回分のデータを使用して、センサC1133の推定データを決定し、センサデータとして、非書換えプログラム1136の入力に使用することができる。
例えば、センサC1133のデータが、サイン波形状に変化する性質をもち、かつ周波数が変更される頻度は高くないとする。その場合、図17に示すように、それまでのデータ複数回分から、次回のデータの値を推定することができる。したがって、このようにして第2の書換え状態用データFIFO1138に格納された複数回分のデータから、書換え状態時にも、センサC1133のデータを推定することが可能であり、この推定データを非書換えプログラム1136の入力に使用することができる。
また、書換え完了後も、真データ125の値を監視し、切替監視タイマ1135が満了するまでか、そのタイマの停止条件となる差分基準データ1137を満たすまでは、真データ125ではなく代替データ126を送信する。これにより、書換えが正常に完了したか判断し、異常である場合には、エラー処理を実行することができる。
以下に、本発明の実施の形態4に係る車両に搭載されるゲートウェイECU1801について説明する。ゲートウェイECU1801は実施の形態3におけるゲートウェイECU1101と同じく通常状態と書換え状態を持つ。
ゲートウェイECU1801は、図11の構成に加えて、プログラム115内に第2の代替データ決定テーブル1841を備える。一方、図11の構成に存在していたプログラム115内の非書換えプログラム1136と、データ116内の第2の書換え状態用データFIFO1138は備えていない。
ゲートウェイECU1801は、ステップS405において書換えプログラムを実行し、得られたデータを代替データとしてメモリへ格納する。
続いて、ステップS2201において、ステップS405で得られた代替データを入力として、第2の代替データ決定テーブルから、第2の代替データを決定し、メモリへ格納する。
本発明の実施の形態5に係る車両に搭載されるゲートウェイECU501の構成や、各プログラムの処理内容は、図5〜8に示した実施の形態2と同じであるため、ここでは説明を省略する。
本発明の実施の形態6に係る車両に搭載されるゲートウェイECU101の構成や、各プログラムの処理内容は、図1〜4に示した実施の形態1と同じものを用いるため、ここでは説明を省略する。
これにより、書換えプログラム123と他のプログラム120〜122間で、互いのリソースに意図せずアクセスすることを防ぐことができる。したがって、仮想コアA2501によるサブECU102の書換えを安全に行うことができる。
また、ハイパーバイザ2503により、書換えプログラム123から、実行結果を出力するためのCAN通信線105などのハードウェアへのアクセス処理を代替データ126へのアクセス処理へ変換することができるため、ゲートウェイECU101とサブECU102とのハードウェアの違いを吸収し、本来実行することを想定していないゲートウェイECU101のプロセッサ112上で、書換えプログラム123を実行し、代替データ126を出力することができる。
Claims (14)
- 第一の電子制御装置と第二の電子制御装置が、第一の通信線を介して接続し、前記第一の電子制御装置と第三の電子制御装置が、第二の通信線を介して接続し、前記第一の電子制御装置は、第一のプログラムを実行する第一の演算手段と、前記第一のプログラムやデータを格納する第一の記憶手段とを備え、前記第一のプログラムには、前記第一の通信線、前記第二の通信線のうちの一方から受信したデータを設定に従って他方へ送信する転送プログラムと、前記第二の電子制御装置が実行する書換えプログラムを、前記第三の電子制御装置から受信すると、前記第一の記憶手段に格納する格納プログラムと、前記第二の電子制御装置の書換えを実行する書換え状態時には、前記第二の通信線から受信したデータの前記第一の通信線への送信を禁止するとともに、前記第一の記憶手段に格納された前記書換えプログラムを前記第二の電子制御装置へ送信する書換え状態時プログラムと、前記格納プログラムによって格納される前記書換えプログラムを含む代替プログラムと、を含み、前記第二の電子制御装置は、通常状態時には、第二のプログラムを実行して得られた真データを前記第二の通信線へ送信し、切換え状態時には、前記第一の電子制御装置から受信した前記書換えプログラムによって、前記第二のプログラムを更新する、ネットワークシステムにおいて、前記第一の電子制御装置は、前記書換え状態時に、前記第一の記憶手段に格納された前記代替プログラムに含まれる前記書換えプログラムを実行し、実行によって得られた代替データを前記第二の通信線へ送信し、且つ前記書換え状態において前記第二の電子制御装置の前記第二のプログラムの更新を完了した後、予め決められた条件が満たされるまで、前記書換えプログラムを実行し、前記代替データを前記第二の通信線へ送信するものであって、前記予め決められた条件は、前記代替データと、前記第二の電子制御装置から受信する前記真データの差分が、予め決められた範囲内であることを特徴とする電子制御装置。
- 前記予め決められた条件が、第二の期間経過時に満たされていなければ、前記第二の電子制御装置の前記第二のプログラムの前記書換えプログラムによる更新が異常終了したと判断して、エラー処理を開始することを特徴とする請求項1に記載の電子制御装置。
- 前記第一の電子制御装置は第一のタイマを備え、前記第二の電子制御装置から受信した前記真データを前記第二の通信線へ送信するときに、前記第一のタイマを開始し、前記書換え状態時に前記第一のタイマが満了すると、前記代替データを前記第二の通信線へ送信することを特徴とする請求項1または請求項2に記載の電子制御装置。
- 前記第一の通信線に、第四の電子制御装置が接続され、前記第四の電子制御装置は、通常状態時には、第四のプログラムを実行し、実行によって得られた第二の真データを前記第二の通信線へ送信し、前記第一の電子制御装置は、前記書換え状態時に、前記第四の電子制御装置から前記第二の真データを受信しない間、第二の代替データを前記第二の通信線へ送信することを特徴とする請求項1から請求項3のいずれか一項に記載の電子制御装置。
- 前記第一の電子制御装置は、前記第一の記憶手段の前記代替プログラムに、前記書換えプログラムの他に、前記第四のプログラムの少なくとも非書換えプログラムを含み、前記第四の制御装置から前記第二の真データを受信しない間、前記非書換えプログラムを実行し、実行によって得られたデータを前記第二の代替データとして前記第二の通信線へ送信することを特徴とする請求項4に記載の電子制御装置。
- 前記第一の電子制御装置は、前記非書換えプログラムを、前記第三の電子制御装置から受信することを特徴とする請求項5に記載の電子制御装置。
- 前記第一の電子制御装置は、前記第一の記憶手段に、前記代替データを入力とし、前記第二の代替データを出力とするテーブルを備え、前記代替データが更新されると、前記テーブルを用いて前記第二の代替データを決定し、前記第四の制御装置から前記第二の真データを受信しない間、前記第二の代替データを前記第二の通信線へ送信することを特徴とする請求項4に記載の電子制御装置。
- 前記第一の電子制御装置は第二のタイマを備え、前記第四の電子制御装置から受信した前記第二の真データを前記第二の通信線へ送信するときに、前記第二のタイマを開始し、前記書換え状態時に前記第二のタイマが満了すると、前記第二の代替データを前記第二の通信線へ送信することを特徴とする請求項4から請求項7のいずれか一項に記載の電子制御装置。
- 前記第一の電子制御装置は、前記代替プログラムの実行に必要なデータとして、前記第二の通信線から受信するデータを用いることを特徴とする請求項1から請求項8のいずれか一項に記載の電子制御装置。
- 前記第一の電子制御装置は、前記代替プログラムの実行に必要なデータとして、前記書換え状態に遷移する前に前記第一の通信線から受信したデータの値を用いることを特徴とする請求項1から請求項9のいずれか一項に記載の電子制御装置。
- 前記第一の電子制御装置は、前記代替プログラムの実行に必要なデータとして、前記書換え状態に遷移する前に前記第一の通信線から受信したデータの値から推定される、推定データを用いることを特徴とする請求項1から請求項10のいずれか一項に記載の電子制御装置。
- 前記第一の電子制御装置は、前記代替プログラムの実行に必要なデータとして、前記書換え状態に遷移することが決定すると前記第一の通信線から受信する、書換え状態用データを用いることを特徴とする請求項1から請求項11のいずれか一項に記載の電子制御装置。
- 前記第一の電子制御装置は、前記代替プログラムの実行に必要なデータとして、予め定めた値を用いることを特徴とする請求項1から請求項12のいずれか一項に記載の電子制御装置。
- 前記第一の電子制御装置は、複数の仮想コアを動作させることができる仮想マシンを実装し、前記仮想コアのうち一つにおいて、前記代替プログラムを実行し、別の仮想コアにおいて、前記書換え状態時プログラムを実行することを特徴とする請求項1から請求項13のいずれか一項に記載の電子制御装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014081643A JP5784786B1 (ja) | 2014-04-11 | 2014-04-11 | 電子制御装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014081643A JP5784786B1 (ja) | 2014-04-11 | 2014-04-11 | 電子制御装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP5784786B1 true JP5784786B1 (ja) | 2015-09-24 |
JP2015202710A JP2015202710A (ja) | 2015-11-16 |
Family
ID=54200781
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014081643A Active JP5784786B1 (ja) | 2014-04-11 | 2014-04-11 | 電子制御装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5784786B1 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2020149130A (ja) * | 2019-03-11 | 2020-09-17 | 株式会社オートネットワーク技術研究所 | 代替装置、代替制御プログラム及び代替方法 |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2017204227A (ja) * | 2016-05-13 | 2017-11-16 | 住友電気工業株式会社 | 車載制御装置、制御方法及びコンピュータプログラム |
JP2018076040A (ja) * | 2016-11-11 | 2018-05-17 | 株式会社オートネットワーク技術研究所 | 車載更新システム、車載更新装置及びゲートウェイ |
JP7027940B2 (ja) * | 2018-02-20 | 2022-03-02 | 株式会社デンソー | 制御装置 |
JP7423959B2 (ja) * | 2019-09-27 | 2024-01-30 | 株式会社アドヴィックス | 車両リプログラミングシステム |
JP7327325B2 (ja) * | 2020-08-31 | 2023-08-16 | トヨタ自動車株式会社 | 車載機器、情報生成方法、情報生成プログラム、および、車両 |
JP7562615B2 (ja) | 2022-10-11 | 2024-10-07 | 株式会社東芝 | 制御システム、及び制御装置 |
-
2014
- 2014-04-11 JP JP2014081643A patent/JP5784786B1/ja active Active
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2020149130A (ja) * | 2019-03-11 | 2020-09-17 | 株式会社オートネットワーク技術研究所 | 代替装置、代替制御プログラム及び代替方法 |
WO2020183897A1 (ja) * | 2019-03-11 | 2020-09-17 | 株式会社オートネットワーク技術研究所 | 代替装置、代替制御プログラム及び代替方法 |
JP7225948B2 (ja) | 2019-03-11 | 2023-02-21 | 株式会社オートネットワーク技術研究所 | 代替装置、代替制御プログラム及び代替方法 |
US11630746B2 (en) | 2019-03-11 | 2023-04-18 | Autonetworks Technologies, Ltd. | Substitution apparatus, substitution control program, and substitution method |
Also Published As
Publication number | Publication date |
---|---|
JP2015202710A (ja) | 2015-11-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5784786B1 (ja) | 電子制御装置 | |
US11354114B2 (en) | Updating system, electronic control unit, updating management device, and updating management method | |
US10489141B2 (en) | Relay device, electronic control unit, and vehicle-mounted system | |
JP6665728B2 (ja) | 車載更新装置、車載更新システム及び通信装置の更新方法 | |
US9541937B2 (en) | In-vehicle communication system | |
WO2018179191A1 (ja) | 制御装置及び制御システム | |
JP4974706B2 (ja) | 車載通信装置及び車載通信システム | |
US7245631B2 (en) | Multiplex communication apparatus for vehicle | |
KR101519719B1 (ko) | 게이트웨이의 메시지 처리 방법 | |
US10384625B2 (en) | Communication device and non-transitory recording medium | |
CN111338670B (zh) | 机器人的固件更新方法、装置、存储介质和机器人 | |
JP2008242995A (ja) | 電子制御装置 | |
JP2018074798A5 (ja) | ||
CN110450850B (zh) | 转向控制装置、转向控制方法以及转向系统 | |
JP2018120438A (ja) | 電子制御装置及びプログラム書換システム | |
KR101601074B1 (ko) | Ecu 업데이트 장치, ecu 업데이트 방법 및 이를 이용한 ecu 업데이트 네트워크 | |
JP6279152B1 (ja) | 制御装置、制御システム、および、制御装置の復帰処理方法 | |
JP7091630B2 (ja) | 電子制御装置 | |
US20240192978A1 (en) | Power management on a vehicle | |
JP2020133958A (ja) | 温水機器 | |
JP6221972B2 (ja) | ファームウェアの更新システムおよび更新制御方法 | |
JP2021124829A (ja) | 電子制御装置 | |
US20230315429A1 (en) | In-vehicle system and control device | |
WO2023166759A1 (ja) | 更新管理システム | |
JP7525283B2 (ja) | 中継装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20150623 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20150722 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 5784786 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313111 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |