Proyecto logica dif

5
INCUBADORA DE CUIDADOS INTENSIVOS CONTROLADA CON LÓGICA DIFUSA Sergio Damián Ponce Grupo de Ingeniería Clínica. UTN Facultad Regional San Nicolás Colón 332. San Nicolás. CP:2900. Buenos Aires. Argentina. [email protected]. RESUMEN El fin de este proyecto fue diseñar el circuito electrónico de una incubadora de cuidados intensivos, que no sólo realice un excelente control de temperatura y visualización de sus parámetros, sino que también brinde al personal médico y de mantenimiento, comodidad al usarla, y como fin principal, que cumpla con las normas de seguridad para el cuidado de un recién nacido. El circuito electrónico está basado en la utilización de un microcontrolador PIC 16C73B. Como características principales, esta incubadora posee control de temperatura utilizando Lógica Difusa, comunicación serie con PC, medición de humedad , alarmas de motor detenido y sobretempetura, “modo service” e interface con el usuario a través de un teclado matricial y un display LCD. Las pruebas de este prototipo electrónico, se realizaron en una capota de una incubadora fuera de uso, dentro del Servicio de Neonatología del Hospital San Felipe de San Nicolás. Palabras clave: incubadora, microcontroladores PIC, Lógica Difusas. 1. INTRODUCCIÓN La función principal de la incubadora es controlar la temperatura del habitáculo y proveer medidas de seguridad que garanticen al personal médico que el equipo funciona correctamente. Es por ello que en este proyecto se decidió realizar el control de temperatura mediante las técnicas de la Lógica Difusa que como veremos es muy confiable, así como también proveer diversas señales de alarma. El núcleo del circuito es un PIC16C73 [3] que como detallaremos posteriormente está dotado de varias funciones que lo hacen muy versátil. Con él se puede fácilmente implementar la Lógica Difusa, convertir señales analógicas a digitales, dar tratamiento a señales mediante tres puertos de entrada salida y conectarlo con una PC mediante su interfase RS 232. La temperatura censada ingresa al PIC16C73 a través de su Conversor Analógico Digital. Luego, el controlador, la compara con la deseada por el personal médico, quien interactúa con el sistema mediante un teclado matricial y un display inteligente. El sistema controla el ángulo de disparo de un triac que comanda a la resistencia calefactora de la incubadora. Una vez alcanzada la temperatura deseada, esta se mantendrá aún ante perturbaciones externas tan comunes, como por ejemplo la apertura de la puerta del habitáculo para atender al bebé. Además toda la información que maneja el sistema puede ser monitoreada y registrada desde una PC, conectada al PIC por la interfase RS 232. El proyecto cuenta con un medidor de humedad dentro del habitáculo que facilita al médico el tratamiento del sistema respiratorio del neonato. Otra característica importante que ofrece el equipo, es el monitoreo de la frecuencia cardíaca. Es importante mencionar, que el sistema posee un ventilador que recircula el aire interior con el fin de lograr dos propósitos: Mantener la temperatura uniforme dentro del habitáculo Renovar el aire interior Estas funciones son muy necesarias, por lo cual es imperioso asegurar que el ventilador este funcionando correctamente, ya que de no hacerlo, la resistencia calefactora podría llegar a dañar al paciente por estar colocada debajo del mismo. Debido a esto, el sistema cuenta con un sensor de motor detenido, que de estar activado, automáticamente dará una alarma y desconectará el relé de alimentación de la resistencia calefactora. También se toman otras medidas de seguridad para garantizar que el sistema este bajo control, verificando el funcionamiento del TRIAC. Además, está dotado de una alarma de sobre temperatura que se dispara si la temperatura supera los 39°C. Para garantizar la máxima seguridad se utilizó un sensor adicional e independiente al del sensor de control de temperatura. Fig.1. Diagrama en bloques del circuito de la incubadora de cuidados intensivos PIC 16C73 Ctrl. Temperatura Fuzzy Logic Sensor Temperatura Sensor Humedad Contador Latidos Sensor Sobre Temperatura Sensor Motor Detenido Sensor Potencia Calefactor Detector Cruce por Cero Ctrl Potencia Calefactor Alarma Sonora Comando Relé Calefactor Teclado Matricial Display Inteligente Monitoreo PC Registrador de Datos

