Anda di halaman 1dari 9

Hola cordial saludo

anexo una posible solucin vista desde gui builder de scilab

///////////////////////////////////////////////////////////////////////////////////
// This GUI file is generated by guibuilder version 2.2
///////////////////////////////////////////////////////////////////////////////////
f=figure('figure_position',[400,50],'figure_size',[646,604],'auto_resize','on','background',
[33],'figure_name','Graphic window number %d');
//////////////////////////////////////////////////////////////////////////////////

delmenu(f.figure_id,gettext('File'))
delmenu(f.figure_id,gettext('?'))
delmenu(f.figure_id,gettext('Tools'))
toolbar(f.figure_id,'off')

// izquiedad-derecha, arriba-abajo, largo,ancho

handles.dummy = 0;

// Ingreso de datos para la fase A


handles.obj1=uicontrol(f,'unit','normalized','BackgroundColor',
[0.8,0.8,0.8],'Enable','on','FontAngle','normal','FontName','helvetica','FontSize',
[12],'FontUnits','points','FontWeight','normal','ForegroundColor',
[0,0,0],'HorizontalAlignment','center','ListboxTop',[],'Max',[1],'Min',[0],'Position',
[0.25,0.6,0.2,0.05],'Relief','sunken','SliderStep',[0.01,0.1],'String','','Style','edit','Value',
[0],'VerticalAlignment','middle','Visible','on','Tag','obj1','Callback','')

// Ingreso de datos para la fase B


handles.obj5=uicontrol(f,'unit','normalized','BackgroundColor',
[0.8,0.8,0.8],'Enable','on','FontAngle','normal','FontName','helvetica','FontSize',
[12],'FontUnits','points','FontWeight','normal','ForegroundColor',
[0,0,0],'HorizontalAlignment','center','ListboxTop',[],'Max',[1],'Min',[0],'Position',
[0.25,0.5,0.2,0.05],'Relief','sunken','SliderStep',[0.01,0.1],'String','','Style','edit','Value',
[0],'VerticalAlignment','middle','Visible','on','Tag','obj5','Callback','')

// Ingreso de datos para la fase C


handles.obj8=uicontrol(f,'unit','normalized','BackgroundColor',
[0.8,0.8,0.8],'Enable','on','FontAngle','normal','FontName','helvetica','FontSize',
[12],'FontUnits','points','FontWeight','normal','ForegroundColor',
[0,0,0],'HorizontalAlignment','center','ListboxTop',[],'Max',[1],'Min',[0],'Position',
[0.25,0.4,0.2,0.05],'Relief','sunken','SliderStep',[0.01,0.1],'String','','Style','edit','Value',
[0],'VerticalAlignment','middle','Visible','on','Tag','obj8','Callback','')

// Texto para la fase A


