Está en la página 1de 6

GESTIÓN DEL CONOCIMIENTO APRENDIZAJE Y DOCENCIA VERSIÓN 04

CODIGO F-GD-02
PLAN DE ASIGNATURA / SEMINARIO / MÓDULO
Página 1 de 6

Práctica No 1

SIMULACIÓN DE MODULACIÓN POR DESPLAZAMIENTO DE AMPLITUD- ASK


Objetivos

1. Recordar las características principales de la interfaz gráfica de usuario (Guide) de Matlab.


2. Dibujar en Matlab señales digitales y análogas.
3. Diseñar una interfaz gráfica que simule la modulación por desplazamiento de amplitud por
variación del nivel de la onda portadora.
4. Diseñar una interfaz gráfica que simule la modulación por desplazamiento de amplitud por
supresión de la onda portadora.

Pre-Laboratorio

1. Recordar los procedimientos básicos para trabajar con el guide de Matlab.


2. Revisar los dos tipos de modulación por desplazamiento de amplitud, por variación de
nivel de la onda portadora y por supresión de la onda portadora.

Procedimiento

1- Cree la siguiente interfaz en el guide de Matlab.

Figura 1: Objetos que intervienen en el guide

11/11/2010
GESTIÓN DEL CONOCIMIENTO APRENDIZAJE Y DOCENCIA VERSIÓN 04
CODIGO F-GD-02
PLAN DE ASIGNATURA / SEMINARIO / MÓDULO
Página 2 de 6

La interfaz cuenta con 3 paneles, 5 axes, 7 botones, 12 edit text, 1 popupmenu, y 5 static-text.
Tenga en cuenta que se debe cambiar el valor de la función tag de algunos objetos por el texto
naranja que aparece en la figura.

2- Realice la programación para la señal moduladora teniendo en cuenta las siguientes


funcionalidades.

a-) Si damos clic en el botón “0s”, la señal moduladora cambiará el valor de voltaje de sus 10
bits a 0 y realizará su respectiva gráfica. Igual pasa si oprimimos el botón “1s” y “1s y 0s”

Figura 2: Señal moduladora si pulsamos el botón “0s”, “1s” o “1s y 0s”.

En el callback del botón “ceros”, poner el valor de 0 en


cada bit
set(handles.bit1,'String','0');
set(handles.bit2,'String','0');
set(handles.bit3,'String','0');


set(handles.bit10,'String','0');

%Se llama la función leerdatos para que lea los bits de


%cada edit_text y luego dibuja la señal moduladora
leerdatos(hObject, eventdata, handles);
GESTIÓN DEL CONOCIMIENTO APRENDIZAJE Y DOCENCIA VERSIÓN 04
CODIGO F-GD-02
PLAN DE ASIGNATURA / SEMINARIO / MÓDULO
Página 3 de 6

function [datos] =leerdatos (hObject, eventdata,


handles)

Dibujar Señal digital


d1=str2double(get(handles.bit1,'String'));
d2=str2double(get(handles.bit2,'String'));
d3=str2double(get(handles.bit3,'String'));


d10=str2double(get(handles.bit10,'String'));

Guarda todos los bits en la variable datos


datos=[d1,d2,d3,d4,d5,d6,d7,d8,d9,d10];

handles.bits=datos;
%Graficar señal moduladora
axes(handles.axes1);
hold off;
moduladora=[];
for n=1:length(datos);
if datos(n)==0
muestras_bit=[zeros(1,50)];
else
muestras_bit=[ones(1,50)];
end
moduladora=[moduladora muestras_bit];
end

tiem=0:(1/(50*length(datos)-1)):1;
plot(tiem,moduladora,'LineWidth',1.5);grid on;
xlabel('Tiempo(seg)','fontsize',10,'fontweight','b');
ylabel('Voltaje (V)','fontsize',10,'fontweight','b');
axis([0 1 -0.3 1.3]);

b-) Si oprimimos el botón random, la señal modulara tomara 1s y 0s de forma aleatoria y


dibujará su respectiva gráfica.

Figura 3: Señal moduladora cuando pulsamos el botón random