description

Logica dif

Transcript of Proyecto logica dif

Page 1: Proyecto logica dif

INCUBADORA DE CUIDADOS INTENSIVOS CONTROLADA CONLÓGICA DIFUSA

Sergio Damián Ponce

Grupo de Ingeniería Clínica. UTN Facultad Regional San NicolásColón 332. San Nicolás. CP:2900. Buenos Aires. Argentina. [email protected].

RESUMENEl fin de este proyecto fue diseñar el circuito electrónicode una incubadora de cuidados intensivos, que no sólorealice un excelente control de temperatura yvisualización de sus parámetros, sino que también brindeal personal médico y de mantenimiento, comodidad alusarla, y como fin principal, que cumpla con las normasde seguridad para el cuidado de un recién nacido. Elcircuito electrónico está basado en la utilización de unmicrocontrolador PIC 16C73B. Como característicasprincipales, esta incubadora posee control detemperatura utilizando Lógica Difusa, comunicación seriecon PC, medición de humedad , alarmas de motordetenido y sobretempetura, “modo service” e interfacecon el usuario a través de un teclado matricial y undisplay LCD. Las pruebas de este prototipo electrónico,se realizaron en una capota de una incubadora fuera deuso, dentro del Servicio de Neonatología del HospitalSan Felipe de San Nicolás.

Palabras clave: incubadora, microcontroladores PIC,Lógica Difusas.

1. INTRODUCCIÓNLa función principal de la incubadora es controlar latemperatura del habitáculo y proveer medidas deseguridad que garanticen al personal médico que el equipofunciona correctamente. Es por ello que en este proyectose decidió realizar el control de temperatura mediante lastécnicas de la Lógica Difusa que como veremos es muyconfiable, así como también proveer diversas señales dealarma.El núcleo del circuito es un PIC16C73 [3] que comodetallaremos posteriormente está dotado de variasfunciones que lo hacen muy versátil. Con él se puedefácilmente implementar la Lógica Difusa, convertirseñales analógicas a digitales, dar tratamiento a señalesmediante tres puertos de entrada salida y conectarlo conuna PC mediante su interfase RS 232.

La temperatura censada ingresa al PIC16C73 através de su Conversor Analógico Digital. Luego, elcontrolador, la compara con la deseada por el personalmédico, quien interactúa con el sistema mediante unteclado matricial y un display inteligente. El sistemacontrola el ángulo de disparo de un triac que comanda a laresistencia calefactora de la incubadora. Una vezalcanzada la temperatura deseada, esta se mantendrá aúnante perturbaciones externas tan comunes, como porejemplo la apertura de la puerta del habitáculo paraatender al bebé.

Además toda la información que maneja elsistema puede ser monitoreada y registrada desde una PC,conectada al PIC por la interfase RS 232.El proyecto cuenta con un medidor de humedad dentro delhabitáculo que facilita al médico el tratamiento delsistema respiratorio del neonato. Otra característicaimportante que ofrece el equipo, es el monitoreo de lafrecuencia cardíaca.

Es importante mencionar, que el sistema posee unventilador que recircula el aire interior con el fin de logrardos propósitos:

¾ Mantener la temperatura uniforme dentro delhabitáculo

¾ Renovar el aire interiorEstas funciones son muy necesarias, por lo cual esimperioso asegurar que el ventilador este funcionandocorrectamente, ya que de no hacerlo, la resistenciacalefactora podría llegar a dañar al paciente por estarcolocada debajo del mismo. Debido a esto, el sistemacuenta con un sensor de motor detenido, que de estaractivado, automáticamente dará una alarma ydesconectará el relé de alimentación de la resistenciacalefactora.También se toman otras medidas de seguridad paragarantizar que el sistema este bajo control, verificando elfuncionamiento del TRIAC. Además, está dotado de unaalarma de sobre temperatura que se dispara si latemperatura supera los 39°C. Para garantizar la máximaseguridad se utilizó un sensor adicional e independiente aldel sensor de control de temperatura.

