question regarding code generation.

2 Ansichten (letzte 30 Tage)
Prasad Babu
Prasad Babu am 16 Aug. 2011
Hi,
I have a question regarding code generation.
I have a simulink model which consist of a single stateflow block( my entire logic was done in stateflow) and 5 input ports (passes some input values to the stateflow) and a outport.
currently am interacting with the model using a gui( done using qt). Now I want to send my project to my higher officials,who doesn't have a matlab installed by converting entire model into a standalone exe.
I tried generating a exe from mdl using rsim.tlc. But I’ve no idea how to make my application to receive inputs and give the corresponding output.
This is my first attempt of auto code-generation. Please advice me in this issue.
Thanks n advance...

Akzeptierte Antwort

Kaustubha Govind
Kaustubha Govind am 16 Aug. 2011
The rsim.tlc target allows rapid prototyping on a machine that has MATLAB/Simulink installed. Since you need to forward your model to someone who does not have the products, you need to generate standalone C code from your model and then call into that from your GUI.
I would recommend using Embedded Coder (formerly called Real-Time Workshop Embedded Coder) to generate a shared library from your model. See Creating and Using Host-Based Shared Libraries. This will generate an interface for your model such that inputs/outputs and parameters can be passed in from an external application.
  2 Kommentare
Prasad Babu
Prasad Babu am 17 Aug. 2011
Hai kaustubha.. I tried building using rsim.tlc, I have encountered the following error:
'cmd' is not recognized as an internal or external command,
operable program or batch file.
gmake: *** [../FIAT_radio_input_win32.dll] Error 1
### Real-Time Workshop build procedure for model: 'FIAT_radio_input' aborted due to an error.
Error using ==> genMakefileAndBuild at 1139.
Is this a known error?
Kaustubha Govind
Kaustubha Govind am 17 Aug. 2011
But rsim.tlc is not the right file to use - you need ert_shrlib.tlc right?
In any case, you might still run into the same issue. cmd.exe is a Windows executable that typically resides in the Windows\System32 or WINNT\System32 directory. Could you confirm the location of cmd.exe and make sure that this directory is on the System PATH environment variable.
Basically, you should be able to open a system command prompt by executing this in MATLAB:
>> !cmd &
From Windows, go to Start->Run and type cmd - this should also open up the system shell.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (2)

Muhammad shahbaz
Muhammad shahbaz am 16 Aug. 2011
use matlab code generator 2.0 or higher where u can generate .exe files of ur matlab code which can be executed anywhere without matlab just like c language files.
  2 Kommentare
KYAW KYAW
KYAW KYAW am 24 Nov. 2011
Hi Muhammad,
Where can i get matlab code generator and I really appreciate your help.
Thanks
Kaustubha Govind
Kaustubha Govind am 25 Nov. 2011
I think Muhammad meant to say MATLAB Coder. See the Contact Sales link on this page: http://www.mathworks.com/products/matlab-coder/?s_cid=global_nav

Melden Sie sich an, um zu kommentieren.


TAB
TAB am 17 Aug. 2011
As your model contains only stateflow chart, you can generate a simle C-code using 'stateflow coder(Use custom target). It generates code with chart inputs and outputs as global variables. You can write a main program and interface the stateflow generated code with it very easily.

Kategorien

Mehr zu Simulink Coder finden Sie in Help Center und File Exchange

Produkte

Community Treasure Hunt

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

Start Hunting!

Translated by