04.12.2006, 16:31
Hallo
Ich habe folgende Aufgabe zu lösen: Mehrere analoge Kanäle (Spannungen, Temperatur) sollen permanent überwacht werden, um im Fehlerfall (z.B. bei stark ansteigender Spannung) die Anlage möglichst zeitnah abzuschalten. Gleichzeitig muss ich einen digitalen Eingang überwachen, der mir an einem bestimmten Punkt des Prozesses ein Triggersignal (1ms lang) übergibt. Nehmen wir an, das ist der Schaltzeitpunkt, dann kann ich mit diesem Trigger meine analogen Werte genau zum Schaltzeitpunkt bestimmen und abspeichern. Werte zu allen anderen Zeitpunkten sind belanglos und dienen nur wie bereits erwähnt zur Überwachung.
Wenn ich nun die Datenerfassung mit einem Starttrigger initialisiere, klappt dies zwar problemlos, aber ich kann währenddessen nicht die Werte auslesen und überwachen.
Nun habe ich eine weitere Variante versucht. In einer Schleife werden fortlaufend die analogen und der digitale Wert erfasst. Diesmal mit kontinuierlicher Messung ohne Triggersteuerung. Somit gelingt die Überwachung. Der Plan ist, dass ich dann meine Messwerte "nach außen" gebe, wenn der Trigger den logischen Wert 1 erreicht. Ich habe also quasi eine manuelle Triggerüberwachung programmiert.
Das gelingt theoretisch, praktisch wird meine Schleife jedoch zu langsam durchlaufen, das Triggersignal ist zu kurz, um es detektieren zu können. Ich kann zwar die Taktrate in dem Timing-Modul erhöhen, aber nicht auf die benötigten 2000 Hz. Wenn ich den Wert zu hoch einstelle, kommt die Funktion zum Auslesen nicht hinterher, die Werte im Kartenspeicher werden bereits überschrieben, ohne dass ich sie vorher gelesen habe. Es gibt einen Error.
Habt ihr vielleicht noch eine Idee, wie man eine kontinuierliche Messung mit zusätzlicher Triggerung hinbekommen kann? Wäre für jeden Hinweis dankbar.
Ich habe folgende Aufgabe zu lösen: Mehrere analoge Kanäle (Spannungen, Temperatur) sollen permanent überwacht werden, um im Fehlerfall (z.B. bei stark ansteigender Spannung) die Anlage möglichst zeitnah abzuschalten. Gleichzeitig muss ich einen digitalen Eingang überwachen, der mir an einem bestimmten Punkt des Prozesses ein Triggersignal (1ms lang) übergibt. Nehmen wir an, das ist der Schaltzeitpunkt, dann kann ich mit diesem Trigger meine analogen Werte genau zum Schaltzeitpunkt bestimmen und abspeichern. Werte zu allen anderen Zeitpunkten sind belanglos und dienen nur wie bereits erwähnt zur Überwachung.
Wenn ich nun die Datenerfassung mit einem Starttrigger initialisiere, klappt dies zwar problemlos, aber ich kann währenddessen nicht die Werte auslesen und überwachen.
Nun habe ich eine weitere Variante versucht. In einer Schleife werden fortlaufend die analogen und der digitale Wert erfasst. Diesmal mit kontinuierlicher Messung ohne Triggersteuerung. Somit gelingt die Überwachung. Der Plan ist, dass ich dann meine Messwerte "nach außen" gebe, wenn der Trigger den logischen Wert 1 erreicht. Ich habe also quasi eine manuelle Triggerüberwachung programmiert.
Das gelingt theoretisch, praktisch wird meine Schleife jedoch zu langsam durchlaufen, das Triggersignal ist zu kurz, um es detektieren zu können. Ich kann zwar die Taktrate in dem Timing-Modul erhöhen, aber nicht auf die benötigten 2000 Hz. Wenn ich den Wert zu hoch einstelle, kommt die Funktion zum Auslesen nicht hinterher, die Werte im Kartenspeicher werden bereits überschrieben, ohne dass ich sie vorher gelesen habe. Es gibt einen Error.
Habt ihr vielleicht noch eine Idee, wie man eine kontinuierliche Messung mit zusätzlicher Triggerung hinbekommen kann? Wäre für jeden Hinweis dankbar.