TCS34725 to moduł czujnika kolorów zdolny do wykrywania wartości czerwonego, zielonego, niebieskiego (RGB) i czystego światła. Jest szeroko stosowany w aplikacjach takich jak czujność światła otoczenia, wykrywanie kolorów, a nawet systemy sortowania oparte na kolorach. Ten przewodnik wyjaśnia, jak połączyć i używać TCS34725 z Raspberry Pi.
Czego będziesz potrzebować
- Raspberry Pi (Każdy model z obsługą GPIO, np. PI 3, PI 4)
- Moduł czujnika kolorów TCS34725
- Druty chleba i skoczków
- Zainstalowany Python na twoim malinowym pi
Krok 1: Okablowanie TCS34725 do Raspberry Pi
TCS34725 wykorzystuje protokół I2C do komunikacji.
Znajomości
| Pin TCS34725 | Pin Raspberry Pi | 
|---|---|
| Vin | 3,3 V (pin 1) | 
| GND | Uziemienie (pin 6) | 
| SDA | SDA (pin 3, GPIO2) | 
| Scl | SCL (pin 5, GPIO3) | 
Krok 2: Włącz interfejs I2C
- Otwórz narzędzie konfiguracyjne Raspberry Pi:
sudo raspi-config
- Przejść do Opcje interfejsu> i2c i włącz to.
- Uruchom ponownie Raspberry Pi:
sudo reboot
Krok 3: Zainstaluj wymagane biblioteki
- Zaktualizuj swoje Raspberry Pi:
sudo apt update && sudo apt upgrade -y
- Zainstaluj niezbędne narzędzia i biblioteki Python:
sudo apt install -y i2c-tools python3-pip pip3 install adafruit-circuitpython-tcs34725
- Sprawdź, czy TCS34725 jest wykrywany w autobusie I2C:
 Czujnik powinien pojawić się pod adresemsudo i2cdetect -y 10x29.
Krok 4: Kod Pythona do odczytu danych z TCS34725
Oto skrypt Python do odczytania RGB i jasnych wartości światła z TCS34725.
Przykład kodu Pythona
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...")
Krok 5: Zastosowania TCS34725
- Wyczuwanie światła otoczenia: Dostosuj jasność ekranu lub oświetlenie oparte na poziomach światła otoczenia.
- Wykrywanie kolorów: Użyj czujnika do sortowania kolorów lub rozpoznawania w robotyce.
- Fotografia: Zmierz temperaturę kolorów dla korekcji bilansu białego.
- Projekty IoT: Zintegruj dane kolorów i światła z inteligentnymi systemami domowymi.
Rozwiązywanie problemów
- 
Czujnik nie wykryty: - Sprawdź połączenia SDA i SCL.
- Upewnij się, że interfejs I2C jest włączony na Raspberry Pi.
 
- 
Niedokładne odczyty: - Unikaj bezpośredniego światła słonecznego lub powierzchni odblaskowych podczas pomiarów.
- Dostosuj czas wzmocnienia i integracji w skrypcie, aby poprawić dokładność.
 
- 
Błędy I2C: - Sprawdź sprzeczne urządzenia w magistrali I2C lub luźne okablowanie.
 
Wniosek
TCS34725 to wszechstronny czujnik kolorów, który bezproblemowo integruje się z Raspberry Pi. Postępując zgodnie z tym przewodnikiem, możesz go użyć do pomiaru RGB, czystego światła, temperatury kolorów i poziomów jasności, dzięki czemu jest idealny do różnych aplikacji, takich jak robotyka, IoT i fotografia. Eksperymentuj z jego ustawieniami, aby odpowiadały konkretnym wymaganiom projektu!
 
            
 
      
 
      
 
      
 
      
 
      
 
       
         
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
   
   
   
   
   
   
   
   
   
   
   
   
  