Gamit ang TCS34725 kasama ang Raspberry Pi

Using the TCS34725 with the Raspberry Pi

Ang TCS34725 ay isang module ng sensor ng kulay na may kakayahang makita ang pula, berde, asul (RGB), at malinaw na mga halaga ng ilaw. Malawakang ginagamit ito sa mga application tulad ng ambient light sensing, color detection, at kahit na mga sistema ng pag-uuri na batay sa kulay. Ipinapaliwanag ng gabay na ito kung paano kumonekta at gamitin ang TCS34725 kasama ang Raspberry Pi.


Ano ang kakailanganin mo

  1. Raspberry Pi (Anumang modelo na may suporta sa GPIO, hal., PI 3, PI 4)
  2. TCS34725 Kulay ng sensor ng kulay
  3. Mga wire ng tinapay at jumper
  4. Naka -install ang Python Sa iyong Raspberry Pi

Hakbang 1: Ang mga kable ng TCS34725 sa Raspberry Pi

Ang TCS34725 ay gumagamit ng I2C protocol para sa komunikasyon.

Mga koneksyon

TCS34725 Pin Raspberry Pi Pin
Vin 3.3v (pin 1)
Gnd Ground (pin 6)
SDA SDA (PIN 3, GPIO2)
SCL SCL (Pin 5, GPIO3)

Hakbang 2: Paganahin ang interface ng I2C

  1. Buksan ang tool ng pagsasaayos ng Raspberry Pi:
    sudo raspi-config
    
  2. Mag -navigate sa Mga pagpipilian sa interface> i2c at paganahin ito.
  3. I -reboot ang Raspberry Pi:
    sudo reboot
    

Hakbang 3: I -install ang mga kinakailangang aklatan

  1. I -update ang iyong Raspberry Pi:
    sudo apt update && sudo apt upgrade -y
    
  2. I -install ang mga kinakailangang tool at mga aklatan ng python:
    sudo apt install -y i2c-tools python3-pip
    pip3 install adafruit-circuitpython-tcs34725
    
  3. Patunayan na ang TCS34725 ay napansin sa bus ng I2C:
    sudo i2cdetect -y 1
    
    Ang sensor ay dapat lumitaw sa address 0x29.

Hakbang 4: Python Code upang mabasa ang data mula sa TCS34725

Narito ang isang script ng Python upang mabasa ang RGB at i -clear ang mga ilaw na halaga mula sa TCS34725.

Halimbawa ng Python Code

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...")

Hakbang 5: Mga Aplikasyon ng TCS34725

  1. Nakapaligid na light sensing: Ayusin ang liwanag ng screen o pag -iilaw batay sa mga nakapaligid na antas ng ilaw.
  2. Kulay ng Kulay: Gumamit ng sensor para sa pag -uuri ng kulay o pagkilala sa mga robotics.
  3. Potograpiya: Sukatin ang temperatura ng kulay para sa pagwawasto ng puting balanse.
  4. Mga proyekto ng IoT: Isama ang kulay at magaan na data sa mga matalinong sistema ng bahay.

Pag -aayos

  1. Hindi nakita ang sensor:

    • Patunayan ang mga koneksyon sa SDA at SCL.
    • Tiyakin na ang interface ng I2C ay pinagana sa Raspberry Pi.
  2. Hindi tumpak na pagbabasa:

    • Iwasan ang direktang sikat ng araw o mapanimdim na ibabaw sa panahon ng mga sukat.
    • Ayusin ang pakinabang at pagsasama ng oras sa script upang mapabuti ang kawastuhan.
  3. Mga error sa I2C:

    • Suriin ang mga salungat na aparato sa I2C bus o maluwag na mga kable.

Konklusyon

Ang TCS34725 ay isang maraming nalalaman na sensor ng kulay na nagsasama nang walang putol sa Raspberry Pi. Sa pamamagitan ng pagsunod sa gabay na ito, maaari mong gamitin ito upang masukat ang RGB, malinaw na ilaw, temperatura ng kulay, at mga antas ng ningning, na ginagawang perpekto para sa iba't ibang mga aplikasyon tulad ng mga robotics, IoT, at litrato. Eksperimento sa mga setting nito upang umangkop sa iyong mga tukoy na kinakailangan sa proyekto!

Mag -iwan ng komento

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.