In-vehicle device, computer program product, and information processing method
By generating frame transformation rules, compatibility issues between vehicle ECUs are resolved, ensuring smooth communication during software updates, and achieving efficient transformation rule generation and communication support.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-08-28
- Publication Date
- 2026-03-10
AI Technical Summary
Existing technologies have failed to effectively resolve the rules for changing the definition information of frames between vehicle ECUs, leading to compatibility issues during software updates.
The transformation rules generated by the on-board device are based on the frame definition information of the sending ECU and the receiving ECU to ensure smooth communication.
It enables efficient generation of transformation rules under different vehicle ECU software versions, ensuring communication compatibility and supporting flexible responses to software updates.
Smart Images

Figure CN121644360A_ABST
Abstract
Description
Technical Field
[0001] This invention relates to vehicle-mounted devices, programs, and information processing methods.
[0002] This application claims priority based on Japanese Application No. 2024-152488, filed on September 4, 2024, and invokes all the contents of the aforementioned Japanese application. Background Technology
[0003] The vehicle is equipped with an ECU (Electronic Control Unit) for controlling onboard devices such as drive control systems (engine control, etc.) and body systems (air conditioning control, etc.). The ECU includes a processing unit such as an MPU, a rewritable non-volatile storage unit such as an EEPROM, and a communication unit for communicating with other ECUs. It controls the onboard devices by reading and executing control programs stored in the storage unit. Furthermore, the vehicle is equipped with a communication device with wireless communication capabilities, enabling communication with a program providing device connected to a network outside the vehicle. The program providing device downloads (receives) the ECU's control program and updates the ECU's control program (see, for example, Patent Document 1).
[0004] Existing technical documents
[0005] Patent documents
[0006] Patent Document 1: Japanese Patent Application Publication No. 2017-97851 Summary of the Invention
[0007] The problem that the invention aims to solve
[0008] However, the communication device (relay device) in Patent Document 1 does not take into account the following point: in the frames transmitted and received by the vehicle ECU when executing software, the frame transformation rules are generated based on the frame definition information in the sending ECU and the frame definition information in the receiving ECU.
[0009] The purpose of this disclosure is to provide an in-vehicle device, etc., that can generate frame transformation rules based on frame definition information in the sending ECU and the receiving ECU when the software is executed by the in-vehicle ECU.
[0010] Methods for solving problems
[0011] One aspect of this disclosure discloses an in-vehicle device that is communicatively connected to multiple in-vehicle ECUs mounted in a vehicle. The in-vehicle device includes a control unit that performs processing related to frames transmitted and received between the in-vehicle ECUs. The control unit acquires information related to software executed in each of the multiple in-vehicle ECUs, determines the frames transmitted and received during the execution of the software based on the acquired software-related information, determines a sending ECU to send the determined frames and a receiving ECU to receive the determined frames, acquires the frame definition information in the sending ECU, acquires the frame definition information in the receiving ECU, generates a frame transformation rule based on the frame definition information in the sending ECU and the frame definition information in the receiving ECU, transforms the frames from the sending ECU using the generated frame transformation rule, and outputs the transformed frames to the receiving ECU.
[0012] Invention Effects
[0013] According to one aspect of this disclosure, an in-vehicle device, etc., can provide a method for generating frame transformation rules based on frame definition information in the sending ECU and frame definition information in the receiving ECU when software is executed by an in-vehicle ECU. Attached Figure Description
[0014] Figure 1 This is a schematic diagram illustrating the structure of a vehicle-mounted system including the vehicle-mounted device of Embodiment 1.
[0015] Figure 2 This is a block diagram illustrating the physical structure of an onboard device.
[0016] Figure 3 This is a flowchart illustrating the main processing of the control unit of an onboard device.
[0017] Figure 4 This is a flowchart illustrating the processing (determining to update the ECU) of the control unit of an onboard device.
[0018] Figure 5 This is an explanatory diagram illustrating matters related to the software installed in the vehicle's ECU (ECU software version list).
[0019] Figure 6 This is a flowchart illustrating the processing of the control unit of the vehicle-mounted device (determining the differences in the definition versions of frames).
[0020] Figure 7 This is an illustrative diagram illustrating matters related to frames sent and received during software updates in the ECU (ECU communication definition information).
[0021] Figure 8This is an explanatory diagram illustrating matters related to the combination of vehicle ECUs that transmit and receive frames (Vehicle Communication Definition Overview).
[0022] Figure 9 This is an explanatory diagram illustrating matters related to frames sent and received when executing software in the other party's ECU (ECU communication definition information).
[0023] Figure 10 This is an explanatory diagram illustrating the differences and similarities between the various versions of the frame definition (frame transmission and reception comparison table).
[0024] Figure 11 This is a flowchart illustrating the processing (generation of transformation rules) of the control unit of the vehicle-mounted device.
[0025] Figure 12 This is an explanatory diagram illustrating matters related to frames that differ from the defined versions (frame version difference table).
[0026] Figure 13 This is an explanatory diagram illustrating matters related to the definition information of communication specification items that define frames (frame definition information).
[0027] Figure 14 This is a flowchart illustrating the processing (determining whether an identifier change can be performed) of the control unit of an on-board device.
[0028] Figure 15 This is an explanatory diagram illustrating whether the transformation of identifiers can be determined (transformation rule creation worksheet).
[0029] Figure 16 This is a flowchart illustrating the processing (determining whether cycle changes) of the control unit of an onboard device.
[0030] Figure 17 This is an explanatory diagram illustrating whether changes in cycles can be determined (a worksheet for creating change rules).
[0031] Figure 18 This is a flowchart illustrating the processing (determination of data length transformation) of the control unit of the vehicle-mounted device.
[0032] Figure 19 This is an explanatory diagram illustrating whether changes in data length can be determined (a worksheet for creating transformation rules).
[0033] Figure 20 This is a flowchart illustrating the processing (determination of signal transformation) of the control unit of an onboard device.
[0034] Figure 21 This is an explanatory diagram illustrating matters related to whether signal transformations can be determined (transformation rule creation worksheet).
[0035] Figure 22 This is an explanatory diagram illustrating the items (transformation rule table) related to the generated transformation rules.
[0036] Figure 23 This is a flowchart illustrating the processing (relay processing) of the control unit of an onboard device. Detailed Implementation
[0037] [Description of embodiments of this disclosure]
[0038] First, embodiments of this disclosure will be described. Additionally, at least some of the embodiments described below may be combined arbitrarily.
[0039] (1) An in-vehicle device of one aspect of the present disclosure is communicatively connected to a plurality of in-vehicle ECUs mounted in a vehicle, wherein the in-vehicle device includes a control unit that performs processing related to frames transmitted and received between the in-vehicle ECUs. The control unit obtains information related to software executed in each of the plurality of in-vehicle ECUs, determines the frames transmitted and received during the execution of the software based on the obtained information related to the software, determines a sending ECU that sends the determined frames and a receiving ECU that receives the determined frames, obtains the definition information of the frames in the sending ECU, obtains the definition information of the frames in the receiving ECU, generates a transformation rule for the frames based on the definition information of the frames in the sending ECU and the definition information of the frames in the receiving ECU, uses the generated frame transformation rule to transform the frames from the sending ECU, and outputs the transformed frames to the receiving ECU.
[0040] In this approach, the vehicle-mounted device can also communicate with multiple vehicle-mounted ECUs installed in the vehicle, functioning as a relay device for relaying frames (communication data) sent and received between these ECUs. Furthermore, the vehicle-mounted device can also communicate with external servers such as OTA (Over-The-Air) servers located outside the vehicle, functioning as a reprogramming host for updating the software installed on any one of the multiple vehicle-mounted ECUs installed in the vehicle by applying update programs (software) obtained from the external server. The control unit of the vehicle-mounted device obtains and aggregates information related to the software installed on each vehicle-mounted ECU from all vehicle-mounted ECUs installed in the vehicle at predetermined times, such as when the IG switch is turned on or off. When the software is executed by a vehicle-mounted ECU, the control unit of the vehicle-mounted device also determines one or more frames sent and received by that vehicle-mounted ECU. Within each determined frame, the control unit of the vehicle-mounted device identifies the vehicle-mounted ECU that sent or received the frame (sending ECU, receiving ECU). The control unit of the vehicle-mounted device can, for example, refer to a vehicle communication definition overview stored in the storage unit and determine the vehicle ECU that sends and receives frames based on the frame name that uniquely identifies the type of each frame. The control unit of the vehicle-mounted device obtains definition information defining the communication specification items of the frame from the vehicle-mounted ECU (sending ECU, receiving ECU) that sends or receives the frame. Based on the definition information obtained from the sending ECU and the receiving ECU, the control unit of the vehicle-mounted device generates frame transformation rules, thus enabling efficient generation of these transformation rules and automating the processing required for their generation. That is, the control unit of the vehicle-mounted device can perform processing related to the generation of transformation rules based on communication with the vehicle-mounted ECUs within the vehicle, and can set the processing or control to be completed within the vehicle. Furthermore, the control unit of the vehicle-mounted device can generate transformation rules promptly whenever the software of any vehicle-mounted ECU is updated (version upgrade), allowing for flexible responses to software updates. The control unit of the vehicle-mounted device uses these automatically generated transformation rules to transform the frames from the transmitting ECU and output them to the receiving ECU (relay). Therefore, even if compatibility is lost due to different versions of the software installed on these transmitting and receiving ECUs, communication between the transmitting and receiving ECUs can still be established.
[0041] (2) In one embodiment of the present disclosure, the information related to the software includes the version of the software, and the control unit determines, among a plurality of vehicle ECUs, an updating ECU that has been updated with the software based on the version of the software, and determines the frames that are transmitted and received when the software installed on the determined updating ECU is executed.
[0042] In this method, for example, when the IG switch is off, the control unit of the vehicle-mounted device obtains and aggregates software-related information such as the type (software part number) or version of the software installed in each vehicle-mounted ECU from all the vehicle-mounted ECUs installed in the vehicle. The control unit of the vehicle-mounted device may also store the software-related information aggregated from these vehicle-mounted ECUs in a table format (ECU software version list) in the storage unit of the vehicle-mounted device. Based on this, for example, when the IG switch is on, the control unit of the vehicle-mounted device communicates with the vehicle-mounted ECUs recorded (registered) in the ECU software version list, and obtains and aggregates software-related information from these vehicle-mounted ECUs respectively. In this way, by comparing the previously aggregated software-related information with the currently aggregated software-related information, the control unit of the vehicle-mounted device can determine which vehicle-mounted ECUs have had their software version updated. In other words, if an on-board ECU is replaced, or the software installed on the on-board ECU is rewritten or upgraded during the period between the last time the IG switch was turned off and the current time the IG switch is turned on, the on-board ECU whose software version has been updated (updated ECU) can be identified by extracting the difference between the information related to the software collected last time and the information related to the software collected this time. Based on this, the control unit of the on-board device determines the frames sent and received when executing the software installed on the identified updated ECU. Therefore, it can efficiently identify the frames affected by the software version upgrade and efficiently generate transformation rules corresponding only to that frame (the frame affected by the software version upgrade).
[0043] (3) In the vehicle device of one of the technical solutions of this disclosure, the information related to the software includes the version of the frame sent and received when the software is executed, and the control unit generates the frame transformation rule when the version of the frame in the sending ECU is different from the version of the frame in the receiving ECU.
[0044] In this method, the software-related information obtained from each vehicle ECU includes versions of more than one frame that are transmitted and received when the software is executed by that vehicle ECU. That is, by executing the software installed by the vehicle ECU, the vehicle ECU generates and transmits frames of any type (frame name) and receives frames of other types (frame names). At this time, these transmitted and received frames are defined by frame name, version (defined version), and transmit / receive flags (1: transmit, 0: receive), and can be assigned a transformation allowance when received. The control unit of the vehicle device determines that transformation processing of the frame is required when the frame versions of the vehicle ECUs (transmitting ECU and receiving ECU) transmitting and receiving frames with the same frame name are different, and generates frame transformation rules. The control unit of the vehicle device determines that transformation processing of the frame is not required when the frame versions of the vehicle ECUs (transmitting ECU and receiving ECU) transmitting and receiving frames with the same frame name are the same, and does not generate frame transformation rules. In the case of updating the software installed in the vehicle ECU, if there are multiple types (frame names) of frames that are the processing objects of the software, transformation rules are generated in each type (frame name), thus ensuring or improving the availability of transformation rules.
[0045] (4) In one embodiment of the vehicle device disclosed herein, the frame definition information includes multiple communication specification items, the control unit determines whether there are differences among the communication specification items included in the frame definition information of the transmitting ECU and the receiving ECU, and generates the transformation rule based on the differences in the communication specification items.
[0046] In this method, the frame definition information transmitted and received during software execution in the vehicle ECU includes multiple communication specification items. This frame definition information varies depending on the frame version. Therefore, it is assumed that only a portion of the communication specification items included in the definition information differ. The control unit of the vehicle device, when transmitting and receiving the same type of frame (frame with the same name) from either the transmitting ECU or the receiving ECU, determines whether there are differences in the communication specification items included in the frame definition information of the transmitting and receiving ECUs, especially if the version number of the frame (frame name) in the transmitting ECU differs from the version number of the frame (frame name) in the receiving ECU. Based on this, the control unit extracts the differing communication specification items and generates transformation rules for each of the extracted communication specification items. Therefore, the control unit can also generate transformation rules by explicitly including, or deeming, items that are not included in the transformation rules or do not require transformation in communication specification items that do not differ. In this way, only communication specification items that differ due to different frame versions are included in the transformation rules, thus enabling efficient generation of the transformation rules.
[0047] (5) In an in-vehicle device according to one aspect of the present disclosure, the communication specification item includes the identifier of the frame, and when the identifier of the frame in the frame of the transmitting ECU and the receiving ECU are different, the control unit generates the transformation rule in a manner that includes the intention to transform the identifier of the frame of the transmitting ECU into the identifier of the frame of the receiving ECU.
[0048] In this method, the frame definition information includes communication specification items such as the frame identifier, such as the CAN ID (message ID) from CAN (Controller Area Network) or CAN FD (Flexible Data Rate Controller Area Network). This frame identifier is not limited to the CAN ID (message ID) from CAN, etc.; for example, in the case of Ethernet (registered trademark), it could also be a TCP port number or a UDP port number. When the identifiers (CAN ID, etc.) of the same frame (frames with the same name) differ between the vehicle ECUs (transmitting ECU and receiving ECU), the control unit of the vehicle device generates a transformation rule that means transforming the frame identifier (CAN ID, etc.) of the transmitting ECU to the frame identifier (CAN ID, etc.) of the receiving ECU. By generating such a transformation rule, communication between the transmitting ECU and the receiving ECU can still be established even when the identifiers of frames (frames with the same name) transmitted and received differ between the transmitting ECU and the receiving ECU due to updated software.
[0049] (6) In a vehicle-mounted device of a technical solution of the present disclosure, the communication specification item includes the period of the frame. When the period of the frame of the transmitting ECU is shorter than the period of the frame of the receiving ECU, or when the receiving ECU allows a difference in period, the control unit generates the transformation rule in a manner that includes the intention to transform the period of the frame of the transmitting ECU into the period of the frame of the receiving ECU.
[0050] In this method, the communication specification items included in the frame definition information include the frame period (transmit / receive period). That is, the frame period is equivalent to the frame transmission period in the transmitting ECU and equivalent to the frame reception period in the receiving ECU. When the periods (transmit / receive periods) of the same type of frame (frame with the same frame name) differ between the vehicle ECUs (transmitting ECU and receiving ECU), the control unit of the vehicle device generates a transformation rule that includes the intention to transform the frame period (transmission period) of the transmitting ECU to the frame period (reception period) of the receiving ECU. At this time, the control unit of the vehicle device can also output (relay) the frame from the transmitting ECU to the receiving ECU with a period (reception period) that matches the period (transmission period) of the receiving ECU, even if the frame period (transmission period) of the transmitting ECU is shorter than the frame period (reception period) of the receiving ECU (change allowance: if there is no missing information). Thus, when the frame period (transmission period) of the sending ECU is shorter than the frame period (receive period) of the receiving ECU, the amount of information processed per unit time is greater for the sending ECU (transmitting side) than for the receiving ECU (receiving side). Therefore, even if the amount of information from the sending ECU (transmitting side) is reduced to the amount of information from the receiving ECU (receiving side), no information loss occurs in the amount of information obtained by the receiving ECU (receiving side) because updates (transmissions from the sending ECU) are performed more frequently than the information update cycle expected by the receiving ECU (receiving side). Alternatively, the control unit of the vehicle device can output (relay) frames from the sending ECU to the receiving ECU in a manner that matches the frame period (reception period) of the receiving ECU, even if the frame period (transmission period) of the sending ECU is not shorter than the frame period (receive period) of the receiving ECU—that is, even if the period is long—providing the receiving ECU allows (the degree of change is always permissible) the difference in periods. By generating transformation rules in this way, communication between the sending ECU and the receiving ECU can still be established even when the periods (transmission and reception periods) of frames (frames with the same frame name) sent and received during the execution of the software differ between the sending ECU and the receiving ECU due to the influence of updated software.
[0051] (7) In a vehicle-mounted device of a technical solution of the present disclosure, the communication specification item includes the data length of the frame. When the data length of the frame of the transmitting ECU is longer than the data length of the frame of the receiving ECU, or when the receiving ECU allows a difference in data length, the control unit generates the transformation rule in a manner that includes the intention to transform the data length of the frame of the transmitting ECU into the data length of the frame of the receiving ECU.
[0052] In this method, the communication specification items included in the frame definition information include the frame data length. When the data lengths of the same type of frame (frames with the same frame name) are different between the vehicle ECUs (transmitting ECU and receiving ECU), the control unit of the vehicle device generates a transformation rule that means transforming the data length of the frame from the transmitting ECU to the data length of the frame from the receiving ECU. At this time, the control unit of the vehicle device can also output (relay) the data length of the frame from the transmitting ECU to the receiving ECU in a way that matches the data length of the frame from the receiving ECU, even if the data length of the frame from the transmitting ECU is longer than the data length of the frame from the receiving ECU (change tolerance: if there is no missing information). Thus, when the data length of the frame from the transmitting ECU is longer than the data length of the frame from the receiving ECU, the amount of information processed per unit time is greater for the transmitting ECU (transmitting side) than for the receiving ECU (receiving side). Therefore, even when the amount of information from the transmitting ECU (transmitting side) is reduced to the amount of information from the receiving ECU (receiving side), since the data length is larger than what the receiving ECU (receiving side) expects, no information loss will occur in the amount of information obtained by the receiving ECU (receiving side). Alternatively, the control unit of the vehicle device can output (relay) frames from the transmitting ECU to the receiving ECU in a way that matches the data length of the receiving ECU, provided that the data length of the transmitting ECU is not greater than the data length of the receiving ECU. That is, even if the data length of the transmitting ECU is less than the data length of the receiving ECU, and the difference in data length allowed by the receiving ECU (change tolerance: always allowed), the data length of the frames from the transmitting ECU matches the data length of the receiving ECU. By generating transformation rules in this way, even if the data length of the frames (frames with the same frame name) sent and received during the execution of the updated software differs between the transmitting ECU and the receiving ECU, communication between the transmitting ECU and the receiving ECU can still be established.
[0053] (8) A vehicle-mounted device according to a technical solution of the present disclosure, wherein the communication specification item includes the resolution of the data contained in the frame, and the control unit generates the transformation rule in a manner that includes the intention to transform the resolution of the frame of the sending ECU to the resolution of the frame of the receiving ECU when the resolution of the frame of the sending ECU is finer than the resolution of the frame of the receiving ECU, or when the receiving ECU allows a difference in resolution.
[0054] In this method, the communication specification items included in the frame definition information include the resolution of the data (measured values) contained in the frame. This data is, for example, the value of a measurement or signal measured, detected, or output by various sensors connected to the transmitting ECU, and the resolution becomes a value corresponding to the characteristics or specifications of that sensor. This resolution is, for example, composed of physical units such as mm or cm and the resolution value represented by the corresponding physical unit; an offset value may also be considered. In this case, the value of the signal output from the sensor can also be calculated by subtracting the offset value from the value obtained by dividing the physical value by the resolution value, to obtain "signal value = (physical value / resolution) - offset value". When the resolution of the data stored in the payload of the same frame (frame with the same name) is different in each of the vehicle ECUs (transmitting ECU and receiving ECU), the control unit of the vehicle device includes the intention to transform the resolution of the transmitting ECU's frame to the resolution of the receiving ECU's frame, and generates a transformation rule. At this time, the control unit of the vehicle device can also output (relay) the frame resolution from the sending ECU to the receiving ECU in a way that matches the resolution of the receiving ECU, even if the resolution of the sending ECU's frame is finer than the resolution of the receiving ECU's frame (change tolerance: allowed if there is no information loss). In this way, when the resolution of the sending ECU's frame is finer than the resolution of the receiving ECU's frame, the amount of information processed per unit time is greater for the sending ECU (sending side) than for the receiving ECU (receiving side). Therefore, even if the amount of information from the sending ECU (sending side) is reduced to the amount of information from the receiving ECU (receiving side), since it is finer than the resolution expected by the receiving ECU (receiving side), no information loss will occur in the amount of information obtained by the receiving ECU (receiving side). Alternatively, the control unit of the vehicle device can also output (relay) the frame from the sending ECU to the receiving ECU in a way that matches the resolution of the receiving ECU, even if the resolution of the sending ECU is not finer than the resolution of the receiving ECU—that is, even if it is a coarse resolution—as long as the receiving ECU allows a difference in resolution (change tolerance: always allowed). By generating transformation rules in this way, communication between the sending ECU and the receiving ECU can still be established even when the resolution of frames (frames with the same frame name) sent and received during the execution of the software differs between the sending ECU and the receiving ECU due to the influence of updated software.
[0055] (9) In a vehicle-mounted device according to one aspect of the present disclosure, the control unit extracts communication specification items that differ between the transmitting ECU and the receiving ECU from the multiple communication specification items included in the definition information of the frame, determines whether a transformation can be performed on the differing communication specification items, and interrupts the process of generating the transformation rule if there are communication specification items that cannot be transformed.
[0056] In this method, the control unit of the vehicle-mounted device extracts the differences in the communication specification items of each frame from the various vehicle-mounted ECUs (transmitting ECU and receiving ECU) that transmit and receive the same type of frame (frame with the same frame name). Communication specification items include, for example, the identifier of the stored frame, period, data length, resolution, the start position (start bit number) and end position (end bit number) of the data (values of each signal). The control unit of the vehicle-mounted device determines whether a transformation can be performed on each of the extracted communication specification items. If the control unit determines that a transformation can be performed on all differing communication specification items, it generates transformation rules. If the control unit determines that a transformation cannot be performed on a particular communication specification item, it interrupts the process of generating transformation rules. In the case where the process is interrupted without generating transformation rules, the control unit of the vehicle-mounted device outputs an indication that the updated vehicle-mounted ECU (updated ECU) is invalid to an HMI (Human Machine Interface) device such as a display. At this time, the control unit of the vehicle-mounted device can also report, along with a notification indicating that the ECU update is invalid, matters related to version changes, such as restoring the software version of the updated ECU. Imagine that in vehicle-mounted ECUs (transmitting ECU and receiving ECU) that transmit and receive the same type of frame (frame with the same frame name), differences arise in more than one communication specification item due to different frame versions (defined versions). In this case, if even one of the differing communication specification items is determined to be unchangeable, the control unit of the vehicle-mounted device interrupts the processing of generating transformation rules and outputs a notification indicating that the ECU update is invalid. Therefore, if transformation rules are generated, it can be ensured that the generated transformation rules correspond to all differing communication specification items; and if transformation rules are not generated, it can efficiently report to the vehicle operator that the software-updated vehicle-mounted ECU (updated ECU) is invalid.
[0057] (10) A procedure of one aspect of this disclosure causes a computer to perform the following processing, wherein the computer is communicatively connected to a plurality of vehicle ECUs mounted in a vehicle and performs processing related to frames transmitted and received between the vehicle ECUs: obtaining information related to software executed in each of the plurality of vehicle ECUs; determining, based on the obtained information related to the software, the frames transmitted and received during the execution of the software; determining a sending ECU that sends the determined frames and a receiving ECU that receives the determined frames; obtaining definition information of the frames in the sending ECU; obtaining definition information of the frames in the receiving ECU; generating a transformation rule for the frames based on the definition information of the frames in the sending ECU and the definition information of the frames in the receiving ECU; transforming the frames from the sending ECU using the generated frame transformation rule; and outputting the transformed frames to the receiving ECU.
[0058] In this approach, a program can be provided that enables a computer to execute as an onboard device that efficiently determines the ECU when an additional program obtained from an external server is applied to any ECU mounted in a vehicle.
[0059] (11) One aspect of the information processing method of this disclosure causes a computer to perform the following processing, wherein the computer is communicatively connected to a plurality of vehicle ECUs mounted in a vehicle and performs processing related to frames transmitted and received between the vehicle ECUs: obtaining information related to software executed in each of the plurality of vehicle ECUs; determining, based on the obtained information related to the software, the frames transmitted and received during the execution of the software; determining a sending ECU that sends the determined frames and a receiving ECU that receives the determined frames; obtaining definition information of the frames in the sending ECU; obtaining definition information of the frames in the receiving ECU; generating a transformation rule for the frames based on the definition information of the frames in the sending ECU and the definition information of the frames in the receiving ECU; transforming the frames from the sending ECU using the generated transformation rule; and outputting the transformed frames to the receiving ECU.
[0060] In this approach, an information processing method is provided that, when an additional program obtained from an external server is applied to any ECU installed in a vehicle, enables the computer to execute as an on-board device that efficiently determines the ECU.
[0061] [Details of the embodiments of the present invention]
[0062] The present invention will be specifically described based on the accompanying drawings illustrating embodiments thereof. Hereinafter, the vehicle-mounted device 2 according to embodiments of the present disclosure will be described with reference to the accompanying drawings. It should be noted that the present invention is not limited to these illustrations, and as shown in the claims, it is intended to include all modifications within the meaning and scope equivalent to the claims.
[0063] (Implementation Method 1)
[0064] The embodiments will now be described with reference to the accompanying drawings. Figure 1 This is a schematic diagram illustrating the structure of a vehicle-mounted system including the vehicle-mounted device of Embodiment 1. Figure 2 This is a block diagram illustrating the physical structure of an in-vehicle device. The in-vehicle system S includes an external communication device 1 and an in-vehicle device 2 mounted on the vehicle C, which sends additional programs (OTA modules) obtained from an external server SV1 (program providing device, OTA server) connected via an external network N to the in-vehicle ECU3 (Electronic Control Unit) mounted on the vehicle C.
[0065] The external server SV1 is, for example, a computer such as a server connected to an external network N, such as the Internet or a public bus network. It has a storage unit consisting of RAM (Random Access Memory), ROM (Read Only Memory), or a hard disk, and functions as an external program provider. In the external server SV1, programs or data used to control the onboard ECU3, manufactured by the manufacturer of the onboard ECU3, are stored in the storage unit. This program or data is sent to the vehicle C as an add-on or update program to add or update the program or data of the onboard ECU3 installed in the vehicle C, thereby adding software functionality to the vehicle C. This type of external server SV1 (program provider) is also called an OTA (Over-The-Air) server.
[0066] The vehicle-mounted device 2 functions as a relay device for relaying communication data (CAN frames, etc.) exchanged between vehicle-mounted ECUs 3 connected to the vehicle-mounted network 4. The vehicle-mounted device 2 is connected to the external server SV1 via the external communication device 1 and the external network N in a communicable manner. The vehicle-mounted device 2 can also function as an OTA (Over-The-Air) controller for sending activation instructions, which are used to send additional programs obtained from the external server SV1 to the target vehicle-mounted ECU 3 and apply the sent additional programs to the vehicle-mounted ECU 3.
[0067] Vehicle C is equipped with multiple on-board ECUs 3 for controlling external communication devices 1, on-board devices 2, and various on-board devices. External communication devices 1 and on-board devices 2 are connected in a communicable manner, for example, via wiring harnesses such as serial cables. On-board devices 2 and on-board ECUs 3 are connected in a communicable manner through an on-board network 4 that corresponds to communication protocols such as CAN (Control Area Network) or Ethernet (registered trademark).
[0068] The external communication device 1 includes an external communication unit (not shown) and input / output (I / F) interfaces for communicating with the onboard device 2. The external communication unit is a communication device for wireless communication using mobile communication protocols such as LTE (registered trademark), 4G, 5G, and WiFi (registered trademark), and transmits and receives data with an external server SV1 via an antenna 11 connected to the external communication unit. Communication between the external communication device 1 and the external server SV1 is conducted, for example, via an external network N such as a public bus network or the Internet.
[0069] The input / output (I / F) of the external communication device 1 is a communication interface used for, for example, serial communication with the on-board device 2. The external communication device 1 and the on-board device 2 communicate with each other via a wiring harness such as a serial cable connected between the input / output I / F. In this embodiment, the external communication device 1 is treated as a separate device from the on-board device 2, and these devices are connected in a communicative manner via the input / output I / F, but this is not a limitation. The external communication device 1 may also be integrated into the on-board device 2 as a component of the on-board device 2. Alternatively, the external communication device 1 and the on-board device 2 may be connected via an on-board network 4 such as CAN.
[0070] The vehicle-mounted device 2 includes a control unit 20, a storage unit 23, an input / output (I / F) unit 21, and an in-vehicle communication unit 22. The vehicle-mounted device 2 can be, for example, a gateway (vehicle relay device) that relays communication between multiple systems such as the vehicle-mounted ECU 3 of the integrated control system, the vehicle-mounted ECU 3 of the safety system, and the vehicle-mounted ECU 3 of the body system. That is, the vehicle-mounted device 2 is connected to communication lines 41 that constitute these multiple buses (segments), and the multiple communication lines 41 (segments) aggregated by the vehicle-mounted device 2 form a vehicle network 4. The vehicle-mounted device 2 functions as a CAN gateway in CAN protocol relay and as a Layer 2 or Layer 3 switch in TCP / IP protocol relay. The vehicle-mounted device 2 can also function as a PLB (Power Lan Box) that, in addition to being a communication-related relay, distributes and relays power output from power supply devices such as secondary batteries and supplies power to vehicle-mounted devices such as actuators connected to the device. Alternatively, the on-board unit 2 can be configured as a functional part of the vehicle ECU that controls the entire vehicle C. Alternatively, the on-board unit 2 can also be an integrated ECU that is composed of a central control device such as a controller and performs overall control of the vehicle C.
[0071] The control unit 20 is composed of a CPU (Central Processing Unit) or MPU (Micro Processing Unit), etc., and performs various control and calculation processes by reading and executing the control program P (program product) and data pre-stored in the storage unit 23.
[0072] The storage unit 23 is composed of volatile memory elements such as RAM (Random Access Memory) or non-volatile memory elements such as ROM (Read Only Memory), EEPROM (Electrically Erasable Programmable Memory), or flash memory. The storage unit 23 stores data referenced during the processing of the control program P and vehicle information (described later). Furthermore, the storage unit 23 stores various data obtained by the control unit 20 from the external server SV1. In addition, the storage unit 23 stores various intermediate data and result data generated by the control unit 20 during various calculations and processing. These various intermediate data and result data include, for example, an ECU software version list, ECU communication definition information, a vehicle communication definition list, a frame transmission and reception comparison table, a frame version difference table, frame definition information, a transformation rule creation work table, and a transformation rule table. Details of these will be described later. The control program P (program product) stored in storage unit 23 can also store a control program P (program product) that can be read from a recording medium M that can be read from vehicle-mounted device 2. Alternatively, the control program P can be downloaded from an external computer (not shown) connected to a communication network (not shown) and stored in storage unit.
[0073] The input / output I / F 21 is the same as the input / output I / F of the external communication device 1, for example, it is a communication interface for serial communication. The vehicle-mounted device 2 is connected to the external communication device 1, a display device such as a display, or an IG switch for starting or stopping the vehicle C via the input / output I / F in a communicative manner.
[0074] The in-vehicle communication unit 22 uses an input / output interface that employs communication protocols such as CAN or Ethernet (registered trademark). The control unit 20 communicates with in-vehicle devices such as the in-vehicle ECU 3 or other relay devices connected to the in-vehicle network 4 via the in-vehicle communication unit 22. Multiple in-vehicle communication units 22 are provided (three in this embodiment), and each in-vehicle communication unit 22 is connected to a communication line 41 (segment, CAN bus) that constitutes the in-vehicle network 4.
[0075] Like the vehicle-mounted device 2, the vehicle-mounted ECU 3 includes a control unit (CPU), a storage unit, and an in-vehicle communication unit. The storage unit is composed of volatile memory elements such as RAM (Random Access Memory) or non-volatile memory elements such as ROM (Read-Only Memory), EEPROM (Electrically Erasable Programmable ROM), or flash memory, and stores the program or data of the vehicle-mounted ECU 3. This program or data is an object added from a program sent from a program providing device and relayed by the vehicle-mounted device 2. The in-vehicle communication unit of the vehicle-mounted ECU 3 is similar to that of the vehicle-mounted device 2, and is composed of, for example, a CAN transceiver or an Ethernet PHY unit, and communicates with the vehicle-mounted device 2 via this in-vehicle communication unit.
[0076] Figure 3 This is a flowchart illustrating the main processing of the control unit 20 of the vehicle-mounted device 2. For example, when the vehicle C changes from a stopped state (e.g., IG switch off) to a starting state (e.g., IG switch on), the control unit 20 of the vehicle-mounted device 2 performs the following processing. That is, the control unit 20 of the vehicle-mounted device 2 can also perform the following processing triggered by the starting of the vehicle C (IG switch on).
[0077] The control unit 20 of the vehicle-mounted device 2 acquires software-related information (S1). The control unit 20 of the vehicle-mounted device 2 communicates with the vehicle-mounted ECUs 3 connected to the vehicle network 4 via communication lines 41 such as the CAN bus, acquires the version information (ECU version information) of the software installed on these vehicle-mounted ECUs 3, and stores it in the storage unit 23. The software version information (ECU version information) sent from the vehicle-mounted ECUs 3 includes the version of the software installed on that vehicle-mounted ECU 3.
[0078] The control unit 20 of the vehicle-mounted device 2 determines the updated ECU (S2) whose software has been updated. The control unit 20 of the vehicle-mounted device 2 determines the updated ECU based on the ECU software version list stored in the storage unit 23 at the current time and the software version information (ECU version information) obtained and collected from all vehicle-mounted ECUs 3 connected to the vehicle network 4. Based on this, the control unit 20 of the vehicle-mounted device 2 updates the ECU software version list in response to the determined updated ECU.
[0079] Figure 4 This is a flowchart illustrating the processing (determining to update the ECU) of the control unit 20 of the vehicle-mounted device 2. When determining to update the ECU, the control unit 20 of the vehicle-mounted device 2 performs the following processing.
[0080] The control unit 20 of the vehicle-mounted device 2 performs the reading of the ECU software version list (S201). The control unit 20 of the vehicle-mounted device 2 reads the ECU software version list stored in the storage unit 23 at the current moment by referring to the storage unit 23. The ECU software version list at the current moment is generated or updated based on the software version information (ECU version information) obtained and collected from all vehicle-mounted ECUs 3 before this processing is performed, that is, when the IG switch was turned on or off last time.
[0081] The control unit 20 of the vehicle-mounted device 2 determines the updated ECU by matching information (S202). The control unit 20 of the vehicle-mounted device 2 matches or compares the read ECU software version list with the version information of the software collected this time (ECU version information), extracts the difference, and determines the vehicle-mounted ECU 3 with the difference as the updated ECU after the software version has been updated.
[0082] The control unit 20 of the vehicle-mounted device 2 updates the ECU software version list (S203). The control unit 20 of the vehicle-mounted device 2 updates the software version list stored in the storage unit 23 in response to the determined updated ECU.
[0083] Figure 5 This is an explanatory diagram illustrating matters related to the software installed on the vehicle's ECU3 (ECU software version list). The ECU software version list includes ECU ID, connection bus, software version, and update flag as management items.
[0084] The ECU ID management field stores a unique ID (identification number) representing the vehicle ECU3. The connection bus management field stores the number of the communication line 41, such as the CAN bus, connected to the vehicle ECU3. The software version management field stores the version number of the software installed on the vehicle ECU3. The update flag management field stores a flag indicating whether the vehicle ECU3 is an updated ECU (False: not an updated ECU, True: an updated ECU). In this embodiment, it indicates that the software of the vehicle ECU3 with ECU ID 006 has been upgraded from version 1.0 to 2.0, thus identifying it as an updated ECU.
[0085] The control unit 20 of the vehicle-mounted device 2 determines the difference in the definition versions of frames transmitted and received by the updated software (S3). The control unit 20 of the vehicle-mounted device 2 determines one or more frames transmitted and received by the updated software, and among the vehicle-mounted ECU 3 (transmitting ECU) that sends the frame and the vehicle-mounted ECU 3 (receiving ECU) that receives the frame, determines the difference in the frame definition versions (detecting a mismatch in the communication definition versions). If the updated ECU is a transmitting ECU, the receiving ECU is equivalent to the other ECU. If the updated ECU is a receiving ECU, the transmitting ECU is equivalent to the other ECU.
[0086] Figure 6 This is a flowchart illustrating the processing (determining differences in frame definition versions) of the control unit 20 of the vehicle-mounted device 2. When determining differences in frame definition versions, the control unit 20 of the vehicle-mounted device 2 performs the following processing.
[0087] The control unit 20 of the vehicle-mounted device 2 obtains the ECU communication definition information of the updated ECU (S301). The control unit 20 of the vehicle-mounted device 2 obtains the ECU communication definition information from the updated ECU by querying the updated ECU and stores it in the storage unit 23.
[0088] Figure 7 This is an illustration of matters related to frames sent and received during software updates in an ECU (ECU communication definition information). ECU communication definition information includes frame name, definition Ver (version), send / receive (send / receive flags), and change permissions as management items.
[0089] The frame name management field stores the name or type of a frame that is uniquely transmitted or received between vehicle ECUs 3 via vehicle network 4. The frame definition version number is stored in the definition version management field. If this definition version changes, there may be changes to data length, transmission cycle, signal definitions, etc. This version number (definition version number) may also be stored within the frame. The transmit / receive flag (transmit / receive flag) stores a transmit / receive flag indicating whether the frame is being transmitted or received (1: transmit, 0: receive).
[0090] The transformation permission management item stores the transformation permission level when receiving a frame (0: not allowed, 1: allowed if no information is missing, 2: always allowed). The transformation permission level is determined based on whether the receiving ECU will not cause control obstacles even if the information relayed by the transmitting ECU transforms the transmitted frame. In receiving ECUs that may cause problems with small differences in precision such as safety-related functions, a strict value (0: not allowed) can also be set. When the transformation permission is not allowed (0), the transformation of the frame is not allowed at all. When the transformation permission is always allowed (2), the transformation of the frame is always allowed.
[0091] If the transformation tolerance is set to (1) if there is no information loss, then the transformation of the frame is allowed if there is no information loss. That is, if the amount of information processed per unit time is greater than the amount of information processed by the transmitting ECU (transmitting side), even if the vehicle-mounted device 2 reduces the amount of information processed by the transmitting ECU (transmitting side) to the amount of information processed by the receiving ECU (receiving side), no information loss will occur for the receiving ECU (receiving side). In order to increase the amount of information processed per unit time, it is effective to shorten the transmission cycle, extend the data length of the payload in a single frame, or refine the resolution of the data (measurements of sensors, etc.) contained in the payload.
[0092] The control unit 20 of the vehicle-mounted device 2 determines the counterpart ECU based on the vehicle communication definition list (S302). The vehicle communication definition list stores information related to the vehicle-mounted ECU 3 (sending ECU, receiving ECU) that sends and receives the frame in each frame, and is pre-stored in the storage unit 23 of the vehicle-mounted device 2. The control unit 20 of the vehicle-mounted device 2 determines the counterpart ECU (ECU ID 001) that is the communication counterpart of the updating ECU (ECU ID 006) in each frame (frame name) by referring to the vehicle communication definition list.
[0093] Figure 8 This is an explanatory diagram illustrating the combinations related to the vehicle ECU3 that transmits and receives frames (Vehicle Communication Definition Overview). The Vehicle Communication Definition Overview includes frame name, transmitting bus ID, transmitting ECU ID, receiving bus ID, and receiving ECU ID as management items. There can be multiple combinations consisting of the receiving bus ID and the receiving ECU ID.
[0094] The frame name management field stores a unique name that identifies the frame. The transmit bus ID management field stores the number of the communication line 41 (CAN bus, etc.) connected to the transmitting ECU that transmits the frame. The transmit ECU ID management field stores the ECU ID of the transmitting ECU that transmits the frame. The receive bus ID management field stores the number of the communication line 41 (CAN bus, etc.) connected to the receiving ECU that receives the frame. The receive ECU ID management field stores the ECU ID of the receiving ECU that receives the frame.
[0095] The control unit 20 of the vehicle-mounted device 2 obtains the ECU communication definition information of the other party's ECU (S303). The control unit 20 of the vehicle-mounted device 2 obtains the ECU communication definition information from the other party's ECU by querying it, and stores it in the storage unit 23.
[0096] Figure 9This is an explanatory diagram illustrating matters related to frames sent and received during the execution of software in the other party's ECU (ECU communication definition information). The management items for ECU communication definition information are common or standardized across all vehicle ECUs 3, and the management items for the other party's ECU communication definition information are the same as those for the updating ECU.
[0097] The control unit 20 of the vehicle-mounted device 2 generates a frame transceiver lookup table (S304). The control unit 20 of the vehicle-mounted device 2 combines the three pieces of information obtained so far, namely the ECU communication definition information of the updated ECU, the vehicle communication definition overview table, and the ECU communication definition information of the other party ECU, to create a frame transceiver lookup table.
[0098] Figure 10 This is an explanatory diagram illustrating the differences and similarities between the defined versions of a frame (frame transceiver table). The frame transceiver table includes the frame name, the bus ID and Ver on the transmitting side, the bus ID and Ver on the receiving side, the transformation allowance, and the Ver difference as management items.
[0099] The frame name management field stores a unique name that identifies the frame. The bus ID management field on the transmitting side stores the number of the communication line 41, such as the CAN bus, connected to the transmitting ECU. The Ver management field on the transmitting side stores the definition version number of the frame for the transmitting ECU. The bus ID management field on the receiving side stores the number of the communication line 41, such as the CAN bus, connected to the receiving ECU. The Ver management field on the receiving side stores the definition version number of the frame for the receiving ECU. The transformation tolerance management field stores the transformation tolerance level indicating the frame received. The Ver difference management field stores a flag indicating the determination result (difference: present / absent) of whether there is a difference between the transmitting-side Ver and the receiving-side Ver, as determined by the control unit 20 of the vehicle-mounted device 2.
[0100] The control unit 20 of the vehicle-mounted device 2 determines the differences in the definition versions of frames in the frame transceiver lookup table (S305). For each frame in the frame transceiver lookup table, the control unit 20 compares the transmitting side Ver and the receiving side Ver. If a difference exists, it sets a "Ver difference exists" flag for each frame. Based on the frame transceiver lookup table with these flags set, the control unit 20 of the vehicle-mounted device 2 determines the frames with definition version differences in each frame.
[0101] The control unit 20 of the vehicle-mounted device 2 generates transformation rules for frames that differ from the defined versions (S4). Figure 11 This is a flowchart illustrating the processing (generation of transformation rules) of the control unit 20 of the vehicle-mounted device 2. The control unit 20 of the vehicle-mounted device 2 performs the following processing when generating transformation rules.
[0102] The control unit 20 of the vehicle-mounted device 2 generates a frame version difference table (S401). The control unit 20 of the vehicle-mounted device 2 extracts only the rows with the Ver difference flag "Yes" from the frame transmission and reception comparison table and creates the frame version difference table.
[0103] Figure 12 This is an explanatory diagram illustrating matters related to frames that differ from the defined version (frame version difference table). The frame version difference table includes the frame name, the bus ID and Ver on the transmitting side, the bus ID and Ver on the receiving side, and the transformation permission as management items.
[0104] The frame name management field stores a unique name that identifies the frame. The bus ID management field on the transmitting side stores the number of communication line 41, such as the CAN bus, connected to the transmitting ECU. The Ver management field on the transmitting side stores the definition version number of the frame for the transmitting ECU. The bus ID management field on the receiving side stores the number of communication line 41, such as the CAN bus, connected to the receiving ECU. The Ver management field on the receiving side stores the definition version number of the frame for the receiving ECU. The transformation permission management field stores the transformation permission level indicating when receiving a frame.
[0105] The control unit 20 of the vehicle-mounted device 2 obtains the transformation allowance from the frame version difference table (S402). The control unit 20 of the vehicle-mounted device 2 checks or extracts the value (level) of the transformation allowance for each row of the frame version difference table on the transmitting side and the receiving side.
[0106] The control unit 20 of the vehicle-mounted device 2 determines whether there is a frame in any frame whose transformation permission is not allowed (S403). The control unit 20 of the vehicle-mounted device 2 determines whether there is at least one frame with a transformation permission of not allowed "transformation permission == 0 (not allowed)" in one or more frame names listed in the frame version difference table.
[0107] If a frame has a transformation permission level of "not allowed" (S403: Yes), the control unit 20 of the vehicle-mounted device 2 interrupts the transformation rule generation process (S4031). Even if there is only one frame with a transformation permission level of "not allowed" among the more than one frame names listed in the frame version difference table, the control unit 20 of the vehicle-mounted device 2 also interrupts the transformation rule generation process. That is, the control unit 20 of the vehicle-mounted device 2 determines that it is a non-transformable relay, displays a message indicating that updating the ECU is invalid, and outputs information such as urging version change to the user (the operator of vehicle C).
[0108] If no frame has a transformation permission set to "not allowed" (S403: No), the control unit 20 of the vehicle-mounted device 2 obtains frame definition information (S404). When none of the frames with a transformation permission set to "not allowed" are listed in the frame version difference table, the control unit 20 of the vehicle-mounted device 2 extracts frame definition information corresponding to each of the frame names listed in the frame version difference table. The frame definition information is pre-stored in the storage unit 23 of the vehicle-mounted device 2. Alternatively, the control unit 20 of the vehicle-mounted device 2 may obtain the latest frame definition information from the updating ECU.
[0109] Figure 13 This is an explanatory diagram illustrating matters related to the definition information (frame definition information) of communication specification items that define a frame. In this embodiment, the communication specification items (frame definition information) in a frame named SonarSense are illustrated. The management items in the frame definition information include a version as a horizontal item (frame definition version) and a vertical item containing multiple communication specification items, constructed from a matrix based on the horizontal and vertical items. The value of the frame definition version (1.0, 2.0, 3.0, etc.) is stored in the management item as the version of the horizontal item (frame definition version). For these frame definition versions, the values or contents of multiple communication specification items as vertical items are stored respectively.
[0110] As multiple communication specification items within a vertical project, related to transmitting the ECU ID, CAN-ID, transmission cycle, data length, and resolution, include Signal 1: Start Position, Signal 1: End Position, Signal 1: Physical Unit, and Signal 1: Resolution. These resolution-related items may also include other signals (Signal 2, Signal 3, etc.). Furthermore, communication specification items may also include offset values.
[0111] The ECU ID management field stores the ID of the on-board ECU3 (transmitting ECU) that sent the frame. The CAN-ID management field stores the message ID when the frame is a CAN message. The transmission cycle management field stores the transmission cycle when the frame is sent. The data length management field stores the data length of the payload contained in the frame.
[0112] Signal 1: Start position stores the start bit number when signal 1 is stored. Signal 1: End position stores the end bit number when signal 1 is stored. Signal 1: Physical units stores the physical unit (cm, mm, etc.) of the signal value. Signal 1: Resolution stores the resolution of the signal value.
[0113] The control unit 20 of the vehicle-mounted device 2 generates a transformation rule creation worksheet (S405). Based on frame definition information, the control unit 20 of the vehicle-mounted device 2 generates transformation rules for each communication specification item in the frame definition versions of the updated ECU and the peer ECU, and combines the generated transformation rules to generate the transformation rule creation worksheet. In this embodiment, as an example of a communication specification item, the processing related to the generation of transformation rules for identifiers (CAN-ID), period, data length, and signal (resolution) will be described.
[0114] Figure 14 This is a flowchart illustrating the processing (determination of whether an identifier transformation is possible) of the control unit 20 of the vehicle-mounted device 2. When generating identifier transformation rules, the control unit 20 of the vehicle-mounted device 2 performs the following processing.
[0115] The control unit 20 of the vehicle-mounted device 2 obtains the frame identifiers (A101) from the transmitting ECU and the receiving ECU. The control unit 20 of the vehicle-mounted device 2 extracts the CAN-ID (frame identifier) of the transmitting side and the receiving side from the transformation rule generation work table.
[0116] Figure 15 This is an explanatory diagram illustrating matters related to the determination of whether an identifier can be transformed (transformation rule creation worksheet). The control unit 20 of the vehicle-mounted device 2 uses the ECU communication definition information of the updated ECU, the ECU communication definition information of the other party ECU, frame definition information, and a vehicle communication definition overview table to generate a transformation rule creation worksheet. The management items of the transformation rule creation worksheet include, as horizontal items, the sending side, the receiving side, and the determination of whether a transformation can be transformed; as vertical items, the bus ID, version, sending ECU ID, CAN-ID, transmission cycle, data length, signal 1: start position, signal 1: end position, signal 1: physical unit, signal 1: resolution, and signal 1: offset value, which are arranged in a matrix.
[0117] In the bus ID management section, for both the transmitting and receiving sides, the system stores the numbers of communication lines 41, such as the CAN bus connected to the transmitting ECU and the CAN bus connected to the receiving ECU. In the version management section, for both the transmitting and receiving sides, the system stores the definition versions of the frames from the transmitting ECU and the receiving ECU. In the transmitting ECU ID management section, for both the transmitting and receiving sides, the system stores the IDs of the transmitting and receiving ECUs. In the CAN-ID management section, for both the transmitting and receiving sides, the system stores the identifiers (message IDs) of the frames transmitted by the transmitting ECU and the identifiers (message IDs) of the frames received by the receiving ECU. In the transmission cycle management section, for both the transmitting and receiving sides, the system stores the transmission cycle of the transmitting ECU and the reception cycle of the receiving ECU. In the data length management section, for both the transmitting and receiving sides, the system stores the data length of the frames from the transmitting ECU and the receiving ECU.
[0118] In the Signal 1: Start Position management section, for both the transmitting and receiving sides, the start bit number of the frame from the transmitting ECU and the start bit number of the frame from the receiving ECU are stored. In the Signal 1: End Position management section, for both the transmitting and receiving sides, the end bit number of the frame from the transmitting ECU and the end bit number of the frame from the receiving ECU are stored. In the Signal 1: Physical Unit management section, for both the transmitting and receiving sides, the physical unit of the signal stored in the frame from the transmitting ECU and the physical unit of the signal stored in the frame from the receiving ECU are stored. In the Signal 1: Resolution management section, for both the transmitting and receiving sides, the resolution of the signal stored in the frame from the transmitting ECU and the resolution of the signal stored in the frame from the receiving ECU are stored. In the Signal 1: Offset Value management section, for both the transmitting and receiving sides, the offset value stored in the frame from the transmitting ECU and the offset value stored in the frame from the receiving ECU are stored.
[0119] The control unit 20 of the vehicle-mounted device 2 determines whether the identifiers of the transmitting ECU and the receiving ECU are different (A102). The control unit 20 of the vehicle-mounted device 2 determines whether the identifiers of the transmitting ECU and the receiving ECU are different (transmitting side CAN-ID ≠ receiving side CAN-ID).
[0120] In cases where the identifiers are different (A102: Yes), the control unit 20 of the vehicle-mounted device 2 can change the identifier item settings in the transformation rule creation work table (A103). When the identifiers are different, the control unit 20 of the vehicle-mounted device 2 can change the identifier item settings in the transformation rule creation work table (transformation OK). The reason why the control unit 20 of the vehicle-mounted device 2 can unconditionally set the transformation (transformation OK) is that no information loss occurs during CAN-ID transformation, and the situation where the transformation permission for both the transmitting and receiving parties is not allowed has been eliminated.
[0121] Under the same circumstances (A102: No), the control unit 20 of the vehicle-mounted device 2 does not need to change the item settings of the identifier in the transformation rule creation work table (A1021). When the identifiers are the same, the control unit 20 of the vehicle-mounted device 2 does not need to change the item settings of the identifier in the transformation rule creation work table.
[0122] Figure 16 This is a flowchart illustrating the processing (determination of whether a cycle change is possible) of the control unit 20 of the vehicle-mounted device 2. When generating a cycle change rule, the control unit 20 of the vehicle-mounted device 2 performs the following processing.
[0123] The control unit 20 of the vehicle-mounted device 2 obtains the frame period (B101) from the transmitting ECU and the receiving ECU. The control unit 20 of the vehicle-mounted device 2 extracts the respective transmission period (transmitting ECU and receiving ECU) of the transmitting side and the receiving side (receiving ECU) from the transformation rule generation work table.
[0124] The control unit 20 of the vehicle-mounted device 2 determines whether the cycles of the transmitting ECU and the receiving ECU are the same (B102). The control unit 20 of the vehicle-mounted device 2 determines whether the cycles of the transmitting ECU and the receiving ECU are the same (transmitting side: transmitting cycle == receiving side: receiving cycle (the receiving side's assumed transmitting cycle relative to the transmitting side)).
[0125] Under the same conditions (B102: Yes), the control unit 20 of the vehicle-mounted device 2 does not need to change the period item settings in the transformation rule creation work table (B103). When the transmission and reception periods on the transmitting side (transmitting ECU) and the receiving side (receiving ECU) are the same, the control unit 20 of the vehicle-mounted device 2 does not need to change the period item settings in the transformation rule creation work table.
[0126] In cases where the periods are different (B102: No), the control unit 20 of the vehicle-mounted device 2 determines whether the period of the receiving ECU is greater than the period of the transmitting ECU (B104). If the transmit and receive periods on the transmitting side (transmitting ECU) and the receiving side (receiving ECU) are different, the control unit 20 of the vehicle-mounted device 2 determines whether the period of the receiving ECU is greater than the period of the transmitting ECU (receiving side: receiving period > transmitting side: transmitting period).
[0127] In the case of a large interval (B104: Yes), the control unit 20 of the vehicle-mounted device 2 can change the period item settings in the transformation rule creation work table (B105). When the receiving ECU's period is longer than the sending ECU's period, the control unit 20 of the vehicle-mounted device 2 can change the period item settings in the transformation rule creation work table. Because the information is updated more frequently than the expected update cycle on the receiving side, there is no information loss, so the control unit 20 of the vehicle-mounted device 2 can be set to be changeable.
[0128] In cases where the change is not significant (B104: No), the control unit 20 of the vehicle-mounted device 2 determines whether the change permission is always permissible (B1041). If the receiving ECU's cycle is not greater than the sending ECU's cycle, i.e., if the receiving ECU's cycle is less than the sending ECU's cycle, the control unit 20 of the vehicle-mounted device 2 determines whether the change permission is always permissible. Because the update cycle is longer than the expected information update cycle on the receiving side, information loss occurs, therefore the control unit 20 of the vehicle-mounted device 2 determines whether the change permission is always permissible.
[0129] If the setting is always allowed (B1041: Yes), the control unit 20 of the vehicle-mounted device 2 can change the periodic item settings in the change rule creation work table (B1042). If the change permission is always allowed, the periodic item settings in the change rule creation work table can be changed. The control unit 20 of the vehicle-mounted device 2 can also return to the main routine (S4) after processing B103, B105, or B1042.
[0130] Figure 17 This is an explanatory diagram illustrating matters related to whether a change in the transmission cycle can be determined (change rule creation worksheet). The control unit 20 of the vehicle-mounted device 2 sets the cycle by storing "change OK" in the management item for determining whether a change in the transmission cycle can be determined in the change rule creation worksheet.
[0131] If the change permission is not always allowed (B1041: No), the control unit 20 of the vehicle-mounted device 2 sets the period item in the change rule creation work table to be unchangeable (B1043). The control unit 20 of the vehicle-mounted device 2 interrupts the change rule generation process (B1044). If the change permission is not always allowed, the control unit 20 of the vehicle-mounted device 2 sets the change permission to be unchangeable in the management item for determining whether the change of the sending period is allowed in the change rule creation work table. Based on this, the control unit 20 of the vehicle-mounted device 2 interrupts the change rule generation process. That is, the control unit 20 of the vehicle-mounted device 2 determines that the change is unchangeable, displays a message indicating that the ECU update is invalid, and outputs information such as urging version change to the user (the operator of vehicle C).
[0132] Figure 18 This is a flowchart illustrating the processing (determination of whether data length transformation is possible) of the control unit 20 of the vehicle-mounted device 2. When generating data length transformation rules, the control unit 20 of the vehicle-mounted device 2 performs the following processing.
[0133] The control unit 20 of the vehicle-mounted device 2 obtains the data length (C101) of the frames in the transmitting ECU and the receiving ECU. The control unit 20 of the vehicle-mounted device 2 extracts the data length of the transmitting side (transmitting ECU) and the receiving side (receiving ECU) from the transformation rule generation work table.
[0134] The control unit 20 of the vehicle-mounted device 2 determines whether the data lengths of the transmitting ECU and the receiving ECU are the same (C102). The control unit 20 of the vehicle-mounted device 2 determines whether the data lengths of the transmitting ECU and the receiving ECU are the same (transmitting side: data length == receiving side: data length).
[0135] Under the same conditions (C102: Yes), the control unit 20 of the vehicle-mounted device 2 does not need to change the data length item settings in the transformation rule creation work table (C103). When the data length is the same on the sending side (sending ECU) and the receiving side (receiving ECU), the control unit 20 of the vehicle-mounted device 2 does not need to change the data length item settings in the transformation rule creation work table.
[0136] Figure 19 This is an explanatory diagram illustrating matters related to whether a data length transformation can be determined (transformation rule creation worksheet). As an example, the control unit 20 of the vehicle-mounted device 2 sets itself to not require transformation by storing the management item for determining whether a data length transformation can be determined in the transformation rule creation worksheet.
[0137] In cases where the data lengths are different (C102: No), the control unit 20 of the vehicle-mounted device 2 determines whether the data length of the receiving ECU is smaller than the data length of the sending ECU (C104). If the data lengths on the sending side (sending ECU) and the receiving side (receiving ECU) are different, the control unit 20 of the vehicle-mounted device 2 determines whether the data length of the receiving ECU is smaller than the data length of the sending ECU (receiving side data length < sending side data length).
[0138] In the case of a small data length (C104: Yes), the control unit 20 of the vehicle-mounted device 2 can change the data length setting in the transformation rule creation work table (C105). When the data length of the receiving ECU is smaller than the data length of the sending ECU, the control unit 20 of the vehicle-mounted device 2 can change the data length setting in the transformation rule creation work table. Since the data length is larger than the expected data length on the receiving side, there is no information loss, so the control unit 20 of the vehicle-mounted device 2 can set it to be changeable.
[0139] In cases where the data length is not less than the data length of the transmitting ECU (C104: No), the control unit 20 of the vehicle-mounted device 2 determines whether the change permission is always permissible (C1041). If the data length of the receiving ECU is not less than the data length of the transmitting ECU, that is, if the data length of the receiving ECU is greater than the data length of the transmitting ECU, the control unit 20 of the vehicle-mounted device 2 determines whether the change permission is always permissible. Since the data length is smaller than the expected data length on the receiving side, there is a lack of information, therefore the control unit 20 of the vehicle-mounted device 2 determines whether the change permission is always permissible.
[0140] If it is always permissible (C1041: Yes), the control unit 20 of the vehicle-mounted device 2 can change the item settings for the data length in the transformation rule creation work table (C1042). If the change permission is always permissible, the item settings for the data length in the transformation rule creation work table can be changed. The control unit 20 of the vehicle-mounted device 2 can also return to the main routine (S4) after processing C103, C105, or C1042.
[0141] If the change permission is not always allowed (C1041: No), the control unit 20 of the vehicle-mounted device 2 sets the data length item in the change rule creation work table to be non-changeable (C1043). The control unit 20 of the vehicle-mounted device 2 interrupts the change rule generation process (C1044). If the change permission is not always allowed, the control unit 20 of the vehicle-mounted device 2 sets the data length change permission management item in the change rule creation work table to be non-changeable by storing it as non-changeable. Based on this, the control unit 20 of the vehicle-mounted device 2 interrupts the change rule generation process. That is, the control unit 20 of the vehicle-mounted device 2 determines that the change is non-changeable, displays a message indicating that updating the ECU is invalid, and outputs information such as urging version change to the user (the operator of vehicle C).
[0142] Figure 20 This is a flowchart illustrating the processing (determination of signal transformation) of the control unit 20 of the vehicle-mounted device 2. When generating a signal (resolution) transformation rule, the control unit 20 of the vehicle-mounted device 2 performs the following processing. When multiple signals exist (signal 1, signal 2, ...), the control unit 20 of the vehicle-mounted device 2, after processing signal 1, repeatedly executes the process for subsequent signals (signal 2, ...).
[0143] The control unit 20 of the vehicle-mounted device 2 obtains the resolution of frames from the transmitting ECU and the receiving ECU (D101). The control unit 20 generates a worksheet according to the transformation rules, retrieving the resolution of the transmitting side (transmitting ECU) and the receiving side (receiving ECU), i.e., the signal definition information related to the signal (Signal 1: start position, Signal 1: end position, Signal 1: physical unit, Signal 1: resolution, Signal 1: offset value). At this time, the offset value can also be defined using the formula "Signal value = (physical value / resolution) - offset value". Regarding physical units, conversions between unit systems such as Celsius and Fahrenheit, metric and imperial units can be included.
[0144] The control unit 20 of the vehicle-mounted device 2 performs a process (D102) to ensure consistency in the units of resolution. The control unit 20 of the vehicle-mounted device 2 performs a process to ensure consistency in the units defined by the signal so that resolutions can be compared. This process includes, for example, calculating the physical resolution of the signal and calculating the physical maximum and minimum values of the signal.
[0145] The control unit 20 of the vehicle-mounted device 2 determines whether the resolution, etc., of the transmitting ECU and the receiving ECU are the same (D103). The control unit 20 of the vehicle-mounted device 2 determines whether the resolution, etc., of the transmitting ECU and the receiving ECU are the same (transmitting side: resolution, etc. = receiving side: resolution, etc.).
[0146] Under the same conditions (D103: Yes), the control unit 20 of the vehicle-mounted device 2 does not need to change the settings of items such as resolution in the transformation rule creation work table (D104). When the resolution and other parameters are the same on the transmitting side (transmitting ECU) and the receiving side (receiving ECU), the control unit 20 of the vehicle-mounted device 2 does not need to change the settings of items such as resolution (signal definition information) in the transformation rule creation work table.
[0147] In cases where the resolutions are different (D103: No), the control unit 20 of the vehicle-mounted device 2 determines whether the resolution of the receiving ECU is coarser than that of the transmitting ECU (D105). When the resolutions on the transmitting side (transmitting ECU) and the receiving side (receiving ECU) are different, the control unit 20 of the vehicle-mounted device 2 determines whether the resolution of the receiving ECU is coarser than that of the transmitting ECU. In this case, the control unit 20 of the vehicle-mounted device 2 may also simultaneously determine whether the resolution of the receiving ECU is greater than or equal to the resolution of the transmitting ECU, whether the maximum value of the receiving ECU is less than or equal to the maximum value of the transmitting ECU, and whether the minimum value of the receiving ECU is greater than or equal to the minimum value of the transmitting ECU (receiving side resolution ≥ transmitting side resolution) & (receiving side maximum value ≤ transmitting side maximum value) & (receiving side minimum value ≥ transmitting side minimum value).
[0148] Figure 21 This is an explanatory diagram illustrating matters related to the determination of whether a signal transformation can be performed (transformation rule creation worksheet). In the values illustrated in this embodiment, under this condition, "transmitter side resolution: 5mm < receiver side resolution: 10mm", "transmitter side minimum value: 0mm == receiver side minimum value: 0mm", and "transmitter side maximum value: 327,675 (65,535*5) > receiver side maximum value: 2,550mm".
[0149] In the case of coarse resolution (D105: Yes), the control unit 20 of the vehicle-mounted device 2 can change the resolution setting in the transformation rule creation work table (D106). When the resolution of the receiving ECU is equal to or greater than the resolution of the transmitting ECU, the control unit 20 of the vehicle-mounted device 2 can change the resolution setting in the transformation rule creation work table. At this time, the control unit 20 of the vehicle-mounted device 2 can also change the resolution setting in the transformation rule creation work table when the resolution of the receiving ECU is greater than or equal to the resolution of the transmitting ECU, the maximum value of the receiving ECU is less than or equal to the maximum value of the transmitting ECU, and the minimum value of the receiving ECU is greater than or equal to the minimum value of the transmitting ECU. Since the transmitting side resolution is finer than the expected receiving side resolution, there is no information loss, so the control unit 20 of the vehicle-mounted device 2 can set it to be adjustable.
[0150] If the resolution of the receiving ECU is not coarser than that of the transmitting ECU (D105: No), the control unit 20 of the vehicle-mounted device 2 determines whether the change permission is always permissible (D1051). If the resolution of the receiving ECU is not coarser than that of the transmitting ECU, that is, if the resolution of the receiving ECU is finer than that of the transmitting ECU, the control unit 20 of the vehicle-mounted device 2 determines whether the change permission is always permissible. In this case, the control unit 20 of the vehicle-mounted device 2 may also determine whether the change permission is always permissible if the resolution of the receiving ECU is finer than that of the transmitting ECU, or if the maximum value of the receiving ECU is greater than that of the transmitting ECU, or if the minimum value of the receiving ECU is smaller than that of the transmitting ECU. Since there is a lack of information in either the resolution or the value range for the signal expected by the receiving side, the control unit 20 of the vehicle-mounted device 2 determines whether the change permission is always permissible.
[0151] If the setting is always allowed (D1051: Yes), the control unit 20 of the vehicle-mounted device 2 can change the resolution setting in the transformation rule creation work table (D1052). If the change permission is always allowed, the resolution (signal definition information) setting in the transformation rule creation work table can be changed (change OK). The control unit 20 of the vehicle-mounted device 2 can also return to the main routine (S4) after processing D104, D106, or D1052.
[0152] If the change is not always permissible (D1051: No), the control unit 20 of the vehicle-mounted device 2 sets the resolution item in the change rule creation work table to be non-changeable (D1053). The control unit 20 of the vehicle-mounted device 2 interrupts the change rule generation process (D1054). When the change permission is not always permissible, it is set to non-changeable by storing it in the management item for determining whether a change of resolution (signal definition information) is permissible in the change rule creation work table. Based on this, the control unit 20 of the vehicle-mounted device 2 interrupts the change rule generation process. That is, the control unit 20 of the vehicle-mounted device 2 determines that the change is non-changeable, displays a message indicating that updating the ECU is invalid, and outputs information urging the user (the operator of vehicle C) to update the version.
[0153] The control unit 20 of the vehicle-mounted device 2 is configured to generate (complete) a transformation rule table by retrieving the items required for the transformation rule generation work table from a transformation rule generation work table containing transformation rules generated from various communication specification items. Specifically, during the updating of the ECU and the peer ECU, in each frame with different definition versions, the control unit 20 of the vehicle-mounted device 2, as described above, determines whether a transformation is needed in each communication specification item, and if a transformation is needed, determines whether the transformation can be performed. Based on these determinations, it generates a transformation rule generation work table. On this basis, the control unit 20 of the vehicle-mounted device 2 generates the transformation rule table based on the generated transformation rule generation work table.
[0154] Figure 22 This is an explanatory diagram illustrating the items related to the generated transformation rules (transformation rule table). The transformation rule table is generated for each frame (each frame name). The management items in the transformation rule table include, as horizontal items, the transmitting side, the receiving side, whether transformation is required, and as vertical items, the bus ID, version, CAN-ID, transmission period, data length, signal 1, signal 1: start position, signal 1: end position, signal 1: transformation formula: coefficient, signal 1: transformation formula: intercept, signal 1: transformation formula: minimum value, and signal 1: transformation formula: maximum value, forming a matrix. Furthermore, in addition to signal 1, it can also include other signals such as signal 2 and signal 3.
[0155] In the bus ID management section, for both the transmitting and receiving sides, the horizontal entries store the numbers of communication lines 41, such as the CAN bus connected to the transmitting ECU and the CAN bus connected to the receiving ECU. In the version management section, for both the transmitting and receiving sides, the horizontal entries store the definition versions of the frames from the transmitting ECU and the receiving ECU. In the CAN-ID management section, for both the transmitting and receiving sides, the horizontal entries store the identifiers (message IDs) of the frames transmitted by the transmitting ECU and the identifiers (message IDs) of the frames received by the receiving ECU. In the transmission cycle management section, for both the transmitting and receiving sides, the horizontal entries store the transmission cycle of the transmitting ECU and the reception cycle of the receiving ECU. In the data length management section, for both the transmitting and receiving sides, the horizontal entries store the data length of the frames from the transmitting ECU and the receiving ECU. In the signal 1 management section, the horizontal entries store null values. In these CAN-ID, transmission cycle, data length, and signal 1 vertical entries (communication specification entries), the horizontal entry "Whether a change is needed" stores whether a change is required (needed or not).
[0156] The control unit 20 of the vehicle-mounted device 2 can also ensure that the units defined by the signal are consistent when generating the transformation rules for each communication specification item related to signal 1, enabling resolution comparison. In the signal 1: start position management item, for both the transmitting and receiving sides, the start bit number of the signal 1 frame from the transmitting ECU and the start bit number of the signal 1 frame from the receiving ECU are stored. In the signal 1: end position management item, for both the transmitting and receiving sides, the end bit number of the signal 1 frame from the transmitting ECU and the end bit number of the signal 1 frame from the receiving ECU are stored. In the signal 1: transformation type: coefficient management item, for both the transmitting and receiving sides, the coefficients of the signal 1 frame from the transmitting ECU and the coefficients of the signal 1 frame from the receiving ECU are stored. In the signal 1: transformation type: intercept management item, for both the transmitting and receiving sides, the intercept of the signal 1 frame from the transmitting ECU and the intercept of the signal 1 frame from the receiving ECU are stored. In the Signal 1: Transformation: Minimum value management project, for both the transmitting and receiving sides, the minimum value of Signal 1 in the frame sent by the ECU and the minimum value of Signal 1 in the frame received by the ECU are stored. In the Signal 1: Transformation: Maximum value management project, for both the transmitting and receiving sides, the maximum value of Signal 1 in the frame sent by the ECU and the maximum value of Signal 1 in the frame received by the ECU are stored.
[0157] The control unit 20 of the vehicle-mounted device 2 can also ensure that the units defined for the signal are consistent when generating the transformation rules for the communication specification items related to signal 1, so that resolution can be compared. That is, the control unit 20 of the vehicle-mounted device 2 can also extract the smaller unit from the units of the transmitting side and the receiving side (if it is "cm" and "mm", then extract "mm"), and unify the resolution values of both sides by converting them to the smaller unit. The control unit 20 of the vehicle-mounted device 2 can also calculate the coefficient by dividing the physical resolution of the transmitting side by the physical resolution of the receiving side, "coefficient = physical resolution of the transmitting side / physical resolution of the receiving side". The control unit 20 of the vehicle-mounted device 2 can also calculate the intercept by subtracting the offset value of the receiving side from the value obtained by multiplying the offset value of the transmitting side by the coefficient, "intercept = offset value of the transmitting side × coefficient - offset value of the receiving side". The control unit 20 of the vehicle-mounted device 2 can also calculate the maximum and minimum values of the signal (receiving side) according to the defined number of bits of the signal (for example, if it is 8 bits, then the minimum value: 0 and the maximum value: 255 (=2^8-1)). At this point, the receiving signal and the transmitting signal can also be represented by the formula "receiving signal = transmitting signal × coefficient + intercept". If the minimum value of the receiving side is greater than the transmitting signal, "if the minimum value of the receiving side > the transmitting signal", the receiving signal is equivalent to the minimum value of the receiving side, "receiving signal = minimum value of the receiving side". If the maximum value of the receiving side is less than the transmitting signal, "if the maximum value of the receiving side < the transmitting signal", the receiving signal is equivalent to the maximum value of the receiving side, "receiving signal = maximum value of the receiving side".
[0158] On both the transmitting and receiving sides, the physical value is represented by the formula "physical value = (signal value + offset value) × resolution", and the physical value remains unchanged on both the transmitting and receiving sides. Therefore, in the transmitting ECU (transmitting) and receiving ECU (receiving), the signal value is represented by the formula "(signal value (transmitting) + offset value (transmitting)) × resolution (transmitting) = (signal value (receiving) + offset value (receiving) × resolution (receiving)". This formula is: "(signal value (transmitting) + offset value (transmitting)) × (resolution (transmitting) / resolution (receiving)) = (signal value (receiving) + offset value (receiving)", "(signal value (transmitting) + offset value (transmitting)) × coefficient = (signal value (receiving) + offset value (receiving)", "signal value (receiving) = (signal value (transmitting) + offset value (transmitting) × coefficient - offset value (receiving))", "signal value (receiving) = signal value (transmitting) × coefficient + {offset value (transmitting) × coefficient - offset value (receiving)}". By defining the transformation rules in this way, the control unit 20 of the vehicle-mounted device 2 can perform transformations considering the physical unit system within the signal.
[0159] The control unit 20 of the vehicle-mounted device 2 stores the generated transformation rules in the storage unit 23. In this embodiment, the vehicle-mounted device 2 obtains various information from the vehicle-mounted ECU 3, but is not limited to this. The vehicle-mounted device 2 may also obtain all or part of the information required for this processing from the external server SV1 via the external communication device 1 and the external network N.
[0160] The control unit 20 of the vehicle-mounted device 2 begins relay processing using the generated transformation rules (S5). The control unit 20, which stores transformation rules for each frame (each frame name) in its storage unit 23, performs relay processing for frames with different definition versions in the transmitting ECU and receiving ECU by referring to the transformation rules stored in the storage unit 23. The control unit 20 extracts the identifier (CAN-ID) or frame name contained in the received frame and performs transformation processing for that frame by referring to the transformation rules corresponding to the extracted frame name.
[0161] Figure 23 This is a flowchart illustrating the processing (relay processing) of the control unit 20 of the vehicle-mounted device 2. When the control unit 20 of the vehicle-mounted device 2 starts relay processing using a transformation rule, it performs the following processing.
[0162] The control unit 20 of the vehicle-mounted device 2 obtains the number of received frames (S501). For example, when using the CAN communication protocol, the control unit 20 of the vehicle-mounted device 2 obtains the number of CAN received frames (the number of CAN frames received) by referring to the register of the CAN receiving port of the in-vehicle communication unit 22.
[0163] The control unit 20 of the vehicle-mounted device 2 sets the number of relayed frames to 0 (S502). The control unit 20 of the vehicle-mounted device 2 initializes the number of relayed frames by setting the number of relayed frames to 0 (stored in the storage unit 23).
[0164] The control unit 20 of the vehicle-mounted device 2 determines whether the number of relayed frames is less than the number of received frames (S503). The control unit 20 of the vehicle-mounted device 2 determines whether the number of relayed frames is less than the number of received frames: "Number of relayed frames < Number of CAN received frames".
[0165] If the number of relayed frames is less than the number of received frames (S503: Yes), the control unit 20 of the vehicle-mounted device 2 retrieves the received frames (S504). If the number of relayed frames is less than the number of received frames, the control unit 20 of the vehicle-mounted device 2 retrieves the received frames by retrieving CAN received frames from the CAN receive port.
[0166] The control unit 20 of the vehicle-mounted device 2 obtains the number of relay destination buses (S505). The storage unit 23 of the vehicle-mounted device 2, which functions as a relay device, stores a routing diagram used during relay processing. This routing diagram contains information related to the buses (communication lines 41) of relay destinations in each frame (each frame name). The control unit 20 of the vehicle-mounted device 2 refers to the routing diagram stored in the storage unit 23 to obtain the number of relay destination buses and a list of relay destination bus IDs.
[0167] The control unit 20 of the vehicle-mounted device 2 sets the number of relayed buses to 0 (S506). The control unit 20 of the vehicle-mounted device 2 initializes the number of relayed buses by setting the number of relayed buses to 0 (stored in the storage unit 23).
[0168] The control unit 20 of the vehicle-mounted device 2 determines whether the number of relayed buses is less than the number of relay destination buses (S507). The control unit 20 of the vehicle-mounted device 2 determines whether the number of relayed buses is less than the number of relay destination buses, where "number of relayed buses" < "number of relay destination buses".
[0169] If the number of relay buses is less than the number of relay destination buses (S507: Yes), the control unit 20 of the vehicle-mounted device 2 performs transformation processing using transformation rules (S508). When the number of relay buses is less than the number of relay destination buses, the control unit 20 of the vehicle-mounted device 2 refers to the transformation rule table using CAN-ID (frame identifier) as the key, and performs transformation processing such as CAN-ID transformation, data length transformation, or signal transformation as needed (for communication specification items that need to be transformed in the transformation rule table).
[0170] That is, the control unit 20 of the vehicle-mounted device 2 sets the CAN-ID of the receiving side in the CAN-ID conversion. The control unit 20 of the vehicle-mounted device 2 sets the data length of the receiving side in the data length conversion. In the signal conversion, the control unit 20 of the vehicle-mounted device 2 sets the receiving side signal to a value expressed by the formula "receiving side signal = transmitting side signal × coefficient + intercept". At this time, it can also be set such that if the minimum value of the receiving side is greater than the transmitting side signal, "if the minimum value of the receiving side > the transmitting side signal", the receiving side signal is equivalent to the minimum value of the receiving side "receiving side signal = minimum value of the receiving side", and if the maximum value of the receiving side is less than the transmitting side signal, "if the maximum value of the receiving side < the transmitting side signal", the receiving side signal is equivalent to the maximum value of the receiving side "receiving side signal = maximum value of the receiving side".
[0171] The control unit 20 of the vehicle-mounted device 2 determines whether the transformation content does not contain "periodic transformation" or whether the transformation content contains "periodic transformation" and is being sent to the bus for the first time as a "transformed frame" (S509). If the transformation content does not contain "periodic transformation" or contains "periodic transformation" and is being sent to the bus for the first time as a "transformed frame" (S509: Yes), the control unit 20 of the vehicle-mounted device 2 sends the transformed frame (S510). Through the incrementing process described later, the number of relayed frames increases by 1 (+1) each time a frame relay is performed. The control unit 20 of the vehicle-mounted device 2 may, for example, determine whether the relay of the transformed frame is the first time based on the number of relayed frames.
[0172] The control unit 20 of the vehicle-mounted device 2 starts the transmission timer (S511). The control unit 20 of the vehicle-mounted device 2 can also perform processing related to the transmission timer when the transmission period in the communication specification needs to be changed (change required). At this time, as an interruption due to the expiration of the receiver-side period timer, the control unit 20 of the vehicle-mounted device 2 can also send the changed frame to the transmitter-side bus and start the transmission timer (receiver-side period).
[0173] If, after processing in S511, the transformation content does not contain "periodic transformation", or if the transformation content contains "periodic transformation" but it is not the first transmission of a "transformed frame" to that bus (S509: No), the control unit 20 of the vehicle-mounted device 2 performs an increment process for the number of relayed buses (S512). The control unit 20 of the vehicle-mounted device 2 performs an increment process ("number of relayed buses" ← "number of relayed buses" + 1) by increasing the value of the number of relayed buses by 1 (+1), and then performs a loop process again to execute the processing from S507.
[0174] If the number of relayed buses is not less than the number of relayed destination buses (S507: No), the control unit 20 of the vehicle device 2 performs an increment process for the number of relayed frames (S513). The control unit 20 of the vehicle device 2 performs an increment process ("number of relayed frames" ← "number of relayed frames" + 1) by increasing the value of the number of relayed frames by 1 (+1), and then performs the loop process again to perform the process starting from S503.
[0175] If the number of relayed frames is not less than the number of received frames (S503: No), the control unit 20 of the vehicle-mounted device 2 ends the process. If the number of relayed frames is not less than the number of received frames, that is, if the number of relayed frames is greater than or equal to the number of received frames (if the number of relayed frames reaches the number of received frames), the control unit 20 of the vehicle-mounted device 2 ends the process.
[0176] The embodiments disclosed herein should be considered illustrative in all respects and not restrictive. The scope of this disclosure is not as described above, but rather as indicated by the claims, and is intended to include all modifications equivalent to and within the scope of the claims.
[0177] The claims contained in the claims statement can be combined with each other regardless of their form of reference. The claims statement may also contain multiple dependent claims that are subordinate to the multiple claims. Even if multiple dependent claims that are subordinate to multiple dependent claims are not stated, this does not limit the inclusion of multiple dependent claims that are subordinate to multiple dependent claims.
[0178] Label Explanation
[0179] Vehicle C
[0180] S vehicle in-vehicle system
[0181] SV1 external server (OTA server)
[0182] N External Network
[0183] 1. External communication device
[0184] 11 antennas
[0185] 2. Vehicle-mounted device (relay device)
[0186] 20 Control Department
[0187] 21 Input / Output I / F
[0188] 22 Car Internal Communications Department
[0189] 23 Storage Department
[0190] M recording medium
[0191] P control program (program product)
[0192] 3. Vehicle ECUs (Update ECU, Other ECU, Sending ECU, Receiving ECU)
[0193] 4. In-vehicle network
[0194] 41 communication lines
Claims
1. An in-vehicle device that is communicably connected to a plurality of in-vehicle ECUs mounted on a vehicle, wherein the in-vehicle device includes a control section that performs processing related to frames exchanged between the in-vehicle ECUs, the control section acquires information related to software executed in each of the in-vehicle ECUs of the plurality of in-vehicle ECUs, determines the frames exchanged when the software is executed based on the acquired information related to the software, determines a transmission ECU that transmits the determined frames and a reception ECU that receives the determined frames, acquires definition information of the frames in the transmission ECU, acquires definition information of the frames in the reception ECU, generates a conversion rule of the frames based on the definition information of the frames in the transmission ECU and the definition information of the frames in the reception ECU, converts the frames from the transmission ECU using the generated conversion rule of the frames, and outputs the converted frames to the reception ECU.
2. The in-vehicle device according to claim 1, wherein the information related to the software includes a version of the software, the control section determines an update ECU in which the software is updated, among the plurality of in-vehicle ECUs, based on the version of the software, and determines the frames exchanged when the software installed in the determined update ECU is executed.
3. The in-vehicle device according to claim 2, wherein the information related to the software includes a version of the frames exchanged when the software is executed, and the control section generates the conversion rule of the frames when the version of the frames in the transmission ECU is different from the version of the frames in the reception ECU.
4. The in-vehicle device according to claim 3, wherein the definition information of the frames includes a plurality of communication specification items, the control section determines whether there is a difference in each of the communication specification items included in the definition information of the frames of the transmission ECU and the reception ECU, and generates the conversion rule based on the communication specification item in which there is a difference.
5. The in-vehicle device according to claim 4, wherein the communication specification item includes an identifier of the frames, and the control section generates the conversion rule in such a manner as to include a meaning of converting the identifier of the frames of the transmission ECU to the identifier of the frames of the reception ECU, when the identifier of the frames is different between the transmission ECU and the reception ECU.
6. The in-vehicle device according to claim 4, wherein the communication specification item includes a period of the frames, and the control section generates the conversion rule in such a manner as to include a meaning of converting the period of the frames of the transmission ECU to the period of the frames of the reception ECU, when the period of the frames of the transmission ECU is shorter than the period of the frames of the reception ECU or the reception ECU allows a difference in the period.
7. The in-vehicle device according to claim 4, wherein the communication specification item includes a data length of the frames, and the control section generates the conversion rule in such a manner as to include a meaning of converting the data length of the frames of the transmission ECU to the data length of the frames of the reception ECU, when the data length of the frames of the transmission ECU is different from the data length of the frames of the reception ECU. In a case where the data length of the frame of the sending ECU is longer than the data length of the frame of the receiving ECU, or in a case where the receiving ECU allows a difference in data length, the control section generates the conversion rule in a manner that includes a meaning of converting the data length of the frame of the sending ECU to the data length of the frame of the receiving ECU.
8. The in-vehicle device according to claim 4, wherein the communication specification items include resolution of data included in the frame, In a case where the resolution of the frame of the sending ECU is finer than the resolution of the frame of the receiving ECU, or in a case where the receiving ECU allows a difference in resolution, the control section generates the conversion rule in a manner that includes a meaning of converting the resolution of the frame of the sending ECU to the resolution of the frame of the receiving ECU.
9. The in-vehicle device according to claim 4, wherein the control section extracts, among a plurality of the communication specification items included in the definition information of the frame, the communication specification items that are different between the sending ECU and the receiving ECU, determines whether or not conversion in the communication specification items that are different is possible, and in a case where there is the communication specification item in which conversion is not possible, interrupts the process of generating the conversion rule.
10. A computer program product including a computer program that causes a computer to execute the following process, the computer being connected in a communicable manner to a plurality of in-vehicle ECUs mounted on a vehicle and performing a process related to a frame that is transmitted and received between the in-vehicle ECUs: acquires information related to software executed in each of the plurality of in-vehicle ECUs; determines the frame that is transmitted and received when the software is executed, based on the acquired information related to the software; determines a sending ECU that transmits the determined frame and a receiving ECU that receives the determined frame; acquires definition information of the frame in the sending ECU; acquires definition information of the frame in the receiving ECU; generates a conversion rule of the frame, based on the definition information of the frame in the sending ECU and the definition information of the frame in the receiving ECU; converts the frame from the sending ECU, using the generated conversion rule of the frame; and outputs the converted frame to the receiving ECU.
11. An information processing method that causes a computer to execute the following process, the computer being connected in a communicable manner to a plurality of in-vehicle ECUs mounted on a vehicle and performing a process related to a frame that is transmitted and received between the in-vehicle ECUs: acquires information related to software executed in each of the plurality of in-vehicle ECUs; determines the frame that is transmitted and received when the software is executed, based on the acquired information related to the software; determines a sending ECU that transmits the determined frame and a receiving ECU that receives the determined frame; acquires definition information of the frame in the sending ECU; acquires definition information of the frame in the receiving ECU; generating a conversion rule of the frame based on the definition information of the frame in the sending ECU and the definition information of the frame in the receiving ECU; converting the frame from the sending ECU using the generated conversion rule of the frame; and outputting the converted frame to the receiving ECU.
Citation Information
Patent Citations
Relaying apparatus and method and program for relaying
JP2017097851A
Riding electric mobile body
JP2024152488A