En este proyecto vamos a aprender a implementar un sensor de temperatura a nuestros proyectos Arduino, en este proyecto simularemos cinco estados de aviso de exceso de temperatura, sobre los cuales los cuales podríamos conectar cualquier elemento que quisiéramos que actuara llegado dicho nivel, podríamos conectar circuitos de ventilación de manera que si no consiguieran mitigar el exceso de calor llegara un punto que desconectara el sistema que estemos monitorizando, en resumen, en cualquier lugar donde un control de exceso de temperatura sea necesario.
También vamos a controlar la temperatura vía puerto serie, ya que todavía no hemos hablado de cómo utilizar los LCD en nuestro Arduino, todo llegará.
De nuevo hemos incorporado un pequeño potenciómetro que nos permitirá establecer una temperatura, a partir de la cual nos vaya dando los avisos (led) en unos intervalos fijados en nuestro programa.
He elegido realizar un programa de aviso de exceso de temperatura, pero igualmente se podría utilizar el NTC para un sistema en que necesitemos controlar que no descienda la temperatura a partir de un punto crítico.
Veamos un video que muestra el resultado final:
Material necesario para este proyecto:
1 x Arduino Uno
1 x Protoboard
1 x NTC
1 x Potenciómetro 10kΩ
5 x Diodos LED
5 x Resistencias 220Ω
1 x Resistencia 1KΩ
1 x Juego de Cables
En este nuevo proyecto Arduino tenemos que conseguir, mediante una NTC (Negative Temperature Coefficient o Coeficiente de Temperatura Negativo) activar 5 salidas de nuestro Arduino, una de esas salidas nos mostrará que la temperatura está por debajo del nivel crítico, y a partir de ese nivel, irá activando una salida tras otra cada dos grados que aumente la temperatura.
Veréis en el video que según va aumentando la temperatura, se van incrementado los LED encendidos, lo he realizado así por que es más visual para la comprensión del funcionamiento, podréis ver en la sección de programación que es muy sencillo cambiar esto para que solo active un LED o varios, o lo que necesitéis.
Además vamos a colocar un potenciómetro para ajusta la temperatura, a partir de la cual, nos empezará a lanzar los avisos.
Visto esto, estructuremos el circuito en tres partes:
Entrada de temperatura ambiente.
Entrada de ajuste mínimo de temperatura.
Salidas.
Entrada de temperatura ambiente.
Estamos utilizando una NTC, es decir, una resistencia con coeficiente de temperatura negativo respecto a la variación de su resistencia, esto es que a más temperatura, aumentará la concentración de portadores, lo que hará que su resistencia sea menor.
La manera de conectar este sensor a nuestro circuito va a ser formando un divisor de tensión con su salida a una entrada analógica (podéis ver en este ejemplo como funciona una entrada analógica), en el que nuestra NTC será la resistencia inferior, lo que además nos protegerá de un problema que tienen estos sensores, cuando la corriente que circula por él es baja, no tenemos ningún problema, pues la disipación de calor es casi nula (VxI2) pero si la aumentamos, llegamos a un punto en que esa disipación afecta a la resistencia del sensor, por lo que deducimos que la respuesta de una NTC no es lineal sino hiperbólica, pero al colocarlo como un divisor de tensión la variación de tensión Vout va a ser prácticamente lineal.
En cuanto a la otra resistencia que formará el divisor de tensión, utilizaremos una de 1KΩ, esto es así para aprovechar el rango de muestreo que nos proporciona Arduino con un consumo de corriente limitado, veamos rápidamente el motivo.
Si recordamos la ecuación del divisor de tensión:
Veremos que si la resistencia máxima de nuestra NTC va a ser 10KΩ, y la fija de 1KΩ, tendremos una variación de tensión entre 0v y 4,55v. Podéis hacer cuentas vosotros mismos con otros valores y veréis que si aumentamos la resistencia, disminuye el rango de Vout, y si la disminuimos, aumentará los consumos de corriente en exceso.
Entrada de ajuste mínimo de temperatura.
Para tener un mando sobre el que ajustar la temperatura mínima, simplemente colocaremos un potenciómetro dispuesto como divisor de tensión, a una de las entradas analógicas y utilizaremos su muestreo para mapearlo a nuestro antojo como veremos en la sección de programación.
Salidas.
Para las salidas utilizaremos la ya conocida configuración de LED más resistencia.
De manera que el esquema eléctrico global nos quedaría así:
Y las conexiones en nuestra protoboard…