create Executable file from simulink model

6 views (last 30 days)
Hi @ all,
I would like to ask you how I can build a model , using the Simulink Coder. I would like to call the so generated exe from a Matlab script.
I tried to performe this action in the following way :
I try to enables, in the configuration parameters mask, the load from workspace, but during the compilation the following warning appears: "Loading external input from the workspace is not supported for current code generation target".
I created the .exe file but it is not able to read data, through some input port, from the Matlab workspace.
In this case the target used for compiling is the generic real time (grt).
Some idea?
Thanks in advance
Mitch

Answers (3)

Kaustubha Govind
Kaustubha Govind on 15 Jan 2013
I think you might need to modify the generated code to accept the input from whatever source you need it to use.

Walter Roberson
Walter Roberson on 15 Jan 2013
When you generate an executable (rather than a mex) then it runs as an independent process and there is no connection to the MATLAB workspace (other than the command line options.)

Mitch Martelli
Mitch Martelli on 15 Jan 2013
How I can do this?
Maybe in the first question I have not been clear
Let me shown a simple example :
I have a simulink model called foo.mdl Inside the model there are :
input port
integration block
output port.
I would like to build foo.mdl.
Then I write the following Matlab code :
clc
clear variables
stoptime=input('stoptime') %10;
step=input('step') %0.01;
t=input ('t') %[0 stoptime];
u=input('u') %[0 1];
!foo.exe.
Then with the deploytool i would like to compile the matlab script.
My problems is the following :
How I can send the information receveid by a end user to foo.exe? When I build the simulink model all the parameter (stoptime, step, u,t) should be present in the matlab workspace.
Another problem if i put in the model only number and i complite with grt target the following warning appears: "Loading external input from the workspace is not supported for current code generation target".
  2 Comments
Walter Roberson
Walter Roberson on 15 Jan 2013
Generate mex instead of a standalone executable and call it from MATLAB.
Or else modify the generated code to retrieve values from the command line (I don't know anything about the structure of the generated code so I do not know how you would have to modify the blocks to do this.)

Sign in to comment.

Categories

Find more on Simulink Coder in Help Center and File Exchange

Products

Community Treasure Hunt

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

Start Hunting!