Forum: Mikrocontroller und Digitale Elektronik Raspberry Pi als Oszilloskop


von Volt (Gast)


Lesenswert?

Gibt es fertiges Projekt wo man den Raspberry Pi als Oszilloskop
einsetzt. Mir ist klar das der RPi keine analogen Signale verarbeiten 
kann, aber mit einem AD-Wandler müsste das doch möglich sein.

von Eumel (Gast)


Lesenswert?

Volt schrieb:
> Gibt es fertiges Projekt wo man den Raspberry Pi als Oszilloskop
> einsetzt

Betimmt gibt es die, google wir dir helfen.

von holger (Gast)


Lesenswert?

@Eumel

>Betimmt

Hast du dein Gebiss gerade rausgenommen? SCNT;)

von Volt (Gast)


Lesenswert?

1
 google wir dir helfen

habe ich schon längst gemacht.

von holger (Gast)


Lesenswert?

google Raspberry Pi Oscilloscope

von Kein Name (Gast)


Lesenswert?

Mit einem AD-Wandler kommst du nicht weit. Das eigentliche Problem ist, 
die Daten gleichmässig schnell genug einzulesen.

Die Einzelteile für Vorverstärker, AD-Wandler, schnellem Speicher und 
der Triggerlogik kosten dann so viel vie ein komplettes China-Skope.

Wenn es allerdings nur um Tonfrequenzen geht, würde auch eine 
USB-Soundkarte und Audacity rechen.

von Jens (Gast)


Lesenswert?

"google Raspberry Pi Oscilloscope"

hab ich auch grad gemacht, bin ich hier gelandet :-)

von Thomas S. (doschi_)


Lesenswert?

einfach mal nach "BITSCOPE MICRO" suchen.
Das ist nicht ganz billig, soll aber für Raspberry Pi geeignet sein.

z.B. 
http://www.reichelt.de/USB-Messlabor-A-D-Messkarten/BITSCOPE-MICRO/3/index.html?&ACTION=3&LA=0&ARTICLE=153278&GROUPID=5906&artnr=BITSCOPE+MICRO

setzt das jemand schon ein ?

von Christian B. (casandro)


Lesenswert?

Es hängt von Deinen Anforderungen ab. Wenn Dir zum Beispiel 800 
Kilosamples pro Sekunde reichen, kannst du auch einfach einen AD/Wandler 
an den SPI-Bus anschließen. Die Eingangsbeschaltung ist bei den 
Frequenzen auch noch nicht so krass.

Was ich immer an solchen Projekten blöd finde ist, dass die "China 
Scopes" nachempfinden. Sprich man hat da immer noch einen kleinen 
Buffer, der nach der Triggerung am Stück gefüllt wird, und dann langsam 
an den Rechner übertragen wird. Sinnvoller, und inzwischen auch 
realisierbar, wäre es einfach die Abtastwerte direkt und ohne Lücke an 
den Hauptprozessor zu schicken. Damit hätte man völlig neue 
Möglichkeiten.

von Purzel H. (hacky)


Lesenswert?

So ganz nebenbei ... ein richtiges Scope ist auch nicht so schnell. Die 
wichige Zahl waere dazu die Totzeit zwischen einem und dem naechsten 
Scan.
Die ist nicht Null, und wider Erwarten gross. Jedenfalls werben gewisse 
Hersteller fuer gewisse Modelle mit dieser Totzeit, besser zu sein.
Das ganze ist nicht wirklich wichtig, um 500 Scans pro sekunde anschauen 
zu koennen, sondern eher wenn es um Statistik und seltene Signale und 
Post-Trigger geht.
zB ein verrauschtes Signal averagen mit einem externen Trigger. Bei 
einem externen Trigger von zB 10kHz wird natuerlich nicht jeder Trigger 
ausgewertet. Wenn mir das Scope nun 90% der Ereignisse verwirft, anstatt 
aufzusummieren, dauert der Messvorgang zehn mal laenger.

Einfach... man sollte den Oszilloscopen keine Traumdaten zuweisen.

von Stefan F. (Gast)


Lesenswert?

> Sinnvoller, und inzwischen auch realisierbar, wäre es einfach
> die Abtastwerte direkt und ohne Lücke an den Hauptprozessor
> zu schicken.

Aber nicht mit Linux oder Windows und USB. Beide Betriessysteme 
unterbrechen das laufende Programm in unregelmäßigen Zeitabständen für 
unbestimmte Zeit. Und die USB Schnittstelle kann auch nicht 
kontinuierlich Daten übertragen.

Also musst du zwangsläufig puffern - und dann sind wir wieder genau bei 
der Technologie, die bereits gehandelt wird.

von Quarx (Gast)


Lesenswert?

Stefan Us schrieb:
> Aber nicht mit Linux oder Windows und USB. Beide Betriessysteme
> unterbrechen das laufende Programm in unregelmäßigen Zeitabständen für
> unbestimmte Zeit.

Das stimmt nicht - die Zeit ist schon fix definiert. Und es gibt auch 
echtzeitfähige Linuxderivate, die inzw. auch für den Raspberry Pi gut 
durchgetestet sind wie das Noobs.

von Vold (Gast)


Lesenswert?

Genau das mit den Echtzeitdistributionen hab ich auch gelesen. Ist das 
Noobs auch für ein Oszilloskop geeignet?

von Quarx (Gast)


Lesenswert?

Nein, für ein Oszilloskop ist das nicht geeignet. Für ein Oszilloskop 
würde ich zur Datenerfassung ein FPGA benutzen. Google einfach mal nach 
FPGA, das sind multitaskingfähige Mikrocontroller, weil dort mehere 
Prozesse parallel drauf ablaufen können - und zwar in Echtzeit parallel. 
Das Problem kann manchmal allerdings bei synchronen Speicherzugriffen 
auf die gleiche Speicheradresse zu Problemen führen, dann ist es ratsam, 
mit Signalen oder Semaphoren zu arbeiten.

von Vold (Gast)


Lesenswert?

Was ist denn eine Semaphore?

von Quarx (Gast)


Lesenswert?

Vold schrieb:
> Was ist denn eine Semaphore?

google könnte Dir dabei helfen.

von Vold (Gast)


Lesenswert?

Quarx schrieb:
>> Was ist denn eine Semaphore?
>
> google könnte Dir dabei helfen.

Was ist google? Kann man das essen?

von Bastler (Gast)


Lesenswert?

Die Umsetzbarkeit dieses Vorhabens hängt meines Erachtens stark von den 
Anforderungen ab.

Ein Forenmitglieg hat mal ein "Show-Oszilloskop" auf Basis eines 
STM32-Discovery-Boards entwickelt. Das geht im Prinzip in die Richtung 
von dem was du suchst.
Eine echt Messung kann man mit dieser Lösung sicher nicht nachweisen, 
aber für einfache Mikrocontrollerbastelei reicht es oftmals aus.

Links dazu:
http://mikrocontroller.bplaced.net/wordpress/?page_id=3290
Beitrag "Mini 2Kanal Oszi per STM32F429-Disco Board"

von Harald W. (wilhelms)


Lesenswert?

Vold schrieb:

> Was ist google? Kann man das essen?

Ja, das schreibt man dann allerdings Gugl (-hupf). :-)

von Thomas S. (doschi_)


Lesenswert?

Vold schrieb:
> Genau das mit den Echtzeitdistributionen hab ich auch gelesen. Ist das
> Noobs auch für ein Oszilloskop geeignet?

NOOBS ist keine Distribution, das ist ein Installer.
"NOOBS (New Out Of the Box Software) is an easy operating system install 
manager for the Raspberry Pi."
Rasbian ist eine Distribution.

von Eric B. (beric)


Lesenswert?

Quarx schrieb:
> Google einfach mal nach
> FPGA, das sind multitaskingfähige Mikrocontroller,

Unsinn.

"Ein Field Programmable Gate Array (FPGA) ist ein integrierter 
Schaltkreis (IC) der Digitaltechnik, in den eine logische Schaltung 
programmiert werden kann. Die englische Bezeichnung kann übersetzt 
werden als: im Feld (also vor Ort, beim Kunden) programmierbare 
(Logik-)Gatter-Anordnung." 
(https://de.wikipedia.org/wiki/Field_Programmable_Gate_Array)

Man kann ein Mikrocontroller (oder eher ein Mikroprozessor) im FPGA 
implementieren, das schon.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.