Está en la página 1de 9

UNIVERSIDAD NACIONAL DEL

CALLAO
FACULTAD DE INGENIERÍA ELÉCTRICA Y ELECTRÓNICA
ESCUELA PROFESIONAL DE INGENIERÍA ELECTRÓNICA

LABORATORIO 03

TEMA:
DISEÑO Y SIMULACION DE MEDICIÓN DE TEMPERATURA CON UN
DSPIC33FJ32MC202

CURSO:
MICROCONTROLADORES Y SISTEMAS EMBEBIDOS

DOCENTE:
ING. ASTOCONDOR VILLAR, JACOB

ESTUDIANTE:

GUILLEN ENRIQUEZ ABEL 1323220417

MARIN HUAMÁN JHEFREY 1723225096

MONTALVO CARHUAMACA ALEX 1623215754

ROSAS MONTALVO JESUS 1513220594

VILLANUEVA CHAVEZ JIHOSEL MARINO 1723215038

2021-N
I. OBJETIVOS

 Realizar la instrumentación e implementación para un termistor NTC


para censado de temperatura.
 Mediante un software, realizar una lectura constante del dispositivo y
simular el experimento

II. MARCO TEORICO

¿QUE ES UN TERMISTOR?

Un termistor es un dispositivo cuya resistencia varia al variar la temperatura.


Podemos emplear esta variación de la resistencia para realizar una medición
de la temperatura ambiente.

Un termistor está formado por un semiconductor como óxido férrico, el óxido de


níquel, o el óxido de cobalto. Al aumentar la temperatura, varia la concentración
de portadores, por lo que varía la resistencia del dispositivo.

Existen dos tipos de termistores,

 NTC, tienen una resistencia inferior al aumentar la temperatura


1 1

R F=R 0 e
B
( T T )

0

R0 =Resistencia de referencia

T 0=Temperatura de referencia en grados Kelvin

B=Temperatura caracteristica del material


 PTC, tienen una resistencia superior al aumentar la temperatura
B
RT = A+C e T

Para T 1 <T < T 2

A , B y C son constantes dependiendo del terminstor T 1 y T 2 son latemperatura maxima y

minima del funcionamiento del PTC

Los termistores son dispositivos baratos, pequeños, duraderos, con un rango


de medición relativamente amplio, considerablemente precisos y rápidos, y
poco susceptibles al ruido. Esto hace que sean ampliamente empleados en la
medición de temperatura en climatización, almacenamiento de líquidos, y
automoción.

La mayor desventaja de los termistores es su fuerte comportamiento no lineal.


Esto no es tan problema, dado que disponemos de modelos matemáticos bien
conocidos que permiten calcular con precisión la medición de temperatura. Sin
embargo, nos obligan a emplear necesariamente números en coma flotante y
cálculos logarítmicos, que deben ser evitados en procesadores dado que
ralentizan la ejecución significativamente.

DESCRIPCIÓN Y FUNCIONAMIENTO DE UNA ENTRADA ANALÓGICA

Una señal analógica es una magnitud que puede tomar cualquier valor dentro
de un intervalo, esta característica es muy importante a la hora de trabajar con
sensores, debido a que estos entregan valores de tensión para reflejar la
variable física que está midiendo.

El CAD conversor analógico digital PIC , permite medir señales analógicas en


forma digital, para ello el PIC cuenta con pines por donde le llegará la señal
analógica, estos pines deben configurarse como entradas analógicas, el
conversor analógico digital PIC cuenta con un circuito que carga un
condensador interno al PIC con la tensión analógica que le está llegando a la
entrada analógica, luego la tensión almacenada en el condensador lo convierte
en un número binario de 10 bits que representará la tensión almacenada en el
condensador, este número binario se guarda en sus registros ADRESH y
ADRESL de 8 bits cada uno pero estos actúan como un solo registro de 16 bits,
en el registro ADRESH se guardan los bits más significativos y en el registro
ADRESL se guardan los bits menos significativos, el número que representa la
tensión almacenada en el condensador y guardado en forma binaria dentro de
estos registros será de 10 bits para el PIC16F877A, la cantidad de bits de este
número depende del conversor analógico digital PIC del microcontrolador PIC
utilizado.

CONVERSOR ANÁLOGO DIGITAL ADC


 El conversor análogo digital se utiliza para convertir señales análogas
