Verfasst am: 19.06.2024, 09:26
Titel: App-Zugriff auf Simulink Workspace
Ich habe ofennsichtlich Verständnisprobleme mit dem Zugriff auf Modelleinstellungen. Das (sehr simple) Modell habe ich als Bild eingefügt. Im Scope-Fenster wird die richtige Frequenzmodulation angezeigt.
Aber wie greife ich von der App aus auf diese Daten zu? Ich möchte nämlich nicht nur ein Timescope- sondern für später auch ein UIAxes-Objekt an die Daten binden.
Dazu habe ich mir im GUI der App einen start-Button angelegt, der mittels eines Callbacks beim Starten der App aufgerufen wird.
Code:
ModName=app.Simulation.ModelName; %Bezeichnung des Simulinkmodells
ModWksp = get_param(ModName,'ModelWorkspace');
set_param(ModName,'SimulationCommand','stop'); % Ausführung des Modells stoppen pause(1); % Sicherheitshalber etwas warten
SimInp = Simulink.SimulationInput(ModName);
SimInp= setModelParameter(SimInp,Timeout=200); %Spätestens nach 200 s Simulationsende
SimInp= setModelParameter(SimInp,StartTime='0');
SimInp= setModelParameter(SimInp,StopTime=app.SimulTimeEditField.Value);
plot(app.UIAxes,out.yout.Time,out.yout.Data); % Fehlermeldung 'unable to resolve 'out.yout.Time' set_param(ModName,'SimulationCommand','start');
ich würde einen Haltepunkt setzen und schauen, ob die Variable out in diesem Workspace existiert. Wenn sie z.B. in den Base Workspace geschrieben wurde (würde ich aber zumindest im aktuellen Release nicht passieren), dann könnte man auf
evalin
zurückgreifen.
Für weitere Unterstützung bitte ein reproduzierbares Beispiel zur Verfügung stellen.
Grüße,
Harald
_________________
1.) Ask MATLAB Documentation
2.) Search gomatlab.de, google.de or MATLAB Answers
3.) Ask Technical Support of MathWorks
4.) Go mad, your problem is unsolvable ;)
Einstellungen und Berechtigungen
Du kannst Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen. Du kannst Dateien in diesem Forum posten Du kannst Dateien in diesem Forum herunterladen
MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.