Logo Studenta

Reporte P1 - César Esquivel

¡Este material tiene más páginas!

Vista previa del material en texto

1. Operaciones de Matrices.
Primero abriremos un nuevo archivo para hacer la interfaz gráfica, en la pestaña de HOME>NEW>APP>GUIDE
Aparecerá una nueva ventana, le damos “Blank GUI (Default)” y hacemos clic en “Ok”.
Una vez hecho esto, aparecerá la ventana para diseñar nuestra aplicación.
Ahora diseñamos nuestra aplicación de tal forma de que quede de esta manera.
Para hacer esto, primero creamos nuestro espacio de trabajo. Damos clic en “Panel” y lo extendemos para trabajar dentro de él.
Insertamos un cuadro de texto fijo, que diga “PROGRAMA OPERACIONES MATRICIALES”
Damos doble clic en el recuadro para que nos aparezca el recuadro de propiedades donde le cambiamos el nombre, tamaño de la letra (20) y color del recuadro (verde)
Ya que tenemos esto, creamos otros tres paneles, el primero para introducir las matrices, el segundo para seleccionar que operación vamos a realizar y el tercero para mostrar los resultados.
Ponemos en cada panel cuadros de texto fijo, en el primero “SELECCIÓN DE TAMAÑO DE MATRIZ”; en el segundo “SELECCIÓN DE OPERACIÓN” y finalmente en la tercera “RESULTADOS”.
Ahora creamos los botones de operación (suma, resta, multiplicación y división)
Ahora creamos dos paneles para definir el tamaño de las matrices “A” y “B” respectivamente.
Ahora, insertamos tablas para introducir los valores de las matrices.
Ahora, casi para terminar, introducimos un cuadro de texto para que se muestren los resultados.
Y, por último, ponemos color verde de fondo a todo el panel y lo acomodamos a que quede como el diseño presentado al inicio.
Ahora que ya se terminó la interfaz gráfica, procedemos a realizar la programación. Primero, programamos los botones de “Insertar”, damos clic derecho sobre el botón, nos vamos a la opción de “View Callbacks” y luego a “Callback”.
Luego, escribimos el siguiente código en la sección a la que nos manda el primer botón de “Insertar”.
Para el segundo botón de “Insertar”:
Ahora, nos vamos a los botones de operación, y los códigos correspondientes son los siguientes:
· Suma.
% --- Executes on button press in suma.
function suma_Callback(hObject, eventdata, handles)
% hObject handle to suma (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
value=get(handles.tA, 'data');
value=str2double(value);
 
value_two=get(handles.tB, 'data');
value_two=str2double(value_two);
 
if isequal(size(value),size(value_two))
 result_sum=value+value_two;
 set(handles.resultado, 'string', num2str(result_sum));
else
 ans = sprintf('Matrices no son cuadradas');
 set(handles.reultado, 'string',ans);
end
· Resta.
% --- Executes on button press in resta.
function resta_Callback(hObject, eventdata, handles)
% hObject handle to resta (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
value_three=get(handles.tA, 'data');
value_three=str2double(value_three);
 
value_four=get(handles.tB, 'data');
value_four=str2double(value_four);
if isequal(size(value_three),size(value_four))
 result_dif_two=value_three-value_four;
 set(handles.resultado, 'string', num2str(result_dif_two));
else
 ans1 = sprintf('Matrices no son cuadradas');
 set(handles.resultado, 'string',ans1);
end
· Multiplicación.
% --- Executes on button press in multi.
function multi_Callback(hObject, eventdata, handles)
% hObject handle to multi (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
global MA
global MB
value_five=get(handles.tA, 'data');
value_five=str2double(value_five);
 
value_six=get(handles.tB, 'data');
value_six=str2double(value_six);
 
if isequal(size(MA),size(MB))
 result_mult_three=value_five*value_six;
 set(handles.resultado, 'string', num2str(result_mult_three));
else
 ans2 = sprintf('Matrices no son cuadradas');
 set(handles.resultado, 'string',ans2);
end
· División.
% --- Executes on button press in division.
function division_Callback(hObject, eventdata, handles)
% hObject handle to division (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
value_seven=get(handles.tA, 'data');
value_seven=str2double(value_seven);
 
value_eight=get(handles.tB, 'data');
value_eight=str2double(value_eight);
 
result_division_four=value_seven/value_eight;
set(handles.resultado, 'string', num2str(result_division_four));
Ya como último paso, programamos el cuadro de texto en el que aparecerán los resultados de las operaciones matriciales.
2. Sistema de Ecuaciones 3x3.
Primero abriremos un nuevo archivo para hacer la interfaz gráfica, en la pestaña de HOME>NEW>APP>GUIDE
Aparecerá una nueva ventana, le damos “Blank GUI (Default)” y hacemos clic en “Ok”.
Una vez hecho esto, aparecerá la ventana para diseñar nuestra aplicación.
Ahora diseñamos nuestra aplicación de tal forma de que quede de esta manera.
Para hacer esto, primero creamos nuestro espacio de trabajo. Damos clic en “Panel” y lo extendemos para trabajar dentro de él.
Insertamos un cuadro de texto fijo, que diga “PROGRAMA SOLUCION DE SISTEMA DE ECUACIONES 3X3”
Damos doble clic en el recuadro para que nos aparezca el recuadro de propiedades donde le cambiamos el nombre, tamaño de la letra (20) y color del recuadro (magenta)
También insertamos un cuadro de texto estático que diga “INTRODUCE LAS ECUACIONES PORFAVOR”, así mismo, insertamos cuadros de texto editables para introducir los coeficientes de las variables, un botón de cálculo y un panel para los resultados.
Finalmente acabamos con la interfaz gráfica, que queda de la siguiente manera:
Procedemos con la parte de programación. Primero, programamos los cuadros de texto en donde se insertan nuestros valores, damos clic derecho sobre el cuadro, nos vamos a la opción de “View Callbacks” y luego a “Callback”.
Para x1:
Para y1:
Para z1:
Y así sucesivamente hasta completar todos, posteriormente, se programa el botón de “CALCULAR RESULTADOS”
Ya, por último, programamos el cuadro de texto donde aparecerán los resultados.
3. Ecuaciones de segundo grado.
Primero abriremos un nuevo archivo para hacer la interfaz gráfica, en la pestaña de HOME>NEW>APP>GUIDE
Aparecerá una nueva ventana, le damos “Blank GUI (Default)” y hacemos clic en “Ok”.
Una vez hecho esto, aparecerá la ventana para diseñar nuestra aplicación.
Crearemos nuestro espacio de trabajo en el que tenemos que añadir un panel que se llamará “ECUACION DE SEGUNDO GRADO”, dentro de ese panel se agregan 5 textos fijos, 5 cuadros de texto variable y un botón.
Agregados y acomodados quedan de la siguiente manera 
Este programa funciona bajo el siguiente código % --- Executes on button press in calcular.
function calcular_Callback(hObject, eventdata, handles)
% hObject handle to calcular (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
A=str2num(get(handles.a,'string'));
B=str2num(get(handles.b,'string'));
C=str2num(get(handles.c,'string'));
d=B^2-4*A*C;
if d>0
 X1=(-B+sqrt(d))/(2*A);
 X2=(-B-sqrt(d))/(2*A);
 
 set(handles.x1,'string',num2str(X1));
 set(handles.x2,'string',num2str(X2));
end
if d<0
 X1=(-B+sqrt(d))/(2*A);
 X2=(-B-sqrt(d))/(2*A);
 
 set(handles.x1,'string',num2str(X1));
 set(handles.x2,'string',num2str(X2));
end
 
 if d==0
 X1=-B/(2*A);
 X2=-B/(2*A);
 
 set(handles.x1,'string',num2str(X1));
 set(handles.x2,'string',num2str(X2));end
4. VOLUMEN DE TRABAJO
Primero abriremos un nuevo archivo para hacer la interfaz gráfica, en la pestaña de HOME>NEW>APP>GUIDE
Aparecerá una nueva ventana, le damos “Blank GUI (Default)” y hacemos clic en “Ok”.
Una vez hecho esto, aparecerá la ventana para diseñar nuestra aplicación.
En nuestro espacio de trabajo añadimos el panel principal llamado “CALCULO DE VOLUMENES DE TRABAJO”, dentro de este panel habrá 2 paneles secundarios, uno para robot cilíndrico y otro para robot cartesiano, se usarán 15 cuadros de texto fijo, 9 cuadros de texto variable y 2 botones.
Añadido lo anterior el programa queda con la siguiente apariencia 
Para el primer botón se requiere ejecutar el siguiente código % --- Executes on button press in cal.
function cal_Callback(hObject, eventdata, handles)
% hObject handle to cal (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
A=str2num(get(handles.int,'string'));
B=str2num(get(handles.ext,'string'));
C=str2num(get(handles.grados,'string'));
D=str2num(get(handles.largo,'string'));
 
E=(pi*(A^2))/2;
F=(pi*(B^2))/2;
G=E*D;
H=F*D;
I=C/360;
J=H-G;
K=J*I;
 
set(handles.resultado,'string',num2str(K));
Para el segundo botón cambian las ecuaciones y por lo tanto el código es el siguiente 
% --- Executes on button press in multi.
function multi_Callback(hObject, eventdata, handles)
% hObject handle to multi (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
M=str2num(get(handles.x,'string'));
N=str2num(get(handles.y,'string'));
O=str2num(get(handles.z,'string'));
P=M*N*O;
 
set(handles.resul,'string',num2str(P));

Otros materiales