Датчик цвета: Датчик цвета TCS230: описание, подключение, схема, характеристики

Содержание

инструкция, схемы и примеры использования [Амперка / Вики]

Используйте датчик цвета для определения оттенков объекта в зоне видимости.

Примеры работы для Arduino

Рассмотрим подключение и примеры работы с платформами Arduino.

Схема устройства

Подключите сенсор к Arduino к пинам шины I²C — SDA/SCL и сигнальному пину 6 для управления подсветкой.

Для быстрой сборки используйте Troyka Shield.

С Troyka Slot Shield провода не понадобятся вовсе.

Вывод данных

printColorData.ino
// библиотека для работы с датчиком цвета
#include "TroykaColorSensor.h"
 
// создаём объект для работы с датчиком
TroykaColorSensor colorSensor;
 
// пин подсветки светодиода
#define BACKLIGHT_PIN   6
 
void setup() {
 // инициализируем датчик
 colorSensor.begin();
 // открываем Serial-порт
 Serial.begin(115200);
 
}
void loop() {
 // выставляем уровень подсветки
 analogWrite(BACKLIGHT_PIN, 100);
 // считываеv данные в объект RGB
 RGB color = colorSensor.colorRead();
 // выводим показания освещённости каждого цвета
 Serial.print(color.red);
 Serial.print('\t');
 Serial.print(color.green);
 Serial.print('\t');
 Serial.println(color.blue);
 delay(100);
}

Определение цвета

detectColor.ino
// библиотека для работы с датчиком цвета
#include "TroykaColorSensor.h"
 
// создаём объект для работы с датчиком
TroykaColorSensor colorSensor;
 
// пин подсветки светодиода
#define BACKLIGHT_PIN   6
 
void setup() {
 // инициализируем датчик
 colorSensor.begin();
 // открываем Serial-порт
 Serial.begin(115200);
}
 
void loop() {
 // выставляем уровень подсветки
 analogWrite(BACKLIGHT_PIN, 100);
 // считываем данные в объект RGB
 RGB color = colorSensor.colorRead();
 // выводим цвет с максимальной интенсивностью
 printColor(color);
 delay(100);
}
 
// функция поиска и вывода цвета с максимальной интенсивностью
void printColor(RGB c) {
 if ((c.red > c.green) && (c.red > c.blue))
 Serial.println("RED");
 if ((c.green > c.red) && (c.green > c.blue))
 Serial.println("GREEN");
 if ((c.blue > c.green) && (c.blue > c.red))
 Serial.println("BLUE");
}

Примеры работы для Espruino

Рассмотрим подключение и примеры работы с платой Iskra JS.

Схема устройства

Подключите сенсор к Iskra JS к пинам шины I²C — SDA/SCL и сигнальному пину 6 для управления подсветкой.

Для быстрой сборки используйте Troyka Shield.

С Troyka Slot Shield провода не понадобятся вовсе.

Вывод данных

printColorData.js
// настраиваем шину I²C
PrimaryI2C.setup({sda: SDA, scl: SCL, bitrate: 100000});
// подключаем библиотеку для работы с графическим дисплеем
var colorSensor = require("TCS3472x").connect(PrimaryI2C, 1, 1);
// пин подсветки светодиода
var pinBacklight = P6;
// яркость светодиода
var brightness = 0.5;
// выставляем яркость светодиода
analogWrite(pinBacklight, brightness);
 
// каждую секунду выводим данные с датчика цвета
setInterval(function() {
  var dataColor = colorSensor.getValue();
  print(dataColor);
}, 100);

Элементы платы

Сенсор TCS34725

Датчик выполнен на микросхеме AMS TCS34725, которая содержит 12 светочувствительных элементов. Часть из них оснащена цветными фильтрами для измерения красной, зелёной и синей составляющей, а остальные определяют общий уровень освещённости. Каждая группа фотоэлементов подключена к своему АЦП, который выдаёт 16-битный сигнал, пропорциональный интенсивности падающего света. Готовые результаты измерений передаются по интерфейсу I²C.

LED-подсветка

За включение и отключение LED-подсветки отвечает сигнальный пин L. А если контакт управляющей платы поддерживает ШИМ, то можно управлять яркостью светодиода.

Регулировка подсветки

Понижающий регулятор напряжения

Преобразователь логических уровней

Troyka-контакты

На дисплейном модуле выведено две пары Troyka-контактов.

Нижняя группа
  • Сигнальный (A) — пин управления подсветкой экрана. Подключите к аналоговому/цифровому пину микроконтроллера.

  • Питание (V) — соедините с рабочим напряжением микроконтроллера.

  • Земля (G) — соедините с землёй микроконтроллера.

Верхняя группа
  • Сигнальный (D) — пин данных шины I²C. Подключите к SDA пину микроконтроллера.

  • Сигнальный (C) — пин тактирования шины I²C. Подключите к

    SCL пину микроконтроллера.

Принципиальная и монтажная схемы

Характеристики

  • Сенсор: TCS34725

  • Детектируемые цвета: RGB, общая освещённость

  • Интерфейс: I²C

  • Адрес модуля: 0x29

  • Подсветка: белый светодиод (LED)

  • Напряжение питания: 3,3–5 В

  • Потребляемый ток: <300 мкА

  • Габариты: 25,4×25,4 мм

Ресурсы

Датчик цвета [Роботрек вики]

Датчик цвета

ТЕХНИЧЕСКИЕ ХАРАКТЕРИСТИКИ

  • 1) Напряжение питания: 5В

  • 2) Определяемые цвета: 5 - черный, белый, красный, синий, зеленый

  • 3) Расстояние до определяемой поверхности - 0-2 см

  • 4) Способ определения цвета: по отраженному свету


Датчик цвета позволяет определять цвет поверхности. По сути это два устройства в одном - трехцветный светодиод и датчик освещенности, которые можно использовать по отдельности.

Принцип работы: Датчик цвета имеет два основных компонента -трехцветный (RGB) светодиод, который излучает красный, синий и зеленый свет, а также светочувствительный датчик (фоторезистор), который определяет интенсивность падающего на него света.

