RT FIFO Watchdog
Ich habe zwar kein LV RT, aber meine Meinung dazu:
Wenn man mehrere Tasks benutzt ist eine der besten Möglichkeiten für die Kommunikation zwischen den Tasks eine Queue. Vorteil ist klar: wenn die zweite Task der ersten nicht nachkommt werden die Datensätze in der Queue abgepuffert. Z.B. In der ersten Task werden die Daten von der seriellen Schnittstelle ausgelesen und in eine Queue reingeschrieben. In der zweiten Task wird diese Queue ausgelesen und in eine Datei auf der Festplatte abgespeichert. Wenn aber die Festplatte gerade mit etwas anderem beschäftigt ist (z.B. ein anderes externes Programm greift auf die zu) dann bleiben die Daten solange im Queue-Puffer drin, bis die Festplatte wieder frei ist.
Jetzt der Unterschied zur RT FIFO:
Real Time bedeutet eine von äusseren Einflüssen unabhängige Ausführung von Funktionen (VIs) mit einem festem Timing. Z.B. Umschalten zwischen den Tasks erfolgt in 15 ns, Schreibzugriff auf eine Queue erfolgt in 30 ns, Lesezugriff auf eine Queue erfolgt in 24 ns u.s.w.
So kann man davon ausgehen, dass ein Schleifendurchlauf eine bestimmte Zeit dauert und ist wiederholbar. Dann ist eine RT FIFO nichts anderes, als eine Queue mit einem festdefiniertem Schreib- und Lesezugriffsdauer.
Meine Meinung kann auch falsch sein, es ist nur eine Vermutung.
Gruss, Eugen
|