2013
HOME

DSO-Quad
Hosentaschenoszilloskop
Digitales Speicher-Oszilloskop mit 4 Kanälen - programmierbar
Smartphones können sehr viel, aber ein eigenständiges Vierkanal-Speicher-Oszilloskop mit integriertem Funktionsgenerator in der Größe eines kleinen MP3-Players ist in vielerlei Hinsicht praktischer.

Das DSO-203 oder DSO-Quad ist ein "Open-Source"-Projekt. Dies gilt für die Soft- und die Hardware. Inzwischen gibt es dadurch auch alternative Firmware. Man kann aber auch seine eigene Benutzeroberfläche programmieren, wenn man kann.

Die Firmware lässt sich austauschen. Drei andere "Programme" können beim Einschalten gewählt werden. Hier läuft gerade die Firmware Plus V1.10 und bei Bedarf eine erweiterte Oszilloskopanwendung in Slot 4. Ein Vierkanalanalysator liegt auf Programmplatz 3.


Analogtest mit einer RC-Kombination - Integrierglied

In der Arduinokiste lagen noch ein Kondensator (1u) und ein Widerstand (4k7). Mit Hilfe des eingebauten Funktionsgenerators vom DSO-Quad und den beiden Analogkanälen wird hier als Test eine analoge Integrierschaltung untersucht.

Die aktuelle Firmware-Version Plus V1.10 des DSO-Quad gestattet es die Messdaten auf verschiedenste Arten zu speichern. Sie erlaubt einen einfachen Umgang mit dem Gerät, was in früheren Varianten wohl eher nicht galt. Für diesen Test wurden verschiedene Bitmaps gesichert. Die Abbildungen sind in ihrer Auflösung nicht verändert (400x240).

Einige ältere Applikationen scheinen noch Probleme mit dem erweiterten Speicher von 8 MB zu haben (siehe weiter unten). Dadurch traten Fehler auf und das Dateisystem wurde teilweise unbrauchbar.


Mathematik mit Widerstand und Kondensator

Die Firmware Plus V1.10 versieht den Schirm horizontal mit 12 Skalenteilen. Der zeitliche Nullpunkt liegt in den Abbildungen zwei Skalenteile vom linken Bildschirmrand (gelbe senkrechte Punktlinie). Das Rechtecksignal mit 1 kHz erzeugt der Funktions-Generator (rechts oben hellblau). Kanal 1 (hellblau) zeigt dieses Signal. Kanal 2 (gelb) zeigt die Kondensatorspannung gegen Masse.

Ergebnis: Dreiecksignal, was einer integrierenden Wirkung entspricht.


Sinus
Die Triggerschwelle (T) ist so eingestellt, dass zum Zeitpunkt T0 der Nulldurchgang der Eingangs- spannung erfolgt (gelbe senkrechte Punktlinie).

Bei unveränderten Parametern erscheint der erwartete negative Kosinus als Ergebnis der Integration.


Dreieck
Auch die Dreieckspannung wird beim Nulldurchgang getriggert. Das Ergebnis scheint ebenfalls ein negativer Kosinus zu sein, aber der Schein trügt. Laut Mathematik ergibt ein linearer Verlauf nach Integration eine Parabel (x²).

Somit handelt es sich hier um lauter Parabelästchen, die einem Kosinus bzw. einem Sinusverlauf fast zum Verwechseln ähneln.


Sägezahn
Der Sägezahn ist ebenfalls eine Dreieckspannung, allerdings ist das Ergebnis teilweise überraschend. Technisch erinnert die Spannungsform an die eines Mehrweggleichrichters.

Aber auch hier handelt es sich um nett aneinandergereihte Parabeln - oder sind es doch Dachpfannen?

Digitaler Test: "HALLO"

Die vier Kanäle des Quad sind in Wirklichkeit 2 + 2 = 4; zwei analoge- und zwei digitale Kanäle. Hier soll die serielle Übertragung vom PC zum Arduino belauscht werden. Der PC schickt ein "HALLO" und der Arduino macht nichts, er dient nur als Ziel und als Messpunktlieferant. An Anschluss 1 liegt die RS232-Leitung RX. Ein Byte mit seinen 8 Bits wird zwischen einem Start- und einem Stoppbit übertragen, falls so eingestellt. Um einen Buchstaben zu senden, werden also 10 Bit der Reihe nach übertragen:


Der Buchstabe 'H' entspricht im ASCII-Kode dem Hexadezimalwert 48, was als Dualzahl 01001000 entspricht. Mit Startbit ('S' immer '0') und Stoppbit ('s' immer '1') laufen im Gänsemarsch die Bits 0000100101 über die Leitung. Das niederwertigste (LSB) wird zuerst übertragen, also von rechts nach links. Insgesamt wir das: 00001001010100000101000110010100011001010111100101,
wie oben dargestellt.