Белый свет состоит из всех цветов радуги. Когда свет падает на поверхность, некоторые цвета поглощаются, а некоторые отражаются. Отраженные цвета – это цвета воспринимаемого нами объекта. Для измерения и определения количества цвета с помощью электронной схемы, вам необходимо измерить интенсивность различных длин волн света, отраженного от поверхности. Самый простой способ сделать это – осветить поверхность разными цветами и измерить, какой из цветов поверхность отражает лучше. Измеряя отраженный свет для каждого цвета можно вычислить цвет объекта.

Для улучшения результатов измерений следуйте следующим советам:

  • Избегайте попадания на фоторезистор прямых лучей и яркого света

  • Располагайте датчик так, чтобы фоторезистор был максимально в тени

  • Не производите измерения постоянно, делайте между измерениями небольшие паузы.

  • Составляйте программу так, чтобы измерения начинались тогда, когда объект в поле зрения датчика и не двигается.

  • Каждое измерение занимает около 0.4 секунды. Если измерение началось, когда в поле зрения был объект одного цвета (или его не было совсем), а закончилось на другом объекте, результат будет с большой вероятностью неверным.

  • Подносите объект максимально близко к датчику, он может даже упираться в светодиод - так будет максимально изолироваться внешнее освещение.

  • При конструировании модели помещайте датчик в короб, собранный из конструктора. Это увеличит точность измерения.

Подключение

Датчик использует два стандартных 3-пиновых разъема, однако, подключается не совсем обычно:

Коннектор 1 (без цветового обозначения) подключается в любой из портов IN контроллера "Трекдуино", сигнальный провод этой шины подключен к фоторезистору, поэтому, подключив только эту шину, вы сможете использовать датчик как датчик освещенности.

Коннектор 2 (с цветовой маркировкой) служит для управления трехцветным светодиодом. Каждый из проводов подключен напрямую соответствующему каналу светодиода. Наклейка с цветовой маркировкой на коннекторе указывает, к какому из каналов соответствует каждый из проводов. Подключается в любые три порта OUT и в любые порты IN контроллера "Трекдуино".

Подключается горизонтально в верхнюю (сигнальную, «S») линию контактов.. Для того, чтобы использовать только RGB-светодиод, коннектор №1 все равно придется подключить, т.к. земляной провод (GND) общий для светодиода и фоторезистора.

Подключение коннектора 1Подключение коннектора 2

Программирование

Блоки, необходимые для работы с датчиком цвета, расположены в группе блоков «Датчики».

Калибровка

Каждый раз при перезагрузке программы, использующей датчик цвета, в момент выполнения блока Настройка датчика цвета будет производится калибровка датчика под текущие условия освещения. Процедура калибровки выполняется следующим образом:

  1. Трехцветный светодиод датчика мигнет три раза белым светом. Это означает, что процедура калибровки запущена.

  2. В течение 3 секунд поднесите к датчику любую белую отражающую поверхность, например, белый лист. Через 3 секунды датчик поочередно загорится красным, зеленым, синим цветом.

  3. Как только датчик погаснет, поднесите к датчику любую черную поверхности. У вас есть на это 3 секунды. Через 3 секунды датчик просканирует разными цветами черную поверхность.

  4. Процедура калибровки окончена. Программа выждет 5 секунд и продолжит нормальную работу.

Для удобной работы с датчиком, сделайте 2 карточки 5х8 см. черного и белого цвета.

Блок и генерируемая функция Описание
оптимальная конструкция
setupColorSensor(Rpin, Bpin, Gpin, Spin)       
Выполняется привязка датчика к конкретным портам и процедура калибровки.

Аргументы:
Красный светодиод (int Rpin) - порт, к которому подключен красный канал RGB-светодиода
Синий светодиод (int Bpin) - порт, к которому подключен синий канал RGB-светодиода
Зеленый светодиод (int Gpin) - порт, к которому подключен зеленый канал RGB-светодиода
датчик (int Spin) - порт, к которому подключен немаркированный провод датчика освещенности.

оптимальная конструкция
int getColor(void) 
Выполняет сканирование поверхности и возвращает условный номер определенного цвета:

0 - черный
1 - белый
2 - красный
3 - зеленый
4 - синий
9 - ошибка (цвет не удалось определить с достаточным уровнем достоверности)

Примеры использования в проектах

Цветовой замок

Генерируемый код:

#include <Servo.h>
 
Servo servo_port_OUT4;
 
void setup()
{
  setupColorSensor(OUT1, OUT2, OUT3, IN1);
  servo_port_OUT4.attach(OUT4);
 
  servo_port_OUT4.write( 0 );
 
}
 
void loop()
{
  if (( ( getColor() ) == ( 2 ) ))
  {
    servo_port_OUT4.write( 100 );
    delay( 15000 );
  }
  else
  {
    servo_port_OUT4.write( 0 );
  }
}

ehlektronika/datchiki/datchik_cveta.txt · Последние изменения: 2017/06/05 16:55 (внешнее изменение)

Датчик цвета | 2 Схемы

Датчик TCS3200 предназначен для распознавания цвета поверхности. Датчик приобретен как и многие другие модули для Ардуино — на Алиэкспрессе (за 4 доллара). Устройство поставляется в антистатическом пакете.

Габаритные размеры модуля 37 х 30 10 мм, в плате имеется четыре крепежных отверстия, диаметром 3 мм, масса устройства составляет 4.1 г.

Как оказалось, в производстве модуля допущен заводской брак, маркировка контактов на лицевой и тыльной стороне платы не совпадает. Как установил экспериментальным путем автор обзора — верна, видимо, та маркировка, которая находится со стороны светодиодов.

На плате модуля хорошо видны четыре белых светодиода подсветки, между которыми размещен детектор, который представляет собой матрицу из 64 фотодиодов, 16 из которых имеют красный светофильтр, 16 – зеленый, 16 синий и оставшиеся 16 не имеют светофильтра. Рассмотреть матрицу фотодиодов можно в достаточно сильную лупу. В данном устройстве осуществляется преобразование информации от фотодиодов в импульсы с частотой, которая пропорциональна яркости падающего на фотодиоды света. Считывая данные с разных групп светодиодов можно, получить представление о том каков цвет световых лучей, падающих на матрицу фотодиодов.

