As electronic control units (ECUs) become more complex, the number of tests required to verify functionality and response increases exponentially. In order to keep a lid on development and test costs, while at the same time ensuring test effectiveness, many manufacturers have adopted a test technique called hardware-in-the-loop, or HIL.
You can use hardware-in-the-loop testing throughout the development cycle of real-time, embedded controllers. Hardware-in-the-loop test systems simulate the sensors, actuators and mechanical components that connect to an ECU and allow you to exercise the ECU long before the final system is integrated.
Rapid control prototyping applications
Rapid Control Prototyping (RCP) is a test and development methodology used to accelerate the design process by using model-based design to test a control strategy on physical hardware early in the design process.
One of the key benefits of RCP is the ability to prove out a control algorithm early in the design process. No software coding is necessary. Using a model-based design approach, engineers can quickly create a system model graphically using Simulink, or a state diagram using Stateflow, and build an executable directly from the host PC. In minutes, the algorithm can be tested in real hardware.
This is called auto-coding. The simulation system automatically creates code that can be compiled, linked, downloaded, and executed on real-time hardware.
RCP hardware typically includes a single, small, portable unit that can be run within the same environment as the final intended controller, with sufficient processing capability to run the auto-coded model and with all the I/Os necessary to interface to the system in which testing is to be performed.
Modern RCP systems, such as MICROGen, are built from the ground up to simulate a wide range of I/O types with sufficient flexibility and capability to cover a wide range of applications. For designs that require more computing power and simulation flexibility, we offer the Genix line of real-time HIL systems. When using a Genix system each I/O line can be individually configured directly from the modeling environment.
The challenges posed by traditional controller software design in dealing with low-level CPU registers and interrupt handling are avoided, by using I/O driver libraries that are provided in a functional form as I/O configuration, and driver blocks which are placed in the model and configured using simple dialogues.
Testing embedded control systems
There are many stages where testing should be performed to help deliver a correctly functioning unit. Depending on whether you have specified, designed or are simply integrating the control unit, you should get test the design at each stage of the design cycle, shown in the V-Model diagram below.