You are on page 1of 96

Fundamentos de Telecomunicaciones Utilizando el Matlab

UNIVERSIDAD RICARDO PALMA

FACULTAD DE INGENIERÍA

FUNDAMENTOS DE
TELECOMUNICACIONES UTILIZANDO
EL MATLAB

Diciembre 2011

LIMA - PERÚ

Mg. Pedro Freddy Huamaní Navarrete 1


Fundamentos de Telecomunicaciones Utilizando el Matlab

2 Mg. Pedro Freddy Huamaní Navarrete


Fundamentos de Telecomunicaciones Utilizando el Matlab

FUNDAMENTOS DE
TELECOMUNICACIONES
UTILIZANDO EL MATLAB

Por

Pedro Freddy Huamaní Navarrete

Facultad de Ingeniería
Universidad Ricardo Palma

Mg. Pedro Freddy Huamaní Navarrete 3


Fundamentos de Telecomunicaciones Utilizando el Matlab

4 Mg. Pedro Freddy Huamaní Navarrete


Fundamentos de Telecomunicaciones Utilizando el Matlab

PRESENTACIÓN

En los últimos años, en diversas carreras de ingeniería,


es muy común encontrar asignaturas relacionadas a las
telecomunicaciones. Desde las materias más simples y teóricas,
hasta las más complejas y elaboradas en laboratorios de
hardware y de simulación.

Asimismo, la aparición de softwares de computación


científica, tal como el Matlab, nos brinda capacidad para la
realización de simulaciones de conceptos impartidos en las
aulas de clase. Tal es así que el mismo Matlab posee una
librería denominada Communications Toolbox, la cual agrupa
adecuadamente un conjunto de comandos para utilizarse en el
área de las telecomunicaciones.

Por tal razón, y con la finalidad de brindar al estudiante


la facilidad de realizar simulaciones que complementen lo
aprendido en clases, se presenta este manual introductorio
donde se utiliza el software Matlab como herramienta principal
de software.

Este manual ha sido preparado con la intención de


mostrar los fundamentos de las telecomunicaciones utilizando
una herramienta computacional. Es decir, basado en
simulaciones y mostrando el desarrollo de fórmulas en gráficos
a nivel del tiempo y de frecuencia. Por esta razón, este material
consta de diez capítulos importantes. Desde la manipulación de
señales periódicas y no periódicas, pasando por la teoría de la
serie y la transformada de Fourier, hasta las modulaciones
analógicas por amplitud y frecuencia.

Mg. Pedro Freddy Huamaní Navarrete 5


Fundamentos de Telecomunicaciones Utilizando el Matlab

6 Mg. Pedro Freddy Huamaní Navarrete


Fundamentos de Telecomunicaciones Utilizando el Matlab

CONTENIDO

PRESENTACIÓN 05

CONTENIDO 07

1. Señales periódicas y no periódicas 09

2. Sistemas lineales. Filtros analógicos 16

3. Serie de Fourier 28

4. Transformada de Fourier 37

5. Densidad espectral de potencia y de energía 46

6. Modulación en amplitud (AM) 51

7. Demodulación AM 68

8. Modulación Angular: Frecuencia y Fase 74

9. Demodulación FM 86

10. Introducción al Toolbox Communications 90

BIBLIOGRAFÍA 96

Mg. Pedro Freddy Huamaní Navarrete 7


Fundamentos de Telecomunicaciones Utilizando el Matlab

8 Mg. Pedro Freddy Huamaní Navarrete


Fundamentos de Telecomunicaciones Utilizando el Matlab

1. SEÑALES PERIÓDICAS Y NO PERIÓDICAS

Una señal puede representarse de diversas formas, y asimismo


describir una variedad de fenómenos físicos. De esta manera,
su representación se da en forma periódica o no periódica, y en
forma continua o discreta [1].

Señales continuas en el tiempo.

En el caso de una señal periódica y continua en el tiempo, se


cumple la siguiente definición:

f(t) = f(t + n T), tR y nZ

Donde:
T: periodo de dicha señal.
n: número entero.

Ejemplo 01: Tren de pulsos con T = 0.2 seg.


>> T = 0.2;
>> t = linspace( -0.4 , 0.6 , 800 );
>> x = 0.5 * ( square(2*pi*t*(1/T)) + 1 );
>> plot( t , x , 'LineWidth' , 4 ), % ver figura 1.1
>> axis( [ -0.4 0.6 -0.5 1.5 ] ),
>> grid
>> F = 1 / T

Figura 1.1: Señal periódica impar.

Mg. Pedro Freddy Huamaní Navarrete 9


Fundamentos de Telecomunicaciones Utilizando el Matlab

Ejemplo 02: x(t) = cos(10t) + 2cos(20t)


>> t = linspace( -0.6 , 0.6 , 1200 );
>> x = cos(10*pi*t) + 2*cos(20*pi*t);
>> plot( t , x , 'LineWidth' , 4 ) % ver figura 1.2
>> axis( [ -0.6 0.6 -3 4 ] ),
>> grid
>> T = 0.02;
>> F = 1/T; % Menor frec.

Figura 1.2: Señal periódica par.

Por otro lado, para el caso de una señal no periódica, no hay


presencia de periodo y se demuestra con los siguientes
ejemplos.

Ejemplo 03: x(t): señal no periódica


>> t = linspace( 0 , 30 , 15000 );
>> x = 5*cos( 3*t ) + 5*cos( (3 + pi)*t );
>> plot( t , x , 'LineWidth' , 4 ) ;
>> grid, axis([ 0 30 -12 12 ]) % ver figura 1.3

Ejemplo 04: x(t): señal no periódica


>> t = linspace( 0 , 30 , 15000 );
>> x = 1*cos( 2*pi*5*t ) .* exp(-0.40*t);
>> plot( t , x , 'LineWidth' , 2 ) ; grid % ver figura 1.4
>> axis( [ 0 , 15 , -1 , 1 ] )

10 Mg. Pedro Freddy Huamaní Navarrete


Fundamentos de Telecomunicaciones Utilizando el Matlab

Figura 1.3: Ejemplo de señal no periódica.

Figura 1.4: Ejemplo de señal no periódica.

Señales discretas en el tiempo.

Por otro lado, en el caso de señales discretas periódicas o no


periódicas, se consideran dos factores importantes: el periodo
de muestro y el número de bits por muestra.
El periodo de muestreo (Ts) señala el tiempo de separación
existente entre dos muestras consecutivas. Asimismo, la
frecuencia de muestreo (Fs), que es la inversa del periodo de
muestro, representa el número de muestras por segundo. Por lo
tanto, para la adecuada digitalización de una señal analógica, y

Mg. Pedro Freddy Huamaní Navarrete 11


Fundamentos de Telecomunicaciones Utilizando el Matlab

posterior recuperación, debe cumplirse el teorema de muestreo


[4]:

Fs > 2 * Fmax

Donde:
Fs: es la frecuencia de muestreo elegida.
Fmax: es la máxima frecuencia de la señal a digitalizar.

Por otro lado, el número de bits por muestra corresponde al


número de niveles de cuantización utilizados para representar
una señal discreta. Por ejemplo, al utilizar 4 bits por muestra se
genera 24 = 16 niveles de cuantización, desde el “0000”, hasta
el “1111”. A continuación se muestran algunos ejemplos.

Ejemplo 05: x(n): señal con 100 muestras/segundo


>> Fs = 100;
>> n = 0 : Fs-1;
>> F= 8;
>> x = 127 + 128*cos( 2 * pi * F * n / Fs );
>> if Fs > 2*F, disp(' cumple '), else, disp(' No cumple '), end
>> x = round( x );
>> [ max(x) min(x) ]
>> stem ( n , x ) % ver figura 1.5
>> grid

Figura 1.5: Señal discreta con Ts = 10 mSeg. y codificado con


8 bits/muestra.

12 Mg. Pedro Freddy Huamaní Navarrete


Fundamentos de Telecomunicaciones Utilizando el Matlab

Para conocer el valor numérico o amplitud de algunas muestras


de la señal digitalizada, se señala directamente el número de
muestra en la variable “x”.

>> A1 = x( 77 ) % muestra número 77.


A1 =
239

>> A2 = x( 34 ) % muestra número 34.


A2 =
45

Luego, para representar tales muestras en formato binario con


8 bits, se utiliza el comando DEC2BIN. De igual forma, para
transformar un número binario en decimal, o decimal en
hexadecimal, se utiliza los comandos, BIN2DEC y DEC2HEX,
respectivamente.

>> N1= dec2bin( A1 , 8 );


>> N2= dec2bin( A2 , 8 );

>> D1 = bin2dec(' 11110000 ');


>> H1 = dec2hex( 255 ,2 ); % Dos dígitos hexadec.

Ejemplo 06: x(n): señal con 50 muestras/segundo


>> Fs = 50;
>> n = 0 : Fs-1;
>> x = 2.5*cos( 2*pi*6*n / Fs ) + sin( 2*pi*8*n / Fs );
>> x = 2*x;
>> subplot(121)
>> stem ( n , x , 'Linewidth' , 3 ),
>> grid
>> axis( [ 0 50 -8 8 ] )

Posteriormente, se procede a graficar los 16 niveles de


cuantización sobre la señal creada. Luego, se procede a
redondear cada muestra de dicha señal con la finalidad de
alcanzar exactamente algunos de los niveles de cuantización.

>> hold on

Mg. Pedro Freddy Huamaní Navarrete 13


Fundamentos de Telecomunicaciones Utilizando el Matlab

>> for i = 7: -1 : -7
plot( n , i*ones( 1, 50 ) , 'r ' )
end
>> hold off

>> subplot(122)
>> x = round( x );
>> [ max(x) min(x) ]
>> stem ( n , x , 'Linewidth' , 3 ) % ver figura 1.6
>> hold on
>> for i = 7: -1 : -7
plot( n , i*ones( 1, 50 ) , 'r ' )
end
>> hold off
>> axis( [ 0 50 -8 8 ] )
>> grid

(a) (b)

Figura 1.6: a) Señal muestreada y b) Señal digitalizada, sobre


los 16 niveles de cuantización.

Señales con simetrías de ½ y ¼ onda.


Pertenecen al grupo de señales periódicas que permiten la
simplificación de diversos cálculos, debido a la forma como se
encuentran presentadas periódicamente. Así tenemos:

14 Mg. Pedro Freddy Huamaní Navarrete


Fundamentos de Telecomunicaciones Utilizando el Matlab

Ejemplo 07: x(t) : periódica, continua y simetría de


½ onda
>> %% f(t) = - f( t  T/2 )
>> Fs = 200;
>> t = linspace( 0 , 1 , Fs );
>> POS = 5 + 10*exp( -5*t );
>> NEG = -10*exp( -5*t ) - 5;
>> x = [ POS NEG POS NEG POS NEG ];
>> tiempo = linspace( -3 , 3 , length(x) );
>> subplot(121)
>> plot( tiempo , x , 'LineWidth' , 4 ) % ver figura 1.7
>> grid
>> axis([ -3 3 -20 20 ])

Ejemplo 08: x(t) : periódica, discreta y simetría de


¼ onda
>> %% f(t) = - f( t + T/2 ) y a la vez PAR o IMPAR
>> t = linspace( -0.5 , 0.5 , 100 );
>> x1 = square(2*pi*t*4 + pi/2 );
>> x2 = cos(2*pi*t*4);
>> x12 = x1 + x2;
>> subplot(122)
>> stem( t , x12 , 'LineWidth' , 4 ) % ver figura 1.7
>> axis( [ -0.5 0.5 -3 3 ] ) , grid

Figura 1.7: a) Señal continua con simetría de ½ onda. b) Señal


discreta con simetría de ¼ onda.

Mg. Pedro Freddy Huamaní Navarrete 15


Fundamentos de Telecomunicaciones Utilizando el Matlab

2. SISTEMAS LINEALES. FILTROS ANALÓGICOS.

Los sistemas físicos, en su sentido más amplio, son una


interconexión de componentes, dispositivos o subsistemas.
Entonces, un sistema se define como un proceso por el cual las
señales de entrada son transformadas por el sistema dando
como respuesta otra señal de salida [1]. A continuación, la
figura 2.1 muestra una representación de un sistema continuo o
discreto en forma general.

Asimismo, el sistema es considerado lineal si posee la propiedad


de la superposición. Lo cual se define de la siguiente manera:

 Ax1(t) + Bx2(t)  Ay1(t) + By2(t)


 Ax1[nTs] + Bx2[nTs]  Ay1[nTs] + By2[nTs]

Donde:
A y B son constantes complejas cualesquiera.
Ts es el periodo de muestreo de la señal discreta.

x (t) SISTEMA y (t)


CONTÍNUO /
DISCRETO
x[nTs] y[nTs]

X(t)  y(t)
x[nTs]  y[nTs]

Figura 2.1: Representación general de un sistema.

En esta sección, a manera de un caso particular, se plantea el


análisis de sistemas eléctricos conformados por elementos
pasivos y activos: filtros analógicos.

El tema de sistemas discretos, como es el caso de filtros


digitales, no es abordado por corresponder a asignaturas de
ciclos superiores. Tal es el caso de la asignatura procesamiento
digital de señales.

16 Mg. Pedro Freddy Huamaní Navarrete


Fundamentos de Telecomunicaciones Utilizando el Matlab

Filtro analógico Pasa Bajo.


El circuito eléctrico mostrado en la figura 2.2 representa a un
filtro analógico Pasa-Bajo de segundo orden.

R1 = 1 K R2 = 2 K
v1 (t)

+ +
i1 (t) i2 (t)
vi (t) vo (t)
C1 = 1 mF C2 = 5 mF
- -

Figura 2.2: Filtro Pasa-Bajo de 2do orden.

Obteniendo las ecuaciones diferenciales, y posteriormente


transformando a Laplace se llega a la función de transferencia
de dicho sistema: Vo(s) / Vi(s).
I2
V0 
sC2
1  1 1 
I 1   R2   I2
sC1  C1 s C 2 s 
1 1
Vi  R1 I 1  I1  I2
C1 s C1 s

Vo ( s) 1 / C2 

Vi ( s) R1 R2 C1 s  ( R2  R1  R1C1 / C 2 ) s  1 / C 2
2

>> C1 = 1*0.001;
>> C2 = 5*0.001;
>> R1 = 1000;
>> R2 = 2000;
>> FT = tf( [1/C2] , [ R1*R2*C1 R2+R1+R1*C1/C2 1/C2 ] )
>> bode( FT ) , grid % ver figura 2.3

