Sunteți pe pagina 1din 60

Software Defined Radio: USRP y GNU Radio

30

Captulo 5. DISEOS EN GNU RADIO COMPANION

En este captulo se mostrarn un conjunto de mdulos creados con la herramienta GNU
Radio Companion basados, en su mayora, en el USRP. En primer lugar se explicar el diseo de
un analizador de espectros y seguidamente de un sistema FM tanto transmisor como receptor.
Tras esto se pasar a la realizacin de esquemas de modulacin digitales y alguna otra
implementacin.

Para la puesta en prctica de sistemas completos que consten de transmisor y receptor, se han
utilizado los siguientes equipos:

- 2 equipos porttiles con sistema operativo Ubuntu 9.04 en uno y Ubuntu 10.10 en
otro (de ah la pequea diferencia en la interfaz grfica de al ejecutar los diseos
como se ver posteriormente).
- 2 USRP en cuyo interior se aloja una tarjeta transceptora RFX-2400 en cada uno
para la conexin de los sistemas digitales y una tarjeta WBX en uno y TVRX (que
es slo receptora) en otro para la comunicacin va FM.
La disposicin de los equipos durante las pruebas experimentales se puede apreciar en la
Figura 5-1 y las daughterboards utilizadas en la Figura 5-2.


Figura 5-1 Disposicin de los equipos durante las pruebas
Ivn Pinar Domnguez

31


Figura 5-2 Tarjetas secundarias: WBX y RFX2400 (izquierda) y TVRX y RFX2400 (derecha)
5.1 Analizador de espectros

En este primer diseo se llevar a cabo la construccin de un analizador de espectros. La
elaboracin de este mdulo es bien sencilla, basta con aadir al esquemtico una fuente USRP y
conectarla al sumidero grfico FFT con la consiguiente configuracin que se explicar a
continuacin.
Se ha realizado el analizador de espectros adecuado a la tarjeta receptora TVRX, cuyo rango
de frecuencias es de 50 a 860 MHz. Para realizar el diseo con otra tarjeta simplemente se debe
ajustar en el esquemtico la variable que define la frecuencia de la fuente USRP. El esquemtico
implementado aparece en la Figura 5-3.


Figura 5-3 Esquemtico del analizador de espectros en GNU Radio Companion

A continuacin se ir explicando cada uno de los elementos que aparecen en el diagrama de
la Figura 5-3 en una serie de pasos:

PASO 1) Definicin de la fuente: En este caso, la seal ser la que proporcione el USRP a
travs de la interfaz USB. La configuracin de este bloque se muestra en la siguiente figura:
Software Defined Radio: USRP y GNU Radio

32


Figura 5-4 Propiedades de la fuente USRP
Como se aprecia, la fuente USRP es de tipo complejo a 16 bits por cada componente
compleja (es decir, 4 bytes por muestra). El factor de diezmado se elegir en funcin del ancho
de banda que se quiera visualizar. Si por ejemplo se requiere un ancho de 2 MHz, se necesitar
un factor de diezmado de 32, de esta manera la tasa de muestras es 64 MS/s/32 = 2 MS/s y la
representacin al tratarse de muestras complejas va desde f
s
/2 hasta f
s
/2 centrada en la
frecuencia sintonizada, donde f
s
es la tasa de muestras, es decir, 2 MHz. A continuacin se
muestra una tabla con los valores de anchos de banda y diezmados asociados (BW = 64 MS/s /
diezmado):

Ancho de banda Factor de diezmado
320 KHz 200
640 KHz 100
1 MHz 64
2 MHz 32
4 MHz 16
8 MHz 8
Tabla 5-1 Relacin entre ancho de banda y factor de diezmado

Para seleccionar la frecuencia, se indicar el identificador freq que corresponde a una
Variable Slidder que se explicar posteriormente. Igualmente ocurre con la ganancia. Por ltimo
se elige el lado o Side en el que se encuentra la tarjeta secundaria (o daughterboard) en el USRP,
en este caso el lado B y receptor de antena A (es indiferente en este diseo porque la tarjeta
TVRX slo tiene una conexin de antena). Se recuerda en este punto que el USRP admite una o
dos tarjetas secundarias (lado A y lado B) y cada una de estas tarjetas puede ser transmisor,
receptor o transceptor (TRX). En caso de que sea TRX, lo comn es que tenga un conector slo
para recepcin (RX) y otro para entrada/salida (TX/RX).
Ivn Pinar Domnguez

33

PASO 2) Seleccin del sumidero: El sumidero del flujo de seal ser un sumidero grfico de
tipo FFT_sink. Su configuracin aparece a continuacin:


Figura 5-5 Propiedades del sumidero FFT
Este sumidero es de tipo complejo. Obviamente, los extremos de una conexin tienen que ser
del mismo tipo. Se especifica el ttulo en la casilla Title y se asigna a Sample Rate el
identificador de la variable BW que se crear posteriormente. Para que la representacin se
centre en la frecuencia sintonizada, se indica el identificador freq (el de la Variable Slidder que
se mover en la interfaz grfica). El resto de parmetros estn asociados a la visualizacin:
escala, nmero de puntos de la FFT, tasa de refresco,..

PASO 3) Insercin de variables y opciones: En este paso se explicar el proceso para crear
variables que posteriormente se puedan manejar desde la interfaz grfica al ejecutar el diseo as
como las opciones del grfico. Empezando por las Variables Slidder:


Figura 5-6 Parmetros de las Variables Slidder
Como se aprecia, lo primero es indicar el identificador o nombre de la variable que se asocia
a ellas para identificarlas en el resto del esquemtico. Despus se selecciona la etiqueta que se
mostrar en la interfaz grfica, el rango de valores posibles y el estilo.
Software Defined Radio: USRP y GNU Radio

34

En el caso de la variable frecuencia, en el mnimo y el mximo se seleccionan los extremos
del rango de funcionamiento de la tarjeta TVRX as como el nmero de saltos para que el paso
sea de 1 MHz. En la variable ganancia sucede lo mismo, la ganancia mxima ser de 110 dB, 90
dB de la tarjeta ms 20 dB del PGA. La ganancia especificada primero se traslada al PGA y si se
selecciona un valor mayor que 20 dB entonces se aumenta la ganancia de la daughterboard.

La ltima variable definida en el esquemtico es del tipo Variable Chooser para ajustar el
ancho de banda. Se ha elegido este tipo porque el factor de diezmado no puede tomar cualquier
valor (slo pares entre 8 y 512) y por temas de eficiencia potencias de 2 (para algoritmos como
FFT). Sus propiedades aparecen en la siguiente figura:


Figura 5-7 Parmetros de la Variable Chooser
Su configuracin es similar a las variables slidder pero en este caso la variable slo puede
tener un conjunto de valores: 320 KHz, 640 KHz, 1 MHz, 2 MHz, 4 MHz y 8 MHz. A estos
valores les corresponden las etiquetas seleccionadas en el parmetro Labels.

El nico bloque que falta por comentar es el de opciones. En ste, se selecciona el nombre
que tendr el fichero .py que se genera una vez se compile el esquemtico, el ttulo de la interfaz
grfica, el autor y algn otro detalle de visualizacin.


Figura 5-8 Parmetros del bloque Options
Ivn Pinar Domnguez

35

Para ajustar todos los elementos creados en la interfaz grfica en la posicin y tamao que se
desee, se utiliza el parmetro Grid Position, que se puede apreciar en todos los bloques (menos
el de opciones, pues no aparece en la interfaz). La nomenclatura es:
Fila, Columna, Alto (en nmero de filas), Ancho (en nmero de columnas)

Tras haber realizado el diseo, presionamos la tecla F5 para compilar y F6 para ejecutar el
fichero Python que se genera automticamente. El resultado aparece en la Figura 5-9.


Figura 5-9 Ejecucin del analizador de espectros creado
En este rango frecuencial se observan emisiones de FM a 99.6 MHz y 100.3 MHz. Si se
reduce el ancho de banda y se selecciona la frecuencia de sintona de 97 MHz (recordar que la
variable freq que sintoniza la frecuencia se defini con un paso de 1 MHz) podemos ver la
emisin a 97.1 MHz (40 principales en Sevilla).


Figura 5-10 Visualizacin de una emisin FM a 97.1 MHz
Software Defined Radio: USRP y GNU Radio

36

