Method for testing at least one control device function of at least one control device

11377115 · 2022-07-05

Assignee

Inventors

Cpc classification

International classification

Abstract

A simulator and a method for testing a control device function of a control device of a vehicle. The vehicle includes various environmental sensors, such as radar, a camera, and a radio receiver, which serve as inputs to the control device function of the control device. A corresponding simulation utilizing a vehicle model sensor models, and an environmental model is executed in a distributed fashion via a plurality of computing units and a memory of a simulator. The simulation utilizing the vehicle model, the sensor models, and the environmental model provides inputs to the control device function. Moreover, the simulation utilizing these models is started synchronously on the computing units, wherein data exchange occurs amongst the memory and the multiple computing units.

Claims

1. A method for testing at least one control device function of at least one control device of at least one first vehicle by means of a simulator having a plurality of computing units, the first vehicle having at least one environmental sensor, the method comprising: a multiplicity of environmental sensors of the first vehicle and/or of at least one further vehicle supplying the at least one control device and/or further control devices with sensor data of the environmental sensors, the at least one control device function processing at least some of the sensor data as input variables, and the first vehicle and, if present, the further vehicles being located in surroundings which represent a traffic situation, the first vehicle being simulated by means of a first vehicle model, and, if present, the further vehicles being simulated by means of further vehicle models the environmental sensors being simulated by means of sensor models, and the surroundings being simulated by means of an environmental model with the computing units of the simulator, the models being distributed alone or in groups between at least two computing units, each with a directly accessible memory, wherein the environmental model comprising static environmental data and dynamic environmental data, the sensor models having, as input variables, the static environmental data and/or dynamic environmental data, wherein, the sensor models are distributed between at least two computing units, each with their directly accessible memories, wherein there is identification of the computing units which have sensor models which have static environmental data as input variables, wherein the static environmental data is stored in the directly accessible memories of the identified computing units, wherein, after the storage of the static environmental data has been completed the simulation of the models on the computing units with their respectively directly accessible memories is started synchronously, wherein the sensor models which have the static environmental data as input variables use the static environmental data of the identified computing unit which has its directly accessible memory and on which the respective sensor models are themselves located.

2. The method of claim 1, wherein before the start of the simulation the static environmental data is transformed from a raw format into a data structure format.

3. The method of claim 2, wherein before storage in the directly accessible memories of the identified computing units the static environmental data is transformed from a raw format into a data structure format on a host computer.

4. The method of claim 3, wherein the static environmental data which is transformed into a data structure format on the host computer is transmitted into the memory of a computing unit, in particular into the directly accessible memory of an identified computing unit, and transmitted from there into the directly accessible memory of the further identified computing units and is stored there.

5. The method of claim 2, wherein after storage in the directly accessible memory of an identified computing unit or in the directly accessible memories of a plurality of identified computing units the static environmental data is transformed from a raw format into a data structure format by the respective computing unit.

6. The method of claim 5, wherein the static environmental data in the directly accessible memory of a computing unit, in particular in the directly accessible memory of an identified computing unit, is transformed from a raw format into a data structure format by the computing unit, and is transmitted from the computing unit to the identified computing units and stored there.

7. The method of claim 1, wherein the sensor models are distributed between the fewest possible computing units of the simulator.

8. The method of claim 1, wherein a vehicle model and the sensor models which are associated with the vehicle model are stored on a computing unit and the directly accessible memory thereof, in particular each vehicle model is stored with its associated sensor models on a separate computing unit.

9. The method of claim 1, wherein the control device function which is to be tested is implemented on a real control device, and the real control device is connected to the simulator via its control device I/O interface to a corresponding simulator I/O interface, and the simulated sensor data of the sensor models is transmitted to the real control device.

10. The method of claim 1, wherein the control device function which is to be tested is implemented on a virtual control device, and the virtual control device receives the simulated sensor data of the sensor models via its virtual control device I/O interface within the scope of the simulation.

11. The method of claim 1, wherein the first vehicle model and, if present, the further vehicle models, the sensor models and the environmental model are distributed, according to a first configuration, between the computing units and their directly accessible memories, wherein during a first simulation of the models on the computing units the utilization rate of the computing units is determined, and wherein on the basis of the determined utilization rates of the computing units the models are redistributed to a further configuration, so that there is a resulting more uniform utilization rate of the computing units during the simulation of the models.

12. A simulator which is configured to carry out the method of claim 1.

Description

DESCRIPTION OF THE DRAWINGS

(1) In particular, there are now a large number of possible ways of further developing and refining the method according to the present disclosure. Reference is made in this respect to the patent claims which are dependent on patent claim 1, and to the description of preferred exemplary embodiments in conjunction with the drawings. In the drawings:

(2) FIG. 1 shows a schematic view of vehicles with environmental sensors in surroundings representing a traffic situation,

(3) FIG. 2 shows a schematic view of a simulator for carrying out the method according to the present disclosure with sensor models which require static environmental data, on various computing units,

(4) FIG. 3 shows a schematic view of a simulator for carrying out the method according to the present disclosure with a plurality of vehicle models,

(5) FIG. 4 shows a simulator with distribution, centered on vehicle models, between various computing units,

(6) FIG. 5 shows a simulator according to FIG. 2 with the conversion of static environmental data from a raw format into a data structure format on a host computer,

(7) FIG. 6 shows the exemplary embodiment according to FIG. 5 with an alternative distribution of the environmental data in a data structure format between the computing units,

(8) FIG. 7 shows a simulator with various computing units and an alternative conversion of static environmental data from a raw format into a data structure format,

(9) FIG. 8 shows a simulator with an alternative conversion and distribution of static environmental data between the computing units, and

(10) FIG. 9 shows a simulator with a connected real control device for testing a control device functionality.

DETAILED DESCRIPTION

(11) FIGS. 2 to 9 respectively illustrate a method 1 for testing at least one control device function f.sub.ECU of at least one control device 2 of at least a first vehicle 3a by means of a simulator 5 having a plurality of computing units 4, 4a, 4b, 4c.

(12) FIG. 1 shows a schematic view of the conditions and peripheral circumstances which are to be modeled by means of a simulation of traffic situations within a simulator 5. Firstly, at the bottom of the diagram a first vehicle 3a with a control device 2 can be seen in a schematic form. A multiplicity of environmental sensors 6, specifically radar sensors 6a, 6b, a camera 6c oriented in the direction of travel and a radio receiver 6d, which serves, for example, to receive position data and movement data of further vehicles 3b, are connected to the control device 2. The surroundings 7 comprises a traffic situation with roads 8, buildings and structural traffic control installations 9, road signs 10 and illuminated signs 11.

(13) While the vehicles 3a, 3b move through the surroundings 7, the environmental sensors 6 supply a multiplicity of sensor data items with which the control device 2 is supplied. The connections between the environmental sensors 6 and the control device 2 are symbolized here as signal lines—that is to say as fixed connections—but they can also be radio links in so far as this is technically possible and permissible.

(14) The control device function f.sub.ECU which is implemented in the control device 2 processes at least some of the sensor data as input variables. It is of interest whether the control device function f.sub.ECU which is implemented in the control device 2 functions as desired—that is to say according to the specifications. In order to be able to discover this within the framework of a simulation on the simulator 5, the components which are involved are modeled functionally by means of mathematical models and are calculated on the computing units 4 of the simulator 5.

(15) The calculation of the traffic situation according to FIG. 1, which is explained by way of example, using the simulator 5 will now be described with reference to FIG. 2. Firstly, the first vehicle 3a is modeled by means of a first vehicle model 12a. In this case, the vehicle model 12a also comprises a model (not expressly illustrated here) of the control device 2 and also the control device function f.sub.ECU which is implemented there and is of interest. If further vehicles 3b are involved in the simulation, they are described in the form of further vehicle models 12b (see FIG. 3). The environmental sensors 6, 6a, 6b are modeled by means of sensor models 13, 13a, 13b, and the surroundings 7 are described by means of an environmental model 14.

(16) The environmental model 14 comprises static environmental data 14a and dynamic environmental data 14b. The static environmental data 14a describes static, immobile objects or else the static invariable dimensions of moving objects, but not their variable position data; this therefore comprises road profiles, structural objects, objects for controlling the traffic, road signs, dimensions of vehicles. The dynamic environmental data 14b comprises, for example, the variable position data of vehicles 3, other road users such as pedestrians or cyclists or road signs which vary over time, such as, for example, light signal systems 11.

(17) Which of the objects of the environmental model are to be featured as static ones and which as dynamic data and which data items can be converted into a suitable data structure format before the simulation is stored according to the present disclosure for the modeling surroundings—e.g. by means of additional information on the selectable objects. This applies correspondingly to imported data and objects which are produced therefrom.

(18) As is readily apparent, the various models 12, 13 and 14 are distributed between the various computing units 4a, 4b, 4c of the simulator 5. The simulator 5 is a multiprocessor system here.

