Mit Skripten und Mathematikmodulen Oszilloskop und Funktionsgenerator automatisieren

Autor / Redakteur: Richard Oed* / Dipl.-Ing. (FH) Hendrik Härter

Oszilloskope sind für Ingenieure die erste Wahl. Ein spezielles Oszilloskop erlaubt mathematische Berechnungen von Messsignalen, testet automatisiert und arbeitet als Funktionsgenerator.

Firmen zum Thema

Oszilloskop automatisieren: Mit Scripts und Mathematikmodulen arbeitet das Scope auch als Funktionsgenerator oder es wertet erfasste Signale automatisiert aus.
Oszilloskop automatisieren: Mit Scripts und Mathematikmodulen arbeitet das Scope auch als Funktionsgenerator oder es wertet erfasste Signale automatisiert aus.
(Bild: Digilent)

Das Oszilloskop ist für die täglichen Messaufgaben eines Entwicklers das Werkzeug. Es bietet zahlreiche Möglichkeiten und mit den Geräten lassen sich gute Ergebnisse erzielen. Bei vielen messtechnischen Anwendungen ist es notwendig, die gewonnenen Daten zu dokumentieren oder die Signale weiterzuverarbeiten.

Ein einfaches Beispiel: Sie wollen die aufgenommene elektrische Leistung eines bestimmten Blocks in einer Schaltung quantifizieren. Dabei sind nicht nur die absoluten Werte interessant, sondern Entwickler sind an den Ergebnissen aus der Berechnung eines resultierenden Signalverlaufs interessiert.

Das Oszilloskop und wie die Leistung bestimmt wird

Bild 1: Ein einfaches System zur Leistungsmessung einer aus einem Widerstand und einer Kapazität bestehenden Last.
Bild 1: Ein einfaches System zur Leistungsmessung einer aus einem Widerstand und einer Kapazität bestehenden Last.
(Bild: Digilent)

Viele Oszilloskope messen aber nur Spannungen. Der Strom und damit die Leistung kann somit oftmals nicht direkt bestimmt werden. Daher muss man einen Shunt-Widerstand verwenden, um den durch die Schaltung fließenden Strom zu erhalten. Daraus lässt sich die aufgenommene Leistung berechnen (Bild 1).

Zudem sollte man berücksichtigen, dass die Eingangskanäle von Oszilloskopen oft Single-Ended sind und darum alle Messungen auf Masse bezogen werden müssen. Sie können also den Spannungsabfall über der Last nicht direkt ablesen. Notwendig ist eine zweite Messung, die den Spannungsabfall über den Shunt-Widerstand bestimmt. Hierzu sind einige Berechnungen notwendig, um den Wert für die Leistung zu erhalten.

Mixed-Signal-Oszilloskop mit Software-Unterstützung

Hier kommen Oszilloskope ins Spiel, welche die notwendigen Berechnungen im Gerät selbst ausführen können. Dazu gehört beispielsweise das „Analog Discovery Pro“ (ADP) von Digilent. Es handelt sich um ein vierkanaliges Oszilloskop (eine zweikanalige Version ist ebenfalls verfügbar) mit einer Auflösung von 14 Bit und einer Abtastrate von bis zu 0,5 GSamples/s.

Bild 2: Oszilloskope wie das Analog Discovery Pro von Digilent verfügen über zahlreiche weitere Geräte wie ein Funktionsgenerator, verschiedene Signalanalysatoren und können über Skripte automatisiert werden.
Bild 2: Oszilloskope wie das Analog Discovery Pro von Digilent verfügen über zahlreiche weitere Geräte wie ein Funktionsgenerator, verschiedene Signalanalysatoren und können über Skripte automatisiert werden.
(Bild: Digilent)

Damit ist es ein echtes Mixed-Signal-Messgerät, das die Anforderungen professioneller Prüfplätze im Labor oder zu Hause erfüllt. Neben den analogen Eingängen stehen dem Ingenieur auch 16 digitale I/O-Kanäle, zwei externe Triggereingänge und ein zweikanaliger Arbiträrsignalgenerator zur Verfügung (Bild 2).

Im Vergleich zu einem Laptop ist das Mixed-Signal-Oszilloskop kleiner und leichter und besitzt keine integrierte Benutzerschnittstelle. Es wird über einen seiner vier High-Speed-USB-2.0-Anschlüsse oder über seine Ethernet-Schnittstelle mit einem Host-Computer verbunden und mittels der kostenlosen WaveForms-Software von Digilent bedient.

