martes, enero 03, 2017

IoT: Monitoriza la temperatura (no negativa) con un sistema LM35 + ESP8266 y envía los datos a Internet.

Nada nuevo bajo el sol. Queremos medir temperatura y enviar los datos a la nube para poder verlos desde cualquier dispositivo móvil conectado a internet. Esto ya era posible hacerlo hace unos años con Arduino pero era más costoso en tiempo y dinero (se requería montar un servidor web, tener una shield adicional para Wifi o Ethernet). Ahora con el micro ESP8266 y servicios como dweet.io o thingspeak.com (entre muchos otros) se puede implementar un sistema de monitorización de manera bien sencilla, barata y sin perder la esencia maker.

**INCISO: Este sistema sólo mide temperatura positiva. Si hace frío y la temperatura queda por debajo de cero grados Celsius habrá que utilizar otro sensor distinto al LM35D, que es el que he utilizado para este ejemplo.

Vamos al tema.

Paso 1: Materiales

1 x placa con ESP8266 (LinkNode D1)
1 x sensor LM35 (http://www.ti.com/lit/ds/symlink/lm35.pdf)

Paso 2: Conexiones:

El sensor LM35 es un circuito integrado con tres pines de conexión: Alimentación (+), tierra (- GND) y señal (S).

El pin de alimentación se conectará al +5V de la placa, el pin de tierra a GND y el de señal a A0 (pin de entrada analógica de la placa).

Sensor | Placa

+ =  5V
- = GND
S = A0


Paso 3: Programa.

El proveedor de servicios para monitorizar los datos que he elegido es thingspeak.com, por su compatibilidad con Matlab, por lo tanto habrá que crearse previamente una cuenta en él.
El código lo he incluido en github y el proyecto se llama weather station. La idea es hacerlo crecer con más sensores y acabar haciendo una pequeña estación meteorológica.
El enlace al programa:
https://github.com/jorgeroden/weather-station/blob/master/weather.ino

IMPORTANTE: Si estás investigando en la búsqueda de una vacuna contra el SIDA, o en la cura de enfermedades raras; creando nuevos materiales o investigando para revolucionar la física y necesitas medir la temperatura ambiente, no utilices este tutorial. La medida no es lo suficientemente precisa (+/- 0.5 ºC). Si estás envuelto en algún "fregao" de ese calado me encantaría ayudarte ;-). Con unos cuantos dólares más (yo me encargo de buscarlos) podemos mejorar mucho la precisión del sistema.


Un ejemplo de lo que tengo montado en el balcón de mi casa:
https://thingspeak.com/channels/207881


No hay comentarios: