Comunicaciones GNU Radio

1 Dise˜no radio FM en GNU radio (Mayo, 2017) Miguel Angel Ram´ırez, 201318539, [email protected] Resumen—El

Views 124 Downloads 3 File size 850KB

Report DMCA / Copyright

DOWNLOAD FILE

Recommend stories

Citation preview

1

Dise˜no radio FM en GNU radio (Mayo, 2017) Miguel Angel Ram´ırez, 201318539, [email protected]

Resumen—El presente documento muestra lo realizado en el proyecto Radio FM en GNU radio, el cual consist´ıa en crear un Receptor y un Host que permitieran, con ayuda del dispositivo USRP E312, para generar las ondas de sonido de la emisora ˜ en el dominio de la y observar el comportamiento de la senal frecuencia. Keywords—FM, GNU radio, USRP, Receptor, Host.

I.

´ I NTRODUCCI ON

Las comunicaciones es un amplio campo de trabajo, en donde uno de los temas m´as importantes es la frecuencia modulada, ya que permite transmitir datos a corta distancia con un m´ınimo de perdidas respecto a las se˜nales de amplitud modulada. Las se˜nales de FM manejan un rango de operaci´on entre 88 kHz y 108 kHz, por el lado econ´omico los componentes en este tipo de modulaci´on son m´as costosos que en AM. Adem´as un aspecto muy importante es que las se˜nales FM ocupan 80 kHz de ancho de banda del espectro radio el´ectrico. En cuanto al proceso de operaci´on, las se˜nales deben ser multiplexadas y demultiplexadas, antes y despu´es de aplica FM. Este suceso consta de crear una se˜nal moduladora en banda base por medio de la suma de los dos canales de FM m´as una tercera se˜nal de 19kHz. Luego se modula una se˜nal diferencia entre los dos canales FM y 38kHz en doble banda lateral y se a˜nade la primera se˜nal modulada. En este orden de ideas, el objetivo del proyecto es usar los conceptos aprendidos en la clase de comunicaciones para dise˜nar un sistema que permita escuchar la radio en el computador desde un dispositivo llamado USRP E312 y observar el diagrama en frecuencia de los datos recibidos. Para cumplir con este objetivo se usa la aplicaci´on GRC en Ubuntu, la cual tiene una interfaz de bloques interactivos y sencillos de armar, lo cual hace m´as r´apido y amigable al proceso. Para hacer lo dicho anteriormente, lo que se debe hacer es explicar cual es el Hardware USRP y el Software GNU radio, luego se explica el receptor bloque por bloque, lo mismo se hace con el Host. Luego se genera una simulaci´on del sistema y se escuchan y ven los resultados. II.

ser usado en aplicaciones de RF basadas en software con un rango de operaci´on de hasta 6 GHz, adicionalmente posee bancos de filtrado din´amico en ambos RX y TX basados en la frecuencia seleccionada por el usuario. En complemento a lo anterior, el USRP E312 posee las siguientes caracter´ısticas: -Alimentaci´on por bater´ıa. -Rango de Frecuencia: 70MHz a 6GHz. -Transceptor MIMO 2X2. -Bancos de Filtros RX, TX. -Arquitectura Xilinx Zynq 7020 SoC. -Un m´aximo de 10 Ms/s de tasa de transferencia de datos al procesador embebido. -Receptor GPS integrado. -Unidad de medida inercial (IMU) de 9 ejes. -Perif´ericos para conexi´on al computador.

Enseguida se presentan 3 im´agenes que muestran el USRP E312, su panel frontal y su panel posterior. En las dos primeras im´agenes se encuentra el USRP y sus accesorios, que sirven para hacer la conexi´on de red con un ordenador, tambi´en la conexi´on a toma corriente y la conexi´on por USB.

´ M ARCO TE ORICO

Para desarrollar este trabajo se usaron 3 elementos esenciales, estos son un ordenador o computador, el hardware USRP y el software GNU radio. En este orden de ideas, se hablara de los dos u´ ltimos elementos mencionados anteriormente. II-A. Hardware USRP El hardware implementado para la lectura de las se˜nales de radio es el Universal Software Radio Peripheral(USRP) E312, el cual es un elemento elaborado por Ettus Research, para

