You are on page 1of 14

PRACTICA # 3

ASIGNATURA: MICROCONTROLADORES
TIEMPO PLANIFICADO EN EL SILABO: 6 HORAS
Trabajo de: Danny Sixto Armijos Loyola & Santiago Alejandro Len Medina

1. TEMA: SENSORES

2. OBJETIVOS:

Conocer del convertidor A/D.


Utilizar las libreras disponibles para visualizar los resultados en la LCD.
Programar el PIC16F877A con las especificaciones mencionadas en la
gua

3. MATERIALES Y REACTIVOS
MATERIALES Y REACTIVOS
PIC16F877A
1 LM35
1 ECG3100 salida NPN
1 motor dc con eje de giro
1 LCD (2x16)
3 resistencias de 330
1 resistencia de 10
1 resistencia de 1k
1 resistencia de 4.7k
1 potencimetro de 10k
1 pulsador
Datasheet PIC16F877A
Datasheet LM35
Datasheet ECG3100
Datasheet LCD

4. Equipos y herramientas
Equipos y herramientas
1 fuente de corriente continua de 5V
1 multmetro
1 protoboard
1 computadora
2 plug
2 puntas de prueba para multmetro
cable para conexin en protoboard
pinzas, alicates, corta cables, pela cables
5. INSTRUCCIONES:

Colocar las mochilas en los casilleros


Prohibido consumo de alimentos
Prohibido equipo de diversin, celulares etc.
Prohibido jugar
Prohibido mover o intercambiar los equipos de los bancos de trabajo
Prohibido sacar los equipos del laboratorio sin autorizacin.
Ubicar los equipos y accesorios en el lugar dispuesto por el responsable
del laboratorio, luego de terminar las prcticas.
Uso adecuado de equipos
Uso obligatorio del mandil
Presentar el preparatorio al docente a cargo de la materia al inicio de la
jornada.
Contestar las preguntas de control despus de realizarse la prctica.
Realizar el informe con todos los tems destallados en la gua.

6. ACTIVIDADES DESARROLLADAS:

6.1 TACMETRO DIGITAL

a) Para empezar se construy el circuito electrnico de la Fig. 1.1 en


Proteus como se podr ver en la figura 3 mas adelante.

Fig. 1.1 Esquema de conexin de Tacmetro digital

b) Para medir el giro de un motor al que se conecta un eje y un disco


negro con una ranura de 1 a 2mm se utiliz el esquema de Fig. 1.2
Fig. 1.2 Esquema de Motor con eje y disco
c) Se Construy el circuito electrnico de la Fig. 1.1, utilizando el software
Proteus. Debido a que no se encuentra el optoacoplador ECG3100 en
Proteus se procedi a utilizar un generador de pulso que simule los
pulsos que genera el optoacoplador como se puede observar en la figura
1.3, a dems en esta imagen se puede observar la conexin de la
pantalla LCD de 16X2 en el puerto D del pic 16F877A.

Fig. 1.3 Contador de giro de un Motor en RPM con el PIC16F877A

d) Crear un programa permita visualizar en una pantalla LCD la velocidad


del motor en RPM como se observa en el cuadro 1.

DEFINE LCD_DREG PORTB


DEFINE LCD_DBIT 0
DEFINE LCD_RSREG PORTB
DEFINE LCD_RSBIT 4
DEFINE LCD_EREG PORTB
DEFINE LCD_EBIT 5
DEFINE LCD_BITS 4
DEFINE LCD_LINES 2
DEFINE ADC_BITS 8
pause 200
linea1 con $fe
linea2 con $c3
linea3 con $c9
giro VAR WORD ;variable revo con capacidad de 0 a 65535
contador:
COUNT porta.0,2000,giro ;contar pulsos en el puerto A.0
giro = giro * 30 ;multiplicar por 60 para tener 1 minuto rpm
ADCON1 = 7
LCDOUT linea1, 1,"Motor gira a:" ;limpia LCD y escribir
LCDOUT linea1,linea2, DEC giro ;sacar el valor de la variable revo
LCDOUT linea1,linea3," RPM" ;ir a 2da lnea casilla 9 y escribir RPM
pause 700
GOTO contador
END

Cuadro. 1 Cdigo realizado en MiCroCode de un contador de RPM de un


motor
6.2 SENSOR DE TEMPERATURA

a) Para la representacin de la temperatura en el LCD. Se construy el


