este proyecto se realizo en el 2012
Una incubadora neonatal es un dispositivo médico utilizado
principalmente para generar un ambiente en el
que se controlan diferentes variables
importantes para el desarrollo de los recién nacidos
La necesidad de las incubadoras neonatales
surgió debido a los constantes partos de bebés prematuros, los cuales, sin un
medio adecuado que simule el vientre de su madre, corren el riesgo de no morir
.
Inicialmente, las incubadoras sólo suplían
necesidades básicas de los neonatos, mediante el control de variables como
temperatura, humedad y luminosidad. Su diseño era sencillo, aunque su manejo
era complejo para el personal médico, lo cual implicaba mucha atención y un
constante chequeo. Debido a que la incubadora se convirtió en el medio
principal para la atención de neonatos, surgió una gran demanda por ésta en el
sector salud.
esta realiza Sensor de temperatura: se
activa cuando la temperatura
se sale de un rango previamente
establecido, generalmente entre 36°C y 38°C.
en la salida del micro controlador podemos
adecuar un circuito de potencia para la elemento calefactor o resistencia, y también
el motor servo teniendo ya lo mas impórtate que es la etapa de control
que actúa así si en la salida de puerto C0 se encuentra un
temperatura de <30°C se genera un 1 lógico que allí se conecta la resistencia
o elemento calefactor y si llega a de 37°C se genera un 0 lógico en el
puerto. y inmediatamente se activa el puerto C1 en 37°C donde se conecta
el elemento de motor servo o ventilador para bajar la temperatura en este caso
mantener la temperatura 36°C y 38°C.
relizado en microcode studio PICBASIC PRO
'****************************************************************
'* Name : UNTITLED.BAS *
'* Author : [jose yovany rojas] *
'* Notice : Copyright (c) 2012 [select VIEW...EDITOR OPTIONS] *
'* : All Rights Reserved *
'* Date : 07/10/2012 *
'* Version : 1.0 *
'* Notes : prototipo encubadora la temperatura con esta condicion que permanezca siempre en el rango de 32°C – 36°C *
'* : 07/10/2012 *
'****************************************************************
DEFINE LCD_DREG PORTB ;bit de datos del LCD empensado
DEFINE LCD_DBIT 0 ;salida portb BO,B1,B2;B3 en cuatro bits
DEFINE LCD_RSREG PORTB ;bit de registro del LCD conectar
DEFINE LCD_RSBIT 5 ;en puerto B5
DEFINE LCD_EREG PORTB ;bit abilitado para conectar en el puerto
DEFINE LCD_EBIT 4 ;puerto B4
DEFINE ADC_SAMPLEUS 50 ;inciacion de programa en Microsegundos para su conversion ACD
DEFINE ADC_BITS 10 ;numero de bits
DEFINE ADC_CLOCK 3 ;fijo relog en 3
ADCON1=%10000010 ;puerto A conversor bit AO A1 demas digitale
TRISC=$00 ;decimos que puerto C en cero logico
TRISA=$FF ;decimos que el puerto A en 1 logico
PORTC=0
PORTB=0
PORTA=0
TEMP VAR byte ; variable tem espacio memoria word
TEMPII VAR byte ; variable tiempo II
RES VAR PORTC.0 ; variable res salida puerto c =1
VEN VAR PORTC.1 ; variable ven salida puerto c =0
INICIO: ;rutina
ADCIN 0,TEMP ; lee el canal A de entrada en la variable tem y guarda el dato como 0
ADCIN 1,TEMPII ; lee el canal A de entrada en la variable temII y guarda el dato como 1
TEMP=TEMP/2 ; variable temp = temp dividido 2
TEMPII=TEMPII/2 ; variable tempII = tempII dividido 2
LCDOUT $FE,1,"Encubadora:",DEC TEMP ; salida de lcd primela linea
LCDOUT $FE,$0C0,"Temp_total:",DEC TEMPII ; salida de lcd segunda linea
PAUSE 200 ; retardo 200 milisegundos
IF (TEMP<34) THEN PAUSE 50:RES=1:VEN=0 ; si la condicion de temperatura es menor a 34 grados puerto C0= valor da un valor logico en 1 si no el puerto C0=0
IF (TEMP>36) THEN PAUSE 50:RES=0:VEN=1 ; si la condicion de temperatura es mayor a 36 grados puerto C0= valor da un valor logico en 1 si no el puerto C0=0
GOTO INICIO ; salta a rutina hace el ciclo