JP2019074852A - 電子装置 - Google Patents

電子装置 Download PDF

Info

Publication number
JP2019074852A
JP2019074852A JP2017199386A JP2017199386A JP2019074852A JP 2019074852 A JP2019074852 A JP 2019074852A JP 2017199386 A JP2017199386 A JP 2017199386A JP 2017199386 A JP2017199386 A JP 2017199386A JP 2019074852 A JP2019074852 A JP 2019074852A
Authority
JP
Japan
Prior art keywords
operation program
update
vehicle
predetermined
unit
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
JP2017199386A
Other languages
English (en)
Inventor
淳史 倉内
Junji Kurauchi
淳史 倉内
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.)
Honda Motor Co Ltd
Original Assignee
Honda Motor Co 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 Honda Motor Co Ltd filed Critical Honda Motor Co Ltd
Priority to JP2017199386A priority Critical patent/JP2019074852A/ja
Publication of JP2019074852A publication Critical patent/JP2019074852A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Stored Programmes (AREA)

Abstract

【課題】電子装置において、動作プログラムの不正書き換えの可能性を低減しつつ適正な書き換えを適度に許容すること。【解決手段】通信装置110と、動作プログラムが保存される書き換え可能な記憶装置114と、前記記憶装置に保存された前記動作プログラム140を、前記通信装置を介して受信される新しい動作プログラムである更新プログラムにより更新するよう構成された処理装置112と、を備え、前記処理装置は、受信された前記更新プログラムにより前記動作プログラムの更新を行う動作プログラム更新部152と、自装置が車載状態であるか否かを判断する車載状態判断部156と、を備え、前記動作プログラム更新部は、自装置に対し所定の設定が行われた後は、自装置が車載状態でないときは、前記動作プログラムの更新を行わず、自装置が車載状態であるときは、1回に限り前記動作プログラムの更新動作を行うよう構成されている。【選択図】図1

Description

本発明は、動作プログラムが実行される電子装置であって、外部装置から配信される新しいプログラムにより動作プログラムを書き換えることのできる電子装置に関する。
従来、動作プログラムの書き換えが可能な車載電子装置として、不適切な状況やタイミングで、無線通信により配信される新しい動作プログラムにより現在の動作プログラムの書き換えが行われるのを防止することを目的とするものが知られている(特許文献1)。この装置では、自車両の現在位置がディーラ敷地内等の所定の書換え許可領域内であり、現在の日時が所定の許可時間帯に含まれていることを条件として、新しい動作プログラムへの書き換えを実行する。
しかしながら上記従来の車載電子装置では、書換え許可領域や許可時間等の情報が一旦解読されてしまうと、動作プログラムの書き換えが際限なく行われ、悪意のある者等の不正改造により、製造者の保証範囲を超える危険な動作が行われることとなり得る。一方で、車両が工場出荷された後は車載電子装置の動作プログラムを一切書き換えられないこととしたのでは、些細な不具合の解消や些細なアップグレードを行うだけのために電子装置の交換等を行うことが必要となる。その結果、電子装置又は車両としての利便性ないし商品性が低下し得る。
特開2016−22498号公報
上記背景より、動作プログラムの不正書き換えの可能性を更に低減しつつ、動作プログラムの適正な書き換えを適度に許容することのできる電子装置の実現が望まれている。
本発明の一の態様は、通信装置と、動作プログラムが保存される書き換え可能な記憶装置と、前記記憶装置に保存された前記動作プログラムを、前記通信装置を介して受信される新しい動作プログラムである更新プログラムにより更新するよう構成された処理装置と、を備える電子装置である。前記処理装置は、受信された前記更新プログラムにより前記動作プログラムの更新を行う動作プログラム更新部と、自装置が車載状態であるか否かを判断する車載状態判断部と、を備え、前記動作プログラム更新部は、自装置に対し所定の設定が行われた後は、自装置が車載状態でないときは、前記動作プログラムの更新を行わず、自装置が車載状態であるときは、1回に限り前記動作プログラムの更新動作を行う、よう構成されている。
本発明の他の態様は、通信装置と、動作プログラムが保存される書き換え可能な記憶装置と、前記記憶装置に保存された前記動作プログラムを、前記通信装置を介して受信される新しい動作プログラムである更新プログラムにより更新するよう構成された処理装置と、を備える電子装置であって、前記処理装置は、受信された前記更新プログラムにより前記動作プログラムの更新を行う動作プログラム更新部と、自装置が車載状態であるか否かを判断する車載状態判断部と、自装置の現在位置を取得する現在位置取得部と、を備え、前記動作プログラム更新部は、自装置に対し所定の設定が行われた後は、自装置が車載状態でないときは、前記動作プログラムの更新を行わず、自装置が車載状態であって、自装置の現在位置が所定の地理的位置のいずれかであるときに限り、当該所定の地理的位置に関連付けられた所定の回数を限度として前記動作プログラムの更新動作を行う、よう構成されている。
本発明の他の態様によると、前記更新プログラムの送信元が所定の認証を受けた外部装置であるか否かを判断する装置認証判断部を更に備え、前記動作プログラム更新部は、前記更新プログラムの送信元が所定の認証を受けた装置であるときは、更新回数の制限を設けることなく、前記動作プログラムの更新を行うよう構成されている。
本発明の他の態様によると、前記車載状態判断部は、自装置が他の車載装置と接続されていることが前記通信装置を介して確認できないとき、及び又は、自装置にセンサが接続されている場合に当該センサの全部又は一部からの入力が正常値でないときは、自装置が車載状態でないものと判断する。
本発明の他の態様によると、自装置が搭載されている車両の現在の車速を所定の時間間隔で取得する車速取得部を備え、前記現在位置取得部は、前記現在の車速が所定の値以下であるときは、前記現在の車速が所定の値を超えているときに比べて短い周期で現在位置を取得して更新するよう構成されている。
本発明の第1の実施形態に係る電子装置の構成を示す図である。 第1の実施形態に係る電子装置が実行する動作プログラム更新処理1の手順を示すフロー図である。 本発明の第2の実施形態に係る電子装置の構成を示す図である。 第2の実施形態に係る電子装置における、書込み管理テーブルの構成の一例を示す図である。 第2の実施形態に係る電子装置が実行する動作プログラム更新処理2の手順を示すフロー図である。
以下、図面を参照して本発明の実施形態について説明する。
[第1実施形態]
まず、本発明の第1の実施形態に係る電子装置について説明する。図1は、本発明の第1の実施形態に係る電子装置の構成を示す図である。本電子装置100は、例えば内燃機関(不図示)の動作を制御する電子制御装置(ECU、Electronic Control Unit)であり、車両102に搭載されている。電子装置100は、通信装置110と、処理装置112と、記憶装置114と、を有する。
通信装置110は、車内LAN(Local Area Network)を構成する車載ネットワークバス(車載NWバス)120を介して、他の電子制御装置(ECU)122、124、126と通信する。また、通信装置110は、車載NWバス120を介して、当該車載NWバス120に設けられたコネクタ128に接続される外部装置130とも通信することができる。
ここで、車載NWバス120は、例えば、CAN(Controller Area Network)通信規格に準拠した通信をサポートするCANバスである。また、通信装置110は、例えばCAN通信を行う送受信機(不図示)で構成される。
ECU122は、例えば、GPS受信機132を備え、GPS電波を受信して車両102の現在位置に関する情報を取得する。また、ECU124は、例えば、車両102に設けられた車速センサ134に接続されて、車両102の現在の車速を検出する。また、ECU126は、無線装置136を備えて、車両102の外部に設けられた例えば外部サーバ180等と無線通信を行う。
ECU126は、例えば無線装置136を介して外部サーバ180等から新しい動作プログラムを受信すると、例えば同時に受信される当該新しい動作プログラムの送信先であるECUの識別IDにより、当該送信先であるECUを特定する。そして、ECU126は、当該特定したECUへ受信した新しい動作プログラムを送信する。
なお、ECU122、124、126は一例であって、車載NWバス120には、これら以外の種々のECUが車載装置として接続されるものとすることができる。
外部装置130は、車載NWバス120を介してCAN通信を行う任意の装置とすることができ、電子装置100に対し新しい動作プログラムを送信する機能を備え得る。
記憶装置114は、例えばEEPROM(Electrically Erasable Programmable Read-Only Memory)などの不揮発性メモリで構成される。記憶装置114は、後述する処理装置112において実行される動作プログラム140を記憶する。また、記憶装置114は、電子装置100を搭載した車両102が、製造工場から出荷されたこと(又は運用が開始されたこと)を示す出荷フラグ142と、当該製造工場からの出荷後に動作プログラムが書き換えられた回数(更新回数)を示す書換えカウント144を記憶する。
出荷フラグ142は、例えば工場における車両102の出荷の際に、工場から出荷されたこと(すなわち、出荷済みであること)又は運用が開始されたことを示す値にセットされる。また、書換えカウント144は、例えば工場における車両102の出荷の際にゼロにリセットされる。ここで、出荷フラグ142に車両102が工場から出荷されたこと又は運用が開始されたことを示す値をセットすることは、電子装置100に所定の設定を行うことに対応する。
なお、工場からの出荷後に、例えばメインテナンスのために車両102が整備工場等に戻ってきたときには、出荷フラグ142を出荷前であることを示す値にリセットすると共に、書換えカウント144をゼロにリセットするものとしてもよい。この場合には、その後、当該工場から車両102を出荷するときに、再び、出荷フラグ142を、上記出荷されたこと又は運用が開始されたことを示す値にセットするものとすることができる。
なお、出荷フラグ142及び書換えカウント144のセット及びリセットは、例えば、所定の認証を受けた外部装置を外部装置130としてコネクタ128に接続し、当該外部装置からのコマンドにより、処理装置112を介して行うものとすることができる。このような、所定の認証を受けた外部装置には、例えば、米国カリフォルニア州政府の一機関であるARB(Air Resources Board)が規定する基準に準拠したGST(General Scan Tool)が含まれる。
なお、以下において「所定の認証を受けた装置」というときは、上記GSTを含む、所定の機関の認証を受けた外部装置及び又は所定の機関が規定する基準に準拠していることが認証された外部装置をいうものとする。また、コネクタ128を介して車載NWバス120に接続される外部装置130に限らず、ECU126を介して車載NWバス120と通信可能に接続される外部サーバ180も、「所定の認証を受けた装置」となり得る。
処理装置112は、例えば、CPU(Central Processing Unit)等のプロセッサ、管理プログラムが書き込まれたROM(Read Only Memory)、データの一時記憶のためのRAM(Random Access Memory)等を有するコンピュータである。そして、処理装置112は、機能要素(又は機能ユニット)として、車両制御部150と、動作プログラム更新部152と、装置認証判断部154と、車載状態判断部156と、を有する。
処理装置112が備えるこれらの機能要素は、例えば、コンピュータである処理装置112が管理プログラムを実行することにより実現される。なお、管理プログラムは、上述したROMのほか、コンピュータ読み取り可能な任意の記憶媒体に記憶させておくことができる。
上記に代えて、処理装置112が備える上記機能要素の全部又は一部を、それぞれ一つ以上の電子回路部品を含むハードウェアにより構成することもできる。
また、処理装置112には、例えば処理装置112を構成するCPUの入出力ポート(不図示)を介して、センサ170、172、174が接続されている。センサ170、172、174は、それぞれ、例えば、処理装置112が内燃機関の動作を制御するのに用いる吸気温度センサ、冷却水温度センサ、気圧センサである。また、処理装置112には、内燃機関のスロットルを駆動するアクチュエータや点火プラグも接続され得る(いずれも不図示)。なお、上記は一例であって、処理装置112には、更に多くの種々のセンサ、アクチュエータ等のデバイスが接続されるものとすることができる。
車両制御部150は、記憶装置114が保存する動作プログラム140を実行することにより、センサ170等を用いて所定の車両制御(例えば内燃機関の動作制御)を行う。
装置認証判断部154は、通信装置110を介して新しい動作プログラムが受信されたときに、当該新しい動作プログラムの送信元(例えば、外部サーバ180や外部装置130。以下同じ。)が所定の認証を受けた装置であるか否かを判断する。例えば、装置認証判断部154は、新しい動作プログラムを受信する際に、当該新しい動作プログラムに付して送信された送信元装置の認証コードを、予め記憶装置114記憶した認証コードと照合することにより、上記判断を行うことができる。装置認証判断部154は、上記判断の結果である認証判断結果を、後述する動作プログラム更新部152へ送信する。
車載状態判断部156は、自装置である電子装置100が車載状態であるか否か、すなあち、車両102の制御を行い得る状態で当該車両102に搭載されているか否かを判断する。例えば、車載状態判断部156は、通信装置110を介して他の車載装置、例えばECU122〜126の全部又は所定の一部と通信できるときは、自装置である電子装置100は車両102に正常に搭載された状態(車載状態)であると判断する。すなわち、自装置である電子装置100が他の車載装置と接続されていることが、通信装置110を介して確認され得るときは、車載状態判断部156は、電子装置100が車載状態であると判断する。
また、車載状態判断部156は、電子装置100が車載状態でないときは、その電子装置100は車両102から取り外された状態(単体状態)であると判断する。これに加えて又はこれに代えて、車載状態判断部156は、センサ170〜174の全部又は所定の一部からの入力が、車両102の通常動作における所定範囲の正常値であるときは、電子装置100が車載状態であると判断してもよい。
動作プログラム更新部152は、通信装置110を介して新しい動作プログラムを受信する。ここで、新しい動作プログラムは、例えば、送信されるデータが新しい動作プログラムを含むものであることを示すデータ識別コード及び当該データの送信元である装置の装置認証コードに続いて送信されてくるものとする。なお、車載NWバス120を介した通信がCAN通信規格に従って行われる場合には、新しい動作プログラムは、複数のデータパケットに分割されて送信される。ただし、他の通信規格を用いる場合には、新しい動作プログラムは、一つの連続するデータとして送信され得る。新しい動作プログラムが複数のデータパケットに分割されて送信される場合には、上記データ識別コード及び認証コードは、少なくとも最初に送信されるデータパケットに含まれているものとすることができる。
動作プログラム更新部152は、通信装置110を介してデータを受信すると、当該受信したデータに、新しい動作プログラムを含むものであることを示すデータ識別コードが含まれているか否かを判断する。そして、当該データ識別コードが含まれているときは、動作プログラム更新部152は、装置認証判断部154により、新しい動作プログラムの送信元が所定の認証を受けた装置であるか否かを判断する。この判断は、受信したデータに含まれる装置認証コードに基づいて行うことができる。そして、動作プログラム更新部152は、受信した新しい動作プログラムの送信元が所定の認証を受けた装置であるときは、受信した新しい動作プログラムにより、記憶装置114に現在記憶されている動作プログラム140を書き換える。
一方、受信した新しい動作プログラムの送信元が所定の認証を受けた装置でないときは、動作プログラム更新部152は、車載状態判断部156により自装置である電子装置100が車載状態か単体状態かを判断する。そして、車載状態であるときは、動作プログラム更新部152は、書換えカウント144を参照し、当該書換えカウント144がゼロであるときは、受信した新しい動作プログラムにより、記憶装置114に現在記憶されている動作プログラム140を書き換える。
一方、受信した新しい動作プログラムの送信元が所定の認証を受けた装置でない場合において、電子装置100が車載状態であって書換えカウント144がゼロでないとき又は電子装置100が単体状態であるときは、動作プログラム更新部152は、記憶装置114に現在記憶されている動作プログラム140を維持する。すなわち、受信した新しい動作プログラムによる書き換えは行わない。
ここで、通信装置110を介して受信される新しい動作プログラムを、更新プログラムともいうものとする。すなわち、通信装置110を介して受信される新しい動作プログラムは、更新プログラムに対応する。
上述の構成を有する電子装置100は、当該電子装置100が搭載された車両102の工場出荷の後では、その後に車両102から切り離されて単体状態になると、通信装置110を介して受信される新しい動作プログラム(更新プログラム)による動作プログラム140の書き換えを行わない。ここで、単体状態とは、上述の通り、自装置である電子装置100が車両102内の他のECU124等の全部又は所定の一部と通信可能に接続されておらず、及び又は車両102に設けられたセンサ170等の全部又は所定の一部から所定の正常値範囲の入力が得られない状態をいう。
一般に、悪意のある者による動作プログラムの書き換えは、電子装置と他の車載装置との接続を断った状態(すなわち、単体状態)で行われることが多い。これに対し、電子装置100では、上記のとおり、単体状態にあるときは動作プログラム140の書き換え動作(即ち、更新動作)を実行しない。このため、電子装置10では、動作プログラム140の不正書き換えが非常に困難となり、当該不正書き換えの可能性が効果的に低減される。
また、電子装置100は、車両102が工場出荷された後は、車載状態が維持されていれば、1回に限り、通信装置110を介して受信される新しい動作プログラム(更新プログラム)による動作プログラム140の書き換え動作(更新動作)を行う。ここで、車載状態とは、上述のとおり、自装置である電子装置100が車両102内の他のECU124等の全部又は所定の一部と通信可能に接続されており、及び又は車両102に設けられたセンサ170等の全部又は所定の一部から所定の正常値範囲の入力が得られる状態をいう。
これにより、例えば電子装置100の不具合やアップグレードを行うための動作プログラム140の適正な書き換えを行う機会が確保される。その結果、電子装置100では、従来技術に比べて動作プログラム140の不正書き換えの可能性を更に低減しつつ、動作プログラム140の適正な書き換えを適度に許容することができる。
さらに、電子装置100は、新しい動作プログラムの送信元が所定の認証を受けた装置であるか否かを判断し、所定の認証を受けた装置であるときは、単体状態であるか車載状態であるかに関わらず、且つ書き換え回数(更新回数)の制限なく、動作プログラム140の書き換え動作(更新動作)を行う。これにより、電子装置100では、所定の認証を受けた正規の装置を用いる限りにおいて動作プログラム140の書き換えを自由に行うことができる。従って、例えば車両102の整備工場等において動作プログラム140の書き換えによる本格的なアップグレードを行うことができ、電子装置100ないし当該電子装置100を搭載した車両102の商品性が高く維持される。
ここで、悪意のある者は、記憶装置114が記憶する書換えカウント144をゼロに不正に書き換えることで、動作プログラム140の書き換えを何度でも行い得る。しかしながら、記憶装置114の記憶領域内(例えば数ギガバイトの領域内)における書換えカウント144の保存場所を特定することは極めて困難であるため、電子装置100に対し上記の方法で不正書き換えを行うことは実質上不可能である。
次に、処理装置112における動作プログラムの更新処理(動作プログラム更新処理1)の手順について、図2に示すフロー図に従って説明する。図2に示す動作プログラム更新処理1は、電子装置100の電源がオンされたときに開始し、オフされたときに終了する。なお、この動作プログラム更新処理1は、後述するステップS112における動作プログラム140の書き換え動作を除き、処理装置112の車両制御部150による動作プログラム140の実行と並行して実行され得る。
処理を開始すると、まず、動作プログラム更新部152は、通信装置110を介して新しい動作プログラム(すなわち、更新プログラム)を含むデータを受信したか否かを判断する(S100)。そして、受信していないときは(S100、NO)、ステップS100に戻って、新しい動作プログラムを含むデータが受信されるのを待機する。なお、この判断は、上述したように、当該受信したデータに含まれるデータ識別コードに基づいて行うことができる。
一方、新しい動作プログラムを含むデータを受信したときは(S100、YES)、動作プログラム更新部152は、記憶装置114が記憶する出荷フラグ142が、出荷済みであることを示す値(又は運用が開始されたことを示す値。以下同じ。)にセットされているか否かを判断する(S102)。そして、出荷済みであることを示す値にセットされているときは(S102、YES)、動作プログラム更新部152は、装置認証判断部154により、当該受信したデータの送信元装置が所定の認証を受けた装置であるか否かを判断する(S104)。この判断は、上述したように、当該受信したデータに含まれる装置認証コードに基づいて行うことができる。
そして、送信元装置が所定の認証を受けた装置でないときは(S104、NO)、動作プログラム更新部152は、車載状態判断部156により、自装置(すなわち、電子装置100)が車載状態であるか否かを判断する(S106)。この判断は、上述したように、通信装置110を介して他の車載装置と通信できるか否か、及び又はセンサ170等からの入力が正常値であるか否かに基づいて行うことができる。
そして、自装置が車載状態でないとき(S106、NO)、すなわち、単体状態であるときは、動作プログラム更新部152は、動作プログラム140の書き換えを行うことなく、ステップS100に戻って処理を繰り返す。一方、自装置が車載状態であるときは(S106、YES)、動作プログラム更新部152は、記憶装置114が記憶する書換えカウント144がゼロであるか否かを判断する(S108)。そして、書換えカウント144がゼロであるときは(S108、YES)、動作プログラム更新部152は、書換えカウント144を1に設定する(S110)。そして、動作プログラム更新部152は、上記受信した新しい動作プログラムにより、記憶装置114が現在記憶している動作プログラム140を書き換え(S112)、ステップS100に戻って処理を繰り返す。
一方、ステップS108において書換えカウント144がゼロでないときは(S108、NO)、動作プログラム更新部152は、動作プログラム140を書き換えることなく、ステップS100に戻って処理を繰り返す。
また、ステップS104において、送信元装置が所定の認証を受けた装置であるときは(S104、YES)、動作プログラム更新部152は、受信した新しい動作プログラムにより動作プログラム140を書き換えた後(S112)、ステップS100に戻って処理を繰り返す。
また、ステップS102において、出荷フラグ142が、出荷済みであることを示す値にセットされていないとき(S102、NO)、すなわち、出荷前であることを示す値にリセットされているときは、動作プログラム更新部152は、受信した新しい動作プログラムにより動作プログラム140を書き換えた後(S112)、ステップS100に戻って処理を繰り返す。
[第2実施形態]
次に、本発明の第2の実施形態に係る電子装置について説明する。図3は、本発明の第2の実施形態に係る電子装置の構成を示す図である。なお、図3においては、第1の実施形態について示した図1と同じ構成要素については、図1と同じ符号を用いるものとし、上述した第1の実施形態における説明を援用するものとする。
本発明の第2の実施形態に係る電子装置300は、車両302に搭載される。電子装置300は、第1の実施形態に係る電子装置100と同様の構成を有するが、処理装置112及び記憶装置114に代えて処理装置312及び記憶装置314を備える点が異なる。処理装置312は、処理装置112と同様の構成を有するが、動作プログラム更新部152に代えて動作プログラム更新部352を備える点が異なると共に、現在位置取得部358と車速取得部360とを更に備える点が異なる。また、記憶装置314は、記憶装置114と同様の構成を有するが、書換えカウント144に代えて、書換え管理テーブル344が保存される点が異なる。
書換え管理テーブル344は、予め定められた複数の所定の地理的位置をそれぞれ示す複数の位置情報と、車両302に搭載されている電子装置300が上記各位置情報の示す地理的位置において動作プログラムの書き換えを行い得る上限回数と、が関連付けて記憶されている。これらの位置情報及び上限回数は、車両302が工場(例えば製造工場及び又は整備工場)から出荷される際に、例えば所定の認証を受けた装置により、出荷フラグ142に出荷済みであることを示す値(又は運用が開始されたことを示す値。以下同じ。)がセットされることに加えて、書換え管理テーブル344に書き込まれる。
また、書換え管理テーブル344には、各位置情報に関連付けて、工場から出荷された後に各位置情報の示す地理的位置において既に行われた、電子装置300における動作プログラム140の書き換え実行回数が保存される。当該実行回数は、車両302が工場から出荷される際に、例えば所定の認証を受けた装置によりゼロにリセットされ、その後は、後述する動作プログラム更新部352が、動作プログラム140の書き換えを行うたびに、1ずつインクリメントされる。
図4は、書換え管理テーブル344の構成の一例を示す図である。図示の書換え管理テーブル344には、最左列に示す位置情報に対し、左から2列目の書換え上限回数、及び最右列の書換え実行回数が関連付けられて記憶されている。上から2行目、3行目に記録されている位置情報は、例えば車両302のディーラの整備場であり、これらのディーラでは、それぞれ、書換え上限回数が例えば4回及び6回に設定されている。また、2行目及び3行目の書換え実行回数欄の数字から、これらのディーラ整備場においてはこれまで動作プログラムの書換えが0回及び2回実行されたことが判る。また、上から4行目に記録されている位置情報は、例えば海外出荷のための港湾駐車施設であり、当該施設では、書換え上限回数が2回に設定されており、当該施設内ではこれまでの書換え実行回数がゼロとなっている。
書換え管理テーブル344に保存される位置情報は、図4に示す例のほか、例えば、車両302のユーザの自宅、ユーザが車両302を購入した販売店又は販売サービス拠点など、ユーザが指定した地理的位置を示す情報とすることができる。この場合、ユーザは、例えば、車両302の発注の際に、又は車両302のメインテナンスを行う際に、ユーザが動作プログラム140の書き換えを許容する所望の地理的位置を指定するものとすることができる。これにより、例えば、製造者又はメインテナンスを行うディーラ等は、工場において車両302を製造する際に、又は整備工場において車両302のメインテナンスを行う際に、ユーザが指定したユーザ所望の地理的位置を、書換え管理テーブル344に書き込むことができる。
上記に代えて又は上記に加えて、ユーザは、車載ナビゲーション装置(不図示)に表示される地図上の地点を指定して、当該指定した地点の位置情報を書換え管理テーブル344に保存するものとすることができる。この場合、悪意のある第三者により書き換え管理テーブル344に位置情報が登録(保存)されないよう、上記地図上での地点指定に際しては、セキュリティコードの入力等により、ユーザ本人の操作であることの確認を行うことが望ましい。なお、ユーザが指定した地理的位置に対する書換え上限回数は、製造者が予め規定するものとすることもできるし、ユーザが指定するものとすることもできる。
処理装置312(図3)の動作プログラム更新部352、現在位置取得部358、及び車速取得部360は、上述した車載状態判断部156、装置認証判断部154と同様に、コンピュータである処理装置312が、ROM(不図示)等に記憶された管理プログラムを実行することにより実現される機能要素である。なお、動作プログラム更新部352、現在位置取得部358、車速取得部360は、上述した車載状態判断部156、装置認証判断部154と同様に、それぞれ一つ以上の電子回路部品を含むハードウェアにより構成することもできる。
現在位置取得部358は、所定の時間間隔で、ECU122から車両102の現在位置に関する情報を繰り返し取得する。また、車速取得部158は、所定の時間間隔で、ECU124から車両102の現在の車速を繰り返し取得する。
動作プログラム更新部352は、動作プログラム更新部152と同様の動作を行うが、複数の所定の地理的位置においては、それぞれの地理的位置に関して予め定められた上限回数を限度として、動作プログラムの書き換え動作を行い得る点が異なる。すなわち、動作プログラム更新部352は、出荷フラグ142が出荷済みであることを示す値にセットされており、通信装置110を介して受信した新しい動作プログラムの送信元が所定の認証を受けた装置でなく、且つ、自装置(すなわち、電子装置300)が車載状態であるときは、車両302の現在位置が書換え管理テーブル344に保存されているいずれかの位置情報が示す地理的位置と合致するときに、当該位置情報に関連付けられた上限回数を限度として、動作プログラムの書き換えを行う。
なお、車両302の現在位置が上記いずれかの位置情報が示す地理的位置と合致するときに、現在行おうとする動作プログラムの書き換えが、当該位置情報に関連付けられた上限回数の範囲内の書き換えであるか否かは、書換え管理テーブル344において当該位置情報に関連付けて保存されている書き換え実行回数に基づいて判断することができる。
上記において、車両302の現在位置は、上述したように、現在位置取得部358により所定の時間間隔で取得される。ここで、現在位置取得部358は、車速取得部360が取得した現在の車両302の車速が所定の値(例えば、10km/h)以下であるときは、車速が当該所定の値を超える場合よりも短い時間間隔で、現在位置を取得する。
書換え管理テーブル344に保存された位置情報が工場建屋内の地理的位置を示しているような場合に車両302が当該工場建屋に入ると、GPS受信機132がGPS信号を受信できなくなって、現在位置取得部358がECU122から現在位置情報を突然取得できなくなってしまう場合があり得る。本実施形態では、上記のように、車両302が工場建屋に接近して車速を所定の値以下に低下させたときには、より短い周期で現在位置が取得される。その結果、現在位置を取得できなくなる直前に取得される現在位置は、工場建屋により近い位置を示すこととなり、車両302が上記位置情報が示す工場建屋内に入ったことを精度よく検知することが可能となる。
上述の構成を有する第2の実施形態に係る電子装置300は、第1の実施形態に係る電子装置と同様の構成を有するが、車両302に搭載されて出荷された後、車載状態である場合には、動作プログラム140の書き換えを、1回のみに一律に限定することなく、予め定められた複数の所定の地理的位置においては、当該地理的位置にそれぞれ関連付けられた所定の上限回数まで許容する。
このため、電子装置300では、電子装置100と同様に従来技術に比べて不正書き換えの可能性を更に低減しつつも、動作プログラムの適正な書き換えを行う機会を電子装置100の場合よりも多く確保して、電子装置300ないし当該電子装置300を搭載した車両302の利便性や商品性を更に向上することができる。
次に、処理装置312における動作プログラムの更新処理(動作プログラム更新処理2)の手順について、図5に示すフロー図に従って説明する。図5に示す動作プログラム更新処理2は、電子装置300の電源がオンされたときに開始し、オフされたときに終了する。なお、この動作プログラム更新処理2は、後述するステップS214における動作プログラム140の書き換え動作を除き、処理装置312の車両制御部150による動作プログラム140の実行と並行して実行され得る。
処理を開始すると、まず、動作プログラム更新部352は、通信装置110を介して新しい動作プログラム(更新プログラム)を含むデータを受信したか否かを判断する(S200)。そして、受信していないときは(S200、NO)、ステップ200に戻って、新しい動作プログラムを含むデータが受信されるのを待機する。なお、この判断は、第1の実施形態に係る動作プログラム更新処理1のステップS100(図2)と同様に、上記受信したデータに含まれるデータ識別コードに基づいて判断することができる。
一方、新しい動作プログラムを含むデータを受信したときは(S200、YES)、動作プログラム更新部352は、記憶装置314が記憶する出荷フラグ142が、出荷済みであることを示す値(又は運用が開始されたことを示す値。以下同じ。)にセットされているか否かを判断する(S202)。そして、出荷済みであることを示す値にセットされているときは(S202、YES)、動作プログラム更新部352は、装置認証判断部154により、当該受信したデータの送信元装置が所定の認証を受けた装置であるか否かを判断する(S204)。この判断は、動作プログラム更新処理1のステップS104(図2)と同様に、上記受信したデータに含まれる装置認証コードに基づいて行うことができる。
そして、送信元装置が所定の認証を受けた装置でないときは(S204、NO)、動作プログラム更新部352は、車載状態判断部156により、自装置(すなわち、電子装置300)が車載状態であるか否かを判断する(S206)。この判断は、動作プログラム更新処理1のステップS106(図2)と同様に、通信装置110を介して他の車載装置と通信できるか否か、及び又はセンサ170等からの入力が正常値であるか否かに基づいて行うことができる。
そして、自装置が車載状態でないとき(S206、NO)、すなわち、単体状態であるときは、動作プログラム更新部352は、動作プログラム140の書き換えを行うことなく、ステップS200に戻って処理を繰り返す。一方、自装置が車載状態であるときは(S206、YES)、動作プログラム更新部352は、現在位置取得部358が取得した車両302の現在位置が、記憶装置314の書換え管理テーブル344に保存されているいずれかの位置情報が示す所定の地理的位置と一致するか否かを判断する(S208)。
そして、現在位置が所定の地理的位置のいずれとも一致しないときは(S208、NO)、動作プログラム更新部352は、動作プログラム140の書き換えを行うことなく、ステップS200に戻って処理を繰り返す。一方、現在位置が所定の地理的位置のいずれかと一致するときは(S208、YES)、動作プログラム更新部352は、書換え管理テーブル344においてその地理的位置を示す位置情報に関連付けられている書き換え上限回数及び書き換え実行回数を参照し、書換え実行回数が書き換え上限回数未満であるか否かを判断する(S210)。
そして、書換え実行回数が書き換え上限回数未満でないとき(S210、NO)、動作プログラム更新部352は、動作プログラム140の書き換えを行うことなく、ステップS200に戻って処理を繰り返す。一方、書換え実行回数が書き換え上限回数未満であるときは(S210、YES)、動作プログラム更新部352は、当該書換え実行回数に1を加算してインクリメントする(S212)。そして、動作プログラム更新部352は、受信した新しい動作プログラムにより動作プログラム140を書き換えた後(S214)、ステップS200に戻って処理を繰り返す。
一方、ステップS204において、送信元装置が所定の認証を受けた装置であるときは(S204、YES)、動作プログラム更新部352は、受信した新しい動作プログラムにより動作プログラム140を書き換えた後(S214)、ステップS200に戻って処理を繰り返す。
また、ステップ202において、出荷フラグ142が出荷済みであることを示す値にセットされていないとき(S202、NO)、すなわち、出荷前であることを示す値にリセットされているときは、動作プログラム更新部352は、受信した新しい動作プログラムにより動作プログラム140を書き換えた後(S214)、ステップS200に戻って処理を繰り返す。
なお、上述の動作プログラム更新処理2においては、車両302の現在位置が所定の地理的位置でないときには(図5のステップS208おいてNOの場合)、動作プログラム140の書き換えを行わないものとしたが、これには限られない。例えば、車両302の現在位置が所定の地理的位置でないときには、動作プログラム更新処理1と同様に、1回に限り動作プログラム140の書き換えを許容して書き換え動作を実行するものとしてもよい。
以上、説明したように、上述した第1及び第2の実施形態に係る電子装置100、300では、電子装置100、300が搭載された車両102、302が出荷された後は、自装置が単体状態となったときは動作プログラム140の書き換えを行わず、自装置が車載状態であるときには、1回を限度として、又は自装置が車載状態であって所定の地理的位置にあるときに当該所定の地理的位置に対して予め定められた上限回数を限度として、動作プログラム140の書き換えを行う。
これにより、電子装置100、300では、従来技術に比べて不正書き換えの可能性を更に低減しつつ、動作プログラムの適正な書き換えを適度に許容して、電子装置100、300ないし当該電子装置100、300を搭載した車両102、302の利便性ないし商品性を高く維持することができる。
なお、第1及び第2の実施形態においては、新しい動作プログラムは、送信されるデータが新しい動作プログラムを含むものであることを示すデータ識別コード及び当該データの送信元である装置の装置認証コードに続いて送信されてくるものとしたが、これには限られない。例えば、新しい動作プログラムの送信に先行して、装置認証コードを含むデータが送信され、装置認証判断部154による装置認証が行われた後に、電子装置100から送信元装置に送信許可が送信され、その後に、当該送信元装置から新しい動作プログラムが送信されるものとしてもよい。
また、受信した新しい動作プログラムにより既存の動作プログラム140を書き換える際の条件(すなわち、ステップS112(図2)、S214(図5)を実行する条件)として、車両102、302の状態についての条件を加えても良い。例えば、受信した新しいプログラムを受信して記憶装置114又は314おき、動作プログラム更新処理1(図2)のステップS110又は動作プログラム更新処理2(図5)のステップS212を実行する前に、車両102又は302が所定の車両状態であるか否かを判断し、所定の車両状態であるときに、ステップS110、S112、又はステップS212、S214を実行するものとしてもよい。そのような所定の車両状態に関する条件は、例えば、イグニションスイッチがオフになっていること、車両ドアが閉じていること、車両が停止していること、サイドブレーキが動作していること、等々とすることができる。
100、300…電子装置、102、302…車両、110…通信装置、112、312…処理装置、114、314…記憶装置、120…車載ネットワークバス、122、124、126…電子制御装置、128…コネクタ、130…外部装置、132…GPS受信機、134…車速センサ、136…無線装置、140…動作プログラム、142…出荷フラグ、144…書換えカウント、152、352…動作プログラム更新部、154…装置認証判断部、156…車載状態判断部、170、172、174…センサ、180…外部サーバ、344…書換え管理テーブル、358…現在位置取得部、360…車速取得部。

