JP2015205555A - 組込制御システム - Google Patents

組込制御システム Download PDF

Info

Publication number
JP2015205555A
JP2015205555A JP2014086288A JP2014086288A JP2015205555A JP 2015205555 A JP2015205555 A JP 2015205555A JP 2014086288 A JP2014086288 A JP 2014086288A JP 2014086288 A JP2014086288 A JP 2014086288A JP 2015205555 A JP2015205555 A JP 2015205555A
Authority
JP
Japan
Prior art keywords
control
embedded control
embedded
reprogramming
control program
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
Application number
JP2014086288A
Other languages
English (en)
Inventor
洋馬 石井
Yoma Ishii
洋馬 石井
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Astemo Ltd
Original Assignee
Hitachi Automotive Systems Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Hitachi Automotive Systems Ltd filed Critical Hitachi Automotive Systems Ltd
Priority to JP2014086288A priority Critical patent/JP2015205555A/ja
Publication of JP2015205555A publication Critical patent/JP2015205555A/ja
Pending legal-status Critical Current

Links

Images

Abstract

【課題】同種のECUをリプログラミングする際に、制御プログラムの不整合を誤って検出することを抑制することができる組込制御システムを提供する。【解決手段】本発明に係る組込制御システムにおいて、各組込制御装置は、車内ネットワークを介して接続されている他の組込制御装置のリプログラミングが完了するまでは、制御プログラムが整合しているか否かについての診断を一時中断する。【選択図】図2

Description