Mg. Pedro Freddy Huamaní Navarrete 17


Fundamentos de Telecomunicaciones Utilizando el Matlab

Figura 2.3: Diagrama de Bode del filtro Pasa-Bajo de 2do


orden.

>> [ num , den ] = tfdata( FT );


>> num = num{1}
>> den = den{1}
>> pzmap( num , den ) % diag. de polos- ceros

También es posible diseñar un filtro Pasa-Bajo utilizando las


funciones analógicas Butterworth, Chebyshev y Elliptic.
A continuación se muestra un ejemplo de obtención de un filtro
Pasa-Bajo normalizado Butterworth; es decir, con frecuencia de
corte normalizada wo = 1 rad/seg. y orden o número de polos
igual a 4.

>> n = 4; % número de polos


>> [Z , P , K ] = buttap( n ); % retorna Ceros, Polos
>> NumN = K* poly( Z ); % y ganancia
>> DenN = poly( P );
>> pzmap( NumN , DenN )
>> bode( NumN , DenN ), grid
>> w = [ 1 10 ]; % verificando el módulo
>> H = freqs( NumN , DenN , w ); % en w=1 y 10 rad/seg.
>> 20*log10( abs(H) )

18 Mg. Pedro Freddy Huamaní Navarrete


Fundamentos de Telecomunicaciones Utilizando el Matlab

Luego, se transforma el filtro Pasa-Bajo normalizado a otro filtro


Pasa-Bajo Butterworth con wo=2100 rad/seg. Esta
transformación también es conocida como operación de
desnormalización.

>> wo = 2*pi*100;
>> [ Num1 , Den1 ] = lp2lp( NumN , DenN , wo );
>> pzmap( Num1 , Den1 )
>> bode( Num1 , Den1 ) , grid % ver figura 2.4
>> wo
wo =
628.3185

Figura 2.4: Diagrama de Bode del filtro Pasa-Bajo Butterworth


de 4to orden y frecuencia de corte Wo=2100 rad/seg.

Es así que para diseñar filtros Pasa-Alto, Pasa-Banda y Rechaza-


Banda, se parte del diseño de un filtro Pasa-Bajo para luego
transformarlo según la frecuencia de corte deseada. Más
adelante se muestran algunos ejemplos.

Filtro analógico Pasa Alto.


Transformando un filtro analógico Pasa-Bajo Butterworth
normalizado (wo=1 rad/seg.) de orden 9, a un filtro analógico
Pasa-Alto Butterworth con wo = 250 rad/seg. y el mismo
orden.
>> help lp2hp

Mg. Pedro Freddy Huamaní Navarrete 19


Fundamentos de Telecomunicaciones Utilizando el Matlab

>> wo = 2*pi*50;
>> [ z, p , k ] = buttap( 9 );
>> NumN = K* poly( Z );
>> DenN = poly( P );
>> [ Num2, Den2 ] = lp2hp( NumN , DenN , wo );
>> pzmap( Num2 , Den2 )
>> bode( Num2 , Den2 ) , grid % ver figura 2.5

Figura 2.5: Diagrama de Bode del filtro Pasa-Alto Butterworth


de 9no orden y frecuencia de corte Wo=250 rad/seg.

Por otro lado, el circuito eléctrico mostrado en la figura 2.6


representa a un filtro analógico Pasa-Alto activo y de primer
orden, cuya función de transferencia está representada por la
siguiente expresión:

Vo ( s ) R3  R2 s

Vi ( s ) R
R3 s  3
R1C

Vo ( s ) s
 K
Vi ( s )  s 
  1
 o
W 

20 Mg. Pedro Freddy Huamaní Navarrete


Fundamentos de Telecomunicaciones Utilizando el Matlab

R3  R2 R1C
K
R3
1
Wo 
R1C

C = 0.5 mF

+
-
+ R2 = 20  +
vi(t) vo(t)
R1 = 100 
- R3 = 800 
-

Figura 2.6: Diagrama circuital de Filtro Pasa-Alto de 1er orden.

>> R1 = 100;
>> R2 = 20;
>> R3 = 800;
>> C= 5/10000;
>> K = (R2 + R3)*(R1*C)/ R3;
>> Wo = 1/(R1*C) % frecuencia de corte

>> FT = K * tf( [1 0 ] , [1/Wc 1 ] )


>> bode( FT ) , grid % ver figura 2.7

Analizando de otra manera, y suponiendo que la señal analógica


x(t )  2 * cos(w1t )  10 * cos(w2t ) , está compuesta por las
frecuencias: w1=250 rad/seg. y w2=20.7 rad/seg., entonces,
se procede a filtrar dicha señal utilizando el filtro Pasa-alto.
Posteriormente, se comprueba la atenuación de la menor
frecuencia.

>> t = linspace(0,1,1000);
>> x = 2*cos(2*pi*50*t) + 10*cos(2*pi*0.7*t);

Mg. Pedro Freddy Huamaní Navarrete 21


Fundamentos de Telecomunicaciones Utilizando el Matlab

>> subplot( 2,1,1 ),


>> plot( t , x ) , grid

Figura 2.7: Diagrama de Bode del filtro Pasa-Alto de 1er orden.

>> help lsim % rpta. para entrada arbitraria


>> y = lsim( FT , x , t );
>> subplot( 2,1,2 ),
>> plot( t , y ) , grid % ver figura 2.8

Figura 2.8: a) Señal de entrada al filtro Pasa-alto. b) Señal de


salida al filtro Pasa-Alto.

22 Mg. Pedro Freddy Huamaní Navarrete


Fundamentos de Telecomunicaciones Utilizando el Matlab

Filtro analógico Pasa Banda.


Respecto al diseño de filtros analógicos Pasa Banda, también es
posible obtenerlo utilizando la función analógica Chebyshev, tipo
I o tipo II.
Por ejemplo, en la figura 2.9 se muestra las principales
características deseadas para el diseño de un filtro analógico
Pasa-Banda.

>> Wp = [20*pi 100*pi]; % frecuencias de banda pasante


>> Wa = [5*pi 120*pi]; % frecuencia de atenuación
>> Rp = -1; % ripple en la banda pasante
>> Ra = -30; % atenuación mínima en la
% banda de rechazo.

20 log10( | H(w) | )

0
-Rp

- Ra

0 Wa1 Wp1 Wp2 Wa2 rad/seg

Figura 2.9: Características del filtro Pasa-Banda a diseñar.

>> [N, Wo] = cheb1ord(Wp, Wa, abs(Rp) , abs(Ra) , 's' );


N=
7

Wo =
62.8319 314.1593

>> R = 1; % ripple pico-pico en


% banda pasante

Mg. Pedro Freddy Huamaní Navarrete 23


Fundamentos de Telecomunicaciones Utilizando el Matlab

>> [Num3 , Den3] = cheby1( N , R , Wo , 's' );


>> pzmap( Num3 , Den3 )
>> freqs( Num3 , Den3 ) % ver figura 2.10

Figura 2.10: Magnitud y fase del filtro analógico Pasa-Banda


tipo Chebyshev I, y de orden 14

Por otro lado, un filtro Pasa-banda también puede ser


representado por un circuito operacional tal como se muestra
en la figura 2.11. A continuación se procede a obtener su
respectiva función de transferencia.
R2 = 1 K

R1 = 1 K C2 = 1 µF
-
+ C1 = 0.1 mF +
+
vi(t) vo(t)
- -

Figura 2.11: Diagrama circuital de un filtro Pasa Banda de 2do


orden.

24 Mg. Pedro Freddy Huamaní Navarrete


Fundamentos de Telecomunicaciones Utilizando el Matlab

Vo ( s ) s
  R2C1
Vi ( s ) R1C1s  1R2C2 s  1

Wc1  1/(R 1C1 )


Wc 2  1/(R 2 C 2 )

>> R1 = 1000;
>> R2 = 1000;
>> C1 = 1*0.0001;
>> C2 = 1*0.000001;
>> nu = [ -R2*C1 0 ];
>> de = conv( [ R2*C2 1] , [ R1*C1 1 ] );
>> FT = tf( nu , de )
>> bode( FT ) % ver figura 2.12
>> grid
>> Fc1 = 1/(2*pi*R1*C1); % Frec. inferior en Hertz
>> Fc2 = 1/(2*pi*R2*C2); % Frec. super. en Hertz

Figura 2.12: Magnitud y fase del filtro analógico Pasa-banda de


orden 2.

Filtro analógico Rechaza o Para Banda.


Un filtro analógico Rechaza banda se puede diseñar a partir de
un filtro analógico Pasa-bajo, indicándose la frecuencia central y
el ancho de banda.

Mg. Pedro Freddy Huamaní Navarrete 25


Fundamentos de Telecomunicaciones Utilizando el Matlab

A continuación se procede a diseñar un filtro Butterworth


analógico tipo Rechaza banda de orden 6, frecuencia central de
1000 Hz y ancho de banda de 800 Hz.

>> orden = 3;
>> [ Z , P , K ] = buttap( orden );
>> Nun4 = K * poly( Z );
>> Den4 = poly( P );
>> help lp2bs % transforma a
>> wo = 2*pi*1000; % Para-Banda
>> Bw = 2*pi*800;
>> [ Nun5 , Den5 ] = lp2bs( Nun4 , Den4 , wo , Bw );
>> W = linspace( 2*pi*1 , 2*pi*4000 , 1000 );
>> [ MAG , FASE ] = bode( Nun5 , Den5 , W );
>> F = W / 2 / pi;
>> subplot(121)
>> plot( F , MAG ), grid
>> axis( [ 1 4000 0.001 1 ] )
>> xlabel(' Hz '), ylabel(' Magnitud Lineal ')
>> subplot(122)
>> plot( F , 20*log10( MAG ) ), grid % ver figura 2.13
>> axis( [ 1 4000 -60 0 ] )
>> xlabel(' Hz '), ylabel(' Magnitud(dB) ')

Figura 2.13: Magnitud y fase del filtro analógico Pasa-banda de


orden 2.

26 Mg. Pedro Freddy Huamaní Navarrete


Fundamentos de Telecomunicaciones Utilizando el Matlab

Para visualizar la magnitud del filtro para valores de frecuencias


específicas (ancho de banda y frecuencia central), se procede a
utilizar la función FREQS.

>> w = [ wo-Bw/2 wo wo+Bw/2 ];


>> [ H , W] = freqs( Nun5 , Den5 , w );
>> H = 20*log10( abs ( H ) );
>> F = W/2/pi;
>> round(F),
>> H,

También, es posible representar un filtro Rechaza-Banda a


partir de una red eléctrica conformada por elementos pasivos
(ver la figura 2.14). Por lo tanto, a continuación se muestra su
correspondiente función de transferencia después de obtener la
transformada de Laplace de las ecuaciones diferenciales que
pertenecen a dicha red.

Vo ( s) R1C1 s  1R2 C2 s  1

Vi ( s)  
R1C1 R2 C 2 s 2  R1C1  R2 C 2  R1C 2 s  1

R1 = 0.5 K

C1 = 0.5 mF
+ +
R2 = 1.5 K
vi (t) vo (t)

- C2 = 2 mF -

Figura 2.14: Diagrama circuital de Filtro Rechaza Banda de


orden 2.

Mg. Pedro Freddy Huamaní Navarrete 27


Fundamentos de Telecomunicaciones Utilizando el Matlab

>> R1 = 0.5*1000;
>> R2 = 1.5*1000;
>> C1 = 0.5*0.001;
>> C2 = 2*0.001;
>> p = [ R1*C1 1 ];
>> q = [ R2*C2 1 ];
>> Nun6 = conv( p , q );
>> Den6 = [ R1*C1*R2*C2 R1*C1+R2*C2+R1*C2 1 ];
>> bode( Nun6 , Den6 ) % ver figura 2.15
>> grid

Figura 2.15: Magnitud y fase del filtro analógico Rechaza-


banda de orden 2.

3. SERIE DE FOURIER

Serie de Fourier Trigonométrica.


Las señales periódicas pueden ser representadas en
combinaciones lineales de sinusoides con fases desplazadas,
utilizando la Serie de Fourier en forma trigonométrica [2].


g (t )  ao   an cos(2 n f o t )  bn sen(2 n f o t ) 
n 1

28 Mg. Pedro Freddy Huamaní Navarrete


Fundamentos de Telecomunicaciones Utilizando el Matlab

Donde:
t To t To
1 2
ao 
To  g (t )dt ,
t
an 
To  g (t ) cos(n w t )dt
t
o

t To
2
wo  2  f o , bn 
To  g (t )sen(n w t )dt
t
o

fo : frecuencia fundamental.
nf o : n-ésima frecuencia armónica.

Para demostrar la teoría de la Serie de Fourier, seguidamente


se grafica una señal periódica (tren de pulsos) con amplitud
igual a 5 voltios, y periodo igual a 1 mSeg. Ver la figura 3.1.

>> t = linspace(0,1,1000);
>> x= 2.5*( square(2*pi*4*t) + 1 );
>> plot( t , x ,'LineWidth' , 3 )
>> axis( [ 0 1 -0.5 6 ] )
>> grid

Figura 3.1: Tren de pulsos con periodo de 0.25 segundos o


frecuencia de 4 Hz (ciclos/segundo).

Entonces, se procede a obtener los coeficientes ao, an y bn


utilizando las respectivas expresiones matemáticas. Por tratarse
de una señal impar, el coeficiente an es igual a cero.

Mg. Pedro Freddy Huamaní Navarrete 29


Fundamentos de Telecomunicaciones Utilizando el Matlab

0.125 0.25
1 1
ao 
0.25  5dt 
0
 0dt
0.25 0.125
ao  2.5

0.125 0.25

 5sennwot dt   0sennwot dt


2 2
bn 
0.25 0
0.25 0.125


bn  1   1
n
 nw40 , wo 
2
0.25
o

De esta manera, la expresión general será:

   1  (1) n  
sen8 n t 
40
g (t )  2.5 
8
 
 
n 1  

n  
>> T = 0.25;
>> wo = 2*pi*(1/T);
>> a0 = 5/2;
>> an = 0;
>> g = 0;
>> SUMA = 100;
>> for n=1:SUMA
t = linspace( 0 , 1 , 1000);
wo = 2*pi / 0.25;
bn = 40*( 1 - (-1)^n ) / ( n* wo );
g = g + bn * sin( wo*n*t);
plot( t , g + a0 ), % ver figura 3.2
grid
pause(0.2)
end

Serie de Fourier Compleja.


