Der Arbitrary-Waveform-Generator (AWG) ist ein leistungsstarker und flexibel einsetzbarer Signalgenerator zur Ausgabe von Signalen beliebiger Formen innerhalb seiner Bandbreite. Ein fabrikneues Gerät muss zunächst mit verschiedenen Signalformen angereichert werden. Die Kosten für das Erzeugen, Aufzeichnen, Bearbeiten und Übertragen von Signalformen im Rahmen von Tests können jedoch schnell die Kosten des Generators erreichen.
Dieser Artikel hat zum Ziel, den Prozess zum Erzeugen, Aufzeichnen, Bearbeiten und Übertragen von Signalformen auf einen AWG zu vereinfachen und zeigt dazu Beispiele. Behandelt werden in diesem Zusammenhang der Funktionsgenerator, die Signalerzeugung mithilfe von Gleichungen sowie die Übertragung aufgezeichneter Signale von Digitizern, Oszilloskopen und Mathematikprogrammen von Drittherstellern wie Matlab. Darüber hinaus erfolgt eine Erläuterung über das Be- und Verarbeiten dieser Wellenformen. Der Fokus im Bereich Hardware liegt auf den beiden AWG-Serien M2i.6xxx und M4i.66xx PCIe von Spectrum (Bild 1).
Eckdaten
Die leistungsstarken Arbitrary-Waveform-Generatoren (AWG) von Spectrum sind zur Ausgabe von Signalen beliebiger Formen innerhalb seiner Bandbreite flexibel einsetzbar. Als GUI und Schnittstelle zum Erzeugen, Aufzeichnen und Übertragen von AWG-Signalen dient das umfangreiche Messtechnik-Tool SBench 6. Die Software beinhaltet einen Funktionsgenerator, kann komplexe Wellenformen per Berechnung erzeugen und verfügt über diverse Importfilter für das Laden aufgezeichneter Signale in unterschiedlichen Datenformaten.
Diese modularen AWG-Produkte umfassen insgesamt 16 Modelle mit 1 bis 4 Kanälen und Abtastraten von 20 MS/s bis 1,25 GS/s mit Bandbreiten von 10 bis 400 MHz bei einer Auflösung von 8, 14 oder 16 Bit. Sämtliche AWG-Produkte nutzen identische Treiber und Unterstützungssoftware.
AWG als Funktionsgenerator
Jeder AWG lässt sich als einfacher Funktionsgenerator zur Erzeugung und Ausgabe von Standard- und DC-Signalen auf direktem Weg und ohne komplexe Operationen nutzen. Der Easy-Generator ist Teil des Softwarepakets SBench 6, einer leistungsstarken, intuitiven und interaktiven Messsoftware für die Aufzeichnung, Verarbeitung und Erzeugung von Signalen. Sie ist für den Einsatz aller Digitizer, AWGs und LAN-basierter Digitizer-Netbox-Systeme von Spectrum ausgelegt.
Der Easy-Generator (Bild 2) erzeugt Sinus-, Rechteck-, Dreieck-, Sägezahn-, SINC- und DC-Wellenformen, die sich vom Benutzer in Frequenz, Phase, Amplitude und vereinzelt im Tastverhältnis anpassen lassen. Jeder verfügbare Ausgangskanal lässt sich individuell konfigurieren – ein Klick auf den Start-Button schaltet die Signale aktiv.
Wellenformen berechnen
Die genauesten Signalformen lassen sich per Berechnung aus mathematischen Gleichungen generieren. Sie sind präzise, wiederholgenau und ermöglichen die Erzeugung unterschiedlichster Testsignale. SBench 6 enthält einen Editor als Teil eines Funktionsgenerators, der die Erzeugung von Wellenformen mithilfe textbasierter Gleichungen ermöglicht. Der Editor des Funktionsgenerators lässt die Erstellung von Gleichungen in Textform zu und ermöglicht die Auswahl von Abtastrate, Amplitude und Dauer der Wellenform. Die verfügbaren Operatoren, Konstanten und Rechenfunktionen des AWG sind in Bild 3a aufgeführt.
Sämtliche Rechenfunktionen erfordern mindestens ein Argument. Das Standardargument x (aktuelle Abtastung) reicht von Null bis [Länge-1]. Dieses Argument kann auch mithilfe eines weiteren Ausdrucks verändert werden, wodurch sich sich die Zeitbasis des resultierenden Signals beeinflussen lässt. Zudem nehmen die folgenden konditionalen Rechenfunktionen aufgeführte Werte auf Grundlage der Argumente an:
- if (x, min, max): wenn x >= min und x <= max, dann ist das Ergebnis 1, anderenfalls Null
- sign (x): Ergebnis ist -1, wenn das Argument negativ ist, und +1, wenn das Argument positiv ist
- tri (x,d): Dreieck mit d% einer ansteigenden Periode, die andere 100-d% fallend
- rect (x,d): Rechteck mit d% einer hohen Periode, die andere 100-d% niedrig
In Bild 3b ist ein Beispiel für die Erzeugung des Sinus-Sweeps unter Anwendung der oben aufgeführten Operatoren und Funktionen zu sehen. Spectrum bietet einen Anwendungshinweis mit 24 Beispielen für Gleichungen zur Erzeugung von Wellenformen. Der Hinweis steht auf der Homepage (http://spectrum-instrumentation.com) zur Verfügung.
Importieren von Signal-Dateien
Signalformen können wie gezeigt lokal in der Software SBench 6 von Spectrum erzeugt werden. Signalformen können auch durch andere Quellen erzeugt oder aufgezeichnet werden, unter anderem mit Messgeräten wie Digitizern und digitalen Oszilloskopen oder mit Softwaretools wie Tabellenkalkulationen, Mathematikprogrammen und Systemintegrationssoftware. Signalformen aus diesen Quellen können in SBench 6 importiert und in einem der nachstehend aufgeführten Importformate an den AWG gesendet werden.
- SBench 6 importieren: Laden einer Datendatei im Format SBench 6, einschließlich aller darin enthaltenen Signale.
- SBench 5 importieren: Laden und Verwenden einer Datendatei im älteren Format SBench 5
- ASCII-Datei importieren: Laden einer ASCII-Datei, die spaltenbasierte Signaldaten enthält. Diese Funktion versucht das Datenformat zu bestimmen und konvertiert die Daten anschließend in ein gültiges Signal.
- Wave-Datei importieren: Laden einer Standard-Audiodatei im Format *.wav. Dabei können auch mehrere Signale von der Wave-Datei abgeleitet und in SBench 6 angezeigt werden. Nicht in der Wave-Datei enthaltenen Dateninformationen werden auf einen Standardwert gesetzt.
- Binäre Datei importieren: Laden einer reinen Binärdatei, die ausschließlich Signaldaten ohne Header-Informationen enthält. Die Funktion sucht nach einem zusätzlichen, von SBench 6 geschriebenen Header, und verwendet die darin gespeicherten Informationen. Wird keine Header-Datei mit grundlegenden Informationen gefunden, fordert SBench 6 zur Eingabe der erforderlichen Informationen auf.
Weitere Dateiformate sind in Bild 4 aufgelistet.
Signale eines Spectrum-Digitizers importieren
Signalformen von einem Spectrum-Digitizer können einfach per AWG-Instanz der Software SBench 6 importiert werden.
Das gewünschte Signal wird mit dem Digitizer aufgenommen wobei man sicherstellen muss, dass Amplitude, Bandbreite und Abtastrate des Signals innerhalb des zulässigen Bereichs des AWG liegen. Nach Abschluss der Aufzeichnung wird das Menü
Nun wird die AWG-Instanz von SBench 6 geöffnet. In Bild 5 sind die für den Import des Signals in den AWG erforderlichen Schritte dargestellt. Gewählt wird im Menü
Jetzt wechselt man zum Fenster „Ausgangskanäle“ in der unteren linken Ecke der AWG-Instanz von SBench 6. Der gewünschte Ausgangskanal wird ausgewählt. Nun klickt man auf den gewünschten Eingangskanal und zieht ihn zum gewünschten Ausgangskanal. Im zugewiesenen Datenfeld des Ausgangskanals sollte jetzt der Name des importierten Signals angezeigt werden.
Anschließend klickt man mit der rechten Maustaste auf den Ausgangskanal und wählt
Es ist zu beachten, dass das gewünschte Ausgangssignal dem gewählten Ausgangskanal auch mithilfe des Popupfensters „Einrichtung Kanal“ zugewiesen werden kann. Außerdem muss beachtet werden, dass in diesem Popupfenster der Amplitudenbereich und die zugehörigen Konfigurationspunkte für den Ausgangskanal festgelegt werden können.
Aufgezeichnete Signale aufbereiten
Bild 7 zeigt eine Situation, in der fünf Ultraschallwellenformen mithilfe des Mehrkanal-Aufzeichnungsmodus des Digitizers aufgezeichnet wurden. Diese Signale wurden in die AWG-Instanz von SBench 6 importiert. Das für die Simulation dieser Aktion gewünschte Signal ist der Durchschnitt der fünf importierten Signale.
Die Berechnung kann in SBench 6 erfolgen, indem man mit der rechten Maustaste auf das importierte Signal klickt und im anschließend angezeigten Kontextmenü die Option
Durch Klicken auf die Schaltfläche
Digitizer oder digitales Oszilloskop als Signallieferant
Mithilfe digitaler Oszilloskope können Signale in verschiedenen Dateiformaten aufgezeichnet und gespeichert werden. In der Regel gibt es ein proprietäres binäres Format, das für die interne Speicherung verwendet wird. Es gibt auch textbasierte Formate einschließlich der Formate für ASCII, MATLAB (.dat) und Tabellenkalkulationsprogramme (.csv). Am einfachsten lassen sich diese textbasierten Formate durch die Importfunktion von SBench 6 auf den AWG übertragen.
SBench 6 kann ASCII-Importe mit einer Spalte für die Amplitude (Y) oder mit zwei Spalten für die Amplitude (Y) und die Zeit (X) verarbeiten. Die Software durchsucht die Datei und versucht automatisch das Datenformat einschließlich Länge der Datei, Taktfrequenz und Amplitudenbereich zu bestimmen.
Das Signal sollte mit Einstellungen zu Amplitudenbereich, Abtastrate und Speicherlänge aufgezeichnet werden, die mit dem AWG kompatibel sind. Gespeichert wird die Signalform entweder in einem Format mit einer Spalte für die Amplitudendaten oder mit zwei Spalten für die Amplituden- und Zeitdaten. Das Format und der Dateiname, unter dem die Signalform gespeichert wird, sollte notiert werden.
Nun importiert man die Datei über den Eintrag
Nach dem erfolgreichen Signalimport zieht man das Quellsignal vom Importfeld im Fenster „Kanäle“ zum gewünschten Ausgangskanal, wie im Abschnitt „Signale eines Spectrum-Digitizers importieren“ oben bereits erwähnt.
Signale von Drittanbietern importieren
Signalformen lassen sich auch durch Mathematik-, Tabellenkalkulations- und Systemintegrationsprogramme von Drittanbietern, beispielsweise Matlab, Excel oder Labview, erzeugen. Das allgemeine Verfahren ist insofern identisch, als das die Signaldaten als ASCII-Datei gespeichert und in SBench 6 importiert werden. In Bild 9 ist ein Beispiel für die Verwendung von Matlab dargestellt. Die Abtastrate und der Amplitudenbereich des Signals sollten innerhalb des Arbeitsbereichs des verwendeten AWG liegen. Eine bei optischen Messungen häufig genutzte Ein-Volt-SINC2-Funktion wird unter Verwendung einer Abtastrate von 100 MS/s berechnet und als ASCII-Datei gespeichert. Im Menü „Datei“ wird erneut die ASCII-Importfunktion aufgerufen, anschließend wird das Quellensignal ausgewählt und im Fenster „Basic File Setup“ werden die entsprechenden ASCII-Einstellungen vorgenommen. Nach Bestätigung der ASCII-Einstellungen wird das Signal importiert und im Fenster „Eingangskanal“ in der oberen linken Ecke von SBench 6 angezeigt. Nun kann sie auf den gewünschten Ausgangskanal oder in die analoge Anzeige gezogen werden. In SBench 6 kann das Signal auch durch Berechnungstools verarbeitet und anschließend auf einen Ausgangskanal übertragen werden.
Matlab und Labview bieten hervorragende Tools zur Formatierung von Dateien. Mit etwas Programmiererfahrung können Benutzer Daten im Binärformat ausgeben und mithilfe geeigneter Treiber von Spectrum direkt in den AWG geladen werden. Treiber und zugehörige Handbücher stehen auf folgender Webseite zur Verfügung: http://spectrum-instrumentation.com/en/downloads/drivers.
Verwendung von Wave-Dateien
Audiodateien, aufgrund der Extension .wav auch Wave-Dateien genannt, werden zur Codierung von Geräuschen, Musik und ähnlichen Signalformen verwendet. Solche Dateien lassen sich nach SBench 6 portieren (Bild 10).
Die Importfunktion im Menü „Datei“ fordert zur Eingabe eines Dateinamens und eines Amplitudenbereichs auf. Wie bei den anderen Verfahren zum Importieren von Signalen lassen sich importierte Signalformen per Drag & Drop an den gewünschten Ausgabeport oder in eine der analogen Anzeigen ziehen.
In guter Zusammenarbeit
SBench 6 ist ein leistungsstarkes Messtechnik-Tool zur Erzeugung von Signalformen, das sämtliche Arbitrary Waveform-Generatoren von Spectrum unterstützt. Der Einsatzbereich reicht vom Betrieb einfacher Funktionsgeneratoren über die Erzeugung komplizierter Signalformen und Vorsignalverarbeitung bis hin zum schnellen Import verschiedener Signalformate. Die Software dient als Schnittstelle zwischen dem AWG und anderen Signalquellen, indem es das direkte Laden von Signalformen in den AWG ohne zusätzliche Programmierung ermöglicht.
Alle Screenshot-Bilder stehen hochauflösender als PDF-Download zur Verfügung.
Arthur Pini
Greg Tate
Oliver Rovini
(jwa)