Датчик линии TCRT5000 цифровой

Описание

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

Результатом работы датчика является цифровой сигнал, в зависимости от цвета. Единица - означает что под датчиком черный цвет или пустота, ноль - белый (светлый). Логический ноль сопровождается загоранием зеленого светодиода, расположенного на плате. Это позволяет контролировать работу датчика, а также легко выполнять его калибровку. Потенциометр, расположенный на плате позволяет регулировать чувствительность датчика в зависимости от расстояния до объекта.

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

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

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

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

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

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

  • Прост в подключении
  • Возможность непосредственного подключения к исполнительному устройству

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

  • Невозможность определения промежуточных значений (оттенков серого)

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

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

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

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

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

const int line_sensor = 8; // вывод подключения сигнальной ножки датчика линии

void setup() {
  Serial.begin(9600); // инициализация Serial-порта

}

void loop() {
  bool isLine = digitalRead(line_sensor); // чтение значения с вывода подключения датчика
  if (isLine) { //если это линия, 
    Serial.println("There is line"); // то вывести сообщение
  }
  else { // если линии нет
    Serial.println("There is no line"); // сообщить и об этом
  }
  delay(500); // задержка в 500 мс
}