Як виміряти кольори RGB за допомогою Arduino та датчика TCS34725

  • Датчик TCS34725 вимірює кольори RGB з високою точністю.
  • Використовує інфрачервоний фільтр для усунення світлових перешкод.
  • Він спілкується з Arduino за допомогою протоколу I2C.

Датчик TCS34725 з Arduino

Датчик TCS34725 є дуже корисним інструментом для електронних проектів, де потрібно точно вимірювати кольори. Якщо ви працюєте з Arduino і вас цікавить визначення кольорів, цей пристрій стане чудовим вибором. Він широко використовується для розкладання кольорів на компоненти RGB (червоний, зелений і синій) і отримання точних вимірювань. Датчик також має перевагу в тому, що має комунікаційний інтерфейс I2C, що полегшує його інтеграцію та зчитування.

У цій статті ми збираємося детально дослідити, як працює датчик кольору TCS34725 і як ви можете легко використовувати його в проектах Arduino.

Що таке датчик TCS34725? Це оптичний пристрій, який полегшує читання кольорів у форматі RGB. Це високоточний і сучасний датчик, який перевершує інші старі моделі, такі як TCS3200. TCS34725 має матрицю фотодіодів, яка включає фільтри для трьох основних кольорів (червоного, зеленого та синього), а також фотодіод без фільтрів («прозорий»), який вимірює загальну кількість падаючого світла.

Датчик виділяється тим, що містить інфрачервоний фільтр, який покращує точність у середовищах із великою кількістю світлових перешкод. Він також досить адаптивний, оскільки ми можемо регулювати такі параметри, як час інтеграції та приріст за допомогою програмного забезпечення. Цей прилад достатньо чутливий, щоб працювати в умовах слабкого освітлення, навіть із захисним склом між датчиком і об’єктом, який ми вимірюваємо.

Для зручності використання датчик TCS34725 зазвичай інтегрується в комерційні модулі, які включають світлодіод нейтрального освітлення. Світлодіодом можна легко керувати з Arduino, підлаштовуючись під потреби проекту.

Особливості та переваги TCS34725

[amazon box=”B008GRTSV6, B07DK4NHBY” items=”2″ grid=”2″ image_size=”large” description_items=”0″ template=”widget”]

TCS34725 виділяється серед інших датчиків RGB на ринку декількома ключовими характеристиками. Наприклад, ви можете налаштувати підсилення та час експозиції, щоб отримати більш точні показники. Нижче ми покажемо деякі з основних переваг:

  • Інфрачервоний фільтр: Це дозволяє отримати більш точні показання, усуваючи значну частину шуму, спричиненого невидимими джерелами світла, такими як пряме сонячне світло.
  • Висока чутливість: Його динамічний діапазон вражає, що робить його придатним навіть в умовах слабкого освітлення.
  • LED управління освітленням: Більшість модулів інтегрують світлодіод, яким можна керувати з самого Arduino, що забезпечує постійне освітлення для зчитування.

Схема підключення датчика

[amazon box=”B008GRTSV6, B07DK4NHBY” items=”2″ grid=”2″ image_size=”large” description_items=”0″ template=”widget”]

Підключити датчик до Arduino дуже просто завдяки його інтерфейсу I2C. Датчик TCS34725 може працювати від джерела живлення 3.3 або 5 В, що робить його сумісним з широким спектром мікроконтролерів. Нижче наведено кроки для правильного підключення:

  • VCC: Підключіться до 5 В на Arduino.
  • GND: Підключіться до GND.
  • ПДР: Він підключається до контакту A4 Arduino (на таких моделях, як UNO).
  • SCL: Він підключається до контакту A5 Arduino.

Зауважте, що деякі модулі можуть мати додаткові контакти, такі як світлодіод, який дозволяє вам контролювати його поведінку з самого Arduino, щоб заощадити енергію або налаштувати його відповідно до умов вашого середовища вимірювання.

Бібліотеки та код для TCS34725

[amazon box=”B008GRTSV6, B07DK4NHBY” items=”2″ grid=”2″ image_size=”large” description_items=”0″ template=”widget”]

Існує кілька доступних бібліотек, які полегшують роботу з цим датчиком RGB, але однією з найбільш рекомендованих і широко використовуваних є бібліотека Adafruit під назвою "Adafruit_TCS34725". Ви можете встановити його безпосередньо з менеджера бібліотек Arduino IDE.

Щоб установити його, виконайте такі дії:

  • Відкрийте Arduino IDE, перейдіть на вкладку інструменти і виберіть Включити бібліотеку -> Керувати бібліотеками.
  • запис Adafruit TCS34725 і виберіть установити. Таким чином бібліотека буде готова до використання.

Після встановлення ви можете використовувати наступний базовий код для перевірки датчика TCS34725. Цей код просто отримує значення RGB і відображає їх через послідовний порт:

#включити #include "Adafruit_TCS34725.h"Adafruit_TCS34725 tcs = Adafruit_TCS34725();void setup() { Serial.begin(9600); if (!tcs.begin()) { Serial.println("Датчик не знайдено"); поки (1); }}void loop() { uint16_t r, g, b, c; tcs.getRawData(&r, &g, &b, &c); Serial.print("Червоний: "); Serial.println(r); Serial.print("Зелений: "); Serial.println(g); Serial.print("Синій: "); Serial.println(b); затримка (1000); }

Калібрування та використання датчика

Важливо відзначити, що датчик TCS34725 потрібно відкалібрувати для більшої точності. Це пов’язано з обмеженнями будь-якого вимірювального приладу. Калібрування, як правило, передбачає коригування значень посилення та часу інтеграції для отримання точних показань в умовах освітленості вашого середовища.

Крім того, пам’ятайте, що блискучі поверхні можуть спричинити неправильні показання через відображення. Якщо ви працюєте з поверхнями з високим рівнем відбивання, бажано покрити датчик матовим матеріалом або встановити поляризаційний фільтр.

Застосування сенсора кольору TCS34725

Цей датчик ідеально підходить для проектів, де потрібно точно розпізнавати кольори. Деякі програми TCS34725 включають:

  • Класифікація предметів за кольором.
  • Системи навколишнього освітлення, де освітлення може автоматично регулюватися на основі переважного кольору середовища.
  • Дублювання кольорів у світлодіодних стрічках RGB, таких як WS2812B.

У складних проектах цей датчик також можна використовувати для вимірювання колірної температури та кількості світла в сцені, що корисно у фотографіях або проектах інтелектуального освітлення.