Подключение датчика TCS3200

Всего модуль имеет восемь выводов.

  • VСС – питание 5В,
  • GND – общий провод,
  • OUT – информационный выход,
  • LED – вывод управления светодиодами подсветки,
  • S0 и S1 масштабирование частоты выходного сигнала,
  • S2 и S3 – выбор группы светодиодов [1-5].

При напряжении питания 5В модуль потребляет 21 мА при включенной подсветке и 2 мА при отключенной. Отключение светодиодной подсветки производится подачей низкого логического уровня на вывод LED.

Следует иметь в виду, что при оборванной линии питания светодиоды не гаснут.

Частота сигнала на выходе OUT может достигать 500 кГц [5-6], выводы S0 и S1 задают коэффициент деления частоты, если на оба эти вывода пода низкий логический уровень, то устройство отключается.

S0 S1
Отключение
1 2%
1 20%
1 1 100%

Выводы S2 и S3 служат для выбора задействованной группы фотодиодов [1,6]

S2 S3
Красный
1 Синий
1 Белый
1 1 Зеленый

Рассматриваемое устройство требует достаточно серьезного кода для обработки поступающей с него информации. Как понимает, автор матрица фотодиодов в данной конфигурации чипа очень сильно засвечивается светодиодами подсветки [6], а также чувствительный к инфракрасному излучению [7]. Бленда для защиты фотодиодов от прямой засветки светодиодами совершенно необходима, так же, как понимает автор, крайне желателен ИК-фильтр [7]. В качестве бленды автор применил пластмассовую трубку, длинной 12 и внешним диаметром 8 мм, которая обмотана несколькими слоями изоленты, между которыми проложена пищевая фольга. ИК-фильтра у автора нет.

Для калибровки датчика была использована программа TCS3200_1 [1]. В процессе калибровки требуется взять однотонную красную, синюю и зеленую поверхности. Автор использовал обложки папок, соответствующих цветов.

В процессе калибровки датчика надо поднести цветную поверхность с расстояния 15-10 см вплотную к датчику. При этом надо зафиксировать, как будет меняться диапазон значений для соответствующего канала, возвращаемый программой TCS3200_1.

Испытания датчика цветов

На иллюстрациях ниже приведены результаты измерения для красного, зеленого и синего канала соответственно. Т.е. для первого из трех рисунков имеет значение первый столбец данных, для второго – второй, а для третьего – третий.

Затем из полученных значений для каждого из каналов надо выбрать максимальные и минимальные значения диапазона, которые следует подставить в программу TCS3200_2 [1]. Именно эта программа будет производить распознавание цветов. Значения диапазона нужно подставлять на место второго и третьего параметров функции map [8-9], для красного цвета 52 строка кода, для зеленого – 69, для синего – 86. Как понимает автор, конкретные значения диапазона сильно зависят от условий освещенности, характера поверхности, поэтому калибровать датчик надо в условиях максимально приближенных к тем в которых он будет использоваться. После описанных выше манипуляций датчик, должен быть готов к работе. Результат, возвращаемый программой TCS3200_2

для красной папки

Зеленая папка

Синяя папка

Черная матовая поверхность (бокс CD-диска)

Как хорошо видно, по результатам измерения, красную поверхность датчик, более или менее идентифицирует, а вот отличить зеленую поверхность от синей устройство практически не в состоянии. При низкой интенсивности внешнего сигнала датчик склонен определять синий цвет на любой поверхности. Такое поведение устройства можно объяснить тем, что не был использован инфракрасный фильтр. Дело в том, что к ближнему ИК-излучению чувствительны все фотодиоды [7], а вот человеческий глаз его не видит, таким образом, способность поверхности поглощать и отражать ИК-излучение с длиной волны около 850 нм должно очень серьезно влиять на результаты измерения. В текущем виде датчик подходит, для того чтобы отличать красную поверхность от поверхности иного цвета. При этом оттенки красного в целом опознаются как красный цвет.

Красный картон опознается хорошо

А вот красная клеенка уже хуже

Вне конкуренции оказалась эта красная папка.

Оранжевую бумагу датчик тоже опознал как поверхность красного цвета.

В заключении следует отметить, что наличие бленды на фотодиодной матрице совершенно обязательно. Для иллюстрации можно посмотреть, что показывает программа TCS3200_2 на красном картоне с рис. 18 без бленды. Хорошо видно, что датчик полностью засвечен белым светом.

Справедливости ради, красная папка с рис. 22 и в этом случае остается красной, но по показаниям, хорошо видно насколько зашумлен сигнал.

Таким образом, можно заключить, что в текущем виде без доработки датчик еле справляется с отличием красной поверхности от какой-то другой, о различении оттенков и речи не идет. Хотя это можно объяснить, тем, что попавший автору датчик не вполне исправен, или автор не разобрался с маркировкой выводов, или просто автор допусти при испытании датчиков серьезную ошибку.

Полезные ссылки

  1. wikihandbk.com/wiki/Arduino:Примеры/Гайд_по_использованию_датчика_цвета_TCS230/TCS3200_с_Arduino
  2. роботехника18.рф/датчика-цвета-ардуино-подключение/
  3. alex.lyceum-2.ru/index.php/2015/11/22/datchik-cveta-tcs3200/
  4. robot-kit.ru/article_info.php/articles_id/4/article/-font-color—993300—Statya-pro-modul-opredeleniya-cveta-RKP-TSC3200—font-
  5. umdom.by/arduino/arduino-датчик-распознавания-цвета-tcs3200
  6. forum.amperka.ru/threads/Датчик-цвета-tcs3200.5888/
  7. blog.kvv213.com/2018/01/datchik-sveta-i-tsveta-tcs3200-arduino-mega-chto-to-poluchaetsya/
  8. arduinoplus.ru/coding-arduino/functions/matematika/map/
  9. arduino.ru/Reference/Map

Файлы проекта можете взять в архиве. Материал подготовил специально для сайта 2shemi.ru — Denev

Определение и измерение цвета на примере датчиков цвета Avago Technologies - Компоненты и технологии

