Oszilloskop/Funktionsgenerator mit GnuRadio (mit sehr billiger Hardware)

Ich fing gerade erst mit der HF-Signalverarbeitung an und war sehr daran interessiert, ein Oszilloskop und einen Funktionsgenerator mit Python in Echtzeit zum Laufen zu bringen. Im Wesentlichen hätte ich gerne Mittel zum: * Erstellen von willkürlichen Wellenformen, die durch ein Numpy-Array definiert sind (oder Senden einzelner Impulse in Echtzeit) * Einlesen von willkürlichen Wellenformen in ein Numpy-Array (oder Empfangen von Momentanspannungswerten in Echtzeit)

Ich bin ziemlich neu auf diesem Gebiet und möchte sicherstellen, dass ich genau verstehe, wozu GNU Radio fähig ist und wie ich es einrichten könnte.

Es scheint, dass Gnu-Radio als Schnittstelle zu USRP gedacht ist – was im Moment definitiv außerhalb meiner Preisspanne liegt. Ich möchte eine viel bessere Vorstellung davon haben, was ich tue, bevor ich mehr als 20 Dollar dafür ausgebe.

Ich weiß, dass 20 Dollar nicht viel sind, aber ich weiß, dass ich ein Oszilloskop aus einem 2-Dollar-USB-Audiotreiber bauen kann, und ich kann Mathematica (das ich bereits habe) verwenden, um beliebige Wellenformen über die Audiobuchse in meinem Computer abzuspielen. Radio Shack hat die gesamte Elektronik, die ich brauche, um mit diesem Signal zu arbeiten. Ich suche nicht nach guten Abtastraten oder irgendetwas Ausgefallenem - noch nicht. Ich möchte nur das Feld besser verstehen.

Ist Gnu Radio also der beste Weg, um ein einfaches Oszilloskop + Funktionsgenerator einzurichten? Wenn ja, was ist die billigste Hardware, die ich benötigen würde, um etwas zu bekommen, das willkürliche Wellenformen sendet / empfängt?


Hinzugefügt - RM

NumPy:

NumPy ist das grundlegende Paket, das für wissenschaftliches Rechnen mit Python benötigt wird. Es enthält unter anderem:

  • ein leistungsstarkes N-dimensionales Array-Objekt
    ausgefeilte (Rundfunk-)Funktionen
    Tools zur Integration von C/C++- und Fortran-Code
    nützliche Funktionen für lineare Algebra, Fourier-Transformation und Zufallszahlen.

  • Neben seiner offensichtlichen wissenschaftlichen Verwendung kann NumPy auch als effizienter multidimensionaler Container für generische Daten verwendet werden.
    Es können beliebige Datentypen definiert werden.
    Dadurch kann NumPy nahtlos und schnell in eine Vielzahl von Datenbanken integriert werden.

NumPy-Array:

GNU-Radio

Antworten (1)

Nein. GNU Radio ist nicht der beste Weg, um ein einfaches Oszilloskop + Funktionsgenerator-Setup zu erstellen, ABER es passt möglicherweise zu dem, was Sie versuchen, was eigentlich etwas anderes ist.

Wenn Sie speziell darauf abzielen, arbiträre Wellenformen in Echtzeit und grundlegende Oszilloskopfunktionen zu erzeugen, bei denen die Geschwindigkeit nicht entscheidend ist, und Sie über einen PC verfügen, dann gibt es zahlreiche kostenlose oder kostengünstige Softwarelösungen, die direkt auf diese Funktionen abzielen getrennt oder in Kombination. Gargoyle und seine Freunde werden Ihnen von vielen davon erzählen, indem Sie Suchzeichenfolgen wie verwenden

           arbitary waveforms soundcard 

Obiges erzeugte entweder direkt oder über verlinkte Links (nur Beispiele) die Referenzen, die am Ende dieses Beitrags unter „OSZILLOSKOPE & FUNKTIONSGENERATOREN“ aufgeführt sind:

ABER

GNU Radio ist mehr auf HF-Lösungen ausgerichtet als auf das, was Sie anscheinend tun wollen. Es fügt im Wesentlichen Verarbeitungssoftware an ein ADC / DAC-Frontend Ihrer Wahl mit einem Minimum an dazwischenliegender Hardware und mit einem Software-Radio als wahrscheinlichstem Ziel an - ABER nicht dem einzigen.

Da es in der ursprünglichen Denkweise HF-fokussiert ist, sieht die am meisten unterstützte Hardware verdächtig nach Multi-MHz-HF-Frontends aus und kostet entsprechend, ABER es verfügt über Soundkartentreiber und hat auch Emulationsfunktionen, die das Spielen vollständiger Software ohne jegliche Hardware ermöglichen.

Also, ja, es wird tun, was Sie wollen.

Es basiert auf Python. Ob es NumPy-Arrays oder andere Mittel der Datenpräsentation verwendet, liegt ganz bei Ihnen.


GNU Radio-Oszilloskop-Modul usrp_oscope.py

Nützlicherweise hat GNU Radio ein Oszilloskop-Modul zur Verfügung - usrp_oscope.py - hier - 350 Zeilen Python-Code.

Oszilloskop-Modul

Grundlegende Fragen und Antworten hier

Benutzerdiskussion hier und hier


Eine ausgezeichnete Einführung darüber, was GNU Radio tut (und nicht tut), finden Sie hier
[http://www.gnu.org/software/gnuradio/doc/exploring-gnuradio.html]

Eine gute Übersicht über unterstützte Hardware hier
[http://gnuradio.org/redmine/projects/gnuradio/wiki/Hardware] mit Erwähnung von Soundkartenschnittstellen. Sie bemerken:

  • Die meisten Computer werden heutzutage mit einer eingebauten Soundschnittstelle oder Soundkarte ausgeliefert. 16 Bit Auflösung bei 44,1 kHz (kSPS) und zwei Kanälen ist ein lang verfügbares Niveau, das man erwarten kann. Nahezu jedes Betriebssystem unterstützt diese Hardware von Haus aus und reicht für viele Heimwerker- und Hobbyanwendungen aus. Sie können einen Stereoeingang und -ausgang (2 Kanäle) erwarten.

    Wenn die Qualität eines eingebauten Sound-Interfaces nicht sehr teuer gebaut ist und Rauschen einführt oder schlechte Frequenzeigenschaften oder eine verschlechterte Auflösung zeigt, ist das der Dynamikbereich. Glücklicherweise werden hochwertige Soundinterfaces angeboten, wie professionelle digitale Aufnahmegeräte, mit mehr als einem Dutzend Kanälen, bis zu 24 Bit Auflösung und 192 kHz Abtastrate. Diese Schnittstellen können intern über PCI-Bus oder extern über USB angebunden werden.

Das eigene Wiki von GNU Radio - ausgezeichnete Get-You-Ging-Seite hier

„Exploring GNU Radio“ von Eric Blossom – dem „Vater“ des GNU Radio-Konzepts hier

Tutorials zum Schreiben von Python für GNU Radio finden Sie hier . Man sagt:

  • Willkommen, GNU Radio-Anfänger. Wenn Sie dieses Tutorial lesen, haben Sie wahrscheinlich bereits ein sehr grundlegendes Wissen darüber, wie GNU Radio funktioniert, was es ist und was es kann - und jetzt möchten Sie selbst in diese aufregende Welt der digitalen Open-Source-Signalverarbeitung (DSP) einsteigen.

    Dies ist ein Tutorial zum Schreiben von Anwendungen für GNU Radio in Python. Es ist keine Einführung in die Programmierung, Software-Radio oder Signalverarbeitung, noch behandelt es, wie GNU Radio erweitert werden kann, indem neue Blöcke erstellt oder Code zum Quellbaum hinzugefügt werden. Wenn Sie etwas Hintergrundwissen zu den genannten Themen haben und anfangen, mit GNU Radio zu arbeiten, ist dies wahrscheinlich das richtige Tutorial für Sie. Wenn Sie nicht wissen, was ein Software-Radio ist oder was ein FIR-Filter tut, sollten Sie wahrscheinlich ein paar Schritte zurückgehen und sich ein solideres Hintergrundwissen zur Signalverarbeitungstheorie aneignen. Aber lassen Sie sich davon nicht entmutigen – der beste Weg, etwas zu lernen, ist, es auszuprobieren.

    Obwohl dieses Tutorial darauf ausgelegt ist, Ihnen den Einstieg in GNU Radio so einfach wie möglich zu machen, ist es keine endgültige Anleitung. Tatsächlich sage ich manchmal einfach nicht die wahre Wahrheit, um die Erklärungen zu erleichtern. Vielleicht widerspreche ich mir in späteren Kapiteln sogar selbst. Der Einsatz von Gehirnleistung ist immer noch notwendig, um GNU Radio-Anwendungen zu entwickeln.

Wikipedia / GNU Radio hier



  • "OSZILLOSKOPE & FUNKTIONSGENERATOREN:"

Kostenloser "Soundarb" Soundkarten-basierter Funktionsgenerator. hier 1 - SoundArb ist ein kostenloses Programm von David Sherman Engineering Co., mit dem Sie eine PC-Soundkarte wie einen herkömmlichen Funktionsgenerator steuern können. Sie können Standardwellenformen auswählen, beliebige Wellenformen aus einer Textwellentabellendatei laden, die Frequenz und Amplitude der Wellenform steuern und aus einem vielseitigen Satz von Triggermodi auswählen. Bei einer Stereo-Soundkarte kann ein Kanal als "Sync"-Ausgang verwendet werden.
Kostenloser Software-Download hier


XOSCOPE - GNU Sourceforge Oszilloskop hier

  • xoscope ist ein digitales Oszilloskop, das Eingaben von einer Soundkarte oder EsounD und/oder einem ProbeScope/osziFOX verwendet und bald Bitscope-Hardware unterstützen wird. Beinhaltet 8 Signalanzeigen, variable Zeitskala, Mathematik, Speicher, Messungen und Speichern/Laden von Dateien.


Opencircuits.com/Oscilloscope - große Auswahl an Oszilloskopen, einschließlich Open-Source-Hardware, Soundkarten-basiert und mehr. Hervorragend. Hier


Kostenloses Miniscope-PC-Oszilloskop-Frontend hier


Dieses über EDN angebotene möglicherweise kostenlose Programm verwandelt hier PC-Soundkarte in einen Funktionsgenerator mit Software

Wikipedia stellt diese Einführung zur Verfügung , die wiederum verlinkt

Virtins Soundkarten-Signalgenerator 3.2. Typisches Lowish, aber beachten Sie das kostenlose kommerzielle Angebot. Kostenlose Testphase . $20 ish volle Version hier . Viele ähnliche erhältlich. Viele kostenlos.

Basisanleitung

Dieses Handbuch ist ein kommerzielles Produkt, aber mit einigen guten verwandten Materialien hier

DIY Verilog FPGA-Implementierung

Anweisbarer AWG mit einem AVR-Mikrocontroller. Nicht ganz das, was Sie wollen, aber hier gezeigte minimalistische Hardware, die ohne PC verwendet werden kann

Vielen Dank für alle Informationen. Ich habe Ihren Beitrag einmal gelesen, und ich werde ihn noch 2-3 Mal lesen müssen, wenn ich alle Links durchlaufe. Das ist eine große Hilfe.