Information processing apparatus, information processing method, and computer program
By simulating and verifying route mapping updates, the communication problems caused by adding communication devices to the vehicle network were resolved, load rate and latency were controlled, and network stability and efficiency were ensured.
Patent Information
- Application Number
- CN202480072181.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Priority Date
- 2023-11-15
- Filing Date
- 2024-11-08
- Publication Date
- 2026-06-19
AI Technical Summary
When adding new in-vehicle communication devices to a vehicle network, it is difficult to verify in advance whether it will lead to adverse effects such as increased traffic or communication delays.
The routing mapping is simulated and verified using an information processing device to ensure that load rate and communication latency are simulated and verified before updating the routing mapping. The routing mapping is updated only when the specified conditions are met, and data relay is simplified when the verification result is negative.
It effectively suppresses network problems caused by route mapping updates, ensuring communication stability and efficiency.
Smart Images

Figure CN122250040A_ABST
Abstract
Description
Technical Field
[0001] This disclosure relates to information processing apparatus, information processing method, and computer program for processing in-vehicle communications. Background Technology
[0002] Patent document 1 proposes an information management system in which the vehicle-mounted device obtains a service ID related to the added function and sends it to the server. The server obtains the service information of the function corresponding to the service ID, determines the part of the routing table to be changed based on the service information of multiple functions including the obtained service information, and performs the change of the routing table.
[0003] [Existing technical documents]
[0004] [Patent Literature]
[0005] [Patent Document 1] Japanese Patent Application Publication No. 2018-152758 Summary of the Invention
[0006] [The problem the invention aims to solve]
[0007] For example, to add functionality to a vehicle, a new in-vehicle communication device can be additionally connected to a network related to vehicle communication. In this network, an in-vehicle relay device, which relays data between in-vehicle communication devices, determines the relay destination for data related to the new in-vehicle communication device, thus requiring an update to the routing table. After the routing table is updated and the in-vehicle communication device begins relaying data related to the new device, increased traffic or communication delays may occur within the vehicle's network. In recent years, due to the wide variety of added functions or in-vehicle communication devices, it has become difficult to verify in advance whether these additions will cause increased traffic or communication delays.
[0008] This disclosure was made in view of the following circumstances, and its purpose is to provide an information processing apparatus, information processing method, and computer program that can be expected to suppress adverse situations such as those caused by adding new in-vehicle communication devices to the vehicle's network.
[0009] [Methods used to solve problems]
[0010] The information processing apparatus of this solution includes: an acquisition unit that acquires information related to an in-vehicle communication device that is detected as connected to a network within the vehicle; a generation unit that, based on the acquired information, generates a route mapping for an in-vehicle relay device mounted in the vehicle to determine the relay destination of data transmitted and received in the network; a verification unit that verifies the communication of the network based on the generated route mapping through simulation; and a transmission unit that, upon obtaining a positive verification result, transmits the route mapping to the in-vehicle relay device.
[0011] This application can be implemented not only as an apparatus having such a characteristic processing unit, but also as a method in which the characteristic processing is performed as a step, or as a computer program for causing a computer to execute the step. It can be implemented as a semiconductor integrated circuit that implements part or all of these apparatuses, or as other apparatuses or systems including these apparatuses.
[0012] [Invention Effects]
[0013] Based on the above, it is expected that adverse situations caused by adding new in-vehicle communication devices to the vehicle's network can be suppressed. Attached Figure Description
[0014] Figure 1 This is a schematic diagram illustrating a structural example of the information processing system of this embodiment.
[0015] Figure 2 This is a block diagram illustrating a structural example of the server device according to this embodiment.
[0016] Figure 3 This is a block diagram illustrating a structural example of the integrated ECU of this embodiment.
[0017] Figure 4 This is a schematic diagram illustrating the sequence of functional expansion processes performed by the information processing system in this embodiment.
[0018] Figure 5 This is a schematic diagram illustrating an example of route mapping.
[0019] Figure 6 This is a flowchart illustrating an example of the processing sequence performed by the server device in this embodiment.
[0020] Figure 7 This is a schematic diagram illustrating the general outline of the simulation performed by the information processing system of this embodiment.
[0021] Figure 8 This is a schematic diagram illustrating an example of a network model generated by the model generation unit.
[0022] Figure 9 This is a diagram illustrating a configuration example of using case DB; Figure 10 This is a schematic diagram illustrating an example of a scene.
[0023] Figure 11 This is a diagram illustrating an example of an action log.
[0024] Figure 12 This is a diagram illustrating an example of an action log.
[0025] Figure 13 This is a flowchart illustrating an example of the steps involved in the simulation verification process performed by the server device in this embodiment. Detailed Implementation
[0026] [Description of embodiments of this disclosure]
[0027] First, embodiments of this disclosure are described. At least some of the embodiments described below may be combined arbitrarily.
[0028] (1) The information processing apparatus of this solution includes: an acquisition unit that acquires information related to an in-vehicle communication device that is detected as connected to a network in the vehicle; a generation unit that, based on the acquired information, generates a route mapping for an in-vehicle relay device mounted in the vehicle to determine the relay destination of data to be transmitted or received in the network; a verification unit that verifies the communication of the network based on the generated route mapping by simulation; and a transmission unit that, if a positive verification result is obtained, transmits the route mapping to the in-vehicle relay device.
[0029] In this solution, an external information processing unit creates a route map for the vehicle-mounted relay device to determine the relay destination of data within the vehicle's network. The information processing unit obtains information from the vehicle related to a vehicle-mounted communication device that has detected a new connection to the network, and creates a new route map containing information for the vehicle-mounted relay device to relay data from or to that communication device. The information processing unit verifies network communication using the created route map through simulation. If the simulation yields a positive verification result, the information processing unit sends the new route map to the vehicle's vehicle-mounted relay device, updating the old route map to the new one. By performing verification in simulation before updating the route map, it is expected to suppress adverse effects such as those that occur after the route map update.
[0030] (2) Preferably, the verification unit verifies whether the load rate or communication delay in the network meets the specified conditions when the vehicle communication device is added through the simulation.
[0031] In this solution, the information processing device uses simulation to verify whether the network load rate or communication latency meets predetermined conditions when a new in-vehicle communication device is added. These predetermined conditions can be set, for example, to a load rate or communication latency that would likely cause malfunctions due to vehicle functionality. These predetermined conditions can be pre-defined by the designer or administrator of the information processing system in this embodiment. Therefore, the information processing device can expect to suppress adverse conditions such as increased load rate or communication latency after route mapping updates.
[0032] (3) Preferably, the system includes a database that stores update information for routing mappings related to in-vehicle communication devices that can be connected to a network within the vehicle. The system generates the routing mappings based on the update information read from the database by the generating unit, which is based on the information obtained by the acquiring unit.
[0033] In this solution, the information processing device stores update information for updating route mappings in a database, relating to various in-vehicle communication devices capable of connecting to the vehicle's network. This update information includes, for example, information to be added to the route mappings to correctly relay data from or to the in-vehicle communication devices. The information processing device reads the update information from the database based on information related to the in-vehicle communication devices obtained from the vehicle, and then creates a new route mapping based on this information. Therefore, even when various in-vehicle communication devices can connect to the vehicle's network, the information processing device can expect to create appropriate route mappings.
[0034] (4) Preferably, if the sending unit receives a negative verification result, it sends a route mapping and causes the vehicle relay device to perform a simplification of the relay according to the priority of the data.
[0035] In this scheme, if a negative verification result is obtained through simulation, the information processing device sends the newly created route mapping for updating to the vehicle, and causes the on-board relay device to perform relay simplification according to the data priority. For example, if the priority of the data to be relayed is lower than a predetermined threshold, the on-board relay device can perform simplification by discarding the data without relaying it with a predetermined probability. Therefore, in situations where there is a possibility of adverse effects from updating the route mapping, the information processing device reduces communication traffic by simplifying relays, thereby potentially suppressing the occurrence of adverse effects.
[0036] (5) Preferably, it comprises: a model generation unit for generating a model of the network; a scene generation unit for generating the simulated scene; and a scene execution unit for inputting and outputting data to the model according to the scene, and the verification unit for verifying the model based on the input and output data to the model and the internal state of the model.
[0037] In this scheme, the information processing device generates a model of the network to be simulated and a simulated scenario, and performs simulation by inputting and outputting data to the model based on the scenario. The information processing device verifies the model based on the input and output data and the model's internal state. Therefore, the information processing device can be expected to broadly verify the behavior of the network with the newly added vehicular communication device by using simulations of various schemes.
[0038] (6) Preferably, the model generation unit has a structure database that stores configuration information of the vehicle communication device and communication line installed in the vehicle, and generates the model based on the configuration information stored in the structure database and the configuration information of the vehicle communication device connected to the network.
[0039] In this solution, the information processing device has a structure database that stores the structure of in-vehicle communication devices and communication lines mounted on the vehicle. Based on the information stored in this structure database and the configuration information of the in-vehicle communication devices newly connected to the vehicle's network, the information processing device can, for example, add a model of the additional in-vehicle communication device to an existing network structure model, thereby expecting to generate a model for use in simulations for verification.
[0040] (7) Preferably, the scene generation unit has an action database that stores the actions of the vehicle and the corresponding events that occur in each action. The scene generation unit generates the scene that defines the events that occur in a time sequence based on the information stored in the action database and the configuration information of the vehicle communication device connected to the network.
[0041] In this solution, the information processing device has an action database that stores the vehicle's actions and the corresponding events occurring in each action. Based on the information stored in the action database and the configuration information of the onboard communication device newly connected to the vehicle's network, the information processing device generates a scenario that defines events occurring in a time sequence. Therefore, the information processing device can perform simulations corresponding to various actions of the vehicle.
[0042] (8) Preferably, the scenario defines events that occur in the network in a time sequence, the scenario execution unit generates data to be input to the model based on the events in the time sequence defined in the scenario, inputs the generated data to the model, obtains the data output by the model based on the input of the data and the internal state of the model when the data is output, and stores the obtained data and the internal state.
[0043] In this scheme, the information processing device generates data to be input to the model based on time-series events defined in the scene, inputs the generated data to the model, obtains the model's output data and internal state, and stores this information. Thus, the information processing device can simulate the network of vehicles using the model and the scene.
[0044] (9) Preferably, the verification unit calculates the load rate or communication delay related to the network communication based on the data and the internal state stored in the scenario execution unit, and determines whether the simulation result is positive based on whether the calculated load rate or communication delay meets the specified benchmark.
[0045] In this scheme, the information processing device calculates the load rate or communication latency related to network communication based on the output data of the model stored as a simulation result and information on its internal state. The information processing device can determine whether the simulation result is positive based on whether the calculated load rate or communication latency meets a specified benchmark.
[0046] (10) The information processing method of this scheme enables the information processing device to perform the following processing: obtain information related to the vehicle communication device that is detected to be connected to the network in the vehicle; based on the obtained information, create a route mapping for the vehicle relay device mounted in the vehicle to determine the relay destination of data to be sent and received in the network; verify the communication of the network based on the created route mapping by simulation; and if a positive verification result is obtained, send the route mapping to the vehicle relay device.
[0047] In this scheme, similar to method (1), it is expected that adverse situations such as those that occur after the route mapping is updated can be suppressed.
[0048] (11) The computer program involved in this solution causes the computer to perform the following processing: obtain information related to an in-vehicle communication device that is detected as connected to the network in the vehicle; based on the obtained information, create a route mapping, which is used by the in-vehicle relay device mounted in the vehicle to determine the relay destination of data sent and received in the network; verify the communication of the network based on the created route mapping by simulation; and if a positive verification result is obtained, send the route mapping to the in-vehicle relay device.
[0049] In this scheme, similar to method (1), it is expected that adverse situations such as those that occur after the route mapping is updated can be suppressed.
[0050] [Details of the embodiments of this disclosure]
[0051] Specific examples of information processing systems according to embodiments of the present disclosure will now be described with reference to the accompanying drawings. This disclosure is not limited to these examples, as indicated by the claims, and is intended to include all modifications equivalent to and within the scope of the claims.
[0052] <System Structure>
[0053] Figure 1 This is a schematic diagram illustrating a structural example of the information processing system of this embodiment. The information processing system of this embodiment includes multiple devices such as an integrated ECU (Electronic Control Unit) 10, an instrument cluster ECU 51, a brake ECU 52, an expansion interface (IF) 53, and an external communication device 54, all mounted in a vehicle 1. These multiple devices are connected via multiple communication lines 71-74 disposed within the vehicle 1, forming an in-vehicle network capable of transmitting and receiving data from each other. In the illustrated example, four communication lines 71-74 are connected to the integrated ECU 10; the instrument cluster ECU 51 is connected to communication line 71; the brake ECU 52 is connected to communication line 72; the expansion interface IF 53 is connected to communication line 73; and the external communication device 54 is connected to communication line 74. Furthermore, in the illustrated example, two devices are connected to each of the communication lines 71-74, but three or more devices can also be connected to each communication line 71-74.
[0054] The integrated ECU 10 of this embodiment combines the functions of a gateway 11 that relays data transmission and reception, and an ADAS (Advanced Driver Assistance Systems)-ECI 12 that performs driver assistance processing, into a single device. In other words, the integrated ECU 10 has a virtual gateway 11 and an ADAS-ECU 12. The gateway 11 and ADAS-ECU 12 are connected via a virtual communication line 75. Furthermore, in this figure, virtual function blocks and communication lines are represented by dashed lines. Alternatively, the gateway 11 and ADAS-ECU 12 can also be mounted as separate devices in the vehicle 1.
[0055] The integrated ECU 10 can transmit and receive data with the instrument cluster ECU 51, brake ECU 52, expansion IF 53, and external communication device 54 via these communication lines 71-74. The instrument cluster ECU 51, brake ECU 52, expansion IF 53, and external communication device 54 can each transmit and receive data with the integrated ECU 10. Furthermore, the integrated ECU 10 relays the data transmission and reception between the four communication lines 71-74. Thus, the instrument cluster ECU 51, brake ECU 52, expansion IF 53, and external communication device 54 can transmit and receive data with each other via the integrated ECU 10.
[0056] The instrument cluster ECU 51 controls various instruments located near the driver's seat in vehicle 1. The instrument cluster ECU 51 controls the instruments based on various information obtained from within vehicle 1 via the in-vehicle network. For example, the instrument cluster ECU 51 controls the display of the speedometer based on information about the vehicle 1's speed obtained via the in-vehicle network. Additionally, for example, the instrument cluster ECU 51 controls the display of the tachometer based on information about the engine speed or rotational speed of vehicle 1 obtained via the in-vehicle network.
[0057] The brake ECU 52 controls the brakes of vehicle 1. For example, the brake ECU 52 activates the brakes based on the driver's operation of the foot brake or side brake located in the driver's seat of vehicle 1. Information related to the presence or absence of operation of the foot brake or side brake and the amount of operation can be directly input to the brake ECU 52, or it can be provided to the brake ECU 52 via the in-vehicle network. Alternatively, for example, the brake ECU 52 activates the brakes based on commands provided from ADAS-ECU 12 via the in-vehicle network.
[0058] For example, when adding functions to vehicle 1, the expansion IF53 is used to connect to the expansion ECU 61 that performs that function. In this example, the expansion IF53 is connected to the communication line 73 and has connection terminals or slots for connecting the expansion ECU 61. When the expansion IF53 detects that the expansion ECU 61 is connected, it notifies the integrated ECU 10 of the connection detection via the communication line 73.
[0059] The extended ECU 61 is configured to be detachable from the extended IF 53 and connected to the communication line 73 of the vehicle 1 via the extended IF 53, enabling communication. The extended ECU 61 can perform any extended function of the vehicle 1. In this example, the extended ECU 61 has a sensor 62 that detects obstacles or the like outside the vehicle 1, and performs processing to periodically acquire the detection results of the sensor 62 and send them to other devices within the vehicle 1. Thus, functions such as monitoring the surroundings of the vehicle 1 or obstacle avoidance using the sensor 62 can be added to the vehicle 1.
[0060] The external communication device 54 is a device that communicates with various devices located outside the vehicle 1 via wireless communication, such as a mobile phone communication network or a wireless LAN (Local Area Network). In this embodiment, the external communication device 54 communicates with a server device 3 located outside the vehicle 1. The external communication device 54 is connected to the integrated ECU 10 via a communication line 74, transmits data from the integrated ECU 10 to the server device 3, and provides data from the server device 3 to the integrated ECU 10.
[0061] A gateway 11, virtually installed within the integrated ECU 10, relays data between communication lines 71 and 75. In the information processing system of this embodiment, each transmitted and received data is appended with an ID, and the gateway 11 has a routing map that sets the ID appended to the data to correspond to the communication line where the data should be relayed. When the gateway 11 receives data from any communication line, it sends the data from the communication line designated as the relay destination in the routing map, based on the ID attached to the data and referring to the routing map, thereby relaying data between multiple communication lines.
[0062] ADAS-ECU 12 is a device that implements driving assistance or autonomous driving by controlling the driving of vehicle 1 based on information obtained from various sensors mounted on vehicle 1. For example, ADAS-ECU 12 uses sensors mounted on vehicle 1 to determine the distance to the vehicle in front, and controls the accelerator and brakes of vehicle 1 to keep the vehicle distance constant. Furthermore, the control performed by ADAS-ECU 12 is not limited to maintaining the vehicle distance, but can also be control related to various driving assistance or autonomous driving methods.
[0063] The server device 3, located externally to vehicle 1, stores information related to various devices mounted on vehicle 1 in a database and distributes programs or data required by these devices. For example, if a new extended ECU 61 is connected to the network of vehicle 1, information related to the extended ECU 61 is sent from vehicle 1 to server device 3. Upon receiving this information, server device 3 sends programs or data to vehicle 1 for utilizing the extended ECU 61.
[0064] Furthermore, in this embodiment, when an extended ECU 61 is installed in the extended IF 53 of vehicle 1 and the extended ECU 61 is connected to the communication line 73, the server device 3 performs a process to verify whether the extended ECU 61 can be connected. In the information processing system according to this embodiment, when the extended ECU 61 is connected to the communication line 73, the gateway 11 needs to update the routing mapping used to determine the relay destination of data. This is because, for example, data sent by the extended ECU 61 is relayed to other devices, and data sent from other devices is relayed to the extended ECU 61. The server device 3 creates a new routing mapping after being notified from vehicle 1 that the extended ECU 61 is connected, and verifies the communication within vehicle 1 using the new routing mapping through simulation. If the server device 3 obtains a positive verification result through simulation (e.g., a verification result that no anomalies occur), it sends the created routing mapping to vehicle 1, thereby updating the routing mapping of the gateway 11 of the integrated ECU 10 to the new routing mapping.
[0065] Figure 2 This is a block diagram illustrating a structural example of the server device 3 according to this embodiment. The server device 3 of this embodiment is configured to include a processing unit 31, a storage unit (memory) 32, and a communication unit (transceiver) 33, etc. Furthermore, in this embodiment, processing is described as being performed by a single server device 3, but processing can also be performed by multiple server devices distributed among them.
[0066] The processing unit 31 is configured using a computing device such as a CPU (Central Processing Unit), MPU (Micro-Processing Unit), GPU (Graphics Processing Unit), or quantum processor, and storage devices such as ROM (Read Only Memory) and RAM (Random Access Memory). The processing unit 31 performs various processes, including reading and executing the program 32a stored in the storage unit 32, processing to obtain various information through communication with the vehicle 1, processing to create route mappings, and processing to verify communication within the vehicle 1 using the created route mappings.
[0067] The storage unit 32 is constructed using a high-capacity storage device such as a hard disk or an SSD (Solid State Drive). The storage unit 32 stores various programs executed by the processing unit 31, as well as various data required for processing by the processing unit 31. In this embodiment, the storage unit 32 stores program 32a executed by the processing unit 31. Furthermore, the storage unit 32 is equipped with an onboard device DB (database) 32b that stores information related to various devices that can be mounted on the vehicle 1, and a vehicle DB 32c that stores information such as the network structure of the vehicle 1.
[0068] In this embodiment, the program (computer program, program product) 32a is provided in the form of a recording medium 99 such as a memory card or optical disc, and the server device 3 reads the program 32a from the recording medium 99 and stores it in the storage unit 32. However, the program 32a may also be written to the storage unit 32 during the manufacturing stage of the server device 3, for example. Additionally, the program 32a may be obtained by the server device 3 from programs distributed by other remote server devices, for example, through communication. Alternatively, the program 32a may be read from the recording medium 99 by a writing device and written to the storage unit 32 of the server device 3. The program 32a may be provided either by distribution via a network or by recording it in the recording medium 99.
[0069] The vehicle-mounted device DB32b is a database that stores information related to various devices that can be additionally connected to the vehicle 1. The information stored in the vehicle-mounted device DB32b may include, for example, the ID, size, and transmission frequency of the data transmitted by the device, as well as the ID of the data required by the device. When the server device 3 receives information from the vehicle 1 containing the ID of the extended ECU 61 to be additionally connected, it can read the information stored in the vehicle-mounted device DB32b based on that ID and perform route mapping.
[0070] Furthermore, the on-board unit DB32b stores various programs, such as device drivers or applications, that can be executed by devices mounted on vehicle 1. When an expansion ECU 61 is added to the network of vehicle 1, the server unit 3 reads the programs executed by the expansion ECU 61 and the programs executed by the on-board unit that cooperate with the expansion ECU 61 from the on-board unit DB32b and sends them to vehicle 1.
[0071] The vehicle DB32c is a database that stores information about the devices installed in vehicle 1 and the network structure, corresponding to identification information such as the vehicle ID, for vehicle 1, which is managed by server device 3. The information stored in the vehicle DB32c may include, for example, the number of communication lines 71-75 constituting the network of vehicle 1, identification information of the devices connected to each communication line 71-75, information such as the type, size, and transmission frequency of data sent by each device, information such as the type and version of the programs executed by each device, information such as the vehicle model and owner of vehicle 1, and information on the routing mapping used by the gateway 11 of vehicle 1, etc. Server device 3 can perform simulation verification based on the information stored in the vehicle DB32c.
[0072] The communication unit 33 communicates with various devices via a network N, such as the Internet, a wired LAN (Local Area Network), a wireless LAN, or a mobile phone communication network. In this embodiment, the communication unit 33 communicates with one or more vehicles 1 (equipped with external communication devices 54) via the network N. The communication unit 33 sends data provided by the processing unit 31 to other devices and provides data received from other devices to the processing unit 31.
[0073] Furthermore, the storage unit 32 may be an external storage device connected to the server device 3. Additionally, the server device 3 may be configured as a multi-computer system comprising multiple computers, or it may be a virtual machine constructed virtually through software. Furthermore, the server device 3 is not limited to the structure described above; for example, it may include a reading unit for reading information stored on a removable storage medium, an input unit for receiving operational input, or a display unit for displaying images.
[0074] Furthermore, in the server device 3 of this embodiment, the processing unit 31 reads and executes the program 32a stored in the storage unit 32, thereby implementing the information acquisition unit 31a, the route mapping creation unit 31b, the verification processing unit 31c, and the route mapping transmission unit 31d as functional units of software by the processing unit 31. In addition, in this figure, the functional units involved in the creation and verification of the route mapping for the vehicle 1 are shown as functional units of the processing unit 31; functional units related to other processing are omitted from the illustration.
[0075] The information acquisition unit 31a communicates with the external communication device 54 of the vehicle 1 via the communication unit 33, thereby acquiring various information related to the vehicle 1. The information acquisition unit 31a acquires various information, such as information related to devices installed in the vehicle 1, information related to the network structure of the vehicle 1, version information of programs executed by each device, and routing mapping used by the gateway 11, and stores this information in the vehicle DB32c. Furthermore, in this embodiment, when an expansion ECU 61 is newly installed in the expansion IF 53 of the vehicle 1, the information acquisition unit 31a acquires information related to the expansion ECU 61 from the vehicle 1. The information acquisition unit 31a stores the acquired information related to the expansion ECU 61 in the vehicle DB32c and appropriately modifies the already stored information about the network structure of the vehicle 1.
[0076] The routing mapping creation unit 31b processes the routing mapping used by the gateway 11 of vehicle 1. Based on information such as the ID of the extended ECU 61 obtained by the information acquisition unit 31a, the routing mapping creation unit 31b reads information related to the extended ECU 61 from the on-board unit DB32b. The information read from the on-board unit DB32b may include, for example, the ID of the data sent by the extended ECU 61, the ID of the device that should receive the data, and the ID of the data required by the extended ECU 61. Additionally, the routing mapping creation unit 31b reads information such as the network structure of vehicle 1 and the current routing mapping stored in the vehicle DB32c. Based on this read information, the routing mapping creation unit 31b can determine which communication lines 71-75 should relay the data sent by the extended ECU 61. Furthermore, the routing mapping creation unit 31b determines which data from devices already installed in vehicle 1, such as the instrument cluster ECU 51 and brake ECU 52, should be relayed to the communication line 73 connected to the extended ECU 61. The route mapping generation unit 31b generates a new route mapping based on the determined relay destination. The route mapping creation unit 31b can create a new route mapping, for example, by adding relay conditions related to the newly added extended ECU61 data to the current route mapping.
[0077] The verification processing unit 31c verifies the feasibility of the route mapping created by the route mapping creation unit 31b through simulation. Information stored in the vehicle DB32c includes, for example, the network structure of vehicle 1, the ID, period, and size of data transmitted by each device, and the ID of data required by each device. Based on this information, the verification processing unit 31c constructs a virtual network of vehicle 1 as the simulation object in a simulation environment. In the virtual network, the verification processing unit 31c simulates the transmission and reception of data by each device at a set period and size. The verification processing unit 31c measures the amount and frequency of data transmitted and received on the network of vehicle 1 in the simulation, for example, calculating the communication load on each communication line 71-75, or the maximum delay time for each data item. The verification processing unit 31c determines the feasibility of the new route mapping by judging whether these calculated values meet specified conditions.
[0078] The route mapping sending unit 31d processes the sending of the new route mapping created by the route mapping creation unit 31b to the vehicle 1. Furthermore, if the route mapping sending unit 31d obtains a positive verification result (a verification result that meets the prescribed conditions) through the verification processing unit 31c, it sends the new route mapping to the vehicle 1, thereby updating the route mapping held by the gateway 11 of the vehicle 1 to the new route mapping.
[0079] In contrast, if a negative verification result (a verification result that does not meet predetermined conditions) is obtained through the verification processing unit 31c, the verification processing unit 31c performs simulation-based verification, for example, on the case where data relayed by the gateway 11 of vehicle 1 has been simplified, to determine whether the predetermined conditions are met. In the information processing system of this embodiment, the ID attached to each transmitted and received data indicates the category of the data and its priority. The data ID is, for example, a numerical value with a specified number of digits; the lower the value, the higher the priority. The verification processing unit 31c verifies the data by simplifying it sequentially, starting with the data with the lowest priority, and determines the data that needs to be simplified in order to meet the predetermined conditions. In the method of simplifying data relay, for example, methods such as discarding data without relaying it at a specified frequency or discarding data without relaying it with a specified probability can be used. The verification processing unit 31c notifies vehicle 1 of the ID of the data that is determined to need to be simplified for relay, so that the gateway 11 of vehicle 1 subsequently simplifies the data with that ID for relaying. After the verification processing unit 31c sends a notification related to the simplification of the relay, the route mapping sending unit 31d sends the new route mapping to vehicle 1, thereby updating the route mapping of gateway 11.
[0080] Furthermore, in this embodiment, if a negative verification result is obtained through simulation, the verification processing unit 31c simplifies the data relay performed by the gateway 11, but is not limited to this. For example, the verification processing unit 31c may also reduce the frequency of data transmission by one or more devices connected to the network of the vehicle 1. In addition, for example, the verification processing unit 31c may also display a message such as "rejecting the connection of the extended ECU 61 for new connections" on the display of the vehicle 1, without updating the routing mapping of the gateway 11.
[0081] After the route mapping is sent, server device 3 stores the new route mapping in vehicle DB32c and adds information related to the extended ECU 61 to the network structure of vehicle 1 stored in vehicle DB32c. Furthermore, server device 3 determines whether the programs of each device installed in vehicle 1 need to be updated by adding extended ECU 61, and if an update is required, sends the update program to vehicle 1. Gateway 11 of vehicle 1 appropriately sends the update program from server device 3 to each device that needs the program, enabling each device to update its program.
[0082] Figure 3 This is a block diagram illustrating a structural example of the integrated ECU 10 according to this embodiment. The integrated ECU 10 according to this embodiment is configured to include a processing unit (processor) 21, a storage unit (memory) 22, and a communication unit (transceiver) 23, etc. The processing unit 21 is configured using, for example, an arithmetic processing device such as a CPU or an MPU. The processing unit 21 can perform various processes by reading and executing the program 22a stored in the storage unit 22. In this embodiment, the processing unit 21 performs processes related to both the gateway 11 and the ADAS-ECU 12.
[0083] The storage unit 22 is constructed using non-volatile storage elements such as flash memory or EEPROM (Electrically Erasable Programmable Read-Only Memory). The storage unit 22 stores various programs executed by the processing unit 21, as well as various data required for processing by the processing unit 21. In this embodiment, the storage unit 22 stores the program 22a executed by the processing unit 21 and the routing map 22b used by the gateway 11 to determine the relay destination of data.
[0084] The program (program product) 22a can be written into the storage unit 22 during the manufacturing stage of the integrated ECU 10, for example, the integrated ECU 10 can obtain a program distributed by a remote server device through communication, the integrated ECU 10 can read a program recorded on a recording medium 98 such as a memory card or optical disc and store it in the storage unit 22, and a writing device can read a program recorded on a recording medium 98 and write it into the storage unit 22 of the integrated ECU 10. The program 22a can be provided by means of distribution via a network or by means of recording on a recording medium 98.
[0085] The route mapping 22b is information used by the integrated ECU 10 as a gateway 11 for relay processing. In the information processing system of this embodiment, data transmitted and received in the network of vehicle 1 is appended with an ID for identifying the data category, etc. The route mapping 22b is, for example, information indicating the correspondence between the ID appended to the data and the communication lines 71 to 75 that should send the data with that ID. When the gateway 11 receives data through any of the communication lines 71 to 75, it can obtain the ID appended to the received data and obtain from the route mapping 22b which of the communication lines 71 to 75 is the relay destination corresponding to that ID.
[0086] In this embodiment, the integrated ECU 10 has four communication units 23. Each communication unit 23 is connected to a communication line 71 to a communication line 74, and communicates with other devices via these communication lines. The communication units 23 transmit and receive data according to communication protocols such as CAN (Controller Area Network) or Ethernet (registered trademark). Each communication unit 23 can be configured using an IC (Integrated Circuit) such as a CAN controller or an Ethernet switch. The communication units 23 convert digital data provided by the processing unit 21 into electrical signals and output them to the communication lines 71 to 74, thereby transmitting the data. The communication units 23 sample and obtain the potential of the communication lines 71 to 74, convert the electrical signals on the communication lines into digital data, and provide the converted data to the processing unit 21 as received data. In this example, the integrated ECU 10 has four communication units 23, but it is not limited to this; the integrated ECU 10 may also have three or fewer, or five or more, communication units 23.
[0087] In the integrated ECU 10 of this embodiment, the processing unit 21 reads and executes the program 22a stored in the storage unit 22, thereby enabling the gateway processing unit 21a and the ADAS processing unit 21b to function as software functional units within the processing unit 21. Furthermore, the gateway processing unit 21a of the processing unit 21 performs processing equivalent to the aforementioned virtual gateway 11, and the ADAS processing unit 21b performs processing equivalent to the ADAS-ECU 12.
[0088] Gateway processing unit 21a receives data sent by other devices via communication lines 71 to 75, and transmits the received data from appropriate communication lines 71 to 75, thereby performing relay processing for data transmission and reception between communication lines 71 and 75. Based on the ID contained in the received data, gateway processing unit 21a refers to the routing map 22b stored in storage unit 22 to determine the relay destination of the data. Furthermore, when the communication protocols of the data relay source and relay destination are different, gateway processing unit 21a can perform processing to transform the relayed data into a form suitable for each communication protocol.
[0089] In this embodiment, when an expansion ECU 61 is installed on the expansion IF 53 and the network connection of the expansion ECU 61 to the vehicle 1 is established, the gateway processing unit 21a sends information such as the ID associated with the expansion ECU 61 to the server device 3, requesting the creation of a new route mapping. The gateway processing unit 21a obtains the new route mapping sent from the server device 3 according to this request, and overwrites the route mapping 22b stored in the storage unit 22 with the new route mapping, thereby updating the route mapping 22b. Furthermore, when the server device 3 is provided with an instruction to streamline data relay along with the new route mapping, the gateway processing unit 21a streamlines the relay of data after the route mapping is updated.
[0090] The ADAS processing unit 21b performs processing related to driving assistance or autonomous driving of the vehicle 1. For example, the ADAS processing unit 21b controls the accelerator and brakes of the vehicle 1 in a manner that maintains a constant inter-vehicle distance. Additionally, for example, the ADAS processing unit 21b warns the driver if a vehicle ahead is seen by a camera applying emergency braking. Furthermore, for example, the ADAS processing unit 21b controls the vehicle 1 to stop by engaging the brakes if a collision with a vehicle or obstacle ahead cannot be avoided by warning the driver. These controls by the ADAS processing unit 21b are just examples and are not limited to. The ADAS processing unit 21b can perform any control related to driving assistance or autonomous driving.
[0091] <Function Extension Processing>
[0092] Figure 4This is a schematic diagram illustrating the sequence of function expansion processing performed by the information processing system of this embodiment. In the information processing system of this embodiment, users connect the expansion ECU 61 to the expansion IF 53 constituting the network of vehicle 1, thereby expanding the functions of vehicle 1. When the expansion IF 53 detects the connection of the expansion ECU 61, it notifies the gateway 11 of the integrated ECU 10 of this notification. At this time, the expansion IF 53 obtains information such as the ID from the expansion ECU 61 and sends this information along with the connection detection notification to the gateway 11. The notification data sent by the expansion IF 53 is received by the gateway 11 of the integrated ECU 10 via the communication line 73.
[0093] Upon receiving a notification from extended IF53, gateway 11 obtains the ID of extended ECU61 included in the notification. Gateway 11 sends the obtained ID to server device 3 to make a notification. At this time, the data containing the ID sent by gateway 11 is received by server device 3 located outside vehicle 1 via communication line 74 and external communication device 54.
[0094] The server device 3, which notifies the gateway 11 of vehicle 1 of the ID of the extended ECU 61, reads information corresponding to that ID from the on-board unit DB 32b. Additionally, the server device 3 reads information corresponding to the notification source vehicle 1 from the vehicle DB 32c. Based on the information read from these databases, the server device 3 creates a routing map for the gateway 11 of vehicle 1, which has the extended ECU 61 added.
[0095] Figure 5 This is a schematic diagram illustrating an example of route mapping. Figure 5 The routing map shown in the upper section stores information such as "Category," "ID," "Relay Source," "Relay Destination," and "Summary." "Category" refers to the category of information contained in the data transmitted and received through vehicle 1's network, and categories such as "Driving Distance," "Vehicle Speed," "Speed Warning," or "Abnormal Water Temperature" can be set. However, the routing map may also omit "Category" information.
[0096] The "ID" in the routing map is identification information attached to the transmitted and received data. Additionally, the "ID" is also used to indicate the priority of the data; a smaller value indicates a higher priority. For example, in the case of using the CAN communication protocol in the vehicle 1 network, the CAN-ID can be used as the "ID". In this example, a hexadecimal number is set as the "ID".
[0097] In the "Relay Source" and "Relay Destination" fields of the route mapping, set information to identify the multiple communication lines connected to gateway 11. In this example, use... Figure 1The symbols shown indicate that "communication lines 71 to 75" are used to identify the communication lines. "Relay source" refers to communication lines 71 to 75 where gateway 11 receives the data, and "relay destination" refers to communication lines 71 to 75 where gateway 11 sends the data. For example, data related to "ID" "0B2" and "Category" "Distance" is sent from the device connected to "communication line 72" ("relay source") to gateway 11. Gateway 11, receiving this data, then sends the data from "communication line 71" ("relay destination").
[0098] In the "Simplified" setting of the route mapping, either "Yes" or "No" is used to determine whether to simplify the corresponding data. Gateway 11 performs simplification processing on data for which the "Simplified" setting of the route mapping is set to "Yes", such as reducing the relay frequency.
[0099] For that Figure 5 The route mapping shown in the previous paragraph, in Figure 5 The following section illustrates an example of a new routing map created by server device 3 through the addition of extended ECU 61. In this example, by adding extended ECU 61, three new data categories—"sonar data," "automatic braking request," and "obstacle warning request"—are added to the data categories transmitted and received in the in-vehicle network. Server device 3, notified of the addition of extended ECU 61 from gateway 11 of vehicle 1, reads information related to extended ECU 61 from the on-board unit DB32b. In this example, extended ECU 61 sends "sonar data" with "ID" "501," and server device 3 reads information from on-board unit DB32b indicating the intention of ADAS-ECU 12 to use this data. Server device 3 can then, based on this information read from on-board unit DB32b and the network structure of vehicle 1 stored in vehicle DB32c (extended ECU 61 connected to communication line 73, ADAS-ECU 12 connected to communication line 75), perform [further actions / actions]. Figure 5 The route mapping append shown in the above paragraph Figure 5 The information in the "Sonar Data" section below.
[0100] In this example, along with the addition of the extended ECU 61, automatic braking and obstacle warning functions are added to vehicle 1. Regarding this function addition, server device 3, for example, sends "Automatic Braking Request" data with "ID" "0B2" from ADAS-ECU 12 and reads information from the on-board unit DB32b indicating that the braking ECU 52 uses this data. Additionally, server device 3, for example, sends "Obstacle Warning Request" data with "ID" "202" from ADAS-ECU 12 and reads information from the on-board unit DB32b indicating that the instrument cluster ECU 51 uses this data. Server device 3 can, based on this information read from the on-board unit DB32b and the network structure of vehicle 1, perform [further actions / actions]. Figure 5 The route mapping append shown in the above paragraph Figure 5 The information on "Automatic Braking Requirements" and "Obstacle Warning Requirements" is shown in the next paragraph.
[0101] In this example, server device 3 creates a new route mapping by appending information to an existing route mapping, but is not limited to this. Server device 3 can create a new route mapping by changing part or all of the information contained in an existing route mapping, or it can create a new route mapping by deleting part of the information contained in an existing route mapping. Server device 3 can appropriately combine the appending, changing, and deleting of information for existing route mappings to create a new route mapping, or it can create a new route mapping from the beginning without using existing route mappings.
[0102] The server device 3, which performs new routing mapping with the addition of extended ECU61, is as follows: Figure 4 As shown, the communication of the in-vehicle network under the condition of applying the newly created routing map is verified through simulation. At this time, the server device 3 uses the information related to the vehicle 1 stored in the vehicle DB32c and the information related to each device stored in the vehicle device DB32b to perform a simulation-based in-vehicle network communication simulation. In the vehicle DB32c, for example, information such as whether each communication line 71 to communication line 75 constituting the network of the vehicle 1 is connected to any device, and the communication speed of each communication line 71 to communication line 75. In the vehicle device DB32b, information such as the ID, period, and size of the data transmitted by each device mounted on the vehicle 1 are stored. In addition, the vehicle device DB32b stores information related to the data transmitted and received by the extended ECU 61 and the data added to the in-vehicle network with the addition of functions based on the extended ECU 61. In this embodiment, the same information required for simulation verification is contained in both the vehicle device DB32b and the vehicle DB32c.
[0103] Server device 3 reproduces the network of vehicle 1 in a simulated environment based on information related to the network structure of vehicle 1 stored in vehicle DB32c. Server device 3 simulates, for example, the flow of data when each device in the reproduced network transmits data at a predetermined period and size. Server device 3 calculates, for example, the ratio of the time spent transmitting and receiving data on each communication line 71 to communication line 75 to the total simulation time as the communication load rate, and calculates the average of the communication load rates of multiple communication lines 71 to communication line 75 as the average load rate. Server device 3 determines whether the calculated average load rate meets a predetermined condition (e.g., 70% or less).
[0104] Furthermore, server device 3 calculates, for example, the delay time from the timing of data transmission from the self-generating device to the time when the data is received by the receiving device for each piece of data transmitted and received in the network of vehicle 1. Server device 3 calculates this delay time for all data transmitted and received in the simulation, and takes the data with the largest delay time as the maximum delay time. Server device 3 determines whether the maximum delay time meets a specified condition (e.g., less than 3 milliseconds). In addition, the network characteristic values calculated by server device 3 through simulation are not limited to the average load rate or the maximum delay time. Server device 3 can calculate various characteristic values, such as the amount of data transmitted and received by each communication line 71 to communication line 75, or the frequency of mediation processing (arbitration) generated by multiple devices simultaneously transmitting data in each communication line 71 to communication line 75. Server device 3 can make any conditional determination on the calculated characteristic values.
[0105] Having obtained a positive verification result through simulation using the newly created route mapping, server device 3 sends the new route mapping to gateway 11 of vehicle 1. Gateway 11, receiving the new route mapping from server device 3, updates route mapping 22b by overwriting the previous route mapping 22b with the new route mapping.
[0106] In order to notify the server device 3 of the updated route mapping 22b, the gateway 11, having updated the route mapping 22b, sends information such as the updated route mapping 22b and the network structure of vehicle 1. The information sent by the gateway 11 is received by the server device 3 via the communication line 74 and the external communication device 54. Upon receiving the information, the server device 3 stores the received information in the vehicle DB32c, for example, in correspondence with information such as the ID of vehicle 1. The vehicle DB32c of the server device 3 stores information such as the network structure of vehicle 1, the types of devices installed in vehicle 1, and the versions of the programs installed on each device. Based on the information received from the gateway 11, the server device 3 determines whether one or more devices installed in vehicle 1 require program updates (or installations, etc.). If an update is required, the server device 3 reads the update program from the on-board device DB32b and sends it to vehicle 1. The update program sent by the server device 3 is received by the gateway 11 via the external communication device 54 and the communication line 74 of vehicle 1. Gateway 11 sends the update program received from server device 3 to the device that needs the program to update the program.
[0107] In addition, although Figure 4The illustration is omitted, but if a negative verification result is obtained through simulation using the newly created route mapping, the server device 3 may perform further simulation to determine the data to be simplified for the relay. Regarding the data to be simplified, the server device 3 sets the "simplification" setting of the route mapping to "yes" and sends the route mapping to the gateway 11. Alternatively, if a negative verification result is obtained, the server device 3 may, for example, not update the route mapping, but instead display a warning message on the instrument cluster ECU 51 of vehicle 1, prompting the user of vehicle 1 to remove the extended ECU 61, etc.
[0108] exist Figure 5 In the routing map illustrated below, a negative verification result is obtained through simulation. It is decided to simplify the two data points, "Water Temperature Anomaly" and "Sonar Data", which have large "ID" values (low priority). "Simplification" is set to "Yes".
[0109] Figure 6 This is a flowchart illustrating an example of the processing steps performed by the server device 3 in this embodiment. In the information processing system of this embodiment, when an extension ECU 61 is connected to the extension IF 53 of the vehicle 1, the gateway 11 of the integrated ECU 10 sends information such as the ID of the newly connected extension ECU 61 to the server device 3 to notify of the addition of the device. The information acquisition unit 31a of the processing unit 31 of the server device 3 in this embodiment determines whether the information such as the ID of the newly connected extension ECU 61 has been received from the gateway 11 of the vehicle 1 (step S1). If the information such as the ID of the extension ECU 61 has not been received from the gateway 11 (S1: No), the information acquisition unit 31a stands by until the information is received.
[0110] Upon receiving information such as the ID of the extended ECU 61 from the gateway 11 (S1: Yes), the routing mapping creation unit 31b of the processing unit 31 reads information related to the extended ECU 61 from the vehicle-mounted device DB32b based on the ID and other information obtained in step S1 (step S2). At this time, the routing mapping creation unit 31b can, for example, read from the vehicle-mounted device DB32b information such as the ID of the data sent by the extended ECU 61, the ID of the device that should receive the data, and the ID of the data required by the extended ECU 61. In addition, the routing mapping creation unit 31b reads from the vehicle DB32c information related to the vehicle 1 that sent the ID and other information of the extended ECU 61 (step S3). At this time, the routing mapping creation unit 31b can read from the vehicle DB32c information such as the network structure of the vehicle 1 and the current routing mapping.
[0111] Based on the information read in steps S2 and S3, the route mapping creation unit 31b can determine which communication lines 71-75 should be relayed to for the data sent by the extended ECU 61, and which data from devices such as the instrument ECU 51 and brake ECU 52 already installed in vehicle 1 should be relayed to the communication line 73 connected to the extended ECU 61. Based on the determined relay destination, the route mapping creation unit 31b adds conditions for relaying data related to the newly added extended ECU 61 to the current route mapping, thereby creating a new route mapping (step S4).
[0112] Next, the verification processing unit 31c of the processing unit 31 constructs the network of vehicle 1 in the simulation environment based on the information read in steps S2 and S3, and performs a communication simulation according to the route mapping made in step S4, thereby verifying the correctness of the newly made route mapping (step S5).
[0113] The verification processing unit 31c determines whether a positive verification result has been obtained through the simulation verification in step S5 (step S6). If a positive verification result is obtained (S6: Yes), the route mapping sending unit 31d of the processing unit 31 sends the route mapping created in step S4 to the gateway 11 of vehicle 1 (step S8), and the processing ends. Conversely, if a positive verification result is not obtained (S6: No), that is, if a negative verification result is obtained, the verification processing unit 31c, for example, repeatedly performs simulations to determine the data to be simplified for the relay of gateway 11, and performs simplified data relay settings for gateway 11 (step S7). Afterwards, the route mapping sending unit 31d sends the route mapping created in step S4 to the gateway 11 of vehicle 1 (step S8), and the processing ends.
[0114] Summary
[0115] In the information processing system of this embodiment with the above structure, the server device 3 acquires information related to the extended ECU 61 that is detected as connected to the network of vehicle 1, and the gateway 11 of vehicle 1 creates a route map for determining the relay destination based on the acquired information. The server device 3 verifies the network communication based on the created route map through simulation, and sends the route map to the gateway 11 of vehicle 1 if a positive verification result is obtained. Thus, the information processing system can use the route map created by the server device 3 to update the route map 22b used by the gateway 11 of vehicle 1. By verifying the network communication based on the route map created by the server device 3 in advance through simulation, it is expected to suppress communication-related adverse conditions such as those caused by the addition of the extended ECU 61 to the network of vehicle 1.
[0116] Furthermore, in the information processing system of this embodiment, the server device 3 calculates communication characteristics such as the average load rate or the maximum delay time of transmitted and received data in each communication line 71 to 75 of the network when the extended ECU 61 is added. The server device 3 verifies whether these calculated values meet the specified conditions. As a result, the information processing system can be expected to suppress communication-related adverse conditions such as an increase in average load rate or maximum delay time due to the addition of the extended ECU 61.
[0117] Furthermore, in the information processing system of this embodiment, the server device 3 includes an on-board unit DB32b that stores information for updating routing maps related to on-board communication devices that can be connected to the network of the vehicle 1. The server device 3 can obtain information for updating routing maps from the on-board unit DB32b based on information such as the ID of the extended ECU 61 sent from the gateway 11 of the vehicle 1, and create a new routing map based on the obtained information. Therefore, it is expected that the information processing system can accommodate a wide variety of devices mounted on the vehicle 1.
[0118] Furthermore, in the information processing system according to this embodiment, when a negative verification result is obtained through simulation, the routing mapping is updated, and the data relay performed by the gateway 11 is simplified according to the data priority. Therefore, in situations where the network traffic within vehicle 1 may increase due to the addition of the extended ECU 61, the information processing system can expect to suppress the increase in traffic by simplifying the relay based on the gateway 11.
[0119] Furthermore, in this embodiment, when the network connection of vehicle 1 includes an extended ECU 61, a server device 3 located outside vehicle 1 performs processes such as route mapping and simulation-based verification. However, the server device 3 is not the only one capable of performing these processes. For example, diagnostic devices connected to vehicle 1 via communication cables, or information processing devices such as personal computers, smartphones, or tablets that can communicate with vehicle 1, can also perform these processes.
[0120] <Verification Processing>
[0121] Figure 7 This is a schematic diagram illustrating the general outline of the simulation performed by the information processing system of this embodiment. In the information processing system according to this embodiment, the verification processing unit 31c of the server device 3 located outside the vehicle 1 performs simulation-based verification.
[0122] The verification processing unit 31c of the server device 3 includes a model generation unit 131, a scene generation unit 132, and a scene execution unit 133. Furthermore, the verification processing unit 31c includes an onboard device DB32b, a vehicle DB32c, and a use case DB142 that store information required for simulation. In this embodiment, the verification processing unit 31c is a functional block virtually provided within the server device 3, while the model generation unit 131, scene generation unit 132, and scene execution unit 133 are provided within... Figure 2 The server device 3 shown illustrates the function block of the verification processing unit 31c of the processing unit 31. Additionally, the vehicle-mounted device DB32b and the vehicle DB32c... Figure 2 As shown, use case DB142 can be installed in the storage unit 32 of server device 3.
[0123] The model generation unit 131 performs the following processing: based on information about the vehicle 1 being verified, stored in the vehicle DB32c, and information about additional equipment for the vehicle 1, stored in the on-board unit DB32b, it generates a network model 145 for simulation. Here, the model generation unit 131 obtains information related to the structure of existing on-board equipment and communication lines mounted on the vehicle 1 from the vehicle DB32c, based on the vehicle ID, etc., obtained from the vehicle 1 being verified. Furthermore, the model generation unit 131 obtains information related to the structure of the additional equipment from the on-board unit DB32b, based on the information related to the additional equipment obtained from the vehicle 1 being verified. Based on this information obtained from the vehicle DB32c and the on-board unit DB32b, the model generation unit 131 generates a network model 145 of the existing network structure of the vehicle 1 being inspected, with the additional equipment connected to it.
[0124] The vehicle DB32c is a database that stores the structure of communication devices and communication lines installed in the vehicle 1. The vehicle DB32c stores the structure of multiple vehicles 1 that can be verified by the server device 3, for example, storing information corresponding to a unique vehicle ID assigned to each vehicle 1. The vehicle DB32c stores, for example, the structure of the integrated ECU 10, instrument ECU 51, brake ECU 52, expansion IF 53, external communication device 54, and communication lines 71 to 74. Figure 1 The structure of vehicle 1 is shown. The vehicle-mounted device DB32b is a database that stores structures related to vehicle-mounted equipment that can be added to vehicle 1. For example, it stores the structures of multiple vehicle-mounted devices, corresponding to their device names, device categories, or product numbers. The vehicle-mounted device DB32b, for example, in… Figure 1 In the case of vehicle 1 shown, information related to the structure of the extended ECU 61 connected to the extended IF 53 is stored.
[0125] The scene generation unit 132 performs processing to generate a simulated scene 146 based on information stored in the vehicle DB32c and the vehicle-mounted device DB32b, and information stored in the use case DB142. The use case DB142 is established, for example, with respect to the model of the vehicle 1, to store the various actions performed by the vehicle 1 and the corresponding events that occur in each of these actions in an action database.
[0126] The scene execution unit 133 performs a simulation based on the network model 145 generated by the model generation unit 131 and the scene 146 generated by the scene generation unit 132. For example, the scene execution unit 133 inputs the input data according to scene 146 into the network model 145 and obtains the output data output by the network model 145 based on the input data. The scene execution unit 133 manages the time in the simulation, repeatedly performing input and output of data to the network model 145 corresponding to the passage of time, thereby executing scene 146. Furthermore, the scene execution unit 133 obtains information such as the internal state of the network model 145 that changes with the execution of the scene. The scene execution unit 133 outputs this information obtained through the execution of scene 146 as an action log 147.
[0127] Based on the action log 147 output by the scenario execution unit 133, the verification device 13 calculates the load rate and latency of the network model 145, and determines whether the calculated values meet a predetermined benchmark. If the calculated values meet the benchmark, the verification device 13 determines that a positive verification result has been obtained; otherwise, it determines that a negative verification result has been obtained.
[0128] Figure 8 This is a schematic diagram illustrating an example of a network model 145 generated by the model generation unit 131. The illustrated network model 145 shows how... Figure 1 The illustrated network model 145 is part of a structural model of vehicle 1. The network model 145 includes, for example, a virtual gateway 11 that virtually reproduces vehicle 1, and virtual ECUs such as instrument ECU 51 and brake ECU 52. The network model 145 contains information about these virtual gateways and virtual ECUs, as well as the virtual communication lines connecting them.
[0129] In the virtual communication device of network model 145, information such as the number of communication ports, the type of communication ports, the amount of memory, and the CPU processing power are set. Additionally, the virtual communication device manages internal states such as power status, fault status, time elapsed, and CPU status.
[0130] In addition, each virtual communication device is programmed to perform actions within the simulation. Figure 8In network model 145, the operation of the virtual gateway is illustrated using function blocks. In this example, the virtual gateway, for instance, receives data sent from the virtual ECU and stores it in a receive buffer. The relay unit retrieves data from the receive buffer, determines the relay destination according to the routing map, stores the data in the relay buffer, and retrieves data from the relay buffer and stores it in the transmit buffer when the transmission timing arrives. The transmit unit sequentially transmits the data stored in the transmit buffer. The contents of the receive buffer, relay buffer, and transmit buffer of the illustrated virtual gateway are treated as internal state information of the virtual gateway in the simulation.
[0131] Figure 9 This is a schematic diagram illustrating one configuration example of use case DB142. In the information processing system of this embodiment, simulation-based verification can be performed on various vehicles 1, and use case DB142 stores information related to each use case, for example, by vehicle model 1. However, Figure 9 This shows information about a vehicle type extracted from information stored in use case DB142.
[0132] The use case DB142 involved in this embodiment is a database that stores information such as "use case", "prerequisites" and "events" for each vehicle model. "Use case" refers to an action that can be performed in vehicle 1, and is classified into categories such as "when adding a function", "when the battery is connected", "when unlocking the vehicle from the outside while it is parked", "when the engine is started", "when driving begins", and "when the engine stops and you get out of the vehicle and lock the door".
[0133] "Prerequisites" are information such as the state of vehicle 1 when performing the action of the "use case," and are stored as prerequisites for simulating that "use case." For example, the prerequisites for "adding a function" are "all existing devices: power on, initialization complete" and "adding a device: power off, initialization not complete." Similarly, the prerequisites for "connecting the battery" are "all existing devices: power off, initialization not complete."
[0134] "Events Occurred" refers to information that arranges multiple events contained in the actions of a "Use Case" in chronological order. For example, the "Events Occurred during Feature Addition" could include events such as "Add Device: Power On," "Add Device: Initialization Start," "Add Device: Initialization Complete," "All Existing Devices: Periodic Sending Start," and "Add Device: Device Registration Sequence Start." Similarly, the "Events Occurred during Battery Connection" could include events such as "All Existing Devices: Power On," "All Existing Devices: Initialization Start," "All Existing Devices: Initialization Complete," and "All Existing Devices: Periodic Sending Start."
[0135] The scene generation unit 132 of this embodiment generates a scene for simulating all "use cases" registered in the use case DB142 for the vehicle 1 of the verification object. For example, the scene generation unit 132 can generate, for a "use case", commands to set the internal state of the network model 145 in a manner that satisfies "preconditions", and time-series input data for the network model 145 stored in "event occurrences" to cause each event to occur, as the scene. In addition, the scene generation unit 132 can generate input data for events based on the network stored in the vehicle DB32c and the vehicle-mounted device DB32b, as well as the structure of each device.
[0136] Figure 10 This is a schematic diagram illustrating an example of scenario 146. The scenario 146 generated by the scenario generation unit 132 in this embodiment establishes corresponding information such as "time", "event type", "sending source", "sending destination", "ID" and "data length" as one step, and arranges the information of multiple steps in a time sequence.
[0137] In scenario 146, the "moment" refers to the simulated moment managed by the scenario execution unit 133, and the event that performs this step at the corresponding simulated moment. The "event category" is the type of event performed in this step; for example, various event categories such as "CAN transmission" or "user interrupt" can be set. The "transmission source" can be set to the ID of the device transmitting data to the communication line during communication. The "transmission destination" can be set to the ID of the device receiving data during communication. "ID" is an ID appended to the transmitted and received data; in the case of CAN communication, CAN-ID can be used. "Data length" is the length of the transmitted and received data; for example, a value in units such as bytes can be set.
[0138] The scene execution unit 133 manages the time in the simulation and the status of each device in the network, and performs the simulation by executing the events set in the scene 146 generated by the scene generation unit 132 step by step. Based on the information from one step of scene 146, the scene execution unit 133 generates input data for the network model 145 generated by the model generation unit 131. The scene execution unit 133 inputs the generated data into the network model 145 and correspondingly obtains the output data of the network model 145. Furthermore, the scene execution unit 133 obtains the internal state of the network model 145 at this time. The scene execution unit 133 stores the obtained output data and internal state information as an action log 147.
[0139] Figure 11 and Figure 12 This is a diagram illustrating an example of action log 147. Additionally, Figure 11 Action log 147 represents actions related to the communication bus included in network model 145. Figure 12 Action logs 147 related to communication devices included in network model 145 are represented. Furthermore, in this embodiment, action logs 147 related to the communication bus and action logs 147 related to the communication devices are generated separately, but this is not a limitation; the action logs 147 for both the communication bus and the communication devices can also be combined into one.
[0140] In the action log related to the communication bus, information such as "time," "communication bus," "action," and "ID" are stored accordingly. "Time" refers to the simulated time, corresponding to the "time" in scenario 146. "Communication bus" allows setting the ID of the communication bus included in network model 145. "Action" stores information such as "start" or "end" as the action status of the communication bus. "ID" is an ID attached to the data transmitted and received on the communication line.
[0141] The action log related to the communication device stores information such as "time", "communication device", "action", and "ID". "Time" refers to the simulated time, corresponding to the "time" in scenario 146. "Communication device" allows setting the ID of the communication devices included in network model 145. "Action" stores information such as "send" or "receive" as the action state of the communication device. "ID" is an ID appended to the data sent and received by the communication device.
[0142] In this embodiment, the scenario 146 generated by the scenario generation unit 132 may include, for example, information for simulating all use cases stored in the use case DB 142. The scenario execution unit 133 executes all events contained in the scenario 146 to simulate all use cases for the network model 145. The action log 147 output by the scenario execution unit 133 may include, for all steps contained in the scenario 146, information such as the output data of the network model 145 or the internal state of the device contained in the network model 145.
[0143] The verification processing unit 31c calculates the network load rate or communication latency based on the action log 147 obtained as a result of the simulation. For example, the verification processing unit 31c can calculate the ratio of the time for data transmission and reception on each communication bus included in the network model 145 to the total simulation time, and take the highest ratio or the average of multiple ratios among all communication buses as the network load rate. In addition, for example, the verification processing unit 31c can calculate the time (delay time) from the time the data is sent by the sending source to the time the data is received by the sending destination for all data transmitted and received in the simulation, and take the maximum value or average of multiple delay times calculated for all data as the network communication latency.
[0144] The verification processing unit 31c determines whether the simulation-based verification result is positive or negative by judging whether the calculated load rate or communication delay meets a predetermined benchmark. For example, the verification processing unit 31c determines a positive result if the load rate is below 70%, and a negative result if the load rate exceeds 70%. Similarly, the verification processing unit 31c determines a positive result if the communication delay is below 3 milliseconds, and a negative result if the communication delay exceeds 3 milliseconds. Furthermore, the value calculated by the verification processing unit 31c based on the action log 147 can be a value other than the load rate or communication delay. The aforementioned 70% load rate and 3 millisecond communication delay thresholds are examples, and the system is not limited to these; designers or managers of the information processing system in this embodiment can pre-determine appropriate values.
[0145] Figure 13This is a flowchart illustrating an example of the simulation verification process performed by the server device 3 in this embodiment. The model generation unit 131 of the verification processing unit 31c of the server device 3 in this embodiment obtains information related to the additional device stored in the vehicle-mounted device DB32b based on identification information of the additional device obtained from the vehicle 1 (step S31). Furthermore, the model generation unit 131 obtains information related to the vehicle 1 stored in the vehicle DB141 based on vehicle 1 identification information obtained from the vehicle 1, such as information related to devices and communication lines constituting the network of the vehicle 1 (step S32). Based on the information obtained in steps S31 and S32, the model generation unit 131 generates a network model 145 for simulation verification (step S33).
[0146] Furthermore, the scenario generation unit 132 of the verification processing unit 31c obtains the use cases stored in the use case DB142 (step S34). Based on the information obtained in steps S31 and S32 and the use cases obtained in step S34, the scenario generation unit 132 generates a scenario 146 for simulation verification (step S35).
[0147] The scene execution unit 133 of the verification processing unit 31c obtains information from the scene 146 generated in step S35 (step S36). The scene execution unit 133 inputs the input data generated based on the information obtained in step S36 into the network model 145 generated in step S33 (step S37). Based on the data input in step S37, the scene execution unit 133 obtains the data output by the network model 145 and information such as the internal state of the network model 145 at this time (step S38). The scene execution unit 133 records the information obtained in step S38 as an action log 147 (step S39).
[0148] The scene execution unit 133 determines whether the processing has ended for all steps contained in scene 146 (step S40). If the processing has not ended for all steps (S40: no), the scene execution unit 133 returns the processing to step S36, obtains information related to the next step from scene 146, and repeats the same processing.
[0149] If all steps for scenario 146 have been completed (S40: Yes), the verification processing unit 31c calculates the network load rate and communication latency based on the action log 147 recorded in step S39 (step S41). The verification processing unit 31c compares the load rate and communication latency values calculated in step S41 with a predetermined benchmark (step S42). Based on the comparison result of step S42, the verification processing unit 31c outputs a positive or negative verification result (step S43) and ends the processing.
[0150] Thus, in the information processing system of this embodiment, the verification processing unit 31c of the server device 3 verifies the network communication of the vehicle 1 through simulation, and updates the route mapping if a positive verification result is obtained. Therefore, by verifying the communication in detail when the extended ECU 61 is added to the network of the vehicle 1 through simulation, the information processing system can be expected to suppress communication-related adverse conditions.
[0151] Furthermore, in this embodiment, information related to the structure of the network of vehicle 1 is stored in vehicle DB 141, but it is not limited to this; the generated network model 145 may also be stored in vehicle DB 141. The verification device 13 can update the network model 145 stored in vehicle DB 141 by adding models of newly added devices, and perform simulation-based verification using the updated network model 145.
[0152] The information processing device includes a computer configured with a microprocessor, ROM, and RAM. The microprocessor and other arithmetic processing units can read and execute data from storage units such as ROM and RAM. Figure 4 and Figure 6 The computer program shown includes part or all of the steps of a timing diagram or flowchart. These multiple computer programs can be installed from external server devices, etc. Furthermore, these computer programs are distributed in a state of being stored on recording media such as CD-ROM, DVD-ROM, and semiconductor memory.
[0153] 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.
[0154] <Postscript>
[0155] (Postscript 1)
[0156] An information processing system, comprising: A vehicle-mounted relay device, comprising a relay unit that relays data transmission and reception between multiple communication lines constituting a network within a vehicle; and An information processing apparatus includes: an acquisition unit disposed outside the vehicle, which acquires information related to an in-vehicle communication device that detects a connection relative to the network; a generation unit, which, based on the acquired information, generates a route mapping for an in-vehicle relay device mounted in the vehicle to determine the relay destination of data transmitted and received in the network; a verification unit, which verifies the communication of the network based on the generated route mapping by simulation; and a transmission unit, which, upon obtaining a positive verification result, transmits the route mapping to the in-vehicle relay device.
[0157] [Explanation of reference numerals in the attached figures]
[0158] 1. Vehicle (Information Processing System)
[0159] 3. Server equipment (vehicle-mounted information processing device, computer)
[0160] 10 Integrated ECU
[0161] 11 Gateways (Vehicle-mounted Repeater Devices)
[0162] 12 ADAS-ECU
[0163] 21 Processing Department
[0164] 21a Gateway Processing Department
[0165] 21b ADAS Processing Department
[0166] 22 Storage Department
[0167] 22a Program (Computer Program)
[0168] 22b route mapping
[0169] 23 Ministry of Communications
[0170] 31 Processing Department
[0171] 31a Information Acquisition Department (Acquisition Department)
[0172] 31b Routing Mapping Creation Unit (Creation Unit)
[0173] 31c Verification Processing Department (Verification Department)
[0174] 31d routing mapping sending unit (sending unit)
[0175] 32 Storage Unit
[0176] 32a Program (Computer Program)
[0177] 32b vehicle-mounted device DB (database)
[0178] 32c Vehicle DB (Structure Database)
[0179] 33 Ministry of Communications
[0180] 51 Instrument ECU
[0181] 52 Brake ECU
[0182] 53 Extended use of IF
[0183] 54 External communication devices
[0184] 61. Extended ECU (Vehicle Communication Device)
[0185] 62 sensors
[0186] 71~75 communication lines
[0187] 98, 99 recording media
[0188] Model Generation Department 131
[0189] Scene Generation Department 132
[0190] 133 Scenario Execution Department
[0191] 142 Use Cases DB (Action Database)
[0192] 145 network model
[0193] 146 scenes
[0194] 147 Action Log.
Claims
1. An information processing device, comprising: The acquisition unit acquires information related to the vehicle communication device that is connected to the network detected within the vehicle. The manufacturing unit, based on the acquired information, manufactures a route mapping for the on-board relay device mounted on the vehicle to determine the relay destination of data transmitted and received in the network; The verification unit verifies the communication of the network based on the generated routing map through simulation; and Upon receiving a positive verification result, the sending unit transmits the route mapping to the vehicle-mounted relay device.
2. The information processing apparatus according to claim 1, wherein, The verification unit uses the simulation to verify whether the load rate or communication latency in the network meets the specified conditions when the vehicle communication device is added.
3. The information processing apparatus according to claim 1, wherein, The information processing device includes a database that stores update information on routing maps related to in-vehicle communication devices that can connect to the network within the vehicle. The generating unit generates the route mapping based on the update information read from the database based on the information obtained by the acquiring unit.
4. The information processing apparatus according to claim 1, wherein, If the transmitting unit receives a negative verification result, it sends a route mapping and causes the vehicle-mounted relay device to implement relay simplification according to the data priority.
5. The information processing apparatus according to claim 1, wherein, have: The model generation unit generates a model of the network; The scene generation unit generates the simulated scene; as well as The scene execution unit performs data input and output for the model based on the scene. The verification unit performs verification based on the data relative to the model's input and output, as well as the model's internal state.
6. The information processing apparatus according to claim 5, wherein, The information processing device includes a configuration database that stores configuration information of the vehicle-mounted communication devices and communication lines installed in the vehicle. The model generation unit generates the model based on the configuration information stored in the configuration database and the configuration information of the vehicle communication device connected to the network.
7. The information processing apparatus according to claim 5, wherein, The information processing device includes an action database that stores the vehicle's actions and the corresponding events that occur during each action. The scene generation unit generates a scene that defines events occurring in a time sequence, based on information stored in the action database and configuration information of the vehicle communication device connected to the network.
8. The information processing apparatus according to claim 5, wherein, The scenario is defined by events that occur in the network in a time sequence. The scene execution unit generates data to be input to the model based on events in a time series defined in the scene. The scene execution unit inputs the generated data into the model. The scene execution unit obtains the data output by the model based on the input data, as well as the internal state of the model when the data is output. The scenario execution unit stores the acquired data and the internal state.
9. The information processing apparatus according to claim 8, wherein, The verification unit calculates the load rate or communication latency related to the network communication based on the data stored in the scenario execution unit and the internal state. The verification unit determines whether the simulation result is positive based on whether the calculated load rate or communication delay meets the specified benchmark.
10. An information processing method, The information processing device acquires information related to the onboard communication device connected to the network within the vehicle. Based on the acquired information, the information processing device generates a route mapping for the onboard relay device mounted in the vehicle to determine the relay destination of data transmitted and received in the network. The information processing device verifies the communication of the network based on the generated routing map through simulation. If the information processing device receives a positive verification result, it will send the route mapping to the vehicle relay device.
11. A computer program that causes a computer to perform the following processing: Obtain information related to the onboard communication device that is connected to the network within the vehicle. Based on the obtained information, a route mapping is created for the onboard relay device mounted in the vehicle to determine the relay destination of data transmitted and received in the network. The communication of the network based on the created routing map is verified through simulation. If a positive verification result is obtained, the route mapping is sent to the vehicle relay device.
Citation Information
Patent Citations
Information management system, on-vehicle device, server, and routing table changing method
JP2018152758A