control ad or de temperatura simplificado

50
  1 CAPITULO 1 FUNDAMENTOS TEÓRICOS DE LOS CONTROLADORES DE TEMPERATURA 1.1 INTRODUCCIÓN En este capítulo se describen las técnicas de control de temperatura existentes así como los diferentes tipos de controladore s disponibles en el mercado. El control de temperatura más difundido para los hornos eléctricos utilizados para cerámica y vidrio consisten de dispositivos llamados p irómetros, los cua les permiten al usuario fijar una temperatura dada, temperatura de operación y mediante control apagado/encendido inician el encendido de los elementos calefactores que consisten de resistencias eléctricas que mediante el paso de la corriente eléctrica generan calor, de ésta manera inicia el proceso de calentamiento. Mediante sensores de temperatura llamados termopares el pirómetro mide la temperatura en el horno y al llegar ésta al

Upload: swivels

Post on 06-Jul-2015

1.153 views

Category:

Documents


0 download

TRANSCRIPT

5/8/2018 Control Ad Or de Temperatura Simplificado - slidepdf.com

http://slidepdf.com/reader/full/control-ad-or-de-temperatura-simplificado-559abeacae2ec 1/50

 

  1

CAPITULO 1

FUNDAMENTOS TEÓRICOS DE LOS

CONTROLADORES DE TEMPERATURA

1.1 INTRODUCCIÓNEn este capítulo se describen las técnicas de control de temperatura existentes así comolos diferentes tipos de controladores disponibles en el mercado.

El control de temperatura más difundido para los hornos eléctricos utilizados paracerámica y vidrio consisten de dispositivos llamados pirómetros, los cuales permiten alusuario fijar una temperatura dada, temperatura de operación y mediante controlapagado/encendido inician el encendido de los elementos calefactores que consisten deresistencias eléctricas que mediante el paso de la corriente eléctrica generan calor, deésta manera inicia el proceso de calentamiento. Mediante sensores de temperatura

llamados termopares el pirómetro mide la temperatura en el horno y al llegar ésta al

5/8/2018 Control Ad Or de Temperatura Simplificado - slidepdf.com

http://slidepdf.com/reader/full/control-ad-or-de-temperatura-simplificado-559abeacae2ec 2/50

 

  2

valor preestablecido el pirómetro desconecta las resistencias para de ésta maneramantener la temperatura al valor establecido conectando y desconectando los elementoscalefactores según sea necesario.

El otro tipo de controlador de temperatura llamado controlador programable detemperatura consiste de una microcomputadora que permite al usuario disponer dediferentes programas preestablecidos de horneado, que incluyen facilidades como:

•  Calentamiento del horno de manera gradual a una razón de cambio constante.•  Apagar el horno cuando alcaza la temperatura fija.•  Mantener el horno a la temperatura fijada y después de un tiempo fijado de

antemano apagar el horno automáticamente.•  Iniciar el calentamiento a una hora y fecha fijada de antemano para el siguiente

horneado de piezas.

El desarrollo propuesto consiste en diseñar una microcomputadora con las interfaces dehardware y software necesarias para implementar un controlador programable detemperatura con las funciones descritas anteriormente. 

1.2 SENSORES DE TEMPERATURA.

Para medir la temperatura existen diversos sensores según el rango que se vaya a medir;los más utilizados para los hornos eléctricos utilizados en cerámica y vidrio que operan aun rango de 0 ºC-1200 ºC son los termopares y para temperaturas de 0 -100 ºC son

circuitos integrados.

1.2.1 Termopares para medir temperatura

Un termopar es un dispositivo de estado sólido que se utiliza para convertir la energíacalorífica en voltaje. Consta de dos metales diferentes empalmados en una juntura.Estos dos metales están conectados en dos ensambles, uno para la medida de latemperatura y el otro para la referencia. La diferencia de la temperatura entre los dosensambles es detectada midiendo el cambio en el voltaje (fuerza electromotriz, F.E.M.)a través de los metales disímiles en el ensamble de la medida de la temperatura. Los

5/8/2018 Control Ad Or de Temperatura Simplificado - slidepdf.com

http://slidepdf.com/reader/full/control-ad-or-de-temperatura-simplificado-559abeacae2ec 3/50

 

  3

termopares se emplean como sensores de temperatura y para su fabricación puedenutilizarse materiales tales como: hierro-constantan, cromo- aluminio.

Los termopares están entre los sensores de temperatura más fáciles de utilizar y de

obtener, y se utilizan extensamente en ciencia e industria. La elección del tipo óptimodel termopar se basa en la temperatura de aplicación, el medio al que será expuesto, lavida útil necesaria, la exactitud requerida y el costo.

Cuando un conductor metálico es sometido a una diferencia de temperatura, entre susextremidades surge una fuerza electromotriz (F.E.M.), cuyo valor por lo general noexcede el orden de magnitud de milivoltios, como consecuencia de la redistribución delos electrones en el conductor cuando éstos se someten a un gradiente de temperatura.

5/8/2018 Control Ad Or de Temperatura Simplificado - slidepdf.com

http://slidepdf.com/reader/full/control-ad-or-de-temperatura-simplificado-559abeacae2ec 4/50

 

  4

La figura 1.1 representa esquemáticamente el fenómeno.

Figura 1.1 Voltaje producido por un termopar

El valor del voltaje, depende de la naturaleza del material y del gradiente detemperatura entre sus extremidades. En el caso de un material homogéneo, el valor delvoltaje, no depende de la distribución de temperatura a lo largo del conductor, pero si,como hemos dicho anteriormente, de la diferencia de temperatura entre susextremidades. Este fenómeno es básico para poder entender la termoelectricidad y suaplicación en la medición de temperatura.La siguiente ecuación muestra el voltaje generado en la unión – el voltaje de referencia

V = a (tj1 - tref)

donde a es el coeficiente de Seebeck del termopar K (Cromo-Aluminio), así para elcromo-aluminio a es de 0.040 mV por grado centígrado.

El siguiente paso es medir la temperatura del bloque isotérmico (tref) y emplear estainformación para conocer la temperatura de la unión J1 (tj1).

1.2.2 Circuitos integrados para medir temperatura

Los circuitos integrados para medir temperatura se pueden clasificar en dos tipos: desalida analógica y de salida digital. Los de salida analógica más populares son: el LM35,es una fuente de tensión estándar industrial y de bajo costo. Nos da directamente latemperatura en °C, el LM34 en °F y el LM135 en °K.

En el LM35. El voltaje de salida es directamente proporcional a la temperatura absoluta+10mV/°C, y se relaciona por la siguiente ecuación:

0

0

T V V 

T T out out 

=  

Donde:

5/8/2018 Control Ad Or de Temperatura Simplificado - slidepdf.com

http://slidepdf.com/reader/full/control-ad-or-de-temperatura-simplificado-559abeacae2ec 5/50

 

  5

