TCS34725 on värianturi, joka pystyy havaitsemaan punaisen, vihreän, sinisen ja kirkkaan valon voimakkuuden. Sitä käytetään laajasti värien havaitsemisprojekteissa, mukaan lukien robotiikka, kodin automaatio ja väriherkät sovellukset. Tämä opetusohjelma opastaa sinua määrittämään ja käyttämään TCS34725 -värianturia Arduinon kanssa.
Mitä tarvitset
- Arduino -lautakunta (esim. UNO, Mega, Nano)
- TCS34725 Värianturimoduuli
- Leipälevy- ja hyppyjohdot
- Tietokone, jossa Arduino IDE on asennettu
- Kirjastot: Adafruit TCS34725 -kirjasto
Vaihe 1: TCS34725 -värianturin ymmärtäminen
TCS34725 on I2C-yhteensopiva anturi, joka tarjoaa väri- ja valon voimakkuustiedot. Se sisältää:
- RGBC -anturi: Mittaa punaiset, vihreät, siniset ja kirkasta valon voimakkuutta.
- IR -estosuodatin: Parantaa väritarkkuutta erilaisissa valaistusolosuhteissa.
- LED: Sisäänrakennettu valkoinen LED johdonmukaista valaistusta varten (valinnainen käyttö).
Vaihe 2: TCS34725: n johdotus Arduinolle
TCS34725 kommunikoi Arduinon kanssa I2C -protokollan kautta.
Yhteydet
Anturitappi | Arduino -nasta |
---|---|
Virallinen | 5V |
Hölynpöly | Hölynpöly |
SDA | A4 |
SCL | A5 |
Huomaa: Arduino -levyille, joissa on omistettu SDA- ja SCL -nastat (esim. Mega), yhdistä sen sijaan anturin SDA/SCL -nastat.
Vaihe 3: Vaaditun kirjaston asentaminen
TCS34725 -anturin käyttämiseksi tarvitset Adafruit TCS34725 -kirjaston.
Kirjaston asentaminen
- Avaa Arduino IDE.
- Mennä jhk Luonnos> Sisällytä kirjasto> Hallitse kirjastoja.
- Etsi "Adafruit TCS34725".
- Napsauttaa Asentaa.
Vaihe 4: Esimerkkikoodin lataaminen
Tässä on perusesimerkki TCS34725 -anturin väriarvojen lukemiseen ja näyttämiseen.
Esimerkkikoodi
#include <Wire.h>
#include "Adafruit_TCS34725.h"
// Create an instance of the sensor
Adafruit_TCS34725 tcs = Adafruit_TCS34725(TCS34725_INTEGRATIONTIME_700MS, TCS34725_GAIN_1X);
void setup() {
Serial.begin(9600);
if (!tcs.begin()) {
Serial.println("TCS34725 not found. Check your wiring or I2C address.");
while (1); // Halt execution if sensor not found
}
Serial.println("TCS34725 is ready!");
}
void loop() {
uint16_t r, g, b, c;
float lux, colorTemp;
// Get the raw data from the sensor
tcs.getRawData(&r, &g, &b, &c);
// Calculate color temperature and lux
colorTemp = tcs.calculateColorTemperature_dn40(r, g, b, c);
lux = tcs.calculateLux(r, g, b);
// Print the results
Serial.print("Red: "); Serial.print(r); Serial.print(" \t");
Serial.print("Green: "); Serial.print(g); Serial.print(" \t");
Serial.print("Blue: "); Serial.print(b); Serial.print(" \t");
Serial.print("Clear: "); Serial.print(c); Serial.print(" \t");
Serial.print("Color Temp: "); Serial.print(colorTemp); Serial.print(" K \t");
Serial.print("Lux: "); Serial.println(lux);
delay(1000); // Update every second
}
Vaihe 5: Tietojen käyttäminen
1. Värien havaitseminen
Voit kartoittaa RGB -arvot tiettyjen värien tunnistamiseksi. Esimerkiksi:
if (r > g && r > b) {
Serial.println("Red Detected");
} else if (g > r && g > b) {
Serial.println("Green Detected");
} else if (b > r && b > g) {
Serial.println("Blue Detected");
}
2. Väriin perustuvat toimet
Käytä havaittuja värejä LEDien tai moottorien hallitsemiseksi. Esimerkiksi:
if (r > g && r > b) {
digitalWrite(ledPin, HIGH); // Turn on red LED
}
3. anturin säätäminen
Muokkaa anturin voittoa ja integraatioaikaa erilaisiin valaistusolosuhteisiin:
- Integraatioaika: Määrittää valon mittauksen keston. Vaihtoehdot: 2,4 ms 700 ms.
- Saada: Vahvistaa signaalia. Vaihtoehdot: 1x, 4x, 16x, 60x.
Esimerkki:
tcs.setIntegrationTime(TCS34725_INTEGRATIONTIME_154MS);
tcs.setGain(TCS34725_GAIN_4X);
Parhaat käytännöt
- Johdonmukainen valaistus: Käytä anturin sisäänrakennettua LEDiä tai varmista vakaa valaistusolosuhteet.
- Kalibroi tarkkuutta: Säädä voittoa ja integraatioaikaa optimaalisiin lukemiin.
- Suodata melu: Käytä lyhyitä johtoja ja oikeaa maadoitusta sähkömelun minimoimiseksi.
Vianetsintä
-
Anturia ei havaittu:
- Varmista SDA- ja SCL -yhteydet.
- Tarkista I2C -osoite (oletus: 0x29).
-
Epätarkkojen lukemat:
- Varmista asianmukainen valaistus ja vältä varjoja.
- Säädä vahvistus- ja integraatioaika.
-
Vaihtelevat arvot:
- Lisää kondensaattori virtalähteen läpi anturin vakauttamiseksi.
TCS34725 -anturin sovellukset
- Väripohjainen lajittelu robotiikassa
- Ympäristön valon tunnistus
- Värikalibrointi valokuvauksessa
- RGB LED -ohjaus
- Automatisoidut valaistusjärjestelmät
Johtopäätös
TCS34725 on tehokas ja helppokäyttöinen värianturi Arduino-projekteille. Seuraamalla tätä opasta, voit integroida anturin malliin, mahdollistaen värien havaitsemisen, ympäristön valon mittauksen ja paljon muuta. Kokeile erilaisia kokoonpanoja tutkiaksesi tämän monipuolisen moduulin koko potentiaalia!