Pasar al contenido principal
Enviado por daniel-oam el

Luxómetro con micro:bit y MakeCode

0) ¿Qué es MakeCode?

Microsoft MakeCode es un editor gratuito que corre en el navegador y permite programar con bloques como si fueran piezas de LEGO. También se puede ver el código en JavaScript o Python, pero no hace falta para empezar.

Acceso: makecode.microbit.org

1) ¿Qué es la micro:bit?

  • Pantalla LED 5×5 (también mide luz).
  • Botones A y B.
  • Acelerómetro y brújula.
  • Pines para sensores externos (P0, P1, P2, 3V, GND).
  • En v2: micrófono, altavoz, logo táctil.

Qué necesitás:

  • Micro:bit v1 o v2
  • Cable USB
  • PC con Chrome/Edge
  • (Opcional) Portapilas
  • (Para sensor externo) LDR + resistencia de 10kΩ

2) Primer contacto con MakeCode

  1. Abrí MakeCode.
  2. Elegí micro:bit y creá un nuevo proyecto.
  3. Explorá la interfaz: simulador, categorías de bloques, área de trabajo y botones de descarga.

3) Primer luxómetro (sensor interno)

La pantalla LED funciona como sensor de luz. El bloque Nivel de luz devuelve un número de 0 (oscuro) a 255 (muy iluminado).

para siempre:
    mostrar número (nivel de luz)
    pausar (200 ms)
Tip: probalo en el simulador cambiando la luz con el ícono de lamparita.

4) Luxómetro con LDR externo

Un LDR cambia su resistencia según la luz. Con un divisor de tensión podemos leer un voltaje en P0.

Conexión:

+3V (micro:bit)
     │
    [LDR]
     │
     ├──────────► P0 (micro:bit)
     │
   [10 kΩ]
     │
    GND (micro:bit)

Programa básico:

para siempre:
    valor = leer pin analógico P0   // 0..1023
    mostrar número (valor)
    pausar (200 ms)

Opciones extra:

  • Suavizado: promedio móvil para que no salte tanto.
  • Escala: mapear de 0..1023 a 0..100%.
  • Barra LED: graficar como barra.

5) Ver/guardar datos

  1. Usar bloque Serial → escribir valor.
  2. Conectar dispositivo en MakeCode (WebUSB).
  3. Ver gráfica en la pestaña Consola.
  4. Exportar datos como CSV.

6) Escala en lux

El LDR no es lineal. Podés usar:

  • Escala relativa (0–100%).
  • Umbrales (ej: oscuro, interior, exterior).
  • Calibración (comparar con luxómetro real o app).

7) Pruebas sugeridas

  • Tapar con la mano → valor baja.
  • Alumbrar con linterna → valor sube.
  • Comparar diferentes ambientes.

8) Solución de problemas

  • No aparece MICROBIT: revisar cable de datos o usar WebUSB.
  • Valores raros: revisar conexión P0 → nodo intermedio.
  • Con más luz el número baja: invertí LDR y resistencia.
  • Se calienta: revisar cortos, no usar >3V.

9) Programas de ejemplo

A) Sensor interno:

para siempre:
    mostrar número (nivel de luz)
    pausar (200 ms)

B) LDR con suavizado y porcentaje:

al iniciar:
    suave = 0
para siempre:
    valor = leer pin analógico P0
    suave = (suave * 9 + valor) / 10
    porc  = mapear(suave, 0, 1023, 0, 100)
    LED graficar barra (porc) hasta 100
    serial escribir valor ("luz", suave)
    pausar (100 ms)

C) Clasificación por umbrales:

si suave < 150        → mostrar cadena ("Muy oscuro")
si 150 ≤ suave < 350  → mostrar cadena ("Oscuridad urbana")
si 350 ≤ suave < 700  → mostrar cadena ("Interior")
si suave ≥ 700        → mostrar cadena ("Exterior")

10) Seguridad

  • Usar siempre 3V de la micro:bit.
  • No conectar/desconectar con la placa encendida.
  • Evitar cortocircuitos.
  • Proteger la placa cuando trabajes con pinzas cocodrilo.

11) Ideas para seguir

  • Mapa de luminancia en el barrio con Data Logger.
  • Enviar datos por radio entre micro:bits.
  • Alarmas de luz (icono o sonido).
  • Probar sensores digitales de lux.