Matlab Coder and S-Functions

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 个评论

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:
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!
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

Community Treasure Hunt

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

Start Hunting!

Translated by