Инструменты пользователя

Инструменты сайта


ehlektronika:datchiki:datchik_cveta

Датчик цвета

Датчик цвета

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

  • 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 (внешнее изменение)