本発明は、組込制御システムに関するものである。
近年、車両の電子制御化が進み、車両はエンジンコントローラやパワーステアリングコントローラなどの複数のECU(Electronic Control Unit)を搭載している。これら複数のECUは、CAN(Controller Area Network)などの通信線によって互いに接続され、各ECU間で互いに情報を送受信しながら制御を実施している。
ECUのROM(Read Only Memory)などが格納している制御プログラムは、リプログラミング装置によって書き換えることができる。リプログラミングを実施している間はそのECUは動作することができない。したがって、ECU間で相互に他のECUと通信することができるか否かをチェックしている場合、リプログラミング実施中のECUと通信することができないので、誤って通信異常と判断される可能性がある。
下記特許文献1記載のリプログラミングシステムにおいて、リプログラミング装置はリプログラミングを開始する前にその旨を各ECUに対してCANを経由して通知する。通知を受け取ったECUのうちリプログラミング対象でないものは、リプログラミングが完了するまで通信を一時停止するとともに、監視制御も停止する。これにより、リプログラミング実施中のECUを誤って通信異常と判断することを回避している。
特開2012−126230号公報
ECUによって制御される同種の制御対象を1つの車両が複数備える場合がある。例えばサイドミラーを動かすECUは、左右それぞれのECUに対応して2つ設けられる場合がある。また最近の車両においてはシートベルトリトラクタが電子制御化されている場合もある。この場合、各座席(例えば運転席と助手席)のシートベルトに対応して、シートベルトを制御するECUをそれぞれ設ける場合がある。このようなECUをリプログラミングする際には、同種のECUを複数同時にリプログラミングする必要が生じることがある。制御対象が同種である場合、各ECUの制御プログラムは処理内容やバージョン番号が同一であることが望ましいからである。
上記特許文献1においては、リプログラミングを実施する際にECU間の監視制御をいったん停止した後、リプログラミングが完了したECUについては通信と監視制御を再開している。しかし、上述のように同種の制御対象を制御する複数のECUをリプログラミングする場合、同一の制御プログラムを実行するいずれかのECUについてリプログラミングが完了したとしても、その他のECUが未完了である場合、本来同一の制御プログラムを備えているべき各ECUが、互いに異なる制御プログラムを瞬時的に備えることになる。そうすると、ECU間で例えば制御プログラムのバージョン番号などを相互にチェックしている場合、リプログラミングが完了したECUと完了していないECUとの間で相互に異常を誤検出してしまう可能性がある。
本発明は、上記のような課題に鑑みてなされたものであり、同種のECUをリプログラミングする際に、制御プログラムの不整合を誤って検出することを抑制することができる組込制御システムを提供することを目的とする。
本発明に係る組込制御システムにおいて、各組込制御装置は、車内ネットワークを介して接続されている他の組込制御装置のリプログラミングが完了するまでは、制御プログラムが整合しているか否かについての診断を一時中断する。
本発明に係る組込制御システムによれば、リプログラミングによって制御プログラムの不整合を誤って検出することを抑制することができる。
実施形態1に係る組込制御システム1000の構成図である。 CPU110の内部状態を説明する状態遷移図である。 組込制御システム1000がリプログラミングを実施する過程を説明するシーケンス図である。
<実施の形態1>
図1は、本発明の実施形態1に係る組込制御システム1000の構成図である。組込制御システム1000は、車両の動作を制御するシステムであり、組込制御装置100と車内ネットワーク200を有する。ここでは組込制御装置100の例として、シートベルトリトラクタとして動作するECUを例示する。したがって組込制御システム1000は、同様の構成を備えた組込制御装置100を複数(図1においては2つ)備え、各組込制御装置100は車内ネットワーク200を介して相互に通信することができる。
組込制御装置100は、CPU(Central Processing Unit)110、フラッシュROM120を備える。フラッシュROM120は制御プログラム121を格納する。制御プログラム121は、シートベルトの動作を制御することによりシートベルトリトラクタとしての機能を提供する処理を実装している。CPU110が制御プログラム121を実行することにより、組込制御装置100はシートベルトリトラクタとして動作する。組込制御装置100はその他、車内ネットワーク200を介して他の装置と通信するためのインターフェースを適宜備え、CPU110はそのインターフェースを介して他装置と通信することができる。
車両をメンテナンスする作業者は、組込制御システム1000に対して保守作業を実施する際に、リプログラミング装置300を車内ネットワーク200へ接続する。リプログラミング装置300は作業者の操作にしたがって、組込制御装置100に対してリプログラミング開始を指示する命令を発行するとともに、制御プログラム121の更新版をその組込制御装置100に対して送信する。
図2は、CPU110の内部状態を説明する状態遷移図である。本発明において、リプログラミング装置300は、同種の組込制御装置を同時にリプログラミングするとき、それら同種の組込制御装置をグループ分けし、グループに対してリプログラミングを実施する。CPU110はこれに対応して、図2に示す3つの内部状態を有する。
リプログラミング装置300は組込制御装置100に対して、グループリプログラミングを開始する旨の命令を送信する。ここでいうグループとは、同種の組込制御装置をまとめたものであり、例えば各座席のシートベルトを制御する組込制御装置100のように、同一の制御プログラムを備えた組込制御装置のグループである。CPU110は、リプログラミング装置300から同命令を受信すると、グループリプログラミング終了待ち状態となる。この状態は、同一のグループに属する全ての組込制御装置100についてリプログラミングが完了するのを待機する状態である。CPU110は、本状態にある間は同一グループに属する他の組込制御装置100との間で、制御プログラム121が互いに整合しているか否かについての診断を一時中断する。
リプログラミング装置300は、グループリプログラミング開始命令を送信した後、同一グループに属する各組込制御装置100に対して順次、リプログラミングを開始するよう指示する。その指示を受け取ったCPU110は、リプログラミング装置300から制御プログラム121の更新版を受け取って更新する。CPU110は、自端末のリプログラミングを実施している間は、リプログラミング中状態となる。CPU110は、本状態にある間はリプログラミング以外の動作を停止する。CPU110は、リプログラミングが完了するとその旨をリプログラミング装置300へ通知するとともに、グループリプログラミング終了待ち状態へ遷移する。
CPU110は、同一グループに属する全ての組込制御装置100のリプログラミングが完了したことを検出すると、通常状態(すなわちリプログラミングを開始する前の状態)に遷移する。具体的な検出手法については後述する。
図3は、組込制御システム1000がリプログラミングを実施する過程を説明するシーケンス図である。記載の便宜上、2つの組込制御装置100をそれぞれ第1ECUおよび第2ECUと表記した。以下図3の各ステップについて説明する。
(図3:ステップS300)
第1および第2ECUは、リプログラミングを開始する前(すなわち図2の通常状態)において、相互に通信して制御プログラム121が互いに整合しているか否かを周期的にチェックしている。制御プログラム121が互いに整合しているか否かは、例えばバージョン番号が同一であるか否かを確認することによりチェックすることができるが、これに限られるものではない。例えば制御プログラム121のハッシュ値を求めてその値が互いに一致するか否かを確認することにより、制御プログラム121が互いに同一であるか否かをチェックすることができる。あるいは、例えば運転席用の制御プログラム121と助手席用の制御プログラム121はバージョン番号の末尾の添字のみが異なる、などのような所定の対応関係がある場合は、その対応関係を満たしているか否かをチェックすることもできる。
(図3:ステップS301)
リプログラミング装置300は、リプログラミングを実施しようとしている各ECUに対して、グループリプログラミングを開始する旨を通知する。併せて、制御プログラミング121の整合性を相互にチェックするための診断処理を一時中断するよう指示する。その指示を受け取ったCPU110は、図2のグループリプログラミング終了待ち状態に遷移する。制御プログラミング121の整合性を相互にチェックするための診断処理以外の通信については、必ずしも中断する必要はない。
(図3:ステップS301:補足)
リプログラミング装置300は本ステップにおいて、同一のグループに属する各ECUに対して上記指示を送信する必要がある。各ECUが属するグループは、そのECUの制御対象に対応する。例えばCANネットワークにおいては、CANIDを用いて各ECUのグループを指定することができる。CPU110は、自身が属するグループIDをフラッシュROM120または図示しないRAM(Random Access Memory)などの記憶装置に格納しておくことができる。
(図3:ステップS302)
リプログラミング装置300は、まず第1ECUに対してリプログラミングを開始するよう指示する。第1ECUのCPU110は、その指示を受け取ると、リプログラミング装置300から制御プログラム121の更新版を受け取り、フラッシュROM120に書き込む。CPU110はこの間、図2のリプログラミング中状態となる。
(図3:ステップS303)
第1ECUのCPU110は、リプログラミング装置300に対して、リプログラミングが完了した旨を通知する。これにより第1ECUのCPU110は、図2のグループリプログラミング終了待ち状態となる。
(図3:ステップS304)
リプログラミング装置300の操作者は、第1ECUのリプログラミングを完全に反映するため、第1ECUを再起動する。例えば、リプログラミング装置300を介してその旨の命令を第1ECUに対して発行し、第1ECUのCPU110がその命令にしたがって第1ECUを再起動してもよいし、車両のイグニッションスイッチをいったんOFFして再びONすることにより、組込制御システム1000全体を再起動してもよい。いずれの場合であっても、第1ECUのCPU110はグループリプログラミング終了待ち状態を維持する。例えば、CPU110が状態遷移する毎に、現在の状態を表すフラグをCPU110からフラッシュROM120に書き込んでこれを保持することにより、これを実現することができる。
(図3:ステップS305〜S307)
リプログラミング装置300は、第2ECUに対してステップS302と同様にリプログラミング開始を指示する(S305)。第2ECUのCPU110は第1ECUと同様にリプログラミングを実施し、完了した旨をリプログラミング装置300へ通知する(S306)。操作者は第1ECUと同様に第2ECUを再起動する(S307)。
(図3:ステップS308)
リプログラミング装置300は、同一グループに属する全ての組込制御装置100(ここでは第1および第2ECU)についてリプログラミングが完了すると、その旨を第1および第2ECUに対して通知する。各ECUのCPU110はその通知を受け取ると、図2の通常状態へ遷移する。リプログラミング装置300から各ECUに対してグループリプログラミング完了を通知する以外の手段により各ECUがグループリプログラミング完了を把握する手法としては、例えば以下のようなものが考えられる。
(図3:ステップS308:変形例)
各ECUが再起動して動作を開始するとき、初期化パケットを車内ネットワーク200に対して発信する。各ECUのリプログラミングを完了する毎に必ずそのECUを再起動するというルールを定めておけば、初期化パケットを受信した回数をカウントすることによってリプログラミングが完了したECUの台数を各ECUのCPU110が把握することができる。そこで、同一グループに属するECUの台数をあらかじめフラッシュROM120内に格納しておき、グループリプログラミング終了待ち状態の間に初期化パケットを受信した回数がその台数(あるいは自端末を除く台数)に達した時点で、CPU110はグループリプログラミングが完了したと判断することができる。本手法は、後述するようにリプログラミング装置300からグループリプログラミング完了を通知する手法と併用することもできる。
<実施の形態1:まとめ>
以上のように、本実施形態1に係る組込制御システム1000において、組込制御装置100は、同一グループに属する全ての組込制御装置100についてリプログラミングが完了するまでは、他の組込制御装置100との間で制御プログラム121の整合性診断を一時中断する。これにより、同種の制御対象を制御する組込制御装置100がリプログラミングの過程において一時的に互いに異なる制御プログラム121を備えることとなっても、これを誤って不整合と判断することを回避できる。
また本実施形態1において、CPU110は、各ECUが再起動するとき発信するパケットの個数をカウントすることにより、同一グループに属する全ての組込制御装置100がリプログラミング完了したか否かを把握することができる。これにより、例えばリプログラミング装置300がステップS308において発信する通知が失敗した場合などにおいて、制御プログラム121の整合性診断を一時停止したままになることを防ぐことができる。
<実施の形態2>
実施形態1においては、リプログラミング装置300の操作者はリプログラミングを完了するため組込制御装置100または組込制御システム1000全体を再起動することを説明した。より簡易的な手順としてこれら再起動プロセスを省略することもできる。ただしその場合は、組込制御装置100が再起動したことを示す初期化パケットをカウントすることによりリプログラミングが完了した組込制御装置100の台数を把握することはできないので、他の手段を講じる必要がある。
実施形態1においては、グループリプログラミングが完了した旨の通知をリプログラミング装置300から各組込制御装置100に対して送信することを説明した。これに代えて、同一グループに属する各組込制御装置100が相互にリプログラミングが完了したか否かを確認することにより、グループリプログラミングが完了したか否かを組込制御装置100自身(すなわちCPU110)が判断することもできる。具体的には以下のような手法が考えられる。これら手法を用いることにより、リプログラミング装置300から各組込制御装置100に対してS308の通知を送信することができない、またはこれを省略する場合においても、実施形態1と同様の効果を発揮することができる。
(組込制御装置100がグループリプログラミング完了を判断する手法その1)
ステップS301において、リプログラミング装置300は各組込制御装置100に対して制御プログラミング121の整合性診断を一時中断するように指示するが、それより前のステップS300において各組込制御装置100が実施している相互通信そのものは中断する必要はない。すなわちこの相互通信は、リプログラミング過程においても継続させることができる。そこで各組込制御装置100のCPU110は、この相互通信において自身の状態(図2に示した各状態)を他装置に対して通知する。これにより、相互通信の相手方同士において、他装置の状態を把握することができる。
(組込制御装置100がグループリプログラミング完了を判断する手法その2)
CPU110は、自端末のリプログラミングが完了してグループリプログラミング終了待ち状態に移行した後、同一グループに属する他の組込制御装置100のリプログラミングが完了したか否かを個別に問い合わせる。これにより、各組込制御装置100は他装置の状態を把握することができる。
(組込制御装置100がグループリプログラミング完了を判断する手法:補足)
上記2手法を採用する場合において、同一のグループに属する全ての組込制御装置100がリプログラミング完了したか否かを各組込制御装置100のCPU110が判断するためには、同一グループに属する組込制御装置100のIDや台数などの値をあらかじめ各組込制御装置100のフラッシュROMなどに格納しておけばよい。
<実施の形態3>
本発明は上記した実施形態に限定されるものではなく、様々な変形例が含まれる。上記実施形態は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。例えば以下のような変形例が考えられる。
実施形態1〜2で説明した手法は、車両以外の機器を制御する組込制御システムにおいても適用することができる。この場合、車両のイグニッションスイッチをON/OFFすることに代えて、機器全体の電源などをON/OFFする必要があると考えられる。
実施形態1〜2においては、組込制御装置100はシートベルトの巻き取りを制御することを説明したが、その他の電気機器を制御する組込制御装置100においても同様の手法を適用することができる。
CPU110が制御プログラム121を更新する処理、図2に示す各状態、および制御プログラム121が整合しているか否かをチェックする機能は、別の制御プログラムとして実装することもできるし、CPU110本体の機能としてハードウェア上に実装することもできる。
100:組込制御装置、110:CPU、120:フラッシュROM、121:制御プログラム、200:車内ネットワーク、300:リプログラミング装置、1000:組込制御システム。

