Está en la página 1de 8

INGENIERIA EN SISTEMAS COMPUTACIONALES

FUNDAMENTOS DE TELECOMUNICACIONES

PRÁCTICA 3

CÓDIGOS DE LINEA

INTEGRANTES DEL EQUIPO: GRUPO:

DOCENTE:

LUGAR Y FECHA
LABORATORIO DE FUNDAMENTOS DE TELECOMUNICACIONES
PRÁCTICA N° 3

Objetivos:
Utilizar los conocimientos adquiridos de la teoría sobre codificación de línea, para la
realización de un programa que permita implementar codificación de línea utilizando
la interfaz gráfica de usuario de MATLAB.

INTRODUCCIÓN:

(La introducción debe responder a la pregunta de "porqué se ha hecho este trabajo". Una buena
introducción, es una oración clara del problema y de las razones por las que lo estamos estudiando.
Nos da una concisa y apropiada discusión del problema, su significado, alcances y limitaciones
Importante: En esta sección se responde a la pregunta de "cómo se ha hecho la práctica".
Súper Importante: Es conveniente que el último párrafo de la Introducción se utilice para resumir
el objetivo de la práctica.
Utilizar máximo 3 párrafos de no más de 7 renglones cada uno para realizarla.)

MARCO TEÓRICO

Códigos de Línea
(Realizar investigación documental mínimo en 4 fuentes bibliográficas distintas, incluir
definiciones, fórmulas matemáticas, dibujos, esquemas, diagramas, etc. IMPORTANTE: las
imágenes, esquemas y diagramas deben presentarse con títulos inferiores, en cada tema
desarrollado se deben incluir citas a pie de página,

DESARROLLO

Analizar los resultados obtenidos tanto en la práctica, como en el trabajo preparatorio.

1. CÓDIGO NRZ-L

Para realizar esta codificación se analiza el vector de datos binarios a codificar según su
ubicación mediante un lazo for; entonces si se detecta un 1 se envía un -1 al vector de
codificación, caso contario si se detecta un 0 se envía un 1 al vector de codificación.

Código Implementado
function boton1_Callback(hObject, eventdata, handles)
% hObject handle to boton1 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
%Cálculos
b=str2double(get(handles.edit2,'string'));
tb=b/1000;
Vt=1/tb;
Vs=Vt;
AB=Vs/2;
set(handles.text8,'String',Vt);
set(handles.text9,'String',Vs);
set(handles.text10,'String',AB);
%Menu
a=get(handles.edit1,'string');
op=get(handles.menu1,'value');
switch op
case 1
x=arrayfun(@str2double,a);
case
2

x=dec2bin(a,7)';
x = x(:)'-'0';
end
%Codificación
t=0:1*tb:length(x)*tb;
tr=0:1*tb/2:length(x)*tb;
n=length(x);
X=[x x(n)];
r=1:2*n;
fori=1:n r(2*i-
1)=1;
r(2*i)=0;
end
R=[r r(n)];
y=1:n;
fori=1:n
if x(i)==0
y(i)=1;
elseif x(i)==1 y(i)=-
1;
else
disp('Error: código incorrecto')
return
end
end
Y=[y y(n)];
axes(handles.axes1)
stairs(tr,R,'g')
axis([0 n*tb -0.5 1.5]);
gridon
title('Señal de Reloj')
axes(handles.axes2)
stairs(t,X)
axis([0 n*tb -0.5 1.5]);
gridon
title('Secuencia de Bits')
axes(handles.axes3)
stairs(t,Y,'r')
axis([0 n*tb -1.5 1.5]);
gridon
title('Codificación')
%Espectro
N=1024;
fs=2/tb;
f1=(0:(N/2)-1)*(fs/N);
Ex= fft(X,N);
Ey= fft(Y,N);
Zx=abs(Ex(1:(N/2)));
Zy=abs(Ey(1:(N/2)));
axes(handles.axes4)
plot(f1,Zx)
title('Espectro de la Señal Original')
axes(handles.axes5)
plot(f1,Zy,'r')
title('Espectro de la Señal Codificada')
Presentación de resultados

2. CÓDIGO NRZ DIFERENCIAL S

Para esta codificación se analiza el valor binario del vector de datos mediante un lazo
for según la ubicación de cada elemento del vector; entonces si se detecta un 1 al
vector de codificación se envía el valor del estado anterior del mismo vector de
codificación, mientras que si se detecta un 0 se debe cambiar el valor del estado anterior del
vector de codificación para lo cual se verifica si el estado anterior de este vector de tal forma
que si es 1 se envía -1 a la salida caso contrario si se detecta un -1 se envía un 1 a la salida.

Variación del código

%Codificación
t=0:1*tb:length(x)*tb;
tr=0:1*tb/2:length(x)*tb;
n=length(x);
X=[x x(n)];
r=1:2*n;
fori=1:n
r(2*i-1)=1;
r(2*i)=0;
end
R=[r r(n)];
y=1:n;
y(1)=1;
fori=2:n
if x(i)==1
y(i)=y(i-1);
elseif x(i)==0
if y(i-1)==1;
y(i)=-1;
elseif y(i-1)==-1;
y(i)=1;
end
else
disp('Error: códigoincorrecto')
return
end
end
Y=[y y(n)];

Presentación de resultados

Además, también se puede codificar caracteres con cualquiera de las dos codificaciones.
Para lo cual el carácter ingresado se transforma a binario según el valor decimal
correspondiente a la codificación ASCII que este tenga.
EQUIPO Y MATERIALES.

Presentar una lista de los materiales empleados para realizar la práctica (no importa que sean
virtuales)

Ej.

Sw. Matlab r2014


Simulink v?
Win10 o Win8?
4 u 8 Gb en RAM?
Procesador Core i5 velocida xx Mhz?
SIMULACIONES

Implemente los códigos para los distintos códigos de línea RZ, NRZ, NRZ-L, AMI, pseudoternaria,
Manchester, Manchester diferencial, B8ZS, HDB3
Para completar las simulaciones apoyarse en el documento de sugerencias bibliográficas incluido

FORMAS DE ONDA ADQUIRIDAS


Inserte las imágenes obtenidas de las códigos programados.

Figura 2. Salida código ¿??

APLICACIONES EN TECNOLOGIAS DE TELECOMUNICACIONES


Mencione las aplicaciones de los códigos de línea en las telecomunicaciones

CONCLUSIONES

(Agregar conclusiones por cada integrante del equipo y una conclusión consensuada, ambos
tipos de conclusiones deben ser en base a la comparación de los conceptos de la parte teórica,
con los resultados obtenidos de la parte práctica)

REFERENCIAS BIBLIOGRÁFICAS

(Deberán ser citadas acorde al formato APA V7 https://www.citefast.com/?


s=APA7#_Book)

También podría gustarte