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

handles nach Funktionsaufruf weg

 

Horschd_35
Forum-Newbie

Forum-Newbie


Beiträge: 8
Anmeldedatum: 10.02.14
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 20.06.2014, 23:24     Titel: handles nach Funktionsaufruf weg
  Antworten mit Zitat      
Hallo,

mit einem Button führe ich zuerst ein Skript aus , das die Werte aus der GUI per handles übergeben bekommt. wenn ich danach aber wieder etwas in de GUI selst ausführe bekomme ich eine Fehlermeldung:

Code:

function messdaten_auswerten_Callback(hObject, eventdata, handles)
% hObject    handle to messdaten_auswerten (see GCBO)
% eventdata  reserved - to be defined in a future version of MATLAB
% handles    structure with handles and user data (see GUIDATA)
Labview_Daten;
set(handles.liste_labview, 'String', {'plot(rand(5))', 'plot(sin(1:0.01:25))', 'bar(1:.5:10)', 'plot(membrane)', 'surf(peaks)'});
 


Fehler ist : Reference to non-existent field 'liste_labview'.

ich kann auch z.B. den Button kein zweites mal erfolgreich ausführen... woran kann das liegen?

Grüße, Hannes
Private Nachricht senden Benutzer-Profile anzeigen


Harald
Forum-Meister

Forum-Meister


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

um dir da helfen zu können, müssten wir den Inhalt von Labview_Daten kennen, insbesondere wie dort mit der handles-Variable gearbeitet wird.
Der Debugger dürfte dir helfen, dem Problem selbst auf die Spur zu kommen.

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

Forum-Newbie

Forum-Newbie


Beiträge: 8
Anmeldedatum: 10.02.14
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 21.06.2014, 09:57     Titel:
  Antworten mit Zitat      
Hallo Harald

Code:

%============= Eingaben ====================================
Messung=handles.Messdaten;

%

%Wert, nach dem als erstes gesucht werden soll (Erste Position im Raster)
    hsuchwert=handles.suchwert;
%Entfernung der Messpunkte
    hinkrement=handles.inkrement;
%Zulässige Positionsabweichung zur Erkennung
    htoleranz=handles.toleranz;
%Umrechnungsfaktor V-> °C
    hU=handles.U;      
%Position des IR-Sensors im Bezug zum Festlager
    hPos_IR=325;
%Position der Mutter im Bezug zum Festlager
    hPos_n=215;
%===========================================================
 



hier zwischendrin wird dann mit lokalen Variablen gerechnet, das Skript hat ohne GUI vorher funktioniert (tut es prinzipiell ja immernoch) am Schluss werden die Variablen mittels handles weitergegeben.

Code:

%% Variablen an GUI übergeben

handles.Temperaturen=Temperaturen;
handles.DeltaT=DeltaT;
handles.SSF=SSF;
handles.Verschiebungen_GM=Verschiebungen_GM;
handles.Verschiebungen_GM_i=Verschiebungen_GM_i;
handles.Taster3=Taster3;
handles.Taster4=Taster4;
handles.DeltaT_mid=DeltaT_mid;
handles.Fit2=Fit2;
handles.Bestimmtheitsmass=Bestimmtheitsmass;
guidata(Messdaten_Aufbereitung,handles);
 
Private Nachricht senden Benutzer-Profile anzeigen
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 24.495
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 21.06.2014, 10:13     Titel:
  Antworten mit Zitat      
Hallo,

was ist hier Messdaten_Aufbereitung? In dem zur Verfügung gestellten Code sehe ich kein Problem.

Wie gesagt: versuch mal mit dem Debugger herauszufinden, ob das Feld am Anfang des Callbacks vorhanden ist (wenn nicht, liegt das Problem woanders) und wenn ja, mit welchem Befehl es genau verloren geht.

Am besten wäre es, wenn du ein reproduzierbares Beispiel zur Verfügung stellen kannst.

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

Forum-Newbie

Forum-Newbie


Beiträge: 8
Anmeldedatum: 10.02.14
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 21.06.2014, 14:45     Titel:
  Antworten mit Zitat      
Hallo,

also vor dem Aufruf des Srikptes Labview Daten sind alle Handles da, danach nurnoch die, die mit guidata(Messdaten_Aufbereitung,handles) übergeben werden.

Messdaten Aufbereitung ist die Hauptfunktion die zur .fig gehört. es scheint also als ob der oben genannte Befehl die handles nicht hinzufügt sondern überschreibt, richtig?

Ich lad mal alles inklusive einem Datensatz hoch, dieser kann bei lvm importieren importiert werden, da ich auch hier Matlab dateien zulassen will... danach Importieren und verarbeiten mit Messdaten auswerten...


Vielen Dank schonmal, Hannes

20131128_Messung_40mmSchritte_5Hz_IR2.rar
 Beschreibung:
Datensatz

Download
 Dateiname:  20131128_Messung_40mmSchritte_5Hz_IR2.rar
 Dateigröße:  7.18 MB
 Heruntergeladen:  454 mal
importfile.m
 Beschreibung:

Download
 Dateiname:  importfile.m
 Dateigröße:  3.67 KB
 Heruntergeladen:  332 mal
Labview_Daten.m
 Beschreibung:

Download
 Dateiname:  Labview_Daten.m
 Dateigröße:  6.79 KB
 Heruntergeladen:  328 mal
Messdaten_Aufbereitung.m
 Beschreibung:

Download
 Dateiname:  Messdaten_Aufbereitung.m
 Dateigröße:  16.33 KB
 Heruntergeladen:  335 mal
Messdaten_Aufbereitung.fig
 Beschreibung:

Download
 Dateiname:  Messdaten_Aufbereitung.fig
 Dateigröße:  6.98 KB
 Heruntergeladen:  341 mal
Private Nachricht senden Benutzer-Profile anzeigen
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 24.495
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 21.06.2014, 17:16     Titel:
  Antworten mit Zitat      
Hallo,

ich habe jetzt die Dateien noch nicht angeschaut, weil ich so ahne, wo das Problem ist: du musst bei guidata ein Handle auf die GUI oder eine darin enthaltene Komponente zurückgeben. Mit Defaulteinstellungen geht:
Code:
guidata(handles.figure1,handles);


Es ist nicht sinnvoll, da quasi nochmal die GUI selbst aufzurufen, wie du es momentan tust.

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

Forum-Newbie

Forum-Newbie


Beiträge: 8
Anmeldedatum: 10.02.14
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 22.06.2014, 23:39     Titel:
  Antworten mit Zitat      
Problem ist gelöst, war, nunja, ein ziemlich dämlicher Fehler. Aus der Zeit als ich das Skript so verwendet habe war noch ein
Code:
drin um alle Hilfsvariablen zu löschen... dieser hat auch die handels verhauen...


Danke Harald trotzdem für die schnellen Antworten!

Grüße
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.