Clima y CienciaTécnico

Monitor de calidad del aire (PM2.5) con pantalla OLED

Mide partículas finas de humo, polvo y cocina con un sensor láser por puerto serial.

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

El sensor láser PMS5003 cuenta partículas y envía un paquete de 32 bytes por UART cerca de una vez por segundo. Lo decodificarás en Python y mostrarás el PM2.5 en una pequeña pantalla OLED.

Video tutorial

▶ DHK DUDE · Video in English — turn on auto-translated subtitlesVer en YouTube ↗

Video de DHK DUDE, insertado desde YouTube. Los pasos escritos abajo son nuestros y coinciden con la lista de piezas.

Pasos de la misión

  1. Activa el puerto serial

    raspi-config → Interface → Serial: sin consola de login y con el puerto de hardware activo.

  2. Conecta el sensor

    VCC del PMS5003 a 5 V (su ventilador lo necesita), GND a GND, TX del sensor al RX del Pi (GPIO15, pin 10). Sus líneas de datos son de 3.3 V.

  3. Lee los paquetes

    El script se sincroniza con el encabezado 0x42 0x4D y lee los valores PM atmosféricos.

  4. Agrega la OLED

    Conecta la SSD1306 por I2C y muestra el valor de PM2.5 con una etiqueta de color.

  5. Interpreta

    Un PM2.5 por debajo de unos 12 µg/m³ se considera bueno en general; lecturas altas sostenidas indican que debes ventilar o filtrar el aire.

Código

# pip install pyserial
import serial, struct
port = serial.Serial('/dev/serial0', 9600, timeout=2)

while True:
    if port.read(1) != b'\x42' or port.read(1) != b'\x4d':
        continue
    frame = port.read(30)
    if len(frame) != 30:
        continue
    vals = struct.unpack('>HHHHHHHHHHHHHHH', frame)
    pm1, pm25, pm10 = vals[4], vals[5], vals[6]      # atmospheric values
    print(f'PM1.0 {pm1}  PM2.5 {pm25}  PM10 {pm10} ug/m3')

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

Preguntas

¿Es tan preciso como un monitor oficial?

Los sensores económicos siguen bien las tendencias pero pueden marcar alto con mucha humedad. Úsalos como indicadores, no como mediciones certificadas.