CN111742293B - Storage device, communication system, storage method, and computer program - Google Patents

Storage device, communication system, storage method, and computer program Download PDF

Info

Publication number
CN111742293B
CN111742293B CN201980013922.7A CN201980013922A CN111742293B CN 111742293 B CN111742293 B CN 111742293B CN 201980013922 A CN201980013922 A CN 201980013922A CN 111742293 B CN111742293 B CN 111742293B
Authority
CN
China
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
CN201980013922.7A
Other languages
Chinese (zh)
Other versions
CN111742293A (en
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
Application filed by Sumitomo Wiring Systems Ltd, AutoNetworks Technologies Ltd, Sumitomo Electric Industries Ltd filed Critical Sumitomo Wiring Systems Ltd
Publication of CN111742293A publication Critical patent/CN111742293A/en
Application granted granted Critical
Publication of CN111742293B publication Critical patent/CN111742293B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • 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
    • 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
    • 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)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Automation & Control Theory (AREA)
  • Mechanical Engineering (AREA)
  • Stored Programmes (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

In the relay device (10), when partial data, which is a part of update data for controlling program update, is input to a second input/output unit (42), a control unit (44) stores the partial data in a storage unit (43). When partial data is input to the first input/output unit (41) while partial data is repeatedly input to the second input/output unit (42), the control unit (44) stops the storage of the partial data input to the second input/output unit (42), and stores the partial data input to the first input/output unit (41) in the storage unit (43).

Description

Storage device, communication system, storage method, and computer program
Technical Field
The present disclosure relates to a storage device, a communication system, a storage method, and a computer program.
The present application claims priority based on japanese patent No. 2018-038859 applied at 3/5 of 2018, and all the contents described in the japanese patent are cited.
Background
Patent document 1 discloses a processing device for a vehicle that executes processing by executing a control program. The processing device is detachably connected to the diagnostic tool. Update data used for updating the control program is input from the diagnostic tool, and update data received by wireless is input.
The processing device described in patent document 1 prohibits the input of update data received by wireless during the period when update data is input from the diagnostic tool, and prohibits the input of update data from the diagnostic tool during the period when update data received by wireless is input. The control program is updated using update data input from the diagnostic tool or update data received wirelessly.
Prior art literature
Patent literature
Patent document 1: japanese patent laid-open No. 2017-105309
Disclosure of Invention
A storage device according to an embodiment of the present disclosure includes: a first input unit which is detachably connected to an external device and which inputs partial data, which is a part of update data for controlling program update, from the external device; a second input unit to which the partial data received by wireless is input; a storage unit for storing the partial data; and a storage unit that stores the partial data input to the second input unit in the storage unit when the partial data is input to the second input unit, and that stops storing the partial data input to the second input unit and stores the partial data input to the first input unit in the storage unit when the partial data is input to the first input unit while the partial data is repeatedly input to the second input unit.
A communication system according to an embodiment of the present disclosure includes: a storage device for storing partial data, which is a part of update data for controlling program update; and a processing device connected to the storage device, the processing device executing the control program, the storage device including: a first input unit detachably connected to an external device, and inputting the partial data from the external device; a second input unit to which the partial data received by wireless is input; a storage unit for storing the partial data; a storage unit that stores the partial data input to the second input unit in the storage unit when the partial data is input to the second input unit, and that stops storing the partial data input to the second input unit and stores the partial data input to the first input unit in the storage unit when the partial data is input to the first input unit while the partial data is repeatedly input to the second input unit; and a transmitting unit configured to transmit the partial data to the processing device.
The preservation method according to one embodiment of the present disclosure includes the steps of: in the case where partial data, which is a part of update data for controlling program update, is received by wireless, the received partial data is saved; when the partial data is inputted by wire during the period of repeatedly receiving the partial data by wireless, stopping the storage of the partial data received by wireless; and storing the partial data input by the wire when the partial data is input by the wire during the period of repeatedly receiving the partial data by wireless.
A computer program according to one embodiment of the present disclosure causes a computer to execute: in the case where partial data, which is a part of update data for controlling program update, is received by wireless, the received partial data is saved; when the partial data is inputted by wire during the period of repeatedly receiving the partial data by wireless, stopping the storage of the partial data received by wireless; and storing the partial data received by the wire when the partial data is input by the wire during the period of repeatedly receiving the partial data by wireless.
The present disclosure can be implemented not only as a storage device including such a characteristic processing unit, but also as a storage method including such a characteristic processing unit as a step, or as a computer program for causing a computer to execute such a step. In addition, the present disclosure can be implemented as a semiconductor integrated circuit that implements part or all of the storage device, or as a communication system including the storage device.
Drawings
Fig. 1 is a block diagram showing a main part configuration of a communication system in embodiment 1.
Fig. 2 is a block diagram showing a main part configuration of the relay device.
Fig. 3 is a flowchart showing the procedure of the first update data saving process related to the control program.
Fig. 4 is a flowchart showing the procedure of the second update data saving process related to the control program.
Fig. 5 is a timing chart showing an example of the operation of the communication system.
Fig. 6 is a timing chart showing another example of the operation of the communication system.
Fig. 7 is a flowchart showing the procedure of update data transmission processing according to the control program.
Fig. 8 is a flowchart showing the procedure of the first update data saving process in embodiment 2.
Fig. 9 is a timing chart showing an example of the operation of the communication system.
Fig. 10 is a schematic diagram of the structure of update data.
Detailed Description
[ Problem to be solved by the invention ]
Typically, the diagnostic tool is operated by a dealer. In a sales outlet, a factory, or the like where a vehicle is brought in, for example, there is a high possibility that a dealer updates a control program using update data input from a diagnostic tool in order to find a cause of a processing failure. On the other hand, for example, in addition to being permitted by the occupant of the vehicle, there is a high possibility that the update of the control program using the update data received by wireless is performed in an unspecified place. In view of the above, the update of the control program using the update data input from the diagnostic tool is more important than the update of the control program using the update data received by wireless.
It is assumed that the control program is updated with the update data received by wireless at a point in time when the dealer uses the diagnostic tool to update the control program. In this case, the dealer needs to wait until the update data received by wireless is input and the update of the control program is completed. After the update of the control program is completed, the dealer uses the diagnostic tool to re-update the control program. In this case, unnecessary control programs are updated using update data received wirelessly.
The present invention is directed to a storage device, a communication system, a storage method, and a computer program capable of preventing an update of an unnecessary control program using update data received by wireless.
[ Effect of the present disclosure ]
According to the present disclosure, it is possible to prevent an update of an unnecessary control program using update data received by wireless.
[ Description of embodiments of the present disclosure ]
First, embodiments of the present disclosure are described below. At least part of the embodiments described below may be optionally combined.
(1) A storage device according to an embodiment of the present disclosure includes: a first input unit which is detachably connected to an external device and which inputs partial data, which is a part of update data for controlling program update, from the external device; a second input unit to which the partial data received by wireless is input; a storage unit for storing the partial data; and a storage unit that stores the partial data input to the second input unit in the storage unit when the partial data is input to the second input unit, and that stops storing the partial data input to the second input unit and stores the partial data input to the first input unit in the storage unit when the partial data is input to the first input unit while the partial data is repeatedly input to the second input unit.
(2) The storage device according to one aspect of the present disclosure includes an output unit that outputs transmission stop data instructing to stop repeating transmission of the partial data by wireless when the partial data is input to the first input unit while the partial data is repeatedly input to the second input unit.
(3) The storage device according to one aspect of the present disclosure includes a deletion unit that deletes, when the partial data is input to the first input unit while the partial data is repeatedly input to the second input unit, the partial data input to the second input unit and stored in the storage unit.
(4) A storage device according to an embodiment of the present disclosure includes: a determination unit that determines, when the partial data is input to the first input unit while the partial data is repeatedly input to the second input unit, whether or not a version of a control program updated using update data related to the partial data input to the first input unit is the same as a version of a control program updated using update data related to the partial data input to the second input unit; and a second output unit configured to output, to the external device, output request data requesting that the remaining partial data constituting the update data be output, when the determination unit determines that the version of the control program updated using the update data related to the partial data input to the first input unit is the same as the version of the control program updated using the update data related to the partial data input to the second input unit.
(5) A communication system according to an embodiment of the present disclosure includes: a storage device for storing partial data, which is a part of update data for controlling program update; and a processing device connected to the storage device, the processing device executing the control program, the storage device including: a first input unit detachably connected to an external device, and inputting the partial data from the external device; a second input unit to which the partial data received by wireless is input; a storage unit for storing the partial data; a storage unit that stores the partial data input to the second input unit in the storage unit when the partial data is input to the second input unit, and that stops storing the partial data input to the second input unit and stores the partial data input to the first input unit in the storage unit when the partial data is input to the first input unit while the partial data is repeatedly input to the second input unit; and a transmitting unit configured to transmit the partial data to the processing device.
(6) The preservation method of one mode of the present disclosure includes the steps of: in the case where partial data, which is a part of update data for controlling program update, is received by wireless, the received partial data is saved; when the partial data is inputted by wire during the period of repeatedly receiving the partial data by wireless, stopping the storage of the partial data received by wireless; and storing the partial data input by the wire when the partial data is input by the wire during the period of repeatedly receiving the partial data by wireless.
(7) A computer program according to an embodiment of the present disclosure causes a computer to execute the steps of: in the case where partial data, which is a part of update data for controlling program update, is received by wireless, the received partial data is saved; when the partial data is inputted by wire during the period of repeatedly receiving the partial data by wireless, stopping the storage of the partial data received by wireless; and storing the partial data received by the wire when the partial data is input by the wire during the period of repeatedly receiving the partial data by wireless.
In the storage device, the storage method, and the computer program according to the above-described one embodiment, when partial data is input by wire while partial data received by wireless is repeatedly input, the storage of the partial data received by wireless in the storage unit is stopped, and the partial data input by wire is stored in the storage unit. Therefore, it is possible to prevent the update of an unnecessary control program using update data composed of a plurality of pieces of partial data received by wireless.
In the storage device according to the above-described one aspect, when partial data is input by wire while partial data received by wireless is repeatedly input, transmission stop data is output. Thus, the repeated transmission of the partial data by radio is stopped.
In the storage device according to the above-described one aspect, when the partial data is input by wire while the partial data received by wireless is repeatedly input, the partial data stored in the storage unit by wireless reception is deleted from the storage unit.
In the storage device according to the above-described one aspect, it is assumed that the partial data is input by wire while the partial data received by wireless is repeatedly input. In this case, it is determined whether or not the version of the control program updated using the update data related to the partial data inputted by wire is the same as the version of the control program updated using the update data related to the partial data received by wireless. When it is determined that the versions are the same, output request data is output to the external device, and the remaining partial data among the plurality of partial data constituting the update data is output to the external device via the wired line. Therefore, the time required for acquiring the update data is short.
In the communication system according to the above-described one aspect, the storage device transmits the partial data to the processing device. In the processing device, the control program is updated using update data composed of the received plurality of pieces of partial data.
Detailed description of embodiments of the disclosure
Specific examples of the communication system according to the embodiments of the present disclosure are described below with reference to the drawings. The present invention is not limited to these examples, but is defined by the claims, and is intended to include all modifications within the meaning and scope equivalent to the claims.
(Embodiment 1)
Fig. 1 is a block diagram showing a main part configuration of a communication system 1 in embodiment 1. The communication system 1 is preferably mounted on a vehicle 100, and includes a relay device 10, ECUs 11a and 11b, a connector 12, and a wireless device 13. The ECUs 11a and 11b, the connector 12, and the wireless device 13 are connected to the relay device 10.
The connector 12 is detachably connected to a connector 21 connected to the diagnostic tool 20. The diagnostic tool 20 is a portable device. When the connector 12 is connected to the connector 21, the relay device 10 is connected to the diagnostic tool 20. When the connectors 12 and 21 are disconnected, the diagnostic tool 20 is disconnected from the relay device 10.
The ECUs 11a and 11b are connected to electric devices, not shown, mounted on the vehicle 100. Each of the ECUs 11a and 11b has one or more CPU (Central Processing Unit) not shown. The ECU11a stores a control program Pa. The one or more CPUs included in the ECU11a execute a control program Pa to execute a control process for controlling the operation of the electrical devices connected to the ECU11 a. Similarly, the ECU11b stores a control program Pb. The one or more CPUs included in the ECU11b execute a control process for controlling the operation of the electrical devices connected to the ECU11b by executing the control program Pb.
The relay device 10 functions as a storage device. The ECUs 11a and 11b function as processing devices, respectively.
The ECUs 11a, 11b transmit data to the relay device 10, respectively. The relay device 10 transmits data received from the ECU11a to the ECU11b, and transmits data received from the ECU11b to the ECU11 a. As a result, the ECUs 11a and 11b communicate with each other via the relay device 10, and the plurality of electric devices connected to the ECUs 11a and 11b are operated in coordination. In this communication, a protocol corresponding to ethernet (registered trademark), CAN (Controller Area Network) protocol, or the like is used as a communication protocol.
The update data used for updating the control program Pa is composed of Na pieces of partial data (see fig. 10). Thus, the partial data is part of the update data. Na is an integer of 2 or more. The partial data includes version information indicating a version of the updated control program Pa and number information indicating a configuration number, in addition to program information indicating a part of the updated control program Pa. The update data is realized by configuring Na pieces of partial data in the order of configuration numbers.
The relay device 10 repeatedly transmits part of the data to the ECU11 a. When receiving the partial data received from the relay device 10, the ECU11a saves the received partial data. When Na pieces of partial data, that is, update data are stored, the ECU11a stands by until the state of the vehicle 100 is such that the control program Pa can be updated. When the state of the vehicle 100 is set to a state in which the control program Pa can be updated, one or more CPUs included in the ECU11a update the control program Pa using the update data.
The state in which the control program Pa can be updated is, for example, a state in which an ignition switch of the vehicle 100 is turned off.
The relay device 10 transmits deletion instruction data instructing deletion of the partial data to the ECU11a without requiring updating of the control program Pa using the update data related to the transmitted partial data while repeatedly transmitting the partial data to the ECU11 a. When the deletion instruction data is received, the ECU11a deletes all the partial data received from the relay device 10.
Similarly, update data used for updating the control program Pb is composed of Nb pieces of partial data. Nb is an integer of 2 or more. The partial data includes version information indicating the version of the updated control program Pb and number information indicating the configuration number, in addition to program information indicating a part of the updated control program Pb.
The update of the control program Pb and the deletion of the partial data by the ECU11b are the same as the update of the control program Pa and the deletion of the partial data by the ECU11a, respectively. Specifically, in the description of the update of the control program Pa and the deletion of the partial data by the ECU11a, the control program Pa, and the integer Na are replaced with the ECU11b, the control program Pb, and the integer Nb, respectively. Thus, the update of the control program Pb by the ECU11b and the deletion of part of the data can be described.
The diagnostic tool 20 has an unshown operation unit that is operated by a user, for example, a dealer. The diagnostic tool 20 operates according to the operation of the operation unit. When the connector 21 is connected to the connector 12, the diagnostic tool 20 outputs first request data requesting authentication of itself to the relay device 10. The first request data includes information such as identification information and a password. When the first request data is input, the relay device 10 authenticates the diagnostic tool 20 based on information included in the input first request data. When the authentication is successful, the relay device 10 outputs output license data that permits the output of data to the diagnostic tool 20.
After the output permission data is input, the diagnostic tool 20 outputs various data to the relay device 10. Specifically, the diagnostic tool 20 repeatedly outputs partial data related to the update data of the control program Pa to the relay device 10 via the connectors 21 and 12. Similarly, the diagnostic tool 20 repeatedly outputs partial data related to the update data of the control program Pb to the relay device 10 via the connectors 21 and 12.
When receiving data wirelessly from the server 30 provided outside the vehicle 100, the wireless device 13 outputs the received data to the relay device 10. Further, when data is input from the relay device 10, the wireless device 13 wirelessly transmits the input data to the server 30.
When the transmission condition of the update data of the control program Pa or the control program Pb is satisfied, the server 30 transmits second request data requesting authentication of itself to the wireless device 13. The second request data includes information such as identification information and a password. When receiving the second request data, the wireless device 13 outputs the received second request data to the relay device 10. When the second request data is input, the relay device 10 authenticates the server 30 based on information included in the input second request data.
When the authentication is successful, the relay device 10 outputs transmission permission data for permitting transmission of the data to the wireless device 13. The wireless device 13 transmits the transmission permission data to the server 30 by wireless. When receiving the transmission permission data from the wireless device 13, the server 30 repeatedly transmits partial data related to the update data of the control program Pa or the control program Pb to the wireless device 13 by wireless. Each time partial data related to the update data of the control program Pa or the control program Pb is received from the server 30 by wireless, the wireless device 13 outputs the received partial data to the relay device 10.
The server 30 repeatedly transmits the partial data related to the update data of the control program Pa to the wireless device 13 by radio, and repeatedly transmits the partial data related to the update data of the control program Pb to the wireless device 13 by radio.
The relay device 10 outputs transmission stop data instructing to stop repeatedly transmitting partial data by wireless to the wireless device 13. When transmission stop data is input from the relay device 10, the wireless device 13 wirelessly transmits the input transmission stop data to the server 30. When the server 30 receives the transmission stop data from the wireless device 13 while repeatedly transmitting the partial data related to the update data of the control program Pa or the control program Pb to the wireless device 13, the repeated transmission of the partial data is stopped. After that, when the transmission condition of the update data of the control program Pa or the control program Pb is satisfied, the server 30 transmits the second request data again to the wireless device 13, and repeatedly transmits part of the data to the wireless device 13.
Fig. 2 is a block diagram showing a main part configuration of the relay device 10. The relay device 10 includes two communication units 40a and 40b, a first input/output unit 41, a second input/output unit 42, a storage unit 43, and a control unit 44. Which are connected to an internal bus 45. The communication unit 40a is also connected to the ECU11 a. The communication unit 40b is also connected to the ECU11 b. The first input/output section 41 is also connected to the connector 12. The second input/output unit 42 is also connected to the wireless device 13.
When the connector 12 is connected to the connector 21, the diagnostic tool 20 is connected to the first input/output unit 41. When the connectors 12 and 21 are disconnected, the diagnostic tool 20 and the first input/output unit 41 are disconnected. In this way, the first input/output unit 41 is detachably connected to the diagnostic tool 20. The diagnostic tool 20 corresponds to an external device.
The communication unit 40a transmits data to the ECU11a in accordance with an instruction from the control unit 44. One of the data transmitted from the communication unit 40a to the ECU11a is partial data related to the update data of the control program Pa. The communication unit 40a receives data from the ECU11 a.
Similarly, the communication unit 40b transmits data to the ECU11b in accordance with an instruction from the control unit 44. One of the data transmitted from the communication unit 40b to the ECU11b is partial data related to the update data of the control program Pb. The communication unit 40b receives data from the ECU11 b.
The first input/output unit 41 outputs the output permission data to the diagnostic tool 20 via the connectors 12 and 21 in accordance with the instruction from the control unit 44. Further, partial data related to the update data of the control program Pa is repeatedly input from the diagnostic tool 20 to the first input/output unit 41 via the connectors 21 and 12. Similarly, partial data related to the update data of the control program Pb is repeatedly input from the diagnostic tool 20 to the first input/output unit 41 via the connectors 21 and 12. The first input/output unit 41 functions as a first input unit.
The second input/output unit 42 outputs transmission permission data and transmission stop data to the wireless device 13 in response to an instruction from the control unit 44. As described above, when data is input, the wireless device 13 transmits the input data to the server 30 by wireless. When receiving the transmission permission data from the wireless device 13, the server 30 starts repeated transmission of partial data related to update data of the control program Pa or the control program Pb. Further, when receiving the transmission stop data from the wireless device 13, the server 30 stops the repeated transmission of the partial data.
The second request data received by the wireless device 13 from the server 30 is input to the second input/output unit 42. Further, the partial data received by the wireless device 13 from the server 30 by wireless is repeatedly input from the wireless device 13 to the second input/output unit 42. Accordingly, the partial data related to the update data of the control program Pa and the partial data related to the update data of the control program Pb are input to the second input/output unit 42. The second input/output unit 42 functions as a second input unit.
The storage unit 43 is a nonvolatile memory. The storage unit 43 stores partial data related to the update data of each of the control programs Pa and Pb by the control unit 44.
The storage unit 43 also stores a control program Pr. The control section 44 has one or more CPUs. The one or more CPUs included in the control unit 44 execute the relay process, the tool authentication process, the server authentication process, the first update data storage process, the second update data storage process, and the update data transmission process by executing the control program Pr. The first update data storage process, the second update data storage process, and the update data transmission process include a process related to the control program Pa and a process related to the control program Pb, respectively. The control unit 44 performs the relay process, the tool authentication process, the server authentication process, the first update data storage process, the second update data storage process, and the update data transmission process in parallel in a time-sharing manner.
The relay processing is processing for relaying communication between the ECUs 11a, 11 b. The tool authentication process is a process of authenticating the diagnostic tool 20. The server authentication process is a process of authenticating the server 30 that communicates with the wireless device 13.
The first update data storage processing related to the control program Pa is processing for storing update data of the control program Pa input from the diagnostic tool 20 to the first input/output unit 41. The second update data storage processing related to the control program Pa is processing for storing update data of the control program Pa input from the wireless device 13 to the second input/output unit 42. The update data transmission process according to the control program Pa is a process of transmitting update data according to the control program Pa to the ECU11 a.
Similarly, the first update data storage processing relating to the control program Pb is processing for storing update data of the control program Pb input from the diagnostic tool 20 to the first input/output unit 41. The second update data storage processing related to the control program Pb is processing for storing update data of the control program Pb input from the wireless device 13 to the second input/output unit 42. The update data transmission process according to the control program Pb is a process of transmitting update data according to the control program Pb to the ECU11 b.
The control program Pr is a computer program for causing one or more CPUs included in the control unit 44 to execute a relay process, a tool authentication process, a server authentication process, a first update data storage process, a second update data storage process, and an update data transmission process.
The control program Pr may be stored in the storage medium E1 so that one or more CPUs included in the control unit 44 can read the control program. In this case, the control program Pr read from the storage medium E1 by a reading device not shown is stored in the storage unit 43. The storage medium E1 is an optical disk, a floppy disk, a magnetic disk, a magneto-optical disk, a semiconductor memory, or the like. The optical disk is CD (Compact Disc) -ROM (Read Only Memory), DVD (Digital Versatile Disc) -ROM, BD (Blu-ray (registered trademark) Disc), or the like. The magnetic disk is, for example, a hard disk. The control program Pr may be downloaded from an external device (not shown) connected to a communication network (not shown), and the downloaded control program Pr may be stored in the storage unit 43.
When one of the communication units 40a and 40b receives data, the control unit 44 executes relay processing. The control unit 44 selects a communication unit that transmits data from among the communication units 40a and 40b based on information included in the received data, and instructs the selected communication unit to transmit the received data. Thus, the communication unit selected by the control unit 44 transmits the received data. After the transmission of the received data is instructed, the control unit 44 ends the relay processing.
The control unit 44 executes the tool authentication process when the first request data is input from the diagnostic tool 20 to the first input/output unit 41. In the tool authentication process, the control unit 44 authenticates the diagnostic tool 20 based on information included in the input first request data. When the authentication of the diagnostic tool 20 is successful, the control unit 44 instructs the first input/output unit 41 to output the output permission data. Thus, the first input/output unit 41 outputs the output permission data to the diagnostic tool 20, and the diagnostic tool 20 outputs various data to the first input/output unit 41. The control unit 44 ends the tool authentication process when the authentication of the diagnostic tool 20 fails or after the output of the output permission data is instructed.
The control unit 44 performs a server authentication process when the second request data is input from the wireless device 13 to the second input/output unit 42. In the server authentication process, the control unit 44 authenticates the server 30 based on information included in the input second request data. When the authentication of the server 30 is successful, the control unit 44 instructs the second input/output unit 42 to output the transmission permission data. Thus, the second input/output unit 42 outputs the transmission permission data to the wireless device 13, and the wireless device 13 transmits the transmission permission data to the server 30. As described above, when the transmission permission data is received, the server 30 starts the repeated transmission of the partial data. When authentication of the server 30 fails or after transmission of transmission permission data is instructed, the control unit 44 ends the server authentication process.
Fig. 3 is a flowchart showing the procedure of the first update data saving process according to the control program Pa. When partial data related to update data of the control program Pa is input to the first input/output unit 41, the control unit 44 executes a first update data saving process related to the control program Pa.
The storage unit 43 stores a value of a flag (hereinafter referred to as a Pa flag) related to the control program Pa. The value of the Pa flag is set to 0 or 1 by the control unit 44. A value of 0 for the Pa flag indicates that partial data related to update data of the control program Pa is not repeatedly input from the diagnostic tool 20 to the first input/output unit 41. A value of 1 for the Pa flag indicates that partial data related to update data of the control program Pa is repeatedly input from the diagnostic tool 20 to the first input/output unit 41.
In the first update data storage processing related to the control program Pa, first, the control unit 44 sets the value of the Pa flag to 1 (step S1), and deletes all the partial data stored in the storage unit 43 for the update data of the control program Pa (step S2). Next, the control unit 44 stores the partial data input to the first input/output unit 41 at the start of the first update data storage process in the storage unit 43 (step S3), and determines whether the partial data related to the update data of the control program Pa is further input to the first input/output unit 41 (step S4).
When it is determined that the partial data is not input to the first input/output unit 41 (S4: no), the control unit 44 executes step S4 until the partial data related to the update data of the control program Pa is newly input to the first input/output unit 41. When it is determined that the partial data is input to the first input/output unit 41 (yes in step S4), the control unit 44 stores the partial data input to the first input/output unit 41 in the storage unit 43 (step S5), and determines whether Na partial data related to the update data of the control program Pa is stored in the storage unit 43 (step S6).
When it is determined that Na pieces of partial data are not stored (S6: no), the control unit 44 executes step S4, and stands by again until the partial data related to the update data of the control program Pa is newly input to the first input/output unit 41. When determining that Na pieces of partial data are stored (yes in S6), the control unit 44 sets the value of the Pa flag to 0 (step S7), and ends the first update data storage process related to the control program Pa.
As described above, when the partial data related to the update data of the control program Pa is input to the first input/output unit 41, the control unit 44 executes the first update data saving process related to the control program Pa. In the first update data storage process, the control unit 44 deletes all the partial data related to the update data of the control program Pa stored in the storage unit 43, and then stores the update data, which is Na partial data input to the first input/output unit 41, in the storage unit 43. The value of the Pa flag is set to 1 until Na pieces of partial data are input to the first input-output section 41.
When partial data related to update data of the control program Pb is input to the first input/output unit 41, the control unit 44 executes a first update data saving process related to the control program Pb.
The memory unit 43 stores a value of a flag (hereinafter referred to as Pb flag) related to the control program Pb. The value of Pb flag is set to 0 or 1 by control unit 44. A value of 0 for the Pb flag indicates that partial data related to update data of the control program Pb is not repeatedly input from the diagnostic tool 20 to the first input/output unit 41. A value of 1 for the Pb flag indicates that part of the data related to the update data of the control program Pb is repeatedly input from the diagnostic tool 20 to the first input/output unit 41.
The first update data saving process by the control program Pb is the same as the first update data saving process by the control program Pa. In the description of the first update data saving process related to the control program Pa, the first update data saving process related to the control program Pb can be described by changing the control program Pa, pa flag, and integer Na to the control program Pb, pb flag, and integer Nb, respectively.
Fig. 4 is a flowchart showing the procedure of the second update data saving process related to the control program Pa. When partial data related to update data of the control program Pa is input from the wireless device 13 to the second input/output unit 42, the control unit 44 executes second update data saving processing related to the control program Pa.
In the second update data saving process related to the control program Pa, first, the control unit 44 determines whether or not the value of the Pa flag is 0 (step S11). As described above, a value of 0 in the Pa flag indicates that partial data related to the update data of the control program Pa is not repeatedly input to the first input/output unit 41. A value of 1 for the Pa flag indicates that partial data related to update data of the control program Pa is repeatedly input to the first input/output unit 41.
When it is determined that the value of the Pa flag is not 0, that is, the value of the Pa flag is 1 (S11: no), the control unit 44 repeatedly inputs partial data related to the update data of the control program Pa to the first input/output unit 41, and thus instructs the second input/output unit 42 to output the transmission stop data (step S12). Thus, the second input/output unit 42 outputs the transmission stop data to the wireless device 13, and the wireless device 13 wirelessly transmits the transmission stop data to the server 30. When receiving the transmission stop data, the server 30 stops the repeated transmission of the partial data related to the update data of the control program Pa. After step S12 is executed, the control unit 44 does not store the partial data input to the second input/output unit 42 at the start of the second update data storage process in the storage unit 43, but ends the second update data storage process related to the control program Pa.
When it is determined that the value of the Pa flag is 0 (yes in step S11), the control unit 44 stores the partial data input to the second input/output unit 42 in the storage unit 43 (step S13), and determines again whether the value of the flag is 0 (step S14). Thereby, the control unit 44 monitors whether or not the diagnostic tool 20 starts outputting the partial data related to the update data of the control program Pa.
When it is determined that the value of the Pa flag is not 0, that is, the value of the Pa flag is 1 (S14: no), the control unit 44 executes step S12, and the server 30 stops the repeated transmission of the partial data related to the update data of the control program Pa. In the first update data saving process according to the control program Pa, after the value of the Pa flag is set to 1, all the data saved in the second update data saving process according to the control program Pa is deleted from the storage unit 43.
When it is determined that the value of the Pa flag is 0 (yes in S14), the control unit 44 determines whether or not partial data related to the update data of the control program Pa is input to the second input/output unit 42 (step S15). When it is determined that the partial data is not input (S15: no), the control unit 44 executes step S14 until the value of the Pa flag is changed to 1 or the partial data related to the update data of the control program Pa is input to the second input/output unit 42.
When it is determined that the partial data is input (yes in step S15), the control unit 44 stores the partial data input to the second input/output unit 42 in the storage unit 43 (step S16), and determines whether Na partial data related to the update data of the control program Pa is stored in the storage unit 43 (step S17). When it is determined that Na pieces of partial data are not stored (S17: no), the control unit 44 executes step S14, and stands by again until the value of the Pa flag is changed to 1 or the partial data related to the update data of the control program Pa is newly input to the second input/output unit 42.
When determining that Na pieces of partial data are stored (yes in S17), the control unit 44 ends the second update data storage process related to the control program Pa.
When the partial data related to the update data of the control program Pb is input from the wireless device 13 to the second input/output unit 42, the control unit 44 executes the second update data saving process related to the control program Pb. The second update data saving process related to the control program Pb is the same as the second update data saving process related to the control program Pa. In the description of the second update data saving process related to the control program Pa, the second update data saving process related to the control program Pb can be described by changing the control program Pa, pa flag, and integer Na to the control program Pb, pb flag, and integer Nb, respectively.
Fig. 5 is a timing chart showing an example of the operation of the communication system 1. The diagnostic tool 20 repeatedly outputs partial data related to the update data of the control program Pa to the first input/output unit 41 of the relay device 10. The control unit 44 of the relay device 10 stores the partial data input to the first input/output unit 41 in the storage unit 43 every time the partial data is input to the first input/output unit 41.
In this case, assuming that the server 30 transmits partial data related to the update data of the control program Pa to the wireless device 13, the wireless device 13 outputs the partial data to the second input/output unit 42. In this case, the control unit 44 instructs the second input/output unit 42 to cause the wireless device 13 to output transmission stop data, and the wireless device 13 transmits the transmission stop data to the server 30 by wireless. Thereby, the server 30 stops the repeated transmission of the partial data related to the update data of the control program Pa.
The diagnostic tool 20 repeatedly outputs the partial data related to the update data of the control program Pa until the output of Na partial data is completed. The control unit 44 stores Na pieces of partial data in the storage unit 43.
Fig. 6 is a timing chart showing another example of the operation of the communication system 1. Assuming that the server 30 repeatedly transmits the partial data related to the update data of the control program Pa to the wireless device 13, the wireless device 13 repeatedly outputs the partial data related to the update data of the control program Pa to the second input/output unit 42 of the relay device 10. The control unit 44 of the relay device 10 stores the partial data input to the second input/output unit 42 in the storage unit 43 every time the partial data is input to the second input/output unit 42.
It is assumed that the partial data related to the update data of the control program Pa is input from the diagnostic tool 20 to the first input/output unit 41 of the relay device 10 by wire while the partial data related to the update data of the control program Pa is repeatedly input to the second input/output unit 42. In this case, the control unit 44 deletes all the partial data input from the wireless device 13 to the second input/output unit 42 and stored in the storage unit 43 from the storage unit 43, and stops storing the partial data input to the second input/output unit 42. The control unit 44 instructs the second input/output unit 42 to output transmission stop data to the wireless device 13. Thereby, the wireless device 13 wirelessly transmits the transmission stop data to the server 30, and the server 30 stops the repeated transmission of the partial data related to the update data of the control program Pa. The control unit 44 functions as a deletion unit. The second input/output unit 42 also functions as an output unit.
Until the output of Na pieces of partial data is completed, the diagnostic tool 20 repeatedly outputs the partial data related to the update data of the control program Pa. The control unit 44 stores the partial data input from the diagnostic tool 20 to the first input/output unit 41 by wire in the storage unit 43 every time the partial data related to the update data of the control program Pa is input from the diagnostic tool 20 to the first input/output unit 41. The control unit 44 also functions as a storage unit.
The description using fig. 5 and 6 is a description in the case where the partial data outputted from the wireless device 13 and the diagnostic tool 20 is partial data related to the update data of the control program Pa. The operation in the case where the partial data outputted from the radio device 13 and the diagnostic tool 20 is the partial data related to the update data of the control program Pb is the same as the operation in the case where the partial data outputted from the radio device 13 and the diagnostic tool 20 is the partial data related to the update data of the control program Pa.
When the control program corresponding to the partial data input from the diagnostic tool 20 to the first input/output unit 41 and the control program corresponding to the partial data input from the wireless device 13 to the second input/output unit 42 are different from each other, the control unit 44 does not stop the repeated transmission of the partial data by the server 30. That is, the control unit 44 stores partial data related to the update data of the control program Pa, and stores partial data related to the update data of the control program Pb.
Fig. 7 is a flowchart showing the procedure of update data transmission processing according to the control program Pa. As described above, the partial data includes the number information indicating the configuration number. The arrangement number of the partial data related to the update data of the control program Pa is an integer of 1 or more and Na or less. As described above, the update data is realized by configuring Na pieces of partial data in the order of the configuration numbers. Hereinafter, the partial data having the arrangement number k (k: natural number) is described as kth partial data.
The server 30 sequentially transmits the partial data from the first partial data to the wireless machine 13 according to the configuration number. The diagnostic tool 20 sequentially outputs the partial data from the first partial data to the first input/output unit 41 according to the configuration number. The communication units 40a and 40b sequentially transmit the partial data from the first partial data to the ECUs 11a and 11b according to the configuration numbers, respectively.
When the first partial data related to the update data of the control program Pa is stored in the storage unit 43, the control unit 44 executes the update data transmission process related to the control program Pa.
In the update data transmission process according to the control program Pa, first, the control unit 44 instructs the communication unit 40a to transmit the partial data stored in the storage unit 43 (step S21). Thereby, the communication unit 40a transmits the partial data to the ECU11 a. Next, the control unit 44 determines whether or not the next partial data related to the update data of the control program Pa is stored in the storage unit 43 until a predetermined time elapses after step S21 is executed (step S22). For example, in the case where the first partial data is stored, the next partial data is the second partial data.
The predetermined time is longer than the time interval during which the server 30 transmits the partial data to the wireless device 13, and longer than the time interval during which the diagnostic tool 20 outputs the partial data to the first input/output unit 41. Therefore, if all the partial data is deleted or Na partial data is not stored in the step S2 of the first update data storage process related to the control program Pa, the next partial data is stored in the storage unit 43 until a predetermined time elapses from the execution of the step S21.
When it is determined that the next partial data is stored (yes in S22), the control unit 44 proceeds to step S21, and the communication unit 40a transmits the next partial data to the ECU11 a. When determining that the next partial data is not stored (no in step S22), the control unit 44 determines whether Na partial data is transmitted from the communication unit 40a (step S23).
When determining that Na pieces of partial data are transmitted (yes in S23), the control unit 44 deletes the update data composed of Na pieces of partial data from the storage unit 43 (step S24). When determining that Na pieces of partial data have not been transmitted (no in S23), the control unit 44 considers that the server 30 has stopped the repeated transmission of the partial data, and instructs the communication unit 40a to transmit deletion instruction data (step S25).
Thereby, the communication unit 40a transmits the deletion instruction data to the ECU11 a. As described above, when the ECU11a receives the deletion instruction data, it deletes all the partial data transmitted by the communication unit 40 a. Therefore, the ECU11a does not update the control program Pa with the update data related to the partial data transmitted from the server 30.
After step S24 or step S25 is executed, the control unit 44 ends the update data transmission process related to the control program Pa.
When the first partial data related to the update data of the control program Pb is stored in the storage unit 43, the control unit 44 executes the update data transmission process related to the control program Pb. The update data transmission process according to the control program Pb is the same as the update data transmission process according to the control program Pa. In the description of the update data transmission process related to the control program Pa, the update data transmission process related to the control program Pb can be described by changing the control program Pa, the communication unit 40a, and the integer Na to the control program Pb, the communication unit 40b, and the integer Nb, respectively. The communication units 40a and 40b function as transmission units, respectively.
As described above, each time the control unit 44 saves the partial data related to the update data of the control program Pa (or the control program Pb), the communication unit 40a (or the communication unit 40 b) transmits the partial data to the ECU11a (or the ECU11 b), and the ECU11a (or the ECU11 b) saves the received partial data. When the ECU11a, 11b receives the deletion instruction data, it deletes all the received partial data. As described above, when the ECU11a (or the ECU11 b) stores update data and the state of the vehicle 100 is a state in which the control program Pa (or the control program Pb) can be updated, the control program Pa (or the control program Pb) is updated using the update data.
In general, updating using the update data received from the server 30 is performed in an unspecified location upon permission by the occupant of the vehicle 100, and updating using the update data input from the diagnostic tool 20 is performed by operating an operation unit of the diagnostic tool 20 by a dealer at a sales outlet, a factory, or the like. When the above is considered, the update using the update data input from the diagnostic tool 20 is more important than the update using the update data received from the server 30.
In the relay device 10, while the partial data related to the update data of the control program Pa is repeatedly input from the wireless device 13 to the second input/output unit 42, when the partial data related to the update data of the control program Pa is input from the diagnostic tool 20 to the first input/output unit 41, the control unit 44 stops the storage of the partial data input to the second input/output unit 42. Further, the partial data repeatedly input to the first input/output unit 41 is stored. Therefore, the server 30 can be prevented from updating with the unnecessary control program Pa that uses the update data transmitted to the wireless device 13.
With regard to the control program Pb, the same effects as those described with regard to the control program Pa can also be obtained.
When the ECU11a or 11b has no storage capacity for storing the update data, the control unit 44 of the relay device 10 executes the update data transmission process when the update data is stored in the storage unit 43 and the state of the vehicle 100 is in a state where the update is possible. In this update data transmission process, the control unit 44 instructs the communication unit 40a (or the communication unit 40 b) to sequentially transmit partial data. The ECU11a (or the ECU11 b) updates the control program Pa (or the control program Pb) partially using the received partial data every time the partial data is received, and deletes the received partial data. The ECU11a (or the ECU11 b) updates the entire control program Pa (or the control program Pb) by repeating the partial update and the deletion of the received partial data.
(Embodiment 2)
In the relay device 10 according to embodiment 1, while the partial data is repeatedly input to the second input/output unit 42, the control unit 44 unconditionally deletes all the partial data input to the second input/output unit 42 when the partial data is input to the first input/output unit 41 from the diagnostic tool 20. However, the control unit 44 may not unconditionally delete all the partial data input to the second input/output unit 42.
Hereinafter, the point where embodiment 2 differs from embodiment 1 will be described. Since the other structures except for those described below are common to embodiment 1, the same reference numerals as those in embodiment 1 are given to the structural parts common to embodiment 1, and the description thereof is omitted.
In the communication system 1 according to embodiment 2, the first input/output unit 41 of the relay device 10 outputs the designation data designating the partial data outputted by the diagnostic tool 20 to the diagnostic tool 20. The specification data specifies a configuration number for update data of the control program Pa or the control program Pb. For example, the specification data specifies Na-th partial data from tenth partial data constituting update data of the control program Pa. When the designation data is input, the diagnostic tool 20 sequentially outputs one or more pieces of partial data designated by the input designation data to the first input/output unit 41.
Fig. 8 is a flowchart showing the procedure of the first update data saving process in embodiment 2. The first update data saving process shown in fig. 8 is a process related to the control program Pa. The control unit 44 executes the first update data saving process according to the control program Pa when the partial data according to the update data of the control program Pa is input to the first input/output unit 41, as in embodiment 1.
As described in the description of embodiment 1, the partial data includes version information and number information. The version information of the partial data related to the update data of the control program Pa indicates the version of the updated control program Pa.
Steps S31, S33, S34, S38 to S41 of the first update data storage process in embodiment 2 are the same as S1, S2, S3, S4 to S7, respectively. Therefore, the detailed description of steps S31, S33, S34, S38 to S41 will be omitted.
In the first update data storage process related to the control program Pa, after step S31 is executed, the control unit 44 determines whether or not the storage unit 43 stores therein partial data having the same version as the version indicated by the version information of the partial data input to the first input/output unit 41 (step S32).
It is assumed that while the partial data relating to the update data of the control program Pa is repeatedly input from the wireless device 13 to the second input/output unit 42, the partial data relating to the update data of the control program Pa is input to the first input/output unit 41, and the first update data storage process relating to the control program Pa is started. In this case, the control unit 44 determines in step S32 whether or not the version indicated by the version information of the partial data input to the first input/output unit 41 is identical to the version indicated by the version information of the partial data stored in the storage unit 43, that is, the partial data input to the second input/output unit 42. The control unit 44 also functions as a determination unit.
When it is determined that the partial data having the same version is not stored (no in S32), the control unit 44 executes steps S33 and S34. As a result, all the partial data stored in the storage unit 43 is deleted with respect to the update data of the control program Pa, and the partial data input to the first input/output unit 41 is stored in the storage unit 43 when the first update data storage process is started.
When it is determined that the partial data of the same version is stored (yes in S32), the control unit 44 instructs the first input/output unit 41 to output the designation data designating the remaining partial data not stored in the storage unit 43, out of the Na partial data (step S35). Thereby, the first input/output section 41 outputs the designation data. When the specification data is input from the first input/output unit 41, the diagnostic tool 20 sequentially outputs the remaining partial data constituting the update data, which is the partial data indicated by the input specification data, to the first input/output unit 41. The specified data corresponds to output request data for requesting output of the remaining partial data constituting the update data. The first input/output unit 41 also functions as a second output unit.
When it is determined that the partial data of the same version is stored, the control unit 44 does not store the partial data input to the first input/output unit 41 at the start of the first update data storage process in the storage unit 43.
Next, the control unit 44 determines whether or not one of the partial data specified by the specification data is input to the first input/output unit 41 (step S36). When it is determined that none of the partial data specified by the specified data is input to the first input/output unit 41 (S36: no), the control unit 44 executes step S36 again until one of the partial data specified by the specified data is input to the first input/output unit 41.
When it is determined that one of the partial data specified by the specification data is input to the first input/output unit 41 (yes in S36), the control unit 44 saves the partial data input to the first input/output unit 41 in the storage unit 43 (step S37). After step S34 or step S37 is executed, the control unit 44 executes step S38.
After that, the control unit 44 waits for input of the partial data from the diagnostic tool 20 until Na partial data related to the update data of the control program Pa is stored in the storage unit 43.
In embodiment 2, the first update data saving process according to the control program Pb is also the same as the first update data saving process according to the control program Pa. In the description of the first update data saving process related to the control program Pa, the first update data saving process related to the control program Pb can be described by changing the control program Pa, pa flag, and integer Na to the control program Pb, pb flag, and integer Nb, respectively.
Fig. 9 is a timing chart showing an example of the operation of the communication system 1. Assuming that the server 30 repeatedly transmits the partial data related to the update data of the control program Pa to the wireless device 13, the wireless device 13 repeatedly outputs the partial data related to the update data of the control program Pa to the second input/output unit 42 of the relay device 10. The control unit 44 of the relay device 10 stores the partial data input to the second input/output unit 42 in the storage unit 43 every time the partial data is input to the second input/output unit 42.
It is assumed that the partial data related to the update data of the control program Pa is input from the diagnostic tool 20 to the first input/output unit 41 of the relay device 10 by wire while the partial data related to the update data of the control program Pa is repeatedly input to the second input/output unit 42. In this case, the control unit 44 stops the storage of the partial data input to the second input/output unit 42, instructs the second input/output unit 42, and causes the wireless device 13 to output the transmission stop data. Thereby, the server 30 stops the repeated transmission of the partial data related to the update data of the control program Pa.
Next, the control unit 44 determines whether or not the version indicated by the version information of the partial data input to the first input/output unit 41 is identical to the version indicated by the version information of the partial data input to the second input/output unit 42. When it is determined that the versions indicated by the version information of the partial data input to the first input/output unit 41 are the same, the control unit 44 instructs the first input/output unit 41 to output the specified data, and requests the diagnostic tool 20 to output the remaining partial data constituting the update data of the control program Pa. When the specification data is input from the first input/output unit 41, the diagnostic tool 20 sequentially outputs the remaining part data, which is part of the data specified by the input specification data, to the first input/output unit 41.
Until the storage of Na pieces of partial data is completed, the diagnostic tool 20 repeatedly outputs the partial data related to the update data of the control program Pa. The control unit 44 stores the partial data input from the diagnostic tool 20 to the first input/output unit 41 by wire in the storage unit 43 every time the partial data related to the update data of the control program Pa is input from the diagnostic tool 20 to the first input/output unit 41.
Fig. 10 is a schematic diagram of the structure of update data. It is assumed that the version indicated by the version information of the partial data input to the first input-output section 41 is the same as the version indicated by the version information of the partial data input to the second input-output section 42. In this case, as shown in fig. 10, for example, among Na pieces of partial data constituting the update data, the first to twentieth pieces of partial data are constituted by the partial data input from the wireless device 13, and the twentieth to Na pieces of partial data are constituted by the partial data input from the diagnostic tool 20. Therefore, in the relay device 10 according to embodiment 2, the time required for acquiring update data is short.
The communication system 1 and the relay device 10 in embodiment 2 also serve as the communication system 1 and the relay device 10 in embodiment 1, respectively.
In the first update data storage processing according to embodiment 2, when it is determined that partial data of the same version is stored, the control unit 44 may instruct the first input/output unit 41 to output data for stopping the repeated output of the partial data to the diagnostic tool 20, and may end the processing.
In this configuration, when the version indicated by the version information of the partial data input to the first input/output unit 41 is the same as the version indicated by the version information of the partial data input to the second input/output unit 42, the update data is acquired not from the diagnostic tool 20 but from the server 30. In this configuration, since it is necessary to continuously acquire partial data from the server 30, when it is determined that partial data having the same version is not stored after the version determination, the flag value is set to 1. When it is determined that the partial data having the same version is stored, the control unit 44 maintains the flag value at 0.
In embodiments 1 and 2, the number of ECUs connected to the relay device 10 is not limited to two, but may be three or more. Further, a plurality of communication buses may be connected to the relay device 10, and one or a plurality of ECUs may be connected to each communication bus. In this case, the relay device 10 relays communication between the ECU connected to one communication bus and the ECU connected to the other communication bus, for example, in accordance with the CAN protocol.
Further, it is assumed that when the partial data is repeatedly input from the wireless device 13 to the second input/output unit 42 of the relay device 10, the partial data is input from the diagnostic tool 20 to the first input/output unit 41. At this time, the control unit 44 may stop the storage of the partial data input to the second input/output unit 42 regardless of the control program composed of the update data related to the partial data input to the second input/output unit 42.
Specifically, the control unit 44 may stop the storage of the partial data input to the second input/output unit 42 when the partial data related to the update data of the control program Pa is input from the diagnostic tool 20 to the first input/output unit 41 while the partial data related to the update data of the control program Pb is repeatedly input from the wireless device 13 to the second input/output unit 42. In this case, the control unit 44 also deletes all the partial data input to the second input/output unit 42 and stored in the storage unit 43, and stops the repeated transmission of the partial data by the server 30.
The partial data outputted by the diagnostic tool 20 and the partial data transmitted by the server 30 are not limited to partial data that is a part of update data used for updating the control programs Pa and Pb, and may be partial data that is a part of update data used for updating the control program Pr of the relay device 10, for example. In this case, when the state of the vehicle 100 is a state in which the control program Pr can be updated, for example, when the ignition switch of the vehicle 100 is turned off, the control unit 44 executes an update program, not shown, to update the control program Pr.
The device to which this configuration can be applied is not limited to a relay device that relays communication, and may be a control device that performs control by executing a control program by a CPU.
It should be considered that the disclosed embodiments 1, 2 are examples in all respects and are not limiting. The scope of the present invention is defined by the appended claims, rather than by the description given above, and is intended to include all modifications within the meaning and scope equivalent to the claims.
Description of the reference numerals
1. Communication system
10. Relay device (preservation device)
11A, 11b ECU (processing device)
12. 21 Connector
13. Wireless machine
20. Diagnostic tool (external device)
30. Server device
40A, 40b communication unit (transmitting unit)
41. A first input/output unit (first input unit, second output unit)
42. A second input/output unit (second input unit, output unit)
43. Storage unit
44. Control unit (deletion unit, storage unit, determination unit)
45. Internal bus
100. Vehicle with a vehicle body having a vehicle body support
E1 Storage medium
Pa, pb control program
Pr control program (computer program).

Claims (8)

1. A storage device is provided with:
A first input unit which is detachably connected to an external device and which inputs partial data, which is a part of update data for controlling program update, from the external device;
A second input unit to which the partial data received by wireless is input;
A storage unit for storing the partial data; and
And a storage unit configured to store the partial data input to the second input unit in the storage unit when the partial data is input to the second input unit, and to stop storing the partial data input to the second input unit and store the partial data input to the first input unit in the storage unit when the partial data is input to the first input unit while the partial data is repeatedly input to the second input unit.
2. The preservation apparatus defined in claim 1 wherein,
The storage device includes an output unit that outputs transmission stop data instructing to stop repeating transmission of the partial data by wireless when the partial data is input to the first input unit while the partial data is repeatedly input to the second input unit.
3. The preservation apparatus defined in claim 1 wherein,
The storage device includes a deletion unit configured to delete, from the storage unit, the partial data input to the second input unit and stored in the storage unit when the partial data is input to the first input unit while the partial data is repeatedly input to the second input unit.
4. The preservation apparatus defined in claim 2 wherein,
The storage device includes a deletion unit configured to delete, from the storage unit, the partial data input to the second input unit and stored in the storage unit when the partial data is input to the first input unit while the partial data is repeatedly input to the second input unit.
5. The storage device according to any one of claims 1 to 4, comprising:
A determination unit that determines, when the partial data is input to the first input unit while the partial data is repeatedly input to the second input unit, whether or not a version of a control program updated using update data related to the partial data input to the first input unit is the same as a version of a control program updated using update data related to the partial data input to the second input unit; and
And a second output unit configured to output, to the external device, output request data requesting that the remaining partial data constituting the update data be output, when the determination unit determines that the version of the control program updated using the update data related to the partial data input to the first input unit is identical to the version of the control program updated using the update data related to the partial data input to the second input unit.
6. A communication system is provided with:
a storage device for storing partial data, which is a part of update data for controlling program update; and
Processing means connected to the storage means for executing processing by executing the control program,
The storage device includes:
a first input unit detachably connected to an external device, and inputting the partial data from the external device;
A second input unit to which the partial data received by wireless is input;
A storage unit for storing the partial data;
A storage unit that stores the partial data input to the second input unit in the storage unit when the partial data is input to the second input unit, and that stops storing the partial data input to the second input unit and stores the partial data input to the first input unit in the storage unit when the partial data is input to the first input unit while the partial data is repeatedly input to the second input unit; and
And a transmitting unit configured to transmit the partial data to the processing device.
7. A preservation method comprising the steps of:
In the case where partial data, which is a part of update data for controlling program update, is received by wireless, the received partial data is saved;
when the partial data is inputted by wire during the period of repeatedly receiving the partial data by wireless, stopping the storage of the partial data received by wireless; and
When the partial data is input by wire while the partial data is repeatedly received by wireless, the partial data input by wire is stored.
8. A computer program for causing a computer to perform the steps of:
In the case where partial data, which is a part of update data for controlling program update, is received by wireless, the received partial data is saved;
when the partial data is inputted by wire during the period of repeatedly receiving the partial data by wireless, stopping the storage of the partial data received by wireless; and
When the partial data is input by wire during the period of repeating the reception of the partial data by wireless, the partial data received by wire is stored.
CN201980013922.7A 2018-03-05 2019-03-04 Storage device, communication system, storage method, and computer program Active CN111742293B (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2018038859A JP6915569B2 (en) 2018-03-05 2018-03-05 Storage device, communication system, storage method and computer program
JP2018-038859 2018-03-05
PCT/JP2019/008265 WO2019172154A1 (en) 2018-03-05 2019-03-04 Storage device, communication system, storage method, and computer program

Publications (2)

Publication Number Publication Date
CN111742293A CN111742293A (en) 2020-10-02
CN111742293B true CN111742293B (en) 2024-06-18

Family

ID=67847355

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201980013922.7A Active CN111742293B (en) 2018-03-05 2019-03-04 Storage device, communication system, storage method, and computer program

Country Status (4)

Country Link
US (1) US20210001792A1 (en)
JP (2) JP6915569B2 (en)
CN (1) CN111742293B (en)
WO (1) WO2019172154A1 (en)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3821144B2 (en) * 2004-08-25 2006-09-13 ダイキン工業株式会社 Floor-mounted air conditioner
JP2021047582A (en) * 2019-09-18 2021-03-25 Necプラットフォームズ株式会社 ROM rewriting module, electronic device, ROM rewriting method and program
JP2022168981A (en) 2021-04-27 2022-11-09 トヨタ自動車株式会社 Update control system, update control method, update control program, and on-vehicle control apparatus
JP2023070411A (en) * 2021-11-09 2023-05-19 株式会社オートネットワーク技術研究所 Management device, management system, management method and computer program
US12008356B2 (en) 2022-03-04 2024-06-11 Honda Motor Co., Ltd. Multiple communication protocol coexistence

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107154958A (en) * 2016-03-02 2017-09-12 矢崎总业株式会社 Wire and wireless combined communications system and wire and wireless composite communication method

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20040006786A (en) * 2002-07-15 2004-01-24 삼성전자주식회사 Network connecting system for computer and method of controlling the same
JP2005094351A (en) * 2003-09-17 2005-04-07 Nec Corp Personal information storage/management system and storing/managing method
US11042816B2 (en) * 2009-10-30 2021-06-22 Getaround, Inc. Vehicle access control services and platform
US8976744B2 (en) * 2010-11-03 2015-03-10 Broadcom Corporation Vehicle communication network including wireless communications
US8762479B2 (en) * 2011-06-06 2014-06-24 Cleversafe, Inc. Distributing multi-media content to a plurality of potential accessing devices
JP5886099B2 (en) * 2012-03-21 2016-03-16 日立オートモティブシステムズ株式会社 Electronic control unit for automobile
CN104572141B (en) * 2013-10-10 2019-03-12 上海信耀电子有限公司 The online updating method of the bootstrap of automobile electric control unit ECU
JP6314775B2 (en) * 2014-09-29 2018-04-25 株式会社オートネットワーク技術研究所 Communication system, in-vehicle device, communication device, and computer program
JP5989190B1 (en) * 2015-06-12 2016-09-07 三菱電機株式会社 Gateway and in-vehicle software update system using the same
JP6561811B2 (en) * 2015-12-09 2019-08-21 株式会社オートネットワーク技術研究所 In-vehicle communication device, in-vehicle communication system, and vehicle specific processing prohibition method
JP6428652B2 (en) * 2016-01-06 2018-11-28 株式会社オートネットワーク技術研究所 In-vehicle update device, update system, and update processing program
CN107046605A (en) * 2016-02-05 2017-08-15 日本冲信息株式会社 Image processing apparatus, image processing system and its firmware program updating method
CN107577472B (en) * 2017-07-28 2020-05-08 深圳市海邻科信息技术有限公司 Software installation method and device and computer readable storage medium

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107154958A (en) * 2016-03-02 2017-09-12 矢崎总业株式会社 Wire and wireless combined communications system and wire and wireless composite communication method

Also Published As

Publication number Publication date
US20210001792A1 (en) 2021-01-07
JP2021170357A (en) 2021-10-28
WO2019172154A1 (en) 2019-09-12
JP2019153159A (en) 2019-09-12
JP6915569B2 (en) 2021-08-04
CN111742293A (en) 2020-10-02
JP7092241B2 (en) 2022-06-28

Similar Documents

Publication Publication Date Title
CN111742293B (en) Storage device, communication system, storage method, and computer program
US11637782B2 (en) Vehicle on-board communication device and communication method
US11507365B2 (en) On-board update device, update processing program, program update method, and on-board update system
JP6390302B2 (en) Program transmission system and program transmission apparatus
CN110244959B (en) Vehicle control system and software compatibility checking method
US11354112B2 (en) On-board update device, update process method, and update process program
JP2018037059A (en) On-vehicle update device and on-vehicle update system
US20140336851A1 (en) Train information managing apparatus and selection method for control software of train information managing apparatus
JP7192415B2 (en) Program update system and update processing program
CN110753906B (en) Update control device, control method, and computer program
US20240069906A1 (en) Server, software update system, distribution method, and non-transitory storage medium
JP2020021142A (en) Program updating system, program updating server, and vehicle
US20220413832A1 (en) Onboard Update Apparatus and Update Processing Program
JP5989190B1 (en) Gateway and in-vehicle software update system using the same
CN113613954A (en) Electronic control device and method for setting control data
JP2020021506A (en) Electronic controller and session establishing program
US20230195445A1 (en) On-board device, information processing method, and computer program
JP2019021130A (en) Transmission device, transmission method, and computer program
US11861354B2 (en) Update control system, update control method, non-transitory storage medium, and in-vehicle control device
US20220342651A1 (en) Center, ota master, system, distribution method, non-transitory storage medium, and vehicle
JP6912954B2 (en) Rewriting system and computer
CN117850838A (en) Method and system for firmware upgrade, electronic device, remote controller and storage medium
CN111414176A (en) Program burning method, program burning device, electronic equipment and storage medium
CN114840228A (en) Center, information rewriting method, and non-transitory storage medium
CN113873498A (en) Server, management method, non-temporary storage medium, software updating device, center, and over-the-air host

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant