Lab Com Digitales Lab3
Lab Com Digitales Lab3
Lab Com Digitales Lab3
Comunicaciones Digitales
Guía de Prácticas
Autor:
PhD. Alexander B. Hilario Tacuri
Contenido
2
PhD. Alexander Hilario Tacuri Comunicaciones Digitales
Práctica 1
(Fecha de entrega: 30 de Marzo)
1. Objetivos
• Proporcionar familiaridad con algunos de los bloques clave de construcción de los sistemas de transmisión
digital.
• Escribir un simulador en MATLAB para un sistema de comunicación digital simple. La simulación es
una herramienta invaluable para evaluar el rendimiento de los sistemas de comunicación en un entorno
controlado y evitar costosas pruebas de campo. Además, debido a que gran parte de la funcionalidad de
los transceptores digitales modernos se implementa en el software que utiliza el procesamiento de señales
digitales, escribir un simulador para un transmisor o receptor es muy similar a construir uno.
2. Introducción
En la Figura 1 se muestra un diagrama de bloques simplificado de un sistema de comunicación de pasabanda.
Los mensajes (secuencias de bits) deben transmitirse desde la fuente de datos al receptor de datos. El
transmisor consta de un mapeador de símbolos, que convierte los bits en amplitudes, un filtro de transmisión
que genera una señal de banda base analógica y un modulador que convierte la señal de banda base a una
frecuencia más alta adecuada para la transmisión a través del canal. El receptor consta de un demodulador para
convertir la señal de pasabanda a la banda base, un detector que filtra y muestrea la señal de banda base y un
dispositivo de decisión que estima el valor de cada bit transmitido. Cada uno de estos componentes se describe
con más detalle a continuación.
• Data Source: La secuencia del mensaje transmitido consta de Na bits de mensaje. La secuencia está
dado por a = [a0 a1 a2 . . . aNa −1 ], donde an ∈ {0, 1} es el enésimo bit de mensaje.
• Symbol Mapper: El mapeador de símbolos convierte los bits del mensaje en amplitudes de valor real. El
mapeo entre bits y amplitudes depende del esquema de comunicación que se utilice. Para este laboratorio
usaremos lo que se conoce como señalización antipodal, donde el mapeo se define por
+1 si an = 0
vn = SM [an ] = (1)
−1 si an = 1
3
PhD. Alexander Hilario Tacuri Comunicaciones Digitales
Es decir, los valores de bit de mensaje de 0 se convierten a +1, y los valores de bit de 1 se convierten a -1.
• Transmit Filter: El filtro de transmisión (también conocido como filtro de conformación de pulso)
utiliza las amplitudes del mapeador de símbolos, v = [v0 v1 v2 . . . vNa −1 ], para generar un tren de pulsos
analógico,
a −1
NX
v(t) = vn hT (t − nT ) (2)
n=0
donde T es la duración del pulso (también conocida como la duración del símbolo o período del símbolo) y
hT (t) es la forma del pulso. Como se discutirá más adelante en este curso, hay muchas opciones diferentes
para la forma del pulso, cada una con sus propias ventajas y desventajas. Para este laboratorio usaremos
un pulso rectangular simple, como se muestra en la Figura 2.
La Figura 3 ilustra un ejemplo de la relación entre una secuencia de mensaje, a, las amplitudes correspon-
dientes, v, y la señal en banda base, v(t).
• Modulator: El modulador convierte la señal de banda base en una banda de frecuencia más alta modu-
lando la amplitud de una onda portadora. La señal pasabanda resultante viene dada por
4
PhD. Alexander Hilario Tacuri Comunicaciones Digitales
En este laboratorio usaremos lo que se conoce como filtro adaptado. Se dice que un filtro con respuesta
al impulso hR (t) esta adaptado a hT (t) si hR (t) = hT (T − t), donde T es la duración del pulso. La señal
recibida filtrada se muestrea, con una muestra recolectada cada T segundos. La primera muestra se recoge
en el tiempo t = T . Para n = 0, 1, 2, . . . , Na − 1, la enésima muestra viene dada por
• Decision device: El dispositivo de decisión intenta determinar el valor de cada bit de mensaje, en
función del valor de cada muestra recibida. La salida del receptor es la estimación de los bits de mensaje
transmitidos, â = [â0 â1 â2 . . . âNa −1 ]. La regla de decisión para este sistema es:
0 si rn ≥ 0
ân = (7)
1 si rn < 0
Si todo va bien, entonces ân debería ser igual a para cada n, lo que indica una comunicación sin errores.
3. Pre-Práctica
• Dibuje v(t) si Na = 10, a = [0 1 1 0 1 0 0 0 1 0], y hT (t) se proporciona como se muestra en la
Figura 2.
• Dibuje hR (t) si hT (t) se proporciona como se muestra en la Figura 2 y hR (t) esta adaptado a hT (t).
4. Desarrollo de la practica
En este laboratorio escribirá un simulador en MATLAB para el sistema de comunicación digital anteriormente
presentado. La buena práctica de programación de computadoras implica el desarrollo del simulador en etapas,
probando a fondo cada etapa antes de implementar la siguiente. Seguirá este enfoque cuando implemente su
simulador, agregando etapas de izquierda a derecha en la Figura 1.
5
PhD. Alexander Hilario Tacuri Comunicaciones Digitales
La data source genera un mensaje que consiste en Na bits seleccionados aleatoriamente, que son transmi-
tidos sobre el canal digital. Para este laboratorio consideraremos un canal digital ideal, por lo que los bits
recibidos son idénticos a los bits transmitidos. El receptor de datos muestra los bits recibidos y el número
de bits que se recibieron incorrectamente. Como el canal es ideal, este número debe ser cero. Si no es así,
entonces tiene un error en su simulador, que debe corregir antes de pasar al siguiente paso. Encontrar el
número de errores será aún más útil en futuros laboratorios, donde se espera que calcule la probabilidad
de error para canales no ideales. Ingrese el código de MATLAB que figura a continuación en un archivo
.m de MATLAB y ejecútelo.
1 % Data Source
2 %
3 Na = 10; % Message word length (in bits)
4 a = randi([0 1],1,Na); % randint(1, Na);
5 disp(sprintf(’Transmitted Message: %s’, sprintf(’%d ’, a)));
6
7 %
8 % Ideal Digital Channel
9 ah = a;
10
11 % Data Sink
12 %
13 disp(sprintf(’ReceivedMessage: %s’,sprintf(’%d’,ah)));
14 nErrs = sum(xor(a, ah));
15 disp(sprintf(’Number of errors: %d’, nErrs));
determina la cantidad de errores. Intente configurar manualmente ah en algo diferente a a antes de ejecutar
esta declaración.
Para simplificar la depuración, para el resto de esta práctica de laboratorio, solo usará el mensaje a =
[0 1 1 0 1 0 0 0 1 0] en lugar del mensaje generado aleatoriamente. Modifique su data source apropiada-
mente.
6
PhD. Alexander Hilario Tacuri Comunicaciones Digitales
Debe escribir el código para implementar el Symbol Mapper y el Decision Device cómo se describe en la
sección de Introducción de este laboratorio. No debe cambiar la fuente de datos. Mantenga Na = 10 y
a = [0 1 1 0 1 0 0 0 1 0]. Verifique que no haya errores de transmisión antes de continuar con el Paso 3.
Agregue el Transmit Filter y el Detector a su simulador. Use T = 1ms para la duración del símbolo del
pulso rectangular que se muestra en la Figura 2.
Debido a que es imposible procesar señales analógicas en una computadora digital, en MATLAB debemos
trabajar con una versión muestreada de la señal. La señal de banda base v(t) se muestreará con un período
7
PhD. Alexander Hilario Tacuri Comunicaciones Digitales
de muestreo de Ts = T /η segundos por muestra, o η = T /Ts muestras por símbolo (bit), donde η es la
relación de sobremuestreo. Usaremos η = 64 para este laboratorio. Las muestras están dadas por
Sin embargo, como no podemos generar v(t), no podemos muestrearlo. En cambio debemos generar
directamente sus muestras. La forma más útil (aunque no necesariamente la más fácil o más eficiente) de
hacer esto es generar primero un tren de impulsos muestreado basado en las amplitudes {vn }, y generar
una versión muestreada de hT (t), y luego realizar un convolución de tiempo discreto de los dos. Esto se
ilustra en la Figura 7, para v = [1 − 1 1] con Na = 3 y η = 4.
donde eta = η. El pulso muestreado es solo η unos (vea la función MATLAB ones ()). Use la función
MATLAB conv() para realizar la convolución en tiempo discreto.
Pregunta 2. Dibuje (plot) v(t) vs t (en segundos). Asegúrese de que su escala de tiempo sea correcta
(pista: ¿Cuánto tiempo debe durar su señal, y esto coincide con lo que se muestra en su gráfico?). Use el
comando MATLAB ylim() para mostrar el eje y sobre el intervalo [−1.1, 1.1]. Compara tu gráfica con
tu dibujo del pre-laboratorio.
Para implementar el detector, deberá generar una versión muestreada de hR (t), y usar conv() para realizar
una convolución en tiempo discreto de este con su señal recibida, dando una versión sobremuestreada de
r(t).
Pregunta 3. Dibuje (plot) r(t) vs t (en segundos). De su gráfica, ¿Cuáles son los valores de r(t) en los
primeros cuatro tiempos de muestreo, t = [n + 1]T para n = 0, 1, 2, 3?.
Realice un submuestreo de r(t) por un factor de η, asegurándose de mantener solo las muestras en los
instantes de muestreo correctos.
Pregunta 4. Compare los primeros cuatro valores de rn con los valores de la pregunta 3. ¿Son idénticos?
Sugerencia: si no lo son, probablemente esté muestreando en los momentos equivocados.
8
PhD. Alexander Hilario Tacuri Comunicaciones Digitales
5. Presentación de informe
• Cuando el docente lo autorice, es decir luego de presentar la práctica funcionando, puede subir su informe
en la tarea respectiva del aula virtual.
9
PhD. Alexander Hilario Tacuri Comunicaciones Digitales
Práctica 2
(Fecha de entrega: 13 de Abril)
1. Objetivos
• Observar y comprender los efectos de diferentes técnicas de codificación de línea en las características
espectrales de las señales digitales de banda base.
2. Pre-Práctica
• Dibuje la densidad espectral de potencia (PSD) (en dB) de la señalización polar NRZ, donde s0 (t) (ver
Figura 1) se usa para representar un bit de mensaje de 0, y s1 (t) se usa para un 1. La PSD de la señalización
polar NRZ y los bits de mensajes independientes viene dada por P (f ) = T1 |HT (f )|2 , donde HT (f ) es la
Transformación de Fourier del filtro de transmisión hT (t) y hT (t) = s0 (t).
3. Desarrollo de la practica
• Paso 1: Mejorando el simulador
El simulador que desarrolló en el Laboratorio 1 es un buen comienzo, pero tiene algunos inconvenientes
que deben rectificarse antes de comenzar este laboratorio. Realice los siguientes cambios en su simulador:
1. La forma del pulso del filtro de transmisión debe normalizarse para tener energía unitaria. La forma
de pulso rectangular debe ser como se muestra en la Figura 2. Es una buena idea utilizar siempre
formas de pulso normalizadas, de modo que el filtro de transmisión no amplifique ni atenúe la señal.
Queremos que la energía transmitida por símbolo sea la misma independientemente de la forma del
pulso, para que sea más fácil estudiar los efectos de la forma del pulso en el rendimiento del sistema
sin que los efectos se vean escondidos por potencias de señal transmitidas potencialmente diferentes
(energía promedio por bit).
2. El modulador debe modificarse para que la señal pasabanda transmitida, vc (t), tenga
√ la misma energía
que la señal de banda base, v(t). Esto se hace utilizando un factor de escala de 2, de modo que
√
vc (t) = v(t) 2 cos(2πfc t) (10)
el mismo cambio debe hacerse en el demodulador, es decir
√
ro (t) = rc (t) 2 cos(2πfc t) (11)
10
PhD. Alexander Hilario Tacuri Comunicaciones Digitales
3. Para hacer que la convolución de tiempo discreto realizada en el detector imite mejor la convolución de
tiempo continuo que sería realizada por un filtro de recepción analógico, debe multiplicar el resultado
de la convolución de tiempo discreto por el tiempo de muestreo Ts . También debe asegurarse de que
la respuesta al impulso del filtro de recepción se normalice para tener energía unitaria, al igual que
la forma de pulso utilizada por el filtro de transmisión.
Aquí hay algunas otras sugerencias que harán que su simulador sea más fácil de mantener y posiblemente
se ejecute más rápido.
donde a es el vector que contiene los bits del mensaje. Los elementos en a que tienen un valor de 0
se asignarán al valor del primer elemento de la matriz SM , y los valores de 1 se asignarán al valor
del segundo elemento del vector SM .
2. El dispositivo de decisión se puede implementar sin un bucle utilizando
1 ah = (r < 0);
donde hT es el vector que contiene la forma de pulso del filtro de transmisión muestreado.
Después de hacer estos cambios, debe ejecutar su simulador y verificar que no se producen errores de trans-
misión. Para este laboratorio utilizaremos los siguientes parámetros: Na = 128 bits, T = 0.01 segundos,
η = 64 muestras por símbolo y fc = 400 Hz. Use un mensaje generado aleatoriamente.
11
PhD. Alexander Hilario Tacuri Comunicaciones Digitales
transformada discreta de Fourier de la señal muestreada. Esto se puede lograr con los siguientes comandos
de MATLAB:
1 vt = vt(1:Ns); % Truncate to first Ns samples
2 Vf = fftshift(fft(vt)); % Calculate FFT
3 PSD = Vf.∗conj(Vf) ∗ Ts / Ns; % Calculate PSD
incremento de Ns Ts .
1
Pregunta 1. Dibuje (plot) el espectro de v(t) (en dB) vs. frecuencia (en Hz). Asegúrese de que su
escala de frecuencia sea correcta. Limite el eje x al rango de -750 a 750 Hz, y limite el eje y al rango de
-50 dB a 10 dB. En el mismo gráfico, pero en un color diferente, trace el PSD teórico que encontró en el
pre-laboratorio, evaluado a las mismas frecuencias. Su gráfico debe ser similar (pero no idéntico) al que se
muestra en la Figura 3.
Al comparar los resultados teóricos y experimentales, debería ser evidente que aunque las dos curvas son
similares, los resultados experimentales son muy irregulares. Es deseable obtener una curva más suave
(por lo tanto, mayor precisión) para los resultados experimentales. El aumento de η no ayuda (los valores
más altos de η, sin embargo, nos permiten estimar el espectro a frecuencias más altas), y el aumento de
Na tampoco ayuda (el aumento de Na nos permite estimar el espectro con una resolución más alta, pero
esto no suaviza el gráfico). En su lugar, utilizaremos lo que se conoce como el método de Bartlett, que
implica tomar el promedio de varias estimaciones diferentes del espectro.
Pregunta 2. Vuelva a ejecutar su simulador y genere otro gráfico del espectro. Debería ser similar, pero
ligeramente diferente al gráfico que produjo para la Pregunta 1. ¿Por qué es diferente?
12
PhD. Alexander Hilario Tacuri Comunicaciones Digitales
Modifique su simulador colocando casi todo en un gran bucle. En lugar de simplemente transmitir un
mensaje de Na bits, transmitirá varios mensajes diferentes seleccionados aleatoriamente, uno tras otro.
Sea Nf el número total de mensajes simulados que se transmiten. Para cada mensaje, su programa debe
calcular (pero no dibujar) el espectro de v(t) para ese mensaje. Después del ciclo, su programa debe
dibujar el promedio de estos espectros. Su programa también debe imprimir el número total de errores de
bit que ocurrieron (que debe ser igual a cero).
Pregunta 3. Dibuje el espectro de v(t) promediado sobre Nf = 10 mensajes. Muestre el espectro teórico
en el mismo gráfico. ¿Los resultados experimentales son menos irregulares que en la pregunta 1? Repita
con Nf = 100 y Nf = 1000. ¿Los resultados experimentales coinciden con los teóricos? ¿Cómo y por qué
difieren?.
Guarde una copia del vector que contenga el espectro estimado de la señalización polar NRZ con Nf = 1000;
lo necesitará en el Paso 5.
• Paso 3: Polar NRZ vs Unipolar NRZ
Unipolar NRZ implica el uso de un pulso rectangular con una amplitud positiva para representar un bit
de mensaje de 1, y no enviar nada (0 voltios por T segundos) para representar un 0. Para simular unipolar
NRZ, cambie su mapa de símbolos a
si an = 0
0
vn = SM [an ] = √ (12)
2 si an = 1
√
La amplitud de 2 se utiliza para garantizar que la señalización unipolar NRZ tenga la misma energía de
transmisión promedio por bit que la polar NRZ. Debido a que el mapa de símbolos ha cambiado, la regla
de decisión debe cambiarse a
√
0 si rn ≤ √2/2
ân = (13)
1 si rn > 2/2
Pregunta 4. Dibuje el espectro de v(t) (en dB) vs. la frecuencia (en Hz) para la señalización unipolar
NRZ, usando Nf = 1000. Limite el eje x al rango de -750 a 750 Hz, y limite el eje y al rango de -50 dB a
10 dB. En el mismo gráfico, dibuje el PSD teórico para polar NRZ que encontraste en el pre-lab. Comenta
las similitudes y diferencias.
Guarde una copia del vector que contiene el espectro estimado de la señalización unipolar NRZ.
• Paso 4: Polar y Unipolar con retorno a cero (RZ)
La señalización con retorno a cero (RZ) implica el uso de una forma de pulso que baja a 0 voltios a la
mitad del período del símbolo. La forma del pulso se muestra en la Figura 4.
Implemente esta forma de pulso y modifique su mapa de símbolos y dispositivo de decisión para usar
nuevamente la señalización polar.
Pregunta 5. Genere un gráfico que muestre el espectro experimental de polar RZ y el espectro teórico
de polar NRZ. Trace los espectros en dB de -50 a 10 dB para frecuencias en el rango de -750 a 750 Hz.
Comente las similitudes y diferencias.
Guarde una copia del vector que contiene el espectro estimado de la señalización polar RZ.
13
PhD. Alexander Hilario Tacuri Comunicaciones Digitales
Pregunta 6. Genere un gráfico que muestre el espectro experimental de unipolar RZ y el espectro teórico
de polar NRZ. Trace los espectros en dB de -50 a 10 dB para frecuencias en el rango de -750 a 750 Hz.
Comente las similitudes y diferencias.
Guarde una copia del vector que contiene el espectro estimado de la señalización unipolar RZ.
Implemente esta forma de pulso y modifique su mapeador de símbolos y dispositivo de decisión para usar
la señalización polar nuevamente.
14
PhD. Alexander Hilario Tacuri Comunicaciones Digitales
Guarde una copia del vector que contiene el espectro estimado de la señalización Manchester.
• Paso 5: Comparación
Pregunta 8. Genere un solo gráfico que muestre el espectro experimental de los siguientes códigos de
línea:
– Polar NRZ
– Unipolar NRZ
– Polar RZ
– Unipolar RZ
– Manchester
Use diferentes colores de linea para cada código, trace los espectros en dB de -50 a 10 dB para frecuencias
en el rango de -750 a 750 Hz. Comente las similitudes y diferencias.
4. Presentación de informe
• Cuando el docente lo autorice, es decir luego de presentar la práctica funcionando, puede subir su informe
en la tarea respectiva del aula virtual.
15
PhD. Alexander Hilario Tacuri Comunicaciones Digitales
Práctica 3
(Fecha de entrega: 04 de Mayo)
1. Objetivos
• Proporcionar familiaridad con algunos de los bloques de construcción clave en los sistemas de transmisión
digital de pasabanda. La influencia de las operaciones de filtrado del transmisor y/o del receptor en la
señal recibida se examina tanto en el dominio del tiempo como en el dominio de la frecuencia.
• Proporciona una idea de las diferencias entre dos de los métodos de modulación más populares: Binary
Phase Shift Keying (BPSK) y Quadrature Phase Shift Keying (QPSK).
• El impacto del filtrado del receptor en la señal recibida también se examina con énfasis en el efecto
cualitativo en la Interferencia entre símbolos (ISI). También se examina la construcción de filtros adaptados
y su impacto en la señal recibida.
2. Introducción
La Figura 1 muestra un diagrama de bloques simplificado de un sistema de comunicación de banda base.
Como se muestra en esta figura, el mapeador de símbolos convierte los bits del mensaje en amplitudes de
valor real, vn . El filtro de transmisión utiliza las amplitudes del mapeador de símbolos, v = [v0 v1 v2 . . . vNa −1 ],
para generar un tren de pulsos analógico,
a −1
NX
v(t) = vn hT (t − nT ) (14)
n=0
donde T es la duración del pulso (también conocida como la duración del símbolo o período del símbolo) y hT (t)
es la forma del pulso. Luego, el tren de pulsos de banda base, v(t), se multiplica por una portadora sinusoidal
para generar una señal modulada BPSK, vc (t), que se transmite a través del canal AWGN. En el receptor, un
demodulador coherente extrae los datos convirtiendo primero la señal BPSK recibida, rc (t), en banda base,
dando ro (t). La señal de banda base se aplica a un filtro de recepción (con respuesta de impulso hR (t)), y la
salida del filtro, r(t), se muestrea a la velocidad de símbolo (una muestra cada T segundos). Las muestras luego
se pasan a un dispositivo de decisión. La Parte I de este laboratorio considerará el efecto de la elección del filtro
16
PhD. Alexander Hilario Tacuri Comunicaciones Digitales
Supongamos que se utiliza un código de línea polar NRZ con una forma de pulso rectangular de tiempo lim-
itado de 0 a T en un sistema de comunicación de banda base, a través de un canal ideal sin ruido y supongamos
que no existe filtrado en el receptor (es decir, hR (t) = δ(t)), entonces la salida del filtro receptor r(t) a una
entrada a0 se extiende en el tiempo de 0 a T . Cuando se transmite una secuencia de bits, la salida al segundo
bit abarcará el tiempo de T a 2T , y así no interferirá con la salida al primer bit. Por lo tanto, en ese caso no hay
ISI, y se puede tomar una decisión sobre â0 muestreando la salida del filtro del receptor en cualquier momento
entre 0 y T . Además, debido a que se supuso que el canal era sin ruido, no se cometerá ningún error de decisión.
En la práctica, el canal introduce algo de ruido aditivo y, por lo tanto, el receptor incluye un filtro receptor
antes del muestreo para mejorar el rendimiento. El propósito del filtro del receptor es filtrar parte del ruido para
reducir el número de errores de decisión. El filtro adaptado es el filtro que maximizará la relación señal/ruido
en la salida del filtro receptor en un tiempo de muestreo determinado (y, por lo tanto, reducirá la cantidad
de errores de decisión en un canal AWGN), es decir, un filtro con respuesta de impulso hR (t) = hT (T − t)
suponiendo un tiempo de muestreo igual a T.
Se producirá un segundo efecto que implica el principio de dualidad entre el tiempo y la frecuencia, es decir,
las formas de onda absolutamente limitadas en el tiempo no pueden ser absolutamente limitadas en banda y
las formas de onda absolutamente limitadas en banda no pueden ser absolutamente limitadas en el tiempo. En
la práctica, el canal tendrá un ancho de banda finito; por lo tanto, el transmisor tendrá que incluir filtros para
garantizar que el ancho de banda de la señal transmitida después del filtrado sea menor que el ancho de banda
del canal.
Debido a la dualidad entre tiempo y frecuencia, considerar un filtro transmisor de ancho de banda finito
significa que la respuesta al impulso del filtro tiene una duración de tiempo infinita. Prácticamente, HT (f )
estará casi limitada en la banda y hT (t) estará casi limitada en el tiempo, pero su duración puede abarcar más
de un bit (más de T ). Esto significa que la salida a un bit abarcará de 0 a más de T , y por lo tanto interferirá
con la salida al segundo bit de la secuencia transmitida. En otras palabras, ISI ocurrirá.
En ese caso, la salida del filtro receptor en el tiempo de muestreo utilizado para detectar ân se compone
de un término proporcional a â0 , un término de ruido y un término que representa la contribución de los bits
pasados, llamado ISI. El valor del término ISI dependerá de la respuesta al impulso del canal (hc (t)), la elección
de hT (t) y hR (t), la elección del tiempo de muestreo, así como los valores de los bits transmitidos en el pasado.
Tenga en cuenta que en un modelo de sistema también es posible incluir todo el efecto de filtrado del canal en el
filtro del transmisor hT (t) y asumir por simplicidad que hc (t) = δ(t).Este enfoque se considera en este laboratorio.
Si la forma de pulso compuesta h(t) = hT (t) ∗ hc (t) ∗ hR (t) satisface el criterio de Nyquist, como coseno
elevado o formas de pulso sinc, por ejemplo, entonces el término ISI es igual a cero. Tenga en cuenta que
esto requiere conocer exactamente la respuesta al impulso del canal, por lo que en la práctica, aunque hT (t) y
hR (t) están diseñados de modo que se satisface el criterio de Nyquist, siempre hay algún ISI residual debido
a la estimación imperfecta del impulso del canal respuesta. En un ejemplo en este laboratorio, hT (t) y hR (t)
serán formas de pulso de raíz cuadrada de coseno elevado que producirán un pulso compuesto de coseno elevado
h(t) = hT (t) ∗ hR (t).
17
PhD. Alexander Hilario Tacuri Comunicaciones Digitales
Por supuesto, en la práctica, el valor de a0 no se conoce de antemano, por lo que el tiempo de muestreo
debería ser elegido teniendo en cuenta todos los casos posibles. Dado que el término ISI depende de los bits
transmitidos en el pasado, se deben considerar todas las secuencias transmitidas posibles. El diagrama del ojo es
una manera conveniente de encontrar el mejor tiempo de muestreo, así como la sensibilidad al ruido del sistema
de comunicación. El diagrama de ojo en la salida del filtro del receptor se obtiene trazando en el mismo gráfico
la salida del filtro del receptor suponiendo todas las combinaciones posibles de bits transmitidos (es decir, todas
las secuencias transmitidas posibles). Al observar el diagrama del ojo, se puede deducir el mejor tiempo de
muestreo que sea adecuado para ambos casos. Por lo general, el mejor tiempo de muestreo es en un punto dónde
el ojo se abre al máximo. Un típico diagrama del ojo es mostrado en la Figura 2.
El ancho representa el intervalo de tiempo durante el cual se puede muestrear la señal recibida sin error
de ISI. La región interior del diagrama del ojo se llama apertura del ojo ("altura interior del ojo"). El % de
apertura del ojo se define como la apertura del ojo dividida por la altura exterior del ojo. La altura de la
abertura del ojo en comparación con el centro del diagrama del ojo, en un tiempo de muestreo específico, define
el margen de ruido del sistema, es decir, cuánto ruido se puede agregar antes de un pulso que se clasificaría
como correspondiente a ’1’ ( por el detector) está tan distorsionado (debido al ruido aditivo) que "cambia de
signo" (es decir, el detector lo clasificaría como correspondiente a ’-1’). La velocidad de cierre del ojo a medida
que varía el tiempo de muestreo (es decir, la pendiente del ojo) determina la sensibilidad del ojo a los errores
de sincronización.
Por lo general, el diagrama del ojo se dibuja considerando la salida del filtro receptor para que se pueda
deducir el mejor tiempo de muestreo para la detección. Tenga en cuenta que también se puede construir otro
diagrama de ojo considerando la salida del filtro del transmisor. Esto correspondería a considerar un detector
que toma una decisión en la salida del transmisor (mirando solo el efecto del filtro del transmisor). La Parte II
de este laboratorio investigará el efecto del filtro transmisor (hT (t)) y el filtro receptor (hR (t)) en el sistema de
comunicación observando los diagramas de ojo en sus salidas y comparando los dos diagramas de ojo.
3. Pre-Práctica
• Encuentre y grafique la densidad espectral de potencia teórica (PSD) de una señal BPSK con una forma
de pulso de raíz cuadrada de coseno elevado (SRRC) en Watts/Hz y en dB/Hz (suponga un factor de caída
del 50%, una frecuencia portadora de 100 Hz, y velocidad de datos de 63 bit/seg). Tenga en cuenta que
la respuesta de magnitud de un filtro SRRC es |Hsrrc (f )| = |Hrc (f )|1/2 .
• Encuentre la tasa de error de bits teórica de BPSK detectada coherentemente en función de Eb /N0 . Usando
Matlab, trace la expresión BER obtenida en función de Eb /N0 expresada en dB. Use semilogy para trazar
18
PhD. Alexander Hilario Tacuri Comunicaciones Digitales
su BER de modo que se use la escala logarítmica para el eje y y se use una escala lineal para el eje x. Su
gráfico debe mostrar Eb /N0 de 0 a 10 dB.
• Encuentre y grafique la densidad espectral de potencia teórica de una señal QPSK con una forma de pulso
SRRC en vWatts/Hz y en dB/Hz (suponga un factor de caída del 50%, una frecuencia portadora de 100
Hz, y velocidad de datos de 126 bit/seg).
4. Modelos en Matlab
La figura 3 muestra una versión de la figura 2 que está más orientada a la simulación.
El modelo de simulación se ha implementado en simulink utilizando bloques estándar de simulink, DSP y Com-
munications. Se han incorporado varios bloques personalizados, creados con el propósito de este laboratorio en
los modelos de simulación. Los bloques personalizados son diversas implementaciones para el filtro de confor-
mación de pulso y el filtro Receptor. Todos los bloques personalizados están en el modelo de simulink titulado
"pulse_shapes". El contenido del modelo se muestra en la Figura 4
19
PhD. Alexander Hilario Tacuri Comunicaciones Digitales
20
PhD. Alexander Hilario Tacuri Comunicaciones Digitales
Las Figuras 5 y 6 muestran dos modelos BPSK destinados al análisis/simulación espectral y a la simulación
BER, respectivamente. La Figura 7 muestra el modelo de simulación QPSK.
21
PhD. Alexander Hilario Tacuri Comunicaciones Digitales
22
PhD. Alexander Hilario Tacuri Comunicaciones Digitales
5. Desarrollo de la práctica
• Paso 1: Preparando el MATLAB
Abra el modelo titulado "BPSK_PSD.mdl" que debería aparecer como se muestra en la Figura 5.
a) Ejecute la simulación. Muestre el espectro de la señal transmitida. Compare el resultado que obtuvo
con el espectro teórico obtenido en su pre-lab. Base la comparación solo en los valores relativos de
dB.
b) Abra el modelo titulado "pulse_shapes" que contiene los bloques personalizados. Esto debería apare-
cer como se muestra en la Figura 5. Reemplace el filtro de conformación de pulso por el bloque
“NRZps” y ejecute la simulación. Muestre el espectro de lo transmitido. Compare el espectro de la
transmisión que obtuvo en esta parte con la que obtuvo usando el filtro SRRC del punto anterior.
Abra el modelo titulado "BPSK_BER.mdl" que debería aparecer como se muestra en la Figura 6.
a) Haga doble clic en el modelo de canal AWGN. Ajuste el Eb /N0 deseado a 50 dB. Deje todos los demás
parámetros sin cambios. Ejecute la simulación durante 100 segundos. Una vez que se complete la
simulación, tendrá dos variables llamadas “Txout” y “Rxout” en su espacio de trabajo. Trace e
imprima los diagramas de ojo recibidos con el comando:
>> eyed(Rxout)
b) Haga doble clic en el modelo de canal AWGN. Ajuste el Eb /N0 deseado a 0 dB. Deje todos los demás
parámetros sin cambios. Ejecute la simulación durante 100 segundos. Ahora use las variables “Txout”
y “Rxout” para calcular la BER esperada. Para este paso use el comando:
c) Repita el paso (b) para diferentes valores de Eb /N0 : 2, 4, 6, 8 y 10 dB. Dibuje los resultados BER
obtenidos de la simulación. Compare la simulación y los resultados teóricos obtenidos en su pre-lab.
d) Ajuste el Eb /N0 deseado a 0 dB. Haga doble clic en el bloque con la etiqueta "DSB-SC AM passband1".
Establezca la fase portadora en pi/8. Ejecute la simulación durante 100 segundos. Use la función
"BER" de Matlab para calcular la BER en función de las variables de espacio de trabajo “Txout” y
“Rxout” como lo hizo en los dos pasos anteriores.
e) Repita el paso (d) para diferentes valores de Eb /N0 : 2, 4, 6, 8 y 10 dB.
Dibuje los resultados BER obtenidos de la simulación. Compare la curva BER que obtiene en este paso
con la que obtuvo en el Paso (c). Encuentre una explicación para este resultado.
23
PhD. Alexander Hilario Tacuri Comunicaciones Digitales
c) Repita el Paso (b) para diferentes valores de Eb /N0 : 20, 30 y 40 dB. Explica lo que observas.
6. Presentación de informe
• Cuando el docente lo autorice, es decir luego de presentar la práctica funcionando, puede subir su informe
en la tarea respectiva del aula virtual.
24
PhD. Alexander Hilario Tacuri Comunicaciones Digitales
Práctica 4
(Fecha de entrega: 25 de Mayo)
1. Objetivos
• Investigar la probabilidad de error de bit para diferentes esquemas de modulación digital de pasabanda.
Se basa en los Laboratorios 2 y 3, que debe revisar.
2. Introducción
Una razón para ejecutar una simulación por computadora de un sistema de comunicación digital es estimar la
confiabilidad del sistema en términos de la probabilidad de error. Aunque la simulación por computadora no
reemplaza la necesidad de realizar pruebas de campo con hardware real, es una herramienta útil. Por ejemplo,
el problema y el gasto de implementar un sistema en hardware pueden evitarse si se puede demostrar mediante
simulación que el sistema no alcanzará un rendimiento aceptable. Además, la simulación por computadora se
puede utilizar para comparar el rendimiento de diferentes sistemas en condiciones de operación que pueden ser
difíciles de crear en el campo.
Para un sistema de comunicación que opera en un entorno específico, una simulación por computadora puede
proporcionar una estimación de la probabilidad de un error de bit (también conocida como tasa de error de bit o
BER). Suponga que simula la transmisión de Nb bits y descubre que N de esos bits se reciben incorrectamente.
La probabilidad de un error de bit puede estimarse como
N
p̂ = (15)
Nb
Es importante recordar que p̂ es solo una estimación de la probabilidad real de error de bit para el sistema.
De hecho, si repetimos el experimento varias veces, es muy probable que obtengamos diferentes estimaciones de
la probabilidad de error cada vez. Por tal motivo, es necesario tener algún conocimiento de la precisión de la
estimación. Una medida útil de la precisión es el intervalo de confianza, [dL , dH ], de modo que P r{dL ≤ p ≤
dH } = β, donde dL y dH son funciones de p̂ y β es el nivel de confianza. Los valores típicos de β son 90%, 95%
y 99%. Por ejemplo, suponga que p̂ = 5 × 10−5 se encontró por simulación y se usó para construir un intervalo
de confianza de
P r{4 × 10−5 ≤ p ≤ 6 × 10−5 } = 0.95 (16)
Esto significa que hay un 95% de posibilidades de que el verdadero valor de p caiga entre 4 × 10−5 y 6 × 10−5 .
Después de alguna manipulación matemática, no es difícil demostrar que el intervalo de confianza para un nivel
de confianza de β está bien aproximado por
s
Nb γ 2 p̂(1 − p̂) 2
γ
dL = p̂ + −γ + (17)
Nb + γ 2 2Nb Nb 4Nb
s
Nb γ2 p̂(1 − p̂) γ2
dH = p̂ + +γ + (18)
Nb + γ 2 2Nb Nb 4Nb
√
donde γ = 2erf−1 (β).
25
PhD. Alexander Hilario Tacuri Comunicaciones Digitales
3. Pre-Práctica
Suponga que un sistema BPSK usa la forma de pulso rectangular que se muestra en la Figura √ 1 para la transmisión
a través de un canal AWGN
√ con PSD N 0 /2. Las señales transmitidas son s 0 (t) = hT (t) 2cos(2πfc t) si se envía
un 0, y s1 (t) = −hT (t) 2cos(2πfc t) si se envía un 1. Suponga que la frecuencia portadora, fc , es un múltiplo
entero de la tasa de transmisión de símbolos, 1/T .
c) Encuentre una expresión matemática simple para la probabilidad de un error de bit de un receptor óptimo.
Exprese su respuesta en términos de Eb y N0 .
d) Evalúe la expresión que obtuvo en (c) para una relación señal/ruido de Eb /N0 = 5 dB.
√ √
e) Repita las partes (a) - (d) para el esquema de modulación 2-PAM, donde s0 (t) = 0 y s1 (t) = 2hT (t) 2cos(2πfc t).
4. Desarrollo de la práctica
• Paso 1: BER de BPSK
Para estimar la probabilidad de un error de bit de un sistema BPSK, modifique el simulador del Laboratorio
2 retirando las instrucciones para calcular el PSD, y use los siguientes parámetros del sistema:
Use un mensaje generado aleatoriamente. Realice un seguimiento del número total de errores de bits de
mensaje que se producen en todas las Nf palabras de mensaje transmitidas. El modelo de canal pasabanda
AWGN es rc (t) = vc (t) + wc (t) donde vc (t) es la señal pasabanda transmitida, y wc (t) es el ruido, que
se modela como un proceso aleatorio gaussiano con media cero y PSD de N0 /2. Para simular el ruido
pasabanda en MATLAB, utilizar
26
PhD. Alexander Hilario Tacuri Comunicaciones Digitales
donde rct es la señal pasabanda recibida, vct es la señal pasabanda transmitida y T s es el período de
muestreo (Ts = T η). El valor de N0 se calcula a partir de N0 = Eb × 10−SN RdB/10 , donde SN RdB es la
SN R deseada (Eb /N0 ) en dB, y Eb es lo que calculó en el Pre-Laboratorio.
Pregunta 1: Comience simulando Nf = 10 palabras de mensaje de Na = 1000 bits cada una, con una
relación señal/ruido de Eb /N0 = 5 dB. ¿Cuál es el número total de errores de bit que ocurrieron? ¿Cuál es
su estimación de la probabilidad de un error de bit? ¿Cuáles son los límites superior e inferior del intervalo
de confianza del 95%? ¿Cuál es la verdadera probabilidad de error calculada usando la ecuación de su
Pre-Laboratorio? ¿Cómo se comparan estos valores?
Pregunta 2: Ejecute su simulador para diferentes valores de Eb /N0 que van desde 0 dB a 10 dB con un
paso de 1 dB. Registre el número de errores y la probabilidad estimada de error de bit para cada Eb /N0
en una tabla.
Pregunta 3: Use los resultados de la Pregunta 2 para generar un gráfico de la probabilidad estimada
de error de bit vs. Eb /N0 . En el mismo gráfico, muestre los límites superior e inferior del intervalo de
confianza del 95% y la verdadera probabilidad de error.
Pregunta 4: Para obtener resultados más precisos, aumente Nf a 1000. Vuelva a ejecutar su simulador
para Eb /N0 que varía de 0 dB a 10 dB con un paso de 1 dB, y genere un gráfico de la probabilidad estimada
de error de bit vs. Eb /N0 . En el mismo gráfico, muestre los límites superior e inferior del intervalo de
confianza del 95% y la verdadera probabilidad de error.
Pregunta 5: Genere un gráfico de la probabilidad estimada de error de bit vs. Eb /N0 . En el mismo gráfico,
muestre los límites superior e inferior del intervalo de confianza del 95% y la verdadera probabilidad de
error.
5. Presentación de informe
• Cuando el docente lo autorice, es decir luego de presentar la práctica funcionando, puede subir su informe
en la tarea respectiva del aula virtual.
27
PhD. Alexander Hilario Tacuri Comunicaciones Digitales
Práctica 5
(Fecha de entrega: 18 de Junio)
1. Objetivos
• Simular el funcionamiento de un sistema de comunicación que utiliza la modulación QAM.
2. Introducción
En este laboratorio, se creará un sistema de comunicación que utiliza la modulación QAM equivalente de banda
base que incluye un transmisor (Tx), un receptor (Rx) y un modelo de canal AWGN (ruido blanco gaussiano
aditivo) simple. Consideramos que las estructuras del Tx y Rx son similares a las que se muestran en la
Figura 1. Aquí, tanto la estructura Tx como la Rx se basan en cálculos complejos, pero las mismas estructuras
también pueden implementarse utilizando solo señales de valor real (es decir, , Modulación I/Q con ramas I y
Q separadas). Como filtros de transmisión y recepción, utilizamos los filtros Root-Raised-Cosine (RRC). Juntos
(en Tx y Rx) estos filtros cumplen el criterio de Nyquist (es decir, sin ISI).
3. Desarrollo de la práctica
• Paso 1: Definir los parametros generales del sistema
Similar a los laboratorios anteriores, defina los parámetros más importantes de sus sistema: Duración de
símbolo, numero de símbolos por pulso, frecuencia de muestreo, etc.
28
PhD. Alexander Hilario Tacuri Comunicaciones Digitales
4. Presentación de informe
• Cuando el docente lo autorice, es decir luego de presentar la práctica funcionando, puede subir su informe
en la tarea respectiva del aula virtual.
29
PhD. Alexander Hilario Tacuri Comunicaciones Digitales
Práctica 6
(Fecha de entrega: 28 de Junio)
1. Objetivos
• Diseñar e implementar un modem acústico para el desarrollo de sistemas de comunicaciones inalámbricos
usando la modulación 4-ASK
2. Desarrollo de la practica
• En esta práctica se implementara un modem acústico basado en la modulación 4-ASK. El objetivo es
enviar una figura simple, desde una computadora hacia otra utilizando ondas sonoras (mediante parlantes
y micrófonos). Los pasos para el diseño del sistema son los siguientes
3. Presentación de informe
• Cuando el docente lo autorice, es decir luego de presentar la práctica funcionando, puede subir su informe
en la tarea respectiva del aula virtual.
30