6 METODOLOGIA DE DESARROLLO
6.2 IMPLEMENTACIÓN DE LA COMUNICACIÓN MAESTRO ESCLAVO CON EQUIPOS DE RADIO
6.2.1 Bloques Del Modulador o Transmisor
En esta sección se entrará en detalle en los bloques del flujograma usados para la implementación del modulador para un sistema convencional de transmisión con modulación jerárquica OFDM.
En la figura 13 se pueden apreciar numerosos bloques, así como numerosos parámetros de configuración, se entrará en detalle de los bloques que conforman el modulador OFDM, así de las variables externas de las que se hace uso.
TX RX INTERFAZ MATLAB ESCRITURA ARCHIVO MODULACIÓN CODIFICACIÓN LECTURA ARCHIVO CANAL DE TRANSMISIÓN RECONSTRUCCIÓN DEL ARCHIVO VISUALIZACIÓN INTERFAZ MATLAB
DECODIFICACIÓN DEMODULACIÓN SINCRONIZACIÓN
ENVIÓ BASE DE DATOS
27 El transmisor OFDM está construido con bloques del Programa GNU Radio Companion (GRC)
En la figura 14 se muestra el bloque “File Source”, el cual, lee valores de datos sin procesar en formato binario del archivo especificado. File: especifica el nombre del archivo de entrada; Output Type: especifica el tipo de datos que se requieren para el proceso en la salida de este bloque, los cuales pueden ser de tipo complejo, flotante, entero, corto, o byte; Repeat: al seleccionar se decide si se lee el archivo una sola vez o se reproduce en un bucle; Vec Length: en esta casilla se especifica la longitud del vector para el procesamiento de vectores.
Figura 13: Implementación del diagrama de bloques de GNU Radio para la transmisión OFDM.
28 El bloque “Stream to Tagged Stream” el cual se muestra en la figura 15, es un bloque que funciona en datos de entrada distribuidos, pero en paquetes. Un paquete de datos consta de N bytes. Sin embargo, en los bloques de GNU radio tradicionales, si transmitimos N bytes en un bloque, no hay forma de conocer el límite del paquete. Se usan etiquetas para identificar los límites de los paquetes. En el primer elemento transmitido, debe haber una etiqueta con una clave específica, que almacena la longitud. Si hay algo más, o ninguna etiqueta, esto hará que el tráfico de flujo se bloquee, en consecuencia, este bloque agrega etiquetas a una transmisión y/o obtiene etiquetas de una transmisión
En el bloque “Stream CRC32” de la figura 16, la Entrada son flujo de bytes, que forman un paquete. El primer byte del paquete tiene una etiqueta con la clave y longitud y el valor es el número de bytes en el paquete. Mientras que en la Salida: Los mismos bytes que entrantes, pero que se arrastran a un CRC32 (es un código de detección de errores) del paquete. La etiqueta se restablece a la nueva longitud.
Figura 15:Bloque Stream To Tagged Stream
29 Este bloque de la figura 17 “Protocol Formater” toma los paquetes y crea un encabezado, generalmente para el procesamiento a nivel de MAC. Todos estos objetos de formato de encabezado de paquete operan de la misma forma: incorporan los datos de la carga útil y la posible información adicional de meta-datos sobre el paquete; luego devuelve el paquete de salida como un argumento de flujo de datos junto con cualquier cambio en la información de meta-datos del flujo.
El bloque “Repack Bits” es un bloque que se encarga de volver a empaquetar K bits del flujo de entrada a L bits del flujo de salida, permite indicar si la entrada o la salida está alineada y como se almacenaran estos bytes, en este caso, sera primero el menos significativos LSB (least significant byte por sus siglas en inglés) como se observa en la figura 18.
En el bloque “Chunks to Symbols” de la figura 19 (cabecera) se asigna un flujo de índices de símbolos desempaquetados a un flujo de puntos de constelación flotantes o complejos en dimensiones D (D = 1 por defecto). mapea de un flujo de bytes o short en símbolos flotantes o complejos arbitrarios, en este caso, la lista que mapea trozos a símbolos está en la casilla “Symbol Table” que será una constelación bpsk para la cabecera. Mientras que el flujo de datos tiene una constelación qpsk, la cual, se muestra en la figura 20.
Figura 17:Bloque Protocol Formatter
30
El bloque “Tagged Stream Mux” de la figura 21 se usa para multiplexar cualquier número de flujos conectados.
Figura 19:Bloque Chunks to symbols Header(cabecera)
Figura 20:Bloque Chunks To symbols Payload(carga útil)
31 El bloque “OFDM Carrier Allocator” es el asignador de portadora. Esto clasifica los escalares complejos entrantes en las portadoras OFDM, y también coloca los símbolos piloto en las posiciones correctas. También existe la opción de pasar los símbolos OFDM que se colocan delante de cada cuadro (es decir, los símbolos del preámbulo). Estos pueden ser utilizados para la detección, sincronización y estimación de canal. Se muestra en la figura 22.
El bloque “FFT” de la figura 23 es el asignador de portadora, genera símbolos OFDM (es decir, vectores complejos de longitud FFT). Estas deben convertirse en señales de dominio de tiempo antes de continuar, por lo que se canalizan a un bloque (I) FFT.
Figura 22:Bloque OFDM Carrier Allocator
32 El bloque “OFDM Cyclic Prefixer” de la figura 24 es el prefijo cíclico que se agrega a los símbolos OFDM, también, puede realizar el modelado de pulsos en los símbolos OFDM.
En el bloque de la figura 25 lo que se hace es multiplicar todos los flujos de señales de entrada por una constante para este caso serian 0,05
El bloque de Control de propagación de etiquetas de la figura 26. Se usa para evitar que las etiquetas se propaguen.
Figura 24:Bloque OFDM Cyclic Prefixer
Figura 25:Bloque Multiply Const
33 El bloque “UHD: USRP Sink” es utilizado para transmitir muestras a un dispositivo USRP (es decir, actuar como el transmisor). Algunos de sus parametros se muestran en la figura 27 y son:
Devices Address -la dirección del dispositivo es una cadena delimitada que se usa para ubicar dispositivos UHD en su sistema. Si se deja en blanco, se utilizará el primer dispositivo UHD encontrado. Utilice la dirección del dispositivo para especificar un dispositivo o una lista de dispositivos.
Sample Rate -la cantidad de muestras por segundo, que es igual al ancho de banda en Hz que deseamos observar. El controlador de dispositivo UHD hará todo lo posible para igualar la frecuencia de muestreo solicitada. Si la tasa solicitada no es posible, el bloque UHD imprimirá un error en tiempo de ejecución.
Chx Center Frequency -la frecuencia central es la frecuencia general de la cadena de RF.