Espacio y AstronomíaTécnico

Medidor de contaminación lumínica del cielo con un TSL2591

Mide qué tan oscuro es realmente tu cielo nocturno, regístralo cada pocos minutos y ve cómo lo cambian la Luna, las nubes y las luces de la calle.

NivelTécnico
Tiempo1.5 h
Costo est.~$85
Pasos5

Los astrónomos miden la oscuridad del cielo en magnitudes por segundo de arco cuadrado: más alto significa más oscuro. El TSL2591 es tan sensible que puede leer el cielo nocturno; después de calibrarlo con un valor conocido obtienes un registro útil del brillo del cielo.

Pasos de la misión

  1. Limita la vista

    Pon el sensor al fondo de un tubo negro impreso de unos 5 cm para que solo vea un pedazo de cielo cerca del cenit.

  2. Conéctalo

    TSL2591 y BME280 en el bus I2C del Pi (3V3, GND, SDA, SCL) y activa I2C con raspi-config.

  3. Instala la librería

    Instala adafruit-circuitpython-tsl2591 con pip en un entorno virtual.

  4. Calibra

    En una noche despejada y sin luna, ajusta la constante hasta que tu lectura coincida con un medidor comercial o una medición publicada de tu zona.

  5. Registra toda la noche

    Guarda lecturas cada cinco minutos en un CSV y grafica una noche; un sitio oscuro y despejado pasa de unos 21, mientras que los cielos de ciudad suelen estar cerca de 17–18.

Código

import time, math, csv, board
import adafruit_tsl2591

s = adafruit_tsl2591.TSL2591(board.I2C())
s.gain = adafruit_tsl2591.GAIN_MAX
s.integration_time = adafruit_tsl2591.INTEGRATIONTIME_600MS
CAL = 22.0     # adjust so a known dark sky gives the right value

while True:
    vis = s.visible
    mag = CAL - 2.5 * math.log10(max(vis, 1))
    row = [time.strftime('%Y-%m-%d %H:%M'), vis, round(mag, 2)]
    print(row)
    with open('sky.csv', 'a', newline='') as f:
        csv.writer(f).writerow(row)
    time.sleep(300)

Code comments are in English, like most libraries and docs — a good habit for makers.

Preguntas

¿Es tan preciso como un SQM comercial?

No, tiene otro campo de visión y otra respuesta al color. Es excelente para ver tendencias en un mismo lugar; toma los números absolutos como estimados.