running m-file from Simulink

95 views (last 30 days)
Hi,
I have a m-file with the initial conditions for a simulink model. Currently I manually run the file before I run the simulation.
My questions are as follow:
1. Is there a way to have simulink automatically run the m-file when I, either open the model, or start the simulation?
2. Would it be possible to run the m-file with the initial conditions during the simulation?
Further Information for question 2:
The m-file with the initial conditions contains various parameters that depend on how the user decides to run the simulation (manually or using autonomy) (it's basically a flight sim). I would like to be able to change flight modes within the simulation by simply re-running the m-file.
Thank you very much in advance for your time.

Accepted Answer

Kaustubha Govind
Kaustubha Govind on 1 Dec 2011
  1. Yes, you can configure Model Callback Functions to call MATLAB code at specific times in the model lifetime. You can use PostLoadFcn to call something right after a model has been loaded, and InitFcn to call during model update, or right before simulation.
  2. You can run MATLAB-file during simulation (as if it were one of the blocks) using the Interpreted MATLAB Function, but initial conditions are needed at the beginning of simulation, so using the InitFcn callback is a better place to do that.
  3 Comments
Khristopher
Khristopher on 1 Dec 2011
I have successfully applied your solution, Thank you very much!
Manikandan R
Manikandan R on 16 Mar 2019
Edited: Manikandan R on 16 Mar 2019
if my m file contains printing satements it is not on the comaand window why???

Sign in to comment.

More Answers (1)

manu kasturi
manu kasturi on 6 Jun 2019
I have a similar kind of problem.
In my case, I want user to select one m script from a list.
Could you please help me in this regard?

Categories

Find more on Event Functions 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!