Está en la página 1de 12

Modulación digital

Duban Peralta Oñate


Corporación universitaria Antonio José de sucre
Ingeniería electrónica
Sistemas de comunicaciones

Introducción Modulación FSK: La modulación por


desplazamiento de frecuencia o FSK —del inglés
En la siguiente in forme se encuentra el
Frequency Shift Keying— es una técnica de
desarrollo de los laboratorios planteados en
modulación para la transmisión digital de
clase donde se trabajó en la parte de las
información utilizando dos o más frecuencias
comunicaciones digitales, específicamente las
diferentes para cada símbolo.
modulaciones ASK, PSK, FSK y QAM en el
software MATLAB. Modulación QAM: La modulación de amplitud
en cuadratura o QAM es una técnica que
transporta dos señales independientes,
Teoría mediante la modulación, tanto en amplitud
como en fase, de una señal portadora. Esto se
Modulación ASK: La modulación por consigue modulando una misma portadora,
desplazamiento de amplitud, en inglés desfasada en 90°.
Amplitude-shift keying, es una forma de
modulación en la cual se representan los datos Objetivo
digitales como variaciones de amplitud de la
Entender los procesos y diferencia entre la
onda portadora en función de los datos a
modulación ASK, PSK, FSK y QAM.
enviar.
Realizar los distintos montajes en el software
Modulación PSK: La modulación por
para visualizar tanto la onda ASK, PSK, FSK y
desplazamiento de fase o PSK es una forma de
QAM.
modulación angular que consiste en hacer
variar la fase de la portadora entre un número
determinado de valores discretos.
Modulación ASK
clc;
clear all;
close all;
g = input('ingrese palabra de 8 bits, ejemplo [1,0,1,1,0,0,1,0]: ');
f = 2;
t = 0:2*pi/99:2*pi;
cp = []; sp = [];
mod = []; mod1 = [];bit = [];
for n = 1:length(g);
if g(n) ==0;
die = zeros(1,100);
se = zeros(1,100);
else g(n)==1;
die = ones(1;100);
se = ones(1;100);
end
c = sin(f*t);
cp = [cp die];
mod = [mod c];
bit = [bit se];
end
ook = cp.*mod;
subplot(3,1,1);plot(bit, 'Linewidth',1.5 );grid on;
title('señal binaria');
axis([0 100*length(g) -2.5 2.5]);

subplot(3,1,2);plot(ook, 'Linewidth',1.5 );grid on;


title('modulacion ook')
axis([0 100*length(g) -2.5 2.5]);
cp = []; sp = [];
mod = []; mod1 = []; bit = [];

for n = 1:length(g);
if g(n)== 0;
die = ones(1,100);
se = zeros(1,100);
else g(n) ==1;
die = 2*ones(1,100);
se = ones(1,100);
end
c = sin(f*t);
cp = [cp die];
mod = [mod c];
bit = [bit se];
end
ask = cp.*mod;
subplot(3,1,1);plot(bit, 'Linewidth',1.5 );grid on;
title('señal binaria')
axis([0 100*length(g) -2.5 2.5]);
subplot(3,1,3);plot(ask, 'Linewidth',1.5 );grid on;
title('modulacion ask')
axis([0 100*length(g) -2.5 2.5]);
Modulación PSK
clc;
clear all;
close all;

function bpskd(g,f)
f=1;
g=[1 0 0 1 1 0];
t=0:2*pi/99:2*pi;
cp=[];
mod=[];
bit=[];

for n=1:length(g); %longitud de los datos binarios de entrada


if g(n)==0;
die=-ones(1,100); %modulante
se=zeros(1,100); %señal
else g(n)=1;die=ones(1,100); %modulante
se=ones(1,100) %señal
end

c=sin(f*t);
cp=[cp die];
mod=[mod c];
bit=[bit se];
end

bpsk=cp.*mod:
subplot(4,1,1); plot(bit, 'Linewidth' ,1.5);grid on;
title('señal binaria');
xlabel('periodo');
ylabel('voltaje');

subplot(4,1,2); plot(mod, 'Linewidth' ,1.5);grid on;


title('señal portadora');
xlabel('periodo');
ylabel('voltaje');

subplot(4,1,3); plot(bpskd, 'Linewidth' ,1.5);grid on;


title('modulacion B-PSK');
xlabel('periodo');
ylabel('voltaje');

grid on
Modulación FSK

clc;
clear all;
close all;

x = input('Ingrese secuencia de bits [1 0 0 1 1 1 0 0 1 0]\n');


disp('Transmitiendo informacion');
disp(x); % mostrar informacion
bp=.01; % perido para bit
n = length(x); % longitud de entrada

t = 0:bp:n;
a = 1:1:(n+1)* 100;
for i = 1:n
for j = i:.1:i+1
digital (a(i*100:(i+1)*100))= x(i);
end

end
digital = digital (100:end);

A=5; % amplitud
br=1/bp; % tasa de bit
f1=br*8; % frecuencia para la informacion 1
f2=br*2; % frecuencia para la informacion 2
t2=bp/99:bp/99:bp; % vector tiempo para señal portadora
m=[]; % funcion para la salida modulada
for (i=1:1:n)
if (x(i)==1)
y=A*cos(2*pi*f1*t2);
else
y=A*cos(2*pi*f2*t2);
end
m=[m y]; % funcion para la señal modulada
end
subplot(3,1,1)
plot(t,digital)
grid on;
axis([0 n -2 +2])
ylabel('amplitud (V)');
xlabel('tiempo(S)');
title('senal digital');

subplot(3,1,2)
plot(y);
ylabel('amplitud (V)');
xlabel('tiempo(S)');
title('senal portadora');

