WO2015194406A1 - 車載プログラム書込み装置 - Google Patents

車載プログラム書込み装置 Download PDF

Info

Publication number
WO2015194406A1
WO2015194406A1 PCT/JP2015/066432 JP2015066432W WO2015194406A1 WO 2015194406 A1 WO2015194406 A1 WO 2015194406A1 JP 2015066432 W JP2015066432 W JP 2015066432W WO 2015194406 A1 WO2015194406 A1 WO 2015194406A1
Authority
WO
WIPO (PCT)
Prior art keywords
vehicle
program
battery voltage
update
load
Prior art date
Application number
PCT/JP2015/066432
Other languages
English (en)
French (fr)
Inventor
黒澤 憲一
中原 章晴
Original Assignee
日立オートモティブシステムズ株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 日立オートモティブシステムズ株式会社 filed Critical 日立オートモティブシステムズ株式会社
Priority to EP15810231.9A priority Critical patent/EP3159221B1/en
Priority to CN201580028638.9A priority patent/CN106458113B/zh
Priority to US15/310,633 priority patent/US10310838B2/en
Priority to JP2016529247A priority patent/JP6347834B2/ja
Publication of WO2015194406A1 publication Critical patent/WO2015194406A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60RVEHICLES, VEHICLE FITTINGS, OR VEHICLE PARTS, NOT OTHERWISE PROVIDED FOR
    • B60R16/00Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for
    • B60R16/02Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for electric constitutive elements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W84/00Network topologies
    • H04W84/02Hierarchically pre-organised networks, e.g. paging networks, cellular networks, WLAN [Wireless Local Area Network] or WLL [Wireless Local Loop]
    • H04W84/04Large scale networks; Deep hierarchical networks
    • H04W84/042Public Land Mobile systems, e.g. cellular systems

