Can I use MATLAB classes in Simulink?
130 views (last 30 days)
Show older comments
MathWorks Support Team on 10 Jul 2018
Commented: Walter Roberson on 6 Feb 2023
I am trying to define a class in a MATLAB ('.m') file. Then, I am using an instance of one of that class in a Simulink "MATLAB function" block to execute one of the methods of the class. However, I am having trouble launching it in Simulink.
How can I use classes written in MATLAB in Simulink? Ultimately, I would like to generate code from my model.
MathWorks Support Team on 6 Feb 2023
Edited: MathWorks Support Team on 6 Feb 2023
You can use MATLAB classes in Simulink for code generation through MATLAB Function block.
For best practices when creating MATLAB classes for code generation: https://www.mathworks.com/help/releases/R2022b/simulink/ug/how-working-with-matlab-classes-is-different-for-code-generation.html
Not all MATLAB functions are supported for code generation. Refer to this page for a list of supported functions: https://www.mathworks.com/help/simulink/ug/functions-and-objects-supported-for-cc-code-generation.html
In addition, this page discusses best practices for defining variables for code generation: https://www.mathworks.com/help/releases/R2022b/simulink/ug/best-practices-for-defining-variables-for-c-c-code-generation.html
The MATLAB Function documentation page include links to various examples and useful articles that explains the limitations and best practices for writing MATLAB code for code generation:
These example uses MATLAB system object class in Simulink:
Walter Roberson on 6 Feb 2023
URL-hacking of the help information does not always work, but it is a good first step.
More Answers (0)
Find more on Simulink Coder in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!Start Hunting!