t3=bp/99:bp/99:bp*n % vector tiempo para la modulada


subplot(3,1,3)
plot(t3,m);
ylabel('amplitud (V)');
xlabel('tiempo(S)');
title('modulacion FSK');
Modulación QAM
clc;
clear all;
close all;
M = 16;
fprintf('\n\n\n');

Ld=log2(M);
ds=ceil(Ld); %redondea el elemento al entero mas cercano
dif=ds-Ld;
if(dif~=0) %define la estructura y condicion de t1
error('the valuenof M is only acceptable if log2(M) is an integer');
end
nbit=16; %número de bits de información
msg=round(rand(nbit,1)); %generacion de informacion en forma binaria
disp(msg);
fprintf('\n\n');

%representación de la transmisión de información binaria


como sistema digital

x=msg; %define x como unna variable


bp=.000001; %período de bits
bit=[]; %define la matriz de bits
for n=1:1:length(x)
if x(n)==1;
se=ones(1,100);
else x(n)==0;
se=zeros(1,100);
end
bit=[bit se];

end
t1=bp/100:bp/100:100*length(x)*(bp/100); % define el intervalo de valores que
tomara t1
figure(1)
subplot(3,1,1); %ubicacion de la grafica
plot(t1,bit, 'LineWidth',2.5);grid on;
axis([ 0 bp*length(x) -.5 1.5]);
ylabel('amplitud');
xlabel('tiempo)');
title('información del transmisor de señal digital');

%información binaria convertida en forma simbólica desde modulación


QAM

M=M; %orden de modulación


QAM
msg_reshape=reshape(msg,log2(M),nbit/log2(M))';
disp('la informacion se reforma para convertir en forma simbolica');
disp(msg_reshape);
fprintf('\n\n');

size(msg_reshape);
for(j=1:1:nbit/log2(M))
for(i=1:1:log2(M))
a(j,i)=num2str(msg_reshape(j,i));
end
end

as=bin2dec(a);
ass=as';
figure(1)
subplot(3,1,2);
stem(ass,'LineWidth',2.0);
title('símbolo de serie para modulación QAM M-array en el transmisor');
xlabel('n(tiempo discreto)');
ylabel('magnitud');

disp('informacioin de forma simbolica para 16 QAM ');


disp(ass);
fprintf('\n\n');

%mapeo para modulación 16 QAM

M=M; %orden de modulación QAM


x1=[0:M-1];
p=qammod(ass,M); %Diseño de constalación para QAM según símbolo.
sym=0:1:M-1; % degradación para QAM en el diagrama de dispersion
pp=qammod(sym,M); % diagrama de constalación para QAM
scatterplot(pp),grid on;
title('Diagrama de constelacion para 16 QAM');

%Modulación QAM de matriz

RR=real(p)
II=imag(p)
sp=bp*2; % período de símbolo para QAM de matriz
sr=1/sp; %velocidad de símbolo
f=sr*2;
t=sp/100:sp/100:sp;
ss=length(t);
m=[];

for(k=1:1:length(RR))
yr=RR(k)*cos(2*pi*f*t); % componente real o en fase
yim=II(k)*sin(2*pi*f*t); %cuadratura o componente imaginario
y=yr+yim;
m=[m y];

end
tt=sp/100:sp/100:sp*length(RR);
figure(1);
subplot(3,1,3);
plot(tt,m);
title('forma de onda para modulación QAM de matriz M según información
simbólica');
xlabel('tiempo)');
ylabel('amplitud');

m1=[];
m2=[];
for n=ss:ss:length(m)
t=sp/100:sp/100:sp;
y1=cos(2*pi*f*t);
y2=sin(2*pi*f*t);
mm1=y1.*m((n-(ss-1)):n);
mm2=y2.*m((n-(ss-1)):n);
z1=trapz(t,mm1);
z2=trapz(t,mm2);
zz1=round(2*z1/sp);
zz2=round(2*z2/sp);
m1=[m1 zz1]
m2=[m2 zz2]
end

clear i;
clear j;
for(k=1:1:length(m1))
gt(k)=m1(k)+j*m2(k);
end

gt

ax=qamdemod(gt,M);
figure(3);
subplot(2,1,1);
stem(ax,'LineWidth',2);
title('optencion de simbolo despues de la demodulacion QAM');
xlabel('tiempo discreto');
ylabel('magnitud')

disp('volver a obtener el simbolo despues de la demodulacion QAM')


disp(ax);
fprintf('\n\n');

bi_in=dec2bin(ax);
[row col]=size(bi_in);
p=1
for(i=1:1:row)
for(j=1:1:col)
re_bi_in(p)=str2num(bi_in(i,j));
p=p+1;
end
end
disp('informacion recuperada');
disp(re_bi_in')
fprintf('\n\n');
x=re_bi_in;
bp=.000001;
bit=[];
for n=1:1:length(x)
if x(n)==1;
se=ones(1,100);
else x(n)==0;
se=zeros(1,100);
end
bit=[bit se];

end
t1=bp/100:bp/100:100*length(x)*(bp/100);
figure(3)
subplot(2,1,2);
plot(t1,bit,'LineWidth',2.5);grid on;
axis([0 bp*length(x) -.5 1.5]);
ylabel('amplitud');
xlabel('tiempo');
title('informacion de señal digital despues de la demodulacion');

Archivos

Modulacion digital.zip
Bibliografías

https://medium.com/modulaciones-digitales-ask-psk-fsk/ask-amplitude-shift-keying-d658d5128168

https://www.textoscientificos.com/redes/modulacion/psk

https://www.textoscientificos.com/redes/modulacion/FSK

https://aholab.ehu.eus/users/inma/psc/tema3.pdf

También podría gustarte