Vehicle control system and program writing method

The vehicle control system with a master control unit addresses the inefficiencies in ECU program management by writing programs during manufacturing, improving efficiency and reducing emissions.

JP7836703B2Active Publication Date: 2026-03-27HONDA MOTOR CO LTD
View PDF 4 Cites 0 Cited by

Patent Information

Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Filing Date
2022-03-31
Publication Date
2026-03-27

AI Technical Summary

Technical Problem

Managing ECU programs in vehicles during the manufacturing process is time-consuming, affecting efficiency and increasing carbon dioxide emissions, necessitating a method to streamline program management and verification.

Method used

A vehicle control system with a master control unit that writes programs to vehicle control units during manufacturing, eliminating the need for prior program installation, thereby simplifying the management process.

Benefits of technology

This approach reduces manufacturing time, enhances efficiency, and decreases carbon dioxide emissions by streamlining ECU program management and installation, allowing for faster integration of advanced vehicle technologies.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007836703000001
    Figure 0007836703000001
  • Figure 0007836703000002
    Figure 0007836703000002
  • Figure 0007836703000003
    Figure 0007836703000003
Patent Text Reader

Abstract

To improve vehicle manufacturing efficiency by shortening the work time for managing ECU programs installed on a vehicle.SOLUTION: A vehicle control system includes: vehicle control units that each include a nonvolatile program storage unit and control a functional unit installed on a vehicle by executing a program stored in the program storage unit; and a master control unit connected to the vehicle control units. The master control unit includes a nonvolatile master storage unit, stores write data for writing a program into the program storage unit, in the master storage unit, is capable of executing a writing process of writing the program into the program storage units included in the vehicle control units based on the write data, selects a processing target control unit to be subjected to the writing process from among the plurality of vehicle control units based on predetermined selection conditions, transmits a wake-up request to the processing target control unit, and then performs the writing process on the processing target control unit.SELECTED DRAWING: Figure 1
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to a vehicle control system and a program writing method.

Background Art

[0002] In recent years, with the advancement of vehicle functions, the number of ECUs (Electronic Control Units) installed in vehicles has increased, and the programs for controlling the ECUs have become more advanced. For example, the results of research and development on improving fuel efficiency, which contributes to energy efficiency, have been applied to vehicles, and the high functionality of ECUs that control engines and motors has advanced. In addition, the installation of advanced ECUs responsible for driving support technologies and preventive safety technologies in vehicles has been progressing. Along with these technological evolutions, the management of the programs installed in ECUs has become an important issue. For example, Patent Document 1 discloses a method for updating an ECU installed in a vehicle.

Prior Art Documents

Patent Documents

[0003]

Patent Document 1

Summary of the Invention

Problems to be Solved by the Invention

[0004] The programs executed by ECUs (Electronic Control Units) are required to conform to the vehicle's specifications, and program updates are performed to improve functionality and reliability. Therefore, it is necessary to verify the specifications and versions of the ECU programs during the vehicle manufacturing process. For example, some ECUs are programmed by the ECU supplier before being supplied to the manufacturing process. For such ECUs, it is necessary to verify the compatibility of the program with the vehicle's specifications and the program version during the vehicle manufacturing process, and the program is updated as needed. Consequently, there has been a challenge in that managing ECU programs takes time during the vehicle manufacturing process. Furthermore, from the perspective of reducing carbon dioxide emissions in the vehicle manufacturing process, it is desirable to shorten the time spent on ECU program management and improve the efficiency of vehicle manufacturing. This invention was made in view of the above background, and aims to reduce the time required to manage the program of the ECU installed in a vehicle, thereby improving the manufacturing efficiency of the vehicle. [Means for solving the problem]

[0005] One embodiment for achieving the above objective comprises a vehicle control unit that controls a functional unit mounted on a vehicle by executing a program stored in a non-volatile program storage unit, and a master control unit connected to the vehicle control unit, wherein the master control unit comprises a non-volatile master storage unit, stores write data for writing the program to the program storage unit in the master storage unit, and is capable of executing a write process to write the program to the program storage unit of the vehicle control unit based on the write data, selects a processing target control unit to be targeted for the write process from among a plurality of vehicle control units based on predetermined selection conditions, sends a wake-up request to the processing target control unit, and thereafter, The state in which the aforementioned program is not stored. This is a vehicle control system that performs the write operation on the control unit that is the target of processing. [Effects of the Invention]

[0006] According to the above method, the master control unit can write programs to the vehicle control units during the vehicle manufacturing process. This allows for the supply of vehicle control units without programs to the vehicle manufacturing process, where the programs can be written. As a result, the process of checking the program specifications and status of the vehicle control units, and the process of writing programs to each vehicle control unit, can be omitted or simplified. Consequently, it becomes possible to shorten the manufacturing time at the vehicle manufacturing plant to accommodate improved fuel efficiency and the installation of driver assistance and preventive safety technologies in vehicles, thereby reducing carbon dioxide emissions in the vehicle manufacturing process. [Brief explanation of the drawing]

[0007] [Figure 1] A schematic diagram of the vehicle control system. [Figure 2] A diagram illustrating the vehicle manufacturing process. [Figure 3] A block diagram showing the main components of a vehicle control system. [Figure 4] A flowchart illustrating the operation of the vehicle control system. [Figure 5] A flowchart illustrating the operation of the vehicle control system. [Figure 6] A flowchart illustrating the operation of the vehicle control system. [Figure 7] A timing chart showing the operation of the vehicle control system. [Figure 8] A timing chart showing the operation of the vehicle control system. [Modes for carrying out the invention]

[0008] Figure 1 shows the vehicle control system 1. The vehicle control system 1 consists of multiple ECUs 50 that control the functional parts mounted on the vehicle. By controlling the functional parts of the vehicle, the vehicle control system 1 enables the vehicle to run and perform various functions.

[0009] The specific form of the vehicle equipped with the vehicle control system 1 is not limited. This vehicle may be a four-wheeled automobile, a motorcycle, or other mobile vehicle. This vehicle may be a vehicle using an internal combustion engine as a power source, an electric vehicle using a motor as a power source, or a hybrid vehicle using both an internal combustion engine and a motor. In this embodiment, a four-wheeled automobile vehicle V, as shown in Figure 2, will be described as an example.

[0010] The following description illustrates examples of various ECUs 50 installed in a vehicle V and the devices controlled by the ECUs 50. It is not intended to limit the connection of the ECUs 50 in a vehicle V to which this disclosure applies to any configuration shown in Figure 1.

[0011] The vehicle control system 1 includes a central ECU 2 that performs overall control and information processing of the vehicle V. The central ECU 2 is connected to communication lines including communication lines B1 to B6. The central ECU 2 implements a gateway function that manages the exchange of communication data between these communication lines. The central ECU 2 also performs program writing to ECUs connected to the central ECU 2 by communication lines B1 to B6, and to ECUs further connected to these ECUs by other communication lines B7 to B14. Program writing includes updating programs already written to ECUs and writing new programs to ECUs. The central ECU 2 performs, for example, OTA (Over The Air) management. OTA management includes, for example, control related to the process of downloading update programs for the ECUs equipped in the vehicle V from an external server, and the process of applying the downloaded update programs to the in-vehicle devices. In this disclosure, the central ECU 2 corresponds to an example of a master control unit, and each ECU on which a program is written by the central ECU 2 corresponds to an example of a vehicle control unit. The vehicle control unit includes, for example, Zone A-ECU11, Zone B-ECU13, and each of the ECUs 50 shown in Figure 1.

[0012] In Figure 1 and Figure 3 (described later), the various ECUs connected to the central ECU2, zone A-ECU11, and zone B-ECU13 are shown as ECU50. The central ECU2 is connected to Zone A-ECU11 via communication line B1 and to Zone B-ECU13 via communication line B2. As described later, multiple ECUs 50 are further connected to Zone A-ECU11 and Zone B-ECU13. Zone A-ECU11 manages the exchange of communication data between the central ECU2 and the ECU 50 connected to Zone A-ECU11. Zone B-ECU13 manages the exchange of communication data between the central ECU2 and the ECU 50 connected to Zone B-ECU13.

[0013] A Data Link Connector (DLC) 19 is connected to the central ECU 2 via a communication line B3. The DLC 19 is an interface device that connects external devices of the vehicle V to the central ECU 2. The DLC 19 has a connector to which a communication cable CB can be connected, and is connected to, for example, a diagnostic device 300 via the communication cable CB. The DLC 19 corresponds to an example of a connection part in this disclosure.