Fig.1. Diagrama en bloques del circuito de la incubadora de cuidadosintensivos

PIC 16C73

Ctrl.

TemperaturaFuzzy Logic

Sensor Temperatura

Sensor Humedad

Contador Latidos

Sensor Sobre Temperatura

Sensor Motor Detenido

Sensor Potencia Calefactor

Detector Cruce por Cero

Ctrl Potencia Calefactor

Alarma Sonora

Comando Relé Calefactor

TecladoMatricial

DisplayInteligente

Monitoreo PCRegistrador de Datos

Page 2: Proyecto logica dif

Controladores con Lógica Difusa

Como todos sabemos, un PID se compone de unaacción Proporcional-Derivativa-Integral[4]. La primeraestablece la ganancia, la segunda, controla el transitorio yla última, el régimen permanente. En el controlador difuso[2][5] se emplean dos de estos conceptos: el error y elcambio de error, conocido normalmente como elgradiente. Fig.2.

Fig.2. Esquema de un controlador de Lógica Difusa

Estas variables pueden ser ponderadas por lasganancias K1 y K2 y así constituirse en las entradaspropiamente dichas del controlador difuso.

Este controlador, tiene un primer bloque“Fuzzyficación”, que transforma las variables de entrada,en sus respectivos valores difusos definidos por lasetiquetas de los conjuntos difusos a los que pertenecen ysu correspondiente grado de pertenencia.

El próximo bloque “Aplicación de reglas”,selecciona de entre la base de reglas aquellas que sonverdaderas para los valores difusos calculados en elbloque anterior. También calcula en qué grado influirácada una de ellas, en la decisión tomada.

Por último, el bloque “Desfuzzyficación”,devuelve una conclusión numérica ,como consecuencia deaplicar a los conjuntos difusos de la variable de salida lasconclusiones difusas con su respectivo grado depertenencia, obtenidas en el bloque anterior.

Por ejemplo, supongamos que las variables deentrada sean: la temperatura deseada y el error (diferenciaentre la salida y la tensión deseada) por lo tanto la salidaserá el valor del ciclo de trabajo: D.

2. DESCRIPCIÓN DEL CIRCUITO

2.1.Interfase con el operador

Una de las virtudes más importantes que posee estaincubadora, es su forma de comunicarse con el operador.Para lograr esto se recurrió: Fig.4.• A la utilización de un conjunto Teclado - Display

Inteligente para ingresar y visualizar información,parámetros de seteo y rutinas de mantenimiento.

• A la comunicación con una PC para la visualización yregistración de datos. En este punto se decidió nocontar con la posibilidad del seteo de datos desde laPC por razones de seguridad. El software utilizadopara la comunicación y el monitoreo de los

parámetros de la incubadora fue LABVIEW deNational Instrument. Fig.3.

Fig.3. Pantalla de monitoreo de los parámetros de la incubadorarealizada en LABVIEW.

Fig.4. Circuito electrónico de la Interface de usuario. Se puede

observar como el PIC16C73 se conecta a un teclado matricial através de un 74MC922., a un display LCD y también al MAX232para la comunicación serie

2.2.Medición de temperatura

La medición de temperatura se realiza utilizando untermistor como sensor primario y en conjunto con elconversor A/D del PIC.

El termistor tiene una variación lineal, de -20Ω/°C,dentro del rango utilizado. Para obtener una tensión quevaríe con la temperatura y que esté acorde con laresolución del A/D, se implementó una fuente de corrientede 1 mA con el circuito integrado LM334. Podemos notarque cuando aumenta la temperatura, la tensión baja. Parasolucionar esto, y para mejorar las características delcircuito, se utilizó un amplificador de instrumentación[1]cuya función transferencia es:

V0 = Vsense – k Vcc

Fuz

zific

acio

n

Apl

icac

ión

De

Regl

as

Des

fuzz

yfic

ació

n

Referencia

Error

Valor

K1

K2

K3Control

Funciones depertenencia

Tabla de Reglas

Cambio deerror

5V

VCC_5V

MEDICIÓN POTENCIACALEFACTOR

