Sidebar
Índice
- Crear tu propia estación meteorológica con Python
- Configurar Raspberry Pi para leer sensores
- SHT31 leer datos y configurar
- BMP180 leer datos y configurar
- TSL2561 leer datos y configurar
- Anemómetro leer velocidad del viento
- Veleta calcular dirección del viento
- Pluviómetro calcular agua caída
- Sensores de gas MQ leer y calcular ppm
- Funcionamiento conjunto de los sensores
Post más populares

Páginas de errores personalizadas Laravel
por Pablo Durán

Crear pack de iconos personalizados mediante IcoMoon
por Pablo Durán

Crear tu propia estación meteorológica con Python
por Pablo Durán
Crear tu propia estación meteorológica con Python
Esta es la introccuión de una serie de posts en los que se va a mostrar como leer datos de sensores tanto digitales como analógicos, procesarlos, enviarlos a una base de datos y mostrarlos en tu web. Todo el proceso está diseñado para ser modular y poder añadir nuevos sensores, o eliminarlos, con facilidad por ello cada sensor tendrá su propia clase en Python, su propio modelo en el back-end (Laravel) y su propia tabla en la base de datos.
Sensores y componentes
Se pueden registrar una gran variedad de parámetros. En este caso vamos a registrar un total de 18 parámetros parámetros. Los sensores a usar y datos que recoge cada uno son los siguientes:
- SHT31: Lectura de temperatura y humedad. Se usarán dos. Uno para registrar datos y otro para los sensores de gas.
- TSL2561: Intensidad de luz visible e infrarroja.
- BMP180: Presión atmosférica y temperatura.
- MS-WH-SP-WS02: Kit de veleta, anemómetro, pluviometro y carcasa para sensor de temperatura. Se puede usar cualqueir otro modelo, suelen tener el mismo funcionamiento.
- MQ2: Sensor de gas para GPL, propano, hidrógeno, alcohol, humo y metano.
- MQ3: Sensor de gas para Alcohol y Benceno.
- MQ4: Sensor de gas para metano y GPL.
- MQ5: Sensor de gas para GPL, metano.
- MQ7: Sensor de gas para hidrógeno y monóxido de carbono.
- MQ8: Sensor de gas para hidrógeno.
- MQ9: Sensor de gas para monóxido de carbono y GPL.
- MQ135: Sensor de gas para Acetona, tolueno y alcohol.
A parte de estos sensores se está usando otros componentes como son una Raspberry pi 3 modelo B con Raspbian y una alimentación externa S-50-5 para los sensores de gas que consumen mucha electricidad.
Lenguajes a utilizar
- Python: Usado para leer los sensores, procesar los datos y enviarlos al servidor.
- PHP (Laravel): Guardar los datos en la base de datos y pedirlos para mostrarlos en la web.
- SQL: Se usa una base de datos mysql pero se puede usar cualquier otro. Mantiene almacenado los registros de todos los sensores.
- Java Script: Procesar los datos que verá el usuario y mostrar gráficas de cada parámetro.
- html y css: Se va comentar lo mínimo ya que cada un es libre de mostrarlo como guste.
Costes
Esta es una estación de bajo presupuesto en el que los sensores a usar pueden llegar a ser algo impreciso como es en el caso de los sensores MQ pero vale la pena debido a que el coste total por mi parte han sido de 344.61€ mientras que una profesional cuesta miles de euros y no es tan versatil como la que vamos a montar. Podemos ver en la tabla de precios todo lo que se va a usar para este proyecto:
Nombre | Cant. | Pieza | Envío | Aduanas | Total |
---|---|---|---|---|---|
PCB Adafruit Perma-Proto | 2 | 9.91€ | 1.58€ | 0€ | 21.40€ |
Raspberry Pi 3 Plus | 1 | 38.95€ | 3.30€ | 0€ | 42.25€ |
Pack cable puentes 120 uds. | 2 | 5.49€ | 0€ | 0€ | 10.98€ |
Adaptado RJ12 Hembra | 2 | 0.37€ | 0€ | 0€ | 0.74€ |
Resistencia 4,7 Kohm | 1 | 0.02€ | 0€ | 0€ | 0.02€ |
ADC ADS1115 | 3 | 1.52€ | 1.17€ | 0€ | 5.73€ |
BMP180 GY68 | 1 | 0.39€ | 0.97€ | 0€ | 1.36€ |
MS-WH-SP-WS02 | 1 | 38.87€ | 36.72€ | 32.11€ | 107.70€ |
TSL2561 GY-2561 | 1 | 3.80€ | 1.18€ | 0€ | 4.98€ |
SHT31-D | 2 | 2.36€ | 0.97€ | 0€ | 5.69€ |
Micro SD 8GB | 1 | 4.00€ | 0€ | 0€ | 4.00€ |
Cargador 5V 2.5A | 1 | 4.00€ | 0€ | 0€ | 4.00€ |
Alimentador S-50-5 de Leadstar | 1 | 15.99€ | 0€ | 0€ | 15.99€ |
Tarro de cristal | 1 | 0.75€ | 0€ | 0€ | 0.75€ |
Cinta de aluminio | 2 | 2.00€ | 0€ | 0€ | 4.00€ |
Cable extra 30 metros | 1 | 7.00€ | 0€ | 0€ | 7.00€ |
Servidor compartido (1 año) | 1 | 53.00€ | 0€ | 0€ | 53.00€ |
Dominio pabloduran.es | 1 | 10.00€ | 0€ | 0€ | 10.00€ |
Estructura metálica | 1 | 30.00€ | 0€ | 0€ | 30.00€ |
Pack sensores MQ 9 uds. | 1 | 11.71€ | 3.37€ | 0€ | 15.07€ |
Total | 263.30€ | 49.26€ | 32.11€ | 344.67€ |