(19) The computing units 4 of the simulator 5 can exchange information with one another, which is indicated by the double arrows in all the figures. The computing units 4 each also comprise a respectively directly accessible memory, which is not illustrated separately here, nor is there any illustration of microprocessors or other computing devices within the scope of the computing units 4. A memory which can be accessed directly by the computing units is meant to refer, for example to a directly addressable main memory which can be accessed within a few cycles, or else the random access memory (RAM) of a computing core. The access to the directly accessible memory by the computing units 4 is accordingly extremely rapid, at any rate extremely rapid compared to access to a nondirectly accessible memory, that is to say, for example, to the memory of another computing unit which can only be accessed via the external data channel (double arrows between the computing units 4a, 4b, 4c). In the general case, the sensor models 13 receive the static environmental data 14a and/or dynamic environmental data 14b as input variables.

(20) Within the scope of the present disclosure it has been recognized that the exchange of data between the computing units 4a, 4b, 4c within the scope of the simulation on the simulator 5 has a decisive significance, and the exchange of data can determine whether a simulation can be carried out very rapidly or rather slowly. In order to achieve the highest possible simulation speed during a calculation on a simulator 5 having a plurality of computing units 4, there is provision in all the methods 1 according to FIGS. 2 to 9 that the sensor models 13, 13a, 13b are distributed between at least two computing units 4, 4a, 4b, 4c with their respectively directly accessible memories.

(21) In addition, there is provision that there is identification of the computing units 4b, 4c which have sensor models 13a, 13b which have static environmental data 14a as input variables. For the purpose of the simulation, the static environmental data 14a is then stored in the directly accessible memories of the identified computing units 4b, 4c. After storage of the static environmental data 14a has been concluded, the simulation of the models 12, 13, 14 on the computing units 4 with their respectively directly accessible memories is started synchronously. As a result of this distribution of the models it is possible that the sensor models 13, 13a, 13b which require static environmental data 14a as input variables which use the static environmental data 14a of that identified computing unit 4b, 4c on which the respective sensor models 13a, 13b are themselves located. The sensor models 13a, 13b can therefore benefit from the rapid access to the directly accessible memory. Accordingly, transmission of the static environmental data 14a between the computing units 4, 4a, 4b, 4c of the simulator 5 during the simulation is neither needed nor performed. As a result, a large speed effect is achieved since the static environmental data 14a is of considerable size compared to the dynamic environmental data 14b. As a result, the desired simulation is in many cases only made possible, for example, if the simulation is based on speed requirements, in the case of classic HIL simulations this is the requirement for a real time simulation.

(22) Taking into account this general teaching with respect to the distribution of, in particular, the sensor models 13a, 13b which have static environmental data 14a as input variables, various types of model distribution with different advantages are conceivable. The exemplary embodiment according to FIG. 2 has, for example, the effect that the sensor models 13, 13b are distributed between the computing units 4b, 4c of the simulator 5 in such a way that the affected computing units 4b, 4c calculate exclusively the sensor models 13a, 13b.

