informe proyecto

25
PROYECTO CONTROL DE TEMPERATURA MANTENIMIENTO ELECTRONICO INDUSTRIAL E INSTRUMENTAL INDUSTRIAL 28409 CENTRO INDUSTRIAL DE LA EMPRESA Y LOS SERVICIOS “C.I.E.S”

description

informe,guia.

Transcript of informe proyecto

Page 1: informe proyecto

PROYECTO CONTROL DE TEMPERATURA

MANTENIMIENTO ELECTRONICO INDUSTRIAL E INSTRUMENTAL INDUSTRIAL

28409

CENTRO INDUSTRIAL DE LA EMPRESA Y LOS SERVICIOS

“C.I.E.S”

Page 2: informe proyecto

PROYECTO CONTROL DE TEMPERATURA

APRENDICES:

JESMELY DAVIANA DIAZ ANGARITA

EDWARD DANIEL RODRIGUEZ SANTOS

MANUEL ALEJANDRO JAIMES PINILLA

FABIAN MAURICIO RINCON RAMIREZ

CARLOS ALBERTO SANCHEZ GARCIA

INSTRUCTOR:

HERNANDO GOMEZ PALENCIA

MANTENIMIENTO ELECTRONICO INDUSTRIAL E INSTRUMENTAL INDUSTRIAL

28409

CENTRO INDUSTRIAL DE LA EMPRESA Y LOS SERVICIOS

“C.I.E.S”

Page 3: informe proyecto

TABLA DE CONTENIDO

• DEDICATORIA

• GLOSARIO

• OBJETIVOS

• INTRODUCCION LENGUAJE DE PROGRAMACION C

• INTRODUCCION PROYECTO CONTROL DE TEMPERATURA (LM35)

• DESARROLLO Y FASES DEL PROYECTO

• ELEMENTOS DEL CIRCUITO

• PROGRAMA DEL PROYECTO CCS

• SIMULACION DEL PROYECTO (PROTEUS)

• DISEÑO DEL CIRCUITO EN ARES

• IMPRESO DEL CIRCUITO

• PROYECTO FINAL (MONTAJE,PRACTICAS Y EVIDENCIAS)

• CONCLUSIONES

• BIBLIOGRAFIA

Page 4: informe proyecto

DEDICATORIA

ESTIMADO INSTRUCTOR Y COMPAÑEROS APRENDICES:

Este informe es elaborado con el objetivo de probar y mostrar nuestro interés y aprendi-zaje como evidencia de nuestra enseñanza.

Los invitamos a ver nuestra dedicación e interés por aprender y llevar a la practica lo aprendido en el ambito de programación de microcontroladores en lenguaje C en la com-petencia de desarrollo de proyectos con pic c, por ultimo esperamos valoren y aprecien nuestro trabajo.

Page 5: informe proyecto

GLOSARIO

*MICROCONTROLADOR: Un microcontrolador es un circuito integrado o chip que incluye

en su interior las tres unidades funcionales de una computadora: unidad central de proce-

samiento, memoria y unidades de E/S (entrada/salida).

*LM35: es un sensor de temperatura con una precisión calibrada de 1ºC y un rango que

abarca desde -55º a +150ºC.

*LENGUAJE C: es un lenguaje de programación creado en 1972 por Dennis M. Ritchie en

los Laboratorios Bell como evolución del anterior lenguaje B, a su vez basado en BCPL. Al

igual que B, es un lenguaje orientado a la implementación de Sistemas Operativos, concre-

tamente Unix. C es apreciado por la eficiencia del código que produce y es el lenguaje de

programación más popular para crear software de sistemas, aunque también se utiliza

para crear aplicaciones. Se trata de un lenguaje débilmente tipificado de medio nivel pero

con muchas características de bajo nivel. Dispone de las estructuras típicas de los lengua-

jes de alto nivel pero, a su vez, dispone de construcciones del lenguaje que permiten un

control a muy bajo nivel. Los compiladores suelen ofrecer extensiones al lenguaje que

posibilitan mezclar código en ensamblador con código C o acceder directamente a memo-

