Nun meine eigentliche Schwierigkeit. Ich möchte, dass eine weitere Triggerfunktion durch die StopFcn des ersten Triggers ausgelöst wird, welche ich so definiere:
Code:
function almemo_timer(hObject, eventdata, handles) clc
Und schließlich soll dort eine Messwertabfrage an ein weiteres Gerät gestartet werden und eine Grafik, welche die separierten Messwerte pro Durchlauf plottet und beim Stoppen in eine Exceldatei schreibt.
Code:
function almemo_auslesen(timerObj, event, serial5)
switch(event.Type) case 'StartFcn'
disp('Almemo-Messgerät gestartet...') disp(datestr(now))
grafik = figure('Name', 'Grafik');
case 'TimerFcn'
figure(grafik) % Senden der Messstellenabfrage für alle aktiven Messkanäle fwrite(serial5, 's') % Empfangen der 65 Zeichen und transponierte Umwandlung Dec->Char char(fread(serial5, 65)') % Leerzeichen entfernen
messwert_M = strrep(ans, ' ', '');
% Anzahl bisheriger Durchläufe
n = T_Almemo.TasksExecuted % Messzeit als Cell-Array separieren
messzeit(n) = {messwert_M(5:15)};
% Absolutdruck separieren
messwert_M00(n) = str2double(messwert_M(20:25));
% Geschwindigkeit separieren
messwert_M01(n) = str2double(messwert_M(31:37));
% Differenzdruck separieren
messwert_M11(n) = str2double(messwert_M(43:49));
Meine erste Frage ist, dass es innerhalb des zweiten Timers Probleme mit der Variablendeklaration gibt. Es taucht folgende Fehlermeldung auf:
Zitat:
Almemo-Messgerät gestartet...
18-Feb-2011 12:49:15
??? Error while evaluating TimerFcn for timer 'Timer2'
Undefined function or variable "grafik".
??? Error while evaluating StopFcn for timer 'Timer2'
Undefined function or variable "grafik".
Man sieht also schon, wie weit es läuft (über das Erreichen der StopFcn des zweiten Timers mache ich mir erst später Gedanken). Es soll erstmal nur kontinuierlich zeichnen. Also ist meine erste Frage: Wie muss ich die Verwendung der Variablen bewerkstelligen.
Ich weiß, dass es sehr umfangreich ist, hoffe aber trotzdem auf eure Hilfe.
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.