Человеческий глаз способен достаточно хорошо различать цвета (научные эксперименты показали, что люди могут различать до 10 миллионов оттенков, но мы просто не имеем достаточно слов для описания названий всех этих цветов), однако разные люди опишут один и тот же цвет иначе. Поэтому в промышленности и других областях человеческой деятельности требуется точное определение цвета и управление им и с помощью автоматических устройств.

Не так давно производителям, использующим оптоэлектронные датчики, было достаточно лишь сведений о яркости излучения. Сейчас требования к таким датчикам растут, поскольку необходима гораздо более точная информация о свете. Диапазон подобных устройств широк: от дорогих лабораторных спектрофотометров до экономичных (RGB — Red, Green, Blue) датчиков цвета, например семейство RGB-преобразователей света в напряжение, производимых Avago Technologies. Столь широкий диапазон типов датчиков стимулировал увеличение областей практического использования измерения цвета. Сегодня датчики цвета применяются для цветовых измерений, контроля и управления цветом в промышленной автоматике, бытовой технике, текстильной промышленности, светодиодной подсветке ЖК-дисплеев и телевизоров, измерения цвета в портативном медицинском оборудовании и диагностической аппаратуре и т. д.

Восприятие цвета

Прежде чем углубиться в теорию и дать описание того, как современные электронные приборы считывают и определяют цвет, полезно понять, как чувствуют и определяют цвет люди. Цвет — это результат взаимодействия между источником света, объектом и наблюдателем. Так, свет, падающий на объект, будет отражен или поглощен в зависимости от характеристик поверхности, коэффициентов отражения и пропускания. Например, красная бумага будет поглощать зеленую и синюю части спектра при отражении красной и поэтому для наблюдателя бумага будет красной. В случае излучения света самим объектом свет достигает человеческого глаза, обрабатывается его рецепторами и интерпретируется нервной системой и мозгом.

Человеческий глаз может обнаруживать спектр электромагнитного излучения приблизительно от 400 (фиолетовый цвет) до 700 нм (красный цвет) и может адаптироваться к изменяющимся вшироких пределах уровням освещенности и насыщенности цвета (отношение «чистый» цвет/белый цвет). Клетки человеческого глаза, способные обрабатывать свет в широком диапазоне уровня освещенности и обеспечивать быструю реакцию на изменение освещенности, называются «палочками» и не имеют способности определять цвет. Клетки, названные «колбочками», обеспечивают определение цвета с высокой разрешающей способностью. Имеются три набора колбочек с максимумом чувствительности в длинах волн, которые человеческий глаз может выделять: красный цвет (580 нм), зеленый (540 нм) и синий (450 нм). Свет с любой другой длиной волны в видимой части спектра будет стимулировать разное количество каждого из этих трех типов клеток с различной степенью, затем информация будет передана зрительным нервом и обработана мозгом.

На рис. 1а показан основной принцип определения цвета человеческим глазом. Имеются несколько типов приборов для измерения цвета, но сегодня чаще всего используют либо колориметрический, либо фотометрический методы измерения. Колориметрический метод предполагает измерение света от объекта с помощью датчика с тремя фильтрами (рис. 1б). Обычно спектральная чувствительность датчика оптимизирована так, чтобы она совпадала со спектральной чувствительностью человеческого глаза. Выходной сигнал дается в координатах цвета X, Y, Z Комиссии CIE (Commission International de I’Eclairage). При фотометрическом методе (рис. 1в) используется множество датчиков, определяющих цвет в большом количестве узких диапазонов. Затем компьютер вычисляет координаты цвета в каждом диапазоне и интегрирует полученные данные. Датчики цвета компании Avago (рис. 1г) — это датчики, использующие колориметрический принцип измерения, они состоят из фотодиодной матрицы, красного, зеленого и синего фильтров.

Рис. 1. Определение цвета: а) человеческим глазом; б) колориметром; в) спектрофотометром; г) RGB-датчиком цвета

Теория измерения цвета

Сегодня выпускаются три различных типа датчиков цвета: датчики, преобразующие свет в фототок, датчики, преобразующие свет в аналоговый сигнал, и датчики, преобразующие свет в цифровой сигнал.

Датчик цвета, преобразующий свет в аналоговое напряжение, обычно состоит из матрицы фотодиодов с цветными светофильтрами, интегрированной со схемой преобразования тока в напряжение. Такой RGB-датчик цвета использует колориметрический принцип измерения и состоит из фотодиодной матрицы, красного, зеленого и синего фильтров и трех усилителей с токовым входом, объединенных в одной монолитной КМОП-микросхеме. Без цветного светофильтра обычный кремниевый фотодиод реагирует на длины волн от ближнего ультрафиолета до ближнего ИК-диапазона с областью максимальной чувствительности между 800 и 950 нм. Красный, зеленый и синий цветные фильтры на пропускание формируют и оптимизируют спектральную чувствительность фотодиода. Должным образом разработанные фильтры позволяют получать спектральную чувствительность для отфильтрованной фотодиодной матрицы, подобную чувствительности человеческого глаза. RGB-фильтры разлагают падающий свет на красную, зеленую и синюю составляющие. Фотодиод соответствующего канала цвета превращает их в фототок. Затем три усилителя с токовым входом (по одному для каждой составляющей R, G и B) преобразуют фототок в напряжение. Вместе три аналоговых выхода несут информацию о цвете и силе света. Выходное напряжение на каждом из каналов (R, G, B) линейно увеличивается с ростом интенсивности света. Блок-схема типового датчика цвета от Avago Technologies приведена на рис. 2.

Рис. 2. Блок-схема типового датчика цвета Avago Technologies

Чаще всего используют один из двух методов измерения и определения цвета: на отражение и на пропускание.

При измерении на отражение датчик цвета определяет и измеряет цвет излучения, отраженного от поверхности или объекта. При этом как источник, так и датчик цвета расположены близко от отражающей поверхности. Свет, излучаемый источником света (лампа накаливания, флуоресцентная лампа, белый светодиод или калиброванный светодиодный модуль RGB) отражается от поверхности, затем определяется и измеряется датчиком цвета. Цвет излучения, отраженного от поверхности, зависит от цвета этой поверхности. Например, белый свет, падающий на красную поверхность, отражается как красный цвет. Отраженный красный свет попадает на датчик цвета, выдающего различные выходные напряжения по трем каналам R,G и B. Интерпретируя эти три напряжения, можно определить свет. Эти три выходных напряжения растут линейно с увеличением интенсивности отраженного света, поэтому такой датчик цвета может также измерять отражающую способность объекта или поверхности (рис. 3).