ria o dispositivos periféricos.

*PROTEUS: es un programa para simular circuitos electronicos complejos integrando in-

clusive desarrollos realizados con microcontroladores de varios tipos, en una herramienta

de alto desempeño con unas capacidades graficas impresionantes.

*ARES: es una programa de diseño de placas de circuitos electrónicos.

*CCS: es un compilador que convierte el lenguaje de alto nivel (c) a instrucciones de códi-

go de máquina que funciona en un procesador (normalmente en un PC) diferente al pro-

cesador objeto.

Page 6: informe proyecto

OBJETIVOS

GENERAL:

• Diseñar y elaborar un proyecto de control de temperatura mediante un programa diseñado en lenguaje,controlado por un pic (18f2550) en donde un sensor (lm35) es el encargado de leer la temperatura la cual sensamos y controlamos a la vez mediante un bombillo (aumente temeperatura) y un cooler (disminuya temperatu-ra).

SECUNDARIOS:

• Demostrar nuestro aprendizaje mediante la realización de este proyecto

• Analizar y mostrar el desempeño y desenvuelve en el tema de lenguaje c progra-mando.

• Desarrollar nuestro nivel de pensamiento y creatividad mediante la ejecución de programación de pic.

• Obtener la capacidad de llevar a cabo un proyecto en todos sus ámbitos programa-ción, simulación, montaje y presentación final.

• Seguir demostrando nuestro desempeño en montajes de circuitos electrónicos.

Page 7: informe proyecto

INTRODUCCION

LENGUAJE DE PROGRAMACION C

C es un lenguaje de programación creado en 1972 por Dennis M. Ritchie en los Laborato-rios Bell como evolución del anterior lenguaje B, a su vez basado en BCPL.

Al igual que B, es un lenguaje orientado a la implementación de Sistemas Operativos, con-cretamente Unix. C es apreciado por la eficiencia del código que produce y es el lenguaje de programación más popular para crear software de sistemas, aunque también se utiliza para crear aplicaciones.

Se trata de un lenguaje débilmente tipificado de medio nivel pero con muchas caracterís-ticas de bajo nivel. Dispone de las estructuras típicas de los lenguajes de alto nivel pero, a su vez, dispone de construcciones del lenguaje que permiten un control a muy bajo nivel. Los compiladores suelen ofrecer extensiones al lenguaje que posibilitan mezclar código en ensamblador con código C o acceder directamente a memoria o dispositivos periféricos.

La primera estandarización del lenguaje C fue en ANSI, con el estándar X3.159-1989. El lenguaje que define este estándar fue conocido vulgarmente como ANSI C. Posteriormen-te, en 1990, fue ratificado como estándar ISO (ISO/IEC 9899:1990). La adopción de este estándar es muy amplia por lo que, si los programas creados lo siguen, el código es portá-til entre plataformas y/o arquitecturas. En la práctica, los programadores suelen usar ele-mentos no-portátiles dependientes del compilador o del sistema operativo.

FILOSOFÍA

Uno de los objetivos de diseño del lenguaje C es que sólo sean necesarias unas pocas ins-trucciones en lenguaje máquina para traducir cada elemento del lenguaje, sin que haga falta un soporte intenso en tiempo de ejecución. Es muy posible escribir C a bajo nivel de abstracción; de hecho, C se usó como intermediario entre diferentes lenguajes.

En parte a causa de ser de relativamente bajo nivel y de tener un modesto conjunto de características, se pueden desarrollar compiladores de C fácilmente. En consecuencia, el lenguaje C está disponible en un amplio abanico de plataformas (seguramente más que cualquier otro lenguaje). Además, a pesar de su naturaleza de bajo nivel, el lenguaje se desarrolló para incentivar la programación independiente de la máquina. Un programa escrito cumpliendo los estándares e intentando que sea portátil puede compilarse en mu-chos computadores.

C se desarrolló originalmente (conjuntamente con el sistema operativo Unix, con el que ha estado asociado mucho tiempo) por programadores para programadores. Sin embargo, ha alcanzado una popularidad enorme, y se ha usado en contextos muy alejados de la pro-gramación de sistemas, para la que se diseñó originalmente.

