Simulink Compiler

Share simulations as standalone executables, web apps, and Functional Mockup Units (FMUs)

 

Simulink Compiler™ enables you to share Simulink® simulations as standalone executables. You can build the executables by packaging the compiled Simulink model and the MATLAB® code used to set up, run, and analyze a simulation. Standalone executables can be complete simulation apps that use MATLAB graphics and UIs designed with MATLAB App Designer. To co-simulate with an external simulation environment, you can generate standalone Functional Mockup Unit (FMU) binaries that adhere to the Functional Mockup Interface (FMI) standard.

To provide browser-based access to your deployed simulation, you can create a web app and host it with MATLAB Web App Server™. Simulink simulations can be packaged into software components for integration with other programming languages (with MATLAB Compiler SDK™). Large-scale deployment to enterprise systems is supported through MATLAB Production Server™.

To generate C and C++ source code from Simulink, use Simulink Coder™.

Get Started:

Standalone Simulation Applications

Share Simulink simulations as standalone applications with collaborators, suppliers, and clients. Create your simulations using a wide variety of Simulink add-on products, including Simscape™, Stateflow™, and DSP System Toolbox™, with both fixed-step and variable-step solvers.

Graphical or Command-Line Interfaces

Standalone applications can be complete apps that use MATLAB graphics and UIs designed with MATLAB App Designer or they can be command-line executables.

Use App Designer to design a graphic UI of the simulation App.

User-Defined Inputs and Tunable Parameters

Define simulation inputs and specify tunable parameters for your packaged simulations.

Use SimulationInput Object to define the simulation inputs and parameters.

Text, Numeric, and Graphical Simulation Outputs

You can present simulation results using all output formats that MATLAB supports, including text, numeric, and graphical formats.

Use graphics to display simulation results with the deployed simulation App.

Browser-Based Web Apps

Package Simulink simulations as web apps and share them via unique URLs.

Install-Free Simulation Deployment

Create simulation applications in MATLAB App Designer and package them as web apps. Each web app can be accessed via a unique URL directly from a browser without installing additional software.

Package the application created by MATLAB App Designer as a Web App.

Centralized Maintenance

Use MATLAB Web App Server to host your simulation web apps. Your simulation web apps are centrally maintained and updated for instant access. In addition, the same web app can be accessed from any platform with a browser, so there is no need to write platform-specific code.

Host and share Web Apps with MATLAB Web App Server.

Enterprise Applications

Integrate simulations into a wide variety of production enterprise applications accessed by large audiences.

Integrate Using Language-Specific Software Libraries

With MATLAB Compiler SDK you can package your Simulink simulation into a language-specific software component such as a C/C++ shared library, Java JAR, Python package, or .NET DLL, which can then be invoked from an enterprise application.

Integrate your simulation with production IT system through MATLAB Production Server.

Integrate Using MATLAB Production Server APIs

Use MATLAB Production Server to host simulations that can be invoked from enterprise applications using C/C++, .NET, Java, Python, or RESTful interfaces.

Standalone Functional Mockup Units (FMUs)

Create standalone co-simulation FMUs from Simulink models to integrate with third-party simulation environments.

Run Simulink Simulations in Third-Party Environments

Generate fixed-step standalone FMUs to co-simulate with a third-party simulation environment. The standalone FMU contains a binary shared library compiled from your source model. Running standalone FMUs does not require MATLAB or MATLAB Runtime™.

To create a tool-coupling FMU for co-simulating Simulink models with third-party software, use Simulink.

Share the simulation as a standalone co-simulation FMU.

Use Structured I/O Signals and Runtime Tunable Parameters

The runtime tunable parameters of your Simulink model are preserved as FMU interface parameters. Structured parameters and nonvirtual bus signals are mapped to structured FMU variable names.

Nonvirtual bus signals are mapped to structured FMU variable names.

Validate Exported FMUs

Verify that exported FMUs function as expected by bringing them back into Simulink for testing and validation.

Option to bring the created FMU back into Simulink automatically after creation.

Enabling Digital Twin Workflows

A digital twin can be an up-to-date parameterized model of an actual physical asset in operation. Using Simulink Compiler, you can tune deployed digital twin models to keep them up-to-date. You can also simulate digital twin models on Enterprise OT or IT systems for prediction, optimizing operations, anomaly detection, fault isolation, and more.

Tune Digital Twin Models

Through deployed parameter estimation using Simulink Design Optimization™, you can tune your digital twin to match the current asset condition. Use the tuned digital twin for predictive maintenance and system optimization.  

Tune deployed digital twin models to keep them up-to-date

Latest Features

Automatic App Generation

Generate a MATLAB App directly from a Simulink model using simulink.compiler.genapp

Runtime Callbacks

specify root inport signal data and read root outport signal data while the simulation is running

Win32 toolchain support

Generate 32-bit FMU with Microsoft Visual studio compilers

See release notes for details on any of these features and corresponding functions.