También es posible representar a la señal periódica por la forma
Compleja de la Serie de Fourier [2]. Por lo tanto, se procede a
remplazar las funciones seno y coseno por su respectiva
fórmula de Euler, para luego obtener una nueva expresión.

30 Mg. Pedro Freddy Huamaní Navarrete


Fundamentos de Telecomunicaciones Utilizando el Matlab

Figura 3.2: Aproximación del tren de pulsos por la suma de


100 funciones sinusoidales.


g (t )  ao   an cos(2 n f o t )  bn sen(2 n f o t ) 
n 1


 e 2 j n fo t  e 2 j n fo t e 2 j n fo t  e 2 j n fo t 
g (t )  ao    an  bn 
n 1  2 2j 

g (t )  c e 
n  
n
2 j n fo t
,

 an , n  0

Con: cn  
 1 a  b j , n  0
 2 n n

Por lo tanto, el gráfico de magnitud de los coeficientes cn


complejos versus la frecuencia angular w, se conoce como
Espectro de Amplitud. Asimismo, al gráfico del ángulo de fase
de los coeficientes cn complejos versus la frecuencia angular w,
se conoce como Espectro de Fase.

Mg. Pedro Freddy Huamaní Navarrete 31


Fundamentos de Telecomunicaciones Utilizando el Matlab

Entonces, para el ejemplo anterior, se vuelve a graficar su


representación temporal pero esta vez utilizando menos
componentes sinusoidales. Luego, se presentan los respectivos
espectros de amplitud y fase a partir de los coeficientes cn.

>> ao = 2.5;
>> an = 0;
>> g = 0;
>> SUMA = 21;
>> for n=-SUMA:2:SUMA
t = linspace( 0 , 1 , 1000);
wo = 2*pi / 0.25;
cn = 0.5 * ( an - 5*j*( 1 - (-1)^n ) / ( n* pi ) );
g = g + cn * exp( j*wo*n*t );
plot( t , ao + real( g ) ), % ver figura 3.3
grid
pause(0.2)
end

Figura 3.3: Aproximación del tren de pulsos a partir de la Serie


Compleja de Fourier.

>> SUMA = 31;


>> n = -SUMA : SUMA;
>> a0 = 2.5;
>> an = 0;
>> bn = 5*( 1 - (-1) .^ n ) ./ ( n * pi );

32 Mg. Pedro Freddy Huamaní Navarrete


Fundamentos de Telecomunicaciones Utilizando el Matlab

>> cn = 0.5*( an - j*bn );


>> cn( SUMA + 1 ) = a0; % Valor de Cn, para n=0
>> M_cn = abs( cn ); % espectro_amp. de Cn
>> F_cn = angle( cn ); % espectro_fase de Cn
>> F_cn = F_cn * 180 / pi;
>> subplot( 121 ), stem( n , M_cn )
>> title(' Espectro de Magnitud ')
>> xlabel(' n ')
>> grid
>> subplot( 122 ), stem( n , F_cn ) % ver figura 3.4
>> grid
>> title(' Espectro de Fase ')
>> xlabel(' n ')

Figura 3.4: Izquierda: Espectro de Magnitud. Derecha:


Espectro de Fase.

En el gráfico de espectro de magnitud se puede observar


claramente las componentes de frecuencias existentes:

>> %% PARA n=0  Componente DC


>> [ n(SUMA+1) abs( M_cn( SUMA + 1 ) ) ];

>> %% Para n=1  Componente o Frecuencia Principal


>> [ n(SUMA+2) abs( M_cn( SUMA + 2 ) ) ];

Mg. Pedro Freddy Huamaní Navarrete 33


Fundamentos de Telecomunicaciones Utilizando el Matlab

>> %% PARA n=2  2da armónica


>> [ n(SUMA+3) abs( M_cn( SUMA + 3 ) ) ];

>> %% PARA n=3  3ra armónica


>> [ n(SUMA+4) abs( M_cn( SUMA + 4 ) ) ];

>> %% PARA n=4  4ta armónica


>> [ n(SUMA+5) abs( M_cn( SUMA + 5 ) ) ];

>> %% PARA n=5  5ta armónica


>> [ n(SUMA+6) abs( M_cn( SUMA + 6 ) ) ];

Y así sucesivamente para las demás armónicas.

Seguidamente se muestra un segundo ejemplo donde se


representa a una señal triangular par con sus coeficientes de
Fourier. Para ello, primero se procede a generar la señal
triangular con frecuencia de 2 Hz y amplitud de 1 voltio,
utilizando la función SAWTOOTH del Matlab. Luego, se compara
con la función conformada por los coeficientes de Fourier de
dicha señal periódica.

>> t = linspace( -0.5 , 1.5 , 200 );


>> f = 2; % 2 ciclos/segundo
>> g1 = sawtooth( 2*pi*t*f , 0.5 ); % onda triangular
>> plot( t , g1 ) % ver figura 3.5
>> grid
>> axis( [-0.5 1.5 -1.2 1.2 ] )

De esta figura puede observarse un nivel DC igual a cero, y una


característica de señal par. Por lo tanto, los coeficientes a0 y bn
son iguales a cero.

0.25 0.5

 8t  1dt   8t  3dt


1 1
0.5 0.25
ao 
0.5 0

ao  0

34 Mg. Pedro Freddy Huamaní Navarrete


Fundamentos de Telecomunicaciones Utilizando el Matlab

0.25 0.5

 8t  1 cosnwo t dt   8t  3 cosnwo t dt


2 2
0.5 0.25
an 
0.5 0

 0.4053  
an  sen 2  n 
n2 2 

Figura 3.5: Señal triangular par con periodo de 0.5 segundos.

>> an = 0;
>> bn = 0;
>> a0 = 0;
>> g = 0;
>> t = linspace(-0.5 , 1.5 , 200);
>> SUMA = 1000;
>> for n=1:SUMA,
an = -2*(0.4053)*sin(0.5*pi*n)*sin(0.5*pi*n)/(n*n);
g = an*cos(4*pi*n*t) + bn*sin(4*pi*n*t) + g;
plot( t , g + a0 , 'LineWidth' , 3 ),
grid
axis([-0.5 1.5 -1.2 1.2 ]),
pause(0.01),
end,

Luego, para visualizar la comparación entre la señal obtenida


con la función SAWTOOTH, y la obtenida a partir de los

Mg. Pedro Freddy Huamaní Navarrete 35


Fundamentos de Telecomunicaciones Utilizando el Matlab

coeficientes de Fourier, se procede a utilizar una retención de


figura con la función HOLD ON.

>> hold on
>> t = linspace(-0.5 , 1.5 , 200 );
>> plot( t , g1 , '*r' ), % ver figura 3.6
>> hold off

Figura 3.6: Aproximación de señal periódica por la suma de


1000 funciones sinusoidales.

Finalmente, se vuelve a mostrar el Espectro de Magnitud y de


Fase para este segundo ejemplo.
>> SUMA = 21;
>> n = -SUMA : SUMA;
>> a0 = 0;
>> bn = 0;
>> an = -2*(0.4053)*sin(0.5*pi*n).*sin(0.5*pi*n)./(n.*n);
>> cn = 0.5*( an - j*bn );
>> cn( SUMA + 1 ) = a0; % Valor de Cn, para n=0
>> M_cn = abs( cn ); % espectro_amp. de Cn
>> stem( n , M_cn ,'LineWidth', 3)
>> title(' Espectro de Magnitud ') % ver figura 3.7
>> xlabel(' n ')
>> ylabel(' | Cn | ')
>> grid

36 Mg. Pedro Freddy Huamaní Navarrete


Fundamentos de Telecomunicaciones Utilizando el Matlab

Figura 3.7: Espectro de Magnitud de la señal triangular


conformado por la frecuencia principal (en n=1), y demás
armónicas (para n=2, 3, 4, … , 21).

4. TRANSFORMADA DE FOURIER

En la sección anterior se trató la representación de señales


periódicas como combinaciones lineales de exponenciales
complejas, o señales sinusoidales. Por lo tanto, ahora se
extiende este concepto para el caso de señales no periódicas,
donde las exponenciales complejas se encuentran
infinitesimalmente cercanas en frecuencia, y la representación
en términos de una combinación lineal adopta la forma de una
integral en lugar de una suma [1].

Seguidamente se presenta las expresiones matemáticas para la


obtención de la Transformada Continua de Fourier (TCF), y para
la Transformada Discreta de Fourier (TDF) [7].

 

 X( jw)   x(t )e  jwt dt


 
TCF :  
 1
x(t )   X ( jw)e
jwt
dw
 2 

Mg. Pedro Freddy Huamaní Navarrete 37


Fundamentos de Telecomunicaciones Utilizando el Matlab

2 j n
 N 1
X ( K )   x[n]e
k
 N
 n 0
TDF :  N 1 2 j n
 1
 X ( k )e
k
x[n]  N
k  0, 1, 2, ... , N  1
 N k 0

Transformada Continua de Fourier


Según la expresión de la página anterior, la TCF es obtenida a
través de una integral evaluada desde menos infinito a infinito,
y conociendo la expresión matemática de la señal a analizar.
Por lo tanto, el Matlab cuenta con el Toolbox Symbolic, que
permite la obtención de la TCF en forma literal. Para ello, es
posible utilizar los comandos FOURIER e INT para la respectiva
evaluación.

Asimismo, se resalta que el espectro de Fourier de señales no


periódicas es continuo, mientras que el de señales periódicas es
discreto. Tal como se demostró con la Serie de Fourier. A
continuación algunos ejemplos del cálculo de la TCF:

Ejemplo 01: t
x1 (t )  cos(5t ) y x1 (t )  3 sin( )
2
>> t = linspace( 0 , 1 , 100);
>> x1 = cos( 5* t );
>> plot( t , x1 )
>> syms t w % declaración de variab. literales
>> x1 = cos(5*t );
>> TX1 = fourier( x1 , w );
TX1 =
pi*(dirac( w - 5 ) + dirac( w + 5 ))

Este resultado es del tipo real y representa a dos impulsos


desfasados en: w=-5 y w=5. A continuación se muestra el
gráfico de la TCF de esta señal real.

>> w = -10 : 10;


>> TX1 = pi * [ zeros(1,5) 1 zeros(1,9) 1 zeros(1,5) ];
>> stem( w, TX1 ),
>> grid % ver figura 4.1

38 Mg. Pedro Freddy Huamaní Navarrete


Fundamentos de Telecomunicaciones Utilizando el Matlab

Figura 4.1: TCF de la señal x1(t) real.

En el caso de una señal SENO, el resultado de la TCF es


complejo. Asimismo, también es posible obtener la TCF inversa
haciendo uso del comando IFOURIER. A continuación se
muestra el ejemplo.

>> syms t w % declaración de variab.


>> x1 = 3*sin(0.5*t ); % literales
>> TX1 = fourier( x1 , w );
TX1 =
(-3)*pi*i*(dirac(w - 1/2) - dirac(w + 1/2))

>> w = -10: 0.5 : 10;


>> [a1, b1] = find(w == -0.5);
>> [a2, b2] = find(w == 0.5);
>> tx1 = [ zeros(1,19) 3*pi 0 -3*pi zeros(1,19) ];
>> stem( w , tx1 ) % ver figura 4.2
>> text( 0.7 , -3*pi , ' -3*pi*j ' )
>> text( -0.3 , 3*pi , ' 3*pi*j ' )

>> help ifourier


>> x1_inv = ifourier( TX1 , t );
>> x1 = simplify( x1_inv );
>> pretty( x1 )

Mg. Pedro Freddy Huamaní Navarrete 39


Fundamentos de Telecomunicaciones Utilizando el Matlab

Figura 4.2: Transformada de Fourier de señal SENO.

Ejemplo 02: x2 (t )  e 2t  (t )


Obteniendo la TCF de la señal x2(t) pero partiendo de la
expresión matemática de Fourier.

>> syms t w
>> x2 = exp(-2*t);
>> limINF = 0; % por utilizarse un escalón.
>> limSUP = 10^8; % simulando a infinito.
>> TX2 = int( x2 * exp(-j*w*t) , t , limINF , limSUP );
>> pretty( TX2 )

(exp(- 200000000 - w 100000000 j ) - 1) (w + 2 j ) j


--------------------------------------------------------------
2
w +4

Evaluando y simplificando el exponencial, la expresión anterior


queda reducida a:

0  1w  2 j  j  0  1w  2 j  j  1
w2  4 w  2 j w  2 j  2  jw

40 Mg. Pedro Freddy Huamaní Navarrete


Fundamentos de Telecomunicaciones Utilizando el Matlab

Puesto que la Transformada de Fourier tiene valor complejo,


entonces se expresa TX2(jw) en términos de su magnitud y de
su fase.

>> w = linspace( - 4*pi , 4*pi , 1000 );


>> TX2 = 1 ./ ( 2 + j*w );
>> MTX2 = abs( TX2 );
>> FTX2 = angle( TX2 ) * 180 / pi;
>> subplot(121), plot( w , MTX2 ) % ver figura 4.3
>> grid, axis( [ -4*pi 4*pi 0 0.6] )
>> title(' Magnitud ')
>> xlabel(' w[rad/seg]: -4pi a 4pi ')
>> ylabel(' | TX2(jw) | ')
>> subplot(122), plot( w , FTX2 ) , grid,
>> title(' Fase ')
>> xlabel(' w ') , ylabel(' ANG TX2(jw) ')

Ejemplo 03: 1, t  4


x3 (t )  
0, t  4
Obteniendo la TCF de la señal x3(t) pero partiendo de la
expresión matemática de Fourier, para luego graficar la
magnitud y la fase.

Figura 4.3: Magnitud y Fase de la TCF de la señal x2(t).

Mg. Pedro Freddy Huamaní Navarrete 41


Fundamentos de Telecomunicaciones Utilizando el Matlab

>> t = -8 : 0.1 : 8 ;
>> tam = length(t);
>> [a1 , b1] = find( t == -4);
>> [a2 , b2] = find( t == 4);
>> x3 = [ zeros(1,40) ones(1,81) zeros(1,40) ];
>> subplot(121)
>> plot( t , x3 , 'LineWidth' ,3 ), grid
>> axis( [ - 8 8 -0.5 1.5 ] )
>> xlabel(' Tiempo: t ')
>> title(' Señal Pulso Rectangular ')
>> syms t
>> TX3 = int( 1*exp(-w*j*t) , t , -4 , 4 );
>> pretty( TX3 )
2 sin(4 w)
----------
W

>> w = linspace( - 3*pi , 3*pi , 1000 );