[0014] The diagnostic device 300 is a terminal device used by workers in the manufacturing process of vehicle V. The diagnostic device 300 is connected to DLC19, for example, by a communication cable CB. The diagnostic device 300 acquires information about the vehicle control system 1 by sending and receiving various commands and data with the vehicle control system 1 and transmits instructions to the vehicle control system 1. The diagnostic device 300 includes an operating unit such as keys and switches operated by the worker, a display unit that displays the operating status of the diagnostic device 300 and information about the vehicle control system 1, and a connector for connecting the communication cable CB. In this disclosure, the diagnostic device 300 corresponds to an example of an external device.

[0015] A plurality of ECUs 50 are connected to the central ECU 2 via communication lines B4, B5, and B6. These ECUs 50 include, for example, V2X (Vehicle to Everything) communication devices. The V2X communication device is a communication device equipped with a communication antenna and a communication circuit (not shown) and having a wireless communication function, and performs vehicle-to-vehicle communication and / or vehicle-to-roadside communication according to the control of the central ECU 2. Further, the ECU 50 connected to the central ECU 2 may include a TCU (Telematics Control Unit). The TCU is a wireless communication device equipped with a communication antenna and a communication circuit (not shown) and performing wireless data communication by a cellular communication method such as LTE (Long Term Evolution) or 5G (the fifth-generation mobile communication system). Further, the ECU 50 connected to the central ECU 2 may include an IVI (In-Vehicle Infotainment)-ECU. Various in-vehicle devices such as a car navigation system, various cameras including a rear camera, an audio player, a monitor, a touch panel, operators such as keys and switches, a speaker, and a microphone are connected to the IVI-ECU. The IVI-ECU provides various information and entertainment to the passengers of the vehicle V by controlling the in-vehicle devices. For example, the IVI-ECU executes control such as starting and stopping the in-vehicle devices and outputting data detected by other ECUs with sensors to the in-vehicle devices.

[0016] Further, the ECU 50 connected to the central ECU 2 may include a driving support ECU that executes control to automatically park the vehicle V at a parking position or a support function when the driver parks the vehicle V. The functional parts controlled by the driving support ECU include, for example, various cameras, monitors, touch panels, steering devices, brake mechanisms, and accelerator devices mounted on the vehicle V.

[0017] DLC19 is an example of a functional part controlled by the central ECU 2. The same applies to the V2X communication device and the TCU.

[0018] A plurality of ECUs 50 are connected to the zone A-ECU 11 via communication lines B7 to B10. The ECUs 50 connected to the zone A-ECU 11 include, for example, a FI (Fuel Injection) control unit, a motor control unit, a BATT (Battery) control unit, a shift control unit, a VSA (Vehicle Stability Asist) control unit, and the like. The ECUs 50 connected to the zone A-ECU 11 via the communication lines B7 to B10 can be referred to as functional units to be controlled by the zone A-ECU 11.

[0019] The FI control unit controls the fuel injection amount and fuel injection timing in the internal combustion engine mounted on the vehicle V. The functional units controlled by the FI control unit include an electronically controlled fuel injection device and may include sensors. Examples of the sensors include an O2 sensor, a knock sensor, a cam angle sensor, a crank angle sensor, an intake air temperature sensor, an exhaust gas temperature sensor, and the like. The motor control unit controls the rotational speed of the motor mounted on the vehicle V. The functional units controlled by the motor control unit include an inverter circuit that supplies drive current to the motor and may include various sensors. The BATT control unit performs charge control, discharge control, and remaining charge amount management for the driving battery mounted on the vehicle V. The battery as a functional unit controlled by the BATT control unit is provided separately from the starting battery that supplies power to each part of the vehicle control system 1, and is a battery mounted on the vehicle V to supply power for driving the motor. The driving battery is, for example, a lithium-ion secondary battery, a lithium polymer battery, a nickel-hydrogen battery, a all-solid-state battery, and other secondary batteries, or may be a capacitor. The functional units controlled by the BATT control unit may include a regeneration mechanism that generates regenerative power by the driving energy of the vehicle V. In contrast, the starting battery of the vehicle V is a secondary battery that supplies power to each part of the vehicle control system 1 when the power of the vehicle V is turned off and is charged during the running of the vehicle V by the power generation device mounted on the vehicle V. For example, the starting battery is composed of a lead-acid battery, other secondary batteries, or a capacitor.

[0020] The shift control unit controls the vehicle V's shift mechanism according to the vehicle V's driving state and the driver's operation. The functional units controlled by the shift control unit include the vehicle V's shift mechanism, and specifically include step AT (Automatic Transmission), CVT (Continuously Variable Transmission), DCT (Dual Clutch Transmission), etc. The functional units controlled by the shift control unit may also include a shift position sensor, shift switch, shift lever, etc.

[0021] The functional unit controlled by the VSA control unit is, for example, an actuator provided in the brake mechanism of the vehicle V. The VSA control unit stabilizes the vehicle V's posture while it is in motion by operating the actuator of the brake mechanism according to the vehicle V's posture, thereby preventing slips and spins, for example.

[0022] Multiple ECUs 50 are connected to Zone B-ECU13 via communication lines B11 to B14. The ECUs 50 connected to Zone B-ECU13 include, for example, a light control unit and an entry control unit. The ECUs 50 connected to Zone B-ECU13 via communication lines B11 to B14 can be considered the functional units controlled by Zone B-ECU13.

[0023] The functional units controlled by the light control unit are the lighting devices mounted on the vehicle V. For example, the light control unit controls the vehicle V's headlights, turn signals, fog lights, brake lights, and reverse lights. The light control unit may also control the lighting devices that illuminate the interior of the vehicle V. The functional units controlled by the entry control unit are wireless communication devices that communicate wirelessly with the vehicle V's FOB key or other electronic key. By communicating with the vehicle V's key, the entry control unit processes user access to the vehicle control system 1 from outside the vehicle, thereby realizing the operation of so-called smart entry.

[0024] Communication lines B1 to B14 are composed of multiple communication transmission paths conforming to various communication standards. Each of communication lines B1 to B14 can be a data transmission path conforming to a different communication standard. In other words, the specific configuration of the cables constituting communication lines B1 to B14, the transmission bandwidth, and the communication standard can be arbitrarily selected. Examples of communication standards applicable to communication lines B1 to B14 include CAN (Controller Area Network), Ethernet (registered trademark), USB (Universal Serial Bus), LIN (Local Interconnect Network), and LVDS (Low Voltage Differential Signaling), but other standards may also be used. Furthermore, although communication lines B1 to B6 are shown as independent communication lines in Figure 1, there are no restrictions on their specific configuration; for example, they may be bus-type communication lines connected to multiple devices, similar to communication lines B7 to B14.

[0025] Figure 2 is an explanatory diagram of the manufacturing process of vehicle V. Figure 2 is a diagram that shows an overview of the manufacturing process of a four-wheeled vehicle, divided by its main components, and does not limit the details of the manufacturing process of the vehicle's components. For example, a process shown as one step in Figure 2 may include multiple detailed processes. Also, the order of the processes shown in Figure 2 may be changed as appropriate. Furthermore, it does not rule out the possibility that processes not shown in Figure 2 may be performed in the manufacturing of vehicle V. The process shown in Figure 2 is a simplified representation of the main production line process at a manufacturing plant for vehicle V, for example. In the manufacturing process for vehicle V, other processes may be carried out on so-called sub-lines separate from the main production line, and other processes may be carried out at other manufacturing plants or parts factories, but these processes are omitted in Figure 2.

[0026] Step S1 is the vehicle body manufacturing process. In the vehicle body manufacturing process, various processes such as pressing and welding are performed on the raw materials, such as steel and aluminum, or structural components manufactured at other factories. Step S1 manufactures the vehicle body, or frame, of vehicle V.

[0027] Step S2 is the painting process. In the painting process, the car body manufactured in Step S1 is painted.

[0028] Step S3 is the assembly process. In the assembly process, exterior parts, interior parts, drivetrain parts, and various other parts are attached to the vehicle body that was painted in the painting process. Following step S3, step S4 is the inspection process. In the inspection process of step S4, the final inspection of vehicle V is performed.

[0029] Figure 2 shows the assembly process in step S3 in more detail. The assembly process includes the drive source mounting process (step S31), suspension mounting process (step S32), auxiliary equipment mounting process (step S33), exterior mounting process (step S34), interior parts mounting process (step S35), ECU wiring process (step S36), and battery mounting process (step S37).

