Sunteți pe pagina 1din 7

PROPAGACIN Y SATLITES

INGENIERA ELECTRNICA
INTERFAZ GRFICA DE USUARIO EN MATLAB PARA CALCULAR PRDIDAS EN EL MODELO DE PROPAGACIN DE TIERRA PLANA. Ingrid V. Sarabia Muoz Jess E. Amaya Bermdez Randi Y. Amaya Ibaez Cod: 0161011 Cod: 0161059 Cod: 0161052

Presentado A: Ing. Jos Alejo Rangel Roln.  OBJETIVOS ESPECFICOS y Matlab es un programa interactivo para clculo numrico y tratamiento de datos. Contiene muchas herramientas y utilidades que permiten adems diversas funcionalidades, como la presentacin grfica en 2 y 3 dimensiones. Esos tiles estn agrupados en "paquetes" (toolboxes). Matlab es un programa command-driven, es decir, que se introducen las rdenes escribindolas una a una a continuacin del smbolo (prompt) que aparece en una interfaz de usuario (una ventana). A Matlab se le pueden aadir paquetes especializados para algunas tareas (por ejemplo, para tratamiento de imgenes). Trabajar con Matlab, aprender un lenguaje simple. En esta introduccin se explica el uso de una de las herramientas ms utilizadas como el GUIDE. GUIDE es un entorno de programacin visual disponible en MATLAB para realizar y ejecutar programas que necesiten ingreso continuo de datos. Tiene las caractersticas bsicas de todos los programas visuales como Visual Basic o Visual C++. 1. OBJETIVOS  OBJETIVOS GENERALES y Realizar un entorno grafico para calcular un parmetro del modelo de propagacin de tierra plana utilizando la herramienta GUIDE de MATLAB. Utilizar la herramienta GUIDE para calcular las prdidas de acuerdo al modelo de propagacin. Realizar la presentacin adecuada del programa para darle un aspecto agradable. Personalizar los botones de la interfaz para darle un aspecto casi real al modelo de tierra plana. 2. MARCO TEORICO INICIO DEL GUIDE Se puede Iniciar este proyecto, de dos maneras: Ejecutando la siguiente instruccin en la ventana de comandos: >> guide Haciendo un click en el cono que muestra la figura 1: cono GUIDE. Se presenta el siguiente cuadro de dilogo: Ventana de inicio de GUI.

INTRODUCCIN

PROPAGACIN Y SATLITES
INGENIERA ELECTRNICA
opciones que se encuentran en el men despegable y haciendo click en el botn de comando. d) Modal Question Dialog Con esta opcin se muestra en la pantalla un cuadro de dilogo comn, el cual consta de una pequea imagen, una etiqueta y dos botones Yes y No, dependiendo del botn que se presione, el GUI retorna el texto seleccionado (la cadena de caracteres Yes o No). Se elije la primera opcin, Blank GUI, y se tiene:

Fig.1 Icono Guide.

Posteriormente se presenta el siguiente cuadro de dialogo:

Fig.3. Entorno De Diseo De Gui. Fig.2 Cuadro De Dialogo. Se presentan las siguientes opciones: a) Blank GUI (Default) La opcin de interfaz grfica de usuario en blanco (viene predeterminada), nos Presenta un formulario nuevo, en el cual se puede disear el programa. b) GUI with Uicontrols Esta opcin presenta un ejemplo en el cual se calcula la masa, dada la densidad y el volumen, en alguno de los dos sistemas de unidades. c) GUI with Axes and Menu Esta opcin contiene el men File con las opciones Open, Print y Close. En el formulario tiene un Popup menu, un push button y un objeto Axes, se puede ejecutar el programa eligiendo alguna de las seis PROPIEDADES DE LOS COMPONENTES Cada uno de los elementos de GUI, tiene un conjunto de opciones que se puede acceder con click derecho (como se muestra en la figura .4).

Fig.4 Opciones Del Componente.

PROPAGACIN Y SATLITES
INGENIERA ELECTRNICA
Para personalizar cada elemento se utiliza la opcin Property Inspector. El cual permite ver y editar las propiedades de un objeto; Al hacer click derecho en el elemento ubicado en el rea de diseo, la opcin View Callbacks, que al ejecutarla, abre el archivo .m, asociado al diseo y lo posiciona en la parte del programa; que corresponde a la subrutina que se ejecutar cuando se realice una determinada accin sobre el elemento que se est editando . Con la opcin Property Inspector descrita anteriormente se pude cambiar el nombre con el que aparecer la funcin del pushbutton en el m-file, simplemente editando el campo Tag, Se contina editando los dems componentes, hasta llegar a tener la presentacin requerida por el programador dejando por insertar la imagen jpg para finalizada la pantalla. Ejecutando Ctrl+T, se guarda el programa con el nombre asignado en la carpeta MIS_MATLAB. A continuacin en la ventana Current Directory aparecen el archivo nombre.fig y .m. PERSONALIZAR BOTONES La interfaz grfica de usuario de MATLAB permite personalizar la presentacin del botn que selecciona el modelo como lo muestra la figura.7. Para lograr esto, se edita el cdigo correspondiente en la parte del mfile destinada a la inicializacin del programa. Primero hay que cargar la imagen de fondo el cual es opcional y se realiza utilizando el cdigo siguiente: %Carga la imagen de fondo (opcional) [x,map]=imread('hammerfall.jpg','jpg'); image(x),colormap(map),axis off,hold on Segundo se edita el cdigo que coloca una imagen en cada botn: [a,map]=imread(funcion.jpg'); [r,c,d]=size(a); x=ceil(r/30); y=ceil(c/30); g=a(1:x:end,1:y:end,:); g(g==255)=5.5*255; set(handles.pushbutton1,'CData',g); Este cdigo se repite, de manera que lo nico que cambia es el tipo de funcin en la

Fig.5.Property Inspertor FUNCIONAMIENTO DE LA APLICACIN GUI Una aplicacin GUIDE consta de dos archivos: .m y .fig. El archivo .m es el que contiene el cdigo con las correspondencias de los botones de control de la interfaz y el archivo .fig contiene los elementos grficos. Cada vez que se adicione un nuevo elemento en la interfaz grfica, se genera automticamente un cdigo en el archivo .m. PRESENTACIN DEL PROGRAMA Para la presentacin del programa, se va a programar una pantalla donde se va a colocar el tema de la interfaz, que en este caso es el modelo de propagacin de tierra plana, el nombre y cdigo de los programadores y la imagen tipo jpg correspondiente al tema de comunicaciones.

PROPAGACIN Y SATLITES
INGENIERA ELECTRNICA
instruccin [a,map]=imread(funcin.jpg); pues esto indica las funciones de cada pushbutton. Para personalizar an ms, se puede hacer aparecer el nombre del botn cuando se acerca el cursor, simplemente llenando el campo TooltipString en el Property Inspector. 'gui_Singleton', gui_Singleton, ... 'gui_OpeningFcn', @Tierra_Plana_OpeningFcn, ... 'gui_OutputFcn', @Tierra_Plana_OutputFcn, ... 'gui_LayoutFcn', [], ... 'gui_Callback', []); if nargin && ischar(varargin{1}) gui_State.gui_Callback = str2func(varargin{1}); end if nargout [varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:}); else gui_mainfcn(gui_State, varargin{:}); end function Tierra_Plana_OpeningFcn(hObject, eventdata, handles, varargin) background = imread('background.jpg'); %Leer imagen axes(handles.background); %Carga la imagen en background axis off; imshow(background); handles.output = hObject; guidata(hObject, handles); function varargout = Tierra_Plana_OutputFcn(hObject, eventdata, handles) varargout{1} = handles.output; function pushbutton1_Callback(hObject, eventdata, handles) A=handles.edit1; B=handles.edit2; C=handles.edit6; D=handles.edit7; E=handles.edit8; F=handles.edit14; G=handles.edit15; H=handles.edit16; I=handles.edit17; J=handles.edit18;

INTERFAZ DE MODELOS DE PROPAGACION MDULO GUI CREADOS La secuencia de las figuras a continuacin muestra la manera como se ejecuta la interfaz creada en GUI.

