01.01.2015, 18:09
Hallo Paul,
du hast da noch ein paar Ungereimtheiten:
Momentan wird nicht das i-te Arrayelement indiziert, sondern irgendwas mit dem Faktor 5 multipliziertes und aus beiden Countern berechnetes…
Das kann man mittels Modulo-Arithmetik so ausdrücken:
[attachment=51687]
Mit dem Test auf ">0" kann man dann counter_2 erhöhen…
Und wo wird "stop_fkt" zu FALSE?
Wenn du noch ein oder zwei weitere Bedingungen formulierst, bist du ruckzuck bei einer sauberen Statemachine angelangt. Dies dürfte auf längere Sicht auch ein sinnvoller Weg für dich darstellen…
du hast da noch ein paar Ungereimtheiten:
Code:
for i = 0:Array(end)
Zeit_Teilversuch = Array(i);
Code:
% Zählen Counter
if counter_1 = 5
counter_1 = 0;
[attachment=51687]
Mit dem Test auf ">0" kann man dann counter_2 erhöhen…
Code:
if stop_fkt = true
Wartezeit_Anfang = now;
while stop_fkt = true
Wartezeit_Ende = now;
end
Zitat:wie ich in Zukunft die Warten-Funktion so modifizieren kann, dass auch bei langer Wartezeit die counter konstant gehalten werden.Eine lange Wartezeit von z.B. 100s löst man programmatisch durch entsprechend viele kurze Wartezeiten, z.B. 200× 0.5s…
Wenn du noch ein oder zwei weitere Bedingungen formulierst, bist du ruckzuck bei einer sauberen Statemachine angelangt. Dies dürfte auf längere Sicht auch ein sinnvoller Weg für dich darstellen…