UNIVERSIDAD NACIONAL DE MISIONES
Facultad de Ingeniería
Comunicaciones 1
Trabajo Práctico
Espectro de densidad de Energía y potencia
Autor:
SCHÖNINGER, Maximiliano Sebastián
Docentes responsables:
Dr. Ing. Horacio A. Mendoza.
Ing. Marcos Lugo.
Ing. Sergio Ariasgago.
Oberá 29 de marzo de 2024
Comunicaciones 1
Objetivos
El presente trabajo práctico tiene como objetivo realizar sobre el alumno un vuelco de los conceptos
teóricos vistos en el repaso del T.P. Nº 1 hacia las aplicaciones propias de las telecomunicaciones. Al
mismo tiempo presenta a modo de introducción tópicos específicos como ser Ruido y Variable Alea-
toria ya orientados específicamente a Telecomunicaciones, dejando para el transcurso del desarrollo
de la materia la profundización de los mismos. Finalmente se estimula a los alumnos a la producción
de distintas simulaciones y scripts mediante la utilización de la herramienta GNU Octave/Python.
Conceptos Involucrados
Espectro de Densidad de Energía.
Espectro de Densidad de Potencia.
Funciones de Correlación.
Ruido Blanco.
Probabilidad y Variables Aleatorias
Ejercicio N°1
El script que se presenta a continuación se utiliza para graficar el espectro de una determinada función
x(t), en este caso una función cuadrada.
f = 10; % "frequency" of square wave
time=2; % length of time
Ts= 1/1000; % time interval between
samples
t=Ts : Ts : time; % create a time vector
x=sign( cos (2* pi * f *t )) ; % square wave = sign of cos
wave
plotspec (x ,Ts) % call plotspec to draw
spectrum
% plotspec(x,Ts) plots the spectrum of the signal x
% Ts = time (in seconds) between adjacent samples in x
function plotspec(x,Ts)
N=length(x); % length of the signal x
t=Ts*(1:N); % define a time vector
ssf=(ceil(-N/2):ceil(N/2)-1)/(Ts*N); % frequency vector
fx=fft(x(1:N)); % do DFT/FFT
fxs=fftshift(fx); % shift it for plotting
subplot(2,1,1), plot(t,x) % plot the waveform
xlabel('seconds'); ylabel('amplitude') % label the axes
subplot(2,1,2), plot(ssf,abs(fxs)) % plot magnitude
spectrum
xlabel('frequency'); ylabel('magnitude') % label the axes
SCHÖNINGER, Maximiliano Sebastián 2 de 16
Comunicaciones 1
Realice lo mismo con la una señal x(t) del tipo aleatoria que represente el ruido (Explore la función
randn).Finalmente analice el espectro de al menos 3 señales adicionales con y sin la adición de ruido.
En primer lugar se muestra la señal cuadrada generada y su espectro de frecuencia:
Figura 1: Señal cuadrada generada y su espectro de frecuencias.
En MATLAB, la función randn se utiliza para generar matrices de números aleatorios que siguen una
distribución normal estándar, es decir, que siguen una distribución normal (o gaussiana) con media
cero y varianza uno. Esta función permite generar señales aleatorias o de ruido, como se muestra a
continuación:
Figura 2: Señal aleatoria generada y su espectro de frecuencias.
SCHÖNINGER, Maximiliano Sebastián 3 de 16
Comunicaciones 1
A continuación se anlazirá el espectro de tres señales, con y sin la adición de ruido.
Figura 3: Señal cuadrada de 1 Hz sin ruido.
Figura 4: Señal cuadrada de 1 Hz con ruido.
Figura 5: Señal senoidal de 1 Hz sin ruido.
SCHÖNINGER, Maximiliano Sebastián 4 de 16
Comunicaciones 1
Figura 6: Señal senoidal de 1 Hz con ruido.
Figura 7: Señal triangular de 1 Hz sin ruido.
Figura 8: Señal triangular de 1 Hz con ruido.
SCHÖNINGER, Maximiliano Sebastián 5 de 16
Comunicaciones 1
El código final utilizado en MATLAB para obtener el espectro de funciones con y sin ruido es el
siguiente:
close all;
f = 1; % "frequency" of signal
time=2; % length of time
Ts= 1/1000; % time interval
t=Ts : Ts : time; % create a time vector
x_t=5*sign( cos (2* pi * f *t )) ; % FUNCION x(t)
ruido = randn(size(t)); % Senal aleatoria
% Senal superpuesta (senal x(t) + ruido)
x_superpuesta = x_t + ruido;
%Graficos
plotspec (x_t ,Ts) % draw spectrum
figure;
plotspec (x_superpuesta ,Ts) % draw spectrum
Ejercicio N°2
Sea x1 (t) una onda de coseno de frecuencia f1 = 10, x2 (t) una onda coseno de frecuencia f2 = 18,
y x3 (t) una onda coseno de frecuencia f3 = 33. Sea x(t) = x1 (t) + 0,5x2 (t) + 2x3 (t). Encuentre el
espectro de x(t). ¿Qué propiedad de la transformada de Fourier ilustra esto?
Figura 9: Señal en el dominio del tiempo
Aplicando FFT, el espectro de frecuencias resulta:
SCHÖNINGER, Maximiliano Sebastián 6 de 16
Comunicaciones 1
Figura 10: Espectro de frecuencias
Se puede ver que el espectro consta de impulsos localizados en las frecuencias f1 , f2 y f3 . La magnitud
de dichos impulsos es igual a la mitad de las amplitudes de x1 , x2 , y x3 , respectivamente.
Este resultado se ilustra en la propiedad de linealidad de la transformada de Fourier:
a1 · x1 (t) + a2 · x2 (t) ←→ a1 · X1 (ω) + a2 · X2 (ω) (1)
Lo que quiere decir que la transformada de Fourier de una suma de funciones, es igual a la suma de
las transformadas de cada función individual.
Ejercicio N°3
Determine y trace la función de autocorrelación de una señal periódica cuadrada con amplitud de pico
A, periodo T y valor medio A/2.
La función de autocorrelación de una señal es una medida de la similitud entre la señal y una versión
desplazada de sí misma en el tiempo. Es una herramienta importante en el análisis de señales y
sistemas, y se utiliza para caracterizar las propiedades estadísticas y temporales de una señal.
Matemáticamente, la función de autocorrelación de una señal x(t) se define como:
1 ∞
Z
R(τ ) = x(t) · x(t − τ ) · dt (2)
T −∞
Donde:
τ es el retardo (también conocido como desplazamiento de tiempo).
x(t) es la señal en el tiempo t.
SCHÖNINGER, Maximiliano Sebastián 7 de 16
Comunicaciones 1
Si la señal es periódica, la función de autocorrelación también será periódica, con un período igual al
período de la señal.
La misma permite la caracterización de la periodicidad, la detección de patrones repetitivos, el análi-
sis espectral y la estimación de parámetros en procesos estocásticos.
Para calcular la función de autocorrelación, primero necesitamos expresar la señal cuadrada como
una función matemática. La función cuadrada se define de modo que tenga una amplitud:
(
A para 0 ≤ t < T2
f (t) (3)
0 para T2 ≤ t < T
A continuación, se grafica la señal cuadrada, en conjunto, con una versión de la señal cuadrada des-
plazada :
Figura 11: Señal x(t) y x(τ ), con τ =0.
Figura 12: Señal x(t) y x(τ ), con τ =T/4.
En consecuencia la función de autocorrelación resulta:
SCHÖNINGER, Maximiliano Sebastián 8 de 16
Comunicaciones 1
Figura 13: Función de autocorrelación de una señal cuadrada periódica
En base a lo anterior se puede inferir que:
A medida que el desplazamiento temporal τ aumenta desde 0 a T/2, la correlación entre la señal
original y la señal desplazada disminuye linealmente.
No hay correlación entre la señal original y la señal desplazada para desplazamientos tempo-
rales mayores que la mitad del periodo de la señal cuadrada. Esto tiene sentido intuitivamente,
ya que la señal cuadrada es periódica con un periodo T, y una vez que τ es mayor que T/2, las
señales desplazadas ya no se superponen significativamente.
El código de MATLAB empleado para el cálculo de la función de autocorrelación es el siguiente:
close all;
% Definir los par metros
A = 1; % Amplitud de pico
T = 2; % Periodo
% F u n c i n de autocorrelaci n
autocorrelation = @(tau) A^2 * (T - tau).*(0 <= tau & tau < T/2);
% Valores de tau
tau_values = linspace(0, T, 1000);
% Calcular la f u n c i n de autocorrelaci n para cada valor de tau
R_values = arrayfun(autocorrelation, tau_values);
% Tramar la f u n c i n de autocorrelaci n
plot(tau_values, R_values)
xlabel('Desplazamiento temporal (\tau)')
SCHÖNINGER, Maximiliano Sebastián 9 de 16
Comunicaciones 1
ylabel('Autocorrelaci n (R(\tau))')
title(' F u n c i n de autocorrelaci n de una s e a l cuadrada
p e r i d ica')
grid on
%
--------------------------------------------------------------------
%Representaci n de x y su desplzamiento
% Definir los par metros de la s e a l
A2 = 1; % Amplitud de pico
T2 = 2; % Periodo
% Definir la f u n c i n de la s e a l original x(t)
x = @(t) A2 * ((mod(t, T2) < T2/2) * 1);
% Valores de tiempo para trazar la s e a l original
t_values = linspace(0, 3*T2, 1000);
x_values = arrayfun(x, t_values);
% Definir la f u n c i n de la s e a l desplazada x(t - tau)
tau = T/4; % Valor de desplazamiento tau
x_shifted = @(t) A2 * ((mod(t - tau, T2) < T2/2) * 1);
% Valores de tiempo para trazar la senal desplazada
x_shifted_values = arrayfun(x_shifted, t_values);
% Tramar ambas senales en la misma figura
figure;
plot(t_values, x_values, 'b', 'LineWidth', 2)
hold on
plot(t_values, x_shifted_values, 'r--', 'LineWidth', 2)
hold off
xlabel('Tiempo (t)')
ylabel('Amplitud')
title('Senal original x(t) y senal desplazada x(t - \tau)')
legend('x(t)', 'x(t - \tau)')
grid on
SCHÖNINGER, Maximiliano Sebastián 10 de 16
Comunicaciones 1
Ejercicio N°4
Repita el Ejercicio Nº 3, esta vez adicione una señal de ruido y saque sus conclusiones (realice la
prueba con 2 o 3 niveles de ruido distintos).
Para realizar una señal de ruido se hará uso de la función randn de MATLAB. A continuación se
presentan los resultados obtenidos para tres niveles distintos de ruido:
Figura 14: Resultados obtenidos con un factor de ruido de 0.2.
Figura 15: Resultados obtenidos con un factor de ruido de 1.
SCHÖNINGER, Maximiliano Sebastián 11 de 16
Comunicaciones 1
Figura 16: Resultados obtenidos con un factor de ruido de 5.
En vista de los resultados obtenidos, se puede inferir que, en la medida que la amplitud de la señal de
ruido sea mayor, la misma distorsionará en mayor medida la señal bajo análisis, en consecuencia, la
autocorrelación será cada vez menor, aproximándose a cero. Esto es debido a que la señal aleatoria
comienza a predominar sobre la señal original.
Por otro lado, el ruido puede introducir correlaciones espurias en la señal, lo que significa que puede
generar picos o cambios en la función de autocorrelación que no están relacionados con la estructura
inherente de la señal.
Ejercicio N°5
Calcule el ancho de banda a -3 dB y el ancho de banda equivalente del ruido de un filtro con la
siguiente característica de transferencia en magnitud:
1
|H(ω)| = p (4)
(1 + ω 4
Con la ayuda de Matlab, grafico la respuesta en frecuencia del filtro:
SCHÖNINGER, Maximiliano Sebastián 12 de 16
Comunicaciones 1
Figura 17: Respuesta en frecuencia del filtro
Se puede ver que se trata de un filtro pasabajos, por lo que el ancho de banda va desde 0 rad/s hasta
la frecuencia de corte, que es la frecuencia para la cual el filtro presenta una atenuación de -3 dB.
Observando la respuesta del filtro se puede ver que la frecuencia de corte es de 1 rad/s.
Para calcular analíticamente el ancho de banda a -3dB primero hacemos la conversión
1
−3dB ≡ √ (5)
2
Encontramos la frecuencia de corte, igualando la función de transferencia del filtro con el valor de
magnitud:
1 1
√ =√ (6)
1+ω 4 2
√ √
1 + ω 4 = 2 −→ 1 + ω 4 = 2 −→ ω = 1 (7)
Entonces, el ancho de banda a -3 dB es igual a 1 rad/s.
El ancho de banda equivalente de ruido de H(ω) es el ancho de banda de un filtro ideal que da la
misma potencia de ruido a la salida que H(ω). Se calcula como:
R∞
|H(ω)|2 · dω
Beq = 0 (8)
|H(ω0 )|2
Donde ω0 es la frecuencia angular en la que la magnitud de la respuesta en frecuencia alcanza su
máximo. Teniendo en cuenta la respuesta en frecuencia del filtro, ωo = 0 y |H(ω0 )|2 = 1.
Por lo que resulta
!2
Z ∞ Z ∞
1 1
Beq = p · dω = · dω = 1, 11rad/s (9)
0 (1 + ω 4 0 1 + ω4
SCHÖNINGER, Maximiliano Sebastián 13 de 16
Comunicaciones 1
Ejercicio N°6
a) ¿Cuál es la probabilidad de que aparezca un entero par en el lanzamiento de un dado?
Un dado tiene 6 caras, de las cuales 3 contienen números pares (2,4 y 6). Por lo tanto, la proba-
bilidad de que aparezca un número par es de 3/6, o sea, del 50 %.
b) ¿Cuál en la suma de dos dados?
Con dos dados, tengo cuatro resultados posibles:
a) Dado 1 par, Dado 2 par
b) Dado 1 par, Dado 2 impar
c) Dado 1 impar, Dado 2 par
d) Dado 1 impar, Dado 2 impar
La suma de los dos dados resulta par en el caso 1 y 4, por lo que la probabilidad es de un 50 %.
c) ¿Cuál en la suma de tres dados?
Con 3 dados se pueden dar dos casos:
a) Dado 1 + Dado 2 = impar. Entonces el tercer dado tiene que tener un número impar.
b) Dado 1 + Dado 2 = par. Entonces el tercer dado tiene que tener un número par.
Por lo que la probabilidad sigue siendo del 50 %.
Ejercicio N°7
Desarrolle el concepto de probabilidad conjunta utilizando como ejemplo las reglas ortográficas del
idioma español y el sistema de texto predictivo del celular.
La Probabilidad Conjunta refiere a la probabilidad de que dos o más eventos ocurran simultánea-
mente. En otras palabras, es la probabilidad de que dos o más condiciones se cumplan al mismo
tiempo.
Ejemplo con Reglas Ortográficas del Español: Supongamos que estamos interesados en dos reglas
ortográficas específicas: las palabras agudas y las palabras llanas. Aquí está cómo aplicaríamos la
probabilidad conjunta:
Palabras Agudas: Estas son palabras cuya sílaba tónica (la sílaba con mayor intensidad) está en la
última sílaba. Ejemplos incluyen “cantó”, “canción” y “después”. Palabras Llanas: Estas son palabras
cuya sílaba tónica está en la penúltima sílaba. Ejemplos incluyen “jardín”, “lápiz” y “cónsul”. Ahora,
consideremos la probabilidad conjunta de que una palabra sea aguda y llana al mismo tiempo. ¿Cuál
es la probabilidad de que una palabra cumpla ambas condiciones?
SCHÖNINGER, Maximiliano Sebastián 14 de 16
Comunicaciones 1
Probabilidad de ser Aguda (P(A)): Digamos que la probabilidad de que una palabra sea aguda es
0.4 (40 % de las palabras). Probabilidad de ser Llana (P(B)): Supongamos que la probabilidad de que
una palabra sea llana es 0.3 (30 % de las palabras). La probabilidad conjunta de que una palabra sea
aguda y llana es:
P (A y B) = P (A) · P (B) = 0,4 · 0,3 = 0,12
Esto significa que aproximadamente el 12 % de las palabras cumplen ambas condiciones.
Ejemplo con el Sistema de Texto Predictivo en los Teléfonos Celulares: El texto predictivo en los
teléfonos celulares sugiere o corrige palabras mientras escribimos. Funciona consultando un diccio-
nario de palabras comunes y ofreciendo opciones basadas en lo que hemos escrito previamente.
Supongamos que estamos escribiendo un mensaje y queremos usar la palabra “cumpleaños”. El siste-
ma de texto predictivo nos sugiere automáticamente la palabra correcta después de escribir “cumpl”.
En este caso, la probabilidad conjunta sería la probabilidad de que el sistema sugiera la palabra “cum-
pleaños” dado que hemos escrito “cumpl”.
Ejercicio N°8
En muchos sistemas de comunicaciones, cada mensaje se divide en segmentos o frames, cada uno
de los cuales contiene una cabecera o header predeterminado. Para la correcta decodificación del
mensaje enviado, el receptor debe localizar este encabezado a los fines de interpretar correctamente
donde inicia cada frame. El script presentado en este ejercicio hace uso de la correlación para localizar
ese encabezado. Se invita al alumno a realizar distintas pruebas con el mismo y realizar conclusiones
al respecto.
header=[1 -1 1 -1 -1 1 1 1 -1 -1]; % header is a predefined string
loc=30; r=25; % place header in position loe
data= [sign(randn(1,loc-1)) header sign(randn(1,r))]; % generate
signal
sd=0.25; data=data+sd*randn(size(data)); % add noise
y=xcorr(header, data); % do cross correlation
[m,ind]=max(y); % location oflargest correlation
headstart=length(data)-ind+l; % place where header starts
subplot(3,l,1), stem(header) % plot header
title('Header')
subplot(3,1,2), stem(data) % plot data sequence
title('Data with embedded header')
subplot(3,1,3), stem(y) % plot correlation
title('Correlation of header with data')
SCHÖNINGER, Maximiliano Sebastián 15 de 16
Comunicaciones 1
Lo que realiza el código es una correlación cruzada entre ambas señales. Esta operación matemática
de la rama de la probabilidad evalúa las similitudes entre las dos señales. Al ser el encabezado la señal
conocida, este proceso arrojará a la salida un máximo centrado en el encabezado.
Figura 18: Encabezado
Figura 19: Ubicación del máximo valor de la correlación cruzada.
Figura 20: La variable ind corresponde a la posición del bit central del encabezado enviado.
Conocer la posición de este máximo es crucial para determinar a partir de que punto se está transmi-
tiendo información útil en el canal, o para diferenciar dos señales diferentes que se envían a través del
mismo canal.
SCHÖNINGER, Maximiliano Sebastián 16 de 16