How update some variables each time tha I'am calling simulink from Matlab funtion
    5 visualizzazioni (ultimi 30 giorni)
  
       Mostra commenti meno recenti
    
I have a funtion which recibe some variables, in thus funtion I'am calling a simulink block and getting some datas...
The problem is I need this Var1 Var2 in Simulink block ? What can i do ? To use this vars values in my simulink ??
function [Out] = Funtion (Var1, Var2 ....)
        simout = sim('Simulinkblock');
        Yx = simout.yout{1}.Values.Data;
        Cx = Yx(end);
end

0 Commenti
Risposte (2)
  Paul
      
      
 il 31 Ago 2021
        
      Modificato: Paul
      
      
 il 31 Ago 2021
  
      function [Out] = Funtion (Var1, Var2 ....)
        in = Simulink.SimulationInput('Simulinkblock')
        in = in.setVariable('D',Var1); % to set the value of D. Repeat for others as needed.
        simout = sim(in);
        % simout = sim('Simulinkblock');
        Yx = simout.yout{1}.Values.Data;
        Cx = Yx(end);
end
0 Commenti
  Rishabh Singh
    
 il 30 Ago 2021
        As per my understanding you want to pass the input to your Simulink Model through as an input to the function.
This issue can be resolved if you have root inport  in your Simulink Model by using setExternalInput  (Refer to example code for understanding).
Other approach could be loading data from Workspace, for that you can refer to From Workspace or using MAT file to provide input.
Hope this helps. 
0 Commenti
Vedere anche
Categorie
				Scopri di più su Simulink Functions in Help Center e File Exchange
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!


