ABB engineers used Model-Based Design to model, simulate, and generate code for the PEBB embedded control software and for the system-level control software for specific customer applications.
Working in Simulink and Stateflow®, the team modeled the PEBB control algorithm and state machine, which defines reset, startup, running, and fault states and the transitions between them.
They created test harnesses in Simulink, which they used to verify their model. They conducted further verifications by running closed-loop simulations in Simulink with a plant model that included inductors, capacitors, and other power electronics components in the PEBB.
Using Embedded Coder®, the team generated optimized C code for the PEBB’s ARM processor.
After successful hardware tests, ABB engineers created a PEBB Simulink block and included it in a library of functional components that had the same interfaces as their hardware counterparts.
To develop a new inverter product for an ABB customer, the engineers create a Simulink model containing PEBB building blocks. They add two state machines created in Stateflow, one that manages the PEBBs and a second that implements control logic for the customer’s application.
The team verifies the application-level design by running simulations with multiple PEBBs operating under various grid and load conditions. They then generate C code from the model with Embedded Coder before running final hardware tests.
ABB engineers treat their Simulink models like source code maintaining them in a versioning and revision control system and using Simulink Report Generator™ for model differencing and merging. They also use Simulink Report Generator to export web views of their models for reference by customers and service personnel.
ABB engineers have expanded their use of Model-Based Design beyond control systems, and are now using MATLAB and Simulink to model and simulate custom communication protocols and thermal effects.