Software Defined Radio
Parte II: GNU Radio Companion
Expositores: Héctor Miyashiro/Oscar Llerena
Investigadores en INICTEL-UNI
Repaso Parte I: Introducción
• SDR (Software Defiend Radio): Es una radio (hardware) que permite realizar
comunicaciones a determinada frecuencia, ancho de banda, modulación,
velocidad, etc. tan solo con la configuración en software.
• Diagrama de bloques SDR
• Software: GNU Radio Companion
• Aplicaciones: Investigación y educación
H. Miyashiro 2
Configuración & control
Unidad de
Procesamiento
Digital
ADC, DACInterfaz RF
Software
Contenido
I. Introducción
II. Generación de señales (analógicas) e instrumentos virtuales
III. Operaciones con señales
IV. Generación de datos binarios
V. Procesamiento de datos binarios
VI. Interfaz SDR
H. Miyashiro 3
I. Introducción
• GNU Radio es un software libre que contiene librerías, funciones,
variables para procesamiento digital de señales utilizadas en
comunicaciones.
• Esta colección esta basada en C++ y Python.
• GNU Radio Companion (GRC) es un programa que facilita el uso de
estas, a través de una interfaz gráfica.
H. Miyashiro 4
Flowgraph en GRC de un transmisor BPSK
I. Introducción
• Interfaz gráfica de GRC
H. Miyashiro 5
Área de trabajo
Librería de bloques
Terminal
Barra de herramientas
EXP1
II. Generación de señales (analógicas) e instrumentos
virtuales
• DEMO2-1: Generación de señales. Generar señales periódicas,
aleatorias en GRC. Visualizarlas en el tiempo y frecuencia.
H. Miyashiro 6
II. Generación de señales (analógicas) e instrumentos
virtuales
H. Miyashiro 7
• Bloques generadores de señales
Señales en el tiempo
II. Generación de señales (analógicas) e instrumentos
virtuales
H. Miyashiro 8
• Bloques generadores de señales
Señal en el tiempo
II. Generación de señales (analógicas) e instrumentos
virtuales
H. Miyashiro 9
• Bloques generadores de señales
Señal en el tiempo
II. Generación de señales (analógicas) e instrumentos
virtuales
H. Miyashiro 10
• Bloques generadores de señales
Señal en el tiempo
II. Generación de señales (analógicas) e instrumentos
virtuales
H. Miyashiro 11
• Bloques instrumentos virtuales
Señal en el tiempo
• Bloques instrumentos virtuales
II. Generación de señales (analógicas) e instrumentos
virtuales
H. Miyashiro 12
Espectro señal 8-PSK
• Bloques instrumentos virtuales
II. Generación de señales (analógicas) e instrumentos
virtuales
H. Miyashiro 13
Espectro en el tiempo (3 tonos: 1.5, 3, y 5.4 khz; amplitudes: 1, 5 y 10)
• Bloques instrumentos virtuales
II. Generación de señales (analógicas) e instrumentos
virtuales
H. Miyashiro 14
Constelación señal 8-PSK
II. Generación de señales (analógicas) e instrumentos
virtuales
• EXP2-1. Diseñe en GRC un flowgraph que genere una señal senoidal
de amplitud A = 0,5 y frecuencia f = 2000. Visualizarlo en tiempo y
frecuencia.
H. Miyashiro 15
II. Generación de señales (analógicas) e instrumentos
virtuales
• EXP2-2. Rediseñar el flowgraph de EXP2-1 para poder variar los
parámetros de frecuencia y amplitud de la señal sinusoidal en tiempo
real.
H. Miyashiro 16
Start StopStep
II. Generación de señales (analógicas) e instrumentos
virtuales
• EXP2-2. Rediseñar el flowgraph de EXP2-1 para poder variar los
parámetros de frecuencia y amplitud de la señal sinusoidal en tiempo
real.
H. Miyashiro 17
II. Generación de señales (analógicas) e instrumentos
virtuales
• EXP2-3: Teorema de Nyquist. Con el flowgraph de la experiencia
EXP2-2, hacer variar la frecuencia 𝑓 de la sinusoidal hasta 18 kHz.
Analizar en tiempo y frecuencia.
H. Miyashiro 19
III. Operaciones con señales
• EXP3-1: Operación con señales. Añadir al diseño de EXP2-2 los
bloques para sumar a la señal sinusoidal otra de amplitud 𝐴 = 1 y
frecuencia 𝑓 = 5000, utilizar samp_rate = 250000 hz.
H. Miyashiro 20
III. Operaciones con señales
• EXP3-2: Ruido. Añadir a las 2 señales de EXP3-1 una fuente de ruido
blanco gaussiano (AWGN )con amplitud, 𝐴_𝑟𝑢𝑖𝑑𝑜 variable en el rango
de [0 - 1].
H. Miyashiro 21
III. Operaciones con señales
• PROB1. Utilizando bloques de GRC, generar una onda triangular
escalonada con las características que se muestra a continuación:
H. Miyashiro 22
III. Operaciones con señales
• PROB1. Utilizando bloques de GRC, generar una onda triangular
escalonada con las características que se muestra a continuación:
H. Miyashiro 23
III. Operaciones con señales
• EXP4-1: Audio WAV. Importar en GRC un archivo de audio .WAV.
Reproducir el audio en tiempo real y realizar el análisis en frecuencia.
H. Miyashiro 24
III. Operaciones con señales
H. Miyashiro 25
• Interpolación/decimación
III. Operaciones con señales
• EXP4-2: Interpolación - decimación. Realizar la corrección de
frecuencia de muestreo utilizando interpolación y/o decimación.
H. Miyashiro 26
III. Operaciones con señales
• Filtro Pasabajos digital [1]
Filtra las componentes de
frecuencia superiores a la
frecuencia de corte (cutoff).
Gain: ganancia del filtro
Cutoff Freq: frecuencia de corte
Transition Width: ancho de
transición entre banda pasante y
banda de parada.
H. Miyashiro 27
SALIDA
Gain = 1.0
Cutoff Freq = 500 khz
Transition Width = 10 khz
ENTRADA
Noise Type = Gaussian
Amplitude = 1
Espectro
[1] Libro: “Software Defined Radio using MATLAB & Simulink and the RTL-SDR”, pág. 583
III. Operaciones con señales
• EXP4-3: Filtro digital. Filtrar la señal de audio con un filtro variable
pasa altos, verificar el procesamiento escuchando el audio resultante
en tiempo real.
H. Miyashiro 28
IV. Generación de datos binarios
• EXP5-1: Bytes fijos. Generar datos binarios y analizarlos con un editor
hexadecimal.
H. Miyashiro 30
IV. Generación de datos binarios
• EXP5-2: Bytes aleatorios. Generar datos binarios aleatorios y
analizarlos con un editor hexadecimal.
H. Miyashiro 31
V. Procesamiento de datos binarios
• EXP6-1: Packed - Unpacked. Desempaquetar en bits los Bytes
generados de forma constante en la experiencia EXP5-1.
H. Miyashiro 34
V. Procesamiento de datos binarios
• Tramas
Usualmente en comunicaciones digitales se envía la información en tramas
compuestas por una cabecera (header) y una carga útil (payload).
1. En la cabecera se colocan secuencias binarias para facilitar la
sincronización en el receptor. Adicionalmente va información sobre la
trama.
2. El payload contiene la información.
H. Miyashiro 35
V. Procesamiento de datos binarios
• EXP7-1: Generación de tramas. Generar tramas con 16 Bytes de
cabecera y 32 Bytes de carga útil (Payload). Analizar las tramas
generadas con un editor hexadecimal.
H. Miyashiro 36
VI. Bloques SDR
H. Miyashiro 37
• GRC proporciona bloques que sirven de interfaz entre GRC y el SDR
conectado a la unidad de procesamiento digital.
• UHD: USRP Sink/Source – para los SDRs: N210, B210
• Osmocom Source/Sink – para los SDRs: RTL-SDR, HackRF One
USB, Ethernet
VI. Bloques SDR
• EXP8.1: Implementación de un analizador de espectro. Utilizar un
SDR para visualizar el contenido espectral en la banda : 88 – 108 Mhz,
utilizando GRC.
H. Miyashiro 38
B210, N210 RTL-SDR, HackRF One
H. Miyashiro 39
H. Miyashiro 40
Diseño en GRC para evaluar el instrumento Waterfall
H. Miyashiro 41
Diseño en GRC para evaluar los parámetros de filtros pasabajos