Claims (5)

  1. 通信装置と、
    動作プログラムが保存される書き換え可能な記憶装置と、
    前記記憶装置に保存された前記動作プログラムを、前記通信装置を介して受信される新しい動作プログラムである更新プログラムにより更新するよう構成された処理装置と、
    を備える電子装置であって、
    前記処理装置は、
    受信された前記更新プログラムにより前記動作プログラムの更新を行う動作プログラム更新部と、
    自装置が車載状態であるか否かを判断する車載状態判断部と、
    を備え、
    前記動作プログラム更新部は、
    自装置に対し所定の設定が行われた後は、
    自装置が車載状態でないときは、前記動作プログラムの更新を行わず、
    自装置が車載状態であるときは、1回に限り前記動作プログラムの更新動作を行う、
    よう構成されている、電子装置。
  2. 通信装置と、
    動作プログラムが保存される書き換え可能な記憶装置と、
    前記記憶装置に保存された前記動作プログラムを、前記通信装置を介して受信される新しい動作プログラムである更新プログラムにより更新するよう構成された処理装置と、
    を備える電子装置であって、
    前記処理装置は、
    受信された前記更新プログラムにより前記動作プログラムの更新を行う動作プログラム更新部と、
    自装置が車載状態であるか否かを判断する車載状態判断部と、
    自装置の現在位置を取得する現在位置取得部と、
    を備え、
    前記動作プログラム更新部は、
    自装置に対し所定の設定が行われた後は、
    自装置が車載状態でないときは、前記動作プログラムの更新を行わず、
    自装置が車載状態であって、自装置の現在位置が所定の地理的位置のいずれかであるときに限り、当該所定の地理的位置に関連付けられた所定の回数を限度として前記動作プログラムの更新動作を行う、
    よう構成されている、電子装置。
  3. 前記更新プログラムの送信元が所定の認証を受けた外部装置であるか否かを判断する装置認証判断部を更に備え、
    前記動作プログラム更新部は、前記更新プログラムの送信元が所定の認証を受けた装置であるときは、更新回数の制限を設けることなく、前記動作プログラムの更新を行うよう構成されている、
    請求項1又は2に記載の電子装置。
  4. 前記車載状態判断部は、自装置が他の車載装置と接続されていることが前記通信装置を介して確認できないとき、及び又は、自装置にセンサが接続されている場合に当該センサの全部又は一部からの入力が正常値でないときは、自装置が車載状態でないものと判断する、
    請求項1又は2に記載の電子装置。
  5. 自装置が搭載されている車両の現在の車速を所定の時間間隔で取得する車速取得部を備え、
    前記現在位置取得部は、前記現在の車速が所定の値以下であるときは、前記現在の車速が所定の値を超えているときに比べて短い周期で現在位置を取得して更新するよう構成されている、
    請求項2に記載の電子装置。
