Nothing Special   »   [go: up one dir, main page]

JP6915569B2 - 保存装置、通信システム、保存方法及びコンピュータプログラム - Google Patents

保存装置、通信システム、保存方法及びコンピュータプログラム Download PDF

Info

Publication number
JP6915569B2
JP6915569B2 JP2018038859A JP2018038859A JP6915569B2 JP 6915569 B2 JP6915569 B2 JP 6915569B2 JP 2018038859 A JP2018038859 A JP 2018038859A JP 2018038859 A JP2018038859 A JP 2018038859A JP 6915569 B2 JP6915569 B2 JP 6915569B2
Authority
JP
Japan
Prior art keywords
input
partial data
data
unit
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.)
Active
Application number
JP2018038859A
Other languages
English (en)
Other versions
JP2019153159A (ja
JP2019153159A5 (ja
Inventor
哲矢 野田
哲矢 野田
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.)
Sumitomo Wiring Systems Ltd
AutoNetworks Technologies Ltd
Sumitomo Electric Industries Ltd
Original Assignee
Sumitomo Wiring Systems Ltd
AutoNetworks Technologies Ltd
Sumitomo Electric Industries 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
Priority to JP2018038859A priority Critical patent/JP6915569B2/ja
Application filed by Sumitomo Wiring Systems Ltd, AutoNetworks Technologies Ltd, Sumitomo Electric Industries Ltd filed Critical Sumitomo Wiring Systems Ltd
Priority to PCT/JP2019/008265 priority patent/WO2019172154A1/ja
Priority to US16/978,028 priority patent/US12071082B2/en
Priority to CN201980013922.7A priority patent/CN111742293B/zh
Priority to CN202410720259.7A priority patent/CN118760460A/zh
Publication of JP2019153159A publication Critical patent/JP2019153159A/ja
Publication of JP2019153159A5 publication Critical patent/JP2019153159A5/ja
Priority to JP2021111013A priority patent/JP7092241B2/ja
Application granted granted Critical
Publication of JP6915569B2 publication Critical patent/JP6915569B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60RVEHICLES, VEHICLE FITTINGS, OR VEHICLE PARTS, NOT OTHERWISE PROVIDED FOR
    • B60R16/00Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for
    • B60R16/02Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for electric constitutive elements
    • B60R16/023Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for electric constitutive elements for transmission of signals between vehicle parts or subsystems
    • B60R16/0231Circuits relating to the driving or the functioning of the vehicle
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/40006Architecture of a communication node
    • H04L12/40045Details regarding the feeding of energy to the node from the bus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • G06F8/658Incremental updates; Differential updates
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L2012/40208Bus networks characterized by the use of a particular bus standard
    • H04L2012/40215Controller Area Network CAN

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Signal Processing (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Automation & Control Theory (AREA)
  • Mechanical Engineering (AREA)
  • Stored Programmes (AREA)
  • Information Transfer Between Computers (AREA)

Description

本発明は、保存装置、通信システム、保存方法及びコンピュータプログラムに関する。
車両には、制御プログラムを実行することによって処理を実行する処理装置(例えば、特許文献1を参照)が搭載されている。特許文献1に記載の処理装置はダイアグツールに着脱可能に接続される。制御プログラムの更新に用いる更新データがダイアグツールから入力されるとともに、無線で受信された更新データが入力される。
特許文献1に記載の処理装置は、ダイアグツールから更新データが入力されている間、無線で受信された更新データの入力を禁止し、無線で受信された更新データが入力されている間、ダイアグツールからの更新データの入力を禁止する。ダイアグツールから入力された更新データ、又は、無線で受信された更新データを用いて、制御プログラムが更新される。
特開2017−105309号公報
一般的に、ダイアグツールは、ディーラーによって操作される。ダイアグツールから入力された更新データを用いた制御プログラムの更新は、車両が持ち込まれた販売店又は工場等で、例えば、処理の不具合の原因を探るために、ディーラーによって行われる可能性が高い。一方で、無線で受信された更新データを用いた制御プログラムの更新は、例えば、車両の乗員の許可を受けた上で、不特定の場所で行われる可能性が高い。以上のことを考慮した場合、ダイアグツールから入力された更新データを用いた制御プログラムの更新は、無線で受信された更新データを用いた制御プログラムの更新よりも重要である。
ディーラーがダイアグツールを用いて制御プログラムを更新する時点において、無線で受信された更新データを用いて制御プログラムを更新していたと仮定する。この場合、ディーラーは、無線で受信された更新データが入力されて、制御プログラムの更新が完了するまで待機する必要がある。制御プログラムの更新が完了した後、ディーラーはダイアグツールを用いて改めて制御プログラムを更新する。この場合、無線で受信された更新データを用いて不要な制御プログラムの更新が行われる。
本発明は斯かる事情に鑑みてなされたものであり、その目的とするところは、無線で受信された更新データを用いた不要な制御プログラムの更新を防止することができる保存装置、通信システム、保存方法及びコンピュータプログラムを提供することにある。
本発明の一態様に係る保存装置は、外部装置に着脱可能に接続され、制御プログラムの更新に用いられる更新データの一部である部分データが前記外部装置から入力される第1入力部と、無線で受信された前記部分データが入力される第2入力部と、前記部分データが保存される記憶部と、前記第2入力部に前記部分データが入力された場合、前記第2入力部に入力された部分データを前記記憶部に保存し、前記第2入力部に前記部分データが繰り返し入力されている間に前記第1入力部に前記部分データが入力された場合、前記第2入力部に入力された部分データの保存を停止し、前記第1入力部に入力された部分データを前記記憶部に保存する保存部とを備える。
本発明の一態様に係る通信システムは、前述した保存装置と、前記保存装置に接続され、処理を実行する処理装置とを備え、前記制御プログラムは、前記処理装置によって実行され、前記保存装置は、前記部分データを前記処理装置に送信する送信部を有する。
本発明の一態様に係る保存方法では、制御プログラムの更新に用いられる更新データの一部である部分データが無線で受信された場合に、受信された部分データを保存するステップと、前記部分データが無線で繰り返し受信されている間に、有線で前記部分データが入力された場合に、無線で受信された部分データの保存を停止するステップと、前記部分データが無線で繰り返し受信されている間に、有線で前記部分データが入力された場合に、有線で入力された部分データを保存するステップとをコンピュータが実行する
本発明の一態様に係るコンピュータプログラムは、コンピュータに、制御プログラムの更新に用いられる更新データの一部である部分データが無線で受信された場合に、受信された部分データを保存するステップと、前記部分データが無線で繰り返し受信されている間に、有線で前記部分データが入力された場合に、無線で受信された部分データの保存を停止するステップと、前記部分データが無線で繰り返し受信されている間に、有線で前記部分データが入力された場合に、有線で受信した部分データを保存するステップとを実行させる。
なお、本発明を、このような特徴的な処理部を備える保存装置として実現することができるだけでなく、かかる特徴的な処理をステップとする保存方法として実現したり、かかるステップをコンピュータに実行させるためのコンピュータプログラムとして実現したりすることができる。また、本発明を、保存装置の一部又は全部を実現する半導体集積回路として実現したり、保存装置を含む通信システムとして実現したりすることができる。
上記の態様によれば、無線で受信された更新データを用いた不要な制御プログラムの更新を防止することができる。
実施形態1における通信システムの要部構成を示すブロック図である。 中継装置の要部構成を示すブロック図である。 制御プログラムに係る第1更新データ保存処理の手順を示すフローチャートである。 制御プログラムに係る第2更新データ保存処理の手順を示すフローチャートである。 通信システムの動作の例を示すシーケンス図である。 通信システムの動作のもう1つの例を示すシーケンス図である。 制御プログラムに係る更新データ送信処理の手順を示すフローチャートである。 実施形態2における第1更新データ保存処理の手順を示すフローチャートである。 通信システムの動作の例を示すシーケンス図である。 更新データの構成の概略図である。
[本発明の実施形態の説明]
最初に本発明の実施態様を列挙して説明する。以下に記載する実施形態の少なくとも一部を任意に組み合わせてもよい。
(1)本発明の一態様に係る保存装置は、外部装置に着脱可能に接続され、制御プログラムの更新に用いられる更新データの一部である部分データが前記外部装置から入力される第1入力部と、無線で受信された前記部分データが入力される第2入力部と、前記部分データが保存される記憶部と、前記第2入力部に前記部分データが入力された場合、前記第2入力部に入力された部分データを前記記憶部に保存し、前記第2入力部に前記部分データが繰り返し入力されている間に前記第1入力部に前記部分データが入力された場合、前記第2入力部に入力された部分データの保存を停止し、前記第1入力部に入力された部分データを前記記憶部に保存する保存部とを備える。
(2)本発明の一態様に係る保存装置は、前記第2入力部に前記部分データが繰り返し入力されている間に前記第1入力部に前記部分データが入力された場合に、前記部分データの無線での繰り返し送信の停止を指示する送信停止データを出力する出力部を備える。
(3)本発明の一態様に係る保存装置は、前記第2入力部に前記部分データが繰り返し入力されている間に前記第1入力部に前記部分データが入力された場合に、前記第2入力部に入力されて前記記憶部に保存された部分データを前記記憶部から削除する削除部を備える。
(4)本発明の一態様に係る保存装置は、前記第2入力部に前記部分データが繰り返し入力されている間に前記第1入力部に前記部分データが入力された場合、前記第1入力部に入力された部分データに係る更新データを用いて更新された後の制御プログラムのバージョンが、前記第2入力部に入力された部分データに係る更新データを用いて更新された後の制御プログラムのバージョンと同一であるか否かを判定する判定部と、前記判定部によって、前記第1入力部に入力された部分データに係る更新データを用いて更新された後の制御プログラムのバージョンが同一であると判定された場合、前記更新データを構成する残りの部分データの出力を要求する出力要求データを前記外部装置に出力する第2の出力部とを備える。
(5)本発明の一態様に係る通信システムは、前述した保存装置と、前記保存装置に接続され、処理を実行する処理装置とを備え、前記制御プログラムは、前記処理装置によって実行され、前記保存装置は、前記部分データを前記処理装置に送信する送信部を有する。
(6)本発明の一態様に係る保存方法は、制御プログラムの更新に用いられる更新データの一部である部分データが無線で受信された場合に、受信された部分データを保存するステップと、前記部分データが無線で繰り返し受信されている間に、有線で前記部分データが入力された場合に、無線で受信された部分データの保存を停止するステップと、前記部分データが無線で繰り返し受信されている間に、有線で前記部分データが入力された場合に、有線で入力された部分データを保存するステップとを含む。
(7)本発明の一態様に係るコンピュータプログラムは、コンピュータに、制御プログラムの更新に用いられる更新データの一部である部分データが無線で受信された場合に、受信された部分データを保存するステップと、前記部分データが無線で繰り返し受信されている間に、有線で前記部分データが入力された場合に、無線で受信された部分データの保存を停止するステップと、前記部分データが無線で繰り返し受信されている間に、有線で前記部分データが入力された場合に、有線で受信した部分データを保存するステップとを実行させる。
上記の一態様に係る保存装置、保存方法及びコンピュータプログラムにあっては、無線で受信された部分データが繰り返し入力されている間に、有線で部分データが入力された場合、無線で受信された部分データの記憶部への保存を停止し、有線で入力された部分データを記憶部に保存する。このため、無線で受信された複数の部分データによって構成される更新データを用いた不要な制御プログラムの更新が防止される。
上記の一態様に係る保存装置にあっては、無線で受信された部分データが繰り返し入力されている間に、有線で部分データが入力された場合、送信停止データを出力する。これにより、無線での部分データの繰り返し送信が停止する。
上記の一態様に係る保存装置にあっては、無線で受信された部分データが繰り返し入力されている間に、有線で部分データが入力された場合、無線で受信されて記憶部に記憶された部分データを記憶部から削除する。
上記の一態様に係る保存装置にあっては、無線で受信された部分データが繰り返し入力されている間に、有線で部分データが入力されたと仮定する。この場合、有線で入力された部分データに係る更新データを用いて更新された後の制御プログラムのバージョンが、無線で受信された部分データに係る更新データを用いて更新された後の制御プログラムのバージョンと同一であるか否かを判定する。バージョンが同一であると判定した場合、出力要求データを外部装置に出力し、更新データを構成する複数の部分データ中の残りの部分データを外部装置に有線で出力させる。このため、更新データの取得に要する時間が短い。
上記の一態様に係る通信システムにあっては、保存装置は部分データを処理装置に送信する。処理装置では、受信した複数の部分データによって構成される更新データを用いて制御プログラムを更新する。
[本発明の実施形態の詳細]
本発明の実施形態に係る通信システムの具体例を、以下に図面を参照しつつ説明する。なお、本発明はこれらの例示に限定されるものではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
(実施形態1)
図1は、実施形態1における通信システム1の要部構成を示すブロック図である。通信システム1は、好適に車両100に搭載され、中継装置10、ECU11a,11b、コネクタ12及び無線機13を備える。中継装置10に、ECU11a,11b、コネクタ12及び無線機13が各別に接続されている。
コネクタ12は、ダイアグツール20に接続されているコネクタ21に、着脱可能に接続される。ダイアグツール20は、持ち運び可能な携帯機である。コネクタ12がコネクタ21に接続された場合、中継装置10はダイアグツール20に接続する。コネクタ12,21の接続が外された場合、ダイアグツール20と中継装置10との接続が外される。
ECU11a,11b夫々には、車両100に搭載された図示しない電気機器が接続されている。ECU11a,11b夫々は、一又は複数の図示しないCPU(Central Processing Unit)を有する。ECU11aには制御プログラムPaが保存されている。ECU11aが有する一又は複数のCPUは、制御プログラムPaを実行することによって、ECU11aに接続されている電気機器の動作を制御する制御処理を実行する。同様に、ECU11bには制御プログラムPbが保存されている。ECU11bが有する一又は複数のCPUは、制御プログラムPbを実行することによって、ECU11bに接続されている電気機器の動作を制御する制御処理を実行する。
中継装置10は保存装置として機能する。ECU11a,11b夫々は処理装置として機能する。
ECU11a,11b夫々は中継装置10にデータを送信する。中継装置10は、ECU11aから受信したデータをECU11bに送信し、ECU11bから受信したデータをECU11aに送信する。これにより、ECU11a,11bは、中継装置10を介して相互に通信を行い、ECU11a,11bに接続されている複数の電気機器に協調動作を行わせる。この通信では、通信プロトコルとして、イーサネット(登録商標)に対応するプロトコル、又は、CAN(Controller Area Network)プロトコル等が用いられる。
制御プログラムPaの更新に用いられる更新データは、Na個の部分データによって構成される(図10参照)。従って、部分データは更新データの一部である。Naは2以上の整数である。部分データには、更新後の制御プログラムPaの一部を示すプログラム情報に加えて、更新後の制御プログラムPaのバージョンを示すバージョン情報と、配置番号を示す番号情報とが含まれている。配置番号の順に、Na個の部分データを配置することによって、更新データが実現される。
中継装置10は、部分データをECU11aに繰り返し送信する。ECU11aは、中継装置10から受信した部分データを受信した場合、受信した部分データを保存する。ECU11aは、Na個の部分データ、即ち、更新データを保存した場合、車両100の状態が、制御プログラムPaを更新することが可能な状態となるまで待機する。ECU11aが有する一又は複数のCPUは、車両100の状態が、制御プログラムPaを更新することが可能な状態となった場合、更新データを用いて制御プログラムPaを更新する。
なお、制御プログラムPaを更新することが可能な状態は、例えば、車両100のイグニッションスイッチがオフである状態である。
また、中継装置10は、部分データをECU11aに繰り返し送信している間に、送信している部分データに係る更新データを用いた制御プログラムPaの更新が不要となった場合、部分データの削除を指示する削除指示データをECU11aに送信する。ECU11aは、削除指示データを受信した場合、中継装置10から受信した全ての部分データを削除する。
同様に、制御プログラムPbの更新に用いられる更新データは、Nb個の部分データによって構成される。Nbは2以上の整数である。部分データには、更新後の制御プログラムPbの一部を示すプログラム情報に加えて、更新後の制御プログラムPbのバージョンを示すバージョン情報と、配置番号を示す番号情報とが含まれている。
ECU11bが行う制御プログラムPbの更新及び部分データの削除夫々は、ECU11aが行う制御プログラムPaの更新及び部分データの削除と同様である。具体的には、ECU11aが行う制御プログラムPaの更新及び部分データの削除の説明において、ECU11a、制御プログラムPa及び整数Na夫々をECU11b、制御プログラムPb及び整数Nbに置き換える。これにより、ECU11bが行う制御プログラムPbの更新及び部分データの削除を説明することができる。
ダイアグツール20は、使用者、例えば、ディーラーによって操作される図示しない操作部を有する。ダイアグツール20は、操作部の操作に従って動作する。ダイアグツール20は、コネクタ21がコネクタ12に接続された場合、自身の認証を要求する第1要求データを中継装置10に出力する。第1要求データには、識別情報又はパスワード等の情報が含まれている。中継装置10は、第1要求データが入力された場合、入力された第1要求データに含まれる情報に基づいて、ダイアグツール20を認証する。中継装置10は、この認証に成功した場合、データの出力を許可する出力許可データをダイアグツール20に出力する。
ダイアグツール20は、出力許可データが入力された後、種々のデータを中継装置10に出力する。具体的には、ダイアグツール20は、コネクタ21,12を介して、制御プログラムPaの更新データに係る部分データを中継装置10に繰り返し出力する。同様に、ダイアグツール20は、コネクタ21,12を介して、制御プログラムPbの更新データに係る部分データを中継装置10に繰り返し出力する。
無線機13は、車両100の外側に設置されているサーバ30からデータを無線で受信した場合、受信したデータを中継装置10に出力する。更に、無線機13は、中継装置10からデータが入力された場合、入力されたデータをサーバ30に無線で送信する。
サーバ30は、制御プログラムPa又は制御プログラムPbの更新データの送信条件が満たされた場合、自身の認証を要求する第2要求データを無線機13に送信する。第2要求データには、識別情報又はパスワード等の情報が含まれている。無線機13は、第2要求データを受信した場合、受信した第2要求データを中継装置10に出力する。中継装置10は、第2要求データが入力された場合、入力された第2要求データに含まれる情報に基づいて、サーバ30を認証する。
中継装置10は、この認証に成功した場合、データの送信を許可する送信許可データを無線機13に出力する。無線機13は、送信許可データをサーバ30に無線で送信する。サーバ30は、送信許可データを無線機13から受信した場合、制御プログラムPa又は制御プログラムPbの更新データに係る部分データを無線で無線機13に繰り返し送信する。無線機13は、サーバ30から、制御プログラムPa又は制御プログラムPbの更新データに係る部分データを無線で受信する都度、受信した部分データを中継装置10に出力する。
サーバ30は、制御プログラムPaの更新データに係る部分データを無線機13に無線で繰り返し送信するとともに、制御プログラムPbの更新データに係る部分データを無線機13に無線で繰り返し送信する。
中継装置10は、無線機13に、部分データの無線での繰り返し送信の停止を指示する送信停止データを出力する。無線機13は、中継装置10から送信停止データが入力された場合、入力された送信停止データをサーバ30に無線で送信する。サーバ30は、制御プログラムPa又は制御プログラムPbの更新データに係る部分データを無線機13に繰り返し送信している間に送信停止データを無線機13から受信した場合、部分データの繰り返し送信を停止する。その後、サーバ30は、制御プログラムPa又は制御プログラムPbの更新データの送信条件が満たされた場合に、再び、第2要求データを無線機13に送信し、部分データを無線機13に繰り返し送信する。
図2は中継装置10の要部構成を示すブロック図である。中継装置10は、2つの通信部40a,40b、第1入出力部41、第2入出力部42、記憶部43及び制御部44を有する。これらは内部バス45に接続されている。通信部40aは、更に、ECU11aに接続されている。通信部40bは、更に、ECU11bに接続されている。第1入出力部41は、更に、コネクタ12に接続されている。第2入出力部42は、更に、無線機13に接続されている。
コネクタ12がコネクタ21に接続した場合、ダイアグツール20は第1入出力部41に接続される。コネクタ12,21の接続が外れた場合、ダイアグツール20及び第1入出力部41の接続も外れる。このように、第1入出力部41は、ダイアグツール20に着脱可能に接続される。ダイアグツール20は外部装置に相当する。
通信部40aは、制御部44の指示に従って、データをECU11aに送信する。通信部40aがECU11aに送信するデータの1つは、制御プログラムPaの更新データに係る部分データがある。通信部40aは、ECU11aからデータを受信する。
同様に、通信部40bは、制御部44の指示に従って、データをECU11bに送信する。通信部40bがECU11bに送信するデータの1つは、制御プログラムPbの更新データに係る部分データがある。通信部40bは、ECU11bからデータを受信する。
第1入出力部41は、制御部44の指示に従って、コネクタ12,21を介してダイアグツール20に出力許可データを出力する。また、第1入出力部41には、ダイアグツール20から、コネクタ21,12を介して、制御プログラムPaの更新データに係る部分データが繰り返し入力される。同様に、第1入出力部41には、ダイアグツール20から、コネクタ21,12を介して、制御プログラムPbの更新データに係る部分データが繰り返し入力される。第1入出力部41は第1入力部として機能する。
第2入出力部42は、制御部44の指示に従って、送信許可データ及び送信停止データを無線機13に出力する。前述したように、無線機13は、データが入力された場合、入力されたデータを無線でサーバ30に送信する。サーバ30は、送信許可データを無線機13から受信した場合に制御プログラムPa又は制御プログラムPbの更新データに係る部分データの繰り返し送信を開始する。更に、サーバ30は、送信停止データを無線機13から受信した場合、部分データの繰り返し送信を停止する。
また、第2入出力部42には、無線機13がサーバ30から受信した第2要求データが入力される。更に、第2入出力部42には、無線機13がサーバ30から無線で受信した部分データが、無線機13から繰り返し入力される。従って、第2入出力部42には、制御プログラムPaの更新データに係る部分データと、制御プログラムPbの更新データに係る部分データとが入力される。第2入出力部42は第2入力部として機能する。
記憶部43は不揮発性メモリである。記憶部43には、制御部44によって、制御プログラムPa,Pb夫々の更新データに係る部分データが保存される。
記憶部43には、更に制御プログラムPrが記憶されている。制御部44は、一又は複数のCPUを有する。制御部44が有する一又は複数のCPUは、制御プログラムPrを実行することによって、中継処理、ツール認証処理、サーバ認証処理、第1更新データ保存処理、第2更新データ保存処理及び更新データ送信処理を実行する。第1更新データ保存処理、第2更新データ保存処理及び更新データ送信処理夫々については、制御プログラムPaに係る処理と、制御プログラムPbに係る処理とがある。制御部44は、中継処理、ツール認証処理、サーバ認証処理、第1更新データ保存処理、第2更新データ保存処理及び更新データ送信処理を時分割方式で並行して実行する。
中継処理は、ECU11a,11b間の通信を中継する処理である。ツール認証処理は、ダイアグツール20を認証する処理である。サーバ認証処理は、無線機13と通信するサーバ30を認証する処理である。
制御プログラムPaに係る第1更新データ保存処理は、ダイアグツール20から第1入出力部41に入力された制御プログラムPaの更新データを保存する処理である。制御プログラムPaに係る第2更新データ保存処理は、無線機13から第2入出力部42に入力された制御プログラムPaの更新データを保存する処理である。制御プログラムPaに係る更新データ送信処理は、制御プログラムPaに係る更新データをECU11aに送信する処理である。
同様に、制御プログラムPbに係る第1更新データ保存処理は、ダイアグツール20から第1入出力部41に入力された制御プログラムPbの更新データを保存する処理である。制御プログラムPbに係る第2更新データ保存処理は、無線機13から第2入出力部42に入力された制御プログラムPbの更新データを保存する処理である。制御プログラムPbに係る更新データ送信処理は、制御プログラムPbに係る更新データをECU11bに送信する処理である。
制御プログラムPrは、制御部44が有する一又は複数のCPUに、中継処理、ツール認証処理、サーバ認証処理、第1更新データ保存処理、第2更新データ保存処理及び更新データ送信処理を実行させるためのコンピュータプログラムである。
なお、制御プログラムPrは、制御部44が有する一又は複数のCPUが読み取り可能に、記憶媒体E1に保存されていてもよい。この場合、図示しない読み出し装置によって記憶媒体E1から読み出された制御プログラムPrが記憶部43に保存される。記憶媒体E1は、光ディスク、フレキシブルディスク、磁気ディスク、磁気光ディスク又は半導体メモリ等である。光ディスクは、CD(Compact Disc)−ROM(Read Only Memory)、DVD(Digital Versatile Disc)−ROM、又は、BD(Blu-ray(登録商標) Disc)等である。磁気ディスクは、例えばハードディスクである。また、図示しない通信網に接続されている図示しない外部装置から制御プログラムPrをダウンロードし、ダウンロードした制御プログラムPrを記憶部43に保存してもよい。
通信部40a,40bの1つがデータを受信した場合に、制御部44は中継処理を実行する。制御部44は、受信されたデータに含まれる情報に基づいて、通信部40a,40bの中からデータを送信する通信部を選択し、選択した通信部に、受信されたデータの送信を指示する。これにより、制御部44が選択した通信部は、受信されたデータを送信する。制御部44は、受信されたデータの送信を指示した後、中継処理を終了する。
制御部44は、第1要求データがダイアグツール20から第1入出力部41に入力された場合にツール認証処理を実行する。ツール認証処理では、制御部44は、入力された第1要求データに含まれる情報に基づいて、ダイアグツール20を認証する。制御部44は、ダイアグツール20の認証に成功した場合、第1入出力部41に出力許可データの出力を指示する。これにより、第1入出力部41は、出力許可データをダイアグツール20に出力し、ダイアグツール20は種々のデータを第1入出力部41に出力する。制御部44は、ダイアグツール20の認証に失敗した場合、又は、出力許可データの出力を指示した後、ツール認証処理を終了する。
制御部44は、第2要求データが無線機13から第2入出力部42に入力された場合にサーバ認証処理を実行する。サーバ認証処理では、制御部44は、入力された第2要求データに含まれる情報に基づいて、サーバ30を認証する。制御部44は、サーバ30の認証に成功した場合、第2入出力部42に送信許可データの出力を指示する。これにより、第2入出力部42は、送信許可データを無線機13に出力し、無線機13は、送信許可データをサーバ30に送信する。前述したように、サーバ30は、送信許可データを受信した場合、部分データの繰り返し送信を開始する。制御部44は、サーバ30の認証に失敗した場合、又は、送信許可データの送信を指示した後、サーバ認証処理を終了する。
図3は、制御プログラムPaに係る第1更新データ保存処理の手順を示すフローチャートである。制御部44は、制御プログラムPaの更新データに係る部分データが第1入出力部41に入力された場合に制御プログラムPaに係る第1更新データ保存処理を実行する。
記憶部43には、制御プログラムPaに係るフラグ(以下、Paフラグという)の値が記憶されている。Paフラグの値は、制御部44によって、ゼロ又は1に設定される。Paフラグの値がゼロであることは、ダイアグツール20から第1入出力部41に、制御プログラムPaの更新データに係る部分データが繰り返し入力されていないことを示す。Paフラグの値が1であることは、ダイアグツール20から第1入出力部41に、制御プログラムPaの更新データに係る部分データが繰り返し入力されていることを示す。
制御プログラムPaに係る第1更新データ保存処理では、まず、制御部44は、Paフラグの値を1に設定し(ステップS1)、制御プログラムPaの更新データに関して、記憶部43に既に保存されている全ての部分データを削除する(ステップS2)。次に、制御部44は、第1更新データ保存処理が開始される際に第1入出力部41に入力された部分データを記憶部43に保存し(ステップS3)、制御プログラムPaの更新データに係る部分データが更に第1入出力部41に入力されたか否かを判定する(ステップS4)。
制御部44は、部分データが第1入出力部41に入力されていないと判定した場合(S4:NO)、ステップS4を実行し、制御プログラムPaの更新データに係る部分データが新たに第1入出力部41に入力されるまで待機する。制御部44は、部分データが第1入出力部41に入力されたと判定した場合(S4:YES)、第1入出力部41に入力された部分データを記憶部43に保存し(ステップS5)、制御プログラムPaの更新データに係るNa個の部分データを記憶部43に保存したか否かを判定する(ステップS6)。
制御部44は、Na個の部分データを保存していないと判定した場合(S6:NO)、ステップS4を実行し、制御プログラムPaの更新データに係る部分データが新たに第1入出力部41に入力されるまで、再び待機する。制御部44は、Na個の部分データを保存したと判定した場合(S6:YES)、Paフラグの値をゼロに設定し(ステップS7)、制御プログラムPaに係る第1更新データ保存処理を終了する。
以上のように、制御部44は、制御プログラムPaの更新データに係る部分データが第1入出力部41に入力された場合、制御プログラムPaに係る第1更新データ保存処理を実行する。この第1更新データ保存処理では、制御部44は、記憶部43に既に保存されている制御プログラムPaの更新データに係る全ての部分データを削除した後、第1入出力部41に入力されたNa個の部分データ、即ち、更新データを記憶部43に保存する。Na個の部分データが第1入出力部41に入力されるまでPaフラグの値は1に設定される。
制御部44は、制御プログラムPbの更新データに係る部分データが第1入出力部41に入力された場合、制御プログラムPbに係る第1更新データ保存処理を実行する。
記憶部43には、制御プログラムPbに係るフラグ(以下、Pbフラグという)の値が記憶されている。Pbフラグの値は、制御部44によって、ゼロ又は1に設定される。Pbフラグの値がゼロであることは、ダイアグツール20から第1入出力部41に、制御プログラムPbの更新データに係る部分データが繰り返し入力されていないことを示す。Pbフラグの値が1であることは、ダイアグツール20から第1入出力部41に、制御プログラムPbの更新データに係る部分データが繰り返し入力されていることを示す。
制御プログラムPbに係る第1更新データ保存処理は、制御プログラムPaに係る第1更新データ保存処理と同様である。制御プログラムPaに係る第1更新データ保存処理の説明において、制御プログラムPa、Paフラグ及び整数Na夫々を、制御プログラムPb、Pbフラグ及び整数Nbに変更することによって、制御プログラムPbに係る第1更新データ保存処理を説明することができる。
図4は、制御プログラムPaに係る第2更新データ保存処理の手順を示すフローチャートである。制御部44は、制御プログラムPaの更新データに係る部分データが無線機13から第2入出力部42に入力された場合に、制御プログラムPaに係る第2更新データ保存処理を実行する。
制御プログラムPaに係る第2更新データ保存処理では、まず、制御部44は、Paフラグの値がゼロであるか否かを判定する(ステップS11)。前述したように、Paフラグの値がゼロであることは、第1入出力部41に、制御プログラムPaの更新データに係る部分データが繰り返し入力されていないことを示す。Paフラグの値が1であることは、第1入出力部41に、制御プログラムPaの更新データに係る部分データが繰り返し入力されていることを示す。
制御部44は、Paフラグの値がゼロではない、即ち、Paフラグの値が1であると判定した場合(S11:NO)、第1入出力部41に、制御プログラムPaの更新データに係る部分データが繰り返し入力されているので、第2入出力部42に送信停止データの出力を指示する(ステップS12)。これにより、第2入出力部42は、送信停止データを無線機13に出力し、無線機13は送信停止データをサーバ30に無線で送信する。サーバ30は、送信停止データを受信した場合、制御プログラムPaの更新データに係る部分データの繰り返し送信を停止する。制御部44は、ステップS12を実行した後、第2更新データ保存処理が開始される際に第2入出力部42に入力された部分データを記憶部43に保存することなく、制御プログラムPaに係る第2更新データ保存処理を終了する。
制御部44は、Paフラグの値がゼロであると判定した場合(S11:YES)、第2入出力部42に入力された部分データを記憶部43に保存し(ステップS13)、再び、フラグの値がゼロであるか否かを判定する(ステップS14)。これにより、制御部44は、ダイアグツール20が、制御プログラムPaの更新データに係る部分データの出力を開始したか否かを監視する。
制御部44は、Paフラグの値がゼロではない、即ち、Paフラグの値が1であると判定した場合(S14:NO)、ステップS12を実行し、サーバ30は、制御プログラムPaの更新データに係る部分データの繰り返し送信を停止する。また、制御プログラムPaに係る第1更新データ保存処理では、Paフラグの値が1に設定された後、制御プログラムPaに係る第2更新データ保存処理で保存した全てのデータは記憶部43から削除される。
制御部44は、Paフラグの値がゼロであると判定した場合(S14:YES)、制御プログラムPaの更新データに係る部分データが第2入出力部42に入力されたか否かを判定する(ステップS15)。制御部44は、部分データが入力されていないと判定した場合(S15:NO)、ステップS14を実行し、Paフラグの値が1に変更されるか、又は、制御プログラムPaの更新データに係る部分データが第2入出力部42に入力されるまで待機する。
制御部44は、部分データが入力されたと判定した場合(S15:YES)、第2入出力部42に入力された部分データを記憶部43に保存し(ステップS16)、制御プログラムPaの更新データに係るNa個の部分データを記憶部43に保存したか否かを判定する(ステップS17)。制御部44は、Na個の部分データを保存していないと判定した場合(S17:NO)、ステップS14を実行し、再び、Paフラグの値が1に変更されるか、又は、制御プログラムPaの更新データに係る部分データが新たに第2入出力部42に入力されるまで待機する。
制御部44は、Na個の部分データを保存したと判定した場合(S17:YES)、制御プログラムPaに係る第2更新データ保存処理を終了する。
制御部44は、制御プログラムPbの更新データに係る部分データが無線機13から第2入出力部42に入力された場合に、制御プログラムPbに係る第2更新データ保存処理を実行する。制御プログラムPbに係る第2更新データ保存処理は、制御プログラムPaに係る第2更新データ保存処理と同様である。制御プログラムPaに係る第2更新データ保存処理の説明において、制御プログラムPa、Paフラグ及び整数Na夫々を、制御プログラムPb、Pbフラグ及び整数Nbに変更することによって、制御プログラムPbに係る第2更新データ保存処理を説明することができる。
図5は、通信システム1の動作の例を示すシーケンス図である。ダイアグツール20が、制御プログラムPaの更新データに係る部分データを中継装置10の第1入出力部41に繰り返し出力していると仮定する。中継装置10の制御部44は、第1入出力部41に部分データが入力される都度、第1入出力部41に入力された部分データを記憶部43に保存する。
この状況で、制御プログラムPaの更新データに係る部分データをサーバ30が無線機13に送信し、無線機13がこの部分データを第2入出力部42に出力したと仮定する。この場合、制御部44は、第2入出力部42に指示して、送信停止データを無線機13に出力させ、無線機13は、サーバ30に送信停止データを無線で送信する。これにより、サーバ30は、制御プログラムPaの更新データに係る部分データの繰り返し送信を停止する。
ダイアグツール20は、Na個の部分データの出力が完了するまで、制御プログラムPaの更新データに係る部分データを繰り返し出力する。制御部44は、Na個の部分データを記憶部43に保存する。
図6は、通信システム1の動作のもう1つの例を示すシーケンス図である。サーバ30が制御プログラムPaの更新データに係る部分データを無線機13に繰り返し送信し、無線機13が中継装置10の第2入出力部42に、制御プログラムPaの更新データに係る部分データを繰り返し出力していると仮定する。中継装置10の制御部44は、第2入出力部42に部分データが入力される都度、第2入出力部42に入力された部分データを記憶部43に保存する。
制御プログラムPaの更新データに係る部分データが第2入出力部42に繰り返し入力されている間に、ダイアグツール20から中継装置10の第1入出力部41に、有線で、制御プログラムPaの更新データに係る部分データが入力されたと仮定する。この場合、制御部44は、無線機13から第2入出力部42に入力されて記憶部43に保存された全ての部分データを記憶部43から削除し、第2入出力部42に入力された部分データの保存を停止する。そして、制御部44は、第2入出力部42に指示して、送信停止データを無線機13に出力させる。これにより、無線機13は、サーバ30に送信停止データを無線で送信し、サーバ30は、制御プログラムPaの更新データに係る部分データの繰り返し送信を停止する。制御部44は削除部として機能する。第2入出力部42は出力部としても機能する。
Na個の部分データの出力が完了するまで、ダイアグツール20は、制御プログラムPaの更新データに係る部分データを繰り返し出力する。制御部44は、制御プログラムPaの更新データに係る部分データがダイアグツール20から第1入出力部41に入力される都度、ダイアグツール20から第1入出力部41に有線で入力された部分データを記憶部43に保存する。制御部44は保存部としても機能する。
図5及び図6を用いた説明は、無線機13及びダイアグツール20が出力する部分データが、制御プログラムPaの更新データに係る部分データである場合の説明である。無線機13及びダイアグツール20が出力する部分データが、制御プログラムPbの更新データに係る部分データである場合の動作は、無線機13及びダイアグツール20が出力する部分データが、制御プログラムPaの更新データに係る部分データである場合の動作と同様である。
なお、ダイアグツール20から第1入出力部41に入力される部分データに対応する制御プログラムと、無線機13から第2入出力部42に入力される部分データに対応する制御プログラムとが相互に異なる場合、制御部44は、サーバ30に部分データの繰り返し送信を停止させることはない。即ち、制御部44は、制御プログラムPaの更新データに係る部分データを保存するとともに、制御プログラムPbの更新データに係る部分データを保存する。
図7は、制御プログラムPaに係る更新データ送信処理の手順を示すフローチャートである。前述したように、部分データには、配置番号を示す番号情報が含まれている。制御プログラムPaの更新データに係る部分データの配置番号は、1以上であり、かつ、Na以下である整数である。前述したように、配置番号の順に、Na個の部分データを配置することによって、更新データが実現される。以下では、配置番号がk(k:自然数)である部分データをk番目の部分データと記載する。
サーバ30は、配置番号に従って、1番目の部分データから部分データを無線機13に順次送信する。ダイアグツール20は、配置番号に従って、1番目の部分データから部分データを第1入出力部41に順次出力する。通信部40a,40b夫々は、配置番号に従って、1番目の部分データから部分データをECU11a,11bに順次送信する。
制御部44は、制御プログラムPaの更新データに係る1番目の部分データが記憶部43に保存された場合に、制御プログラムPaに係る更新データ送信処理を実行する。
制御プログラムPaに係る更新データ送信処理では、まず、制御部44は、記憶部43に保存されている部分データの送信を通信部40aに指示する(ステップS21)。これにより、通信部40aは部分データをECU11aに送信する。次に、制御部44は、ステップS21を実行してから所定時間が経過するまでに、制御プログラムPaの更新データに係る次の部分データが記憶部43に保存されているか否かを判定する(ステップS22)。例えば、1番目の部分データが保存されている場合、次の部分データは、2番目の部分データである。
所定時間は、サーバ30が無線機13に部分データを送信する時間間隔よも長く、ダイアグツール20が第1入出力部41に部分データを出力する時間間隔よりも長い。従って、制御プログラムPaに係る第1更新データ保存処理のステップS2で全ての部分データが削除されるか、又は、Na個の部分データの保存が完了しない限り、ステップS21を実行してから所定時間が経過するまで、次の部分データが記憶部43に保存される。
制御部44は、次の部分データが保存されていると判定した場合(S22:YES)、ステップS21を実行し、通信部40aは、次の部分データをECU11aに送信する。制御部44は、次の部分データが保存されていないと判定した場合(S22:NO)、Na個の部分データが通信部40aによって送信されたか否かを判定する(ステップS23)。
制御部44は、Na個の部分データが送信されたと判定した場合(S23:YES)、Na個の部分データで構成される更新データを記憶部43から削除する(ステップS24)。制御部44は、Na個の部分データが送信されていないと判定した場合(S23:NO)、サーバ30が部分データの繰り返し送信を停止したとして、削除指示データの送信を通信部40aに指示する(ステップS25)。
これにより、通信部40aはECU11aに削除指示データを送信する。前述したように、ECU11aは、削除指示データを受信した場合、通信部40aが送信した全ての部分データを削除する。このため、ECU11aは、サーバ30が送信した部分データに係る更新データを用いて、制御プログラムPaを更新することはない。
制御部44は、ステップS24又はステップS25を実行した後、制御プログラムPaに係る更新データ送信処理を終了する。
制御部44は、制御プログラムPbの更新データに係る1番目の部分データが記憶部43に保存された場合に、制御プログラムPbに係る更新データ送信処理を実行する。制御プログラムPbに係る更新データ送信処理は、制御プログラムPaに係る更新データ送信処理と同様である。制御プログラムPaに係る更新データ送信処理の説明において、制御プログラムPa、通信部40a及び整数Na夫々を、制御プログラムPb、通信部40b及び整数Nbに変更することによって、制御プログラムPbに係る更新データ送信処理を説明することができる。通信部40a,40b夫々は送信部として機能する。
以上のように、制御部44が制御プログラムPa(又は制御プログラムPb)の更新データに係る部分データを保存する都度、通信部40a(又は通信部40b)が部分データをECU11a(又はECU11b)に送信し、ECU11a(又はECU11b)は、受信した部分データを保存する。ECU11a,11b夫々は、削除指示データを受信した場合、受信した全ての部分データを削除する。前述したように、ECU11a(又はECU11b)では、更新データが記憶されており、かつ、車両100の状態が、制御プログラムPa(又は制御プログラムPb)を更新することが可能な状態である場合、更新データを用いて制御プログラムPa(又は制御プログラムPb)を更新する。
一般的に、サーバ30から受信した更新データを用いた更新は、車両100の乗員の許可を受けた上で不特定な場所で実行され、ダイアグツール20から入力された更新データを用いた更新は、販売店又は工場等でディーラーがダイアグツール20の操作部を操作することによって実行される。以上のことを考慮した場合、ダイアグツール20から入力された更新データを用いた更新は、サーバ30から受信した更新データを用いた更新よりも重要である。
中継装置10では、制御プログラムPaの更新データに係る部分データが無線機13から第2入出力部42に繰り返し入力されている間に、制御プログラムPaの更新データに係る部分データがダイアグツール20から第1入出力部41に入力された場合、制御部44は、第2入出力部42に入力された部分データの保存を停止する。そして、第1入出力部41に繰り返し入力される部分データを保存する。このため、サーバ30が無線機13に送信した更新データを用いた不要な制御プログラムPaの更新が防止される。
制御プログラムPbに関しても、制御プログラムPaに関して述べた効果と同様の効果が得られる。
なお、ECU11a,11bに更新データを記憶する記憶容量がない場合においては、中継装置10の制御部44は、更新データが記憶部43に保存しており、かつ、車両100の状態が、更新を行うことが可能な状態であるとき、更新データ送信処理を実行する。この更新データ送信処理では、制御部44は、通信部40a(又は通信部40b)に指示して、部分データを順次送信させる。ECU11a(又はECU11b)は、部分データを受信する都度、受信した部分データを用いて、制御プログラムPa(又は制御プログラムPb)を部分的に更新し、受信した部分データを削除する。ECU11a(又はECU11b)は、部分的な更新と、受信した部分データの削除とを繰り返し行うことで、制御プログラムPa(又は制御プログラムPb)全体を更新する。
(実施形態2)
実施形態1における中継装置10では、部分データが第2入出力部42に部分データが繰り返し入力されている間に、部分データがダイアグツール20から第1入出力部41に入力された場合、制御部44は、無条件に、第2入出力部42に入力された全ての部分データを削除する。しかしながら、制御部44は、無条件に、第2入出力部42に入力された全ての部分データを削除しなくてもよい。
以下では、実施形態2について、実施形態1と異なる点を説明する。後述する構成を除く他の構成については、実施形態1と共通しているため、実施形態1と共通する構成部には実施形態1と同一の参照符号を付してその説明を省略する。
実施形態2における通信システム1では、中継装置10の第1入出力部41は、ダイアグツール20が出力する部分データを指定する指定データをダイアグツール20に出力する。指定データは、制御プログラムPa又は制御プログラムPbの更新データについて配置番号を指定する。例えば、指定データは、制御プログラムPaの更新データを構成する10番目の部分データからNa番目の部分データを指定する。ダイアグツール20は、指定データが入力された場合、入力された指定データが指定する一又は複数の部分データを第1入出力部41に順次出力する。
図8は、実施形態2における第1更新データ保存処理の手順を示すフローチャートである。図8に示す第1更新データ保存処理は、制御プログラムPaに係る処理である。制御部44は、実施形態1と同様に、制御プログラムPaの更新データに係る部分データが第1入出力部41に入力された場合に制御プログラムPaに係る第1更新データ保存処理を実行する。
なお、実施形態1の説明で述べたように、部分データには、バージョン情報及び番号情報が含まれている。制御プログラムPaの更新データに係る部分データのバージョン情報は、更新後の制御プログラムPaのバージョンを示す。
実施形態2における第1更新データ保存処理のステップS31,S33,S34,S38〜S41夫々は、S1,S2,S3,S4〜S7と同様である。このため、ステップS31,S33,S34,S38〜S41の詳細な説明を省略する。
制御プログラムPaに係る第1更新データ保存処理では、制御部44は、ステップS31を実行した後、第1入出力部41に入力された部分データのバージョン情報が示すバージョンとバージョンが同一である部分データが記憶部43に保存されているか否かを判定する(ステップS32)。
制御プログラムPaの更新データに係る部分データが無線機13から第2入出力部42に繰り返し入力されている間に、制御プログラムPaの更新データに係る部分データが第1入出力部41に入力されて、制御プログラムPaに係る第1更新データ保存処理が開始されたと仮定する。この場合、制御部44は、ステップS32において、第1入出力部41に入力された部分データのバージョン情報が示すバージョンが、記憶部43に保存されている部分データ、即ち、第2入出力部42に入力された部分データのバージョン情報が示すバージョンと同一であるか否かを判定する。制御部44は判定部としても機能する。
制御部44は、バージョンが同一である部分データが保存されていないと判定した場合(S32:NO)、ステップS33,S34を実行する。これにより、制御プログラムPaの更新データに関して、記憶部43に既に保存されている全ての部分データが削除され、第1更新データ保存処理を開始する際に第1入出力部41に入力された部分データが記憶部43に保存される。
制御部44は、バージョンが同一である部分データが保存されていると判定した場合(S32:YES)、Na個の部分データの中で、記憶部43に保存されていない残りの部分データを指定する指定データの出力を第1入出力部41に指示する(ステップS35)。これにより、第1入出力部41は指定データを出力する。ダイアグツール20は、第1入出力部41から指定データが入力された場合、入力された指定データが示す部分データ、即ち、更新データを構成する残りの部分データを第1入出力部41に順次出力する。指定データは、更新データを構成する残りの部分データの出力を要求する出力要求データに相当する。第1入出力部41は、第2の出力部としても機能する。
なお、制御部44は、バージョンが同一である部分データが保存されていると判定した場合、第1更新データ保存処理が開始される際に第1入出力部41に入力された部分データを記憶部43に保存することはない。
次に、制御部44は、指定データが指定した部分データ中の1つが第1入出力部41に入力されたか否かを判定する(ステップS36)。制御部44は、指定データが指定した部分データ中のいずれも第1入出力部41に入力されていないと判定した場合(S36:NO)、ステップS36を再び実行し、指定データが指定した部分データ中の1つが第1入出力部41に入力されるまで待機する。
制御部44は、指定データが指定した部分データ中の1つが第1入出力部41に入力されたと判定した場合(S36:YES)、第1入出力部41に入力された部分データを記憶部43に保存する(ステップS37)。制御部44は、ステップS34又はステップS37を実行した後、ステップS38を実行する。
その後、制御部44は、制御プログラムPaの更新データに係るNa個の部分データが記憶部43に保存されるまで、ダイアグツール20からの部分データの入力を待機する。
実施形態2においても、制御プログラムPbに係る第1更新データ保存処理は、制御プログラムPaに係る第1更新データ保存処理と同様である。制御プログラムPaに係る第1更新データ保存処理の説明において、制御プログラムPa、Paフラグ及び整数Na夫々を、制御プログラムPb、Pbフラグ及び整数Nbに変更することによって、制御プログラムPbに係る第1更新データ保存処理を説明することができる。
図9は、通信システム1の動作の例を示すシーケンス図である。サーバ30が制御プログラムPaの更新データに係る部分データを無線機13に繰り返し送信し、無線機13が中継装置10の第2入出力部42に、制御プログラムPaの更新データに係る部分データを繰り返し出力していると仮定する。中継装置10の制御部44は、第2入出力部42に部分データが入力される都度、第2入出力部42に入力された部分データを記憶部43に保存する。
制御プログラムPaの更新データに係る部分データが第2入出力部42に繰り返し入力されている間に、ダイアグツール20から中継装置10の第1入出力部41に、有線で、制御プログラムPaの更新データに係る部分データが入力されたと仮定する。この場合、制御部44は、第2入出力部42に入力された部分データの保存を停止し、第2入出力部42に指示して、送信停止データを無線機13に出力させる。これにより、サーバ30は、制御プログラムPaの更新データに係る部分データの繰り返し送信を停止する。
次に、制御部44は、第1入出力部41に入力された部分データのバージョン情報が示すバージョンが、第2入出力部42に入力された部分データのバージョン情報が示すバージョンと同一であるか否かを判定する。制御部44は、第1入出力部41に入力された部分データのバージョン情報が示すバージョンが同一であると判定した場合、第1入出力部41に指示して、指定データを出力させ、制御プログラムPaの更新データを構成する残りの部分データの出力をダイアグツール20に要求する。ダイアグツール20は、第1入出力部41から指定データが入力された場合、入力された指定データが指定する部分データ、即ち、残りの部分データを第1入出力部41に順次出力する。
Na個の部分データの保存が完了するまで、ダイアグツール20は、制御プログラムPaの更新データに係る部分データを繰り返し出力する。制御部44は、制御プログラムPaの更新データに係る部分データがダイアグツール20から第1入出力部41に入力される都度、ダイアグツール20から第1入出力部41に有線で入力された部分データを記憶部43に保存する。
図10は更新データの構成の概略図である。第1入出力部41に入力された部分データのバージョン情報が示すバージョンが、第2入出力部42に入力された部分データのバージョン情報が示すバージョンと同一であると仮定する。この場合、図10に示すように、例えば、更新データを構成するNa個の部分データの中で、1番目から20番目の部分データは、無線機13から入力された部分データで構成され、21番目からNa番目の部分データはダイアグツール20から入力された部分データで構成される。このため、実施形態2における中継装置10では、更新データの取得に要する時間は短い。
実施形態2における通信システム1及び中継装置10夫々は、実施形態1における通信システム1及び中継装置10が奏する効果を同様に奏する。
なお、実施形態2における第1更新データ保存処理において、制御部44は、バージョンが同一である部分データが保存されていると判定した場合、第1入出力部41に指示して、部分データの繰り返し出力を停止するデータをダイアグツール20に出力し、処理を終了してもよい。
この構成では、第1入出力部41に入力された部分データのバージョン情報が示すバージョンが、第2入出力部42に入力された部分データのバージョン情報が示すバージョンと同一である場合、ダイアグツール20ではなく、サーバ30から更新データを取得する。この構成では、サーバ30から継続して部分データを取得する必要があるので、フラグの値の1への設定は、バージョンの判定後において、バージョンが同一である部分データが保存されていないと判定した場合に行われる。制御部44は、バージョンが同一である部分データが保存されていると判定した場合、フラグの値をゼロに維持する。
なお、実施形態1,2において、中継装置10に接続されるECUの数は、2に限定されず、3以上であってもよい。また、中継装置10に、複数の通信バスが接続され、各通信バスに一又は複数のECUが接続される構成であってもよい。この場合、中継装置10は、例えば、CANプロトコルに従って、一の通信バスに接続されるECUと、他の通信バスに接続されるECUとの間の通信を中継する。
また、無線機13から中継装置10の第2入出力部42に部分データが繰り返し入力されている場合において、ダイアグツール20から第1入出力部41に部分データが入力されたと仮定する。このとき、第2入出力部42に入力されている部分データに係る更新データによって構成される制御プログラムに無関係に、制御部44は、第2入出力部42に入力されている部分データの保存を停止してもよい。
具体的には、無線機13から第2入出力部42に制御プログラムPbの更新データに係る部分データが繰り返し入力されている間に、ダイアグツール20から第1入出力部41に制御プログラムPaの更新データに係る部分データが入力された場合、制御部44は、第2入出力部42に入力されている部分データの保存を停止してもよい。この場合も、制御部44は、第2入出力部42に入力されて記憶部43に保存した全ての部分データを削除し、サーバ30に部分データの繰り返し送信を停止させる。
ダイアグツール20が出力する部分データ、及び、サーバ30が送信する部分データは、制御プログラムPa,Pbの更新に用いる更新データの一部である部分データに限定されず、例えば、中継装置10の制御プログラムPrの更新に用いる更新データの一部である部分データであってもよい。この場合、車両100の状態が、制御プログラムPrを更新することが可能な状態であるとき、例えば、車両100のイグニッションスイッチがオフであるときに、制御部44は、図示しない更新プログラムを実行することによって、制御プログラムPrを更新する。
この構成を適用することができる装置は、通信を中継する中継装置に限定されず、CPUが制御プログラムを実行することによって制御を行う制御装置であればよい。
開示された実施形態1,2はすべての点で例示であって、制限的なものではないと考えられるべきである。本発明の範囲は、上述した意味ではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味及び範囲内でのすべての変更が含まれることが意図される。
1 通信システム
10 中継装置(保存装置)
11a,11b ECU(処理装置)
12,21 コネクタ
13 無線機
20 ダイアグツール(外部装置)
30 サーバ
40a,40b 通信部(送信部)
41 第1入出力部(第1入力部、第2の出力部)
42 第2入出力部(第2入力部、出力部)
43 記憶部
44 制御部(削除部、保存部、判定部)
45 内部バス
100 車両
E1 記憶媒体
Pa,Pb 制御プログラム
Pr 制御プログラム(コンピュータプログラム)

Claims (7)

  1. 外部装置に着脱可能に接続され、制御プログラムの更新に用いられる更新データの一部である部分データが前記外部装置から入力される第1入力部と、
    無線で受信された前記部分データが入力される第2入力部と、
    前記部分データが保存される記憶部と、
    前記第2入力部に前記部分データが入力された場合、前記第2入力部に入力された部分データを前記記憶部に保存し、前記第2入力部に前記部分データが繰り返し入力されている間に前記第1入力部に前記部分データが入力された場合、前記第2入力部に入力された部分データの保存を停止し、前記第1入力部に入力された部分データを前記記憶部に保存する保存部と
    を備える保存装置。
  2. 前記第2入力部に前記部分データが繰り返し入力されている間に前記第1入力部に前記部分データが入力された場合に、前記部分データの無線での繰り返し送信の停止を指示する送信停止データを出力する出力部を備える
    請求項1に記載の保存装置。
  3. 前記第2入力部に前記部分データが繰り返し入力されている間に前記第1入力部に前記部分データが入力された場合に、前記第2入力部に入力されて前記記憶部に保存された部分データを前記記憶部から削除する削除部を備える
    請求項1又は請求項2に記載の保存装置。
  4. 前記第2入力部に前記部分データが繰り返し入力されている間に前記第1入力部に前記部分データが入力された場合、前記第1入力部に入力された部分データに係る更新データを用いて更新された後の制御プログラムのバージョンが、前記第2入力部に入力された部分データに係る更新データを用いて更新された後の制御プログラムのバージョンと同一であるか否かを判定する判定部と、
    前記判定部によって、前記第1入力部に入力された部分データに係る更新データを用いて更新された後の制御プログラムのバージョンが同一であると判定された場合、前記更新データを構成する残りの部分データの出力を要求する出力要求データを前記外部装置に出力する第2の出力部と
    を備える請求項1から請求項3のいずれか1つに記載の保存装置。
  5. 請求項1から請求項4のいずれか1つに記載の保存装置と、
    前記保存装置に接続され、処理を実行する処理装置と
    を備え、
    前記制御プログラムは、前記処理装置によって実行され、
    前記保存装置は、前記部分データを前記処理装置に送信する送信部を有する
    通信システム。
  6. 制御プログラムの更新に用いられる更新データの一部である部分データが無線で受信された場合に、受信された部分データを保存するステップと、
    前記部分データが無線で繰り返し受信されている間に、有線で前記部分データが入力された場合に、無線で受信された部分データの保存を停止するステップと、
    前記部分データが無線で繰り返し受信されている間に、有線で前記部分データが入力された場合に、有線で入力された部分データを保存するステップと
    コンピュータが実行する保存方法。
  7. コンピュータに、
    制御プログラムの更新に用いられる更新データの一部である部分データが無線で受信された場合に、受信された部分データを保存するステップと、
    前記部分データが無線で繰り返し受信されている間に、有線で前記部分データが入力された場合に、無線で受信された部分データの保存を停止するステップと、
    前記部分データが無線で繰り返し受信されている間に、有線で前記部分データが入力された場合に、有線で受信した部分データを保存するステップと
    を実行させるためのコンピュータプログラム。
JP2018038859A 2018-03-05 2018-03-05 保存装置、通信システム、保存方法及びコンピュータプログラム Active JP6915569B2 (ja)

Priority Applications (6)

Application Number Priority Date Filing Date Title
JP2018038859A JP6915569B2 (ja) 2018-03-05 2018-03-05 保存装置、通信システム、保存方法及びコンピュータプログラム
US16/978,028 US12071082B2 (en) 2018-03-05 2019-03-04 Storing apparatus, communication system, storing method, and computer program
CN201980013922.7A CN111742293B (zh) 2018-03-05 2019-03-04 保存装置、通信系统、保存方法及计算机程序
CN202410720259.7A CN118760460A (zh) 2018-03-05 2019-03-04 保存装置、通信系统、保存方法及计算机程序
PCT/JP2019/008265 WO2019172154A1 (ja) 2018-03-05 2019-03-04 保存装置、通信システム、保存方法及びコンピュータプログラム
JP2021111013A JP7092241B2 (ja) 2018-03-05 2021-07-02 保存装置、通信システム、保存方法及びコンピュータプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018038859A JP6915569B2 (ja) 2018-03-05 2018-03-05 保存装置、通信システム、保存方法及びコンピュータプログラム

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2021111013A Division JP7092241B2 (ja) 2018-03-05 2021-07-02 保存装置、通信システム、保存方法及びコンピュータプログラム

Publications (3)

Publication Number Publication Date
JP2019153159A JP2019153159A (ja) 2019-09-12
JP2019153159A5 JP2019153159A5 (ja) 2020-05-14
JP6915569B2 true JP6915569B2 (ja) 2021-08-04

Family

ID=67847355

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2018038859A Active JP6915569B2 (ja) 2018-03-05 2018-03-05 保存装置、通信システム、保存方法及びコンピュータプログラム
JP2021111013A Active JP7092241B2 (ja) 2018-03-05 2021-07-02 保存装置、通信システム、保存方法及びコンピュータプログラム

Family Applications After (1)

Application Number Title Priority Date Filing Date
JP2021111013A Active JP7092241B2 (ja) 2018-03-05 2021-07-02 保存装置、通信システム、保存方法及びコンピュータプログラム

Country Status (4)

Country Link
US (1) US12071082B2 (ja)
JP (2) JP6915569B2 (ja)
CN (2) CN118760460A (ja)
WO (1) WO2019172154A1 (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3821144B2 (ja) * 2004-08-25 2006-09-13 ダイキン工業株式会社 床置き型空気調和機
JP2021047582A (ja) * 2019-09-18 2021-03-25 Necプラットフォームズ株式会社 Rom書き換えモジュール、電子装置、rom書き換え方法およびプログラム
JP7512944B2 (ja) 2021-04-27 2024-07-09 トヨタ自動車株式会社 更新制御システム、更新制御方法、更新制御プログラム、車載制御装置
JP2023070411A (ja) * 2021-11-09 2023-05-19 株式会社オートネットワーク技術研究所 管理装置、管理システム、管理方法及びコンピュータプログラム
US12008356B2 (en) 2022-03-04 2024-06-11 Honda Motor Co., Ltd. Multiple communication protocol coexistence

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20040006786A (ko) * 2002-07-15 2004-01-24 삼성전자주식회사 컴퓨터의 네트워크접속시스템 및 그 제어방법
JP2005094351A (ja) * 2003-09-17 2005-04-07 Nec Corp 個人情報の保存・管理システムおよび保存・管理方法
US11042816B2 (en) * 2009-10-30 2021-06-22 Getaround, Inc. Vehicle access control services and platform
US8804734B2 (en) * 2010-11-03 2014-08-12 Broadcom Corporation Unified vehicle network frame protocol
US9560133B2 (en) * 2011-06-06 2017-01-31 International Business Machines Corporation Acquiring multi-media content
JP5886099B2 (ja) * 2012-03-21 2016-03-16 日立オートモティブシステムズ株式会社 自動車用電子制御装置
CN104572141B (zh) * 2013-10-10 2019-03-12 上海信耀电子有限公司 车用电控单元ecu的引导程序的在线更新方法
JP6314775B2 (ja) * 2014-09-29 2018-04-25 株式会社オートネットワーク技術研究所 通信システム、車載装置、通信装置、及びコンピュータプログラム
JP5989190B1 (ja) * 2015-06-12 2016-09-07 三菱電機株式会社 ゲートウェイおよびこれを用いた車載ソフトウェア更新システム
JP6561811B2 (ja) 2015-12-09 2019-08-21 株式会社オートネットワーク技術研究所 車載通信装置、車載通信システム及び車両特定処理禁止方法
JP6428652B2 (ja) * 2016-01-06 2018-11-28 株式会社オートネットワーク技術研究所 車載更新装置、更新システム及び更新処理プログラム
CN107046605A (zh) * 2016-02-05 2017-08-15 日本冲信息株式会社 图像处理装置、图像形成装置及其固件程序更新方法
JP6356168B2 (ja) * 2016-03-02 2018-07-11 矢崎総業株式会社 有線無線複合通信システム及び有線無線複合通信方法
KR102249599B1 (ko) * 2017-03-21 2021-05-07 현대자동차 주식회사 차량 모듈의 소프트웨어 업데이트 정보 제공 서버 및 방법
CN107577472B (zh) * 2017-07-28 2020-05-08 深圳市海邻科信息技术有限公司 软件安装方法、装置及计算机可读存储介质
JP6897630B2 (ja) * 2018-05-11 2021-07-07 株式会社オートネットワーク技術研究所 車載更新装置、更新処理方法及び更新処理プログラム
JP7512944B2 (ja) * 2021-04-27 2024-07-09 トヨタ自動車株式会社 更新制御システム、更新制御方法、更新制御プログラム、車載制御装置

Also Published As

Publication number Publication date
JP2021170357A (ja) 2021-10-28
US12071082B2 (en) 2024-08-27
US20210001792A1 (en) 2021-01-07
WO2019172154A1 (ja) 2019-09-12
CN111742293B (zh) 2024-06-18
JP2019153159A (ja) 2019-09-12
JP7092241B2 (ja) 2022-06-28
CN118760460A (zh) 2024-10-11
CN111742293A (zh) 2020-10-02

Similar Documents

Publication Publication Date Title
JP7092241B2 (ja) 保存装置、通信システム、保存方法及びコンピュータプログラム
JP7388301B2 (ja) サーバ、管理方法、管理プログラム及びソフトウェア更新装置
JP7035635B2 (ja) 車両制御システム及び車両制御システムにおけるソフトウェアの整合性確認方法
JP7136278B2 (ja) 車載更新装置、更新処理方法及び更新処理プログラム
US11637782B2 (en) Vehicle on-board communication device and communication method
JP6390302B2 (ja) プログラム送信システム及びプログラム送信装置
US20140336851A1 (en) Train information managing apparatus and selection method for control software of train information managing apparatus
US20240069906A1 (en) Server, software update system, distribution method, and non-transitory storage medium
JP2024107431A (ja) 制御装置、方法、プログラム、及び車両
JP2023108066A (ja) ソフトウェア更新装置、更新制御方法、更新制御プログラム及びサーバ
JP5989190B1 (ja) ゲートウェイおよびこれを用いた車載ソフトウェア更新システム
JP2020021506A (ja) 電子制御装置及びセッション確立プログラム
US20230032451A1 (en) Center, method, and non-transitory storage medium
US20220342651A1 (en) Center, ota master, system, distribution method, non-transitory storage medium, and vehicle
WO2019017175A1 (ja) 送信装置、送信方法及びコンピュータプログラム
US20240375599A1 (en) Storing apparatus, communication system, storing method, and computer program
JP2013192092A (ja) 車載装置
WO2020195034A1 (ja) 車載更新装置、更新処理システム、更新処理方法及び処理プログラム
JP6528700B2 (ja) 車載制御装置、及び車載制御装置を含む車載ネットワーク
JP7586026B2 (ja) ソフトウェアの更新を制御するセンタ
US20080228840A1 (en) Data updating method and data processing system
JP2023023616A (ja) ソフトウェアの更新を制御するセンタ

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200406

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200618

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210309

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210426

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: 20210615

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210628

R150 Certificate of patent or registration of utility model

Ref document number: 6915569

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250