Embed Limited Accelerates Development of Embedded Software for Consumer Products
Reduce embedded software development time for state-of-the-art combination ovens
Use Model-Based Design with Simulink to model application and management logic, run simulation-based tests, and generate production code
- Requirements issues detected months earlier
- Development time reduced by 45%
- Competitive bid won
Embed Limited was contracted by Panasonic to deliver embedded software for a state-of-the-art combination oven. To manage the complexity of the controls required, Embed engineers followed the same design approach that they used for automotive ECUs: Model-Based Design with MATLAB® and Simulink®.
“Panasonic chose Embed over our competitors partly because we use Model-Based Design from early design through production code generation,” says Ivan Wilson, director at Embed UK. “They expected Model-Based Design to provide significant advantages, and that has proved to be true. It has increased the speed of development, reduced code defects, and improved communication between our team and theirs.”
Panasonic combination ovens support several cooking modes, including baking, microwaving, grilling, and steaming. Cooks can program sequences that combine multiple modes, each with its own duration and power level. The Embed team had to design embedded software that would handle the complexity of these sequences while monitoring temperature and user actions such as changing the sequence or opening the oven door during operation.
The Embed team knew that manually coding the control logic for complicated state charts was time-consuming. In addition, modifying the code to account for new requirements was difficult to do without introducing errors. The team needed to identify gaps in requirements early in development and to minimize errors by generating code from state chart models.
Embed engineers used Model-Based Design with MATLAB and Simulink to develop production embedded software for the Panasonic combination oven.
The team created a software architecture with separate layers for the user interface, application logic, management logic, and device drivers.
Working in Simulink and Stateflow®, they modeled the application logic and management logic using state machines.
After running simulation-based tests with Simulink Test™ to verify functionality, the team integrated these two layers with the user interface, which they had developed separately in another tool.
They demonstrated this integrated setup to Panasonic engineers, who used it to validate the early design and identify additional requirements. The Embed team implemented these requirements in Simulink and Stateflow and retested the design with Simulink Test, using Simulink Coverage™ to measure test coverage.
In parallel with development of the user interface and logic layers, Embed engineers developed device drivers in C. They incorporated these drivers into the main Simulink and Stateflow model as S-Function blocks.
Next, the engineers used Embedded Coder® to generate C code from the model for a 32-bit ARM® Cortex®-based STMicroelectronics® microcontroller. The team then ran hardware tests of the system, applying the same test vectors they had used earlier in simulation-based tests.
The embedded software is currently in production on Panasonic combination ovens. The Embed team is now developing similar systems with Panasonic for six additional ovens that are to be sold under different brand names.
- Requirements issues detected months earlier. “With a traditional development approach, we couldn’t have fully validated requirements until hardware testing,” says Wilson. “With Model-Based Design, we validated requirements through simulation several months before we could test on hardware.”
- Development time reduced by 45%. “On the follow-up projects we’re working on, we’ve seen a 45% reduction in development time and cost,” says Wilson. “Model-Based Design contributed significantly to this reduction, as did the ability to reuse models and test cases.”
- Competitive bid won. “Panasonic conducted an extensive evaluation process before selecting Embed,” notes Wilson. “One of the reasons they chose us is because we used Model-Based Design. They knew that we’d be able to share our designs with them early and deliver high-quality, fully tested embedded software.”