Figura 1: USRP E312 y sus accesorios

2

Figura 4: Vista posterior del USRP Figura 2: USRP

En la siguiente imagen se observa la parte frontal del USRP, en donde se encuentran, principalmente: el bot´on de encendido, los 2 grupos de TRX Y RX2 con un led para cada terminal con el fin de indicar si los datos est´an siendo recibidos o enviados, adem´as se encuentran los puertos en donde se coloca la antena y en donde se pueden conectar unos aud´ıfonos.

II-B. Software GNU radio El software que se usa para esta pr´actica se llama GNU radio y es un Software-defined radio (SDR) que se refiere a un sistema de comunicaci´on de radio en el cual los componentes que eran implementados en hardware, como filtros, amplificadores, moduladores, desmoduladores, entre otros, se implementan usando software en un ordenador personal o sistema embebido. En este orden de ideas, ”GNU Radio es un conjunto de herramientas de desarrollo de software gratuito y de c´odigo abierto que proporciona bloques de procesamiento de se˜nales para implementar radios de software. Puede utilizarse con hardware de RF externo de bajo costo disponible f´acilmente para crear radios definidas por software o sin hardware en un entorno similar a la simulaci´on. Es ampliamente utilizado en la investigaci´on, la industria, la academia, el gobierno, y los ambientes del aficionado para apoyar la investigaci´on de las comunicaciones sin hilos y los sistemas de radio del mundo real.” Cabe aclarar que se usa la distribuci´on de Ubuntu para GNU radio companion, la cual se puede obtener en una imagen ISO en donde tambi´en se encuentran los drivers UHD. A continuaci´on el enlace para la descarga:

Figura 3: Vista frontal del USRP

Por otro lado esta par parte posterior, en donde se encuentran, esencialmente: el puerto 1 G ETH para interfaces Ethernet y el puerto mini-USB para conexi´on con consola.

Luego de descargar la imagen ISO de 2,5 Gb se usa Unetbootin para crear el arranque desde una memoria USB de 4 Gb. A continuaci´on el enlace para la descarga de la aplicaci´on: Los dos p´arrafos anteriores permiten arrancar el sistema operativo Ubuntu con GNU radio desde una USB, esto agiliza el proceso para desarrollar la pr´actica, al mismo tiempo que se accede a la informaci´on guardada en el disco duro del ordenador usado. ´ III. D ESARROLLO PR ACTICO El desarrollo pr´actico se divide en 2 recciones, la primera es desarrollar el receptor FM y luego el Host para reproducir el audio y visualizar el componente en frecuencia.

3

III-A. Receptor El receptor que se crea en GNU radio se muestra a continuaci´on.

Figura 5: Receptor En la anterior figura se observan diferentes bloques que se encargan de hacer la conexi´on al USRP, luego recibir la informaci´on dada por el hardware, la cual se divide por dos caminos. El primer camino es para visualizar la informaci´on en el dominio de la frecuencia, por otro lado, se encuentra la informaci´on que es reproducida como un audio. Detallando mejor la informaci´on comentada anteriormente se encuentran los siguientes literales. 1. Primero, se agregan establecen los bloques de variables, parametros y la conexion con el servidor. 2. Para ello se ajusta la direcci´on IP est´atica, la cual corresponde al bloque XMLRPC Server USRP para la conexi´on local con el PC y es 192.168.10.2, as´ı como 30k correspondiente al servidor local. 3. Luego se ajusta la direcci´on IP din´amica asignada por el servidor DHCP en la variable con ID: direcci´on y value de 192.168.10.1 4. Posteriormente se define el par´ametro Ganancia de recepci´on de tipo flotante, que es la ganancia establecida para el USRP y con calue de 50. 5. Seguido de esto esta el par´ametro frecuencia central, que corresponde a la frecuencia de la emisora de radio que se quiere escucha, para esta ocasi´on es de 99.9M. 6. Primero, se coloca el bloque UHD: USRP Source, el cual hace la conexi´on con el dispositivo hardware, en donde se establece una frecuencia de muestreo de 1M. Tambi´en se define el valor de la emisora de radio que se quiere escuchar. Luego se define la ganancia de recepci´on y, por ultimo, una antena TX/RX. 7. Luego, se agregan 3 bloques, el primero es una variable con el ID: puerto y value 9.998k, que es uno de los puertos de conexi´on con el computador. 8. Tambi´en esta el bloque UDP Sink, en el cual se configura una IP de destino correspondiente a una variable ya creada llamada direcci´on. Tambi´en se define el puerto de destino con el nombre de la variable puerto. Luego se define la carga u´ til como 1.472k, que corresponde a los datos reales en el mensaje. Luego se establece true en la opci´on de enviar paquetes vac´ıos al final de cada grupo de datos. 9. Posteriormente se agrega el bloque Low Pass Filter, con una reducci´on de tasa de muestreo de 5, ganancia de