SENSOR MOTORDETENIDO

MEDICIÓN DETEMPERATURA

DETECTOR CRUCE PORCERO

MEDICIÓN DEHUMEDAD

DETECTORSOBRETEMPERATURA

CONEXION RS 232 CONPC

SALIDA CONTROL DEPOTENCIASALIDA ALARMA SONORA Y RELECALEFACTOR

CONTADORLATIDOS

MAX23213

81110

134526

129147

R1INR2INT1INT2IN

C+C1-C2+C2-V+V-

R1OUTR2OUTT1OUTT2OUT

C120pF

C220pF

C710uF

C8

10uf

PIC16C73

19

10

20

23456721222324252627281112131415161718

MCLR/VPPOSC1/CLK

OSC2/CLKOUT

VDD

RA0/AN0RA1/AN1RA2/AN2RA3/AN3/RE

F RA4/T0CLKRA5/AN4/S

S RB0/INT RB1

RB2RB3RB4RB5RB6RB7

RC0/T1OSO/T1CLKRC1/T1OSI/CC

P2 RC2/CCP1RC3/SCK/SC

LRC4/SDI/SDA RC5/SD

ORC6/TX/CKRC7/RX/DT

C910uf

C1010uF

Interrupción

D 7

Y2

C30.022

F

74MC922

14

D 5

13

X2

X4

Y3

E

B

X1

OE

$$

+Vcc

C

MÓDULOLCD

4

R / W

Cristal 4Mhz

A

11

5

G N D

D 4

Ajuste decontraste

X3

Y4

R S

2

TECLADOMATRICIAL

DA

Circuito PIC16C73 - Teclado - Display - RS232

D 6

6

Y1OSC

DISPLAYINTELIGENTE

%%

+VCC

12

1

3

D

Page 3: Proyecto logica dif

2.3.Sensor de sobre-temperatura

Este módulo, es uno de los componentes de seguridadcon el que cuenta el equipo. Dotado de un termistorindependiente informará al PIC si la temperatura essuperior o no a 39°C. De ser superior, el PIC dará alarmade “Sobre-Temperatura”. Este umbral de temperatura, sefija en 39°C ya que ha sido científicamente demostrado,que las temperaturas superiores a esta, quedan excluidasde la zona de termorregulación, producen uncalentamiento inevitable para el paciente aumentando sutemperatura corporal con un alto riesgo de provocarle lamuerte por calor, fenómeno conocido por Efecto Van´tHoff.

2.4.Sensor de Humedad

Según lo manifestaba el personal médico del Hospitalde San Nicolás esta medición es muy importante, porquela humedad del aire es uno de los factores que debenconsiderarse para lograr el “Ambiente Térmico Neutral”.Además, un ambiente demasiado seco, perjudica las víasrespiratorias del paciente. El sensor seleccionado, es unsensor de humedad resistivo llamado NH 101. Lossensores resistivos, se basan en la propiedad quepresentan ciertos materiales aislantes de cambiar suresistividad, de acuerdo a su contenido de humedad. Si semide la variación de su resistencia se tiene un higrómetroresistivo o humistor

2.5.Sensor de potencia calefactor

Este sensor, es el encargado en proporcionar lainformación respecto de la magnitud de corriente quecircula por la resistencia calefactora. Esta constituido poruna bobina con núcleo de ferrite, la cual induce sobre elarrollamiento una tensión proporcional a la corriente. Estatensión, se rectifica para obtener una tensión contínuaproporcional. Luego esta tensión ingresa al PIC, previopaso por un amplificador operacional que la acondiciona,para conformar la alarma Calefactor, tendiente a detectarel mal funcionamiento del triac, es decir, si el sistemadetecta que aún enviándole potencia a la resistenciacalefactora, el sensor de potencia de ésta, indica cero,entonces, dará alarma de “Calefactor”. De la mismamanera, si detecta que al no enviarle potencia el indicadorde ésta, está en alto, también dará alarma y desactivará elrelé desconectando el equipo

2.6.Sensor motor detenido