T = temperatura desconocidaTo = temperatura de referencia

Cuando se calibra a 25 °C el LM35 tiene un error de 1°C sobre un rango de 100°C.

Sus principales aplicaciones son como:

Sensor de temperaturaControl de temperatura

Algunas de las configuraciones de sus aplicaciones típicas como sensor de temperatura semuestran en las siguientes figuras:

Figura 1.2 LM35 Sensor de temperatura centígrada básico

1.3 SENSADO Y ACONDICIONAMIENTO DE SEÑAL

La etapa de sensado y acondicionamiento se encarga de adquirir la señal que proviene del

transductor de temperatura, que en este caso se seleccionó un termopar tipo k, el cualentrega una señal de 40 micro volts / ºC y puede operar en un rango de 0 ºc a 1200 ºC,que es el rango de operación del horno. Para su correcta utilización por el controlador serequiere amplificar la señal hasta obtener una señal de 4 mv / ºC.

El circuito puede ser calibrado a cualquier temperatura ajustando el valor de laresistencia variable POT 2. Por ejemplo para ajustar a 25 ºC, Mover la resistenciavariable hasta obtener a la salida del amplificador operacional una lectura de 100milivolts (4 milivolts/ºC x 25).

Para la compensación a temperatura ambiente del termopar se utiliza el sensor detemperatura Lm35, el cual entrega una señal de 10 mv/ºC y puede operar en un rango de0ºC a 100 ºC.Los circuitos de la etapa de sensado y acondicionamiento se muestran en la figura 1.3

5/8/2018 Control Ad Or de Temperatura Simplificado - slidepdf.com

http://slidepdf.com/reader/full/control-ad-or-de-temperatura-simplificado-559abeacae2ec 6/50

 

  6

Figura 1.3 Etapa de sensado y acondicionamiento

El amplificador operacional utilizado es un LT 1014 de la empresa Linear Technology conlas siguientes características relevantes:

• Operación con una sola fuente

• Bajo voltaje de offset típico 50 máximo, 180 micro volts

• Alta ganancia

• Bajo corrimiento 2 micro volts / ºC Máximo

• La razón de rechazo al modo común (o CMRR) Mayor a 94 dB

La compensación de temperatura ambiente se hace por programa en el microcontrolador.Ganancia es la ganancia del amplificador operacionalEl voltaje de salida del Amplificador operacional en modo No inversor está dado por:

Ganancia = (1 + RF/RI)Ganancia = 100RI = 4.7kRF = (100-1)RI = 99(4700) = 465.3K OhmsSiendo RF la resistencia de retroalimentación y RI la resistencia de entrada.Para evitar ruido de alta frecuencia se tiene un filtro pasa bajos pasivo formado por laresistencia R2 y el capacitor C8., siendo su frecuencia de corte:R2 = 4700 ohmsC8= .1 Micro fFc = 1/2piRC = 1/6.28x4700x.0.0000001 = 1/0.029516FC = 338 HZ

5/8/2018 Control Ad Or de Temperatura Simplificado - slidepdf.com

http://slidepdf.com/reader/full/control-ad-or-de-temperatura-simplificado-559abeacae2ec 7/50

 

  7

La resistencia R1 tiene como función detectar la condición de falla del termopar, cuandoeste se abre o está desconectado, dando como resultado un voltaje máximo a la salida delamplificador operacional (5 volts).

5/8/2018 Control Ad Or de Temperatura Simplificado - slidepdf.com

http://slidepdf.com/reader/full/control-ad-or-de-temperatura-simplificado-559abeacae2ec 8/50

 

  8

CAPITULO 2

DESCRIPCIÓN DELMICROCONTROLADOR PIC16F887

5/8/2018 Control Ad Or de Temperatura Simplificado - slidepdf.com

http://slidepdf.com/reader/full/control-ad-or-de-temperatura-simplificado-559abeacae2ec 9/50

 

  9

2.1 INTRODUCCIÓN 

La Unidad de control y procesamiento está constituida por un MicrocontroladorPIC16F887 de la Compañía Microchip, el cual cuenta con los puertos de Entrada/Salida,Memoria de Programa y de Datos, así como los convertidores Analógico digitalesnecesarios para poder leer las señales analógicas provenientes de los sensores.Se eligió este tipo de microcontrolador por su bajo costo, amplia gama de herramientasde desarrollo disponibles en el mercado proporcionadas por el Proveedor así como dediferentes compañías independientes y su disponibilidad en México

2.2 CPU

El PIC16F887 incorpora un CPU RISC de B-bits de datos y 16 bits de memoria de programa

a este tipo de arquitectura se le llama arquitectura Harvard, donde la memoria deprograma y la memoria de datos se encuentran en buses diferentes, permitiendo mayorvelocidad de acceso.

Principales características:• Arquitectura RISC• Frecuencia de Operación 0-20 MHz• Oscilador interno de precisión calibrado de fábrica +/- 1%• Selección de frecuencia por Software con un rango de 8MHz a 31KHz• Voltaje de alimentación de 2.0-5.5V• 35 Pines de Entrada/Salida

-Alta corriente de salida (source/sink) para operar directamente un LED-Resistencias de pull-up programables individualmente por software

• 8K de memoria ROM con tecnología FLASH-El Chip puede ser reprogramado hasta 100.000 veces

• Programación Serie In-Circuit.El Chip puede ser programado aun instalado en la tarjeta.

• 256 bytes de memoria EEPROM-Los datos Pueden ser escritos en EEPROM más de 1.000.000 de veces

• 368 bytes memoria RAM• convertidor: A/D

-14-canales

-resolución 10-bits• 3 temporizadores/contadores independientes• Temporizador Watch-dog• modulo Mejorado de USART

-Soporta RS-485, RS-232 y LIN2.0-Auto Detección de -Baud

5/8/2018 Control Ad Or de Temperatura Simplificado - slidepdf.com

http://slidepdf.com/reader/full/control-ad-or-de-temperatura-simplificado-559abeacae2ec 10/50

 

  10

2.3 MAPAS DE MEMORIA Y VECTOR DE INTERRUPCIÓN.

El microcontrolador tiene tres tipos de memoria ROM, RAM y EEPROM, cada una de ellasserá discutida por separado, ya cada una de ellas tiene diferentes funciones,características y organización

2.3.1 Flash/ROM

La memoria ROM es usada para guardar de forma permanente el programa que va a serejecutado. Esta memoria es a menudo llamada “memoria de programa” . El PIC16F887tiene 8K words de memoria ROM (en total 8192 localidades). Ya que esta ROM está hechacon tecnología de Memoria Flash, su contenido puede ser cambiado mediante un voltaje

de programación especial (13V). El diagrama a bloques de la memoria se muestra en lafigura 2.1

Figura 2.1 Mapa de memoria FLASH

5/8/2018 Control Ad Or de Temperatura Simplificado - slidepdf.com

http://slidepdf.com/reader/full/control-ad-or-de-temperatura-simplificado-559abeacae2ec 11/50

 

  11

2.3.2 EEPROM

Similar a la memoria de programa, el contenido de la EEPROM es guardado de manerapermanente, aún cuando haya un corte de energía. Sin embargo, a diferencia de la ROM,el contenido de la EEPROM puede se cambiado durante la operación delmicrocontrolador. Debido a ésta característica de la memoria EEPROM (256 localidades)es la indicada para salvar los resultados creados y usados durante la operación.

2.3.3 RAM

La RAM es el tercero y más complejo tipo de memoria del microcontrolador. En estecaso, consiste de dos partes: Registros de propósito general y registros de funcionesespeciales (SFR).

Ambos tipos de registros pierden su información cuando se apaga la fuente dealimentación. Ambos tipos de registros son manufacturados de la misma forma, aunquelas funciones que realizan son diferentes.

Los Registros de propósito general son usados para almacenamiento temporal de datos yresultados creados durante la operación del microcontrolador.

Los Registros especiales son también localidades de RAM, pero a diferencia de losregistros de propósito general, su propósito está predeterminado durante el proceso demanufactura y no puede ser alterado, ya que sus bits están físicamente conectados acircuitos particulares en el chip, por ejemplo al convertidor Analógico digital, módulo

serie de comunicaciones, etc., cualquier cambio en su contenido afecta la operación delmicrocontrolador o alguno de sus circuitos. Por ejemplo , cambiando los bits del registroTRISA, la función de cada pin del puerto A puede ser cambiado como entrada o salida.

Otra característica de éstas localidades de memoria, es que tienen sus nombres ( losregistros y sus bits), facilitando de manera considerable la escritura de programas, yaque los Lenguajes de Alto Nivel, pueden usar la lista de todos los registros con susdirecciones exactas, es suficiente especificar el registro por su nombre, para leer ocambiar su contenido.

La memoria RAM está particionada en cuatro bancos. Antes de acceder algún registro

durante la escritura del programa ( para leer o cambiar el contenido), es necesarioseleccionar el banco que contiene el registro. Son usados dos bits del Registro de estadopara seleccionar el banco que contiene el registro. A fin de facilitar la operación, los SFRmás usados tienen la misma dirección en todos los bancos.En la figura 2.3 se muestran el mapa de memoria RAM.

5/8/2018 Control Ad Or de Temperatura Simplificado - slidepdf.com

http://slidepdf.com/reader/full/control-ad-or-de-temperatura-simplificado-559abeacae2ec 12/50

 

  12

Figura 2.2 Mapa de memoria RAM

5/8/2018 Control Ad Or de Temperatura Simplificado - slidepdf.com

http://slidepdf.com/reader/full/control-ad-or-de-temperatura-simplificado-559abeacae2ec 13/50

 

  13

2.3.4 Vector de Interrupción

Lo primero que hace el microcontrolador cuando llega una petición de interrupción esterminar de ejecutar la instrucción que estaba ejecutando en ese momento, parar elprograma normal e inmediatamente después, se guarda automáticamente la siguienteinstrucción que iba a ser ejecutada en la pila y se cambia el contador de programa por ladirección por defecto ( predefinida por el fabricante del microcontrolador). Esa direccióna donde el programa continúa la ejecución es llamada el Vector de Interrupción. Para elmicrocontrolador PIC16F887, esta dirección es la 0004h

Parte del programa que se activa cuando llega una petición de interrupción es llamadorutina de interrupción.

Algunos microcontroladores tienen varios vectores de interrupción (cada petición deinterrupción tiene su vector de interrupción), pero en éste caso hay solo un vector de

interrupción, de ahí que la primer actividad que hace la rutina de interrupción esidentificar cual fue la fuente de interrupción. Finalmente cuando se identificó la fuentede interrupción y se ejecuta el código de la rutina de interrupción, el microcontroladoreventualmente alcanza la instrucción RETIE, en ese momento de manera automática sesaca la dirección de retorno de la pila y el programa continúa se ejecución desde dondefue interrumpido.

2.4 LOS PUERTOS DE ENTRADA Y SALIDA

Una de la características más importantes de un microcontrolador es la cantidad de pinesde entrada/salida (E/S) usados para conexiones con periféricos. En este caso elPIC16F887 cuenta con 35 pines de entradas/salidas genéricas disponibles, los cuales sonsuficientes para la mayoría de las aplicaciones.Los pines están organizados en puertos de 8 bits similares a los registros, agrupados encinco registros llamados A,B,C,D y E, todos tienen características comunes.Por razones prácticas, muchos pines E/S tienen dos o tres funciones. Cada puerto tienesu “satélite”, por ejemplo el registro TRIS correspondiente: TRISA, TRISB, TRISC etc. Quedetermina su desempeño, pero no el contenido del puerto. Poniendo en cero un bit(bit=0) del registro TRIS, el pin correspondiente del puerto se configura como salida. Demanera similar poniendo en 1 un bit del registro TRIS (bit=1) el registro correspondiente

en el puerto asociado al registro TRIS se configura como entrada. En la figura 2.3 semuestran los pines del microcontrolador PIC16F887 y en la figura 2.4 el diagrama abloques.

5/8/2018 Control Ad Or de Temperatura Simplificado - slidepdf.com

http://slidepdf.com/reader/full/control-ad-or-de-temperatura-simplificado-559abeacae2ec 14/50

 

  14

Figura 2.1 Pines del Microcontrolador

Figura 2.4 Diagrama bloques del Microcontrolador PIC16F887

5/8/2018 Control Ad Or de Temperatura Simplificado - slidepdf.com

http://slidepdf.com/reader/full/control-ad-or-de-temperatura-simplificado-559abeacae2ec 15/50

 

  15

2.5 EL MÓDULO DE RELOJ

El módulo de reloj del microcontrolador tiene tres fuentes de señal de reloj paraalimentar otras tres señales que sincronizan la CPU y los periféricos

Las fuentes de reloj son las siguientes:

• Un reloj que puede funcionar con cristales o resonadores cerámicos de bajafrecuencia o de alta frecuencia . El modo se selecciona por software.

• Un reloj de alta frecuencia que ocupa cristales o resonadores cerámicos dealta frecuencia.

• Un oscilador interno de características RC controlado digitalmente mediante

registros de control.

2.5.1 Programación del registro OSCCON

Este registro define si el oscilador es, externo, interno y en este caso lavelocidad de operación.

Bit 7 no se usa

Bit 6-4 todos en 1 oscilador interno a 8 MHZBit 3 0

Oscilador interno

Bit2 es de solo lectura

Bit 1 es de solo lectura

Bit 0 1 El oscilador interno es usado como reloj del sistema

OSCCON = 0x71;// oscilador interno a 8 MHZ