Al igual que se ha implementado este analizador de espectros, se puede realizar el diseo de
un osciloscopio sin ms que sustituir el bloque FFT_sink del esquemtico por un bloque
Scope_sink. En los siguientes apartados aparecer este bloque para visualizar la seal en el
dominio temporal, o incluso obtener la constelacin activando el modo XY til para los sistemas
de comunicaciones digitales.
Por si resulta de inters, tambin existe la opcin de crear espectrogramas, es decir,
visualizaciones tiempo-frecuencia-amplitud aunque suelen tener una elevada carga
computacional.

5.2 Sistema FM

Este apartado se centrar en la realizacin de un sistema FM, tanto transmisor como receptor,
a partir de las libreras adecuadas de GNU Radio en las que se implementan los bloques
modulador y demodulador de FM. Si se quiere observar la implementacin de dichos bloques
basta con irse al directorio usr/lib/python2.6/dist-packages/gnuradio/blks2impl en Ubuntu o bien
al directorio /. en Mac y abrir los ficheros de modulador y demodulador FM (nbfm.py). Una
primera idea para realizar este diseo se obtuvo de [8].
5.2.1 Transmisor FM
En primer lugar se mostrar el esquemtico creado para el mdulo transmisor. Posteriormente
se irn comentando los detalles de este diseo que tengan relevancia y se diferencien de los
conceptos introducidos en el analizador de espectros. El fichero grc creado aparece en la Figura
5-11.
Ivn Pinar Domnguez

37


Figura 5-11 Esquemtico del transmisor FM
Las variables utilizadas en este diseo son las siguientes:
- audio_rate: Tasa de muestreo de audio.
- tx_freq: Frecuencia de transmisin utilizada en el USRP.
- interpolado: Factor de interpolado introducido en el USRP antes del DAC.
- audio_gain: Ganancia del filtro paso bajo tras la fuente de audio.
- USRP_gain: Ganancia del amplificador software colocado antes de USRP.
- rf_gain: Ganancia de RF del USRP considerando el PGA y la tarjeta secundaria.
- nbook: Utilizada para crear pestaas.

Estas variables se irn introduciendo en lo sucesivo.


Software Defined Radio: USRP y GNU Radio

38

Este mdulo consta de dos posibles fuentes a seleccionar, una de tipo audio que se refiere al
micrfono del equipo y otra a un fichero wav cuyas caractersticas se muestran a continuacin:


Figura 5-12 Propiedades wav source
Como se puede apreciar, las especificaciones de esta fuente son la ruta del fichero, la opcin
de repeticin y el nmero de canales (mono, estreo o mayor nmero de canales).
A continuacin se introduce un bloque de prenfasis de la seal (que en recepcin se
compensar con un bloque de denfasis) para disminuir el ruido de alta frecuencia que se genera
intrnsicamente en la demodulacin en el sistema FM.
Tras esto, se ha aadido un filtro paso bajo para limitar el espectro de audio a 15 KHz en
caso de que el fichero wav tenga mayor extensin y adems dar la posibilidad de introducir
ganancia de audio en el fichero a travs de la variable slidder audio_gain. Las propiedades de
este filtro aparecen en la siguiente figura:


Figura 5-13 Propiedades del filtro paso bajo
El siguiente bloque que aparece en el diseo es el modulador de FM de banda estrecha
cuyas propiedades son las siguientes:

Ivn Pinar Domnguez

39


Figura 5-14 Propiedades del bloque modulador FM
Los parmetros son la tasa de audio de entrada (la del fichero wav, es decir, 32 KHz),
tasa de cuadratura (la tasa de muestras por la interfaz USB), es decir, la tasa a la que van las
muestras en la interfaz USB, la constante de tiempo (50 s en Europa) y la desviacin mxima
(75 KHz en el estndar europeo).