circuito electrnico en el software Proteus conectando la pantalla LCD y
el sensor LM35 en el puerto A0 como se observa en la Fig. 1.4

Fig. 1.4 Sensor de Temperatura con PIC16F877A

b) Luego se cre un programa que permit visualizar en el LCD el valor de


temperatura. Este debe mostrar la temperatura en grados Celsius (C) y
grados Fahrenheit F como se observa en el cuadro 2.
DEFINE LCD_DREG PORTB
DEFINE LCD_DBIT 0
DEFINE LCD_RSREG PORTB
DEFINE LCD_RSBIT 4
DEFINE LCD_EREG PORTB
DEFINE LCD_EBIT 5
DEFINE LCD_BITS 4
DEFINE LCD_LINES 2
DEFINE ADC_BITS 8

lin1 con $FE ; Escribe primera linea


lin2 con $C0 ; Escribe en segunda linea

temp VAR WORD


x VAR BYTE
Temp1 VAR BYTE
Temp2 var BYTE
PAUSE 200
ADCON0 = 1
LCDOUT lin1, 1 ; brorra todo lo ddel LCD
LCDOUT lin1,2,"PRACTICA 3 "
LCDOUT lin1,lin2, "De: Danny & Santi"
PAUSE 700
LCDOUT lin1, 1

inicio:
LCDOUT lin1,2,"LA TEMPERATURA"
LCDOUT lin1,lin2, "ACTUAL ES DE "
PAUSE 400
LCDOUT lin1, 1
FOR x=1 TO 100
ADCIN 0, TEMP
Temp1 = 2*temp
Temp2= (Temp1*9/5)+32
LCDOUT lin1,2," TEMP = ",DEC2 Temp1, " oC"
LCDOUT lin1,lin2,2," TEMP = ",DEC2 Temp2, " oF"
PAUSE 100
NEXT x
GOTO inicio

END

Cuadro. 2 Cdigo realizado en MiCroCode de un Sensor de


temperatura
7. MARCO TERICO:

7.1 Sensor ECG 3100


Es un dispositivo electrnico que permite contar las revoluciones
de un motor.

7.2 Sensor de temperatura

Los sensores de temperatura son dispositivos que transforman los cambios de


temperatura en cambios en seales elctricas que son procesados por equipo
elctrico o electrnico.

Hay tres tipos de sensores de temperatura, los termistores, los RTD y los
termopares.

El sensor de temperatura, tpicamente suele estar formado por el elemento


sensor, de cualquiera de los tipos anteriores, la vaina que lo envuelve y que
est rellena de un material muy conductor de la temperatura, para que los
cambios se transmitan rpidamente al elemento sensor y del cable al que se
conectarn el equipo electrnico.

Es un sensor de temperatura con una precisin calibrada de 1C y un rango


que abarca desde -55 a +150C.

El sensor se presenta en diferentes encapsulados pero el ms comn es el to-


92 de igual forma que un tpico transistor con 3 patas, dos de ellas para
alimentarlo y la tercera nos entrega un valor de tensin proporcional a la
temperatura medida por el dispositivo.

Con el LM35 sobre la mesa las patillas hacia nosotros y las letras del
encapsulado hacia arriba tenemos que de izquierda a derecha los pines
son: VCC Vout GND.
La salida es lineal y equivale a 10mV/C por lo tanto:
+1500mV = 150C
+250mV = 25C
-550mV = -55C

Funcionamiento: Para hacernos un termmetro lo nico que necesitamos es


un voltmetro bien calibrado y en la escala correcta para que nos muestre el
voltaje equivalente a temperatura.

El LM35 funciona en el rango de alimentacin comprendido entre 4 y 30 voltios.

Podemos conectarlo a un conversor Analgico/Digital y tratar la medida


digitalmente, almacenarla o procesarla con un Controlador o similar.

Usos: El sensor de temperatura puede usarse para compensar un dispositivo


de medida sensible a la temperatura ambiente, refrigerar partes delicadas del
robot o bien para loggear temperaturas en el transcurso de un trayecto de
exploracin.

7.3 Oscilador interno

El oscilador interno consiste en dos osciladores internos separados:

El HFINTOSC es un oscilador interno de alta frecuencia calibrado a 8MHz. El


microcontrolador puede utilizar una seal de reloj generada a esta frecuencia o
despus de haber sido dividida en el pre-escalador.

El LFINTOSC es un oscilador interno de baja frecuencia calibrado a 31 kHz.


