27.10.2009, 09:40
Hallo User,
ich möchte in einer State-Machine in einem Case auf einen Eingang (Lokale Variable) warten.
Wenn die Zeit des Verzögerungsgliedes abgelaufen ist in den nächsten Case springen und eine Fehlermeldung ausgeben.
Sollte während der Wartezeit aber der Eingang "True" werden, möchte ich in einen anderen Case springen.
Soweit funktioniert das auch. Allerdings fängt die Zeit des Wartegliedes nicht immer bei 0 an, daher sind die Zeiten sehr unterschiedlich
und sehr ärgelich, wenn die Meldung z.B. schon nach 1 Sekunde kommt statt nach eingestellten 10s. Die Einstellung "Automatisches Rücksetzen" ist gesetzt,
sonst funktioniert es gar nicht, da die Komponente nie zurückgesetzt wird.
Ich habe hier leider ein Express-VI benutzt, da es mir mit anderen Zeitkomponenten nicht gelungen ist. Die anderen Komponenten
für eine Verzögerung ließen sich durch den True-werdenden Eingang nicht unterbrechen.
Wie kann ich also sicherstellen, dass die Zeit immer von Null-beginnt?
bzw. welche elegantere Lösung gibt es für ein solches Problem?
Vielen Dank.
LV-Version: 8.5
ich möchte in einer State-Machine in einem Case auf einen Eingang (Lokale Variable) warten.
Wenn die Zeit des Verzögerungsgliedes abgelaufen ist in den nächsten Case springen und eine Fehlermeldung ausgeben.
Sollte während der Wartezeit aber der Eingang "True" werden, möchte ich in einen anderen Case springen.
Soweit funktioniert das auch. Allerdings fängt die Zeit des Wartegliedes nicht immer bei 0 an, daher sind die Zeiten sehr unterschiedlich
und sehr ärgelich, wenn die Meldung z.B. schon nach 1 Sekunde kommt statt nach eingestellten 10s. Die Einstellung "Automatisches Rücksetzen" ist gesetzt,
sonst funktioniert es gar nicht, da die Komponente nie zurückgesetzt wird.
Ich habe hier leider ein Express-VI benutzt, da es mir mit anderen Zeitkomponenten nicht gelungen ist. Die anderen Komponenten
für eine Verzögerung ließen sich durch den True-werdenden Eingang nicht unterbrechen.
Wie kann ich also sicherstellen, dass die Zeit immer von Null-beginnt?
bzw. welche elegantere Lösung gibt es für ein solches Problem?
Vielen Dank.
LV-Version: 8.5