>> TX3 = 2 * sin( 4*w ) ./ w ;
>> subplot(122)
>> plot( w , TX3 ) % ver figura 4.4
>> grid,
>> title(' Transformada de Fourier '),
>> xlabel(' w ') , ylabel(' TX3(jw) ')

Figura 4.4: Izquierda: Señal continua x3(t) Derecha:


Transformada de Fourier de la señal x3(t).

42 Mg. Pedro Freddy Huamaní Navarrete


Fundamentos de Telecomunicaciones Utilizando el Matlab

Transformada Discreta de Fourier.


La obtención de los coeficientes de la Transformada Discreta de
Fourier (TDF), se logra con el comando FFT. Y, para el caso de
la transformada inversa, se utiliza el comando IFFT. Entonces, a
continuación se muestra algunos ejemplos del uso de la TDF
sobre señales periódicas, y luego sobre señales no periódicas. El
comando FFT se refiere a la Transformada Rápida de Fourier, el
cual corresponde a un algoritmo para la obtención de la TF en
forma rápida.

Ejemplo 01: Señal periódica de 60 Hz.


>> Ts = 1*0.001; % Ts = 1 mSeg.
>> Fs = 1 / Ts;
>> F = 60;
>> n = 0 : Fs-1;
>> x1 = cos( 2*pi*F*n / Fs );
>> subplot( 1,2,1 )
>> stem( n , x1 ), grid
>> axis([ 0 100 -2 2 ])
>> N = 1024; % número de muestras
>> TX1 = fft( x1 , N ); % para el cálculo de TF

>> MTX1 = abs( fftshift( TX1 ) ); % desplazamiento


>> F = linspace( -Fs/2 , Fs/2 , N );
>> subplot( 1,2,2 ),
>> stem( F, MTX1 ),
>> grid % ver figura 4.5

Ejemplo 02: señal cuadrada de 100 Hz.


>> Ts = 0.5*0.001; % Ts=0.5 mSeg.
>> Fs = 1 / Ts;
>> F = 100;
>> n = 0 : Fs-1;
>> x5 = square( 2*pi*F*n / Fs );
>> subplot( 1,2,1 )
>> stem( n , x5 )
>> axis([ 200 280 -1.2 1.2 ])
>> N = 1024;
>> TX5 = fft( x5 , N );
>> MTX5 = fftshift( TX5 );

Mg. Pedro Freddy Huamaní Navarrete 43


Fundamentos de Telecomunicaciones Utilizando el Matlab

Figura 4.5: Izquierda: señal discreta x4(nTs). Derecha: módulo


de la TDF de x4(nTs), con una componente de frecuencia en 60
Hz.

>> MTX5 = abs( MTX5 );


>> F = linspace( -Fs/2 , Fs/2 , N );
>> subplot( 1,2,2 )
>> stem( F, MTX5 ) % ver figura 3.13

Figura 4.6: Izq. Señal discreta x5(nTs) Der. Módulo de la TDF


de x5(nTs), con componentes de frecuencia en: 100, 300, 500,
700 y 900 Hz.

44 Mg. Pedro Freddy Huamaní Navarrete


Fundamentos de Telecomunicaciones Utilizando el Matlab

Ejemplo 03: señal pulso rectangular

1, nTs  4
x6 nTs   
0, nTs  4

>> Ts = 100*0.001; % Ts=100 mSeg.


>> Fs = 1 / Ts;
>> n = linspace( 0 , 8 , 8*Fs ); % 8 seg. de duración
>> tam = length( n );
>> x6 = [ ones( 1 , tam/2 ) zeros( 1 , tam/2 ) ];
>> subplot(121)
>> xlabel(' Tiempo Discreto ')
>> stem( n , x6 )

>> N = 256;
>> TX6 = fft( x6 , N );
>> TX6 = fftshift ( TX6 );
>> MTX6 = abs( TX6 ) ;
>> F = linspace( -Fs/2 , Fs/2 , N );
>> subplot(122), % ver figura 4.7
>> xlabel(' Frecuencia ')
>> stem( F , real(TX6) )

Figura 4.7: Izq. Señal discreta x6(nTs) Der. Módulo de la TDF


de x6(nTs), con una componente de frecuencia en 60 Hz.

Mg. Pedro Freddy Huamaní Navarrete 45


Fundamentos de Telecomunicaciones Utilizando el Matlab

 nTs
Ejemplo 04: señal no periódica: x7 nTs   e 2
 nTs 
>> Fs = 100; % 100 muestras/seg.
>> Ts = 1/Fs;
>> n = 0 : Fs-1;
>> x7 = exp(-0.5*n*Ts);
>> N = 1024;
>> TX7 = fftshift( fft( x7 , N ) );
>> MTX7 = abs( TX7 );
>> FTX7 = angle( TX7 ) * 180/pi;
>> F = linspace( -Fs/2 , Fs/2 , N );

>> subplot(121) , stem( n/Fs , x7 ) % ver figura 4.8


>> subplot(122) , stem( F , MTX7 )

Figura 4.8: Izquierda: señal discreta x7(nTs) Derecha: módulo


de la TDF de x7(nTs).

5. DENSIDAD ESPECTRAL DE POTENCIA Y DE


ENERGÍA

La densidad espectral de potencia (PSD) es bastante útil para


describir la manera en que el contenido de potencia, de las
señales y el ruido, es afectado por filtros y otros dispositivos en

46 Mg. Pedro Freddy Huamaní Navarrete


Fundamentos de Telecomunicaciones Utilizando el Matlab

los sistemas de comunicación. A continuación se muestra la


expresión matemática que representa a la PSD [5], así como
dos ejemplos de estimación de la PSD a partir de dos métodos
diferentes. Cabe resaltar que algunas señales (por ejemplo, las
periódicas) tienen energía infinita y por lo tanto se les conoce
como señales de potencia.

 X ( w)2 
PSD  lim  

T  T 

>> Fs = 1000;
>> t = linspace(0 , 0.75 , 0.75*Fs );
>> x = cos(2*pi*t*100) + randn(size(t));

>> % SE CREA EL ESTIMADOR ESPECTRAL PERIODOGRAMA


>> h = spectrum.periodogram;
>> H_PSD = psd( h , x , 'Fs' , Fs );
>> plot( H_PSD ) % ver figura 5.1
>> xlabel(' Frecuencia (Hz) ')
>> ylabel(' Potencia / Frecuencia (db / Hz) ')
>> title(' Estimación de la Densidad Espectral de Potencia ')

Figura 5.1: Representación de la PSD estimada via el método


del periodograma.

Mg. Pedro Freddy Huamaní Navarrete 47


Fundamentos de Telecomunicaciones Utilizando el Matlab

>> Fs = 1000;
>> t = linspace(0 , 0.75 , 0.75*Fs );
>> x = cos(2*pi*t*100) + randn(size(t));
>> % SE CREA EL ESTIMADOR ESPECTRAL WELCH
>> h = spectrum.welch;
>> H_PSD = psd( h , x , 'Fs' , Fs );
>> plot( H_PSD ) % ver figura 5.2
>> xlabel(' Frecuencia (Hz) ')
>> ylabel(' Potencia / Frecuencia (db / Hz) ')
>> title(' Estimación de la Densidad Espectral de Potencia ')

Figura 5.2: Representación de la PSD estimada a través del


método Welch’s.

Por otro lado, el concepto de energía de una señal es válido sólo


si el área bajo x2(t) es finita. Todas las señales que cumplen
esta condición se llaman señales de energía. Por lo tanto,
cuando expresamos la energía en términos del espectro, la
denominamos densidad espectral de energía (ESD) [5]. A
continuación un ejemplo para el caso de una señal no periódica.

ESD  X (w)
2

>> n = 0 : 20 ;
>> N = length(n);
>> x = 0.4 .^n;

48 Mg. Pedro Freddy Huamaní Navarrete


Fundamentos de Telecomunicaciones Utilizando el Matlab

>> subplot( 211 ),


>> stem( n , x ), grid
>> xlabel(' Tiempo discreto < 0 a 20 >')
>> ylabel(' x[n] ')
>> title(' SEÑAL DISCRETA NO PERIÓDICA ' )

>> ESDx = fft( x , N );


>> Fs = 2*pi;
>> ESDx = fftshift( ESDx );
>> mESDx = abs( ESDx ) .^2;
>> F = linspace( -Fs/2 , Fs/2 , N );
>> subplot(212),
>> plot( F , mESDx )
>> grid % ver figura 5.3
>> xlabel(' Frecuencia < -PI a PI >')
>> ylabel(' | X(w) | ^2 ')
>> title(' DENSIDAD ESPECTRAL DE ENERGÍA ' )

Figura 5.3: Arriba: señal no periódica de tiempo discreto.


Abajo: densidad espectral de energía de la señal no periódica de
tiempo discreto.

Teorema de Parseval.
A la relación entre la energía de una señal x(t) en el dominio del
tiempo y en el dominio de la frecuencia, se le conoce como el
Teorema de Parseval [5]. Seguidamente la expresión
matemática.

Mg. Pedro Freddy Huamaní Navarrete 49


Fundamentos de Telecomunicaciones Utilizando el Matlab

 
1


x(t ) 2 dt 
2 

X ( w) 2 dw

Este teorema resulta ser un método alternativo de evaluar la


energía que utiliza la descripción del dominio de la frecuencia en
lugar de la definición del dominio del tiempo. Para el caso de
señales de tiempo discreto, se utiliza la expresión siguiente que
a su vez da origen a una nueva relación que utiliza los
coeficientes complejos de Fourier c[n] [4].

 
1
 x[n]  
2
X ( w) 2 dw
n -  2 

T /2 
1
 x(t ) 2 dt   c[n]
2

T T / 2 n - 

>> % SEGUIDAMENTE SE REPRESENTA UN EJEMPLO


>> % UTILIZANDO UNA SEÑAL CUADRADA DE 1 HZ
>> Fs = 500;
>> t = linspace(-1 , 2 , 3*Fs );
>> x = square(2*pi*1*t);
>> plot( t , x , 'linewidth' , 3 )
>> grid
>> an = 0; % por ser señal par
>> ao = 0; % no tiene nivel DC
>> syms n
>> bn = (2./(n*pi)) .* ( 1 - (-1).^n); % coef. bn obtenido
>> cn = (0.5) * ( an - j*bn);
>> Acn = abs( cn ); % Absoluto: | cn |
>> pretty( Acn )
| n |
|(-1) - 1|
-----------
PI |n|

>> % AL DESARROLLAR LA SUMATORIA, PARA “n” IMPAR


>> % EL NUMERADOR SIEMPRE SERÁ “2”. AL ELEVAR AL

50 Mg. Pedro Freddy Huamaní Navarrete


Fundamentos de Telecomunicaciones Utilizando el Matlab

>> % CUADRADO Y DUPLICAR LA SUMATORIA POR EL


>> % VALOR ABSOLUTO DE “cn”, SE TRANSFORMA EN:
>> syms n
>> CN = ((2/pi)^2 )*2/n/n;
>> suma = 0;
>> for n = 1:2:10001
suma = subs( CN , n ) + suma;
end
>> RESPUESTA_1 = suma;

>> % LO MISMO SE OBTIENE AL EVALUAR LA INTEGRAL


>> % DE x(t) ENTRE –T/2 y T/2.
>> F = 1;
>> T = 1/F;
>> sym -1
>> MedioP1 = int( ans*ans , -T/2 , 0 );
>> sym 1
>> MedioP2 = int( ans*ans , 0 , T/2 );
>> RESPUESTA_2 = (1/T)*( MedioP1 + MedioP2 );

Entonces, RESPUESTA_1 = 1.0000 y RESPUESTA_2 = 1.


Próximos entre sí.

6. MODULACIÓN EN AMPLITUD (AM)

La modulación es un proceso que ocasiona un desplazamiento


del rango de frecuencias de una señal, con la finalidad de
obtener ciertas ventajas en la transmisión. Por lo tanto, en una
modulación en amplitud, la amplitud de una portadora
sinusoidal de alta frecuencia se varía en proporción a la señal de
banda base [3].

Doble banda lateral con supresión de portadora (DBL-SP)


Se obtiene multiplicando directamente la señal de banda base
(señal moduladora) con una señal de portadora, de frecuencia
wp suficientemente mayor a la frecuencia de la señal
moduladora. Ver la figura 6.1.

Mg. Pedro Freddy Huamaní Navarrete 51


Fundamentos de Telecomunicaciones Utilizando el Matlab

sm (t )  SM (w)

sm (t ) * A p cos(w p t) 
Ap
2
S M (w  wp )  S M (w  wp 

sam _ DBL  SP (t )  Ap sm (t ) * cos( w p t )

Donde:
sm(t) : señal moduladora
SM(w) : espectro de frecuencia de la señal moduladora

Sm(t) X SAM_DBL-SP (t)

~
cos(2Fpt)

Figura 6.1: Diagrama de bloques de una modulación AM de


DBL-SP.

Ejemplo 01: Señal moduladora con tono de 100 Hz y


amplitud de 3 voltios. Señal de portadora con frecuencia de 4
KHz y amplitud de 12 voltios. Luego, se realiza una
multiplicación directa para obtener la señal modulada en AM.

>> Fs = 10000;
>> t = linspace( 0 , 1 , Fs );
>> Sm = 3*cos(2*pi*100*t);
>> Sp = 12*cos(2*pi*4000*t);
>> Sam = Sm .* Sp ;

Luego, se muestra la señal modulada en AM en el dominio


temporal, y posteriormente en el dominio frecuencial, haciendo
uso de la transformada discreta de Fourier.

52 Mg. Pedro Freddy Huamaní Navarrete


Fundamentos de Telecomunicaciones Utilizando el Matlab

>> subplot(2,1,1), plot( t , Sam )


>> grid, xlabel('Tiempo')
>> axis( [ 0 0.05 -40 40 ] )
>> N = Fs;
>> SAM = fft( Sam , N );
>> SAM = abs( fftshift( SAM )) / N;
>> F = linspace( -Fs/2 , Fs/2 , N );
>> subplot(2,1,2), plot( F , SAM ) % ver figura 6.2
>> grid, xlabel('Frecuencia')

Figura 6.2: (a) Gráfico temporal de la modulación AM DBL-SP.


(b) Espectro de frecuencia (magnitud).

De esta manera, el ancho de banda resultante se obtiene


restando la mayor frecuencia de la menor:

>> maxF = 4000 + 100;


>> minF = 4000 - 100;
>> Bw = maxF - minF;

Ejemplo 02: Modulación AM de una onda ECG generada


desde el Matlab. Se considera la duración de un latido cardiaco
como 0.86 segundos, en relación a una frecuencia estándar de
70 latidos por minuto.

>> help ecg


>> muestras = 4000;

Mg. Pedro Freddy Huamaní Navarrete 53


Fundamentos de Telecomunicaciones Utilizando el Matlab

>> Sm = ecg( muestras );


>> t = linspace( 0 , 0.86 , muestras );
>> subplot( 2,2,1 )
>> plot( t , Sm ) % ver figura 6.3
>> grid,
>> xlabel(' Sm(t) : Tiempo')

Luego, se procede a obtener el espectro de frecuencia en


magnitud de la señal moduladora, y de la modulación AM DBL-
SP después de realizarse el producto se señales
correspondientes.

>> Fs = muestras;
>> N = muestras;
>> SM = fft( Sm , N );
>> SM = abs( fftshift( SM )) / N;
>> F = linspace( -Fs/2 , Fs/2 , N );
>> subplot(2,2,2)
>> plot( F , SM )
>> grid
>> xlabel('SM(f) : Espectro de Frecuencia')
>> axis([-250 250 0 0.06 ])

>> Sp = 4*cos(2*pi*1140*t);
>> Sam = Sm .* Sp ;
>> subplot( 2,2,3 ),
>> plot( t , Sam ),
>> grid
>> xlabel(' Sam(t) : Tiempo')

>> SAM = fft( Sam , N );


>> SAM = abs( fftshift( SAM )) / N;
>> F = linspace( -Fs/2 , Fs/2 , N );
>> subplot(2,2,4)
>> plot( F , SAM ) % Banda Lateral Sup. e Inf.
>> grid
>> xlabel('SAM(f) : Espectro de Frecuencia')
>> axis([ -1350 1350 0 0.15 ])

54 Mg. Pedro Freddy Huamaní Navarrete


Fundamentos de Telecomunicaciones Utilizando el Matlab

Figura 6.3: (a) Representación temporal de señal ECG. (b)


Espectro de frecuencia en magnitud de señal ECG. (c)
Modulación AM DBL-SP de señal ECG. (d) Espectro de
frecuencia en magnitud de modulación AM DBL-SP.

Doble banda lateral (DBL)


Se obtiene multiplicando una señal de portadora con una de
banda base sumada a un nivel DC. O también, tal como lo
señala el diagrama de bloques de la figura 6.4.

sm (t )  SM (w)

A p 
 sm (t ) * cos(w p t) 
1
2
   
S M ( w  w p )  S M ( w  w p  Ap  w  w p    w  w p 

sam _ DBL (t )  Ap cos( w p t )  sm (t ) * cos( w p t )

Ejemplo 01: Señal moduladora compuesta por dos tonos: 50


Hz y 25 Hz, con amplitudes de 6 y 8 voltios, respectivamente; y
una señal de portadora con frecuencia de 800 Hz con amplitud
de a) 26 voltios, b) 10 voltios, y c) 2 voltios. A continuación se
procede a realizar la modulación AM de DBL.

>> Fs = 5000;
>> t = linspace( 0 , 1 , Fs );
>> Sm = 6*cos(2*pi*50*t) + 8*cos(2*pi*20*t);

Mg. Pedro Freddy Huamaní Navarrete 55


Fundamentos de Telecomunicaciones Utilizando el Matlab

Sm(t) X + SAM_DBL (t)

~
Ap
cos(2Fpt)

Figura 6.4: Diagrama de bloques de una modulación AM de


DBL.

>> % a) Primer caso: Sub-modulación ( m < 1)


>> Ap = 26;
>> Sp = cos(2*pi*800*t) ;
>> Sam1 = ( Sm + Ap) .* Sp ;

Seguidamente se obtiene el índice de modulación y se grafica


los primeros 200 milisegundos de la señal modulada.

>> m1 = power(6/Ap,2);
>> m2 = power(8/Ap,2);
>> m = sqrt( m1 + m2 );
>> subplot(3,1,1)
>> plot( t(1:5000*0.2) , Sam1(1:5000*0.2) )
>> grid
>> xlabel(' Tiempo ')

>> % b) Segundo caso: modulación igual a 1


>> Ap = 10;
>> Sp = cos(2*pi*800*t) ;
>> Sam2 = ( Sm + Ap) .* Sp ;
>> m = sqrt( power(6/Ap,2) + power(8/Ap,2) );
>> subplot(3,1,2)
>> plot( t(1:5000*0.2) , Sam2(1:5000*0.2) )
>> grid
>> xlabel(' Tiempo ')

56 Mg. Pedro Freddy Huamaní Navarrete


Fundamentos de Telecomunicaciones Utilizando el Matlab

>> % c) Tercer caso: Sobre-modulación ( m > 1 )


>> Ap = 2;
>> Sp = cos(2*pi*800*t) ;
>> Sam3 = ( Sm + Ap) .* Sp ;
>> m = sqrt( power(6/Ap,2) + power(8/Ap,2) );
>> subplot(3,1,3)
>> plot(t(1:5000*0.2) , Sam3(1:5000*0.2)) % fig. 6.5
>> grid
>> xlabel('Tiempo')

Figura 6.5: Representación temporal de una modulación AM


DBL a) m < 1. b) m = 1. c) m > 1.

Posteriormente, se procede a graficar la señal modulada en AM


DBL en el dominio frecuencial (para el rango de -1KH a 1KHz),
para el caso de un índice de modulación menor y mayor a 1. En
dicha modulación es posible observar las bandas laterales
superiores: 800+20 y 800+50, e inferiores: 800-20 y 800-50, y
asimismo la señal de portadora en 800 Hz.

>> N = 5000;
>> Fs = N;
>> SAM1 = fft( Sam1 , N );

Mg. Pedro Freddy Huamaní Navarrete 57


Fundamentos de Telecomunicaciones Utilizando el Matlab

>> fase_SAM1 = angle( SAM1 ); % fase


>> SAM1 = fftshift( SAM1 ) / N;
>> SAM1 = abs( SAM1 );
>> F = linspace( -Fs/2 , Fs/2 , N );
>> subplot(211)
>> plot( F , SAM1 )
>> grid
>> xlabel('Frecuencia (Hz)')
>> ylabel(' Espectro de Sub modulación ')
>> axis( [-1000 1000 0 10 ])

>> SAM3 = fft( Sam3 , N );


>> fase_SAM3 = angle( SAM3 ); % fase
>> SAM3 = fftshift( SAM3 ) / N;
>> SAM3 = abs( SAM3 );
>> F = linspace( -Fs/2 , Fs/2 , N );
>> subplot(212)
>> plot( F , SAM3 ) % ver figura 6.6
>> grid
>> xlabel('Frecuencia (Hz)')
>> ylabel(' Espectro de Sobre modulación ')
>> axis( [-1000 1000 0 10 ])

Figura 6.6: Arriba: Espectro de frecuencia de una modulación


AM DBL (m<1). Abajo: Espectro de frecuencia de una
modulación AM DBL (m>1)

58 Mg. Pedro Freddy Huamaní Navarrete


Fundamentos de Telecomunicaciones Utilizando el Matlab

El ancho de banda se obtiene restando la mayor frecuencia de


la menor:

>> maxF = 800 + 50;


>> minF = 800 - 50;
>> Bw = maxF - minF

Doble banda lateral única (BLU)


Corresponde al caso de modulación AM en donde se transmite
solamente una banda lateral. De esta manera se requiere sólo
de la mitad del ancho de banda de una modulación AM DBL.

Existen dos métodos para la generación de una modulación


BLU. El primer método utiliza filtros de corte exacto para
eliminar la banda lateral indeseable, y el segundo utiliza
circuitos de corrimiento de fase para lograr el mismo objetivo.
Además, también es considerado el método de Weaver [3].

Método de desviación de fase


Es un método indirecto para generar señales de BLU a partir de
la desviación del espectro de fase de la señal de portadora y de
la señal modulante [3]. Luego se modula en AM DBL-SP, y se
finaliza con una suma o resta de ambos resultados, según la
banda lateral a desear: superior o inferior.

Figura 6.7: Diagrama de bloques del método de desviación de


fase.

Mg. Pedro Freddy Huamaní Navarrete 59


Fundamentos de Telecomunicaciones Utilizando el Matlab

El diagrama de bloques de la figura 6.7 muestra una


representación de este método de desviación de fase. Donde el
bloque de desfasaje de -90° tiene como función de
transferencia H(w), la cual está compuesta por la función signo.

De esta manera, si una señal Sm(t) se hace pasar a través de


este bloque, se obtiene su respectiva Transformada de Hilbert,
SmH(t). La Transformada de Hilbert es obtenida a través del
comando HILBERT.

H (w)  - j sgn (w)


 j
  j  1e 2 , w0
H ( w)   
 j  1e j 2 , w0

La función signo se obtiene y grafica utilizando el comando


SIGN del Matlab. Luego, el módulo y fase de H(w) será:

>> t = linspace( -5 , 5 , 300 );


>> f = sign( t );
>> figure(1)
>> plot( t , f ) % función SIGNO

>> H = -j * f;
>> mH = abs( H );
>> fH = angle( H ) *180/pi;
>> figure(2) % modulo y fase H(w)
>> subplot( 211 ), plot( mH )
>> subplot( 212 ), plot( fH )

A continuación un ejemplo de la obtención de la transformada


de Hilbert con ayuda del Matlab.

>> t = linspace( 0 , 1, 100 );


>> x = cos(2*pi*t*3);
>> y = hilbert( x );
>> xh = imag( y ); % Transf. de Hilbert

60 Mg. Pedro Freddy Huamaní Navarrete


Fundamentos de Telecomunicaciones Utilizando el Matlab

>> subplot(211), plot( t , x );


>> title(' Onda Coseno ')
>> subplot(212), plot( t , xh ); % ver figura 6.8
>> title(' Onda Seno (coseno con fase: –pi/2) ')
>> axis([ 0 1 -1 1 ])

Figura 6.8: Arriba: señal coseno original. Abajo: transformada


de Hilbert de la señal coseno, que representa a su vez a una
onda seno.

Seguidamente se muestra dos ejemplos de modulación AM-BLU.

Ejemplo 01: modulación de tono múltiple


>> Fs = 12000;
>> t = linspace( 0 , 1 , Fs );
>> Sp = cos(2*pi*5000*t);
>> Sm = cos(2*pi*200*t)+ cos(2*pi*400*t)+cos(2*pi*800*t);
>> sA = Sp .* Sm;
>> Smh = imag( hilbert( Sm ) ) ;
>> sB = Smh;
>> Sph = imag( hilbert( Sp ) );
>> sC = sB .* Sph;
>> BLsup = sA - sC; % BLU - superior
>> BLinf = sA + sC; % BLU - inferior

>> N = 1024;
>> SM = abs( fft( Sm , N ) );

Mg. Pedro Freddy Huamaní Navarrete 61


Fundamentos de Telecomunicaciones Utilizando el Matlab

>> SM = fftshift( SM );
>> F= linspace( - Fs/2 , Fs/2 , N );
>> subplot(311)
>> plot( F , SM )
>> title(' Señal Modulante ')

>> T_BLsup = abs( fft( BLsup , N ) );


>> T_BLsup = fftshift( T_BLsup );
>> F= linspace( - Fs/2 , Fs/2 , N );
>> subplot(312)
>> plot( F , T_BLsup )
>> title(' Banda Lateral Superior ')
>> axis([ -6000 6000 0 600 ])

>> T_BLinf = abs( fft( BLinf , N ) );


>> T_BLinf = fftshift( T_BLinf );
>> F= linspace( - Fs/2 , Fs/2 , N );
>> subplot(313)
>> plot( F , T_BLinf ) % ver figura 6.9
>> title(' Banda Lateral Inferior ')
>> axis([ -6000 6000 0 600 ])
>> xlabel(' Frecuencia (Hz) ')

Figura 6.9: Módulo del espectro de frecuencia. a) Señal


modulante tono múltiple. b) Banda lateral superior. c) Banda
lateral inferior.

62 Mg. Pedro Freddy Huamaní Navarrete


Fundamentos de Telecomunicaciones Utilizando el Matlab

Ejemplo 02: modulación de señal ECG.


>> Fs = 1000; N = power( 2 , 10 );
>> t = linspace( 0 , 1 , Fs );
>> Sp = cos(2*pi*400*t);
>> Sm = ecg( Fs ); % señal de ECG
>> %plot( t , Sm );
>> sA = Sp .* Sm;
>> Smh = imag( hilbert( Sm ) ) ; sB = Smh;
>> Sph = imag( hilbert( Sp ) ); sC = sB .* Sph;
>> BLsup = sA - sC; % BLU - superior
>> BLinf = sA + sC; % BLU - inferior

>> SM = abs( fft( Sm , N ) );


>> SM = fftshift( SM );
>> F= linspace( - Fs/2 , Fs/2 , N );
>> %plot( F , SM )

>> T_BLsup = abs( fft( BLsup , N ) );


>> T_BLsup = fftshift( T_BLsup );
>> F= linspace( - Fs/2 , Fs/2 , N );
>> subplot(312), plot( F , T_BLsup )
>> title(' Banda Lateral Superior ')

>> T_BLinf = abs( fft( BLinf , N ) );


>> T_BLinf = fftshift( T_BLinf );
>> F= linspace( - Fs/2 , Fs/2 , N );
>> subplot(313), plot( F , T_BLinf )
>> title(' Banda Lateral Inferior ')
>> xlabel(' Frecuencia (Hz) ') % ver figura 6.10

Método de filtrado selectivo


En este método, una señal DBL-SP se hace pasar a través de un
filtro de corte exacto para eliminar la señal indeseable, tal como
se observa en la figura 6.11. A continuación se representa un
ejemplo de modulación de tono múltiple.

>> Fs = 30000;
>> t = linspace( 0 , 1 , Fs );
>> Ap = 4;
>> Sp = Ap * cos(2*pi*8000*t);

Mg. Pedro Freddy Huamaní Navarrete 63


Fundamentos de Telecomunicaciones Utilizando el Matlab

>> Sm = 2*cos(2*pi*400*t) + cos(2*pi*600*t);

Figura 6.10: Módulo del espectro de frecuencia. a) Señal


modulante de ECG. b) Banda lateral superior. c) Banda lateral
inferior.

Figura 6.11: Diagrama de bloques del método de filtrado


selectivo

>> Sam = Sp .* Sm;


>> F= linspace( -Fs/2 , Fs/2 , N );
>> SAM = abs( fft(Sam,N));
>> SAM = fftshift( SAM );
>> subplot( 311 ),

