Académique Documents
Professionnel Documents
Culture Documents
Alumnos:
CARLOS ALBERTO HOYA SANJUAN
JOSUE YARCE
FRANK FERLEY GARZON
Curso:
Software para Ingeniera
Grupo No. 203036_25
Tutor:
JUAN MONROY
Contenido
INTRODUCCIN .......................................................................................................................... 3
1.
2.
2.1.
2.2.
3.
4.
5.
6.
Conclusiones ................................................................................................................................. 27
BIBLIOGRAFIA .......................................................................................................................... 28
INTRODUCCIN
MATLAB es un lenguaje de alto desempeo diseado para realizar clculos tcnicos. MATLAB
integra el clculo, la visualizacin y la programacin en un ambiente fcil de utilizar donde los
problemas y las soluciones se expresan en una notacin matemtica. MATLAB es un sistema
interactivo cuyo elemento bsico de datos es el arreglo que no requiere de dimensionamiento
previo. El nombre abreviado de MATLAB es MATrix LABoratory, es un programa para
realizar clculos numricos con vectores y matrices.
Como caso particular puede tambin trabajar con nmeros escalares, tanto reales como
complejos. Una de las capacidades ms atractivas es la de realizar una amplia variedad de
grficos en dos y tres dimensiones. MATLAB tiene tambin un lenguaje de programacin propio
(lenguaje M). MATLAB se utiliza ampliamente en:
Clculos numricos
Desarrollo de algoritmos
Modelado, simulacin y prueba de prototipos
Anlisis de datos, exploracin y visualizacin
Graficacin de datos con fines cientficos o de ingeniera
Desarrollo de aplicaciones que requieran de una interfaz grfica de usuario (GUI, Graphical
User Interface).
En el mbito acadmico y de investigacin, es la herramienta estndar para los cursos
introductorios y avanzados de matemticas, ingeniera e investigacin. En la industria MATLAB
es la herramienta usada para el anlisis, investigacin y desarrollo de nuevos productos
tecnolgicos. La ventaja principal de MATLAB es el uso de familias de comandos de reas
especficas llamadas toolboxes. Los toolboxes son grupos de comandos de MATLAB (archivos
M) que extienden el ambiente de MATLAB para resolver problemas de reas especficas de la
ciencia e ingeniera. Por ejemplo, existen toolboxes para las reas de Procesamiento Digital de
Seales, Sistemas de Control, Redes Neuronales, Lgica Difusa, Wavelets, etc..
para
solucionar
este
problema.
En la etapa de mostrar el tiempo de cada fase, nos valimos de una matriz de 10 x 5 donde
mediante ciclos For se fueron transformando en unos a medida que el tiempo transcurra.
En cada fase se control de manera independiente donde se podra introducir el tiempo y otra
funcin donde se podra realizar la secuencia de las fases una a una indicando el tiempo restante,
e informando cuando el tiempo haya terminado.
Hecho en Matlab
d(6,:) = (1);
d(7:9,1) = (1);
d(9,:) = (1)
Escribir = Cuadro de texto 5, d
Esperar 5 segundos
retro2 = c;
Hacer para i = 1 a c
Hacer para j= 1 a 5
si retro2 = 0 entonces
Salir del ciclo
Fin si
retro2 = retro2 -1;
M(i,j) = retro2;
Escribir Cuadro de texto 5,M
Esperar 1 segundo
M(i,j) = 1
Escribir Cuadro de texto 5, M
Esperar 1 segundo
fin para
fin para
fin Botn Dos
Funcin Botn Tres
Escribir Fase 3 en curso
e = Cuadro de texto 3
M = Matriz ceros (10,5)
f = M;
f(2,:) =
f(6, :) =
f(9 ,:) =
f(2:9,5)=
1
1
1
1
Botn Cuatro
Hacer para t = 1 a 3
Elegir caso t ;
Caso 1
Escribir Fase 1 en curso
a = Cuadro de texto 1
M= matriz ceros[10,5]
b = M
b(2, 1:3)=1
b(2:8,3)=1
b(8,:) = 1
Escribir Cuadro de texto 5
Escribir Cuadro de texto 5
retro = a;
, b
, M
hacer para i = 1 : a;
hacer para j= 1:5
si retro = 0 entonces
Salir de ciclo
Fin si
retro = retro -1
M(i,j) = retro
Escribir = Cuadro de texto 5
Esperar 1 segundo
M(i,j) = 1;
Escribir = Cuadro de texto 5
Esperar 1 segundo
fin para
Fin para
Caso 2
Escribir Fase 2 en curso
c = Cuadro de texto 3
M = matriz ceros(10,5)
d= M;
d(2,:) = (1)
d(2:6,5) = (1);
d(6,:) = (1);
d(7:9,1) = (1);
d(9,:) = (1)
Escribir = Cuadro de texto 5
Esperar 5 segundos
retro2 = c;
Hacer
para
, d
i = 1 a c
Hacer para j= 1 a 5
= M
=M
si retro2 = 0 entonces
Salir del ciclo
Fin si
retro2 = retro2 -1;
M(i,j) = retro2;
Escribir Cuadro de texto 5 ,M
Esperar 1 segundo
M(i,j) = 1
Escribir Cuadro de texto 5 , M
Esperar 1 segundo
fin para
fin para
Caso 3
Escribir Fase 3 en curso
e = Cuadro de texto 3
M = Matriz ceros (10,5)
f = M;
f(2,:) =
f(6, :) =
f(9 ,:) =
f(2:9,5)=
1
1
1
1
, f
,M
retro3 = e;
Hacer para i = 1 a e;
Hacer para j= 1 a 5
si retro3 = 0 Entonces
Salir del ciclo
Fin si
retro3 = retro3 -1
M(i,j) = retro3;
Escribir Cuadro de texto 5
Esperar 1 segundo
M(i,j) = 1;
Escribir Cuadro de texto 5
Esperar 1 segundo
Fin para
Fin para
Fin Botn Tres
Fin
Fin
Fin
Fin
elegir Caso
hacer para
Botn Cuatro
Fase
, M
,M
resultado=[resto resultado];
end;
fprintf('\n\n\n
TIEMPO EN SEGUNDOS BINARIOS
*');
fprintf('\n\n\n');
disp (resultado)
t1=t1-1;
fprintf('\n********************************************************');
pause(1);
% ____________________________________________________________________
porcentaje_de_tiempo=(t1*100)/tiempo_fase_1;
if
porcentaje_de_tiempo==98|porcentaje_de_tiempo==96|porcentaje_de_tiempo==94|po
rcentaje_de_tiempo==92|porcentaje_de_tiempo==90|porcentaje_de_tiempo==88|porc
entaje_de_tiempo==86|porcentaje_de_tiempo==84|porcentaje_de_tiempo==82|porcen
taje_de_tiempo==80|porcentaje_de_tiempo==78|porcentaje_de_tiempo==76|porcenta
je_de_tiempo==74|porcentaje_de_tiempo==72|porcentaje_de_tiempo==70|porcentaje
_de_tiempo==68|porcentaje_de_tiempo==66|porcentaje_de_tiempo==64|porcentaje_d
e_tiempo==62|porcentaje_de_tiempo==60|porcentaje_de_tiempo==58|porcentaje_de_
tiempo==56|porcentaje_de_tiempo==54|porcentaje_de_tiempo==52|porcentaje_de_ti
empo==50|porcentaje_de_tiempo==48|porcentaje_de_tiempo==46|porcentaje_de_tiem
po==44|porcentaje_de_tiempo==42|porcentaje_de_tiempo==40|porcentaje_de_tiempo
==38|porcentaje_de_tiempo==36|porcentaje_de_tiempo==34|porcentaje_de_tiempo==
32|porcentaje_de_tiempo==30|porcentaje_de_tiempo==28|porcentaje_de_tiempo==26
|porcentaje_de_tiempo==24|porcentaje_de_tiempo==22|porcentaje_de_tiempo==20|p
orcentaje_de_tiempo==18|porcentaje_de_tiempo==16|porcentaje_de_tiempo==14|por
centaje_de_tiempo==12|porcentaje_de_tiempo==10|porcentaje_de_tiempo==8|porcen
taje_de_tiempo==6|porcentaje_de_tiempo==4|porcentaje_de_tiempo==2|porcentaje_
de_tiempo==0;
% _______________________
h=h-1;
for i=h:-1:h
if i==1
h=6;
end
end
% _______________________
hold off
hold on
subplot (3,1,1)
m (j,i)= 0;
bar (m);
% _______________________
if h==6
j=j-1;
end
% _______________________
subplot (3,1,2)
subplot (3,1,3)
end
% _______________________
end
==38|porcentaje_de_tiempo==36|porcentaje_de_tiempo==34|porcentaje_de_tiempo==
32|porcentaje_de_tiempo==30|porcentaje_de_tiempo==28|porcentaje_de_tiempo==26
|porcentaje_de_tiempo==24|porcentaje_de_tiempo==22|porcentaje_de_tiempo==20|p
orcentaje_de_tiempo==18|porcentaje_de_tiempo==16|porcentaje_de_tiempo==14|por
centaje_de_tiempo==12|porcentaje_de_tiempo==10|porcentaje_de_tiempo==8|porcen
taje_de_tiempo==6|porcentaje_de_tiempo==4|porcentaje_de_tiempo==2|porcentaje_
de_tiempo==0;
% _______________________
h=h-1;
for i=h:-1:h
if i==1
h=6;
end
end
% _______________________
hold off
hold on
subplot (3,1,1)
subplot (3,1,2)
m (j,i)= 0;
bar (m);
% _______________________
if h==6
j=j-1;
end
% _______________________
subplot (3,1,3)
end
% _______________________
end
end
%-------------------------------------------------------------------------m=[1 1 1 1 1;1 1 1 1 1;1 1 1 1 1;1 1 1 1 1;1 1 1 1 1;1 1 1 1 1;1 1 1 1 1;1 1
1 1 1;1 1 1 1 1;1 1 1 1 1];
j=10;
h=6;
%------------------------------------------------------------------------% Creamos un condicional dentro del cual se ejecuta el temporizador de
% trabajo para la fase 2 ,este empezara a acorrer siempre y cuando se halla
% terminado la fase de trabajo 1 (en decimal y Binario)
if t2==-1;
% Ciclo temporizador binario Fase 3
while t3~=-1
clc
fprintf('\n********************************************************');
fprintf('\n*
TIEMPO DE DURACION POR FASE EN SEGUNDOS
*');
fprintf('\n********************************************************');
fprintf('\n\n
Tiempo Fase 1= %d',tiempo_fase_1);
fprintf('\n
Tiempo Fase 2= %d',tiempo_fase_2);
fprintf('\n
Tiempo Fase 3= %d',tiempo_fase_3);
fprintf('\n\n********************************************************');
end
end
% _______________________
hold off
subplot (3,1,1)
subplot (3,1,3)
m (j,i)= 0;
bar (m);
% _______________________
if h==6
j=j-1;
end
% _______________________
subplot (3,1,2)
end
% _______________________
end
end
%MENSAJE FIN DE PROCESO
clc
fprintf('\n********************************************************');
fprintf('\n*
FIN DE PROCESO
*');
fprintf('\n********************************************************');
fprintf('\n\n********************************************************');
fprintf('\n * FASE UNO TERMINADA * ');
fprintf('\n ********************************************************');
fprintf('\n\n********************************************************');
fprintf('\n * FASE DOS TERMINADA * ');
fprintf('\n ********************************************************');
fprintf('\n\n********************************************************');
fprintf('\n * FASE TRES TERMINADA * ');
fprintf('\n ********************************************************');
Al presionar cualquier tecla se inicia el temporizador para la fase 1, donde observamos el tiempo
por segundos en decimal y binarios, al igual que la representacin en la grfica de la distribucin
del tiempo del trabajo.
Podemos entonces observar el tiempo que resta para terminar el proceso de la fase del trabajo.
Una vez terminado el proceso de la fase 1, la pantalla nos indicara el inicio de la segunda fase:
En la ltima etapa se imprimen por pantalla los valores de las coordenadas dadas a la matriz que
se pueden observar en esta parte:
Despus de finalizada la demostracin de la fase del trabajo No. 3, el aplicativo quedara en orden
de espera para recibir orden de cualquier tecla para reiniciar.
https://youtu.be/PP3L6IkSlb4
5. Recomendaciones y sugerencias
1.
Todo archivo .m que vayan a crear, "documntenlo". El smbolo para hacer comentarios en
una lnea es el porcentaje (%). Documenten entre otras cosas lo que hace el cdigo, los
parmetros y variables de retorno, y las variables intermedias ms importantes.
2. No se preocupen por validar datos, ni yo se hacer eso todava!, cuando usen el mtodo imput
para recibir una entrada por parte del usuario, especifiquen bien que tipo de datos es: vector (fila
columna), matriz, funcin, etc; y si correspone al valor de un parmetro, especifiquen qu tipo
de parmetro es (por ejemplo, para el mtodo SOR: "ingrese lambda (coeficiente de relajacin)"
y no "ingrese lambda")
Nota: Si es una funcin lo que piden que el usuario ingrese, pueden hacer dos cosas: pdanle al
mtodo imput que lo que le ingrese el usuario, no lo evale, sino que lo almacene como string
(para hacer esto, coloquen como parmetro en la funcin imput despus de la cadena de
caracteres que vayan a mostrar inicialmente, este string: 's', as entre comillas. Ej: n = imput(
'ingrese lambda (coeficiente de relajacin)','s' )); ); o pidanle al usuario que escriba la funcin
entre comillas simples.
3. Tengan en cuenta estas consideraciones cuando vayan a dar nombres a las variables y a las
funciones (que por supuesto, son mas; algunas difieren de lo que proponen la mayora de los
autores):
a. Las variables escalares y vectoriales se nombran todas con minsculas, y si son "de dos
o ms palabras" (ojala slo de dos), separen las palabras con el underline ( _ ).
Ej: x_anterior o x_ant.
b. Las variables que representen las matrices son por lo general de una sla letra, y sta
en mayscula (pero de ser palabras compuestas, usen nuevamente el underline, y lo que
siga de ste en minsculas). Ej: A, B,L, U, U_prima, etc.
c. Las funciones hechas por ustedes, nmbrelos todos iniciando con letra mayscula (para
distinguirlos de los de Matlab que puedan poseer ese mismo nombre) y si stos son
compuestos, cada palabra comienza con letra mayscula. Ej: Cholesky, GaussSiedel, etc.
d. Las variables son de mximo 7 letras (incluyendo el undeline).
Puede ser utilizado en cualquier problema que tenga que ver con control computarizado una
mquina X de manufactura de productos.
MatLab emplea matrices porque con ellas se puede describir infinidad de cosas de una forma
altamente flexible y matemticamente eficiente. Una matriz de pixeles puede ser una imagen o
una pelcula. Una matriz de fluctuaciones de una seal puede ser un sonido o una voz humana. Y
tal vez ms significativamente, una matriz puede describir una relacin lineal entre los
componentes de un modelo matemtico.
En este ltimo sentido, una matriz puede describir el comportamiento de un sistema
extremadamente complejo. Por ejemplo una matriz puede representar el vuelo de un avin a
40.000 pies de altura, o un filtro digital de procesamiento de seales.
Algn problema de aplicacin:
Conclusiones
Mediante el proceso tomado se llega a una solucin propuesta con base en los fundamentos y los
conocimientos adquiridos durante el proceso de formacin para que mediante la construccin de
esta solucin colaborativa nos apropiemos de la hiptesis y propuesta metodologa dispuesta y
definida por el grupo para contribuir activamente en la ejecucin de la propuesta metodolgica y
as se aporto en la construccin de la solucin del problema planteado en la consolidacin del
informe que recopilo de manera sucinta la solucin al problema planteado.
BIBLIOGRAFIA