1, sample rate como la variable definida anteriormente, frecuencia de corte en 100k, banda de transmisi´on de 10k y ventana tipo Hamming. 10. Luego del bloque Low Pass Filter se agrega el bloque WBFM Receive, que es Wideband Frequency Modulation, en donde se fija la frecuencia de muestro a la salida con un valor de 200k y Audio Decimation (Audio de ejecuci´on) de 1, lo cual mantiene la frecuencia de muestreo en 200k. 11. En seguida se agrega el bloque Rational Resampler, en donde se vuelve a muestrear la se˜nal, aqu´ı se fija una interpolation de 48 y una decimation de 200. 12. Posteriormente se env´ıa a 2 bloques, el primero conduce al bloque UDP Sink del puerto2 y a su vez al canal de audio del computador, por otro lado est´an los para amplificar la se˜nal por 50 y el bloque Audio Sink. Este ultimo se encarga de entregar los datos del audio con una frecuencia de 48kHz, los cuales se pueden o´ır conectando aud´ıfonos en el USRP. III-B. Host Crear el host es m´as sencillo que el caso del receptor, esto porque se tienen establecidos 2 puertos por lo cuales se reciben datos en el computador. El puerto (port) 9.999k lleva la se˜nal del sonido de la emisora. Por otro lado, el puerto 9.998k lleva los datos de la se˜nal que se recibi´o antes de procesar la se˜nal de sonido, en s´ıntesis los datos puros. Enseguida se encuentra el diagrama del Host.

Figura 6: Host En este diagrama se ven 5 bloques adyacentes muy importantes, los cuales se explican enseguida. 1. Primero se crean dos bloques XMLRPC Client para la conexi´on con el receptor via conexi´on Ethernet, uno de estos bloques corresponder´a a la frecuencia central que es la frecuencia de la radio que se quiere escuchar, por otro lado, el otro bloque es la ganancia de recepci´on de la antena. Estos valores deben concordar con los establecidos en el Receptor, por esto mismo tienen el IP 192.168.10.2 2. segundo se encuentran los bloques QT GUI Range, que se encargan de crear los indicadores en la pantalla de visualizaci´on de datos. El primer bloque es la ganancia, la cual por defecto ser´a 50, pero que podr´a cambiar entre

4

0 y 76 en pasos de 1. Por otro lado, el otro bloque es la frecuencia central, que por defecto ser´a 99.9M, pero se puede variar en el rango de 88M y 108M en pasos de 100k. 3. Para terminar se agregan dos bloques UDP Source, un bloque Audio Sink y un bloque QT GUI Frecuency Sink. 4. Los bloques UDP Source, sirven para conectar los bloque con el mismo nombre que se encuentran en el receptor, esto lo hacen usando la direcci´on IP dada y el puerto al cual se conectar´an. Luego esta el bloque de amplificaci´on y luego Audio Sink, el bloque de amplificaci´on aumenta la se˜nal de audio 50 veces y el Audio Sink permite escuchar la se˜nal en el computador. Por ultimo el Bloque QT GUI Frecuency Sink, se encarga de mostrar la imagen del espectro en frecuencia de los datos entregador por el USRP y que corresponden a la se˜nal de la emisora de radio deseada.

IV.

R ESULTADOS

