Redes de Computadores

Documentos relacionados
Tema 6. Códigos de Línea. Materia: Comunicaciones Digitales Semestre: 6to. Carrera: ICE Febrero-Julio Profa. Gabriela Leija Hernández

Receptores para Transmisión Digital en Banda Base PRÁCTICA 9

CODIFICACION DIGITAL CODIFICACIONES MÁS USADAS

Profesora Maria Elena Villapol. Comunicación de Datos

Sistemas Multiusuarios. Capítulo 5 Técnicas para la Codificación de las Señales

Capítulo 4 Transmisión digital

Sistemas Multiusuarios. Capítulo 5 Técnicas para la Codificación de las Señales

Redes y Comunicaciones

Universidad Nacional del Nordeste. Facultad de Ciencias Exactas y Naturales y Agrimensura. Cátedra: Comunicaciones de Datos.

Lección 4: Formato y Modulación en Banda Base. Parte II

Códigos y Módulaciones Digitales. Jhon Jairo Padilla A., PhD.

CODIFICACION DIGITAL A DIGITAL

Operaciones y fundamentos de las. Telecomunicaciones. Operaciones y fundamentos de las. Telecomunicaciones

1. Introducción a las comunicaciones

Práctica 6: Diagramas de ojos

CAPITULO 6. Sistemas de comunicación. Continuar

Sistema completo de comunicaciones PRÁCTICA 10

Comunicaciones I. Capítulo 4 CODIFICACIÓN Y MODULACIÓN

Datos Digitales Señales Digitales

La portadora se escoge de modo que esté dentro de la banda de frecuencias (el ancho de banda disponible por la red telefónica pública).

SUMARIO. UNIDAD 1: CONCEPTOS BÁSICOS DE TELEPROCESOS. OBJETIVOS DE APRENDIZAJE : Interpretar conceptos básicos de teleprocesos.

Digital: Teorema de Shanon, pulsos: PAM, PPM, PWM, PCM, ASK, FSK, PSK, QAM. Rogelio Ferreira Escutia

ESOA Sistemas de Transmisión de Datos

transmisión de señales

Última modificación: 1 de julio de

Tecnologías de Comunicación de Datos

Práctica 1: Perturbaciones: distorsión y ruido

Unidad 3. Técnicas de Modulación

Sistemas de comunicación

Medios de Transmisión Práctica Final Simulación de un Sistema de Transmisión Digital Banda Base

Sistemas de comunicación

Práctica 2: Capa Física

Práctica 5: Modulaciones digitales

Redes. Tema 8 Capa Física OSI

Sistemas de Comunicación Examen

Detección de señales de comunicaciones

Tema 5. Modulación por Código de Pulso (PCM) Materia: Comunicaciones Digitales Semestre: 6to. Carrera: ICE Febrero-Julio 2017

Redes de Computadores

ASIGNATURA: TELEINFORMÁTICA

Tema: Modulación QAM.

Comunicaciones Digitales - Ejercicios Tema 6

Universidad de Costa Rica Escuela de Ingeniería Eléctrica. Emmanuel Vargas Blanco (A55895) Jose Pablo Apú Picado (B10407) Modulación Digital

( 1 sesión) Laboratorio de Señales y Comunicaciones (LSC) Curso

CODIFICACION DIGITAL A DIGITAL

TEMA 2: MOCULACION PCM. Dado un sistema PCM de 24 canales vocales telefónicos, como el indicado en la figura 6.1, se pide:

Existen una serie de criterios a tomar en cuenta sobre la información que genera el usuario:

Comunicación de Datos Escuela Superior de Informática. Tema 1 Fundamentos de la Comunicación de Datos

5. TRANSMISIÓN DIGITAL EN BANDA BASE

PCM MODULACION ANALOGA CON PORTADORA DIGITAL

Tema: Modulación FSK.

Unidad 3. Técnicas de Modulación

SISTEMAS Y CANALES DE TRANSMISIÓN 20/01/2010

Transmisión Digital (60123) Fredy Castellanos - UNET -

