To meet demands for increasingly complex new vehicles while continuing to reduce costs, where possible Jaguar develops and tests new functionality using existing production vehicles instead of building expensive prototypes. This approach involves adding a special-purpose electronic control unit (ECU) to the vehicle.Jaguar, based in Coventry, England, uses MathWorks products to generate control software and deploy it on commercially available, general-purpose ECU hardware based on the Freescale™ MPC555 microcontroller. Jaguar selected the MICROGen product from the UK company add2 Limited as their hardware platform.
Jaguar can now develop new features in an offline mode on a desktop in the lab and then try them out in a vehicle. They can support a variety of application areas, such as the transmission, driver entertainment, and body system. By testing the new features on real hardware, they improve the quality of specifications that they provide to their suppliers.
Most vehicles today contain several control units that are interconnected via real-time network standards such as CAN and J1850. Messages sent over these networks are used to continually transfer vehicle data and control information between ECUs. When a new ECU is received, by Jaguar, from a supplier, the ECU “expects” to be installed in a vehicle with other ECUs that use the same message format and network protocol. However, initial development of systems with the new ECUs begins on existing production vehicles, presenting problems with incompatible message formats and protocols. Previously, Jaguar would deal with this problem by commissioning a special-purpose ECU that would perform “protocol conversion” between a new ECU and an existing network on the production vehicle. This work was subcontracted to external code developers, which was a slow and costly option. It involved giving specifications to a vendor, who would write software and send them the code. On-vehicle debugging would identify problems with the code, requiring Jaguar to go through several iterations before implementation.
Jaguar needed a quicker, more cost-effective approach.
In proposing a solution, it soon became apparent that the resulting system could be used, not only for protocol conversion, but also as a rapid prototyping system for implementing and testing new control algorithms or diagnostic features. The scope of the project was widened accordingly.
For targeting MICROGen, their general purpose ECU, Jaguar selected the MathWorks complete software environment, based on Simulink®, Stateflow®, Simulink Coder™, and Embedded Coder®. Jaguar used these MathWorks products to design, simulate, and test control algorithms and generate custom code that was downloaded to MICROGen hardware. For a typical project, they build the control system as a block diagram in Simulink and Stateflow. To access I/O such as PWM, analog input, or CAN that is incorporated in the MPC555 microcontroller, they use blocks that are included with Embedded Coder. Additional Simulink blocks have been developed by add2 Ltd to provide access to I/O devices that are external to the Freescale™ MPC555 chip.
In this way, the control algorithms that Jaguar developed could process signals received via a CAN or J1850 bus or directly from sensor inputs. The algorithm output could be transmitted as a bus message or used to drive output devices directly.
Because the Simulink and Stateflow model was an executable specification, algorithms could be simulated and tested offline as they were being developed. Once the algorithm was validated in simulation, a complete application could be automatically generated and downloaded to ECU hardware.
Once the code was generated, test engineers downloaded the application over CAN into either RAM or flash memory on the target ECU.
Jaguar can customize, document, test, and validate the algorithm model, and then generate code for MICROGen, all within the MathWorks environment. For example, Embedded Coder, in conjunction with Jaguar’s ECU hardware, allows some prototype work to be completed in-house, which in turn allows more complete and accurate specifications to be sent to suppliers for them to develop the actual system. Jaguar is now using the code with general-purpose ECU hardware to aid in the development of control strategies. For example, during Engine Management Systems (EMS) development, they ran code on MICROGen to simulate the vehicle transmission control unit. This allowed the engine and EMS to be tested through a number of drive cycles. The cycles were simulated by using the ECU hardware to send transmission position information to the EMS, which in turn “thought” it was in a certain gear. The gear selected was easily controlled by the test engineer or by an automated test procedure.
To reduce the costs of testing new product functionality by adding a general-purpose ECU to an existing vehicle
Use MathWorks tools to generate control software and deploy it on general-purpose ECU hardware