Industrial Controls Code Generation

Industrial controls code generation converts models to embedded code much faster and easier than hand coding, enabling developers of industrial controls to reduce development time by 50%, achieve high-integrity system certification, and have a printing press immediately work as designed in the production environment.

With over twenty years of embedded code generation success, MathWorks continues to develop technologies that production organizations use for:

  • Software architecture and design
  • Embedded code generation  
  • Embedded code verification, including software-in-the-loop and processor-in-the-loop tests
  • IEC 61508 and IEC 61511 certification

“Using our previous approach, we’d still be working on the controller. With Model-Based Design we not only shipped it sooner; we also delivered a much more stable product. The controller is so finely tuned that 99% of our customers run the default configuration with no adjustments.”

Curtis Crane, Johnson Controls

Software Architecture and Design

MATLAB®, Simulink® and Stateflow® are well suited for developing industrial controls for motors, power generation, robotics, and process automation systems. Using executable specifications instead of static diagrams accelerates design and enables early verification and validation. With Simscape, Motor Control Blockset, and Robotics System Toolbox, you can model multidomain systems and generate code from them using code generation products.

Use hardware support packages to quickly deploy algorithms to Arduino®, STM32, NXP, NVIDIA®, TI C2000, Zynq®, and other devices.

Embedded Code Generation

Embedded Coder® generates embedded code from MATLAB files and Simulink models. ANSI/ISO C or C++ is generated by default for any device. In addition, code is easily optimized for specific MCUs and DSPs using flexible APIs. Integrating handwritten code during simulation and code generation is supported. Use Simulink PLC Coder to generate IEC 61131-3 Structured Text and Ladder Diagrams for PLCs and PACs.

Embedded Code Verification

Processor-in-the-loop (PIL) and hardware-in-the-loop (HIL) testing form the cornerstone of industrial controls verification by automating test and comparison of software and system execution with the reference model behavior. Creating a PIL test environment is supported using Embedded Coder or direct connection to your processor boards. Simulink Real-Time enables HIL testing by generating and executing real-time code from Simulink plant models. You can author, execute, review, and organize PIL and HIL tests using Simulink Test.

IEC 61508 Certification

IEC 61508 is the primary safety standard for industrial controls. TÜV SÜD has certified Embedded Coder and Simulink model verification tools to IEC 61508. TÜV SÜD has also certified Simulink PLC Coder to IEC 61508 and its process automation industry adaptation IEC 61511. The TÜV SÜD certificates and certification reports are available in IEC Certification Kit. TÜV SÜD certifications are based on application-specific verification and validation workflows that are also provided in the IEC Certification Kit.