Systems, devices, and methods for testing autonomous vehicles
By running multiple simulation instances in real time on autonomous vehicles and mapping data to interfaces using communication modules and processing units, the complexity and time-consuming problems of autonomous vehicles testing are solved, efficient and accurate component testing is achieved, and the coverage of security verification is improved.
Patent Information
- Application Number
- CN202080068501.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Priority Date
- 2019-10-02
- Filing Date
- 2020-09-24
- Publication Date
- 2025-08-12
- Estimated Expiration
- 2040-09-24
AI Technical Summary
The process of testing control units, sensing units and actuation units of autonomous vehicles is complex and time-consuming, especially when safety is verified multiple times, and the prior art is difficult to perform efficiently.
Parallel testing of multiple components is achieved by running multiple simulation instances in real time on an autonomous vehicle or its components, using communication modules and processing units to map simulated sensor data and vehicle dynamics data to the interface.
It realizes efficient and precise testing of multiple components of autonomous vehicles, reduces testing time, and improves the coverage of testing efficiency and safety verification.
Smart Images

Figure CN114556237B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to autonomous vehicles capable of movement on land, water and air. In particular, the present invention relates to testing the operation of autonomous vehicles. Background Art
[0002] An autonomous vehicle includes multiple sensing and actuation units for controlling the operation of the autonomous vehicle. The autonomous vehicle also includes a control unit that interfaces with the sensing and actuation units to control and supervise the operation of the autonomous vehicle. The control unit is responsible for ensuring the safety of the autonomous vehicle and its surrounding environment. Therefore, the control unit includes multiple software modules that interact with each other to perform actions related to sensing, control, actuation, and safety.
[0003] To ensure smooth operation of the control unit, testing is required. However, testing the control unit can be time-consuming. Furthermore, the complexity of the test can increase when the operation of the sensing unit and the actuation unit needs to be verified.
[0004] One method may include using simulations to test the control unit, sensing unit, and actuation unit. Given the safety requirements associated with the operation of an autonomous vehicle, multiple simulations may be required to test the operation of the autonomous vehicle. Consequently, running multiple simulations on the control unit may also be time-consuming. Summary of the Invention
[0005] Autonomous vehicle testing can be streamlined by running simulations associated with multiple instances on multiple autonomous vehicles or their components in real time. Therefore, a first aspect of the present invention discloses an apparatus for testing multiple components of one or more autonomous vehicles. The apparatus comprises a communication module comprising a set of interfaces, preferably capable of simultaneously communicatively coupling to multiple components of at least one autonomous vehicle; and a processing unit communicatively coupled to the communication module and capable of mapping simulation instances to the interfaces of the communication module, wherein the simulation instances comprise simulated sensor data reflecting the behavior of the at least one autonomous vehicle.
[0006] As used herein, an autonomous vehicle is a vehicle that can sense its environment and navigate autonomously. An autonomous vehicle includes multiple components for sensing and navigation. These components include a sensing unit, an actuating unit, and a control unit. Depending on the type of autonomous vehicle, the component nomenclature may vary. For example, in the case of an autonomous aerial vehicle, the components include a sensory payload, a digital electronic speed controller, and a flight controller configured with flight stack control software. The autonomous vehicle may also include a programmable network interface that enables communication between the sensing unit, the actuating unit, and the control unit. Those skilled in the art will appreciate that other components may be included in an autonomous vehicle.
[0007] As used herein, a processing unit refers to a circuit configured to perform one or more logic functions. A processing unit may include a plurality of configurable logic blocks configured to perform logic functions.
[0008] Alternatively, the processing unit may include dedicated circuits for the logic functions.
[0009] As used herein, a simulation instance refers to simulated sensor data and vehicle dynamics data for a behavioral instance of an autonomous vehicle. A behavioral instance refers to a scenario and the behavior or response of an autonomous vehicle to that scenario at a given moment. A behavioral instance can be based on a change in the environment or in the autonomous vehicle itself. For example, a behavioral instance is the reduced reflectivity of a physics-based radar. In the case of an autonomous vehicle, the range of behavioral instances can be from 1 million to 10 million. A simulation instance will include sensor data of the radar indicating reduced reflectivity. In addition, a simulation instance includes how the actuator units in the autonomous vehicle will behave when the radar has reduced reflectivity. In another example, a behavioral instance is a change in the traffic conditions of the environment.
[0010] Simulation instances can be generated from a virtual model of the autonomous vehicle. The virtual model is a physics-based model of the environment and the autonomous vehicle, including a sensing unit, an actuation unit, and a control unit. The virtual model can include multiple behavior instances of the autonomous vehicle.
[0011] In an embodiment of the present invention, the control unit is configured to interface with other components in the autonomous vehicle. In such an embodiment, the test control unit effectively causes the sensing unit and the actuation unit to be tested. Therefore, the "device under test" in this embodiment may refer to the entire autonomous vehicle.
[0012] The communication module in the device can be coupled to multiple control units simultaneously. In one embodiment, each interface in the communication module can be coupled to a control unit. Therefore, the device can test multiple control units simultaneously. In one embodiment, the number of control units that can be coupled to the communication module depends on the bandwidth of the network interconnection between the simulation platform and the device. The network interconnection can be a high-bandwidth wired or wireless network.
[0013] In one embodiment, each interface in a set of interfaces includes a sensor interface and an actuator interface capable of coupling to a sensing unit and an actuating unit of an autonomous vehicle. The sensing unit and the actuating unit can be configured via the sensor interface and the actuator interface based on a simulation instance. The simulation instance includes sensor values and actuator values. This is referred to as simulated sensor data. In addition, the simulated sensor data can indicate acceleration, deceleration, chassis control parameters, propeller control parameters, wheel slip angle, and vehicle roll of at least one autonomous vehicle. This capability enables precise testing of control units and autonomous vehicles. For example, a simulation instance can be used to configure and record the friction coefficient and pothole locations of a road.
[0014] A processing unit of the device receives simulation instances from a simulation platform via a network interconnect. In one embodiment, multiple simulation instances are received simultaneously. When the processing unit maps the simulation instances to interfaces of a communication module, the control unit is able to receive the simulation instances. The control units are mapped based on unique identifiers associated with each of the control units. Based on the mapping, the processing unit transmits one or more simulation instances to corresponding control units. To facilitate the mapping, the processing unit is configured to transmit simulated sensor data from the mapped simulation instances to corresponding sensor interfaces in the communication module. Thus, the sensing unit is configured with the simulated sensor data.
[0015] The present invention facilitates testing multiple autonomous vehicles in parallel, particularly since multiple tests may be required to demonstrate the safety of an autonomous vehicle.
[0016] According to a second aspect of the present invention, a system for testing multiple autonomous vehicles is disclosed. The system includes a simulation platform configured to generate virtual models of the autonomous vehicles and their associated environments, wherein the virtual models include simulated sensor data indicating acceleration, deceleration, chassis control parameters, propeller control parameters, wheel slip angle, and vehicle roll of the autonomous vehicles. Furthermore, the system includes one or more devices as described above. These devices are communicatively coupled to the simulation platform and configured to test the autonomous vehicles using the virtual models.
[0017] In one embodiment, the system further comprises control units communicatively coupled to the devices, the control units being configured to control the sensing unit and the actuating unit of the autonomous vehicle, and wherein the simulation instances generated from the virtual model are mapped to the control units using at least one device.
[0018] According to a third aspect of the present invention, a method for testing multiple components of one or more autonomous vehicles is disclosed. The method includes receiving multiple simulation instances associated with the behavior of the autonomous vehicles, wherein the simulation instances include simulated sensor data reflecting the behavior of the at least one autonomous vehicle; mapping the simulation instances to multiple components; and testing the multiple components based on executing the simulation instances.
[0019] In one embodiment, mapping the simulation instances may include mapping the simulation instances to the autonomous vehicle based on unique identifiers associated with the plurality of components; and transmitting at least one simulation instance to the corresponding component based on the mapping. Furthermore, transmitting may include transmitting corresponding simulated sensor data to a corresponding sensor interface associated with the corresponding component of the autonomous vehicle. For example, transmitting the simulation instance may include transmitting the at least one simulation instance over an appropriate sensor bus (i.e., CAN, Flexray, GMSL, etc.).
[0020] According to one embodiment, the method may further include generating virtual models of the autonomous vehicles and associated environments, wherein the virtual models include simulated sensor data indicating acceleration, deceleration, chassis control parameters, propeller control parameters, wheel slip angle, and vehicle roll of the at least one autonomous vehicle. Furthermore, the method may include generating simulation instances using the virtual models based on at least one of a software update, a hardware update, and a predicted failure in the at least one autonomous vehicle.
[0021] According to another embodiment of the present invention, the method may include receiving simulation results of the simulation instance from the plurality of components. The method may also include verifying the operation of the plurality of components based on a comparison of the simulation results with expected results.
[0022] According to a fourth aspect of the present invention, a computer-readable medium is disclosed, wherein the computer-readable medium has machine-readable instructions stored therein, and when the machine-readable instructions are executed by a processing unit, the processing unit is caused to perform the method described above. BRIEF DESCRIPTION OF THE DRAWINGS
[0023] The above and other features of the present invention will now be elucidated with reference to the accompanying drawings in which the present invention is presented.The illustrated embodiments are intended to illustrate rather than limit the present invention.
[0024] The present invention will be further described hereinafter with reference to illustrative embodiments shown in the accompanying drawings, in which:
[0025] Figure 1 shows a simulation example for testing an autonomous vehicle according to an embodiment of the present invention;
[0026] Figure 2 illustrates an interface between a device under test and a simulation instance according to an embodiment of the present invention;
[0027] Figure 3 A block diagram illustrating an apparatus for testing multiple components of at least one autonomous vehicle according to an embodiment of the present invention;
[0028] Figure 4 A block diagram illustrating a system for testing multiple autonomous vehicles according to an embodiment of the present invention; and
[0029] Figure 5 A method of testing multiple components of at least one autonomous vehicle according to an embodiment of the present invention is shown.
[0030] Hereinafter, embodiments for implementing the present invention are described in detail. Various embodiments are described with reference to the accompanying drawings, wherein the same reference numerals are used throughout to refer to the same elements. In the following description, for purposes of explanation, numerous specific details are set forth in order to provide a thorough understanding of one or more embodiments. Obviously, these embodiments can be practiced without these specific details. DETAILED DESCRIPTION
[0031] Figure 1 Simulation instances 110, 120, 130, 140, 150, and 160 (collectively referenced by the reference numeral 100) for testing autonomous vehicles according to an embodiment of the present invention are shown. Each simulation instance 110-160 may be associated with one or more autonomous vehicles.
[0032] As shown, simulation instances 110-160 include simulated sensor data 102 and vehicle dynamics data 104. Simulated sensor data 102 includes sensor values indicating acceleration, deceleration, wheel slip angle, and vehicle roll of the autonomous vehicle. Furthermore, simulated sensor data 102 includes simulations of lidar, camera, and radar sensor data. Vehicle dynamics data 104 indicates the states of actuator units in the autonomous vehicle, such as chassis control parameters and propeller control parameters. Those skilled in the art will appreciate that simulation instances 110-160 may include either or both simulated sensor data 102 and vehicle dynamics data 104.
[0033] Each simulation instance 110-160 may include different values for simulated sensor data 102 and vehicle dynamics data 104. Simulation instances 110-160 depend on the scenario in which the autonomous vehicle is being tested. For example, simulation instance 110 may involve an immovable obstacle in the autonomous vehicle's path, such as a building in front of the autonomous vehicle in mid-air. Simulation instance 120 may involve an object with the potential to obstruct the autonomous vehicle, such as a tree that may have fallen in the path of the autonomous vehicle. Other scenarios may include a malfunction of the autonomous vehicle's braking system.
[0034] Figure 2 An interface 220 is shown between a device under test (DUT) 210 and a simulation instance 100 according to an embodiment of the present invention. The simulation instance 100 is sent to one or more interfaces, such as 220. Figure 2 , the simulation instance 110 is transmitted to the interface 220 via the network interconnection.
[0035] The DUT 210 is computing hardware of the autonomous vehicle, which includes a control unit and controls the sensing unit and the actuating unit in the autonomous vehicle. Thus, testing the computing hardware results in testing of the autonomous vehicle.
[0036] The interface 220 communicates with the sensing unit and the actuation unit via sensing interfaces 222, 224, 226, 228, 230 and an actuation interface 232. The sensing interface includes a camera interface 222, a vehicle-to-environment / everything (V2X) interface 224, a lidar interface 226, an ultrasonic sensor interface 228, and a radar interface 230. The actuation interface is a vehicle interface 232 connected to the actuation unit of the autonomous vehicle.
[0037] Figure 3 A block diagram of a device 300 for testing multiple components (not shown) of at least one autonomous vehicle (not shown) according to an embodiment of the present invention is shown. The multiple components may include a sensing unit, an actuation unit, and a control unit. The device 300 includes a communication module 310 that includes a set of interfaces 302, 304, 306, and 308.
[0038] Interfaces 302-308 further include a camera interface 312, a V2X interface 314, a Lidar interface 316, an ultrasonic sensor interface 318, a radar interface 320, and a vehicle interface 322. Interfaces 302-308 can be communicatively coupled to multiple components of an autonomous vehicle. Thus, the sensing unit and the actuation unit can be configured via the sensor interfaces 312-320 and the actuator (vehicle) interface 322.
[0039] Device 300 also includes a processing unit 330 communicatively coupled to communication module 310. In one embodiment, processing unit 330 is an application-specific integrated circuit. Furthermore, processing unit 330 receives simulation instances 110-160 via network interconnect 350. Processing unit 330 allows simulation instances 110-160 to access individual components of the plurality of components via interfaces 308-310. Processing unit 330 pushes simulated sensor data and vehicle dynamics data to sensor interfaces 312-320 and actuator interface 322.
[0040] Processing unit 330 is capable of mapping simulation instances 110-160 to interfaces 302-308 of communication module 310. Simulation instances 110-160 are used to configure sensing units and actuation units via interfaces 302-308. Processing unit 330 maps simulation instances 110-160 based on unique identifiers associated with autonomous vehicles. Furthermore, processing unit 330 transmits simulated sensor data and vehicle dynamics data from the mapped simulation instances to corresponding sensor interfaces and actuator interfaces in communication module 310.
[0041] Figure 4 4 shows a block diagram of a system 400 for testing multiple autonomous vehicles according to an embodiment of the present invention. Figure 4 In FIG, the autonomous vehicle is represented by control units 412-418 that serve as the brain of the autonomous vehicle. Test operations of the control units 412-418 result in testing of the operation of the autonomous vehicle. The control units 412-418 are collectively referred to as a device under test (DUT) 410. The DUT 410 can be individually connected to the interfaces 302-308, such as Figure 4 shown.
[0042] System 400 also includes a simulation platform 420 configured to generate virtual models of the autonomous vehicle and its associated environment. These virtual models include simulated sensor data and vehicle dynamics data indicating acceleration, deceleration, chassis control parameters, propeller control parameters, wheel slip angle, and vehicle roll of the autonomous vehicle. The virtual models are used to generate simulation instances 110-160.
[0043] Figure 5A method 500 for testing multiple components of at least one autonomous vehicle according to an embodiment of the present invention is shown. The multiple components include a sensing unit, an actuator unit, and a control unit of the autonomous vehicle. The method begins at step 502 by generating a virtual model of the autonomous vehicle and its associated environment, wherein the virtual model includes simulated sensor data and vehicle dynamics data indicating acceleration, deceleration, chassis control parameters, propeller control parameters, wheel slip angle, and vehicle roll of the at least one autonomous vehicle. Furthermore, at step 502, a simulation instance is generated using the virtual model based on at least one of a software update, a hardware update, and a predicted fault in the at least one autonomous vehicle.
[0044] At step 504, a plurality of simulation instances associated with the behavior of an autonomous vehicle are received. At step 506, the simulation instances are mapped to the plurality of components based on a unique identifier associated with each of the components. Furthermore, at step 508, at least one simulation instance is sent to a corresponding component based on the mapping. Accordingly, corresponding simulated sensor data and vehicle dynamics data are sent to corresponding sensor interfaces associated with corresponding components of at least one autonomous vehicle.
[0045] At step 510 , a simulation instance is executed on multiple components. For example, at step 510 , while sensor data is generated in real time based on the simulation instance, the autonomous vehicle's sensing unit is physically disconnected. This allows for complex testing of the autonomous vehicle with multiple traffic participants on a single proving ground; for example, obtaining precise results for braking distance or lane keeping performance.
[0046] At step 520, simulation results from the plurality of components are received after execution. At step 530, operation of the autonomous vehicle and the plurality of components is verified by comparing the simulation results to expected results.
[0047] The present invention can take the form of a computer program product comprising a program module accessible from a computer-usable or computer-readable medium, which stores program code used by or in combination with one or more computers, processors, or instruction execution systems. For the purposes of this specification, a computer-usable or computer-readable medium can be any device capable of containing, storing, transmitting, propagating, or transmitting a program for use by or in combination with an instruction execution system, device, or equipment. The medium can be an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system (or device or equipment) or a propagation medium that itself serves as a signal carrier is not included in the definition of a physical computer-readable medium, which includes semiconductor or solid-state memory, magnetic tape, removable computer floppy disk, random access memory (RAM), read-only memory (ROM), rigid magnetic disk, and optical disk, such as compact disc read-only memory (CD-ROM), optical disc read / write, and DVD. As known to those skilled in the art, the processor and program code for implementing each aspect of the present technology can be centralized or distributed (or a combination thereof).
[0048] Although the present invention has been described in detail with reference to certain embodiments, it should be understood that the invention is not limited to these embodiments. In view of this disclosure, many modifications and variations will be possible for those skilled in the art without departing from the scope of the various embodiments of the invention as herein described. Therefore, the scope of the present invention is indicated by the appended claims rather than by the foregoing description. All changes, modifications and variations within the meaning and equivalent range of the claims should be deemed to be within their scope. All advantageous embodiments claimed in the method claims may also apply to the system / device claims.
Claims
1. An apparatus (300) for testing a plurality of components of at least one autonomous vehicle, the apparatus (300) comprising: a communication module (310) comprising a set of interfaces (302-308) communicatively coupled to the plurality of components of the at least one autonomous vehicle; as well as A processing unit (330) is communicatively coupled to the communication module (310) and is capable of mapping simulation instances (110-160) to an interface of the communication module (310), wherein the simulation instances (110-160) include at least one of simulated sensor data (102) and vehicle dynamics data (104) reflecting behavior of the at least one autonomous vehicle, wherein the processing unit (330) is configured to map the simulation instances (110-160) to the autonomous vehicles based on unique identifiers associated with the plurality of components, and to send at least one simulation instance to a corresponding component based on the mapping, and wherein the processing unit (330) is configured to send the simulated sensor data (102) and the vehicle dynamics data (104) in the mapped simulation instances to a corresponding interface in the communication module (310).
2. The device according to claim 1, wherein The set of interfaces is simultaneously communicatively coupled to the plurality of components of the at least one autonomous vehicle.
3. The apparatus (300) according to claim 1, wherein The set of interfaces (302-308) includes sensor interfaces (312-320) and actuator interfaces (322) capable of being coupled to a sensing unit and an actuating unit of the autonomous vehicle, and wherein the sensing unit and the actuating unit are configurable via the sensor interfaces (312-320) and the actuator interfaces (322) based on the simulation instances (110-160).
4. The device (300) according to any one of the preceding claims, wherein The simulated sensor data (102) and the vehicle dynamics data (104) are from a virtual model of the at least one autonomous vehicle and an associated environment, and wherein the simulated sensor data (102) and the vehicle dynamics data (104) indicate acceleration, deceleration, chassis control parameters, propeller control parameters, wheel slip angle, and vehicle roll associated with the at least one autonomous vehicle.
5. A system for testing a plurality of autonomous vehicles, the system comprising: a simulation platform configured to generate a virtual model of the autonomous vehicle and an environment associated with the autonomous vehicle, wherein the virtual model includes simulated sensor data (102) and vehicle dynamics data (104) indicative of acceleration, deceleration, chassis control parameters, propeller control parameters, wheel slip angle, and vehicle roll of the autonomous vehicle; and At least one device (300) according to any one of claims 1 to 4, communicatively coupled to the simulation platform, configured to test the autonomous vehicle using the virtual model.
6. The system according to claim 5, further comprising: A control unit is communicatively coupled to the devices (300), wherein the control unit is configured to control a sensing unit and an actuating unit of the autonomous vehicle, and wherein simulation instances (110-160) generated from the virtual model are mapped to the control unit using at least one of the devices (300).
7. A method of testing a plurality of components of at least one autonomous vehicle, comprising: receiving a plurality of simulation instances (110-160) associated with behavior of the autonomous vehicle, wherein the simulation instances (110-160) include simulated sensor data (102) and vehicle dynamics data (104) reflecting the behavior of the at least one autonomous vehicle; mapping the simulation instances (110-160) to the plurality of components; and testing the plurality of components based on execution of the simulation instances (110-160), Mapping the simulation instances (110-160) to the plurality of components includes: mapping the simulation instance (110-160) to the autonomous vehicle based on unique identifiers associated with the plurality of components; and At least one simulation instance is sent to a corresponding component based on the mapping.
8. The method according to claim 7, further comprising: generating a virtual model of the autonomous vehicle and associated environment, wherein the virtual model includes the simulated sensor data (102) and the vehicle dynamics data (104) indicative of acceleration, deceleration, chassis control parameters, propeller control parameters, wheel slip angle, and vehicle roll of the at least one autonomous vehicle; and The simulation instance (110-160) is generated using the virtual model based on at least one of a software update, a hardware update, and a predicted failure in the at least one autonomous vehicle.
9. The method according to claim 7, wherein: Sending at least one simulation instance to the corresponding component includes sending corresponding simulated sensor data and vehicle dynamics data to a corresponding sensor interface associated with the corresponding component of the at least one autonomous vehicle.
10. The method according to any one of claims 7 to 9, further comprising: receiving simulation results from the plurality of components for the simulation instance (110-160); as well as Operation of the plurality of components is verified based on a comparison of the simulation results with expected results.
11. A computer readable medium having machine readable instructions stored thereon, which, when executed by a processing unit (330), cause the processing unit (330) to perform the method according to any one of claims 7 to 10.
Citation Information
Patent Citations
Autonomous vehicle simulation system for analyzing motion planners
US20190163181A1