Claims (7)

  1. 電気機器の動作を制御する組込制御装置を複数有する組込制御システムであって、
    各前記組込制御装置はそれぞれ、
    制御プログラムを格納する記憶装置、
    前記制御プログラムを実行することにより前記制御を実施する演算装置、
    他の前記組込制御装置との間で車内ネットワークを介して通信する通信部、
    を備え、
    前記通信部は、前記制御プログラムを書き換えるよう指示する命令を受け取り、
    前記演算装置は、前記命令にしたがって前記制御プログラムを書き換えた後、前記車内ネットワークを介して接続されている他の前記組込制御装置が前記制御プログラムを書き換え終えるまでは、各前記組込制御装置間において前記制御プログラムが整合しているか否かをチェックする診断を一時中断する
    ことを特徴とする組込制御システム。
  2. 前記記憶装置は、各前記組込制御装置を区分するグループ番号を格納し、
    前記演算装置は、前記命令にしたがって前記制御プログラムを書き換えた後、同一の前記グループ番号を有する他の前記組込制御装置の全てが前記制御プログラムを書き換え終えるまでは、前記診断を一時中断する
    ことを特徴とする請求項1記載の組込制御システム。
  3. 前記演算装置は、前記命令にしたがって前記制御プログラムを書き換えた後、同一の前記グループ番号を有する他の前記組込制御装置との間で通信して前記制御プログラムを書き換え終える処理の状態についての応答を受け取ることにより、前記制御プログラムを書き換え終えたか否かを判断する
    ことを特徴とする請求項2記載の組込制御システム。
  4. 前記記憶装置は、同一の前記グループ番号を有する他の前記組込制御装置の台数をあらかじめ格納しており、
    前記演算装置は、同一の前記グループ番号を有する他の前記組込制御装置が再起動した旨の通信データを前記台数と同じ回数受信すると、同一の前記グループ番号を有する他の前記組込制御装置の全てが前記制御プログラムを書き換え終えたと判断する
    ことを特徴とする請求項2記載の組込制御システム。
  5. 前記組込制御システムは、前記制御プログラムを前記組込制御装置に対して転送するとともに前記命令を前記組込制御装置に対して送信することにより前記制御プログラムを書き換えるリプログラミング装置を有し、
    前記リプログラミング装置は、同一の前記グループ番号を有する全ての前記組込制御装置について前記制御プログラムを書き換えると、前記制御プログラムを書き換えた各前記組込制御装置に対してその旨を通知し、
    前記演算装置は、前記リプログラミング装置より前記通知を受け取ると、前記診断を再開する
    ことを特徴とする請求項2記載の組込制御システム。
  6. 前記組込制御システムは、第1および第2の前記組込制御装置を有し、
    前記第1および第2の組込制御装置は、それぞれ車両の運転席のシートベルトの動作と助手席のシートベルトの動作を制御し、
    前記第1および第2の組込制御装置が備える前記記憶装置は、前記シートベルトの動作を制御する処理を記述した同一の前記制御プログラムを格納する
    ことを特徴とする請求項1記載の組込制御システム。
  7. 前記演算装置は、各前記組込制御装置の前記制御プログラムのバージョン番号が互いに所定の関係にあるか否かをチェックすることにより、前記診断を実施する
    ことを特徴とする請求項1記載の組込制御システム。
