Matlab - Ayuda!! Crear Interfaz de Usuario en Matlab

   
Vista:

Ayuda!! Crear Interfaz de Usuario en Matlab

Publicado por Jesús Ortega (3 intervenciones) el 10/12/2015 20:23:50
Hola Buenas tardes... me podrían ayudar a crear una interfaz de usuario, realmente en la pantalla solo se visualizaran dos botones (SI y NO) y un cuadro de texto estático donde se visualizaran las preguntas. Y para finalizar un cuadro donde te diga el diagnostico.
El script del programa es para un sistema experto, aqui lo dejo... Espero me puedan ayudar. Muchas gracias

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
% Sistema experto para la deteccion de priorización de pacientes Pediátricos en Urgencias
function TRABAJO_FINAL_CEXPERTO
clc
global pantalla esp1 esp2 esp3
[regla, d, p,  pantalla, esp1, esp2, esp3] = inicializa
p=adq_datos;
% DEFINICION DE REGLAS
regla(1) = p(1);
regla(2) = and(and(p(1), p(5)), p(3));
regla(3) = and(regla(2), p(6));
regla(4) = and(regla(2), not(p(6)));
regla(5) = and(and(p(1), not(p(5))), p(3));
regla(6) = and(and(p(1), p(7)), p(4));
regla(7) = and(regla(6), p(6));
regla(8) = and(regla(6), not(p(8)));
regla(9) = and(and(p(1), not(p(7))), p(4));
regla(10) = not(p(1));
regla(11) = and(not(p(1)), p(9));
regla(12) = and(regla(11), p(10));
regla(13) = and(regla(11), not(p(10)));
regla(14) = and(not(p(1)), not(p(9)));
regla(15) = p(3);
regla(16) = p(4);
 
%INFERENCIAS
for i=1:16
    if regla(i), d(i)=1; end
end
if or(or(or(or(or(or(or(d(2), d(3)), d(4)), d(5)), d(6)), d(7)), d(8)), d(9))
    d(1) = 0;
end
 
if or (d(3), d(4)); d(2) = 0; end
if or (d(7), d(8)); d(6) = 0; end
if or(or(or(d(11), d(12)), d(13)), d(14)); d(10) = 0; end
if or (d(12), d(13)); d(11) = 0; end
resultado(d);
end
 
function [reg, dat, pro, pantalla1, especial1, especial2, especial3] = inicializa
    %Funcion que sirve para inicializar los valores de los arreglos a ocupar
    %para reglas, datos, proposiciones
    %Por defecto tienen el valor 0 (falso)
     reg(1:14) = 0;
     dat(1:14) = 0;
     pro(1:14) = 0;
    pantalla1=...
   ['especial1                                                                                                                                                                                        ';
    'especial2                                                                                                                                                                                        ';
    'Paciente hemodinamicamente estable que requiere un procedimiento (Diagnóstico o Terapéutico) asociado.                                                                                           ';
    'Por su condición, el paciente debe ser evaluado. Tiempo máximo de espera : 180 minutos                                                                                                           ';
    'especial3                                                                                                                                                                                        ';
    'Situación de inicio o aparición brusca de riesgo vital o peligro inmediato real o potencial para la vida con efecto de secuelas graves permanentes si no recibe atención calificada de inmediato.';
    'Situación clínica capaz de generar deterioro, peligro o riesgo para la salud o la vida en función del tiempo transcurrido                                                                        ';
    'Situación clínica de manifestación espontánea y prolongada capaz de generar solo malestar y contrariedades generales en el paciente.                                                             ';
    'Valoración de signos vitales.                                                                                                                                                                    ';
    'Urgencia sin riesgo vital evidente.                                                                                                                                                              ';
    'Por su condición, el paciente debe ser Tratado en la Unidad por eventual hospitalización.                                                                                                        ';
    'Paciente con Compromiso vital evidente                                                                                                                                                           ';
    'Por su condición, el paciente debe ser Tratado.tiempo Max de espera 30 min                                                                                                                       ';
    'Por su condición, el paciente debe ser Tratado.tiempo Max de espera 30 min                                                                                                                       '];
