Sie sind auf Seite 1von 8

UNIVERSIDAD NACIONAL PERO RUIZ GALLO

FACULTAD DE CIENCIAS FÍSICAS Y MATEMÁTICAS

ESCUELA PROFESIONAL DE INGENIERÍA


ELECTRÓNICA

PRESENTADO POR:

 Altamirano Mego Miguel Angel.


 Millones Chapoñan Miguel Angel.
 Quiroz Campoverde Jorge Anibal.
 Revilla Pérez Elio Francisco.
GENERADOR DE SEÑALES
Muchos dispositivos electrónicos necesitan para su correcto funcionamiento señales que varíen su
amplitud en función del tiempo de forma repetitiva. Este tipo de señales las producen los llamados
osciladores o generadores de señal.

Este tipo de circuitos forma parte de un gran número de equipos, desde los receptores de radio
comunes hasta los más complejos sistemas de radar y IQS superordenadores, pasando por
instrumentos de laboratorio utilizados para ajustar, examinar o reparar otros equipos electrónicos

Esto se puede lograr mediante amplificadores operacionales que proporcionan a su salida distintas
formas de señal. Aunque esto también se puede lograr mediante tarjetas como Arduino, Rasberry
y Sarter kit pic24f o con una PC.

El objetivo de este proyecto es crear un programa en Matlab que se encargue de enviar señales
vía la tarjeta de audio de la computadora.

1. AMPLIFICADORES OPERACIONALES

Se realiza mediante un circuito denominado oscilador es un circuito capaz de proporcionar a


su salida una señal periódica de frecuencia y amplitud determinadas.

La frecuencia de salida viene determinada por el valor de los componentes utilizados en el


circuito. En algunos montajes específicos puede variar en función de una magnitud aplicada
desde el exterior, que puede ser; por ejemplo, un nivel de tensión.
2. MATLAB

Nuestro grupo ha decido realizar el generador de señales mediante la poderosa herramienta que
es MATLAB, se ha decido generar las siguientes formas de onda:

Para ellos se utilizó la herramienta GUIDE

2.1. GUIDE

Acerca de GUIDE: las interfaces graficas de usuario (GUI-Graphical User Interface en inglés), es la
forma en que el usuario interactúa con el programa o el sistema operativo de una computadora.
Una GUI contiene diferentes elementos gráficos tales como: botones, campos de texto, menús,
gráficos, etc. Existen diferentes lenguajes de programación que permiten crear una GUI tales
como: C, Visual Basic, TK, etc. Solo por mencionar algunos. Todos ellos permiten usar diferentes
controles y maneras de programarlos. MatLab nos permite realizar GUIs de una manera muy
sencilla usando GUIDE (Graphical User Interface Development Enviroment). GUIDE es un entorno
de programación visual disponible en MATLAB para realizar y ejecutar programas que necesiten
ingreso continuo de datos.

Creando una GUI en MatLab: Una de las tantas herramientas con la que cuenta MatLab, es la
creación de GUIs. La forma de implementar las GUI con MatLab es crear los objetos y definir las
acciones que cada uno va a realizar. Al usar GUIDE obtendremos dos archivos:

Un archivo FIG – Contiene la descripción de los componentes que contiene la interface.

Un archivo M – Contiene las funciones y los controles del GUI así como el callback.

Un callback se define como la acción que llevara a cabo un objeto de la GUI cuando el usuario lo
active. Es decir, suponga que en una ventana existe un botón el cual al presionarlo ejecutará una
serie de acciones, a eso se le conoce como la función del callback.

 Hacer click en el icono que se muestra en la figura:


 Luego se presenta el siguiente cuadro de dialogo:

 Al pulsar en ok aparece la siguiente ventana.


La siguiente tabla muestra una descripción de los componentes:

Siguiendo los pasos para crear muestra GUI llegamos al siguiente resultado:
Callback de cada componente:

FORMA DE ONDA:

function opcion_Callback(hObject, eventdata, handles)


% hObject handle to opcion (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
global y;
global t;
global f;
num=get(hObject,'value')
switch num
case 2
y= sin(2*pi*f*t); %onda senoidal
case 3
y=square(2*pi*f*t); %onda cuadrada
case 4
y=sawtooth(2*pi*f*t,0.5); %onda triangular
case 5
y=sawtooth(2*pi*f*t); %onda diente de sierra
otherwise
msgbox('no ha elegido la forma de onda');
y=0;
end

FRECUENCIA:

function frecuencia_Callback(hObject, eventdata, handles)


% hObject handle to frecuencia (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
global f;
global fs;
global t;

f=str2double(get(handles.frecuencia,'string'));
fs= f*50;
p=fs;
if (p > 47000)
fs=f*20
end
Tm= 1/fs; % tiempo
Ti= 0; % tiempo inicial
Tf= 2; % tiempo final
incremento=Tm;
t= Ti:incremento:1/f % rango de muestras
GENERAR SEÑAL:

function generar_Callback(hObject, eventdata, handles)


% hObject handle to generar (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
%prueba++++++++++++++++++++++++
global a;
global y;
global fs;
global t;
plot(handles.grafica1,t,y);
ylim([-3/2,3/2]);
set(handles.grafica1,'xgrid','on','ygrid','on');
%for i=0:1:10
while a==0
sound(y,fs);

end
set(handles.detener,'Backgroundcolor','r');
clc,clear;

STOP:

function detener_Callback(hObject, eventdata, handles)


% hObject handle to detener (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
global a;
set(handles.detener,'Backgroundcolor','yellow');
a=get(hObject,'Value');

AYUDA:

function pushbutton1_Callback(hObject, eventdata, handles)


% hObject handle to pushbutton1 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
msgbox('Especificaciones para el uso del generador:
1-Elegir forma de onda
2-Ingrese la frecuencia
3- luego pulse genere señal
4-para detener stop');
Simulación finalizada:

Señal senoidal con una frecuencia de 1 KHz:

Das könnte Ihnen auch gefallen