WO2017150247A1 - 端末装置およびソフトウェア書き換えプログラム - Google Patents
端末装置およびソフトウェア書き換えプログラム Download PDFInfo
- Publication number
- WO2017150247A1 WO2017150247A1 PCT/JP2017/006113 JP2017006113W WO2017150247A1 WO 2017150247 A1 WO2017150247 A1 WO 2017150247A1 JP 2017006113 W JP2017006113 W JP 2017006113W WO 2017150247 A1 WO2017150247 A1 WO 2017150247A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- terminal device
- software
- source code
- unit
- control
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
- G06F8/71—Version control; Configuration management
-
- A—HUMAN NECESSITIES
- A01—AGRICULTURE; FORESTRY; ANIMAL HUSBANDRY; HUNTING; TRAPPING; FISHING
- A01D—HARVESTING; MOWING
- A01D41/00—Combines, i.e. harvesters or mowers combined with threshing devices
- A01D41/12—Details of combines
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60R—VEHICLES, VEHICLE FITTINGS, OR VEHICLE PARTS, NOT OTHERWISE PROVIDED FOR
- B60R16/00—Electric 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/02—Electric 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
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60R—VEHICLES, VEHICLE FITTINGS, OR VEHICLE PARTS, NOT OTHERWISE PROVIDED FOR
- B60R16/00—Electric 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/02—Electric 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/023—Electric 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
- G06F8/658—Incremental updates; Differential updates
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
- G06F8/72—Code refactoring
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
- G06F8/77—Software metrics
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/80—Services using short range communication, e.g. near-field communication [NFC], radio-frequency identification [RFID] or low energy communication
Definitions
- the present invention relates to a terminal device and a software rewriting program used in a software rewriting system for rewriting software of a control device (for example, a control device mounted on a moving body such as a work machine or a ship).
- a control device for example, a control device mounted on a moving body such as a work machine or a ship.
- a software rewriting system for rewriting control unit software for example, there is a system in which update software for updating control unit software is acquired by a terminal device, and the control unit software is rewritten based on the acquired update software.
- Patent Document 1 discloses a first storage unit that stores a first version program (software), and a second version program that is the same as the first version or a newer version than the first version.
- the acquisition unit for acquiring the difference between the second version program and the third version program that is newer than the second version program
- the second storage unit A configuration comprising: an update unit that generates a third version program from the second version program and the difference acquired by the acquisition unit, and stores the generated third version program in the first storage unit is doing.
- Patent Document 1 does not describe what is the difference between programs (software) and what is the latest version of software generated from the difference. It is difficult to generate the latest version of software from the difference.
- the present invention is a terminal device used in a software rewriting system that rewrites software of a control device, and can shorten the transmission time by using a difference in software. It is an object of the present invention to provide a terminal device and a software rewriting program that can easily generate.
- a terminal device is a terminal device used in a software rewriting system that rewrites software of a control device, and has a text format for generating an object code in binary format that can be executed by the control device.
- a storage unit for storing the source code acquiring a difference source code that is stored in the storage unit and is a source code of a difference with respect to a source code corresponding to the current object code; Generating the latest source code from the source code stored in the storage unit, converting the generated latest source code to the latest object code, and transmitting the converted latest object code to the control device; It is characterized by.
- the software rewriting program according to the present invention is a software rewriting program for a terminal device used in a software rewriting system for rewriting software of a control device, and the terminal device is a binary format executable by the control device.
- a storage unit for storing text source code for generating the object code and a computer, and a difference source code for the source code corresponding to the current object code stored in the storage unit
- An acquisition control step for acquiring a difference source code; a generation control step for generating the latest source code from the difference source code acquired in the acquisition control step and the source code stored in the storage unit;
- a conversion control step for converting the latest source code generated in the generation control step into the latest object code; a transmission control step for transmitting the latest object code converted in the conversion control step to the control device;
- the computer is caused to execute a step including:
- the “text source code” refers to a program language (for example, a non-machine language such as C language) written in a human recognizable state using a character code.
- the “binary format object code” refers to a machine language configured in such a manner that the control apparatus can be executed using binary code.
- control device can be exemplified as being mounted on a mobile object.
- the terminal device there can be exemplified an aspect provided with a short-range wireless communication unit that is provided in the mobile body and communicates with another mobile body via a short-range wireless communication network.
- the terminal device includes a short-range wireless communication unit that is provided in the mobile body and communicates with the mobile body via another short-range wireless communication network. Can be illustrated.
- the latest object code is transmitted to the control device in its own mobile unit, and / or the short range radio communication unit and the short range radio communication network are transmitted to the other mobile unit.
- a mode of transmitting via can be exemplified.
- the latest object code is transmitted to the control device in its own mobile unit and / or the short-range radio is transmitted to the other mobile unit.
- a mode of transmitting via a communication unit and the short-range wireless communication network can be exemplified.
- the other mobile unit includes the terminal device according to the present invention, and the short-range radio communication unit and the short-range radio communication network are provided with the differential source code in the other mobile unit.
- a mode of transmitting via can be exemplified.
- the other mobile unit includes the terminal device according to the present invention.
- the short-range wireless communication is performed by transmitting the differential source code to the other mobile unit. And a mode of transmitting via the short-range wireless communication network.
- the control device is mounted on an electrical device, and the terminal device functions as a multi-function communication portable terminal device and communicates with the electrical device via a short-range wireless communication network.
- a mode provided with a short-range wireless communication unit can be exemplified.
- the control device is mounted on an electrical device, and the terminal device functions as a multi-function communication portable terminal device, via the electrical device and a short-range wireless communication network.
- wireless communication part which communicates can be illustrated.
- the latest object code is transmitted to the electrical equipment via the short-range wireless communication unit and the short-range wireless communication network.
- the latest object code in the transmission control step, can be transmitted to the electrical equipment via the short-range wireless communication unit and the short-range wireless communication network.
- the electrical device includes the terminal device according to the present invention, and transmits the differential source code to the electrical device via the short-range wireless communication unit and the short-range wireless communication network.
- An aspect can be illustrated.
- the electrical device includes the terminal device according to the present invention, and in the transmission control step, the difference source code is transmitted to the electrical device and the short-range wireless communication unit and the short communication device.
- a mode of transmitting via a distance wireless communication network can be exemplified.
- the transmission time can be shortened using the software difference, and the latest version of the software can be easily generated from the software difference.
- FIG. 1 is a schematic configuration diagram schematically illustrating an example of a software rewriting system according to the first embodiment, and is a dedicated configuration provided in any mobile body that can be a distribution source among a plurality of mobile bodies. It is a schematic diagram which shows the state which the terminal device and the server are communicating via a wide area network.
- FIG. 2 shows a state in which the dedicated terminal device that has communicated with the server and another dedicated terminal device that can be a distribution source communicate with each other via the short-range wireless communication network in the software rewriting system shown in FIG. It is a schematic diagram.
- FIG. 3 shows a software rewriting system shown in FIG.
- FIG. 4 is a schematic diagram illustrating an example of the data structure of the model information management database in the storage unit provided in the server.
- FIG. 5 is a schematic diagram illustrating an example of the data structure of the update software management database in the storage unit provided in the server.
- FIG. 6 is a schematic diagram illustrating an example of a data structure of the update software storage database in the storage unit provided in the server.
- FIG. 7 is a schematic diagram illustrating an example of a data structure in a state where the current version of software of the control device is registered in the storage unit of the terminal device.
- FIG. 8 is a schematic diagram illustrating an example of a data structure in a state where the source code of the control device is registered in the storage unit in the terminal device (distribution source).
- FIG. 9 is a block diagram illustrating an example of a software configuration of the dedicated terminal device (distribution source) illustrated in FIGS. 1 to 3.
- FIG. 10 is a schematic diagram showing an example of a data structure in which area information is added in the model information management database shown in FIG.
- FIG. 11 is a schematic diagram showing an example of the data structure of the area information management database that constitutes the update software storage database in the storage unit provided in the server.
- FIG. 12 is a schematic configuration diagram schematically illustrating an example of a software rewriting system according to the second embodiment, and is a schematic diagram illustrating a state in which a general-purpose terminal device communicates with a server via a wide area communication network. is there.
- FIG. 13 is a schematic diagram showing a state in which a general-purpose terminal device that communicates with a server is communicating with a dedicated terminal device that can be a distribution source via a short-range wireless communication network in the software rewriting system shown in FIG. is there.
- FIG. 14 shows a state in which the general-purpose terminal device that has communicated with the server is communicating with a dedicated terminal device that cannot substantially become a distribution source via the short-range wireless communication network in the software rewriting system shown in FIG.
- FIG. 15 is a block diagram illustrating an example of a software configuration of the general-purpose terminal device illustrated in FIGS. 12 to 14.
- FIG. 16 is a flowchart illustrating an example (an example of download processing) in which a server, a dedicated terminal device (distribution source), and / or a general-purpose terminal device communicate with each other via a wide area communication network.
- FIG. 17 shows an example (distribution process) in which a dedicated terminal device (distribution source) and / or a general-purpose terminal device and a dedicated terminal device (distribution source) communicated with a server communicate via a short-range wireless communication network. Is an example of a flowchart.
- FIG. 16 is a flowchart illustrating an example of download processing in which a server, a dedicated terminal device (distribution source), and / or a general-purpose terminal device communicate with each other via a wide area communication network.
- FIG. 17 shows an example (distribution process) in which a
- FIG. 18 illustrates an example (distribution) in which a dedicated terminal device (distribution source) and / or a general-purpose terminal device and a dedicated terminal device (non-distribution source) communicated with a server communicate via a short-range wireless communication network.
- FIG. 19 is a flowchart showing an example of the software rewriting process in the software rewriting system of the first embodiment shown in FIGS. 1 to 11, and shows an example of the first half of the process.
- FIG. 20 is a flowchart showing an example of the software rewriting process in the software rewriting system of the first embodiment shown in FIGS. 1 to 11, and shows an example of the latter half of the process.
- First Embodiment 1 to 3 are schematic configuration diagrams schematically showing an example of a software rewriting system 100 according to the first embodiment.
- FIG. 1 shows a dedicated terminal device provided in any mobile body 110 (1) that can be a distribution source among a plurality of mobile bodies 110 (1) to 110 (n) (n is an integer of 2 or more).
- 2 is a schematic diagram showing a state in which 200 (1) and a server 130 are communicating via a wide area communication network WN.
- FIG. 2 shows a short-range wireless communication network in which the dedicated terminal device 200 (1) that communicates with the server 130 and another dedicated terminal device 200 (2) that can be a distribution source in the software rewriting system 100 shown in FIG. It is a schematic diagram which shows the state which is communicating via LN.
- FIG. 1 shows a dedicated terminal device provided in any mobile body 110 (1) that can be a distribution source among a plurality of mobile bodies 110 (1) to 110 (n) (n is an integer of 2 or more).
- 2 is a schematic diagram showing a state in which 200 (1) and a server 130 are communicating via a wide area communication network WN.
- FIG. 2 shows a short-range wireless communication network in which the dedicated
- FIG. 3 shows a short distance between the dedicated terminal device 200 (1) that communicates with the server 130 and the other dedicated terminal device 200 (3) that cannot substantially become a distribution source in the software rewriting system 100 shown in FIG. It is a schematic diagram which shows the state which is communicating via the radio
- FIG. 4 is a schematic diagram showing an example of the data structure of the model information management database DB1 constituting the update software storage database DB in the storage unit 133 provided in the server 130.
- FIG. 5 is a schematic diagram showing an example of the data structure of the update software management database DB2 constituting the update software storage database DB in the storage unit 133 provided in the server 130.
- FIG. 6 is a schematic diagram illustrating an example of a data structure of the update software storage database DB3 constituting the update software storage database DB in the storage unit 133 provided in the server 130.
- FIG. 7 shows that the software FW (FW1 to FWm) of the current version VR of the control devices 113 (1) to 113 (m) (m is an integer of 1 or 2 or more) in the storage unit 230 of the terminal device 200 (i). It is a schematic diagram which shows an example of the data structure of the registered state. 8 shows a data structure in a state where the source code SC of the control devices 113 (1) to 113 (m) is registered in the storage unit 230 in the terminal device 200 (1), 200 (2) (distribution source). It is a schematic diagram which shows an example.
- a software rewriting system 100 shown in FIGS. 1 to 3 includes a control device 113 (see FIG. 1 to FIG. 3) mounted on a plurality of moving bodies 110 (1) to 110 (n) (for example, traveling work machines and ships). This is a system for rewriting the software FW 1) to 113 (m).
- the control devices 113 (1) to 113 (m) are electronic control devices (ECUs) and are mounted on the moving bodies 110 (1) to 110 (n).
- the software FW is firmware.
- the software rewriting system 100 includes a plurality of mobile units 110 (1) to 110 (n) and dedicated terminal devices 200 (1) to 200 (n) provided in the plurality of mobile units 110 (1) to 110 (n). ) And a server 130 (see FIG. 1) connected to the terminal devices 200 (1) to 200 (n) via the wide area communication network WN (see FIG. 1).
- the server 130 is a large information device (specifically, a stationary computer installed at a predetermined location).
- the present invention is not limited to this, and the server 130 is an information device capable of storing the update software storage database DB [for example, a storage unit capable of securing the data capacity required by the update software storage database DB.
- Information equipment specifically, dedicated terminal devices 200 (1) and 200 (2) provided in the mobile bodies 110 (1) and 110 (2), and portable general-purpose terminals to be described later Device 300] may be used.
- the terminal devices 200 (1) to (n) include at least one terminal device that can be a distribution source with respect to other terminal devices.
- the terminal devices 200 (1) to (n) may include a terminal device that is not substantially a distribution source with respect to other terminal devices.
- Terminal device that cannot be a distribution source substantially with respect to other terminal devices means that if the destination is a mobile device of the same model, it can be a distribution source, but the destination is a different model.
- a terminal device that cannot be a distribution source that is, a terminal device that does not have model information MI other than its own device (destination) and update software WFW (see FIGS. 4 to 6) associated with the model information MI That's it.
- terminal devices 200 (1) and 200 (2) are terminals that can be distribution sources with respect to other terminal devices, and cannot be substantially distribution sources with respect to other terminal devices.
- the terminal device is described as terminal devices 200 (3) to 200 (n) (non-distribution source).
- the terminal device 200 (1) (distribution source) can be a distribution destination from the server 130 of the update software WFW for updating the software FW of the control devices 113 (1) to 113 (m). Of the terminal devices 200 (2) to 200 (n). Similarly, the terminal device 200 (2) (distribution source) can be a distribution destination from the server 130 of the update software WFW, and the other terminal devices 200 (1), 200 (3) to 200 (n ) Can be a distribution source.
- the terminal devices 200 (1) and 200 (2) (distribution source) send the update software WFW in the update software storage database DB (see FIGS. 4 to 6) from the server 130 to the wide area communication network WN and wide area communication. Receive via the unit 220.
- the terminal device 200 (1) (distributor) stores the update software WFW received from the server 130 in the storage unit 230, and the update software WFW stored in the storage unit 230 is stored in the other terminal devices 200 (2) to 200. Of (n), it transmits to the other terminal device which can communicate within the short-range wireless communication range via the short-range wireless communication unit 240 and the short-range wireless communication network LN.
- the terminal device 200 (2) (distribution source) stores the update software WFW received from the server 130 in the storage unit 230, and the update software WFW stored in the storage unit 230 is stored in the other terminal device 200 (1 ), 200 (3) to 200 (n), to other terminal devices that can communicate within the short-range wireless communication range, via the short-range wireless communication unit 240 and the short-range wireless communication network LN.
- the terminal device 200 (1) transmits the short-range wireless communication unit 240 and the short-range wireless communication network within the short-range wireless communication range among the other terminal devices 200 (2) to 200 (n). Communication is established at random to other terminal devices that can communicate via the LN.
- the terminal device 200 (1) (distribution source) authenticates with the other terminal devices 200 (2) to 200 (n) that have established communication, and the terminal device among the other terminal devices 200 (2) to 200 (n).
- the update software WFW stored in the storage unit 230 of the terminal device 200 (1) (distribution source) is transmitted to the value corresponding to the subscript number of the terminal device.
- the terminal device 200 (2) (distributor) transmits the short-range wireless communication unit 240 and the short-range wireless communication unit 240 within the short-range wireless communication range among the other terminal devices 200 (1), 200 (3) to 200 (n). Communication is randomly established with another terminal device that can communicate via the distance wireless communication network LN.
- the terminal device 200 (2) (distribution source) stores the storage unit 230 of the terminal device 200 (2) (distribution source) among the other terminal devices 200 (1) and 200 (3) to 200 (n) that have established communication.
- the update software WFW stored in the storage unit 230 of the terminal device 200 (2) (distribution source) is transmitted to the counterpart terminal device 200 (i) corresponding to the model information MI stored in (see FIG. 4). .
- the server 130 is a remote monitoring center 120 (see FIG. 1) located far away from the mobile units 110 (1) to 110 (n).
- the terminal devices 200 (1) to 200 (n) and the server 130 have wide-area communication units 220 and 132 (specifically, wide-area communication interfaces), respectively, and the wide-area communication network WN (see FIG. 1).
- the server 130 can remotely monitor the mobile units 110 (1) to 110 (n) by the user at the remote monitoring center 120.
- the terminal devices 200 (1) to 200 (n) are remote monitoring terminal devices in this example.
- the wide area communication unit 220 may not be provided in the terminal devices 200 (3) to 200 (n).
- the server 130 transmits information regarding the software FW of the control devices 113 (1) to 113 (m) in the mobile units 110 (1) to 110 (n) to the terminal device 200 in the mobile units 110 (1) and 110 (2).
- (1), 200 (2) can be transmitted to (distribution source).
- the terminal devices 200 (1) and 200 (2) (distribution source) in the mobile units 110 (1) and 110 (2) are controlled by the control devices 113 (1) to 113 (1) in the mobile units 110 (1) to 110 (n).
- the information regarding the software FW 113 (m) can be received from the server 130.
- the wide area communication network WN may be a wired communication network, a wireless communication network (a wireless communication network based on a so-called mobile communication standard), or a combination of a wired communication network and a wireless communication network.
- the wide area communication network WN is typically a public line network provided by a telecommunications carrier, and can be a public line network in which terminals such as fixed telephones and mobile phones communicate with each other.
- the moving bodies 110 (1) to 110 (n) include one or a plurality (here, a plurality) of working units [111 (1) to 111 (m)] to [111 (1) to 111 (m)] (FIG. 1 to FIG. 3) and terminal devices 200 (1) to 200 (n).
- the working units 111 (1) to 111 (m) include a traveling working unit, a mowing working unit, and a threshing working unit when the agricultural working machine is a combine.
- Control units 113 (1) to 113 (m) are provided in the respective working units 111 (1) to 111 (m).
- the control devices 113 (1) to 113 (m) give commands to various actuators (not shown), and appropriately control the operating states of the working units 111 (1) to 111 (m).
- the control devices 113 (1) to 113 (m) are configured to transfer data to each other based on a communication standard such as a CAN (Controller Area Network) standard.
- each of the control devices 113 (1) to 113 (m) has detected value information (signals) detected by various sensors in each of the working units 111 (1) to 111 (m) and ON / OFF of various switches. Based on the information, the operation state of each of the working units 111 (1) to 111 (m) is controlled. In addition, each of the control devices 113 (1) to 113 (m) appropriately determines whether or not an abnormality such as a failure of the moving body 110 has occurred, and if an abnormality has occurred, Error information (specifically, an error code) corresponding to is generated.
- the working unit 111 for operating the engine monitors the engine, the engine speed, the load state, etc., and optimizes the injection pressure and the injection timing.
- the control apparatus 113 which controls the whole engine performs operation start / pause operation and control of the driving
- the battery BT is appropriately charged by the electric power supplied from the generator.
- the start switch SW is a changeover switch that selectively switches between a power-on state and a power-off state.
- the power-on state is a state in which power is supplied from the battery BT to the control unit 210 and the control devices 113 (1) to 113 (m).
- the power-off state is a state in which power supply from the battery BT to the control unit 210 and the control devices 113 (1) to 113 (m) is cut off.
- the battery BT is connected to both the power supply connection line L1 connected to the control unit 210 and the power supply connection line L2 connected to the control devices 113 (1) to 113 (m) via the start switch SW. Yes.
- the start switch SW is a so-called key switch
- the “ON” terminal is a connection terminal of the power supply connection lines L1 and L2.
- the “OFF” terminal is a terminal when the start switch SW is in an OFF state.
- the battery BT and the power control unit 260 are connected via the power connection line L3.
- the server 130 includes a control unit 131, a wide area communication unit 132, and a storage unit 133.
- the control unit 131 includes a processing device 131a including a so-called computer such as a CPU (Central Processing Unit) and a memory device 131b including a volatile memory such as a ROM (Read Only Memory) and a RAM (Random Access Memory). Yes.
- a processing device 131a including a so-called computer such as a CPU (Central Processing Unit) and a memory device 131b including a volatile memory such as a ROM (Read Only Memory) and a RAM (Random Access Memory).
- the control unit 131 controls the operation of various components by causing the processing device 131a to load and execute a control program stored in advance in the ROM of the memory device 131b onto the RAM of the memory device 131b. .
- control unit 131 performs transmission / reception of data during communication, various input / output controls, and control of arithmetic processing.
- the wide area communication unit 132 is electrically connected to the data line of the control unit 131.
- the wide area communication unit 132 under the instruction of the control unit 131, the wide area communication unit 220 of the terminal devices 200 (1) to 200 (n) in the mobile units 110 (1) to 110 (n) (see FIGS. 1 to 3). Communication is possible with the same communication protocol (communication protocol). Data transmitted / received at the time of communication is converted by the wide area communication unit 132 so as to follow the communication protocol.
- the wide area communication unit 132 stores information regarding the software FW of the control devices 113 (1) to 113 (m) in the mobile units 110 (1) to 110 (n) recorded in the storage unit 133.
- N Transmit to terminal devices 200 (1) to 200 (n) [in this example, terminal devices 200 (1), 200 (2)] in moving body 110 (1), 110 (2) in this example. .
- the storage unit 133 is electrically connected to the data line of the control unit 131.
- the storage unit 133 is subjected to write control and read control of information under the instruction of the control unit 131.
- the storage unit 133 is a mass storage device such as a flash memory or a hard disk device.
- the storage unit 133 stores an update software storage database DB.
- the control devices 113 (1) to 113 mounted on the moving body 110 (i) at the other end are different, it is natural that the control devices 113 (1) to 113 mounted on the moving body 110 (i) at the other end.
- the software FW in (m) may be different.
- the counterpart mobile body 110 (i) is of the same type, the software FW of the control devices 113 (1) to 113 (m) mounted on different types of mobile bodies 110 (i) is different.
- the software FW for update stored in the storage unit 230 is different from the software FW of the control devices 113 (1) to 113 (m) mounted on the mobile unit 110 (i) of the other party.
- the software FW of the control devices 113 (1) to 113 (m) cannot be rewritten in the destination mobile unit 110 (i).
- the update software storage database DB stores update software WFW associated with the model information MI (see FIGS. 4 to 6) of the mobile units 110 (1) to 110 (n).
- the update software storage database DB stores update information RI (see FIG. 5) of the update software WFW.
- the update software storage database DB includes a model information management database DB1 (see FIG. 4), an update software management database DB2 (see FIG. 5), and an update software storage database DB3 (see FIG. 6). ing.
- the area information management database DB4 will be described later.
- the model information management database DB1 stores model information MI of the mobile units 110 (1) to 110 (n).
- the types MT of the mobile units 110 (1) to 110 (n) and the model codes MC of the mobile units 110 (1) to 110 (n) are registered.
- the moving body 110 (1) of all types MT for example, traveling work machines and ships manufactured by the manufacturers of the moving bodies 110 (1) to 110 (n).
- the model codes MC of all models 110 to 110 (n) are registered.
- the type MT and model code MC of the mobile unit 110 are registered in the model information management database DB1 as needed.
- the update software management database DB2 includes the update software code WFWC of the control devices 113 (1) to 113 (m) (ECU in this example) in the moving bodies 110 (1) to 110 (n). (In this example, firmware code for update) is stored.
- the type MT of the mobile units 110 (1) to 110 (n), the model code MC of the mobile units 110 (1) to 110 (n), and the control device 113 (1 ) To 113 (m) control device code CC (in this example ECU symbol and / or number) and update software code WFWC associated with update information RI (version VR and / or year / month / day / time YMDT) are registered.
- the moving bodies 110 (1) of all types MT for example, traveling work machines and ships manufactured by the manufacturers of the moving bodies 110 (1) to 110 (n) are stored.
- An update software code WFWC is registered.
- an update software code WFWC associated with the type MT, model code MC, control device code CC, and update information RI of the mobile object 110 is updated in the update software management database DB2.
- the update software management database DB2 updates the update information RI and the update software code WFWC associated with the update information RI as needed.
- the update software storage database DB3 stores a difference source code DSC that is a difference source code with respect to the old version of the latest version of the update software WFW.
- the difference between the latest version and the old version is the source code SC of the latest version of the software FW and the old version (if there are a number of old versions, each old version immediately before the latest version from the oldest version). For example, if there are version 1.0 and version 1.1 on the market, and the latest version is version 1.2, the difference between the latest version and the old version is the latest version 1.2 and the old version. There are two differences: a difference from 1.0 and a difference between the latest version 1.2 and the old version 1.1. The same applies when there are three or more old versions.
- the update software code WFWC and the difference source code DSC associated with the update software code WFWC are registered.
- the update software storage database DB3 includes all types of MTs 110 (1 such as traveling work machines and ships) manufactured by manufacturers of the moving bodies 110 (1) to 110 (n) (1). ) To 110 (n) are registered for the differential source code DSC of all models.
- the update software code WFWC and the difference source associated with the update software code WFWC are updated as needed in the update software storage database DB3.
- the code DSC is registered.
- the model information MI and the software FW of the control devices 113 (1) to 113 (m) are stored.
- Update information RI such as version VR is registered.
- the storage unit 230 in the terminal devices 200 (1) to 200 (n) includes model information MI (an example of a model code MC in this example), a control device code CC, and a control device 113.
- Update information RI (in this example, current version VR) of software FW (1) to 113 (m) is registered in association with terminal identification information ID and area information AR.
- the model code MC is registered as the model information MI in the storage unit 230.
- the types MT of the mobile bodies 110 (1) to 110 (n) are registered. May be.
- the current version VR is registered as the update information RI, but the date / time YMDT at which the current version VR is updated may be registered instead of or in addition to the current version VR. Good.
- the storage units 230 of the terminal devices 200 (1) to 200 (n) in the mobile units 110 (1) to 110 (n) are in a binary format that can be executed by the control devices 113 (1) to 113 (m).
- a text source code SC for generating an object code OC (software FW) is stored.
- the source code SC in the text format is a program language (for example, a non-machine language such as C language) written in a state that can be recognized by humans using character codes.
- the binary-format object code OC is a machine language configured in a state in which the control devices 113 (1) to 113 (m) can be executed using the binary code.
- the object code OC is converted (so-called compiled or assembled) from the source code SC.
- the storage unit 230 in the terminal device 200 (1), 200 (2) includes model information MI (an example of model code MC in this example), control device code CC.
- the update information RI (in this example, the current version VR) and source code SC of the software FW of the control devices 113 (1) to 113 (m) and the source code SC are registered in association with the terminal identification information ID and the area information AR.
- the model code MC is registered as the model information MI in the storage unit 230.
- the types MT of the mobile bodies 110 (1) to 110 (n) are registered. May be.
- the current version VR is registered as the update information RI, but the date / time YMDT at which the current version VR is updated may be registered instead of or in addition to the current version VR. Good.
- the control device 113 (1) in its own mobile unit 110 (3) to 110 (n).
- the terminal devices 200 (1) and 200 (2) include a control unit 210 (an example of a computer), a wide area communication unit 220, a storage unit 230, and a short distance.
- a wireless communication unit 240, a signal communication unit 250, and a power supply control unit 260 are provided.
- the control unit 210 includes a processing device 210a including a so-called computer such as a CPU (Central Processing Unit) and a memory device 210b including a volatile memory such as a ROM (Read Only Memory) and a RAM (Random Access Memory). Yes.
- a processing device 210a including a so-called computer such as a CPU (Central Processing Unit) and a memory device 210b including a volatile memory such as a ROM (Read Only Memory) and a RAM (Random Access Memory).
- the control unit 210 executes various programs necessary for the control unit 210 by executing a program such as a software rewriting program PP (see FIG. 9 described later) stored (installed) in the storage unit 230 in advance. It is configured. Specifically, the control unit 210 performs various processes by causing the processing device 210a to load a program such as the software rewriting program PP stored in advance in the storage unit 230 onto the RAM of the memory device 210b and execute it. It has become.
- the RAM of the memory device 210b provides a work area for work to the control unit 210.
- control unit 210 performs transmission / reception of data during communication, various input / output controls, and control of arithmetic processing.
- the wide area communication unit 220 is electrically connected to the data line of the control unit 210.
- the wide area communication unit 220 can communicate with the same communication protocol (communication protocol) as the wide area communication unit 132 (see FIG. 1) of the server 130 under the instruction of the control unit 210. Data transmitted and received at the time of communication is converted by the wide area communication unit 220 so as to follow the communication protocol.
- the wide area communication unit 220 receives, from the server 130, information related to the software FW of the control devices 113 (1) to 113 (m) in the mobile units 110 (1) to 110 (n) recorded in the storage unit 133 of the server 130. .
- the storage unit 230 is electrically connected to the data line of the control unit 210. In the storage unit 230, information is controlled to be written and read under the instruction of the control unit 210.
- the storage unit 230 is a mass storage device such as a flash memory.
- the storage unit 230 stores a model information management database DB1, an update software management database DB2, and an update software storage database DB3.
- the data structures of the model information management database DB1, the update software management database DB2, and the update software storage database DB3 are the model information management database DB1 and update software stored in the storage unit 133 in the server 130 shown in FIGS. This is the same as the management database DB2 and the update software storage database DB3, and will not be described here.
- the short-range wireless communication unit 240 in the terminal device 200 (1) (distribution source) performs short-range wireless communication in the terminal device 200 (2) (distribution source) and the terminal devices 200 (3) to 200 (n) (non-distribution source). Short-distance wireless communication with the communication unit 240 is performed.
- the short-range wireless communication unit 240 in the terminal device 200 (2) (distribution source) is short in the terminal device 200 (1) (distribution source) and the terminal devices 200 (3) to 200 (n) (non-distribution source). Short-range wireless communication is performed with the distance wireless communication unit 240.
- examples of short-range wireless communication include wireless communication that performs communication over a short distance of several meters to 100 meters.
- wireless LAN Local Area
- Network Wireless PAN (Personal Area Network) communication that performs communication over a short distance of several meters to several tens of meters.
- wireless LAN communication examples include IEEE 802.11 standard wireless LAN communication represented by the WiFi (registered trademark) standard.
- wireless PAN communication examples include IEEE 802 standard wireless PAN communication represented by the Bluetooth (registered trademark) standard.
- the short-range wireless communication unit 240 is configured to perform wireless LAN communication conforming to the IEEE 802.11 standard.
- the signal communication unit 250 communicates with the control devices 113 (1) to 113 (m) in the working units 111 (1) to 111 (m) according to a communication standard such as the CAN standard to exchange information.
- the power control unit 260 supplies power to the control unit 210.
- power supply control unit 260 is connected to battery BT regardless of whether the start switch SW is off or on.
- an input-side power line (not shown) of the power control unit 260 and the battery BT are connected by a power connection line L3.
- the power control unit 260 is constantly supplied with power from the battery BT.
- control unit 210 is configured such that the power from the battery BT is supplied from the power supply control unit 260.
- FIG. 9 is a block diagram showing an example of the software configuration of the dedicated terminal devices 200 (1) and 200 (2) (distribution source) shown in FIGS.
- the control unit 210 includes a reception control unit Q1, a storage control unit Q2, a rewrite control unit Q3, and a transmission control unit Q4. That is, the software rewrite program PP corresponds to the reception control step corresponding to the reception control unit Q1, the storage control step corresponding to the storage control unit Q2, the rewrite control step corresponding to the rewrite control unit Q3, and the transmission control unit Q4.
- the control part 210 is made to perform the step including the transmission control step to perform.
- reception control step In the reception control step, the control unit 210 transmits the differential source code DSC in the update software storage database DB3 from the server 130 including the update software storage database DB3 storing the differential source code DSC to the wide area network WN and the wide area communication unit 220. Receive via.
- the reception control unit Q1 includes an acquisition control unit Q11. That is, the reception control step includes an acquisition control step corresponding to the acquisition control unit Q11.
- the control unit 210 acquires the difference source code DSC stored in the storage unit 230 with respect to the source code SC corresponding to the current object code OC. That is, the control unit 210 acquires a difference source code DSC between the latest version of the source code NSC corresponding to the latest version of the object code NOC and the current version of the source code SC stored in the storage unit 230.
- the control unit 210 receives the model information MI in the update software storage database DB and the differential source code DSC associated with the model information MI from the server 130 via the wide area communication network WN and the wide area communication unit 220.
- the control unit 210 stores, in the storage unit 230, the model information management database DB1 storing the model information MI of the mobile units 110 (1) to 110 (n), and the mobile units 110 (1) to 110 (n).
- the update software management database DB2 storing the update software code WFWC associated with the model information MI) together with the control device code CC, and the update software storing the difference source code DSC associated with the update software code WFWC
- the model information MI and the differential source code DSC associated with the model information MI are received via the wide area communication network WN and the wide area communication unit 220 from the server 130 having the storage database DB3.
- control unit 210 receives the difference source code DSC and the update information RI of the difference source code DSC in the update software storage database DB from the server 130 via the wide area communication network WN and the wide area communication unit 220.
- control unit 210 receives update software code WFWC and update software code WFWC update information RI from server 130 via wide area network WN and wide area communication unit 220.
- control unit 210 stores the differential source code DSC received from the server 130 in the storage unit 230.
- control unit 210 stores the model information MI received from the server 130 and the difference source code DSC associated with the model information MI in the storage unit 230.
- the control unit 210 stores the model information MI received from the server 130 in the model information management database DB1 in the storage unit 230, and associates the update software code WFWC received from the server 130 with the model information MI.
- the update software management database DB2 together with the control device code CC
- the difference source code DSC received from the server 130 is stored in the update software storage database DB3 in association with the update software code WFWC.
- control unit 210 stores the difference source code DSC received from the server 130 and the update information RI of the update software WFW in the storage unit 230.
- control unit 210 stores update software code WFWC and update software code WFWC update information RI received from server 130 in update software management database DB2.
- the control unit 210 stores the update software code WFWC received from the server 130 and the difference source code DSC of the update software code WFWC in the update software storage database DB3.
- the terminal devices 200 (1) and 200 (2) are provided in the mobile units 110 (1) and 110 (2).
- the rewrite control unit Q3 includes a generation control unit Q31 and a conversion control unit Q32 (a so-called compiler or assembler). That is, the rewrite control step includes a generation control step corresponding to the generation control unit 31 and a conversion control step corresponding to the conversion control unit Q32.
- the control unit 210 includes the differential source code DSC acquired in the acquisition control step and the current source code DSC corresponding to the acquired differential source code DSC among the current source codes SC to SC stored in the storage unit 230.
- the latest source code NSC is generated from the source code SC.
- control unit 210 converts the latest source code NSC generated in the generation control step into the latest object code NOC.
- the control unit 210 specifies the differential source code DSC corresponding to the model information MI of the mobile unit 110 (i) of the other party among the differential source code DSC stored in the storage unit 230.
- the control unit 210 controls the control device mounted on the destination mobile unit 110 (i) from the identified differential source code DSC and the current source code SC stored in the storage unit 230 of the destination mobile unit 110 (i).
- the latest source code NSC of 113 (1) to 113 (m) is generated (generation control step), and the generated latest source code NSC is converted into the latest object code NOC (so-called compilation or assembly) (conversion control step). ).
- the control unit 210 transmits the converted latest object code NOC to the control devices 113 (1) to 113 (m) mounted on the destination mobile unit 110 (i). Then, in the destination mobile unit 110 (i), the terminal device (i) or the control devices 113 (1) to 113 (m) rewrites the latest object code NOC as the latest software FW.
- the control unit 210 identifies the difference source code DSC corresponding to the model information MI of the mobile unit 110 (1), 110 (2) among the difference source code DSC stored in the storage unit 230. To do.
- the control unit 210 determines the mobile unit 110 (1), 110 () from the current source code SC stored in the storage unit 230 in the identified differential source code DSC and the mobile unit 110 (1), 110 (2). 2)
- the latest source code NSC of the control devices 113 (1) to 113 (m) installed in 2) is generated (generation control step), and the generated latest source code NSC is converted into the latest object code NOC (so-called compilation) (Assemble) (conversion control step).
- the control unit 210 transmits the converted latest object code NOC to the control devices 113 (1) to 113 (m) mounted on the mobile body 110 (1), 110 (2).
- the terminal device (i) or the control devices 113 (1) to 113 (m) rewrites the latest object code NOC as the latest software FW.
- the dedicated terminal device 200 (2) may receive the latest object code NOC from the terminal device 200 (1) (distribution source), or may generate the generation control unit Q31 and the conversion control unit Q32. Therefore, the source codes SC to SC and the differential source code DSC of the control devices 113 (1) to 113 (m) may be received. Similarly, the dedicated terminal device 200 (1) (distribution source) may receive the latest object code NOC from the terminal device 200 (2) (distribution source), and the generation control unit Q31 and conversion control. Since the unit Q32 is included, the source codes SC to SC and the differential source code DSC of the control devices 113 (1) to 113 (m) may be received.
- Transmission control step In the transmission control step, the control unit 210 sends the latest object code NOC converted using the difference source code DSC to the other mobile unit 110 (i) via the short-range wireless communication unit 240 and the short-range wireless communication network LN. And / or transmitted to the control devices 113 (1) to 113 (m) in its own mobile unit 110 (1), 110 (2).
- control unit 210 transmits the difference source code DSC stored in the storage unit 230 to the mobile units 110 (2) and 110 (1) (distribution source) and the short-range wireless communication unit 240 and the short-range wireless communication. Transmit via network LN.
- control unit 210 identifies the model information MI of the destination mobile unit 110 (i) from the model information MI stored in the storage unit 230, and among the difference source codes DSC to DSC stored in the storage unit 230.
- the difference source code DSC corresponding to the model information MI of the destination mobile unit 110 (i) or the latest object code NOC converted using the difference source code DSC is short distance to the destination mobile unit 110 (i). Transmission is performed via the wireless communication unit 240 and the short-range wireless communication network LN.
- control unit 210 identifies model information MI of counterpart mobile unit 110 (i) from model information MI stored in model information management database DB1.
- control unit 210 is in communication with the counterpart mobile unit 110 (i), and acquires the model information MI of the counterpart mobile unit 110 (i).
- control unit 210 specifies the update software code WFWC corresponding to the model information MI of the identified mobile body 110 (i) of the other party among the update software codes WFWC stored in the update software management database DB2.
- the control unit 210 transmits the difference source code DSC corresponding to the identified update software code WFWC out of the difference source code DSC stored in the update software storage database DB3 to the partner mobile unit 110 (i) via short-range wireless communication. Transmission is performed via the communication unit 240 and the short-range wireless communication network LN.
- the control unit 210 transmits the update information RI of the differential source code DSC stored in the storage unit 230 to the counterpart mobile unit 110.
- (I) may be transmitted via the short-range wireless communication unit 240 and the short-range wireless communication network LN.
- the update information RI such as the version VR of the software FW before rewriting of the control devices 113 (1) to 113 (m), the version VR of the update software WFW, etc.
- the update information RI can be collated.
- the terminal device 200 (1) (distribution) Source) or terminal device 200 (2) (distribution source) while requesting the differential source code DSC if it is determined that it is the latest one, terminal device 200 (1) (distribution source) or terminal device 200 ( 2) It is possible not to request the difference source code DSC from the (distribution source).
- the destination mobile unit 110 (i) performs the software FW of the control devices 113 (1) to 113 (m) in advance. Therefore, it is possible to omit the useless transmission operation of the differential source code DSC to the counterpart mobile unit 110 (i).
- control unit 210 controls the control devices 113 (1) to 113 (m) in the counterpart mobile unit 110 (i).
- the update information RI of the software FW before rewriting may be received from the counterpart mobile unit 110 (i).
- the control unit 210 collates the received update information RI such as the version VR of the software FW with the update information RI such as the version VR of the differential source code DSC stored in the storage unit 230, and controls the control devices 113 (1) to 113 (1)- It is determined whether or not the software FW before rewriting of 113 (m) is the latest, and if it is determined that the software FW is not the latest, the difference source code DSC is transmitted to the counterpart mobile unit 110 (i). On the other hand, if it is determined that it is the latest one, the difference source code DSC may not be transmitted to the counterpart mobile unit 110 (i).
- the terminal device 200 (1) distributed source
- the terminal device 200 (2) distributed source
- the terminal device 200 (1) distributed source
- the terminal device 200 (2) distributed source
- the differential source code DSC associated with the model information MI is stored in the storage unit 230 for all types of mobile units 110 (1) to 110 (n) and all types of mobile units 110 (1) to 110 (n). If stored, the amount of data, the storage capacity of the storage unit 230 and the communication time increase accordingly.
- the update software storage database DB stores area information AR (see FIGS. 10 and 11 to be described later) indicating the jurisdiction area of the mobile units 110 (1) to 110 (n) in the terminal devices 200 (1), 200.
- the terminal identification information ID of the terminal devices 200 (1) to 200 (n) any device can be used as long as the terminal devices 200 (1) to 200 (n) can be uniquely distinguished.
- serial numbers and telephone numbers can be exemplified.
- FIG. 10 is a schematic diagram showing an example of a data structure in which area information AR is added in the model information management database DB1 shown in FIG.
- FIG. 11 is a schematic diagram showing an example of the data structure of the area information management database DB4 constituting the update software storage database DB in the storage unit 133 provided in the server 130.
- the update software storage database DB associates the area information AR indicating the jurisdiction area of the mobile units 110 (1) to 110 (n) with the terminal identification information ID of the terminal device 200 (1), 200 (2) (distribution source). Stored.
- the update software storage database DB further includes an area information management database DB4. Also, area information AR is added in the model information management database DB1 shown in FIG.
- the terminal identification information ID (distribution source) of the terminal devices 200 (1) and 200 (2), the area information AR, and the terminal devices 200 (1) and 200 (2) (distribution source).
- Terminal identification information RID of the registered terminal devices [200 (2) to 200 (n)], [200 (1), 200 (3) to 200 (n)] and the model code MC are registered. ing.
- the latest version update presence / absence RVR of the mobile units 110 (1) to 110 (n) of the terminal devices 200 (1) to 200 (n) is controlled by the control devices 113 (1) to 113.
- “No update” specifically, flag “0”
- the server 130 receives information indicating that the terminal device 200 (i) has been updated to the latest version, and the mobile unit 110 of the updated terminal device 200 (i).
- the update version RVR of the latest version corresponding to the model code MC of (i) is set to “update available” (specifically, flag “1”).
- the server 130 and / or the terminal devices 200 (1), 200 (2) are all updated with the latest version update presence / absence RVR for the model code MC (eg, WRK1) in the area information management database DB4. If “Yes” is displayed, the difference source code DSC corresponding to the model code MC (for example, WRK1) that is all “Updated” in the update software storage database DB3 may be deleted.
- the update information RVR of the latest version is set to “no update” (specifically, flag “0”) (reset) as needed in the area information management database DB4. ).
- the control unit 210 transmits the model information of the area information AR associated with the terminal identification information ID of the terminal device 200 (1), 200 (2) (distribution source) from the server 130 in the update software storage database DB.
- the differential source code DSC associated with the MI and the model information MI is received via the wide area communication network WN and the wide area communication unit 220.
- the control unit 210 changes the model information MI and model information MI of the area information AR associated with the terminal identification information ID of the terminal device 200 (1), 200 (2) (distribution source) from the server 130.
- the associated differential source code DSC is received via the wide area communication network WN and the wide area communication unit 220.
- the control unit 210 stores in the storage unit 230 the model information MI of the area information AR received from the server 130 and the differential source code DSC associated with the model information MI.
- control unit 210 in storage unit 230, the model of area information AR associated with terminal identification information ID of terminal devices 200 (1) and 200 (2) (distribution source) received from server 130.
- the information MI is stored in the model information management database DB1 (see FIG. 10).
- the control unit 210 stores the update software code WFWC received from the server 130 in association with the model information MI in the update software management database DB2 (see FIG. 5) together with the control device code CC.
- the control unit 210 stores the difference source code DSC received from the server 130 in the update software storage database DB3 (see FIG. 6) in association with the update software code WFWC. With this configuration, the control unit 210 can selectively store the update software WFW related to the model having the same area information AR as itself.
- the terminal devices 200 (3) to 200 (n) are connected to other mobile units 110 (i) in the terminal devices 200 (1) and 200 (2) (distribution source).
- the differential source code DSC having no model information MI is provided.
- the terminal devices 200 (3) to 200 (n) (non-distribution source) receive the update software management database DB2 and the differential source code DSC that does not have the model information MI of the other mobile unit 110 (i).
- the stored update software storage database DB3 is included, the model information management database DB1 and the area information management database DB4 are not included.
- FIGS. 12 to 14 are schematic configuration diagrams schematically showing an example of the software rewriting system 100 according to the second embodiment.
- FIG. 12 is a schematic diagram showing a state where the general-purpose terminal device 300 is communicating with the server 130 via the wide area communication network WN.
- FIG. 13 shows a general-purpose terminal device 300 that communicates with the server 130 in the software rewriting system 100 shown in FIG. 12 communicates with a dedicated terminal device 200 (1) that can be a distribution source via the short-range wireless communication network LN.
- FIG. FIG. 14 shows a dedicated terminal device 200 (3) in the software rewriting system 100 shown in FIG. 12, in which the general-purpose terminal device 300 that communicates with the server 130 cannot substantially become a distribution source via the short-range wireless communication network LN. It is a schematic diagram which shows the state which is communicating with.
- the software rewriting system 100 according to the second embodiment includes a general-purpose terminal device 300 in the software rewriting system 100 according to the first embodiment.
- the terminal device 300 includes a control unit 310 (an example of a computer), a wide area communication unit 320, a storage unit 330, a short-range wireless communication unit 340, and a user interface unit 350. I have. Note that a plurality of terminal devices 300 may be provided.
- the general-purpose terminal device 300 is, for example, a multi-function communication portable terminal device such as a tablet computer or a smartphone.
- the terminal identification information IDs of the terminal devices 200 (1) to 200 (n) may be any as long as the terminal devices 200 (1) to 200 (n) can be uniquely distinguished.
- a serial number an international mobile apparatus identification number (IMEI: International Mobile Equipment Identifier number), and a telephone number can be illustrated.
- IMEI International Mobile Equipment Identifier number
- the control unit 310 includes a processing device 310a including a so-called computer such as a CPU (Central Processing Unit) and a memory device 310b including a volatile memory such as a ROM (Read Only Memory) and a RAM (Random Access Memory). Yes.
- a processing device 310a including a so-called computer such as a CPU (Central Processing Unit) and a memory device 310b including a volatile memory such as a ROM (Read Only Memory) and a RAM (Random Access Memory).
- the control unit 310 is configured to realize various functions necessary for the control unit 310 by executing a program such as the software rewriting program PP stored (installed) in the storage unit 330 in advance. Specifically, the control unit 310 performs various processes by causing the processing device 310a to load a program such as the software rewriting program PP stored in advance in the storage unit 330 onto the RAM of the memory device 310b and execute it. It has become.
- the RAM of the memory device 310b provides a work area for work to the control unit 310.
- control unit 310 performs transmission / reception of data during communication, various input / output controls, and control of arithmetic processing.
- the wide area communication unit 320 is electrically connected to the data line of the control unit 310.
- the wide area communication unit 320 can communicate with the wide area communication unit 132 (see FIG. 12) of the server 130 under the instruction of the control unit 310 using the same communication protocol (communication protocol). Data transmitted / received at the time of communication is converted by the wide area communication unit 320 so as to follow the communication protocol.
- the wide area communication unit 320 receives from the server 130 information regarding the software FW of the control devices 113 (1) to 113 (m) in the mobile units 110 (1) to 110 (n) recorded in the storage unit 133 of the server 130. .
- the storage unit 330 is electrically connected to the data line of the control unit 310.
- the storage unit 330 is controlled to write and read information under the instruction of the control unit 310.
- the storage unit 330 is a mass storage device such as a flash memory.
- the software rewriting program PP is stored (installed) in the storage unit 330 in advance.
- the software rewriting program PP is a program used for a multi-function communication portable terminal device such as a tablet computer or a smartphone, or a so-called application, and communicates from a program server (not shown) such as the Internet. Downloaded through the means.
- the storage unit 330 stores a model information management database DB1, an update software management database DB2, and an update software storage database DB3.
- the data structures of the model information management database DB1, the update software management database DB2, and the update software storage database DB3 are the model information management database DB1 and update software stored in the storage unit 133 in the server 130 shown in FIGS. This is the same as the management database DB2 and the update software storage database DB3, and will not be described here.
- the short-range wireless communication unit 340 in the terminal device 300 performs short-range wireless communication with the short-range wireless communication unit 240 in the terminal devices 200 (1) to 200 (n).
- the user interface unit 350 includes an output device such as a display device and an input device such as a touch panel. Typically, the user interface unit 350 can control activation of the software rewriting program PP, display progress information, and the like.
- FIG. 15 is a block diagram illustrating an example of a software configuration of the general-purpose terminal device 300 illustrated in FIGS. 12 to 14.
- the control unit 310 includes a reception control unit Q1, a storage control unit Q2, a rewrite control unit Q3, and a transmission control unit Q4. That is, the software rewrite program PP corresponds to the reception control step corresponding to the reception control unit Q1, the storage control step corresponding to the storage control unit Q2, the rewrite control step corresponding to the rewrite control unit Q3, and the transmission control unit Q4.
- the control part 310 is made to perform the step including the transmission control step to perform.
- the control unit 310 transmits the latest object code NOC to the mobile units 110 (1) to 110 (n) regardless of whether or not it has the generation control unit Q31 and the conversion control unit Q32. 340 and the short-range wireless communication network LN.
- the control unit 310 transmits the difference source code DSC to the mobile units 110 (1) and 110 (2) having the generation control unit Q31 and the conversion control unit Q32, and the short-range wireless communication unit 340 and the short-range wireless communication network. Transmit via LN.
- the processing of the reception control step and the storage control step performed by the other control unit 310 is the same as the processing of the reception control step and the storage control step of the control unit 210 in the dedicated terminal devices 200 (1) and 200 (2) described above. The description is omitted here.
- configuration of the software rewriting system 100 according to the first embodiment may be combined with the configuration of the software rewriting system 100 according to the second embodiment.
- FIG. 16 illustrates an example in which the server 130 communicates with the dedicated terminal devices 200 (1), 200 (2) (distribution source) and / or the general-purpose terminal device 300 via the wide area network WN.
- This is a flowchart showing an example.
- FIG. 17 shows dedicated terminal devices 200 (1), 200 (2) (distribution source) and / or general-purpose terminal device 300 and dedicated terminal devices 200 (2), 200 (1) (distribution) communicated with the server 130. It is a flowchart which shows the example (an example of a delivery process) which is communicating via the short distance radio
- wireless communication network LN wireless communication network
- the area information associated with the terminal identification information ID of the terminal devices 200 (1) and 200 (2) (distribution source) in the area information management database DB4 (see FIG. 11).
- a case where the model information management database DB1 (see FIG. 10) to which an AR is added is used will be described as an example.
- step Ss1 the control unit 131 in the server 130 receives dedicated terminal devices 200 (1) and 200 (2) (distribution source) from the wide area communication unit 132 via the wide area communication network WN. And / or communication with the general-purpose terminal device 300 (hereinafter, simply referred to as the terminal device 200, 300) is established (step Ss1), the communication from the terminal device 200, 300 is awaited (step Ss2), and the terminal It waits until there is a response from the devices 200 and 300 (step Ss2: No).
- control units 210 and 310 in the terminal devices 200 and 300 establish communication with the server 130 from the wide-area communication units 220 and 320 via the wide-area communication network WN in an area where sufficient communication infrastructure is prepared (step St11). ) Waits for communication from the server 130 (St12), and waits until there is a response from the server 130 (Step St12: No).
- step Ss2 when there is a response from the terminal devices 200 and 300 (step Ss2: Yes), the control unit 131 in the server 130 moves the mobile unit 110 of the area information AR associated with the terminal identification information ID of the terminal devices 200 and 300.
- the model information MI and the update information RI of the update software WFW are synchronized with the terminal devices 200 and 300 (step Ss3), and information including the update software WFW is transmitted to the terminal devices 200 and 300 (step Ss4).
- the control unit 131 in the server 130 receives the terminal identification information ID of the terminal devices 200 and 300, and from the storage unit 133, area information AR (for example, a terminal) associated with the terminal identification information ID of the terminal devices 200 and 300
- area information AR for example, a terminal
- the area information is associated with the model information MI (for example, when the area information is A4, the model code is BT1,...: See FIG. 10) and the model information MI.
- Update software WFW for example, when the model code is BT1,..., Update software code BT1ECU1FW1,...: Differential source code BT1ECU1FW10_11.TXT,. Terminal devices 200 and 300 via WN and wide area communication units 220 and 320 To send.
- control unit 131 in the server 130 stores the model information management database DB1, the update software management database DB2, and the update software storage database DB3 that store data corresponding to the area information AR into the wide area network WN and the wide area communication unit 220, The data is transmitted to the terminal devices 200 and 300 via 320.
- step St12 when there is a response from the server 130 (step St12: Yes), the control units 210 and 310 in the terminal devices 200 and 300 move the area information AR associated with the terminal identification information ID of the terminal devices 200 and 300.
- the model information MI of 110 and the update information RI of the update software WFW are synchronized with the server 130 (step St13), and the software FW of the control devices 113 (1) to 113 (m) is the latest for each mobile unit 110 ( For example, if it is not the latest version or the latest date (step St14: No), information including the update software WFW is received (step St15), and the received information is stored in the storage units 230 and 330. .
- control units 210 and 310 in the terminal devices 200 and 300 perform area information AR (for example, if the terminal identification information ID is # 7777) associated with the terminal identification information ID of the terminal devices 200 and 300 from the server 130.
- control units 210 and 310 in the terminal devices 200 and 300 store the model information management database DB1, the update software management database DB2, and the update software storage database DB3 that store data corresponding to the area information AR, and the wide area network WN.
- the software FW of the control devices 113 (1) to 113 (m) is the latest in the terminal devices 200 (1) and 200 (2). If it is not the one (for example, the latest version or the latest date / time), the controller 210 or the control devices 113 (1) to 113 (m) mounted on the control unit 210 or the control device 113 (m) are controlled based on the update software WFW. The software FW of the devices 113 (1) to 113 (m) is rewritten.
- the control units 210 and 310 in the dedicated terminal devices 200 (1) and 200 (2) (distribution source) and / or the general-purpose terminal device 300.
- the dedicated terminal device 200 (2) is connected from the short-range wireless communication units 240 and 340 via the short-range wireless communication network LN.
- 200 (1) (distribution source) see FIG. 17
- dedicated terminal devices 200 (3) to 200 (n) (non-distribution source) see FIG.
- step St21 Waiting for communication from the terminal devices 200 (2), 200 (1) (distribution source) and the dedicated terminal devices 200 (3) to 200 (n) (non-distribution source) (St22), the dedicated terminal device 200 (2), 200 (1) (distribution source) and a dedicated terminal device 200 (3) ⁇ 200 (n) until there is a response from the (non-distribution source) (Step St22: No) and waits.
- control unit 210 in FIG. 17 and FIG. 18 in the dedicated terminal devices 200 (2), 200 (1) (distribution source) and the dedicated terminal devices 200 (3) to 200 (n) (non-distribution source).
- the right side communicates with the dedicated terminal devices 200 (1), 200 (2) (distribution source) and / or the general-purpose terminal device 300 via the short-range wireless communication network LN from the short-range wireless communication units 240, 340.
- step St31 Is established (step St31), and communication from the dedicated terminal devices 200 (1), 200 (2) (distribution source) and / or the general-purpose terminal device 300 is awaited (St32), and the dedicated terminal device 200 (1 ), 200 (2) (distribution source) and / or until there is a response from the general-purpose terminal device 300 (No at Step St32).
- the control units 210 and 310 (see the left side in FIG. 17 and FIG. 18) in the dedicated terminal devices 200 (1) and 200 (2) (distribution source) and / or the general-purpose terminal device 300 are dedicated terminals.
- the mobile unit 110 Dedicated terminal devices 200 (2), 200 (1) (distribution source) and dedicated terminal devices 200 (3) to 200 (n) (non-distribution source) with respect to the model information MI and the update information RI of the update software WFW Synchronize (step Ss23), and transmit information including the update software WFW (step Ss24).
- control units 210 and 310 in the dedicated terminal devices 200 (1) and 200 (2) (distribution source) and / or the general-purpose terminal device 300 receive the model information MI and the model information MI from the storage units 230 and 330, respectively.
- the update software WFW associated with the terminal is read out, and these pieces of information are read out via the short-range wireless communication network LN and the short-range wireless communication units 240 and 340 to the dedicated terminal devices 200 (2) and 200 (1) (distribution source).
- control units 210 and 310 in the dedicated terminal devices 200 (1) and 200 (2) (distribution source) and / or the general-purpose terminal device 300 include the model information management database DB 1 and the update software management.
- the database DB2 and the update software storage database DB3 are transmitted to the dedicated terminal devices 200 (2) and 200 (1) (distribution source) via the short-range wireless communication network LN and the short-range wireless communication units 240 and 340.
- the control units 210 and 310 in the dedicated terminal devices 200 (1) and 200 (2) (distribution source) and / or the general-purpose terminal device 300 include the update software management database DB2 and the update software.
- the stored database DB3 is transmitted to the dedicated terminal devices 200 (3) to 200 (n) (non-distribution source) via the short-range wireless communication network LN and the short-range wireless communication units 240 and 340.
- the control unit 210 in FIG. 17 and FIG. 18 in the dedicated terminal devices 200 (2), 200 (1) (distribution source) and the dedicated terminal devices 200 (3) to 200 (n) (non-distribution source).
- the mobile unit 110 (1) to (see the right side).
- the model information MI of 110 (n) and the update information RI of the update software WFW are synchronized with the dedicated terminal devices 200 (1), 200 (2) (distribution source) and / or the general-purpose terminal device 300 (step St33).
- step St34 o
- receiving information including updated software WFW step St35
- dedicated terminal devices 200 (2), 200 (1) are dedicated terminal devices 200 (1), 200 (2) (distribution source) and / or general-purpose terminals.
- the model information MI and the update software WFW associated with the model information MI are received from the apparatus 300 via the short-range wireless communication network LN and the short-range wireless communication units 240 and 340, and the received information is stored in the storage unit 230.
- the dedicated terminal devices 200 (3) to 200 (n) are updated from the dedicated terminal devices 200 (1), 200 (2) (distribution source) and / or the general-purpose terminal device 300.
- the software WFW is received via the short-range wireless communication network LN and the short-range wireless communication units 240 and 340, and the received information is stored in the storage unit 230.
- the dedicated terminal devices 200 (2), 200 (1) (distribution source) (see FIG. 17) store the model information management database DB1, the update software management database DB2, and the update software storage database DB3 in the storage unit 230.
- the dedicated terminal devices 200 (3) to 200 (n) (non-distribution source) store the update software management database DB2 and the update software storage database DB3 in the storage unit 230.
- the software FW of the control devices 113 (1) to 113 (m) in the terminal devices 200 (1) to 200 (n) is the latest ( For example, if it is not the latest version or the latest date, the control devices 113 (1) to 113 (m) mounted on the control unit 210 or the moving bodies 110 (1) to 110 (n) Based on the update software WFW, the software FW of the control devices 113 (1) to 113 (m) is rewritten.
- FIGS. 19 and 20 are flowcharts showing an example of the software rewriting process in the software rewriting system 100 of the first embodiment shown in FIGS. 1 to 11.
- FIG. 19 shows an example of processing in the first half
- FIG. 20 shows an example of processing in the latter half.
- the server 130 is a stationary computer
- the dedicated terminal device 200 (1) (distribution source) generates the latest object code NOC
- the generated latest object code NOC is A case will be described as an example where the software FW is rewritten to the control device 113 mounted on the mobile body 110 (1).
- step S1 the developer of the control device 113 registers the source code SC of the latest version of the software FW of the control device 113 in the server 130, and in step S1.1, the server 130 stores the source code SC of the registered software FW in the storage unit 133. At this time, the server 130 does not store in the storage unit 133 if the source code SC is illegal.
- step S1.2 the server 130 generates and generates a differential source code DSC for the latest version of the latest version from the source code SC of the registered software FW and one or more previous versions of the source code SC.
- the difference source code DSC thus stored is stored in the update software storage database DB3.
- step S2 the administrator and system of the server 130 instruct the server 130 to rewrite the software FW of the control device 113 with the latest version of the software FW.
- step S2.1 the server 130 manages the state of the administrator of the server 130 and the rewrite instruction from the system.
- step S2.2 the server 130 establishes connection to the terminal device 200 (1). Request.
- the server 130 performs a retry when there is no connection from the terminal device 200 (1).
- the server 130 is informed that it has started up from the terminal device 200 (1).
- the connection request is made again.
- step S2.2.1 the terminal device 200 (1) performs connection in response to the connection request from the server 130. At this time, the terminal device 200 (1) performs a retry when there is no acknowledgment from the server 130 within a predetermined time. If the terminal device 200 (1) does not receive an acknowledgment from the server 130 even after retrying a certain number of times, the terminal device 200 (1) ends the connection. Further, when a negative response is returned from the server 130, the terminal device 200 (1) ends the connection.
- step S2.2.1 the server 130 acknowledges the connection from the terminal device 200 (1). At this time, the server 130 does not respond when connected from an unauthorized terminal device.
- step S ⁇ b> 3 the terminal device 200 (1) transmits a sending instruction for the differential source code DSC to the control device 113. At this time, the terminal device 200 (1) ends the connection with the server 130 when the software device FW version VR is not transmitted from the control device 113 or when an unauthorized software version is transmitted from the control device 113. .
- step S3 the control device 113 transmits the version VR of the software FW to the terminal device 200 (1) (responds to the software FW sending instruction). At this time, the control device 113 does not respond to an instruction from an unauthorized terminal device.
- step S ⁇ b> 4 the terminal device 200 (1) transmits the software VR version VR of the control device 113 to the server 130. At this time, the terminal device 200 (1) performs a retry when there is no acknowledgment from the server 130 within a predetermined time. If the terminal device 200 (1) does not receive an acknowledgment from the server 130 even after retrying a certain number of times, the terminal device 200 (1) ends the connection with the server 130. Further, when a negative response is returned from the server 130, the terminal device 200 (1) ends the connection with the server 130.
- step S4 the server 130 responds positively to the transmission of the software FW version VR from the terminal device 200 (1). At this time, the server 130 makes a negative response if the received version VR of the software FW is invalid. In addition, when the version VR of the software FW is not transmitted from the terminal device 200 (1) within a predetermined time, the server 130 ends the connection with the terminal device 200 (1).
- step S2.3 the server 130 selects what is to be transmitted to the terminal device 200 (1) from the difference source code DSC that is held.
- step S2.4 the server 130 transmits the differential source code DSC to the terminal device 200 (1) associated with the rewrite-destination control device 113.
- the server 130 performs a retry. If there is no positive response from the terminal device 200 (1) even after retrying a certain number of times, the server 130 gives up the rewriting operation (rewriting state: failure). Further, when a negative response is returned from the terminal device 200 (1), the server 130 gives up the rewriting operation (rewriting state: failure).
- step S2.4.1 the terminal device 200 (1) reflects the differential source code DSC transmitted from the server 130 in the source code SC held by itself, and generates the latest source code NSC. At this time, the terminal device 200 (1) ends the connection with the server 130 when the differential source code DSC is not transmitted from the server 130 within a predetermined time.
- step S2.4.2 the terminal device 200 (1) converts the generated latest source code NSC into the latest object code NOC (compiles in this example), and generates the latest object code NOC. To do. At this time, the terminal device 200 (1) makes a negative response to the server 130 when the conversion result (in this example, the compilation result) is not possible (NG).
- step S2.4 the terminal device 200 (1) acknowledges the transmission of the differential source code DSC from the server 130. At this time, the terminal device 200 (1) makes a negative response to the server 130 when the conversion result (in this example, the compilation result) is not possible (NG).
- the conversion result in this example, the compilation result
- step S2.5 the server 130 instructs termination of the connection to the terminal device 200 (1).
- the server 130 ends the communication.
- step S2.5 the terminal device 200 (1) responds positively to the connection termination instruction from the server 130.
- step S2.6 the server 130 manages the state of the administrator of the server 130 and the rewrite instruction from the system.
- step S5 the terminal device 200 (1) transmits a rewrite instruction to the control device 113.
- the terminal device 200 (1) performs a retry when there is no acknowledgment from the control device 113 within a certain time. If there is no positive response from the control device 113 after retrying a certain number of times, the terminal device 200 (1) gives up rewriting and notifies the server 130 of the rewriting failure. Further, when a negative response is returned to the rewriting instruction, the terminal device 200 (1) gives up rewriting and notifies the server 130 of the rewriting failure.
- the server 130 sets the latest version update presence / absence RVR (see FIG. 11) in the area information management database DB4 to “no update” (specifically, flag “0”).
- step S5 the control device 113 responds positively to the rewrite instruction from the terminal device 200 (1). At this time, the control device 113 does not respond to an instruction from an unauthorized terminal device.
- step S6 the terminal device 200 (1) transmits the generated latest object code NOC to the control device 113.
- the terminal device 200 (1) notifies the server 130 of the rewrite failure.
- the server 130 sets the latest version update presence / absence RVR (see FIG. 11) in the area information management database DB4 to “no update” (specifically, flag “0”).
- step S6.1 the control device 113 rewrites the latest object code NOC transmitted from the terminal device 200 (1). At this time, if the rewrite of the latest object code NOC fails, the control device 113 returns a negative response.
- step S6 the control device 113 responds positively to the transmission of the latest object code NOC from the terminal device 200 (1). At this time, the control device 113 does not respond to an instruction from an unauthorized terminal device. The control device 113 returns a negative response when rewriting the latest object code NOC fails.
- step S ⁇ b> 7 the terminal device 200 (1) performs connection with the server 130.
- the terminal device 200 (1) performs a retry when there is no acknowledgment from the server 130 within a predetermined time. If the terminal device 200 (1) does not receive an acknowledgment from the server 130 even after retrying a certain number of times, the terminal device 200 (1) ends the connection with the server 130. Further, when a negative response is returned from the server 130, the terminal device 200 (1) ends the connection with the server 130.
- step S7 the server 130 responds positively to the connection from the terminal device 200 (1). At this time, the server 130 does not respond when connected from an unauthorized terminal device.
- step S8 the terminal device 200 (1) notifies the server 130 of the completion of rewriting.
- the server 130 sets the latest version update presence / absence RVR (see FIG. 11) in the area information management database DB4 to “update available” (specifically, flag “1”).
- the terminal device 200 (1) notifies the server 130 of the rewriting failure.
- the server 130 sets the latest version update presence / absence RVR (see FIG. 11) in the area information management database DB4 to “no update” (specifically, flag “0”).
- step S8.1 the server 130 manages the state in response to a rewrite instruction from the administrator of the server 130 and the system.
- step S8 the server 130 responds positively to the rewriting completion notification from the terminal device 200 (1). At this time, if the rewriting completion notification from the terminal device 200 (1) is invalid, the server 130 sets the rewriting state as failure and returns a negative response.
- step S9 the server 130 instructs termination of connection to the terminal device 200 (1). At this time, if there is no response from the terminal device 200 (1) within a predetermined time, the server 130 ends the communication.
- step S9 the terminal device 200 (1) responds positively to the connection termination instruction from the server 130.
- the latest object code NOC is rewritten to the control device 113 in the control device 113 in the moving body 110 (1) of the terminal device 200 (1).
- the short-range wireless communication with the terminal device 200 (1) may be performed to the control device 113 in the mobile units 110 (2) to 110 (n) of the other terminal devices 200 (2) to 200 (n).
- a general-purpose terminal device 300 may be used instead of or in addition to the dedicated terminal device 200 (1).
- the object code OC of the control device 113 in the moving bodies 110 (1) to 110 (n) can be rewritten to the latest object code NOC.
- Software FW rewrite processing can be similarly performed for a plurality of control devices 113 (1) to 113 (m).
- the differential source code DSC may be transmitted to another terminal device 200 (2) (distribution source) instead of the object code NOC.
- the terminal device that has performed wide area communication with the server 130 is the dedicated terminal device 200 (1) (distribution source), but may be the dedicated terminal device 200 (2) (distribution source).
- the server 130 is a stationary type, it may be a dedicated terminal device 200 (1), 200 (2) and / or a general-purpose terminal device 300.
- the transmission time [this example In this case, the transmission time for transmitting the software FW of the control devices 113 (1) to 113 (m) from the server 130 to the terminal devices 200 (1) to 200 (n) can be reduced.
- the latest source code NSC is generated from the differential source code DSC and the current source code SC, the generated latest source code NSC is converted into the latest object code NOC, and the converted latest object code NOC is converted into the control device 113.
- control devices 113 to 113 are mounted on the moving bodies 110 (1) to 110 (n), so that the transmission time [in this example, the server 130 moves from the server 130 to the terminal devices 200 (1) to 200 (n).
- the transmission time for transmitting the software FW of the control devices 113 (1) to 113 (m) mounted on the bodies 110 (1) to 110 (n) can be reduced.
- the latest version of the software FW can be easily generated from the difference of the software FW, and thereby the mobile units 110 (1) to 110 It becomes possible to reliably execute the latest version of the software FW by the control devices 113 to 113 installed in (n).
- the mobile bodies 110 (1) and 110 (2) are provided on the mobile body 110 (1 ), 110 (2) and other mobile units [in this example, [110 (2) to 110 (n)], [110 (1), 110 (3) to 110 (n)]] and short-range wireless communication
- the short-range wireless communication unit 240 that communicates via the network LN
- the software FW can be easily rewritten.
- the latest object code NOC is sent to the moving body [110 (1), 110 in this example].
- the software FW of the mounted control devices 113 (1) to 113 (m) can be rewritten and easily updated to the latest one.
- the latest version of the software FW can be reliably executed by the control devices 113 (1) to 113 (m) in its own mobile body [110 (1), 110 (2) in this example].
- the latest object code NOC is transferred to another mobile object 110 [in this example [110 ( 2) to 110 (n)], [110 (1), 110 (3) to 110 (n)]] via the short-range wireless communication unit 240 and the short-range wireless communication network LN.
- the software FW of the control devices 113 (1) to 113 (m) mounted on the moving body can be easily rewritten and updated. As a result, the latest version of the software FW can be reliably executed by the control devices 113 (1) to 113 (m) mounted on the other moving bodies.
- the differential source code DSC is stored in the mobile body [110 (1), 110 in this example]. (2)] by transmitting from (distribution source) to another mobile unit [110 (2), 110 (1) in this example] via the short-range wireless communication unit 240 and the short-range wireless communication network LN
- the latest object code NOC is obtained from the differential source code DSC transmitted from the terminal device [200 (2), 200 (1) in this example] of the mobile body [110 (2), 110 (1)] in this example. Accordingly, the communication time can be shortened between the terminal device and another terminal device.
- the terminal device 300 functions as a multi-function communication portable terminal device, and an electric device [in this example, the mobile unit 110 (1) to 110 (n)] via the short-range wireless communication network LN, the general-purpose terminal device that is widely used as the terminal device 300, such as a tablet computer, is provided.
- a multi-function communication portable terminal device such as a smartphone can be used, thereby improving the convenience of rewriting the software FW of the control devices 113 (1) to 113 (m) mounted in the electrical equipment. Can do.
- the latest object code NOC is sent to the electrical equipment via the short-range wireless communication unit 340 and the short-range wireless communication network LN.
- the software FW of the control devices 113 (1) to 113 (m) installed in the electrical equipment can be rewritten and easily updated to the latest one.
- the latest version of the software FW can be reliably executed by the control devices 113 (1) to 113 (m) installed in the electrical equipment.
- the latest object code NOC can be generated from the differential source code DSC transmitted from the terminal device [200 (2), 200 (1)] (distribution source in this example), and the terminal device and other terminals can be generated accordingly. Communication time with the apparatus can be shortened.
- the server 130 determines the area information AR.
- the terminal device 200 (1), 200 (2), 300 may store the database in the storage unit 230. By doing so, the terminal devices 200 (1), 200 (2), and 300 can be the server 130.
- the moving body 110 is applied to a traveling work machine such as a combine, an agricultural work machine such as a tiller or a rice transplanter, but is not limited thereto.
- a traveling work machine such as a combine, an agricultural work machine such as a tiller or a rice transplanter, but is not limited thereto.
- the present invention can also be suitably applied to traveling working machines such as wheel loaders and construction machines such as carriers, and ships such as pleasure boats and fishing boats.
- one control device 113 is provided for one working unit 111, but a plurality of control devices 113 are provided for one working unit 111. May be.
- electrical equipment in addition to the above-described moving body, for example, electrical equipment used for power equipment such as a generator can be cited.
- the present invention relates to a terminal device and a software rewriting program used in a software rewriting system for rewriting software of a control device, and in particular, to realize a reduction in transmission time by using software differences, and to update the latest from software differences. It can be applied to applications for easily generating versions of software.
- Software rewriting system 110 Mobile body (an example of electrical equipment) 111 Working unit 113 Control device 120 Remote monitoring center 130 Server 131 Control unit 131a Processing device 131b Memory device 132 Wide area communication unit 133 Storage unit 200 Dedicated terminal device 210 Control unit 210a Processing device 210b Memory device 220 Wide area communication unit 230 Storage unit 240 Short-range wireless communication unit 250 Signal communication unit 260 Power supply control unit 300 General-purpose terminal device 310 Control unit 310a Processing device 310b Memory device 320 Wide-area communication unit 330 Storage unit 340 Short-range wireless communication unit 350 User interface unit AR Area information BT Battery CC Control device code DB Update software storage database DB1 Model information management database DB2 Update software management database DB3 Update software storage database DB 4 Area information management database DSC Differential source code FW Software ID Terminal identification information LN Short-range wireless communication network MC Model code MI Model information MT Type of mobile object NOC Latest object code NSC Latest source code OC Object code PP Software update program Q1 Reception control unit Q11 Acquisition control unit
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Mechanical Engineering (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Life Sciences & Earth Sciences (AREA)
- Environmental Sciences (AREA)
- Quality & Reliability (AREA)
- Stored Programmes (AREA)
- Combines (AREA)
Abstract
Description
本発明に係る端末装置は、制御装置のソフトウェアを書き換えるソフトウェア書き換えシステムに用いる端末装置であって、前記制御装置で実行可能なバイナリー形式のオブジェクトコードを生成するためのテキスト形式のソースコードを記憶する記憶部を備え、前記記憶部に記憶された、現行の前記オブジェクトコードに対応するソースコードに対する差分のソースコードである差分ソースコードを取得し、取得した前記差分ソースコードおよび前記記憶部に記憶された前記ソースコードから最新のソースコードを生成し、生成した前記最新のソースコードを最新の前記オブジェクトコードに変換し、変換した前記最新のオブジェクトコードを前記制御装置に送信することを特徴とする。
本発明に係るソフトウェア書き換えプログラムは、制御装置のソフトウェアを書き換えるソフトウェア書き換えシステムに用いる端末装置のソフトウェア書き換えプログラムであって、前記端末装置は、前記制御装置で実行可能なバイナリー形式のオブジェクトコードを生成するためのテキスト形式のソースコードを記憶する記憶部と、コンピュータとを備え、前記記憶部に記憶された、現行の前記オブジェクトコードに対応するソースコードに対する差分のソースコードである差分ソースコードを取得する取得制御ステップと、前記取得制御ステップにて取得した前記差分ソースコードおよび前記記憶部に記憶された前記ソースコードから最新のソースコードを生成する生成制御ステップと、前記生成制御ステップにて生成した前記最新のソースコードを最新の前記オブジェクトコードに変換する変換制御ステップと、前記変換制御ステップにて変換した前記最新のオブジェクトコードを前記制御装置に送信する送信制御ステップとを含むステップを前記コンピュータに実行させることを特徴とする。
図1から図3は、第1実施形態に係るソフトウェア書き換えシステム100の一例を模式的に示す概略構成図である。
図1に示すように、サーバ130は、制御部131と、広域通信部132と、記憶部133とを備えている。
制御部131は、CPU(Central Processing Unit)等のいわゆるコンピュータからなる処理装置131aと、ROM(Read Only Memory)、RAM(Random Access Memory)等の揮発性メモリを含むメモリ装置131bとを有している。
広域通信部132は、制御部131のデータラインに電気的に接続されている。広域通信部132は、制御部131の指示の下、移動体110(1)~110(n)における端末装置200(1)~200(n)の広域通信部220(図1から図3参照)と同一の通信プロトコル(通信規約)で通信可能とされている。通信時に送受信されるデータは、通信プロトコルに従うように広域通信部132で変換される。広域通信部132は、記憶部133に記録された移動体110(1)~110(n)における制御装置113(1)~113(m)のソフトウェアFWに関する情報を移動体110(1)~110(n)〔この例では移動体110(1),110(2)〕における端末装置200(1)~200(n)〔この例では端末装置200(1),200(2)〕に送信する。
記憶部133は、制御部131のデータラインに電気的に接続されている。記憶部133は、制御部131の指示の下、情報が書き込み制御および読み出し制御される。記憶部133は、この例では、フラッシュメモリ、ハードディスク装置等の大容量記憶装置とされている。
次に、専用の端末装置200(1),200(2)(配信元)のシステム構成について図1から図3を参照しながら以下に説明する。
図1から図3に示すように、端末装置200(1),200(2)(配信元)は、制御部210(コンピュータの一例)と、広域通信部220と、記憶部230と、短距離無線通信部240と、信号通信部250と、電源制御部260とを備えている。
制御部210は、CPU(Central Processing Unit)等のいわゆるコンピュータからなる処理装置210aと、ROM(Read Only Memory)、RAM(Random Access Memory)等の揮発性メモリを含むメモリ装置210bとを有している。
広域通信部220は、制御部210のデータラインに電気的に接続されている。広域通信部220は、制御部210の指示の下、サーバ130の広域通信部132(図1参照)と同一の通信プロトコル(通信規約)で通信可能とされている。通信時に送受信されるデータは、通信プロトコルに従うように広域通信部220で変換される。広域通信部220は、サーバ130の記憶部133に記録された移動体110(1)~110(n)における制御装置113(1)~113(m)のソフトウェアFWに関する情報をサーバ130から受信する。
記憶部230は、制御部210のデータラインに電気的に接続されている。記憶部230は、制御部210の指示の下、情報が書き込み制御および読み出し制御される。記憶部230は、この例では、フラッシュメモリ等の大容量記憶装置とされている。
端末装置200(1)(配信元)における短距離無線通信部240は、端末装置200(2)(配信元)および端末装置200(3)~200(n)(非配信元)における短距離無線通信部240と短距離無線通信を行う。また、端末装置200(2)(配信元)における短距離無線通信部240は、端末装置200(1)(配信元)および端末装置200(3)~200(n)(非配信元)における短距離無線通信部240と短距離無線通信を行う。
信号通信部250は、作業部111(1)~111(m)における制御装置113(1)~113(m)とCAN規格等の通信規格による通信を行って情報のやりとりを行う。
電源制御部260は、制御部210に電力を供給する。本実施の形態では、電源制御部260は、起動スイッチSWのオフ状態およびオン状態に関わらず、バッテリーBTに接続されている。具体的には、電源制御部260の入力側電源ライン(図示せず)とバッテリーBTとが電源接続ラインL3によって接続されている。これにより、電源制御部260は、バッテリーBTからの電力が常時供給されるようになっている。
図9は、図1から図3に示す専用の端末装置200(1),200(2)(配信元)のソフトウェア構成の一例を示すブロック図である。
受信制御ステップでは、制御部210は、差分ソースコードDSCを格納した更新用ソフトウェア保存データベースDB3を備えたサーバ130から更新用ソフトウェア保存データベースDB3における差分ソースコードDSCを広域通信網WNおよび広域通信部220を介して受信する。
記憶制御ステップでは、制御部210は、サーバ130から受信した差分ソースコードDSCを記憶部230に記憶する。
端末装置200(1),200(2)(配信元)は、移動体110(1),110(2)に設けられている。
送信制御ステップでは、制御部210は、差分ソースコードDSCを用いて変換した最新のオブジェクトコードNOCを、他の移動体110(i)に短距離無線通信部240および短距離無線通信網LNを介して送信する、および/または、自身の移動体110(1),110(2)における制御装置113(1)~113(m)に送信する。
図3に示すように、端末装置200(3)~200(n)(非配信元)は、端末装置200(1),200(2)(配信元)において、他の移動体110(i)の機種情報MIを持たない差分ソースコードDSCを有している。詳しくは、端末装置200(3)~200(n)(非配信元)は、更新用ソフトウェア管理データベースDB2、および、他の移動体110(i)の機種情報MIを持たない差分ソースコードDSCを格納した更新用ソフトウェア保存データベースDB3を有しているものの、機種情報管理データベースDB1およびエリア情報管理データベースDB4は有していない。
図12から図14は、第2実施形態に係るソフトウェア書き換えシステム100の一例を模式的に示す概略構成図である。
-汎用の端末装置のハードウェア構成-
図12から図14に示すように、端末装置300は、制御部310(コンピュータの一例)と、広域通信部320と、記憶部330と、短距離無線通信部340と、ユーザインタフェース部350とを備えている。なお、端末装置300は、複数あってもよい。
制御部310は、CPU(Central Processing Unit)等のいわゆるコンピュータからなる処理装置310aと、ROM(Read Only Memory)、RAM(Random Access Memory)等の揮発性メモリを含むメモリ装置310bとを有している。
広域通信部320は、制御部310のデータラインに電気的に接続されている。広域通信部320は、制御部310の指示の下、サーバ130の広域通信部132(図12参照)と同一の通信プロトコル(通信規約)で通信可能とされている。通信時に送受信されるデータは、通信プロトコルに従うように広域通信部320で変換される。広域通信部320は、サーバ130の記憶部133に記録された移動体110(1)~110(n)における制御装置113(1)~113(m)のソフトウェアFWに関する情報をサーバ130から受信する。
記憶部330は、制御部310のデータラインに電気的に接続されている。記憶部330は、制御部310の指示の下、情報が書き込み制御および読み出し制御される。記憶部330は、この例では、フラッシュメモリ等の大容量記憶装置とされている。ここで、記憶部330には、ソフトウェア書き換えプログラムPPが予め格納(インストール)される。
端末装置300における短距離無線通信部340は、端末装置200(1)~200(n)における短距離無線通信部240と短距離無線通信を行う。
ユーザインタフェース部350は、ディスプレイ装置等の出力装置やタッチパネル等の入力装置を含んでいる。ユーザインタフェース部350では、典型的には、ソフトウェア書き換えプログラムPPの起動制御や、進捗情報の表示などが可能である。
図15は、図12から図14に示す汎用の端末装置300のソフトウェア構成の一例を示すブロック図である。
次に、ソフトウェア書き換えシステム100におけるソフトウェア書き換え処理の一例について図16から図20を参照しながら以下に説明する。
図16に示すソフトウェア書き換え処理のフローチャートでは、先ず、サーバ130における制御部131は、広域通信部132から広域通信網WNを介して専用の端末装置200(1),200(2)(配信元)および/または汎用の端末装置300(以下、単に端末装置200,300ということがある。)と通信を確立し(ステップSs1)、端末装置200,300からの通信を待ち受けて(ステップSs2)、端末装置200,300からの応答があるまで(ステップSs2:No)待機する。
図17および図18に示すソフトウェア書き換え処理のフローチャートでは、先ず、専用の端末装置200(1),200(2)(配信元)および/または汎用の端末装置300における制御部210,310(図17および図18中の左側参照)は、短距離無線通信網LNが設置されている地域において、短距離無線通信部240,340から短距離無線通信網LNを介して専用の端末装置200(2),200(1)(配信元)(図17参照)および専用の端末装置200(3)~200(n)(非配信元)(図18参照)と通信を確立し(ステップSt21)、専用の端末装置200(2),200(1)(配信元)および専用の端末装置200(3)~200(n)(非配信元)からの通信を待ち受けて(St22)、専用の端末装置200(2),200(1)(配信元)および専用の端末装置200(3)~200(n)(非配信元)からの応答があるまで(ステップSt22:No)待機する。
本実施の形態[第1実施形態に係る端末装置200(1),200(2)および第2実施形態に係る端末装置300]によれば、差分ソースコードDSCを用いるので、送信時間〔この例ではサーバ130から端末装置200(1)~200(n)に制御装置113(1)~113(m)のソフトウェアFWを送信するための送信時間〕の短縮化を実現させることができる。しかも、差分ソースコードDSCおよび現行のソースコードSCから最新のソースコードNSCを生成し、生成した最新のソースコードNSCを最新のオブジェクトコードNOCに変換し、変換した最新のオブジェクトコードNOCを制御装置113~113に送信するので、ソフトウェアFWの差分から最新バージョンのソフトウェアFWを容易に生成することができ、これにより、制御装置113~113で最新バージョンのソフトウェアFWを確実に実行することが可能となる。
本実施の形態に係るソフトウェア書き換えシステム100において、移動体110として、コンバイン、耕耘機や田植機等の農業作業機といった走行作業機に適用したが、それに限定されるものではなく、トラクター、ショベルカー、ホイルローダやキャリヤ等の建設作業機といった走行作業機や、プレジャーボート、漁船といった船舶等にも好適に適用することができる。
110 移動体(電機機器の一例)
111 作業部
113 制御装置
120 遠隔監視センター
130 サーバ
131 制御部
131a 処理装置
131b メモリ装置
132 広域通信部
133 記憶部
200 専用の端末装置
210 制御部
210a 処理装置
210b メモリ装置
220 広域通信部
230 記憶部
240 短距離無線通信部
250 信号通信部
260 電源制御部
300 汎用の端末装置
310 制御部
310a 処理装置
310b メモリ装置
320 広域通信部
330 記憶部
340 短距離無線通信部
350 ユーザインタフェース部
AR エリア情報
BT バッテリー
CC 制御装置コード
DB 更新用ソフトウェア格納データベース
DB1 機種情報管理データベース
DB2 更新用ソフトウェア管理データベース
DB3 更新用ソフトウェア保存データベース
DB4 エリア情報管理データベース
DSC 差分ソースコード
FW ソフトウェア
ID 端末識別情報
LN 短距離無線通信網
MC 機種コード
MI 機種情報
MT 移動体の種類
NOC 最新のオブジェクトコード
NSC 最新のソースコード
OC オブジェクトコード
PP ソフトウェア更新用プログラム
Q1 受信制御部
Q11 取得制御部
Q2 記憶制御部
Q3 書き換え制御部
Q31 生成制御部
Q32 変換制御部
Q4 送信制御部
RI 更新情報
RID 登録された端末識別情報
RVR 最新バージョンの更新有無
SC ソースコード
SW 起動スイッチ
VR バージョン
WFW 更新用ソフトウェア
WFWC 更新用ソフトウェアコード
WN 広域通信網
Claims (9)
- 制御装置のソフトウェアを書き換えるソフトウェア書き換えシステムに用いる端末装置であって、
前記制御装置で実行可能なバイナリー形式のオブジェクトコードを生成するためのテキスト形式のソースコードを記憶する記憶部を備え、
前記記憶部に記憶された、現行の前記オブジェクトコードに対応するソースコードに対する差分のソースコードである差分ソースコードを取得し、取得した前記差分ソースコードおよび前記記憶部に記憶された前記ソースコードから最新のソースコードを生成し、生成した前記最新のソースコードを最新の前記オブジェクトコードに変換し、変換した前記最新のオブジェクトコードを前記制御装置に送信することを特徴とする端末装置。 - 請求項1に記載の端末装置であって、
前記制御装置は、移動体に搭載されていることを特徴とする端末装置。 - 請求項2に記載の端末装置であって、
前記移動体に設けられ、
前記移動体とは他の移動体と短距離無線通信網を介して通信する短距離無線通信部を備えていることを特徴とする端末装置。 - 請求項3に記載の端末装置であって、
前記最新のオブジェクトコードを、自身の移動体における前記制御装置に送信する、および/または、前記他の移動体に前記短距離無線通信部および前記短距離無線通信網を介して送信することを特徴とする端末装置。 - 請求項3または請求項4に記載の端末装置であって、
前記他の移動体は、請求項1または請求項2に記載の端末装置を備え、
前記差分ソースコードを前記他の移動体に前記短距離無線通信部および前記短距離無線通信網を介して送信することを特徴とする端末装置。 - 請求項1に記載の端末装置であって、
前記制御装置は、電機機器に搭載されており、
当該端末装置は、多機能通信携帯端末装置として機能し、
前記電機機器と短距離無線通信網を介して通信する短距離無線通信部を備えていることを特徴とする端末装置。 - 請求項6に記載の端末装置であって、
前記最新のオブジェクトコードを前記電機機器に前記短距離無線通信部および前記短距離無線通信網を介して送信することを特徴とする端末装置。 - 請求項6または請求項7に記載の端末装置であって、
前記電機機器は、請求項2から請求項4までのいずれか1つに記載の端末装置を備え、
前記差分ソースコードを前記電機機器に前記短距離無線通信部および前記短距離無線通信網を介して送信することを特徴とする端末装置。 - 制御装置のソフトウェアを書き換えるソフトウェア書き換えシステムに用いる端末装置のソフトウェア書き換えプログラムであって、
前記端末装置は、前記制御装置で実行可能なバイナリー形式のオブジェクトコードを生成するためのテキスト形式のソースコードを記憶する記憶部と、コンピュータとを備え、
前記記憶部に記憶された、現行の前記オブジェクトコードに対応するソースコードに対する差分のソースコードである差分ソースコードを取得する取得制御ステップと、
前記取得制御ステップにて取得した前記差分ソースコードおよび前記記憶部に記憶された前記ソースコードから最新のソースコードを生成する生成制御ステップと、
前記生成制御ステップにて生成した前記最新のソースコードを最新の前記オブジェクトコードに変換する変換制御ステップと、
前記変換制御ステップにて変換した前記最新のオブジェクトコードを前記制御装置に送信する送信制御ステップと
を含むステップを前記コンピュータに実行させることを特徴とするソフトウェア書き換えプログラム。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP17759713.5A EP3425506A4 (en) | 2016-03-01 | 2017-02-20 | TERMINAL DEVICE AND SOFTWARE REWRITING PROGRAM |
CA3016285A CA3016285A1 (en) | 2016-03-01 | 2017-02-20 | Terminal device and software rewriting program |
CN201780012746.6A CN108701067A (zh) | 2016-03-01 | 2017-02-20 | 终端装置以及软件改写程序 |
US16/081,376 US10732958B2 (en) | 2016-03-01 | 2017-02-20 | Terminal device and software rewriting program |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016-038928 | 2016-03-01 | ||
JP2016038928A JP2017156937A (ja) | 2016-03-01 | 2016-03-01 | 端末装置およびソフトウェア書き換えプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2017150247A1 true WO2017150247A1 (ja) | 2017-09-08 |
Family
ID=59744015
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2017/006113 WO2017150247A1 (ja) | 2016-03-01 | 2017-02-20 | 端末装置およびソフトウェア書き換えプログラム |
Country Status (6)
Country | Link |
---|---|
US (1) | US10732958B2 (ja) |
EP (1) | EP3425506A4 (ja) |
JP (1) | JP2017156937A (ja) |
CN (1) | CN108701067A (ja) |
CA (1) | CA3016285A1 (ja) |
WO (1) | WO2017150247A1 (ja) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7165799B2 (ja) | 2018-03-27 | 2022-11-04 | ヤンマーパワーテクノロジー株式会社 | ソフトウェア管理装置 |
US11875142B2 (en) * | 2019-11-01 | 2024-01-16 | Ricoh Company, Ltd. | Information processing apparatus, information processing system, and information processing method |
JP2021135777A (ja) * | 2020-02-27 | 2021-09-13 | 株式会社小松製作所 | 作業機械のコンポーネントのソフトウェア更新システムおよびソフトウェア更新方法 |
JP7421387B2 (ja) * | 2020-03-19 | 2024-01-24 | 本田技研工業株式会社 | ソフトウェア書換装置 |
US11271971B1 (en) * | 2021-03-19 | 2022-03-08 | King Saud University | Device for facilitating managing cyber security health of a connected and autonomous vehicle (CAV) |
CN113821251B (zh) * | 2021-09-29 | 2024-02-06 | 北京无限自在文化传媒股份有限公司 | 基于人工智能的代码优化方法、装置、设备和存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001005649A (ja) * | 1999-06-17 | 2001-01-12 | Mitsubishi Electric Corp | システムソフトウェア更新方式 |
JP2009123226A (ja) * | 2008-12-18 | 2009-06-04 | Omron Corp | 車載制御装置の運用システム及び車載制御装置 |
JP2015170195A (ja) * | 2014-03-07 | 2015-09-28 | ヤンマー株式会社 | 遠隔サーバ |
Family Cites Families (106)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6276954A (ja) * | 1985-09-30 | 1987-04-09 | Toshiba Corp | 通信制御装置 |
EP0449530A3 (en) * | 1990-03-23 | 1993-09-01 | Canon Kabushiki Kaisha | A memory medium having a control program memorized therein and an information processing method and an information processing apparatus using the same medium |
US5175856A (en) * | 1990-06-11 | 1992-12-29 | Supercomputer Systems Limited Partnership | Computer with integrated hierarchical representation (ihr) of program wherein ihr file is available for debugging and optimizing during target execution |
US5347627A (en) * | 1992-04-07 | 1994-09-13 | International Business Machines Corporation | Graphical user interface including dynamic sizing and spacing |
US5732273A (en) * | 1995-08-11 | 1998-03-24 | Digital Equipment Corporation | System for monitoring compute system performance |
US5713010A (en) * | 1995-02-10 | 1998-01-27 | Hewlett-Packard Company | Source line tracking in optimized code |
JP2719761B2 (ja) * | 1995-02-24 | 1998-02-25 | パイオニア株式会社 | データ蓄積装置 |
US6067500A (en) * | 1995-08-14 | 2000-05-23 | Aisin Aw Co., Ltd. | Navigation system |
US5815720A (en) * | 1996-03-15 | 1998-09-29 | Institute For The Development Of Emerging Architectures, L.L.C. | Use of dynamic translation to collect and exploit run-time information in an optimizing compilation system |
US5835773A (en) * | 1996-04-17 | 1998-11-10 | Hewlett-Packard, Co. | Method for achieving native performance across a set of incompatible architectures using a single binary file |
US6009274A (en) * | 1996-12-13 | 1999-12-28 | 3Com Corporation | Method and apparatus for automatically updating software components on end systems over a network |
US5920725A (en) | 1997-07-02 | 1999-07-06 | Adaptivity Inc. | Run-time object-synthesis and transparent client/server updating of distributed objects using a meta server of all object descriptors |
US6106574A (en) * | 1997-12-04 | 2000-08-22 | Unisys Corp. | Computer-implemented object-oriented method for relating objects in a compiler to locations in the source program and to inlined call histories |
US6305009B1 (en) * | 1997-12-05 | 2001-10-16 | Robert M. Goor | Compiler design using object technology with cross platform capability |
US6581157B1 (en) * | 1999-04-26 | 2003-06-17 | 3Com Corporation | System and method for detecting and updating non-volatile memory on an electronic adapter board installed in a computing system |
US6684389B1 (en) * | 1999-08-05 | 2004-01-27 | Canon Kabushiki Kaisha | Compiler that decrypts encrypted source code |
JP3669619B2 (ja) * | 1999-09-06 | 2005-07-13 | 富士通株式会社 | 無線端末装置のソフトウェア更新方法及びその装置 |
JP2001075785A (ja) * | 1999-09-09 | 2001-03-23 | Nec Corp | データ更新システム |
US20020178434A1 (en) * | 2001-02-22 | 2002-11-28 | Fox Gary L. | Apparatus and method for automatic source code generation in a process control environment |
JP4827310B2 (ja) * | 2001-03-30 | 2011-11-30 | パナソニック株式会社 | リモートプログラムダウンロードシステム |
US20020188934A1 (en) * | 2001-06-12 | 2002-12-12 | Nortel Networks Limited | Method and system for upgrading existing firmware on third party hardware |
US9134989B2 (en) * | 2002-01-31 | 2015-09-15 | Qualcomm Incorporated | System and method for updating dataset versions resident on a wireless device |
US6922709B2 (en) * | 2002-02-19 | 2005-07-26 | International Business Machines Corporation | Method for maintaining consistent dual copies of vital product data in a dual accessor library of portable data storage media |
JP2003242064A (ja) * | 2002-02-19 | 2003-08-29 | Funai Electric Co Ltd | Cd−r/rw書込み用プログラム、動作制御プログラム、および、ドライブ装置 |
US7243347B2 (en) * | 2002-06-21 | 2007-07-10 | International Business Machines Corporation | Method and system for maintaining firmware versions in a data processing system |
US20040034861A1 (en) * | 2002-08-19 | 2004-02-19 | Ballai Philip N. | System and method for automating firmware maintenance |
US20040068724A1 (en) * | 2002-08-30 | 2004-04-08 | Gardner Richard Wayne | Server processing for updating dataset versions resident on a wireless device |
US8250562B2 (en) * | 2002-08-30 | 2012-08-21 | Sun Microsystems, Inc. | Barrier mechanism for firmware upgrade |
US20040083471A1 (en) * | 2002-10-21 | 2004-04-29 | Lg Electronics Inc. | Method of upgrading system software of a home appliance |
DE10256799B3 (de) * | 2002-12-05 | 2004-04-29 | Wabco Gmbh & Co. Ohg | Verfahren zur Programmierung von Flash-E-PROMs in einer mit einem Mikroprozessor ausgerüsteten Steuerelektronik für Straßenfahrzeuge |
US20050010916A1 (en) * | 2003-05-24 | 2005-01-13 | Hagen David A. | System for providing software application updates to multiple clients on a network |
US7676506B2 (en) * | 2003-06-20 | 2010-03-09 | Innopath Software, Inc. | Differential file compression of software image versions |
JP4021407B2 (ja) * | 2003-12-16 | 2007-12-12 | シャープ株式会社 | 情報処理装置 |
TW200535697A (en) * | 2004-04-30 | 2005-11-01 | Hon Hai Prec Ind Co Ltd | System and method for automatic updating program |
US7788662B2 (en) * | 2004-07-28 | 2010-08-31 | Microsoft Corporation | Automatic upgrade of pluggable components |
US20060061789A1 (en) * | 2004-09-20 | 2006-03-23 | Kabushiki Kaisha Toshiba | Image forming apparatus and image forming method |
US7503040B2 (en) * | 2004-09-30 | 2009-03-10 | International Business Machines Corporation | Configuring a shared library to accommodate relocatable data in a pervasive device |
CN1758220A (zh) * | 2004-10-08 | 2006-04-12 | 华为技术有限公司 | 一种升级软件版本的方法 |
US7409677B1 (en) * | 2004-11-16 | 2008-08-05 | Sun Microsystems, Inc. | Method and system for creation and use of embedded trace description |
US20060184924A1 (en) * | 2004-12-14 | 2006-08-17 | Aten International Co., Ltd. | Intelligent platform management interface firmware architecture and method of building the same |
US7480901B2 (en) * | 2005-02-03 | 2009-01-20 | International Business Machines Corporation | System and method for producing per-processor optimized executables |
JP4791061B2 (ja) * | 2005-03-18 | 2011-10-12 | 富士通株式会社 | 計算機システムのファームウェアのバージョン管理方法及び情報処理装置 |
JP4924976B2 (ja) * | 2005-03-23 | 2012-04-25 | 新日鉄ソリューションズ株式会社 | ソフトウェア開発支援システム |
US20060236310A1 (en) * | 2005-04-19 | 2006-10-19 | Domeika Max J | Methods and apparatus to iteratively compile software to meet user-defined criteria |
JP2006331394A (ja) * | 2005-04-25 | 2006-12-07 | Ricoh Co Ltd | プログラムバージョン管理方法、プログラム及び印刷システム |
KR100694124B1 (ko) * | 2005-06-08 | 2007-03-12 | 삼성전자주식회사 | 화상형성장치의 드라이버 갱신 방법 및 장치 |
DE602005010858D1 (de) * | 2005-08-18 | 2008-12-18 | Ericsson Telefon Ab L M | Rückgekoppelter Linker for erhöhte Delta-Performanz |
US7698692B1 (en) * | 2005-11-10 | 2010-04-13 | Sun Microsystems, Inc. | Preparing a binary file for future instrumentation |
JP2007301866A (ja) * | 2006-05-12 | 2007-11-22 | Sony Corp | 電子機器、印刷装置、プログラム及び消耗品 |
JP2007304998A (ja) * | 2006-05-12 | 2007-11-22 | Hitachi Software Eng Co Ltd | ソースコード生成方法及び装置並びにプログラム |
US7770165B2 (en) * | 2006-08-25 | 2010-08-03 | Microsoft Corporation | Providing firmware updates to portable media devices |
US10104432B2 (en) * | 2006-12-01 | 2018-10-16 | Time Warner Cable Enterprises Llc | Methods and apparatus for software provisioning of a network device |
US20080172649A1 (en) * | 2007-01-16 | 2008-07-17 | Microsoft Corporation | Strategies for Synchronizing a Product |
US8219977B1 (en) * | 2007-01-26 | 2012-07-10 | Xilinx, Inc. | Using a software repository to increase the speed of software testing |
CN101282453B (zh) * | 2007-04-03 | 2010-08-11 | 华为技术有限公司 | 更新电子业务指南的方法、服务器、终端及系统 |
DE102007026602A1 (de) * | 2007-06-08 | 2008-12-11 | Abb Ag | Einrichtung und Verfahren zum Prüfen der aktuellen Softwareinstallation von Feldgeräten eines verteilten Systems, insbesondere Automatisierungssystems |
US8473938B1 (en) * | 2007-06-21 | 2013-06-25 | Open Invention Network Llc | Security patch update processor |
US8145655B2 (en) * | 2007-06-22 | 2012-03-27 | International Business Machines Corporation | Generating information on database queries in source code into object code compiled from the source code |
US20090037887A1 (en) * | 2007-07-30 | 2009-02-05 | Chavan Shasank K | Compiler-inserted predicated tracing |
US20090271768A1 (en) * | 2008-04-24 | 2009-10-29 | International Business Machines Corporation | Discriminating program code updates after merging for live review |
US8453134B2 (en) * | 2008-06-04 | 2013-05-28 | Intel Corporation | Improving data locality and parallelism by code replication |
US8261247B2 (en) * | 2008-10-01 | 2012-09-04 | Oracle International Corporation | Method of modifying code of a running computer program based on symbol values discovered from comparison of running code to corresponding object code |
JP5358153B2 (ja) * | 2008-10-10 | 2013-12-04 | 株式会社ソニー・コンピュータエンタテインメント | ゲーム装置および情報処理装置 |
CN101425078A (zh) * | 2008-11-17 | 2009-05-06 | 阿里巴巴集团控股有限公司 | 一种软件源代码的更新方法及装置 |
US8892699B2 (en) * | 2008-12-31 | 2014-11-18 | Schneider Electric USA, Inc. | Automatic firmware updates for intelligent electronic devices |
US9031237B2 (en) * | 2009-02-19 | 2015-05-12 | GM Global Technology Operations LLC | Method and apparatus for protecting private data on a vehicle |
JP2010198155A (ja) | 2009-02-24 | 2010-09-09 | Fujitsu Ten Ltd | プログラム更新装置、プログラム更新方法、及び情報処理装置 |
US8438558B1 (en) * | 2009-03-27 | 2013-05-07 | Google Inc. | System and method of updating programs and data |
US8762971B2 (en) | 2009-04-02 | 2014-06-24 | International Business Machines Corporation | Servicing a production program in an integrated development environment |
US20110010696A1 (en) * | 2009-07-09 | 2011-01-13 | Sun Microsystems, Inc. | Duplicate virtual function table removal |
US8645936B2 (en) * | 2009-09-30 | 2014-02-04 | Zynga Inc. | Apparatuses, methods and systems for an a API call abstractor |
JP2011095950A (ja) * | 2009-10-29 | 2011-05-12 | Seiko Epson Corp | ネットワークデバイス、ネットワークデバイスシステムおよびネットワークデバイスのソフトウェア更新方法 |
JP5171790B2 (ja) * | 2009-11-12 | 2013-03-27 | 株式会社エヌ・ティ・ティ・ドコモ | 情報処理装置、通信システムおよびプログラム |
KR20110092007A (ko) * | 2010-02-08 | 2011-08-17 | 주식회사 만도 | 차량의 소프트웨어 다운로드 시스템 및 방법 |
US8739049B2 (en) * | 2010-05-24 | 2014-05-27 | GM Global Technology Operations LLC | Vehicle system modeling systems and methods |
WO2012019111A2 (en) * | 2010-08-06 | 2012-02-09 | Frederick Furtek | A method and apparatus for a compiler and related components for stream-based computations for a general-purpose, multiple-core system |
KR101301606B1 (ko) * | 2010-10-28 | 2013-08-29 | 삼성에스디에스 주식회사 | 애플리케이션 생성 장치 및 그 방법 |
KR101732764B1 (ko) * | 2010-12-15 | 2017-05-04 | 마이크로소프트 테크놀로지 라이센싱, 엘엘씨 | 코드 클론 검출을 이용하는 지능형 코드 디퍼런싱을 수행하는 방법 및 시스템 |
US8745612B1 (en) * | 2011-01-14 | 2014-06-03 | Google Inc. | Secure versioning of software packages |
US8726264B1 (en) * | 2011-11-02 | 2014-05-13 | Amazon Technologies, Inc. | Architecture for incremental deployment |
US9223564B2 (en) * | 2012-01-26 | 2015-12-29 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Update systems responsive to ongoing processing at a storage system |
US20140336851A1 (en) | 2012-01-30 | 2014-11-13 | Mitsubishi Electric Corporation | Train information managing apparatus and selection method for control software of train information managing apparatus |
US20130346960A1 (en) * | 2012-06-25 | 2013-12-26 | Infosys Limited | Method and system for updating an application |
JP6064529B2 (ja) * | 2012-11-07 | 2017-01-25 | 株式会社リコー | 情報処理装置 |
JP6056424B2 (ja) * | 2012-11-29 | 2017-01-11 | 株式会社デンソー | 車載プログラム更新装置 |
CN103853574B (zh) * | 2012-12-06 | 2015-09-16 | 腾讯科技(深圳)有限公司 | 一种软件升级的方法及系统 |
JP6020159B2 (ja) * | 2012-12-27 | 2016-11-02 | 株式会社リコー | 情報処理装置、及び情報処理方法 |
US20140245278A1 (en) * | 2013-02-22 | 2014-08-28 | Panasonic Automotive Systems Company Of America, Division Of Panasonic Corpor | Automotive component self update via software version control |
US9075686B2 (en) * | 2013-02-25 | 2015-07-07 | GM Global Technology Operations LLC | System and method to improve control module reflash time |
US9454363B1 (en) * | 2013-03-15 | 2016-09-27 | Data Systems International, Inc. | Mobile application development system and method |
US8954951B1 (en) * | 2013-04-09 | 2015-02-10 | Google Inc. | Stop distribution of application updates |
CN104216727A (zh) * | 2013-06-04 | 2014-12-17 | 腾讯科技(深圳)有限公司 | 应用升级方法和系统 |
KR101459493B1 (ko) * | 2013-10-08 | 2014-11-07 | 현대자동차 주식회사 | 차량 전자 제어 장치 및 차량 제어방법 |
JP6255880B2 (ja) * | 2013-10-10 | 2018-01-10 | 株式会社ソシオネクスト | 高位合成用データ生成装置、高位合成装置、高位合成用データ生成方法及びプログラム |
CN104699491A (zh) * | 2013-12-06 | 2015-06-10 | 中兴通讯股份有限公司 | 一种应用程序的升级处理方法及终端设备 |
WO2015105486A1 (en) * | 2014-01-08 | 2015-07-16 | Hewlett-Packard Development Company, L.P. | Dynamically applying a software patch to a computer program |
US9274769B1 (en) * | 2014-09-05 | 2016-03-01 | International Business Machines Corporation | Table of contents pointer value save and restore placeholder positioning |
US10430176B2 (en) * | 2014-11-17 | 2019-10-01 | Hitachi Automotive Systems, Ltd. | In-vehicle control device, program update system, and program update software |
WO2016100767A2 (en) * | 2014-12-19 | 2016-06-23 | Aalborg Universitet | Method for file updating and version control for linear erasure coded and network coded storage |
CN105786459A (zh) * | 2014-12-24 | 2016-07-20 | 致伸科技股份有限公司 | 控制系统及控制被动装置的方法 |
US9912655B2 (en) * | 2015-03-27 | 2018-03-06 | Amazon Technologies, Inc. | Unmanned vehicle message exchange |
US10261489B2 (en) * | 2015-04-15 | 2019-04-16 | Indegy Ltd. | Detection of mis-configuration and hostile attacks in industrial control networks using active querying |
US20170033989A1 (en) * | 2015-07-31 | 2017-02-02 | Apple Inc. | Shareable code objects for accessories and user devices |
US20170090910A1 (en) * | 2015-09-29 | 2017-03-30 | International Business Machines Corporation | Mobile device application installation with performance enhancement |
US9728087B2 (en) * | 2015-12-18 | 2017-08-08 | International Business Machines Corporation | Vehicle accident response using diagnostic data burst transmission |
JP2017156936A (ja) * | 2016-03-01 | 2017-09-07 | ヤンマー株式会社 | 端末装置およびソフトウェア書き換えプログラム |
-
2016
- 2016-03-01 JP JP2016038928A patent/JP2017156937A/ja active Pending
-
2017
- 2017-02-20 CN CN201780012746.6A patent/CN108701067A/zh active Pending
- 2017-02-20 US US16/081,376 patent/US10732958B2/en active Active
- 2017-02-20 CA CA3016285A patent/CA3016285A1/en not_active Abandoned
- 2017-02-20 WO PCT/JP2017/006113 patent/WO2017150247A1/ja active Application Filing
- 2017-02-20 EP EP17759713.5A patent/EP3425506A4/en not_active Withdrawn
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001005649A (ja) * | 1999-06-17 | 2001-01-12 | Mitsubishi Electric Corp | システムソフトウェア更新方式 |
JP2009123226A (ja) * | 2008-12-18 | 2009-06-04 | Omron Corp | 車載制御装置の運用システム及び車載制御装置 |
JP2015170195A (ja) * | 2014-03-07 | 2015-09-28 | ヤンマー株式会社 | 遠隔サーバ |
Non-Patent Citations (1)
Title |
---|
See also references of EP3425506A4 * |
Also Published As
Publication number | Publication date |
---|---|
EP3425506A1 (en) | 2019-01-09 |
JP2017156937A (ja) | 2017-09-07 |
US10732958B2 (en) | 2020-08-04 |
EP3425506A4 (en) | 2019-03-20 |
CA3016285A1 (en) | 2017-09-08 |
US20190073211A1 (en) | 2019-03-07 |
CN108701067A (zh) | 2018-10-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2017150247A1 (ja) | 端末装置およびソフトウェア書き換えプログラム | |
WO2017150235A1 (ja) | 端末装置およびソフトウェア書き換えプログラム | |
US10282194B2 (en) | Methods and systems to update a vehicle computing system | |
CN105808285B (zh) | 车辆控制更新的方法和系统 | |
US10061574B2 (en) | Method and apparatus for multiple vehicle software module reflash | |
CN103207791B (zh) | 远程升级方法、系统及数据终端 | |
WO2017150242A1 (ja) | 端末装置およびソフトウェア書き換えプログラム | |
JP6316536B2 (ja) | 情報処理システム、情報処理装置、情報処理プログラム、および情報処理方法 | |
CN103593208A (zh) | 用于车辆计算机系统软件更新的方法及设备 | |
WO2014017013A1 (ja) | 近距離無線通信システム及び近距離無線通信端末 | |
CN108023778A (zh) | 固件升级方法及其系统 | |
WO2005103623A1 (ja) | ナビゲーションシステム及びナビゲーション装置 | |
JP2018063711A (ja) | 車両のプログラム更新方法及びそのシステム | |
US20100077024A1 (en) | Method for transmitting data transmitted incompletely between server and client | |
CN108406781B (zh) | 一种远程机器人控制系统及控制方法 | |
JP2024040359A (ja) | 更新データを配信するサーバ、更新データの配信方法及び配信プログラム、ソフトウェア更新システム | |
JP2017156938A (ja) | 端末装置およびソフトウェア書き換えプログラム | |
CN109218001A (zh) | 用于点火状态监测的方法和设备 | |
JP7405033B2 (ja) | サーバ、更新管理方法、更新管理プログラム、ソフトウェア更新装置、サーバ及びソフトウェア更新装置を備えるシステム、センタ、otaマスタ、センタ及びotaマスタを備えるシステム | |
JP6175793B2 (ja) | 情報処理プログラムおよび情報処理装置 | |
JP6158697B2 (ja) | 通信システム及びソフトウェア更新方法 | |
CN114827303B (zh) | 智能家居产品管理单元、系统及应用方法和电子设备 | |
EP4253159A1 (en) | Information update system | |
US20200367038A1 (en) | Wireless communication device, work vehicle and work vehicle wireless communication system | |
CN116434386A (zh) | 钥匙和车辆的配对方法、装置、设备和系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
ENP | Entry into the national phase |
Ref document number: 3016285 Country of ref document: CA |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2017759713 Country of ref document: EP |
|
ENP | Entry into the national phase |
Ref document number: 2017759713 Country of ref document: EP Effective date: 20181001 |
|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 17759713 Country of ref document: EP Kind code of ref document: A1 |