Sus pulsos de reloj se utilizan para funcionamiento de los temporizadores de
encendido y perro guardin, asimismo puede utilizarse como fuente de seal
de reloj para el funcionamiento de todo el microcontrolador.

El bit System Clock Select (bit de seleccin del reloj del sistema SCS) del
registro OSCCON determina si una fuente de seal de reloj del
microcontrolador ser interna o externa

7.4 Convertidor A/D

Los convertidores A/D son dispositivos electrnicos que establecen una


relacin biunvoca entre el valor de la seal en su entrada y la palabra digital
obtenida en su salida. La relacin se establece en la mayora de los casos, con
la ayuda de una tensin de referencia. La conversin A/D tiene su fundamento
terico en el teorema de muestreo y en los conceptos de cuantificacin y
codificacin. Una primera clasificacin de los convertidores A/D, es la siguiente:
-Conversores de transformacin directa. -Conversores con transformacin
(D/A) intermedia, auxiliar.

El mdulo de A/D tiene cuatro registros. Estos registros son:


ADRESH : Parte alta del resultado de la conversin
ADRESL: Parte baja del resultado de la conversin
ADCON0: Registro de Control 0 ;control del funcionamiento del
conversor
ADCON1, Registro de Control 1; configuracin de los pines del puerto

7.5 Pantalla LCD

Es una pantalla delgada y plana formada por un nmero de pxeles en color o


monocromos colocados delante de una fuente de luz o reflectora. A menudo se
utiliza en dispositivos electrnicos de pilas, ya que utiliza cantidades muy
pequeas de energa elctrica.

7.6 RPM

Una revolucin por minuto es una unidad de frecuencia que se usa tambin
para expresar velocidad angular. En este contexto, se indica el nmero de
rotaciones completadas cada minuto por un cuerpo que gira alrededor de un
eje

7.7 Grados Celsius y Fahrenheit

Grado Fahrenheit (representado como F) es una escala


de temperatura propuesta por Daniel Gabriel Fahrenheit en 1724. La
escala establece como las temperaturas de congelacin y ebullicin del
agua, 32 F y 212 F, respectivamente. El mtodo de definicin es
similar al utilizado para el grado Celsius (C).
El grado Celsius1 (histricamente con el smbolo C) es la
unidad termomtrica cuyo 0 se ubica 0,01 grados por debajo del punto
triple del agua y su intensidad calrica equivale a la del kelvin.
Relacin entre grados Fahrenheit y Celsius
De a Frmula
Fahrenheit Celsius C=(F-32)/1.8
Celsius Fahrenheit F=1.8C+32
8. RESULTADOS OBTENIDOS

8.1 CONTADOR RPM


En la figura 1.5 se puede observar los resultados obtenidos en la
simulacin en proteus y en la figura 1.6 se observa el resultado obtenido
en el protoboard tras haber grabado el pic con el programa previamente
creado del contador de RPM de un motor.

Fig. 1.5 Simulacin en software Proteus del contador de RPM con el


sensor ECG 3100 con PIC16F877A
Fig. 1.6 Simulacin en protoboard del contador de RPM con el sensor ECG
3100 con PIC16F877A

8.2 SENSOR DE TEMPERATURA


En la figura 1.7 se puede observar los resultados obtenidos en la
simulacin en proteus y en la figura 1.8 se observa el resultado obtenido
en el protoboard tras haber grabado el pic con el programa previamente
creado del sensor de temperatura tanto en Grados Celsius y Fahrenheit.

Fig. 1.7 Simulacin en software Proteus del sensor de temperatura LM35


con PIC16F877A
Fig. 1.7 Simulacin en protoboard del sensor de temperatura LM35 con
PIC16F877A

9. DISCUSIN

La presente practica tuvo su dificulta en la parte de simulacin en


proteus ya que este programas no cuenta con todos los ddispositivos
utilizados por la cual se procedio a utilizar elementos similares. Como es
el caso del sensor ECG 3100 que en proteus se coloco un generador de
pulsos.
Tambin en esta practica se analizo el funcionamikento del los puertos
que cuenta con un convertidor analgico/ digital y a como activarlos en
el pin segn se requiera la entrada que sea analgica o digital.
Tambien se aprendio el funcionamikento de la pantalla LCD y como los
comandos para activarlo en el pic 16F877A.
Algunos de los pines de un PIC pueden ser puertos de entrada o salida,
segn se asigne en el cdigo del programa.
En el cdigo de programa de un PIC, se pueden realizar distintas
secuencias mediante programacin estructurada.

10. CONCLUSIONES

El PIC16F877A es un microcontrolador con memoria de programa tipo


FLASH, permite reprogramarlo nuevamente sin ser borrado con
anterioridad. El consumo de potencia es bajo.
Al momento de simular si el programa que se utiliza no dispone de un
elemento, buscar otro que lo sustituya como es en el caso del contador
que se sustituy por un generador de pulsos.
El PIC16F877A cuenta con convertidor analgico/ digital que nos
permite realizar muchas funciones como lo pudimos aplicar en el
contador como una entrada digital y en el sensor de temperatura como
entrada analgica.

11. RECOMENDACIONES

Realizar la simulacin del circuito en Proteus.


Realizar el programa en MicroCode, revisando tutoriales de cmo
realizarlo.
Verificar el funcionamiento del circuito en la simulacin hecha en
Proteus.
Armar el circuito en el protoboard lo ms ordenado posible.
Al oscilador importante colocarlo lo ms cerca del microcontrolador sin
usar conexiones extras.
Grabar el PIC usando un programador de PICs.
Si no se encuentra un dispositivo en la simulacin sustituirlo por otro que
ejerza la misma funcin.

12. PREGUNTAS DE CONTROL

a) Cmo funciona la declaracin COUNT?

COUNT es la funcin que me permite contar los pulsos en el movimiento del motor al
momento de no encontrar el color negro que es la flanja que se dejo en la ruedita del
motor ese contara uno y asi sucesivamente va sumando y segn lo programado nos
emitir un resultado como en nuestro caso cuenta un tiempo y calcula un resultado en
un tiempo como lo tenemos RPM.

b) Cmo hacer la conversin A/D? Escriba la lnea de cdigo.


ADCON0 = 1 ; permite activar la entrada como digital
ADCON1 = 7 ; permite activar la entrada como analogica

c) Cul es la relacin que para obtener el valor de temperatura para


ser mostrado en la LCD?
Temp1 = 2*temp (sirve para obtener la temperatura en grados Celsius)
Temp2= (Temp1*9/5)+32 (sirve para obtener la temperatura en grados Fahrenheit )

d) Cules son las principales lneas de cdigo para la utilizacin de la


LCD?
DEFINE LCD_DREG PORTB ; define el Puerto B como la salida para el LCD
DEFINE LCD_DBIT 0
DEFINE LCD_RSREG PORTB
DEFINE LCD_RSBIT 4
DEFINE LCD_EREG PORTB
DEFINE LCD_EBIT 5
DEFINE LCD_BITS 4
DEFINE LCD_LINES 2

BIBLIOGRAFA:

ANGULO USATEGUI , JOS MARA, ROMERO YESA, SUSANA y


ANGULO MARTNEZ, IGNACIO. 2006. MICROCONTROLADORES "PIC"
DISEO PRCTICO DE APLICACIONES. SEGUNDA PARTE: PIC16F87X Y
PIC18FXXXX. MADRID : s.n., 2006.

Cantero Siuela, Ivn Sal, Gil Hernndez L. 2005. Conversor


analgico digital del pic16f877.Escuela Politcnica Superior de Alcoy.

DEFINICIONES. DEFINICIONES.DE. [En lnea]


http://pcexpertos.com/2009/10/el-sensor-de-temperatura-lm35.html

Wikipedia. La enciclopedia libre. Pantalla de cristal lquido o LCD

ANGULO USATEGUI, JOS MARA, ROMERO YESA, SUSANA y ANGULO


MARTNEZ, IGNACIO. 2006. MICROCONTROLADORES "PIC" DISEO
PRCTICO DE APLICACIONES. SEGUNDA PARTE: PIC16F87X Y PIC18FXXXX.
Madrid : McGRAW-HILL/INTERAMERICANA, 2006. 84-841-4627-1.

MICROCHIP. PIC16F87XA. [En lnea] [Citado el: 22 de 01 de 2015.]


http://ww1.microchip.com/downloads/en/DeviceDoc/39582C.pdf.

Tocci, Ronald J., Widmer, Neal S. y Moss, Gregory L. 2007. Sistemas


Digitales Principios y Aplicaciones. Mxico : Pearson Educacin, 2007. 978-
970-26-0970-4.

You might also like