FREE SHIPPING ON ALL ORDERS OVER £20

60 DAY HASSLE-FREE RETURNS

Met behulp van de TCS34725 met de Raspberry Pi

Using the TCS34725 with the Raspberry Pi

De TCS34725 is een kleursensormodule die in staat is om rood-, groen-, blauw- (RGB) en helderlichtwaarden te detecteren. Hij wordt veel gebruikt in toepassingen zoals omgevingslichtdetectie, kleurherkenning en zelfs sorteersystemen op basis van kleur. Deze handleiding legt uit hoe je de TCS34725 aansluit en gebruikt met de Raspberry Pi.


Wat je nodig hebt

  1. Raspberry Pi (elk model met GPIO-ondersteuning, bijv. Pi 3, Pi 4)
  2. TCS34725 kleursensormodule
  3. Breadboard en jumperkabels
  4. Python geïnstalleerd op je Raspberry Pi

Stap 1: De TCS34725 aansluiten op de Raspberry Pi

De TCS34725 gebruikt het I2C-protocol voor communicatie.

Aansluitingen

TCS34725 Pin Raspberry Pi Pin
VIN 3.3V (Pin 1)
GND Ground (Pin 6)
SDA SDA (Pin 3, GPIO2)
SCL SCL (Pin 5, GPIO3)

Stap 2: De I2C-interface inschakelen

  1. Open de configuratietool van de Raspberry Pi:
    sudo raspi-config
    
  2. Navigeer naar Interface Options > I2C en schakel deze in.
  3. Start de Raspberry Pi opnieuw op:
    sudo reboot
    

Stap 3: Vereiste bibliotheken installeren

  1. Update je Raspberry Pi:
    sudo apt update && sudo apt upgrade -y
    
  2. Installeer de benodigde tools en Python-bibliotheken:
    sudo apt install -y i2c-tools python3-pip
    pip3 install adafruit-circuitpython-tcs34725
    
  3. Controleer of de TCS34725 wordt gedetecteerd op de I2C-bus:
    sudo i2cdetect -y 1
    
    De sensor zou moeten verschijnen op adres 0x29.

Stap 4: Python-code om gegevens uit te lezen van de TCS34725

Hier is een Python-script om RGB- en helderlichtwaarden uit te lezen van de TCS34725.

Python-codevoorbeeld

import time
import board
import adafruit_tcs34725

# Initialiseer I2C en TCS34725-sensor
i2c = board.I2C()
sensor = adafruit_tcs34725.TCS34725(i2c)

# Stel de versterking (gain) en integratietijd in voor de sensor
sensor.gain = adafruit_tcs34725.GAIN_4X
sensor.integration_time = 100  # In milliseconden

try:
    while True:
        # Lees kleurwaarden
        r, g, b, c = sensor.color_raw
        temperature = sensor.color_temperature  # Optioneel: Schat kleurtemperatuur
        lux = sensor.lux  # Optioneel: Bereken helderheid in lux

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

Stap 5: Toepassingen van de TCS34725

  1. Omgevingslichtdetectie: Pas schermhelderheid of verlichting aan op basis van omgevingslichtniveaus.
  2. Kleurdetectie: Gebruik de sensor voor het sorteren of herkennen van kleuren in robotica.
  3. Fotografie: Meet de kleurtemperatuur voor correctie van de witbalans.
  4. IoT-projecten: Integreer kleur- en lichtgegevens in smart home-systemen.

Probleemoplossing

  1. Sensor niet gedetecteerd:

    • Controleer de SDA- en SCL-aansluitingen.
    • Zorg ervoor dat de I2C-interface is ingeschakeld op de Raspberry Pi.
  2. Onnauwkeurige metingen:

    • Vermijd direct zonlicht of reflecterende oppervlakken tijdens metingen.
    • Pas de versterking en integratietijd in het script aan om de nauwkeurigheid te verbeteren.
  3. I2C-fouten:

    • Controleer op conflicterende apparaten op de I2C-bus of losse bedrading.

Conclusie

De TCS34725 is een veelzijdige kleursensor die naadloos integreert met de Raspberry Pi. Door deze handleiding te volgen, kun je hem gebruiken om RGB, helder licht, kleurtemperatuur en helderheidsniveaus te meten, waardoor hij ideaal is voor diverse toepassingen zoals robotica, IoT en fotografie. Experimenteer met de instellingen om aan de specifieke eisen van je project te voldoen!

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 reactie

Spent the day trying to find something that would get this sensor working on one of my old beater Raspberry Pi 3 B boards. Your post did the trick.
Thank you.
Michael A. Dupont

Junk Drawer Labs, LLC,

Laat een reactie achter