Page 8: informe proyecto

CARACTERÍSTICAS

PROPIEDADES

• Un núcleo del lenguaje simple, con funcionalidades añadidas importantes, como funciones matemáticas y de manejo de archivos, proporcionadas por bibliotecas.

• Es un lenguaje muy flexible que permite programar con múltiples estilos. Uno de los más empleados es el estructurado "no llevado al extremo" (permitiendo ciertas licencias de ruptura).

• Un sistema de tipos que impide operaciones sin sentido.

• Usa un lenguaje de preprocesado, el preprocesador de C, para tareas como definir macros e incluir múltiples archivos de código fuente.

• Acceso a memoria de bajo nivel mediante el uso de punteros.

• Interrupciones al procesador con uniones.

• Un conjunto reducido de palabras clave.

• Por defecto, el paso de parámetros a una función se realiza por valor. El paso por referencia se consigue pasando explícitamente a las funciones las direcciones de memoria de dichos parámetros.

• Punteros a funciones y variables estáticas, que permiten una forma rudimentaria de encapsulado y polimorfismo.

• Tipos de datos agregados (struct) que permiten que datos relacionados (como un empleado, que tiene un id, un nombre y un salario) se combinen y se manipulen como un todo (en una única variable "empleado").

Page 9: informe proyecto

INTRODUCCION PROYECTO CONTROL DE TEMPERATURA

El controlador de temperatura o termostato nos permite mantener la temperatura en un rango previamente seleccionado. Ésto es útil en el uso de climatizadores, cuando se desea mantener la temperatura de una sala para un ambiente suave. Conseguiríamos fácilmente que cuando llegue a una mínima temperatura el climatizador caliente y cuando llegue a una máxima enfríe.

FUNCIONAMIENTO DEL CONTROL DE TEMPERATURA.

Nuesto circuito es un termostato que, por lo tanto, nos controla la temperatura para que se mantenga entre dos límites previamente fijados. Esta placa tiene actualmente muchas posibilidades relacionadas con la temperatura y su variación, ya que es de gran utilidad poder mantener una temperatura en todo tipo de aparatos electrónicos para evitar ciertos peligros por exceso de calor o fallos debidos a un exceso de frio. • Para ello hacemos uso de un sensor: o En este caso un sensor LM35 que se encargará de detectar la temperatura. • Uso de un microcontrolador: O Para nuestro proyecto el 18f2550 en donde inyectaremos nuestro programa que nos controlara el circuito. • Y de dos transistores: o Uno de ellos (BC548) se encargará de calentar cuando la temperatura llegue al mínimo establecido.

o El otro (BC547) se encargará de enfriar cuando la temperatura llegue al límite máximo establecido. A través de un programa y mediante un pickit2 proyectamos a un microcontrolador (pic) el programa con el cual va a funcionar nuestro control de temperatura para encargarnos de que el circuito cumpla su cometido y que, además, se pueda reprogramar una vez fa-bricada Es decir, que no se limite siempre en las mismas temperaturas sino que en un momento dado podamos cambiarlo a nuestro gusto, tanto el límite superior como el inferior. Esto nos da lugar a un termostato mucho más versátil.

EJEMPLO DE FUNCIONAMIENTO

El circuito podría funcionar en el interior de cualquier aparato electrónico, dándole mayor seguridad. Un ejemplo válido de funcionamiento sería en una estufa eléctrica, en la que queramos mantener una temperatura entre 20 y 25 grados, sin llegar a salir en ningún momento de este margen. El termostato nos garantiza una temperatura totalmente personalizada y no simplemente calor, como hacen muchas estufas convencionales.

Page 10: informe proyecto

EXPLICACIÓN TEÓRICA

El circuito recibe alimentación de la fuente a través de dos conectores con una tensión de 12 v, que luego el regulador de tensión KA7805 repartirá entre los diferentes componentes. El sensor LM35DZ, capta la temperatura ambiental y hace corresponder a cada grado de temperatura 10 mili voltios. Esta información pasa al PIC, el obtiene la información capta-da por el sensor. Por otro lado, el cristal con sus dos condensadores de desacoplo DE 22pf, le indica al PIC que la frecuencia a la que habrá que trabajar será de 4 MHz, lo cual nos condicionará in-cluso el programa. Ahora llegamos a la zona importante del circuito, el PIC 18f2550, que es el que controla, mediante el programa, todas las funciones que le hayamos introducido al programa. Para comenzar debemos estudiar el PIC y según nuestro diseño distinguir entre entradas y salidas. Por supuesto, hay que saber las diferentes zonas del mismo según la numeración de sus puertos. Por ello, lo primero que haremos será activar un pin en concreto el A0 que corresponden a la entrada de la lectura de la temperatura captada por el sensor. El PIC, además almacenará dos temperaturas umbrales previamen-te definidas por nosotros, que indicarán la temperatura máxima permitida así como la mínima, de manera que al llegar a una de estas el PIC nos llevará a un circuito o a otro, que corresponden a las dos condiciones de temperatura una de ellas activar el bombillo para calentar y subir la temperatura la cual se ativa con el pin A3 y la otra condición de activar el cooler para bajar la temperatura mediante el pin A2. Por su parte, el display nos marcará en todo momento la temperatura a la que nos encontramos, leyendo la información obtenida directamente del PIC conectado mediante el PUERTO B. Hay dos circuitos diferentes, el de refrigeración y el de calefacción. Al llegar a una de las temperaturas umbrales activamos uno de los dos circuitos: - Si la temperatura es baja (27°C), activamos el circuito de calefacción (PIN A3) el cual acti-vará un transistor (BC548) que funciona como un relé que encenderá el bombillo para que el sensor cense la temperatura que el bombillo hara subir. - Si la temperatura es alta (35°C), activamos el circuito de refrigeración (PIN A2), el cual activará otro transistor (BC547) que enecndera un cooler.

Page 11: informe proyecto

DESARROLLO Y FASES DEL PROYECTO

PROGRAMAR Realizar el programa (alma del proyecto) con la ayuda y guía del instructor y con nuestros conocimiento obtenidos empezamos a entender lo que había que hacer, a separar las entradas de las salidas en el PIC, a insertar bucles en el código... así nuestro circuito empezaba a hacer algo ya. Luego solo era cuestión de ir optimizando el código para conseguir lo que queríamos. Finalmente después de hacerle ciertos números de configuraiones al programa salió tal y cual lo requeríamos conseguimos que fuera nuestro circuito, como termostato y como termómetro.

DISEÑAR

A partir de nuestro programa y guiados por el mismo podíamos empezar con nuestra si-mulación en PROTEUS, para preparar todas las conexiones y componentes del proyecto. Luego intentar utilizar las conexiones y componentes posibles para que la placa funcione, hasta aquí todo bien. Después dependiendo de la simulación en proteus pasamos a la si-mulación en el protoboard. ENRUTAR Enrutar es, seguramente una de las partes más importantes de la placa. Con ARES pasar nuestro circuito y ordenar adecuadamente los componentes así como conseguir optimizar el diseño, ocupando los espacios libres y reduciendo el tamaño es bastante costoso, pero no imposible. Lo cierto es que al principio costó, pero al final encontramos la manera, juntar componentes por zonas, esto es, todos los elementos que corresponden a una misma parte de la placa agruparlos (el pic, la lcd, los transistores, etc.). Así conseguimos tener varias zonas pequeñas bien colocadas y a partir de ahí intentar juntar esas zonas para formar un "todo". Después de enrutar todo varias veces al final conseguimos un diseño y esquema del circuito digno de traspasar en cuanto a tamaño y colocación de componentes (pese a contar con algún que otro puente). TRASPASAR (INSOLAR) Del programa de ares al estar listo nuestras rutas y pistas del circuito imprimimos el mis-mo y a su vez la parte de los componentes. Despues sacarle copia a la impresión en papel acetato para poder traspasarlo a la váquela aplanchando el acetato contra la váquela. Pos-teriormente después de haber traspasado el circuito a la váquela introducirla en un reci-piente con cloruro férrico el cual deshace el cobre , dejándonos así las marcas y caminos del circuito, al terminar este paso del acido limpiamos la váquela con un brillo para quitar

Page 12: informe proyecto

la tinta y quedar solo el cobre, ya no nos queda sino abrir con el motor tul cada uno de los huequillos en donde van los pines de nuestros elementos. SOLDAR No ha sido tan gran problema el tema de soldar, salvo en algunos casos en que las pistas estaban muy juntas y había peligro de cortocircuito. Pero en general, fuímos obteniendo práctica y el trabajo fue fluyendo por sí solo. Conseguimos lograr una mejor soldadura calentando las patas de los componentes en lugar de calentar directamente el estaño con el soldador. De esta forma quedaba todo mucho más limpio de cara a la presentación A la hora de soldar el mayor problema fue soldar el microcontrolador y la lcd, porque los puntos están muy cerca un del otro, para el resto no tuvimos mayor problemas.

Page 13: informe proyecto

ELEMENTOS DEL CIRCUITO

• MICROCONTROLADOR PIC 18F2550

• DISPLAY LCD 16X2

• SENSOR DE TEMPERATURA LM35

Page 14: informe proyecto

• EXTRACTOR DE 12V

• BOMBILLO DE 12V

• REGULADOR KA7805

Page 15: informe proyecto

• TRANSISTOR BC548 Y BC547

• CRYSTAL DE 4Mhz

• 2 CONDENSADORES DE 22pf

Page 16: informe proyecto

2 RESISTENCIAS DE 100Ω

• RESISTENCIA DE 10Ω

• 2 DIODOS IN4007

Page 17: informe proyecto

PROGRAMA DEL PROYECTO CCS

#include <18f2550.h> //LIBRERIA O PIC QUE SE VA A UTILIZAR.

#use delay (clock=4000000) // DEFINIMOS EL CRISTAL OSCILADOR EXTERNO (4Mhz).

#fuses NOBROWNOUT,NOWDT,PUT,CPD,NOLVP,INTXT,NOMCLR //DEFINIMOS LOS FUSIBLES QUE VAMOS A HABILITAR PARA USARLOS.

#define use_portb_lcd true //DECIMOS Y ASEGURAMOS QUE VAMOS A USAR UNA LCD EN EL PUERTO B.

#include <lcd.c> //LE PEDIMOS AL PIC QUE ME INCLUYA LA LCD PARA QUE LA RECONOZCA.

#define retardo delay_ms(200) //DEFINIMOS UN RETARDO DE DOSCIENTOS MILISEGUNDOS.

#define retardo2 delay_ms(500) //DEFINIMOS UN RETARDO (2) DE QUINIENTOS MILISEGUNDOS.

#define temp1 input(pin_a1) //DEFINIMOS EL PIN A1 COMO ENTRADA DE LA MEDICION DE TEMP 1.

#define temp2 input(pin_a0) //DEFINIMOS EL PIN A0 COMO ENTRADA DE LA MEDICION DE TEMP 2.

#define Lampara pin_a3 // DEFINIMOS EL PIN A3 COMO SALIDA PARA UNA RESISTENCIA (LAMPARA 12 V).

#define Cooler pin_a2 // DEFINIMOS EL PIN A2 SALIDA PARA UNA RESISTENCIA (COOLER).

int x=35; // DEFINIMOS X COMO UNA VARIABLE ENTERA CON UN VALOR DE 35.

int l=29; // DEFINIMOS L COMO UNA VARIABLE ENTERA CON UN VALOR DE 29.

float medicion; //DEFINIMOS EL TERMINO MEDICION COMO UN VALOR FLOTANTE.

float voltaje; //DEFINIMOS EL TERMINO VOLTAJE COMO UN VALOR FLOTANTE.

float t1,t2,t3;//DEFINIMOS T1, T2, T3 COMO VARIABLES FLOTANTES.

void main (void)//FUNCION PRINCIPAL.

setup_adc_ports (0x0e);//CONFIGURAMOS LA CONVERSION ANALOGA DIGITAL EN EL PUERTO 0X0E O PUERTO A0.

setup_adc (adc_clock_internal);//CONFIGURAMOS EL RELOJ INTERNO DE LA CONVERSION ANALOGA DIGI-TAL.

lcd_init();//INICIAMOS LA LCD.

lcd_putc ("temperatura=");//IMPRIMIR EN LA LCD TEMPERATURA=.

while (true)//FUNCION HAGASE MIENTRAS SEA VERDADERO.

Page 18: informe proyecto

t1=x;//DAMOS A T1 EL VALOR DE X=35.

t3=l;//DAMOS A T3 EL VALOR DE L=29.

set_adc_channel (0);//CONFIGURACION DEL CANAL (0) PARA EL CONVERSOR ANALOGO DIGITAL.

retardo;//TIEMPO PARA ESTABILIZAR EL CANAL DE ADC.

medicion=read_adc();//DECLARANDO MEDICION COMO:LECTURA DEL CONVERSOR ANALOGO-DIGITAL.

voltaje=(medicion/255)*5;//DECLARANDO VOLTAJE COMO: LA MEDICION/255(BITS) *5 (VOLTIOS).

t2=voltaje*100;//DEFINIMOS T2 COMO EL RESULTADO DE MULTIPLICAR EL VOLTAJE *100 (MILIVOLTIOS A VOLTIOS).

printf (lcd_putc,"\n%1.2fgrados",t2);//IMPRIMIR RESULTADO DE T2 CON UN VALOR ENTERO Y DOS DECI-MALES.

if (t2<=t3)//CONDICION:SI T2 ES MENOR/IGUAL QUE T3.

output_high(pin_a3);//PONGAME EN ALTO EL PIN_A3 (BOMBILLO).

output_low(pin_a2);//PONGAME EN BAJO EL PIN_A2 (COOLER).

if (t2>=t1)//CONDICION:SI T2 ES MAYOR/IGUAL QUE T1.

output_high(pin_a2);//PONGAME EN ALTO EL PIN_A2 (COOLER).

output_low(pin_a3);//PONGAME EN BAJO EL PIN_A3 (BOMBILLO).

// CERRAMOS O FINALIZAMOS EL PROGRAMA.

Page 19: informe proyecto

SIMULACION DEL PROYECTO EN PROTEUS

Page 20: informe proyecto

DISEÑO DEL CIRCUITO EN ARES

Page 21: informe proyecto

IMPRESO DEL CIRCUITO

Page 22: informe proyecto

PROYECTO FINAL (MONTAJE, PRÁCTICAS Y EVIDENCIAS)

*CIRCUITO EN LA BAQUELA

*MONTAJE DE ELEMENTOS EN LA BAQUELA

Page 23: informe proyecto

*ALCANCE MINIMO DE LA TEMPERATURA. (ENCIENDE BOMBILLO PARA SUBIR LA TEMPETURA)

*ALCANCE MAXIMO DE LA TEMPERATURA. (ENCIENDE COOLER PARA BAJAR LA TEMPERATURA)

Page 24: informe proyecto

CONCLUSIONES

• Demostramos nuestro aprendizaje mediante la realización de este proyecto

• Analizamos y mostramos nuestro desempeño en el tema de lenguaje c progra-mando.

• Desarrollamos nuestro nivel de pensamiento y creatividad mediante la ejecución de programación de pic c.

• llevamos a cabo un proyecto en todos sus ámbitos programación, simulación, mon-taje y presentación final.

• Seguiremos demostrando nuestro desempeño en montajes de circuitos electróni-cos.

• Nuestro proyecto sirve de gran utilidad por su versátil control y reprogramación que se puede ajustar a diferentes necesidades ya sea por ejemplo en un horno o incubadora, etc.

• Esta de más resaltar la gran importancia y avance tecnológico q tiene hoy en día el lenguaje c al igual que los pic que salen al mercado y las grandes e interesantes co-sas que podemos hacer con ellos.

Page 25: informe proyecto

BIBLIOGRAFIA

• WWW.MTOELECTRONICOINDUSTRIAL.BLOGSPOT.COM