Este sensor detecta la presión del aire impulsado porel ventilador. Es dicotómico e ingresa al PIC quien anteuna activación dará alarma de “Motor Detenido” yaccionará la desconexión del relé de alimentación de laresistencia calefactora.

2.7.Contador de pulsos cardíacos

Este sistema, contará los pulsos del pacienteprovenientes de un “Monitor Cardíaco”. Si bien en elmismo monitor se puede visualizar perfectamente lospulsos del paciente, el valor agregado de este componente

del proyecto, es sin duda poder enviar y registrar estainformación en la PC.

2.8.Control de temperatura

El control de Temperatura, tendrá como objetivocalentar el habitáculo de la incubadora desde latemperatura ambiente hasta la deseada por el personalmédico y luego mantenerla en ese valor aún anteperturbaciones externas. Es decir, deberá actuar sobre laresistencia calefactora, la cual proporcionará el calornecesario. La entrada a este sistema de control, será elerror de temperatura y el gradiente, obtenidos desde elsensor colocado en el habitáculo, y la salida controlará elángulo de disparo del triac que comanda a la resistenciacalefactora modificando su potencia

El proceso comienza, calculando la diferencia entre latemperatura medida y la temperatura deseada. De estamanera conocemos el Error, el cual se denomina dentrodel programa como lv0_error. Luego, cada dos segundoscalculamos el gradiente, restando el nuevo error delanterior. Esta variable se denomina lv1_gradiente.

Una vez conocidas estas variables, que constituyenlas entradas de la subrutina de Lógica Difusa, se procede allamar a la Subrutina de Fuzzy Logic: “Incu7”.EstaSubrutina devuelve una salida denominada lv2_salida quecomandará la potencia entregada a la resistenciacalefactora. Esta salida, obtendrá valores desde 0 a 256,quienes representarán ángulos de disparo desde 0 a 180°del TRIAC, conectado en serie con la mencionadaresistencia.

Fig.5. Circuito electrónico del control de potencia en la resistenciacalefactora

Se analizarán las variables y conjuntos difusostomadas para este proyecto, como así también las distintasalternativas experimentadas, hasta llegar a la másadecuada.

Como herramienta de diseño de la misma, se hautilizado el software FuzzyTECH MP Explorer que escompatible con el PIC16C73 de Microchip. De estamanera, una vez diseñada la lógica de control, solo sedebe compilar el programa y luego hacer referencia a éstedesde el software principal del proyecto.FuzzificaciónLa primera instancia fue definir las variables lingüísticaserror y gradiente.Estas variables poseen valores determinísticos. Laverbalización de la variable error y gradiente será:Negativo, Cero y Positivo. Fig.6.

5V

VCC_5V

220 VLINEA

PIN 13-RC2

Al Medidor de Potencia

1

5

4

8

R2220 ohm

R42,2 Kohm

R3220 ohm

+

-

U3ALM3583

21

84

K24

312

R1470 ohm

Rele de Seguridad

43

12

C20,01uf

C10.47 uF

Q1

BC547

12

3

R539ohm

Q2TIC 226

U1MOC3020

1

2

64

ResistenciaCalefactora

Page 4: Proyecto logica dif

Fig.6. Las presentes figuras muestran de división de los conjuntosdifusos para las variables error y gradiente, respectivamente, realizadasen el sofware FUZZY TECH.

Base de ConocimientoSe deben incluir en este punto los datos e informacionessuministradas al Controlador, tales que posibiliten elprocesamiento matemático de las variables, medidas en elproceso, a fin de generar las acciones de control. Elnúmero máximo de reglas viene dado por el producto denúmeros de particiones de todas las variables de entrada alControlador; que en nuestro caso sería:

Nro. De reglas = Partición de la variable “Error”.Partición de la variable “Gradiente” = 3.3 = 9

Nuestro conjunto de reglas sería: Fig.7

Fig.7 . Reglas programas en el FUZZY TECH EXPLORER

Defuzzificación: La verbalización de la variable de salidaserá:¾ MuyAlta, Alta, Optima, Baja y Muybaja Fig.8

Fig.8 . Representación de los conjuntos difusos para la variable desalida que comandará el ángulo de disparo del TRIAC.

3. RESULTADOS