Comunicaciones Digitales

BOLETÍN DE PROBLEMAS TEMA 2

Tema 2: Sistemas y códigos numéricos

Transmisión. Transmision de Datos

Vídeo Digital Examen de Junio de 2001

banda, mayor es la distorsión, y mayor es la probabilidad de que se cometan errores en el receptor.

Práctica 5. Códigos Huffman y Run-Length

Trabajo opcional tema 4: modulación

Redes y Comunicaciones

Deterioro de la Transmisión

MODELOS DE COMUNICACION EL PRINCIPIOS DE COMUNICACIONES. clase no de octubre de Patricio Parada

TEMA 5: ANÁLISIS DE LA CALIDAD EN MODULACIONES ANALÓGICAS

Teoría de las telecomunicaciones. Unidad II: Técnicas de Modulación. 2.1 Importancia de la modulación

PRÁCTICA 1: Sistema de transmisión bandabase de señales de voz. Análisis del ruido.

Capítulo 5 Transmisión analógica 5.1

Facilitar la propagación de la señal por el medio de transmisión adaptándola a él.

Sílabo de Telecomunicaciones y Redes I

Trabajo opcional tema 3: modulación lineal

Anexo 2: Técnicas de transmisión

I. OBJETIVOS DE LA PRÁCTICA:

3. TÉCNICAS ARQ: SOLICITUD DE REPETICIÓN AUTOMÁTICA 4. TÉCNICAS FEC: CODIFICACIÓN PARA LA DETECCIÓN Y CORRECCIÓN DE ERRORES

CEDEHP Profesor: Agustín Solís M. CUESTIONARIO NRO. 2

Lección 3: Formato y Modulación en Banda Base. Parte I

Transmisión de datos y redes de comunicaciones Capítulo 4 Transmisión digital

GUÍA DE EJERCICIOS No. 3. Las tres emisoras se encuentran a igual distancia del receptor (igual atenuación de señal recibida).

Ejercicios del Tema 3: Transmisión de señales

Laboratorio de Señales y Comunicaciones (LSC) 3 er curso, Ingeniería de Telecomunicación. Curso (1 sesión)

TEMA 1. IT (UC3M) Comunicaciones Digitales Introducción 2 / 24. Finalidad de un sistema de comunicaciones: transmisión

Transformada Z en el diseño de Sistemas de tiempo Discretos

Comunicaciones en Audio y Vídeo. Laboratorio. Práctica 3: Modulaciones Digitales Multinivel. Curso 2008/2009

Transcripción:

Práctica 2 Redes de Computadores Códigos de línea Estudio de la distorsión introducida por el medio físico en la transmisión de una señal digital en banda base. Objetivos El análisis espectral es un concepto básico para entender algunos de los efectos que se producen en la transmisión de datos a través de un medio físico, como por ejemplo distintos tipos de cables. En esta práctica se pretende que el alumno entienda el proceso de transmisión de señales digitales en banda base sobre canales guiados, y sea capaz de interpretar el efecto de factores tales como ancho de banda del canal, relación señalruido y velocidad de transmisión en la calidad de la señal recibida en el destino. Para ello utilizaremos como herramienta la aplicación Matlab, que ofrece todo el soporte necesario para realizar este estudio. Descripción Teórica En telecomunicaciones, un código en línea (modulación en banda base) es un código elegido para ser usado en un sistema de comunicación como soporte para la transmisión. Los códigos en línea son frecuentemente usados para el transporte digital de datos. Estos códigos consisten en representar la amplitud de la señal digital transportada respecto al tiempo. La representación de la onda se suele realizar mediante un número determinado de impulsos. Estos impulsos representan los 1s y los 0s digitales. Los tipos más comunes de codificación en línea son el NRZ, AMI y Manchester. Las figuras siguientes ilustran un ejemplo de modulación NRZ polar y de modulación AMI. Figura 1. Ejemplo de codificación NRZ polar.

