Clase de SDR y GNURadio en el curso de Sistemas de comunicaciones de 2016 en el UTN - FRBA.
Críticas, aportes, sugerencias, son todas bienvenidas a la siguiente dirección de correo electrónico: m.doallo@ieee.org
Muchas Gracias y espero sea de utilidad.
Ing. Marcelo Doallo
1. Software Defined Radio y GNU Radio
Ing. Marcelo Doallo
Octubre 2016
Ing. Marcelo Doallo Software Defined Radio y GNU Radio 1 / 27
2. Objeto de la presentaci´on
Esta presentaci´on tiene por objeto transmitir las primeras
experiencias de Software Defined Radio (SDR) y GNU Radio,
realizadas a partir del Curso de SDR organizado por el IEEE
Argentina en el a˜no 2013.
Se intentar´a abordar los siguientes temas
Descripci´on funcional de un SDR
Descripci´on de un caso de SDR
Descripci´on funcional de SDRSTICK+BeMicroSDK+GNU
Radio
Otros ejemplos de SDR
Ing. Marcelo Doallo Software Defined Radio y GNU Radio 2 / 27
4. Definici´on de SDR
“... y puede ser modificado con posterioridad a la fabricaci´on”
Ing. Marcelo Doallo Software Defined Radio y GNU Radio 4 / 27
5. Unidad de procesamiento digital de se˜nal
Ing. Marcelo Doallo Software Defined Radio y GNU Radio 5 / 27
6. Modelo de Sistema de comunicaci´on
Ing. Marcelo Doallo Software Defined Radio y GNU Radio 6 / 27
7. Puntos de vista para SDR
Arquitectura de procesamiento Digital
GPP
DSP
FPGA
Arquitectura de RF
en Antena
en FI
Software
SDR
SCA (Software Communications Architecture)
Ing. Marcelo Doallo Software Defined Radio y GNU Radio 7 / 27
8. Descripci´on de un caso de SDR
UDPSDR-HF1
Placa de adquisici´on de datos (S´olo recepci´on)
BeMicroSDK
Procesamiento digital de los datos para su posterior
tratamiento en la PC
GNU Radio
Procesamiento digital de los datos en banda base
(Envolvente compleja)
Corre en PC o Sistema Embebido
Es GNU
Ing. Marcelo Doallo Software Defined Radio y GNU Radio 8 / 27
9. UDPSDR-HF1
UDPSDR-HF1 SDRstick from Zephyr Engineering, Inc
Linear Tech LTC2249 14-bit, 80MSPS ADC
On-board LTC6409 20dB LNA and LPF
30 MHz anti-aliasing LPF
LTC2641 12-bit Audio DAC and headphone amplifier for
receiver audio output
Power requirements: USB powered (5VDC@400mA,
including BeMicroSDK)
Compatible with PowerSDR, Kiss Konsole, HDSDR, SDR#
software
GNU Radio source block available now
Customization available to suit specific applications
Ing. Marcelo Doallo Software Defined Radio y GNU Radio 9 / 27
12. BeMicroSDK
Kit de desarrollo de Altera.
22K Logic Element Cyclone IV device EP4CE22F17C7N
Onboard Micron Mobile DDR memory
MicroSD flash cage
Ethernet
8 Led’s
3 pulsadores disponibles para el usuario
Ing. Marcelo Doallo Software Defined Radio y GNU Radio 12 / 27
13. BeMicroSDK: Diagrama en block del firmware
Ing. Marcelo Doallo Software Defined Radio y GNU Radio 13 / 27
14. GNU Radio
Radio GNU es un conjunto de herramientas de desarrollo de
software libre y de c´odigo abierto, principalmente escrita en
Python, que proporciona bloques de procesamiento de se˜nales
para implementar radios definidas por software.
Se puede utilizar con hardware externo de RF f´acilmente
disponible de bajo costo, o sin hardware en un entorno de
simulaci´on.
Es utilizado por acad´emicos para la investigaci´on de
comunicaciones inal´ambricas y sistemas de radio en el mundo
real.
Ing. Marcelo Doallo Software Defined Radio y GNU Radio 14 / 27
15. Tipos de bloques en GNU Radio
Fuente
Sumidero
Procesadores
Declaraci´on de variables
del sistema
Ing. Marcelo Doallo Software Defined Radio y GNU Radio 15 / 27
16. Tipos de datos en GNU Radio
Complex
Float
Integer
Short
IShort (Short Complex)
Vector
Char
Demo: 1.tono.grc
Ing. Marcelo Doallo Software Defined Radio y GNU Radio 16 / 27
17. SDRSTICK + BeMicroSDK + GNU Radio
Las 80 millones de muestras por segundo (MS/s) del
SDRSTCIK, cada una de 14 bits, recuperan el espectro de 0 a
30 MHz.
Las muestras son tratadas por la FPGA del BeMicroSDK para
reducir la tasa de transferencia hacia la aplicaci´on (Digital
Down Conversion).
La tasa de transferencia hacia la PC es de 384 KS/s o 1.25
MS/s.
Cada muestras que se transfiere a la PC es de 4 bytes, 2 para I
y 2 para Q.
Ing. Marcelo Doallo Software Defined Radio y GNU Radio 17 / 27
18. SDRSTICK + BeMicroSDK + GNU Radio (2)
El BeMicroSDK se comunica con la aplicaci´on en la PC (por
ejemplo GNU Radio) utilizando el puerto Ethernet/IP, por medio
de un canal de ´ordenes en el puerto UDP 8000.
Ambos dispositivos (SDRSTICK y BeMicroSDK) se alimentan
por el puerto USB.
Las ´ordenes pueden ser: RUN, STOP, FRECUENCIA, ANCHO
de BANDA, entre otras.
Las ´ordenes como el flujo de datos son f´aciles de implementar,
por ejemplo lenguaje C o Python.
Demo: TCPDUMP
Ing. Marcelo Doallo Software Defined Radio y GNU Radio 18 / 27
19. SDRSTICK + BeMicroSDK + GNU Radio (3)
La puesta a punto del conjunto requiri´o:
Compilar GNU Radio.
Bajar el firmware al kit BeMicroSDK, el IP (archivos .flash)
es provisto por el desarrollador de SDRSTICK.
Compilar el Bloque de SDRSTICK en GNU Radio, los
fuentes son provistos por el desarrollador de SDRSTICK
El sistema operativo es Linux/Debian estable.
Ing. Marcelo Doallo Software Defined Radio y GNU Radio 19 / 27
20. Avances sobre GNU Radio exclusivamente
Simulaci´on de recepci´on de Broadcasting de AM
(demo am.grc)
Simulaci´on de recepci´on de LSB (demo lsb.grc)
Simulaci´on de LPF con frecuencia de corte variable
(pasabajos.grc)
Simulaci´on de se˜nal de DSB-SC (demo dsb.grc)
Simulaci´on de se˜nal BPSK (demo bpsk.grc)
Ing. Marcelo Doallo Software Defined Radio y GNU Radio 20 / 27
21. Temas en lo que hay que avanzar
Salida de audio del SDRSTICK
Control de ganancia del LNA en el SDRSTICK
Ensayos en OFDM
Recepci´on de Broadcasting de FM, requiere hardware
externo.
Desarrollar o conseguir el c´odigo para la FPGA, hoy se
trabaja con IP de SDRSTICK
Ing. Marcelo Doallo Software Defined Radio y GNU Radio 21 / 27
23. HackRF One
Desarrollado por Great Scott Gadgets
Es hardware dedicado a SDR
Ing. Marcelo Doallo Software Defined Radio y GNU Radio 23 / 27
24. HackRF One (2)
Tx/Rx desde 1 MHz a 6 Ghz (Transmisi´on Half-Duplex)
Velocidad de muestreo: 20 millones de muestras por
segundo
Resoluci´on de las muestras: 8 bits en fase y 8 bits en
cuadratura
LPC4320, NXP Semiconductors 32-bit ARM
Cortex-M4/M0 MCU
Compatibilidad con: GNU Radio y SDR#
Configuraci´on por software de ganancias de transmisi´on,
recepci´on y filtros de banda base
Control por software de alimentaci´on en antena de 50 mA
a 3.3 V
Puerto de expansi´on para programaci´on y Conector
externo para sincronismo
Interface Hi-Speed USB 2.0 (No usa Ethernet)
Alimentaci´on por USB
Ing. Marcelo Doallo Software Defined Radio y GNU Radio 24 / 27
25. Otros SDR’s e informaci´on ´util
http://www.gnuradio.org/
http://gnuradio.org/redmine/projects/gnuradio/wiki/Hardware
http://gnuradio.org/redmine/projects/gnuradio/wiki/
GNURadioLiveDVD
http://www.sdrstick.com/
https://parts.arrow.com/item/detail/arrow-development-
tools/bemicrosdk
https://greatscottgadgets.com/hackrf/
RTL2832 (http://www.rtl-sdr.com/)
http://www.ettus.com/home
Ing. Marcelo Doallo Software Defined Radio y GNU Radio 25 / 27
26. Ensayos
Recepci´on de Broadcasting de AM
Captura de espectro
Recepci´on de Broadcasting de FM
Ing. Marcelo Doallo Software Defined Radio y GNU Radio 26 / 27
27. Cr´ıticas, aportes, sugerencias
Cr´ıticas, aportes, sugerencias, son todas bienvenidas a la
siguiente direcci´on de correo electr´onico:
m.doallo@frba.utn.edu.ar
Muchas Gracias.
Ing. Marcelo Doallo Software Defined Radio y GNU Radio 27 / 27