DIAdem

cancel
Showing results for 
Search instead for 
Did you mean: 

Genrierung eines Rechteckimpulses mit variabler Schrittweite

Hallo,
ich muß einen Rechteckimpuls mit variabler Schrittweite generieren und dieses Signal über eine Goldammer PCI-Karte als analoges Signal ausgeben, um Magnetventile anzusteuern. Kann mir jemand erklären, wie ich vorzugehen habe?
0 Kudos
Message 1 of 6
(4,267 Views)
Hallo kawaZ900,

um Signale in Echtzeit zu erzeugen, kann der GFS_TIMER verwendet werden. (Die gleichnamige DLL muss über die GPI-DLL-Registrieung angemeldet werden.)

Da ich nicht genau verstanden habe, was mit Schrittweite gemeint ist, habe ich ein Beispiel erstellt (siehe Attached files), das so ziemlich alles an einem Rechteck variabel und online einstellbar zur Verfügung stellt.

Ich hoffe es hilft bei der Lösung der Fragestellung.

Viele Grüße

Walter Rick
(bmwR1150GS)
0 Kudos
Message 2 of 6
(4,267 Views)
Hallo,
danke für die schnelle Antwort aber da ich Diadem Anfänger bin, weiß ich leider nicht, wie ich die Datei, die du mir geschickt hast einbinde. Ist das ein VBS? Mit variabler Schrittweite ist gemeint, daß ich ein Rechtecksignal erzeugen muß, mit einer bestimmten Amplitude, welches 6 ms lang anliegt, dann 10ms lang auf null springt, dann wieder 6ms lang anliegt usw.

Grüße Markus
0 Kudos
Message 3 of 6
(4,267 Views)
Hallo Markus,

es gibt immer mehrere Wege, die zum Ziel führen, auch in DIAdem. Das erste Attachment enthält einen Schaltplan für DAC, mit dem ein Rechtecksignal in Echtzeit erzeugt werden kann (der Takt müßte noch auch 1000Hz gestellt bzw. die Schieber richtig positioniert werden - aber das wirst du dann schon sehen).

Das neue Attachment ist ein Script, das ein Rechtecksignal (mit Zeitkanal) erzeugt. Die Parameter sind in Variablen definiert. Dieses Signal kann auch ausgegeben werden. Die höhere Genauigkeit bezogen auf Echtzeit ist aber mit der erste Lösung realisiert.

Gruß

Walter Rick
0 Kudos
Message 4 of 6
(4,267 Views)
Hallo,
ich habe versucht das Signal mit dem DAC Plan zu erzeugen.Der GfsTimer ist aktiviert.Leider ist das Signal nicht stabil.Den Takt habe ich auf 2000Hz eigestellt um die 6ms hinreichend genau darstellen zu können. Das an die Goldammer Messkarte angeschlossenes Oszi zeigt immer wieder Aussetzer.Ein weiteres Problem stellt die Einbindung eines so erzeugten Signals in ein VBS Script dar.Ich muß vier solcher Signale gleichzeitig und zeitsynchron ausgeben. Ich habe mal ein Bild beigefügt(Signal).Ich hoffe, daß man erkennen kann, daß es nicht immer der 6/10 ms Abstand ist.Könntest Du/Ihr mir da noch einen Tipp geben, da ich einfach nicht weiterkomme?

Gruß Markus
0 Kudos
Message 5 of 6
(4,267 Views)
Hallo Markus,

prinzipiell muss man wissen, dass es für alles Grenzen gibt. Das gilt natürlich auch für Software und Hardware. Die angepeilten 2 KHz pro Kanal sind schon ganz schön hoch. Für DIAdem ist die Summenabtastrate entscheidend. In etwa berechnet die sich aus der Summe aller Signalerzeuger (also aller analogen Eingänge oder Simulationsblöcke), der Summe aller F(x)-Blöcke und der Summe aller Ausgänge und das alles multipliziert mit der Abtastrate. Nach meiner Schätzung ergibt das mindestens 25 KHz. Das setzt schon einen schnelleren PC voraus (und mit VBS ist das nicht mehr zu lösen).
Was das instabile Signal betrifft, so fällt mir nur ein, dass irgendwo der Schalter zum Interrupt-Betrieb nicht gesetzt ist (GFSTimer oder Analogaus
gang).

Ich hoffe die Info hilft weiter.

Gruß

Walter Rick
0 Kudos
Message 6 of 6
(4,267 Views)