3.3.2 Detector de intensidad de luz

3.3.2.1 Visión general

Img

El detector de intensidad de luz, también conocido como luxómetro o medidor de iluminancia, es un instrumento especializado utilizado para medir la cantidad total de luz (es decir, la iluminancia) que incide sobre una superficie. Funciona principalmente en base al efecto fotoeléctrico.

En este proyecto, el brillo detectado por el sensor de luz se mostrará en tiempo real en el OLED. Cuando supere un cierto valor, el altavoz de la placa activará una alarma a modo de advertencia y recordatorio.

Los detectores de intensidad de luz se utilizan ampliamente en casi todas las situaciones que requieren la cuantificación de la “luz”, como el alumbrado exterior y vial, el diseño y la aceptación de iluminación interior, la fotografía y producción de vídeo, la arquitectura y la salud, etc.

Img

3.3.2.2 Conocimiento de componentes

Img

Sensor de luz de micro:bit

Img

Dado que la placa micro:bit no contiene su propia fotorresistencia, la matriz de LED asumirá esta función. La señal de luz se convierte en entrada y se muestrea el tiempo de decaimiento de voltaje para que la intensidad luminosa detectada sea un valor relativo. (Nota: el brillo de la luz se envía al puerto serie y es un valor relativo.)

Altavoz de Micro:bit

Img

La placa Micro:bit cuenta con un altavoz integrado, lo que facilita que los programas generen sonido. También puede emitir sonidos como risitas, saludos y bostezos, así como todo tipo de tonos, notas y ritmos. Por ejemplo, puede reproducir la canción Oda a la Alegría.

Img

3.3.2.3 Componentes necesarios

Img

Img

Img

micro:bit V2 main board ×1

micro:bit shield ×1

OLED display ×1

Img

Img

Img

micro USB cable ×1

4 pin wire ×1

battery holder ×1

Img

Pilas AA (preparadas por el usuario) ×6

3.3.2.4 Diagrama de conexiones

⚠️ When wiring, please pay attention to the wire color.

OLED display

wire color

micro:bit shield pin

micro:bit board pin

GND

black

G

G

VCC

red

V2

V

SDA

blue

20

P20

SCL

green

19

P19

Img

3.3.2.5 Flujo de código

Img

3.3.2.6 Código de prueba

⚠️ Note the threshold in the “if()…else if()…” condition can be modified according to the actual situation.

Complete code:

Img

Img

Breve explicación:

① Inicializar los píxeles del OLED, limpiar el OLED.

Img

② El OLED muestra el valor de brillo en una línea.

Img

③ Sentencia de juicio: if()…else if()…else…

Cuando el brillo detectado es mayor o igual a 100, la matriz de 5×5 LED muestra Img, y el altavoz emite el sonido de alarma 1.

Img

Si el brillo detectado está entre 0 y 100, la matriz de 5×5 LED muestra Img, y el altavoz emite el sonido de alarma 2.

Img

De lo contrario, la matriz de 5×5 LED no muestra nada y el altavoz no suena.

Img

④ Retardo 1000 ms (1 s).

Img

3.3.2.7 Resultado de la prueba

Img

Tras realizar las conexiones y alimentar mediante el cable micro USB, conecte la alimentación externa (6 pilas AA) para asegurar un suministro suficiente.

Para la aplicación de Windows 10, simplemente haga clic en Download. Para el navegador, envíe el archivo “.hex” a la placa micro:bit.

Después de subir el código de prueba a la placa micro:bit, el OLED muestra en tiempo real el valor de brillo detectado por el sensor de luz.

Cuando el brillo detectado es mayor que 100, la matriz de 5×5 LED muestra Img, y el altavoz emite el sonido de alarma 1 como advertencia de alto nivel. Si el brillo detectado está entre 0 y 100, la matriz de 5×5 LED muestra Img, y el altavoz emite el sonido de alarma 2 como advertencia de bajo nivel. De lo contrario, la matriz de 5×5 LED no muestra nada y el altavoz no suena.

Img

⚠️ Nota: Los bloques de construcción del experimento no están incluidos en este kit.

(Consejo: Si no se observa ningún resultado, presione el botón de reinicio de la placa micro:bit.)

Img