GESTIÓN DEL CONOCIMIENTO APRENDIZAJE Y DOCENCIA VERSIÓN 04
CODIGO F-GD-02
PLAN DE ASIGNATURA / SEMINARIO / MÓDULO
Página 4 de 6

Generar bits aleatorios


a=round(rand(1,10)); %generar bits aleatorios
set(handles.bit1,'String',a(1));
set(handles.bit2,'String',a(2));
set(handles.bit3,'String',a(3));


set(handles.bit10,'String',a(10));

% leer datos y dibujar la señal.


leerdatos(hObject, eventdata, handles) ;

c-) Además se puede cambiar el valor de cualquier bit dando clic en el bit o bits a cambiar y la
interfaz cambiará la gráfica de la señal.

En cada callback de cada bit


%Volver a leer datos y dibujar señal

function bit1_Callback(hObject, eventdata, handles)


[ran]=leerdatos(hObject, eventdata, handles) ;

3- Realizar la programación para la señal portadora, cambiando su respectiva frecuencia y


amplitud.

Figura 4: Cambios de frecuencia y amplitud de la portadora


En el Callback del botón Modular

Obtener los valores de frecuencia y amplitud de la portadora


fc=str2double(get(handles.fportadora,'String'));
A= str2double (get(handles.Amplitud,'String'));
t= 0:0.001:1;
p=(A)*sin(2*pi*fc*t);
plot(t,p,'LineWidth',1.5);grid on;

4- Realizar la programación para dibujar la señal modulada por variación del nivel de la onda
portadora

Figura 5: Señal modulada por variación de la onda portadora


GESTIÓN DEL CONOCIMIENTO APRENDIZAJE Y DOCENCIA VERSIÓN 04
CODIGO F-GD-02
PLAN DE ASIGNATURA / SEMINARIO / MÓDULO
Página 5 de 6

Dibujar la señal modulada ASK


cod=get(handles.selec_mod,'Value');
switch cod
case 1
%*-*-*-*Modulation ASK*-*-*-*-*-*-*-*-*
set(handles.axes3,'visible','on')
hold off;
axes(handles.axes3)
g=handles.bits; %moduladora
n=1;
while n<=length(g)
if g(n)==0
tx=(n-1)*0.1:0.1/100:n*0.1;
p=(A/2)*sin(2*pi*fc*tx);
plot(tx,p,'LineWidth',1.5);grid on;
hold on;
else
tx=(n-1)*0.1:0.1/100:n*0.1;
p=(A)*sin(2*pi*fc*tx);
plot(tx,p,'LineWidth',1.5);grid on;
hold on;
end
n=n+1;
end
case 2
%*-*-*-*Modulation OOK*-*-*-*-*-*-*-*-*

5- Realizar la programación para dibujar la señal modulada por supresión de la onda


portadora.

Figura 6: Señal modulada por supresión de la onda portadora.

Para entregar: Se debe entregar su propia interfaz grafica con los siguientes requisitos.

1- Graficar la modulación OOK.


2- Cambiar los edit text de los bits por botones toggles.
GESTIÓN DEL CONOCIMIENTO APRENDIZAJE Y DOCENCIA VERSIÓN 04
CODIGO F-GD-02
PLAN DE ASIGNATURA / SEMINARIO / MÓDULO
Página 6 de 6

3- Al ejecutar por primera vez, la interfaz debe poner valores predeterminados en la señal de
información, en la señal portadora y graficar las tres señales con la modulación ASK.
4- Adicionar los logos cuando se ejecuta por primera vez la interfaz.
5- Personalizar el diseño (Colores, tamaño de las letras, Títulos).
6- Adicionar RadioButtons que me brinda la opción de escoger una señal seno o coseno en la
portadora.
7- Actualizar la señal portadora y modulada si se hace un cambio en la señal de Información.
8- Adicionar un Pop-up Menu, RadioButton o un ToogleButton para el idioma (Ingles,Españo)
9- Instalar un botón de ayuda.
10- Adicionar los créditos
11- Agregar el botón salir
12- Acondicionar toda la interfaz para que cuando se cambie un dato en cualquier punto de la
interfaz, se realice los cambios adecuados y dibuje las tres señales.
13- Si realizó el punto anterior de forma adecuada, no es necesario el botón Modular, por lo
tanto, se debe eliminar.

También podría gustarte