I am trying to convert a Matlab function to an S function via the Matlab coder app. I have sucessfully exported the function through the app, but now I am stuck on how to implement the exported C++ code as an S-Function. Is there a way to do this through the S-Function Builder block and what files from the Matlab coder app would need included there?
Thanks!

댓글 수: 3

Arvind
Arvind 2019년 3월 20일
If you are trying to use the MATLAB Coder generated code within Simulink as a block, there's a much easier approach.
Simply use the MATLAB Function block within Simulink - it generates code (using MATLAB Coder technology under the hood), and automatically creates an compiled s-function that's used within the Simulink model. You don't get access to the S-function - but you probably don't need it, as you already have the code.
You can find more info here:
Elijah Hedrick
Elijah Hedrick 2019년 3월 21일
Thanks! I had tried that implementation, but the problem that I ran into was that I have varaible size input and output matrices, as well as changing sizes within the function, and simulink was complaining about this. Is there a way that I can set these variables to be variable size through the implementation of the Matlab function block, or do I have to do that manually through an S-Function (or any other method)?
Thanks for your help!
Amal George M
Amal George M 2019년 3월 26일
Please refer to the following documentation on making the signal variable-size:https://in.mathworks.com/help/simulink/ug/declare-variable-size-inputs-and-outputs.html

댓글을 달려면 로그인하십시오.

답변 (0개)

카테고리

도움말 센터File Exchange에서 Simulink Coder에 대해 자세히 알아보기

제품

릴리스

R2018a

질문:

2019년 3월 20일

댓글:

2019년 3월 26일

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by