Simulink To workspace issues R2017a

1 view (last 30 days)
David
David on 12 Nov 2021
Commented: David on 15 Nov 2021
In my simulink model (svpwm_inverter_rlc_A)
I have a 6 input mux block whose output connects to a "To workspace" block i named "currvolt".
When i run my code, (The relevant segment is shown below):
**************************************************
% Although 5 periods used, plot for 6 periods to show input turnoff transients
mysimstop = num2str(6/(1e3*f2usekhz));
% Run the simulink mode
sim('svpwm_inverter_rlc_A','StopTime', mysimstop)
%sim('svpwm_inverter_rlc_A')
t = currvolt.time;
currA = currvolt.signals.values(:,1); % 1st variable is 1st column of values
voltA = currvolt.signals.values(:,2); % 2nd variable is 2nd column of values
currB = currvolt.signals.values(:,3);
voltB = currvolt.signals.values(:,4);
currC = currvolt.signals.values(:,5);
voltC = currvolt.signals.values(:,6);
********************************************
I do not get the "currvolt" structure in the Matlab workspace.
However when i replace "sim('svpwm_inverter_rlc_A','StopTime', mysimstop)" with
" sim('svpwm_inverter_rlc_A')" ,
i get the "currvolt" output in the Matlab workspace
Are there other options i need to include in my Matlab configuration?
Thanks
David

Accepted Answer

Paul
Paul on 12 Nov 2021
Edited: Paul on 12 Nov 2021
Don't know why those two sim commands would yield different results. In the first instance, I suspect that currvolt is inside ans, which is the output of the sim command, assuming you checked the box in
Simulation -> Model Configuraton Paramters -> Data Import/Export -> Single Simulation Output
Try
simdata = sim(...)
and see if currvolt shows up in simdata for both uses.
  3 Comments
Paul
Paul on 13 Nov 2021
That's interesting. It sounds like the command
simdata = sim('svpwm_inverter_rlc_A')
is returning the time vector as the first output of the "backward compatible syntax" while
simdata = sim('svpwm_inverter_rlc_A','StopTime', mysimstop)
is using the single output. That's not how it's supposed to work according to the doc, at least as I read it.
I wonder if both commands would yield the same type of output if you check the box on Single Simulation Output.
David
David on 15 Nov 2021
This worked. After checking the "Single Simulation Output" and inserting the name "currvolt".
Thanks a lot.

Sign in to comment.

More Answers (0)

Categories

Find more on Scan Parameter Ranges in Help Center and File Exchange

Products


Release

R2017a

Community Treasure Hunt

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

Start Hunting!