[0030] In the drive source mounting process (step S31), the internal combustion engine and / or motor, which are the drive sources for the vehicle V, are mounted to the vehicle body. When manufacturing a vehicle V with an internal combustion engine, the intake and exhaust system components connected to the internal combustion engine are mounted in step S31. When manufacturing a vehicle V with a motor, the traction battery is mounted in step S31. The transmission may also be mounted together with the drive source in step S31. In addition, some or all of the ECU 50 connected to the drive source is mounted to the vehicle body in step S31. For example, in step S31, the ECU 50, including the FI control unit, motor control unit, BATT control unit, and shift control unit, may be mounted to the vehicle body.

[0031] In the suspension installation process (step S32), the suspension mechanism assembled on the sub-line is attached to the vehicle body. In the auxiliary equipment installation process (step S33), the auxiliary equipment of the vehicle V is installed. The auxiliary equipment includes, for example, the compressor, condenser, refrigerant piping, alternator, coolant pump, coolant tank, coolant piping, and electric oil pump that constitute the air conditioning system, and may also include other parts. In addition, the auxiliary equipment installation process may include the installation and connection of brake fluid piping, etc.

[0032] During the suspension installation process and the auxiliary equipment installation process, some or all of the ECU 50 connected to the suspension and auxiliary equipment are mounted on the vehicle body. For example, during the suspension installation process or the auxiliary equipment installation process, the ECU 50 such as the VSA control unit may be mounted on the vehicle body.

[0033] In the exterior installation process (step S34), exterior parts such as bumpers, glass other than door glass, wipers, and lights are installed. In the interior parts installation process (step S35), the interior parts of vehicle V are installed. Interior parts include seats and a center console. In the interior parts installation process, the car navigation system monitor and touch panel, instrument panel, and various cameras are installed on the vehicle body.

[0034] In the exterior mounting process and the interior parts mounting process, some or all of the ECU 50 connected to the exterior parts are mounted on the vehicle body. For example, in the exterior mounting process or the interior parts mounting process, the ECU 50 such as the light control unit and entry control unit may be mounted on the vehicle body.

[0035] In the ECU connection process (step S36), the central ECU2, zone A-ECU11, and zone B-ECU13 are mounted on the vehicle body. Furthermore, in the ECU connection process, the ECU50 that constitute the vehicle control system 1 but were not mounted in steps S31 to S35 are mounted on the vehicle body. In the ECU connection process, communication lines B1 to B6 are connected to the central ECU2. Communication lines B1 to B6 are connected to, for example, one or more connectors, and in the ECU connection process, the connectors are connected to the central ECU2. Furthermore, in the ECU connection process, communication lines B7 to B10 are connected to zone A-ECU11, and communication lines B11 to B14 are connected to zone B-ECU13. Through the ECU connection process, the central ECU2, zone A-ECU11, and zone B-ECU13 are interconnected with each of the controlled devices and each of the ECU50, making control by the central ECU2 possible. In other words, all ECUs 50 that are to be directly connected to the central ECU 2, and all ECUs 50 that are to be connected to the central ECU 2 via zone A-ECU 11 or zone B-ECU 13, are connected in the ECU wiring process. In the ECU wiring process, a connection test may be performed to confirm the electrical connection status between the central ECU 2 and the various ECUs 50 connected to the central ECU 2, while the vehicle control system 1 is not energized. Through the ECU wiring process, the central ECU2, zone A-ECU11, and zone B-ECU13 are interconnected with each of the devices and each ECU50 to be controlled, enabling control by the central ECU2.

[0036] The ECU wiring process in step S36 corresponds to an example of a wiring process in this disclosure. Also, since the central ECU 2 and each ECU 50 are installed in steps S31 to S36, these processes correspond to an example of an installation process in this disclosure.

[0037] After the ECU wiring process (step S36), in the battery installation process (step S37), a starting battery is installed in the vehicle V. The starting battery is wired to the vehicle control system 1 during the ECU wiring process. As described above, the starting battery supplies power to the vehicle control system 1. The power from the starting battery is supplied as power to at least the central ECU 2, zone A-ECU 11, and zone B-ECU 13. After step S37, the vehicle control system 1 is started up by the power supplied by the starting battery, and each part of the vehicle control system 1 becomes capable of performing control. Specifically, after step S37, by connecting the diagnostic device 300 to the DLC 19, the diagnostic device 300 can communicate with the central ECU 2.

[0038] After the battery installation process (step S37), the vehicle V undergoes a fluid injection process (step S38) and an opening / closing mechanism installation process (step S39). In step S38, various fluids used in the vehicle V are injected. For example, in step S38, coolant is injected into the water cooling mechanism that cools the drive source of the vehicle V. Brake fluid is injected into the brake lines of the vehicle V. Other fluids may be injected in the fluid injection process. In step S38, the opening and closing parts of the vehicle V are installed. Examples of opening and closing parts include the door DR and the rear gate RG. In step S38, the assembly process (step S3) is completed, and the inspection process of step S4 is performed. Step S37 corresponds to an example of an injection process in this disclosure, and step S38 corresponds to an example of an opening / closing assembly mounting process in this disclosure.

[0039] In the manufacturing process of vehicle V in this disclosure, a program writing process (step S40) is performed in parallel with steps S38 and S39. Step S40 corresponds to an example of a writing process in this disclosure. The program writing process is started after the battery installation process (step S37) and before the fluid injection process (step S38), or after the fluid injection process. The program writing process may be completed before the switch / open / close assembly installation process (step S39) is started, or it may continue to be performed after the switch / open / close assembly installation process (step S39) has started.

[0040] In the program writing process, the central ECU2 writes programs to the ECUs 50 included in the vehicle control system 1. The target of the program writing process includes each ECU 50 connected to the central ECU2 by communication lines B4 to B6, the ECU 50 connected to Zone A-ECU11 by communication lines B7 to B10, and the ECU 50 connected to Zone B-ECU13 by communication lines B11 to B14. In addition, programs may be written to Zone A-ECU11 and Zone B-ECU13 during the program writing process.

[0041] As shown in Figure 1, the vehicle control system 1 has a cascade structure in which multiple ECUs are connected hierarchically. Specifically, the vehicle control system 1 includes an ECU 50 that is directly connected to the central ECU 2 via communication lines B1 to B6, and an ECU 50 that is connected to the central ECU 2 via other ECUs. Of these, the ECU 50 that is connected to the central ECU 2 via other ECUs is called the secondary control unit.

[0042] The secondary control unit includes an ECU 50 connected to Zone A-ECU 11 via communication lines B7 to B10. The secondary control unit also includes an ECU 50 connected to Zone B-ECU 13 via communication lines B11 to B14. Communication lines B7 to B10, connecting Zone A-ECU 11 to the secondary control unit, and communication lines B11 to B14, connecting Zone B-ECU 13 to the secondary control unit, are referred to as lower-level communication lines.

[0043] In contrast, the ECU that is directly connected to the central ECU2 and positioned between the secondary control unit and the central ECU2 is called the primary control unit. The primary control unit includes Zone A-ECU11 and Zone B-ECU13. The communication lines B1 and B2 connecting the central ECU2 and the primary control unit are called the upper-level communication lines.

[0044] Figure 3 is a block diagram showing the main components of the vehicle control system 1. To explain the program writing process in the vehicle control system 1, Figure 3 shows the configuration of some of the ECUs that make up the vehicle control system 1. Specifically, Figure 3 shows Zone A-ECU11 and Zone B-ECU13 as examples of primary control units, and the 3rd ECU50C, 4th ECU50D, 5th ECU50E, 6th ECU50F, 7th ECU50G, and 8th ECU50H as examples of secondary control units. These are, for example, FI control units, motor control units, BATT control units, shift control units, and VSA control units. Also, Figure 3 shows the 9th ECU50I, 10th ECU50J, and 11th ECU50K as ECU50 connected to the central ECU2. These are, for example, IVI-ECUs, TCUs, V2X communication devices, etc.

[0045] As shown in Figure 3, the central ECU 2 has a processing unit 21 and a communication device 23. The communication device 23 performs communication via communication lines B1 to B6 in accordance with the control of the processing unit 21.

[0046] The processing unit 21 includes a processor 210 and memory 220. The processor 210 is composed of, for example, a CPU (Central Processing Unit), an MCU (Micro Controller Unit), and an MPU (Micro Processor Unit). The memory 220 is a rewritable, non-volatile storage device that stores programs executed by the processor 210 and data processed by the processor 210. The memory 220 is composed of, for example, a semiconductor storage device such as a flash ROM (Read Only Memory) or an SSD (Solid State Disk), or a magnetic storage device. The memory 220 may also include a RAM (Random Access Memory) that forms a work area for temporarily storing programs and data. The processing unit 21 may be composed of an integrated circuit (IC) that integrates the processor 210 and the memory 220. The central ECU 2 may be an integrated circuit that integrates the processing unit 21 and the communication device 23. The central ECU 2 may also be configured to include the communication device 23, the processor 210, and the memory 220 as independent hardware.