Fig. 6. Proceso de construccin de la interfaz grfica. CDIGO REALIZADO EN MATLAB % Begin initialization code - DO NOT EDIT gui_Singleton = 1; gui_State = struct('gui_Name', mfilename, ...

PROPAGACIN Y SATLITES
INGENIERA ELECTRNICA
lose=((J)+(H)+(I)(32.4+20*Log10(A)+20*log10(B))-((F) + (G) + ((6/100)*D))-((F) + (G) + ((6/100)*E))); set(handles.perdidas,'String',lose); function edit1_Callback(hObject, eventdata, handles) Val=get(hObject,'String'); %Almacenar valor ingresado NewVal = str2double(Val); %Transformar a formato double handles.edit1=NewVal; %Almacenar en identificador guidata(hObject,handles); %Salvar datos de la aplicacin function edit1_CreateFcn(hObject, eventdata, handles) if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end function edit2_Callback(hObject, eventdata, handles) Val=get(hObject,'String'); %Almacenar valor ingresado NewVal = str2double(Val); %Transformar a formato double handles.edit2=NewVal; %Almacenar en identificador guidata(hObject,handles); %Salvar datos de la aplicacin function edit2_CreateFcn(hObject, eventdata, handles) if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end function perdidas_Callback(hObject, eventdata, handles) function perdidas_CreateFcn(hObject, eventdata, handles) if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end function edit6_Callback(hObject, eventdata, handles) Val=get(hObject,'String'); %Almacenar valor ingresado NewVal = str2double(Val); %Transformar a formato double handles.edit6=NewVal; %Almacenar en identificador guidata(hObject,handles); %Salvar datos de la aplicacin function edit6_CreateFcn(hObject, eventdata, handles) if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end function edit7_Callback(hObject, eventdata, handles) % Val=get(hObject,'String'); %Almacenar valor ingresado NewVal = str2double(Val); %Transformar a formato double handles.edit7=NewVal; %Almacenar en identificador guidata(hObject,handles); %Salvar datos de la aplicacin function edit7_CreateFcn(hObject, eventdata, handles) if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end function edit8_Callback(hObject, eventdata, handles) NewVal = str2double(Val); %Transformar a formato double

PROPAGACIN Y SATLITES
INGENIERA ELECTRNICA
handles.edit8=NewVal; %Almacenar en identificador guidata(hObject,handles); %Salvar datos de la aplicacin function edit8_CreateFcn(hObject, eventdata, handles) if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end function edit14_Callback(hObject, eventdata, handles) NewVal = str2double(Val); %Transformar a formato double handles.edit14=NewVal; %Almacenar en identificador guidata(hObject,handles); %Salvar datos de la aplicacin function edit14_CreateFcn(hObject, eventdata, handles) if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end function edit15_Callback(hObject, eventdata, handles) Val=get(hObject,'String'); %Almacenar valor ingresado NewVal = str2double(Val); %Transformar a formato double handles.edit15=NewVal; %Almacenar en identificador guidata(hObject,handles); %Salvar datos de la aplicacin function edit15_CreateFcn(hObject, eventdata, handles) if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end function edit16_Callback(hObject, eventdata, handles) Val=get(hObject,'String'); %Almacenar valor ingresado NewVal = str2double(Val); %Transformar a formato double handles.edit16=NewVal; %Almacenar en identificador guidata(hObject,handles); %Salvar datos de la aplicacin function edit16_CreateFcn(hObject, eventdata, handles) if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end function edit17_Callback(hObject, eventdata, handles) Val=get(hObject,'String'); %Almacenar valor ingresado NewVal = str2double(Val); %Transformar a formato double handles.edit17=NewVal; %Almacenar en identificador guidata(hObject,handles); %Salvar datos de la aplicacin function edit17_CreateFcn(hObject, eventdata, handles) if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end function edit18_Callback(hObject, eventdata, handles)

PROPAGACIN Y SATLITES
INGENIERA ELECTRNICA
Val=get(hObject,'String'); %Almacenar valor ingresado NewVal = str2double(Val); %Transformar a formato double handles.edit18=NewVal; %Almacenar en identificador guidata(hObject,handles); %Salvar datos de la aplicacin function edit18_CreateFcn(hObject, eventdata, handles) if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end function popupmenu1_Callback(hObject, eventdata, handles) function popupmenu1_CreateFcn(hObject, eventdata, handles) if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end En el pantallazo del modelo es posible calcular las prdidas presentes dependiendo de los parmetros suministrados por el usuario, tales como las distancias y alturas del receptor o transmisor segn sea el caso. CONCLUSIONES  Una interfaz grafica de usuario puede interactuar con otra herramienta de MATLAB como SIMULINK para poder realizar funciones especificas.  Se puede cambiar el tamao de la interfaz grafica de usuario Haciendo doble click en el rea de diseo de la interfaz y activar el parmetro resize.  Cuando se cambia el nombre a una GUI con rename se produce un error, esto es consecuencia de que el nombre de la interfaz debe ser el mismo de la funcin principal. Entonces para cambiar el nombre a la interfaz simplemente se usa Save As en el archivo .fig.  La Herramienta GUI es una excelente opcin para realizar un ambiente agradable para el usuario y a la vez utilizar el gran potencial matemtico que posee Matlab. WEBGRAFA  Informacin sobre las herramientas de MATLAB www.mathworks.com.  Manual de interfaz grafica de usuario en MATLAB http://www.mathworks.com/matlabcentr al/fileexchange/loadFile.do?objectId=12 122&objectType=FILE  Nise, N.Sistemas de control para Ingeniera, 2004, 1 edicin ,CECSA S.A., Mxico, 970 pginas

Fig. 7. Modelo Tierra Plana

S-ar putea să vă placă și