Die Software läuft auf dem Host und wurde über zehn Jahre hinweg durch Kundenrückmeldungen verfeinert und bietet ein Benutzererlebnis mit dem Look-and-Feel traditioneller Laborgeräte. Sie ist kompatibel mit den Betriebssystemen macOS, Windows und Linux.

WaveForms kommt mit zwölf eingebauten Software-Instrumenten, wie einem Oszilloskop, einem Pattern- und einem Funktionsgenerator (der beispielsweise das Testsignal für unsere Leistungsmessung erzeugen könnte), einer steuerbaren Stromversorgung, digitalen Ein- und Ausgängen, Logik-, Spektrum-, Netzwerk-, Impedanz- und Protokoll-Analysatoren, sowie einem Voltmeter und einem Datenlogger. Benutzer können unterschiedliche Signale aus verschiedenen Domänen erfassen, aufzeichnen, analysieren, dokumentieren und generieren.

Zusätzlich enthält die WaveForms-Anwendung ein Skript-Editor-Tool, mit der Anwender Geräte in JavaScript individuell programmieren können.

Mit der Software alle Instrumente ansteuern

Beim Beispiel der Leistungsmessung ist es jedoch nicht notwendig, ein Skript zu erstellen. Die Oszilloskopanwendung der Software enthält für die Berechnungen sogenannte Mathematikkanäle und das Ergebnis neben den Messungen darstellen können. Um die Gesamtleistung der Schaltung anzuzeigen, schreibt man in das Feld Script des Dialogs für einen Mathematikkanal „(C2 - C1) × C1 / RS“ zu schreiben, wobei RS der Wert des Shunt-Widerstands ist.

Die Gleichung berechnet den Strom, indem sie die Spannung VS über dem Messwiderstand (Kanal 1) durch dessen Widerstandswert RS dividiert und dann das Ergebnis mit der Spannung über der kombinierten Last (Kapazität und Widerstand) multipliziert. Diese ergibt sich aus der Subtraktion der Spannung VS (Kanal 1) von der Spannung VG über der Last (Kanal 2).

Bild 3: Die Mathematikkanäle in der WaveForms-Software machen Berechnungen mit den Eingangswerten des Oszilloskops leicht.
Bild 3: Die Mathematikkanäle in der WaveForms-Software machen Berechnungen mit den Eingangswerten des Oszilloskops leicht.
(Bild: Digilent)

Im gleichen Fenster können die Einheit des Signals und der Bereich des Kanals in Einheiten pro Division festgelegt werden. Ebenso ist es möglich, die Messkanäle und die Mathematikkanäle zur besseren Übersichtlichkeit umzubenennen (Bild 3). Zusätzliche Berechnungen, wie die Leistungsaufnahme des Widerstands RL, können durch Hinzufügen weiterer Mathematikkanäle ebenfalls durchgeführt werden. Neben arithmetischen Operationen unterstützt das Modul trigonometrische Operationen und andere Funktionen.

Mit dem Skript-Modul Anwendungen automatisieren

Bild 4: Das Script-Instrument des Programmes WaveForms ermöglicht das Schreiben von Benutzeranwendungen in JavaScript. Hier ein Beispiel, um eine Tonfolge mit dem WaveGen-Instrument zu erzeugen.
Bild 4: Das Script-Instrument des Programmes WaveForms ermöglicht das Schreiben von Benutzeranwendungen in JavaScript. Hier ein Beispiel, um eine Tonfolge mit dem WaveGen-Instrument zu erzeugen.
(Bild: Digilent)

Jedes der Instrumente von WaveForms kann über Skripte gesteuert werden. Durch Ausführen des JavaScript-Codes im Script-Instrument können Entwickler jedes andere Instrument mit dem Application-Programming-Interfaces (APIs) steuern. Damit ist es möglich, mehrere Instrumente gleichzeitig zu konfigurieren und zu betreiben.

Das Script-Instrument steuert nicht nur andere Instrumente und erfasst Daten. Es enthält außerdem ein Diagrammfenster, in dem der Benutzer die Daten von verschiedenen Instrumenten integrieren und flexibel darstellen kann. Darüber hinaus lassen sich Aktionen der grafischen Benutzerschnittstelle automatisieren, ebenso wie benutzerdefinierte Datenanalysen und -manipulationen.

