At a simplistic level, a self-driving/AV system is a plethora of sensors, computer processing hardware and a significant amount of highly sophisticated software, with a car thrown in there for good measure. To understand the sophistication of the AV software, consider that an F22 fighter jet uses 1.2 million lines of software code in its computing platform, a Boeing 787 Dreamliner has 6.5 million, while a typical level 4 AV will have 500-700 million lines of code. This is necessary in order for the AV to handle the complexity of intended and unintended interactions.6
The software stack consists of a computer platform with ML/AI (machine learning/artificial intelligence) algorithms. It receives and processes a significant amount of real-time data from the hardware sensors to manage four key vehicle functions – 1) where am I, 2) what is around me, 3) what will happen next and 4) what should I do?7
Hardware includes GPS (or GNSS – Global Navigation Satellite System), computing systems (off-the-shelf and dedicated chipsets to process the incoming data from the sensors and GPS), and a variety of sensors. For example, NVidia has designed chipsets specifically for ADAS and AV systems.
Sensors are typically commercial-off-the-shelf devices but some of the larger AV firms develop proprietary sensor systems. These include LiDAR, radar, stereoscopic cameras, thermal imaging cameras, ultrasonic sensors, and microphones. The combination of these sensors provides the vehicle’s compute system with perimeter, peripheral and short and long range situational awareness that extends 360 degrees around the vehicle.
LiDAR (Light imaging detection and ranging) can be viewed as an optical radar that uses an infrared laser to sweep an area, detect the reflected light and paint a picture of the area. LiDARs now have a range of up to 350 meters. Multiple (up to six) radar systems located on the front, rear and side of the vehicle provides a short and long range perspective that extends 360 degrees around the vehicle with a range of up to 500 meters. Camera systems with more than two dozen overlapping cameras provide imaging data with depth-of-field and stereoscopic (near 3D) vision. Ultrasonic sensors provide information on objects close to the vehicles. Some OEMs also use microphones to listen to specific sounds such as emergency vehicles which provides another important data stream to the onboard computing hardware.
There are 80+ manufactures8 of LiDAR, including some well-known firms such as Velodyne, Luminar, Valeo, Ouster, Innoviz, and Aeva. LiDAR is more precise and better at detecting smaller objects compared to radar, works very well at night compared to camera systems, and has a longer range. However, it has a number of disadvantages. It is expensive (though getting cheaper), some of the sensors have moving components (but some are solid state now), it doesn’t work well in rain and snow as these can absorb or scatter the light, and it doesn’t work well when the sun is shining directly into the sensor (at dusk or dawn). Radar works better for longer distances but can create false images of smaller objects due its longer wavelength. However, in some studies, the use of radar in conjunction with stereoscopic cameras has worked as well as LiDAR for small object detection. This is one of the reasons why Tesla uses radar and not LiDAR. However, camera and radar systems do have a harder time spotting vehicles that have stopped ahead on the road.
There are pros and cons with each of these sensors, but together they complement one another and increase the overall effectiveness of detecting objects in the environment.
These sensors need to be designed to operate over the long-haul and in varying environmental conditions. They need to remain free of dirt, snow, and ice requiring OEMs to consider wipers, and heating/cooling vents/fans. These sensor packages are currently installed on vehicles as an after-market commodity by the AV firms, but over time they will be integrated into the vehicle – either designed in by the automotive manufacturer or as preconfigured package designed for a specific vehicle type.