JP2017199386A 2017-10-13 2017-10-13 電子装置 Pending JP2019074852A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2017199386A JP2019074852A (ja) 2017-10-13 2017-10-13 電子装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017199386A JP2019074852A (ja) 2017-10-13 2017-10-13 電子装置

Publications (1)

Publication Number Publication Date
JP2019074852A true JP2019074852A (ja) 2019-05-16

Family

ID=66543206

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017199386A Pending JP2019074852A (ja) 2017-10-13 2017-10-13 電子装置

Country Status (1)

Country Link
JP (1) JP2019074852A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021039796A1 (ja) * 2019-08-28 2021-03-04 株式会社デンソー 車両用電子制御システム、車両用マスタ装置、特定モードによる書換え指示方法及び特定モードによる書換え指示プログラム

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021039796A1 (ja) * 2019-08-28 2021-03-04 株式会社デンソー 車両用電子制御システム、車両用マスタ装置、特定モードによる書換え指示方法及び特定モードによる書換え指示プログラム
JPWO2021039796A1 (ja) * 2019-08-28 2021-03-04
JP7264256B2 (ja) 2019-08-28 2023-04-25 株式会社デンソー 車両用電子制御システム、車両用マスタ装置、特定モードによる書換え指示方法及び特定モードによる書換え指示プログラム
US11989546B2 (en) 2019-08-28 2024-05-21 Denso Corporation Vehicle electronic control system, vehicle master device, and rewrite instruction program product under specific mode

