What Is Software in the Loop
Benefits of Software in the Loop
As code becomes central in the shift towards Software-Defined Vehicles (SDVs), there is greater focus on application development in the automotive sector. The applications being developed include advanced safety, infotainment, user experience and emerging autonomous driving capabilities. Software in the Loop testing speeds up and reduces costs through these primary benefits:
- Simulations can be run on generic desktop computing equipment rather than requiring specialized equipment. This enables many tests to be performed by numerous software engineers.
- Purely software-based simulations can be performed faster than in real-time, speeding up the testing process.
- Many iterations of a test can be performed with minor adjustments in parameters, enabling an in-depth and comprehensive analysis.
- Software developers can develop features faster than the slower pace of hardware development.
- Individual elements of a software product can be tested without the need to complete the entire product first.
- Multiple tests can be conducted simultaneously to speed up development, even running simultaneously on a single testing computer.
- Simulations can be adapted for use with hardware in the Loop testing later in the development process.
- Results can be easily shared internally between development teams within an OEM and with third-party suppliers.
Examples of Software in the Loop
Software in the Loop testing can be applied in many scenarios. For example, to test an Advanced Driver-Assistance System (ADAS), the inputs recorded from cameras, radar, LiDAR, ultrasonics, and other sensors under a comprehensive range of conditions will be modeled. This could include the detection of heavy surrounding traffic, the effects of rain or snow on sensor inputs, or a vehicle unexpectedly stopping very quickly. The behavior of the ADAS system software can then be assessed against these different environmental changes to see if the required level of safety is delivered.
Another example could be testing the ergonomics of a digital cockpit design. The physical car interior characteristics and various driver body shapes and sizes can be tested against each other to ensure that every potential customer can interact with the digital cockpit systems comfortably.
One more example could be an infotainment system composed of components from various in-house and third-party suppliers. The compatibility of these components to work together can be tested within a simulated model of the infotainment system hardware to ensure sufficient responsiveness and prevent bugs.