You are on page 1of 4

Termmetro con LM35, y aviso visual+ventilador a 3 velocidades.

Hoy vamos a disear y programar un pequeo circuito que nos mida la temperatura. En funcin de los valores obtenidos,tendremos el siguiente funcionamiento:

Si la temperatura es <2 !" el sistema se encuentra a la temperatura ptima. Si la temperatura es #2 !" activaremos una seal luminosa. Si la temperatura es #$%!" activaremos la seal luminosa y un ventilador al &%'. Si la temperatura es #$(!" activaremos la seal luminosa y el ventilador casi a m)*ima potencia.

El componente empleado para reali+ar la medicin es un sensor de temperatura ,-$ . .qu/ podemos ver su patilla0e:

Este es el esquema que 1e diseado para la pr)ctica:

2ara alimentar el sensor ,-$ podremos utili+ar la misma fuente de .rduino, que nos suministra voltios 3dc. En cambio para alimentar el ventilador de 2", le alimentaremos con una fuente adicional de 42 3dc.

El diodo ,ed de alarma simplemente le pinc1aremos en la patilla 4$ y 56d de .rduino, ya que lleva una resistencia interna de $$% o1mios. 7uncionamiento: ,a temperatura es ptima

,a temperatura es #2 !"

,a temperatura es #$%

3/deo 7uncionamiento:

8entro del programa compilador en la seccion 9ools##Serial monitor, podremos visuali+ar la temperatura a trav:s del puerto serie.

SKETCH:

;;,ectura de temperatura mediante un sensor del tipo ,-$ , y aviso visual con un ventilador a $ velocidades. ;; el programa medir) la temperatura y en funcin de los valores, activara un led de alarma o activara un ventilador a varias velocidades int pin9emperatura < 2=;; daremos el nombre al pind e temperatura int ledpin4 < 4$= int rele < 42= int temp3alor = ;; ,a variable donde se almacena la temperatura void setup>? @ Serial.begin>A&%%?= ;; .ctivamos el puerto serie para visuli+ar y definimos los pin 4$ y 42 como salida pin-ode>ledpin4, BC92C9?= pin-ode>rele, BC92C9?=

D void loop>? ;;bucle @ ;;mediante la siguiente encuacion transformaremos la lectura analgica en un valor de temperatura almacenado en la variable temp3alor temp3alor < > .% E analogFead>pin9emperatura? E 4%%.%? ; 4%2G.%= ;; la funcion serial.print Hmpreme el valor en el puerto serie Serial.print>I,a 9emperatura en este momento es de: >"elsius? < I?= Serial.println>temp3alor?= ;; el delay es para medir la temperatura cada segundo delay >4%%%?= int i< %= analogJrite>rele,i?= ;; el ventilador estar) apagado ya que i<% if>temp3alor#2 ?;; cuando la temperatura alcan+a 2 grados se activa la alarma visual, ventilador apagado. @ digitalJrite>ledpin4,HH5H?= delay> %%?= digitalJrite>ledpin4,,BJ?= if>temp3alor#$%? ;; si la temperatura es mayor a $% grados, se activa el ventilador al &%' apro* @ int i < 4 %= analogJrite>rele,i?= if>temp3alor#$(?;; si la temperatura es mayor a $% grados, se activa el ventilador al K ' apro* @ int i < 24 = analogJrite>rele,i?= ;;Fecordemos que la funcion analogJrite toma valores entre % y 2 . 1ttp:;;todoelectrodo.blogspot.m*;2%42;%G;termometroLconLlm$ LyLaviso.1tml

You might also like