Hallo Jungs,
ich spiel grad ein bisschen mit AO (Regeneration aus, 50er Blöcke werden pro Zyklus geschrieben) rum. Folgendes kapier ich nicht: Das DAQ-Write VI fängt erst an zu warten, wenn der Kartenpuffer von 8191 Samples voll ist - vorher hab ich 'ne ungebremste Schleife. Das blöde ist dann, wenn ich meine Amplitude ändere, habe ich 8 Sekunden (1kHz Samplingrate) Verzögerung bis die neuen Werte am AO ankommen. Ist doch ziemlich unpraktisch, oder?
Wenn ich nun mit dem Metronom entsprechend selbst für das Warten sorge (50ms), reagiert der AO wie gewünscht instantan. Aber so richtig gefällt mir das auch nicht. Der Treiber hat das zu erledigen ...
Wenn ich die Wartezeit auf ein bisschen länger stelle als "nötig",
bleibt der Wert "DAQmx Eigenschaft - AktSchreibPos" brav auf Null (gut!), aber der Treiber meckert natürlich direkt, dass er zu langsam Werte bekommt ... verständlich.
(EDIT: Bleibt auf Null, weil er sich der DAQ Treiber direkt verabschiedet - also doch nicht gut.)
Wie konfiguriere ich jetzt die ganze Geschichte, dass
1) der Treiber die Schleife bremst - wie das beim AI wunderbar funktioniert
2) der PC Pufferinhalt nicht kontinuierlich wächst
3) ich eine möglichst geringe Verzögerung habe?
Beste Grüße
Edit:
Mir ist aufgefallen, dass der AO selbst nach Beendigung des Tasks immernoch die zuletzt angegebene Spannung ausgibt. Daraufhin hab ich mein BD auf folgendes reduziert und schon scheint alles zu fluppen - ohne irgendwelche Puffer scheint mir.