[0047] Memory 220 stores the control program 221, control data 222, write data 230, and result data 235. The control program 221 is a program executed by the processor 210. The control data 222 is data that the processor 210 references when executing the control program 221. By executing the control program 221 based on the control data 222, the processor 210 manages and controls the exchange of data in the vehicle control system 1, and performs communication by the DLC 19. The processor 210 also controls the V2X communication device, TCU, and meter panel, etc., by executing the control program 221. The processor 210 also performs OTA control for each ECU 50 that constitutes the vehicle control system 1 by executing the control program 221. The memory 220 corresponds to an example of a master storage unit in this disclosure.

[0048] The configuration of the ECUs to be written to will be explained. Figure 3 shows an example of ECUs to be written to by the central ECU2, including Zone A-ECU11, Zone B-ECU13, 3rd ECU50C, 4th ECU50D, 5th ECU50E, 6th ECU50F, 7th ECU50G, and 8th ECU50H.

[0049] Zone A-ECU11 comprises a processor 91A and memory 93A. Zone B-ECU13 comprises a processor 91B and memory 93B. Similarly, the third ECU50C comprises a processor 91C and memory 93C, the fourth ECU50D comprises a processor 91D and memory 93D, and the fifth ECU50E comprises a processor 91E and memory 93E. Furthermore, the sixth ECU50F comprises a processor 91F and memory 93F, the seventh ECU50G comprises a processor 91G and memory 93G, and the eighth ECU50H comprises a processor 91H and memory 93H. Hereinafter, processors 91A to 91H will be referred to as processor 91 when not distinguished, and memories 93A to 93H will be referred to as memory 93 when not distinguished. Memory 93 corresponds to an example of a program storage unit in this disclosure.

[0050] The processor 91 is composed of, for example, a CPU, MCU, and MPU. The memory 93 is a rewritable, non-volatile storage device that stores programs executed by the processor 91 and data processed by the processor 91. The memory 93 is composed of, for example, a semiconductor storage device such as flash ROM or SSD, or a magnetic storage device. The memory 93 may also include RAM, which forms a work area for temporarily storing programs and data. Each ECU 50 may be composed of an integrated circuit that integrates the processor 91 and the memory 93.

[0051] The processor 91 performs communication with the central ECU 2 by executing the basic control program stored in the memory 93. The processor 91 also controls the functional unit to be controlled by executing the control program stored in the memory 93. Before the program is written by the central ECU 2 during the program writing process, memory 93 does not store the program for the processor 91 to control the controlled functional unit. In this state, memory 93 stores the program for the processor 91 to perform basic operations. For example, before the writing process, memory 93 stores the program for the processor 91 to communicate with the central ECU 2 and perform the process shown in Figure 6. Alternatively, for example, memory 93 may store the program for the processor 91 to control the controlled functional unit before the program writing process. In this case, during the program writing process, a portion of the program stored in memory 93 is overwritten and updated.

[0052] Zone A-ECU11 may include a processor 91A and memory 93A, as well as a communication device that performs communication via communication lines B1, B7-B10. Zone B-ECU13 may include a processor 91B and memory 93B, as well as a communication device that performs communication via communication lines B2, B11-B14. ECUs other than Zone A-ECU11 and Zone B-ECU13 may be configured to include a communication device (not shown) that performs data communication with Zone A-ECU11 and Zone B-ECU13, and transmits and receives signals with the controlled functional unit.

[0053] The write data 230 stored in the memory 220 by the central ECU 2 is data for the processor 210 to write programs to each ECU 50 of the vehicle control system 1. The write data 230 includes a write processing program 231, a write setting table 232, and an ECU-specific program 233.

[0054] The writing process program 231 is a program executed by the processor 210. By executing the writing process program 231, the processor 210 performs the writing of the program to the ECU 50 during the manufacturing process of the vehicle V.

[0055] The write configuration table 232 contains information about the ECU 50 to which the central ECU 2 will write the program. The write configuration table 232 associates the ECU 50 to which the central ECU 2 will perform the write process with the ECU program 233 to be written to the memory 93 of the ECU 50. The write configuration table 232 shows an example of the corresponding data.

[0056] The program configuration table 232 includes the model number of the ECU50, as information about the ECU50 to which the program will be written by the central ECU2. In addition to the model number of the ECU50, the program configuration table 232 may also include information indicating the specifications and destination of the ECU50. Furthermore, along with the model number of the ECU50, the program configuration table 232 may also include the ECU50's unique manufacturing number (serial number) and manufacturing lot number.

[0057] The write data 230 includes multiple ECU-specific programs 233 corresponding to each ECU to be written to. For example, ECU-specific program 233A is the program corresponding to zone A-ECU11 and is written to memory 93A. ECU-specific program 233B is the program corresponding to zone B-ECU13 and is written to memory 93B. Information linking ECU-specific programs 233A and 233B to zone A-ECU11 and zone B-ECU13 is included in the write setting table 232.

[0058] There is no limit to the number of ECU programs 233 included in the write data 230. Preferably, the write data 230 includes ECU programs 233 corresponding to all ECUs in the vehicle control system 1 of the vehicle V on which the central ECU 2 is installed.

[0059] The ECU program 233 may be the same as the program written to memory 93. Alternatively, the ECU program 233 may be stored in memory 220 in a compressed state, decompressed by the processor 210, and written to memory 93.

[0060] Figure 3 shows communication lines B1-B6, B7, B9, and B10, each represented by a different line for each standardized communication speed. In the vehicle control system 1, the communication speed and standard of communication lines B1-B14 are determined according to the function of the ECU. For example, communication line B1 conforms to the CAN-FD (CAN with Flexible Data Rate) standard and is composed of two communication paths with a design communication speed of 5 Mbps bundled together. The manner in which the communication paths are bundled can be similar to teaming, for example, and the central ECU 2 and zone A-ECU 11 perform communication control for link aggregation or load balancing. For example, the central ECU 2 and zone A-ECU 11 can communicate at a design speed of 10 Mbps.

[0061] Furthermore, for example, communication line B4 conforms to the Ethernet standard, and its design communication speed is, for example, 100 Mbps. Communication lines B2, B7, B9, and B10 conform to the CAN-FD standard, and their design communication speed is 2 Mbps. The 8th ECU50H is connected to communication line B10, but the 8th ECU50H is connected in accordance with the F-CAN standard. Therefore, although the 8th ECU50H is connected to communication line B10 together with the 7th ECU50G, it performs F-CAN communication with a communication speed of, for example, 500 kbps. This can be considered as the 8th ECU50H being connected to zone A-ECU11 by a low-speed communication line. For this reason, Figure 3 shows a configuration in which the 8th ECU50H is connected to the low-speed communication line B10a. Communication line B10a may actually be integrated with communication line B10.

[0062] Communication lines B3, B5, and B6 conform to the F-CAN standard and, for example, are communication channels with a design communication speed of 500kbps.

[0063] The actual transfer speed, or effective speed, on communication lines B1 to B14 of the vehicle control system 1 is lower than the design or standard communication speed. This phenomenon is due to the effects of frame overhead and communication cycle. For example, according to the inventors' experiments, the effective speed of CAN-FD communication, which is standardized at 5 Mbps, is approximately 1450 kbps to 900 bps, and the effective speed of CAN-FD communication, which is standardized at 2 Mbps, is approximately 900 bps to 700 bps. Therefore, the inventors have identified a problem: when the central ECU 2 writes a program to an ECU, it is necessary to consider the effect of the transfer speed between ECUs in the vehicle control system 1.

[0064] Figures 4, 5, and 6 are flowcharts showing the operation of the vehicle control system 1. Figures 4 and 5 show the operation of the central ECU 2, and Figure 6 shows the operation of the target ECU.

[0065] The operation shown in Figure 4 is performed with the diagnostic device 300 connected to the DLC19. Specifically, when the operator operates the diagnostic device 300, the diagnostic device 300 sends a command to the vehicle control system 1 instructing it to start the write process. This command triggers the start of the write process.

[0066] The processor 210 receives a command from the diagnostic device 300 (step SA11) and detects the ECUs connected to the central ECU2 (step SA12). In step SA12, the processor 210 detects the ECUs connected to the central ECU2 via communication lines B1 to B6, as well as the ECUs connected via zone A-ECU11 and zone B-ECU13.