Das DSO-Quad zeigt das ent-sprechende Bitmuster an seinem Eingagng D (grün). Getriggert wird mit der abfallenden Flanke, damit erscheint sofort nach dem Trigger-Zeitpunkt (1 DIV von links) das Startbit als '0'. Der Arduino stellt 9600 Bd als Geschwindigkeit ein, also 9600 Bits pro Sekunde. Damit wäre ein Bit ca. 100 us lang. Somit passen etwa 5 Bit in ein Skalenteil (DIV) bei Timebase 500 us. Das Messergebnis entspricht voll den Erwartungen.

Am PC lief während des Tests eine Endlosschleife in VBA (Excel):

Declare Sub OPENCOM Lib "rsapi" (ByVal a$)
Declare Sub DELAY Lib "rsapi" (ByVal a As Long)
Declare Sub SENDSTRING Lib "rsapi" (ByVal a$)

Sub DSO_Test()
 OPENCOM "COM1:9600"
 Do
  SENDSTRING "HALLO"
  DELAY 5
 Loop Until 1 = 2
End Sub

Noch schöner werden die Bits im Zusatzprogramm 'Vierkanalanalysator' von Petteri Aimonen dargestellt. Dort sind aber zurzeit keine Screenshots möglich (siehe unten).


Eigene Programme

Programme für das DSO-Quad werden in der Sprache C++ geschrieben. Die Entwicklung gestaltet sich eher aufwendig.

Der Finne Petteri Aimonen hat jedoch eine Scriptsprache entwickelt - QuadPawn. Damit lassen sich kleine Programme offensichtlich einfach erstellen. Er setzt auf Pawn auf und damit ist auch die Pawn-IDE nutzbar. Wenn das alles stimmt, sieht dann "Hallo Welt" recht einfach aus:

#include <console>
main()
 println("Hallo Welt!");



Weil das aktuelle DSO-Quad neuerdings 8 MB-Speicherplatz hat (früher 2 MB) erkannte auch die Hauptanwendung QuadPawn (PAWN_008.HEX) auf dem DSO-Quad die Anwenderprogramme nicht mehr (Dateiformatproblem), wodurch es hier zunächst nicht möglich war auf bequeme Art Anwendungen aus eigener Feder für dieses Gerät zu erstellen. Aber Petteri Aimonen blieb dran, wie man hier lesen kann. Also abwarten, Tee trinken war angesagt.

Am 02.11.13 erscheint PAWN_010.HEX und damit läuft nun QuadPawn auch auf dieser Hardware V2.72.

Ein erster schneller Test beweist: Es klappt! Auch die Snapshot-Funktion tut was sie soll. Die Bilddateien werden alle mit dem Datum 01.01.2000 abgespeichert und der USB-Analyzer macht noch Probleme, aber sonst scheint alles wieder zu laufen.

Ein Feedback führte am 03.11.13 zu PAWN_011.HEX und damit stürzt auch der USB-Analyzer nicht mehr ab. Getestet wird demnächst. Jetzt soll erst einmal ein erstes Programm aus eigener Feder hier erscheinen.

Ob die Analoganzeige Sinn macht oder nicht soll hier nicht zur Debatte stehen. Es handelt sich um ein Testprojekt, um mit wenig Aufwand ein Ergebnis auf dem Gerät zu erhalten. QuadPawn mit der entsprechenden IDE macht das schon sehr schnell. Man gibt als Ziel das DSO-Laufwerk an und die erzeugte Datei landet sofort auf dem Gerät. Sehr schnelle Umlaufzeiten sind da möglich! Es ist ein erster Versuch und wenn das Gerät mal kalibriert ist, wird gemessen. Wer möchte und kann: Hier die AnalogMeter.amx-Datei.


Tiefpass

Petteri Aimonen hat mit seinem Programm "Frequency Response" ein sehr gutes Frequenzanalyse-Tool für dieses Gerät vorgelegt. Erst als HEX-File, dann auch als QuadPawn-AMX Datei. Es ist universell angelegt und zeigt zum Beispiel Phasenwinkel von -180 bis +180 Grad. Auf der primären Y-Achse ist die Amplitude in dB aufgetragen und stellt somit den Frequenzgang quasi doppelt-logarithmisch dar.

An manchen Schulen wird eine solche Schaltung manuell mit Frequenzgenerator und Oszilloskop durchgemessen und anschließend der Amplituden- und Frequenzgang auf einfach-logarithmischem Papier dargestellt. Die linke Y-Achse hat die Größe ua/ue in Prozent, die rechte Sekundärachse den Absolutwert des Phasenwinkels.

Die Grenzfrequenz findet man bei 70,7% und 45°. Mit einem Kondensator (1u) und einem Widerstand (1k) ergibt sich 139 Hz in der Theorie.

Mit dem rechten Scroller kann die Messkurve abgefahren - und im unteren Bereich das Amplitudenverhältnis und der Phasenwinkel abgelesen werden. Die AMX-Datei Tiefpass ist eine leichte Modifikation von "Frequency Response" in QuadPawn.


Weitere Software
.
Startseite Bücher Software Digital TV Musik Kontakt

Für Inhalt und weitere Verzweigung externer Links sind die Betreiber der dortigen Seiten verantwortlich - H.-J. Berndt