Comprobamos el control de temperatura, mediantediferentes alternativas de diseño de la Lógica Difusa,registrando en una base de datos, la evolución de latemperatura medida en la incubadora. Para ello, repetimosun itinerario de eventos que a continuación detallamos:

1. Llevar la temperatura de 29,0 a 33,5°C2. Llevar la temperatura de 33,5 a 35,5°C3. Abrir la puerta del habitáculo durante 2 minutos4. Una vez recuperados los 35ºC, llevar la temperatura

de 35,5 a 38,0°CLas alternativas ensayadas, variaban en el diseño de lalógica difusa. Y la más conveniente, es la que se detalló amanera de ejemplo en las figuras 5,6 y 7. Dando comorespuesta la siguiente gráfica.

Fig.9. La gráfica muestra la evolución de la temperatura en el tiempodentro de la incubadora ante una perturbación, en este caso esta es la

apertura de una de las puertas.

4. CONCLUSIONES

Con las distintas pruebas que se realizaron sobreeste prototipo, se comprobó que su comportamientoalcanzó y superó el desempeño de las incubadorascomerciales en existencia. La operación por parte de losusuarios fue muy aceptada.

Con respecto al control de temperaturaimplementando Lógica Difusa, se puede decir que poseelas ventajas de no necesitar un modelo matemático precisodel sistema a controlar, tiene alto rechazo al ruido ypermite contemplar situaciones excepcionales del estadodel proceso, gracias a su forma de representar elconocimiento. Como desventaja se puede decir, que eldiseño debe realizarse generalmente con el método deprueba y error

REFERENCIAS

[1] R. Coughin and F. Driscoll, “Amplificadores operacionales ycircuitos integrados lineales”, Pearson, 1999.

[2] A. Jiménez Avello and F. Espada, “Control Fuzzy: Estado actualy aplicaciones”,AADECA, vol.6, Nro 6, 1994.

[3] Michochip, “Embedded Control Handbook”, 1994/95.[4] Smith and Corripio,“Control automático de procesos”,Limusa

Editores,1990.[5] “Special Issue on Engineering Applications of Fuzzy

Logic”,IEEE,Proceedings, vol.83, 1995.

Prueba: Fuzzy 35,5°C

29,0

29,5

30,0

30,5

31,0

31,5

32,0

32,5

33,0

33,5

34,0

34,5

35,0

35,5

36,0

36,5

0:48:2

2

0:49:4

7

0:51:1

2

0:52:3

7

0:54:0

2

0:55:2

7

0:56:5

2

0:58:1

7

0:59:4

2

1:01:0

7

1:02:3

2

1:03:5

7

1:05:2

2

1:06:4

7

1:08:1

2

1:09:3

7

1:11:0

2

1:12:2

7

1:13:5

2

1:15:1

7

1:16:4

2

1:18:0

7

1:19:3

2

1:20:5

7

1:22:2

2

1:23:4

7

1:25:1

2

1:26:3

7

1:28:0

2

1:29:2

7

1:30:5

2

1:32:1

7

1:33:4

2

1:35:0

7

1:36:3

2

1:37:5

7

1:39:2

2

1:40:4

7

1:42:1

2

°C Temp Deseada

Alt 1

Alt 2

Alt 3

Page 5: Proyecto logica dif

INCUBATOR OF INTENSIVE CARES CONTROLLED WITHFUZZY LOGIC

ABSTRACT

The purpose of this project was to design the electronic circuit of an incubator of intensive cares that doesn't only carryout an excellent control of temperature and visualization of its parameters, but rather it also offers to the medicalpersonnel and of maintenance comfort when using it. Having the main end of fulfilling the norms of security for the careof a recently born one. The electronic circuit this based on the use of a microcontrolador PIC 16C73B. As characteristicmain this incubator possesses control of temperature using Fuzzy Logic, communication series with PC, mensuration ofhumidity, alarms of detained motor and overheat, “service mode” and interface with the user through a keyboardmatricial and a display LCD. The tests of this electronic prototype were carried out in a hood of an incubator outside ofuse inside the Service of Neonatología of Hospital San Felipe of San Nicolás.