Рис. 3. Измерение цвета на отражение

При измерении на пропускание датчик цвета определяет и измеряет свет непосредственно от источника. Датчик цвета и источник света расположены «лицом к лицу». Фотодиодная линейка со светофильтрами преобразует падающий свет в фототок от соответствующего канала, который затем усиливается и преобразуется в аналоговое напряжение. Интерпретируя эти три напряжения, можно определить цвет. Выходные напряжения, так же как и в случае измерения на отражение, растут линейно с увеличением интенсивности отраженного света, поэтому такой датчик кроме цвета может измерить и полную интенсивность светового потока от источника света (рис. 4).

Рис. 4. Измерение цвета на пропускание

Измерение цвета на пропускание используется, например, для определения цвета прозрачных сред типа стекла, прозрачного пластика, жидкости или газа. В этом случае свет проходит сквозь прозрачную цветную среду и попадает на датчик цвета (рис. 5).

Рис. 5. Определения цвета прозрачных сред при измерении цвета на пропускание

Три аналоговых напряжения на выходе датчика цвета могут использоваться для контроля в аппаратуре управления. Эти напряжения могут также быть преобразованы в цифровой сигнал, который может анализировать DSP.

Кратко представим методы описания цвета и яркости излучения.

Матричный метод

Этот метод используют, если необходимо определить несколько цветов. Метод основан на матричном уравнении: CIE X, Y, Z представляет собой координаты цвета, RGB представляет собой цифровые значения датчика цвета. Матричные коэффициенты C00, C01, C02, C10, C11, C12, C20, C21 и C22 определяются на основе выходных сигналов эталонного датчика цвета. Как только эти матричные коэффициенты определены, значения X, Y, Z могут быть рассчитаны из RGB значений датчика цвета.

Табличный метод

Этот метод подходит для определения нескольких цветов одновременно. Для начала необходимо определиться, важна ли информация о яркости или нет. Сначала используется информация о яркости для каждого цвета с эталонного датчика, которая получена во время калибровки. Если информация о яркости не имеет значения, то для нахождения отношения между эталонным цветом, полученным во время калибровки, и определяемым цветом используется один отобранный цветной канал — как основание для всех наборов измерения (например, зеленый канал).

Для случая, когда яркость важна:

Для случая, когда яркость не важна:

  • (Ru , Gu , Bu) — неизвестные цвета.
  • (Rr , Gr , Br) — эталонные цвета.
  • для случая, когда яркость не важна, значение для одного канала датчика (например, зеленый канал) используется как знаменатель.

В настоящее время компанией Avago Technologies выпускается несколько датчиков различных типов (таблица), в числе последних — цифровой ADJD-S313-QR999 и аналоговый HDJD-S722-QR999, которые обеспечивают точную и надежную работу при достаточно невысокой цене.

Таблица. Датчики цвета различных типов, выпускаемые компанией Avago Technologies

Для аналогового датчика цвета HDJD-S722-QR999 нужен один источник питания напряжением 5 В. Интегральное исполнение и стандартное 5-вольтовое питание гарантируют недорогое и эффективное решение для измерения цвета. Микросхема выпускается в плоском квадратном корпусе QFN для поверхностного монтажа 5‚5‚1 мм с 160 выводами. Данные датчики цвета могут использоваться для цветовых измерений, контроля и управления цветом в промышленной автоматике, бытовой технике, текстильной промышленности, светодиодной подсветке ЖК-дисплеев и телевизоров, измерения цвета в портативном медицинском оборудовании и диагностической аппаратуре, а также в считывающих устройствах.

Цифровой датчик ADJD-S313-QR999 выполнен в 20-выводном корпусе QFN размером 5‚5‚0,75 мм. Датчик имеет RGB-фильтры и фотодиодную матрицу, АЦП и цифровое ядро для связи с микроконтроллером и для регулировки чувствительности. Он может напрямую взаимодействовать с микроконтроллером без каких-либо дополнительных компонентов. Это обеспечивает более простое согласование устройств. Интегрированный АЦП позволяет избавиться и от нежелательных шумов, связанных с предварительной обработкой аналогового сигнала. Встроенные RGB-фильтры разработаны на основе матрицы фотодиодов с равномерным распределением элементов. Однородное распределение RGB-фильтров и фотодиодных матриц уменьшает влияние градиента освещенности, связанное с ошибками оптических измерений и неровностями используемых поверхностей. Датчик работает от источника питания с напряжением 2,6 В, обеспечивая значительно более низкое энергопотребление. ADJD-S313-QR999 может использоваться в широком динамическом диапазоне уровня освещенности и идеально подходит для применений в устройствах, которые требуют высокой степени интеграции, малых размеров и пониженного энергопотребления. Имея широкий диапазон чувствительности, ADJD-S313-QR999 может использоваться для решения большого спектра задач с различными уровнями освещенности просто за счет регулировки коэффициента усиления. Регулировка чувствительности выполнена с помощью последовательного интерфейса и может быть оптимизирована индивидуально для каждого канала цветности. Например, датчик ADJD-S313-QR999 может использоваться вместе с белым светодиодом для измерения цвета отраженного излучения. К дополнительным возможностям прибора относится спящий режим, позволяющий минимизировать энергопотребление. Рабочий температурный диапазон прибора — от 0 до +70 °С.

Для эффективной обработки информации с датчиков цвета фирма Avago Technologies производит контроллеры цвета, например HDJD-J822. Система управления уровнем освещенности и цветом (ICM) с обратной связью способна компенсировать различие скорости деградации RGB-светодиодов и поддерживать точный цвет. Система обратной связи управления уровнем освещенности и цветом состоит из трех компонентов: датчика цвета, RGB-контроллера и светодиодов.

Avago Technologies предлагает датчики цвета для следующих возможных сегментов рынка: автомобильный рынок (навигационные панели, освещение настроения, освещение приборной панели), рынок освещения (архитектурное освещение, декоративное освещение и дисплеи, внутреннее освещение, освещение жилых помещений), промышленный рынок (упаковка, маркировка и идентификация товаров, косметика — сегрегация продукта и качество цвета, текстильная промышленность — обнаружение загрязнения пряжи, цвет ткани, печатная промышленность — пигментация и цвет краски), медицинский рынок (измерение глюкозы, холестерина и кетона в крови), рынок бытовой электроники (портативный датчик цвета, датчик цвета для тканей в стиральных машинах, игровое оборудование).

Пример 1. Декоративное освещение и освещение жилых помещений (рис. 6)

Рис. 6. Система управления цветом с обратной связью с использованием датчиков цвета и контроллера цвета HDJD-J822-SCR00 от Avago Technologies

Датчик цвета используется, чтобы измерять интенсивность светодиода через некоторый промежуток времени (интенсивность светодиодов изменяется со временем) и предоставить обратную связь для управления цветом данного источника света. Датчик может использоваться вместе с контроллером цвета от Avago (HDJD-J822-SCR00) в системах управления цветом с обратной связью.

Пример 2. Обнаружение загрязнения пряжи в текстильной промышленности (рис. 7)

Рис. 7. Обнаружение загрязнения пряжи в текстильной промышленности с использованием датчиков цвета

Датчик цвета установлен в поточной линии передвижения пряжи и обнаруживает присутствие загрязнения за счет изменения цвета пряжи. Когда загрязнение обнаружено, система автоматически останавливает линию, что позволяет сократить вероятность человеческой ошибки и улучшает точность и эффективность промывки пряжи.

Пример 3. Химический анализжидкостной хроматографический химический анализатор (рис. 8)

Рис. 8. Отслеживание стадии химической реакции по цвету

Четыре датчика цвета помещены вдоль зоны химической реакции, чтобы отслеживать стадию реакции по цвету.

Датчик Цвета LEGO® Mindstorms® EV3

Датчик цвета LEGO® Mindstorms® EV3:
Датчик цвета

датчик цвета

Датчик цвета — это цифровой датчик, который может определять цвет или яркость света, поступающего в небольшое окошко на лицевой стороне датчика . Этот датчик может работать в трех разных режимах: в режиме «Цвет», в режиме «Яркость отраженного света» и в режиме «Яркость внешнего освещения» .

В режиме «цвет» датчик цвета распознает семь цветов: черный, синий, зеленый, желтый, красный, белый и коричневый, а также отсутствие цвета . Эта способность различать цвета означает, что ваш робот может быть запрограммирован таким образом, чтобы он сортировал цветные мячи или кубики, произносил названия обнаруженных им цветов или прекращал действие, увидев красный цвет.

В режиме «яркость отраженного света» датчик цвета определяет яркость света, отраженного света светодиода датчика излучающего красный свет . Датчик использует шкалу от 0 (очень темный) до 100 (очень светлый) . Это означает, что ваш робот может быть запрограммирован таким образом, чтобы он двигался по белой поверхности до тех пор, пока не будет обнаружена черная линия, или чтобы он интерпретировал идентификационную карточку с цветовым кодом.

В режиме«яркость внешнего освещения» датчик цвета определяет силу света, входящего в окошко из окружающей среды, например солнечного света или луча фонарика . Датчик использует шкалу от 0 (очень темный) до 100 (очень светлый) . Это означает, что ваш робот может быть запрограммирован таким образом, чтобы он подавал сигнал утром, когда восходит солнце, или чтобы он прекращал действие, если свет гаснет .

Режим «цвет»
Режим «яркость отраженного света»
Режим «яркость внешнего освещения»

 Частота выборки датчика цвета составляет 1 кГц.
Для наибольшей точности при выборе режима «Цвет» или «Яркость отраженного света» датчик следует расположить под прямым углом на расстоянии 10-15 мм к исследуемой поверхности, но не касаясь ее .
datchik-cveta1-1
Рисунок 1-1. Перемещение мышью программного  блока датчика цвета из палитры программирования, (расположенной в нижней части экрана) в область программ среды программирования LME. Программа использует блок «Ожидание» датчика цвета – «Сравнение» – режим «Цвет» для тестирования красного цвета.

 

datchik-cveta1-2
Рисунок 1-2. Выбор цвета или несколько цветов на которые будет реагировать датчик цвета.
datchik-cveta1-3
Рисунок 1-3. Программа использует блок «Ожидание» датчика цвета – «Сравнение» – режим «Цвет» для тестирования зеленого, синего, красного цвета.

Режим «яркость отраженного света»

datchik-cveta1-4
Рисунок 1-4. Выбор режима «яркость отраженного света» (режим сравнения).
В режиме «яркость отраженного света» (как показано на рисунке 1-4), датчик включает  красный индикатор (RGB светодиод) и  измеряет количество света, отраженного обратно к нему от объекта. Диапазон значений от 0 до 100,  0 - означает очень темный,  100 - означает очень яркий. Этот режим полезен для строки ниже. Как и в случае использования  режима «цвет», установите датчик как можно ближе к объекту для того, чтобы блокировать другие источники света, которые могли бы создавать помехи чтению отраженного сигнала самого датчика.
datchik-cveta1-5
Рисунок 1-5. Датчик цвета запрограммирован на ожидание появления яркости отражения светового потока менее 50 единиц (%). То есть, программа использует блок «Ожидание» датчика цвета – «Сравнение» – режим «Яркость отраженного света» и ждет, пока яркость света не достигнет менее 50 %.
Элементы для настройки в этом режиме являются логическое сравнение с цифровым значением от 0% до 100%. Логическое сравнение указывает микрокомпьютеру EV3, как сравнивать величину сигнала поступающего с датчика цвета (оцифрованное значения отраженного от объекта светового потока) с пороговым значением (значение, которое будет вызывать определенное поведение робота). Выбор сверху вниз: равно, не равно, больше чем, больше чем или равно, меньше и меньше чем или равно. Как показано на рисунке 1-5, программа микрокомпьютера EV3 находится в ожидании, пока показания датчика станут менее 50%.
Дополнительная информация приведена в разделе «Использование датчика цвета» в меню «Справка» программного обеспечения EV3 .

datchik-cveta-shema

Принципиальная схема датчика цвета  LEGO® Mindstorms® EV3 ( оригинал схемы фирмы  LEGO® можно скопировать здесь... )

Коротко и ясно о длине волны в зависимости от цвета cмотрим кино про свет:

Начинаем изучать датчик цвета Lego mindstorms EV3

Содержание урока

Введение:

На этом уроке мы продолжаем знакомство с датчиками набора Lego mindstorms EV3. На очереди - датчик цвета, очень важный и полезный датчик! В большинстве конструкций он является, тем, чем у человека являются глаза. Поэтому изучению датчика цвета мы посвятим два последовательных урока, но в дальнейшем курсе еще вернемся к его изучению и использованию.

 

5.1. Изучаем второй датчик - датчик цвета

Датчик цвета может работать в трех различных режимах: 

  • в режиме "Цвет" датчик может определить цвет поднесенного к нему предмета;
  • в режиме "Яркость отраженного света" датчик направляет световой луч на близкорасположенный предмет и по отраженному пучку определяет яркость предмета;
  • в режиме "Яркость внешнего освещения" датчик может определить - насколько ярко освещено пространство вокруг. 

Датчик цвета

Рис. 1

5.2. Датчик цвета. Режим "Цвет"

В режиме "Цвет" датчик цвета достаточно точно умеет определять семь базовых цветов предметов, находящихся от него на расстоянии примерно в 1 см. Это следующие цвета: "черный"=1, "синий"=2, "зеленый"=3, "желтый"=4, "красный"=5, "белый"=6 и "коричневый"=7. Если предмет удален от датчика или некорректно определяется цвет предмета - датчик информирует об этом состоянием "Без цвета"=0.

Давайте, не затягивая, перейдем к практическому занятию!

Задача №9: необходимо написать программу, называющую цвета предметов, подносимых к датчику цвета.

Если вы собирали своего тренировочного робота по инструкции этого курса, то у вас датчик цвета уже размещен внутри робота и направлен вниз. Потребуется приложить некоторые усилия, может быть даже слегка разобрать-собрать нашу конструкцию, чтобы подключить кабелем датчик цвета, например к порту "2" модуля EV3. Для отладки программы нам также понадобится несколько цветных предметов: это могут быть кирпичики конструктора Lego, полоски цветной бумаги или цветные кубики. Для лучшего результата следует взять цвета, максимально приближенные к основным, но датчик довольно неплохо справляется с распознаванием подходящих оттенков. Чтобы не снимать датчик цвета и не крепить его в другом месте, во время выполнения программы можно держать робота перевернутым вверх колесами.

Датчик цвета, на роботе

Рис. 2

5.3. Оранжевая палитра, программный блок "Переключатель"

В решении Задачи №9 нам поможет программный блок "Переключатель" Оранжевой палитры. Этот блок в зависимости от настроек выбирает для выполнения программные блоки, расположенные в одном из своих контейнеров. Рассмотрим настройку этого блока в режиме работы с датчиком цвета.

Создадим новую программу "lesson-5-9", установим в программе блок "Переключатель", выберем режим "Датчик цвета" - "Измерение" - "Цвет" (Рис. 3). В отличие от программного блока "Ожидание", программный блок "Переключатель" не ждет, пока наступит определенное событие, а проверяет текущее состояние и выполняет программные блоки, находящиеся в контейнере, сопоставленном текущему состоянию.

Программный блок "Переключатель"

Рис. 3

Рассмотрим подробнее настройки программного блока "Переключатель":

  • выбранный режим устанавливает изображение датчика цвета в блоке (Рис. 4 поз. 1),
  • порт, к которому подключен датчик, отображается в соответствующем поле блока (Рис. 4 поз. 2),
  • в настройках каждого программного контейнера выбирается значение, в соответствии с которым будут выполняться программные блоки, вложенные в этот контейнер (Рис. 4 поз. 3),
  • один из контейнеров должен быть объявленным "Вариантом по умолчанию" - в случае, если значению, полученному от датчика, не соответствует ни один контейнер, то выполняется контейнер, объявленный "Вариантом по умолчанию" (Рис.4 поз. 4),
  • Кнопка "+" добавляет программный контейнер в блоке "Переключатель" (Рис. 4 поз. 5),
  • Программный блок "Переключатель" может автоматически растягиваться, чтобы вместить все блоки, помещаемые внутрь. С помощью меток, помеченных красными стрелками, можно самому изменять размеры блока (Рис.4).

Настройки программного блока "Переключатель"

Рис. 4

 Продолжим формирование программного блока "Переключатель":

  • создадим необходимое количество контейнеров, соответствующее количеству цветов для распознавания + вариант "Без цвета",
  • в настройках контейнеров установим распознаваемые цвета,
  • вариантом по умолчанию выберем вариант "Без цвета",
  • в каждый контейнер кроме варианта "Без цвета" (этот контейнер останется пустым) поместим программный блок "Звук" зеленой палитры.
  • каждому цвету сопоставим соответствующий звуковой файл.

Формирование программного блока "Переключатель"

Рис. 5

Наш программный блок "Переключатель" значительно увеличился в размерах. Специальная кнопка (Рис. 6 поз. 1) позволяет переключить режим отображения блока на экране на "Вид с вкладками". Изменим размеры блока для комфортного визуального отображения.

Блок "Переключатель" Вид с вкладками (нажмите для увеличения)

Рис. 6

Осталось вставить наш настроенный программный блок "Переключатель" внутрь программного блока "Цикл" Оранжевой палитры. Программа готова! Загрузим её в робота и протестируем работу! (Рис. 7)

Решение задачи 9 (нажмите для увеличения)

Рис. 7

5.4. Оранжевая палитра, программный блок "Прерывание цикла"

Добавим в нашу программу движение. Сделаем следующее поле для выполнения задания:

  • Возьмем белый лист бумаги формата A4 или A3;
  • Нанесем на него последовательно, на равном расстоянии несколько цветных полос. Полосы можно наклеить из цветной бумаги, цветной изоленты или нарисовать и закрасить;
  • можете также загрузить подготовленное изображение и распечатать его на цветном принтере;
  • Последнюю полосу сделаем черного цвета (Рис. 8).

Подготовленное поле для Задачи №10

Рис. 8

Задача №10: необходимо написать программу прямолинейного движения робота, называющего цвета полос, над которыми он проезжает. При достижении черной полосы робот проговаривает "Stop" и останавливается.

За основу решения данной задачи возьмем программу, решающую Задачу №9. При решении Задачи №10 нам потребуется прервать выполнение цикла. Этой цели служит программный блок "Прерывание цикла" Оранжевой палитры. С помощью данного блока можно организовать выход из цикла, заданного параметром "Имя прерывания" (Рис. 9 поз. 1).

Программный блок "Прерывание цикла"

Рис. 9

Попробуйте решить Задачу №10 самостоятельно, не подглядывая в решение.

Решение Задачи №10

  1. Внутрь цикла перед программным блоком "Переключатель" добавим программный блок "Рулевое управление", тем самым заставим нашего робота двигаться (Рис. 10 поз. 1). Во время движения робот будет проверять текущее состояние датчика цвета и произносить название цвета. Если полоски будут широкими, а робот будет двигаться медленно, то, возможно, он станет произносить название цвета более одного раза, так как проверка цвета будет происходить неоднократно. Если такое положение дел вас не устроит - увеличьте скорость робота, чтобы он быстрее проезжал цветные полосы.
  2. В соответствии с условием задачи нам надо изменить поведение контейнера программного блока "Переключатель" для черного цвета.
  3. В программном блоке "Звук" изменим звуковой файл "Black" на "Stop" (Рис. 10 поз. 2).
  4. Добавим в контейнер программный блок, выключающий моторы (Рис. 10 поз. 3).
  5. Нам требуется прервать выполнение программного блока "Цикл", чтобы завершить выполнение программы. Для этого поместим в контейнер программный блок "Превывание цикла" Оранжевой палитры (Рис. 10 поз. 4). У данного программного блока существует только одна настройка - название прерываемого цикла. В сложной программе со множеством циклов важно правильно устанавливать эту настройку, чтобы остановить выполнение нужного цикла (Рис. 10 поз. 5). В нашей программе за программным блоком "Цикл" отсутствуют другие программные блоки, поэтому программа завершится.

Решение задачи №10 (нажмите для увеличения)

Рис. 10

Что такое датчик цвета? | Основы работы с датчиками: Вводное руководство по датчикам

Датчик цвета - это тип «фотоэлектрического датчика», который излучает свет от передатчика, а затем обнаруживает свет, отраженный от объекта обнаружения с помощью приемника.
Датчик цвета может определять интенсивность принимаемого света для красного, синего и зеленого соответственно, что позволяет определять цвет целевого объекта.

Есть два типа датчиков цвета. Один освещает объект светом с широкой длиной волны и различает три типа цветов в приемнике.Другой тип освещает объект тремя типами света (красным, синим и зеленым) независимо.
В обоих сценариях определяется интенсивность принятого света красного, синего и зеленого цветов и вычисляется соотношение полученного света.

Если на красном объекте отображается свет с красной, синей и зеленой длинами волн, будет отражен только красный свет.
* Белый кружок на схеме представляет собой источник белого света.

Principle

Для белого объекта отражаются все три цвета: красный, синий и зеленый.
* Белый кружок на схеме представляет собой источник белого света.

Principle

Соотношение красного, зеленого и синего отражений зависит от цвета объекта.

Цвет объекта Отраженный свет
Красный Зеленый Синий
Красный
Желтый
Зеленый
Синий
Белый
Черный

Вычисляя соотношение интенсивности получаемого красного, зеленого и синего света, можно различать различия в цвете или внешнем виде объекта.

Principle Principle

Различия могут быть обнаружены
Слева: полученное соотношение освещенности 1: 1: 1
Справа: полученное соотношение освещенности 4: 4: 1

.Датчик цвета

V3 - REV Robotics

Этот датчик может использоваться для считывания и сравнения цветов, а также имеет встроенный инфракрасный (оптический) датчик приближения и белый светодиод для активного освещения цели. Поддерживает высокоскоростную связь I2C (400 кГц), а также чтение регистров с автоматическим приращением, что позволяет пользователю возвращать все данные регистра цвета и регистра состояния в одной команде чтения вместо 4 отдельных команд чтения.

Версия 3 датчика цвета REV представляет новый чип датчика от Broadcom в связи с окончанием срока службы датчика V1 / V2.Физический форм-фактор такой же, как у V2, однако в FTC SDK есть некоторые незначительные изменения. Обязательно обновите SDK до последней версии и настройте своего робота для использования «REV Color Sensor V3». Значения цвета не будут согласовываться между датчиками V2 и V3.

Характеристики

  • Встроенный белый светодиод
    • Питание светодиода переключается с помощью встроенного переключателя
  • Поддерживает стандартный (100 кГц) или высокоскоростной (400 кГц) I2C
  • Встроенный инфракрасный датчик и датчик приближения

Технические характеристики

  • Максимальное рабочее напряжение: 3.3В
  • Тип датчика: I2C
  • Адрес I2C: 0x52
  • Деталь датчика цвета: APDS-9151
  • Каналы измерения: красный, зеленый, синий, альфа и приближение
  • Диапазон датчика приближения: 1–10 см
  • Монтажные отверстия: 2 отверстия M3 с шагом 32 мм
  • Размеры: 41,7 мм x 17 мм x 15 мм

FRC 2020 Бесконечные ресурсы перезарядки

  • FRC Kickoff Kit of Parts Датчик Содержимое комплекта
    • QTY 1 - Датчик цвета V3
    • QTY 1 - 4-контактный кабель JST PH на 4-контактный кабель roboRIO I2C

Состав комплекта

КОЛ-ВО 1 - Датчик цвета V3
КОЛ-ВО 1 - Кабель, 4-контактный JST PH, 30 см

Обратите внимание, что кабель с 4-контактного JST PH на 4-контактный roboRIO I2C, входящий в комплект FRC 2020 Kickoff Kit, не входит в базовый комплект датчика цвета V3 от REV Robotics.Если вам нужны дополнительные кабели FRC, заказывайте их отдельно здесь: REV-11-1729.

Документация

канадских долларов .

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *