Professional Documents
Culture Documents
Esta seccin contiene ejemplos visuales que ilustran como usar las funciones de modulacin y demodulacin
digital.
1. Simular un modulador 16-PSK, AWGN y de igual modo simular el demodulador, y analizar la razn de
error de smbolo (SER) en funcin de la razn seal a ruido (SNR).
2. Crear un modulador 8-QAM y 8-PSK utilizando codificacin gray y graficar la constelacin de dichas
seales.
3. Crear un Modulador/Demodulador 64-QAM y graficar la constelacin de la seal en el receptor teniendo
64 puntos, con tres diferentes razones de seal a ruido.
2.2 Generar datos de razn de error de bit (BER), usando BERTool, para el anlisis de sistemas de
comunicacin.
1. Generacin de datos de razn de error de bit (BER) de manera Terica. Para los diferentes esquemas de
modulacin digital se debe representar grficamente la razn de error de bit (BER), mediante la
herramienta BERTool.
Tabla 1. Esquemas de modulacin digital.
Modulacin
PSK
DPSK
QAM
OQPSK
FSK
Orden de
Modulacin
2,4
2,4,8,16,32,64
4,8,16,32,64,128,256
4
2
4,8,16,32
4,8,16,32 o 64
Caractersticas
Codificacin diferencial o no diferencial
Codificacin diferencial o no diferencial
Ortogonal o no Ortogonal, demodulacin coherente o no coherente
Ortogonal, demodulacin coherente
Ortogonal, demodulacin no coherente
2. Describir cmo utilizar la tcnica Semi-Analtica para calculas la razn de error de bit, como mtodo
alternativo a la tcnica Terica.
3. Realizar simulaciones mediante la tcnica Monte Carlo para analizar el desempeo de los diferentes
esquemas de modulacin digital propuestos.
2.3 Simulaciones de esuemas de modulacin/demodulacin digital utilizando Simulink.
Se observa un modelo creado originalmente como un ejemplo del Bloque de Comunicaciones de Simulink
especficamente un BPSK, muestra cmo adaptar este modelo para usar con BERtool, el ejemplo ilustra tambin
cmo comparar el rendimiento BER de una simulacin de Simulink con los datos obtenidos en el BER terico.
Presentacin formal del anlisis y de los resultados que fueron obtenidos durante la realizacin de la experiencia de
laboratorio que hace referencia a los esquemas de modulacin y demodulacin digital.
3.1 Tcnicas Digitales de Modulacin/Demodulacin usando la caja de herramientas
3.1.1
Para poder ilustrar el diagrama de constelacin del esquema de modulacin digital 16-PSK se utilizaron diferentes
funciones que estaban ya designadas en el ejemplo de la gua de laboratorio, entres estas; randin, scatterplot,
modem, modulate, etc.
De todas las imgenes presentes en la parte inferior, tenemos unas que muestran el diagrama de constelacin del
esquema de modulacin mencionado anteriormente, donde la razn seal a ruido vara desde los 0dB hasta los
30dB. Aqu podemos apreciar claramente que al tener una razn de seal ruido baja (0dB, 15dB en este caso) el
ruido causa que el espacio entre los smbolos sea menor, ocasionando traslape entre ellos; mientras que si el ruido
es mayor (30dB, en este caso), se observa que los smbolos estn ms espaciados entre si y de este modo se facilite
su deteccin.
Figura 1. a) Diagrama de constelacin 16-PSK con ruido AWGN de 0dB. b) Diagrama de constelacin 16-PSK con
ruido AWGN de 15dB. c) Diagrama de constelacin 16-PSK con ruido AWGN de 30dB.
a)
b)
c)
A continuacin, se ilustra una grfica la cual representa la curva caracterstica de la razn seal a ruido (SNR) vs lo
que sera la razn de error de smbolo (SER). Para los 30 dB reconocidos como el valor mximo de razn seal a
ruido propuesto, no se observaban muy bien los puntos; por lo que se decidi reducir la escala del eje horizontal de
la grfica para poder apreciar mejor la curva.
Figura 2. Curva de razn seal a ruido (SNR) vs la razn de error de smbolo (SER).
3.1.2
Confeccin de dos diagramas de constelaciones distintos en ausencia de ruido, los cuales corresponden a los
esquemas de modulacin 8-QAM y 8-PSK respectivamente. Adems de esto, la asignacin de smbolos se realiza
mediante codificacin Gray.
Figura 3. a) Diagrama de constelacin 8-QAM. b) Diagrama de constelacin 8-PSK.
a)
3.1.3
b)
Representacin visual mediante mtodo grafico de un canal AWGN para un esquema de modulacin digital
especfico. En esta seccin se estudiar la modulacin de amplitud en cuadratura (QAM) con tres distintos valores
de seal a ruido, los cuales son: 15dB, 30dB, 60dB.
Se aprecia claramente que mientras la razn seal a ruido sea pequea, no se podr garantizar una deteccin
satisfactoria de la seal deseada y por lo tanto siempre ocurrir alguna falla en el camino de la transmisin. Por otro
lado, si la razn seal a ruido es grande, har que la probabilidad de error de transmisin de la seal sea mnima y
as se evitarn las fallas de deteccin.
Figura 4. a) Diagrama de constelacin 64-QAM con SNR=15dB. b) Diagrama de constelacin 64-QAM con
SNR=30dB. c) Diagrama de constelacin 64-QAM con SNR=60dB.
a)
b)
c)
3.2 Generar datos de razn de error de bit (BER), usando BERTool, para el anlisis de sistemas de
comunicacin.
BERTool es una interfaz grfica de usuario interactiva para el anlisis de la razn de error de bit (BER) en los
sistemas de comunicacin. Se establecieron los tipos de modulacin y los parmetros de orden ejecutando una
opcin en el men o escribiendo un valor aleatorio. En general, se compara el rendimiento que utilizan sistemas de
comunicacin de canal AWGN y modulaciones con diferentes rdenes.
Esquema de modulacin digital por desplazamiento de fase (PSK):
A continuacin, se muestran las grficas resultantes del desempeo de un esquema de modulacin digital por
desplazamiento de fase para un sistema M-ario de dos y cuatro niveles respectivamente. Se observa que las grficas
de desempeo para BPSK y 4-PSK es prcticamente el mismo en el mbito de la codificacin diferencial y no
diferencial.
Figura 5. a) Grfica de desempeo para BPSK diferencial y no diferencial. b) Grfica de desempeo para sistema
de modulacin 4-PSK diferencial y no diferencial.
a)
b)
A continuacin, se muestra una grfica con el desempao para un sistema M-ario de desplazamiento de
fase diferencial. Tiene una variante del esquema de modulacin PSK, la cual se refiere a que a medida que
aumenta la razn de error de bit (BER) tambin aumenta la razn Eb/No.
Figura 6. Grfica de desempeo de un esquema de modulacin M-ario por desplazamiento de fase diferencial.
Este esquema de modulacin utiliza componentes ortogonales en fase y cuadratura de igual manera que la
modulacin Q-PSK. Gracias a estas caractersticas se puede observar que la eficiencia es la misma que para
los sistemas de QPSK y BPSK. Cabe destacar que a medida que se aumenta el nivel u orden del sistema, aumenta
su razn de error de bit.
Figura 7. Grfica de desempeo de esquema QAM M-ario, cuya variacin de niveles va desde M= 4 hasta M= 256.
Este esquema de modulacin es una variacin de la tcnica de modulacin QPSK, ya que un elemento de
sus componentes en cuadratura se retrasa medio bit, debido a los cambios que se producen en la fase. Este
sistema OQPSK posee la ventaja de ser capaz de funcionar bajo condiciones no lneas; por ende, tendr
mejor desempeo que el esquema de modulacin QPSK convencional.
Figura 8. Grafica de desempeo de modulacin QPSK diferencia y no diferencial.
a)
b)
Mtodo Semi-analtico
BERTool tiene una ventana llamada Semianalytic donde se deben entablecer una serie de parmetros para
analizar el desempeo de algunos sistemas de comunicacin. Se deben establecer el vector Eb/No que es
un rango que enumera los valores de dicho vector para recopilar los datos de BER; el tipo de modulacin
y orden de modulacin se utiliza para decribir el esquema de modulacin que se utiliz; la codificacin
diferencial se utiliza para escoger si es diferencial o no la codificacin; se establece tambin los valores
del numerador y denominador, la seal transmitida y recibida y las muestras por smbolo. Esta
herramienta utiliza un filtro de transmisin de tipo coseno elevado para la seal modulada.
Con Semianalytic obtenemos la tasa de error de bit de un sistema que recibe la seal de banda de vector
complejo y transmite la seal banda base compleja. La funcin que se utiliza asume que la seal recibida
es la entrada al filtro de receptor y tambin la filtra mediante un integrador ideal. Comparamos las tasas
de error de la modulacin 16-QAM con la tcnica semianalytic. Al hacer esto obtenemos que los ndices
de error obtenidos por los dos mtodos son muy similares.
Con BERTool podemos utilizar el modelo Monte Carlo el cual es una forma de variar los valores de
Eb/No al momento de modificar las distintas modulaciones.
Esta herramienta crea una lista de los valores de BER en el visor de datos y para la segunda
simulacin se cambia el rango de E b / N 0 para reducir el nmero de bits procesados en cada caso,
ahora es el tipo [5 5.2 5.3]. En la grfica obtenida tenemos dos puntos que corresponden a 5dB, stos
son diferentes a causa de que el menor valor de nmero de bits en la segunda simulacin hace que se
termine la simulacin antes de que se puedan apreciar muchos errores.
Figura 11. Grfica de desempeo obtenida tras utilizar la tcnica Monte Carlo.
El bloque generador tiene establecido trabajar con 1000 muestras por trama para que de esa manera sea ms rpido
la ejecucin de la simulacin. Para obtener las grficas del BER, utilizamos BERTool, utilizamos el mtodo de
Monte Carlo y el terico, y a stos se les estableci un rango igual para ambos con el propsito principal de
comparar los resultados.
Para las siguientes grficas tenemos la comparacin de las curvas BER vs Eb/No para el desempeo del sistema, al
analizarlas podemos concluir que el comportamiento de ambas es el mismo.
a)
b)
10
Conclusiones
Al desarrollar este laboratorio pudimos familiarizarnos con las herramientas que nos provee Matlab para el estudio
de sistemas de comunicaciones digitales; se realizaron tcnicas de modulacin y demodulacin para distintos
esquemas y se estudiaron sus respuestas ante la presencia de AWGN. Pudimos ver cmo ocurra un traslape al
variar la razn de error de smbolo mediante el cambio de la razn seal a ruido.
Utilizando la herramienta BERTool comparamos los modelos implementados para de esa manera estudiar mejor el
sistema y poder observar cmo se afectaba el desempeo de los distintos esquemas de modulacin al cambiar
ciertos parmetros de los mismos.
Referencias bibliogrficas
[1] Gua de Laboratorio. Facilitador: Dr. Carlos A. Medina. Digital Baseband Modulation/demodulation
Techniques.
[2] Dr. Ing. Carlos A. Medina C. Fundamentos de Ingeniera de Comunicaciones: Seales y Sistemas de
Comunicacin Analgica y Digital. Panam: Editorial Tecnolgica, 2012.
[3] Bernard Sklar, Digital Communications Fundamentals & Applications. 2da Edicin.
Anexos
%Laboratorio Tcnicas de modulacin y demodulacin en banda base.
%Parte I del laboratorio, Seccin 1. Generar 16-PSK con AWGN desde 0db
%hasta 30db. Constelacin de la seal con Ruido AWGN de 0dB.
M=16; %Alphabet size
x=randi([0 M-1],5000,1);
hMod=modem.pskmod(M);
hDemod=modem.pskdemod(hMod);
scatterPlot=commscope.ScatterPlot('SamplesPerSymbol',1,'Constellation',hMod.Constella
tion);
scatterPlot.PlotSettings.Constellation='on';
y=modulate(hMod,x);
ynoisy=awgn(y,0,'measured');
update(scatterPlot,ynoisy);
z=demodulate(hDemod,ynoisy);
[num,rt]=symerr(x,z)
%Parte I del laboratorio, Seccin 1. Generar 16-PSK con AWGN desde 0db
%hasta 30db. Constelacin de la seal con Ruido AWGN de 15dB.
M=16; %Alphabet size
x=randi([0 M-1],5000,1);
hMod=modem.pskmod(M);
hDemod=modem.pskdemod(hMod);
scatterPlot=commscope.ScatterPlot('SamplesPerSymbol',2,'Constellation',hMod.Constella
tion);
scatterPlot.PlotSettings.Constellation='on';
y=modulate(hMod,x);
ynoisy=awgn(y,15,'measured');
update(scatterPlot,ynoisy);
z=demodulate(hDemod,ynoisy);
[num,rt]=symerr(x,z)
%Parte I del laboratorio, Seccin 1. Generar 16-PSK con AWGN desde 0db
%hasta 30db. Constelacin de la seal con Ruido AWGN de 30dB.
M=16; %Alphabet size
x=randi([0 M-1],5000,1);
11
hMod=modem.pskmod(M);
hDemod=modem.pskdemod(hMod);
scatterPlot=commscope.ScatterPlot('SamplesPerSymbol',3,'Constellation',hMod.Constella
tion);
scatterPlot.PlotSettings.Constellation='on';
y=modulate(hMod,x);
ynoisy=awgn(y,30,'measured');
update(scatterPlot,ynoisy);
z=demodulate(hDemod,ynoisy);
[num,rt]=symerr(x,z)
%Pate 1, Seccin 2. Generacin de 8-QAM y 8-PSK sin AWGN
%8-QAM
M=8;
modulqam=modem.qammod('M', M, 'SymbolOrder', 'Gray');
Const=commscope.ScatterPlot('SamplesPerSymbol',1,...,
'Constellation',modulqam.Constellation);
Const.PlotSettings.Constellation='on';
Const.PlotSettings.ConstellationStyle = 'r.';
% Add symbol labels
hold on;
k=log2(modulqam.M);
for jj=1:modulqam.M
text(real(modulqam.Constellation(jj))+0.15,...,
imag(modulqam.Constellation(jj)),...
dec2base(modulqam.SymbolMapping(jj),2,k));
end
hold off;
%8-PSK
modulpsk=modem.pskmod('M', M, 'SymbolOrder', 'Gray');
Const=commscope.ScatterPlot('SamplesPerSymbol',1,...,
'Constellation',modulpsk.Constellation);
Const.PlotSettings.Constellation='on';
Const.PlotSettings.ConstellationStyle = 'r.';
% Add symbol labels
hold on;
k=log2(modulpsk.M);
for jj=1:modulpsk.M
text(real(modulpsk.Constellation(jj))+0.15,...,
imag(modulpsk.Constellation(jj)),...
dec2base(modulpsk.SymbolMapping(jj),2,k));
end
hold off;
%Parte I del laboratorio, Seccin 3. Generar 16-PSK con AWGN desde 0db
%hasta 30db. Constelacin de la seal con Ruido AWGN de 0dB.
M=64; %Alphabet size
x=randi([0 M-1],5000,1);
hMod=modem.qammod(M);
hDemod=modem.qamdemod(hMod);
scatterPlot=commscope.ScatterPlot('SamplesPerSymbol',1,'Constellation',hMod.Constella
tion);
scatterPlot.PlotSettings.Constellation='on';
y=modulate(hMod,x);
ynoisy=awgn(y,0,'measured');
update(scatterPlot,ynoisy);
z=demodulate(hDemod,ynoisy);
[num,rt]=symerr(x,z)
12
%Parte I del laboratorio, Seccin 3. Generar 16-PSK con AWGN desde 0db
%hasta 30db. Constelacin de la seal con Ruido AWGN de 15dB.
M=64; %Alphabet size
x=randi([0 M-1],5000,1);
hMod=modem.qammod(M);
hDemod=modem.qamdemod(hMod);
scatterPlot=commscope.ScatterPlot('SamplesPerSymbol',2,'Constellation',hMod.Constella
tion);
scatterPlot.PlotSettings.Constellation='on';
y=modulate(hMod,x);
ynoisy=awgn(y,15,'measured');
update(scatterPlot,ynoisy);
z=demodulate(hDemod,ynoisy);
[num,rt]=symerr(x,z)
%Parte I del laboratorio, Seccin 3. Generar 16-PSK con AWGN desde 0db
%hasta 30db. Constelacin de la seal con Ruido AWGN de 30dB.
M=64; %Alphabet size
x=randi([0 M-1],5000,1);
hMod=modem.qammod(M);
hDemod=modem.qamdemod(hMod);
scatterPlot=commscope.ScatterPlot('SamplesPerSymbol',3,'Constellation',hMod.Constella
tion);
scatterPlot.PlotSettings.Constellation='on';
y=modulate(hMod,x);
ynoisy=awgn(y,30,'measured');
update(scatterPlot,ynoisy);
z=demodulate(hDemod,ynoisy);
[num,rt]=symerr(x,z)
13