Definitions

  • the present invention relates to a built-in control device that controls an electronic device mounted on a vehicle, and more particularly to an in-vehicle program writing device.
  • the control program describing the control operation of the in-vehicle control device mounted on the vehicle is stored in a non-volatile memory such as a flash memory in the microcomputer. Data such as initial values used in the control program is also stored in the nonvolatile memory.
  • These programs and data are usually not changed after the vehicle is shipped to the market, but control programs and data are updated when bugs are detected or because a better service is provided. It is carried out.
  • the vehicle control program and data update processing are carried out by bringing the vehicle to a dealer, where it is rewritten, but in recent years, a method of performing wireless communication such as a mobile phone network that is an infrastructure outside the vehicle has been devised.
  • an information management base station device outside the vehicle transmits an update request to a vehicle that is stopped via a wireless communication device mounted on the vehicle, and the vehicle that has received the request is in a sleep state. It wakes up, activates the in-vehicle control device mounted on the vehicle, and writes the update program transmitted from the information management base station device to the in-vehicle control device.
  • Patent Document 2 an external tool and a writing device mounted on a vehicle are connected by a communication cable, an update program transmitted from the external tool is stored in the writing device, and then the writing device is disconnected. Describes a configuration in which an update program is written to a vehicle-mounted control device.
  • the update program can be stored in the writing device by connecting a communication cable to another vehicle.
  • the writing time can be shortened because it can be executed without communication with the outside, and the writing time can be shortened and the writing process of the vehicle and the accumulation process of the update program via the communication cable to other vehicles can be executed in parallel. Has been shortened.
  • Patent Document 1 since there is no means for storing the update program in advance, the sum of the update program transfer time from the information management base station device to the in-vehicle control device and the write time to the in-vehicle control device is the update program. Since it takes time for writing, there is a problem that it takes time. Moreover, since the engine is not started, the battery cannot be charged by the alternator. Accordingly, if power shortage occurs during writing, the program update is interrupted, causing a problem that the in-vehicle control device malfunctions. This is a serious problem especially in the case where it takes a long time to write, since there is a high possibility that the battery capacity will be insufficient. Also, in Patent Document 2, although there is a description that writing is performed with the ignition turned on, it is not described that the engine is started. Therefore, as in Patent Document 1, writing due to insufficient battery capacity during writing is performed. An interruption may occur.
  • control program and data update processing of the in-vehicle control device installed in the car had to bring the car to the dealer, but it was not possible to bring the car to the dealer.
  • a method to update the control program and data of the in-vehicle control device using communication has been proposed, but the in-vehicle control does not feel inconvenient and safe for the vehicle owner and the driver who uses the vehicle. The issue is whether to update the control program and data of the device.
  • An object of the present invention is to provide a program writing device that securely updates data with a control program without causing inconvenience to a vehicle owner or a driver using the vehicle.
  • a relay device wherein the in-vehicle control device and the relay device are connected to each other via an in-vehicle network.
  • the relay device includes a battery voltage check circuit, and updates the update program and update to the in-vehicle control device.
  • the battery voltage check circuit checks the battery voltage when there is no load and when the load is connected, and the battery voltage is higher than the first reference voltage when there is no load, or more than the second reference voltage when the load is connected. Is a program that is written, otherwise it is not written Beam writing device.
  • the whole block diagram of the vehicle-mounted program writing apparatus which has a voltage check function.
  • the block diagram of a vehicle-mounted control apparatus The block diagram of a relay apparatus.
  • the block diagram of the interruption table 400 of a relay apparatus microcomputer The block diagram of the interruption table 500 of a vehicle-mounted control apparatus microcomputer.
  • the transmission data block diagram of an external center The accumulation data block diagram of a relay apparatus.
  • the memory block diagram of a relay apparatus The memory block diagram of a vehicle-mounted control apparatus.
  • the write-processing outline figure by a write button The memory storage process figure of a relay apparatus.
  • FIG. 5 is a diagram showing the configuration of data for writing completion notification to an external center.
  • FIG. The accumulation data block diagram of the write start command of a relay apparatus.
  • FIG. The wake-up reception process figure of a vehicle-mounted control apparatus.
  • the processing figure of the relay apparatus which transmits an update program to the vehicle-mounted control apparatus instruct
  • the write processing figure of the vehicle-mounted control apparatus instruct
  • the processing figure of the relay apparatus which stores the write completion result from the vehicle-mounted control apparatus instruct
  • the write completion processing figure of a relay apparatus The write start command processing figure by a write start command button.
  • the write start processing figure by a button.
  • Voltage check processing diagram The block diagram of a battery voltage check apparatus.
  • the update program data is stored in the relay device in the vehicle, and then the update program and update data are transmitted from the relay device in a certain time zone. This is because writing to the in-vehicle control device can shorten the writing time.
  • the present invention has devised a means for safely writing an update program and update data to the in-vehicle control device during a time period when the driver does not use the vehicle.
  • the program update procedure First, the program update of the in-vehicle control device cannot be executed without the consent of the vehicle owner. For this reason, it is necessary to confirm the consent of program update or the first time zone when the car is not used in advance by telephone or e-mail.
  • the first time zone is a time zone in the convenient year, month, and day specified by the vehicle owner, and in this time zone, it is the time zone that the program may be updated. is there.
  • the battery is being charged is a state in which the control program of the in-vehicle control device that is operating and controlling the engine is being executed.
  • the control program being executed is read by the microcomputer and the read instruction sequence is being executed, if a part of the control program is rewritten to the update program, an operation failure occurs.
  • the first case and the second case are realized on the premise that the battery capacity is grasped before the program update is executed, and it is checked whether the battery capacity is sufficient to complete the program update. A means was devised.
  • the voltage check circuit provided in the relay device performs a battery voltage check at no load and at the load connection, This means that writing is executed when the load is higher than the first reference voltage when the load is applied, or when the load is higher than the second reference voltage when the load is connected, and writing is not executed otherwise.
  • a lead battery mounted on a vehicle has a characteristic that an internal resistance increases and a voltage drop increases as the battery capacity decreases. Therefore, even a battery that exhibits a high voltage when there is no load may have a small capacity. For this reason, it is determined whether the voltage is equal to or higher than the second reference voltage with a load connected to the battery.
  • the first reference voltage is a voltage higher than the second reference voltage.
  • the relay device includes a battery voltage abnormality indicator.
  • This is means for lighting the battery voltage abnormality indicator when the reference voltage is lower than the reference voltage. Since the purpose is to notify the driver of battery abnormality, the indicator may blink.
  • the relay device includes a battery voltage normality indicator, and as a result of checking the battery voltage at the time of no load and load connection by the battery voltage check circuit, the battery voltage is equal to or higher than the first reference voltage or the second This is means for lighting the battery voltage normality indicator when the reference voltage is higher than the reference voltage.
  • the purpose is to notify the driver of normal battery.
  • the program update is executed in the time zone desired by the vehicle owner (referred to as the first time zone) based on a command from the external center. To do.
  • the relay device receives the first time from the external center.
  • the battery voltage is checked when there is no load and when the load is connected. As a result, the battery voltage is greater than the first reference voltage or greater than the second reference voltage.
  • the wake-up of the in-vehicle control device is started, the mode is changed to the repro mode (program rewrite mode), the repro mode transition notification from the in-vehicle control device and the presence of the update program data of the in-vehicle control device stored in the memory Based on this, the update program and the update data are written to the in-vehicle control device in the first time zone.
  • the update of the program and data of the in-vehicle control device can be safely completed in a time zone in which the vehicle owner does not feel inconvenient.
  • the battery voltage is checked when there is no load and when the load is connected.
  • the update program and the update data are written in the first time zone.
  • Claim 6 provides means for receiving update program data including a second time zone from an external center and executing a write start command if the current time is within the second time zone range from the in-vehicle clock. Yes. That is, the means reads out the reception time of the write start command by reading a clock mounted on the vehicle, and compares it with the second time zone in the already received update program data within the second time zone. Judgment can be made. Therefore, if it is within the range, the battery voltage is checked when there is no load and when the load is connected, and if the voltage is equal to or higher than the reference voltage, the write start is executed.
  • the wake-up pattern is transmitted to the in-vehicle control device connected to the in-vehicle network to wake up the in-vehicle control device, and then the transition command to the repro mode is transmitted to the in-vehicle control device.
  • the update program and update data write processing is executed in the second time zone. As described above, this means confirms the battery voltage in the second time zone (that is, the first time zone and the second time zone are set to be the same) as the promise with the vehicle owner. It is a means to execute writing safely and reliably.
  • a voltage check is performed when the ignition is off and the current time obtained from the vehicle-mounted timepiece is within the second time zone, and the second aspect is the second voltage if it is equal to or higher than the reference voltage. It is means for executing writing in a time zone.
  • Claim 8 is means for installing a memory accumulation completion indicator in the vehicle and lighting when the relay apparatus has completed accumulation of update program data transmitted from the external center.
  • Claim 9 is a means for installing a writing completion indicator in the vehicle and completing writing of all the accumulated update program data to the in-vehicle control device, and then lighting the indicator and notifying the external center of the writing completion. Thereby, the driver can be relieved because the completion can be confirmed if the writing completion indicator of the vehicle is turned on, for example, in the morning of the next day.
  • the external center can also know the completion.
  • Claim 10 is a memory accumulation completion indicator for confirming that the driver has completed the accumulation of the update program data, a write start command button for instructing the write start command by the driver, and a write completion indicating that the writing has been completed.
  • the display unit is installed, the driver confirms that the memory accumulation completion indicator is lit, and the relay starter turns on the write start command button at a convenient time for the driver. If the battery voltage is equal to or higher than the reference voltage, writing is executed to the in-vehicle control device, and the writing completion indicator is turned on to notify the writing completion. In this way, if there are two indicators and one button, the driver can perform the writing operation with peace of mind.
  • Claim 11 performs a voltage check when the ignition is on, the vehicle shift gear position is parking, and the write start command button is turned on, and write is executed if the reference voltage is exceeded. It is means to do.
  • Claim 12 is a means for executing writing in the first time zone promised to the vehicle owner because the driver is not necessarily the owner even if the driver is on board.
  • data in the second time zone is set in the update program data (the second time zone is set to be the same as the first time zone).
  • the relay device checks whether the time when the write start command button is turned on is within the second time zone, using the vehicle clock, and within the range
  • the memory accumulation completion indicator is lit, the battery voltage is checked when there is no load and when the load is connected.
  • the in-vehicle control device This is means for performing writing on the belt and lighting the writing completion indicator after the writing is completed to notify the driver.
  • the battery voltage is checked and the reference voltage is If it is above, it is a means to perform writing in a 2nd time slot
  • Claim 14 is a means for targeting a navigation device as one of the in-vehicle control devices.
  • the battery voltage check is performed before the map data is written to the navigation device instead of the update program data, and the writing is executed when the voltage is higher than the reference voltage.
  • the means for executing the writing start in the time zone promised in advance or the writing start at the convenience of the driver By pressing the command button, the battery voltage is checked when there is no load and when the load is connected, and as a result, it is confirmed that the battery voltage is higher than the reference voltage. realizable.
  • the battery voltage check circuit is not necessarily built in the relay device, but the battery voltage check device including the battery voltage check circuit is connected to the relay device and the battery voltage check device via the in-vehicle network.
  • This is means for notifying the relay device of the battery voltage check result detected by the voltage check device via the in-vehicle network.
  • the relay device can safely execute the writing process to the in-vehicle control device based on the battery voltage check result received from the in-vehicle network.
  • the external center 100 has a function of transmitting update program data to the vehicle 110 wirelessly and receiving the result of completion of writing from the vehicle.
  • the wireless relay base 101 relays wireless data between the external center 100 and the vehicle 110.
  • the vehicle 110 includes a relay device 120 having a function of accumulating update program data and writing to an in-vehicle control device, an in-vehicle control device 130 that controls a control target (engine) 135, and an in-vehicle control device that controls a control target (transmission) 145.
  • the relay device 120 includes a wireless transmitter / receiver 121 and a microcomputer 122 that perform data transmission / reception with the external center 100.
  • the relay device 120 is connected to the in-vehicle network 160, is connected to the watch 180 via the signal line 181, is connected to the write start command button 182 via the signal line 183, and is connected to the memory accumulation completion indicator 184 and the signal line 185.
  • a write completion indicator 186 and a signal line 187 are connected via a battery voltage abnormality indicator 188 and a signal line 189, and are connected via a battery voltage normal indicator 190 and a signal line 191. It is connected.
  • the wireless transceiver 121 is connected to the microcomputer 122 via a signal line 128.
  • the microcomputer 122 includes a CPU 123 including an arithmetic unit, an internal ROM 124 for storing a program for controlling the operation of the microcomputer, an update data ROM 125 for storing update program data, a RAM 126, and an in-vehicle LAN communication for protocol processing of the in-vehicle network. Part 127 and a voltage check circuit 129 which is one of the present invention.
  • the in-vehicle network 160 is an in-vehicle network that connects the relay device 120 and the in-vehicle control devices 130, 140, and 150.
  • the battery power source 172 supplies power to all in-vehicle electronic devices such as the relay device 120 and the in-vehicle control devices 130, 140, and 150 through the power line 173.
  • the ignition 170 is a signal for starting the on-vehicle electronic device, and is connected to the relay device 120 and the on-vehicle controllers 130, 140, and 150 via the signal line 171. When the ignition 170 is turned on, the connected electronic device is activated, and when the ignition 170 is turned on, the engine is started.
  • the in-vehicle control device 130 is connected to the in-vehicle network 160 and controls the engine 135 that is a control target via the signal line 136.
  • the microcomputer 131 controls the operation of the in-vehicle control device 130, and the in-vehicle LAN communication unit 132 is connected to the in-vehicle network 160.
  • the ROM 133 is a flash memory that stores a program and data for controlling the control target 135, and the RAM 134 is an SRAM.
  • the in-vehicle control device 140 is connected to the in-vehicle network 160 and controls the transmission 145 to be controlled through the signal line 146.
  • the microcomputer 141 controls the operation of the in-vehicle control device 140, and the in-vehicle LAN communication unit 142 is connected to the in-vehicle network 160.
  • the ROM 143 is a flash memory that stores a program and data for controlling the control target 145, and the RAM 144 is an SRAM.
  • the in-vehicle control device 140 outputs a transmission shift gear position signal 147 to the relay device 120.
  • the in-vehicle control device 150 is connected to the in-vehicle network 160, and controls the motor 155 to be controlled via the signal line 156.
  • the microcomputer 151 controls the operation of the in-vehicle control device 150, and the in-vehicle LAN communication unit 152 is connected to the in-vehicle network 160.
  • the ROM 153 is a flash memory that stores a program and data for controlling the control target 155, and the RAM 154 is an SRAM.
  • the in-vehicle control device 130 is composed of three parts 130, 140, and 150, but the circuits related to activation are the same, and only the shift gear position signal 147 is output from the in-vehicle control device 140 to the relay device 120. Signal. Therefore, the circuit operation excluding this signal 147 will be described collectively with reference to FIG.
  • the input of the in-vehicle control device 130 includes a battery power supply line 173, an ignition signal line 171 and an in-vehicle network 160. When relay circuit 210 is turned on, battery power supply line 173 and power supply line 220 are connected, and battery power is supplied to DC-DC converter 230.
  • the DC-DC converter 230 steps down the battery voltage to the voltage of the microcomputer and supplies it to the power supply terminal 240 of the microcomputer. Thereby, the microcomputer 131 can be activated by a power-on reset.
  • the relay circuit 210 there are three signals for turning on the relay circuit 210, which will be described below.
  • the first is an ignition IGN signal 171
  • the second is a wake-up detection signal WakeUp 250 of the driver IC CAN BD 200 of the in-vehicle network
  • the third is a self-holding signal PowerKeep 260 of the microcomputer 131.
  • These three signals are output to the signal 280 via the OR circuit 270, and the ON / OFF operation of the relay circuit 210 is controlled.
  • the wake-up detection signal WakeUp 250 is a signal that is turned on when a wake-up signal is received via the in-vehicle network 160.
  • the wake-up function is a function that is generally used in automobiles, and is also supported in a CAN network and a FlexRay network.
  • a signal line 290 is a signal for connecting the driver IC CAN BD 200 of the in-vehicle network and the microcomputer 131, and is a signal line for exchanging communication data with the relay device 120.
  • the self-holding signal PowerKeep 260 will be described.
  • the microcomputer 131 sets this signal to the on state, it can be seen from the circuit configuration that the relay circuit 210 can maintain the on state even when the ignition signal IGN 171 and the wakeup detection signal WakeUp 250 are turned off. Therefore, when the update program and update data are written to the flash memory ROM 133, if this signal is set to the on state, the power supply of the microcomputer can be maintained, so that safety can be ensured.
  • the input of the relay device 120 includes a battery power line 173, a clock signal line 181, a write start command button signal line 183, a memory accumulation completion indicator signal line 185, a write completion indicator signal line 187, and a battery voltage error.
  • the non-transmission / reception device 121 is connected to the microcomputer 122 through a signal line 128.
  • relay circuit 310 When relay circuit 310 is turned on, battery power supply line 173 and power supply line 370 are connected, and the battery power is supplied to DC-DC converter 320.
  • the DC-DC converter 320 steps down the battery voltage to the voltage of the microcomputer and supplies it to the power supply terminal 371 of the microcomputer.
  • the microcomputer 122 can be activated by a power-on reset.
  • there are three signals for turning on the relay circuit 310 as in the case of the in-vehicle control device explanation will be given.
  • the first is the ignition signal 171
  • the second is the wake-up detection signal WakeUp 340 of the driver IC CAN BD 300 of the in-vehicle network
  • the third is the self-holding signal PowerKeep 350 of the microcomputer 122.
  • These three signals are output to the signal 360 via the OR circuit 330, and the ON / OFF operation of the relay circuit 310 is controlled.
  • the wakeup detection signal WakeUp 340 is a signal that is turned on when a wakeup signal is received via the in-vehicle network 160.
  • the wake-up function is a function generally used in automobiles.
  • a signal line 372 is a signal for connecting the driver IC CAN BD 300 of the in-vehicle network and the microcomputer 122, and is a signal line for exchanging communication data with the in-vehicle control device.
  • the self hold signal PowerKeep 350 will be described.
  • the microcomputer 122 turns this signal on, the relay circuit 310 can be kept on from the circuit configuration even if the ignition signal 171 and the wakeup detection signal WakeUp 340 are turned off. Therefore, when writing the update program data to the update data ROM 125 of the flash memory, if this signal is set to the ON state, the power of the microcomputer 122 can be maintained, so that safety can be ensured.
  • the load 381 is a pseudo load composed of a high breakdown voltage resistor, and one end thereof is connected to the ground via a power line 383.
  • the relay circuit 380 has a load 381 connected to one terminal thereof via a power supply line 382 and a battery power supply line 173 connected to the other terminal. Furthermore, the other terminal is connected to the microcomputer 122 via a signal line 384.
  • the voltage detection circuit 385 has one terminal connected to the analog signal line 386 of the reference voltage output from the microcomputer 122, and the other terminal connected to the battery power supply line 173. Further, the output terminal is connected to the D terminal of the flip-flop circuit 388 via a signal line 387.
  • a voltage observation pulse signal line 389 output from the microcomputer 122 is connected to the T terminal of the flip-flop circuit 388. Further, the output terminal Q is connected to the microcomputer 122 via a signal line 390.
  • FIG. 24 shows a voltage observation pulse and a battery voltage waveform at no load.
  • the vertical axis represents voltage (V)
  • the horizontal axis represents time t.
  • Reference numeral 2400 denotes a battery voltage waveform at no load
  • 2410 denotes a first reference voltage output from the microcomputer 122
  • 2420 denotes a voltage observation pulse output from the microcomputer 122.
  • the microcomputer 122 In order to determine whether the battery voltage at the time of no load is equal to or higher than the first reference voltage, the microcomputer 122 first outputs an off signal to the signal line 385. As a result, since the battery voltage 173 is disconnected from the load 381, the battery voltage at no load is input to the input terminal of the voltage detection circuit.
  • the microcomputer 122 outputs the first reference voltage to the analog signal line 386, and then turns on the voltage observation pulse signal line 389 and turns it off after a predetermined time.
  • the flip-flop circuit 388 inputs the output signal 387 of the voltage detection circuit 385 while the signal line 389 is on, and latches the signal line 387 at the falling timing when the signal line 389 is turned off.
  • the latch result can be input to the microcomputer 122 via the signal line 390.
  • the voltage detection circuit 386 outputs 1 to the signal line 387 if the battery voltage 173 is higher than the first reference voltage 386, and outputs 0 to the signal line 387 if the battery voltage 173 is lower.
  • this latch timing is the time indicated by the dotted line 2430, and the battery voltage 2400 is higher than the first reference voltage 2410, so 1 is output to the signal line 390.
  • the vertical axis represents voltage (V)
  • the horizontal axis represents time t.
  • 2500 is a battery voltage waveform when a load is connected
  • 2510 is a second reference voltage output from the microcomputer 122
  • 2520 is a voltage observation pulse output from the microcomputer 122.
  • the microcomputer 122 first outputs an ON signal to the signal line 385.
  • the battery voltage 173 is connected to the load 381 so that the battery voltage when the load is connected is input to the input terminal of the voltage detection circuit.
  • the microcomputer 122 outputs the second reference voltage to the analog signal line 386, and then turns on the voltage observation pulse signal line 389 and turns it off after a predetermined time.
  • the flip-flop circuit 388 inputs the output signal 387 of the voltage detection circuit 385 while the signal line 389 is on, and latches the signal line 387 at the falling timing when the signal line 389 is turned off. As a result, the latch result can be input to the microcomputer 122 via the signal line 390.
  • the voltage detection circuit 386 outputs 1 to the signal line 387 if the battery voltage 173 is higher than the second reference voltage 386, and outputs 0 to the signal line 387 if the battery voltage 173 is lower. Alternatively, it can be easily determined by 0 that the voltage is equal to or higher than the second reference voltage or lower than the reference voltage. In FIG. 25, this latch timing is the time indicated by the dotted line 2530, and since the battery voltage 2500 is higher than the second reference voltage 2510, 1 is output to the signal line 390.
  • FIG. 4 shows the interrupt table configuration of the microcomputer of the relay apparatus.
  • the interrupt table 400 is a table that branches an interrupt generated outside or inside the microcomputer to the address registered in this table.
  • a 500 ms periodic interrupt program for checking whether the address 410 of the radio transceiver reception interrupt program to be processed when the update program data is received from the radio transceiver and the write start command button are pressed.
  • Address 420 is set.
  • the write start command reception processing program is activated by a command from an external center (Claims 4 and 5) and is activated by a period of 1000 ms (Claims 6 and 7).
  • FIG. 5 shows an interrupt table configuration of the microcomputer of the in-vehicle control device.
  • the interrupt tables of the in-vehicle control devices 130, 140, 150 are all the same.
  • the interrupt table 500 is a table that branches an interrupt generated outside or inside the microcomputer to the address registered in this table.
  • the microcomputer is turned on when the ignition IGN is turned on or when a wake-up pattern is received from the in-vehicle network.
  • Reference numeral 510 denotes an address of a program to be executed when the power is turned on.
  • Reference numeral 520 stores an address of a program to be executed when an update program and update data are received from the relay apparatus.
  • FIG. 6 shows the transmission data configuration of the external center. The communication format of the plurality of update program data configurations 600 and the write start command configuration 620 that the external center 100 transmits wirelessly will be described.
  • the header at the top of the transmission data structure 600 of the update program data is information for instructing the start of transmission, and VIN is a vehicle number that uniquely identifies the vehicle.
  • CMD is a command type. If CMD is “SNDPROG”, the received data means update program data, and if “WRITE”, the received data means a write start command.
  • ST2 is the start time of the second time zone of the present invention, and ET2 is the end time of the second time zone.
  • N indicates the number of transmitted update program data.
  • SIZE [1] is the size of the update program data to be transmitted first, and is expressed in bytes.
  • SIZE [N] is the size of the update program data to be transmitted last.
  • ECU [1] is update program data information transmitted first
  • ECU [N] is update program data information transmitted last. The number of pieces of update program data information is the same as N.
  • EOF is information indicating the end of transmission data.
  • the update program data of the ECU [N] includes an update program, update data, and management information.
  • the ECU ID is an in-vehicle control device number that uniquely identifies the in-vehicle control device in the vehicle.
  • VNO is the version number of the update program and update data
  • PADR is the write address of the ROM of the in-vehicle control device. This is the start address required when writing the update program and update data into the ROM.
  • PSIZE is the size of the update program and update data. The unit of size is bytes.
  • PROGDATA indicates an update program and update data body.
  • VIN is a vehicle number for uniquely identifying a vehicle
  • CMD is a write start command command.
  • the wireless communication data configuration has been described above.
  • FIG. 7 shows the data structure stored in the relay device.
  • a data configuration for storing the update program data, the write start command, the memory accumulation completion bit and the write completion bit used in the update process in the update data ROM 125 will be described.
  • the memory storage data configuration 700 of update program data will be described.
  • RECVIN is a variable that holds the reception data VIN
  • RECCMD is a variable that holds the reception data CMD.
  • update program data is received, it is “SNDPROG”.
  • RECST2 is a variable that holds received data ST2
  • RECET2 is a variable that holds received data ET2
  • RECN is a variable that holds received data N
  • RECSIZE [1] to RECSIZE [RECN] are received data SIZE [1] to SIZE [N].
  • RECECUID [1] to RECUCUID [RECN] are received data ECUID [1] to ECUID [N]
  • RECUCUVNO [1] to RECUCUVNO [RECN] are received data ECUVNO [1].
  • This is an array that holds ECUVNO [N].
  • RECECUPADR [1] to RECECUPADR [RECN] are arrays for holding received data ECUPADR [1] to ECUPADR [N].
  • RECECUPROGDATA [1] to RECECUPROGDATA [REN] are arrays that hold received data ECUPROGDATA [1] to ECUPROGDATA [N].
  • the memory accumulation completion bit 710 is a variable that is set to ON after accumulation is completed in the memory accumulation process.
  • the write completion bit 720 is a variable that is set when all the update programs and update data have been written to the in-vehicle control device.
  • RECVIN and RECCMD “WRITE” are variables that hold received data VIN and CMD “WRITE”, respectively, when a write start command is received from an external center.
  • the memory configuration of the relay device in FIG. 8 will be described.
  • the internal ROM 124 stores a memory accumulation processing program and an interrupt or write start command reception processing program that starts at a cycle of 1000 ms in the reception processing program 821 from the wireless transmitter / receiver that is started from the wireless transmitter / receiver 121 via the interrupt 410. Yes.
  • a write start command processing program 822 by a write start command button and a transmission processing program 823 to the wireless transceiver are also stored.
  • the constant data area 830 there are an ECU ID and a CANID conversion table that can uniquely identify a vehicle No that can uniquely identify the vehicle and an in-vehicle control device that is mounted on the vehicle.
  • the update program for the in-vehicle control device is transmitted to the specific in-vehicle control device to the in-vehicle network CAN
  • the specific CAN ID is designated and transmitted. That is, the vehicle-mounted control device can receive only transmission data designated with a specific CANID.
  • a conversion table of ECUID and CANID for uniquely identifying the in-vehicle control device is stored in the constant data area 830.
  • a dedicated CANID is also assigned to the relay device, and when the in-vehicle control device transmits transmission data to the relay device, the CANID dedicated to the relay device may be designated and transmitted.
  • the number of on-vehicle control devices Nmax, the maximum wake-up waiting time, and the mode change maximum waiting time mounted in the vehicle are also stored.
  • the maximum wake-up wait time indicates how long it takes for all in-vehicle control devices to start up and send responses to the in-vehicle network when the relay device starts the in-vehicle control device when the ignition is off. It is the maximum time. Therefore, the relay device can confirm the responses from all the in-vehicle control devices by checking the reception buffer after the wake-up maximum waiting time has elapsed after transmitting the wake-up pattern to the in-vehicle network.
  • Wakeup does not activate only a specific in-vehicle control device, but activates all in-vehicle control devices.
  • the update data ROM 125 is a flash memory for storing data received from the external center. Stored data 700 of FIG. 7 is stored.
  • the RAM 126 is a work area used by the program in the internal ROM 820, and is read from data such as the IGN state, clock data, and shift gear position, and is configured by SRAM.
  • the voltage check result, the ignition state, clock data, and the write completion bits RESULTTEC [1] to RESULTTEC [REC] of the in-vehicle control device are stored during the execution of the program.
  • FIG. 8A shows a memory configuration of the in-vehicle control device.
  • the ROM 133 includes a wake-up reception processing program 8A04 for receiving an update program and update data, a repro mode reception processing program 8A05 for receiving a repro mode command, and a write processing program 8A06 for writing the update program and update data to the area 8A03. Is stored in the program area 8A01.
  • CANID conversion data paired with its own ECUID and ECUID for uniquely identifying the in-vehicle control device itself, the relay device ECUID used for transmission to the relay device, its CANID conversion data, and the wake Stores the maximum waiting time for up and the maximum waiting time for mode change.
  • 8A04 is an “in-vehicle control device mode” variable indicating the operation mode of the in-vehicle control device. There are two types of operation modes: a normal operation mode for performing a control operation and a “repro mode” for performing a program update process.
  • the “mode of the in-vehicle control device” variable is referred to and a mode is changed according to the set value.
  • transition is made.
  • the reverse transition is also possible.
  • the RAM 134 is a work area used during execution of the programs 8A04, 8A05, 8A06, such as the ignition status.
  • the in-vehicle control device 140 holds the shift gear position.
  • the external center transmits and stores the update program data to the relay device of the owner vehicle before the notified time zone in order to write the update program data to the owner vehicle during the notified time zone. It is necessary to keep it.
  • the above background relates to claims 4 to 7 and is realized by the processing flow of FIG. 9 of the present invention.
  • Fig. 9 shows the outline of the writing process by the writing start command of the external center.
  • the external center transmits the update program data 904 to the relay device at a time before a predetermined time zone promised to the vehicle owner.
  • the relay device performs reception if the ignition is on.
  • the Power Keep signal is turned on 905, and the update program data is stored in the update data ROM.
  • the memory accumulation completion bit is turned on 906, and the memory accumulation completion indicator is turned on 907.
  • a memory accumulation completion notification 908 is sent to the external device, and the Power Keep signal is turned off 909.
  • the external device transmits a write start command 910 to the relay device in a predetermined first time zone.
  • the relay device when it is determined that the current time is the second time zone that has already been received, the relay device turns on the Power Keep signal 911, and performs voltage check processing 2600 at the time of no load and load connection. If it is equal to or higher than the reference voltage, a wakeup pattern is transmitted 912 to the in-vehicle control device.
  • the in-vehicle control device receives the wake-up pattern, the power source is turned on, so the program is executed and the Power Keep signal is turned on 914.
  • the in-vehicle control device After receiving the wake-up response 913 from the in-vehicle control device, send a repro mode transition request 915 to the in-vehicle control device that requested the program update, and confirm that the repro mode response 916 has been returned from the in-vehicle control device, The update program and the update data are divided and the writing processes 917 to 918 are repeatedly transmitted. After all the update program and update data of the vehicle-mounted control device are transmitted, a write end is transmitted 919. When receiving the completion of writing, the in-vehicle control device transmits a write completion response 920 to the relay device, and then turns off the Power Keep signal 921.
  • the relay device When the write completion response 920 is returned from the in-vehicle control device, the relay device has completed the update program and update data processing of the in-vehicle control device, so the write completion bit of the in-vehicle control device is turned on 922, and then another in-vehicle control device. If there is update program data for the control device, the process 923 for transmitting all the update programs and update data to the in-vehicle control device is repeated. After that, if writing is successful (OK) in all in-vehicle control devices, the writing completion bit is turned on 924, the writing completion indicator is turned on 925, the memory accumulation completion bit is turned off 926, and the memory accumulation completion indicator is turned off.
  • the power keep signal is turned off 929 and the process is terminated.
  • This process is an outline, and if the in-vehicle control device has a failure, the write fails, so it is necessary to notify the external center of the write failure, which will be described in the subsequent detailed process flow.
  • FIG. 10 is an outline of the processing of the external center, the relay device, and the in-vehicle control device. Description will be made along the time axes 1001, 1002, and 1003 of the external center, the relay device, and the vehicle-mounted control device.
  • the external center transmits the update program data 1004 to the relay device at a time before the time zone.
  • the relay device performs reception if the ignition is on.
  • the Power Keep signal is turned on 1005
  • the update program data is stored in the update data ROM.
  • the memory accumulation completion bit is turned on 1006 and the memory accumulation completion indicator is turned on 1007.
  • a memory storage completion notification 1008 is sent to the external device, and the Power Keep signal is turned off 1009.
  • the driver confirms that the memory accumulation completion indicator is lit, and turns on the write start command button connected to the relay device.
  • the relay device turns on the Power Keep signal 1011 to ensure its own power supply.
  • a voltage check process 2600 is performed when there is no load and when the load is connected.
  • a repro mode transition request 1012 is transmitted to the in-vehicle control device that requested the program update.
  • the in-vehicle control device transmits a repro mode response 1013 to the relay device after transitioning to the repro mode, and turns on the Power Keep signal 1014.
  • the relay device confirms that the repro mode response 1013 is returned from the in-vehicle control device, divides the update program and the update data, and repeatedly transmits the write processing 1015 to 1016. After all the update program and update data of the in-vehicle control device are transmitted, a write end notification is transmitted 1017. Upon receiving the write end notification 1017, the in-vehicle control device changes the repro mode to the normal operation mode, and then transmits a write completion response 1018 to the relay device to turn off the Power Keep signal 1019.
  • the relay device When the write completion response 1018 is returned from the in-vehicle control device, the relay device has completed the update program and update data processing of the in-vehicle control device, so the write completion bit of the in-vehicle control device is turned on 1020, and then another in-vehicle control device. If there is update program data for the control device, the processing 1021 for transmitting all the update programs and update data to the in-vehicle control device is repeated. After that, if writing is successful (OK) in all in-vehicle control devices, the writing completion bit is turned on 1022, the writing completion indicator is turned on 1023, the memory accumulation completion bit is turned off 1024, and the memory accumulation completion indicator is turned off.
  • FIG. 11 shows the memory storage process of the relay device. This is a process common to FIGS. First, when a reception interrupt 1100 from the wireless transceiver is input to the microcomputer, this program is activated. First, the power keep signal of the relay device is turned on 1101, and then processing 1102 for storing received data in the update data ROM is executed. The processing content is to convert the data 600 of FIG. 6 into the storage data 700 of FIG. 7 and store it in the update data ROM. Details are as follows.
  • RECVIN matches the vehicle No stored in the constant data area of the internal ROM 124. If they do not coincide with each other, the power keep signal 1109 is turned off and the process ends. If they match, it is the received data for the vehicle, and it is checked whether RECCMD of 1104 is “SNDPROG”. If they do not coincide with each other, it is another command, so that a write start command process 1400 is executed. If they match, the received data is update program data, so it is checked whether the ignition of the vehicle 1105 is on. If they do not match, in order to wait for the next transmission from the external center, the power keep signal 1109 is turned off and the process is terminated.
  • the memory accumulation completion bit 1106 is turned on, the memory accumulation completion indicator 1107 is turned on, the memory accumulation completion notification is sent to the external center 1108, the Power Keep signal 1109 is turned off, and the process ends.
  • the memory storage completion notification to the external center is executed by passing the notification data to the transmission processing program 823 to the wireless transceiver.
  • the header at the top of 620 is information for instructing the start of transmission, and VIN is a vehicle number that uniquely identifies the vehicle.
  • CMD is a write start command command.
  • the EOF is information for instructing the end of transmission. If CMD is “SNDPROG”, the received data means update program data, and if “WRITE”, the received data means a write start command. Here, since it is a write start command, it becomes a “WRITE” command. Thus, the data after CMD is greatly different between the “SNDPROG” command and the “WRITE” command.
  • CENTERID is the number of the external center for uniquely identifying the external center
  • CMD is a command indicating that writing is complete or incomplete. If it is “COMPLETE”, writing is completed, and if it is “INCOMPLETE”, writing is not completed.
  • VIN is a vehicle number for uniquely identifying the vehicle.
  • FIG. 13 shows the accumulated data configuration 1300 of the write start command of the relay device. The same configuration as 730 in FIG. 7 is described. Except for the header and EOF, RECVIN and RECCMD are held in the update data ROM. FIG. 13 is necessary for realizing claims 4 and 5, but is not required in claims 6 and 7. This is because the second time zone has already been received when the update program data is received.
  • the write start command is started by branching to the write start command receiving process 1400 in FIG. Details of the write start command reception process will be described with reference to FIG. First, at 1401, the Power Keep signal is set to ON to determine the power supply of the relay device. Next, in 1402, it is checked whether RECCMD matches "WRITE". If the RECCMD does not match, the Power Keep signal of 1407 is turned off and the process ends. If they match, it is a write start command command, so it is checked whether the memory accumulation completion bit 1403 is on.
  • the power keep signal 1407 is turned off and the process is terminated. If they match, it is checked whether the ignition of 1404 is off. If it is not off, the power keep signal 1407 is turned off and the process ends. If they match, the current time of the clock 1405 is set to the variable T, and the determination RECST2 ⁇ T ⁇ RECET2 of 1406 is executed. If NO, it is not a predetermined time zone, so the Power Keep signal 1407 is turned off and the process is terminated. If YES, the voltage check process 2600 is executed when there is no load and when the load is connected.
  • the result is stored in the variable RESULTVOL, it is checked in 1406A whether the variable RESULTTVOL is “OK”, and if NO, the PowerKeep signal 1407 is turned off and the process ends. If YES, since the battery voltage is equal to or higher than the reference voltage, 1500 write start processing is executed. Finally, after the write start process is completed, the power keep signal 1407 is turned off and the process ends. In this way, the memory accumulation completion bit is turned on, the ignition is turned off, and the voltage check result at the time of no load and load connection is equal to or higher than the reference voltage, and the write start command is received within the predetermined time zone. It can be seen that writing starts in some cases and writing is not performed in other cases.
  • processing flow described above is an embodiment of claim 7, 1404, 1405, and 1406 need only be omitted as an embodiment of claim 4.
  • the embodiment of claim 5 is a processing flow in which 1405 and 1406 are omitted
  • the embodiment of claim 6 is a processing flow in which 1404 is omitted.
  • the relay device transmits a wake-up pattern to the CAN bus of the in-vehicle network 1501 in order to start all the in-vehicle control devices first.
  • a constant wake-up maximum waiting time is set in a variable WKMAXTIME of 1502, and a determination statement WKMAXTIME> elapsed time of 1503 is determined.
  • This determination sentence is for waiting for a certain period of time until the vehicle-mounted control device that has received the wake-up pattern is turned on and started up. If YES in 1503, it means that there is an in-vehicle control device that is within the maximum waiting time and has not yet started up.
  • the process of 1504 is executed after waiting for NO. That is, 1504 is executed in a state where all on-vehicle control devices are up.
  • the operation of the in-vehicle control apparatus that has received the wake-up pattern will be described using the wake-up reception process of the in-vehicle control apparatus in FIG. First, when a wake-up pattern is received, as described above, all the vehicle-mounted control devices 1600 are turned on. Next, the Power Keep signal 1601 is turned on, and the wake-up reception confirmation from the CAN bus 1602 is confirmed by the Wake Up signal.
  • the CANID dedicated to the relay apparatus is set in the CANID field of the transmission buffer
  • "WAKEUP_RESPONSE” is set in the CMD field of the transmission buffer
  • its own in-vehicle controller ECUID is set in the DATA field of the transmission buffer.
  • the contents of the transmission buffer are transmitted to the CAN bus, and the process ends.
  • the in-vehicle control device notifies the relay device of completion of its own startup via the CAN bus.
  • the rewrite mode is performed on the in-vehicle control device of RECUCUID [1] to perform writing.
  • the mode change maximum waiting time is set in the variable REPROMAXTIME, and in the next 1507, in order to wait for a response from the in-vehicle control device number RECUCUID [n], it waits until the elapsed time exceeds the maximum time. Since it becomes NO when it exceeds, processing for examining the data received from 1508 RECUCU [n] is performed.
  • the process of FIG. 15 is in the middle of the description, the operation of the in-vehicle control apparatus of the in-vehicle control apparatus number RECUCUID [n] that has received the repro mode will be described with respect to the repro mode reception process of RECUCUID [n] in FIG.
  • FIG. 17 shows repro mode reception processing of RECUCUID [n].
  • the Power Keep signal is turned on. Since it is already on at wakeup, it has no effect, but it does not affect how many times it is turned on.
  • the data in the CANID field of the reception buffer is set to the variable CANID, and the data in the CMD field of the reception buffer is set to the variable CMAND.
  • the variable CMAND is “REPRO_MODE”. If NO, the process ends. If YES, the data in the DATA field of the reception buffer is set in the variable DATA in 1704.
  • the in-vehicle control device is set to the repro mode, and in order to notify the relay device that the repro mode has been set, in 1706, the relay device dedicated CANID is set in the CANID field of the transmission buffer, and the CMD field of the transmission buffer. “REPRO_RESPONSE”, which means the completion of the helicopter mode setting, is set, and the ECU ID of the in-vehicle control device itself is set in the DATA field of the transmission buffer.
  • the transmission buffer is transmitted to the CAN bus to notify the relay device of completion of the repro mode setting.
  • the data in the CANID field of the reception buffer is set to the variable CANID
  • the data in the CMD field of the reception buffer is set to the variable CMD
  • the data in the DATA field of the reception buffer is set to the variable DATA.
  • the vehicle-mounted control device of RECUCUID [n] is abnormal, so “NG” is set in the write completion bit array RESULTECTU [n] of the vehicle-mounted control device 1510. If there is even one such abnormality, the write start command has failed.
  • 1511 it is checked whether or not the variable n matches RECN. If the variable n does not match, n is incremented in 1512 and execution of 150 is repeated. That is, it is checked whether or not all received update programs and update data have been transmitted to the corresponding in-vehicle control device.
  • the transmission process in 1800 is completed, the write completion process in 2100 is executed and the process ends.
  • FIG. 18 shows an update program transmission process to RECUCUID [n].
  • the relay device transmits an update program and update data to the in-vehicle control device of RECUCUID [n] in units of 4 bytes, and after completion of the transmission, performs a process of receiving a write completion result from the in-vehicle control device and storing the result.
  • the command “WRITE” is set to the variable CMMAND
  • RECUCUID [n] is set to the variable ECUID
  • ERCUCUPADR [n] is set to the variable SNDPADR
  • RECUPEPSIZE [n] is set to the variable PSIZE.
  • the start address of RECUPROPROGDATA [n] is set in the variable PROGDATAADR, the 4-byte data from PROGDATAADR is set in the variable SNDPDATA, and 0 is set in the variable SNDSIZE.
  • the destination CANID ECUID dedicated CANID is set in the variable CANID
  • the variable CANID is set in the CANID field of the transmission buffer
  • the variable CMMAND is set in the CMD field of the transmission buffer
  • the PADR of the transmission buffer is set.
  • the variable SNDPADR is set in the field
  • the variable SNDDATA is set in the DATA field of the transmission buffer.
  • the contents of the transmission buffer are transmitted to the CAN bus.
  • the first write address of the update program and update data, and the first 4-byte data of the update program and update data can be transmitted to the in-vehicle control measure.
  • preparation for transmitting the update program and the next 4-byte data of the update data is performed. That is, the variable PROGDATAADR is incremented by 4 and 4-byte data is set from the address indicated by the variable PROGDATAADR to the variable SNDPDATA, the variable SNDPADR is incremented by 4, and the variable SNDSIZE is also incremented by 4.
  • the next 4-byte data of the update program and update data, and the write address can be set.
  • FIG. 19 shows a write process of RECUCUID [n].
  • the writing process of the vehicle-mounted control device RECUCUID [n] is activated by a reception interrupt.
  • This program performs the process of writing the update program and the update data into the control program of the in-vehicle control device of FIG. 8A and the data storage area 8A03, but this area is a flash memory. It is necessary to erase the program and data already written before writing. However, the erasure process is omitted in this embodiment for the sake of simplicity and simplicity because it is irrelevant to the essence of the invention.
  • the data in the CANID field of the reception buffer is set to the variable CANID
  • the data in the CMD field of the reception buffer is set to the variable CMAND.
  • variable CANID and the CANID of the in-vehicle control apparatus are checked for coincidence. If NO, the transmission data to other in-vehicle control apparatus is determined and the process ends. If YES, in 1903 it is checked whether the variable CMAND is “WRITE”. If YES, it is determined as a write command. In 1904, the data SNDPADR of the PADR field of the reception buffer is set in the variable SNDPADR, and the DATA field of the reception buffer is set in the variable SNDPDATA. Data SNDPDATA is set.
  • the following 1905 to 1907 are processes for rewriting the control program and data of 8A03 in FIG. 8A.
  • a variable SNDPADR is set in the write address setting register MADR in 1905
  • a variable SNDPDATA is set in the write data setting register MDATA in 1906
  • a write command WRITE is set in the command register MCOM in 1907. Since the execution of writing is started when the WRITE command is set in the MCOM register, the variable SNDPDATA holding 4 bytes of the update program and update data is written to the address SNDPADR in the 8A03 area.
  • variable CMAND is “END”. If YES, 1911 sets the relay dedicated CANID to variable CANID, 1912 sets "RESPONSE” meaning "END" response to variable CMMAND, 1913 sets variable ERRSstatus to variable SNDPDATA, 1914 Sets the variable CANID in the CANID field of the transmission buffer, sets the variable CMMAND in the CMD field of the transmission buffer, sets the variable SNDPDATA in the DATA field of the transmission buffer, and transmits the contents of the transmission buffer to the CAN bus in the next 1915 is doing.
  • the operation mode of the in-vehicle control device is changed from the repro mode to the normal operation mode in the next 1916, and the Power Keep signal is turned off in 1917. It has ended.
  • FIG. 20 shows a write completion process for RECUCUID [n].
  • “Receiving from CAN bus?” Is checked. This is a process of checking reception of a “RESPONSE” response from the in-vehicle control device RECUCUID [n]. If YES, in 2020, the CANID field data CANID of the reception buffer is set to the variable RESCANID, the CMD field data CMMAND of the reception buffer is set to the variable RESCMD, and the DATA field data SNDPDATA of the reception buffer is set to the variable RESULT. . Next, in 2030, it is checked whether or not the variable CANID matches the relay device dedicated CANID. If NO, the processing ends because the data is not received by the relay device.
  • the next 2040 checks whether the variable RESCMD matches the command “RESPONSE”, and if NO, the process ends. If YES, since the write completion result is stored in the variable RESULT, in the next 2050, the variable RESULT is stored in the write completion bit array RESULTTECU [n] of RECUCUID, and the process is terminated. As described above, the update program of the RECUCUID [n] and the update data writing completion result are stored in the RESULT ECU [n].
  • the write start is started from the process of FIG. 14, and when the write start condition is satisfied, the write process of FIG. 15 is executed.
  • the process of calling the process of writing to the in-vehicle control device is repeated. In this repetition, there is an update program transmission process to RECUCUID [n] in FIG. 18, and a write completion process for RECUCUID [n] in FIG. 20 is executed in the process in FIG. Therefore, the write completion processing of RECUCUID [n] in FIG. 20 is executed for all the in-vehicle control devices corresponding to the update program and the update data.
  • FIG. 21 shows the write completion process.
  • 1 is set to the variable n
  • 2102 it is checked whether or not the write completion bit RESULTTEC [n] of the in-vehicle control device of RECUCUID [n] is “OK”. If NO, it means that a write error has occurred, so in 2112 the write completion bit shown in FIG. 7 is set to OFF, 2113 indicates that the write completion indicator is extinguished, and 2114 means that writing to the external center has failed. A write incomplete notification is sent, and finally, the power keep signal of the relay apparatus is turned off in 2115 and the process ends. On the other hand, if 2102 is YES, it is checked whether the variable n matches RECN.
  • the variable n is incremented and 2102 is repeatedly executed. If YES, it means that the result of all the writing processes is “OK”. Therefore, the writing completion bit is set to ON in 2105, the writing completion indicator is lit in 2106, and the external center is normal in 2107. In step 2108, the memory storage completion bit is set to OFF, the memory storage completion indicator is turned off in 2109, and the relay device is turned off in 2110. The power keep signal is turned off and the process ends.
  • FIG. 22 shows a write start command process by a write start command button.
  • This processing program 2200 is a program that is activated every 500 ms. When this program is activated, it is checked in 2201 whether the write start command button is on, and if NO, the process ends. If YES, it is checked whether the memory storage completion bit 2202 is on, and if NO, the process ends. If YES, it is checked whether the ignition in 2203 is on, and if NO, the process ends. If YES, it is checked whether the shift gear position 2204 is the parking position, and if NO, the process is terminated. If the ignition is on, the vehicle may be traveling. Therefore, it is confirmed that the vehicle is stopped when the shift gear position is the parking position.
  • the current time is obtained from the clock, and the current time is set in a variable T in 2205.
  • variable RESULTTVOL is set to “OK” if the battery voltage at the time of no load and load connection is equal to or higher than the reference voltage in the voltage check process, and “NG” is set if it is equal to or lower than the reference voltage. Details will be described with reference to FIG.
  • the processing described above is the embodiment of claim 13.
  • the embodiment of claim 10 is a processing flow in which 2203, 2204, 2205 and 2206 are omitted.
  • the embodiment of claim 11 is a processing flow in which 2205 and 2206 are omitted, and the embodiment of claim 12 is a processing flow in which 2203 and 2204 are omitted.
  • FIG. 26 shows a voltage check process
  • the battery voltage is checked when there is no load, and then the battery voltage is checked when the load is connected.
  • OFF is output to the relay circuit control signal 384 at 2601.
  • the load 381 is not connected to the battery power supply line 173 and a no-load state is established.
  • the first reference voltage is output to the reference voltage Ref signal 386, and then at 2603 the voltage observation pulse signal 389 is turned on.
  • the battery voltage at the time of no load is equal to or higher than the first reference voltage, or the result is set in the variable RESULTVOL_1.
  • the battery voltage is checked when the load is connected.
  • the relay circuit control signal 384 is turned on.
  • the second reference voltage is set to the reference voltage Ref signal 386
  • the voltage observation pulse signal 389 is turned on.
  • the battery voltage at the time of load connection is equal to or higher than the second reference voltage, or the result is set in the variable RESULTVOL_2.
  • the variable RESULVOL_1 or the variable RESULVOL_2 is ORed to check whether the result is 1. If NO, the variable RESULTTVOL is set to “NG” at 2615, and the battery voltage abnormality indicator 188 is turned on at 2616 and the process ends. If YES, the variable RESULTTVOL is set to “OK” in 2614, and the battery voltage normality indicator 190 is turned on in 2617 and the process is terminated.
  • a variable n is set to 1
  • a CANID dedicated to RECUCUID [n] is set in the CANID field of the transmission buffer
  • a repro mode command “REPRO_MODE” is set in the CMD field of the transmission buffer
  • the DATA field of the transmission buffer is set.
  • the ECU ID of the relay device is set, and the contents of the transmission buffer are transmitted to the CAN bus.
  • the relay device since the ignition control is on and the power source of the in-vehicle control device is on, the relay device transmits the repro mode transition request command “REPRO_MODE” without transmitting the wakeup pattern.
  • the mode change maximum waiting time is set in the variable REPROMAXTIME, and in 2304, the process waits until the REPROMAXTIME time elapses. If NO, NO is set in 2305, the CANID field data CANID of the reception buffer is set to the variable CANID, the CMD field data CMD of the reception buffer is set to the variable CMD, and the DATA field data DATA of the reception buffer is set to the variable DATA. Is set. Next, in 2306, it is checked whether or not the variable CMD matches “REPRO_RESPONSE”. If NO, it is determined to be abnormal, and “NG” is set to 2307 RESULT ECU [n].
  • FIG. 27 shows a battery voltage check device incorporating a battery voltage check circuit.
  • the battery voltage check circuit is not necessarily provided only in the relay device.
  • a battery voltage check device with a built-in battery voltage check circuit is connected to the in-vehicle network, and before the update program and update data are written, the voltage check result signal is acquired from the battery voltage check device via the in-vehicle network. This makes it possible to determine whether or not writing is possible.
  • 2700 is a battery voltage check device
  • 2701 is a microcomputer
  • 2702 is an in-vehicle LAN communication unit
  • 2703 is ROM
  • 2704 is RAM
  • 173 is a battery power line
  • 129 is a battery voltage check circuit.
  • the battery voltage check device monitors the voltage of the battery 172 from the power supply line 173 using the battery voltage check circuit 129 at regular intervals, and notifies the relay device 120 of the result via the in-vehicle network.
  • the embodiment of claim 14 can be realized by treating it as update map data in place of the update program data in the embodiment of claim 1, and therefore detailed description thereof is omitted.
  • the relay device does not have a built-in battery voltage check circuit
  • the battery voltage check device has a built-in battery voltage check circuit
  • the battery is connected to the relay device via the in-vehicle network. Since the only difference is that the signal of the voltage check result is notified, a detailed description is omitted.
  • the relay device installed in the vehicle is an update program transmitted from an external center when the ignition of the battery charging state is on, such as when the vehicle is traveling Data can be received by the relay device. Furthermore, the relay device is irrelevant to the in-vehicle control device related to traveling, and can update the program data safely without causing the driver to feel inconvenience.
  • the update program and data writing process is performed when the driver is not in the vehicle, even when the vehicle is parked at home or another parking lot, or even at midnight. However, it is possible to safely write the update program and update data to the in-vehicle control device in the time zone promised by the vehicle owner by checking the battery voltage when there is no load and when the load is connected.
  • the ignition is turned on at a time convenient for the driver, the vehicle shift gear position is set to parking, and then the write start command button is pressed.
  • the battery voltage is checked when the load is connected and when the load is connected. If the battery voltage is equal to or higher than the reference voltage, writing is performed safely, and the vehicle is checked by checking whether the writing time is within the second time zone. Writes can be performed at the time of appointment with the owner.

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)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mechanical Engineering (AREA)
  • Stored Programmes (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

 自動車の所有者や自動車を利用する運転者にとって不便さを感じさせずかつ安全に制御プログラムやでデータを確実に更新処理するプログラム書き込み装置を提供する。 車両に搭載された機器の動作を制御プログラムで制御する複数の車載制御装置と、外部センタから送信された前記車載制御装置の更新プログラムと更新データなどを含む更新プログラムデータを受信してメモリへ蓄積する中継装置と、を備え、前記車載制御装置と前記中継装置は車載ネットワークで接続されたプログラム書込み装置において、前記中継装置は、バッテリ電圧チェック回路を備え、前記車載制御装置へ前記更新プログラムと更新データを書込む前に前記バッテリ電圧チェック回路による無負荷時と負荷接続時のバッテリ電圧チェックを行い、バッテリ電圧が無負荷時に第1の基準電圧以上、または、負荷接続時に第2の基準電圧以上である場合は書込みを実行し、その他の場合には書込みを実行しない。

Description

車載プログラム書込み装置
 本発明は、車両に搭載された電子機器を制御する組込み制御装置に係り、特に車載プログラムの書込み装置に関するものである。
 車両に搭載された車載制御装置の制御動作を記述した制御プログラムは、マイコン内のフラッシュメモリ等の不揮発性メモリに格納されている。また制御プログラム内で用いられる初期値などのデータも不揮発性メモリに格納されている。これらのプログラムやデータは、車両を市場に出荷した以降については変更しないのが通常ではあるが、バグが検出された場合や、より良いサービスを提供することを理由に、制御プログラムやデータの更新を行っている。
 自動車の制御プログラムやデータの更新処理は、車両を販売店へ持込み、そこで書換えが行われるが、近年では車両外部のインフラである携帯電話網などの無線通信で行う方式が考案されている。
 例えば、特許文献1では、車両外部の情報管理基地局装置は車両に搭載されている無線通信機を介して停止中の車両に対してアップデートリクエストを送信し、これを受信した車両はスリープ状態からウェイクアップして、車両に搭載された車載制御装置を起動し、情報管理基地局装置から送信されたアップデートプログラムを車載制御装置へ書込むことを行っている。
 また、特許文献2では、外部ツールと車両に搭載された書込み装置を通信ケーブルで接続し、外部ツールから送信された更新プログラムを書込み装置へ蓄積し、その後に通信ケーブルを外した状態で書込み装置から車載制御装置へ更新プログラムを書込む構成が記載されている。特許文献2では、書込み中は通信が不要となるので、他の車両へ通信ケーブルを接続することで更新プログラムを書込み装置へ蓄積することができる。結果として書込み時間は、外部との通信を介さずに実行できるので短縮できる点と車両の書込み処理と他の車両への通信ケーブルを介した更新プログラムの蓄積処理を並列に実行できる点で書込み時間の短縮化を実現している。
特許第4361902号 特許第4593095号
 しかしながら、特許文献1では、アップデートプログラムを事前に蓄積しておく手段が無いため、情報管理基地局装置から車載制御装置への更新プログラム転送時間と車載制御装置への書込み時間の合計が更新プログラムの書込みに要する時間になるので、時間がかかるという問題が発生する。また、エンジンが起動していないのでオルタネータによるバッテリ充電ができない。従って、書込み途中で電力不足が発生すると、プログラムのアップデートが中断されるので車載制御装置は、動作不良となる問題が発生する。書込み時間がかかるケースでは特にバッテリの容量不足に陥る可能性が高いため深刻な問題である。
 また、特許文献2では、イグニッションがオンの状態で書込みを実施する記載はあるがエンジンを起動した状態とは記載されてないので、特許文献1と同様に、書込み実行中にバッテリ容量不足による書込み中断が発生する可能性がある。
 前述したように、自動車に搭載された車載制御装置の制御プログラムやデータの更新処理は自動車を販売店に持込む必要があったところ、自動車を販売店に持ち込まなくても携帯電話網などの無線通信を活用して車載制御装置の制御プログラムやデータを更新する手段が提案されているが、自動車の所有者や自動車を利用する運転者にとって、いかに不便さを感じさせずかつ安全に、車載制御装置の制御プログラムやデータを更新するかが課題である。
 特に、販売店以外の自宅駐車場など車両の専門化である整備士がいない状況下で更新処理を実施する場合に、上述したように車載バッテリの容量不足による書き込み中断が発生する可能性があり、バッテリ容量が更新処理を実行するに十分であるか判断できるようにすることが課題である。
 本発明の目的は、自動車の所有者や自動車を利用する運転者にとって不便さを感じさせずかつ安全に制御プログラムやでデータを確実に更新処理するプログラム書き込み装置を提供することにある。
 本願において開示される発明のうち、代表的なものの概要を簡単に説明すれば、次のとおりである。車両に搭載された機器の動作を制御プログラムで制御する複数の車載制御装置と、外部センタから送信された前記車載制御装置の更新プログラムと更新データなどを含む更新プログラムデータを受信してメモリへ蓄積する中継装置と、を備え、前記車載制御装置と前記中継装置は車載ネットワークで接続されたプログラム書込み装置において、前記中継装置は、バッテリ電圧チェック回路を備え、前記車載制御装置へ前記更新プログラムと更新データを書込む前に前記バッテリ電圧チェック回路による無負荷時と負荷接続時のバッテリ電圧チェックを行い、バッテリ電圧が無負荷時に第1の基準電圧以上、または、負荷接続時に第2の基準電圧以上である場合は書込みを実行し、その他の場合には書込みを実行しないことを特徴とするプログラム書込み装置。
 本発明によれば、自動車の所有者や自動車を利用する運転者にとって不便さを感じさせずかつ安全に制御プログラムやでデータを確実に更新処理するプログラム書き込み装置を提供することが可能となる。
電圧チェック機能を有する車載プログラム書込み装置の全体構成図。 車載制御装置の構成図。 中継装置の構成図。 中継装置マイコンの割込みテーブル400の構成図。 車載制御装置マイコンの割込みテーブル500の構成図。 外部センタの送信データ構成図。 中継装置の蓄積データ構成図。 中継装置のメモリ構成図。 車載制御装置のメモリ構成図。 外部センタの書込み開始指令による書込み処理概要図。 書込みボタンによる書込み処理概要図。 中継装置のメモリ蓄積処理図。 外部センタへの書込み完了通知送信データ構成図。 中継装置の書込み開始指令の蓄積データ構成図。 書込み開始指令受信処理図。 書込み開始処理図。 車載制御装置のウェイクアップ受信処理図。 車載制御装置番号RECECUID[n]で指示された車載制御装置のリプロモード受信処理図。 車載制御装置番号RECECUID[n]で指示された車載制御装置へ更新プログラムを送信する中継装置の処理図。 車載制御装置番号RECECUID[n]で指示された車載制御装置の書込み処理図。 車載制御装置番号RECECUID[n]で指示された車載制御装置からの書込み完了結果を配列RESULTECU[n]へ格納する中継装置の処理図。 中継装置の書込み完了処理図。 書込み開始指令ボタンによる書込み開始指令処理図。 ボタンによる書込み開始処理図。 電圧観測パルス2420と無負荷時のバッテリ電圧波形2400の関係を示した図。 電圧観測パルス2520と負荷接続時のバッテリ電圧波形2500の関係を示した図。 電圧チェック処理図。 バッテリ電圧チェック装置の構成図。
 運転者に不便を感じさせないためには、自動車を使用しない時間帯に、安全かつ短時間で更新プログラムと更新データを車載制御装置へ書込むことが必要である。本発明では、まず安全性と書込み時間短縮を実現するため、外部センタから無線で送信された車載制御装置の更新プログラムデータをイグニッションがオンの状態の場合に取得し、中継装置へ蓄積する手段を前提とする。これは1つには、無線で更新プログラムデータを受信するので、ビルの蔭や屋内駐車場など、電波が届かない場所に車両が停車していると受信できない場合が考えられるので、イグニッションがオン状態で走行中などに中継装置に更新プログラムデータを受信したほうがより確実かつ安全に受信できるからである。従って、エンジンが起動しておりオルタネータからバッテリ充電が行われている状態で受信しているので、安全である。2つには、外部センタから直接車載制御装置へ無線を介して書込むよりも、車両内の中継装置に更新プログラムデータを蓄積し、その後にある時間帯で中継装置から更新プログラムと更新データを車載制御装置へ書込むほうが書込み時間を短縮できるからである。
 以上を前提にして、本発明は、運転者が自動車を使用しない時間帯に更新プログラムと更新データを車載制御装置へ安全に書込む手段を考案した。本発明手段を説明する前に、プログラム更新手順を考察する。まず車載制御装置のプログラム更新は、車両所有者の同意無しに実行することはできない。そのため、事前に電話やメールなどでプログラム更新の同意や自動車を使用しない第1の時間帯を確認しておく必要がある。ここで第1の時間帯とは、車両所有者が指定した都合の良い年、月、日における時間帯のことであり、この時間帯ならプログラム更新しても良いと合意した時間帯のことである。従って夜中の2時~3時の時間帯に自宅駐車場でプログラム更新を希望するかも知れない。ただし、外部センタがその時間帯で他の車両へ更新プログラムと更新データを送信予定である場合には、車両所有者と調整して、他の時間帯へ変更することも有り得る。また、他の車両所有者は、時間帯など指定せずに、都合の良い時に自分でプログラム更新をしたいと希望するかも知れない。このように、時間帯を指定するケースでは、夜中の時間帯が想定されるので、車両には運転者が乗車しておらず、イグニッションはオフ状態で更新プログラムの書込みを実現する必要がる。本ケースを第1のケースとする。一方、時間帯を指定せずに運転者が都合の良い時に自分でプログラム更新を実行するケースを第2のケースと定義する。以下、本発明による第1のケースと第2のケースの実現手段を説明する。
 最初に、エンジンを起動してオルタネータからバッテリ充電中にプログラムを更新することが困難であることを説明する。ここでバッテリ充電中とはエンジンが動作中でかつエンジンを制御している車載制御装置の制御プログラムが実行されている状態である。つまり実行中の制御プログラムはマイコンによって読み出され、読み出された命令列を実行している状態なので、制御プログラムの一部を更新プログラムへ書き換えると、動作不良となってしまう。このようにエンジンを制御する車載制御装置を動作中にプログラム更新することは困難である。以上述べたことを理由に、プログラム更新を実行する前にバッテリの容量を把握し、プログラム更新を完了できるだけのバッテリ容量があるかチェックすることを前提に第1のケースと第2のケースの実現手段を考案した。
 以下に各請求項の概要について説明する。
 請求項1は、中継装置が車載制御装置へ更新プログラムと更新データの書込みを実行する前に、中継装置が備えている電圧チェック回路により無負荷時と負荷接続時のバッテリ電圧チェックを行い、無負荷時には第1の基準電圧以上、または負荷接続時には第2の基準電圧以上である場合に書込みを実行し、その他の場合には書込みを実行しない手段である。車両に搭載されている鉛バッテリは、バッテリ容量が低下すると内部抵抗も増大し、電圧降下も大きくなる特性がある。従って、無負荷時に高い電圧を示すバッテリであっても容量が少ない場合がある。これを理由に、バッテリに負荷を接続した状態で第2の基準電圧以上であるか判定している。一方、無負荷状態でも非常に高い電圧を出力している場合には、内部抵抗が小さいことを意味するので、第1の基準電圧以上であれば、十分なバッテリ容量があると判断できる。従って、無負荷時に第1の基準電圧以上であることも判定条件に加えている。明らかに第1の基準電圧は、第2の基準電圧よりも大きい電圧である。
 請求項2は、中継装置がバッテリ電圧異常表示器を備え、バッテリ電圧チェック回路による無負荷時と負荷接続時のバッテリ電圧チェックを行った結果、バッテリ電圧が第1の基準電圧以下かつ第2の基準電圧以下の場合にバッテリ電圧異常表示器を点灯させる手段である。運転者へバッテリ異常を通知することが目的なので表示器は点滅でも良い。
 請求項3は、中継装置がバッテリ電圧正常表示器を備え、バッテリ電圧チェック回路による無負荷時と負荷接続時のバッテリ電圧チェックを行った結果、バッテリ電圧が第1の基準電圧以上または第2の基準電圧以上の場合にバッテリ電圧正常表示器を点灯させる手段である。運転者へバッテリ正常を通知することが目的である。
 次に第1のケースの実現手段を説明する。本ケースは、運転者が自動車に乗車していないので、外部センタからの指令に基づき、車両所有者の希望する時間帯(第1の時間帯と呼ぶ)にプログラム更新を実行することを基本とする。
 請求項4の手段は、エンジン起動中のバッテリ充電中の状態で外部センタから第1の時間帯の以前に更新プログラムデータを中継装置へ蓄積した後に、中継装置は、外部センタから第1の時間帯の範囲内に送信された書込み開始指令を受信した場合に、まず無負荷時と負荷接続時のバッテリ電圧チェックを行い、その結果バッテリ電圧が第1の基準電圧以上または第2の基準電圧以上である場合に、車載制御装置をウェイクアップ起動し、リプロモード(プログラム書換えモード)へ遷移させ、車載制御装置からのリプロモード遷移通知とメモリへ蓄積された車載制御装置の更新プログラムデータの有無に基づいて車載制御装置へ更新プログラムと更新データの書き込みを第1の時間帯に実行する手段である。本発明手段により、車両所有者が不便に感じない時間帯で車載制御装置のプログラムとデータの更新を安全に完了することができる。
 請求項5は、請求項4において外部センタから第1の時間帯の範囲内に送信された書込み開始指令を受信しかつイグニッションがオフの場合に、無負荷時と負荷接続時のバッテリ電圧チェックを行い、更新プログラムと更新データの書き込みを第1の時間帯に実行する手段である。
 請求項6は、外部センタから第2の時間帯を含む更新プログラムデータ受信し、車載時計から現在時刻が第2の時間帯の範囲内であれば、書込み開始指令を実行する手段を提供している。すなわち本手段は、書込み開始指令の受信時刻を車両に搭載された時計を読み出して求め、既に受信した更新プログラムデータ内の第2の時間帯と比較することで第2の時間帯の範囲内であるか判断することができる。従って、範囲内であれば、無負荷時と負荷接続時のバッテリ電圧チェックを行い基準電圧以上である場合に、書込み開始を実行する。まず車載ネットワークに接続された車載制御装置へウェイクアップパターンを送信して車載制御装置をウェイクアップ起動し、次に車載制御装置へリプロモードへの遷移コマンドを送信して、車載制御装置がリプロモードへ遷移した通知を受けた後に更新プログラムと更新データの書込み処理を第2の時間帯に実行する手段である。以上のように、本手段は、車両所有者との約束である第2の時間帯(すなわち第1の時間帯と第2の時間帯を同一に設定しておく)に、バッテリ電圧を確認して安全、確実に書込みを実行する手段である。
 請求項7は、請求項6においてイグニッションがオフの状態でかつ車載時計から得た現在時刻が第2の時間帯の範囲内である場合に電圧チェックを行い、基準電圧以上であれば第2の時間帯に書込みを実行する手段である。
 請求項8は、車両内にメモリ蓄積完了表示器を設置し、外部センタから送信された更新プログラムデータを中継装置が蓄積完了した場合に点灯する手段である。車両への更新プログラムデータは数日前に送信することを想定した場合、本表示器が点灯することによって運転者は、プログラム更新の準備が整ったことを認識できるので安心感を与えることができる。
 請求項9は、車両内に書込み完了表示器を設置し、蓄積した更新プログラムデータを車載制御装置へ全て書込み完了した後に、表示器の点灯と外部センタへ書込み完了通知を行う手段である。これにより、運転者は、例えば翌日の朝に、車両の書込み完了表示器が点灯していれば完了を確認できるので安心できる。また外部センタも完了を知ることができる。
 次に、第2のケースの実現手段を説明する。本ケースは運転者が自動車に乗車しているケースである。
 請求項10は、運転者が更新プログラムデータを蓄積完了したことを確認できるメモリ蓄積完了表示器と運転者が書込み開始指令を指示するための書込み開始指令ボタンと書込みが終了したことを示す書込み完了表示器を設置し、運転者はメモリ蓄積完了表示器の点灯を確認し、運転者の都合良い時間に書込み開始指令ボタンをオンにすることで中継装置は無負荷時と負荷接続時のバッテリ電圧のチェックを行い、その結果バッテリ電圧が基準電圧以上であれば車載制御装置へ書込みを実行し、さらに書込み完了表示器が点灯することで書込み完了を知らせる手段である。このように、2つの表示器と1つのボタンがあれば、運転者は安心して確実に書込み作業を実行することができる。
 請求項11は、請求項10においてイグニッションがオンの状態でかつ車両のシフトギア位置がパーキングでかつ書込み開始指令ボタンがオンになった場合に、電圧チェックを行い、基準電圧以上であれば書込みを実行する手段である。
 請求項12は、たとえ運転者が乗車していても必ずしも運転者が所有者というわけでは無いので、車両所有者と約束した第1の時間帯に書込みを実行するための手段である。車両所有者との約束の第1の時間帯に書き込みを実行するには、更新プログラムデータに第2の時間帯のデータ(第2の時間帯は第1の時間帯と同一に設定しておく)を設定して中継装置へ送信し、中継装置は書込み開始指令ボタンがオン状態になった時刻が第2の時間帯の範囲内であるか車両の時計を用いてチェックし、その結果範囲内でありかつメモリ蓄積完了表示器が点灯していれば、無負荷時と負荷接続時のバッテリ電圧チェックを行い、その結果バッテリ電圧が基準電圧以上である場合に、車載制御装置へ第2の時間帯に書込みを実行し、書込み完了後に書込み完了表示器を点灯して運転者へ知らせる手段である。
 請求項13は、請求項12においてイグニッションがオン状態でかつ車両のシフトギア位置がパーキングで書込み開始指令ボタンがオンであることを第2の時間帯に検出すれば、バッテリ電圧チェックを行い、基準電圧以上であれば第2の時間帯に書込みを実行する手段である。
 請求項14は、車載制御装置の1つとしてナビゲーション装置を対象にした場合の手段である。更新プログラムデータの代わりに地図データをナビゲーション装置へ書込み前にバッテリ電圧チェックを行い、基準電圧以上の場合に書込みを実行する手段である。
 以上のように本発明によれば、運転者が車両に乗車しているケースでも、乗車していないケースでも予め約束した時間帯に書込み開始を実行する手段や運転者の都合の良い時に書込み開始指令ボタンを押すことによって、無負荷時と負荷接続時のバッテリ電圧チェックを行い、その結果バッテリ電圧が基準電圧以上であることを確認することによって、安全に更新プログラムや更新地図データの書込み処理を実現できる。
 請求項15は、バッテリ電圧チェック回路は、必ずしも中継装置に内蔵する必要は無く、バッテリ電圧チェック回路を内蔵したバッテリ電圧チェック装置が車載ネットワークを介して中継装置とバッテリ電圧チェック装置が接続され、バッテリ電圧チェック装置が検出したバッテリ電圧チェック結果を車載ネットワークを介して中継装置へ通知する手段である。この結果、中継装置は車載ネットワークから受信したバッテリ電圧チェック結果に基づき、車載制御装置への書込み処理を安全に実行できる。
 以下、各実施例の中で詳細に説明する。
 初めに本発明の一例を実現するハードウェア構成と、必要なソフトウェア構成、データ構成について説明し、その後、本発明の詳細な実施例について説明する。
 図1に示されるように、外部センタ100は、更新プログラムデータを車両110へ無線で送信し、その書込み完了結果を車両から受信する機能をもつ。無線中継基地101は、外部センタ100と車両110間の無線データを中継する。車両110には、更新プログラムデータの蓄積と車載制御装置への書込み機能を有する中継装置120、制御対象(エンジン)135を制御する車載制御装置130、制御対象(トランスミッション)145を制御する車載制御装置140、制御対象(モータ)155を制御する車載制御装置150、車両に搭載されたバッテリ電源172、車両に搭載された電子機器にバッテリ電源を供給するイグニッションスイッチIGN170、時計180、書込み開始指令ボタン182、メモリ蓄積完了表示器184、書込み完了表示器186、バッテリ電圧異常表示器188、バッテリ電圧正常表示器190がある。中継装置120は、外部センタ100とデータ送受信を行う無線送受信機121とマイコン122で構成されている。さらに中継装置120は、車載ネットワーク160と接続し、時計180と信号線181を介して接続し、書き込み開始指令ボタン182と信号線183を介して接続し、メモリ蓄積完了表示器184と信号線185を介して接続し、書込み完了表示器186と信号線187を介して接続し、バッテリ電圧異常表示器188と信号線189を介して接続し、バッテリ電圧正常表示器190と信号線191を介して接続されている。ここで書込み開始指令ボタン182とメモリ蓄積完了表示器184と書込み完了表示器186とバッテリ電圧異常表示器188とバッテリ電圧正常表示器190は、説明を分かりやすくするために個別に用意したが、タッチパネル付きの表示器などで操作と表示を1つの装置で代替しても良い。無線送受信機121は、マイコン122と信号線128を介して接続されている。マイコン122は、演算器を含むCPU 123、マイコンの動作を制御するプログラムを格納する内部ROM 124、更新プログラムデータを格納するための更新データROM 125、RAM126、車載ネットワークのプロトコル処理を行う車載LAN通信部127、本発明の1つである電圧チェック回路129で構成されている。
 車載ネットワーク160は、中継装置120と車載制御装置130、140、150を接続する車載ネットワークである。バッテリ電源172は、電源線173を介して中継装置120や車載制御装置130、140、150など全ての車載電子機器へ電源を供給している。またイグニッション170は車載電子機器を起動するための信号であり、信号線171を介して中継装置120と車載制御装置130、140、150へ接続されている。イグニッション170をオン状態にすると、接続された電子機器は起動し、START状態にするとエンジンがスタートする。車載制御装置130は車載ネットワーク160に接続され、制御対象であるエンジン135を信号線136を介して制御する。マイコン131は車載制御装置130の動作を制御し、車載LAN通信部132は車載ネットワーク160と接続されている。ROM133は、制御対象135を制御するためのプログラムとデータを格納するフラッシュメモリであり、RAM134はSRAMである。
 車載制御装置140は車載ネットワーク160に接続され、制御対象であるトランスミッション145を信号線146を介して制御する。マイコン141は車載制御装置140の動作を制御し、車載LAN通信部142は車載ネットワーク160と接続されている。ROM143は、制御対象145を制御するためのプログラムとデータを格納するフラッシュメモリであり、RAM144はSRAMである。車載制御装置140はトランスミッションのシフトギア位置信号147を中継装置120へ出力している。
 車載制御装置150は車載ネットワーク160に接続され、制御対象であるモータ155を信号線156を介して制御する。マイコン151は車載制御装置150の動作を制御し、車載LAN通信部152は車載ネットワーク160と接続されている。ROM153は、制御対象155を制御するためのプログラムとデータを格納するフラッシュメモリであり、RAM154はSRAMである。
 次に車載制御装置130の起動に係わる回路について図2を用いて説明する。
本実施例では、車載制御装置は130、140、150の3つで構成しているが起動に係わる回路は同一であり、唯一シフトギア位置信号147だけが車載制御装置140から中継装置120へ出力されている信号である。従って本信号147を除いた回路動作を図2でまとめて説明する。車載制御装置130の入力には、バッテリ電源線173とイグニッション信号線171と車載ネットワーク160がある。リレー回路210がオン状態になるとバッテリ電源線173と電源線220が接続され、バッテリ電源がDC-DCコンバータ230へ供給される。DC-DCコンバータ230はバッテリ電圧をマイコンの電圧へ降圧してマイコンの電源端子240へ供給する。これによりマイコン131はパワーオンリセットして起動できる。ここでリレー回路210をオン状態にする信号が3つあるので下記に説明する。
 1つ目はイグニッションIGN信号171であり、2つ目は車載ネットワークのドライバIC CAN BD 200のウェイクアップ検出信号WakeUp 250であり、3つ目はマイコン131の自己保持信号PowerKeep 260である。この3つの信号はOR回路270を介して信号280へ出力され、リレー回路210のオン、オフ動作を制御している。ウェイクアップ検出信号WakeUp 250は車載ネットワーク160を介してウェイクアップ信号を受信するとオン状態となる信号である。ウェイクアップ機能は、自動車で一般的に使用されている機能であり、CANネットワークやFlexRayネットワークでもサポートされている。また信号線290は車載ネットワークのドライバIC CAN BD 200とマイコン131を接続する信号であり、中継装置120と通信データのやり取りを行う信号線である。
次に自己保持信号PowerKeep 260を説明する。マイコン131がこの信号をオン状態に設定すると、イグニッション信号IGN 171とウェイクアップ検出信号WakeUp 250がオフ状態になっても回路構成からリレー回路210はオン状態を維持できることがわかる。従って、更新プログラムと更新データをフラッシュメモリROM133へ書込み際には、本信号をオン状態に設定しておけば、マイコンの電源を維持できるので安全を確保できる。
 次に中継装置120の起動に係わる回路について図3を用いて説明する。
中継装置120の入力には、バッテリ電源線173、時計の信号線181、 書込み開始指令ボタンの信号線183、メモリ蓄積完了表示器の信号線185、書込み完了表示器の信号線187、バッテリ電圧異常表示器の信号線189、 バッテリ電圧正常表示器の信号線191、 イグニッション信号線171、シフトギア位置信号線147と車載ネットワーク160がある。また無縁送受信機121はマイコン122と信号線128を介して接続されている。リレー回路310がオン状態になるとバッテリ電源線173と電源線370が接続され、バッテリ電源がDC-DCコンバータ320へ供給される。DC-DCコンバータ320はバッテリ電圧をマイコンの電圧へ降圧してマイコンの電源端子371へ供給する。これによりマイコン122はパワーオンリセットして起動できる。ここで車載制御装置と同様に、リレー回路310をオン状態にする信号が3つあるので説明する。
 1つ目はイグニッション信号171であり、2つ目は車載ネットワークのドライバIC CAN BD 300のウェイクアップ検出信号WakeUp 340であり、3つ目はマイコン122の自己保持信号PowerKeep 350である。この3つの信号はOR回路330を介して信号360へ出力され、リレー回路310のオン、オフ動作を制御している。ウェイクアップ検出信号WakeUp 340は車載ネットワーク160を介してウェイクアップ信号を受信するとオン状態となる信号である。ウェイクアップ機能は、自動車で一般的に使用されている機能である。また信号線372は車載ネットワークのドライバIC CAN BD 300とマイコン122を接続する信号であり、車載制御装置と通信データのやり取りを行う信号線である。
次に自己保持信号PowerKeep 350を説明する。マイコン122がこの信号をオン状態にすると、イグニッション信号171やウェイクアップ検知信号WakeUp 340がオフ状態になっても回路構成からリレー回路310はオン状態を維持できることがわかる。従って、更新プログラムデータをフラッシュメモリの更新データROM125へ書込み際には、本信号をオン状態に設定しておけば、マイコン122の電源を維持できるので安全を確保できる。
 次に本発明の1つである電圧チェック回路129の詳細構成を説明する。
負荷381は、高耐圧の抵抗で構成された擬似負荷であり、一端は電源線383を介してグランドに接続されている。リレー回路380には、その1つの端子に負荷381が電源線382を介して接続され、またもう1つの端子にはバッテリ電源線173が接続されている。さらにもう1つの端子にはマイコン122と信号線384を介して接続されている。電圧検出回路385には、その1つ端子にマイコン122が出力した基準電圧のアナログ信号線386が接続され、もう1つの端子にはバッテリ電源線173が接続されている。さらにその出力端子はフリップフロップ回路388のD端子へ信号線387を介して接続されている。またフリップフロップ回路388のT端子には、マイコン122が出力した電圧観測パルス信号線389が接続されている。さらにその出力端子Qは、信号線390を介してマイコン122と接続されている。
 以上述べた電圧チェック回路129の動作を図24と図25を用いて詳しく説明する。
 図24は電圧観測パルスと無負荷時のバッテリ電圧波形を示したものである。
ここで縦軸は電圧(V)、横軸は時刻tである。2400は無負荷時のバッテリ電圧波形、2410はマイコン122が出力した第1の基準電圧、2420はマイコン122が出力した電圧観測パルスである。無負荷時のバッテリ電圧が第1の基準電圧以上であるか判定するために、マイコン122は、まず最初に信号線385へオフ信号を出力する。この結果バッテリ電圧173は負荷381と切り離されるので電圧検出回路の入力端子へは無負荷時のバッテリ電圧が入力されることになる。次にマイコン122はアナログ信号線386へ第1の基準電圧を出力し、その後電圧観測パルス信号線389をオンし、一定時間後にオフする。この動作により、フリップフロップ回路388は信号線389がオンの時間は、電圧検出回路385の出力信号387を入力し、オフになる立下りのタイミングで信号線387をラッチする動作を行う。結果として、ラッチ結果は信号線390を介してマイコン122ヘ入力することができる。電圧検出回路386は、バッテリ電圧173が第1の基準電圧386より高ければ信号線387へ1を出力し、低ければ信号線387へ0を出力するので、マイコン122は信号線390の値が1または0により第1の基準電圧以上または基準電圧以下であることが容易に判別できる。図24では、このラッチタイミングが点線2430で示した時刻であり、バッテリ電圧2400が第1の基準電圧2410よりも高いので、信号線390には1が出力される。
 次に図25を用いて負荷接続時のバッテリ電圧波形を説明する。
ここで縦軸は電圧(V)、横軸は時刻tである。2500は負荷接続時のバッテリ電圧波形、2510はマイコン122が出力した第2の基準電圧、2520はマイコン122が出力した電圧観測パルスである。負荷接続時のバッテリ電圧が第2の基準電圧以上であるか判定するために、マイコン122は、まず最初に信号線385へオン信号を出力する。この結果バッテリ電圧173は負荷381ときりはなれ接続されるので電圧検出回路の入力端子へは負荷接続時のバッテリ電圧が入力されることになる。バッテリには内部抵抗があるので、図25のバッテリ電圧2500に示したように0Vにはならない。次にマイコン122はアナログ信号線386へ第2の基準電圧を出力し、その後電圧観測パルス信号線389をオンし、一定時間後にオフする。この動作により、フリップフロップ回路388は信号線389がオンの時間は、電圧検出回路385の出力信号387を入力し、オフになる立下りのタイミングで信号線387をラッチする動作を行う。結果として、ラッチ結果は信号線390を介してマイコン122ヘ入力することができる。電圧検出回路386は、バッテリ電圧173が第2の基準電圧386より高ければ信号線387へ1を出力し、低ければ信号線387へ0を出力するので、マイコン122は信号線390の値が1または0により第2の基準電圧以上または基準電圧以下であることが容易に判別できる。図25では、このラッチタイミングが点線2530で示した時刻であり、バッテリ電圧2500が第2の基準電圧2510よりも高いので、信号線390には1が出力される。
 以上、電圧チェック回路の動作を詳細に説明した。
 次に本実施例の中継装置と車載制御装置のデータ構成やメモリの構成などについて図4~図8Aを用いて説明する。
 図4は、中継装置のマイコンの割り込みテーブル構成である。
割り込みテーブル400は、マイコンの外部や内部で発生した割り込みを本テーブルに登録したアドレスへ分岐させるテーブルである。詳細は後述するが、中継装置では、無線送受信機から更新プログラムデータを受信した時に処理を行う無線送受信機受信割り込みプログラムのアドレス410と書込み開始指令ボタンが押されたかチェックするための500ms周期割り込みプログラムのアドレス420が設定されている。また書込み開始指令受信処理プログラムは外部センタからの指令により起動するケース(請求項4、5)と1000ms周期起動するケース(請求項6、7)がある。
 図5は、車載制御装置のマイコンの割り込みテーブル構成である。車載制御装置130、140、150の割り込みテーブルは、全て同一である。
割り込みテーブル500は、マイコンの外部や内部で発生した割り込みを本テーブルに登録したアドレスへ分岐させるテーブルである。前述したように車載制御装置では、イグニッションIGNがオンになった場合や、車載ネットワークからウェイクアップパターンを受信するとマイコンの電源がオンとする。510は電源オンの時に実行するプログラムのアドレスを登録してある。520は、中継装置から更新プログラムと更新データを受信した時に実行するプログラムのアドレスが登録してある。 
 図6は、外部センタの送信データ構成である。外部センタ100が無線で送信する複数の更新プログラムデータ構成600と書込み開始指令構成620の通信フォーマットを説明する。
 更新プログラムデータの送信データ構成600の先頭のヘッダは送信開始を指示する情報であり、VINは車両を一意に特定する車両番号である。CMDはコマンドの種類である。CMDが” SNDPROG”であれば受信データが更新プログラムデータを意味し、” WRITE “であれば受信データが書込み開始指令を意味する。ST2は本発明
の第2の時間帯のスタート時刻であり、ET2は第2の時間帯のエンド時刻を示している。Nは送信された更新プログラムデータの数を示している。SIZE[1]は最初に送信する更新プログラムデータのサイズであり、バイト単位で表現している。SIZE[N]は最後に送信する更新プログラムデータのサイズである。
次にECU[1]は最初に送信する更新プログラムデータ情報であり、ECU[N]は最後に送信する更新プログラムデータ情報である。更新プログラムデータ情報の数もNと同じである。EOFは送信データの最後を示す情報である。
 次にECU[N]の内部データ構成610を説明する。ECU[N]は、他のECU[1]などの内部データ構成と同一なのでECU[N]でまとめて説明する。本実施例では、ECU[N]の更新プログラムデータは更新プログラムと更新データと管理情報で構成されている。まずECUIDは車両内の車載制御装置を一意に特定する車載制御装置番号である。VNOは更新プログラムと更新データのバージョン番号、PADRは車載制御装置のROMの書込みアドレスである。更新プログラムと更新データをROMへ書込む時に必要となる先頭アドレスである。PSIZEは更新プログラムと更新データのサイズである。サイズの単位はバイトである。PROGDATAは、更新プログラムと更新データ本体を示している。
 次に620の書込み開始指令コマンドの送信データ構成を説明する。VINは一意に車両を特定するための車両番号、CMDは書込み開始指令コマンドである。
 以上、無線による通信データ構成を説明した。
 図7は、中継装置の蓄積したデータ構成である。無線通信データの更新プログラムデータと書込み開始指令と更新処理で使用するメモリ蓄積完了ビットと書込み完了ビットを更新データROM125へ格納するデータ構成を説明する。まず、更新プログラムデータのメモリ蓄積データ構成700を説明する。RECVINは受信データVINを保持する変数、RECCMDは受信データCMDを保持する変数であり、更新プログラムデータを受信した場合は” SNDPROG “である。RECST2は受信データST2を保持する変数、RECET2は受信データET2を保持する変数、RECNは受信データNを保持する変数、RECSIZE[1]~RECSIZE[RECN]は受信データSIZE[1]~SIZE[N]を保持する配列であり、RECECUID[1]~RECECUID[RECN]は受信データECUID[1]~ECUID[N]を保持する配列、RECECUVNO[1]~RECECUVNO[RECN]は受信データECUVNO[1]~ECUVNO[N]を保持する配列である。RECECUPADR[1]~RECECUPADR[RECN]は受信データECUPADR[1]~ECUPADR[N]を保持する配列であり、RECECUPSIZE[1]~RECECUPSIZE[RECN]は受信データECUPSIZE[1]~ECUPSIZE[N]を保持する配列であり、RECECUPROGDATA[1]~RECECUPROGDATA[REN]は受信データECUPROGDATA[1]~ECUPROGDATA[N]を保持する配列である。
 メモリ蓄積完了ビット710は、メモリ蓄積処理で蓄積完了後にオンにセットされる変数である。
 書込み完了ビット720は、全ての更新プログラムと更新データを車載制御装置へ書込み完了した場合にセットされる変数である。
 730は、書込み開始指令の蓄積データ構成である。RECVINとRECCMD “WRITE”は、外部センタから書込み開始指令を受信した場合に、それぞれ受信データVINとCMD “ WRITE “を保持する変数である。
 以上述べた変数と配列は、図1の更新データROM 125に格納される。従って、これらのデータはマイコン122の電源がオフになっても消えることは無く保持される。
 図8の中継装置のメモリ構成について説明する。内部ROM 124には無線送受信機121から割り込み410経由で起動される無線送受信機からの受信処理プログラム821内にメモリ蓄積処理プログラムと割り込みまたは1000ms周期で起動する書込み開始指令受信処理プログラムが格納されている。また書込み開始指令ボタンによる書込み開始指令処理プログラム822と無線送受信機への送信処理プログラム823も格納されている。また定数データ領域830には、当該車両を一意に特定できる車両Noや車両に搭載されている車載制御装置を一意に特定できるECUIDとCANID変換テーブルがある。本実施例では車載制御装置の更新プログラムを車載ネットワークCANへ特定の車載制御装置へ送信する場合、特定のCANIDを指定して送信している。すなわち車載制御装置は、特定のCANIDを指定された送信データだけを受信できる。
 このように、車載制御装置ごとに異なるCANIDを割り当てることで、中継装置と車載制御装置間で通信が可能となる。このため、車載制御装置を一意に特定するためのECUIDとCANIDの変換テーブルが定数データ領域830に格納されている。同様に中継装置にも専用のCANIDが割り当てられており、車載制御装置が中継装置へ送信データを送信する場合には、中継装置専用のCANIDを指定して送信すれば良い。また、当該車両に搭載されている車載制御装置台数Nmaxやウェイクアップ最大待ち時間、モード変更最大待ち時間も格納されている。ウェイクアップ最大待ち時間とは、イグニッションがオフ状態の場合に中継装置が車載制御装置を起動する際に、どのくらいの時間待てば全ての車載制御装置が立ち上がり、応答を車載ネットワークへ送信できるかを示す最大時間である。従って中継装置は、ウェイクアップパターンを車載ネットワークへ送信した後、ウェイクアップ最大待ち時間経過後に受信バッファを確認すれば必ず全ての車載制御装置からの応答を確認することができる。ウェイクアップは特定の車載制御装置だけを起動するのでなく、全ての車載制御装置を起動する。同様に、モード変更最大待ち時間も、中継装置が車載ネットワークへリプロモードなどのモード変更を送信した場合、どのくらいの時間待てば、指定した車載ネットワークへモード変更を完了したという意味の返信が返ってくるかを示す最大時間できる。モード変更の送信はCANIDを指定するので、特定の車載制御装置だけがモード変更される。次に更新データROM 125は、外部センタから受信したデータを格納するためのフラッシュメモリである。図7の蓄積データ700が格納される。RAM 126は、内部ROM 820のプログラムが使用するワークエリアでありIGN状態や時計データ、シフトギア位置などのデータが読込まれ、SRAMで構成されている。また電圧チェック結果やイグニッションの状態や時計のデータ、車載制御装置の書込み完了ビットRESULTECU[1]~RESULTECU[REC]がプログラム実行中に格納される。
 図8Aは、車載制御装置のメモリ構成である。本実施例では、全ての車載制御装置のメモリ構成はシフトギア位置を除いて同一であるため、本図を用いて説明する。ROM 133には更新プログラムと更新データを受信するウェイクアップ受信処理プログラム8A04とリプロモードコマンドを受信するリプロモード受信処理プログラム8A05と更新プログラムと更新データを8A03の領域へ書込む書込み処理プログラム8A06がROM133のプログラム領域8A01に格納されている。定数データ領域8A02には、車載制御装置自身を一意に特定するための自ECUIDとECUIDと対を成すCANID変換データと、中継装置へ送信する際に使用する中継装置ECUIDとそのCANID変換データ、ウェイクアップ最大待ち時間、モード変更最大待ち時間が格納されている。8A04は、車載制御装置の動作モードを示す“車載制御装置のモード”変数である。動作モードには、制御動作を行う通常動作モードとプログラム更新処理を行う“リプロモード”の2種がある。電源オンやウェイクアップによる立上げ時に、“車載制御装置のモード”変数を参照して、その設定値に応じたモードへ遷移する。また“通常動作モード”中に “リプロモード”遷移要求があれば、遷移する。またその逆の遷移も可能である。RAM 134には、イグニッションの状態などプログラム8A04、 8A05、 8A06が実行中に使用するワークエリアである。ただし、車載制御装置140だけがシフトギア位置を保持している。
 以上の構成を使用にして、本発明の請求項4~7の処理概要を図9に示し、請求項10~13の処理概要を図10に示す。請求項1~3、8~9については上記請求項の説明の中で詳しく説明する。
 まず最初に、プログラム更新を発見した時点から更新処理を実施するまでの経緯を考察する。車載制御プログラムにバグや改良点が車両メーカで発見されると、更新プログラムと更新データを作成する。次に、車両の所有者に対して、販売店などを経由して不良の内容説明とその改善内容を文書で通知する。その後販売店は、対策を実施するために車両の所有者へ電話などでプログラム更新の承認を確認し、更新プログラムの書込みを実施している時間帯は車両を運転できないことを説明し、それを承知頂いた上で、車両のプログラム更新を行う都合の良い年月日の時間帯を聞いて、外部センタへその時間帯を連絡する。このように、車両の所有者に不便を感じさせないようにするには、車両の所有者に都合の良い日の時間帯にプログラム更新をすることが重要である。
 外部センタは、通知された時間帯に更新プログラムデータを所有者の車両へ書込むために、前記通知された時間帯以前に、前記所有者の車両の中継装置へ更新プログラムデータを送信し、蓄積しておく必要がある。以上の経緯が請求項4~7に関するものであり、本発明の図9の処理フローで実現する。
 一方、更新プログラムデータが車載中継装置に蓄積されていれば、外部センタからの書込み開始指令を待つこと無く、運転者の都合の良いタイミングでプログラム更新を行いたいケースも考えられる。このケースが請求項10~13に対応するもので図10の処理フローで実現する。ただし、運転者が車両の所有者とは限らないので、所有者が時間帯を指定している場合は、時間帯の範囲外では書込みを抑止する必要がある。この抑止処理を実現する発明が請求項12、13のケースである。以下、詳細は省いた概要を図9と図10で説明する。
 図9は外部センタの書込み開始指令による書込み処理概要である。
 外部センタと中継装置と車載制御装置の処理概要をそれぞれの時間軸901、 902、 903に沿って説明する。
 まず外部センタは、車両所有者と約束した予め決めらた時間帯より前の時刻に更新プログラムデータ904を中継装置へ送信する。中継装置は、イグニッションがオン状態であれば受信を行う。最初に中継装置の電源を確保するためにPowerKeep信号をオン905し、更新データROMへ更新プログラムデータを蓄積する。次にメモリ蓄積完了ビットをオン906し、メモリ蓄積完了表示器を点灯907する。次に外部装置へメモリ蓄積完了通知908を行い、PowerKeep信号をオフ909を行う。以上の処理が完了した後に、請求項4、5では予め決められた第1の時間帯に外部装置は書込み開始指令910を中継装置へ送信する。また請求項6、7では現在時刻が既に受信した第2の時間帯であると判断した場合に、中継装置は、PowerKeep信号をオン911し、無負荷時と負荷接続時の電圧チェック処理2600を行い、基準電圧以上であれば車載制御装置へウェイクアップパターンを送信912する。車載制御装置はウェイクアップパターンを受信すると電源がオンするのでプログラムを実行し、PowerKeep信号をオン914する。車載制御装置からウェイクアップ応答913を受信した後に、プログラム更新要求があった車載制御装置へリプロモード遷移要求915を送信し、車載制御装置からリプロモード応答916が返ってきたことを確認して、更新プログラムと更新データを分割して書き込み処理917~918を繰り返し送信する。当該車載制御装置の更新プログラムと更新データを全て送信した後に書込み終了を送信919する。車載制御装置は書込み終了を受信すると、中継装置へ書込み完了応答920を送信した後にPowerKeep信号をオフ921する。中継装置は、車載制御装置から書込み完了応答920が返ってきたら、当該車載制御装置の更新プログラムと更新データ処理は完了したので、車載制御装置の書込み完了ビットをオン922し、次に他の車載制御装置の更新プログラムデータがあれば、全ての更新プログラムと更新データを車載制御装置へ送信する処理923を繰り返す。その後、書込みが全ての車載制御装置で成功(OK)であれば書込み完了ビットをオン924し、書き込み完了表示器を点灯925し、メモリ蓄積完了ビットをオフ926し、メモリ蓄積完了表示器を消灯927して、書込み完了通知928を外部センタへ通知した後、PowerKeep信号をオフ929して終了する。本処理は、概要であり、車載制御装置に故障があった場合には書込み失敗するので書込み失敗を外部センタへ通知する必要があるが、以降の詳細処理フローにおいて説明する。
 次に、本発明の請求項10~13の処理概要を図10の書込みボタンによる書込み処理概要を用いて説明する。
 図10は、外部センタと中継装置と車載制御装置の処理概要である。外部センタ、中継装置、車載制御装置それぞれの時間軸1001、 1002、 1003に沿って説明する。
 まず外部センタは、車両所有者と約束した時間帯が予め決められていれば、時間帯より前の時刻に更新プログラムデータ1004を中継装置へ送信する。中継装置は、イグニッションがオン状態であれば受信を行う。最初に中継装置の電源を確保するためにPowerKeep信号をオン1005し、更新データROMへ更新プログラムデータを蓄積する。次にメモリ蓄積完了ビットをオン1006し、メモリ蓄積完了表示器を点灯1007する。次に外部装置へメモリ蓄積完了通知1008を行い、PowerKeep信号をオフ1009を行う。以上の処理は、図9と同一であるが、以降の処理が異なる。まず運転者は、メモリ蓄積完了表示器が点灯していることを確認して、中継装置に接続されている書込み開始指令ボタンをオンする。もし、メモリ蓄積完了表示器が消灯状態で書込み開始指令ボタンを押しても、書込みは実行されない。次に中継装置は書込み開始指令ボタンが押されたことを確認した後、自身の電源を確保するために、PowerKeep信号をオン1011する。次に無負荷時と負荷接続時の電圧チェック処理2600を行い、バッテリ電圧が基準電圧以上の場合に、プログラム更新要求があった車載制御装置へリプロモード遷移要求1012を送信する。車載制御装置は、リプロモードへ遷移した後に、中継装置へリプロモード応答1013を送信して、PowerKeep信号をオン1014する。中継装置は、車載制御装置からリプロモード応答1013が返ってきたことを確認して、更新プログラムと更新データを分割して書き込み処理1015~1016を繰り返し送信する。当該車載制御装置の更新プログラムと更新データを全て送信した後に書込み終了通知を送信1017する。車載制御装置は、書込み終了通知1017を受信すると、リプロモードから通常動作モードへ変更した後に中継装置へ書込み完了応答1018を送信してPowerKeep信号をオフ1019する。中継装置は、車載制御装置から書込み完了応答1018が返ってきたら、当該車載制御装置の更新プログラムと更新データ処理は完了したので、車載制御装置の書込み完了ビットをオン1020し、次に他の車載制御装置の更新プログラムデータがあれば、全ての更新プログラムと更新データを車載制御装置へ送信する処理1021を繰り返す。その後、書込みが全ての車載制御装置で成功(OK)であれば書込み完了ビットをオン1022し、書き込み完了表示器を点灯1023し、メモリ蓄積完了ビットをオフ1024し、メモリ蓄積完了表示器を消灯1025して、書込み完了通知1026を外部センタへ通知した後、PowerKeep信号をオフ1027して終了する。本処理は、概要であり、車載制御装置に故障があった場合には書込み失敗するので書込み失敗を外部センタへ通知する必要があるが、以降の詳細処理フローにおいて詳しく説明する。
 図11は、中継装置のメモリ蓄積処理である。図9と図10の共通の処理である。まず無線送受信機からの受信割り込み1100がマイコンへ入力すると、本プログラムが起動する。最初に中継装置のPowerKeep信号をオン1101し、次に受信データを更新データROMへ格納する処理1102を実行する。処理内容は図6のデータ600を図7の蓄積データ700へ変換して更新データROMヘ蓄積することである。詳細は、下記である。
  受信データ自車両NoのVINを更新データROMの変数RECVINへ書込み、
  受信データコマンドのCMDを更新データROMの変数RECCMDへ書込み、
  受信データ第2の時間帯の開始時刻ST2を更新データROMの変数RECST2へ書込み、
  受信データ第2の時間帯の終了時刻ET2を更新データROMの変数RECET2へ書込み、
  受信データ更新プログラムデータの数Nを更新データROMの変数RECNへ書込み、
  受信データ各受信データサイズSIZE[1]~SIZE[RECN]を更新データROMの配列RECSIZE[1]~RECSIZE[RECN]へ書込み、
  受信データ車載制御装置番号ECUID[1]~ECUID[RECN]を更新データROMの配列RECECUID[1]~RECECUID[RECN]へ書込み、
  受信データの更新プログラムと更新データのバージョンVNO[1]~VNO[RECN]を更新データROMの配列RECECUVNO[1]~RECECUVNO[RECN]へ書込み、
  受信データの更新プログラムと更新データの書込み先頭アドレスPADR[1]~PADR[RECN]を更新データROMの配列RECECUPADR[1]~RECECUPADR[RECN]へ書込み、
  受信データの更新プログラムと更新データサイズPSIZE[1]~PSIZE[RECN]を更新データROMの配列RECECUPSIZE[1]~RECECUPSIZE[RECN]へ書込み、
  受信データの更新プログラムと更新データ本体PROGDATA[1]~PROGDATA[RECN]を更新データROMの配列RECECUPROGDATA[1]~RECECUPROGDATA[RECN]へ書込む。
 ここで、注意すべきことは、更新すべき車載制御装置番号はRECECUID[n]、 n=1~RECNに格納されること、車載制御装置のROMへ更新プログラムと更新データを書き込む先頭アドレスはRECECUPADR[n]、 n=1~RECNに格納
されることである。
 次に1103で受信したデータが自車両への送信データであるか判定するため、RECVINと内部ROM124の定数データ領域に格納されている車両Noが一致するかチェックする。もし一致しなければ、1109のPowerKeep信号をオフして終了である。一致すれば当該車両への受信データなので、1104のRECCMDが” SNDPROG “かチェックする。もし一致しなければ他のコマンドであるため、1400の書込み開始指令処理を実行する。一致すれば受信データが更新プログラムデータであるため、1105の車両のイグニッションがオン状態であるかチェックする。もし一致しなければ次の外部センタからの送信まで待つため1109のPowerKeep信号をオフして終了する。一致すれば1106のメモリ蓄積完了ビットをオンし、1107のメモリ蓄積完了表示器を点灯し、1108の外部センタへメモリ蓄積完了通知を行い、1109のPowerKeep信号をオフして終了する。ここで外部センタへのメモリ蓄積完了通知は
、通知データを無線送受信機への送信処理プログラム823へ渡して実行される。
 以上で請求項4~13に係わるメモリ蓄積完了処理の詳細を説明した。
次に、予め決められた時間帯に外部センタから送信される書込み開始指令コマンドの送信データ構成を図6の620を用いて説明する。620の先頭のヘッダは送信開始を指示する情報であり、VINは車両を一意に特定する車両番号である。CMDは書込み開始指令コマンドである。EOFは送信終了を指示する情報でる。ここでCMDが” SNDPROG”であれば受信データは更新プログラムデータを意味し、” WRITE “であれば受信データは書込み開始指令を意味する。ここでは書込み開始指令であるため、”WRITE”コマンドとなる。このように、”SNDPROG”コマンドと”WRITE”コマンドではCMD以降のデータが大きく異なる。
 次に図12を用いて中継装置が書込み完了後に外部センタへ送信する書込み完了通知の送信データ構成を説明する。1200のCENTERIDは外部センタを一意に特定するための外部センタの番号、CMDは書込み完了または未完了を意味するコマンド。”COMPLETE”であれば書込み完了であり、”INCOMPLETE”であれば書込み未完了の通知となる。VINは車両を一意に特定するための車両番号である。
 図13は中継装置の書込み開始指令の蓄積データ構成1300である。図7の730と同一の構成が記載されている。ヘッダとEOFを除いてRECVINとRECCMDが更新データROMに保持される。図13は請求項4、5の実現に必要であるが、請求項6、7では不要である。既に更新プログラムデータ受信時に第2の時間帯を受信済みだからである。
 次に外部センタから書込み開始指令を受信したケースの書込み処理を図14~図21を用いて詳細に説明する。本ケースは請求項4~7の実施例であるが請求項1~3の発明の実施例も含んでいる。書込み開始指令は図11の1400の書込み開始指令受信処理への分岐または1000ms周期起動で開始される。図14に書込み開始指令受信処理の詳細を説明する。まず1401で中継装置の電源を確定するためPowerKeep信号をオンに設定する。次に1402でRECCMDが”WRITE”と一致するかチェックし、もし不一致ならば1407のPowerKeep信号をオフにして終了する。もし一致すれば書き込み開始指令コマンドであるため、1403のメモリ蓄積完了ビットがオンかチェックする。もしオンでなければ1407のPowerKeep信号をオフして終了する。もし一致すれば1404のイグニッションがオフかチェックする。もしオフでなければ1407のPowerKeep信号をオフして終了する。もし一致すれば1405の時計の現在時刻を変数Tへセットし、1406の判定RECST2 < T < RECET2を実行する。もしNOであれば、予め決められた時間帯では無いので、1407のPowerKeep信号をオフにして終了する。もしYESであれば、無負荷時と負荷接続時の電圧チェック処理2600を実行する。結果は変数RESULTVOLに格納されているので、1406Aで変数RESULTVOLが”OK”であるかチェックし、もしNOならば1407のPowerKeep信号をオフして終了する。もしYESならばバッテリ電圧が基準電圧以上であるので、1500の書込み開始処理を実行する。最後に書込み開始処理が終了後に1407のPowerKeep信号をオフにして終了する。このように、メモリ蓄積完了ビットがオンでかつイグニッションがオフでかつ無負荷時と負荷接続時の電圧チェック結果が基準電圧以上でかつ予め決められた時間帯の範囲内に書込み開始指令を受信した場合に書込みを開始し、その他の場合は書込みを実施しないことがわかる
 以上述べた処理フローは、請求項7の実施例であるが、請求項4の実施例としては1404、1405、1406を省略すれば良いだけである。請求項5の実施例は1405、1406を省略した処理フローであり、請求項6の実施例は1404を省略した処理フローである。
 次に1500の書込み開始処理の詳細を図15を用いて説明する。
中継装置は、最初に全ての車載制御装置を起動するため、1501の車載ネットワークのCANバスへウェイクアップパターンを送信する。次に1502の変数WKMAXTIMEへ定数ウェイクアップ最大待ち時間をセットし、1503の判定文WKMAXTIME > 経過時間 の判定を行う。この判定文は、ウェイクアップパターンを受信した車載制御装置の電源がオンとなって立ち上がるまで一定時間待つためである。もし1503でYESであれば最大待ち時間以内であり、まだ立ち上がらずにいる車載制御装置が存在するかもしれないことを意味する。従って、NOになるまで待ってから1504の処理を実行する。すなわち全ての車載制御装置が立ち上がっている状態で1504を実行している。図15の処理の途中ではあるが、ウェイクアップパターンを受信した車載制御装置の動作を図16の車載制御装置のウェイクアップ受信処理を用いて説明する。まずウェイクアップパターンを受信すると、前述したように、1600の全ての車載制御装置の電源がオンとなる。次に1601のPowerKeep信号をオンし、1602のCANバスからウェイクアップ受信確認をWakeUp信号によって確認する。次に1603により中継装置専用のCANIDを送信バッファのCANIDフィールドへ設定し、”WAKEUP_RESPONSE”を送信バッファのCMDフィールドへ設定し、自分自身の車載制御装置ECUIDを送信バッファのDATAフィールドへ設定する。次に1604で送信バッファの内容をCANバスへ送信し、終了する。このように、車載制御装置は、自身の立上げ完了を中継装置へCANバスを介して通知している。次に図15の1504へ戻って説明を行う。すなわち全ての車載制御装置が立ち上がった後に車載制御装置をリプロモードにしなけらばならない。このため、まずRECECUID[1]の車載制御装置をリプロモードして書込みを行う処理を行う。最初に1504で変数nへ1をセットし、1505で送信バッファのCANIDフィールドへRECECUID[n]専用CANIDの設定と、送信バファのCMDフィールドへリプロモードコマンドを意味する”REPRO_MODE”の設定と、送信バッファのDATAフィールドへ中継装置専用のECUIDを設定し、送信バッファをCANバスへ送信する。次に1506では変数REPROMAXTIMEへモード変更最大待ち時間を設定し、次の1507では車載制御装置番号RECECUID[n]からの応答を待つため、経過時間が最大時間を越えるまで待つ。超えた場合はNOとなるので、1508のRECECU[n]からの受信データを調べる処理を行う。ここで図15の処理の説明の途中ではあるが、リプロモードを受信した車載制御装置番号RECECUID[n]の車載制御装置の動作を図17のRECECUID[n]のリプロモード受信処理を説明する。
 図17は、RECECUID[n]のリプロモード受信処理である。1701でPowerKeep信号をオンしている。既にウェイクアップ時にオンしているので何の効果も無いが、何度オンにしても影響は無い。次に1702では受信バッファのCANIDフィールドのデータを変数CANIDへ設定し、受信バッファのCMDフィールドのデータを変数CMANDへ設定する。次に1703において変数CMANDが”REPRO_MODE”か判定し、NOならば終了し、YESならば1704において受信バッファのDATAフィールドのデータを変数DATAへ設定する。次に、1705において車載制御装置をリプロモードへ設定し、リプロモードに設定したことを中継装置へ通知するために1706において送信バッファのCANIDフィールドへ中継装置専用CANIDを設定し、送信バッファのCMDフィールドへリプロモード設定完了を意味する”REPRO_RESPONSE”を設定し、送信バッファのDATAフィールドへ車載制御装置自身のECUIDを設定する。次に1707で送信バッファをCANバスへ送信することで中継装置へリプロモード設定完了を通知している。
 以上で図17の車載制御装置の説明を終了し、再び中継装置の図15の1508の説明へ戻る。1508では、受信バッファのCANIDフィールドのデータを変数CANIDへ設定し、受信バッファのCMDフィールドのデータを変数CMDへ設定し、受信バッファのDATAフィールドのデータを変数DATAへ設定している。次に1509において変数CMDが”REPRO_RESPONSE”であるかチェックする。ここでYESであれば1800においてRECECUID[n]の車載制御装置へ更新プログラム送信処理を実行する。もしNOであればRECECUID[n]の車載制御装置が異常であるため、1510の車載制御装置の書込み完了ビット配列RESULTECU[n]へ”NG”を設定している。このような異常が1つでもあれば書込み開始指令は失敗したことになる。次に1511において変数nがRECNと一致するかチェックし、不一致であれば1512においてnをインクリメントして150の実行を繰り返す。
すなわち受信した全ての更新プログラムと更新データを該当する車載制御装置へ送信完了したかチェックし、1800における送信処理が完了した場合に2100の書込み完了処理を実行して終了する。
 次に1800のRECECUID[n]へ更新プログラム送信処理の詳細を図18を用いて説明する。また2100の書込み完了処理は、その後に説明する。
 図18は、RECECUID[n]へ更新プログラム送信処理である。
中継装置がRECECUID[n]の車載制御装置へ更新プログラムと更新データを4バイト単位で送信し、送信完了後に書込み完了結果を車載制御装置から受信してその結果を記憶する処理を行っている。
まず1801では変数CMMANDへコマンド”WRITE”を設定し、次の1802では変数ECUIDへRECECUID[n]を設定し、変数SNDPADRへERCECUPADR[n]を設定し、変数PSIZEへRECECUPSIZE[n]を設定し、変数PROGDATAADRへRECECUPROGDATA[n]の先頭アドレスを設定し、変数SNDPDATAへPROGDATAADRから4バイトデータを設定し、変数SNDSIZEへ0を設定している。次に1803では変数CANIDへ送信先の車載制御装置ECUID専用CANIDを設定し、1804では送信バッファのCANIDフィールドへ変数CANIDを設定し、送信バッファのCMDフィールドへ変数CMMANDを設定し、送信バッファのPADRフィールドへ変数SNDPADRを設定し、送信バッファのDATAフィールドへ変数SNDPDATAを設定している。次の1805では送信バッファの内容をCANバスへ送信している。以上の処理で更新プログラムと更新データの最初の書込みアドレスと更新プログラムと更新データの最初の4バイトデータを車載制御措置へ送信できた。次に1806では、更新プログラムと更新データの次の4バイトデータを送信するための準備を行っている。すなわち変数PROGDATAADRを4インクリメントし、変数SNDPDATAへ変数PROGDATAADRで示すアドレスから4バイトデータをセットし、変数SNDPADRを4インクリメントし、変数SNDSIZEも4インクリメントしている。これにより、更新プログラムと更新データの次の4バイトデータと、書込みアドレスをそれぞれ設定できたことになる。次の1807では、更新プログラムと更新データを当該車載制御装置へ送信したかチェックするため、変数SNDSIZEと変数PSIZEが一致したかチェックしている。NOであれば1804へ戻り送信処理を繰り返す。YESであれば1808を実行し、変数CMMANDへ送信完了を意味する”END”を設定し、送信バッファのCANIDフィールドへECUID専用のCANIDを設定し、送信バッファのCMDフィールドへ変数CMMANDを設定し、送信バッファの内容をCANバスへ送信する。以上でRECECUID[n]の車載制御装置へ更新プログラムと更新データを全て送信したことになるので、2000のRECECUID[n]の書込み完了処理を実行して終了する。図18の処理は、図15の1800から実行されているので、図15の1511からわかるように、全ての更新プログラムと更新データを送信している。
 以上中継装置から車載制御装置へ更新プログラムと更新データを送信する処理を説明したが、次に図19を用いて、更新プログラムと更新データを受信する車載制御装置の書込み処理について説明する。またその後で2000のRECECUID[n]の書込み完了処理を説明する。
 図19は、RECECUID[n]の書込み処理である。
 車載制御装置RECECUID[n]の書込み処理は、受信割り込みで起動される。
本プログラムは、図8Aの車載制御装置の制御プログラム、データ格納エリア8A03領域へ更新プログラムと更新データを書込む処理を行うが、本領域はフラッシュメモリであるため、本来ならば最初に本領域に既に書込まれているプログラムとデータを消去してから書込む必要がある。しかし消去処理は本実施例では発明の本質とは無関係であることと簡単化のため、省略して説明する。1901では受信バッファのCANIDフィールドのデータを変数CANIDへ設定し、受信バッファのCMDフィールドのデータを変数CMANDへ設定している。次に、1902では変数CANIDと自車載制御装置のCANIDの一致チェックを行い、NOならば他車載制御装置への送信データと判断し終了する。YESなら1903において変数CMANDが”WRITE”であるかチェックし、YESなら書込みコマンドと判定し、1904において変数SNDPADRへ受信バッファのPADRフィールドのデータSNDPADRをセットし、変数SNDPDATAへ受信バッファのDATAフィールドのデータSNDPDATAをセットする。次の1905~1907は、図8Aの8A03の制御プログラム、データを書き換える処理である。まず1905において書込みアドレス設定レジスタMADRへ変数SNDPADRを設定し、1906にて書込みデータ設定レジスタMDATAへ変数SNDPDATAを設定し、1907においてコマンドレジスタMCOMヘ書込みコマンドWRITEを設定している。書込みの実行はMCOMレジスタへWRITEコマンドが設定された時点で開始されるので、更新プログラムと更新データの4バイトを保持する変数SNDPDATAが8A03の領域のアドレスSNDPADRへ書込まれたことになる。次に1908において書込みが成功したかチェックするため状態レジスタROMStatusにエラーERRORを検出したかを判定している。YESであれば4バイトの書込みは失敗したことを意味するので、1909で変数ERRStatusへ”NG”をセットして終了する。もしNOならば4バイトの書込みは成功したので終了する。以上述べた処理は4バイトの書込み処理であるが、本処理は図18の1805において送信されたデータに基づいて行われた処理である。図18では1807で更新プログラムと更新データの全てを送信する処理を繰り返すので、本処理も同様に受信する度に繰返すことになる。一方、1903においてNOである場合は、更新プログラムと更新データ全てを書込み完了した後に中継装置から送信されるコマンド”END”であるかチェックし、当該制御装置の書込み完了を中継装置へ通知する処理である。まず1910において変数CMANDが”END”であるかチェックし、NOならば終了とする。YESならば1911にて変数CANIDへ中継装置専用CANIDをセットし、1912にて変数CMMANDへ”END”の応答を意味する”RESPONSE”をセットし、1913では変数SNDPDATAへ変数ERRStatusをセットし、1914において送信バッファのCANIDフィールドへ変数CANIDをセットし、送信バッファのCMDフィールドへ変数CMMANDをセットし、送信バッファのDATAフィールドへ変数SNDPDATAをセットし、次の1915において送信バッファの内容をCANバスへ送信している。以上で、4バイトの書込み処理とその結果を中継装置へ通知を終了したので、次の1916では車載制御装置の動作モードをリプロモードから通常動作モードへ変更し、1917でPowerKeep信号をオフして終了している。
 次に図18から実行される2000のRECECUID[n]の書込み完了処理について詳細に説明する。
 図20は、RECECUID[n]の書込み完了処理である。2010では“CANバスから受信有り?”をチェックしている。これは車載制御装置RECECUID[n]から”RESPONSE”応答の受信をチェックしている処理である。YESであれば2020において変数RESCANIDへ受信バッファのCANIDフィールドのデータCANIDを設定し、変数RESCMDへ受信バッファのCMDフィールドのデータCMMANDを設定し、変数RESULTへ受信バッファのDATAフィールドのデータSNDPDATAを設定する。次に2030では変数CANIDが中継装置専用CANIDと一致するかチェックし、NOであれば中継装置の受信データでは無いので終了する。もしYESであれば、次の2040において変数RESCMDがコマンド”RESPONSE”と一致するかチェックし、NOならば終了する。もしYESならば変数RESULTには書込み完了結果が格納されているので、次の2050でRECECUIDの書込み完了ビット配列RESULTECU[n]へ変数RESULTを格納して終了する。以上で、RECECUID[n]の更新プログラムと更新データ書込み完了結果がRESULTECU[n]に格納された。
 処理全体構成を振り返って見れば分かるように、書込み開始は図14の処理から開始され、書込み開始条件が成立すると、図15の書込み処理が実行され、ここで全ての更新プログラムと更新データをその車載制御装置へ書込む処理を呼び出す処理を繰返している。この繰返しの中に図18のRECECUID[n]へ更新プログラム送信処理が存在し、さらに図18の処理の中で図20のRECECUID[n]の書込み完了処理が実行されている。従って、図20のRECECUID[n]の書込み完了処理は、更新プログラムと更新データに対応する車載制御装置の全てに対して実行されたことになる。
 次に図15において、全ての更新プログラムと更新データを対応する車載制御装置へ書込み完了した後に、実行される2100の書込み完了処理を図21を用いて説明する。
 図21は、書込み完了処理である。2101では変数nへ1をセットし、2102でRECECUID[n]の車載制御装置の書込み完了ビットRESULTECU[n]が”OK”かチェックしている。NOであれば書込み異常が発生したことを意味するので2112において図7に記載の書込み完了ビットをオフに設定し、2113で書込み完了表示器を消灯し、2114で外部センタへ書込み失敗を意味する書込み未完了通知を行い、最後に2115で中継装置のPowerKeep信号をオフにして終了する。一方、2102においてYESであれば変数nがRECNと一致したかチェックし、NOならば変数nをインクリメントして2102を繰り返し実行する。YESであれば、全ての書込み処理の結果が”OK”であることを意味するので、2105において書込み完了ビットをオンに設定し、2106において書込み完了表示器を点灯し、2107において外部センタへ正常に書込み完了が終了したことを意味する書込み完了通知を行い、2108において全ての処理が終了したのでメモリ蓄積完了ビットをオフに設定し、2109においてメモリ蓄積完了表示器を消灯し、2110で中継装置のPowerKeep信号をオフにして終了する。
 次に車両に搭載された書込み開始指令ボタンにより書込み開始を実現するケースの実施例を詳細に説明する。本ケースは、請求項10~13に関するものである。請求項1~3の実施例も含んでいる。
 本実施例は、図10の書込みボタンによる書込み処理概要の詳細な処理動作を説明する。ただし、既に図11の中継装置のメモリ蓄積完了処理は、詳細に説明したので、図10の1010以降の処理について説明する。
 図22は、書込み開始指令ボタンによる書込み開始指令処理である。本処理プログラム2200は500ms毎に起動するプログラムである。本プログラムが起動すると、2201において書込み開始指令ボタンがオンであるかチェックし、NOであれば終了する。もしYESならば2202のメモリ蓄積完了ビットがオンかチェックし、NOであれば終了する。もしYESならば2203のイグニッションがオンかチェックし、NOであれば終了する。もしYESならば2204のシフトギア位置がパーキング位置であるかチェックし、NOであれば終了する。イグニッションがオンであれば車両が走行中である可能性があるため、シフトギア位置がパーキング位置であることで車両が停止していることを確認している。もしYESであれば時計から現在時刻を得て、2205において変数Tへ現在時刻をセットする。次に2206の判定文RECST2 < T < RECET2により第2の時間帯に書込み開始指令ボタンが押されたかチェックしている。NOであれば書込みを行わずに終了する。もしYESならば無負荷時と負荷接続時の電圧チェック処理2600を行い、その結果2206Aで変数RESULTVOLが”OK”であるかチェックし、YESなら2300のボタンによる書込み開始処理を実行して終了する。NOなら何もせず終了する。ここで変数RESULTVOLは、電圧チェック処理にて、無負荷時と負荷接続時のバッテリ電圧が基準電圧以上であれば”OK”がセットされ、基準電圧以下ならば”NG”がセットされている。詳しくは図26で説明する。
 以上述べた処理は、請求項13の実施例である。しかし請求項10の実施例としては2203、2204、2205、2206を省略した処理フローである。請求項11の実施例としては2205、2206を省略した処理フローであり、請求項12の実施例としては2203、2204を省略した処理フローである。
 図26は、電圧チェック処理である。
 最初に無負荷時のバッテリ電圧チェックを行い、次に負荷接続時のバッテリ電圧チェックを行っている。最初に2601でリレー回路制御信号384へオフを出力する。この結果バッテリ電源線173に負荷381は接続されず無負荷時の状態になる。次に2602で基準電圧Ref信号386へ第1の基準電圧を出力し、次に2603で電圧観測パルス信号389をオンする。2604にて経過時間が第1の規定時間以上かチェックし、NOならば2603を繰返し実行する。YESならば2605にて電圧観測パルス信号389をオフし、2606で変数RESULTVOL_1へフリップフロップ回路出力信号390をセットする。
 以上で無負荷時のバッテリ電圧が第1の基準電圧以上であるか、その結果が変数RESULTVOL_1にセットされたことになる。
次に負荷接続時のバッテリ電圧チェックを行う。2607でリレー回路制御信号384をオンする。これによりバッテリ電源線173と負荷381は接続された。次に2608で基準電圧Ref信号386へ第2の基準電圧をセットし、2609で電圧観測パルス信号389をオンする。次の2610で経過時間が第2の規定時間以上かチェックし、NOならば2609を繰返す。YESならば、2611で電圧観測パルス信号389をオフし、2612で変数RESULTVOL_2へプリップフロップ回路出力信号390をセットする。
 以上で負荷接続時のバッテリ電圧が第2の基準電圧以上であるか、その結果が変数RESULTVOL_2にセットされたことになる。
次に2613で変数RESULVOL_1または変数RESULVOL_2をORしてその結果が1であるかチェックしている。NOならば2615で変数RESULTVOLへ”NG”をセットし、2616でバッテリ電圧異常表示器188を点灯して終了する。もしYESならば2614で変数RESULTVOLへ”OK”をセットし、2617でバッテリ電圧正常表示器190を点灯して終了する。
 以上で無負荷時と負荷接続時の電圧チェック処理の説明を終了する。
 次に図23のボタンによる書込み開始処理を詳細に説明する。
2301において変数nへ1をセットし、2302において送信バッファのCANIDフィールドへRECECUID[n]専用のCANIDをセットし、送信バッファのCMDフィールドへリプロモードコマンド”REPRO_MODE”をセット、送信バッファのDATAフィールドへ中継装置のECUIDをセットし、送信バッファの内容をCANバスへ送信している。以上の処理は、イグニッションがオンであるため車載制御装置の電源はオンであるので、中継装置はウェイクアップパターンを送信せずに、リプロモード遷移要求コマンド”REPRO_MODE”を送信している。次に2303において変数REPROMAXTIMEへモード変更最大待ち時間をセットし、2304にてREPROMAXTIME時間が経過するまで待つ処理を行っている。経過した場合はNOとなり、2305において変数CANIDへ受信バッファのCANIDフィールドのデータCANIDをセットし、変数CMDへ受信バッファのCMDフィールドのデータCMDをセットし、変数DATAへ受信バッファのDATAフィールドのデータDATAをセットしている。次に、2306において変数CMDが”REPRO_RESPONSE”と一致するかチェックし、NOならば異常と判定して2307のRESULTECU[n]へ”NG”を設定する。もしYESならば1800の“RECECUID[n]へ更新プログラム送信処理”を実行し、2308の変数nがRECNと一致したかチェックする。NOであれば、全ての更新プログラムと更新データを送信していないので、2309において変数nをインクリメントして2302を繰返し実行する。もし2308においてYESであれば2100の書込み完了処理を実行して終了する。以上述べた処理2301~2310は、図15の1504~1513と全く同一である。従って1800の“RECECUID[n]へ更新プログラム送信処理”と2100の書込み完了処理は、再度説明する必要は無いので省略する。
 図27はバッテリ電圧チェック回路を内蔵したバッテリ電圧チェック装置である。バッテリ電圧チェック回路は、必ずしも中継装置だけに具備する必要は無い。本構成は、バッテリ電圧チェック回路を内蔵したバッテリ電圧チェック装置を車載ネットワークへ接続し、更新プログラムと更新データを書込む前にバッテリ電圧チェック装置から電圧チェック結果の信号を車載ネットワークを介して取得することで書込み可否判断が可能となる。図27の2700はバッテリ電圧チェック装置であり、2701はマイコン、2702は車載LAN通信部、2703はROM、2704はRAMであり、173はバッテリ電源線、129はバッテリ電圧チェック回路である。バッテリ電圧チェック装置は、一定周期ごとにバッテリ172の電圧を電源線173からバッテリ電圧チェック回路129を用いて電圧を監視し、その結果を車載ネットワークを介して中継装置120へ通知する。
 以上、請求項4~7の実施例と、請求項10~13の実施例の詳細を説明した。また請求項1~3、8~9の実施例も詳細説明の中で説明した。
 請求項14の実施例は、請求項1の実施例において更新プログラムデータの代わりに更新地図データとして扱えば実現できるので詳細な説明は省略する。
 請求項15の実施例は、請求項1の実施例において中継装置には内蔵したバッテリ電圧チェック回路が無く、バッテリ電圧チェック装置がバッテリ電圧チェック回路を内蔵し、車載ネットワークを介して中継装置へバッテリ電圧チェック結果の信号を通知している点が異なるだけなので詳細な説明は省略する。
 以上、本発明の一実施例を説明したが、本発明によれば、車両に搭載された中継装置は、車両走行中などバッテリ充電状態のイグニッションがオン状態において外部のセンタから送信された更新プログラムデータを中継装置が受信できる。さらに中継装置は、走行に係わる車載制御装置とは無関係であり、運転者が不便を感じること無く更新プログラムデータを安全に蓄積できる。また更新プログラムとデータの書込み処理は、運転者が車両に乗車していないケースでは、車両が自宅または他の駐車場に駐車している場合でも、あるいは真夜中であってもイグニッションがオフ状態であっても、無負荷時と負荷接続時のバッテリ電圧チェックを行うことによって車両所有者の約束の時間帯に車載制御装置へ更新プログラムと更新データを安全に書込むことができる。また運転者が車両に乗車しているケースでは、運転者の都合の良い時間に、イグニッションをオン状態に設定し、車両のシフトギア位置をパーキングに設定した後に書込み開始指令ボタンを押すことによってまず無負荷時と負荷接続時のバッテリ電圧チェックを行い、その結果バッテリ電圧が基準電圧以上であれば、安全に書込みを実行し、さらに書込み時刻が第2の時間帯の範囲内かチェックすることで車両所有者との約束の時間帯に書込みを実行できる。
 これにより更新プログラムと更新データを安全かつ運転者に不便を感じさせること無く、車載制御装置へ書込むことができる。
 120・・・中継装置
 130,140,150・・・車載制御装置
 129・・・電圧チェック回路
 160・・・車載ネットワーク
 2700・・・バッテリ電圧チェック装置

Claims (15)

  1.  車両に搭載された機器の動作を制御プログラムで制御する複数の車載制御装置と、外部センタから送信された前記車載制御装置の更新プログラムと更新データなどを含む更新プログラムデータを受信してメモリへ蓄積する中継装置と、を備え、前記車載制御装置と前記中継装置は車載ネットワークで接続された車載プログラム書込み装置において、
     前記中継装置は、バッテリ電圧チェック回路を備え、
     前記車載制御装置へ前記更新プログラムと更新データを書込む前に前記バッテリ電圧チェック回路による無負荷時と負荷接続時のバッテリ電圧チェックを行い、
     バッテリ電圧が無負荷時に第1の基準電圧以上、または、負荷接続時に第2の基準電圧以上である場合は書込みを実行し、その他の場合には書込みを実行しないことを特徴とする車載プログラム書込み装置。
  2.  請求項1に記載の車載プログラム書込み装置において、
     前記中継装置は、バッテリ電圧異常表示器を備え、
     前記バッテリ電圧チェック回路による無負荷時と負荷接続時のバッテリ電圧チェックを行い、バッテリ電圧が第1の基準電圧以下かつ第2の基準電圧以下である場合に前記バッテリ電圧異常表示器を点灯することを特徴とする車載プログラム書込み装置。
  3.  請求項1に記載の車載プログラム書込み装置において、
     前記中継装置は、バッテリ電圧正常表示器を備え、
     前記バッテリ電圧チェック回路による無負荷時と負荷接続時のバッテリ電圧チェックを行い、バッテリ電圧が第1の基準電圧以上または第2の基準電圧以上である場合に前記バッテリ電圧正常表示器を点灯することを特徴とする車載プログラム書込み装置。
  4.  車両に搭載された機器の動作を制御プログラムで制御する複数の車載制御装置と、外部センタから送信された前記車載制御装置の更新プログラムと更新データなどを含む更新プログラムデータを受信してメモリへ蓄積する中継装置と、を備え、前記車載制御装置は前記制御プログラムを実行する通常動作モードと前記制御プログラムを更新プログラムへ書き換えるリプロモードを有し、前記車載制御装置と前記中継装置は車載ネットワークで接続された車載プログラム書込み装置において、
     前記中継装置は、バッテリ電圧チェック回路を備え、
     予め決められた第1の時間帯以前に外部センタから送信された複数の車載制御装置の更新プログラムデータをイグニッションがオン状態の場合に受信する手段と、
     外部センタから前記第1の時間帯に送信された書込み開始指令を受信した場合に、前記バッテリ電圧チェック回路による無負荷時と負荷接続時のバッテリ電圧チェックを行い、バッテリ電圧が無負荷時に第1の基準電圧以上、または、負荷接続時に第2の基準電圧以上であれば前記車載制御装置をウェイクアップ起動し前記リプロモードへ遷移させる手段と、
     前記車載制御装置は、前記中継装置へリプロモード遷移を通知し、
     前記中継装置は、前記車載制御装置からの前記リプロモード遷移通知と前記メモリへ蓄積された当該車載制御装置の更新プログラムデータの有無に基づき当該車載制御装置へ更新プログラムと更新データの書き込みを前記第1の時間帯に実行することを特徴とする車載プログラム書込み装置。
  5.  請求項4に記載の車載プログラム書込み装置おいて、
     外部センタから前記第1の時間帯の範囲内に送信された書込み開始指令を受信し、かつ、イグニッションがオフ状態の場合に、前記バッテリ電圧チェック回路による無負荷時と負荷接続時のバッテリ電圧チェックを行い、
     バッテリ電圧が無負荷時に第1の基準電圧以上、または、負荷接続時に第2の基準電圧以上であれば前記車載制御装置をウェイクアップ起動し、前記リプロモードへ遷移させる手段を有し、
     前記車載制御装置は、前記中継装置へリプロモード遷移を通知し、
     前記中継装置は、車載制御装置からの前記リプロモード遷移通知と前記メモリへ蓄積された当該車載制御装置の更新プログラムデータの有無に基づき当該車載制御装置へ更新プログラムと更新データの書き込みを前記第1の時間帯に実行することを特徴とする車載プログラム書込み装置。
  6.  車両に搭載された機器の動作を制御プログラムで制御する複数の車載制御装置と、外部センタから送信された前記車載制御装置の更新プログラムと更新データと書込み開始指令を実行する第2の時間帯を含む更新プログラムデータを受信してメモリへ蓄積する中継装置と、を備え、前記車載制御装置は前記制御プログラムを実行する通常動作モードと前記制御プログラムを更新プログラムへ書き換えるリプロモードを有し、前記車載制御装置と前記中継装置は車載ネットワークで接続された車載プログラム書込み装置において、
     前記中継装置は、バッテリ電圧チェック回路と、
     前記第2の時間帯以前に外部センタから送信された複数の車載制御装置の更新プログラムデータをイグニッションがオン状態の場合に受信する手段を有し、車両に搭載された時計に基づいて前記第2の時間帯に前記バッテリ電圧チェック回路による無負荷時と負荷接続時のバッテリ電圧チェックを行い、バッテリ電圧が無負荷時に第1の基準電圧以上、または、負荷接続時に第2の基準電圧以上であれば前記車載制御装置をウェイクアップ起動し、前記リプロモードへ遷移させる手段とを有し、
     前記車載制御装置は、前記中継装置へリプロモード遷移を通知し、
     前記中継装置は、車載制御装置からの前記リプロモード遷移通知と前記メモリへ蓄積された当該車載制御装置の更新プログラムデータの有無に基づき当該車載制御装置へ更新プログラムと更新データの書き込みを前記第2の時間帯に実行することを特徴とする車載プログラム書込み装置。
  7.  請求項6に記載の車載プログラム書込み装置おいて、
     イグニッションがオフ状態の場合に車両に搭載された時計に基づいて前記第2の時間帯に前記バッテリ電圧チェック回路による無負荷時と負荷接続時のバッテリ電圧チェックを行い、
     バッテリ電圧が無負荷時に第1の基準電圧以上、または、負荷接続時に第2の基準電圧以上であれば前記車載制御装置をウェイクアップ起動し、前記リプロモードへ遷移させる手段を有し、
     前記車載制御装置は、前記中継装置へリプロモード遷移を通知し、
     前記中継装置は、車載制御装置からの前記リプロモード遷移通知と前記メモリへ蓄積された当該車載制御装置の更新プログラムデータの有無に基づき当該車載制御装置へ更新プログラムと更新データの書き込みを前記第2の時間帯に実行することを特徴とする車載プログラム書込み装置。
  8.  請求項1乃至7のいずれかに記載の車載プログラム書込み装置において、
     前記中継装置は、外部センタから複数の車載制御装置の更新プログラムデータの受信を完了すると車両内のメモリ蓄積完了表示器を点灯し、かつ、前記外部センタへメモリ蓄積完了通知を行うことを特徴とする車両に搭載されたバッテリ電圧チェック機能を有する車載プログラム書込み装置。
  9.  請求項1乃至8のいずれかに記載の車載プログラム書込み装置において、
     前記複数の車載制御装置は、更新プログラムと更新データの書込み完了後に中継装置へ書込み完了通知手段を有し、
     前記中継装置は、全ての複数の車載制御装置からの書込み完了通知を受信した後に、車両内の書込み完了表示器を点灯し、かつ、外部センタへ更新完了通知を実行することを特徴とする車載プログラム書込み装置。
  10.  車両に搭載された機器の動作を制御プログラムで制御する複数の車載制御装置と、外部センタから送信された前記車載制御装置の更新プログラムと更新データを含む更新プログラムデータを受信しメモリへ蓄積する中継装置と、を備え、前記車載制御装置は前記制御プログラムを実行する通常動作モードと前記制御プログラムを更新プログラムへ書き換えるリプロモードを有し、前記車載制御装置と前記中継装置は車載ネットワークで接続された車載プログラム書込み装置において、
     前記中継装置は、メモリ蓄積完了表示器と書込み開始指令ボタンと書込み完了表示器とバッテリ電圧チェック回路と、外部センタから送信された複数の車載制御装置の更新プログラムデータをイグニッションがオン状態の場合に受信する手段と、を有し、
     受信完了した場合に前記メモリ蓄積完了表示器を点灯し、
     前記メモリ蓄積完了表示器が点灯しかつ前記書込み開始指令ボタンがオンである場合に、前記バッテリ電圧チェック回路による無負荷時と負荷接続時のバッテリ電圧チェックを行い、バッテリ電圧が無負荷時に第1の基準電圧以上、または、負荷接続時に第2の基準電圧以上であれば前記車載制御装置へ更新プログラムと更新データの書き込みを開始し、
     書込みを完了した後に前記書込み完了表示器を点灯し、
     前記メモリ蓄積完了表示器が消灯またはバッテリ電圧が前記第1の基準電圧以下かつ第2の基準電圧以下であれば、前記書込み開始指令ボタンをオンにしても更新プログラムと更新データの書込みを実行しないことを特徴とする車載プログラム書込み装置。
  11.  請求項10に記載の車載プログラム書込み装置において、
     前記メモリ蓄積完了表示器が点灯しかつイグニッションがオン状態でかつ車両のシフトギア位置がパーキングでかつ前記書込み開始指令ボタンがオンである場合に、前記バッテリ電圧チェック回路による無負荷時と負荷接続時のバッテリ電圧チェックを行い、バッテリ電圧が無負荷時に第1の基準電圧以上、または負荷接続時に第2の基準電圧以上であれば前記車載制御装置へ更新プログラムと更新データの書き込みを開始し、書込みを完了した後に前記書込み完了表示器を点灯し、
     前記メモリ蓄積完了表示器が消灯またはイグニッションがオフ状態または車両のシフトギアがパーキング以外の位置またはバッテリ電圧が前記第1の基準電圧以下かつ第2の基準電圧以下であれば、前記書込み開始指令ボタンをオンにしても更新プログラムと更新データの書込みを実行しないことを特徴とする車載プログラム書込み装置。
  12.  車両に搭載された機器の動作を制御プログラムで制御する複数の車載制御装置と、外部センタから送信された前記車載制御装置の更新プログラムと更新データと第2の時間帯を含む更新プログラムデータを受信しメモリへ蓄積する中継装置と、を備え、前記車載制御装置は前記制御プログラムを実行する通常動作モードと前記制御プログラムを更新プログラムへ書き換えるリプロモードを有し、前記車載制御装置と前記中継装置は車載ネットワークで接続された車載プログラム書込み装置において、
     前記中継装置は、メモリ蓄積完了表示器と書込み開始指令ボタンと書込み完了表示器とバッテリ電圧チェック回路と、を有し、
     前記中継装置は、外部センタから送信された複数の車載制御装置の更新プログラムデータをイグニッションがオンの場合に受信する手段と、
     受信完了した場合に前記メモリ蓄積完了表示器を点灯する手段と、
     前記メモリ蓄積完了表示器が点灯しかつ前記書込み開始指令ボタンのオンを検出したとき、前記検出時刻が前記第2の時間帯の範囲内であれば、前記電圧チェック回路による無負荷時と負荷接続時のバッテリ電圧チェックを行い、バッテリ電圧が無負荷時に第1の基準電圧以上または負荷接続時に第2の基準電圧以上の場合に前記車載制御装置へ更新プログラムと更新データの書き込みを第2の時間帯に実行し、前記複数の車載制御装置への書込みが完了後に前記書込み完了表示器を点灯し、前記メモリ蓄積完了表示が消灯または前記検出時刻が前記第2の時間帯の範囲外またはバッテリ電圧が第1の基準電圧以下でかつ第2の基準電圧以下であれば書込みを実行しない手段と、を有することを特徴とする車載プログラム書込み装置。
  13.  請求項12に記載の車載プログラム書込み装置において、
     前記メモリ蓄積完了表示器が点灯しかつイグニッションがオン状態でかつ車両のシフトギア位置がパーキングでかつ前記書込み開始指令ボタンのオンを検出したとき、前記検出時刻が前記第2の時間帯の範囲内であれば、前記電圧チェック回路による無負荷時と負荷接続時のバッテリ電圧チェックを行い、バッテリ電圧が無負荷時に第1の基準電圧以上、または負荷接続時に第2の基準電圧以上の場合に前記車載制御装置へ更新プログラムと更新データの書き込みを第2の時間帯に実行し、前記複数の車載制御装置への書込みが完了後に前記書込み完了表示器を点灯し、前記メモリ蓄積完了表示が消灯またはイグニッションがオフ状態または車両のシフトギアがパーキング以外の位置または前記書込み開始指令ボタンのオンを検出した時刻が前記第2の時間帯の範囲外またはバッテリ電圧が第1の基準電圧以下でかつ第2の基準電圧以下であれば、書込みを実行しない手段を有することを特徴とする車載プログラム書換え装置。
  14.  車両に搭載された機器の動作を地図データに基づき制御する車載制御装置と、外部センタから送信された前記車載制御装置の更新地図データを受信してメモリへ蓄積する中継装置と、を備え、前記車載制御装置と前記中継装置は車載ネットワークで接続された地図データ書込み装置において、
     前記中継装置は、バッテリ電圧チェック回路を備え、
     前記車載制御装置へ前記更新地図データを書込む前に前記バッテリ電圧チェック回路による無負荷時と負荷接続時のバッテリ電圧チェックを行い、
     バッテリ電圧が無負荷時に第1の基準電圧以上、または、負荷接続時に第2の基準電圧以上である場合に書込みを実行し、その他の場合には書込みを実行しないことを特徴とする地図データ書込み装置。
  15.  車両に搭載された機器の動作を制御プログラムで制御する複数の車載制御装置と、外部センタから送信された前記車載制御装置の更新プログラムと更新データなどを含む更新プログラムデータを受信してメモリへ蓄積する中継装置と、バッテリ電圧チェック装置と、を備え、前記車載制御装置と前記中継装置と前記バッテリ電圧チェック装置とは車載ネットワークで接続された車載プログラム書込み装置において、
     前記バッテリ電圧チェック装置は、バッテリ電圧チェック回路を備え、
     前記バッテリ電圧チェック回路は、無負荷時と負荷接続時のバッテリ電圧チェックを行い、バッテリ電圧が無負荷時に第1の基準電圧以上、または、負荷接続時に第2の基準電圧以上であるかを示すバッテリ状態信号を前記車載ネットワークへ送信し、
     前記中継装置は、受信した前記バッテリ状態信号に基づき書込みを実行または書込みを実行しないことを特徴とする車載プログラム書込み装置。
PCT/JP2015/066432 2014-06-18 2015-06-08 車載プログラム書込み装置 WO2015194406A1 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
EP15810231.9A EP3159221B1 (en) 2014-06-18 2015-06-08 Vehicle-mounted program writing device
CN201580028638.9A CN106458113B (zh) 2014-06-18 2015-06-08 车载程序写入装置以及地图数据写入装置
US15/310,633 US10310838B2 (en) 2014-06-18 2015-06-08 Vehicle-mounted program writing device
JP2016529247A JP6347834B2 (ja) 2014-06-18 2015-06-08 車載プログラム書込み装置および地図データ書込み装置

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2014-124891 2014-06-18
JP2014124891 2014-06-18

Publications (1)

Publication Number Publication Date
WO2015194406A1 true WO2015194406A1 (ja) 2015-12-23

Family

ID=54935393

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2015/066432 WO2015194406A1 (ja) 2014-06-18 2015-06-08 車載プログラム書込み装置

Country Status (5)

Country Link
US (1) US10310838B2 (ja)
EP (1) EP3159221B1 (ja)
JP (1) JP6347834B2 (ja)
CN (1) CN106458113B (ja)
WO (1) WO2015194406A1 (ja)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018043381A1 (ja) * 2016-09-02 2018-03-08 株式会社オートネットワーク技術研究所 車載更新システム、車載更新装置及び通信装置の更新方法
JP2018060323A (ja) * 2016-10-04 2018-04-12 株式会社オートネットワーク技術研究所 車載更新システム、車載更新装置、車載機器及び更新方法
JP2019073106A (ja) * 2017-10-13 2019-05-16 株式会社デンソー 電子制御装置
CN109885342A (zh) * 2019-02-25 2019-06-14 深圳警翼智能科技股份有限公司 一种执法记录仪的系统程序修复方法
WO2021106604A1 (ja) * 2019-11-28 2021-06-03 株式会社オートネットワーク技術研究所 車載中継装置、プログラム及び中継方法
CN113238777A (zh) * 2021-05-20 2021-08-10 网易(杭州)网络有限公司 应用程序更新方法、装置、设备及存储介质
JP2022160927A (ja) * 2021-04-07 2022-10-20 矢崎総業株式会社 車載ソフトウェア更新方法および車載システム

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6369332B2 (ja) * 2015-01-05 2018-08-08 株式会社オートネットワーク技術研究所 車載中継装置
JP6281535B2 (ja) * 2015-07-23 2018-02-21 株式会社デンソー 中継装置、ecu、及び、車載システム
JP6135723B2 (ja) * 2015-08-20 2017-05-31 コベルコ建機株式会社 建設機械及びこれを備えたプログラム書き換えシステム
JP6384733B2 (ja) * 2015-11-20 2018-09-05 本田技研工業株式会社 通信システム、及び制御装置
JP6696417B2 (ja) * 2016-12-20 2020-05-20 株式会社オートネットワーク技術研究所 車載更新装置、更新システム及び可搬型通信器
WO2019021064A1 (en) 2017-07-25 2019-01-31 Aurora Labs Ltd CONSTRUCTION OF SOFTWARE DELTA UPDATES FOR VEHICLE ECU SOFTWARE AND TOOL-BASED ANOMALY DETECTION
JP6881150B2 (ja) * 2017-08-16 2021-06-02 住友電気工業株式会社 制御装置、制御方法、およびコンピュータプログラム
DE102017125172A1 (de) * 2017-10-26 2019-05-02 Schréder S.A. Verfahren zur Aktualisierung eines Bootloaders eines Controllers einer Leuchte
JP6922667B2 (ja) * 2017-11-06 2021-08-18 株式会社オートネットワーク技術研究所 プログラム更新装置、プログラム更新システム及びプログラム更新方法
JP6958308B2 (ja) * 2017-12-11 2021-11-02 株式会社オートネットワーク技術研究所 車載更新装置、プログラム及び、プログラム又はデータの更新方法
KR102053272B1 (ko) * 2017-12-29 2019-12-06 주식회사 유라코퍼레이션 소프트웨어 업데이트 장치 및 이를 이용한 소프트웨어 업데이트 방법
US11356425B2 (en) 2018-11-30 2022-06-07 Paccar Inc Techniques for improving security of encrypted vehicle software updates
US11449327B2 (en) 2018-11-30 2022-09-20 Paccar Inc Error-resilient over-the-air software updates for vehicles
US11704106B2 (en) * 2019-11-08 2023-07-18 Toyota Jidosha Kabushiki Kaisha Program update system and vehicle management server
JP7519195B2 (ja) * 2020-03-19 2024-07-19 本田技研工業株式会社 ソフトウェア書換装置
JP2021149700A (ja) * 2020-03-19 2021-09-27 本田技研工業株式会社 ソフトウェア書換装置
CN111475187B (zh) * 2020-03-25 2023-09-08 一汽奔腾轿车有限公司 一种可单电控刷写与obd刷写的软件刷写设备
JP7287361B2 (ja) * 2020-07-30 2023-06-06 トヨタ自動車株式会社 車載システム
JP2022037805A (ja) * 2020-08-25 2022-03-09 トヨタ自動車株式会社 車載システム
JP7447768B2 (ja) * 2020-11-12 2024-03-12 トヨタ自動車株式会社 車載中継装置
US11681518B2 (en) * 2021-09-29 2023-06-20 Geotab Inc. Systems and methods for safe over-the-air update of electronic control units in vehicles
US11829748B1 (en) 2021-09-29 2023-11-28 Geotab Inc. Systems and methods for safe over-the-air update of electronic control units in vehicles

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012017719A1 (ja) * 2010-08-03 2012-02-09 本田技研工業株式会社 車両用プログラム書換えシステム
JP2014106875A (ja) * 2012-11-29 2014-06-09 Denso Corp 車載プログラム更新装置

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3375499B2 (ja) * 1996-10-08 2003-02-10 松下電器産業株式会社 ガス遮断装置
JP3956694B2 (ja) 2001-12-27 2007-08-08 株式会社デンソー 車両内情報通信システム及び車載電源制御ユニット
JP2004028000A (ja) * 2002-06-27 2004-01-29 Mitsubishi Electric Corp 通信による車載ecuのメモリ書き換え装置
JP4593095B2 (ja) 2003-08-29 2010-12-08 株式会社デンソー プログラム書込装置,プログラム書込システム,送信装置およびプログラム
US8290659B2 (en) 2003-12-15 2012-10-16 Hitachi, Ltd. Information updating method of vehicle-mounted control apparatus, update information communication system, vehicle-mounted control apparatus, and information management base station apparatus
JP2007011734A (ja) 2005-06-30 2007-01-18 Denso Corp 車載制御装置
US8417442B2 (en) * 2006-09-19 2013-04-09 Intuitive Control Systems, Llc Collection, monitoring, analyzing and reporting of traffic data via vehicle sensor devices placed at multiple remote locations
JP5078857B2 (ja) * 2008-12-01 2012-11-21 日立オートモティブシステムズ株式会社 リアルタイム制御ネットワークシステム
JP5273242B2 (ja) 2009-03-31 2013-08-28 トヨタ自動車株式会社 車載ソフトウェア更新装置
JP5229740B2 (ja) 2009-05-29 2013-07-03 Necインフロンティア株式会社 通信システム、送信装置、受信装置、ファームウェアの更新方法、及びプログラム
KR101360705B1 (ko) * 2011-09-22 2014-02-07 기아자동차주식회사 차량 업그레이드 시스템 및 그 방법
US9008907B2 (en) * 2013-05-31 2015-04-14 Hugh D Copeland Intelligent vehicle power control system and method

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012017719A1 (ja) * 2010-08-03 2012-02-09 本田技研工業株式会社 車両用プログラム書換えシステム
JP2014106875A (ja) * 2012-11-29 2014-06-09 Denso Corp 車載プログラム更新装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP3159221A4 *

Cited By (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018037022A (ja) * 2016-09-02 2018-03-08 株式会社オートネットワーク技術研究所 車載更新システム、車載更新装置及び通信装置の更新方法
CN109643254A (zh) * 2016-09-02 2019-04-16 株式会社自动网络技术研究所 车载更新系统、车载更新装置及通信装置的更新方法
WO2018043381A1 (ja) * 2016-09-02 2018-03-08 株式会社オートネットワーク技術研究所 車載更新システム、車載更新装置及び通信装置の更新方法
CN109643254B (zh) * 2016-09-02 2022-05-17 株式会社自动网络技术研究所 车载更新系统、车载更新装置及通信装置的更新方法
CN110300953A (zh) * 2016-10-04 2019-10-01 株式会社自动网络技术研究所 车载更新系统、车载更新装置、车载设备及更新方法
JP2018060323A (ja) * 2016-10-04 2018-04-12 株式会社オートネットワーク技術研究所 車載更新システム、車載更新装置、車載機器及び更新方法
WO2018066353A1 (ja) * 2016-10-04 2018-04-12 株式会社オートネットワーク技術研究所 車載更新システム、車載更新装置、車載機器及び更新方法
JP7091630B2 (ja) 2017-10-13 2022-06-28 株式会社デンソー 電子制御装置
JP2019073106A (ja) * 2017-10-13 2019-05-16 株式会社デンソー 電子制御装置
CN109885342A (zh) * 2019-02-25 2019-06-14 深圳警翼智能科技股份有限公司 一种执法记录仪的系统程序修复方法
CN109885342B (zh) * 2019-02-25 2022-11-08 深圳警翼智能科技股份有限公司 一种执法记录仪的系统程序修复方法
WO2021106604A1 (ja) * 2019-11-28 2021-06-03 株式会社オートネットワーク技術研究所 車載中継装置、プログラム及び中継方法
JP2021087138A (ja) * 2019-11-28 2021-06-03 株式会社オートネットワーク技術研究所 車載中継装置、プログラム及び中継方法
JP2022160927A (ja) * 2021-04-07 2022-10-20 矢崎総業株式会社 車載ソフトウェア更新方法および車載システム
JP7323569B2 (ja) 2021-04-07 2023-08-08 矢崎総業株式会社 車載ソフトウェア更新方法および車載システム
CN113238777A (zh) * 2021-05-20 2021-08-10 网易(杭州)网络有限公司 应用程序更新方法、装置、设备及存储介质
CN113238777B (zh) * 2021-05-20 2023-08-22 网易(杭州)网络有限公司 应用程序更新方法、装置、设备及存储介质

Also Published As

Publication number Publication date
CN106458113B (zh) 2019-09-10
EP3159221A1 (en) 2017-04-26
CN106458113A (zh) 2017-02-22
EP3159221A4 (en) 2018-02-21
JPWO2015194406A1 (ja) 2017-04-20
US20170075678A1 (en) 2017-03-16
US10310838B2 (en) 2019-06-04
EP3159221B1 (en) 2023-08-09
JP6347834B2 (ja) 2018-06-27

Similar Documents

Publication Publication Date Title
JP6347834B2 (ja) 車載プログラム書込み装置および地図データ書込み装置
JP6500147B2 (ja) 車載プログラム書込み装置
US20180341476A1 (en) Software updating device, software updating system, and software updating method
JP4722194B2 (ja) 車両のための書き換えシステム
WO2018096755A1 (ja) 並行処理装置及び並行処理プログラム
US10880404B2 (en) On-vehicle control device and on-vehicle control device information update system
WO2019181496A1 (ja) プログラム更新システム、プログラム更新方法及びコンピュータプログラム
US20070005204A1 (en) Vehicle-mounted data rewriting control system
US9446635B2 (en) Universal tire pressure sensor
US9446634B2 (en) Universal tire pressure sensor
US20130249279A1 (en) In-vehicle electronic device
CN104793975B (zh) 电子控制单元中应用程序的更新方法及装置
CN109308185A (zh) 胎压监测模块的升级方法及其装置、胎压传感器
US20220342653A1 (en) Ota master, center, system, update method, non-transitory storage medium, and vehicle
JP2015098311A (ja) 電子制御装置、ソフトウェア書き換えシステム
US10664291B2 (en) Tire pressure monitoring unit with expandable program library and method for supplementing a program library of a tire pressure monitoring unit
JP7031461B2 (ja) 車載装置
JP2000207194A (ja) 車載電子ユニット内の不揮発性メモリへのデ―タ書き込み方法
CN106951285B (zh) 用于存储器的更新装置
JP2020062981A (ja) 通信システム
US20220342651A1 (en) Center, ota master, system, distribution method, non-transitory storage medium, and vehicle
JP2018202940A (ja) ソフトウェア更新システム
JP2023045278A (ja) 車載システム
CN118426381A (zh) 车辆管理方法、装置、设备及存储介质
CN115139943A (zh) 车载电子系统、车辆、控制方法和计算机可读存储介质

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 15810231

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2016529247

Country of ref document: JP

Kind code of ref document: A

WWE Wipo information: entry into national phase

Ref document number: 15310633

Country of ref document: US

REEP Request for entry into the european phase

Ref document number: 2015810231

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 2015810231

Country of ref document: EP

NENP Non-entry into the national phase

Ref country code: DE