[0067] The processor 210 identifies the ECU to be written to based on the write setting table 232 (step SA13). The processor 210 can use the write data 230 to write programs to multiple ECUs. In step SA13, all ECUs that may be the target of the write process are identified from the ECUs detected in step SA12.

[0068] The processor 210 determines the order in which the write operations will be performed by executing an execution order determination process for the ECUs identified in step SA13 (step S14). In the following, the ECU that is the target of the write operation on which the program will be written will be referred to as the target ECU.

[0069] The processor 210 determines the write order according to predetermined conditions. These predetermined conditions are described, for example, in the write setting table 232.

[0070] The specified conditions include multiple conditions. The first condition is to select the primary control unit of the vehicle control system 1 as the target ECU, prioritizing it over the secondary control unit. The second condition is that, when selecting a target ECU from multiple primary control units, the primary control unit with the most connected secondary control units is given priority and selected as the target ECU. For example, in Figure 1, Zone A-ECU11 has 12 secondary control units connected, while Zone B-ECU13 has 10. In this case, Zone A-ECU11 will be selected as the target ECU before Zone B-ECU13. The third condition is to select multiple ECUs as target ECUs and to perform the process of writing programs to multiple target ECUs in parallel.

[0071] The fourth condition is that it is possible to write programs in parallel to the first primary control unit connected to the first upper-level communication line and to the second primary control unit connected to the second upper-level communication line or to the secondary control unit connected to the second primary control unit by a lower-level communication line. For example, if the first upper-level communication line is communication line B1, the first primary control unit is zone A-ECU11. In this case, the second upper-level communication line is a different upper-level communication line from communication line B1, for example, communication line B2. In this case, the second primary control unit is zone B-ECU13. In this example, it is possible to write programs in parallel to zone A-ECU11 and to the secondary control unit connected to zone B-ECU13. As another example, the first upper-level communication line can be communication line B2, the first primary control unit can be zone B-ECU13, the second upper-level communication line can be communication line B1, and the second primary control unit can be zone A-ECU11. In this example, it is possible to write programs to the secondary control unit connected to Zone A-ECU11 and Zone B-ECU13 in parallel. To express the fourth condition in reverse, if a primary control unit is selected as the target ECU, then the secondary control unit connected to the selected primary control unit via a lower communication line should not be selected as the target ECU on which the program will be written simultaneously with the primary control unit.

[0072] The fifth condition is that it is possible to write programs in parallel to the first secondary control unit connected to the third primary control unit by the first lower communication line, and to the second secondary control unit connected to the third primary control unit by the second lower communication line. For example, if the third primary control unit is zone A-ECU11, the first lower communication line is one of communication lines B7 to B10. In this example, it is possible to write programs in parallel to the secondary control unit connected to communication line B7 and the secondary control unit connected to communication line B9. Similarly, it is possible to write programs in parallel to the secondary control unit connected to communication line B9 and the secondary control unit connected to communication line B10. The same applies when the third primary control unit is zone B-ECU13. The fifth condition, expressed in reverse, is not to select multiple secondary control units connected to a single lower communication line as target ECUs for simultaneous programming.

[0073] The sixth and seventh conditions relate to the communication speed of the communication lines. The sixth condition is that if the communication speed of the third upper communication line connecting the central ECU2 and the third primary control unit is greater than the sum of the communication speeds of the first lower communication line and the second lower communication line, then writing operations can be performed in parallel for the first secondary control unit and the second secondary control unit. For example, if the third primary control unit is zone A-ECU11, then the third upper communication line is communication line B1. In this example, if the first lower communication line is communication line B7 and the second lower communication line is communication line B9, then if the communication speed of communication line B1 is greater than the sum of the communication speeds of communication line B7 and communication line B9, then programs can be written to the third ECU50C and the fourth ECU50D in parallel.

[0074] The seventh condition is that, when writing programs to multiple secondary control units in parallel, it is possible to write programs in parallel to the secondary control unit connected by the fastest lower communication line and the secondary control unit connected by the slowest lower communication line. For example, in the range shown in Figure 3, the fastest lower communication lines are communication lines B7, B9, and B10, and the slowest lower communication line is communication line B10a. In this example, the 8th ECU50H is combined with either the 3rd ECU50C, 4th ECU50D, 5th ECU50E, 6th ECU50F, and 7th ECU50G, and programs are written in parallel.

[0075] In step SA14, the processor 210 determines the order in which to select the ECUs identified in step SA13 as target ECUs so as to satisfy the first to seventh conditions described above. Alternatively, the write setting table 232 may contain a predetermined order for selecting the ECUs of the vehicle control system 1 as target ECUs. That is, the write setting table 232 may specify an order that satisfies the first to seventh conditions. In this case, in step SA14, the processor 210 determines the order by referring to the write setting table 232.

[0076] The processor 210 executes the process of writing a program to the ECU of the vehicle control system 1 (step SA15). The detailed operation of step SA15 will be described later with reference to Figure 5.

[0077] After the program writing is complete, the processor 210 outputs the result data 235 stored in the memory 220 to the diagnostic device 300 via the DLC 19 (step SA16).

[0078] The processor 210 determines whether or not an instruction to erase the write data 230 has been received from the diagnostic device 300 (step SA17). If an erase instruction has been received (step SA17; YES), the processor 210 erases the write data 230 from the memory 220 (step SA18) and terminates this process. If no erase instruction has been received (step SA17; NO), the processor 210 skips step SA18 and terminates this process.

[0079] Figure 5 shows in detail the operation of the central ECU2 in step SA15 of Figure 4. The processor 210 selects the top one or more target ECUs in the order determined in step SA14 (step SA21). In the simplest example, the processor 210 selects one target ECU.

[0080] The processor 210 sends a wake-up request to the target ECU (step SA22). The wake-up request is a signal that requests the standby target ECU to start up. The target ECU can receive the wake-up request while powered by the starter battery. If the target ECU is operating normally, it sends a response to the wake-up request to the central ECU2, as described later with reference to Figure 6.

[0081] The processor 210 determines whether or not it has received a response to the wake-up request from the target ECU (step SA23). If the processor 210 does not receive a response within a predetermined time (step SA23; NO), it proceeds to step SA34, which will be described later.

[0082] When the processor 210 receives a response from the target ECU (step SA23; YES), it compares at least one of the target ECU's specifications and status with the write setting table 232 (step SA24). The target ECU specifications refer to the target ECU's model number, the target ECU's destination, and specifications that match the parts installed on the vehicle V. The target ECU status refers to whether or not a program is already stored in the target ECU's memory 93, and the program version, etc. The write setting table 232 contains information that specifies the specifications and / or status of target ECUs on which the ECU program 233 can be written, for each ECU that can be a target ECU. The processor 210 performs the comparison in step SA24, for example, by having the target ECU send information indicating its specifications and status.

[0083] Based on the results of the verification in step SA17, the processor 210 determines whether or not it is possible to write a program to the target ECU (step SA25). If it is determined that writing is not possible (step SA25; NO), the processor 210 proceeds to step SA34, which will be described later.

[0084] If the processor 210 determines that writing is possible (step SA25; YES), it starts a write process to write a program to the memory 93 of the target ECU (step SA26). The write process is a process in which the processor 210 writes the ECU program 233, which is associated with the target ECU by the write setting table 232, to the memory 93 of the target ECU, or updates the program already written to the memory 93.

[0085] The processor 210 determines whether one or more of the currently running write operations have finished (step SA27). In other words, it determines whether any of the one or more target ECUs on which a write operation is being performed have completed a write operation. If it determines that no write operations have finished (step SA27; NO), the processor 210 determines whether there is a target ECU to select next (step SA28). In step SA28, it determines whether any of the ECUs ordered in step SA14 have not been selected as a target ECU.

[0086] If it determines that there is no next target ECU to select (step SA28; NO), the processor 210 returns to step SA27. If the processor determines that there is another target ECU to select (step SA28; YES), the processor 210 selects the next target ECU according to the order determined in step SA14 (step SA29).

[0087] The processor 210 determines whether the communication speed threshold is exceeded when the currently executing write process and the write process for the target ECU selected in step SA29 are performed in parallel (step SA30). The determination in step SA30 is whether the sixth and seventh conditions described above are met. For example, the processor 210 determines whether the sum of the communication speed between the target ECU performing the write process and the central ECU2 and the communication speed between the target ECU selected in step SA29 and the central ECU2 is greater than or equal to the threshold. In this example, the processor 210 determines whether the target ECUs performing program writing in parallel do not exceed the limit on the communication speed of the communication lines. For example, when writing programs to the third ECU50C and the fourth ECU50D in parallel, communication lines B7 and B9 are used for communication between the central ECU2 and the target ECUs. In this example, if the sum of the communication speeds of communication line B7 and communication line B9 is large, the communication speed of communication line B1 will become a bottleneck, or the communication load on the central ECU2 will become excessive. In such cases, the processor 210 delays the start of the write process to the target ECU. The threshold is a value set for the communication speeds of multiple lower communication lines, and is included, for example, in the write setting table 232. In step SA30, the processor 210 may determine whether or not the first to fifth conditions are met.

