Hallo Patrick,
ompf hat geschrieben:So, habe hier gerade das Manual vom NGSM 32/10 liegen. Die zeitliche Auflösung beträgt 1ms, die Spannungsauflösung 10mV. Das sind auch gleichzeitig die Interpolationsstufen. D.h. wenn ich in 2ms von 5V auf 10V will, springt der Ausgang nach 1ms auf 7,5V, und nach einer weiteren ms auf 10V.
Tja, da sind wir vielleicht schon beim zentralen Problem: Wie schön muß denn die Kurvenform aussehen? Bei der Originalkonstruktion des DCG mit nur einem DAC tastet sich die Sollspannung über die RC-Ladekurve von R19/C13 mit dem Choppermechanismus von U8a+c heran. D.h. mit anderen Worten, wenn der Spannungssprung zu hoch ist, reicht ein Takt nicht aus und der nächste muß abgewartet werden. Dann kann das Erreichen des Sollwertes vor U6 schon mal etwas länger dauern. Probier' mal bitte aus, ob Dir die "Qualität" ausreicht. Im Ripplemodus läßt sich das direkt am Oszi ablesen.
Ich habe meine beiden DCGs auf Dual-DAC-Betrieb umgebaut. Da liegt der Sollwert ständig am Ausgang des DAC an und die Zeitkonstante von R19/C13 könnte eigentlich fast beliebig klein gewählt werden.
ompf hat geschrieben:Man kann maximal 60 Stützstellen (Spannung|Zeit) programmieren. Die Startadresse kann man vorgeben und ein Zeitintervall von 0ms wird als Programmende interpretiert, so daß mehrere Impulsformen hintereinander im Speicher liegen können.
Das muß ich mir mal in einer ruhigen Minute ansehen, was der Speicher da hergibt. Wenn man überschlagsweise mit Integer rechnet, dann sehe ich in der Interruptroutine eigentlich kein Problem, die Werte zu interpolieren.
ompf hat geschrieben:Das Programm kann einmalig (auf Tastendruck bzw IEEE-488-Befehl) oder zyklisch durchfahren werden.
Die Steuerung per Encoder oder Bus-Kommando macht mir im Augenblick das geringste Kopfzerbrechen. Das sollte sich machen lassen.
Viele Grüße
Paul