Figura 2. Ejemplo de codificación AMI (bipolar). Después de la codificación en línea, la señal se manda a través de la capa física. A veces las características de dos canales aparentemente muy diferentes son lo suficientemente parecidas para que el mismo código sea usado por ellos. La señal en línea codificada puede tener las siguientes utilidades en diversos campos: Puede ser puesta directamente en una transmisión de línea, en forma de variaciones de voltaje o corriente. Está lo bastante modulada para crear una señal de radiofrecuencia que puede ser transmitida libremente al espacio Puede ser usada para encender y apagar una luz en Redes Inalámbricas Ópticas (en inglés Free Space Optics FSO-), más conocidas como infrarrojos. Puede convertirse en campos magnéticos en un disco duro. Puede ser impresa para crear códigos de barras. Puede ser convertida en puntos en discos ópticos (CD) Modos de eliminar la componente continua Desgraciadamente, la mayoría de las canales de comunicaciones a largas distancias no pueden transportar una componente continua. El código de línea más simple, el unipolar, que no tiene límites en lo que respecta a su componente continua, da muchos errores en los sistemas. Por ello, la mayoría de los códigos en línea eliminan la componente continua. Hay dos modos de eliminar la componente continua: Diseñar cada código transmitido de tal forma que contenga el mismo número de impulsos positivos que negativos, así se anularía la componente continua. Un ejemplo de este tipo de códigos es el Manchester. Usar un código de paridades emparejadas o código alternante. En otras palabras, un código en el que algunos o todos los dígitos o caracteres están representados por dos conjuntos de dígitos, de paridad opuesta, que se utilizan en una secuencia de manera que se minimice la paridad total de una larga cadena de dígitos. Ejemplos de este tipo de códigos es el código AMI, 8B10T, 4B3T, etc. 2

Sincronismo de la señal Los códigos en línea deberían hacer posible que el receptor se sincronice en fase con la señal recibida. Si la sincronización no es ideal, entonces la señal decodificada no tendrá diferencias óptimas, en amplitud, entre los distintos dígitos o símbolos usados en los códigos en líneas. Esto incrementará la probabilidad de error en los datos recibidos. Para que la recuperación del reloj sea fiable en el receptor, normalmente se impone un número máximo de ceros o unos consecutivos razonables. El periodo de reloj se recupera observando las transiciones en la secuencia recibida, hasta que el número máximo permitido de 0s o 1s seguidos garantice la recuperación del reloj, mientras que las secuencias sin estas restricciones pueden empeorar la calidad del código. También es recomendable que los códigos en línea tengan una estructura de sincronismo para que sea posible detectar errores. Desarrollo de la práctica Esta práctica se llevará a cabo en un entorno Matlab. Matlab es una aplicación ampliamente utilizada en el sector de telecomunicaciones y en muchos otros, y permite realizar estudios bastante detallados de sistemas de comunicaciones, especialmente en lo que se refiere al procesamiento de la señal. La práctica se divide en 3 partes, donde lo que cambia de una parte a la siguiente son esencialmente los objetivos que se persiguen. Así, en la primera parte se busca que el alumno utilice una secuencia de bits muy corta para que observe el impacto del ruido y del ancho de banda del canal en la señal que se recibe en el destino, observando además las variaciones percibidas en el espectro de frecuencias de la señal. En la segunda parte el análisis se centrará en el análisis espectral, y se propone un estudio comparativo entre diferentes códigos de línea. Finalmente, en la tercera parte se trata el proceso de decodificación con el objetivo de observar la variación del Bit Error Rate (BER) a medida que hacemos variar los parámetros del canal. Material necesario Para la realización de esta práctica el alumno deberá descargar una serie de scripts en lenguaje Matlab que están disponibles en la página web de la asignatura: http://www.redes.upv.es/rds El material se encuentra en el fichero codigos_linea.zip que se encuentra junto a los boletines de prácticas. Deberá descargar este fichero y extraer los ficheros.m (M-files) en una carpeta local o en el disco W. Scripts principales (modificar cuando así se indique): encoding.m: contiene el script principal para la primera parte spectral_analysis.m: contiene el script principal para la segunda parte ber_calc.m: contiene el script principal para la tercera parte 3

