jueves, 6 de junio de 2013



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.


ZONA DE CODIGO
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