[0088] If it is determined that the communication speed exceeds the limit (step SA30; YES), the processor 210 returns to step SA27. If it is determined that the communication speed does not exceed the limit (step SA30; NO), the processor 210 proceeds to step SA22 and performs processing on the target ECU selected in step SA29.

[0089] On the other hand, if it is determined that any of the ongoing write operations have finished (step SA27; YES), the processor 210 checks the program written to memory 93 (step SA31). In step SA31, the processor 210 may instruct the target ECU to check the program, and the target ECU may perform the check. Alternatively, the processor 210 may read the program written to memory 93 and perform the check.

[0090] The processor 210 determines whether the program writing was completed successfully based on the result of the check in step SA31 (step SA32). If it is determined that the program writing process did not complete successfully (step SA32; NO), the processor 210 proceeds to step SA35, which will be described later.

[0091] If the processor determines that the program writing has been completed successfully (step SA32; YES), it generates result data 235 indicating successful writing and stores it in memory 220 (step SA33). Result data 235 includes information indicating the target ECU and information indicating that the writing was successful. The processor then proceeds to step SA38, which will be described later.

[0092] In step SA34, the processor 210 aborts the write operation to the selected target ECU (step SA34). Subsequently, in step SA35, the processor 210 generates result data 235 indicating a write error and stores it in memory 220 (step SA35). The result data 235 generated in step SA35 includes information indicating the selected target ECU and information indicating that the write was unsuccessful.

[0093] The processor 210 further causes the lights mounted on the vehicle V to flash (step SA36). In step SA36, the processor 210 controls, for example, the light control unit that controls the lights to flash the turn signals of the vehicle V. This notifies the workers on the vehicle V production line that an error occurred during program writing. If the writing process to the light control unit is in progress, step SA36 is skipped.

[0094] The processor 210 notifies the diagnostic device 300 via the DLC 19 that an error occurred during program writing (step SA37), and proceeds to step SA38. In step SA37, the processor 210 may send a signal to the diagnostic device 300 indicating that an error occurred during program writing. Alternatively, the processor 210 may send result data 235 to the diagnostic device 300. In this case, the diagnostic device 300 has the advantage of being able to inform the operator of the details of the error by displaying the contents of the result data 235.

[0095] In step SA38, the processor 210 determines whether processing for all ECUs identified in step SA13 has been completed (step SA38). If it determines that processing for all ECUs has been completed (step SA38; YES), the processor 210 returns to the process shown in Figure 4.

[0096] Furthermore, if it is determined that processing for all ECUs is not yet complete (step SA38; NO), the processor 210 proceeds to step SA28.

[0097] Figure 6 shows the operation of each ECU selected as a target ECU. The processor 91 of the target ECU receives a wake-up request from the central ECU 2 (step SB11). The target ECU can receive the wake-up request while powered by the starting battery. After receiving the wake-up request, the processor 91 may perform initialization of each part, including the memory 93, or transition to an operating mode for writing a program.

[0098] The processor 91 sends a response to the wake-up request to the central ECU 2 (step SB12). Subsequently, the processor 91 writes the program to memory 93 under the control of the central ECU 2 (step SB13). After writing the program, the processor 91 checks the program written to memory 93 under the control of the central ECU 2 (step SB14), sends the check result to the central ECU 2 (step SB15), and terminates this process. Note that if the central ECU 2 performs the check of the program written to memory 93 as described above, step SB15 is omitted.

[0099] As shown in Figures 4 to 6, by writing programs to multiple ECUs of the vehicle control system 1 installed in vehicle V in parallel, the ECU programs can be written in a short time during the manufacturing process of vehicle V.

[0100] Figures 7 and 8 are timing charts showing the operation of the vehicle control system 1, and are examples of operation for the ECU illustrated in Figure 3. Figures 7 and 8 show examples of operation when the ECU equipped in the vehicle V is different. For example, Figure 7 shows the sequence of write operations when the present disclosure is applied to a vehicle V equipped with both an internal combustion engine and a motor as a drive source for driving the vehicle V. In this case, Figure 8 shows the sequence of write operations when the present disclosure is applied to a vehicle V equipped with an internal combustion engine as a drive source but not a motor.

[0101] The horizontal axis in Figure 7 shows the passage of time, starting from the point when the writing process to the first target ECU begins and showing the operations up to 7 minutes later. Figure 7(a) shows the writing process to Zone A-ECU11, with the time during which the writing process is in progress indicated by the diagonal lines. Figure 7(b) shows the writing process to the 3rd ECU50C, Figure 7(c) shows the writing process to the 6th ECU50F, and Figure 7(d) shows the writing process to the 5th ECU50E. Figure 7(e) shows the writing process to the 4th ECU50D, Figure 7(f) shows the writing process to the 7th ECU50G, and Figure 7(g) shows the writing process to the 8th ECU50H. Figure 7(h) shows the writing process to Zone B-ECU13, Figure 7(i) shows the writing process to the 11th ECU50K, and Figure 7(j) shows the writing process to the 9th ECU50I or the 10th ECU50J. Writing programs to the 9th ECU50I and 10th ECU50J is a process known as coding.

[0102] The time required for writing to Zone A-ECU11 is scheduled to be less than 1 minute, with a margin of 1 minute. Similarly, the scheduled time for writing to the 3rd ECU50C is 2 minutes, and the scheduled times for writing to the 6th ECU50F, 5th ECU50E, and 4th ECU50D are each 1 minute. The scheduled time for writing to the 7th ECU50G is 2 minutes, and the scheduled time for writing to the 8th ECU50H is 4 minutes. In addition, the scheduled time for writing to Zone B-ECU13 is 2 minutes, the scheduled time for writing to the 11th ECU50K is 2.2 minutes, and the scheduled coding times for the 9th ECU50I and 10th ECU50J are less than 1 minute. All of these scheduled times include buffer time (margin). Therefore, the writing process may actually be completed before the scheduled time has elapsed. In this case, Central ECU2 can start the writing process for the next target ECU before the scheduled time has elapsed.

[0103] In the example shown in Figure 7, the write process is initiated first for Zone A-ECU11 and Zone B-ECU13. During the period T1 from the start of processing until 1 minute later, the communication lines through which data is transferred are communication lines B1 and B2, and the sum of the communication speeds of these lines is within the load that the central ECU2 can handle.

[0104] After the writing process to Zone A-ECU11 is completed, the central ECU2 begins writing to the 3rd ECU50C and the 7th ECU50G. During period T2 in the diagram, the writing processes for Zone B-ECU13, the 3rd ECU50C, and the 7th ECU50G are performed in parallel. The communication lines through which data is transferred during period T2 are communication lines B2, B7, B10, and B1. The sum of the communication speeds of communication lines B1 and B2 is within the load range that the central ECU2 can handle. Also, the sum of the communication speeds of communication lines B7 and B10 is less than the communication speed of communication line B1, thus satisfying the predetermined conditions.

[0105] After the writing process for the 3rd ECU50C is completed, the central ECU2 begins the writing process for the 5th ECU50E. After the writing process for the 5th ECU50E is completed, the central ECU2 begins the writing process for the 4th ECU50D. This is to prevent the writing processes for the 4th ECU50D and the 5th ECU50E, which are connected to communication line B9, from occurring simultaneously. Also, after the writing process for the 7th ECU50G is completed, the central ECU2 begins the writing process for the 8th ECU50H. In this order, the writing processes for the 7th ECU50G and the 8th ECU50H, which are connected to communication line B10, do not occur in parallel.

[0106] Furthermore, after the writing process for the 3rd ECU50C and 7th ECU50G is completed, the 11th ECU50K wakes up from sleep mode in response to a wake-up request, and the writing process for the 11th ECU50K begins. The 11th ECU50K is connected to communication line B4, which has the highest communication speed. Therefore, the writing process for the 8th ECU50H, which is connected to communication line B10a, which has the lowest communication speed, and the writing process for the 11th ECU50K are performed in parallel.