64 Mg. Pedro Freddy Huamaní Navarrete


Fundamentos de Telecomunicaciones Utilizando el Matlab

>> plot( F , SAM )


>> title(' Señal AM antes de aplicar el filtro Pasa-banda ')

>> orden = 6;
>> Fcorte1 = [ 8000 9000 ] / (Fs/2);
>> [ Nbanda1 , Dbanda1 ] = butter( orden , Fcorte1 );
>> H1 = freqz( Nbanda1 , Dbanda1 , N , 'whole' , Fs );
>> H1 = fftshift( H1 );
>> %Representa el módulo del filtro Pasa-banda 1
>> %plot( F , 20*log10( abs( H1 ) ) )

>> Fcorte2 = [ 7000 8000 ] / (Fs/2);


>> [ Nbanda2 , Dbanda2 ] = butter( orden , Fcorte2 );
>> H2 = freqz( Nbanda2 , Dbanda2 , N , 'whole' , Fs );
>> H2 = fftshift( H2 );
>> %Representa el módulo del filtro Pasa-banda 2
>> %plot( F , 20*log10( abs( H2 ) ) )
>> BLsup = filter( Nbanda1 , Dbanda1 , Sam );
>> BLinf = filter( Nbanda2 , Dbanda2 , Sam );
>> TBLsup = fftshift( fft( BLsup , N ) );
>> TBLsup = abs( TBLsup );
>> TBLinf = fftshift( fft( BLinf , N ) );
>> TBLinf = abs( TBLinf );

Figura 6.12: Módulo del espectro de frecuencia. a) Señal antes


de filtrarse con Pasa-banda1 o Pasa-banda2. b) Banda lateral
superior. c) Banda lateral inferior.

Mg. Pedro Freddy Huamaní Navarrete 65


Fundamentos de Telecomunicaciones Utilizando el Matlab

>> subplot(312),
>> plot( F , TBLsup )
>> title(' Señal AM BLU SUPERIOR ')
>> subplot(313),
>> plot( F , TBLinf ) % ver figura 6.12
>> title(' Señal AM BLU INFERIOR ')
>> xlabel(' Frecuencia (Hz) ')

Método de Weaver
Este método es posible utilizarlo siempre y cuando el espectro
de la señal de banda base tenga poca potencia cerca del origen.
Ver el diagrama de bloques de la figura 6.13.

Figura 6.13: Diagrama de bloques del método de Weaver.


El código de programa correspondiente a dicho método de
modulación, es presentado a continuación.

>> wo = 2*pi*800;
>> wp = 2*pi*2000;
>> Fs = 8000;
>> N = Fs;
>> t = linspace( 0 , 1 , Fs );
>> Sm = 2*cos(2*pi*300*t) + cos(2*pi*500*t);

>> SM = abs( fft( Sm , N ) );


>> SM = fftshift( SM );
>> F= linspace( - Fs/2 , Fs/2 , N );
>> subplot(311)

66 Mg. Pedro Freddy Huamaní Navarrete


Fundamentos de Telecomunicaciones Utilizando el Matlab

>> plot( F , SM ), grid


>> axis([ -1000 1000 0 9000 ])
>> title(' Módulo del espectro de señal modulante')

>> sA = cos( wo*t ) .* Sm;


>> sB = sin( wo*t ) .* Sm;
>> orden = 10;
>> Fo = wo / 2 / pi;
>> Fcorte = Fo / (Fs/2);
>> [ NPbajo , DPbajo ] = butter( orden , Fcorte );
>> Ho = freqz( NPbajo , DPbajo , N , 'whole' , Fs );
>> Ho = fftshift( Ho );
>> F = linspace( -Fs/2 , Fs/2 , N );
>> %Representa el módulo del filtro Pasa-bajo Ho(w)
>> %plot( F , 20*log10( abs( Ho ) ) )

>> sC = filter( NPbajo , DPbajo , sA );


>> sD = filter( NPbajo , DPbajo , sB );
>> sE = sC .* cos( wp*t );
>> sF = sD .* sin( wp*t );
>> BLsup = sE + sF ;
>> BLinf = sE - sF ;
>> TBLsup = abs( fft( BLsup , N ) );
>> TBLsup = fftshift( TBLsup );

Figura 6.14: Diagrama de bloques del método de Weaver.

Mg. Pedro Freddy Huamaní Navarrete 67


Fundamentos de Telecomunicaciones Utilizando el Matlab

>> TBLinf = abs( fft( BLinf , N ) );


>> TBLinf = fftshift( TBLinf );
>> subplot(312)
>> plot( F , TBLsup ), grid
>> title(' Banda Lateral Superior ')
>> subplot(313)
>> plot( F , TBLinf ), grid % ver figura 6.14
>> title(' Banda Lateral Inferior ')
>> xlabel(' Frecuencia (Hz) ')

7. DEMODULACIÓN AM

El proceso de demodulación es el proceso inverso a la


modulación; es decir, la señal original Sm(t) debe ser
recuperada en el extremo receptor a partir de un traslado de su
espectro de frecuencia. Una de las formas de realizar el proceso
de demodulación se consigue con la detección sincronizada o
coherente (también conocida como homodino) [3].

Demodulación coherente de señales AM DBL-SP


La demodulación se realiza mediante una portadora generada
en el receptor, con frecuencia y fase en sincronización con la
portadora generada en el transmisor. La figura 7.1 muestra el
diagrama de bloques correspondiente a este tipo de
demodulación.

Figura 7.1: Diagrama de bloques de la demodulación


coherente.

>> Fs = 5000;
>> N = Fs;
>> t = linspace(0,1,Fs);
>> Sm = ecg( Fs );

68 Mg. Pedro Freddy Huamaní Navarrete


Fundamentos de Telecomunicaciones Utilizando el Matlab

>> Bw_mod = 100; % Ancho de banda de


>> subplot(221) % señal Sm(t) aprox.
>> plot( t , Sm ),
>> grid
>> xlabel(' Tiempo ')
>> Sp = cos(2*pi*t*800);
>> Sam = Sp .* Sm; % modul. AM DBL-SP

>> SamC = Sam .* Sp; % demodulac. Coherente


>> subplot(222)
>> plot( t, SamC ), grid
>> xlabel(' Tiempo ')
>> F = linspace( -Fs/2 , Fs/2 , N );
>> SAMC = fft( SamC , N );
>> SAMC = abs(fftshift( SAMC ));
>> subplot(223)
>> plot( F , SAMC ), grid
>> axis([ -2000 2000 0 150 ])
>> xlabel(' Frecuencia (Hz) ')

>> orden = 10;


>> Fcorte = Bw_mod / (Fs/2);
>> [ NPbajo , DPbajo ] = butter( orden , Fcorte );
>> Ho = freqz( NPbajo , DPbajo , N , 'whole' , Fs );
>> Ho = fftshift( Ho );
>> F = linspace( -Fs/2 , Fs/2 , N );
>> %Representa el módulo del filtro Pasa-bajo Ho(w)
>> %plot( F , 20*log10( abs( Ho ) ) )

>> Smd = filter( NPbajo , DPbajo , SamC );


>> %Representa la señal demodulada.
>> %plot( t, Smd )
>> SMD = fft( Smd , N );
>> SMD = abs(fftshift( SMD ));
>> subplot(224)
>> plot( F , SMD ), grid
>> axis( [ -100 100 0 150 ] )
>> xlabel(' Frecuencia (Hz) ')

Mg. Pedro Freddy Huamaní Navarrete 69


Fundamentos de Telecomunicaciones Utilizando el Matlab

Figura 7.2: (a) Señal modulante en el tiempo. (b) Señal AM en


el tiempo multiplicada por la portadora. (c) Módulo de espectro
de frecuencia de señal en b). (d) Módulo del espectro de la
señal demodulada.

Demodulación no coherente de señales AM DBL


La demodulación en forma coherente anula el verdadero
propósito de la AM, y en consecuencia, raramente se utiliza en
la práctica [3]. Por lo tanto, se consideran tres métodos no
coherentes de demodulación: a) detección de rectificador, b)
detección de envolvente, y c) detección de ley cuadrada.

Seguidamente se muestra dos ejemplos de demodulación no


coherente utilizando el segundo y tercer método.
D

+ +

SAM DBL (t) SmD(t)


C = 1 mF R = 1 K

- -

Figura 7.3: Circuito eléctrico para la detección de envolvente.

70 Mg. Pedro Freddy Huamaní Navarrete


Fundamentos de Telecomunicaciones Utilizando el Matlab

El método de detección de envolvente utiliza un capacitor, que


en el ciclo positivo de la señal de entrada, se carga al voltaje de
pico de dicha señal. Cuando la misma señal cae por debajo de
este valor pico, el diodo queda abierto y se descarga. Por lo
tanto el voltaje de salida seguirá así a la envolvente de la
entrada [3]. Ver la figura 7.3.

>> Fs = 20000;
>> t = linspace( 0 , 1 , Fs);
>> N = Fs;
>> Sm = 2*sin(2*pi*200*t);
>> Sp = cos(2*pi*4000*t);
>> Ap = 4;
>> Sam = (Ap + Sm) .* Sp;
>> subplot(311)
>> plot( t , Sam ), grid % modulac. AM
>> axis([ 0 0.02 -12 12 ])
>> title(' Señal AM DBL (función del tiempo) ')

>> % SALIDA DEL DIODO


>> [ a , b ] = find( Sam(:,:) >0 );
>> Sam1 = zeros( size(Sam) );
>> Sam1( b ) = Sam( b );
>> subplot(312)
>> plot( t , Sam1 ), grid
>> axis([ 0 0.02 -12 12 ])
>> title(' Señal AM DBL después del DIODO (tiempo) ')

>> % CIRCUITO RC EN PARALELO


>> C = 1.9*0.001;
>> R = 1;
>> FT = tf( R , [ R*C 1 ] );
>> SmD = lsim( FT , Sam1 , t);
>> subplot(313)
>> plot(t , SmD ), grid %ver figura 7.4
>> axis([ 0 0.1 0.8 1.6 ])
>> title(' Señal AM DBL demodulada (función del tiempo) ')

EL nivel DC presente en la señal demodulada, puede ser


retirado empleando un capacitor o un simple filtro RC Pasa-alto.

Mg. Pedro Freddy Huamaní Navarrete 71


Fundamentos de Telecomunicaciones Utilizando el Matlab

Por otro lado, el rizo se puede reducir aún más mediante otro
filtro RC Pasa-bajo.

Figura 7.4: (a) Señal AM DBL en función del tiempo. (b) Señal
rectificada con el diodo. (c) Señal demodulada con presencia de
nivel DC y pequeño rizo.

El método de detección de ley cuadrada consiste en elevar al


cuadrado la señal modulada, para luego hacerla pasar a través
de un filtro Pasa-bajo. Para un buen cumplimiento de este
método, la amplitud de la señal de portadora deberá ser
bastante mayor a la señal modulante, durante la mayor parte
del tiempo [3]. Ver la figura 7.5.

Figura 7.5: Diagrama de bloque para la detección de ley


cuadrada.

>> Fs = 20000;
>> t = linspace( 0 , 1 , Fs);
>> N = Fs;

72 Mg. Pedro Freddy Huamaní Navarrete


Fundamentos de Telecomunicaciones Utilizando el Matlab

>> Sm = 2*sin(2*pi*200*t);
>> Sp = cos(2*pi*4000*t);
>> Ap = 4;
>> Sam = (Ap + Sm) .* Sp;
>> subplot(311)
>> plot( t , Sam ), grid % modulac. AM
>> axis([ 0 0.02 -12 12 ])
>> title(' Señal AM DBL (función del tiempo) ')

>> % SALIDA DEL BLOQUE NO LINEAL


>> Sam1 = Sam .* Sam;
>> SAM1 = abs( fft( Sam1 , N ) );
>> SAM1 = fftshift( SAM1 );
>> F = linspace( -Fs/2 , Fs/2 , N );
>> subplot(312)
>> plot( F , SAM1 ), grid
>> title(' Módulo del espectro de frecuencia de Sam(t)^2 ')
>> axis([ 0 0.02 -12 12 ])

>> orden = 6;
>> Fcorte = Fp / (Fs/2);
>> [ Npb , Dpb ] = butter( orden , Fcorte );
>> %freqz( Npb , Dpb , N , Fs) % filtro P-bajo

Figura 7.6: (a) Señal AM DBL en el dominio del tiempo. (b)


Módulo del espectro de frecuencia de la Señal AM elevada al
cuadrado. (c) Señal demodulada con nivel de contínua.

Mg. Pedro Freddy Huamaní Navarrete 73


Fundamentos de Telecomunicaciones Utilizando el Matlab

>> SmD = filter( Npb , Dpb , Sam1 );


>> subplot(313)
>> plot( t , SmD ), grid % demodulación
>> axis([ 0 0.05 -10 30 ]) % ver figura 7.6
>> title(' Señal demodulada con nivel de contínua ')

EL nivel DC presente en la señal demodulada, puede ser


retirado empleando un capacitor o un simple filtro RC Pasa-alto.

>> orden = 6;
>> Fcorte1 = 50 / (Fs/2);
>> [ Npa , Dpa ] = butter( orden , Fcorte1 , 'high' );
>> [Hpa , F ] = freqz( Npa , Dpa , N , Fs); % filtro P-alto
>> mHpa = abs( Hpa );
>> mHpa = 20*log10( mHpa );
>> %plot( F , mHpa )
>> %xlabel(' Frecuencia ')

>> SmD_PA = filter( Npa , Dpa , SmD ); % elimina la


>> %plot( t , SmD_PA ) % comp. DC.
>> %xlabel(' Tiempo ')

8. MODULACIÓN ANGULAR: FRECUENCIA Y FASE

Otra clase importante de técnica de modulación es conocida


como modulación angular. En una modulación angular se
distinguen a su vez dos tipos: la modulación de frecuencia (FM)
o la modulación de fase (PM), en donde la señal moduladora se
utiliza para controlar la frecuencia o la fase de una portadora
sinusoidal.

Los sistemas de modulación de este tipo ofrecen más ventajas


sobre los sistemas de modulación AM. Es decir, en un sistema
FM, las variaciones de amplitud introducidas en un canal de
transmisión que se deben a perturbaciones aditivas o a
desvanecimiento pueden eliminarse en el receptor [1].

Modulación de Frecuencia (FM)


Está definida por la expresión matemática mostrada a
continuación, donde Ap representa la amplitud de la señal de

74 Mg. Pedro Freddy Huamaní Navarrete