En este punto resulta conveniente aclarar la seleccin del factor de interpolado y diezmado:
- La desviacin mxima es 75 KHz, por lo que aplicando la regla de Carson:
KHz KHz KHz f f B
m
180 ) 15 75 ( 2 ) ( 2 = + = + A =

(5-1)
En la prctica se escoge una canalizacin de 200 KHz. El ancho de banda de
transmisin y recepcin vendr dado por el factor de interpolado y diezmado
respectivamente. Se ha seleccionado un valor de interpolado de 400, por lo que el
ancho de banda ser de 128 MHz / 400 = 320 KHz (hay que tener en cuenta que se
trata de muestras complejas, por lo que el ancho de banda va desde fs/2 hasta fs/2
que despus elevaremos en frecuencia) lo cual es suficiente para la canalizacin de
FM. En recepcin el ADC opera a la mitad de tasa por lo que el factor de diezmado
ser de 200 para obtener el mismo ancho de banda (o tasa de muestras como quiera
verse).

A la salida del modulador se conecta un sumidero grfico Scope, es decir, un osciloscopio.
Los parmetros de configuracin de este bloque se muestran en la Figura 5-15.


Figura 5-15 Propiedades del osciloscopio

Software Defined Radio: USRP y GNU Radio

40

La configuracin de este bloque es similar al resto pero con las caractersticas propias de un
osciloscopio como por ejemplo la escala de tiempo y amplitud, que se podra ajustar
convenientemente o bien dejarse a 0 para un ajuste automtico. Antes de la conexin del
osciloscopio se ha aadido un bloque complex_to_real para ver slo la componente real de
nuestra seal para una visualizacin ms didctica.

Siguiendo en el esquemtico, el siguiente bloque es un multiplicador (es decir, un
amplificador en software) para aumentar la potencia de la seal transmitida a partir de la variable
slidder creada USRP_gain. Sus propiedades son:


Figura 5-16 Propiedades del amplificador software
Por ltimo en este mdulo, se aade el sumidero USRP, por lo que el USRP ser donde
acabe el flujo ya que estamos en la parte transmisora. La configuracin de este bloque es la
siguiente:


Figura 5-17 Propiedades del sumidero USRP
Las propiedades son similares a las vistas en otros bloques. La nica peculiaridad a resaltar es
el parmetro Transmit que se ha especificado como Auto T/R, es decir, se podra transmitir y
recibir al mismo tiempo con la misma tarjeta.
Ivn Pinar Domnguez

41

Antes de mostrar los resultados se va a explicar cmo crear varias pestaas dentro de una
misma ventana para seleccionar cada una de las visualizaciones adecuadamente. Para esto, es
necesario haber incluido un objeto o bloque de tipo Notebook en el esquemtico. Cada uno de los
objetos de la interfaz como visualizaciones o variables se pueden insertar en una de las pestaas
del Notebook y slo aparecen cuando se selecciona dicha pestaa. Si no se especifica nada en el
parmetro Notebook de cada objeto, entonces aparecer independientemente de la pestaa
seleccionada. Indicar que si un objeto se inserta dentro de una pestaa del notebook, el grid
position de ese objeto est referido dentro de esa misma pestaa, no de la visualizacin global.
En el esquemtico se puede ver como las visualizaciones de FFT y osciloscopio pertenecen a
pestaas diferentes del Notebook (cuyo identificador es nbook,x donde x es la pestaa). Los
parmetros del Notebook aparecen en la siguiente figura:


Figura 5-18 Propiedades Notebook
Por lo que para insertar la FFT del espectro modulado en la pestaa Transmisor, se deber
seleccionar nbook,0 en el parmetro Notebook de la visualizacin FFT_sink correspondiente.
Tras obtener el fichero Python a partir del esquemtico y ejecutarlo, la interfaz grfica es la
siguiente:


Figura 5-19 Visualizacin del espectro transmitido
Software Defined Radio: USRP y GNU Radio

42

Se puede apreciar como la emisin del transmisor FM ocupa un ancho de banda de unos 200
KHz como caba esperar. Tambin se puede visualizar la seal en el tiempo gracias al bloque
osciloscopio aadido previamente, al que se le asign el parmetro notebook a 1 y por eso
aparece en la segunda pestaa. El resultado es el siguiente:


Figura 5-20 Visualizacin de la seal en el tiempo
En la figura anterior se observa como la informacin viaja en la frecuencia de la seal
modulada y no en la amplitud.

La frecuencia seleccionada para el transmisor FM es de 87.5 MHz para no interferir con
ninguna otra emisin. Para ms informacin sobre dispositivos de corto alcance, consultar [11].
Indicar tambin que la ganancia de RF no es seleccionable en la tarjeta WBX (aunque la
ganancia del PGA s que lo es). Para paliar esta limitacin se puede aumentar la potencia de la
seal gracias a la ganancia del amplificador software (Ganancia entrada USRP) que puede
tomar valores entre 0 y 40 dB, aunque tambin depende del nivel de la seal de audio y la
ganancia que se haya introducido a ste (Ganancia de audio).

5.2.2 Receptor FM

Una vez analizado en detalle el mdulo transmisor, se proceder al anlisis del mdulo
receptor. Este diseo es similar al del transmisor pero en orden inverso obviamente. El
esquemtico creado se muestra en la Figura 5-21.

Ivn Pinar Domnguez

43


Figura 5-21 Diagrama de bloques del receptor de FM
Las variables utilizadas en el esquemtico se listan a continuacin:
- audio_rate: Tasa de muestreo de audio.
- rx_freq: Frecuencia sintonizada en el USRP (es la suma de usrp_freq+xlate_tune,
ajueste grueso y fino respectivamente).
- usrp_decim: Factor de diezmado introducido en el USRP.
- usrp_rate: Tasa de muestras que proporciona el USRP (ser 64 MS/s/usrp_decim).
- af_gain: Ganancia de audio antes de enviar a la tarjeta de sonido.
- rf_gain: Ganancia de RF del USRP considerando el PGA y la tarjeta secundaria.
- nbook: Utilizada para crear pestaas.
- Display_selector: Variable utilizada para mostrar el espectro en banda base o en
radiofrecuencia.
- sql_level: Nivel de squelch para minimizacin del ruido.

Se comenzar la explicacin de este diseo por la fuente, es decir, la informacin que
suministra el USRP.

Software Defined Radio: USRP y GNU Radio

44


Figura 5-22 Parmetros de la fuente USRP
Como se ha comentado en el apartado 5.1, para obtener un ancho de banda de 320 KHz ahora
es necesario un factor de diezmado de 200. La frecuencia y ganancia de la tarjeta secundaria
(una TVRX ubicada en el lado B) se ajustarn con sendas variables slidder. Indicar que la
variable rx_freq depende de un ajuste grueso y un ajuste fino de la frecuencia tal y como se
puede apreciar a continuacin:


Figura 5-23 Variable de ajuste de frecuencia sintonizada
Siguiendo en el diagrama se encuentra el bloque simple squelch, utilizado para eliminar toda
componente que no supere un determinado nivel y as disminuir el nivel de ruido. El umbral se
controla a partir de la variable slidder sql_lev. Un valor aconsejable es de -10 dB.

A continuacin aparece un filtro de canal para seleccionar el ancho de banda de la emisin
de FM. Tambin se podra seleccionar un factor de diezmado mayor para obtener el ancho de
banda deseado, es decir, con un factor de diezmado 320, la tasa de muestras por la interfaz USB
(y por tanto el ancho de banda) sera de 200 MS/s, con lo que se tendran los 200 KHz, aunque
Ivn Pinar Domnguez

45

hay que tener en cuenta que la visualizacin de la FFT muestra un ancho de banda igual a la tasa
de muestras que se especifique, obteniendo resultados ms vistosos si se selecciona el diezmado
200 como en este caso. Las propiedades del filtro de canal se muestran en la siguiente figura:


Figura 5-24 Caractersticas del filtro de canal
Como la seal de FM tiene un ancho de banda de 200 KHz en banda base la frecuencia
superior estar en 100 KHz y la inferior en -100 KHz y esta ser por tanto la frecuencia de corte,
asignando un ancho de banda de transicin del 10%, es decir, 3 dB de prdidas en 110 KHz.

Tras sintonizar el receptor, eliminar parte del ruido y seleccionar el ancho de banda de la
seal FM, se est en disposicin de demodular la seal con el bloque demodulador de FM (de
banda estrecha en este caso). Los parmetros de este elemento son los mismos que para el
modulador de FM analizado en el apartado anterior:


Figura 5-25 Parmetros demodulador FM
Indicar que en el parmetro Audio Rate se podra haber seleccionado igualmente la variable
audio_rate (32 KHz). El resto de valores ya se explicaron en el apartado previo.

Tras el demodulador se aade el bloque denfasis para compensar el prenfasis utilizado en
transmisin y obtener la seal original (con ruido obviamente).
Por si la seal de audio resultara dbil se conecta un bloque amplificador antes del sumidero
final que ser la tarjeta de sonido, cuyo nico parmetro es la tasa de audio, 32 KHz, es decir la
tasa de muestras de audio que se especifique en el sumidero audio_sink y que depende de la
tarjeta de sonido utilizada. Otros valores tpicos son 44.1 KHz y 48 KHz.
Una vez finalizado el flujo de seal, se aaden las visualizaciones oportunas en diferentes
pestaas. Cabe comentar un detalle de implementacin en la FFT del espectro de
radiofrecuencia, ya que en la interfaz grfica se ofrece la posibilidad de representar el espectro
en banda base o en radiofrecuencia. Para ello se crea una variable chooser con identificador
display_selector y se configura la visualizacin FFT_sink como sigue:
Software Defined Radio: USRP y GNU Radio

46


Figura 5-26 Configuracin de FFT_sink
La variable display_selector puede tomar los valores 0 1, de tal manera que se consigue el
cometido buscado (seleccionar banda base o radiofrecuencia).

Tras generar el fichero Python y ejecutarlo, el resultado al sintonizar una emisin FM
comercial a una frecuencia de 94.3 MHz se muestra en la Figura 5-27.


Figura 5-27 Sintonizacin de la emisin de FM comercial a 94.3 MHz
Ivn Pinar Domnguez

47

Se puede observar como el ancho de banda de la seal de FM es de 200 KHz. No ha sido
necesario realizar ajuste fino de frecuencia en ninguna de las pruebas FM realizadas.
Tras comprobar que el receptor funcionaba correctamente, se proceder a sintonizar la
emisin generada con el mdulo transmisor FM creado anteriormente. El resultado se muestra
en la siguiente figura:


Figura 5-28 Sintonizacin de la emisin de FM generada con el mdulo transmisor FM en otro
USRP a 87.5 MHz

La demodulacin se realiza correctamente, para corroborarlo se mostrar la seal de
audio que se enva a la tarjeta de sonido en la Figura 5-29.
Software Defined Radio: USRP y GNU Radio

48


Figura 5-29 Espectro de la seal de audio transmitida a la tarjeta de sonido
La seal de audio se extiende hasta los 3 KHz debido a que el sistema implementado se basa
en el modulador y demodulador de banda estrecha (Narrow-Band FM). Tambin se puede llevar
a cabo la implementacin del mismo sistema FM en banda ancha simplemente con cambiar los
bloques NBFM por los bloques WFM tambin suministrados en la arquitectura GNU Radio, por
lo que se plantea como ejercicio, estando la solucin disponible.


5.3 Sistema (D)QPSK

En este apartado se introduce el diseo de sistemas de comunicaciones digitales. Antes de
profundizar en cada uno de los mdulos, se van a aclarar algunos conceptos a tener en cuenta
comunes a todos los esquemticos siguientes:

- La fuente de informacin que se pretende transmitir es de tipo wav source. La tasa de
muestreo para esta fuente ser de 32 KHz. Cada una de las 32 KS/s que proporciona esta fuente
es de tipo float, es decir, 4 bytes. Teniendo en cuenta esto, el rgimen binario que en principio se
necesitara sera de 1024 Kbps para transmitir correctamente el fichero wav.

- Como se ha visto en numerosos apartados, el factor de diezmado e interpolado mnimo a
utilizar es de 8 y 16 respectivamente para no sobrepasar la tasa de 32 MB/s en la interfaz USB.
Sin embargo, al trabajar con modulaciones digitales se ha comprobado que el lmite inferior de
funcionamiento correcto es de 64 para el interpolado y 32 para el diezmado por lo tanto (el
diezmado siempre se elegir la mitad de interpolado para que la tasa en la interfaz USB de
transmisin y recepcin sea la misma y el sistema opere adecuadamente), es decir, se multiplican
por 4 ambos valores. La explicacin puede estar en la respuesta del filtro interpolador CIC
(Cascade Integrator Comb) del USRP, que se degrada conforme el factor de interpolado
disminuye, distorsionando la forma de onda del coseno alzado [15]. Este hecho limitar la tasa
mxima de transmisin o las muestras por smbolo enviadas. Por ejemplo, considerando un
factor de interpolado de 64, en la interfaz USB la tasa de muestras ser 2 MS/s (128 MS/s / 64),
por lo que si se especifica un nmero de muestras por smbolo de 16 para tener una buena
resolucin del coseno alzado y por ente de la constelacin representada, la tasa de smbolos
mxima ser de 125 KSimb/s QPSK (2 MS/s / 16).
En los apartados sucesivos se mostrarn las soluciones adoptadas para cada modulacin.
Ivn Pinar Domnguez

49

5.3.1 Transmisor (D)QPSK
Se pasar a detallar la implementacin del transmisor QPSK que aparece en la Figura 5-30.


Figura 5-30 Esquemtico del transmisor QPSK
Software Defined Radio: USRP y GNU Radio

50

Este diseo se ha realizado bloque a bloque para que resulte ms didctico su anlisis, aunque
existen bloques en GNU Radio que contienen todos los elementos necesarios para modular la
seal de inters. stos se mostrarn en apartados sucesivos.

Comenzando el anlisis desde el inicio del esquemtico, la fuente como se ha mencionado es
de tipo wav seguida de un bloque remuestreador Rational Resampler que disminuye la tasa de
muestras por 4 en este caso. El uso de este bloque se comprender cuando se analicen los
resultados. Sus parmetros de configuracin aparecen a continuacin:


Figura 5-31 Parmetros del bloque Rational Resampler
Seguidamente se encuentra el codificador que transforma las muestras de tipo float en bytes.
Estos bytes estarn formados por 4 smbolos de 2 bits.


Figura 5-32 Parmetros del bloque Packet Encoder
Ivn Pinar Domnguez

51

Entre sus parmetros destacar Samples/Symbol, que es el nmero de muestras que se
transmiten por cada tiempo de smbolo y que en este caso ser 16 (el valor de la variable ss) y
Bits/Symbol, que al tratarse de una modulacin QPSK es 2. El Access Code es una contrasea de
acceso por si algn agente externo interceptara la informacin transmitida, que se deja en blanco
para que no sea necesaria.

A continuacin se realiza un desempaquetado de los bytes, colocando un smbolo de 2 bits
en cada byte en posicin MSB (Most Significant Bit) denominado chunk, necesario para operar
posteriormente con el bloque Chunks to Symbols. Para ello se utiliza el bloque Packed to
Unpacked que se muestra continuacin:


Figura 5-33 Parmetros del bloque Packed to Unpacked
Una vez desempaquetada la informacin, se realiza un mapeo de Gray con el bloque Map
cuya configuracin es la siguiente:


Figura 5-34 Parmetros mapeo de Gray
Se aprecia como para indicar el mapeo se ha utilizado una funcin del mdulo PSK. Para
poder utilizar dicha funcin primero se ha debido importar en el esquemtico dicho mdulo tal y
como puede observarse en la figura Figura 5-35.
Software Defined Radio: USRP y GNU Radio

52


Figura 5-35 Import del mdulo psk
A continuacin aparecen tres bloques para poder convertir la modulacin en diferencial. Para
ello se aaden dos bloques selectores y un bloque diferencial cuyo parmetro es Modulus, es
decir, el nmero de smbolos de la modulacin (4) tal y como aparece a continuacin:


Figura 5-36 Propiedades bloque diferencial
El bloque selector inicial y final se controlan con la variable dif tal y como se puede apreciar
en la siguiente figura:


Figura 5-37 Propiedades bloque selector
Si dif toma el valor 0, el flujo de seal transcurre por la rama superior y por tanto no
interviene el bloque diferencial al contrario de seleccionarse el valor 1.
Ivn Pinar Domnguez

53

Tras esto se est en disposicin de realizar un mapeo complejo para convertir los bytes de
informacin en muestras complejas a travs del bloque Chunks to Symbols cuyas caractersticas
son las siguientes:


Figura 5-38 Propiedades Chunks to Symbols
El parmetro Dimension representa el nmero de dimensiones para representar la
constelacin en cuestin. Se especifica en 1 ya que se indica el formato de salida complex (no
tiene que ser 2 como se podra pensar). En el parmetro Symbol Table se especifica el mapeo que
se va a realizar a los datos, en este caso ser un mapeo QPSK especificado por la variable const
que se muestra a continuacin:


Figura 5-39 Variable const
Tras obtener los smbolos complejos se pasan por un filtro raz de coseno alzado con las
siguientes especificaciones:
Software Defined Radio: USRP y GNU Radio

54


Figura 5-40 Parmetros filtro coseno alzado
El filtro ser de tipo FIR con factor de interpolacin ss (16), es decir, el valor que se
especifique en la variable que controla el nmero de muestras por smbolo QPSK para que cada
smbolo est representado por 16 muestras. La ganancia tambin se selecciona segn dicha
variable (aunque tambin podra ser 0 dB y amplificar la seal posteriormente) al igual que el
parmetro Sample Rate (la tasa de smbolos QPSK). Indicar que los valores de Sample Rate y
Symbol Rate tienen significado relativo, es decir, lo que importa es la proporcin entre ambos
valores y que darn el nmero de muestras por smbolo: Sample Rate/Symbol Rate =
Samples/Symbol. Por ltimo se especifica el valor de Roll-off con la variable alfa y el nmero de
taps o coeficientes del filtro en funcin del nmero de muestras nuevamente, por lo que en este
caso el pulso RRC durar 11 smbolos
7
.

Tras pasar por el coseno alzado se aumenta el nivel de seal transmitido gracias al
amplificador software. En este punto conviene decir que la tarjeta RFX2400 utilizada no tiene
ganancia variable en transmisin por lo que la potencia de la seal se puede controlar a partir de
este bloque gobernado por la variable slidder usrp_gain. Por supuesto el valor que se
especificar a esta variable depender del nivel de entrada, es decir, se podra haber multiplicado
a los valores de la constelacin por una constante igualmente o haber subido la ganancia del
filtro RRC.

El sumidero ser el USRP, cuyas caractersticas aparecen en la siguiente figura:

7
Recuerde que el pulso Root Raised Cosine tiene una duracin infinita, por lo que debe acotarse su
longitud.
Ivn Pinar Domnguez

55


Figura 5-41 Parmetros sumidero USRP
El factor de interpolacin se especificar en funcin de la variable chooser Rs que controla la
tasa de smbolos a transmitir. Para entenderlo, pensar que la tasa de muestras que ir por la
interfaz USB ser de (128 MS/s / interpolacin) = Samples/Symbol*Rs. La frecuencia y la
ganancia (aunque esta ltima no es posible con esta tarjeta) se controlan a partir de otras dos
variables slidder.

Finalmente se aaden las visualizaciones oportunas de FFT y osciloscopio a partir del cual se
puede representar la constelacin seleccionando modo XY tal y como aparece en la siguiente
figura:


Figura 5-42 Parmetros sumidero USRP

Software Defined Radio: USRP y GNU Radio

56

Tras finalizar el diseo, se pasar a mostrar los resultados. En principio se necesita un flujo
binario de 1024 Kbps para poder enviar el fichero wav, es decir, una tasa de smbolos de 500
Kbaudios por tratarse de una modulacin QPSK. Esto significa que, como el factor de
interpolado no puede sobrepasar el valor 64 para poder operar con seales moduladas
digitalmente, el valor mximo del nmero de muestras por smbolo ser 4 debido a la siguiente
relacin:
) * _ /( 128 Rs symb Samp MHz o Interpolad =
Este valor del nmero de muestras por smbolo supone una pobre resolucin del coseno
alzado, obteniendo por consiguiente una mala representacin de la constelacin tal y como
puede apreciarse en la Figura 5-43.


Figura 5-43 Constelacin QPSK con 4 muestras por smbolo
Debido a ello, se aumentar el nmero de muestras por smbolo a 16, con lo que la tasa
mxima de smbolos ser 125 Kbaudios a partir de la cual no se podra enviar el fichero wav
original. La solucin a esto es el bloque Rational Resampler que no se explic anteriormente.
Como la tasa de smbolos mxima es la cuarta parte que la necesaria, reducimos el nmero de
muestras de la fuente en un factor 4, es decir, la tasa de muestras de la fuente es ahora de 8 KHz
y la tasa binaria necesaria de 256 Kbps (8 KS/s*32 bits/muestra) que s se puede proporcionar
(aproximadamente) con una tasa de de smbolos QPSK de 125 Kbaud. Las implicaciones de
reducir en fuente el nmero de muestras en las prestaciones del diseo se analizarn en el
siguiente apartado. En este momento, cabe destacar que no existe la posibilidad de enviar un
fichero en formato mp3 ya que, al ser un formato comprimido, su lectura en tiempo real no es tan
sencilla como un fichero wav.

Los resultados obtenidos para esta nueva configuracin aparecen en las figuras siguientes. La
constelacin transmitida se muestra en la Figura 5-44.
Ivn Pinar Domnguez

57


Figura 5-44 Constelacin QPSK con 16 muestras por smbolo
Se puede apreciar como al aumentar la resolucin del coseno alzado mejora la visualizacin
de la constelacin QPSK.

El espectro de la seal transmitida aparece a continuacin:


Figura 5-45 Espectro seal transmitida
Software Defined Radio: USRP y GNU Radio

58

En la figura se aprecia como el ancho de banda transmitido es de unos 200 KHz,
aproximadamente (1+)*Rs que es el valor terico ([5], ecuacin 5.7.1). La visualizacin sin
embargo tiene un span igual a la tasa de muestras especificada, en este caso, 2 MHz
(Rs*samp_symb).

5.3.2 Receptor (D)QPSK
Una vez explicado en detalle el transmisor (D)QPSK se acometer el diseo del receptor
(D)QPSK que bsicamente sigue un esquema inverso al transmisor aunque es necesario insertar
algn bloque extra para compensar el canal de comunicaciones. El esquemtico creado aparece
en la Figura 5-46.


Figura 5-46 Esquemtico del receptor QPSK

El anlisis de este diseo se iniciar en la fuente, es decir, el USRP. La configuracin de este
bloque aparece en la siguiente figura:
Ivn Pinar Domnguez

59


Figura 5-47 Parmetros de la fuente USRP
Los parmetros configurables son los explicados en otras ocasiones. Resaltar que el factor de
diezmado sigue el mismo concepto que en el transmisor pero teniendo en cuenta que la
frecuencia de muestreo del ADC es de 64 MS/s y no de 128 MS/s como es la del DAC. La
frecuencia de sintonizacin constar de dos variables slidder, una de ajuste grueso en frecuencia
y otra de ajuste fino debido a la desviacin de la frecuencia portadora del equipo transmisor.
Todo esto se explicar posteriormente.

Seguidamente aparece un amplificador de seal por si fuera necesario y un control
automtico de ganancia implementado con el bloque Feed Forward AGC cuyos parmetros
configurables son el nmero de muestras sobre el que se calcula cada mximo (Num Samples) y
el valor de referencia al que se ajusta la seal en mdulo (Reference), el cual se debe seleccionar
entre 1.3 y 1.5 para que se decodifique segn la variable const (cuyo mdulo de cada valor es
) tal y como se muestra en la figura siguiente:


Figura 5-48 Parmetros del AGC
A continuacin aparece el filtro adaptado, es decir, el bloque raz de coseno alzado cuyos
parmetros se muestran en la Figura 5-49.
Software Defined Radio: USRP y GNU Radio

60


Figura 5-49 Parmetros del filtro raz de coseno alzado
A diferencia del filtro transmisor aqu obviamente no hay que realizar ningn tipo de
interpolacin y la ganancia es 1.

Para poder sincronizar al receptor en tiempo, fase y frecuencia se utiliza el siguiente bloque
de sincronizacin, MPSK Receiver, cuyos parmetros ajustan los valores del NCO (ubicado
dentro del DDC, tal y como se explica en el Anexo II) del USRP. Indicar que, para la
sincronizacin en frecuencia, la desviacin debe ser mnima, debido a ello se aade en el
esquemtico un ajuste grueso manual de frecuencia (el ajuste fino se conseguir con el NCO).
Este bloque de sincronizacin se basa en el algoritmo Mueller & Muller, para ms informacin,
consultar [12]. Los valores utilizados para cada parmetro son los valores estndar utilizados en
otros mdulos de GNU Radio y tienen el siguiente significado:

- M: Orden de modulacin M-PSK.
- Theta: Cualquier rotacin de fase constante sobre el eje real de la constelacin
- Alpha: Parmetro de ganancia para ajustar la fase del bucle de costas.
- Beta: Ganancia para ajuste de frecuencia en el bucle de Costas.
- Fmin: El mnimo valor de frecuencia normalizada que el bucle puede alcanzar.
- Fmax: El mximo valor de frecuencia normalizada que el bucle puede alcanzar.
- Mu: Parmetro inicial del interpolador.
- Gain_mu: Parmetro de ganancia del error Mueller & Muller para ajustar mu.
- Omega: Valor inicial para el nmero de muestras por smbolos.
- Gain_omega: Parmetro de ganancia para ajustar omega basado en el error.
- Omega_rel: Selecciona el valor mximo y mnimo de omega, es decir, omega estar
en el rango [omega*(1-omega_rel), omega*(1+omega_rel)].

A continuacin aparece la configuracin de este bloque:

Ivn Pinar Domnguez

61


Figura 5-50 Parmetros del bloque de sincronizacin

Tras realizar la sincronizacin aparecen los bloques de seleccin de modulacin diferencial
cuyas caractersticas son las mismas que las explicadas en el transmisor QPSK.

Ahora se convierten los smbolos complejos a bits gracias al bloque demapper Constellation
Decoder segn la tabla especificada en la variable const.


Figura 5-51 Parmetros del bloque Constellation Decoder
Tras decodificar los smbolos complejos, se realiza un demapeado de Gray con las
siguientes caractersticas obteniendo los valores binarios con la funcin gray_to_binary del
mdulo psk importado:


Figura 5-52 Parmetros del bloque Map
En este punto se tendr la informacin en bytes y cada byte contiene 2 bits de informacin,
por lo que para trabajar con el bloque Packet Decoder se necesita empaquetar los bits, es decir,
tener en cada byte 8 bits de informacin, o lo que es lo mismo 4 smbolos de 2 bits. Para este
cometido se introduce el bloque Unpack K bits (nombre del bloque desafortunado, ya que
empaqueta los bits) y Packet Decoder. En definitiva, se realiza el proceso inverso al transmisor.

Como en el mdulo del transmisor se disminuy la tasa de la fuente en un factor 4, ahora en
recepcin para poder seguir el ritmo del fichero de audio original debemos interpolar por el
mismo factor con el bloque Rational Resampler, esto implicaba una prdida de calidad de la
seal de audio puesto que al interpolar por 4 el espectro de la seal de audio disminuye por 4 su
rango frecuencial. Tras ello se termina el flujo de seal en el sumidero de audio Audio Sink con
una tasa de 32 KHz.

Software Defined Radio: USRP y GNU Radio

62

Antes de pasar a los resultados se mostrar la configuracin del sumidero grfico FFT para
visualizar el espectro de la seal recibida:


Figura 5-53 Parmetros del sumidero FFT sink

Se puede apreciar como la frecuencia a la que centrar la visualizacin depende de la suma
del ajuste grueso y fino de frecuencia. La tasa de muestreo por su parte ser Rs*ss.
En cuanto al sumidero grfico Scope utilizado para visualizar la constelacin, indicar que
durante las pruebas se ha ido cambiando de posicin para representar la constelacin en
diferentes puntos del receptor.
Finalmente se mostrarn los resultados obtenidos. Comencemos por el espectro de la seal
recibida:


Figura 5-54 Espectro de la seal recibida
En la figura se puede observar como el espectro recibido no est centrado en la frecuencia de
2.4 GHz que se especific en transmisin, sino que se produce una desviacin en frecuencia de
unos 20 KHz, es decir, la desviacin en frecuencia del transmisor es de 8 ppm aproximadamente.
Ivn Pinar Domnguez

63

A continuacin se mostrar la constelacin en diferentes puntos del diseo. La constelacin
de la seal recibida est afectada por multitrayecto tal y como puede verse en la Figura 5-55,
adems de un pequeo error en frecuencia, a pesar del ajuste fino, que conllevar un desfase
variable en el tiempo y que resolver el bloque MPSK Receiver.


Figura 5-55 Constelacin de la seal recibida
Se puede ver como la seal recibida tiene un nivel aceptable, tomando valores de amplitud en
torno a 1500
8
. Tras pasar la seal por el control automtico de ganancia, el mdulo de sta se ve
limitado a 1.3. Los lmites deberan formar una circunferencia en lugar de un polgono, esto se
debe a la forma de operar del AGC de la arquitectura GNU Radio. El resultado se puede apreciar
a continuacin:


Figura 5-56 Constelacin de la seal tras pasar por el AGC

8
Los valores de amplitud que se muestran en todos los diseos estn dados respecto a un valor de
referencia que depende de cada tarjeta secundaria.
Software Defined Radio: USRP y GNU Radio

64

Tras el filtro adaptado, la constelacin queda igualmente enmaraada, puesto que no se est
sincronizado. Gracias al bloque de sincronizacin se pueden obtener los smbolos complejos
convenientemente como muestra la figura siguiente:


Figura 5-57 Constelacin de la seal sincronizada
A partir de esta constelacin el bloque Constellation Decoder puede trabajar adecuadamente
obteniendo la informacin deseada. La seal de audio decodificada tiene el siguiente espectro:


Figura 5-58 Espectro de la seal de audio
En esta figura se observa como el espectro de audio est limitado a la cuarta parte del fichero
original (cuyo ancho de banda se extenda hasta los 16 KHz) debido a la interpolacin que se
realiza. Indicar que la fidelidad de la seal de audio es mayor si se selecciona el bloque
diferencial (DQPSK en lugar de QPSK) ya que se comporta mejor cuando hay problemas de
recuperacin de sincronismo.

Ivn Pinar Domnguez

65

Para finalizar este apartado, se va a mostrar la distorsin introducida al aumentar la ganancia
de recepcin o transmisin (esta ltima mediante el amplificador software). Si la ganancia de
transmisin se aumenta de 20 a 40 dB con los USRPs separados 1.5 metros, el espectro de la
seal que proporciona el USRP sufre distorsin por saturacin de entrada de la tarjeta secundaria
tal y como se muestra en la Figura 5-59.


Figura 5-59 Espectro recibido distorsionado por saturacin de entrada
Comparado con la Figura 5-54, se tienen unos hombros en el espectro, es decir, aumenta la
potencia de los lbulos laterales. Igualmente, si lo que se aumenta es la ganancia de recepcin en
el USRP (a 80 dB por ejemplo), manteniendo la ganancia de transmisin en 20 dB, se vuelve a
apreciar distorsin por intermodulacin de la seal como muestra la siguiente figura:


Figura 5-60 Espectro recibido distorsionado por ganancia de recepcin
Se puede ver claramente el incremento de los lbulos laterales de 3
er
y 5 orden.

Software Defined Radio: USRP y GNU Radio

66

5.4 Sistema digital

En este apartado se llevar a cabo el diseo de un sistema digital formado por tres tipos de
modulacin a elegir: DBPSK, DQPSK y GMSK. Para realizar los mdulos transmisores y
receptores se han utilizado los bloques moduladores y demoduladores proporcionados por la
arquitectura GNU Radio que bsicamente engloban la mayor parte de los bloques que se han
visto en el apartado anterior simplificando la tarea de diseo. En cada tipo de modulacin se
tomarn las medidas oportunas para llevar a cabo la transmisin del fichero de audio.
5.4.1 Transmisor digital
Se mostrar en primer lugar como siempre el mdulo transmisor, cuyo esquemtico es el
siguiente:

Figura 5-61 Esquemtico del transmisor digital
Ivn Pinar Domnguez

67

La fuente como se ha comentado es el fichero de audio wav diezmado por 4 al igual que en el
apartado anterior, aunque opcionalmente se aaden fuentes de seal diferentes las cules son un
coseno a una tasa de muestreo de 8 KHz (para limitar la tasa binaria necesaria sin necesidad de
diezmar) y una fuente de tipo fichero cuyo nico parmetro es la ruta del fichero a enviar.
Tras esto se selecciona la modulacin escogida gracias al bloque selector que viene a
continuacin. Su configuracin es la siguiente:


Figura 5-62 Propiedades bloque selector
Luego con la variable sel se seleccionar la modulacin deseada. Esta variable es de tipo
chooser, es decir, slo tiene unos valores predefinidos tal y como se aprecia en la siguiente
figura:


Figura 5-63 Propiedades variable sel
En principio el diseo est pensado para poder cambiar de modulacin desde la interfaz
grfica pero es conveniente seleccionar la modulacin variando el parmetro Default Value de la
Software Defined Radio: USRP y GNU Radio

68

variable sel para cada prueba con diferente modulacin.
Despus aparece el bloque codificador cuyo parmetro principal es el nmero de bits por
smbolo, que ser 1 para las modulaciones DBPSK y GMSK y 2 para la modulacin DQPSK.

A continuacin se inserta el bloque modulador oportuno que incorpora todos los bloques
necesarios para modular la seal, desde el mapeo de Gray hasta la aplicacin del filtro raz de
coseno alzado. La configuracin de cada uno de estos bloques aparece en las siguientes figuras.
En primer lugar se muestra la configuracin del bloque DBPSK:


Figura 5-64 Parmetros del modulador DBPSK
Los parmetros configurables como se puede apreciar son el nmero de muestras por smbolo
(Samples/Symbol), el factor de Roll-off (Excess BW) y la opcin de elegir codificacin de Gray,
obviando el diseador todos los subbloques contenidos dentro del modulador.

El modulador DQPSK es de la misma forma pero variando el campo tipo a DQPSK. Por
ltimo, el modulador GMSK es similar, aunque ahora el parmetro relacionado con el ancho de
banda es el valor de B
b
T, que tambin se controla con la variable alfa como se puede apreciar en
la siguiente figura:
Ivn Pinar Domnguez

69


Figura 5-65 Parmetros del modulador GMSK
Finalmente se aade al esquemtico un amplificador software y el sumidero USRP, cuya
configuracin es la misma que en el apartado anterior tal y como se aprecia en la Figura 5-66.


Figura 5-66 Parmetros del sumidero USRP
A continuacin aparecern los resultados y los parmetros seleccionados para cada
modulacin:





Software Defined Radio: USRP y GNU Radio

70

- DQPSK: Se comenzar con el sistema DQPSK para compararlo con el diseo
implementado en el punto 5.3. Para lograr la tasa binaria necesaria para el envo del
fichero wav, es decir, 256 Kbps (1024 Kbps/4) se necesita una tasa de smbolos de
aproximadamente 125 Kbaudios, por lo que el nmero de muestras por smbolo
puede ser como mximo de 16 para no incumplir el factor de interpolado mnimo de
64. En esta situacin, los resultados de la constelacin y el espectro transmitido son
los siguientes:



Figura 5-67 Constelacin y espectro transmitido con modulacin DQPSK
Se puede apreciar como los resultados obtenidos son los mismos que en el apartado anterior
pero ahorrndose la inclusin de varios bloques.




Ivn Pinar Domnguez

71

- DBPSK: Ahora se analizar el modulador DBPSK. Como este tipo de modulacin
es menos eficiente envindose 1 bit por cada smbolo, para poder logar la tasa de
250 Kbps se necesita una tasa de smbolos de 250 Kbaudios, con el consiguiente
aumento del ancho de banda. Esto tambin implica que el nmero de muestras por
smbolo mximo es de 8 para no incumplir el interpolado mnimo. La constelacin y
el espectro para este tipo de modulacin son los siguientes:



Figura 5-68 Constelacin y espectro transmitido con modulacin DBPSK
Se puede apreciar como ahora el ancho de banda es de unos 400 KHz, aproximadamente
(1+)*Rs.
En lugar de esta solucin tambin se podra optar por diezmar la fuente por 8 y en recepcin
interpolar por 8, por lo que se podra mantener el nmero de muestras por smbolo en 16 pero
empeorara la calidad del audio.


Software Defined Radio: USRP y GNU Radio

72

- GMSK: Por ltimo se analizar la modulacin GMSK. En este caso tambin se
enva un bit por smbolo por lo que nuevamente se necesita una tasa de 250
Kbaudios. Los resultados son los siguientes:



Figura 5-69 Constelacin y espectro transmitido con modulacin GMSK
Tericamente, el primer nulo de la densidad espectral se debe dar para una frecuencia de
0.75*R
b
respecto de la portadora ([5], figura 7.19), como el flujo binario es 250 Kbps, este nulo
se debe producir a 187,5 KHz respecto de la portadora, lo cual coincide con lo que se aprecia en
la figura, con un nivel 40 dB inferior respecto al mximo. El ancho de banda entre nulos es por
tanto de 375 KHz.
Como el producto B
b
T es 0.35, el ancho de banda a 3 dB es el siguiente:
KHz
T
B B
b
175
) 10 250 /( 1
35 . 0
2
35 . 0
2 2
3
=
|
|
.
|

\
|
=
|
.
|

\
|
= =

(5-2)
Ivn Pinar Domnguez

73

5.4.2 Receptor digital
A continuacin se mostrar el mdulo implementado para recibir la seal enviada por el
transmisor del apartado anterior. El esquemtico sigue tiene un proceso similar pero invertido tal
y como aparece en la Figura 5-70.


Figura 5-70 Esquemtico del receptor digital
La fuente es la proporcionada por el USRP con la misma configuracin que el receptor
QPSK como se puede apreciar en la siguiente figura:


Figura 5-71 Parmetros de la fuente USRP
Software Defined Radio: USRP y GNU Radio

74

Tras la fuente aparece el bloque selector para seleccionar la modulacin deseada. Cada uno
de estos bloques demoduladores sustituye a varios bloques necesarios para la demodulacin
incluyendo tambin un bloque de sincronizacin tal y como se vio en el apartado 5.3.2. A
continuacin se analizan los parmetros de cada bloque demodulador. Se comenzar por el
bloque demodulador DBPSK:


Figura 5-72 Parmetros del demodulador DBPSK
Se puede apreciar como incluye parmetros generales como el nmero de muestras por
smbolo o el valor de Roll-off y parmetros de sincronizacin necesarios para el bloque MPSK
Receiver incluido dentro de este bloque que, como se ha comentado, servirn para la
sincronizacin temporal y ajustarn al NCO del USRP para la sincronizacin en frecuencia.
El demodulador DQPSK y el GMSK tienen la misma estructura que el DBPSK, es decir, los
mismos parmetros configurables. Para el primero slo se cambia el campo tipo y el segundo
pertenece a un bloque distinto pero con las mismas caractersticas:


Figura 5-73 Parmetros del demodulador DBPSK
Tal y como se dijo en el anlisis del transmisor digital, es recomendable seleccionar el tipo de
modulacin con el parmetro Default Value de la variable sel por posibles problemas de carga
computacional.

Ivn Pinar Domnguez

75

Tras pasar el flujo de seal por el demodulador correspondiente, se decodifica la informacin
y se enva a la tarjeta de sonido y a un sumidero de tipo fichero en caso de que se desee enviar
a un archivo de cualquier formato.

En cuanto a las visualizaciones, como el demodulador consta de un nico bloque slo se
podr visualizar el espectro y la constelacin de la seal recibida y no de ningn bloque
intermedio de la demodulacin.

Los resultados obtenidos para cada tipo de modulacin se irn mostrando a continuacin:

- DQPSK: Como se sabe del anlisis del mdulo transmisor, la tasa de smbolos ser
de 125 Kbaudios con un nmero de muestras por smbolo de 16. La constelacin y
espectro recibido se muestra en la siguiente figura:



Figura 5-74 Constelacin y espectro recibido con modulacin DQPSK
Software Defined Radio: USRP y GNU Radio

76

En la constelacin se puede apreciar que la seal recibida est afectada de multitrayecto y
error de frecuencia. El espectro recibido tiene un ancho de banda de unos 200 KHz como caba
esperar y la desviacin en frecuencia del transmisor est entre 18 y 20 KHz.

- DBPSK: Con este tipo de modulacin se debe enviar a una tasa de 250 Kbaudios,
por lo que el nmero de muestras por smbolo mximo ahora es de 8. La
constelacin y espectro recibido son los siguientes:


Figura 5-75 Constelacin y espectro recibido con modulacin DBPSK
Lo nico destacable en estos resultados es el aumento del ancho de banda al doble que en el
caso anterior, es decir a unos 400 KHz como se prevea. La constelacin igualmente est
afectada por multitrayecto y offset en frecuencia, por lo que difiere de lo ideal (una lnea entre
los dos puntos de la constelacin BPSK).

Ivn Pinar Domnguez

77

- GMSK: Al igual que en el caso anterior, es necesario transmitir a 250 Kbaudios con
un nmero de muestras por smbolo de 8. Los resultados se aprecian a continuacin:
-


Figura 5-76 Constelacin y espectro recibido con modulacin GMSK
Tal y como se observa en la constelacin, la seal recibida tiene amplitud constante, por lo
que es ms robusta frente a no linealidades. En cuanto al espectro recibido, el ancho de banda
entre nulos es de 375 KHz como caba esperar.
En cuanto a la fidelidad de la seal de audio percibida, mejora para las modulaciones DQPSK
y DBPSK frente a la modulacin GMSK, aunque obviamente sigue teniendo un ancho de banda
de 4 KHz por el proceso de interpolacin en recepcin. En la siguiente figura se muestra el
espectro de audio para el caso DQPSK (aunque es similar en el resto):
Software Defined Radio: USRP y GNU Radio

78


Figura 5-77 Espectro de audio recibido
5.5 Clculo de Bit Error Rate

Tras explicar varios sistemas de comunicaciones digitales, se va a realizar el envo de un
fichero, en particular una imagen en formato jpg. Para evitar en la medida de lo posible los
errores de transmisin, los mdulos transmisor y receptor se intentarn ejecutar
simultneamente. En la siguiente figura aparecen la imagen original y la recibida:


Figura 5-78 Imagen transmitida
Para esta transmisin se ha seleccionado la modulacin DQPSK con los mismos parmetros
que los utilizados en la transmisin del fichero wav. Para que se pueda calcular la tasa de errores
en la transmisin, se ha diseado el siguiente esquemtico:
Ivn Pinar Domnguez

79


Figura 5-79 Esquemtico para evaluacin de la BER
El bloque que realiza el clculo de la BER es el bloque Error Rate, que toma como referencia
la imagen original y como entrada la imagen recibida y calcula la tasa de error cada 1000
muestras. Tras ejecutarlo se obtiene el siguiente resultado:


Figura 5-80 Resultados de BER
Se puede apreciar como la tasa de errores es de aproximadamente el 6.5 % 0.065.


5.6 Sistema OFDM

En este apartado se implementar un sistema OFDM compuesto por transmisor y receptor al
igual que en diseos anteriores. En los apartados sucesivos se analizarn ambos mdulos y las
medidas adoptadas para transmitir la seal de informacin deseada.

5.6.1 Transmisor OFDM
El esquemtico del transmisor OFDM aparece en la Figura 5-81.
Software Defined Radio: USRP y GNU Radio

80


Figura 5-81 Diagrama de bloques del transmisor OFDM
Comenzando por la fuente, la informacin proviene de un fichero wav al igual que en otros
diseos realizados.

La fuente se introduce en el bloque modulador de OFDM contenido dentro de la
arquitectura GNU Radio y que engloba todos los subbloques necesarios para la modulacin.
Estos subbloques son los siguientes:

Figura 5-82 Estructura interna del modulador OFDM
La configuracin del modulador aparece en la siguiente figura:


Figura 5-83 Parmetros del modulador OFDM
Ivn Pinar Domnguez

81

Como se puede apreciar, los parmetros configurables son el tipo de modulacin de cada
subportadora (desde BPSK hasta 256 QAM) la longitud de la FFT (IFFT en este caso) el nmero
de portadoras (Occupied Tones) y el prefijo cclico, dado en valor absoluto, no como una
fraccin de la longitud del smbolo que es lo tpico. Estos tres ltimos se controlan con las
variables FFT, port y CP respectivamente.

Tras el modulador se incluye un amplificador software y finalmente el sumidero, es decir,
el USRP cuya configuracin se muestra a continuacin:


Figura 5-84 Parmetros del sumidero USRP
El parmetro destacable en este bloque es el factor de interpolacin, que ser funcin del
ancho de banda de transmisin deseado controlado con la variable BW.
Antes de mostrar los resultados, se analizarn los valores tomados para las variables. Se
necesita una tasa para transmitir el fichero wav de 1024 Kbps si no se realiza ningn proceso de
diezmado en fuente, en este caso no ser necesario porque no se necesita resolucin espectral
para el coseno alzado como en casos anteriores que era lo que limitaba la tasa de transmisin, ya
que el factor de interpolado del USRP no deba ser inferior a 64. Si se escoge un ancho de banda
de transmisin de 1 MHz, el factor de interpolado ser 128 y no habr ningn problema en este
sentido. El rgimen binario para la modulacin OFDM se puede calcular conforme a la siguiente
expresin ([5], ecuacin 8.2.1):
) ( log
1
2
M N
T
R
port
s
b
CP
=

(5-3)
Donde:
- T
S
es el tiempo de smbolo sin incluir prefijo cclico
- T
Scp
es el tiempo de smbolo incluido el prefijo cclico
- N
port
es el nmero de portadoras
- M es el nmero de smbolos de la modulacin escogida
El ancho de banda efectivo de la transmisin estar dado por la siguiente igualdad, que
tiene en cuenta la relacin entre el nmero de portadoras y la longitud de la FFT:
length FFT
N
BW BW
port
ef
_
=

(5-4)

Software Defined Radio: USRP y GNU Radio

82

Es decir, en realidad no se va a transmitir en el ancho de banda de 1 MHz especificado. Por
su parte, la separacin entre portadoras f es:


BW
length FFT
CP T CP T T
BW
length FFT
BW
N
T
N
BW
T
f
s s s
ef
port
s
port
ef
s
CP
_
) 1 (
_ 1
+ = + = = = = = A

(5-5)

Con esto ya se puede calcular el rgimen binario a partir de los parmetros configurables del
modulador OFDM quedando finalmente:
) ( log
_

) 1 (
1
2
M N
length FFT
BW
CP
R
port b
+
=

(5-6)

Si la modulacin utilizada es un esquema QPSK (M=4), el ancho de banda total es 1 MHz
(no el efectivo), la longitud de la FFT es 512 y el prefijo cclico es para proteger la seal
frente al multitrayecto, el nmero de portadoras a utilizar es de 328 portadoras si se requiere un
rgimen binario de 1024 Kbps.
Tras justificar los valores seleccionados, en la siguiente figura se muestra la ejecucin del
mdulo transmisor, cuyo espectro es el siguiente:


Figura 5-85 Espectro transmitido OFDM

En la figura se puede apreciar como no se transmite en todo el ancho de banda seleccionado
en principio (1 MHz), sino que el ancho de banda ocupado por las portadoras es el ancho de
banda efectivo definido anteriormente, tomando un valor de:

KHz MHz
length FFT
N
BW BW
port
ef
640
512
328
1
_
= = =

Ivn Pinar Domnguez

83

5.6.2 Receptor OFDM

Tras analizar el transmisor OFDM y justificar los valores seleccionados, se mostrar el diseo
del receptor OFDM. El esquemtico implementado es el siguiente:


Figura 5-86 Diagrama de bloques del receptor OFDM
En primer lugar aparece la fuente que ser el USRP. La configuracin es similar a la
mostrada en otros casos pero ahora el factor de diezmado depende del ancho de banda de la
transmisin:


Figura 5-87 Parmetros de la fuente USRP

Software Defined Radio: USRP y GNU Radio

84

Tras la fuente se inserta el bloque demodulador de OFDM, contenido dentro de la
arquitectura GNU Radio y que realiza el proceso inverso al modulador, teniendo el siguiente
diagrama de subbloques:

Figura 5-88 Subbloques del demodulador OFDM
La configuracin del demodulador aparece en la Figura 5-89.

Figura 5-89 Configuracin del demodulador OFDM
Al igual que antes, los parmetros se controlarn a partir de variables. Para el parmetro SNR
se selecciona un valor elevado para que el demodulador no introduzca ruido. Este parmetro es
til por ejemplo al realizar una simulacin de OFDM que incluya transmisor y receptor en un
mismo esquemtico (sin necesidad de USRP) y se deseen comprobar las prestaciones del sistema
al aadir ruido.

Tras el demodulador, la seal se enva a la tarjeta de sonido.

Los resultados obtenidos se muestran a continuacin. El espectro recibido es el siguiente:
Ivn Pinar Domnguez

85


Figura 5-90 Espectro recibido OFDM
El espectro ocupa un ancho de banda de 640 KHz con un offset de frecuencia de unos 18
KHz como en los casos anteriores. En la visualizacin se puede ver cmo afecta el canal de
comunicaciones multitrayecto a la seal transmitida, la cual tiene un espectro prcticamente
plano y en la recibida aparece desvanecimiento selectivo. Adems, se puede observar que,
debido al filtro CIC interpolador, los extremos de la banda se ven atenuados respecto a la parte
central.
El audio decodificado y enviado a la tarjeta de sonido se muestra en la siguiente figura:


Figura 5-91 Espectro de audio
En este caso no se ha llevado a cabo ningn proceso de interpolado en recepcin, por lo que
la seal de audio ocupa el mismo ancho de banda que el fichero wav original, es decir, 16 KHz.
Software Defined Radio: USRP y GNU Radio

86

Por ltimo, se analizara el flujo binario mximo que se podra alcanzar con el USRP y la
modulacin OFDM. Tericamente, los valores lmites seran los siguientes:

- BW = 8 MHz (interpolado = 16)
- M = 256
- CP = 1/32
- N
port
/FFT_length = 1

Lo que dara una tasa de:

Mbps M N
length FFT
BW
CP
R
port b
1 , 62 ) ( log
_

) 1 (
1
2
=
+
=

En la prctica, los valores lmites experimentales son los siguientes:
- BW = 2 MHz (interpolado = 64)
- M = 16
- CP = 1/16 (para comunicacin correcta a 0.5 m de distancia)
- N
port
/FFT_length = 0,82

Estos valores proporcionan una tasa prctica de:

Mbps M N
length FFT
BW
CP
R
port b
17 , 6 ) ( log
_

) 1 (
1
2
=
+
=

Es decir, un orden de magnitud inferior al resultado terico.

5.7 Cancelador de eco acstico

El ltimo diseo realizado en GNU Radio Companion se aleja de las implementaciones
previas consistentes en sistemas de comunicacin. En este apartado se va a analizar el diseo de
un cancelador de eco acstico.
En cualquier sistema de audio puede amplificarse una seal acstica a la frecuencia de
resonancia del sistema debido a la realimentacin positiva en una cadena de amplificacin.

Amplificacin
Realimentacin

Figura 5-92 Fenmeno de realimentacin positiva

En cualquier acondicionamiento acstico que se precie, se debe eliminar la/s frecuencia/s de
resonancia con ayuda de un ecualizador de audio para garantizar la calidad de la seal acstica y
evitar el tpico chirrido, por ejemplo en un concierto, a la frecuencia de resonancia.

Para implementar este sistema se utilizar el micrfono y el altavoz contenidos en un equipo
porttil a un nivel de volumen determinado.

Ivn Pinar Domnguez

87

El diagrama de bloques implementado es el siguiente:


Figura 5-93 Esquemtico del cancelador de eco
Como se puede apreciar, consta de una fuente de tipo wav que no se introducir en el sistema
hasta que no se haya ecualizado y otra fuente de tipo Audio Source, es decir, el micrfono.

La seal del micrfono se pasar por un banco de filtros paso banda para ecualizar la seal.
La atenuacin o amplificacin de cada filtro se gobierna a partir de una variable slidder. Las
caractersticas del filtro paso banda de 0-500 Hz y de la variable slidder asociada que lo controla
y permite ajustar el valor de amplitud desde la interfaz grfica se muestran en la Figura 5-94. El
resto de filtros paso banda tienen propiedades similares pero cada uno ajustado a su rango de
frecuencias.
Software Defined Radio: USRP y GNU Radio

88


Figura 5-94 Parmetros de cada filtro paso banda y la variable de control
Al ejecutar el esquemtico, la interfaz que se muestra aparece en la Figura 5-95. En la
situacin inicial se produce la resonancia y por tanto se satura la tarjeta de sonido.


Figura 5-95 Sistema sin ecualizar saturado
Tras ajustar los filtros entre 4-6 KHz y algn otro de mayor frecuencia, se consigue mejorar
el sistema acstico, aunque se vuelve a producir otro pico de resonancia tal y como aparece a
continuacin:


Figura 5-96 Resonancia a 4 KHz aproximadamente
Ivn Pinar Domnguez

89

Tras hacer un ltimo ajuste en el filtro de 3-4 KHz, se consigue estabilidad en la respuesta del
sistema quedando ecualizado tal y como se puede observar en la siguiente figura:


Figura 5-97 Sistema acstico ecualizado
En esta situacin, se puede insertar la seal de audio sin resonancia a ninguna
frecuencia aumentando la variable que controla el volumen en la interfaz:


Figura 5-98 Sistema acstico ecualizado con seal de audio insertada

S-ar putea să vă placă și