Damit können Ingenieure Signale überwachen und Messergebnisse dokumentieren. Mit dem WaveForms-Software-Development-Kit (SDK) sind noch mehr Anpassungen möglich, da mit dem SDK kundenspezifische Anwendungen und Skripte in Python, C, C++, C# und Visual Basic erstellt werden können. Für LabVIEW und MATLAB sind Toolkits von Drittanbietern verfügbar (Bild 4).

Bild 5: Im Linux-Modus kann das Analog Discovery Pro über ein serielles Terminal angesprochen werden. Ändern Sie nach der ersten Inbetriebnahme den Benutzernamen und das Passwort.
Bild 5: Im Linux-Modus kann das Analog Discovery Pro über ein serielles Terminal angesprochen werden. Ändern Sie nach der ersten Inbetriebnahme den Benutzernamen und das Passwort.
(Bild: Digilent)

Bild 6: Beispielsskript zur Ansteuerung des Analog-Digital-Wandlers auf einem Pmod AD5 von Digilent.
Bild 6: Beispielsskript zur Ansteuerung des Analog-Digital-Wandlers auf einem Pmod AD5 von Digilent.
(Bild: Digilent)

Im Standardmodus wird das Gerät über einen USB-Port oder die Ethernet-Schnittstelle mit einem Host-PC verbunden, auf dem die WaveForms-Software läuft. Daneben arbeitet das „Analog Discovery Pro“ in einem sogenannten „Linux-Modus.“

In diesem Modus bootet das ADP in eine Terminal-basierte Linux-Distribution von Debian, die auf dem Gerät vorinstalliert ist. Damit lassen sich automatisierte Testskripte, die in Python, C, C++, C# oder Visual Basic geschrieben wurden, über die APIs des WaveForms SDKs ohne einen Host-Computer auszuführen.

Das „Analog Discovery Pro“ verhält sich dann wie ein Embedded-System und bietet zusätzliche Flexibilität und Konnektivität. Das Bild 6 zeigt einen Auszug aus einem Python-Skript, das die Ansteuerung des Analog-Digital-Wandlers auf einem Pmod AD5 von Digilent demonstriert.

Automatisierte Messungen ausführen

Beim Ausführen automatisierter Messungen werden benutzerdefinierte Funktionen für sich wiederholende Aufgaben wie das Zurücksetzen oder Schließen der benutzten Geräte, das Anzeigen von Fehlermeldungen oder das Empfangen und Senden von Daten über die SPI-Schnittstelle durchgeführt.

Zusätzlich müssen Programmierer bestimmte Schlüsselwörter und Interrupt-Handler definieren, bevor diese verwendet werden können. Die vier USB-Ports auf der Rückseite des Geräts sind im Linux-Modus aktiviert. Darüber lassen sich Peripheriegeräte anschließen: kompatible Wi-Fi-Dongle oder ein FAT/FAT32-formatiertes Flash-Laufwerk.

Wenn Skripte auf dem „Analog Discovery Pro“ ausgeführt werden, können Daten lokal gespeichert oder über eine USB- oder eine drahtlose Schnittstelle zur Speicherung, Anzeige und Manipulation gestreamt werden. Dank Internetfähigkeit des ADP sind Cloud-basierte Dienste wie ThingSpeak von MathWorks realisierbar.

Sobald das Gerät im Linux-Modus läuft, ist es über ein serielles Terminalprogramm wie PuTTY oder TeraTerm ansprechbar. Die Kommunikation zwischen dem Gerät und dem Host-Computer erfolgt über USB, Ethernet und Wi-Fi. Eine Internetverbindung für Fernzugriff oder das Internet der Dinge (IoT) ist ebenfalls vorgesehen.

Anwender können über WaveForms und einem angeschlossenen USB-Laufwerk das On-Board-Linux aktualisieren und so das Betriebssystem immer auf aktuellen Stand halten. Aktualisierte OS-Images werden direkt von Digilent zur Verfügung gestellt. Mit den verschiedenen Methoden zur Automatisierung von Aufgaben, wie Mathematikkanäle, Skripte und Linux-Modus, unterstützt das „Analog Discovery Pro“ Ingenieure bei der Entwicklung, Validierung und Prüfung der zunehmend komplexer werdenden Systeme und senkt dabei die Design-Zykluszeit.

* Richard Oed arbeitet nach 24 Jahren Applikationstätigkeit in der Elektronikindustrie jetzt als freier Fachjournalist und -autor.

(ID:47491466)