Fundamentos de Telecomunicaciones Utilizando el Matlab

portadora, wp la frecuencia de la señal portadora (en rad/seg. e


igual a 2fp), Kf el factor de sensibilidad para la modulación FM,
y Sm() la señal modulante (en voltios).

 t

S fm (t )  Ap cos w p t  K f  S m ( )d 

  
Donde la frecuencia instantánea, wi(t), corresponde a:

wi (t )  wp  K f S m (t )

Por lo tanto, el diagrama de bloques mostrado en la figura 8.1


representa una forma indirecta de obtención de la modulación
de frecuencia, a partir de la integral de la señal modulante
seguida de un bloque modulador de fase.

A continuación se presenta un ejemplo de modulación FM para


el caso de una señal modulante correspondiente a un simple
tono de 2 Hz.

S ( )d Modulador

m
Sm (t) de Fase Sfm (t)

Figura 8.1: Diagrama de bloque de un modulador de


frecuencia [3].

>> Fs = 2000;
>> N = Fs;
>> t = linspace( 0 , 1, Fs);
>> Ap = 4;
>> kf = 2*pi*100;
>> wp = 2*pi*500;
>> Sm = 2*cos(2*pi*2*t);

Mg. Pedro Freddy Huamaní Navarrete 75


Fundamentos de Telecomunicaciones Utilizando el Matlab

>> %Integrando Sm (señal modulante)


>> syms t
>> Sm = 2*cos(2*pi*2*t);
>> SmINT = int( Sm );
>> intervalo = [ 0 1 ]; %gráfica de la Integral
>> ezplot( SmINT , intervalo ) %de señal “Sm(t)”

>> t = linspace(0,1,Fs);
>> SmI = subs( SmINT , t ); %sustitución simbólica
>> Sfm = Ap * cos( wp*t + kf*SmI); %señal FM
>> subplot(211)
>> plot( t*1000 , Sfm )
>> axis( [ 0 0.2*1000 -4.5 4.5 ] )
>> title(' Señal modulada en frecuencia ')
>> xlabel(' Tiempo (mili segundos) '), grid
>> SFM = abs( fft( Sfm , N ) );
>> F = linspace( -Fs/2 , Fs/2 , N );
>> SFM = fftshift( SFM );
>> subplot(212)
>> plot( F/1000 , SFM ) % ver figura 8.2
>> title(' Módulo del espectro de frecuencia de FM ')
>> xlabel(' Frecuencia (KHz) '), grid

Figura 8.2: Señal modulada en frecuencia (a) Representación


temporal. (b) Módulo del espectro de frecuencia.

Seguidamente, se obtiene la frecuencia instantánea máxima y


mínima para el ejemplo anteriormente presentado.

76 Mg. Pedro Freddy Huamaní Navarrete


Fundamentos de Telecomunicaciones Utilizando el Matlab

>> Fs = 2000;
>> N = Fs;
>> t = linspace( 0 , 1, Fs);
>> Ap = 4;
>> kf = 2*pi*100;
>> wp = 2*pi*500;
>> Sm = 2*cos(2*pi*2*t);
>> wi = wp + kf * Sm; % en rad/seg.
>> fi = wi / (2*pi); % en Hertz.
>> plot( t , fi ) % ver figura 8.3
>> grid,
>> title(' Frecuencia Instantánea en Hertz ')
>> xlabel(' Tiempo ')

>> fi_MAX = max( fi );


>> fi_MIN = min( fi );

Figura 8.3: Gráfico de la frecuencia instantánea en Hertz


referente a la modulación FM.

Modulación de Fase (PM)


Está definida por la expresión matemática mostrada a
continuación, donde Ap representa la amplitud de la señal de
portadora, wp la frecuencia de la señal portadora (en rad/seg. e
igual a 2fp), Kp el factor de sensibilidad para la modulación
PM, y Sm() la señal modulante (en voltios).

Mg. Pedro Freddy Huamaní Navarrete 77


Fundamentos de Telecomunicaciones Utilizando el Matlab

S pm (t )  Ap coswp t  K p S m (t )

Donde la frecuencia instantánea, wi(t), corresponde a:

d S m (t ) 
wi (t )  w p  K p
dt
Por lo tanto, el diagrama de bloques mostrado en la figura 8.4
representa una forma indirecta de obtención de la modulación
de fase, a partir de la derivada de la señal modulante seguida
de un bloque modulador de frecuencia.

dS m (t )
d dt Modulador
Sm (t) de Spm (t)
dt Frecuencia

Figura 8.4: Diagrama de bloque de un modulador de fase [3].


A continuación se presenta un ejemplo de modulación PM para
el caso de una señal modulante correspondiente a un simple
tono de 2 Hz.

>> Fs = 2000; N = Fs;


>> t = linspace( 0 , 1, Fs);
>> Ap = 4;
>> kp = 2*pi*10;
>> wp = 2*pi*500;
>> Sm = 2*cos(2*pi*2*t);

>> Spm = Ap * cos( wp*t + kp*Sm); %señal PM


>> subplot(211)
>> plot( t*1000 , Spm )
>> axis( [ 0 0.2*1000 -4.5 4.5 ] )
>> title(' Señal modulada en fase ')
>> xlabel(' Tiempo (mili segundos) '), grid
>> SPM = abs( fft( Spm , N ) );
>> F = linspace( -Fs/2 , Fs/2 , N );

78 Mg. Pedro Freddy Huamaní Navarrete


Fundamentos de Telecomunicaciones Utilizando el Matlab

>> SPM = fftshift( SPM );


>> subplot(212)
>> plot( F/1000 , SPM ) % ver figura 8.5
>> title(' Módulo del espectro de frecuencia de PM ')
>> xlabel(' Frecuencia (KHz) '), grid

Figura 8.5: Señal modulada en fase (a) Representación


temporal. (b) Módulo del espectro de frecuencia.

Seguidamente, se obtiene la frecuencia instantánea máxima y


mínima para el ejemplo anteriormente presentado.

>> Fs = 2000; N = Fs;


>> t = linspace( 0 , 1, Fs);
>> Ap = 4;
>> kp = 2*pi*10;
>> wp = 2*pi*500;
>> Sm = 2*sin(2*pi*2*t);

>> % DERIVANDO Sm(t) (señal modulante)


>> syms t
>> Sm = 2*cos(2*pi*2*t);
>> SmDER = diff( Sm );
>> intervalo = [ 0 1 ]; %gráfica de la derivada
>> ezplot( SmDER , intervalo ) %de señal “Sm(t)”

>> t = linspace(0,1,Fs);

Mg. Pedro Freddy Huamaní Navarrete 79


Fundamentos de Telecomunicaciones Utilizando el Matlab

>> SmD = subs( SmDER , t ); %sustitución simbólica


>> wi = wp + kp * SmD; % en rad/seg.
>> fi = wi / (2*pi); % en Hertz.
>> plot( t , fi ) % ver figura 8.6
>> grid,
>> title(' Frecuencia Instantánea en Hertz ')
>> xlabel(' Tiempo ')

>> fi_MAX = max( fi );


>> fi_MIN = min( fi );

Figura 8.6: Gráfico de la frecuencia instantánea en Hertz


referente a la modulación PM.

Después de utilizar como señal modulante una onda coseno,


ahora se utiliza una onda cuadrada y luego una triangular. De
esta forma, es posible observar la forma de onda FM y PM ante
la presencia de estas dos señales periódicas, a partir de la
definición señalada a través de los diagramas de bloques de las
figuras 8.1 y 8.4.

>> % ONDA CUADRADA Y TRIANGULAR


>> Fs = 1000;
>> t = linspace( 0 , 1 , 1*Fs );
>> Sm1 = 2*square(2*pi*2*t);

>> Sm2 = 2*sawtooth (2*pi*2*t , 0.5);

80 Mg. Pedro Freddy Huamaní Navarrete


Fundamentos de Telecomunicaciones Utilizando el Matlab

>> Ap = 4;
>> wp = 2*pi*20;
>> kf = 2*pi*10^0.04;
>> kp = 2*pi*12;

>> % INTEGRANDO Sm1 y Sm2 (señales modulantes)


>> Sm1_INT = ( (2/8)*sawtooth(2*pi*2*t , 0.5 ) + 1/2 ) / 2;
>> Sm2_INT = (-2/16)*sin(2*pi*2*t);

>> % APLICANDO LA MODULACIÓN PM PARA OBTENER LA


>> % MODULACIÓN FM de Sm1(t) y Sm2(t)
>> Sfm1 = Ap * cos( wp*t + kp*Sm1_INT); %señal FM_1
>> subplot(221), plot( t , Sm1 )
>> grid
>> title('Señal Mod. Cuadrada')
>> subplot(223), plot( t , Sfm1 )
>> grid
>> title('Señal FM')
>> Sfm2 = Ap * cos( wp*t + kp*Sm2_INT); %señal FM_2
>> subplot(222), plot( t , Sm2 ) , grid
>> title('Señal Mod. Triangular')
>> subplot(224), plot( t , Sfm2 ) , grid
>> title('Señal FM') %ver figura 8.7

Figura 8.7: Arriba: gráficos de señales modulantes cuadrada y


triangular. Abajo: señales moduladas en FM.

Mg. Pedro Freddy Huamaní Navarrete 81


Fundamentos de Telecomunicaciones Utilizando el Matlab

>> % LUEGO, DERIVANDO Sm1 y Sm2 (señales modulantes)


>> Sm1_DER = [ zeros(1,Fs/4-1) -1 zeros(1,Fs/4-1) 1];
>> Sm1_DER = (100/0.5)*[ Sm1_DER Sm1_DER ];
>> plot( t , Sm1_DER )
>> Sm2_DER = (2*8)*square(2*pi*2*t);
>> plot( t , Sm2_DER )

>> % EN SEGUIDA, SE INTEGRA Sm1_DER y Sm2_DER, PARA


>> % LUEGO APLICAR LA MODULACIÓN FM Y OBTENER LA
>> % CORRESPONDIENTE MODULACIÓN PM.
>> INT_Sm1_DER = Sm1;
>> INT_Sm2_DER = Sm2;
>> Spm1 = Ap * cos( wp*t + kf* INT_Sm1_DER ); % PM_1
>> subplot(221), plot( t , Sm1 ) , grid
>> title('Señal Mod. Cuadrada')
>> subplot(223), plot( t , Spm1 ) , grid
>> title('Señal PM')
>> Spm2 = Ap * cos( wp*t + kf* INT_Sm2_DER ); % PM_2
>> subplot(222), plot( t , Sm2 )
>> grid
>> title('Señal Mod. Triangular')
>> subplot(224), plot( t , Spm2 )
>> grid
>> title('Señal PM') %ver figura 8.8

Figura 8.8: Arriba: gráficos de señales modulantes cuadrada y


triangular. Abajo: señales moduladas en PM.

82 Mg. Pedro Freddy Huamaní Navarrete


Fundamentos de Telecomunicaciones Utilizando el Matlab

Tipos de modulación FM
Para el caso de una modulación FM, la desviación máxima de la
frecuencia de la portadora, fmax (en Hz), y el índice de
modulación, fm, se determinan a partir de las siguientes
expresiones [3]:

k f Am max Fmax
Fmax   fm 
2 Fm

Donde, |Am|max , representa a la amplitud máxima de la señal


modulante, y Fm la frecuencia en Hertz de la señal modulante.

Por lo tanto, dependiendo del valor de fm, la modulación FM


puede ser de dos tipos: modulación FM de banda angosta (FM-
N), o modulación FM de banda ancha (FM-W).

Modulación de banda angosta: fm << 1. Seguidamente un


ejemplo.

>> Fs = 10000;
>> N = Fs;
>> t = linspace(0,1,Fs);
>> Am = 2;
>> wm = 2*pi*100;
>> Sm = Am*cos(wm*t);
>> wp = 2*pi*2000;
>> kf = 2*pi*10;
>> beta = kf * Am / ( wm )
beta =
0.2000

>> % INTEGRANDO LA SEÑAL MODULANTE “Sm”


>> SmI = (Am/wm) * sin(wm*t);
>> Sfm = 0.5 * cos( wp*t + kf * SmI );
>> SFM = abs( fft( Sfm, N ) );
>> SFM = fftshift( SFM );
>> F = linspace( -Fs/2 , Fs/2 , N );
>> plot( F , SFM ), grid % ver figura 8.9

Mg. Pedro Freddy Huamaní Navarrete 83


Fundamentos de Telecomunicaciones Utilizando el Matlab

>> xlabel(' Frecuencia en Hz')


>> title(' FM Banda Angosta (espectro de frecuencia) ')

Donde el ancho de banda, aproximado, se obtiene:

>> Fm = wm/2/pi; % Fm: frec. máx. de modulante


>> dF_max = beta * Fm; % desviación máxima de frec.
>> Bw = 2*Fm;

Figura 8.9: Módulo del espectro de frecuencia de una


modulación FM de banda angosta.

Modulación de banda ancha: fm >> 1. Seguidamente un


ejemplo.

>> Fs = 10000;
>> N = Fs;
>> t = linspace(0,1,Fs);
>> Am = 2;
>> wm = 2*pi*100;
>> Sm = Am*cos(wm*t);
>> wp = 2*pi*2000;
>> kf = 2*pi*500;
>> beta = kf * Am / ( wm )
beta =
10.0000

84 Mg. Pedro Freddy Huamaní Navarrete


Fundamentos de Telecomunicaciones Utilizando el Matlab

>> % INTEGRANDO LA SEÑAL MODULANTE “Sm”


>> SmI = (Am/wm) * sin(wm*t);
>> Sfm = 0.5 * cos( wp*t + kf * SmI );
>> SFM = abs( fft( Sfm, N ) );
>> SFM = fftshift( SFM );
>> F = linspace( -Fs/2 , Fs/2 , N );
>> plot( F , SFM ), grid % ver figura 8.10
>> xlabel(' Frecuencia en Hz')
>> title(' FM Banda Ancha (espectro de frecuencia) ')

Figura 8.10: Módulo del espectro de frecuencia de una


modulación FM de banda ancha.

Donde el ancho de banda, aproximado, se obtiene:

>> Fm = wm/2/pi; % Fm: frec. máx. de modulante


>> dF_max = beta * Fm; % desviación máxima de frec.
>> Bw = 2*( dF_max + 2*Fm );

Para el caso de una modulación FM de banda ancha y cuando la


señal modulante es una onda sinusoidal, el espectro de
frecuencia es obtenido aproximadamente a partir de la función
de Bessel de primera clase.

>> t = 0:.01:10;
>> n = 0:5; % orden: 0, 1, 2, 3, 4, 5
>> F = besselj( n , t' );

Mg. Pedro Freddy Huamaní Navarrete 85


Fundamentos de Telecomunicaciones Utilizando el Matlab

>> plot( t , F , 'linewidth' , 3 )


>> grid % ver figura 8.11
>> text( 1 , 0.85 , 'Jo(beta)' )
>> text( 2 , 0.63 , 'J1(beta)' )
>> text( 3 , 0.53 , 'J2(beta)' )
>> text( 4.3 , 0.47 , 'J3(beta)' )
>> text( 5.5 , 0.43 , 'J4(beta)' )
>> text( 7 , 0.38 , 'J5(beta)' )
>> xlabel(' Índice de modulación: beta ')
>> ylabel(' Valor de función Bessel ')
>> title('Función de Bessel de 1ra Clase. Orden: 0,1,2,3,4,5 ')

Figura 8.11: Función de Bessel de Primera Clase [3].

9. DEMODULACIÓN FM

Para recuperar la señal modulante Sm(t) a partir de la señal


modulada de FM, deberá disponerse de un circuito cuya salida
varíe linealmente con la frecuencia de la señal de entrada. Por
lo tanto, los detectores de FM son dispositivos sensibles a la
frecuencia, y también se llaman discriminadores de frecuencia
[3].

Seguidamente, en la figura 9.1, se muestra un discriminador


simple denominado Discriminador R-L o detector de pendiente

86 Mg. Pedro Freddy Huamaní Navarrete


Fundamentos de Telecomunicaciones Utilizando el Matlab

[3]. Luego, se representa un ejemplo de demodulación FM


tomando como señal modulante una onda coseno de 4 Hz.

Para dicho análisis, primero se obtiene el voltaje vx(t), luego el


voltaje después del diodo, vy(t), y finalmente, el voltaje de
salida total SmD(t).

R1 = 2 K
vx(t) vy(t)

DIODO +
+ R2 = 600  C = 0.1 mF
Sfm (t) SmD (t)
L= 1 h

- -

Figura 9.1: Discriminador simple: R-L [3].

>> Fs = 1000;
>> N = Fs;
>> t = linspace( 0 , 1, Fs );
>> Ap = 4;
>> kf = 2*pi*20;
>> wp = 2*pi*100;
>> Sm = 2*cos(2*pi*4*t);

>> % INTEGRANDO Sm (señal modulante)


>> Sm_INT = (2/(8*pi))*sin(2*pi*4*t);
>> Sfm = Ap * cos( wp*t + kf*Sm_INT); % señal FM
>> subplot(221)
>> plot( t , Sfm ) , grid
>> title(' Señal modulada en FM: Sfm(t) ')

>> % DEFINIENDO LOS PARÁMETROS DEL DISCRIMINADOR


>> % PARA OBTENER EL VOLTAJE EN Vx(t)
>> R1 = 2000;
>> L = 1;

Mg. Pedro Freddy Huamaní Navarrete 87


Fundamentos de Telecomunicaciones Utilizando el Matlab

>> FT1 =tf( [ 1 0 ] , [ 1 R1/L ] );


>> vx = lsim( FT1 , Sfm , t );
>> subplot(222) , plot( t , vx ) , grid
>> title(' Señal en Vx(t) ')

>> % SEÑAL A LA SALIDA DEL DIODO: Vy(t)


>> vy = vx;
>> for i=1:length( vx ), if vx(i) < 0 , vy(i) = 0; end, end,
>> subplot(223) , plot( t , vy ) , grid
>> title(' Señal en Vy(t) ')

>> % SALIDA DEL CIRCUITO: SmD(t)


>> C = 0.1*0.001;
>> R2 = 600;
>> FT2 = tf( R2 , [ R2*C 1 ] );
>> SmD = lsim( FT2 , vy , t);
>> subplot(224) , plot(t , SmD ), grid % ver figura 9.2
>> title(' Señal Demodulada: SmD(t) ')

Figura 9.2: Proceso de demodulación de señal FM.

Una forma alternativa y teórica respecto al discriminador


planteado anteriormente, se basa en el diagrama de bloques
mostrado en la figura 9.3. Entonces, se plantea el siguiente
ejemplo de demodulación FM a partir de la derivada de la señal
modulada.

88 Mg. Pedro Freddy Huamaní Navarrete


Fundamentos de Telecomunicaciones Utilizando el Matlab

>> % INTEGRANDO LA SEÑAL MODULANTE “Sm”


>> syms t
>> Sm = 5*cos(2*2*pi*t) +5;
>> SmI = int( Sm );

Figura 9.3: Diagrama de bloques de una demodulación FM


mediante diferenciación directa [3].

>> % DERIVANDO SEÑAL FM: Sfm(t)


>> kf = 2*pi*1500;
>> wp = 2*pi*100;
>> Sfm = 2*cos( wp*t + kf*SmI );
>> SfmDER = diff( Sfm );
>> Fs = 1000;
>> t = linspace(0,1,Fs);
>> Sfm_DER = subs( SfmDER , t );

>> % DETECTOR DE ENVOLVENTE


>> [ a , b ] = find( Sfm_DER(:,:) >0 );
>> Sfm_DER1 = zeros( size(Sfm_DER) );
>> Sfm_DER1( b ) = Sfm_DER( b );
>> C = 0.1*0.001;
>> R = 800;
>> FT = tf( R , [ R*C 1 ] );
>> SfmD = lsim( FT , Sfm_DER1 , t);

>> subplot(311)
>> Sm = subs( Sm , t );
>> plot(t , Sm ), grid
>> title(' Señal modulante ')
>> subplot(312)
>> plot(t , Sfm_DER ), grid %ver figura 9.4
>> title(' Derivada de la Señal FM ')

Mg. Pedro Freddy Huamaní Navarrete 89


Fundamentos de Telecomunicaciones Utilizando el Matlab

>> subplot(313)
>> plot(t , SfmD )
>> grid
>> title(' Señal de salida del Detector de Envolvente ')
>> xlabel(' Eje de tiempo (seg.) ')

Figura 9.4: Proceso de demodulación basado en el diagrama de


bloques de la figura 9.3.

10. INTRODUCCIÓN AL TOOLBOX COMMUNICATIONS

El Toolbox Communications es una colección de funciones de


cálculo y bloques de simulación para investigación, desarrollo,
diseño de sistemas, análisis y simulación en el área de
comunicaciones [8]. Este toolbox incluye bloques para Simulink,
y funciones para el Matlab.

A pesar que en algunas secciones anteriores se ha desarrollado


y mostrado algunos ejemplos de modulación analógica AM y
FM-PM, en esta última sección se vuelve a mostrar dicho
proceso de modulación haciendo uso de las funciones que
ofrece el Toolbox de Communications del Matlab. A continuación
se muestra las funciones respectivas.

>> help comm % ver figura 10.1

90 Mg. Pedro Freddy Huamaní Navarrete


Fundamentos de Telecomunicaciones Utilizando el Matlab

Figura 10.1: Lista de comandos del Toolbox Communications.

Para el caso de una modulación y demodulación analógica AM,


se utilizan los siguientes comandos.

>> help ammod


>> help amdemod
>> help ssbmod
>> help ssbdemod

Ejemplo 01: Modulación AM de señal triangular de 5


Hz, amplitud de 2 voltios y DC de 4
voltios.
>> Fs = 1000;
>> Fp = 100;
>> Fm = 5;
>> t = linspace( 0 , 1, Fs );
>> Sm = 2* sawtooth( 2*pi*Fm*t , 0.5 ) + 4 ;
>> Sam = ammod( Sm , Fp , Fs );
>> disp(' Modulación realizada ')

>> SmD = amdemod( Sam , Fp , Fs );


>> disp(' Demodulación realizada ')

>> subplot( 311 ), plot( t , Sm ), grid


>> title(' Señal Modulante ')

Mg. Pedro Freddy Huamaní Navarrete 91


Fundamentos de Telecomunicaciones Utilizando el Matlab

>> subplot( 312 ), plot( t , Sam ), grid


>> title(' Señal AM – DBL ')
>> subplot( 313 ), plot( t , SmD ), grid
>> title(' Señal AM demodulada ') % ver figura 10.2

>> % ESPECTRO DE FRECUENCIA


>> N = Fs;
>> SAM = fft( Sam , N );
>> SAM = abs( fftshift( SAM ));
>> F = linspace( -Fs/2 , Fs/2 , N );
>> %plot( F , SAM ), grid

Figura 10.2: Modulación/demodulación AM-DBL.

Ejemplo 02: Modulación AM-BLU de señal cuadrada


de 4 Hz, amplitud de 5 voltios y DC de 2
voltios.
>> Fs = 1000;
>> Fp = 100;
>> Fm = 4;
>> t = linspace( 0 , 1.2 , 1.2*Fs );
>> Sm = 5* square( 2*pi*Fm*t , 40 ) + 2 ;
>> SamBLU = ssbmod( Sm , Fp , Fs );
>> disp(' Modulación realizada ')
>> SmD = ssbdemod( SamBLU , Fp , Fs );
>> disp(' Demodulación realizada ')
>> subplot( 311 ), plot( t , Sm ), grid
>> title(' Señal Modulante ')

92 Mg. Pedro Freddy Huamaní Navarrete


Fundamentos de Telecomunicaciones Utilizando el Matlab

>> subplot( 312 ), plot( t , SamBLU ), grid


>> title(' Señal AM – BLU ')
>> subplot( 313 ), plot( t , SmD ), grid
>> title(' Señal AM demodulada ') % ver figura 10.3

>> % ESPECTRO DE FRECUENCIA


>> N = Fs;
>> SAMBLU = fft( SamBLU , N );
>> SAMBLU = abs( fftshift( SAMBLU ));
>> F = linspace( -Fs/2 , Fs/2 , N );
>> %plot( F , SAMBLU ), grid

Figura 10.3: Modulación/demodulación AM-BLU.

Por otro lado, para el caso de una modulación y demodulación


analógica FM Y PM, se utilizan los siguientes comandos.

>> help fmmod


>> help fmdemod
>> help pmmod
>> help pmdemod

Ejemplo 03: Modulación FM de señal diente de sierra


de 10 Hz y amplitud de 3 voltios.
>> Fs = 1000;
>> Fp = 100;
>> Fm = 10;
>> t = linspace( 0 , 0.5 , 0.5*Fs );

Mg. Pedro Freddy Huamaní Navarrete 93


Fundamentos de Telecomunicaciones Utilizando el Matlab

>> Sm = 3*sawtooth( 2*pi*Fm*t , 1 );


>> Fdv = 20; % desviación de frec. en Hz.
>> Sfm = fmmod( Sm , Fp , Fs , Fdv );
>> disp(' Modulación realizada ')

>> SmD = fmdemod( Sfm , Fp , Fs , Fdv );


>> disp(' Demodulación realizada ')

>> subplot( 311 ), plot( t , Sm ), grid


>> title(' Señal Modulante ')
>> subplot( 312 ), plot( t , Sfm ), grid
>> title(' Señal FM ')
>> subplot( 313 ), plot( t , SmD ), grid
>> title(' Señal FM demodulada ') % ver figura 10.4

>> % ESPECTRO DE FRECUENCIA


>> N = Fs;
>> SFM = fft( Sfm , N );
>> SFM = abs( fftshift( SFM ));
>> F = linspace( -Fs/2 , Fs/2 , N );
>> %plot( F , SFM ), grid

Figura 10.4: Modulación/demodulación FM.

Ejemplo 04: Modulación PM de señal seno de 20 Hz y


amplitud de 2 voltios.
>> Fs = 1000;

94 Mg. Pedro Freddy Huamaní Navarrete


Fundamentos de Telecomunicaciones Utilizando el Matlab

>> Fp = 100;
>> Fm = 20;
>> t = linspace( 0 , 0.25 , 0.25*Fs );
>> Sm = 2*sin( 2*pi*Fm*t );
>> Fdv = 1.8; % desviación de frec. en rad/seg.
>> Spm = pmmod( Sm , Fp , Fs , Fdv );
>> disp(' Modulación realizada ')

>> SmD = fmdemod( Spm , Fp , Fs , Fdv );


>> disp(' Demodulación realizada ')

>> subplot( 311 ), plot( t , Sm ), grid


>> title(' Señal Modulante ')
>> subplot( 312 ), plot( t , Spm ), grid
>> title(' Señal PM ')
>> subplot( 313 ), plot( t , SmD ), grid
>> title(' Señal PM demodulada ') % ver figura 10.5

>> % ESPECTRO DE FRECUENCIA


>> N = Fs;
>> SPM = fft( Spm , N );
>> SPM = abs( fftshift( SPM ));
>> F = linspace( -Fs/2 , Fs/2 , N );
>> %plot( F , SPM ), grid

Figura 10.5: Modulación/demodulación PM.

Mg. Pedro Freddy Huamaní Navarrete 95


Fundamentos de Telecomunicaciones Utilizando el Matlab

BIBLIOGRAFÍA

[1]. OPPENHEIM Allan, WILLSKY Alan and NAWAB Hamid.


Señales y Sistemas. Segunda Edición. Editorial Prentice
Hall. 1998. 990 pp.
[2]. RORABAUGH Britton C. Digital Filter Designer’s
Handbook. Featuring C Routines. Editorial Tab Books.
1993. 352 pp.
[3]. LATHI B. P. Introducción a la Teoría y Sistemas de
Comunicación. Segunda Edición. Editorial Limusa. 2001.
409 pp.
[4]. OPPENHEIM Allan, SCHAFER Ronald W. and BUCK John R.
Discrete-Time Signal Processing. Segunda Edición.
Editorial Prentice Hall. 1999. 870 pp.
[5]. COUCH Leon W. Sistemas de Comunicación Digitales y
Analógicos. Quinta Edición. Editorial Prentice Hall. 1998.
720 pp.
[6]. MIYARA Federico. Filtros Activos. Segunda Edición.
Departamento de Electrónica de la Universidad Nacional
de Rosario de Argentina. 2004. 117 pp.
[7]. LIMA Netto Sergio, RAMÍREZ Diniz Paul Sergio e BARROS
Da Silva Eduardo Antônio. Processamento Digital de
Sinais. Projeto e Análise de Sistemas. Editorial Bookman.
2002. 590 pp.
[8]. WANG Weizheng. Simulink. Communications Toolbox.
User´s Guide. Version 2. Second Printing. Editorial
Mathworks. 1997. 718 pp.

96 Mg. Pedro Freddy Huamaní Navarrete