[0107] In this way, the vehicle control system 1 can perform the programming of multiple ECUs in parallel, without exceeding the communication speed limit of the communication lines in the vehicle control system 1. Exceeding the communication speed limit can cause a specific communication line to become a bottleneck, leading to processing delays, and in addition, it may result in program programming failure due to communication timeouts. If program programming fails, it takes time to retry the programming process. Furthermore, exceeding the communication line limit may also lead to an excessive communication load on the central ECU 2. By performing program programming while avoiding these situations, the programming of multiple ECUs in the vehicle control system 1 can be completed in a short time.

[0108] Furthermore, the third ECU 50C is, for example, an FI control unit. Therefore, when this disclosure is applied to a vehicle V that does not have an internal combustion engine as a drive source for driving the vehicle V, but is equipped with a motor, the operation will be the same as in Figure 7, except for the operation related to the third ECU 50C.

[0109] Figure 8 shows an example of a vehicle V equipped with an internal combustion engine as a drive source for propelling the vehicle, but without an electric motor. The fourth ECU 50D is, for example, a motor control unit, and the fifth ECU 50E is, for example, a battery control unit. A vehicle V without an electric motor does not have the fourth ECU 50D and the fifth ECU 50E installed.

[0110] Figure 8(a) shows the writing process to Zone A-ECU11, Figure 8(b) shows the writing process to the 3rd ECU50C, and Figure 8(c) shows the writing process to the 6th ECU50F. Figure 8(f) shows the writing process to the 7th ECU50G, and Figure 8(g) shows the writing process to the 8th ECU50H. Figure 8(h) shows the writing process to Zone B-ECU13, Figure 8(i) shows the writing process to the 11th ECU50K, and Figure 8(j) shows the writing process to the 9th ECU50I or the 10th ECU50J.

[0111] Vehicle V shown in Figure 8 does not have the 4th ECU 50D and 5th ECU 50E, so the 6th ECU 50F can operate without problems even if it is connected to a lower-speed communication line. For this reason, the 6th ECU 50F may be connected to Zone A-ECU 11 via, for example, a 500kbps communication line. In this case, the writing process for the 6th ECU 50F will take longer. However, as shown in Figure 8, by starting the writing process for the 6th ECU 50F immediately after the writing process for the 3rd ECU 50C is completed, the writing process for multiple ECUs, including the 6th ECU 50F, can be completed in a short time.

[0112] The above embodiments illustrate one specific example of applying the present invention and do not limit the forms to which the invention is applied.

[0113] In the above embodiment, the process shown in Figures 4 to 6 is executed when no program has been written to memory 93. However, the central ECU 2 may overwrite the program in memory 93, which already contains the program, in step SA19. In this case, the program writing process makes the program of each ECU in the vehicle control system 1 up-to-date, so the process of checking the program version beforehand can be omitted.

[0114] In the above embodiment, an example was described in which the memory 220 is installed in the vehicle V with the write data 230 already stored in it, but this is just one example. For example, after the central ECU 2 is installed in the vehicle V, the write data 230 may be transmitted from the diagnostic device 300 to the central ECU 2 during the ECU wiring process (step S36), the battery installation process (step S37), or before or after these processes, causing the central ECU 2 to store the write data 230. In this case, the data and programs that the central ECU 2 will store in the memory 220 only need to be prepared before the program writing process (step S40), which further improves efficiency in the manufacturing process of the vehicle V.

[0115] Furthermore, the configuration of the vehicle control system 1 shown in the above embodiment is just one example, and the type of ECU, the number of ECUs, and the configuration of the devices controlled by the ECUs in the vehicle control system 1 can be changed in various ways. The step units shown in Figures 2, 4-6 are divided according to their main processing content to facilitate understanding of the manufacturing process of vehicle V and the operation of vehicle control system 1, and are not limited by the way or name of the processing units are divided. Depending on the processing content, it may be further divided into more step units. It may also be divided so that one step unit includes even more processing. The order of the steps may be changed as appropriate. Furthermore, the components described in this embodiment can be combined as appropriate. For example, configurations 1 to 10 described below can all be combined with any other configuration.

[0116] The above embodiment supports the following configuration.

[0117] (Configuration 1) A vehicle control system comprising: a vehicle control unit that controls a functional unit mounted on a vehicle by executing a program stored in a non-volatile program storage unit; and a master control unit connected to the vehicle control unit, wherein the master control unit comprises a non-volatile master storage unit, stores write data for writing the program to the program storage unit in the master storage unit, and is capable of executing a write process to write the program to the program storage unit of the vehicle control unit based on the write data; and selects a processing target control unit to be the target of the write process from among a plurality of vehicle control units based on predetermined selection conditions, sends a wake-up request to the processing target control unit, and then performs the write process on the processing target control unit. According to the vehicle control system of Configuration 1, the master control unit can write programs to the vehicle control units, allowing the master control unit to write programs to the vehicle control units during the vehicle manufacturing process. Therefore, it is possible to supply vehicle control units without programs to the vehicle manufacturing process, connect the vehicle control units to the master control unit, and then write the programs. When the master control unit writes programs to the vehicle control units, it selects the control units to be processed from the vehicle control units based on predetermined selection conditions, so that programs can be written sequentially to multiple vehicle control units in the appropriate order. This allows for reliable program management while eliminating or simplifying the process of checking the program specifications and status of the vehicle control units, and the process of writing programs to each vehicle control unit. Consequently, it becomes possible to shorten the manufacturing time at the vehicle manufacturing plant in order to improve vehicle fuel efficiency and to accommodate the installation of driver assistance and preventive safety technologies in vehicles, thereby reducing carbon dioxide emissions in the vehicle manufacturing process.

[0118] (Configuration 2) The vehicle control system according to Configuration 1, wherein the data for writing includes the program to be written to the program storage unit and correspondence data that associates the program with the vehicle control unit, and the master control unit performs the writing process to the vehicle control unit according to the correspondence data. According to the vehicle control system of Configuration 2, the program that the master control unit writes to the vehicle control units is clearly identified, and the master control unit can accurately write the program to multiple vehicle control units. Therefore, the master control unit can reliably write the appropriate program to the vehicle control units. This makes it possible to maintain reliability in the vehicle manufacturing process more reliably.

[0119] (Configuration 3) The vehicle control system according to Configuration 1 or Configuration 2, wherein the vehicle control unit includes a primary control unit connected to the master control unit by a higher-level communication line, and a secondary control unit connected to the primary control unit by a lower-level communication line and connected to the master control unit via the primary control unit, and the master control unit selects the primary control unit as the processing target control unit with priority over the secondary control unit. According to the vehicle control system of Configuration 3, in a configuration where vehicle control units are connected to a master control unit in multiple layers, the master control unit can write programs to each level of vehicle control unit. This allows programs to be written to each vehicle control unit in the appropriate order in a vehicle control system having multiple vehicle control units. This enables smooth program writing during the vehicle manufacturing process. As a result, it becomes possible to further reduce the manufacturing time at the vehicle manufacturing plant.

[0120] (Configuration 4) The vehicle control system according to Configuration 3, wherein the vehicle control unit includes a plurality of primary control units, and the master control unit selects the primary control units as the processing target control units in an order based on the number of secondary control units connected to each of the primary control units. According to the vehicle control system of configuration 4, when there are multiple vehicle control units directly connected to the master control unit, the order in which programs are written to these vehicle control units can be appropriately determined. This allows for smooth program writing throughout the entire vehicle control system, further reducing the manufacturing time at the vehicle manufacturing plant.

[0121] (Configuration 5) The vehicle control system according to Configuration 4, wherein the master control unit selects, from among a plurality of primary control units, the primary control unit with a larger number of connected secondary control units as the processing target control unit, prioritizing it over other primary control units.

[0122] (Configuration 6) The vehicle control system according to any one of Configurations 3 to 5, wherein the master control unit can select a plurality of vehicle control units as the processing target control units, and can perform the write process in parallel with the first primary control unit connected to the first upper communication line and the second primary control unit connected to the second upper communication line or the secondary control unit connected to the second primary control unit by the lower communication line, and can perform the write process in parallel with the first secondary control unit connected to the third primary control unit by the first lower communication line and the second secondary control unit connected to the third primary control unit by the second lower communication line. According to the vehicle control system of configuration 6, the master control unit can execute program writing processes for multiple vehicle control units in parallel, thereby further reducing the manufacturing time at the vehicle manufacturing plant. Furthermore, by appropriately distributing the load when executing program writing processes for multiple vehicle control units in parallel, program writing across the entire vehicle control system can be performed more smoothly.