Para observar los resultados de la pr´actica es necesario hacer la conexi´on entre el computador y el URSP via Ethernet, as´ı como la conexi´on interna en c´odigo, para ello se hacen los siguientes pasos. 1. Primero se realiza la conexi´on entre el computador y el USRP mediante un cabe Ethernet, luego se entra a la opci´on donde se seleccionan las conexiones de red y se accede a la red usrp312. Despu´es en el panel Direcci´on se verifica la columna direcci´on en donde debe aparecer el IP 192.168.10.1. 2. Luego se ingresa a GRC y se abren los archivos del Receptor y del Host. 3. Se abre la terminal de GRC y se escribe el siguiente c´odigo: ssh [email protected] 4. Luego s escribe: pwd 5. Por ultimo: usrp e3x0 network mode Con esto en cuenta ya se tiene la conexi´on entre la computadora y el USRP, ahora se genera el archivo Python del recepto, para ello se hace click en el boton de colores verde amarillo y rojo en la parte superior del panel de GRC. Luego se vuelve a abrir la terminar con Ctr+Alt+T y se escribe lo siguiente, cabe resaltar que el archivo Python creado anteriormente debe encontrarse en el escritorio. Posteriormente se ejecuta el siguiente c´odigo. /Escritorio$ scp fm rx usrpe312.py [email protected]: / Luego para ejecutar el programa FM se usa /Escritorio$ ssh [email protected] Para terminar se genera la siguiente linea de codigo: python fm rx usrpe312.py Teniendo en cuenta la anterior, se da en generar y ejecutar [3] el Host, luego de este momento se deben visualizar los resultados en el computador, mientras los datos deb´ıan estar [4] en el trayecto.

Figura 7: Resultados

En esta imagen se observa dos aspectos importantes, primero que toco la frecuencia en donde se presenta el pico de mayor ganancia, este corresponde a la emisora elegida, para este ejemplo fue de 99.9M. Sin embargo, esta emisora, al igual que el volumen del audio, pueden controlarse con los botones deslizantes en la parte inferior de la interfaz. Siguiendo con lo comentado al inicio de este p´arrafo, la ganancia en el pico m´as alto de la se˜nal es de aproximadamente 20 dB por encima de los dem´as valores obtenidos. V.

C ONCLUSIONES

Las aplicaciones de FM y AM tiene ventajas y desventajas, en cuanto a costos, eficiencia y distancia de transmisi´on. Pero ambas son esenciales en los procesos de comunicaci´on de datos, porque brindan cobertura, calidad en la se˜nal, y eficiencia dependiendo de la situaci´on GNU radio es una aplicaci´on que se corre en Ubuntu y brinda las garant´ıas, agilidad y capacidades suficientes para que cualquier usuario comprenda la interfaz y la aprenda a usar r´apidamente. Esto se debe a la gr´afica en que se elaboran las cosas En los procesos de transmisi´on y recepci´on de datos en FM es esencial tener en cuenta la ganancia de la antena y del sistema de lectura, as´ı como la velocidad de transmisi´on de informaci´on por tiempo entre el computador y el hardware de adquisici´on. Ya que por m´as continua que se la se˜nal de lectura, el sistema capta se˜nales an´alogas que posteriormente se traducen al lenguaje de maquina, lo que genera si o si error en los datos obtenidos. R EFERENCIAS [1]

J. Flynn, “Digital Communications”, California State University Northridge, Department of Electrical and Computer Engineering. [2] J. B. Anderson “Teor´ıa de las telecomunicaciones”, Avaliable[online]:http://iaci.unq.edu.ar/materias/telecomunicaciones/archivos/2008/Mo http : //es.termwiki.com/ES/additivew hiteg aussiann oise( AW GN ). ancho-de-banda-definici´on, obtenido de: http://www.eveliux.com/mx/anchode-banda-definici´on.html. GNURadio. obtenido: https://www.gnuradio.org/about/

5

[5]

wiki GNU radio. 2016. ”Guided Tutorial GRC. obtenido de: ”https://wiki.gnuradio.org/index.php/GNU Radio Live SDR Environment

[6] [7]

UNetbootin. obtenido de: https://unetbootin.github.io/ Rebolledo, Ruy Alonso. (2016). ontenido de: http://eleconomista.com.mx/tecnociencia/2016/08/29/cual-diferencia-entream-fm