ה- TCS34725 הוא חיישן צבע המסוגל לאתר את עוצמת האור האדום, הירוק, הכחול והבהיר. הוא נמצא בשימוש נרחב בפרויקטים לגילוי צבעים, כולל רובוטיקה, אוטומציה ביתית ויישומים רגישים לצבעים. מדריך זה ינחה אתכם באמצעות הגדרת חיישן הצבעים TCS34725 עם ארדואינו.
מה תצטרך
- מועצת ארדואינו (למשל, אונו, מגה, ננו)
- TCS34725 מודול חיישן צבע
- חוטי לחם וגשר
- מחשב עם Arduino IDE המותקן
- ספריות: Adafruit TCS34725 ספרייה
שלב 1: הבנת חיישן הצבעים TCS34725
TCS34725 הוא חיישן תואם I2C המספק נתוני צבע ועוצמת אור. זה כולל:
- חיישן RGBC: מודד עוצמות אור אדומות, ירוקות, כחולות וברורות.
- מסנן חסימת IR: משפר את דיוק הצבעים בתנאי תאורה שונים.
- LED: LED לבן מובנה להארה עקבית (אופציונלי לשימוש).
שלב 2: חיווט TCS34725 לארדואינו
TCS34725 מתקשר עם הארדואינו דרך פרוטוקול I2C.
חיבורים
סיכת חיישן | סיכת ארדואינו |
---|---|
VIN | 5V |
GND | GND |
SDA | A4 |
SCL | A5 |
פֶּתֶק: עבור לוחות ארדואינו עם סיכות SDA ו- SCL ייעודיות (למשל, מגה), חבר את סיכות ה- SDA/SCL של החיישן לאלה במקום.
שלב 3: התקנת הספרייה הנדרשת
כדי להשתמש בחיישן TCS34725, אתה זקוק לספריית Adafruit TCS34725.
שלבים להתקנת הספרייה
- פתח את IDE Arduino.
- לך אל סקיצה> כלול ספרייה> ניהול ספריות.
- חפש "Adafruit TCS34725".
- נְקִישָׁה לְהַתְקִין.
שלב 4: העלאת קוד דוגמה
להלן דוגמה בסיסית לקריאה והצגת ערכי הצבע מחיישן TCS34725.
קוד דוגמה
#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
}
שלב 5: שימוש בנתונים
1. גילוי צבע
אתה יכול למפות ערכי RGB כדי לזהות צבעים ספציפיים. לְדוּגמָה:
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. הפעלת פעולות המבוססות על צבע
השתמש בצבעים שזוהו כדי לשלוט על נוריות LED או מנועים. לְדוּגמָה:
if (r > g && r > b) {
digitalWrite(ledPin, HIGH); // Turn on red LED
}
3. התאמת החיישן
שנה את זמן הרווח והשילוב של החיישן לתנאי תאורה שונים:
- זמן אינטגרציה: קובע את משך מדידת האור. אפשרויות: 2.4 מ 'עד 700 מ'.
- לְהַשִׂיג: מגביר את האות. אפשרויות: 1X, 4X, 16X, 60X.
דוּגמָה:
tcs.setIntegrationTime(TCS34725_INTEGRATIONTIME_154MS);
tcs.setGain(TCS34725_GAIN_4X);
שיטות עבודה מומלצות
- תאורה עקבית: השתמש ב- LED המובנה של החיישן או להבטיח תנאי תאורה יציבים.
- כיול לדיוק: התאם זמן רווח ואינטגרציה לקריאות אופטימליות.
- רעש סינון: השתמש בחוטים קצרים והארקה נכונה כדי למזער את הרעש החשמלי.
פתרון בעיות
-
חיישן לא זוהה:
- אמת חיבורי SDA ו- SCL.
- בדוק את כתובת i2c (ברירת מחדל: 0x29).
-
קריאות לא מדויקות:
- להבטיח תאורה נאותה והימנע מהצללים.
- התאם את זמן הרווח וזמן האינטגרציה.
-
ערכים משתנים:
- הוסף קבלים על פני אספקת החשמל כדי לייצב את החיישן.
יישומי חיישן TCS34725
- מיון מבוסס צבע ברובוטיקה
- חישת אור הסביבה
- כיול צבע בצילום
- בקרת LED של RGB
- מערכות תאורה אוטומטיות
מַסְקָנָה
TCS34725 הוא חיישן צבע רב עוצמה וקל לשימוש לפרויקטים של ארדואינו. על ידי ביצוע מדריך זה, אתה יכול לשלב את החיישן בעיצובים שלך, לאפשר איתור צבע, מדידת אור אווירה ועוד. התנסו בתצורות שונות כדי לחקור את מלוא הפוטנציאל של מודול רב -תכליתי זה!