especial1=...
   ['Pacientes que requieren reanimación inmediata con riesgo vital inminente.                                                               ';
    'Deberá pasar a la sala de reanimación donde serán estabilizados y recibirán las acciones terapéuticas necesarias en forma inmediata.    '];
especial2=...
   ['Paciente con Compromiso vital evidente y Hemodinamia alterada.                                                                               ';
    'Por su condición, el paciente debe ser estabilizado                                                                                          ';
    'Necesario un período variable de observación en la unidad de emergencia para realizar acciones diagnósticas y/o terapéuticas antes de su alta'];
especial3=...
    ['Paciente con Hemodinamia inestable o compromiso neurológico o de patrón respiratorio evidente. ';
     'Por su condición, el paciente debe ser Tratado.tiempo Max de espera 15 min                     '];
 
end %FIN DE LA FUNCION INICIALIZA
 
 
% INTERFAZ DE ADQUISICION DE DATOS
function datos = adq_datos
        fprintf('Bienvenido al sistema de deteccion de priorización de pacientes Pediátricos\n\n')
        display('Se le realizara una serie de preguntas para establecer una evaluación y el grado de emergencia')
        display('Responda:')
        display('    1 si la respuesta es afirmativa')
        display('    0 si la respuesta es negativa')
        input('Presione la tecla enter para comenzar...')
        datos(1) = input('\n¿Paro cardiaco, paro respiratorio o paro inminente.?  ');
        datos(2) = input('\n¿Gran quemado.?  ');
        datos(3) = input('\n¿Traumatismo Encéfalo Craneano grave.?  ');
        datos(4) = input('\n¿Hemorragia activa con alteración hemodinámica.?  ');
        datos(5) = input('\n¿Fiebre > 39º C con compromiso del estado general en menores de 5 años.?  ');
        datos(6) = input('\n¿Intoxicaciones – Ingesta medicamentosa o sustancias tóxicas.?  ');
        datos(7) = input('\n¿Niños con dificultad respiratoria y saturación menor a 93% .?  ');
        datos(8) = input('\n¿Reacción alérgica generalizada (urticaria), edema angineurótico? ');
        datos(9) = input('\n¿Fractura expuesta sin compromiso hemodinámico.?  ');
        datos(10) = input('\n¿Dolor abdominal, con vómitos y fiebre. Con compromiso estado general?  ');
end %FIN DE FUNCION adq_datos
 
 
function resultado(resul)
global pantalla esp1 esp2 esp3
        temp = 0; %SE UTILIZA ESTA VARIABLE PARA COMPROBAR QUE EXISTEN VALORES VERDADEROS
        fprintf('\n\n Resultado\n    ')
        for i = 14:-1:1
            if resul(i)
                temp = 1;
                %display(i)
                if or(or(i == 1, i == 2),i == 5)
                    if i == 1
                        display(esp1(1,:))
                        display(esp1(2,:))
                    end
                    if i == 5
                        display(esp2(1,:))
                        display(esp2(2,:))
                        display(esp2(3,:))
                    end
                    if i == 5
                        display(esp3(1,:))
                        display(esp3(2,:))
                    end
 
                else
                    display(pantalla(i,:))
                end
            end
        end
        if temp == 0 % SI ESTA AQUI ENTONCES SIGNIFICA QUE NO HUBIERON PROPOSICIONES EVALUADAS VERDADERAS
            display('La evaluación no se encuentra en nuestra base de conocimientos')
        end
 
end %FIN FUNCION RESULTADOS
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de JOSE JEREMIAS CABALLERO

Ayuda!! Crear Interfaz de Usuario en Matlab

Publicado por JOSE JEREMIAS CABALLERO jjcc94@hotmail.com (3432 intervenciones) el 10/12/2015 20:52:04
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
>> TRABAJO_FINAL_CEXPERTO
 
regla =
 
     0     0     0     0     0     0     0     0     0     0     0     0     0     0
 
 
d =
 
     0     0     0     0     0     0     0     0     0     0     0     0     0     0
 
 
p =
 
     0     0     0     0     0     0     0     0     0     0     0     0     0     0
 
 