JP2014086288A 2014-04-18 2014-04-18 組込制御システム Pending JP2015205555A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2014086288A JP2015205555A (ja) 2014-04-18 2014-04-18 組込制御システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014086288A JP2015205555A (ja) 2014-04-18 2014-04-18 組込制御システム

Publications (1)

Publication Number Publication Date
JP2015205555A true JP2015205555A (ja) 2015-11-19

Family

ID=54602799

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014086288A Pending JP2015205555A (ja) 2014-04-18 2014-04-18 組込制御システム

Country Status (1)

Country Link
JP (1) JP2015205555A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019123747A1 (ja) * 2017-12-19 2019-06-27 日立オートモティブシステムズ株式会社 自動車用電子制御装置及びその制御方法
KR102058366B1 (ko) 2015-09-08 2019-12-23 다이호야쿠힌고교 가부시키가이샤 축합 피리미딘 화합물 또는 그의 염

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102058366B1 (ko) 2015-09-08 2019-12-23 다이호야쿠힌고교 가부시키가이샤 축합 피리미딘 화합물 또는 그의 염
WO2019123747A1 (ja) * 2017-12-19 2019-06-27 日立オートモティブシステムズ株式会社 自動車用電子制御装置及びその制御方法
JP2019109745A (ja) * 2017-12-19 2019-07-04 日立オートモティブシステムズ株式会社 自動車用電子制御装置

Similar Documents

Publication Publication Date Title
US10489141B2 (en) Relay device, electronic control unit, and vehicle-mounted system
US11354114B2 (en) Updating system, electronic control unit, updating management device, and updating management method
CN107547327B (zh) 保护车辆的方法和***
US20180341476A1 (en) Software updating device, software updating system, and software updating method
JP5741480B2 (ja) 通信システム、中継装置及び電源制御方法
WO2016158547A1 (ja) プログラム書換装置及びプログラム書換方法
JP6165243B2 (ja) コンピュータネットワークにおいて車両搭載可能コントローラを動作させるための方法、車両搭載可能コントローラおよびデバイス
JP6147791B2 (ja) プログラム書換装置及びプログラム書換方法
US9569404B2 (en) In-vehicle controller and non-transitory tangible computer readable medium
US10365918B2 (en) Control means, in-vehicle program rewriting device equipped with same, and in-vehicle program rewriting method
US10379197B2 (en) Dongles for controlling vehicle drive assist systems
US20180232224A1 (en) Controller and control program updating method
US10250434B2 (en) Electronic control apparatus
JP2015205555A (ja) 組込制御システム
JP2001123874A (ja) 電子制御装置のプログラム書換システム及びメモリ書換装置
WO2011034052A1 (ja) 車両用電子制御装置
WO2017150233A1 (ja) 端末装置およびソフトウェア書き換えプログラム
KR101744998B1 (ko) 리프로그래밍 제어모듈 및 이를 이용한 리프로그래밍 시스템 및 방법
JP7230768B2 (ja) 電子制御装置、セッション確立プログラム及び制御プログラム
JP7411467B2 (ja) 電子制御装置及びプログラム書き換え制御方法
JP5867350B2 (ja) 車両用電子制御装置
JP2017047773A (ja) 通信システム、通信制御装置及び通信制御方法
JP2020061655A (ja) 通信システム
WO2019221118A1 (ja) 電子制御装置及びセッション確立プログラム
US20230267213A1 (en) Mitigation of a manipulation of software of a vehicle