Osciloscopio/Generador de Funciones con GnuRadio (usando hardware muy barato)

Estaba empezando con el procesamiento de señales de RF y estaba muy interesado en poder hacer que un osciloscopio y un generador de funciones funcionaran en tiempo real con Python. Esencialmente, me gustaría algún medio para: * Crear formas de onda arbitrarias definidas por una matriz numpy (o enviar pulsos individuales en tiempo real) * Leer formas de onda arbitrarias en una matriz numpy (o recibir lecturas de voltaje instantáneas en tiempo real)

Soy bastante nuevo en este campo, y quiero asegurarme de que entiendo exactamente de qué es capaz gnu radio y cómo puedo configurarlo.

Parece que gnu-radio está destinado a interactuar con USRP, que definitivamente está fuera de mi rango de precios en este momento. Quiero tener una idea mucho mejor de lo que estoy haciendo antes de gastar más de $20 en esto.

Sé que $20 no es mucho, pero sé que puedo construir un osciloscopio con un controlador de audio USB de $2, y puedo usar Mathematica (que ya tengo) para reproducir formas de onda arbitrarias a través del conector de audio de mi computadora. Radio Shack tiene toda la electrónica que necesito para trabajar con esa señal. No estoy buscando buenas tasas de muestreo ni nada sofisticado, todavía. Sólo quiero una mejor comprensión del campo.

Entonces, ¿gnu radio es la mejor manera de hacer una configuración simple de osciloscopio + generador de funciones? Si es así, ¿cuál es el hardware más barato que necesitaría para obtener algo que envíe/reciba formas de onda arbitrarias?


Añadido - RM

NúmPy:

NumPy es el paquete fundamental necesario para la computación científica con Python. Contiene entre otras cosas:

  • un poderoso objeto de matriz N-dimensional
    funciones sofisticadas (difusión)
    herramientas para integrar código C/C++ y Fortran
    útil álgebra lineal, transformada de Fourier y capacidades de números aleatorios.

  • Además de sus usos científicos obvios, NumPy también se puede utilizar como un contenedor multidimensional eficiente de datos genéricos.
    Se pueden definir tipos de datos arbitrarios.
    Esto permite que NumPy se integre sin problemas y rápidamente con una amplia variedad de bases de datos.

matriz NumPy:

Radio GNU

Respuestas (1)

No. GNU Radio no es la mejor manera de hacer una configuración simple de osciloscopio + generador de funciones , PERO puede adaptarse a lo que está tratando de hacer, que en realidad es algo ligeramente diferente.

Si tiene como objetivo específico producir generación de forma de onda arbitraria en tiempo real y funcionalidad básica de osciloscopio donde la velocidad no es crítica y tiene una PC disponible, existen numerosas soluciones de software gratuitas o de bajo costo disponibles que se enfocan directamente en estas capacidades, ya sea por separado o en combinación. Gargoyle y sus amigos le informarán sobre muchos de estos mediante el uso de cadenas de búsqueda como

           arbitary waveforms soundcard 

Lo anterior produjo directamente o a través de enlaces vinculados (solo ejemplos) las referencias enumeradas al final de esta publicación en "OSCILOSCOPIOS Y GENERADORES DE FUNCIONES:"

PERO

GNU Radio está más orientado a las soluciones de RF que a lo que parece querer hacer. Básicamente, conecta el software de procesamiento a un front-end ADC/DAC de su elección con un mínimo de hardware intermedio y con una radio de software como el objetivo más probable, PERO no el único.

Como está enfocado en RF en la mentalidad original, el hardware más compatible se parece sospechosamente a los extremos frontales de RF de varios MHz y cuesta en consecuencia, PERO tiene controladores de tarjeta de sonido y también tiene capacidad de emulación que permite la reproducción completa del software sin ningún hardware.

Entonces, sí, hará lo que quieras.

Está basado en Python. Ya sea que use matrices NumPy u otros medios de presentación de datos, es su elección.


Módulo de osciloscopio de radio GNU usrp_oscope.py

Útilmente, GNU Radio tiene un módulo de osciloscopio disponible - usrp_oscope.py - aquí - 350 líneas de código Python.

Módulo de osciloscopio

Preguntas y respuestas básicas aquí

Discusión de usuario aquí y aquí


Una excelente introducción a lo que GNU Radio hace (y no hace) está aquí
[http://www.gnu.org/software/gnuradio/doc/exploring-gnuradio.html]

Una buena descripción general del hardware compatible aquí
[http://gnuradio.org/redmine/projects/gnuradio/wiki/Hardware] con mención de las interfaces de la tarjeta de sonido. Ellos notan:

  • La mayoría de las computadoras hoy en día se envían con una interfaz de sonido integrada o una tarjeta de sonido. La resolución de 16 bits a 44,1 kHz (kSPS) y dos canales es un nivel disponible largo que puede esperar. Prácticamente todos los sistemas operativos admiten este hardware listo para usar, y es suficiente para muchas aplicaciones de bricolaje y pasatiempos. Puede esperar entrada y salida estéreo (2 canales).

    Si la calidad de las interfaces de sonido incorporadas no es muy costosa e introduce ruido o muestra malas características de frecuencia o resolución degradada, eso es rango dinámico. Afortunadamente, se ofrecen interfaces de sonido de alta calidad, como equipos de grabación digital profesional, con más de una docena de canales, resolución de hasta 24 bits y frecuencia de muestreo de 192 kHz. Estas interfaces se pueden conectar internamente a través del bus PCI o externamente a través de USB.

Wiki de GNU Radio: excelente página aquí

"Exploring GNU Radio" de Eric Blossom - el 'padre' del concepto de GNU Radio aquí

Tutoriales de escritura de Python para GNU Radio aquí . Ellos dicen:

  • Bienvenidos, principiantes de GNU Radio. Si está leyendo este tutorial, probablemente ya tenga algunos conocimientos básicos sobre cómo funciona GNU Radio, qué es y qué puede hacer, y ahora quiere ingresar usted mismo a este apasionante mundo del procesamiento de señales digitales (DSP) de código abierto.

    Este es un tutorial sobre cómo escribir aplicaciones para GNU Radio en Python. No es una introducción a la programación, software de radio o procesamiento de señales, ni cubre cómo extender GNU Radio creando nuevos bloques o agregando código al árbol fuente. Si tiene experiencia en los temas mencionados y está comenzando a trabajar con GNU Radio, este probablemente sea el tutorial correcto para usted. Si no sabe qué es una radio de software o qué hace un filtro FIR, probablemente debería retroceder unos pasos y obtener una base más sólida sobre la teoría del procesamiento de señales. Pero no dejes que esto te desanime, la mejor manera de aprender algo es probándolo.

    Aunque este tutorial está diseñado para que su introducción a GNU Radio sea lo más fácil posible, no es una guía definitiva. De hecho, a veces simplemente no digo la verdad real para facilitar las explicaciones. Incluso podría contradecirme en capítulos posteriores. El uso del poder del cerebro sigue siendo necesario para desarrollar aplicaciones de GNU Radio.

Wikipedia/GNU Radio aquí



  • "OSCILOSCOPIOS Y GENERADORES DE FUNCIONES:"

Generador de funciones gratuito basado en tarjeta de sonido "Soundarb". aquí 1 - SoundArb es un programa gratuito de David Sherman Engineering Co. que le permite controlar una tarjeta de sonido de PC como lo haría con un generador de funciones convencional. Puede seleccionar formas de onda estándar, cargar formas de onda arbitrarias desde un archivo de tabla de ondas de texto, controlar la frecuencia y la amplitud de la forma de onda y seleccionar entre un conjunto versátil de modos de disparo. Con una tarjeta de sonido estéreo, un canal se puede utilizar como salida de "sincronización".
Descarga gratuita de software aquí


XOSCOPE - Osciloscopio GNU Sourceforge aquí

  • xoscope es un osciloscopio digital que utiliza la entrada de una tarjeta de sonido o EsounD y/o ProbeScope/osziFOX y pronto será compatible con Bitscopehardware. Incluye 8 pantallas de señal, escala de tiempo variable, matemáticas, memoria, medidas y guardado/carga de archivos.


Opencircuits.com/Oscilloscope: amplia gama de osciloscopios, incluidos hardwrae de código abierto, basados ​​en tarjetas de sonido, etc. Magnífico. Aquí


Miniscope pc oscilloscpe front end gratis aquí


Esta oferta a través de EDN puede ser gratuita El programa convierte la tarjeta de sonido de la PC en un generador de funciones con software aquí

Wikipedia proporciona esta introducción que a su vez enlaza con

Generador de señal de tarjeta de sonido Virtuns 3.2. Típica oferta comercial lowish pero nota gratuita. Prueba gratis . $ 20 ish versión completa aquí . Muchos similares disponibles. Muchos gratis.

Tutoría básica

Este manual para un producto comercial pero con buen material relacionado aquí

Implementación DIY Verilog FPGA

AWG instructivo usando un microcontrolador AVR. No es exactamente lo que desea, pero se muestra un hardware minimalista que se puede usar sin una PC aquí

Muchas gracias por toda la información. Leí su publicación una vez y tendré que leerla 2 o 3 veces más mientras recorro todos los enlaces. Esta es una gran ayuda.