5/8/2018 Control Ad Or de Temperatura Simplificado - slidepdf.com

http://slidepdf.com/reader/full/control-ad-or-de-temperatura-simplificado-559abeacae2ec 16/50

 

  16

Tabla 2.1 Registro OSCON

Esta flexibilidad en el sistema de reloj está especialmente indicada para ahorrar energía,ya que se puede ocupar un cristal de baja frecuencia, por ejemplo 32 KHz, para losperiféricos, mientras la CPU se opera mediante el oscilador interno a una frecuencia quepuede ir de los 31 KHz a los 8 MHz, dependiendo de la configuración y características del

dispositivo en particular. Además para contrarrestar el efecto de corrimiento defrecuencia del oscilador interno se puede corregir periódicamente con la señal másestable proveniente del oscilador de baja frecuencia controlado por cristal.

2.5.2 Configuración del OPTION_REG,

5/8/2018 Control Ad Or de Temperatura Simplificado - slidepdf.com

http://slidepdf.com/reader/full/control-ad-or-de-temperatura-simplificado-559abeacae2ec 17/50

 

  17

El registro OPTION_REG define los parámetros de resistencias de pull up, el tipo deseñal que dispara la interrupción y el factor de división de la frecuencia de reloj quealimentará al temporizador 0 ( TIMER 0)Bit 7 = 1 Resistencias de pull up deshabilitadas

Bit 6 = 0 Interrumpe a la subidaBit 5 = 0 Fosc/4Bit 4 = 0 El temporizador incrementa a la subidaBit 3 = 0 El divisor se asigna al temporizador 0Bit 2-0 = 1 El divisor es de 256

Tabla 2.2 Registro OPTION_REGOPTION_REG = 0x87; // Asigna divisor a TMR0 1:256

5/8/2018 Control Ad Or de Temperatura Simplificado - slidepdf.com

http://slidepdf.com/reader/full/control-ad-or-de-temperatura-simplificado-559abeacae2ec 18/50

 

  18

2.5.3 El convertidor análogo a digital

Una de las características distintivas de la familia de microcontroladores es laincorporación de un convertidor análogo a digital. El PIC16F887 tiene un ADC que generauna señal de 10 bits mediante aproximaciones sucesivas y almacena el resultado en losregistros (ADRESL y ADRESH) con una tasa de muestreo de casi 200 mil muestras porsegundo, el inicio de la conversión se puede realizar por software o por señalesprovenientes de los temporizadores; el término de la conversión puede generarinterrupciones para alertar al procesador; la referencia positiva se puede seleccionarentre una señal externa o interna; la referencia negativa se puede seleccionar entre unaseñal externa o la tensión de tierra negativa. La Figura 2.5 se muestra el diagrama abloques del ADC.

Figura 2.5 Diagrama a bloques ADC

5/8/2018 Control Ad Or de Temperatura Simplificado - slidepdf.com

http://slidepdf.com/reader/full/control-ad-or-de-temperatura-simplificado-559abeacae2ec 19/50

 

  19

2.5.4 Programación del registro ADCON0 

Este registro define el oscilador que utilizará para funcionar el ADC interno, la habilitacióndel CAD.

Bit 7-6 00 osc/2Bit 2-5 selección de canalesBit 1 bit de estado solo lecturaBit 0 1 se habilita el CAD

ADCON0 = 0B00000001Osc/2, CAD habilitado

Tabla 2.3 Registro ADCON0

5/8/2018 Control Ad Or de Temperatura Simplificado - slidepdf.com

http://slidepdf.com/reader/full/control-ad-or-de-temperatura-simplificado-559abeacae2ec 20/50

 

  20

2.5.5 Programación del registro ADCON1

Este registro define si el resultado de la conversión se justifica a la derecha o izquierda, elvoltaje de referencia que utilizará el ADC,

Bit 7 1 justificado a la derechaBit 6 no se usaBit 5 0 vss es el voltaje de referencia negativaBit 4 0 vdd es el voltaje de referencia positivaBit 0-3 no se usan

ADCON1 = 0b10000000;//bit 07 1 justificado a la derechaJustificado a la derecha y los voltajes de referencia son 0 y 5 V de la fuente.

Tabla 2.4 Registro ADCON1

5/8/2018 Control Ad Or de Temperatura Simplificado - slidepdf.com

http://slidepdf.com/reader/full/control-ad-or-de-temperatura-simplificado-559abeacae2ec 21/50

 

  21

2.5.5 Programación del registro ANSEL

Este registro define cuales de las 8 primeras entradas se configurarán como entradasanalógicas, en nuestro caso solo se utilizan las primeras 2.

ANSEL = 0B00000011 Configura AN0 y AN1 como entradas analógicas

2.5.6 Programación del registro ANSELH

Este registro define cuales de las 4 ultimas entradas se configurarán como entradasanalógicas, no se están usando como entradas analógicas por lo tanto se inicializa con 0. .

ANSELH = 0;

2.5.7 Programación del registro TRISA

Este registro se puede configurar como entrada (1) o salida (0), los primeros 2 bits seestán utilizando como entradas y los restantes no se están usando, por lo que loconfiguramos como entradas todos los bits escribiendo unos en todos los bits.

TRISA = 0xFF;//puerto A como entradas

2.5.8 Programación del registro TRISE

Se está usando como salida por lo que se inicializa con 0.

TRISE = 0; // PORTE es salida

2.5.9 Programación del registro PORTB.

En el Puerto B está conectado el teclado matricial de 3 x 4, el cual debe ser inicializadoantes de poder usarlo, la inicialización se hace mediante la rutina de inicialización delteclado que incluye el compilador Mikroc.

Keypad_Init(&PORTB);

2.5.10 Programación del registro PORTD

En el Puerto D está conectado display LCD, el cual debe ser inicializado antes de poderusarlo, la inicialización se hace mediante la rutina de inicialización del display que incluyeel compilador Mikroc.

Lcd_Init(&PORTD);

5/8/2018 Control Ad Or de Temperatura Simplificado - slidepdf.com

http://slidepdf.com/reader/full/control-ad-or-de-temperatura-simplificado-559abeacae2ec 22/50

 

  22

2.5.11 Programación del registro INTCON

Este registro define que periféricos pueden interrumpir al procesador.

Bit 7 1 Habilita interrupciones globalesBit 6 0 Deshabilita interrupciones al USARTBit 5 1 Habilita interrupciones al TMR0Bit 4 0 Deshabilita interrupciones externasBit 3 0 Deshabilita interrupciones al puerto BBit 0-2 Solo lectura

INTCON = 0xA0; Hablita interrupción de TMR0 e interrupciones globales

Tabla 2.5 Registro INTCON

5/8/2018 Control Ad Or de Temperatura Simplificado - slidepdf.com

http://slidepdf.com/reader/full/control-ad-or-de-temperatura-simplificado-559abeacae2ec 23/50

 

  23

2.6 LOS TEMPORIZADORES DE PIC16F887

Existen tres temporizadores/contadores identificados como TMR0, TMR1 y TMR2completamente independientes disponibles en el microcontrolador PIC16F887.

2.6.1 El temporizador TMR0.

El temporizador TMR0 es temporizador/contador de 8 bits con las siguientescaracterísticas:

•  Temporizador/contador de 8 bits

•  Divisor de 8 bits

•  Fuente programable de reloj interna y externa

•  Interrupción en sobre flujo

•  Reloj programable externo

El temporizador TMR0 se utiliza como temporizador para generar interrupciones cada 20ms , que es la base de tiempo que utiliza el sistema para sincronizar y llevar acabo todaslas actividades.Para calcular que valor debe ser cargado al temporizador se utiliza la siguiente fórmulas:

Periodo de reloj = 1/8000000 = .125 us para f = 8 mhz

Valor a cargar = 256-tiempo requerido de interrupción/(4 x periodo de reloj x divisor)Valor = 256 – 20ms/4x.000125 x256 = 256 - 156.25 = 100

TMR0 = 100; valor inicial TIMER0

El temporizador debe ser cargado con el valor 100 para que al llegar el contador a 0genere una interrupción ( cada 20 ms).

5/8/2018 Control Ad Or de Temperatura Simplificado - slidepdf.com

http://slidepdf.com/reader/full/control-ad-or-de-temperatura-simplificado-559abeacae2ec 24/50

 

  24

Figura 2.6 Diagrama a bloques TIMER0

2.6.2 El temporizador TMR1.

El temporizador TMR01 es temporizador/contador de 16 bits con las siguientescaracterísticas:

•  Par de registros (TMR1H:TMR1L) 16 bits temporizador/contador

•  Fuente de reloj programable (interna o externa)

•  Divisor de 3 bits

•  Interrupción de sobre flujo

Cuando usa fuente de reloj interno se utiliza como temporizador, mientras que si usareloj externo se utiliza como contador. En la figura 2.7 se muestra el diagrama a bloquesde temporizador TMR1 y en la tabla 2.8 se muestra el registro de control del TMR1T1CON.

5/8/2018 Control Ad Or de Temperatura Simplificado - slidepdf.com

http://slidepdf.com/reader/full/control-ad-or-de-temperatura-simplificado-559abeacae2ec 25/50

 

  25

Figura 2.7 Diagrama a bloques del TIMER1

5/8/2018 Control Ad Or de Temperatura Simplificado - slidepdf.com

http://slidepdf.com/reader/full/control-ad-or-de-temperatura-simplificado-559abeacae2ec 26/50

 

  26

Tabla 2.8 T1CON Registro de control del TMR1

5/8/2018 Control Ad Or de Temperatura Simplificado - slidepdf.com

http://slidepdf.com/reader/full/control-ad-or-de-temperatura-simplificado-559abeacae2ec 27/50

 

  27

2.6.3 El temporizador TMR2.

El temporizador TMR012 es temporizador/contador de 8 bits con las siguientescaracterísticas:

•  Registro del RMR2 de 8 bits

•  Registro del periodo PR2 de 8 bits

•  Interrupción cuando TMR2 y PR2 son iguales

•  División de entrada programable por software (1:1, 1:4, 1:16)

•  División de salida programable por software (1:1, 1:4, 1:16)

En la figura 2.8 se muestra el diagrama a bloques de TMR2 y en la tabla 2.9 el registro decontrol del TMR2

Figura 2.8 Diagrama a bloques del TIMER2

5/8/2018 Control Ad Or de Temperatura Simplificado - slidepdf.com

http://slidepdf.com/reader/full/control-ad-or-de-temperatura-simplificado-559abeacae2ec 28/50

 

  28

Tabla 2.9 T2CON Registro de control del TMR2

5/8/2018 Control Ad Or de Temperatura Simplificado - slidepdf.com

http://slidepdf.com/reader/full/control-ad-or-de-temperatura-simplificado-559abeacae2ec 29/50

 

  29

CAPÍTULO 3

DESCRIPCIÓN DEL CONTROLADOR DETEMPERATURA

5/8/2018 Control Ad Or de Temperatura Simplificado - slidepdf.com

http://slidepdf.com/reader/full/control-ad-or-de-temperatura-simplificado-559abeacae2ec 30/50

 

  30

3.1 INTRODUCCION

Para resolver un problema es recomendable dividirlo en varios problemas de menor

complejidad y resolver cada uno de estos por separado para finalmente unir lassoluciones resultantes y resolver el problema principal. Esta forma de trabajar es de vitalimportancia en la programación y constituye una herramienta indispensable tanto en eldiseño como en la elaboración del código fuente.

El diseño propuesto consiste de una microcomputadora con los módulos de entradanecesarios para medir la señal de entrada, interfaz de entrada y salida de datos, asícomo la etapa de potencia, como se muestra el la figura 3.1

Figura 3.1 Diagrama a bloques del Sistema

3.2 TEMPERATURA

HORNO

TECLADO

SALIDA

ENTRADA

MICROCONTROLADOR

PIC 16F887

SENSOR

ENTRADA

SALIDA

RESISTENCIAS

DISPLAY LCD

5/8/2018 Control Ad Or de Temperatura Simplificado - slidepdf.com

http://slidepdf.com/reader/full/control-ad-or-de-temperatura-simplificado-559abeacae2ec 31/50

 

  31

Para la lectura de la temperatura ambiente se utiliza la entrada analógica 1 delconvertidor analógico digital (An1), este pin es conectado a la salida del circuito detemperatura, como se muestra a continuación.

Figura 3.2 Circuito de detección de temperatura

Para medir la temperatura dentro del horno se utiliza como sensor el termopar y lacircuitería asociada que acondiciona la señal del termopar y queda lista para serconectada a la entrada An0 del microcontrolador. Después de haber configurado elconvertidor analógico digital y dado la orden para que inicie la conversión, al resultadoarrojado por el convertidor es necesario realizarle una operación, esto con el fin deobtener una medida confiable, al valor medido por el termopar se le debe sumar latemperatura ambiente detectada por el sensor LM35. La siguiente operación debe serrealizada a cada resultado del convertido analógico a digital.

Temperatura = (Lectura An0x5000)/(1024x4) + (Lectura An1x5000)/(1024x10)

Debido a las características del circuito de temperatura mencionadas en el capítulo 2 yrealizando lo anterior nuestra lectura de temperatura esta lista para ser enviada a travésdel display de cristal liquido LCD, dicha rutina se muestra a continuación:

ADCON0 = 0B00000001;// BIT 0 habilita ADC, BITS 6 Y 7 EN 0 OSC/2

// BITS 6 Y 7 EN 1 FREC OSC RC

ADCON1 = 0b10000000;//bit 07 1 justificado a la derecha

//bit 5 0 = referencia - vss bit 04 0 = ref + vdd

ANSEL = 0B00000011; // Configura AN0 y AN1 como entradas analógicas

ANSELH = 0;

5/8/2018 Control Ad Or de Temperatura Simplificado - slidepdf.com

http://slidepdf.com/reader/full/control-ad-or-de-temperatura-simplificado-559abeacae2ec 32/50

 

  32

TMR0 = 100; // Timer0 initial value

INTCON = 0xA0; // Enable TMRO interrupt

cnt = 0; // Initialize cnt

Delay_ms(500); // Delay 15 mili second

Keypad_Init(&PORTB);

Lcd_Init(&PORTD); // LCD está connected to PORTDDelay_ms(20); // Delay 15 mili second

Lcd_Cmd(LCD_CLEAR);

Delay_ms(500); // Delay . second

Lcd_Out(1,1,"Controlador de Temperatura");

Lcd_Out(2,1,"Elije la opción deseada 1,2,3");

Delay_ms(500); // Delay . second

Lcd_Cmd(LCD_CLEAR);

do {

if (cnt >= 50) {

PORTE = ~PORTE; // Toggle PORTB LEDs

cnt = 0;

tmp++ ;

Lcd_Cmd(LCD_CLEAR);Vin0 = Adc_Read(0); // Lee el canal 0 (AN0)

Vin1 = Adc_Read(1); // Lee el canal 1 (AN1)

T0 =( (Vin0 * 5000) >> 10)/4; // T0 = (Vin0 x 5000) /(1024 x 4)

T1 =( (Vin1 * 5000) >> 10)/10; // T1 = (Vin1 x 5000) / (1024 x 10)

Temperatura = T0 + T1

Lcd_Out(2,1,"TEMP ºC = "); // Display " TEMP ºC = "

LongToStr(Temperatura,op); // Se convierte a string en "op"

j=0;

for(i=0;i<=11;i++)

{

if(op[i] != ' ') // If a blank

{lcd[j]=op[i];

j++;

}

}

// Display result on LCD

//

Lcd_Out(2,10,lcd); // salida a LCD

Delay_ms(1000); // Espera 1 segundo

// Reset cnt

}

} while(1);

}

3.3 MODULO DE DESPLIEGUE

El módulo de despliegue es básicamente un display de cristal líquido ( LCD) de 2renglones por 16 caracteres cada uno compatible con el controlador HD44780 de Hitachiel cual, se utiliza para mostrar el valor de temperatura que hay en el interior del Horno, asícomo para la programación y el manejo del Horno como se muestra en la Figura 3.3.

5/8/2018 Control Ad Or de Temperatura Simplificado - slidepdf.com

http://slidepdf.com/reader/full/control-ad-or-de-temperatura-simplificado-559abeacae2ec 33/50

 

  33

Figura 3.3 Módulo de despliegue

El LCD se conecta al puerto D en modo 4 bits, con el fin de minimizar el número de bitsdel Microcontrolador y facilitar el diseño del circuito impreso, de tal manera que para sumanejo se utilizan 4 bits para datos y 2 para control, con lo que se necesitan solo 6 bits deun puerto de 8 bits. En la tabla 3.1 se muestra las señales asociadas al controlador deldisplay.

Función Numerode Pin 

Nombre EstadoLógico

Descripción 

Tierra 1 Vss - 0V

Fuente 2 Vdd - +5V

Contraste 3 Vee - 0 - Vdd

Control deoperación 4 RS

01

D0 – D7 son interpretados Comocomandos

D0 – D7 son interpretados comodatos

5/8/2018 Control Ad Or de Temperatura Simplificado - slidepdf.com

http://slidepdf.com/reader/full/control-ad-or-de-temperatura-simplificado-559abeacae2ec 34/50

 

  34

5 R/W01

escribe datos (del controladorral LCD)

Lee datos (del LCD al

controlador)

6 E01

De 1 a 0

Acceso a LCD deshabilitaroperación Normal

Datos/comandos sontransferidos al LCD

7 D0 0/1 Bit 0 LSB

8 D1 0/1 Bit 1

9 D2 0/1 Bit 2

10 D3 0/1 Bit 3

11 D4 0/1 Bit 4

12 D5 0/1 Bit 5

13 D6 0/1 Bit 6

Datas /comandos

14 D7 0/1 Bit 7 MSB

Led 15

16

Led –

Led +

0

1

Iluminación del display

Tabla 3.1 Señales display Hitachi LCD

5/8/2018 Control Ad Or de Temperatura Simplificado - slidepdf.com

http://slidepdf.com/reader/full/control-ad-or-de-temperatura-simplificado-559abeacae2ec 35/50

 

  35

3.4 MODULO DE ENTRADA DE DATOS

Para el manejo de datos de entrada se cuenta con un teclado matricial, por medio del cualel usuario se comunica con el sistema como se muestra en la Figura 3.4.

.Figura 3.4 Módulo de entrada de datos

La interconexión entre el microcontrolador El Teclado matricial de 3 columnas por 4renglones, con un total de 12 teclas se conecta al puerto B, este tipo de arreglo permiteminimizar el número de bits del Microcontrolador, de tal manera que para su manejo seutilizan 3 bits para columnas y 4 bits para renglones con lo que se necesitan solo 7 bits deun puerto de 8 bits en lugar de 12 si se conectaran 12 interruptores en paralelo.

5/8/2018 Control Ad Or de Temperatura Simplificado - slidepdf.com

http://slidepdf.com/reader/full/control-ad-or-de-temperatura-simplificado-559abeacae2ec 36/50

 

  36

3.5 MODULO DE POTENCIA

El módulo de potencia formado por un opto acoplador con salida a triac, el cual nospermite controlar la energía que se suministra al elemento calefactor contenido dentro delhorno como y como elemento de aislamiento de la línea de 127 VCA como se muestra enla Figura 3.5

.

Figura 3.5 Módulo de potencia

El opto acoplador es controlado por el bit 0 del puerto D, que a su vez activa el triac de

potencia que controlará la carga resistiva del Horno, o la bobina de un contactor de

Potencia en caso de que la potencia a manejar sea mayor a la capacidad del triac, 

.

3.6 MODULO DE FUENTE DE ALIMENTACIÓN

5/8/2018 Control Ad Or de Temperatura Simplificado - slidepdf.com

http://slidepdf.com/reader/full/control-ad-or-de-temperatura-simplificado-559abeacae2ec 37/50

 

  37

La fuente de alimentación está formada por un regulador de voltaje lineal que genera 5 v ylos capacitares de desacoplo en la entrada y salida de la fuente.Para su operación, se requiere una fuente externa de 9v cc no regulada o alimentación debaterías.

Figura 3.6 Fuente de alimentación

5/8/2018 Control Ad Or de Temperatura Simplificado - slidepdf.com

