FREE SHIPPING ON ALL ORDERS OVER £20

60 DAY HASSLE-FREE RETURNS

Usando il GY-302 con il Raspberry Pi

Using the GY-302 with the Raspberry Pi

Il GY-302 è un modulo sensore di intensità luminosa basato sul sensore BH1750. Fornisce misurazioni precise dei lux (intensità luminosa) ed è ideale per applicazioni come l'illuminazione intelligente, il monitoraggio meteorologico e la fotografia. Questa guida spiega come configurare e utilizzare il GY-302 con un Raspberry Pi.


Cosa ti servirà

  1. Raspberry Pi (qualsiasi modello con supporto GPIO, ad es. Pi 3, Pi 4)
  2. Modulo sensore di luce GY-302
  3. Breadboard e cavi jumper
  4. Un computer con accesso SSH al Raspberry Pi o una tastiera e un monitor collegati
  5. Python installato sul Raspberry Pi

Passaggio 1: Collegamento del GY-302 al Raspberry Pi

Il GY-302 comunica con il Raspberry Pi utilizzando il protocollo I2C.

Collegamenti (Modalità I2C)

Pin del GY-302 Pin del Raspberry Pi
VCC 3.3V (Pin 1)
GND Massa (Pin 6)
SDA SDA (Pin 3, GPIO2)
SCL SCL (Pin 5, GPIO3)

Passaggio 2: Abilitare l'interfaccia I2C sul Raspberry Pi

  1. Apri lo strumento di configurazione del Raspberry Pi:
    sudo raspi-config
    
  2. Vai su Interface Options > I2C e abilitalo.
  3. Riavvia il Raspberry Pi:
    sudo reboot
    

Passaggio 3: Installare le librerie necessarie

  1. Aggiorna il tuo Raspberry Pi:
    sudo apt update && sudo apt upgrade -y
    
  2. Installa gli strumenti I2C e le librerie Python:
    sudo apt install -y i2c-tools python3-smbus python3-pip
    
  3. Verifica che il GY-302 sia rilevato sul bus I2C:
    sudo i2cdetect -y 1
    
    Dovresti vedere l'indirizzo del dispositivo (solitamente 0x23) nell'output.

Passaggio 4: Lettura dei dati dal GY-302

Il seguente script Python mostra come leggere i dati dell'intensità luminosa (lux) dal GY-302.

Esempio di codice Python

import smbus2
import time

# Definisci l'indirizzo I2C e i comandi
BH1750_ADDRESS = 0x23
CONTINUOUS_HIGH_RES_MODE = 0x10

# Inizializza il bus I2C
bus = smbus2.SMBus(1)

def read_light():
    data = bus.read_i2c_block_data(BH1750_ADDRESS, CONTINUOUS_HIGH_RES_MODE, 2)
    lux = (data[0] << 8) | data[1]
    return lux / 1.2

try:
    while True:
        light_level = read_light()
        print(f"Intensità luminosa: {light_level:.2f} lux")
        time.sleep(1)
except KeyboardInterrupt:
    print("Uscita in corso...")

Passaggio 5: Applicazioni del GY-302

  1. Illuminazione intelligente: Regola l'illuminazione in base ai livelli di luce ambientale.
  2. Monitoraggio meteorologico: Misura l'intensità luminosa come parte di stazioni meteorologiche.
  3. Fotografia: Utilizzalo per il controllo dell'esposizione nei sistemi fotografici.
  4. Progetti IoT: Integra i dati sull'intensità luminosa nei sistemi di automazione.

Risoluzione dei problemi

  1. Dispositivo non rilevato:

    • Verifica i collegamenti SDA e SCL.
    • Assicurati che l'interfaccia I2C sia abilitata sul Raspberry Pi.
  2. Letture imprecise:

    • Controlla la presenza di interferenze da fonti di luce esterne.
    • Assicurati che il sensore sia collegato e orientato correttamente.
  3. Errori I2C:

    • Assicurati che non ci siano dispositivi in conflitto sul bus I2C.

Conclusione

Il modulo sensore di luce GY-302 offre un modo semplice ed efficace per misurare l'intensità luminosa utilizzando un Raspberry Pi. Seguendo questa guida, puoi configurare il sensore e integrarlo in varie applicazioni, dai sistemi di smart home ai progetti IoT. Sperimenta con diversi scenari per esplorare tutto il suo potenziale!

Notice an Issue? Have a Suggestion?
If you encounter a problem or have an idea for a new feature, let us know! Report a problem or request a feature here.

1 commento

Could you tell me where I can find instructions to use the GY-302 light sensor module with module ESP32 DEV, please?

Jose,

Lascia un commento