Similar Documents

Publication Publication Date Title
US9635151B2 (en) In-vehicle communication system and in-vehicle relay apparatus
US10027672B2 (en) Access restriction device, on-board communication system and method for communication restriction
CN110214308B (zh) 控制装置、程序更新方法和计算机程序
US7415332B2 (en) Method and system for vehicle component management, method and system for vehicle component management data update, and vehicle component management center
JP5949732B2 (ja) プログラム更新システム及びプログラム更新方法
JP6361671B2 (ja) プログラム更新システム、プログラム更新方法、中継装置及びコンピュータプログラム
KR101602556B1 (ko) 차재 중계 장치 및 통신 시스템
ES2541216T3 (es) Procedimiento y sistema para procesar información relativa a un vehículo
EP2672655B1 (en) Electronic key registration system
US11807176B2 (en) On-board communication device, on-board communication system, and specific processing prohibition method for a vehicle
US10678954B2 (en) Cybersecurity vulnerability prioritization and remediation
JP2017157003A5 (ja)
US10625754B2 (en) Control apparatus, control method, and computer program
US9438581B2 (en) Authenticating data at a microcontroller using message authentication codes
JP7006335B2 (ja) 車載通信システム、車載通信方法、およびプログラム
JP2014204315A (ja) 中継装置
CN110825400A (zh) 一种应用程序客户端的证书更新方法和系统
JP2019074852A (ja) 電子装置
US10592457B2 (en) Universal transponder interface with a databus docking station
US20230098720A1 (en) Information processing device, information processing method, vehicle, transmission method, and storage medium
JP6390398B2 (ja) 車載ネットワークシステム
JP2013112120A (ja) 車載通信システム
JP7211189B2 (ja) 更新処理システム及び更新処理方法
US11396216B1 (en) Climate control validation for K9 police vehicles
JP7081415B2 (ja) 通信装置、通信方法、および通信プログラム