Vehicle maintenance device, vehicle maintenance method, and vehicle maintenance program
The vehicle maintenance device addresses slower communication speeds by dynamically switching between single and multiple connections with the in-vehicle relay device, preventing message delays and optimizing data exchange.
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- AUTONETWORKS TECH LTD
- Filing Date
- 2024-11-08
- Publication Date
- 2026-05-20
AI Technical Summary
The communication speed between a vehicle maintenance device and in-vehicle devices via an in-vehicle relay device can be slower, leading to increased packet storage in the relay device's buffer and potential delays in message transmission to other devices.
A vehicle maintenance device with a communication unit and a switching unit that allows for setting up one or multiple communication connections with an on-board relay device to manage message transmission to multiple in-vehicle devices, based on authentication, communication speed, and message type.
Prevents delays in message transmission to in-vehicle devices by dynamically adjusting the number of communication connections based on authentication, communication speed, and message type, ensuring efficient data exchange.
Smart Images

Figure 2026083586000001_ABST
Abstract
Description
Technical Field
[0004] , , , , ,
[0001] The present disclosure relates to a vehicle maintenance device, a vehicle maintenance method, and a vehicle maintenance program.
Background Art
[0002] Conventionally, technologies have been developed for performing fault diagnosis and the like of in-vehicle devices mounted on a vehicle using a vehicle maintenance device such as a diagnostic tool. For example, Patent Document 1 (Japanese Patent Application Laid-Open No. 2015-147446) discloses the following technology. That is, a vehicle control device has a plurality of unit vehicle control devices mounted on a vehicle and connected by a network, and is a vehicle control device in which at least one unit vehicle control device stores a vehicle identification code for identifying the vehicle. Each of the unit vehicle control devices includes a node that exchanges messages with an external diagnostic device via communication. One of the respective nodes is defined as a representative node, and the unique identification information possessed by the representative node is transferred and stored in other nodes as vehicle identification information. For a vehicle identification request message transmitted from the diagnostic device to each of the nodes, each node returns either a vehicle identification response message including the vehicle identification code and the vehicle identification information stored in each node itself, or a vehicle identification response message not including the vehicle identification code but including the vehicle identification information stored in each node itself.
Prior Art Documents
Patent Documents
[0003]
Patent Document 一
[0005] In this scenario, the communication speed between the vehicle maintenance device and the vehicle device via the vehicle relay device may be slower than that of other vehicle devices. This could lead to an increase in the number of packets destined for the vehicle device with the slower communication speed being stored in the vehicle relay device's buffer, potentially reducing the available buffer capacity. This could result in delays in messages sent to other vehicle devices.
[0006] This disclosure was made to solve the above-mentioned problems, and its purpose is to provide a vehicle maintenance device, a vehicle maintenance method, and a vehicle maintenance program that can prevent delays in messages transmitted to an in-vehicle device. [Means for solving the problem]
[0007] The vehicle maintenance device of this disclosure includes a communication unit capable of communicating with an on-board relay device, and a switching unit that performs a switching process to switch between setting up one communication connection between the on-board relay device and the communication unit, or setting up multiple communication connections, for transmitting messages to a plurality of on-board devices via the on-board relay device.
[0008] One aspect of this disclosure can be realized not only as a vehicle maintenance device equipped with such characteristic processing units, but also as a semiconductor integrated circuit that realizes part or all of the vehicle maintenance device, or as a system including the vehicle maintenance device. [Effects of the Invention]
[0009] According to this disclosure, it is possible to prevent delays in messages transmitted to in-vehicle devices. [Brief explanation of the drawing]
[0010] [Figure 1] Figure 1 shows an example of the configuration of an in-vehicle system according to the first embodiment of this disclosure. [Figure 2] Figure 2 shows an example of IP packets transmitted and received between an in-vehicle relay device according to the first embodiment of this disclosure and a diagnostic tool. [Figure 3] Figure 3 shows an example of the configuration of an in-vehicle relay device according to the first embodiment of this disclosure. [Figure 4] Figure 4 shows an example of the configuration of a diagnostic tool according to the first embodiment of this disclosure. [Figure 5] Figure 5 is a conceptual diagram illustrating an example of a switching process using a diagnostic tool according to the first embodiment of this disclosure. [Figure 6] Figure 6 is a flowchart illustrating an example of the operation procedure when the diagnostic tool according to the first embodiment of this disclosure performs a switching process. [Figure 7] Figure 7 is a flowchart illustrating an example of the operation procedure when the diagnostic tool according to the first embodiment of this disclosure performs a switching process. [Figure 8] Figure 8 is a flowchart illustrating an example of the operation procedure when an in-vehicle relay device according to the first embodiment of this disclosure performs authentication processing. [Figure 9] Figure 9 shows an example of a processing sequence for a diagnostic tool, an in-vehicle relay device, and an in-vehicle device according to the first embodiment of this disclosure. [Figure 10] Figure 10 shows an example of the configuration of a diagnostic tool according to a second embodiment of the present disclosure. [Figure 11] Figure 11 shows an example of a list of reference values held by a diagnostic tool according to a second embodiment of this disclosure. [Figure 12] Figure 12 is a flowchart illustrating an example of the operation procedure when a diagnostic tool according to the second embodiment of this disclosure performs a switching process. [Figure 13]FIG. 13 is a flowchart defining an example of an operation procedure when the diagnostic tool according to the second embodiment of the present disclosure performs a switching process. [Figure 14] FIG. 14 is a diagram showing an example of the configuration of an in-vehicle system according to the third embodiment of the present disclosure. [Figure 15] FIG. 15 is a diagram showing an example of the configuration of a diagnostic tool according to the third embodiment of the present disclosure. [Figure 16] FIG. 16 is a diagram showing an example of message information held by the diagnostic tool according to the third embodiment of the present disclosure. [Figure 17] FIG. 17 is a diagram showing another example of message information held by the diagnostic tool according to the third embodiment of the present disclosure. [Figure 18] FIG. 18 is a flowchart defining an example of an operation procedure when the diagnostic tool according to the third embodiment of the present disclosure performs a switching process. [Figure 19] FIG. 19 is a diagram showing the configuration of a modified example of the in-vehicle system according to the third embodiment of the present disclosure. [Figure 20] FIG. 20 is a diagram showing an example of message information held by a modified example of the diagnostic tool according to the third embodiment of the present disclosure.
Embodiments for Carrying Out the Invention
[0011] First, the contents of the embodiments of the present disclosure will be listed and described. (1) The vehicle maintenance device according to the embodiment of the present disclosure includes a communication unit capable of communicating with an in-vehicle relay device, and a communication connection for transmitting a message to a plurality of in-vehicle devices via the in-vehicle relay device, and a switching unit that performs a switching process of setting one of the communication connections between the in-vehicle relay device and the communication unit or setting a plurality of the communication connections.
[0012] With this configuration, for example, if there is a possibility of delay in messages destined for a particular in-vehicle device, the number of communication connections set up between the in-vehicle relay device and the relay device can be switched from one to multiple. Therefore, delays in messages sent to the in-vehicle device can be prevented.
[0013] (2) In (1) above, the communication unit may transmit the authentication information of the vehicle maintenance device to the in-vehicle relay device, the communication unit may receive authentication success information from the in-vehicle relay device indicating that the authentication process using the authentication information in the in-vehicle relay device has been successful, and the switching unit may set up multiple communication connections when the authentication success information is received by the communication unit.
[0014] A user may decide to set up multiple communication connections depending on the usage status of the vehicle maintenance equipment. In this case, for example, the user performs an operation on the vehicle maintenance equipment to instruct it to switch the number of communication connections. With the above configuration, if the operation is determined to be performed by a legitimate user using authentication information, setting up multiple communication connections can prevent delays in messages sent to the in-vehicle equipment while ensuring security.
[0015] (3) In (1) above, the switching unit may set up multiple communication connections if the measurement result of the communication speed between the communication unit and any of the multiple in-vehicle devices via the in-vehicle relay device satisfies predetermined conditions.
[0016] With this configuration, for example, if the communication speed with one in-vehicle device becomes slower than that with another in-vehicle device, multiple communication connections can be set up, thereby more reliably preventing delays in messages destined for that other in-vehicle device.
[0017] (4) In (3) above, the vehicle maintenance device may further include a storage unit that holds communication speed information indicating a reference value for the communication speed for each type of message, and the switching unit may perform the switching process based on the difference between the reference value indicated by the communication speed information held in the storage unit and the measurement result.
[0018] This configuration makes it easy to check, using communication speed information, whether the communication speed between the message destination in-vehicle device and other in-vehicle devices is slower than that of other in-vehicle devices.
[0019] (5) In (1) above, the switching unit may perform the switching process according to the type of message that the communication unit transmits to the in-vehicle device via the in-vehicle relay device.
[0020] This configuration allows for a more appropriate determination of whether to establish one or multiple communication connections between the in-vehicle relay device and the in-vehicle device, depending on the type of message to be sent to the in-vehicle device.
[0021] (6) In the above (5), the vehicle maintenance device may further include a storage unit that holds message information indicating the type of message to be transmitted when multiple communication connections are set up, and the switching unit may perform the switching process using the message information held in the storage unit.
[0022] This configuration makes it easy to determine, using message information, whether to establish one or multiple communication connections with the in-vehicle relay device.
[0023] (7) In (6) above, the message information may include information indicating the in-vehicle device to which the message is addressed.
[0024] This configuration allows for a more appropriate determination of whether to configure one or multiple communication connections depending on the in-vehicle device to which the message is headed.
[0025] (8) In (6) or (7) above, the message information may include information indicating the type of vehicle to which the message is transmitted.
[0026] For example, if an in-vehicle device is installed in a vehicle of a specific model, the communication speed between that device and the in-vehicle relay device via the in-vehicle relay device may be slower compared to when it is installed in a vehicle of a different model. With the above configuration, it is possible to more appropriately determine whether to set up one communication connection or multiple connections depending on the vehicle model.
[0027] (9) In any of (1) to (8) above, the communication connection may be a communication connection conforming to the TCP / IP standard, and the communication unit may transmit the message conforming to the DoIP standard to the multiple in-vehicle devices via the in-vehicle relay device.
[0028] This configuration makes it possible to prevent delays in messages transmitted to on-board equipment in vehicle maintenance equipment that conform to the DoIP standard, which is widely used in vehicle maintenance.
[0029] (10) A vehicle maintenance method according to an embodiment of the present disclosure is a vehicle maintenance method in a vehicle maintenance device, wherein the vehicle maintenance device includes a communication unit capable of communicating with an on-board relay device, and the vehicle maintenance method is a communication connection for transmitting messages to a plurality of on-board devices via the on-board relay device, and includes a step of switching between setting up one communication connection between the on-board relay device and the communication unit, or setting up a plurality of communication connections.
[0030] This method allows, for example, if there is a possibility of delay in messages destined for a particular in-vehicle device, the number of communication connections established between the in-vehicle relay device and the system can be switched from one to multiple. Therefore, delays in messages sent to the in-vehicle device can be prevented.
[0031] (11) The vehicle maintenance program according to the embodiment of the present disclosure is a vehicle maintenance program used in a vehicle maintenance device, which causes a computer to function as a communication unit that can communicate with an in-vehicle relay device, and a switching unit that performs a switching process to switch between setting up one communication connection between the in-vehicle relay device and the communication unit, or setting up multiple communication connections, for sending messages to a plurality of in-vehicle devices via the in-vehicle relay device.
[0032] With this configuration, for example, if there is a possibility of delay in messages destined for a particular in-vehicle device, the number of communication connections set up between the in-vehicle relay device and the relay device can be switched from one to multiple. Therefore, delays in messages sent to the in-vehicle device can be prevented.
[0033] Embodiments of this disclosure will be described below with reference to the drawings. In the drawings, the same or corresponding parts are denoted by the same reference numerals, and their descriptions will not be repeated. Furthermore, at least some of the embodiments described below may be combined in any way.
[0034] <First Embodiment> [In-vehicle systems] Figure 1 is a diagram showing an example of the configuration of an in-vehicle system according to a first embodiment of the present disclosure. Referring to Figure 1, the in-vehicle system 301 is mounted on a vehicle 1. The in-vehicle system 301 comprises an in-vehicle relay device 101 and a plurality of in-vehicle devices 202. The in-vehicle devices 202 are an example of an in-vehicle device.
[0035] In-vehicle equipment 202 includes in-vehicle ECUs (Electronic Control Units), sensors, navigation systems, human-machine interfaces, and cameras. In-vehicle ECUs include ECUs for autonomous driving, engine ECUs, steering control ECUs, brake control ECUs, and TCUs (Telematics Communication Units).
[0036] In the example shown in Figure 1, the in-vehicle system 301 includes in-vehicle devices 202A and 202B, which are in-vehicle devices 202. The in-vehicle relay device 101 and the multiple in-vehicle devices 202 constitute an in-vehicle network 401.
[0037] Furthermore, the in-vehicle system 301 is not limited to a configuration with two in-vehicle devices 202, but may also have a configuration with three or more in-vehicle devices 202.
[0038] The in-vehicle relay device 101 is, for example, a gateway device. The in-vehicle relay device 101 relays messages transmitted and received between multiple in-vehicle devices 202 connected to it.
[0039] Each in-vehicle device 202 is connected to the in-vehicle relay device 101 via, for example, an Ethernet cable 51, which is a transmission line conforming to the Ethernet (registered trademark) standard.
[0040] More specifically, the in-vehicle relay device 101 is equipped with multiple communication ports 11. Each communication port 11 is a connector to which an Ethernet cable 51 can be connected. Each communication port 11 is assigned a unique port number N.
[0041] In the example shown in Figure 1, the in-vehicle relay device 101 is equipped with communication ports 11A, 11B, and 11C, which constitute communication port 11. In-vehicle devices 202A and 202B are connected to communication ports 11A and 11B, respectively, via Ethernet cables 51.
[0042] Furthermore, the in-vehicle relay device 101 is not limited to a configuration with three communication ports 11, but may also be configured to have four or more communication ports 11.
[0043] Furthermore, the in-vehicle relay device 101 relays messages transmitted and received between the diagnostic tool 250 and the in-vehicle equipment 202 connected to it.
[0044] (Diagnostic tool) When fault diagnosis of the in-vehicle equipment 202 or updates of the software embedded in the in-vehicle equipment 202 are performed, the diagnostic tool 250 is connected to the in-vehicle relay device 101. In the example shown in Figure 1, the diagnostic tool 250 is connected to the communication port 11C of the in-vehicle relay device 101 via an Ethernet cable 51. The diagnostic tool 250 is an example of a vehicle maintenance device.
[0045] The diagnostic tool 250 is a tool that conforms to DoIP (Diagnostics over Internet Protocol), a communication standard defined in ISO 13400, for example. The diagnostic tool 250 is used at vehicle dealerships and manufacturing plants for vehicle 1.
[0046] Data is exchanged between the diagnostic tool 250 and the in-vehicle relay device 101, for example, using IP packets. IP packets are stored in Ethernet frames and transmitted.
[0047] (TCP connection) The diagnostic tool 250 transmits and receives IP packets containing messages to and from the in-vehicle relay device 101 by establishing a communication connection for exchanging predetermined messages according to a connection-oriented protocol.
[0048] Figure 2 shows an example of IP packets transmitted and received between an in-vehicle relay device according to the first embodiment of this disclosure and a diagnostic tool.
[0049] Referring to Figure 2, the diagnostic tool 250 and the in-vehicle relay device 101 send and receive IP packets in accordance with the TCP (Transmission Control Protocol) / IP standard. The diagnostic tool 250 and the in-vehicle relay device 101 establish a communication connection in accordance with the TCP / IP standard (hereinafter also referred to as the "TCP connection") through a three-way handshake.
[0050] More specifically, the diagnostic tool 250 creates an IP packet (hereinafter also referred to as a "SYN packet") that includes a TCP packet with the SYN (synchronize) flag set to ON in the TCP header, and sends the created SYN packet to the in-vehicle relay device 101.
[0051] When the in-vehicle relay device 101 receives a SYN packet from the diagnostic tool 250, it creates an IP packet (hereinafter also referred to as a "SYN / ACK packet") containing a TCP packet with the SYN and ACK flags in the TCP header set to ON, and sends the IP packet containing the created SYN / ACK packet to the diagnostic tool 250.
[0052] When the diagnostic tool 250 receives a SYN / ACK packet from the in-vehicle relay device 101, it creates an IP packet (hereinafter also referred to as an "ACK packet") containing a TCP packet with the ACK flag set to ON in the TCP header, and sends the created ACK packet to the in-vehicle relay device 101. This establishes a TCP connection between the diagnostic tool 250 and the in-vehicle relay device 101.
[0053] Furthermore, when the diagnostic tool 250 terminates the TCP connection with the in-vehicle relay device 101, it creates an IP packet (hereinafter also referred to as a "FIN packet") containing a TCP packet with the FIN (finish) flag set to ON in the TCP header, and sends the created FIN packet to the in-vehicle relay device 101.
[0054] When the in-vehicle relay device 101 receives a FIN packet from the diagnostic tool 250, it creates an IP packet (hereinafter also referred to as a "FIN / ACK packet") containing a TCP packet with the FIN flag and ACK flag set to ON in the TCP header, and sends the created FIN / ACK packet to the diagnostic tool 250.
[0055] When the diagnostic tool 250 receives a FIN / ACK packet from the in-vehicle relay device 101, it creates an ACK packet and sends the created ACK packet to the in-vehicle relay device 101. This terminates the TCP connection between the diagnostic tool 250 and the in-vehicle relay device 101.
[0056] During the TCP connection period A with the in-vehicle relay device 101, the diagnostic tool 250 sends one or more IP packets to the destination in-vehicle device 202 via the in-vehicle relay device 101.
[0057] More specifically, for example, the diagnostic tool 250 sends an IP packet containing message M, which conforms to the DoIP standard (hereinafter also referred to as a "DoIP packet"), to the destination in-vehicle device 202 via the in-vehicle relay device 101.
[0058] Specifically, the diagnostic tool 250 creates a DoIP packet containing message M and the SID (Service Identifier) corresponding to message M, and the source address and destination address are its own IP address and the IP address of the destination in-vehicle device 202, respectively.
[0059] The diagnostic tool 250 then sends the created DoIP packet to the in-vehicle relay device 101.
[0060] (Vehicle-mounted relay device) Figure 3 shows an example of the configuration of an in-vehicle relay device according to a first embodiment of the present disclosure. Referring to Figure 3, the in-vehicle relay device 101 comprises a communication port 11, a relay unit 12, a processing unit 13, and a storage unit 14. The processing unit 13 includes an authentication processing unit 21 and a setting unit 22. One or both of the relay unit 12 and the processing unit 13 are implemented by a processing circuit (Circuitry) including, for example, one or more processors. The storage unit 14 is, for example, a non-volatile memory included in the processing circuit.
[0061] <Ethernet frame relay> The relay unit 12 relays Ethernet frames transmitted and received between in-vehicle devices 202 connected to its own in-vehicle relay device 101.
[0062] The storage unit 14 stores an address table that shows the correspondence between the port number N of the communication port 11 and the MAC (Media Access Control) address of the device connected to the communication port 11.
[0063] When the relay unit 12 receives an Ethernet frame containing a message from a certain in-vehicle device 202, it uses the address table in the storage unit 14 to transmit the Ethernet frame to the destination in-vehicle device 202.
[0064] <Window size notification> The setting unit 22 sets the TCP window size, which is the data size equivalent to the maximum number of DoIP packets per unit time that the diagnostic tool 250 can send to the in-vehicle relay device 101.
[0065] More specifically, the setting unit 22 performs a setting process to set the TCP window size when a TCP connection is established between the diagnostic tool 250 and its own in-vehicle relay device 101.
[0066] Specifically, the configuration unit 22 monitors the IP packets received by the relay unit 12 and checks the contents of the packets by referring to the TCP header of the IP packets.
[0067] The configuration unit 22 determines that a TCP connection has been established between the diagnostic tool 250 and its own in-vehicle relay device 101 if the IP packet received by the relay unit 12 is an ACK packet in response to a SYN / ACK packet.
[0068] When the configuration unit 22 determines that a TCP connection has been established between the diagnostic tool 250 and its in-vehicle relay device 101, it calculates the TCP window size using a predetermined calculation method. The configuration unit 22 then notifies the relay unit 12 of the calculated TCP window size.
[0069] When the relay unit 12 receives a notification from the configuration unit 22, it creates an IP packet (hereinafter also referred to as a "notification packet") that includes the notified TCP window size and contains the IP address of its own in-vehicle relay device 101 and the IP address of the diagnostic tool 250 as the source address and destination IP address, respectively. The relay unit 12 then sends the created notification packet to the diagnostic tool 250.
[0070] When the diagnostic tool 250 receives a notification packet from the in-vehicle relay device 101, it creates a number of DoIP packets equivalent to the TCP window size contained in the received notification packet and sends them to the in-vehicle relay device 101.
[0071] [Description of the task] Referring again to Figure 1, when the in-vehicle relay device 101 receives a DoIP packet from the diagnostic tool 250, it stores the received DoIP packet in a buffer. The in-vehicle relay device 101 then identifies the port number N corresponding to the destination IP address contained in the DoIP packet and sends the DoIP packet stored in the buffer to the in-vehicle device 202 connected to the communication port 11 of port number N.
[0072] For example, when updating the software embedded in each in-vehicle device 202, the diagnostic tool 250 simultaneously transmits DoIP packet P1 destined for in-vehicle device 202A and DoIP packet P2 destined for in-vehicle device 202B. In this case, the in-vehicle relay device 101 stores each DoIP packet received from the diagnostic tool 250 in a common buffer.
[0073] Here, the processing capabilities of in-vehicle devices 202A and 202B may differ from each other. Also, the characteristics of the Ethernet cable 51 between the in-vehicle relay device 101 and in-vehicle device 202A, and the characteristics of the Ethernet cable 51 between the in-vehicle relay device 101 and in-vehicle device 202B may differ from each other. Furthermore, the transmission method between the in-vehicle relay device 101 and in-vehicle device 202A may differ from the transmission method between the in-vehicle relay device 101 and in-vehicle device 202B. In such cases, the communication speed between the diagnostic tool 250 and one of the in-vehicle devices 202 via the in-vehicle relay device 101 may be slower than that of the other in-vehicle device 202.
[0074] In the example shown in Figure 1, the processing capacity of the in-vehicle device 202A is assumed to be smaller than the processing capacity of the in-vehicle device 202B. In this case, for example, the communication speed V1 between the diagnostic tool 250 and the in-vehicle device 202A via the in-vehicle relay device 101 will be smaller than the communication speed V2 between the diagnostic tool 250 and the in-vehicle device 202B via the in-vehicle relay device 101.
[0075] When the communication speed V1 is lower than the communication speed V2, if the diagnostic tool 250 transmits DoIP packets P1 and P2 in parallel, the number of DoIP packets P1 stored in the buffer of the in-vehicle relay device 101 may increase, and the available capacity of the buffer may decrease. In this case, a delay in DoIP packets P2 may occur depending on the communication speed V1.
[0076] Therefore, the diagnostic tool according to the embodiment of this disclosure solves the above problem through the following configuration and operation.
[0077] [Diagnostic Tools] Figure 4 shows an example of the configuration of a diagnostic tool according to a first embodiment of the present disclosure. Referring to Figure 4, the diagnostic tool 250 comprises a communication unit 41, a processing unit 42, and a storage unit 43. The processing unit 42 includes a receiving unit 61, an authentication request unit 62, a switching unit 63, and a packet creation unit 64. One or both of the communication unit 41 and the processing unit 42 are implemented by a processing circuit (Circuitry) including, for example, one or more processors. The storage unit 43 is, for example, a non-volatile memory included in the processing circuit.
[0078] The communication unit 41 can communicate with the in-vehicle relay device 101 via the Ethernet cable 51.
[0079] The switching unit 63 performs a switching process to either set up one TCP connection between the in-vehicle relay device 101 and the communication unit 41, or to set up multiple TCP connections. Hereinafter, the mode in which one TCP connection is set up and the mode in which multiple TCP connections are set up will also be referred to as usage mode Md1 and usage mode Md2, respectively.
[0080] More specifically, the switching unit 63 performs a switching process when the user performs an operation to instruct the user to switch from usage mode Md1 to usage mode Md2.
[0081] For example, if the usage status of the diagnostic tool 250 is specific (hereinafter also referred to as "specific status"), the user performs an operation to input switching request information indicating a request to switch from usage mode Md1 to usage mode Md2. The specific status mentioned above is when updating the software embedded in each in-vehicle device 202.
[0082] In the diagnostic tool 250, the reception unit 61 receives an input operation Q1 from the user regarding a switching request. Upon receiving the input operation Q1, the reception unit 61 outputs operation information S1 indicating that the input operation Q1 has been received to the authentication request unit 62.
[0083] For example, the storage unit 43 stores authentication information B. Authentication information B includes, for example, identification information for identifying a user (hereinafter also referred to as "user ID (Identifier)") and a password. The authentication information may also be a certificate.
[0084] When the authentication request unit 62 receives operation information S1 from the reception unit 61, it outputs the authentication information B stored in the storage unit 43 to the communication unit 41.
[0085] For example, the communication unit 41 transmits authentication information B to the in-vehicle relay device 101. More specifically, when the communication unit 41 receives authentication information B from the authentication request unit 62, it transmits authentication information B to the in-vehicle relay device 101.
[0086] [Authentication process] Referring again to Figure 3, in the in-vehicle relay device 101, when the relay unit 12 receives authentication information B from the diagnostic tool 250, it outputs the received authentication information B to the authentication processing unit 21.
[0087] When the authentication processing unit 21 receives authentication information B from the relay unit 12, it performs authentication processing of the diagnostic tool 250 using authentication information B.
[0088] If the authentication process is successful, the authentication processing unit 21 outputs authentication success information to the relay unit 12, indicating that the authentication process was successful.
[0089] When the relay unit 12 receives authentication success information from the authentication processing unit 21, it transmits the authentication success information to the diagnostic tool 250.
[0090] On the other hand, if the authentication process fails, the authentication processing unit 21 transmits authentication failure information indicating that the authentication process failed to a navigation device (not shown) via the relay unit 12.
[0091] For example, when the navigation system receives authentication failure information from the in-vehicle relay device 101, it displays a screen showing the contents of the received authentication failure information on its own monitor or the like.
[0092] Furthermore, the authentication processing unit 21 is not limited to a configuration that performs authentication processing using authentication information B, but may also be configured to perform CHAP (Challenge-Handshake Authentication Protocol) authentication with the diagnostic tool 250.
[0093] [Switching process] Referring again to Figure 4, in the diagnostic tool 250, when the communication unit 41 receives authentication success information from the in-vehicle relay device 101, it outputs the received authentication success information to the switching unit 63.
[0094] For example, if the switching unit 63 receives authentication success information from the communication unit 41, it sets up multiple TCP connections.
[0095] More specifically, when the switching unit 63 receives authentication success information from the communication unit 41, it sets up multiple TCP connections. In this embodiment, for example, the switching unit 63 sets up multiple TCP connections, namely TCP connections Tc1 and Tc2. TCP connection Tc2 is a TCP connection that is newly established in usage mode Md2.
[0096] Specifically, for example, when the switching unit 63 receives authentication success information from the communication unit 41, it outputs an additional request notification K1 to the packet creation unit 64 indicating that it requests the establishment of a new TCP connection.
[0097] When the packet creation unit 64 receives an additional request notification K1 from the switching unit 63, it establishes a TCP connection Tc2 between its diagnostic tool 250 and the in-vehicle relay device 101.
[0098] Specifically, when the packet creation unit 64 receives an additional request notification K1 from the switching unit 63, it creates the SYN packet shown in Figure 2 and transmits it to the in-vehicle relay device 101 via the communication unit 41.
[0099] Then, when the packet creation unit 64 receives a SYN / ACK packet from the in-vehicle relay device 101 via the communication unit 41, it sends an ACK packet to the in-vehicle relay device 101 via the communication unit 41. This establishes a TCP connection Tc2 between the diagnostic tool 250 and the in-vehicle relay device 101.
[0100] The packet creation unit 64, with TCP connections Tc1 and Tc2 established, sends a DoIP packet P1 destined for the in-vehicle device 202A to the in-vehicle relay device 101 using TCP connection Tc1. Similarly, the diagnostic tool 250, with TCP connections Tc1 and Tc2 established, sends a DoIP packet P2 destined for the in-vehicle device 202B to the in-vehicle relay device 101 using TCP connection Tc2.
[0101] More specifically, for example, when TCP connections Tc1 and Tc2 are established, the packet creation unit 64 sends a DoIP packet P1 to the in-vehicle relay device 101 via the communication unit 41. This packet P1 includes the IP address of the in-vehicle device 202A as the destination IP address and the number of the logical port corresponding to the in-vehicle device 202A.
[0102] For example, when TCP connections Tc1 and Tc2 are established, the packet creation unit 64 transmits a DoIP packet P2 to the in-vehicle relay device 101 via the communication unit 41. This packet P2 includes the IP address of the in-vehicle device 202B as the destination IP address and the number of the logical port corresponding to the in-vehicle device 202B.
[0103] Figure 5 is a conceptual diagram illustrating an example of a switching process using a diagnostic tool according to the first embodiment of this disclosure.
[0104] Referring to Figure 5, under normal circumstances, the diagnostic tool 250 establishes a TCP connection Tc1 with the in-vehicle relay device 101 and then sends a DoIP packet (hereinafter also referred to as "DoIP packet P1") destined for the in-vehicle device 202A to the in-vehicle relay device 101 (step ST1).
[0105] Next, when the in-vehicle relay device 101 receives a DoIP packet P1 from the diagnostic tool 250, it transmits the received DoIP packet P1 to the in-vehicle device 202A (step ST2).
[0106] Next, the diagnostic tool 250 sends a DoIP packet (hereinafter also referred to as "DoIP packet P2") destined for the in-vehicle device 202B to the in-vehicle relay device 101 (step ST3).
[0107] Next, when the in-vehicle relay device 101 receives a DoIP packet P2 from the diagnostic tool 250, it transmits the received DoIP packet P2 to the in-vehicle device 202B (step ST4).
[0108] Next, when the diagnostic tool 250 receives the user's input operation Q1 for switching request information, it establishes TCP connection Tc2 in addition to TCP connection Tc1 with the in-vehicle relay device 101. Then, the diagnostic tool 250 sends DoIP packet P1 to the in-vehicle relay device 101 using TCP connection Tc1 (step ST5).
[0109] Next, when the in-vehicle relay device 101 receives a DoIP packet P1 from the diagnostic tool 250, it transmits the received DoIP packet P1 to the in-vehicle device 202A (step ST6).
[0110] Next, the diagnostic tool 250 sends the DoIP packet P2 to the in-vehicle relay device 101 using the TCP connection Tc2 (step ST7).
[0111] Next, when the in-vehicle relay device 101 receives a DoIP packet P2 from the diagnostic tool 250, it transmits the received DoIP packet P2 to the in-vehicle device 202B (step ST8).
[0112] Referring again to Figure 4, in the diagnostic tool 250, the reception unit 61 receives an input operation Q2 indicating an end request information request to end the usage mode Md2. Upon receiving input operation Q2, the reception unit 61 outputs operation information S2 indicating that input operation Q2 has been received to the switching unit 63.
[0113] When the switching unit 63 receives operation information S2 from the reception unit 61, it outputs a termination request notification K2 to the packet creation unit 64, indicating that it requests the termination of the newly established TCP connection.
[0114] When the packet creation unit 64 receives a termination request notification K2 from the switching unit 63, it terminates the newly established TCP connection Tc2 in the usage mode Md2.
[0115] Specifically, when the packet creation unit 64 receives a termination request notification K2 from the switching unit 63, it creates the FIN packet shown in Figure 2 and transmits it to the in-vehicle relay device 101 via the communication unit 41.
[0116] Then, when the packet creation unit 64 receives a FIN / ACK packet from the in-vehicle relay device 101 via the communication unit 41, it sends an ACK packet to the in-vehicle relay device 101 via the communication unit 41. As a result, the TCP connection Tc2 newly established in operating mode Md2 is terminated.
[0117] (DoIP packet forwarding) Referring again to Figure 3, the relaying process of DoIP packets in the in-vehicle relay device 101 will be explained. In the in-vehicle relay device 101, the relay unit 12 relays DoIP packets transmitted and received between the diagnostic tool 250 and the in-vehicle equipment 202.
[0118] For example, the storage unit 14 includes multiple buffers 30. In the example shown in Figure 3, the storage unit 14 includes buffers 30A and 30B, which are buffers 30.
[0119] <Normal time> Under normal circumstances, for example, when the relay unit 12 receives a DoIP packet from the diagnostic tool 250, it stores the received DoIP packet in the buffer 30A.
[0120] For example, the storage unit 14 stores a port table that shows the correspondence between IP addresses and port number N of the communication port 11.
[0121] When the relay unit 12 stores the received DoIP packet in the buffer 30A, it checks the port number N corresponding to the destination IP address contained in the DoIP packet by referring to the port table in the storage unit 14.
[0122] When the relay unit 12 confirms port number N, it identifies the MAC address corresponding to that port number N by referring to the address table in the storage unit 14.
[0123] The relay unit 12 then transmits an Ethernet frame containing the identified MAC address as the destination MAC address and the DoIP packet stored in buffer 30A from the communication port 11 of the identified port number N to the destination in-vehicle device 202.
[0124] When the in-vehicle device 202 receives a DoIP packet from the in-vehicle relay device 101, it sends a response packet to the diagnostic tool 250 via the in-vehicle relay device 101 indicating that it has received the DoIP packet and the SID included in the DoIP.
[0125] The in-vehicle device 202 then performs predetermined processing based on the received DoIP packet. For example, if the DoIP packet contains message M requesting the diagnostic tool 250 to acquire data necessary for fault diagnosis, the in-vehicle device 202 acquires that data.
[0126] <In specific situations> After receiving authentication success information from the authentication processing unit 21, the relay unit 12 receives a DoIP packet from the diagnostic tool 250 and verifies the TCP connection used to send the DoIP packet by checking the pair of destination IP address and logical port number contained in the received DoIP packet.
[0127] For example, when a DoIP packet is sent using TCP connection Tc1 by the diagnostic tool 250, the relay unit 12 stores the DoIP packet in buffer 30A. In this embodiment, the relay unit 12 stores DoIP packet P1 in buffer 30A.
[0128] Furthermore, for example, if a DoIP packet is sent using TCP connection Tc2 by the diagnostic tool 250, the relay unit 12 stores the DoIP packet in buffer 30B. In this embodiment, the relay unit 12 stores DoIP packet P2 in buffer 30B.
[0129] The relay unit 12 stores the received DoIP packet in one of the buffers 30A and 30B, buffer 30.
[0130] Then, when the relay unit 12 relays a DoIP packet P1 stored in buffer 30A, it sends an Ethernet frame containing the DoIP packet P1 and including the MAC address of the in-vehicle device 202A as the destination MAC address to the in-vehicle device 202A.
[0131] Furthermore, when the relay unit 12 relays a DoIP packet P2 stored in buffer 30B, it sends an Ethernet frame containing the DoIP packet P2 and including the MAC address of the in-vehicle device 202B as the destination MAC address to the in-vehicle device 202B.
[0132] [Operation Flow] Figures 6 and 7 are flowcharts illustrating an example of the operation procedure when the diagnostic tool according to the first embodiment of this disclosure performs a switching process.
[0133] Referring to Figures 6 and 7, first, once a TCP connection Tc1 with the in-vehicle relay device 101 is established (YES in step ST101), the diagnostic tool 250 waits for a user to input switching request information Q1 (NO in step ST102).
[0134] Then, when the diagnostic tool 250 receives input operation Q1 (YES in step ST102), it transmits the authentication information B stored in the memory unit 35 to the in-vehicle relay device 101 (step ST103).
[0135] Next, the diagnostic tool 250 awaits the reception of authentication success information from the in-vehicle relay device 101 (NO in step ST104).
[0136] Then, when the diagnostic tool 250 receives authentication success information from the in-vehicle relay device 101 (YES in step ST104), it sets up multiple TCP connections. For example, as described above, in addition to TCP connection Tc1, the diagnostic tool 250 establishes TCP connection Tc2 with the in-vehicle relay device 101 (step ST105).
[0137] Next, the diagnostic tool 250 sends a DoIP packet P1 to the in-vehicle relay device 101, with the in-vehicle device 202A as the destination. For example, as described above, the diagnostic tool 250 sends a DoIP packet P1 to the in-vehicle relay device 101 that includes the IP address of the in-vehicle device 202A as the destination IP address and also includes the number of the logical port corresponding to the in-vehicle device 202A (step ST106).
[0138] Furthermore, the diagnostic tool 250 sends a DoIP packet P2 to the in-vehicle relay device 101, with the in-vehicle device 202B as the destination. For example, as described above, the diagnostic tool 250 sends a DoIP packet P2 to the in-vehicle relay device 101 that includes the IP address of the in-vehicle device 202B as the destination IP address and also includes the number of the logical port corresponding to the in-vehicle device 202B (step ST107).
[0139] Next, the diagnostic tool 250 awaits the user's input operation Q2 for termination request information (NO in step ST108).
[0140] Next, when the diagnostic tool 250 receives input operation Q2 (YES in step ST108), it terminates the TCP connection Tc2 (step ST109) and waits for a new input operation Q1 from the user (NO in step ST102).
[0141] Figure 8 is a flowchart illustrating an example of the operation procedure when an in-vehicle relay device according to the first embodiment of this disclosure performs authentication processing.
[0142] Referring to Figure 8, first, when the in-vehicle relay device 101 establishes a TCP connection Tc1 with the diagnostic tool 250 (NO in step ST201), it waits for the reception of authentication information B from the diagnostic tool 250 (NO in step ST202).
[0143] Then, when the in-vehicle relay device 101 receives authentication information B from the diagnostic tool 250 (YES in step ST202), it performs authentication processing on the diagnostic tool 250 (step ST203).
[0144] Next, if the authentication process of the diagnostic tool 250 fails (NO in step ST204), the in-vehicle relay device 101 sends authentication failure information to the navigation device indicating that the authentication process failed (step ST205), and waits to receive new authentication information B from the diagnostic tool 250 (NO in step ST202).
[0145] Meanwhile, if the authentication process of the diagnostic tool 250 is successful (YES in step ST204), the in-vehicle relay device 101 transmits authentication success information to the diagnostic tool 250 indicating that the authentication process was successful (step ST206).
[0146] Next, the in-vehicle relay device 101 sends authentication success information to the diagnostic tool 250 and waits for the reception of a DoIP packet from the diagnostic tool 250 (NO in step ST207).
[0147] Next, when the in-vehicle relay device 101 receives a DoIP packet from the diagnostic tool 250 (YES in step ST207), it checks whether the TCP connection used to send the DoIP packet is TCP connection Tc1 or TCP connection Tc2. For example, as described above, the in-vehicle relay device 101 checks the TCP connection by checking the pair of destination IP address and logical port number contained in the received DoIP packet (step ST208).
[0148] Then, if the TCP connection used to transmit the received DoIP packet is TCP connection Tc1 (YES in step ST208), the in-vehicle relay device 101 stores the DoIP packet in buffer 30A (step ST209).
[0149] Next, the in-vehicle relay device 101 performs relay processing on the DoIP packets stored in buffer 30A. For example, as described above, the in-vehicle relay device 101 performs the relay processing using the port table and address table in the storage unit 14 (step ST210), and waits for the reception of new DoIP packets from the diagnostic tool 250 (NO in step ST207).
[0150] On the other hand, if the TCP connection used to transmit the received DoIP packet is TCP connection Tc2 (NO in step ST208), the in-vehicle relay device 101 stores the DoIP packet in buffer 30B (step ST211).
[0151] Next, the in-vehicle relay device 101 performs relay processing on the DoIP packets stored in buffer 30B. For example, as described above, the in-vehicle relay device 101 performs the relay processing using the port table and address table in the storage unit 14 (step ST210), and waits for the reception of new DoIP packets from the diagnostic tool 250 (NO in step ST207).
[0152] Figure 9 shows an example of a processing sequence for a diagnostic tool, an in-vehicle relay device, and an in-vehicle device according to the first embodiment of this disclosure.
[0153] Referring to Figure 9, first, when the diagnostic tool 250 receives the input operation Q1 for switching request information while a TCP connection Tc1 with the in-vehicle relay device 101 has been established (step ST301), it transmits the authentication information B stored in the storage unit 43 to the in-vehicle relay device 101 (step ST303).
[0154] Next, when the in-vehicle relay device 101 receives authentication information B from the diagnostic tool 250, it performs the authentication process on the diagnostic tool 250. Here, we assume that the authentication process is successful (step ST304).
[0155] Next, the in-vehicle relay device 101 transmits authentication success information to the diagnostic tool 250, indicating that the authentication process of the diagnostic tool 250 has been successful (step ST305).
[0156] Next, when the diagnostic tool 250 receives authentication success information from the in-vehicle relay device 101, it sets up multiple TCP connections. For example, as described above, in addition to TCP connection Tc1, the diagnostic tool 250 establishes TCP connection Tc2 with the in-vehicle relay device 101 (step ST306).
[0157] Next, with TCP connections Tc1 and Tc2 established with the in-vehicle relay device 101, the diagnostic tool 250 sends a DoIP packet P1 destined for the in-vehicle device 202A to the in-vehicle relay device 101 using TCP connection Tc1 (step ST307).
[0158] Furthermore, when TCP connections Tc1 and Tc2 with the in-vehicle relay device 101 are established, the diagnostic tool 250 sends a DoIP packet P2 destined for the in-vehicle device 202B to the in-vehicle relay device 101 using TCP connection Tc2 (step ST308).
[0159] Next, when the in-vehicle relay device 101 receives a DoIP packet P1 from the diagnostic tool 250, it stores the received DoIP packet P1 in the buffer 30A (step ST309) and performs relay processing on the DoIP packet P1 (step ST311).
[0160] Furthermore, when the in-vehicle relay device 101 receives a DoIP packet P2 from the diagnostic tool 250, it stores the received DoIP packet P2 in the buffer 30B (step ST312) and performs relay processing on the DoIP packet P2 (step ST313).
[0161] Next, when the in-vehicle device 202A receives the DoIP packet P1 from the in-vehicle relay device 101, it sends a response packet to the in-vehicle relay device 101 indicating that it has received the DoIP packet P1 (step ST314).
[0162] Next, when the in-vehicle relay device 101 receives a response packet from the in-vehicle equipment 202A, it sends the received response packet to the diagnostic tool 250 (step ST315).
[0163] Next, when the in-vehicle device 202B receives a DoIP packet P2 from the in-vehicle relay device 101, it sends a response packet to the in-vehicle relay device 101 indicating that it has received the DoIP packet P2 (step ST316).
[0164] Next, when the in-vehicle relay device 101 receives a response packet from the in-vehicle equipment 202B, it sends the received response packet to the diagnostic tool 250 (step ST317).
[0165] Next, when the in-vehicle relay device 101 receives the user's input operation Q2 for termination request information (step ST318), it terminates the TCP connection Tc2 with the in-vehicle relay device 101 (step ST319).
[0166] Next, other embodiments of the present disclosure will be described with reference to the drawings. In the drawings, the same or corresponding parts are denoted by the same reference numerals, and their descriptions will not be repeated.
[0167] <Second Embodiment> In the first embodiment of the present disclosure described above, the diagnostic tool 250 performs a switching process when the user performs an operation to instruct a switch from usage mode Md1 to usage mode Md2. In contrast, in the second embodiment of the present disclosure, the diagnostic tool 250 performs a switching process based on the measurement result of the communication speed between the in-vehicle equipment 202 and the in-vehicle relay device 101. Except for the contents described below, it is the same as the diagnostic tool 250 in the first embodiment.
[0168] [Diagnostic Tools] Figure 10 shows an example of the configuration of a diagnostic tool according to a second embodiment of the present disclosure. Referring to Figure 10, the diagnostic tool 250A includes a processing unit 42A instead of a processing unit 42, compared to the diagnostic tool 250 shown in Figure 4. Compared to the processing unit 42 shown in Figure 4, the processing unit 42A does not include a reception unit 61 and an authentication request unit 62, and further includes a measurement unit 65.
[0169] (Measurement part) For example, the measurement unit 65 performs a measurement process to measure the communication speed between the communication unit 41 and the in-vehicle equipment 202 via the in-vehicle relay device 101.
[0170] More specifically, for example, the measurement unit 65 measures the time from when the communication unit 41 sends a DoIP packet from the diagnostic tool 250A to the destination in-vehicle device 202 until the communication unit 41 receives a response packet from the in-vehicle device 202 (hereinafter also referred to as "communication time E") as the communication speed.
[0171] Specifically, when the communication unit 41 transmits a DoIP packet received from the diagnostic tool 250A to the destination in-vehicle device 202, it outputs a transmission notification to the measurement unit 65 indicating the type of message M contained in the DoIP packet (hereinafter also referred to as the "message label") and that the DoIP packet has been transmitted to the in-vehicle device 202.
[0172] Furthermore, when the communication unit 41 receives a response packet from the in-vehicle device 202, it outputs a message label contained in the response packet and a reception notification to the measurement unit 65 indicating that the response packet has been received from the in-vehicle device 202.
[0173] When the measurement unit 65 receives a transmission notification from the communication unit 41 and then receives a reception notification containing the same message label as the transmission notification, it measures the time from receiving the transmission notification to receiving the reception notification as the communication time E.
[0174] The measurement unit 65 then outputs measurement result information, including the measurement result and a message label corresponding to the measurement result, to the switching unit 63.
[0175] (Switching process) For example, the switching unit 63 sets up multiple TCP connections if the measurement result of the communication time E measured by the measurement unit 65 satisfies predetermined conditions.
[0176] More specifically, for example, the switching unit 63 sets up multiple TCP connections if the comparison result between the measurement result measured by the measurement unit 65 and the reference value G satisfies predetermined conditions.
[0177] Figure 11 shows an example of a list of reference values held by a diagnostic tool according to a second embodiment of this disclosure.
[0178] Referring to Figure 11, for example, the storage unit 43 maintains a reference value list L for each message label, which indicates a reference value G for the communication time E. The reference value list L is an example of communication speed information.
[0179] In the example shown in Figure 11, in the reference value list L, the reference value G corresponding to message label "M1" and the reference value G corresponding to message label "M2" are "2ms" and "5ms," respectively.
[0180] Referring again to Figure 10, for example, the switching unit 63 performs a switching process based on the difference between the reference value G indicated in the reference value list L held in the storage unit 43 and the measurement result of the communication time E measured by the measurement unit 65.
[0181] Specifically, when the switching unit 63 receives measurement result information from the measurement unit 65, it refers to the reference value list L in the storage unit 43 to identify the reference value G corresponding to the message label included in the measurement result information.
[0182] When the switching unit 63 identifies a reference value G, it calculates a value F by subtracting the reference value G from the measurement result information received from the measurement unit 65. Then, the switching unit 63 compares the calculated value F with the threshold value Th.
[0183] If the calculated value F is greater than or equal to the threshold Th, the switching unit 63 outputs an additional request notification K1 to the packet creation unit 64.
[0184] On the other hand, if the calculated value F is less than the threshold Th, the switching unit 63 does not output an additional request notification K1 to the packet creation unit 64.
[0185] [Operation Flow] Figures 12 and 13 are flowcharts illustrating an example of the operation procedure when a diagnostic tool according to the second embodiment of this disclosure performs a switching process.
[0186] Referring to Figures 12 and 13, first, when the diagnostic tool 250A establishes a TCP connection Tc1 with the in-vehicle relay device 101 (YES in step ST401), it sends a DoIP packet P1 destined for the in-vehicle device 202A to the in-vehicle relay device 101 using the TCP connection Tc1 (step ST402).
[0187] Furthermore, the diagnostic tool 250A sends a DoIP packet P2 destined for the in-vehicle device 202B to the in-vehicle relay device 101 using TCP connection Tc1 (step ST403).
[0188] Next, the diagnostic tool 250A awaits the reception of response packets from each in-vehicle device 202 (NO in step ST404).
[0189] Then, when the diagnostic tool 250A receives a response packet from each in-vehicle device 202 (YES in step ST404), it performs a measurement process to measure the communication speed between itself and the in-vehicle device 202 via the in-vehicle relay device 101. For example, as described above, the diagnostic tool 250A measures the communication time E from the time it sends a DoIP packet to the in-vehicle device 202 via the in-vehicle relay device 101 until it receives a response packet from the in-vehicle device 202 as the communication speed (step ST405).
[0190] Next, the diagnostic tool 250A checks whether the comparison result between the measured communication time E and the reference value G satisfies predetermined conditions. For example, as described above, the diagnostic tool 250A uses the reference value list L in the storage unit 43 to calculate a value F by subtracting the reference value G corresponding to the measured communication time E from the measured communication time E. Then, the diagnostic tool 250A checks whether the value F is greater than or equal to the threshold Th (step ST406).
[0191] Then, if the diagnostic tool 250A finds that the comparison result between the measured communication time E and the reference value G does not meet the predetermined conditions (NO in step ST406), it maintains the operating mode Md1 (step ST407) and sends new DoIP packets P1 and P2 (steps ST402 and ST403).
[0192] On the other hand, the diagnostic tool 250A sets up multiple TCP connections if the comparison result between the measurement result of the communication time E and the reference value G satisfies predetermined conditions (YES in step ST406). For example, as described above, the diagnostic tool 250A transitions from usage mode Md1 to usage mode Md2 and establishes TCP connection Tc2 with the in-vehicle relay device 101 in addition to TCP connection Tc1 (step ST408).
[0193] Next, the diagnostic tool 250A sends the DoIP packet P1 to the in-vehicle relay device 101 using the TCP connection Tc1 (step ST409).
[0194] Next, the diagnostic tool 250A sends the DoIP packet P2 to the in-vehicle relay device 101 using the TCP connection Tc2 (step ST410).
[0195] Next, the diagnostic tool 250A waits for response packets from each in-vehicle device 202 (NO in step ST411).
[0196] Then, when the diagnostic tool 250A receives a response packet from each in-vehicle device 202 (YES in step ST411), it performs the measurement process again (step ST405). If the comparison result between the measured communication time E and the reference value G does not meet the predetermined conditions, i.e., if the communication time E recovers to its normal value (NO in step ST406), it terminates the TCP connection Tc2 (step ST407).
[0197] The diagnostic tool 250B according to the second embodiment of this disclosure is configured to maintain a reference value list L indicating a reference value for the communication speed for each type of message M, and to perform switching processing using the reference value list L, but is not limited to this configuration. The diagnostic tool 250B may also be configured not to maintain a reference value list L. In this case, for example, the switching unit 63 performs switching processing based on the difference between the communication speed with one in-vehicle device 202 and the communication speed with another in-vehicle device 202, regardless of the type of message M.
[0198] <Third Embodiment> In the first embodiment of the present disclosure described above, the diagnostic tool 250 performs a switching process when the user performs an operation to instruct a switch from usage mode Md1 to usage mode Md2. In contrast, in the third embodiment of the present disclosure, the diagnostic tool 250 performs a switching process according to the type of message M. Except for the contents described below, it is the same as the diagnostic tool 250 in the first embodiment.
[0199] Figure 14 shows an example of the configuration of an in-vehicle system according to a third embodiment of the present disclosure. Referring to Figure 14, the in-vehicle system 302, compared to the in-vehicle system 301 shown in Figure 1, is equipped with a diagnostic tool 250B instead of a diagnostic tool 250, and further includes in-vehicle devices 202C and 202D, which are in-vehicle devices 202. The in-vehicle relay device 101, compared to the in-vehicle relay device 101 shown in Figure 1, is further equipped with communication ports 11D and 11E, which are communication ports 11.
[0200] In the example shown in Figure 14, the in-vehicle devices 202C and 202D are connected to the communication ports 11D and 11E, respectively, via the Ethernet cable 51.
[0201] Figure 15 shows an example of the configuration of a diagnostic tool according to a third embodiment of the present disclosure. Referring to Figure 15, the diagnostic tool 250B includes a processing unit 42B instead of a processing unit 42, compared to the diagnostic tool 250 shown in Figure 4. The processing unit 42B does not include an authentication request unit 62, compared to the processing unit 42 shown in Figure 4.
[0202] (Message Information) Figure 16 shows an example of message information held by a diagnostic tool according to the third embodiment of this disclosure.
[0203] Referring to Figure 16, the storage unit 43 holds message information R1 indicating the message label of message M transmitted when multiple TCP connections are established.
[0204] For example, message information R1 includes vehicle type information indicating the vehicle type of vehicle 1 to which message M is transmitted, SID information indicating the SID included in the DoIP packet, and destination information indicating the in-vehicle device 202 to which message M is destined. The destination information is, for example, the IP address of the in-vehicle device 202 to which message M is destined, i.e., the destination IP address.
[0205] In the example shown in Figure 16, the message labels of message M transmitted when multiple TCP connections are established are "M11" and "M14," etc. Message M with message label M11 is message M transmitted in vehicle 1 of vehicle type "AAA," and is message M containing "YYY" and "0x2E" as the destination IP address and SID, respectively. Message M with message label M14 is message M transmitted in vehicle 1 of vehicle type "BBB," and is message M containing "WWW" and "0x2D" as the destination IP address and SID, respectively. In Figure 14, numbers starting with "0x" mean that the numbers after "0x" are represented in hexadecimal.
[0206] Message information R1 may include some of the vehicle type information, SID information, and destination information. Furthermore, message information R1 may include other information in place of, or in addition to, some or all of, the vehicle type information, SID information, and destination information.
[0207] Referring again to Figure 15, when the reception unit 61 starts its own diagnostic tool 250, it displays a screen prompting the input of vehicle information on the monitor of its own diagnostic tool 250B.
[0208] The reception unit 61 receives the user's input operation Q3 for vehicle information. Upon receiving the input operation Q3, the reception unit 61 stores the entered vehicle information in the storage unit 43. The diagnostic tool 250B may be configured to acquire vehicle information from any of the multiple in-vehicle devices 202.
[0209] When the packet creation unit 64 creates a DoIP packet that includes the IP address of a certain in-vehicle device 202 as the destination IP address, it outputs the created DoIP packet to the switching unit 63.
[0210] When the switching unit 63 receives a DoIP packet from the packet creation unit 64, it checks whether the vehicle type indicated by the vehicle type information stored in the storage unit 43, and the message M (hereinafter also referred to as "message Ma") corresponding to the destination IP address and SID included in the DoIP packet, are registered in the message information R1 in the storage unit 43.
[0211] The switching unit 63 decides to maintain the usage mode Md1 if message Ma is not registered in message information R1. Then, the switching unit 63 transmits the DoIP packet received from the packet creation unit 64 to the in-vehicle relay device 101 via the communication unit 41.
[0212] On the other hand, if message Ma is registered in message information R1, the switching unit 63 decides to switch the usage mode of its diagnostic tool 250B from usage mode Md1 to usage mode Md2. In other words, the switching unit 63 decides to set up multiple TCP connections. Then, the switching unit 63 outputs an additional request notification K1 to the packet creation unit 64.
[0213] When the packet creation unit 64 receives an additional request notification K1 from the switching unit 63, it establishes a TCP connection Tc2 between its diagnostic tool 250B and the in-vehicle relay device 101. The packet creation unit 64 then outputs an establishment completion notification to the switching unit 63 indicating that it has established the TCP connection Tc2.
[0214] When the switching unit 63 receives a notification from the packet creation unit 64 that the connection has been established, it sends the DoIP packet received from the packet creation unit 64 to the in-vehicle relay device 101 using the TCP connection Tc2. Specifically, the switching unit 63 includes the port number of the logical port corresponding to the in-vehicle device 202 that is the destination of the DoIP packet in the DoIP packet, and sends it to the in-vehicle relay device 101 via the communication unit 41.
[0215] Figure 17 shows another example of message information held by a diagnostic tool according to a third embodiment of the present disclosure.
[0216] Referring to Figure 17, message information R2 includes information indicating the type of TCP connection used to send each message M, in addition to message information R1 shown in Figure 16.
[0217] In the example shown in Figure 17, the TCP connection used to send message M with message label M13 is "TCP connection Tc1". Message M with message label M13 is a message M transmitted in vehicle 1 of vehicle type "AAA", and contains "XXX" and "0x2F" as the destination IP address and SID, respectively.
[0218] Furthermore, in the example shown in Figure 17, the TCP connection used to send message M with message label M11 and message M with message label M14 is "TCP connection Tc2".
[0219] When the switching unit 63 receives a DoIP packet from the packet creation unit 64, it checks the type of TCP connection to be used to send message Ma by referring to the message information R2 in the storage unit 43.
[0220] Then, if the TCP connection used to send message Ma is the already established TCP connection Tc1, the switching unit 63 sends the DoIP packet received from the packet creation unit 64 to the in-vehicle relay device 101 via the communication unit 41.
[0221] On the other hand, if the TCP connection used to send message Ma is TCP connection Tc2, the switching unit 63 decides to switch the usage mode of its diagnostic tool 250B from usage mode Md1 to usage mode Md2. In other words, the switching unit 63 decides to set up multiple TCP connections. Then, the switching unit 63 outputs an additional request notification K1 to the packet creation unit 64.
[0222] [Operation Flow] Figure 18 is a flowchart illustrating an example of the operation procedure when a diagnostic tool according to the third embodiment of this disclosure performs a switching process.
[0223] Referring to Figure 18, first, when the diagnostic tool 250B is started, it waits for the user to input vehicle information Q3 (NO in step ST502).
[0224] Then, when the diagnostic tool 250B receives input operation Q3 (YES in step ST502), it saves the entered vehicle information to the storage unit 43 (step ST503).
[0225] Next, when the diagnostic tool 250B establishes a TCP connection Tc1 with the in-vehicle relay device 101 (YES in step ST504), it creates a DoIP packet containing message M destined for a certain in-vehicle device 202 (step ST505).
[0226] Next, when the diagnostic tool 250B creates a DoIP packet, it checks whether the vehicle type indicated by the vehicle type information stored in the storage unit 43, as well as the message Ma corresponding to the destination IP address and SID included in the DoIP packet, are registered in the message information R1 in the storage unit 43 (step ST506).
[0227] Then, if message Ma is registered in message information R1 (YES in step ST506), the diagnostic tool 250B sets up multiple TCP connections. For example, as described above, the diagnostic tool 250B transitions from usage mode Md1 to usage mode Md2 and establishes TCP connection Tc2 in addition to TCP connection Tc1 (step ST507).
[0228] Next, the diagnostic tool 250B sends a DoIP packet containing message Ma to the in-vehicle relay device 101 using TCP connection Tc2 (step ST508).
[0229] Next, the diagnostic tool 250B awaits the reception of a response packet from the in-vehicle device 202 (NO in step ST509).
[0230] Then, when the diagnostic tool 250B receives a response packet from the in-vehicle device 202 (YES in step ST509), it creates a new DoIP packet (step ST505).
[0231] On the other hand, if the diagnostic tool 250B does not register message Ma in message information R1 (NO in step ST506), it maintains the usage mode Md1 (step ST510).
[0232] Next, the diagnostic tool 250B sends the created DoIP packet to the in-vehicle relay device 101 using TCP connection Tc1 (step ST508).
[0233] The diagnostic tool 250B according to the third embodiment of this disclosure is configured to hold message information R1 indicating the type of message M to be transmitted when multiple TCP connections are established, but it is not limited to this configuration. The diagnostic tool 250B may also be configured to hold message information R11 indicating the type of message M to be transmitted when one TCP connection is established. In this case, the diagnostic tool 250B establishes multiple TCP connections if the message Ma to be sent to the in-vehicle device 202 is not registered in the message information R11.
[0234] [Differentiation] Figure 19 shows a modified configuration of the in-vehicle system according to the third embodiment of the present disclosure. Referring to Figure 19, the in-vehicle system 303 further includes the in-vehicle equipment 202C compared to the in-vehicle system 301 shown in Figure 1.
[0235] In the example shown in Figure 19, the in-vehicle device 202A is connected to the communication port 11A of the in-vehicle relay device 101 via an Ethernet cable 51. The in-vehicle devices 202B and 202C are connected to the communication port 11B of the in-vehicle relay device 101 via a CAN bus 52, which is a transmission line conforming to the CAN (Controller Area Network) standard.
[0236] Furthermore, the in-vehicle equipment 202 is not limited to being connected to the in-vehicle relay device 101 via an Ethernet cable 51 or a CAN bus 52, but may also be connected to the in-vehicle relay device 101 via a transmission line conforming to other communication standards such as CAN FD (CAN with Flexible Data Rate), FlexRay (registered trademark), MOST (Media Oriented System Transport) (registered trademark), LIN (Local Interconnect Network), and CXPI (Clock Extension Peripheral Interface) (registered trademark).
[0237] Figure 20 shows an example of message information held by a modified version of the diagnostic tool according to the third embodiment of this disclosure.
[0238] Referring to Figure 20, the storage unit 35 holds message information R3 that indicates the correspondence between the destination in-vehicle device 202 and the type of TCP connection. The storage unit 35 stores message information R3 for each vehicle type, for example.
[0239] In the example shown in Figure 20, the TCP connection used to send message M, which is destined for in-vehicle equipment 202A connected to the in-vehicle relay device 101 via Ethernet cable 51, is "TCP connection Tc1". The TCP connection used to send message M, which is destined for in-vehicle equipment 202B and in-vehicle equipment 202C, etc., which are connected to the in-vehicle relay device 101 via CAN bus 52, is "TCP connection Tc2".
[0240] When the switching unit 63 receives a DoIP packet from the packet creation unit 64, it selects a message information R3 from among several message information R3 stored in the storage unit 43 that corresponds to the vehicle type indicated by the vehicle type information stored in the storage unit 43. Then, by referring to the selected message information R3, the switching unit 63 confirms the type of TCP connection corresponding to the in-vehicle device 202 that is the destination of the DoIP packet.
[0241] Then, if the TCP connection corresponding to the destination in-vehicle device 202 is the already established TCP connection Tc1, the switching unit 63 sends the DoIP packet received from the packet creation unit 64 to the in-vehicle relay device 101 via the communication unit 41.
[0242] On the other hand, if the TCP connection corresponding to the destination in-vehicle device 202 is TCP connection Tc2, the switching unit 63 decides to switch the usage mode of its diagnostic tool 250B from usage mode Md1 to usage mode Md2. In other words, the switching unit 63 decides to set up multiple TCP connections. Then, the switching unit 63 outputs an additional request notification K1 to the packet creation unit 64.
[0243] When the packet creation unit 64 receives an additional request notification K1 from the switching unit 63, it establishes a TCP connection Tc2 between its diagnostic tool 250B and the in-vehicle relay device 101. The packet creation unit 64 then outputs an establishment completion notification to the switching unit 63 indicating that it has established the TCP connection Tc2.
[0244] When the switching unit 63 receives a notification from the packet creation unit 64 that the connection has been established, it sends the DoIP packet received from the packet creation unit 64 to the in-vehicle relay device 101 using the TCP connection Tc2. Specifically, the switching unit 63 includes the port number of the logical port corresponding to the in-vehicle device 202 that is the destination of the DoIP packet in the DoIP packet, and sends it to the in-vehicle relay device 101 via the communication unit 41.
[0245] While the diagnostic tools in each embodiment of this disclosure are configured to establish a TCP connection in accordance with the TCP / IP standard with the in-vehicle relay device 101, they are not limited to this configuration. The diagnostic tools in each embodiment of this disclosure may be configured to establish a communication connection in accordance with a standard other than the TCP / IP standard.
[0246] Furthermore, while the diagnostic tools according to each embodiment of this disclosure are configured to transmit messages conforming to the DoIP standard to a plurality of in-vehicle devices 202 via the in-vehicle relay device 101, the disclosure is not limited to this configuration. The diagnostic tools according to each embodiment of this disclosure may also be configured to transmit messages conforming to standards other than the DoIP standard to a plurality of in-vehicle devices 202 via the in-vehicle relay device 101.
[0247] The embodiments described above should be considered in all respects to be illustrative and not restrictive. The scope of the present invention is indicated by the claims rather than the above description, and all modifications within the meaning and scope equivalent to the claims are intended to be included.
[0248] Each process (each function) of the above-described embodiment is implemented by a processing circuit including one or more processors. The processing circuit may consist of one or more memories, various analog circuits, various digital circuits, and other integrated circuits in addition to the one or more processors. The one or more memories store programs (instructions) that cause the one or more processors to execute each of the above processes. The one or more processors may execute each of the above processes according to the programs read from the one or more memories, or they may execute each of the above processes according to logic circuits that have been pre-designed to execute each of the above processes. The processors may be various processors suitable for computer control, such as a CPU (Central Processing Unit), GPU (Graphics Processing Unit), DSP (Digital Signal Processor), FPGA (Field Programmable Gate Array), and ASIC (Application Specific Integrated Circuit). Furthermore, the physically separated multiple processors may cooperate with each other to execute each of the above processes. For example, the processors installed in each of several physically separate computers may cooperate with each other via a network such as a LAN (Local Area Network), WAN (Wide Area Network), and the Internet to perform the above processes. The program may be installed in the memory via the network from an external server device, or it may be distributed on a recording medium such as a CD-ROM (Compact Disc Read Only Memory), DVD-ROM (Digital Versatile Disk Read Only Memory), and semiconductor memory, and then installed in the memory from the recording medium.
[0249] The above description includes the following features. [Note 1] Equipped with a processing circuit, The aforementioned processing circuit is It can communicate with the vehicle-mounted relay device, A vehicle maintenance device that provides a communication connection for sending messages to multiple in-vehicle devices via the in-vehicle relay device, and performs a switching process to switch between setting up one communication connection between the in-vehicle relay device and the communication unit, or setting up multiple communication connections.
[0250] [Note 2] Vehicle maintenance equipment and Equipped with an in-vehicle relay device, The vehicle maintenance device is capable of communicating with the on-board relay device. The vehicle maintenance device is a communication connection for sending messages to multiple in-vehicle devices via the in-vehicle relay device, and is a communication system that performs a switching process to switch between setting up one communication connection between the in-vehicle relay device and the communication unit, or setting up multiple communication connections. [Explanation of Symbols]
[0251] 1 vehicle 11, 11A, 11B, 11C, 11D, 11E communication ports 12 Relay section 13,42,42A,42B Processing Unit 14,43 Storage part 21 Authentication Processing Unit 22 Setting section 30, 30A, 30B buffer 41 Communications Department 61 Reception Department 62 Authentication Request Section 63 Switching section 64 Packet Creation Section 65 Measuring part 51 Ethernet cable 52 CAN bus 101 Vehicle-mounted relay device 202,202A,202B,202C,202D Vehicle equipment 250, 250A, 250B Diagnostic Tool 301, 302, 303 In-vehicle systems 401 In-vehicle network L Reference Value List R Message Information
Claims
1. A communication unit capable of communicating with an in-vehicle relay device, A vehicle maintenance device comprising a communication connection for transmitting messages to multiple in-vehicle devices via the in-vehicle relay device, and a switching unit that performs a switching process to switch between setting up one communication connection between the in-vehicle relay device and the communication unit, or setting up multiple communication connections.
2. The communication unit transmits the authentication information of the vehicle maintenance device to the in-vehicle relay device. The communication unit receives authentication success information from the in-vehicle relay device indicating that the authentication process using the authentication information in the in-vehicle relay device was successful. The vehicle maintenance device according to claim 1, wherein the switching unit sets up a plurality of communication connections when the communication unit receives the authentication success information.
3. The vehicle maintenance device according to claim 1, wherein the switching unit sets up multiple communication connections when the measurement result of the communication speed between the communication unit and any of the multiple on-board devices via the on-board relay device satisfies predetermined conditions.
4. The aforementioned vehicle maintenance device further includes, For each type of message, the system includes a storage unit that holds communication speed information indicating a reference value for the communication speed. The vehicle maintenance device according to claim 3, wherein the switching unit performs the switching process based on the difference between the reference value indicated by the communication speed information held in the storage unit and the measurement result.
5. The vehicle maintenance device according to claim 1, wherein the switching unit performs the switching process according to the type of message transmitted by the communication unit to the in-vehicle device via the in-vehicle relay device.
6. The aforementioned vehicle maintenance device further includes, The system includes a storage unit that holds message information indicating the type of message to be transmitted when multiple communication connections are established, The vehicle maintenance device according to claim 5, wherein the switching unit performs the switching process using the message information held in the storage unit.
7. The vehicle maintenance device according to claim 6, wherein the message information includes information indicating the in-vehicle device to which the message is addressed.
8. The vehicle maintenance device according to claim 6 or 7, wherein the message information includes information indicating the type of vehicle to which the message is transmitted.
9. The aforementioned communication connection is a communication connection that conforms to the TCP / IP standard. The vehicle maintenance device according to any one of claims 1 to 7, wherein the communication unit transmits the message conforming to the DoIP standard to the plurality of in-vehicle devices via the in-vehicle relay device.
10. A vehicle maintenance method for a vehicle maintenance device, The vehicle maintenance device includes a communication unit capable of communicating with an on-board relay device, The aforementioned vehicle maintenance method is A vehicle maintenance method comprising a step of performing a switching process to set up one communication connection between the vehicle relay device and the communication unit, or to set up multiple communication connections, for transmitting messages to a plurality of in-vehicle devices via the in-vehicle relay device.
11. A vehicle maintenance program used in a vehicle maintenance device, Computers, A communication unit capable of communicating with an in-vehicle relay device, A communication connection for sending messages to multiple in-vehicle devices via the in-vehicle relay device, comprising a switching unit that performs a switching process to set up one communication connection between the in-vehicle relay device and the communication unit, or to set up multiple communication connections. A vehicle maintenance program to enable it to function as such.