(23) FIG. 3 illustrates that the simulation on the simulator 5 can also comprise a plurality of vehicle models 12a, 12b. In the illustrated exemplary embodiment, each further vehicle model 12b is calculated on a further computing unit 4c (symbolized by the blocks which are fanned out one behind the other). Such sensor models 13a which require static environmental data 14a as input variables are calculated on other computing units 4b (also illustrated as blocks which are fanned out behind one another. In the illustrated exemplary embodiment, the vehicle models 12 and the sensor models 13 are calculated independently of one another on different computing units 4. If the computing power of the computing unit 4b permitted, a plurality of sensor models 13 could also be calculated on a single computing unit 4b, as a result of which the use of computing units 4b could be reduced. The same applies, of course, correspondingly to the calculation of vehicle models 12; here it is also possible to calculate a plurality of vehicle models 12 on a single computing unit 4 if the computing power of the affected computing unit 4 permits it.

(24) FIG. 4 illustrates a different possible variant of the distribution of models 12, 13, 14 between different computing units 4. The distribution is based on the idea that a vehicle model 12a, 12b and the sensor models 13a, 13b which are associated with the vehicle model 12a, 12b are stored on a computing unit 4a, 4b and the directly accessible memory thereof. Each vehicle model 12a, 12b is even stored with its associated sensor models 13a, 13b on a separate computing unit 4a, 4b in the present case. It is advantageous to maintain the logical relationship between the various models, for example, for the sake of easy exchangeability of a vehicle model 12, since here in each case only a single computing unit 4 has to be processed when a vehicle model 12 is exchanged. This increases the modulatory and the maintenance capability of the simulation and of the simulation structure.

(25) FIGS. 5 to 8 illustrate different variants and refinements of the idea that before the start of the simulation the static environmental data 14a is transformed from a raw format E.sub.stat,R into a data structure format E.sub.stat,S. The raw format E.sub.stat,R of the static environmental data 14a is a general description of the static environmental data which is not intended for a specific simulation environment or for a specific hardware. In order to make this data accessible and interpretable at the computing units 4 of the simulator 5, said data must be transformed into the data structure format E.sub.stat,S. This transmission process is comparatively time-consuming and is therefore exported from the simulation sequence and made to precede the execution of the simulation. This makes possible a considerable saving in time, in particular if simulations are carried out again on the same model basis. Before the start of the simulation at the computing units 4, it is checked within the scope of the synchronization, for example, whether a processor-specific flag which indicates that the static environmental data is present in the data structure format E.sub.stat,S is set at all the identified computing units 4b, 4c.

(26) In the exemplary embodiment according to FIG. 5 there is provision that before the storage in the directly accessible memories of the identified computing units 4b, 4c the static environmental data 14a is transformed from a raw format E.sub.stat,R into a data structure format E.sub.stat,S on a host computer 15. The transformed static environmental data 14a is then transmitted from the host computer 15 to the individual computing units 4a, 4b, 4c. In addition to the identified computing unit 4b, 4c, the computing unit 4a also receives the static environmental data 14a, since the entire environmental model 14 is calculated on it. For the transformation, the host computer 15 must have precise knowledge of the software and hardware conditions at the computing units 4. If the simulator 5 had, for example, a further computing unit on which just one vehicle model were calculated, the static environmental data would not be transmitted to this computing unit.

(27) The exemplary embodiment according to FIG. 6 shows a variant of the distribution scheme of the static environmental data 14a according to FIG. 5. Here, the static environmental data 14a which is transformed into a data structure format E.sub.stat,S at the host computer 15 is transmitted into the memory of a computing unit 4a and transmitted from there into the directly accessible memory of the further identified computing units 4b, 4c and stored there. Otherwise, the conditions correspond to those in FIG. 5.

(28) Another strategy is pursued by the method according to FIG. 7. Here, the static environmental data 14a is firstly stored in the raw format E.sub.stat,R in the directly accessible memory of an identified computing unit 4 or in the directly accessible memories of a plurality of identified computing units 4a, 4b, 4c. There, the static environmental data 14a which is present in the raw format E.sub.stat,R is then transformed into a data structure format E.sub.stat,S by the respective computing unit 4, 4a, 4b, 4c. This procedure is suitable, in particular, in the case of heterogeneous hardware with different computing units 4, 4a, 4b, 4c. Particularities which are dependent on the hardware of the respective computing unit 4 are taken into account here in a quasi automatic fashion.

(29) The refinement according to FIG. 8 is suitable, in particular, when the computing units 4, 4a, 4b, 4c are comparable, with the result that the transformation of the static environmental data 14a can be performed representatively only on one computing unit 4a, wherein the transformation result in the form of the static environmental data 14a can then also be used in the data structure format E.sub.stat,S for the other computing units 4b, 4c. There is therefore provision that the static environmental data 14a can be transformed by the computing unit 4a from a raw format E.sub.stat,R into a data structure format E.sub.stat,S in the directly accessible memory of one computing unit 4a, and can be transmitted from this computing unit 4a to the identified computing units 4b, 4c and stored there.

(30) In FIGS. 2 to 8, the control device has always appeared as a component of the vehicle model 12a. However, in the exemplary embodiment according to FIG. 9 the control device 2 is present in a real form, that is to say not in the form of a virtual control device. The control device function f.sub.ECU is therefore implemented in the control device 2. In order to be able to test the control device function f.sub.ECU, the corresponding input variables have to be made available via corresponding interfaces. The procedure here is consequently that the control device function f.sub.ECU which is to be tested is implemented at the real control device 2, and the real control device 2 is connected to the simulator 5 via its control device I/O interface 16 to a corresponding simulator I/O interface 17, and the simulated sensor data of the sensor models 13 is transmitted to the real control device 2. Conversely, the simulator 5 can also receive signals which are calculated on the control device 2 and output by the control device 2 and feed them to the further simulation.

LIST OF REFERENCE SYMBOLS

(31) 1 Method 2 Control device 3 Vehicles 3a Vehicle 3b Vehicle 4 Computing units 4a Computing unit 4b Computing unit 4c Computing unit 5 Simulator 6 Environmental sensors 6a Environmental sensor 6b Environmental sensor 6c Environmental sensor 6d Environmental sensor 7 Surroundings 8 Road 9 Building 10 Road signs 11 Illuminated signs 12 Vehicle models 12a Vehicle model 12b Vehicle model 13 Sensor models 13a Sensor model 13b Sensor model 14 Environmental model 14a Static environmental data 14b Dynamic environmental data 15 Host computer 16 Control device I/O interface 17 Simulator I/O interface E.sub.stat,R Raw format E.sub.stat,S Data structure format f.sub.ECU Control device function