Это старая версия документа.


Датчик линии TCRT5000 аналоговый

Описание

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

Результатом работы датчика является аналоговый сигнал от 1023 до 1, в зависимости от цвета. Максимальное значение 1023 - означает, что под датчиком черный цвет или пустота, в зависимости от расстояния до белого (светлого) цвета или при изменении оттенка цвета, пропорционально уменьшается величина сигнала вплоть до 1.

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

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

  • Напряжение питания: 3-5 В
  • Максимальный потребляемый ток: 25 мА
  • Рекомендуемое расстояние до измеряемого объекта: 3-20 мм

Физические размеры

  • Модуль Д х Ш х В: 43 х 12 х 10 мм

Плюсы использования

  • Прост в подключении
  • Определение не только белого и черного, но также и оттенков серого цвета

Минусы использования

  • Отсутствие цифрового сигнала (для прямого подключения к исполнительному устройству)

Файлы для загрузки

Пример подключения и использования

Пример В примере иллюстрируется подключение датчика к контроллеру, получение значения с аналогового вывода, вывод полученного значения в монитор Serial - порта. (Пример тестировался на контроллере Smart UNO)

Шаг 1. Соберите необходимые компоненты

Шаг 2. Соедините все компоненты

Схема подключения:

Шаг 3. Загрузите скетч на контроллер

Скетч для загрузки:

const int line_sensor = A0; // вывод подключения сигнальной ножки датчика линии
 
void setup() {
  Serial.begin(9600); // инициализация Serial-порта
 
}
 
void loop() {
  int value = analogRead(line_sensor); // чтение значения с вывода подключения датчика
  Serial.println(value); // вывод полученного значения в монитор Serial порта
  delay(500); // задержка в 500 мс
}

Шаг 4. Результат

Распечатайте на лазерном принтере (или нарисуйте маркерами или чем-либо другим) различные фигуры разными оттенками серого и чёрного цвета. Посмотрите как будет изменяться значение в мониторе порта. Затем посмотрите какое значение получается при поднесении к белому листу.