provenientes de sensores conectados a la entrada del microcontrolador
en señales digitales para ser mostradas en indicadores tal como una
pantalla lcd.

 El microcontrolador DSPIC33F como la mayoría de los


microcontroladores de la gama media cuenta un módulo conversor
análogo digital de 12 bits seleccionables por el programador.

 La tensión de entrada puede variar entre 0 a 5 volts si utilizamos el adc


en el modo de 12 bits significa que tenemos 12 bits para representar
digitalmente la señal analógica de entrada, como 2^12=4096, tendremos
los valores de entre 0 a 4096 para representar las tensiones de 0 a 5v.

III. DIAGRAMA DE BLOQUES


IV. CODIGO EN LENGUAJE C
char adc_vector[4] = "";
int adc_result = 0;
float vm = 0;
float rntc = 0;
float temperaturaK = 0;
float temperaturaC = 0;
float adc_float = 0;
float rAux = 10000;
float vcc = 3.6;
float beta = 3977; //Beta de 10Kohm para NTC
float temp0 = 298.0; //Temp en grados Kelvin(0)
float r0 = 10000; //RNTC cuando la temp. es 0
void ADC_Init(void); //Función prototipo para ADC

void ADC_Init(void){
//************configuracion del adc******************
AD1CON2bits.VCFG=0b000; // el adc se alimenta con AVDD=3.6v ,AVSS=0
AD1PCFGLbits.PCFG0=0; //AN0 COMO ANALOGICO
AD1CHS0bits.CH0SA=0b0000; //0
AD1CHS0bits.CH0NA=1; //AN1 NEGATIVO
AD1CON3bits.ADCS=0b01001; //ADCS=9 SELECCION DE FRECUENCIA DE RELOJ
ADC
AD1CON1bits.ASAM=0; //MUESTREO FORMA MANUAL, muestreo comienza cuando
se establece el bit SAMP
AD1CON1bits.AD12B=0; // Seleccionar la resolucion con 10 bits o 12 bits
AD1CON1bits.SSRC=0b000; //ELEGIR FUENTE DE CONVERSION MANUAL
//Borrar bit de muestra finaliza el muestreo y comienza la conversión
AD1CON1bits.ADON=1; //HABILITAR ADC
}
int main(){
XLCDInit(); //Inicia la pantalla LCD
ADC_Init(); //Inicia el ADC
WriteCmdXLCD(CLEAR_XLCD); //Limpia la pantalla
// LCD al reiniciar
XLCDgotoXY(0,0);
putrsXLCD(" PROYECTO 3");
__delay_ms(1000);
WriteCmdXLCD(CLEAR_XLCD);
XLCDgotoXY(0,0);
putrsXLCD(" TEMPERATURA:");
while(1){
AD1CON1bits.SAMP = 1; //Inicio del muestreo
__delay_ms(500); //Tiempo de muestreo
AD1CON1bits.SAMP = 0; //Finalizar el muestreo
while(!AD1CON1bits.DONE);
AD1CON1bits.DONE = 0;
adc_result = ADC1BUF0;
vm = (float)adc_result*3.6/4096; //0 ~ 4095 (palabra de 12 bits)
rntc = rAux/((vcc/vm)-1);
temperaturaK = beta/(log(rntc/r0)+(beta/temp0));
temperaturaC = temperaturaK - 273.15;
__delay_ms(10);
sprintf(adc_vector,"%.2f",temperaturaC);
printf("%.2f\n",temperaturaC);
XLCDgotoXY(1,6);
putrsXLCD(adc_vector);
XLCDgotoXY(1,12);
putrsXLCD("C");
}
return 0;
}
V. DIAGRAMA EN PROTEUS
VI.

CONCLUSIONES

- El ACD convierte una señal física (usualmente voltaje) en una cantidad


digital que representa amplitud.

- Nuestro DsPIC  tiene más de 32 canales de ADC que pueden ser


configurados de 10 y 12 bits.

- El controlador de acceso directo a memoria (DMA) es un subsistema


importante en los dsPIC33f de 16 bits de alto rendimiento.

VII. BILIOGRAFIA

- https://www.google.com/search?
q=dspic30f4013+mplab&oq=DSPIC&aqs=chrome.2.69i57j69i59j35i39j0l
2j69i60j69i61j69i60.3143j0j7&sourceid=chrome&ie=UTF-8

También podría gustarte