Utilizarea TCS34725 cu Raspberry Pi

Using the TCS34725 with the Raspberry Pi

TCS34725 este un modul de senzor de culoare capabil să detecteze valori roșii, verde, albastru (RGB) și valorile clare de lumină. Este utilizat pe scară largă în aplicații precum senzor de lumină ambientală, detectarea culorilor și chiar sisteme de sortare bazate pe culori. Acest ghid explică modul de conectare și utilizare a TCS34725 cu Raspberry Pi.


Ce vei avea nevoie

  1. Zmeură pi (Orice model cu suport GPIO, de exemplu, PI 3, PI 4)
  2. TCS34725 Modul senzor de culoare
  3. Tablă de pâine și jumper
  4. Python instalat Pe zmeura ta PI

Pasul 1: Cablarea TCS34725 către Raspberry Pi

TCS34725 folosește protocolul I2C pentru comunicare.

Conexiuni

TCS34725 PIN Pinul de zmeură pi
Vin 3.3V (pinul 1)
GND Sol (pinul 6)
SDA SDA (pinul 3, GPIO2)
SCL SCL (PIN 5, GPIO3)

Pasul 2: Activați interfața I2C

  1. Deschideți instrumentul de configurare Raspberry PI:
    sudo raspi-config
    
  2. Navigați la Opțiuni de interfață> I2C și activează -l.
  3. Reporniți zmeura PI:
    sudo reboot
    

Pasul 3: Instalați bibliotecile necesare

  1. Actualizați -vă Raspberry PI:
    sudo apt update && sudo apt upgrade -y
    
  2. Instalați instrumentele necesare și bibliotecile Python:
    sudo apt install -y i2c-tools python3-pip
    pip3 install adafruit-circuitpython-tcs34725
    
  3. Verificați dacă TCS34725 este detectat în autobuzul I2C:
    sudo i2cdetect -y 1
    
    Senzorul ar trebui să apară la adresa 0x29.

Pasul 4: Cod Python pentru a citi date din TCS34725

Iată un script Python pentru a citi RGB și valorile de lumină clare din TCS34725.

Exemplu de cod Python

import time
import board
import adafruit_tcs34725

# Initialize I2C and TCS34725 sensor
i2c = board.I2C()
sensor = adafruit_tcs34725.TCS34725(i2c)

# Set gain and integration time for the sensor
sensor.gain = adafruit_tcs34725.GAIN_4X
sensor.integration_time = 100  # In milliseconds

try:
    while True:
        # Read color values
        r, g, b, c = sensor.color_raw
        temperature = sensor.color_temperature  # Optional: Estimate color temperature
        lux = sensor.lux  # Optional: Calculate brightness in lux

        print(f"Raw RGB: R={r}, G={g}, B={b}, Clear={c}")
        if temperature is not None:
            print(f"Color Temperature: {temperature:.2f} K")
        print(f"Lux: {lux:.2f} lx")
        print("--------------------------")
        time.sleep(1)
except KeyboardInterrupt:
    print("Exiting...")

Pasul 5: Aplicațiile TCS34725

  1. Senzație de lumină ambientală: Reglați luminozitatea ecranului sau iluminarea pe baza nivelurilor de lumină ambientală.
  2. Detectarea culorilor: Folosiți senzorul pentru sortarea culorilor sau recunoașterea în robotică.
  3. Fotografie: Măsurați temperatura culorii pentru corectarea echilibrului alb.
  4. Proiecte IoT: Integrați datele de culoare și lumină în sisteme inteligente de casă.

Depanare

  1. Senzor nu este detectat:

    • Verificați conexiunile SDA și SCL.
    • Asigurați -vă că interfața I2C este activată pe Raspberry Pi.
  2. Lecturi inexacte:

    • Evitați lumina directă a soarelui sau a suprafețelor reflectoare în timpul măsurătorilor.
    • Reglați timpul de câștig și de integrare în script pentru a îmbunătăți precizia.
  3. Erori I2C:

    • Verificați dacă există dispozitive conflictuale pe autobuzul I2C sau cablarea liberă.

Concluzie

TCS34725 este un senzor de culoare versatil care se integrează perfect cu Raspberry Pi. Urmărind acest ghid, îl puteți utiliza pentru a măsura RGB, lumina limpede, temperatura culorii și nivelurile de luminozitate, ceea ce îl face ideal pentru diverse aplicații precum robotică, IoT și fotografie. Experimentați cu setările sale pentru a se potrivi cerințelor dvs. specifice ale proiectului!

Lasă un comentariu

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.