http://slidepdf.com/reader/full/control-ad-or-de-temperatura-simplificado-559abeacae2ec 38/50

 

  38

3.7 SISTEMA DE DESARROLLO

El sistema de desarrollo de software y hardware utilizado para desarrollar éste proyectoconsiste de:

• Computadora personal con el Sistema operativo Windows XP

• Compilador Mikroc Versión 8.1 de la Compañía Mikroelectronika

• MPLAB IDE de la Compañía Microchip Technology Inc.

• Programador de PIC MPLAB ICD 2 de la Compañía Microchip Technology

• Tarjeta de desarrollo PICDEM 2 de la Compañía Microchip Technology

Figura 3.7 Programador ICD 2 y Tarjeta Picdem 2

5/8/2018 Control Ad Or de Temperatura Simplificado - slidepdf.com

http://slidepdf.com/reader/full/control-ad-or-de-temperatura-simplificado-559abeacae2ec 39/50

 

  39

3.8 MÓDULOS DE SOFTWARE

Hay básicamente dos módulos donde se realizan las funciones principales del sistema.

El Módulo de interrupciones se ejecuta cada 20 ms, y es el que lleva el conteo del tiempo,así como la lectura de temperatura a través de las entradas analógicas y el control delhorno. El diagrama de estados se muestra en la figura 3.8

Figura 3.8 Diagrama de estados

3.8.1 MAQUINAS DE ESTADOS FINITOSHay dos tipos de maquinas de estados finitos:

Mealy cambia su acción basada en el estado actual y sus entradas.

Moore cambia su acción solamente basada en su estado actual.

5/8/2018 Control Ad Or de Temperatura Simplificado - slidepdf.com

http://slidepdf.com/reader/full/control-ad-or-de-temperatura-simplificado-559abeacae2ec 40/50

 

  40

La parte mas importante del método de máquinas de estados finitos es dibujar losdiagramas de estado que nos permite concentrarnos en el problema, más que en lasvariables o en el código a desarrollar.

En una máquina de estados hay una variable de control llamada variable de estado, querepresenta el estado actual de la máquina. Cada valor de la variable de estado direccionaa la máquina de estados a un estado diferente y permanece en ese estado hasta que lavariable de estado cambie. La ventaja de utilizar máquinas de estados es que fácilmentese pasa de la gráfica de estados al código en cualquier lenguaje de programación.

En lenguaje C con la siguiente estructura de programa se representan los estados de lamáquina de estados representada en la Figura 3.5

enum maquina_de_estado { espera, paso1,paso2,paso3,paso4,paso5 }

enum maquina_de_estado estado

La condición describe cuando el estado de la maquina de estados debe ir de la condición

actual al siguiente.

La acción describe que pasa cuando la condición se cumple, que acciones se deben tomar

en el estado actual.

5/8/2018 Control Ad Or de Temperatura Simplificado - slidepdf.com

http://slidepdf.com/reader/full/control-ad-or-de-temperatura-simplificado-559abeacae2ec 41/50

 

  41

enum maquina_de_estado { espera, paso1,paso2,paso3,paso4,paso5 };

enum maquina_de_estado estado = Espera;

while(1) { // (1)

switch ( stado ) {

case Espera :

if bandera == 1

conecta resistencia()

estado = paso1;

break;

case Paso1 :

break;

case Paso2 :

break;

case Paso3 :

break;

case Paso4 :

break;

case Paso5 :

estado = Espera;

break;

} // switch

} // While Infinito

}

El programa principal, donde se inicializan los periféricos, se analizan los comandos deusuario para iniciar el proceso y posteriormente quedarse en un ciclo infinito, leyendo elteclado para leer comandos como se muestra en la Figura 3.9.

5/8/2018 Control Ad Or de Temperatura Simplificado - slidepdf.com

http://slidepdf.com/reader/full/control-ad-or-de-temperatura-simplificado-559abeacae2ec 42/50

 

  42

Figura 3.9 diagrama de flujo del programa principal

5/8/2018 Control Ad Or de Temperatura Simplificado - slidepdf.com

http://slidepdf.com/reader/full/control-ad-or-de-temperatura-simplificado-559abeacae2ec 43/50

 

  43

CAPÍTULO 4

CONCLUCIONES

5/8/2018 Control Ad Or de Temperatura Simplificado - slidepdf.com

http://slidepdf.com/reader/full/control-ad-or-de-temperatura-simplificado-559abeacae2ec 44/50

 

  44

• Con éste desarrollo se cumple con las premisas de tener un producto de

buenas características , precio económico que pueda ser adquirido por artesanosde bajos recursos de nuestro país.

• Para diseñar e implementar un sistema con microcontroladores, es necesarioconocer la arquitectura del microcontrolador, conocer las herramientas de desarrollodisponibles, el compilador de C para el microcontrolador en cuestión , así comoconocer la filosofía de programación en tiempo real para poder usar las facilidades almáximo tanto de las herramientas como las del microcontrolador.

• La programación del microcontrolador en un lenguaje de alto nivel como ellenguaje C, tiene las ventajas de reducir los costos y tiempos de desarrollo y que lasaplicaciones puedan portarse con relativa facilidad a otros microcontroladoresexistentes en el mercado.

• El costo neto del controlador de temperatura en cantidades de 100 es de$500.00 el cual es un precio competitivo con los controladores detemperatura mas censillos que se venden en nuestro país.

• Los microcontroladores actuales tienen la suficiente versatilidad, poder y bajocosto como para implementar una gran variedad de aplicaciones industriales con unmínimo de componentes externas, lo que redunda en bajo costo, confiabilidad ybajo consumo de energía.

• Si el diseño de la tarjeta del microcontrolador se hace pensando en utilizarlapara diferentes proyectos, el costo se incrementa de manera insignificante peropermitiría la reutilización del hardware y gran parte del software minimizando contosen proyectos futuros y reduciendo drásticamente el tiempo de tener en el mercadoun producto nuevo.

5/8/2018 Control Ad Or de Temperatura Simplificado - slidepdf.com

http://slidepdf.com/reader/full/control-ad-or-de-temperatura-simplificado-559abeacae2ec 45/50

 

  45

Apéndice A: ESPECIFICACIONES

Temperatura

Escala de temperaturaCelsius °CRango de medición 0ºC a +1200°CResolución1°CExactitud+/- 2 ºC a 1000°C

5/8/2018 Control Ad Or de Temperatura Simplificado - slidepdf.com

http://slidepdf.com/reader/full/control-ad-or-de-temperatura-simplificado-559abeacae2ec 46/50

 

  46

Apéndice C: GLOSARIO

ADC.- Convertidor Analógico a Digital.

Arquitectura Harvard.- Es una arquitectura de computadoras que utilizanalmacenamiento separado para datos y programa.

CPU.- Unidad Central de Procesamiento (Central Processing Unit), o simplemente elprocesador, es el componente en una computadora que interpreta las instrucciones yprocesa los datos.

