|
|
Simulink Modell über GUI steuern |
|
Tobi1892 |
Forum-Anfänger
|
|
Beiträge: 24
|
|
|
|
Anmeldedatum: 05.11.14
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 05.11.2014, 11:01
Titel: Simulink Modell über GUI steuern
|
|
Guten Tag,
ich hab das Gefühl das das ganze relativ simpel sein soll finde aber nach tagelanger Recherche immernoch keinen Zugang zu meinem Problem.
Ich habe ein Simulink-Modell erstellt, welches aus 10-15 eingegebenen Parametern (zurzeit durch "Konstant-Blöcke" dargestellt) einen Wert berechnen soll.
Dieses Modell möchte ich über ein GUI steuern in dem ich die einzelnen Parameter eingeben, die Berechnung starten und anschließend das Ergebnis sehen kann.
Ich scheitere allerdings schon an der grundsätzlichen Verknüpfung des GUI mit Simulink.
Ich hoffe mir kann jemand helfen.
Viele Grüße Tobi
|
|
|
|
|
Harald |
Forum-Meister
|
|
Beiträge: 24.492
|
|
|
|
Anmeldedatum: 26.03.09
|
|
|
|
Wohnort: Nähe München
|
|
|
|
Version: ab 2017b
|
|
|
|
|
|
Verfasst am: 05.11.2014, 19:36
Titel:
|
|
|
|
Tobi1892 |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 24
|
|
|
|
Anmeldedatum: 05.11.14
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 08.11.2014, 12:07
Titel:
|
|
Hey,
vielen Dank schonmal das f14 Beispielt war denke ich ne große Hilfe. Ich habsdenke ich soweit nachvollzogen und auf mein Modell übertragen.
Wenn ich nun aber die M.File simulieren will gibt matlab mir die fehlermeldung: "Error: File: CaseA_try.m Line: 406 Column: 1
Unexpected MATLAB operator." aus.
Versteh ich insofern nicht so ganz das besagte Zeile 406 der beginn der callback function von edit textbox 3 ist...die ist also auomatisch von guide erstellt worden. ich hab im anhang ma meine datei drinnen.
vielen dank im voraus
Beschreibung: |
|
Download |
Dateiname: |
CaseA_try.m |
Dateigröße: |
21.73 KB |
Heruntergeladen: |
512 mal |
|
|
|
Harald |
Forum-Meister
|
|
Beiträge: 24.492
|
|
|
|
Anmeldedatum: 26.03.09
|
|
|
|
Wohnort: Nähe München
|
|
|
|
Version: ab 2017b
|
|
|
|
|
|
Verfasst am: 08.11.2014, 17:49
Titel:
|
|
Hallo,
die roten Balken am Rande des Editors sowie die Unterringelungen zeigen ja, wo das Problem liegt.
Entweder muss jede Unterfunktion innerhalb einer Datei mit einem end abgeschlossen werden, oder man muss es bei allen weglassen.
GUIDE lässt es bei der Erstellung des Templates weg.
Grüße,
Harald
|
|
|
Tobi1892 |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 24
|
|
|
|
Anmeldedatum: 05.11.14
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 10.11.2014, 09:25
Titel:
|
|
also ich kriege es jetzt aufjedenfall hin das sich das simulink modell und auch das gui öffnen. allerdings scheint das mit der werteübergabe ncoh nciht zu klappen. wenn ich im gui einen wert eintippe und bestätige bekomme ich folgende fehlermeldung:
Error using CaseA>edit1_Callback (line 364)
Invalid setting in Constant block 'A,SA' for parameter 'Value'
Error in gui_mainfcn (line 96)
feval(varargin{:});
Error in CaseA (line 42)
gui_mainfcn(gui_State, varargin{:});
Error in
@(hObject,eventdata)CaseA('edit1_Callback',hObject,eventdata,guidata(hObject))
Error while evaluating uicontrol Callback
und das kann ich überhaupt nicht einordnen, da die parameterübergabe eigentlich genau der form im beispiel entspricht.
Beschreibung: |
|
Download |
Dateiname: |
CaseA.m |
Dateigröße: |
22.33 KB |
Heruntergeladen: |
490 mal |
Beschreibung: |
|
Download |
Dateiname: |
CaseA_try.m |
Dateigröße: |
22.35 KB |
Heruntergeladen: |
478 mal |
|
|
|
Harald |
Forum-Meister
|
|
Beiträge: 24.492
|
|
|
|
Anmeldedatum: 26.03.09
|
|
|
|
Wohnort: Nähe München
|
|
|
|
Version: ab 2017b
|
|
|
|
|
|
Verfasst am: 10.11.2014, 16:11
Titel:
|
|
Hallo,
heißt dein Block tatsächlich 'A,SA'?
Ich würde es vermeiden, Sonderzeichen in Blocknamen zu verwenden.
Ansonsten: ich bin mir nicht sicher, ob der Wert in dem Fall als Double oder String übergeben werden muss, also mal testhalber das str2double weglassen.
Bitte möglichst auch ein Testmodell posten und die Zeilen, an denen du dich orientierst. Das erleichtert die Hilfestellung.
Grüße,
Harald
|
|
|
Tobi1892 |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 24
|
|
|
|
Anmeldedatum: 05.11.14
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 11.11.2014, 16:42
Titel:
|
|
|
|
|
Hey,
ja der Block heißt so. Werde mir Gedanken über ne bessere Benennung machen weil eigentlich bei allen Sonderzeichen drinne sind.
Ich habe das str2double weggelassen, sodass jetzt ein string übergeben werden sollte aber da ändert sich nichts.
ich bekomme weiterhin die Fehlermeldung:
Error using CaseA>edit1_Callback (line 355)
Invalid setting in Constant block 'A,SA' for parameter 'Value'
Error in gui_mainfcn (line 96)
feval(varargin{:});
Error in CaseA (line 42)
gui_mainfcn(gui_State, varargin{:});
Error in
@(hObject,eventdata)CaseA('edit1_Callback',hObject,eventdata,guidata(hObject))
Error while evaluating uicontrol Callback
sobald ich den ersten Wert eingeben will.
Ich stelle jetzt nochmal in den Anhang mein Gui, das Simulinkmodell und das Beispiel GUI aus dem ich die Sachen versucht habe abzuleiten.
Grüße Tobi
Beschreibung: |
|
Download |
Dateiname: |
f14ex.m |
Dateigröße: |
15.76 KB |
Heruntergeladen: |
483 mal |
Beschreibung: |
|
Download |
Dateiname: |
E_Bat_n.mdl |
Dateigröße: |
39.16 KB |
Heruntergeladen: |
518 mal |
Beschreibung: |
|
Download |
Dateiname: |
CaseA.m |
Dateigröße: |
21.75 KB |
Heruntergeladen: |
500 mal |
|
|
|
Harald |
Forum-Meister
|
|
Beiträge: 24.492
|
|
|
|
Anmeldedatum: 26.03.09
|
|
|
|
Wohnort: Nähe München
|
|
|
|
Version: ab 2017b
|
|
|
|
|
|
Verfasst am: 11.11.2014, 19:03
Titel:
|
|
Hallo,
jetzt bitte noch die .fig, damit man das auch ausführen kann.
Ich habe als Beispiel mal folgendes versucht
und das ging bei mir.
Grüße,
Harald
|
|
|
Tobi1892 |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 24
|
|
|
|
Anmeldedatum: 05.11.14
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 12.11.2014, 11:24
Titel:
|
|
oh die hab ich vergessen.
aber das bedeutet ja das die m-file das richtig an die mdl übergibt allerdings nicht den richtigen wert aus dem gui bekommt oder sehe ich das falsch?
grüße tobi
Beschreibung: |
|
Download |
Dateiname: |
CaseA.fig |
Dateigröße: |
8.48 KB |
Heruntergeladen: |
500 mal |
|
|
|
Harald |
Forum-Meister
|
|
Beiträge: 24.492
|
|
|
|
Anmeldedatum: 26.03.09
|
|
|
|
Wohnort: Nähe München
|
|
|
|
Version: ab 2017b
|
|
|
|
|
|
Verfasst am: 12.11.2014, 20:36
Titel:
|
|
Hallo,
ich bekomme nun einen Fehler beim Öffnen der GUI aus
Das ist auch nicht weiter verwunderlich: ich habe mal den Debugger drüberlaufen lassen, und zu dem Zeitpunkt steht in allen Edit-Felder "Edit Text". Das mag Simulink natürlich nicht.
Grüße,
Harald
|
|
|
Tobi1892 |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 24
|
|
|
|
Anmeldedatum: 05.11.14
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 12.11.2014, 21:22
Titel:
|
|
hey danke für den tipp. also muss ich quasi in der opening fct einstellen, dass in dem feld nicht edit text sonder irgendein wert steht sehe ich das richtig?
grüße tobi
|
|
|
Harald |
Forum-Meister
|
|
Beiträge: 24.492
|
|
|
|
Anmeldedatum: 26.03.09
|
|
|
|
Wohnort: Nähe München
|
|
|
|
Version: ab 2017b
|
|
|
|
|
|
Verfasst am: 13.11.2014, 08:27
Titel:
|
|
Hallo,
entweder in der OpeningFcn oder über GUIDE in der .fig.
Grüße,
Harald
|
|
|
Tobi1892 |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 24
|
|
|
|
Anmeldedatum: 05.11.14
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 19.11.2014, 11:02
Titel:
|
|
Hi (sorry ich war die lette Woche krank)
also Werte habe ich nun erstmal alle geändert.
Funktionieren tuts natürlich immernoch nicht.
Der Fehlercode wenn ich bei A,SA den Wert ändere ist:
Error using CaseA>edit1_Callback (line
364)
Invalid setting in Constant block 'A,SA'
for parameter 'Value'
Error in gui_mainfcn (line 96)
feval(varargin{:});
Error in CaseA (line 42)
gui_mainfcn(gui_State, varargin{:});
Error in
@(hObject,eventdata)CaseA('edit1_Callback',hObject,eventdata,guidata(hObject))
Error while evaluating uicontrol Callback
Das ganze ist passiert als ich 5 als Wert eingegeben habe. Ich verstehe nicht recht, warum der wert unzulässig sein soll. und der rest der fehlermeldung bezieht sich wieder auf irgendeine gui_mainfcn die ich garnicht selbst erstellt habe.
Vielen Dank und beste Grüße,
Tobi
|
|
|
DSP |
Forum-Meister
|
|
Beiträge: 2.117
|
|
|
|
Anmeldedatum: 28.02.11
|
|
|
|
Wohnort: ---
|
|
|
|
Version: R2014b
|
|
|
|
|
|
Verfasst am: 19.11.2014, 12:53
Titel:
|
|
Ich nehme mal an es geht um folgende Funktion:
Du holst mit get einen string, also muss die Eingabe von string in eine Zahl umgewandelt werden. Value ist kein string sondern eine Zahl, entsprechend muss die Übergabe dann konform sein.
|
|
|
Tobi1892 |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 24
|
|
|
|
Anmeldedatum: 05.11.14
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 21.11.2014, 09:43
Titel:
|
|
also wenn ich das so eingebe wie du das beschrieben hast, dann beschwert sich matlab weiterhin darüber.
Error using CaseA>edit1_Callback (line 355)
Invalid setting in Constant block 'A,SA' for parameter 'Value'
Error in gui_mainfcn (line 96)
feval(varargin{:});
Error in CaseA (line 42)
gui_mainfcn(gui_State, varargin{:});
Error in @(hObject,eventdata)CaseA('edit1_Callback',hObject,eventdata,guidata(hObject))
Error while evaluating uicontrol Callback
das problem scheint hier allerdings im simulinkmodell zu liegen. warum ist die 4 die ich eingebe denn nen unzulässiger wert für den constant block? mit dem befehl den du mir gegeben hast müsste doch aus dem string eine zahl werden und damit sollte alles passen
|
|
|
|
Gehe zu Seite 1, 2 Weiter
|
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
|
|
Impressum
| Nutzungsbedingungen
| Datenschutz
| FAQ
| 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.
|
|