WICHTIG: Der Betrieb von goMatlab.de wird privat finanziert fortgesetzt. - Mehr Infos...

Mein MATLAB Forum - goMatlab.de

Mein MATLAB Forum

 
Gast > Registrieren       Autologin?   

Partner:




Forum
      Option
[Erweitert]
  • Diese Seite per Mail weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

command window-Befehl aus GUI aufrufen

 

Speedytoni
Forum-Newbie

Forum-Newbie


Beiträge: 8
Anmeldedatum: 04.07.17
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 29.01.2018, 18:23     Titel: command window-Befehl aus GUI aufrufen
  Antworten mit Zitat      
Hallo Leute,

Ich habe ein Problem, was vermutlich durch die Kenntnis eines einfachen Befehls gelöst werden kann. Ich möchte beim Ausführen meines uicontrol-pushbutton-Callbacks einen Befehl in das Command Window schreiben. mein Code lautet:


Code:
function btn_Betriebspunktverstellung_Callback(hObject, eventdata, handles)
 setparam(tg, 'Inkrement', 'Value',6)


Der ausgespuckte Fehlercode lautet:

Code:
Undefined function or variable 'tg'.

Error in GUI>btn_Betriebspunktverstellung_Callback (line 182)
 setparam(tg, 'Inkrement', 'Value',6)

Error in gui_mainfcn (line 95)
        feval(varargin{:});

Error in GUI(line 42)
    gui_mainfcn(gui_State, varargin{:});

Error in
matlab.graphics.internal.figfile.FigFile/read>@(hObject,eventdata)GUI('btn_Betriebspunktverstellung_Callback',hObject,eventdata,guidata(hObject))
Error while evaluating UIControl Callback.


Letztlich soll diese GUI dazu dienen, auf komfortable Weise größere Mengen an Variablen bei einem laufenden Simulink Real-time-Modell zu manipulieren.
Der Befehl
Code:
setparam(tg, 'Inkrement', 'Value',6)
funktioniert problemlos, sofern ich ihn händisch in das Command Window eingebe. Lässt sich diese händische Eingabe auch per Skript darstellen?

Vielen Dank im vorhinein,

euer Speedytoni
Private Nachricht senden Benutzer-Profile anzeigen


Harald
Forum-Meister

Forum-Meister


Beiträge: 24.432
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 29.01.2018, 19:50     Titel:
  Antworten mit Zitat      
Hallo,

du musst dafür sorgen, dass tg im Workspace der GUI verfügbar ist.
Die verschiedenen Wege dazu findest du hier:
https://de.mathworks.com/help/matla.....data-among-callbacks.html
Mein Favorit ist "Application Data".

Ab R2016a gibt es übrigens App Designer als Nachfolger von GUIDE. Dort ist vieles intuitiver, inkl. des Umgangs mit Daten.

Grüße,
Harald
Private Nachricht senden Benutzer-Profile anzeigen
 
Speedytoni
Themenstarter

Forum-Newbie

Forum-Newbie


Beiträge: 8
Anmeldedatum: 04.07.17
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 30.01.2018, 09:31     Titel:
  Antworten mit Zitat      
Hallo Harald,
vielen Dank für deine schnelle Antwort. Ich hatte vermutet, dass es da ein Problem mit den Speicherbereichen gibt, immerhin hat ja sowohl der Hostrechner, der Target als auch die GUI ihren eigenen Speicherbereich. Das hatte mich zugegebenermaßen verwirrt.

Vielen Dank auch für den Hinweis mit mit dem App-Designer, noch ist die GUI überschaubar und ich kann umswitchen.

Ich probiere alles aus und melde mich wieder.

Gruß, Speedytoni
Private Nachricht senden Benutzer-Profile anzeigen
 
Speedytoni
Themenstarter

Forum-Newbie

Forum-Newbie


Beiträge: 8
Anmeldedatum: 04.07.17
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 07.02.2018, 15:34     Titel:
  Antworten mit Zitat      
Nach einiger Zeit und vielen erfolglosen Versuchen stehe ich immer noch vor dem Problem, dass ich die Speicherproblematik nicht lösen kann.
tg ist leider vom Datentyp 1x1 SimulinkRealTimeTarget und scheidet daher für die meisten Methoden, es in der GUI verfügbar zu machen aus.
evailin, globale Variablen und handles hab ich versucht, klappt in der Form für mich nicht.

Nun hatte ich versucht, das Problem zu umgehen, indem ich die GUI per Button-druck nur m-files ausführen lasse, aber auch das ist fehlgeschlagen.
Das seperate Ausführen der m-Files klappt problemlos, sobald ich es über die GUI ausführe bin ich wieder vor dem altbekannten Problem.

Undefined function or variable 'tg'.

An der Stelle stehe ich nun leider vor einer Wand, und hoffe diese mit euch einreissen zu können.

Liebe Grüße,

Speedytoni
Private Nachricht senden Benutzer-Profile anzeigen
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 24.432
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 07.02.2018, 18:08     Titel:
  Antworten mit Zitat      
Hallo,

hast du Application Data versucht? Wie?

Grüße,
Harald
Private Nachricht senden Benutzer-Profile anzeigen
 
Neues Thema eröffnen Neue Antwort erstellen



Einstellungen und Berechtigungen
Beiträge der letzten Zeit anzeigen:

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
.





 Impressum  | Nutzungsbedingungen  | Datenschutz | FAQ | goMatlab RSS Button RSS

Hosted by:


Copyright © 2007 - 2024 goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks

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.