LM35: Sensor de precisión de temperatura de salida analógica

LSB.- Bit menos significativo (Least-Significant Bit).

MCLK.- Reloj maestro.

MIPS.- Es el acrónimo de "millones de instrucciones por segundo". Es una forma de medirla potencia de los procesadores.

MSB.- Bit mas significativo (Most-Significant Bit).

PIC16FXXX.- Es una familia de microcontroladores producidos por Microchip Technology.

Pirómetro: La radiación se enfoca hacia un filamento y un sensor óptico. El filamento escalentado por una corriente eléctrica hasta que adquiere el mismo color que el objetocaliente por lo que desaparece por el fondo de este. La corriente del filamento esentonces una medida de la temperatura.

RAM.- Memoria de acceso aleatorio (Random Access Memory).

RISC.- De Arquitectura computacional, RISC (Reduced Instruction Set Computer),Computadora con Conjunto de Instrucciones Reducidas

ROM.- Memoria de solo lectura (Read Only Memory).

Termopar: Cuando dos alambres de distinto material se unen en sus terminales y una deellas se calienta, existe corriente continua que fluye en el circuito termoeléctrico.

UART.- "Universal Asynchronous Receiver-Transmitter" ("Transmisor-Receptor AsíncronoUniversal"). Este controla los puertos y dispositivos serie. Se encuentra integrado en laplaca base o en la tarjeta adaptadora del dispositivo.

5/8/2018 Control Ad Or de Temperatura Simplificado - slidepdf.com

http://slidepdf.com/reader/full/control-ad-or-de-temperatura-simplificado-559abeacae2ec 47/50

 

  47

APENDICE D PROGRAMAS

 /** Nombre del Proyecto:

Control de Horno electrico*

* Descripción:Controlador de Temperatura de un Horno electrico

* Configuracion de prueba:MCU: PIC16F887Oscillador: Interno , 8.0000 MHz

SW: mikroC 8.1 para PIC

* NOTAS:

*/ 

unsigned short kp, cnt, oldstate = 0;char txt[5];

void interrupt() {cnt++; // increment counterkp = Keypad_Read();TMR0 = 100;INTCON = 0x20; // clear TMR0IF

}

void main() {unsigned char K,a,u = 1;unsigned long Vin, mV,tmp=0;unsigned char op[12];unsigned char i,j,lcd[6];

  //OPTION_REG = 0x84; // Asiga prescaler a TMR0 1:32OPTION_REG = 0x87; // Asigna prescaler a TMR0 1:256

 //OSCCON = 0x60;// oscilador interno a 4 MHZOSCCON = 0x71;// oscilador interno a 8 MHZ

ADCON0 = 0B00000001;// BIT 0 habilita ADC, BITS 6 Y 7 EN 0 OSC/2 // BITS 6 Y 7 EN 1 FREC OSC RCADCON1 = 0b10000000;//bit 07 1 justificado a la derecha

 //bit 5 0 = referencia - vss bit 04 0 = ref + vddANSEL = 0B00000011; // Configura AN0 y AN1 como entradas analógicasANSELH = 0;TRISB = 0;

  //PORTB = 0xFF; // Initialize PORTBTRISE = 0; // PORTE como salidaPORTE = 0xFF; // Inicialisa PORTB

TRISA = 0xFF;//puerto a como entradas

5/8/2018 Control Ad Or de Temperatura Simplificado - slidepdf.com

http://slidepdf.com/reader/full/control-ad-or-de-temperatura-simplificado-559abeacae2ec 48/50

 

  48

TMR0 = 100; // Timer0 initial valueINTCON = 0xA0; // Enable TMRO interruptcnt = 0; // Initialize cnt

Delay_ms(500); // Delay 15 mili secondKeypad_Init(&PORTB);Lcd_Init(&PORTD); // LCD is connected to PORTDDelay_ms(20); // Delay 15 mili secondLcd_Cmd(LCD_CLEAR);Delay_ms(500); // Delay . secondLcd_Out(1,1,"PRUEBA 1");Lcd_Out(2,1,"PRUEBA 2");Delay_ms(500); // Delay . secondLcd_Cmd(LCD_CLEAR);

do {

if (cnt >= 50) {PORTE = ~PORTE; // Toggle PORTB LEDscnt = 0;tmp++ ;Lcd_Cmd(LCD_CLEAR);Vin = Adc_Read(1); // Read from channel 0 (AN0)Lcd_Out(2,1,"TEMP C = "); // Display "mV = "mV =( (Vin * 5000) >> 10)/10; // mv = Vin x 5000 / 1024

LongToStr(mV,op); // Convert to string in "op"

 // LongToStr(tmp,op); // Convert to string in "op" j=0;

for(i=0;i<=11;i++){if(op[i] != ' ') // If a blank{lcd[j]=op[i];

 j++;

}}

 // Display result on LCD // 

Lcd_Out(2,10,lcd); // Output to LCDDelay_ms(1); // Wait 1 second

 // Reset cnt}

} while(1);}

5/8/2018 Control Ad Or de Temperatura Simplificado - slidepdf.com

http://slidepdf.com/reader/full/control-ad-or-de-temperatura-simplificado-559abeacae2ec 49/50

 

  49

APENDICE E Diagrama eléctrico

5/8/2018 Control Ad Or de Temperatura Simplificado - slidepdf.com

http://slidepdf.com/reader/full/control-ad-or-de-temperatura-simplificado-559abeacae2ec 50/50

 

  50

BIBLIOGRAFÍA

Programming and customizing the PIC Microcontroller.Predko, MykeUSA,Mc Graw Hill 2008 1263 p

Advanced PIC Microcontroller Projects in C: From USB to RTOS with the PIC 18FSeriesDogan , Ibrahim

UK, ISBN, 2008 544 P

Modeling Software with Finite State Machines A Practical ApproachWagner, FerdinandSchmuki, RuediWagner, ThomasWolstenholme, PeterUSA, CRC Press 2006 362P

REFERENCIAS INFORMÁTICAS

http://ww1.microchip.com/downloads/en/DeviceDoc/MPLAB_User_Guide_51519c.pdf Tema: MPLAB® IDE User’s Guide, Microchip Technology Inc.Consulta: febrero 2009

http://ww1.microchip.com/downloads/en/DeviceDoc/41291F.pdf Tema: MPLAB® IDETema: PIC16F887 Data Sheet, Microchip Technology Inc.Consulta: febrero 2009

http://www.datasheetcatalog.net/es/datasheets_pdf/L/M/3/5/LM35.shtmlTema: LM35 Datasheet, National SemiconductorConsulta: mayo 2009

http://www.mikroe.com/pdf/mikroc/mikroc_manual.pdf Tema: “mikroC User´s Manual” , MikroElectronika 2008.Consulta: Febrero de 2009