handles.obj2=uicontrol(f,'unit','normalized','BackgroundColor',
[0.8,0.8,0.8],'Enable','on','FontAngle','normal','FontName','helvetica','FontSize',
[12],'FontUnits','points','FontWeight','normal','ForegroundColor',
[0,0,0],'HorizontalAlignment','center','ListboxTop',[],'Max',[1],'Min',[0],'Position',
[0.02,0.6,0.25,0.05],'Relief','flat','SliderStep',[0.01,0.1],'String','Ingrese Tiempo Fase
A :','Style','text','Value',[0],'VerticalAlignment','middle','Visible','on','Tag','obj2','Callback','')

//Texto para la fase B


handles.obj6=uicontrol(f,'unit','normalized','BackgroundColor',
[0.8,0.8,0.8],'Enable','on','FontAngle','normal','FontName','helvetica','FontSize',
[12],'FontUnits','points','FontWeight','normal','ForegroundColor',
[0,0,0],'HorizontalAlignment','center','ListboxTop',[],'Max',[1],'Min',[0],'Position',
[0.02,0.5,0.25,0.05],'Relief','flat','SliderStep',[0.01,0.1],'String','Ingrese Tiempo Fase
B :','Style','text','Value',[0],'VerticalAlignment','middle','Visible','on','Tag','obj6','Callback','')

//Texto para la fase C


handles.obj7=uicontrol(f,'unit','normalized','BackgroundColor',
[0.8,0.8,0.8],'Enable','on','FontAngle','normal','FontName','helvetica','FontSize',
[12],'FontUnits','points','FontWeight','normal','ForegroundColor',
[0,0,0],'HorizontalAlignment','center','ListboxTop',[],'Max',[1],'Min',[0],'Position',
[0.02,0.4,0.25,0.05],'Relief','flat','SliderStep',[0.01,0.1],'String','Ingrese Tiempo Fase
C :','Style','text','Value',[0],'VerticalAlignment','middle','Visible','on','Tag','obj7','Callback','')

//Start para programa


handles.obj3=uicontrol(f,'unit','normalized','BackgroundColor',
[0.6,0.6,0.8],'Enable','on','FontAngle','normal','FontName','helvetica','FontSize',
[12],'FontUnits','points','FontWeight','normal','ForegroundColor',
[0,0,0],'HorizontalAlignment','center','ListboxTop',[],'Max',[1],'Min',[0],'Position',
[0.0328125,0.2,0.265625,0.0450980],'Relief','raised','SliderStep',
[0.01,0.1],'String','start','Style','pushbutton','Value',
[0],'VerticalAlignment','middle','Visible','on','Tag','obj3','Callback','obj3_callback(handles)')

//Texto para visualizar el tiempo de trabajo


handles.obj9=uicontrol(f,'unit','normalized','BackgroundColor',
[0.8,0.8,0.8],'Enable','on','FontAngle','normal','FontName','helvetica','FontSize',
[12],'FontUnits','points','FontWeight','normal','ForegroundColor',
[0,0,0],'HorizontalAlignment','center','ListboxTop',[],'Max',[1],'Min',[0],'Position',
[0.02,0.4,0.25,0.05],'Relief','flat','SliderStep',[0.01,0.1],'String','Ingrese Tiempo Fase
C :','Style','text','Value',[0],'VerticalAlignment','middle','Visible','on','Tag','obj9','Callback','')

//Texto para visualizar el titulo


handles.obj10=uicontrol(f,'unit','normalized','BackgroundColor',
[0.5,0.7,0.8],'Enable','on','FontAngle','normal','FontName','helvetica','FontSize',
[14],'FontUnits','points','FontWeight','normal','ForegroundColor',
[0,0,0],'HorizontalAlignment','center','ListboxTop',[],'Max',[1],'Min',[0],'Position',
[0.02,0.9,0.95,0.09],'Relief','flat','SliderStep',[0.01,0.1],'String',' Ingrese el tiempo de trabajo de cada
fase en un rango de 5 a 8000 segundos','Style','text','Value',
[0],'VerticalAlignment','middle','Visible','on','Tag','obj10','Callback','')

//Texto para visualizar el fin de cada fase


handles.obj11=uicontrol(f,'unit','normalized','BackgroundColor',
[0.8,0.5,0.8],'Enable','on','FontAngle','normal','FontName','helvetica','FontSize',
[16],'FontUnits','points','FontWeight','normal','ForegroundColor',
[0,0,0],'HorizontalAlignment','center','ListboxTop',[],'Max',[1],'Min',[0],'Position',
[0.02,0.8,0.9,0.05],'Relief','flat','SliderStep',[0.01,0.1],'String','','Style','text','Value',
[0],'VerticalAlignment','middle','Visible','on','Tag','obj11','Callback','')

//Texto para visualizar el tiempo total de las fases


handles.obj12=uicontrol(f,'unit','normalized','BackgroundColor',
[0.8,0.8,0.3],'Enable','on','FontAngle','normal','FontName','helvetica','FontSize',
[12],'FontUnits','points','FontWeight','normal','ForegroundColor',
[0,0,0],'HorizontalAlignment','center','ListboxTop',[],'Max',[1],'Min',[0],'Position',
[0.02,0.3,0.9,0.05],'Relief','flat','SliderStep',[0.01,0.1],'String','','Style','text','Value',
[0],'VerticalAlignment','middle','Visible','on','Tag','obj12','Callback','')

//////////////////////////////////////////////////////////////////////////////////
// Callbacks are defined as below. Please do not delete the comments as it will be// used in coming
version
/////////////////////////////////////////////////////////////////////////////////

function obj3_callback(handles)

//Write your callback for obj3 here

objA= findobj('tag','obj1'); //input fase a


objB= findobj('tag','obj5'); //input fase b
objC= findobj('tag','obj8'); //input fase c

fasea=get(objA,'string'); //guarda los datos de A


fase_a=strtod(fasea); //

faseb=get(objB,'string');
fase_b=strtod(faseb);

fasec=get(objC,'string');
fase_c=strtod(fasec);

printf('\n');

fin_fase=findobj('tag','obj11');
fin_fase.string="";

total_fase= findobj('tag','obj12')
total_fase.string="";
total_fases= fase_a + fase_b + fase_c;

printf('Total tiempo de trabajo :%s\n',+string(total_fases));


printf('\n');
total_fase.string="Tiempo total de trabajo en segundos : "+string(total_fases);

if [fase_a >=5 & fase_a<=23 & fase_b >=5 & fase_b<=23 & fase_c>=5 & fase_c<= 23] then

while fase_a >=0;


printf('%s\n',+string(fase_a));
objA.string=+string(fase_a);
fase_a=fase_a-1;
tic();
realtimeinit(2);
realtime(0);
realtime(1);
toc();
if fase_a<0;

fin_fase.string="Fase A terminada";
end

end

printf('\n');

while fase_b >=0;


printf('%s\n',+string(fase_b));
objB.string=+string(fase_b);
fase_b=fase_b-1;
tic();
realtimeinit(2);
realtime(0);
realtime(1);
toc();
if fase_b<0;

fin_fase.string="Fase B terminada";
end

end

printf('\n');

while fase_c >=0;


printf('%s\n',+string(fase_c));
objC.string=+string(fase_c);
fase_c=fase_c-1;
tic();
realtimeinit(2);
realtime(0);
realtime(1);
toc();

if fase_c<0;
fin_fase.string="Fase C terminada";
end

end
else
printf('\n tiempo ingresado en algunas de las fases es menor a 5 segundos ');
printf('\n o es mayor a 8000 segundos');
printf('\n');
printf('\n INGRESE DATOS NUEVAMENTE');
printf('\n');
total_fase.string='datos INCORRECTOS, ingrese un tiempo de 5 a 23 segundos';

end

endfunction

Anda mungkin juga menyukai