WO2021177019A1 - 車載中継装置、及びコンピュータプログラム - Google Patents
車載中継装置、及びコンピュータプログラム Download PDFInfo
- Publication number
- WO2021177019A1 WO2021177019A1 PCT/JP2021/005641 JP2021005641W WO2021177019A1 WO 2021177019 A1 WO2021177019 A1 WO 2021177019A1 JP 2021005641 W JP2021005641 W JP 2021005641W WO 2021177019 A1 WO2021177019 A1 WO 2021177019A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- vehicle
- processing unit
- communication
- ecu
- ethernet
- Prior art date
Links
Images
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60R—VEHICLES, VEHICLE FITTINGS, OR VEHICLE PARTS, NOT OTHERWISE PROVIDED FOR
- B60R16/00—Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for
- B60R16/02—Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for electric constitutive elements
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60R—VEHICLES, VEHICLE FITTINGS, OR VEHICLE PARTS, NOT OTHERWISE PROVIDED FOR
- B60R16/00—Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for
- B60R16/02—Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for electric constitutive elements
- B60R16/023—Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for electric constitutive elements for transmission of signals between vehicle parts or subsystems
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/46—Interconnection of networks
Definitions
- the present disclosure relates to an in-vehicle relay device and a computer program.
- This application claims priority based on Japanese Application No. 2020-036989 filed on March 4, 2020, and incorporates all the contents described in the Japanese application.
- the vehicle is equipped with a plurality of in-vehicle devices such as an in-vehicle ECU (Electronic Control Unit) and an in-vehicle relay device that relays communication between the plurality of in-vehicle devices.
- in-vehicle devices such as an in-vehicle ECU (Electronic Control Unit) and an in-vehicle relay device that relays communication between the plurality of in-vehicle devices.
- first communication protocol first communication protocol
- second communication protocol second communication protocol
- In-vehicle devices that perform the communication used are included.
- only in-vehicle devices that communicate using the same communication protocol are included.
- the in-vehicle relay device is manufactured according to the type of a plurality of in-vehicle devices mounted on the vehicle, that is, the type of the vehicle (vehicle type).
- the in-vehicle relay device described in Patent Document 1 uses a different communication protocol between communication using a CAN (Control Area Network / registered trademark) communication protocol and communication using an Ethernet (Ethernet / registered trademark) communication protocol. Relay communication.
- the in-vehicle relay device is an in-vehicle relay device mounted on a vehicle, connected to a plurality of in-vehicle devices, and relaying communication of the plurality of in-vehicle devices, and has a processing function related to communication relay.
- the first processing unit includes a first processing unit and a second processing unit, and the first processing unit performs processing related to relaying communication with a first in-vehicle device that communicates using the first communication protocol among the plurality of in-vehicle devices.
- the second processing unit When a second in-vehicle device that performs communication using a second communication protocol different from the first communication protocol is connected to the in-vehicle relay device, the second processing unit communicates with the second in-vehicle device.
- the first processing unit is configured to perform processing related to relay, and the first processing unit outputs a signal relating to start or stop of the second processing unit depending on whether or not the second vehicle-mounted device is connected to the vehicle-mounted relay device. do.
- FIG. It is a schematic diagram which shows the structure of the vehicle which mounts the vehicle-mounted relay device which concerns on Embodiment 1.
- FIG. It is a block diagram which shows the structure of the vehicle-mounted relay device which concerns on Embodiment 1.
- FIG. It is a conceptual diagram which shows the content example of the vehicle type table. It is a conceptual diagram which shows the content example of the vehicle type table. It is a conceptual diagram which shows the content example of the vehicle type table. It is a flowchart which exemplifies the process about the relay by the in-vehicle relay device performed by the 1st processing unit. It is a block diagram which shows the structure of the vehicle-mounted relay device which concerns on Embodiment 2.
- the in-vehicle relay device of Patent Document 1 includes an in-vehicle device that communicates using a CAN communication protocol and an in-vehicle device that communicates using a different communication protocol from the in-vehicle device that communicates using an Ethernet communication protocol. It can be applied (mounted) to the vehicle to be used. However, since the in-vehicle relay device is not compatible with a vehicle equipped with only an in-vehicle device that communicates using the same communication protocol, the in-vehicle relay device cannot be applied to the vehicle.
- the present disclosure has been made in view of such circumstances, and an object of the present disclosure is to provide an in-vehicle relay device or the like that can efficiently respond to the number of types of communication protocols used by in-vehicle devices of vehicles.
- the in-vehicle relay device can efficiently correspond to the number of types of communication protocols used by the in-vehicle device of the vehicle to be mounted.
- the in-vehicle relay device is an in-vehicle relay device mounted on a vehicle, connected to a plurality of in-vehicle devices, and relaying communication of the plurality of in-vehicle devices, and is a process related to communication relay.
- the first processing unit includes a first processing unit and a second processing unit having functions, and the first processing unit relates to relaying communication with a first in-vehicle device that performs communication using the first communication protocol among the plurality of in-vehicle devices.
- the second processing unit and the second in-vehicle device The first processing unit is configured to perform processing related to relaying the communication of the above, and the first processing unit relates to starting or stopping the second processing unit depending on whether or not the second vehicle-mounted device is connected to the vehicle-mounted relay device. Output a signal.
- the in-vehicle relay device relays the communication of a plurality of connected in-vehicle devices.
- the plurality of in-vehicle devices include at least the first in-vehicle device among the first in-vehicle device that performs communication using the first communication protocol and the second in-vehicle device that performs communication using the second communication protocol.
- the in-vehicle repeater includes, for example, a first processing unit and a second processing unit composed of different CPUs (Central Processing Units) or different cores of the CPUs.
- the first processing unit and the second processing unit have a processing function related to communication relay.
- the first processing unit performs processing related to relaying communication with the first in-vehicle device.
- the second processing unit When the second in-vehicle device is connected to the in-vehicle relay device, the second processing unit performs processing related to relaying communication with the second in-vehicle device. That is, the relay of the communication using the first communication protocol and the relay of the communication using the second communication protocol are individually performed. Therefore, as compared with the case where one processing unit such as one CPU or one core of the CPU performs processing related to relaying communication with the first in-vehicle device and processing related to relaying communication with the second in-vehicle device, the first It is possible to more stably relay the communication with the in-vehicle device and the communication with the second in-vehicle device.
- the first processing unit further determines whether or not the second in-vehicle device is connected in the in-vehicle relay device, that is, whether or not the second in-vehicle device is connected to the in-vehicle relay device, and the first processing unit determines whether or not the second in-vehicle device is connected. 2 Outputs a signal related to the start or stop of the processing unit.
- the first processing unit is the second. Outputs a signal related to the stop of the processing unit.
- the second processing unit is stopped. That is, when the second vehicle-mounted device is not connected to the vehicle-mounted relay device, the second processing unit does not perform processing related to relaying communication with the second vehicle-mounted device.
- the first processing unit is the second processing unit. Outputs a start-up signal.
- the second processing unit starts. In addition, processing related to relaying communication with the second in-vehicle device is performed. That is, the first processing unit activates the second processing unit.
- the second processing unit is made to perform processing related to relaying communication with the second in-vehicle device. Therefore, the same in-vehicle relay device can be used in different vehicle types depending on whether the vehicle is equipped with only the first in-vehicle device among the first in-vehicle device and the second in-vehicle device and the vehicle is equipped with the first in-vehicle device and the second in-vehicle device. It can be applied (mounted) to vehicles. That is, the same in-vehicle relay device can be applied to vehicles of different vehicle types due to different communication protocols used by the on-board devices.
- the in-vehicle relay device Since the first processing unit of the in-vehicle relay device stops or starts the second processing unit according to the type of communication protocol used by the in-vehicle device, the in-vehicle relay device is efficient in the number of types of communication protocols used by the in-vehicle device of the vehicle. Can be dealt with. Therefore, the in-vehicle relay device of the present disclosure can be used (applied / mounted) as a common component for vehicles of the above-mentioned different vehicle types.
- the vehicle-mounted relay device includes a first storage unit that stores a first program executed by the first processing unit and a second program executed by the second processing unit. It is provided with a second storage unit in which is stored.
- the in-vehicle relay device includes a first storage unit and a second storage unit.
- the first program executed by the first processing unit is stored in the first storage unit.
- the second storage unit stores a second program executed by the second processing unit.
- the first processing unit performs processing related to relaying communication with the first in-vehicle device, and determines whether or not the second in-vehicle device is connected in the in-vehicle relay device.
- the second processing unit executes the second program to perform processing related to relaying communication with the second in-vehicle device.
- the first processing unit can access the first storage unit, but cannot access the second storage unit.
- the second processing unit can access the second storage unit, but cannot access the first storage unit. Since the first program and the second program are individually stored, it is possible to prevent the first processing unit from accidentally executing the second program. In addition, it is possible to prevent the second processing unit from erroneously executing the first program.
- the vehicle-mounted relay device includes a first storage area in which a first program executed by the first processing unit is stored and a second program executed by the second processing unit.
- a storage unit having a second storage area in which the program is stored is provided.
- the vehicle-mounted relay device includes a storage unit having a first storage area and a second storage area.
- the first program executed by the first processing unit is stored in the first storage area.
- a second program executed by the second processing unit is stored in the second storage area. That is, the first program and the second program are divided into a first storage area and a second storage area and stored in the storage unit.
- the first processing unit performs processing related to relaying communication with the first in-vehicle device, and determines whether or not the second in-vehicle device is connected in the in-vehicle relay device.
- the second processing unit executes the second program to perform processing related to relaying communication with the second in-vehicle device.
- the storage unit By storing both the first program and the second program in the storage unit, it is possible to suppress an increase in the number of parts of the in-vehicle relay device. Since the first program and the second program are partitioned and stored, it is possible to prevent the first processing unit from accidentally executing the second program. In addition, it is possible to prevent the second processing unit from erroneously executing the first program.
- the first processing unit determines whether or not the second vehicle-mounted device is connected to the vehicle-mounted relay device each time the vehicle is started.
- the first processing unit determines whether or not the second vehicle-mounted device is connected in the vehicle-mounted relay device each time the vehicle is started, for example, each time the IG (ignition) switch is turned on.
- the in-vehicle relay device is installed in a vehicle that is not equipped with the second in-vehicle device.
- the first processing unit causes the second in-vehicle device to start the vehicle. It is determined that the device is connected to the in-vehicle relay device.
- the first processing unit performs processing related to relaying communication with the second in-vehicle device added to the second processing unit. That is, when the in-vehicle relay device is mounted on a vehicle not equipped with the second in-vehicle device and the second in-vehicle device is added to the vehicle, the communication with the second in-vehicle device can be relayed. can.
- the first processing unit has a usage rate of the first processing unit when the second vehicle-mounted device is not connected to the vehicle-mounted relay device.
- the second processing unit is made to perform a part of the processing related to the relay of the communication with the first in-vehicle device.
- the first processing unit performs the second processing when the second vehicle-mounted device is not connected to the vehicle-mounted relay device and the usage rate of the first processing unit is equal to or higher than a predetermined value.
- the first processing unit causes the activated second processing unit to perform a part of processing related to relaying communication with the first in-vehicle device.
- a part of the process related to the relay of the communication with the first in-vehicle device includes, for example, the process related to security such as encryption and decryption of the communication in the relay of the communication with the first in-vehicle device (communication using the first communication protocol). ..
- the second processing unit When the usage rate of the first processing unit exceeds a predetermined value, the second processing unit performs a part of the processing related to relaying the communication with the first in-vehicle device, so that the usage rate of the first processing unit increases. It is possible to prevent a delay in processing related to relaying communication with the first in-vehicle device. That is, it is possible to prevent the relay of communication with the first in-vehicle device from being delayed.
- the first communication protocol is a CAN communication protocol
- the second communication protocol is an Ethernet communication protocol
- the first communication protocol is the CAN communication protocol.
- the second communication protocol is an Ethernet communication protocol. That is, the first processing unit performs a process related to relaying communication using the CAN communication protocol as a process related to relaying communication with the first in-vehicle device.
- the second processing unit performs processing related to relaying communication using the Ethernet communication protocol as processing related to relaying communication with the second vehicle-mounted device.
- Communication with the second in-vehicle device (using Ethernet communication protocol) compared to the case where one processing unit performs processing related to relaying communication with the first in-vehicle device and processing related to relaying communication with the second in-vehicle device. It is possible to relay the communication) more stably and efficiently. That is, the stability in communication with an in-vehicle device that communicates using the Ethernet communication protocol can be further improved. By further improving the stability in communication between in-vehicle devices, it is possible to further improve the stability in the operation of the vehicle.
- the computer having the first processing unit and the second processing unit uses the first communication protocol among the plurality of in-vehicle devices in the first processing unit. Processes related to relaying communication with the first in-vehicle device that communicates, and depending on the presence or absence of connection of the second in-vehicle device that performs communication using a second communication protocol different from the first communication protocol in the computer. The process of outputting a signal relating to the start or stop of the second processing unit, which performs the process relating to the relay of communication with the second vehicle-mounted device, is executed.
- the computer can function as an in-vehicle relay device of one aspect of the present disclosure.
- FIG. 1 is a schematic view showing a configuration of a vehicle C equipped with the vehicle-mounted relay device 2 according to the first embodiment.
- FIG. 2 is a block diagram showing a configuration of the vehicle-mounted relay device 2 according to the first embodiment.
- the vehicle C is equipped with a plurality of in-vehicle devices including two types of in-vehicle ECUs, a CAN-ECU 30 that performs communication using the CAN communication protocol and an Ethernet ECU 31 that performs communication using the Ethernet communication protocol. ..
- Each in-vehicle ECU is connected to an in-vehicle relay device via a communication line such as a CAN bus 40 and an Ethernet cable 41, which will be described later.
- the in-vehicle relay device 2 relays communication (transmission / reception of a message, a program, or data) between each in-vehicle ECU.
- the CAN-ECU 30 controls driving of in-vehicle devices such as an engine and an alternator.
- the CAN-ECU 30 includes an in-vehicle communication unit (not shown) corresponding to the CAN communication protocol.
- the in-vehicle communication unit of the CAN-ECU 30 is connected to the in-vehicle relay device 2 via the CAN bus 40, which is a communication line corresponding to the CAN communication protocol. That is, the CAN-ECU 30 is connected to the in-vehicle relay device 2 via the CAN bus 40.
- the CAN bus 40 is composed of two wires, one on the high side and the other on the low side.
- two CAN-ECUs 30 are connected to the in-vehicle relay device 2 via two different CAN buses 40, but the number of CAN-ECU 30s and CAN buses 40 is not limited to two.
- a plurality of CAN-ECUs 30 may be connected to the CAN bus 40.
- the CAN-ECU 30 communicates with the in-vehicle relay device 2 using the communication protocol of CAN via the in-vehicle communication unit of the own ECU and the CAN bus 40.
- Each CAN-ECU 30 connected to a different CAN bus 40 communicates via the vehicle-mounted relay device 2. That is, the communication between the CAN and ECU 30 connected to the different CAN buses 40 is relayed by the in-vehicle relay device 2.
- the CAN communication protocol corresponds to the first communication protocol.
- the CAN-ECU 30 corresponds to the first in-vehicle device.
- the first communication protocol is not limited to the CAN communication protocol as long as it is a communication protocol different from the second communication protocol described later.
- the first communication protocol may be, for example, a communication protocol such as CAN-FD (CAN with flexible data rate), LIN (Local Interconnect Network), or FlexRay (registered trademark). That is, the first in-vehicle device is not limited to the CAN-ECU 30 (in-vehicle ECU that performs communication using the CAN communication protocol), and may be an in-vehicle ECU that performs communication using a communication protocol different from the second communication protocol.
- CAN-FD CAN with flexible data rate
- LIN Local Interconnect Network
- FlexRay registered trademark
- the first in-vehicle device includes an in-vehicle ECU that communicates using a communication protocol such as CAN-FD, LIN, or FlexRay.
- a communication protocol such as CAN-FD, LIN, or FlexRay.
- communication using the CAN communication protocol is also referred to as CAN communication.
- the Ethernet ECU 31 is, for example, an automatic driving ECU (vehicle-mounted ECU related to automatic driving) that performs processing related to recognition or judgment for performing automatic driving of the vehicle C.
- the Ethernet ECU 31 includes an in-vehicle communication unit (not shown) corresponding to the Ethernet communication protocol.
- the in-vehicle communication unit of the Ethernet ECU 31 is connected to the vehicle-mounted relay device 2 via an Ethernet cable 41 which is a communication line corresponding to the Ethernet communication protocol. That is, the Ethernet ECU 31 is connected to the vehicle-mounted relay device 2 via the Ethernet cable 41.
- the Ethernet cable 41 corresponds to a standard such as 100BASE-T1 or 1000BASE-T1.
- Ethernet ECUs 31 are connected to the vehicle-mounted relay device 2 via two different Ethernet cables 41, but the number of Ethernet ECUs 31 and Ethernet cables 41 is not limited to two.
- the Ethernet ECU 31 communicates with the in-vehicle relay device 2 using the Ethernet communication protocol via the in-vehicle communication unit of the own ECU and the Ethernet cable 41.
- Each Ethernet ECU 31 communicates via the vehicle-mounted relay device 2. That is, the communication between the Ethernet ECU 31 is relayed by the in-vehicle relay device 2.
- the CAN-ECU 30 and the Ethernet ECU 31 communicate with each other via the vehicle-mounted relay device 2. That is, the communication between the CAN-ECU 30 and the Ethernet ECU 31 is relayed by the in-vehicle relay device 2.
- the Ethernet communication protocol corresponds to the second communication protocol.
- the Ethernet ECU 31 corresponds to the second in-vehicle device.
- the second communication protocol may be a communication protocol different from the first communication protocol, and is not limited to the Ethernet communication protocol. That is, the second in-vehicle device is not limited to the Ethernet ECU 31 (in-vehicle ECU that performs communication using the Ethernet communication protocol), and may be any in-vehicle device that performs communication using a communication protocol different from the first communication protocol.
- communication using the Ethernet communication protocol is also referred to as Ethernet communication.
- the in-vehicle relay device 2 controls segments of a plurality of systems such as an in-vehicle ECU (CAN-ECU 30) of a CAN communication system that performs CAN communication and an in-vehicle ECU (Ethernet ECU 31) of an Ethernet communication system that performs Ethernet communication. It is a gateway (repeater) that relays communication between vehicle-mounted ECUs between these segments. Specifically, as described above, the vehicle-mounted relay device 2 relays the communication between the CAN and ECU 30 connected to the different CAN buses 40 and the communication between the Ethernet ECU 31.
- the communication between the CAN-ECU 30 and the Ethernet ECU 31, that is, the communication from the CAN-ECU 30 to the Ethernet ECU 31 and the communication from the Ethernet ECU 31 to the CAN-ECU 30 are relayed.
- the plurality of systems are further divided according to the functions of the in-vehicle ECU such as the body-based in-vehicle ECU, the safety-based in-vehicle ECU, and the control-based in-vehicle ECU. May be good.
- the in-vehicle relay device 2 may be configured as a functional unit of the body ECU that controls the entire vehicle C.
- the vehicle C is equipped with both the in-vehicle ECUs of the CAN-ECU 30 and the Ethernet ECU 31, but the vehicle C is configured to be equipped with only the CAN-ECU 30 among the in-vehicle ECUs of the CAN-ECU 30 and the Ethernet ECU 31.
- the vehicle C is configured to be equipped with only the CAN-ECU 30 among the in-vehicle ECUs of the CAN-ECU 30 and the Ethernet ECU 31.
- the vehicle C of a vehicle type that supports automatic driving is equipped with both in-vehicle ECUs of the CAN-ECU 30 and the Ethernet ECU 31.
- the in-vehicle relay device 2 includes a first processing unit 210 and a second processing unit 220 having a processing function related to communication relay. It also includes a CAN communication unit 211, a first storage unit 212, an Ethernet communication unit 221, a second storage unit 222, and an input / output I / F (interface) 23.
- the first processing unit 210, the second processing unit 220, and the input / output I / F 23 are each connected by a bus.
- the first processing unit 210 is composed of a CPU (Central Processing Unit), a microcomputer (microcomputer / microcontroller), a processor, an MPU (Micro Processing Unit), or the like.
- the first processing unit 210 may be configured by one core of the CPU or one core of the microcomputer.
- the first processing unit 210 reads and executes the first program 213 and data stored in advance in the first storage unit 212 to perform various control processing, arithmetic processing, and the like.
- the first storage unit 212 is composed of a volatile memory element such as RAM (Random Access Memory) or a non-volatile memory element such as ROM (Read Only Memory), EEPROM (Electrically Erasable Programmable ROM), or flash memory. It is done.
- the first storage unit 212 stores in advance the first program 213 executed by the first processing unit 210 and the data referred to by the first processing unit 210 at the time of processing.
- the first program 213 stored in the first storage unit 212 may store the first program 213 read from the recording medium 214 readable by the vehicle-mounted relay device 2. Further, the first program 213 may be downloaded from an external computer (not shown) connected to a communication network (not shown) and stored in the first storage unit 212.
- the first program 213 corresponds to a computer program. Further, the first storage unit 212 stores information regarding route information (routing table) defined based on the communication protocol when performing processing related to communication relay. The first storage unit 212 is connected to the first processing unit 210.
- the first processing unit 210 and the first storage unit 212 may be configured by a microcomputer or a processor in which they are packaged together. It is possible to suppress an increase in the number of parts of the in-vehicle relay device 2.
- the second processing unit 220 is composed of a CPU, a microcomputer, a processor, an MPU, or the like, like the first processing unit 210.
- the second processing unit 220 may be composed of one core of the CPU or one core of the microcomputer.
- the second processing unit 220 reads and executes the second program 223 and data stored in advance in the second storage unit 222 to perform various control processing, arithmetic processing, and the like.
- the second storage unit 222 is composed of a volatile memory element such as RAM or a non-volatile memory element such as ROM, EEPROM, or flash memory.
- the second storage unit 222 stores in advance the second program 223 executed by the second processing unit 220, the auxiliary program 224 described later, and the data referred to by the second processing unit 220 at the time of processing.
- the second program 223 and the auxiliary program 224 stored in the second storage unit 222 store the second program 223 and the auxiliary program 224 read from a recording medium (not shown) readable by the vehicle-mounted relay device 2. You may.
- the second program 223 and the auxiliary program 224 may be downloaded from an external computer (not shown) connected to a communication network (not shown) and stored in the second storage unit 222. Further, the second storage unit 222 stores information regarding route information (routing table) defined based on the communication protocol when performing processing related to communication relay. The second storage unit 222 is connected to the second processing unit 220.
- the second processing unit 220 and the second storage unit 222 may be configured by a microcomputer or a processor in which they are packaged together. It is possible to suppress an increase in the number of parts of the in-vehicle relay device 2.
- the CPU or microcomputer that constitutes the first processing unit 210, or the core or microcomputer core of the CPU is different from the CPU or microcomputer that constitutes the second processing unit 220, or the core of the CPU or microcomputer.
- the first processing unit 210 and the second processing unit 220 may be configured by a dual-core (multi-core) CPU or a dual-core (multi-core) microcomputer.
- the first processing unit 210 is composed of one core of a dual-core CPU (dual-core microcomputer).
- the second processing unit is composed of the other core of the dual-core CPU (dual-core microcomputer). It is possible to suppress an increase in the number of parts of the in-vehicle relay device 2.
- the first processing unit 210, the second processing unit 220, the first storage unit 212, and the second storage unit 222 may be configured by a microcomputer or a processor in which they are packaged together.
- the input / output I / F23 is, for example, a communication interface for serial communication.
- the in-vehicle relay device 2 is communicably connected to the IG switch 1 that starts and stops the vehicle C via the input / output I / F23.
- a device other than the IG switch 1, for example, a display device may be connected to the input / output I / F 23 so as to be communicable by a harness such as a serial cable.
- the display device is an HMI (Human Machine Interface) device such as a car navigation display.
- the CAN communication unit 211 corresponds to the communication protocol of CAN or CAN-FD, and corresponds to the CAN message transmitted on the CAN bus 40.
- the CAN communication unit 211 is a CAN transceiver or a CAN-FD transceiver that receives a waveform due to the potential difference of the differential voltage on the CAN bus 40 and decodes the received waveform into a signal represented by a bit string of 1 and 0.
- the CAN communication unit 211 may include a CAN transceiver and a CAN controller, or a CAN-FD transceiver and a CAN-FD controller.
- the CAN communication unit 211 is connected to the CAN-ECU 30 via the CAN bus 40.
- the CAN communication unit 211 is connected to the first processing unit 210.
- the Ethernet communication unit 221 is an Ethernet PHY unit corresponding to packets such as TCP / IP or UDP / IP transmitted by the Ethernet cable 41.
- the Ethernet PHY unit is a physical layer I / F determined based on the Ethernet communication protocol.
- the Ethernet communication unit 221 is connected to the second processing unit 220.
- the Ethernet communication unit 221 is connected to the Ethernet ECU 31 via the Ethernet cable 41.
- FIG. 2 three Ethernet communication units 221 are shown. Of the three Ethernet communication units 221, each of the two Ethernet communication units 221 is connected to a different Ethernet ECU 31. Of the three Ethernet communication units 221 and the remaining one Ethernet communication unit 221 is not connected to the Ethernet ECU 31. For example, when the Ethernet ECU 31 (second vehicle-mounted device) is added to the vehicle C, the added Ethernet ECU 31 is connected to the remaining one Ethernet communication unit 221. For example, the connection between the added Ethernet ECU 31 and the Ethernet communication unit 221 may be performed by plug and play. That is, the Ethernet communication unit 221 may support plug and play.
- the number of Ethernet communication units 221 is not limited to three. A plurality of Ethernet ECUs 31 may be connected to the same Ethernet communication unit 221.
- the Ethernet communication unit 221 may not be provided on the vehicle-mounted relay device 2. That is, in this case, each component (Ethernet communication unit 221, Ethernet cable 41, and Ethernet ECU 31) surrounded by the broken line in FIGS. 1 and 2 is not provided.
- the first processing unit 210 performs processing related to relaying communication with the CAN-ECU 30 (first vehicle-mounted device) by executing the first program 213 stored in the first storage unit 212.
- processing related to relaying communication with the CAN-ECU 30 will be described.
- the first processing unit 210 relays communication between the CAN and ECU 30 connected to different CAN buses 40 via the CAN communication unit 211. At this time, the first processing unit 210 and the CAN communication unit 211 also function as a CAN gateway.
- the first processing unit 210 converts the protocol from the CAN communication protocol to the Ethernet communication protocol for the communication from the CAN-ECU 30. I do. That is, the first processing unit 210 has a protocol conversion function. The first processing unit 210 outputs the communication from the CAN-ECU 30 that has undergone protocol conversion to the second processing unit 220. The first processing unit 210 acquires the communication from the Ethernet ECU 31 converted into the CAN communication protocol by the second processing unit 220 from the second processing unit 220. The first processing unit 210 outputs the acquired communication from the Ethernet ECU 31 to the CAN-ECU 30 as a relay destination via the CAN communication unit 211.
- the first processing unit 210 may output the communication from the CAN-ECU 30 to the second processing unit 220 without protocol conversion.
- the second processing unit 220 performs protocol conversion from the CAN communication protocol to the Ethernet communication protocol for the communication from the CAN-ECU 30 output from the first processing unit 210.
- the process related to the relay of the communication with the CAN-ECU 30 includes, for example, the process related to security such as encryption and decryption of the communication in the relay of the communication with the CAN-ECU 30.
- the first processing unit 210 determines whether or not the Ethernet ECU 31 (second vehicle-mounted device) in the vehicle-mounted relay device 2 is connected by executing the first program 213 stored in the first storage unit 212. In addition, a signal relating to the start or stop of the second processing unit 220 is output depending on whether or not the Ethernet ECU 31 is connected in the vehicle-mounted relay device 2. The determination of whether or not the Ethernet ECU 31 (second vehicle-mounted device) is connected is performed, for example, every time the IG switch 1 is turned from off to on, that is, every time the vehicle C is started.
- the first processing unit 210 determines that the Ethernet ECU 31 (second vehicle-mounted device) is not connected to the vehicle-mounted relay device 2.
- the first processing unit 210 determines that the Ethernet ECU 31 (second vehicle-mounted device) is connected to the vehicle-mounted relay device 2.
- the in-vehicle relay device 2 may have a configuration in which information regarding whether or not the Ethernet ECU 31 is connected is stored in the first storage unit 212, for example, when it is manufactured in a factory or when it is mounted on a vehicle C.
- the first processing unit 210 determines whether or not the Ethernet ECU 31 is connected based on the information about whether or not the Ethernet ECU 31 is connected, which is stored in the first storage unit 212.
- Information regarding the presence / absence of the connection of the Ethernet ECU 31 is input to the vehicle-mounted relay device 2 using, for example, a diagnostic tool connected to the input / output I / F 23, and stored in the first storage unit 212.
- the first processing unit 210 may determine whether or not the Ethernet ECU 31 is connected when the diagnostic tool is removed from the input / output I / F 23 (vehicle C), for example.
- the first processing unit 210 may determine whether or not the Ethernet ECU 31 (second vehicle-mounted device) is connected based on the vehicle identification number (Vehicle Identification Number / VIN) of the vehicle C.
- the vehicle identification number is stored in the first storage unit 212, for example, when the vehicle-mounted relay device 2 is mounted on the vehicle C.
- the first processing unit 210 may acquire the vehicle identification number of the vehicle C from any CAN-ECU 30 connected to the CAN communication unit 211 (vehicle-mounted relay device 2).
- the vehicle type table is stored in the first storage unit 212.
- 3A, 3B and 3C are conceptual diagrams showing an example of the contents of the vehicle type table.
- FIG. 3A is a conceptual diagram showing an example of the contents of the vehicle model table stored in the first storage unit 212 of the vehicle-mounted relay device 2 mounted on the vehicle C of the vehicle model on which the Ethernet ECU 31 is mounted.
- FIG. 3B is a conceptual diagram showing an example of the contents of the vehicle model table stored in the first storage unit 212 of the vehicle-mounted relay device 2 mounted on the vehicle C of the vehicle model on which the Ethernet ECU 31 is not mounted.
- the vehicle identification number of the vehicle type table of FIGS. 3A and 3B is the vehicle identification number of the vehicle C on which the vehicle-mounted relay device 2 including the first storage unit 212 for storing the vehicle type table is mounted. Whether or not the Ethernet ECU 31 is installed in the vehicle model table of FIG. 3A is present. There is no presence or absence of the Ethernet ECU 31 installed in the vehicle model table of FIG. 3B.
- the first processing unit 210 refers to the vehicle model table and identifies the vehicle model of vehicle C and whether or not the Ethernet ECU 31 is installed in the vehicle model from the acquired vehicle identification number. When the first processing unit 210 identifies that the vehicle type of the vehicle C is equipped with the Ethernet ECU 31, it determines that the Ethernet ECU 31 is connected to the vehicle-mounted relay device 2. When the first processing unit 210 specifies that the vehicle type of the vehicle C is not equipped with the Ethernet ECU 31, the first processing unit 210 determines that the Ethernet ECU 31 is not connected to the vehicle-mounted relay device 2.
- the vehicle type table may be stored in an external server provided outside the vehicle C.
- FIG. 3C is a conceptual diagram showing an example of the contents of the vehicle model table stored in the external server.
- the vehicle model table for example, a plurality of vehicle identification numbers, a vehicle model of a vehicle having each vehicle identification number, and whether or not the Ethernet ECU 31 is installed in each vehicle model are stored in association with each other.
- the first processing unit 210 (vehicle-mounted relay device 2) communicates with an external server via a wireless communication device (not shown) mounted on the vehicle C, and transmits the vehicle identification number of the vehicle C to the external server.
- the external server refers to the vehicle model table and identifies whether or not the Ethernet ECU 31 is installed in the vehicle model of vehicle C from the transmitted vehicle identification number.
- the external server transmits the presence / absence of the Ethernet ECU 31 in the specified vehicle type of the vehicle C to the first processing unit 210 (vehicle-mounted relay device 2) via the wireless communication device.
- the first processing unit 210 determines that the Ethernet ECU 31 is connected to the vehicle-mounted relay device 2 (when the Ethernet ECU 31 is connected to the vehicle-mounted relay device 2), the first processing unit 210 outputs a signal relating to the activation of the second processing unit 220. do.
- the first processing unit 210 determines that the Ethernet ECU 31 is not connected to the vehicle-mounted relay device 2 (when the Ethernet ECU 31 is not connected to the vehicle-mounted relay device 2)
- the first processing unit 210 outputs a signal relating to the stop of the second processing unit 220. do.
- the first processing unit 210 and the second processing unit 220 are started.
- the activated first processing unit 210 determines whether or not the Ethernet ECU 31 is connected in the vehicle-mounted relay device 2.
- the first processing unit 210 determines that the Ethernet ECU 31 is not connected to the vehicle-mounted relay device 2, it outputs a signal regarding the stop of the second processing unit 220 and stops the second processing unit 220.
- the power supply to the second processing unit 220 is stopped.
- the first processing unit 210 may put the second processing unit 220 in an idle state (idling state) instead of stopping the second processing unit 220.
- the first processing unit 210 determines that the Ethernet ECU 31 is connected to the vehicle-mounted relay device 2, it outputs a signal related to the activation of the second processing unit 220. Since the second processing unit 220 has already been started, the started state is continued. By outputting a signal related to the activation of the second processing unit 220, the second processing unit 220 performs processing related to relaying communication with the Ethernet ECU 31, which will be described later. That is, when the first processing unit 210 determines that the Ethernet ECU 31 is connected to the vehicle-mounted relay device 2, the first processing unit 210 causes the second processing unit 220 to perform processing related to relaying communication with the Ethernet ECU 31.
- the activated second processing unit 220 performs processing related to relaying communication with the Ethernet ECU 31 when a signal relating to the stop of the second processing unit 220 is not output regardless of the output of the signal relating to the activation of the second processing unit 220. You may.
- the first processing unit 210 determines whether or not the Ethernet ECU 31 is connected to the in-vehicle relay device 2.
- the first processing unit 210 determines that the Ethernet ECU 31 is connected to the vehicle-mounted relay device 2, it outputs a signal relating to the activation of the second processing unit 220 and activates the second processing unit 220.
- the activated second processing unit 220 performs processing related to relaying communication with the Ethernet ECU 31.
- the first processing unit 210 determines that the Ethernet ECU 31 is connected to the vehicle-mounted relay device 2
- the first processing unit 210 causes the second processing unit 220 to perform processing related to relaying communication with the Ethernet ECU 31.
- the first processing unit 210 determines that the Ethernet ECU 31 is not connected to the vehicle-mounted relay device 2, it outputs a signal regarding the stop of the second processing unit 220. Since the second processing unit 220 has already stopped, the stopped state is continued.
- the first processing unit 210 performs the following processing by executing the first program 213 stored in the first storage unit 212.
- the first processing unit 210 is connected to the CAN-ECU 30 when the Ethernet ECU 31 is not connected to the vehicle-mounted relay device 2 and the usage rate of the first processing unit 210 is equal to or higher than a predetermined value (usage rate threshold value).
- the second processing unit is made to perform a part of the processing related to the relay of communication. Specifically, the first processing unit 210 is the second when the Ethernet ECU 31 (second in-vehicle device) is not connected and the usage rate of the first processing unit 210 is equal to or higher than a predetermined value (usage rate threshold value).
- a signal relating to the activation of the processing unit 220 is output, and the second processing unit 220 is activated.
- the first processing unit 210 outputs a signal indicating that the usage rate of the first processing unit 210 is high to the activated second processing unit 220, and connects the CAN-ECU 30 (first in-vehicle device) to the second processing unit 220.
- the usage rate of the first processing unit 210 is, for example, the usage rate of the CPU or the core of the CPU constituting the first processing unit 210.
- the usage rate threshold value is predetermined and is stored in, for example, the first storage unit 212.
- a part of the process related to the relay of the communication with the CAN-ECU 30 includes the process related to security such as encryption and decryption of the communication in the relay of the communication with the CAN-ECU 30.
- the first processing unit 210 causes the second processing unit 220 to perform a part of processing related to relaying communication with the CAN-ECU 30. That is, when the usage rate of the first processing unit 210 becomes equal to or higher than a predetermined value, the first processing unit 210 causes the second processing unit 220 to assist the processing related to the relay of the communication with the CAN-ECU 30.
- the second processing unit 220 connects with the Ethernet ECU 31. Performs processing related to communication relay.
- processing related to relaying communication with the Ethernet ECU 31 will be described.
- the second processing unit 220 relays the communication between the Ethernet ECU 31 connected to the Ethernet communication unit 221 via the Ethernet communication unit 221. At this time, the second processing unit 220 and the Ethernet communication unit 221 also function as an ether switch.
- the second processing unit 220 converts the protocol from the Ethernet communication protocol to the CAN communication protocol for the communication from the Ethernet ECU 31. conduct. That is, the second processing unit 220 has a protocol conversion function.
- the second processing unit 220 outputs the communication from the Ethernet ECU 31 that has undergone protocol conversion to the first processing unit 210.
- the second processing unit 220 acquires the communication from the CAN-ECU 30 converted into the Ethernet communication protocol by the first processing unit 210 from the first processing unit 210.
- the second processing unit 220 outputs the acquired communication from the CAN-ECU 30 to the relay destination Ethernet ECU 31 via the Ethernet communication unit 221.
- the second processing unit 220 may output the communication from the Ethernet ECU 31 to the first processing unit 210 without protocol conversion.
- the first processing unit 210 performs protocol conversion from the Ethernet communication protocol to the CAN communication protocol for the communication from the Ethernet ECU 31 output from the second processing unit 220.
- the process related to the relay of the communication with the Ethernet ECU 31 includes the process related to security such as encryption and decryption of the communication in the relay of the communication with the Ethernet ECU 31.
- the second processing unit 220 executes a part of the processing related to the relay of the communication with the CAN-ECU 30 described above by executing the auxiliary program 224 stored in the second storage unit 222.
- the auxiliary program 224 is a program for the second processing unit 220 to perform a part of the processing related to the relay of the communication with the CAN-ECU 30, and the first processing unit 210 to assist the processing related to the relay of the communication with the CAN-ECU 30. Is.
- the second processing unit 220 executes the auxiliary program 224 when a signal indicating that the usage rate of the first processing unit 210 is high is output from the first processing unit 210.
- the second processing unit 220 when the Ethernet ECU 31 is connected to the vehicle-mounted relay device 2, the second processing unit 220 does not execute the auxiliary program 224.
- the second processing unit 220 executes the second program 223 when the Ethernet ECU 31 is connected to the vehicle-mounted relay device 2.
- the first program 213 and the second program 223 are individually stored in the first storage unit 212 and the second storage unit 222.
- the first processing unit 210 can access the first storage unit 212, but cannot access the second storage unit 222. That is, the first processing unit 210 can read (execute) the data and the program (first program 213) stored in the first storage unit 212, but the data and program (executed) stored in the second storage unit 222.
- the second program 223) cannot be read.
- the second processing unit 220 can access the second storage unit 222, but cannot access the first storage unit 212. That is, the second processing unit 220 can read the data and the program stored in the second storage unit 222, but cannot read the data and the program stored in the first storage unit 212. Therefore, it is possible to prevent the first processing unit 210 from accidentally executing the second program 223. It is possible to prevent the second processing unit 220 from accidentally executing the first program 213.
- FIG. 4 is a flowchart illustrating processing related to relay by the in-vehicle relay device 2 performed by the first processing unit 210.
- the first processing unit 210 and the second processing unit 220 are activated.
- the activated first processing unit 210 performs processing related to relaying by the following in-vehicle relay device 2. That is, when the vehicle C is started, the first processing unit 210 performs the following processing related to relaying by the in-vehicle relay device 2.
- the process related to the relay of communication with the CAN-ECU 30 first in-vehicle device
- the process related to relaying communication with the Ethernet ECU 31 (second in-vehicle device) is also referred to as a second process.
- the first processing unit 210 starts processing (first processing) related to relaying communication with the CAN-ECU 30 (S1). For example, the first processing unit 210 relays the communication between the CAN and ECU 30 connected to different CAN buses 40 as described above. Further, the communication from the CAN-ECU 30 whose protocol has been converted from the CAN communication protocol to the Ethernet communication protocol is output to the second processing unit 220. Further, the communication from the Ethernet ECU 31, which is output from the second processing unit 220 and whose protocol is converted from the Ethernet communication protocol to the CAN communication protocol, is relayed (output) to the relay destination CAN-ECU 30.
- the first processing unit 210 determines whether or not the Ethernet ECU 31 (second vehicle-mounted device) is connected to the vehicle-mounted relay device 2, that is, whether or not the Ethernet ECU 31 is connected to the vehicle-mounted relay device 2 (S2). The presence or absence of the connection of the Ethernet ECU 31 in the in-vehicle relay device 2 is determined as described above.
- the first processing unit 210 determines that the Ethernet ECU 31 is connected to the vehicle-mounted relay device 2 (S2: YES)
- the first processing unit 210 outputs a signal regarding the activation of the second processing unit 220 (S3).
- the second processing unit 220 is made to start the second processing. That is, the second processing unit 220 executes the second program 223 and starts the second processing (processing related to relaying communication with the Ethernet ECU 31). For example, the second processing unit 220 relays the communication between the Ethernet ECU 31 as described above. Further, the communication from the Ethernet ECU 31 whose protocol has been converted from the Ethernet communication protocol to the CAN communication protocol is output to the first processing unit 210. Further, the communication from the CAN-ECU 30 which is output from the first processing unit 210 and whose protocol is converted from the CAN communication protocol to the Ethernet communication protocol is relayed (output) to the relay destination Ethernet ECU 31.
- the relay of the communication between the CAN and ECU 30 connected to different CAN buses 40, the relay of the communication between the Ethernet ECU 31, and the relay of the communication between the CAN-ECU 30 and the Ethernet ECU 31 are the first processes. It is performed by the unit 210 and the second processing unit 220.
- the first processing unit 210 ends the processing.
- the first processing unit 210 ends the first processing and the processing related to the relay by the in-vehicle relay device 2.
- the second processing unit 220 ends the second processing.
- the first processing unit 210 determines that the Ethernet ECU 31 is not connected to the vehicle-mounted relay device 2 (S2: NO)
- the first processing unit 210 outputs a signal regarding the stop of the second processing unit 220 (S4).
- the second processing unit 220 is stopped.
- the second processing unit 220 may be in an idle state.
- the first processing unit 210 relays the communication between the CAN and ECU 30 connected to different CAN buses 40.
- the first processing unit 210 determines whether or not the usage rate of the first processing unit 210 is less than a predetermined value (usage rate threshold value) (S5).
- a predetermined value usage rate threshold value
- S5 usage rate threshold value
- the first processing unit 210 is the second processing unit 220.
- a signal related to activation is output (S6), and the second processing unit 220 is activated.
- the first processing unit 210 causes the activated second processing unit 220 to perform a part of the first processing (a part of the processing related to relaying communication with the CAN-ECU 30) (S7). That is, the second processing unit 220 is activated, executes the auxiliary program 224, and performs a part of the first processing.
- the usage rate of the first processing unit 210 becomes smaller than a predetermined value (threshold value of the usage rate) or less than a certain value while the second processing unit 220 performs a part of the first processing.
- the second processing unit 220 may terminate a part of the first processing.
- the first processing unit 210 periodically determines whether or not the usage rate of the first processing unit 210 is less than a predetermined value, for example, at a fixed cycle, and when the usage rate of the first processing unit 210 is equal to or more than a predetermined value.
- the second processing unit 220 may be made to perform a part of the first processing again.
- the first processing unit 210 ends the processing. Specifically, the first processing unit 210 ends the first processing and the processing related to the relay by the in-vehicle relay device 2.
- the first processing unit 210 ends the processing when, for example, the IG switch 1 is turned from on to off. Specifically, the first processing unit 210 ends the first processing and the processing related to the relay by the in-vehicle relay device 2. For example, the first processing unit 210 determines whether or not the usage rate of the first processing unit 210 is less than a predetermined value on a regular basis, for example, at a fixed cycle, from the time when the IG switch 1 is turned on to the time when the IG switch 1 is turned off. You may. That is, when the usage rate of the first processing unit 210 is less than a predetermined value, the first processing unit 210 may perform loop processing to determine S5 again.
- a predetermined value S5: YES
- the first processing unit 210 performs processing (first processing) related to relaying communication with the CAN-ECU 30.
- the second processing unit 220 performs a process (second process) related to relaying communication with the Ethernet ECU 31. Therefore, the first process and the second process are performed individually. That is, the relay of the communication using the CAN communication protocol (first communication protocol) and the relay of the communication using the Ethernet communication protocol (second communication protocol) are performed individually. Therefore, as compared with the case where the first process and the second process are performed by one processing unit composed of one CPU or one core of the CPU, the relay of the communication with the CAN-ECU 30 and the communication with the Ethernet ECU 31 are performed.
- the relay can be performed more stably. That is, the stability in relaying communication with the CAN-ECU 30 (first vehicle-mounted device) and relaying communication with the Ethernet ECU 31 (second vehicle-mounted device) can be further improved.
- the first processing unit 210 determines whether or not the Ethernet ECU 31 is connected to the vehicle-mounted relay device 2, that is, whether or not the Ethernet ECU 31 is connected to the vehicle-mounted relay device 2.
- the first processing unit 210 outputs a signal regarding the start or stop of the second processing unit 220 according to the presence or absence of the connection of the Ethernet ECU 31, and causes the second processing unit 220 to perform the second processing.
- the Ethernet ECU 31 is connected to the vehicle-mounted relay device 2, that is, when the vehicle C equipped with the vehicle-mounted relay device 2 is equipped with the CAN-ECU 30 and the Ethernet ECU 31, the first processing unit and the second processing unit first use the Ethernet ECU 31. The process and the second process are performed.
- the first processing unit 210 performs the first processing. I do.
- the second processing unit 220 does not perform the second processing. Therefore, the same in-vehicle relay device 2 is applied to a vehicle C in which only the CAN-ECU 30 is mounted and a vehicle in which the CAN-ECU 30 and the Ethernet ECU 31 are mounted among the CAN-ECU 30 and the Ethernet ECU 31. Can be installed).
- the same in-vehicle relay device 2 can be applied to the vehicle C of a vehicle type in which the number of types of communication protocols is different due to the difference in the communication protocol used by the mounted in-vehicle device (in-vehicle ECU). Since the first processing unit 210 stops or starts the second processing unit 220 according to the type of communication protocol used by the vehicle-mounted device (vehicle-mounted ECU), the vehicle-mounted relay device 2 uses the communication protocol used by the vehicle-mounted device of the vehicle C. It can efficiently handle the number of types. Therefore, the vehicle-mounted relay device 2 of the present disclosure can be used (applied / mounted) as a common component for the vehicle C of the above-mentioned different vehicle types.
- the first processing unit 210 determines whether or not the Ethernet ECU 31 is connected in the vehicle-mounted relay device 2 according to a predetermined condition such as every time the vehicle C is started (every time the IG switch 1 is turned on). For example, when the vehicle-mounted relay device 2 is mounted on the vehicle C, the CAN-ECU 30 is mounted on the vehicle C, but the Ethernet ECU 31 is not mounted on the vehicle C. That is, the vehicle-mounted relay device 2 is connected to the CAN-ECU 30, but is not connected to the Ethernet ECU 31. At this time, the first processing unit 210 performs the first processing, but the second processing unit 220 does not perform the second processing. That is, the in-vehicle relay device 2 relays the communication between the CAN and the ECU 30 in the vehicle C.
- a predetermined condition such as every time the vehicle C is started (every time the IG switch 1 is turned on). For example, when the vehicle-mounted relay device 2 is mounted on the vehicle C, the CAN-ECU 30 is mounted on the vehicle C,
- the first processing unit 210 determines that the Ethernet ECU 31 is connected to the vehicle-mounted relay device 2, for example, when the vehicle C is started. In the vehicle-mounted relay device 2, in addition to the first processing by the first processing unit 210, the second processing by the second processing unit 220 is performed.
- the in-vehicle relay device 2 relays the communication between the CAN-ECU 30, the communication between the Ethernet ECU 31, and the communication between the CAN-ECU 30 and the Ethernet ECU 31 in the vehicle C. Therefore, when the vehicle-mounted relay device 2 is mounted on the vehicle C not equipped with the Ethernet ECU 31, and the Ethernet ECU 31 is added to the vehicle C, the vehicle-mounted relay device 2 relays the communication with the Ethernet ECU 31. It can be carried out.
- the CAN communication protocol corresponds to the first communication protocol.
- the Ethernet communication protocol corresponds to the second communication protocol.
- the CAN communication protocol is generally widely used in communication with in-vehicle devices. Communication using the Ethernet communication protocol is used, for example, for communication with an in-vehicle ECU related to automatic driving of vehicle C. Communication using the Ethernet communication protocol may be used for communication with an in-vehicle device (vehicle-mounted ECU) other than the in-vehicle ECU related to the automatic driving of the vehicle C.
- the second processing by the second processing unit 220 the relay of communication using the Ethernet communication protocol is more stable than in the case where the above-mentioned one processing unit performs the first processing and the second processing. It can be carried out. That is, the stability in communication with an in-vehicle device that performs Ethernet communication can be further improved. By further improving the stability in communication between the in-vehicle devices, it is possible to further improve the stability in the operation of the vehicle C.
- the in-vehicle relay device 2 includes two processing units (first processing unit 210 and second processing unit 220), and two communications using a CAN communication protocol (first communication protocol) and an Ethernet communication protocol (second communication protocol). It corresponds to the number of protocol types.
- the in-vehicle relay device 2 may include three or more processing units and correspond to the number of types of three or more communication protocols.
- the vehicle-mounted relay device 2 may include a third processing unit (not shown) in addition to the first processing unit 210 and the second processing unit 220.
- the third processing unit is composed of a CPU, a microcomputer, a processor, an MPU, one core of the CPU, one core of the microcomputer, and the like.
- the third processing unit is the third. 3 Performs processing related to relaying communication with in-vehicle devices.
- the first processing unit 210 determines whether or not the third in-vehicle device is connected in the in-vehicle relay device 2, and relates to starting or stopping the third processing unit according to the presence or absence of the connection of the third in-vehicle device in the in-vehicle relay device 2. Output a signal.
- FIG. 5 is a block diagram showing a configuration of the vehicle-mounted relay device 2 according to the second embodiment.
- the same components as those of the first embodiment are designated by the same reference numerals, and detailed description thereof will be omitted.
- the in-vehicle relay device 2 includes a first processing unit 210, a CAN communication unit 211, a second processing unit 220, an Ethernet communication unit 221 and an input / output I / F 23. Since the first processing unit 210, the CAN communication unit 211, and the input / output I / F 23 are the same as the first processing unit 210, the CAN communication unit 211, and the input / output I / F 23 of the first embodiment, detailed description thereof will be omitted. Since the second processing unit 220 and the Ethernet communication unit 221 are the same as the second processing unit 220 and the Ethernet communication unit 221 of the first embodiment, detailed description thereof will be omitted.
- the vehicle-mounted relay device 2 when the vehicle-mounted relay device 2 is mounted on the vehicle C equipped with only the CAN-ECU 30 among the CAN-ECU 30 and the Ethernet ECU 31, the vehicle-mounted relay device 2 is not provided with the Ethernet communication unit 221. You may. That is, in this case, each component (Ethernet communication unit 221, Ethernet cable 41, and Ethernet ECU 31) surrounded by the broken line in FIG. 5 is not provided.
- the in-vehicle relay device 2 includes a storage unit 24 composed of a volatile memory element such as RAM or a non-volatile memory element such as ROM, EEPROM, or flash memory.
- the storage unit 24 has a first storage area 240 in which the first program 213 is stored, and a second storage area 241 in which the second program 223 is stored. That is, the first program 213 and the second program 223 are divided into a first storage area 240 and a second storage area 241 and stored in the storage unit 24. Further, the first storage area 240 and the second storage area 241 (storage unit 24) store information on route information (routing table) defined based on the communication protocol when performing processing related to communication relay. Auxiliary program 224 is further stored in the second storage area 241. By storing the first program 213, the second program 223, and the auxiliary program 224 in the storage unit 24, it is possible to suppress an increase in the number of parts of the vehicle-mounted relay device 2.
- the first program 213 stored in the first storage area 240 may store the first program 213 read from the recording medium 214 readable by the vehicle-mounted relay device 2. Further, the first program 213 may be downloaded from an external computer (not shown) connected to a communication network (not shown) and stored in the first storage area 240.
- the second program 223 and the auxiliary program 224 stored in the second storage area 241 store the second program 223 and the auxiliary program 224 read from a recording medium (not shown) readable by the vehicle-mounted relay device 2. You may. Further, the second program 223 and the auxiliary program 224 may be downloaded from an external computer (not shown) connected to a communication network (not shown) and stored in the second storage area 241.
- the storage unit 24 is connected to the first processing unit 210 and the second processing unit 220.
- the first processing unit 210 can access the first storage area 240, but cannot access the second storage area 241.
- the second processing unit 220 can access the second storage area 241 but cannot access the first storage area 240. Therefore, it is possible to prevent the first processing unit from accidentally executing the second program. In addition, it is possible to prevent the second processing unit from erroneously executing the first program.
Landscapes
- Engineering & Computer Science (AREA)
- Mechanical Engineering (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Small-Scale Networks (AREA)
Abstract
車載中継装置は、車両に搭載され、複数の車載機器と接続され、該複数の車載機器の通信を中継する車載中継装置であって、通信の中継に関する処理機能を有する第1処理部及び第2処理部を備え、前記第1処理部は、前記複数の車載機器のうち、第1通信プロトコルを用いた通信を行う第1車載機器との通信の中継に関する処理を行い、前記第2処理部は、前記第1通信プロトコルとは異なる第2通信プロトコルを用いた通信を行う第2車載機器が前記車載中継装置に接続された場合、前記第2車載機器との通信の中継に関する処理を行うように構成されており、前記第1処理部は、前記車載中継装置における前記第2車載機器の接続の有無に応じて、前記第2処理部の起動又は停止に関する信号を出力する。
Description
本開示は、車載中継装置、及びコンピュータプログラムに関する。
本出願は、2020年3月4日出願の日本出願第2020-036989号に基づく優先権を主張し、前記日本出願に記載された全ての記載内容を援用するものである。
本出願は、2020年3月4日出願の日本出願第2020-036989号に基づく優先権を主張し、前記日本出願に記載された全ての記載内容を援用するものである。
車両には、車載ECU(Electronic Control Unit)等の複数の車載機器と、当該複数の車載機器の通信を中継する車載中継装置とが搭載されている。複数の車載機器には、一の通信プロトコル(第1通信プロトコル)を用いた通信を行う車載機器と他の通信プロトコル(第2通信プロトコル)を用いた通信を行う車載機器との異なる通信プロトコルを用いた通信を行う車載機器が含まれる。又は、同一の通信プロトコルを用いた通信を行う車載機器のみが含まれる。車両に搭載された複数の車載機器の種類、すなわち車両の種類(車種)に応じて車載中継装置は製造される。特許文献1に記載の車載中継装置は、CAN(Control Area Network/登録商標)の通信プロトコルを用いた通信とイーサネット(Ethernet/登録商標)の通信プロトコルを用いた通信との異なる通信プロトコルを用いた通信の中継を行う。
本開示の一態様に係る車載中継装置は、車両に搭載され、複数の車載機器と接続され、該複数の車載機器の通信を中継する車載中継装置であって、通信の中継に関する処理機能を有する第1処理部及び第2処理部を備え、前記第1処理部は、前記複数の車載機器のうち、第1通信プロトコルを用いた通信を行う第1車載機器との通信の中継に関する処理を行い、前記第2処理部は、前記第1通信プロトコルとは異なる第2通信プロトコルを用いた通信を行う第2車載機器が前記車載中継装置に接続された場合、前記第2車載機器との通信の中継に関する処理を行うように構成されており、前記第1処理部は、前記車載中継装置における前記第2車載機器の接続の有無に応じて、前記第2処理部の起動又は停止に関する信号を出力する。
[本開示が解決しようとする課題]
特許文献1の車載中継装置は、CANの通信プロトコルを用いた通信を行う車載機器と、イーサネットの通信プロトコルを用いた通信を行う車載機器との異なる通信プロトコルを用いた通信を行う車載機器を搭載する車両に適用(搭載)可能である。しかしながら上記車載中継装置は同一の通信プロトコルを用いた通信を行う車載機器のみを搭載する車両には対応していないので、当該車両に上記車載中継装置を適用することができない。
特許文献1の車載中継装置は、CANの通信プロトコルを用いた通信を行う車載機器と、イーサネットの通信プロトコルを用いた通信を行う車載機器との異なる通信プロトコルを用いた通信を行う車載機器を搭載する車両に適用(搭載)可能である。しかしながら上記車載中継装置は同一の通信プロトコルを用いた通信を行う車載機器のみを搭載する車両には対応していないので、当該車両に上記車載中継装置を適用することができない。
本開示は斯かる事情に鑑みてなされたものであり、車両の車載機器が用いる通信プロトコルの種別数に効率的に対応できる車載中継装置等を提供することを目的とする。
[本開示の効果]
本開示の一態様によれば、車載中継装置は、搭載される車両の車載機器が用いる通信プロトコルの種別数に効率的に対応できる。
本開示の一態様によれば、車載中継装置は、搭載される車両の車載機器が用いる通信プロトコルの種別数に効率的に対応できる。
[本開示の実施形態の説明]
最初に本開示の実施態様を列挙して説明する。また、以下に記載する実施形態の少なくとも一部を任意に組み合わせてもよい。
最初に本開示の実施態様を列挙して説明する。また、以下に記載する実施形態の少なくとも一部を任意に組み合わせてもよい。
(1)本開示の一態様に係る車載中継装置は、車両に搭載され、複数の車載機器と接続され、該複数の車載機器の通信を中継する車載中継装置であって、通信の中継に関する処理機能を有する第1処理部及び第2処理部を備え、前記第1処理部は、前記複数の車載機器のうち、第1通信プロトコルを用いた通信を行う第1車載機器との通信の中継に関する処理を行い、前記第2処理部は、前記第1通信プロトコルとは異なる第2通信プロトコルを用いた通信を行う第2車載機器が前記車載中継装置に接続された場合、前記第2車載機器との通信の中継に関する処理を行うように構成されており、前記第1処理部は、前記車載中継装置における前記第2車載機器の接続の有無に応じて、前記第2処理部の起動又は停止に関する信号を出力する。
本態様にあたっては、車載中継装置は接続された複数の車載機器の通信を中継する。複数の車載機器は、第1通信プロトコルを用いた通信を行う第1車載機器、及び第2通信プロトコルを用いた通信を行う第2車載機器のうち、少なくとも第1車載機器を含む。車載中継器は、例えば異なるCPU(Central Processing Unit)又はCPUの異なるコア等により構成される第1処理部及び第2処理部を備える。第1処理部及び第2処理部は、通信の中継に関する処理機能を有する。第1処理部は、第1車載機器との通信の中継に関する処理を行う。第2処理部は、第2車載機器が車載中継装置に接続された場合、第2車載機器との通信の中継に関する処理を行う。すなわち第1通信プロトコルを用いた通信の中継、及び第2通信プロトコルを用いた通信の中継が個別に行われる。従って1つのCPU又はCPUの1つのコア等の1つの処理部が第1車載機器との通信の中継に関する処理、及び第2車載機器との通信の中継に関する処理を行う場合に比べて、第1車載機器との通信の中継及び第2車載機器との通信の中継をより安定して行うことができる。第1処理部は更に、車載中継装置における第2車載機器の接続の有無、すなわち第2車載機器と車載中継装置との接続の有無を判定し、第2車載機器の接続の有無に応じて第2処理部の起動又は停止に関する信号を出力する。第2車載機器が車載中継装置に接続されていない場合、すなわち車載中継装置を搭載する車両が第1車載機器を搭載し、第2車載機器を搭載していない場合、第1処理部は第2処理部の停止に関する信号を出力する。第2処理部は停止する。すなわち第2車載機器が車載中継装置に接続されていない場合、第2処理部は第2車載機器との通信の中継に関する処理を行わない。第2車載機器が車載中継装置に接続されている場合、すなわち車載中継装置を搭載する車両が第1車載機器及び第2車載機器を搭載している場合、第1処理部は第2処理部の起動に関する信号を出力する。第2処理部は起動する。また、第2車載機器との通信の中継に関する処理を行う。すなわち第1処理部は、第2処理部を起動させる。また、第2処理部に第2車載機器との通信の中継に関する処理を行わせる。従って同一の車載中継装置を、第1車載機器及び第2車載機器のうち第1車載機器のみが搭載された車両と、第1車載機器及び第2車載機器が搭載された車両とによる異なる車種の車両に適用(搭載)することができる。すなわち搭載された車載機器が用いる通信プロトコルが異なることにより通信プロトコルの種別数が異なる車種の車両に対して、同一の車載中継装置を適用することができる。車載中継装置の第1処理部は車載機器が用いる通信プロトコルの種別に応じて第2処理部の停止又は起動を行うので、車載中継装置は、車両の車載機器が用いる通信プロトコルの種別数に効率的に対応できる。従って、上記の異なる車種の車両に対して本開示の車載中継装置を共通部品として用いる(適用する/搭載する)ことができる。
(2)本開示の一態様に係る車載中継装置は、前記第1処理部により実行される第1プログラムが記憶してある第1記憶部と、前記第2処理部により実行される第2プログラムが記憶してある第2記憶部とを備える。
本態様にあたっては、車載中継装置は第1記憶部及び第2記憶部を備える。第1記憶部には第1処理部により実行される第1プログラムが記憶してある。第2記憶部には第2処理部により実行される第2プログラムが記憶してある。第1処理部は第1プログラムを実行することにより第1車載機器との通信の中継に関する処理、及び車載中継装置における第2車載機器の接続の有無の判定を行う。第2処理部は第2プログラムを実行することにより第2車載機器との通信の中継に関する処理を行う。第1処理部は第1記憶部にはアクセス可能であるが、第2記憶部にはアクセスできない。第2処理部は第2記憶部にはアクセス可能であるが、第1記憶部にはアクセスできない。第1プログラム及び第2プログラムが個別に記憶されているので、第1処理部が誤って第2プログラムを実行することを防止することができる。また、第2処理部が誤って第1プログラムを実行することを防止することができる。
(3)本開示の一態様に係る車載中継装置は、前記第1処理部により実行される第1プログラムが記憶してある第1記憶領域と、前記第2処理部により実行される第2プログラムが記憶してある第2記憶領域とを有する記憶部を備える。
本態様にあたっては、車載中継装置は第1記憶領域と第2記憶領域とを有する記憶部を備える。第1記憶領域には第1処理部により実行される第1プログラムが記憶してある。第2記憶領域には第2処理部により実行される第2プログラムが記憶してある。すなわち第1プログラムと第2プログラムとは、第1記憶領域と第2記憶領域とに区画されて記憶部に記憶されている。第1処理部は第1プログラムを実行することにより第1車載機器との通信の中継に関する処理、及び車載中継装置における第2車載機器の接続の有無の判定を行う。第2処理部は第2プログラムを実行することにより第2車載機器との通信の中継に関する処理を行う。記憶部に第1プログラム及び第2プログラムの両方を記憶させることにより、車載中継装置の部品数の増加を抑制することができる。第1プログラム及び第2プログラムが区画されて記憶されているので、第1処理部が誤って第2プログラムを実行することを防止することができる。また、第2処理部が誤って第1プログラムを実行することを防止することができる。
(4)本開示の一態様に係る車載中継装置は、前記第1処理部は、前記車両の起動ごとに前記車載中継装置における前記第2車載機器の接続の有無を判定する。
本態様にあたっては、第1処理部は、車両の起動ごと、例えばIG(イグニッション)スイッチがオンとなるごとに車載中継装置における第2車載機器の接続の有無を判定する。例えば車載中継装置は第2車載機器を搭載していない車両に搭載されている。車載中継装置に第2車載機器がいわゆるプラグアンドプレイにて後から接続された場合、すなわち第2車載機器が当該車両に追加された場合、第1処理部は車両の起動時に第2車載機器が車載中継装置に接続されていると判定する。第1処理部は第2処理部に追加された第2車載機器との通信の中継に関する処理を行わせる。すなわち車載中継装置が第2車載機器を搭載していない車両に搭載された場合であって当該車両に第2車載機器が追加された際に、第2車載機器との通信の中継を行うことができる。
(5)本開示の一態様に係る車載中継装置は、前記第1処理部は、前記第2車載機器が前記車載中継装置に接続されていない場合であって前記第1処理部の使用率が所定値以上である場合、前記第1車載機器との通信の中継に関する処理の一部を前記第2処理部に行わせる。
本態様にあたっては、第1処理部は、車載中継装置に第2車載機器が接続されていない場合であって第1処理部の使用率が予め定められた所定値以上である場合、第2処理部を起動させる。第1処理部は、起動させた第2処理部に第1車載機器との通信の中継に関する処理の一部を行わせる。第1車載機器との通信の中継に関する処理の一部は、例えば第1車載機器との通信(第1通信プロトコルを用いた通信)の中継における通信の暗号化及び復号等のセキュリティに関する処理を含む。第1処理部の使用率が所定値以上となった際に、第2処理部が第1車載機器との通信の中継に関する処理の一部を行うので、第1処理部の使用率の上昇による第1車載機器との通信の中継に関する処理の遅延を防止することができる。すなわち第1車載機器との通信の中継が遅延することを防止することができる。
(6)本開示の一態様に係る車載中継装置は、前記第1通信プロトコルは、CANの通信プロトコルであり、前記第2通信プロトコルは、イーサネットの通信プロトコルである。
本態様にあたっては、第1通信プロトコルはCANの通信プロトコルである。第2通信プロトコルはイーサネットの通信プロトコルである。すなわち第1処理部は第1車載機器との通信の中継に関する処理として、CANの通信プロトコルを用いた通信の中継に関する処理を行う。第2処理部は第2車載機器との通信の中継に関する処理として、イーサネットの通信プロトコルを用いた通信の中継に関する処理を行う。1つの処理部が第1車載機器との通信の中継に関する処理、及び第2車載機器との通信の中継に関する処理を行う場合に比べて、第2車載機器との通信(イーサネットの通信プロトコルを用いた通信)の中継をより安定して、効率的に行うことができる。すなわちイーサネットの通信プロトコルを用いた通信を行う車載機器との通信における安定性を更に向上させることができる。車載機器間の通信における安定性が更に向上することにより、車両の動作における安定性を更に向上させることができる。
(7)本開示の一態様に係るコンピュータプログラムは、第1処理部及び第2処理部を有するコンピュータに、前記第1処理部にて、複数の車載機器のうち、第1通信プロトコルを用いた通信を行う第1車載機器との通信の中継に関する処理を行い、前記コンピュータにおける前記第1通信プロトコルとは異なる第2通信プロトコルを用いた通信を行う第2車載機器の接続の有無に応じて、前記第2車載機器との通信の中継に関する処理を行う前記第2処理部の起動又は停止に関する信号を出力する処理を実行させる。
本態様にあたっては、コンピュータを、本開示の一態様の車載中継装置として機能させることができる。
[本開示の実施形態の詳細]
本開示をその実施形態を示す図面に基づいて具体的に説明する。本開示の実施形態に係る車載中継装置2を、以下に図面を参照しつつ説明する。なお、本開示はこれらの例示に限定されるものではなく、請求の範囲によって示され、請求の範囲と均等の意味及び範囲内でのすべての変更が含まれることが意図される。
本開示をその実施形態を示す図面に基づいて具体的に説明する。本開示の実施形態に係る車載中継装置2を、以下に図面を参照しつつ説明する。なお、本開示はこれらの例示に限定されるものではなく、請求の範囲によって示され、請求の範囲と均等の意味及び範囲内でのすべての変更が含まれることが意図される。
(実施形態1)
以下、実施の形態について図面に基づいて説明する。図1は実施形態1に係る車載中継装置2を搭載する車両Cの構成を示す模式図である。図2は実施形態1に係る車載中継装置2の構成を示すブロック図である。車両Cには、CANの通信プロトコルを用いた通信を行うCAN-ECU30と、イーサネットの通信プロトコルを用いた通信を行うイーサネットECU31との2種類の車載ECUを含む複数の車載機器が搭載されている。各車載ECUは後述するCANバス40及びイーサネットケーブル41等の通信線を介して車載中継装置と接続されている。車載中継装置2は、各車載ECU間の通信(メッセージ、プログラム又はデータの送受信)を中継する。
以下、実施の形態について図面に基づいて説明する。図1は実施形態1に係る車載中継装置2を搭載する車両Cの構成を示す模式図である。図2は実施形態1に係る車載中継装置2の構成を示すブロック図である。車両Cには、CANの通信プロトコルを用いた通信を行うCAN-ECU30と、イーサネットの通信プロトコルを用いた通信を行うイーサネットECU31との2種類の車載ECUを含む複数の車載機器が搭載されている。各車載ECUは後述するCANバス40及びイーサネットケーブル41等の通信線を介して車載中継装置と接続されている。車載中継装置2は、各車載ECU間の通信(メッセージ、プログラム又はデータの送受信)を中継する。
CAN-ECU30は例えばエンジン、及びオルタネータ等の車載装置の駆動を制御する。CAN-ECU30は、CANの通信プロトコルに対応した図示しない車内通信部を備える。CAN-ECU30の車内通信部は、CANの通信プロトコルに対応した通信線であるCANバス40を介して車載中継装置2と接続されている。すなわちCAN-ECU30はCANバス40を介して車載中継装置2と接続されている。CANバス40は、ハイ側及びロー側の2本の配線により構成される。
図1において2つのCAN-ECU30がそれぞれ異なる2つのCANバス40を介して車載中継装置2と接続されているが、CAN-ECU30及びCANバス40の個数は2つに限らない。CANバス40に複数のCAN-ECU30が接続されていてもよい。
CAN-ECU30は、自ECUの車内通信部及びCANバス40を介して車載中継装置2とCANの通信プロトコルを用いた通信を行う。異なるCANバス40と接続されるCAN-ECU30それぞれは、車載中継装置2を介して通信する。すなわち、異なるCANバス40と接続されるCAN-ECU30間の通信は、車載中継装置2によって中継される。
CANの通信プロトコルは第1通信プロトコルに相当する。CAN-ECU30は第1車載機器に相当する。第1通信プロトコルは、後述の第2通信プロトコルと異なる通信プロトコルであればCANの通信プロトコルに限らない。第1通信プロトコルは、例えばCAN-FD(CAN with flexible data rate)、LIN(Local Interconnect Network)、又はFlexRay(登録商標)等の通信プロトコルであってもよい。すなわち第1車載機器は、CAN-ECU30(CANの通信プロトコルを用いた通信を行う車載ECU)に限らず、第2通信プロトコルと異なる通信プロトコルを用いた通信を行う車載ECUであればよい。例えば第1車載機器は、CAN-FD、LIN、又はFlexRay等の通信プロトコルを用いた通信を行う車載ECUを含む。以下、CANの通信プロトコルが用いられた通信をCAN通信とも称する。
イーサネットECU31は、例えば車両Cの自動運転を行うための認知又は判断に関する処理を行う自動運転ECU(自動運転に関する車載ECU)である。イーサネットECU31は、イーサネットの通信プロトコルに対応した図示しない車内通信部を備える。イーサネットECU31の車内通信部は、イーサネットの通信プロトコルに対応した通信線であるイーサネットケーブル41を介して車載中継装置2と接続されている。すなわちイーサネットECU31はイーサネットケーブル41を介して車載中継装置2と接続されている。例えばイーサネットケーブル41は、100BASE-T1又は1000BASE-T1等の規格に対応している。
図1において2つのイーサネットECU31がそれぞれ異なる2つのイーサネットケーブル41を介して車載中継装置2と接続されているが、イーサネットECU31及びイーサネットケーブル41の個数は2つに限らない。
イーサネットECU31は、自ECUの車内通信部及びイーサネットケーブル41を介して車載中継装置2とイーサネットの通信プロトコルを用いた通信を行う。各イーサネットECU31は、車載中継装置2を介して通信する。すなわち、イーサネットECU31間の通信は、車載中継装置2によって中継される。CAN-ECU30とイーサネットECU31とは、車載中継装置2を介して通信する。すなわち、CAN-ECU30とイーサネットECU31との間の通信は車載中継装置2によって中継される。イーサネットの通信プロトコルは第2通信プロトコルに相当する。イーサネットECU31は第2車載機器に相当する。第2通信プロトコルは、第1通信プロトコルと異なる通信プロトコルであればよく、イーサネットの通信プロトコルに限らない。すなわち第2車載機器は、イーサネットECU31(イーサネットの通信プロトコルを用いた通信を行う車載ECU)に限らず、第1通信プロトコルと異なる通信プロトコルを用いた通信を行う車載機器であればよい。以下、イーサネットの通信プロトコルが用いられた通信をイーサネット通信とも称する。
車載中継装置2は、例えば、CAN通信を行うCAN通信系の車載ECU(CAN-ECU30)、及びイーサネット通信を行うイーサネット通信系の車載ECU(イーサネットECU31)等の複数の系統のセグメントを統括する。これらセグメント間での車載ECU同士の通信を中継するゲートウェイ(中継器)である。詳しくは車載中継装置2は前述のように、異なるCANバス40と接続されるCAN-ECU30間の通信、及びイーサネットECU31間の通信を中継する。また、CAN-ECU30とイーサネットECU31との通信、すなわちCAN-ECU30からイーサネットECU31への通信、及びイーサネットECU31からCAN-ECU30への通信を中継する。上記複数の系統は、車載ECUが用いる通信プロトコルの種類に加えて、更にボディ系の車載ECU、安全系の車載ECU及び、制御系の車載ECUのように車載ECUの機能に応じて分けられてもよい。車載中継装置2は、車両C全体をコントロールするボディECUの一機能部として構成されるものであってもよい。
図1において車両CにはCAN-ECU30及びイーサネットECU31の両方の車載ECUが搭載されているが、車両Cは、CAN-ECU30及びイーサネットECU31の車載ECUのうち、CAN-ECU30のみを搭載する構成であってもよい。すなわち車載中継装置2には、CAN-ECU30及びイーサネットECU31のうち、CAN-ECU30のみが接続されていてもよい。例えば自動運転に対応している車種の車両Cには、CAN-ECU30及びイーサネットECU31の両方の車載ECUが搭載されている。例えば自動運転に対応していない車種の車両Cには、CAN-ECU30及びイーサネットECU31のうち、CAN-ECU30のみが搭載されている可能性がある。
図2に示すように車載中継装置2は、通信の中継に関する処理機能を有する第1処理部210及び第2処理部220を備える。また、CAN通信部211、第1記憶部212、イーサネット通信部221、第2記憶部222、及び入出力I/F(インターフェイス)23を備える。第1処理部210、第2処理部220及び入出力I/F23はそれぞれバスにより接続されている。
第1処理部210は、CPU(Central Processing Unit)、マイコン(マイクロコンピュータ/マイクロコントローラ)、プロセッサ、又はMPU(Micro Processing Unit)等により構成してある。第1処理部210は、CPUの1つのコア、又はマイコンの1つのコアにより構成してあってもよい。第1処理部210は、第1記憶部212に予め記憶された第1プログラム213及びデータを読み出して実行することにより、種々の制御処理及び演算処理等を行うようにしてある。
第1記憶部212は、RAM(Random Access Memory)等の揮発性のメモリ素子、又は、ROM(Read Only Memory)、EEPROM(Electrically Erasable Programmable ROM)、若しくはフラッシュメモリ等の不揮発性のメモリ素子により構成してある。第1記憶部212には、第1処理部210により実行される第1プログラム213、及び第1処理部210が処理時に参照するデータが予め記憶してある。第1記憶部212に記憶された第1プログラム213は、車載中継装置2が読み取り可能な記録媒体214から読み出された第1プログラム213を記憶したものであってもよい。また、図示しない通信網に接続されている図示しない外部コンピュータから第1プログラム213をダウンロードし、第1記憶部212に記憶させたものであってもよい。第1プログラム213はコンピュータプログラムに相当する。更に第1記憶部212には、通信の中継に関する処理を行うにあたり、通信プロトコルに基づき規定される経路情報(ルーティングテーブル)に関する情報が記憶される。第1記憶部212は第1処理部210と接続されている。第1処理部210及び第1記憶部212は、これらが一体となってパッケージ化されたマイコン又はプロセッサによって構成されるものであってもよい。車載中継装置2の部品数の増加を抑制することができる。
第2処理部220は、第1処理部210と同様にCPU、マイコン、プロセッサ、又はMPU等により構成してある。第2処理部220は、CPUの1つのコア、又はマイコンの1つのコアにより構成してあってもよい。第2処理部220は、第2記憶部222に予め記憶された第2プログラム223及びデータを読み出して実行することにより、種々の制御処理及び演算処理等を行うようにしてある。
第2記憶部222は、第1記憶部212と同様にRAM等の揮発性のメモリ素子、又は、ROM、EEPROM、若しくはフラッシュメモリ等の不揮発性のメモリ素子により構成してある。第2記憶部222には、第2処理部220により実行される第2プログラム223、後述する補助プログラム224、及び第2処理部220が処理時に参照するデータが予め記憶してある。第2記憶部222に記憶された第2プログラム223及び補助プログラム224は、車載中継装置2が読み取り可能な図示しない記録媒体から読み出された第2プログラム223及び補助プログラム224を記憶したものであってもよい。また、図示しない通信網に接続されている図示しない外部コンピュータから第2プログラム223及び補助プログラム224をダウンロードし、第2記憶部222に記憶させたものであってもよい。更に、第2記憶部222には、通信の中継に関する処理を行うにあたり、通信プロトコルに基づき規定される経路情報(ルーティングテーブル)に関する情報が記憶される。第2記憶部222は第2処理部220と接続されている。第2処理部220及び第2記憶部222は、これらが一体となってパッケージ化されたマイコン又はプロセッサによって構成されるものであってもよい。車載中継装置2の部品数の増加を抑制することができる。
第1処理部210を構成するCPU若しくはマイコン、又はCPUのコア若しくはマイコンのコアと、第2処理部220を構成するCPU若しくはマイコン、又はCPUのコア若しくはマイコンのコアとは異なる。例えば第1処理部210及び第2処理部220は、デュアルコア(マルチコア)CPU又はデュアルコア(マルチコア)マイコンにより構成してあってもよい。デュアルコアCPU(デュアルコアマイコン)の一方のコアにより第1処理部210が構成してある。デュアルコアCPU(デュアルコアマイコン)の他方のコアにより第2処理部が構成してある。車載中継装置2の部品数の増加を抑制することができる。第1処理部210、第2処理部220、第1記憶部212及び第2記憶部222は、これらが一体となってパッケージ化されたマイコン又はプロセッサによって構成されるものであってもよい。
入出力I/F23は、例えばシリアル通信をするための通信インターフェイスである。車載中継装置2は入出力I/F23を介して、車両Cの起動及び停止を行うIGスイッチ1と通信可能に接続される。入出力I/F23にはIGスイッチ1以外の装置、例えば表示装置がシリアルケーブル等のハーネスにより通信可能に接続されてもよい。表示装置は、例えばカーナビゲーションのディスプレイ等のHMI(Human Machine Interface)装置である。
CAN通信部211は、CAN又は、CAN-FDの通信プロトコルに対応したものであり、CANバス40上にて伝送されるCANメッセージに対応する。CAN通信部211は、CANバス40上の差動電圧の電位差による波形を受信し、受信した波形を1と0のビット列で表される信号に復号するCANトランシーバ又はCAN-FDトランシーバである。CAN通信部211は、CANトランシーバ及びCANコントローラ、又は、CAN-FDトランシーバ及びCAN-FDコントローラを含むものであってもよい。CAN通信部211はCANバス40を介してCAN-ECU30と接続される。CAN通信部211は、第1処理部210と接続されている。
イーサネット通信部221は、イーサネットケーブル41にて伝送されるTCP/IP又はUDP/IP等のパケットに対応するイーサネットPHY部である。イーサネットPHY部は、イーサネットの通信プロトコルに基づき決定される物理層I/Fである。イーサネット通信部221は、第2処理部220と接続されている。イーサネット通信部221はイーサネットケーブル41を介してイーサネットECU31と接続される。
図2において、3つのイーサネット通信部221が示してある。3つのイーサネット通信部221のうち、2つのイーサネット通信部221それぞれは異なるイーサネットECU31と接続されている。3つのイーサネット通信部221のうち、残りの1つのイーサネット通信部221はイーサネットECU31と接続されていない。例えば残りの1つのイーサネット通信部221には、車両CにイーサネットECU31(第2車載機器)が追加された場合に、追加されたイーサネットECU31が接続される。例えば、追加されたイーサネットECU31とイーサネット通信部221との接続はプラグアンドプレイによって行われてもよい。すなわちイーサネット通信部221は、プラグアンドプレイに対応していてもよい。なお、イーサネット通信部221の個数は3つに限らない。複数のイーサネットECU31が同一のイーサネット通信部221と接続されていてもよい。
車載中継装置2がCAN-ECU30及びイーサネットECU31のうち、CAN-ECU30のみを搭載する車両Cに搭載される場合、車載中継装置2にイーサネット通信部221が設けられていなくてもよい。すなわちこの場合、図1及び図2にて破線によって囲まれている各構成部(イーサネット通信部221、イーサネットケーブル41、及びイーサネットECU31)が設けられていない。
第1処理部210は、第1記憶部212に記憶されている第1プログラム213を実行することにより、CAN-ECU30(第1車載機器)との通信の中継に関する処理を行う。以下、CAN-ECU30との通信の中継に関する処理について説明する。
第1処理部210はCAN通信部211を介して、異なるCANバス40と接続されるCAN-ECU30間の通信を中継する。このとき第1処理部210及びCAN通信部211はCANゲートウェイとしても機能する。
車載中継装置2がCAN-ECU30とイーサネットECU31との間の通信を中継する場合、第1処理部210は、CAN-ECU30からの通信に対してCANの通信プロトコルからイーサネットの通信プロトコルへのプロトコル変換を行う。すなわち第1処理部210はプロトコル変換機能を有する。第1処理部210は、プロトコル変換を行ったCAN-ECU30からの通信を第2処理部220へ出力する。第1処理部210は、第2処理部220にてCANの通信プロトコルへ変換されたイーサネットECU31からの通信を第2処理部220から取得する。第1処理部210は取得したイーサネットECU31からの通信をCAN通信部211を介して中継先のCAN-ECU30へ出力する。第1処理部210は、CAN-ECU30からの通信をプロトコル変換せずに第2処理部220へ出力してもよい。このとき第2処理部220が、第1処理部210から出力されたCAN-ECU30からの通信に対してCANの通信プロトコルからイーサネットの通信プロトコルへのプロトコル変換を行う。CAN-ECU30との通信の中継に関する処理は、例えばCAN-ECU30との通信の中継における通信の暗号化及び復号等のセキュリティに関する処理を含む。
第1処理部210は、第1記憶部212に記憶されている第1プログラム213を実行することにより、車載中継装置2におけるイーサネットECU31(第2車載機器)の接続の有無を判定する。また、車載中継装置2におけるイーサネットECU31の接続の有無に応じて第2処理部220の起動又は停止に関する信号を出力する。イーサネットECU31(第2車載機器)の接続の有無の判定は、例えばIGスイッチ1がオフからオンとなるごとに、すなわち車両Cが起動するごとに行われる。
以下、車載中継装置2におけるイーサネットECU31の接続の有無の判定について説明する。第1処理部210は、イーサネット通信部221にイーサネットECU31(第2車載機器)が接続されていない場合、車載中継装置2にイーサネットECU31(第2車載機器)が接続されていないと判定する。第1処理部210は、イーサネット通信部221にイーサネットECU31(第2車載機器)が接続されている場合、車載中継装置2にイーサネットECU31(第2車載機器)が接続されていると判定する。
車載中継装置2は、例えば工場にて製造される際又は車両Cに搭載される際に、第1記憶部212にイーサネットECU31の接続の有無に関する情報が記憶される構成でもよい。第1処理部210は、第1記憶部212に記憶されたイーサネットECU31の接続の有無に関する情報に基づいて、イーサネットECU31の接続の有無を判定する。イーサネットECU31の接続の有無に関する情報は、例えば入出力I/F23に接続されるダイアグツールを用いて車載中継装置2に入力され、第1記憶部212に記憶される。イーサネットECU31の接続の有無に関する情報の入力は、例えば製造メーカ及び正規ディーラー等の限られた人により行われる。イーサネットECU31の接続の有無に関する情報に基づいて上記判定が行われるので、例えばイーサネット通信部221の故障等の要因により、イーサネットECU31が接続されていると第1処理部210が誤判定することを防止することができる。第1処理部210は、例えば入出力I/F23(車両C)からダイアグツールが取り外された際に、イーサネットECU31の接続の有無を判定してもよい。
第1処理部210は、車両Cの車両識別番号(Vehicle Identification Number/VIN)に基づいてイーサネットECU31(第2車載機器)の接続の有無を判定してもよい。車両識別番号は、例えば車載中継装置2が車両Cに搭載される際に第1記憶部212に記憶される。第1処理部210は、CAN通信部211(車載中継装置2)と接続されるいずれかのCAN-ECU30から車両Cの車両識別番号を取得してもよい。
例えば第1記憶部212には車種テーブルが記憶されている。図3A、図3B及び図3Cは車種テーブルの内容例を示す概念図である。図3Aは、イーサネットECU31が搭載されている車種の車両Cに搭載される車載中継装置2の第1記憶部212に記憶される車種テーブルの内容例を示す概念図である。図3Bは、イーサネットECU31が搭載されていない車種の車両Cに搭載される車載中継装置2の第1記憶部212に記憶される車種テーブルの内容例を示す概念図である。車種テーブルには、例えば車両識別番号と、車種と、当該車種におけるイーサネットECU31(第2車載機器)の搭載の有無とが関連付けられて保存されている。例えば図3A及び図3Bの車種テーブルの車両識別番号は、車種テーブルを記憶する第1記憶部212を備える車載中継装置2が搭載される車両Cの車両識別番号である。図3Aの車種テーブルにおいてイーサネットECU31の搭載の有無は有りである。図3Bの車種テーブルにおいてイーサネットECU31の搭載の有無は無しである。
第1処理部210は、車種テーブルを参照し、取得した車両識別番号から車両Cの車種及び当該車種におけるイーサネットECU31の搭載の有無を特定する。第1処理部210は、車両Cの車種にイーサネットECU31が搭載されていると特定した場合、車載中継装置2にイーサネットECU31が接続されていると判定する。第1処理部210は、車両Cの車種にイーサネットECU31が搭載されていないと特定した場合、車載中継装置2にイーサネットECU31が接続されていないと判定する。
車種テーブルは車両Cの外部に設けられた外部サーバに保存されていてもよい。図3Cは、外部サーバに保存される車種テーブルの内容例を示す概念図である。当該車種テーブルには、例えば、複数の車両識別番号と、各車両識別番号を有する車両の車種と、各車種におけるイーサネットECU31の搭載の有無とが関連付けられて保存されている。第1処理部210(車載中継装置2)は、車両Cに搭載された図示しない無線通信装置を介して外部サーバと通信を行い、車両Cの車両識別番号を外部サーバへ送信する。外部サーバは車種テーブルを参照し、送信された車両識別番号から車両Cの車種におけるイーサネットECU31の搭載の有無を特定する。外部サーバは特定した車両Cの車種におけるイーサネットECU31の搭載の有無を、無線通信装置を介して第1処理部210(車載中継装置2)へ送信する。
第1処理部210は、車載中継装置2にイーサネットECU31が接続されていると判定した場合(車載中継装置2にイーサネットECU31が接続されている場合)、第2処理部220の起動に関する信号を出力する。第1処理部210は、車載中継装置2にイーサネットECU31が接続されていないと判定した場合(車載中継装置2にイーサネットECU31が接続されていない場合)、第2処理部220の停止に関する信号を出力する。
例えばIGスイッチ1がオフからオンとなった際(車両Cが起動した際)に、第1処理部210及び第2処理部220は起動する。起動した第1処理部210は、車載中継装置2におけるイーサネットECU31の接続の有無を判定する。第1処理部210は、イーサネットECU31が車載中継装置2に接続されていないと判定した場合、第2処理部220の停止に関する信号を出力し、第2処理部220を停止させる。例えば第2処理部220への電力供給が停止される。第1処理部210は、第2処理部220を停止させる代わりに、第2処理部220をアイドル状態(アイドリング状態)にしてもよい。
第1処理部210は、イーサネットECU31が車載中継装置2に接続されていると判定した場合、第2処理部220の起動に関する信号を出力する。第2処理部220は既に起動しているので、起動の状態を継続する。第2処理部220の起動に関する信号の出力により第2処理部220は後述するイーサネットECU31との通信の中継に関する処理を行う。すなわち第1処理部210は、イーサネットECU31が車載中継装置2に接続されていると判定した場合、第2処理部220にイーサネットECU31との通信の中継に関する処理を行わせる。例えば起動した第2処理部220は、第2処理部220の起動に関する信号の出力によらず、第2処理部220の停止に関する信号が出力されない場合にイーサネットECU31との通信の中継に関する処理を行ってもよい。
例えばIGスイッチ1がオフからオンとなった際に、第1処理部210及び第2処理部220のうち、第1処理部210のみが起動する。すなわち第2処理部220は停止している。第1処理部210は、車載中継装置2におけるイーサネットECU31の接続の有無を判定する。第1処理部210はイーサネットECU31が車載中継装置2に接続されていると判定した場合、第2処理部220の起動に関する信号を出力し、第2処理部220を起動させる。起動した第2処理部220はイーサネットECU31との通信の中継に関する処理を行う。すなわち第1処理部210は、イーサネットECU31が車載中継装置2に接続されていると判定した場合、第2処理部220にイーサネットECU31との通信の中継に関する処理を行わせる。第1処理部210は、イーサネットECU31が車載中継装置2に接続されていないと判定した場合、第2処理部220の停止に関する信号を出力する。第2処理部220は既に停止しているので、停止の状態を継続する。
第1処理部210は、第1記憶部212に記憶されている第1プログラム213を実行することにより、次の処理を行う。第1処理部210は、イーサネットECU31が車載中継装置2に接続されていない場合であって第1処理部210の使用率が所定値(使用率の閾値)以上である場合、CAN-ECU30との通信の中継に関する処理の一部を前記第2処理部に行わせる。詳しくは第1処理部210は、イーサネットECU31(第2車載機器)が接続されていない場合であって第1処理部210の使用率が所定値(使用率の閾値)以上である場合、第2処理部220の起動に関する信号を出力し、第2処理部220を起動させる。第1処理部210は、起動させた第2処理部220へ第1処理部210の使用率が大きいことを示す信号を出力し、第2処理部220にCAN-ECU30(第1車載機器)との通信の中継に関する処理の一部を行わせる。第1処理部210の使用率は、例えば第1処理部210を構成するCPU又はCPUのコアの使用率である。使用率の閾値は予め定められており、例えば第1記憶部212に記憶されている。
CAN-ECU30との通信の中継に関する処理の一部は、例えばCAN-ECU30との通信の中継における通信の暗号化及び復号等のセキュリティに関する処理を含む。第1処理部210は、第1処理部210の使用率が所定値以上となった際に、第2処理部220にCAN-ECU30との通信の中継に関する処理の一部を行わせる。すなわち第1処理部210は、第1処理部210の使用率が所定値以上となった際に、第2処理部220にCAN-ECU30との通信の中継に関する処理の補助を行わせる。従って、第1処理部210の使用率の上昇によるCAN-ECU30との通信の中継に関する処理の遅延を防止することができる。すなわちCAN-ECU30との通信の中継が遅延することを防止することができる。
第2処理部220は、第2記憶部222に記憶されている第2プログラム223を実行することにより、イーサネットECU31(第2車載機器)が車載中継装置2に接続された場合、イーサネットECU31との通信の中継に関する処理を行う。以下、イーサネットECU31との通信の中継に関する処理について説明する。
第2処理部220はイーサネット通信部221を介して、イーサネット通信部221に接続されるイーサネットECU31間の通信を中継する。このとき第2処理部220及びイーサネット通信部221はイーサスイッチとしても機能する。
車載中継装置2がCAN-ECU30とイーサネットECU31との間の通信を中継する場合、第2処理部220は、イーサネットECU31からの通信に対してイーサネットの通信プロトコルからCANの通信プロトコルへのプロトコル変換を行う。すなわち第2処理部220はプロトコル変換機能を有する。第2処理部220は、プロトコル変換を行ったイーサネットECU31からの通信を第1処理部210へ出力する。第2処理部220は、第1処理部210にてイーサネットの通信プロトコルへ変換されたCAN-ECU30からの通信を第1処理部210から取得する。第2処理部220は取得したCAN-ECU30からの通信をイーサネット通信部221を介して中継先のイーサネットECU31へ出力する。第2処理部220は、イーサネットECU31からの通信をプロトコル変換せずに第1処理部210へ出力してもよい。第1処理部210が、第2処理部220から出力されたイーサネットECU31からの通信に対してイーサネットの通信プロトコルからCANの通信プロトコルへのプロトコル変換を行う。イーサネットECU31との通信の中継に関する処理は、イーサネットECU31との通信の中継における通信の暗号化及び復号等のセキュリティに関する処理を含む。
第2処理部220は、第2記憶部222に記憶されている補助プログラム224を実行することにより、前述のCAN-ECU30との通信の中継に関する処理の一部を行う。補助プログラム224は、第2処理部220がCAN-ECU30との通信の中継に関する処理の一部を行い、第1処理部210によるCAN-ECU30との通信の中継に関する処理に対する補助を行うためのプログラムである。第2処理部220は、第1処理部210から第1処理部210の使用率が大きいことを示す信号が出力された際に補助プログラム224を実行する。すなわち車載中継装置2にイーサネットECU31が接続されている場合、第2処理部220は補助プログラム224を実行しない。第2処理部220は、車載中継装置2にイーサネットECU31が接続されている場合、第2プログラム223を実行する。
第1プログラム213と第2プログラム223とは、第1記憶部212と第2記憶部222とに個別に記憶されている。第1処理部210は、第1記憶部212にアクセス可能であるが第2記憶部222にはアクセスできない。すなわち第1処理部210は、第1記憶部212に記憶されたデータ及びプログラム(第1プログラム213)を読み取る(実行する)ことができるが、第2記憶部222に記憶されたデータ及びプログラム(第2プログラム223)を読み取ることができない。第2処理部220は、第2記憶部222にアクセス可能であるが第1記憶部212にはアクセスできない。すなわち第2処理部220は、第2記憶部222に記憶されたデータ及びプログラムを読み取ることができるが、第1記憶部212に記憶されたデータ及びプログラムを読み取ることができない。従って第1処理部210が誤って第2プログラム223を実行することを防止することができる。第2処理部220が誤って第1プログラム213を実行することを防止することができる。
図4は、第1処理部210が行う車載中継装置2による中継に関する処理を例示するフローチャートである。例えばIGスイッチ1がオフからオンとなった場合、第1処理部210及び第2処理部220は起動する。起動した第1処理部210は、以下の車載中継装置2による中継に関する処理を行う。すなわち車両Cが起動した場合、第1処理部210は、以下の車載中継装置2による中継に関する処理を行う。以下、CAN-ECU30(第1車載機器)との通信の中継に関する処理を第1処理とも称する。イーサネットECU31(第2車載機器)との通信の中継に関する処理を第2処理とも称する。
第1処理部210は、CAN-ECU30との通信の中継に関する処理(第1処理)を開始する(S1)。例えば第1処理部210は前述のように、異なるCANバス40と接続されるCAN-ECU30間の通信を中継する。また、CANの通信プロトコルからイーサネットの通信プロトコルへプロトコル変換したCAN-ECU30からの通信を第2処理部220へ出力する。また、第2処理部220から出力され、イーサネットの通信プロトコルからCANの通信プロトコルへプロトコル変換されたイーサネットECU31からの通信を中継先のCAN-ECU30へ中継(出力)する。
第1処理部210は、車載中継装置2におけるイーサネットECU31(第2車載機器)の接続の有無、すなわち車載中継装置2にイーサネットECU31が接続されているか否かを判定する(S2)。車載中継装置2におけるイーサネットECU31の接続の有無の判定は前述のようにして行われる。
車載中継装置2にイーサネットECU31が接続されていると第1処理部210が判定した場合(S2:YES)、第1処理部210は第2処理部220の起動に関する信号を出力し(S3)、第2処理部220に第2処理を開始させる。すなわち第2処理部220は、第2プログラム223を実行し、第2処理(イーサネットECU31との通信の中継に関する処理)を開始する。例えば第2処理部220は前述のように、イーサネットECU31間の通信を中継する。また、イーサネットの通信プロトコルからCANの通信プロトコルへプロトコル変換したイーサネットECU31からの通信を第1処理部210へ出力する。また、第1処理部210から出力され、CANの通信プロトコルからイーサネットの通信プロトコルへプロトコル変換されたCAN-ECU30からの通信を中継先のイーサネットECU31へ中継(出力)する。
車載中継装置2にて、異なるCANバス40と接続されるCAN-ECU30間の通信の中継、イーサネットECU31間の通信の中継、及びCAN-ECU30とイーサネットECU31との間の通信の中継が第1処理部210及び第2処理部220によって行われる。例えばIGスイッチ1がオンからオフとなった際、第1処理部210は処理を終了する。詳しくは第1処理部210は第1処理、及び車載中継装置2による中継に関する処理を終了する。このとき、第2処理部220は第2処理を終了する。
車載中継装置2にイーサネットECU31が接続されていないと第1処理部210が判定した場合(S2:NO)、第1処理部210は、第2処理部220の停止に関する信号を出力し(S4)、第2処理部220を停止させる。第2処理部220はアイドル状態となってもよい。車載中継装置2にて、異なるCANバス40と接続されるCAN-ECU30間の通信の中継が第1処理部210によって行われる。
第1処理部210は、第1処理部210の使用率が所定値(使用率の閾値)未満であるか否かを判定する(S5)。第1処理部210の使用率が所定値未満でない場合(S5:NO)、すなわち第1処理部210の使用率が所定値以上である場合、第1処理部210は、第2処理部220の起動に関する信号を出力し(S6)、第2処理部220を起動させる。第1処理部210は、起動させた第2処理部220に第1処理の一部(CAN-ECU30との通信の中継に関する処理の一部)を行わせる(S7)。すなわち第2処理部220は起動し、補助プログラム224を実行して第1処理の一部を行う。
例えば第1処理部210は、第2処理部220が第1処理の一部を行う間に第1処理部210の使用率が所定値(使用率の閾値)よりも小さい一定の値以下になった場合、第2処理部220に第1処理の一部を終了させてもよい。第1処理部210は、第1処理部210の使用率が所定値未満であるか否かを定期的、例えば一定の周期にて判定し、第1処理部210の使用率が所定値以上である場合、第2処理部220に第1処理の一部を再び行わせてもよい。例えばIGスイッチ1がオンからオフとなった際(車両Cが停止した際)、第1処理部210は処理を終了する。詳しくは第1処理部210は第1処理、及び車載中継装置2による中継に関する処理を終了する。
第1処理部210の使用率が所定値未満である場合(S5:YES)、第1処理部210は、例えばIGスイッチ1がオンからオフとなった際、処理を終了する。詳しくは第1処理部210は第1処理、及び車載中継装置2による中継に関する処理を終了する。例えば第1処理部210は、IGスイッチ1がオンからオフとなるまでの間、第1処理部210の使用率が所定値未満であるか否かを定期的、例えば一定の周期にて判定してもよい。すなわち第1処理部210の使用率が所定値未満である場合、第1処理部210は再度S5の判定を行うべくループ処理を行ってもよい。
本実施形態によれば、第1処理部210はCAN-ECU30との通信の中継に関する処理(第1処理)を行う。第2処理部220はイーサネットECU31が車載中継装置2に接続された場合、イーサネットECU31との通信の中継に関する処理(第2処理)を行う。従って第1処理及び第2処理は個別に行われる。すなわちCANの通信プロトコル(第1通信プロトコル)を用いた通信の中継、及びイーサネットの通信プロトコル(第2通信プロトコル)を用いた通信の中継は個別に行われる。従って第1処理及び第2処理が1つのCPU又はCPUの1つのコア等により構成される1つの処理部によって行われる場合に比べて、CAN-ECU30との通信の中継及びイーサネットECU31との通信の中継をより安定して行うことができる。すなわちCAN-ECU30(第1車載機器)との通信の中継及びイーサネットECU31(第2車載機器)との通信の中継における安定性を更に向上させることができる。
第1処理部210は、車載中継装置2におけるイーサネットECU31の接続の有無、すなわちイーサネットECU31と車載中継装置2との接続の有無を判定する。第1処理部210は、イーサネットECU31の接続の有無に応じて、第2処理部220の起動又は停止に関する信号を出力し、第2処理部220に第2処理を行わせる。イーサネットECU31が車載中継装置2に接続されている場合、すなわち車載中継装置2を搭載する車両CがCAN-ECU30及びイーサネットECU31を搭載している場合、第1処理部及び第2処理部によって第1処理及び第2処理が行われる。イーサネットECU31が車載中継装置2に接続されていない場合、すなわち車載中継装置2を搭載する車両CがCAN-ECU30を搭載し、イーサネットECU31を搭載していない場合、第1処理部210は第1処理を行う。第2処理部220は第2処理を行わない。従って同一の車載中継装置2を、CAN-ECU30及びイーサネットECU31のうち、CAN-ECU30のみが搭載された車両、及びCAN-ECU30とイーサネットECU31とが搭載された車両による異なる車種の車両Cに適用(搭載)することができる。すなわち搭載された車載機器(車載ECU)が用いる通信プロトコルが異なることにより通信プロトコルの種別数が異なる車種の車両Cに対して、同一の車載中継装置2を適用することができる。第1処理部210は車載機器(車載ECU)が用いる通信プロトコルの種別に応じて第2処理部220の停止又は起動を行うので、車載中継装置2は、車両Cの車載機器が用いる通信プロトコルの種別数に効率的に対応できる。従って、上記の異なる車種の車両Cに対して本開示の車載中継装置2を共通部品として用いる(適用する/搭載する)ことができる。
第1処理部210は、車両Cの起動ごと(IGスイッチ1がオフからオンとなるごと)等の所定の条件に応じて、車載中継装置2におけるイーサネットECU31の接続の有無を判定する。例えば車載中継装置2が車両Cに搭載された当初において、当該車両CにはCAN-ECU30が搭載されているが、イーサネットECU31が搭載されていない。すなわち車載中継装置2はCAN-ECU30と接続されているが、イーサネットECU31と接続されていない。このとき、第1処理部210は第1処理を行うが、第2処理部220は第2処理を行わない。すなわち車載中継装置2は車両C内にてCAN-ECU30間の通信を中継する。
イーサネットECU31が搭載されていない上述の車両CにイーサネットECU31が後から搭載(追加)されることが想定される。例えば追加されたイーサネットECU31は、車載中継装置2における既存のイーサネットECU31が接続されていないイーサネット通信部221に接続される。第1処理部210は、例えば車両Cの起動時にイーサネットECU31が車載中継装置2に接続されていると判定する。車載中継装置2にて第1処理部210による第1処理に加えて、第2処理部220による第2処理が行われる。すなわち車載中継装置2は車両C内にて、CAN-ECU30間の通信の中継に加えて、イーサネットECU31間の通信の中継、及びCAN-ECU30とイーサネットECU31との間の通信の中継を行う。従って車載中継装置2がイーサネットECU31を搭載していない車両Cに搭載された場合であって当該車両CにイーサネットECU31が追加された際に、車載中継装置2にてイーサネットECU31との通信の中継を行うことができる。
本実施形態によれば、CANの通信プロトコルは第1通信プロトコルに相当する。イーサネットの通信プロトコルは第2通信プロトコルに相当する。CANの通信プロトコルは、一般的に車載機器との通信において広く用いられる。イーサネットの通信プロトコルを用いた通信は、例えば車両Cの自動運転に関する車載ECUとの通信に用いられる。イーサネットの通信プロトコルを用いた通信は、車両Cの自動運転に関する車載ECU以外の車載機器(車載ECU)との通信に用いられてもよい。第2処理部220が第2処理を行うことにより、前述の1つの処理部が第1処理及び第2処理を行う場合に比べて、イーサネットの通信プロトコルを用いた通信の中継をより安定して行うことができる。すなわちイーサネット通信を行う車載機器との通信における安定性を更に向上させることができる。車載機器間の通信における安定性が更に向上することにより、車両Cの動作における安定性を更に向上させることができる。
車載中継装置2は2つの処理部(第1処理部210及び第2処理部220)を備え、CANの通信プロトコル(第1通信プロトコル)及びイーサネットの通信プロトコル(第2通信プロトコル)による2つの通信プロトコルの種別数に対応している。車載中継装置2は、3つ以上の処理部を備え、3つ以上の通信プロトコルの種別数に対応していてもよい。例えば車載中継装置2は第1処理部210及び第2処理部220に加えて、図示しない第3処理部を備えていてもよい。第3処理部は第1処理部210と同様にCPU、マイコン、プロセッサ、若しくはMPU、又は、CPUの1つのコア、若しくはマイコンの1つのコア等により構成してある。第3処理部は、CANの通信プロトコル及びイーサネットの通信プロトコルとは異なる第3通信プロトコル、例えばLINの通信プロトコルを用いた通信を行う第3車載機器が車載中継装置2に接続された場合、第3車載機器との通信の中継に関する処理を行う。第1処理部210は、車載中継装置2における第3車載機器の接続の有無を判定し、車載中継装置2における第3車載機器の接続の有無に応じて、第3処理部の起動又は停止に関する信号を出力する。
(実施形態2)
図5は実施形態2に係る車載中継装置2の構成を示すブロック図である。実施形態2に係る構成の内、実施形態1と同様な構成部については同じ符号を付し、その詳細な説明を省略する。
図5は実施形態2に係る車載中継装置2の構成を示すブロック図である。実施形態2に係る構成の内、実施形態1と同様な構成部については同じ符号を付し、その詳細な説明を省略する。
車載中継装置2は、第1処理部210、CAN通信部211、第2処理部220、イーサネット通信部221、及び入出力I/F23を備える。第1処理部210、CAN通信部211、及び入出力I/F23は、実施形態1の第1処理部210、CAN通信部211、及び入出力I/F23と同様なので詳細な説明は省略する。第2処理部220、及びイーサネット通信部221は、実施形態1の第2処理部220、及びイーサネット通信部221と同様なので詳細な説明は省略する。
実施形態1と同様に、車載中継装置2がCAN-ECU30及びイーサネットECU31のうち、CAN-ECU30のみを搭載する車両Cに搭載される場合、車載中継装置2にイーサネット通信部221が設けられていなくてもよい。すなわちこの場合、図5にて破線によって囲まれている各構成部(イーサネット通信部221、イーサネットケーブル41、及びイーサネットECU31)が設けられていない。
車載中継装置2は、RAM等の揮発性のメモリ素子、又は、ROM、EEPROM、若しくはフラッシュメモリ等の不揮発性のメモリ素子により構成してある記憶部24を備える。記憶部24は、第1プログラム213が記憶してある第1記憶領域240、及び第2プログラム223が記憶してある第2記憶領域241を有する。すなわち第1プログラム213と第2プログラム223とは、第1記憶領域240及び第2記憶領域241に区画されて記憶部24に記憶されている。更に第1記憶領域240及び第2記憶領域241(記憶部24)には、通信の中継に関する処理を行うにあたり、通信プロトコルに基づき規定される経路情報(ルーティングテーブル)に関する情報が記憶される。第2記憶領域241には更に補助プログラム224が記憶されている。記憶部24に第1プログラム213、第2プログラム223、及び補助プログラム224が記憶されることにより、車載中継装置2の部品数の増加を抑制することができる。
第1記憶領域240に記憶された第1プログラム213は、車載中継装置2が読み取り可能な記録媒体214から読み出された第1プログラム213を記憶したものであってもよい。また、図示しない通信網に接続されている図示しない外部コンピュータから第1プログラム213をダウンロードし、第1記憶領域240に記憶させたものであってもよい。第2記憶領域241に記憶された第2プログラム223及び補助プログラム224は、車載中継装置2が読み取り可能な図示しない記録媒体から読み出された第2プログラム223及び補助プログラム224を記憶したものであってもよい。また、図示しない通信網に接続されている図示しない外部コンピュータから第2プログラム223及び補助プログラム224をダウンロードし、第2記憶領域241に記憶させたものであってもよい。
記憶部24は、第1処理部210及び第2処理部220と接続されている。第1処理部210は第1記憶領域240にアクセス可能であるが、第2記憶領域241にアクセスできない。第2処理部220は第2記憶領域241にアクセス可能であるが、第1記憶領域240にアクセスできない。従って第1処理部が誤って第2プログラムを実行することを防止することができる。また、第2処理部が誤って第1プログラムを実行することを防止することができる。
今回開示された実施形態はすべての点で例示であって、制限的なものではないと考えられるべきである。本発明の範囲は、上記した意味ではなく、請求の範囲によって示され、請求の範囲と均等の意味及び範囲内でのすべての変更が含まれることが意図される。
C 車両
1 IGスイッチ
2 車載中継装置
210 第1処理部
211 CAN通信部
212 第1記憶部
213 第1プログラム
214 記録媒体
220 第2処理部
221 イーサネット通信部
222 第2記憶部
223 第2プログラム
224 補助プログラム
23 入出力I/F
24 記憶部
240 第1記憶領域
241 第2記憶領域
30 CAN-ECU
31 イーサネットECU
40 CANバス
41 イーサネットケーブル
1 IGスイッチ
2 車載中継装置
210 第1処理部
211 CAN通信部
212 第1記憶部
213 第1プログラム
214 記録媒体
220 第2処理部
221 イーサネット通信部
222 第2記憶部
223 第2プログラム
224 補助プログラム
23 入出力I/F
24 記憶部
240 第1記憶領域
241 第2記憶領域
30 CAN-ECU
31 イーサネットECU
40 CANバス
41 イーサネットケーブル
Claims (7)
- 車両に搭載され、複数の車載機器と接続され、該複数の車載機器の通信を中継する車載中継装置であって、
通信の中継に関する処理機能を有する第1処理部及び第2処理部を備え、
前記第1処理部は、前記複数の車載機器のうち、第1通信プロトコルを用いた通信を行う第1車載機器との通信の中継に関する処理を行い、
前記第2処理部は、前記第1通信プロトコルとは異なる第2通信プロトコルを用いた通信を行う第2車載機器が前記車載中継装置に接続された場合、前記第2車載機器との通信の中継に関する処理を行うように構成されており、
前記第1処理部は、前記車載中継装置における前記第2車載機器の接続の有無に応じて、前記第2処理部の起動又は停止に関する信号を出力する
車載中継装置。 - 前記第1処理部により実行される第1プログラムが記憶してある第1記憶部と、
前記第2処理部により実行される第2プログラムが記憶してある第2記憶部とを備える
請求項1に記載の車載中継装置。 - 前記第1処理部により実行される第1プログラムが記憶してある第1記憶領域と、前記第2処理部により実行される第2プログラムが記憶してある第2記憶領域とを有する記憶部を備える
請求項1に記載の車載中継装置。 - 前記第1処理部は、前記車両の起動ごとに前記車載中継装置における前記第2車載機器の接続の有無を判定する
請求項1から請求項3のいずれか1項に記載の車載中継装置。 - 前記第1処理部は、前記第2車載機器が前記車載中継装置に接続されていない場合であって前記第1処理部の使用率が所定値以上である場合、前記第1車載機器との通信の中継に関する処理の一部を前記第2処理部に行わせる
請求項1から請求項4のいずれか1項に記載の車載中継装置。 - 前記第1通信プロトコルは、CANの通信プロトコルであり、
前記第2通信プロトコルは、イーサネットの通信プロトコルである
請求項1から請求項5のいずれか1項に記載の車載中継装置。 - 第1処理部及び第2処理部を有するコンピュータに、
前記第1処理部にて、複数の車載機器のうち、第1通信プロトコルを用いた通信を行う第1車載機器との通信の中継に関する処理を行い、
前記コンピュータにおける前記第1通信プロトコルとは異なる第2通信プロトコルを用いた通信を行う第2車載機器の接続の有無に応じて、前記第2車載機器との通信の中継に関する処理を行う前記第2処理部の起動又は停止に関する信号を出力する
処理を実行させるコンピュータプログラム。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020-036989 | 2020-03-04 | ||
JP2020036989A JP2021138263A (ja) | 2020-03-04 | 2020-03-04 | 車載中継装置、及びコンピュータプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2021177019A1 true WO2021177019A1 (ja) | 2021-09-10 |
Family
ID=77612697
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2021/005641 WO2021177019A1 (ja) | 2020-03-04 | 2021-02-16 | 車載中継装置、及びコンピュータプログラム |
Country Status (2)
Country | Link |
---|---|
JP (1) | JP2021138263A (ja) |
WO (1) | WO2021177019A1 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023210314A1 (ja) * | 2022-04-27 | 2023-11-02 | 株式会社オートネットワーク技術研究所 | 車載装置、プログラム及び情報処理方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002117013A (ja) * | 2000-10-06 | 2002-04-19 | Fujitsu Ltd | マルチプロセッサ通信システム |
JP2014156160A (ja) * | 2013-02-14 | 2014-08-28 | Auto Network Gijutsu Kenkyusho:Kk | コネクタ及び車載通信システム |
WO2018110321A1 (ja) * | 2016-12-14 | 2018-06-21 | 株式会社オートネットワーク技術研究所 | 車載通信装置及び車載通信システム |
JP2019111877A (ja) * | 2017-12-21 | 2019-07-11 | 株式会社デンソー | 中継装置 |
-
2020
- 2020-03-04 JP JP2020036989A patent/JP2021138263A/ja active Pending
-
2021
- 2021-02-16 WO PCT/JP2021/005641 patent/WO2021177019A1/ja active Application Filing
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002117013A (ja) * | 2000-10-06 | 2002-04-19 | Fujitsu Ltd | マルチプロセッサ通信システム |
JP2014156160A (ja) * | 2013-02-14 | 2014-08-28 | Auto Network Gijutsu Kenkyusho:Kk | コネクタ及び車載通信システム |
WO2018110321A1 (ja) * | 2016-12-14 | 2018-06-21 | 株式会社オートネットワーク技術研究所 | 車載通信装置及び車載通信システム |
JP2019111877A (ja) * | 2017-12-21 | 2019-07-11 | 株式会社デンソー | 中継装置 |
Also Published As
Publication number | Publication date |
---|---|
JP2021138263A (ja) | 2021-09-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108023872B (zh) | 车载网络系统 | |
JP5776779B2 (ja) | 車載ゲートウェイ装置及び車両用通信システム | |
US9819562B2 (en) | Gateway device with priority arbitration function | |
US10153825B2 (en) | Vehicle-mounted control device | |
JP7074004B2 (ja) | 中継装置システム及び中継装置 | |
JP2007251722A (ja) | 通信装置、車載システム、データ保存方法及びプログラム | |
WO2021177019A1 (ja) | 車載中継装置、及びコンピュータプログラム | |
JP2018107533A (ja) | 車載ネットワークシステム、中継装置 | |
US11405233B2 (en) | Relay device system | |
JP6962301B2 (ja) | 中継装置 | |
WO2021100548A1 (ja) | 車載中継装置及び中継方法 | |
JP7310570B2 (ja) | 車載更新装置、プログラム及び、プログラムの更新方法 | |
JP2021166335A (ja) | 車載中継装置、情報処理方法及びプログラム | |
JP2014017614A (ja) | 通信システム、中継装置及び通信装置 | |
JP4954832B2 (ja) | 車載用通信システム | |
CN114128222B (zh) | 中继装置系统 | |
JP7023588B2 (ja) | データ書換方法、及びデータ書換システム | |
JP4361540B2 (ja) | ゲートウェイ装置、データ転送方法及びプログラム | |
JP2005145262A (ja) | 車載用lanシステム | |
JP2017149234A (ja) | 車両用監視システム | |
JP2009010851A (ja) | 車載ゲートウェイ装置 | |
WO2021095589A1 (ja) | 車載中継装置及び情報処理方法 | |
WO2022163386A1 (ja) | 車載装置、及び中継方法 | |
JP2023173734A (ja) | データ通信システム | |
JP6183296B2 (ja) | 車両用機器、車両用機器の起動方法 |
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: 21763222 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 21763222 Country of ref document: EP Kind code of ref document: A1 |