Scripts auxiliares (no modificar en el trascurso de la práctica): modulb.m: función que genera los distintos códigos de línea a partir de una secuencia de bits ideal_filter.m: función que modela un filtro ideal de cualquier tipo decode_seq.m: función que permite decodificar códigos de línea isodd.m: función que permite determinar si un número es impar La ejecución e interacción con el programa a desarrollar se hará en modo consola, por lo que deberá arrancar el Matlab y modificar el directorio de trabajo de manera que pueda acceder a estos ficheros descargados. Parte I: Efecto del canal físico sobre la señal modulada Un canal físico se suele caracterizar por un ancho de banda, por la distancia entre emisor y receptor y por el nivel de ruido en él presente. Estos dos últimos factores (distancia y ruido), juntamente con un cierto nivel de potencia de la señal en la fuente, nos permiten calcular la relación señal-ruido (SNR) en el receptor. Por lo tanto, podemos representar nuestro canal físico de la siguiente manera: Noise Binary input sequence (seq) Line coding y(t) y n (t) Filtering y nd (t) Received signal (encoded) Analizando el script encoding.m podemos encontrar las instrucciones que nos permiten seguir esta misma secuencia representada. Pasamos a comentar las principales instrucciones: Inicialmente se definen algunos parámetros básicos, como dr = 1000; tasa de entrada de datos, en bits/segundo fs = 25*dr; una vez que en Matlab estamos simulando el proceso, tenemos que definir una tasa de muestreo que sea bastante superior a dr (en este caso 25 veces superior) snr = 5; relación señal ruido en el destino (suponiendo ruido blanco gaussiano) Caracterización del canal (frecuencias de corte) fmin = 0; valor en Hz, 0 significa que es un filtro pasa-bajo fmax = 4000; valor en Hz, frecuencia máxima de corte Después se procede a definir el código de línea deseado, así como la secuencia binaria usada en las pruebas: 4

lncds es un vector que contiene los códigos de línea implementados lncds = {'unipolar_nrz';... 1 'bipolar_nrz';... '4level_nrz';... 'bipolar_rz';... 'unipolar_rz';... 5 'ami';... 'manchester';... 'miller';... 'unipolar_nyquist';... 'bipolar_nyquist';... 10 'bipolar_nrzi';... 'b8zs';... 'hdb3';... '2b1q'}; 14 linecode = 1; mediante esta variable elegiremos qué código de línea queremos probar (en este caso 1 corresponde a NRZ unipolar). seq = [[1 0 1 0 0 1 1 0 1 0 1 0 0 1 0 0 1 1]; esta será nuestra secuencia binaria de entrada usada para pruebas Finalmente se obtiene la señal modulada y(t), así como la señal con ruido y n (t) y la señal distorsionada por el filtro que representa el propio canal y nd (t). Primero creamos la señal modulada y(t) [y,t] = modulb(seq,dr,fs,lncds{linecode}); Después añadimos ruido según el valor de SNR indicado sigrms = sqrt(mean(y.^2)); Signal power in rms scale power in noise relative to signal npow = sigrms*10^(-snr/20); Noise power in rms yn = y+npow*randn(size(y)); Add scaled noise to signal Finalmente distorsionamos la señal de acuerdo con el canal definido, en este caso simulado mediante un filtro ideal ynd = idealfilter(yn,fmin*max(size(seq))/dr,fmax*max(size(seq))/dr); Paso 1: En la línea de comandos de Matlab ejecute la instrucción encoding. Deberá obtener 6 figuras, donde las 3 últimas (4,5 y 6) son la representación espectral de las 3 primeras (1,2, y 3). En la figura 1 se muestra la señal modulada generada por el emisor. La figura 2 permite observar el efecto del ruido sobre la señal, y la figura 3 el efecto del ancho de banda. Según la figura 6, cuál es el rango de frecuencias que el canal deja pasar? Paso 2: Manteniendo el mismo código de línea, haga variar la relación señal ruido (SNR). Pruebe con los valores -10, -3, 0, 3, 10, 20 y 100. A partir de qué valor cree que la tasa de error será elevada? 5

A partir de qué valor cree que no tiene sentido aumentar la potencia en la fuente? Paso 3: Reponga el valor de SNR a 5dB. Haga variar la frecuencia máxima (corte) del canal, probando con los valores 100, 500, 1000, 2000 y 8000. Para este caso, cuál cree que sería la frecuencia de corte óptima? Parte II: Análisis espectral de diferentes técnicas de modulación En esta segunda parte el objetivo es caracterizar los diferentes códigos de línea en términos de su eficiencia espectral. Para eso el alumno deberá partir del script spectral_analysis.m, y modificarlo cuando sea necesario. Para empezar ejecute una vez la instrucción spectral_analysis desde la línea de comandos de Matlab. Obtendrá una gráfica de la amplitud de la representación de esta señal en el dominio de las frecuencias. A continuación se muestra el espectro de frecuencias para NRZ unipolar después de realizar zoom y translación sobre la figura obtenida. Single-Sided Amplitude Spectrum of y(t) 1 0.8 Y(f) 0.6 0.4 0.2 0 0 100 200 300 400 500 600 700 800 900 1000 Frequency (Hz) Como se puede verificar, este código de línea requiere un ancho de banda de 1000 Hz, y sí tiene una componente continua importante. Repita el mismo análisis para diferentes códigos de línea, y rellene la siguiente tabla. Técnica de modulación NRZ unipolar (#1) NRZ bipolar (#2) AMI (#6) Manchester (#7) NRZI bipolar (#11) B8SZ (#12) HDB3 (#13) 2B1Q (#14) Ancho de banda ocupado 1 (Hz) Componente DC nula (Si/No) 1 Hasta el primer cruce por amplitud cero en el espectro de frecuencias. 6

Parte III: Efecto del canal sobre la tasa de errores de bit (BER) En este punto vamos a utilizar nuestro simulador para ver gráficamente cómo afecta el ancho de banda y la atenuación introducida por el cable a la señal transmitida. Para este análisis utilizaremos el script ber_calc.m. Para el proceso de decodificación se invoca el script decode_seq.m, que como puede verificar sólo implementa un subconjunto de los códigos de línea listados por el vector lncds. Paso 1: Utilizando los códigos de línea NRZ unipolar (#1) y AMI (#6), calcule la tasa de errores de bit a medida que hacemos variar la relación señal-ruido y complete la siguiente gráfica: Notas: Hacer pruebas con los valores de SNR: -3, -1, 1, 3, 5 y 10 db. Colocar ambas líneas en la misma figura. El ancho de banda del canal debe ser [0,4000] Hz. Paso 2: Utilizando los códigos de línea NRZ unipolar (#1) y AMI (#6), calcule la tasa de errores de bit a medida que hacemos variar el ancho de banda de un canal pasa-bajo (modelado en términos de frecuencias por [0,f max ]) y complete la siguiente gráfica: Nota: Colocar el valor de SNR a 10 db. Probar con los valores indicados en la figura. 7

Paso 3: Repita el paso anterior cambiando el tipo de canal a pasa-banda (modelado en términos de frecuencias por [f min, 1000]) y complete la siguiente gráfica: Nota: Colocar el valor de SNR a 10 db y el valor de f max a 1000 Hz. Probar con los valores indicados en la figura. Cuál de los dos códigos de línea es más adecuado para la transmisión sobre canales pasa-banda? Ampliaciones opcionales sobre la práctica 1. Implementar nuevos códigos de línea no contemplados y analizar su comportamiento espectral. 2. Comparar los resultados obtenidos con el filtro ideal con otros filtros más realistas : Butterworth, Chebychev, etc. 3. Implementar decodificadores para más códigos de línea (ver en decode_seq.m los que quedan por implementar) y caracterizarlos en términos de BER. 8