[0123] (Configuration 7) The vehicle control system according to Configuration 6, wherein the master control unit can perform the write process in parallel with the first secondary control unit and the second secondary control unit when the communication speed of the third upper communication line connecting the master control unit and the third primary control unit is greater than the sum of the communication speed of the first lower communication line and the communication speed of the second lower communication line. According to the vehicle control system of configuration 7, the communication load when program writing processes are executed in parallel on multiple vehicle control units does not become excessive, so program writing can be performed more smoothly throughout the entire vehicle control system.

[0124] (Configuration 8) The vehicle control system according to Configuration 6 or Configuration 7, wherein when the master control unit performs the write process on a plurality of secondary control units, it performs the write process in parallel on the secondary control unit connected by the lower communication line with the fastest communication speed and on the secondary control unit connected by the lower communication line with the slowest communication speed. According to the vehicle control system of configuration 8, the communication load when program writing processes are executed in parallel on multiple vehicle control units can be appropriately adjusted, and program writing throughout the vehicle control system can be performed more smoothly.

[0125] (Configuration 9) The vehicle control system according to any one of Configurations 3 to 5, wherein the master control unit can select a plurality of the vehicle control units as the processing target control units, and when the primary control unit is selected as the processing target control unit, the secondary control unit connected to the selected primary control unit by the lower communication line is not selected as the processing target control unit, and a plurality of the secondary control units connected to one of the lower communication lines are not simultaneously selected as the processing target control units. According to the vehicle control system of configuration 9, the master control unit can execute program writing processes for multiple vehicle control units in parallel, thereby further reducing the manufacturing time at the vehicle manufacturing plant. Furthermore, by appropriately distributing the load when executing program writing processes for multiple vehicle control units in parallel, program writing across the entire vehicle control system can be performed more smoothly.

[0126] (Configuration 10) A program writing method in a vehicle control system comprising a vehicle control unit that controls a functional unit mounted on a vehicle by executing a program, and a master control unit connected to the vehicle control unit, wherein the master control unit stores writing data for writing the program to the vehicle control unit in a non-volatile master storage unit provided in the master control unit, the master control unit selects a processing target control unit to be used for the writing process from among a plurality of vehicle control units based on predetermined selection conditions, sends a wake-up request to the processing target control unit, and executes a writing process to write the program to the non-volatile program storage unit of the processing target control unit that responded to the wake-up request. According to the program writing method of configuration 10, the master control unit can write a program to the vehicle control unit, allowing the program to be written from the master control unit to the vehicle control unit during the vehicle manufacturing process. Therefore, it is possible to supply a vehicle control unit without a program installed to the vehicle manufacturing process, connect the vehicle control unit to the master control unit, and then write the program. When the master control unit writes a program to the vehicle control unit, it selects the control unit to be processed from the vehicle control unit based on predetermined selection conditions, so that the program can be written sequentially to multiple vehicle control units in the appropriate order. This allows for reliable program management while omitting or simplifying the process of checking the program specifications and status of the vehicle control unit, and the process of writing the program to each vehicle control unit. Consequently, it becomes possible to shorten the manufacturing time at the vehicle manufacturing plant in order to improve vehicle fuel efficiency and to accommodate the installation of driver assistance and preventive safety technologies in vehicles, thereby reducing carbon dioxide emissions in the vehicle manufacturing process. [Explanation of Symbols]

[0127] 1...Vehicle control system, 2...Central ECU (master control unit), 11...Zone A-ECU (vehicle control unit, primary control unit), 13...Zone B-ECU (vehicle control unit, primary control unit), 19...DLC (connection unit), 21...Processing unit, 23...Communication device, 50...ECU, 50C...3rd ECU (vehicle control unit, secondary control unit), 50D...4th ECU (vehicle control unit, secondary control unit), 50E...5th ECU (vehicle control unit, secondary control unit), 50F...6th ECU (vehicle control unit, secondary control unit), 50G...7th ECU (vehicle control unit, secondary control unit), 50H...8th ECU (vehicle control unit, secondary control unit), 50I...9th ECU (vehicle control unit), 50J...10th ECU (vehicle control unit), 50K...11th ECU (Vehicle Control Unit), 91, 91A, 91B, 91C, 91D, 91E, 91F, 91G, 91H...Processor, 93, 93A, 93B, 93C, 93D, 93E, 93F, 93G, 93H...Memory (Program Storage Unit), 210...Processor, 220...Memory (Master Storage Unit), 221...Control Program, 222...Control Data, 230...Writing Data, 231...Writing Processing Program, 232...Writing Setting Table (Corresponding Data), 233, 233A, 233B...Programs for ECUs, 235...Result Data, 300...Diagnostic Device (External Device), B1, B2...Communication Line (Higher-Level Communication Line), B3~B6...Communication Line, B7~B14...Communication Line (Lower-Level Communication Line), CB...Communication Cable, V...Vehicle.

Claims

1. A vehicle control unit, which includes a non-volatile program storage unit, controls a functional unit mounted on the vehicle by executing a program stored in the program storage unit, It comprises a master control unit connected to the vehicle control unit, The master control unit, It is equipped with a non-volatile master storage unit, and the master storage unit stores write data for writing the program to the program storage unit. Based on the aforementioned data for writing, the vehicle control unit can perform a writing process to write the program to the program storage unit it has. Based on predetermined selection criteria, a processing target control unit is selected from among a plurality of vehicle control units to be used for the writing process. A wake-up request is sent to the processing target control unit, and thereafter, the write operation is performed on the processing target control unit, which is in a state where it does not store the program. Vehicle control system.

2. The data to be written includes the program to be written to the program storage unit, and correspondence data that associates the program with the vehicle control unit. The vehicle control system according to claim 1, wherein the master control unit performs the write operation to the vehicle control unit according to the corresponding data.

3. The vehicle control unit, A primary control unit connected to the master control unit via a higher-level communication line, It includes a secondary control unit connected to the primary control unit by a lower communication line and connected to the master control unit via the primary control unit, The vehicle control system according to claim 1 or 2, wherein the master control unit selects the primary control unit as the processing target control unit with priority over the secondary control unit.

4. The vehicle control unit includes a plurality of primary control units, The vehicle control system according to claim 3, wherein the master control unit selects the primary control units as the processing target control units in an order based on the number of secondary control units connected to each of the primary control units.

5. The vehicle control system according to claim 4, wherein the master control unit selects, among a plurality of primary control units, a primary control unit that has a larger number of connected secondary control units as the processing target control unit, prioritizing it over other primary control units.

6. The master control unit can select a plurality of the vehicle control units as the processing target control units. The write process can be executed in parallel with the first primary control unit connected to the first upper-level communication line, the second primary control unit connected to the second upper-level communication line, or the secondary control unit connected to the second primary control unit by the lower-level communication line. A vehicle control system according to any one of claims 3 to 5, wherein the writing process can be performed in parallel with a first secondary control unit connected to a third primary control unit by a first lower communication line, and a second secondary control unit connected to a second lower communication line to the third primary control unit.

7. The vehicle control system according to claim 6, wherein the master control unit can perform the write process in parallel with the first secondary control unit and the second secondary control unit when the communication speed of the third upper communication line connecting the master control unit and the third primary control unit is greater than the sum of the communication speed of the first lower communication line and the communication speed of the second lower communication line.

8. The vehicle control system according to claim 6 or 7, wherein when the master control unit performs the write process on a plurality of secondary control units, it performs the write process in parallel on the secondary control unit connected by the lower communication line with the fastest communication speed and on the secondary control unit connected by the lower communication line with the slowest communication speed.

9. The master control unit can select a plurality of the vehicle control units as the processing target control units. If the primary control unit is selected as the control unit to be processed, the secondary control unit connected to the selected primary control unit by the lower communication line is not selected as the control unit to be processed. The vehicle control system according to any one of claims 3 to 5, wherein a plurality of secondary control units connected to a single lower communication line are not simultaneously selected as the processing target control unit.

10. A method for writing a program to a vehicle control system comprising a vehicle control unit that controls a functional unit mounted on a vehicle by executing a program, and a master control unit connected to the vehicle control unit, The non-volatile master storage unit of the master control unit stores write data for writing the program to the vehicle control unit. The master control unit, Based on predetermined selection criteria, a processing target control unit is selected from among the multiple vehicle control units to be used for the writing process. A wake-up request is sent to the aforementioned processing target control unit. In response to the wake-up request, the processing target control unit executes a write operation to write the program to the non-volatile program storage unit, which does not currently store the program. Program writing method.

Citation Information

Patent Citations

  • Vehicular electronic control system

    JP2014019280A

  • On-vehicle program writing device

    JP2018129093A

  • Vehicle electronic control unit, program update method and program

    JP2019144669A

  • Application installation apparatus, and installation method

    JP2020160845A