Software Defined Radio - Capítulo 2: GNU Radio Companion

  • 1.
    Software Defined Radio ParteII: GNU Radio Companion Expositores: Héctor Miyashiro/Oscar Llerena Investigadores en INICTEL-UNI
  • 2.
    Repaso Parte I:Introducción • SDR (Software Defiend Radio): Es una radio (hardware) que permite realizar comunicaciones a determinada frecuencia, ancho de banda, modulación, velocidad, etc. tan solo con la configuración en software. • Diagrama de bloques SDR • Software: GNU Radio Companion • Aplicaciones: Investigación y educación H. Miyashiro 2 Configuración & control Unidad de Procesamiento Digital ADC, DACInterfaz RF Software
  • 3.
    Contenido I. Introducción II. Generaciónde señales (analógicas) e instrumentos virtuales III. Operaciones con señales IV. Generación de datos binarios V. Procesamiento de datos binarios VI. Interfaz SDR H. Miyashiro 3
  • 4.
    I. Introducción • GNURadio es un software libre que contiene librerías, funciones, variables para procesamiento digital de señales utilizadas en comunicaciones. • Esta colección esta basada en C++ y Python. • GNU Radio Companion (GRC) es un programa que facilita el uso de estas, a través de una interfaz gráfica. H. Miyashiro 4 Flowgraph en GRC de un transmisor BPSK
  • 5.
    I. Introducción • Interfazgráfica de GRC H. Miyashiro 5 Área de trabajo Librería de bloques Terminal Barra de herramientas EXP1
  • 6.
    II. Generación deseñales (analógicas) e instrumentos virtuales • DEMO2-1: Generación de señales. Generar señales periódicas, aleatorias en GRC. Visualizarlas en el tiempo y frecuencia. H. Miyashiro 6
  • 7.
    II. Generación deseñales (analógicas) e instrumentos virtuales H. Miyashiro 7 • Bloques generadores de señales Señales en el tiempo
  • 8.
    II. Generación deseñales (analógicas) e instrumentos virtuales H. Miyashiro 8 • Bloques generadores de señales Señal en el tiempo
  • 9.
    II. Generación deseñales (analógicas) e instrumentos virtuales H. Miyashiro 9 • Bloques generadores de señales Señal en el tiempo
  • 10.
    II. Generación deseñales (analógicas) e instrumentos virtuales H. Miyashiro 10 • Bloques generadores de señales Señal en el tiempo
  • 11.
    II. Generación deseñales (analógicas) e instrumentos virtuales H. Miyashiro 11 • Bloques instrumentos virtuales Señal en el tiempo
  • 12.
    • Bloques instrumentosvirtuales II. Generación de señales (analógicas) e instrumentos virtuales H. Miyashiro 12 Espectro señal 8-PSK
  • 13.
    • Bloques instrumentosvirtuales II. Generación de señales (analógicas) e instrumentos virtuales H. Miyashiro 13 Espectro en el tiempo (3 tonos: 1.5, 3, y 5.4 khz; amplitudes: 1, 5 y 10)
  • 14.
    • Bloques instrumentosvirtuales II. Generación de señales (analógicas) e instrumentos virtuales H. Miyashiro 14 Constelación señal 8-PSK
  • 15.
    II. Generación deseñales (analógicas) e instrumentos virtuales • EXP2-1. Diseñe en GRC un flowgraph que genere una señal senoidal de amplitud A = 0,5 y frecuencia f = 2000. Visualizarlo en tiempo y frecuencia. H. Miyashiro 15
  • 16.
    II. Generación deseñales (analógicas) e instrumentos virtuales • EXP2-2. Rediseñar el flowgraph de EXP2-1 para poder variar los parámetros de frecuencia y amplitud de la señal sinusoidal en tiempo real. H. Miyashiro 16 Start StopStep
  • 17.
    II. Generación deseñales (analógicas) e instrumentos virtuales • EXP2-2. Rediseñar el flowgraph de EXP2-1 para poder variar los parámetros de frecuencia y amplitud de la señal sinusoidal en tiempo real. H. Miyashiro 17
  • 18.
    II. Generación deseñales (analógicas) e instrumentos virtuales • EXP2-3: Teorema de Nyquist. Con el flowgraph de la experiencia EXP2-2, hacer variar la frecuencia 𝑓 de la sinusoidal hasta 18 kHz. Analizar en tiempo y frecuencia. H. Miyashiro 19
  • 19.
    III. Operaciones conseñales • EXP3-1: Operación con señales. Añadir al diseño de EXP2-2 los bloques para sumar a la señal sinusoidal otra de amplitud 𝐴 = 1 y frecuencia 𝑓 = 5000, utilizar samp_rate = 250000 hz. H. Miyashiro 20
  • 20.
    III. Operaciones conseñales • EXP3-2: Ruido. Añadir a las 2 señales de EXP3-1 una fuente de ruido blanco gaussiano (AWGN )con amplitud, 𝐴_𝑟𝑢𝑖𝑑𝑜 variable en el rango de [0 - 1]. H. Miyashiro 21
  • 21.
    III. Operaciones conseñales • PROB1. Utilizando bloques de GRC, generar una onda triangular escalonada con las características que se muestra a continuación: H. Miyashiro 22
  • 22.
    III. Operaciones conseñales • PROB1. Utilizando bloques de GRC, generar una onda triangular escalonada con las características que se muestra a continuación: H. Miyashiro 23
  • 23.
    III. Operaciones conseñales • EXP4-1: Audio WAV. Importar en GRC un archivo de audio .WAV. Reproducir el audio en tiempo real y realizar el análisis en frecuencia. H. Miyashiro 24
  • 24.
    III. Operaciones conseñales H. Miyashiro 25 • Interpolación/decimación
  • 25.
    III. Operaciones conseñales • EXP4-2: Interpolación - decimación. Realizar la corrección de frecuencia de muestreo utilizando interpolación y/o decimación. H. Miyashiro 26
  • 26.
    III. Operaciones conseñales • Filtro Pasabajos digital [1] Filtra las componentes de frecuencia superiores a la frecuencia de corte (cutoff). Gain: ganancia del filtro Cutoff Freq: frecuencia de corte Transition Width: ancho de transición entre banda pasante y banda de parada. H. Miyashiro 27 SALIDA Gain = 1.0 Cutoff Freq = 500 khz Transition Width = 10 khz ENTRADA Noise Type = Gaussian Amplitude = 1 Espectro [1] Libro: “Software Defined Radio using MATLAB & Simulink and the RTL-SDR”, pág. 583
  • 27.
    III. Operaciones conseñales • EXP4-3: Filtro digital. Filtrar la señal de audio con un filtro variable pasa altos, verificar el procesamiento escuchando el audio resultante en tiempo real. H. Miyashiro 28
  • 28.
    IV. Generación dedatos binarios • EXP5-1: Bytes fijos. Generar datos binarios y analizarlos con un editor hexadecimal. H. Miyashiro 30
  • 29.
    IV. Generación dedatos binarios • EXP5-2: Bytes aleatorios. Generar datos binarios aleatorios y analizarlos con un editor hexadecimal. H. Miyashiro 31
  • 30.
    V. Procesamiento dedatos binarios • EXP6-1: Packed - Unpacked. Desempaquetar en bits los Bytes generados de forma constante en la experiencia EXP5-1. H. Miyashiro 34
  • 31.
    V. Procesamiento dedatos binarios • Tramas Usualmente en comunicaciones digitales se envía la información en tramas compuestas por una cabecera (header) y una carga útil (payload). 1. En la cabecera se colocan secuencias binarias para facilitar la sincronización en el receptor. Adicionalmente va información sobre la trama. 2. El payload contiene la información. H. Miyashiro 35
  • 32.
    V. Procesamiento dedatos binarios • EXP7-1: Generación de tramas. Generar tramas con 16 Bytes de cabecera y 32 Bytes de carga útil (Payload). Analizar las tramas generadas con un editor hexadecimal. H. Miyashiro 36
  • 33.
    VI. Bloques SDR H.Miyashiro 37 • GRC proporciona bloques que sirven de interfaz entre GRC y el SDR conectado a la unidad de procesamiento digital. • UHD: USRP Sink/Source – para los SDRs: N210, B210 • Osmocom Source/Sink – para los SDRs: RTL-SDR, HackRF One USB, Ethernet
  • 34.
    VI. Bloques SDR •EXP8.1: Implementación de un analizador de espectro. Utilizar un SDR para visualizar el contenido espectral en la banda : 88 – 108 Mhz, utilizando GRC. H. Miyashiro 38 B210, N210 RTL-SDR, HackRF One
  • 35.
  • 36.
    H. Miyashiro 40 Diseñoen GRC para evaluar el instrumento Waterfall
  • 37.
    H. Miyashiro 41 Diseñoen GRC para evaluar los parámetros de filtros pasabajos