pantalla =
 
    'especial1 '
    'especial2 '
    'Paciente hemodinamicamente estable que requiere un procedimiento (Diagnóstico o Terapéutico) asociado. '
    'Por su condición, el paciente debe ser evaluado. Tiempo máximo de espera : 180 minutos '
    'especial3 '
    'Situación de inicio o aparición brusca de riesgo vital o peligro inmediato real o potencial para la vida con efecto de secuelas gra...'
    'Situación clínica capaz de generar deterioro, peligro o riesgo para la salud o la vida en función del tiempo transcurrido '
    'Situación clínica de manifestación espontánea y prolongada capaz de generar solo malestar y contrariedades generales en el paciente. '
    'Valoración de signos vitales. '
    'Urgencia sin riesgo vital evidente. '
    'Por su condición, el paciente debe ser Tratado en la Unidad por eventual hospitalización. '
    'Paciente con Compromiso vital evidente '
    'Por su condición, el paciente debe ser Tratado.tiempo Max de espera 30 min '
    'Por su condición, el paciente debe ser Tratado.tiempo Max de espera 30 min '
 
 
esp1 =
 
    'Pacientes que requieren reanimación inmediata con riesgo vital inminente. '
    'Deberá pasar a la sala de reanimación donde serán estabilizados y recibirán las acciones terapéuticas necesarias en forma inmediata. '
 
 
esp2 =
 
    'Paciente con Compromiso vital evidente y Hemodinamia alterada. '
    'Por su condición, el paciente debe ser estabilizado '
    'Necesario un período variable de observación en la unidad de emergencia para realizar acciones diagnósticas y/o terapéuticas antes ...'
 
 
esp3 =
 
    'Paciente con Hemodinamia inestable o compromiso neurológico o de patrón respiratorio evidente. '
    'Por su condición, el paciente debe ser Tratado.tiempo Max de espera 15 min '
 
Bienvenido al sistema de deteccion de priorización de pacientes Pediátricos
 
Se le realizara una serie de preguntas para establecer una evaluación y el grado de emergencia
Responda:
 1 si la respuesta es afirmativa
 0 si la respuesta es negativa
Presione la tecla enter para comenzar...1
 
ans =
 
     1
 
 
¿Paro cardiaco, paro respiratorio o paro inminente.? 1
 
¿Gran quemado.? 1
 
¿Traumatismo Encéfalo Craneano grave.? 1
 
¿Hemorragia activa con alteración hemodinámica.? 0
 
¿Fiebre > 39º C con compromiso del estado general en menores de 5 años.? 1
 
¿Intoxicaciones – Ingesta medicamentosa o sustancias tóxicas.? 1
 
¿Niños con dificultad respiratoria y saturación menor a 93% .? 1
 
¿Reacción alérgica generalizada (urticaria), edema angineurótico? 1
 
¿Fractura expuesta sin compromiso hemodinámico.? 0
 
¿Dolor abdominal, con vómitos y fiebre. Con compromiso estado general? 0
 
 
 Resultado
     'Paciente hemodinamicamente estable que requiere un procedimiento (Diagnóstico o Terapéutico) asociado. '
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Ayuda!! Crear Interfaz de Usuario en Matlab

Publicado por Jesús Ortega (3 intervenciones) el 10/12/2015 21:06:20
Si ese esa es la corrida del script, pero se vizualiza en el workspace.... lo que quiero es crear una interfaz de usuario (GUI) para poder vizualizar lo mismo pero en una pantalla de usuario.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de JOSE JEREMIAS CABALLERO

Ayuda!! Crear Interfaz de Usuario en Matlab

Publicado por JOSE JEREMIAS CABALLERO (3432 intervenciones) el 10/12/2015 21:15:32
Si se puede hacer, pero es complejo hacerlo. Me demoraría horas para hacer todo el ajuste para que salga en un guide.
Puedes ir poniendo tus avances del guide y aquí te ayudamos.

Saludos .
JOSE JEREMÍAS CABALLERO
Asesoría online en Matlab
jjcc94@hotmail.com
Estimado Usuario, el correo es para servicios de cursos, asesoría y programación en Matlab.
Toda ayuda gratuita es vía foro.


http://matlabcaballero.blogspot.com
Captura-de-pantalla-2015-12-10-15.17.02
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar