Датчик линии – это оптический модуль, предназначенный для обнаружения препятствий в виде белых или чёрных линий. Основным его элементом является оптопара TCRT5000, состоящая из инфракрасного светодиода и фототранзистора. Внешний вид датчика показан на рисунке №1.
Согласно описанию, инфракрасный датчик излучает свет с длиной волны 950 нм и может точно определять препятствия на расстоянии от 1 мм до 25 мм. В состав модуля входят компаратор, подстроечный резистор и контрольный светодиод. Подстроечным резистором можно настроить порог срабатывания датчика на различные оттенки черного цвета. Когда датчик срабатывает, контрольный светодиод загорается, а на выходе датчика появляется логический ноль. Для удобства монтажа датчика предусмотрены крепежные отверстия по обе стороны оптического элемента. Изоляция между светодиодом и фототранзистором предотвращает их взаимное влияние.
Принцип работы датчика прост: инфракрасный светодиод излучает свет, который отражается от поверхности и попадает на фототранзистор, устанавливая логическую единицу на выходе SIGNAL. При появлении черного объекта в зоне видимости датчика световой поток перестает доходить до фототранзистора, что заставляет компаратор переключить выход SIGNAL в логический ноль. Этот процесс наглядно показан на рисунке ниже.
При проектировании устройств с использованием датчика линии, необходимо чётко следить за границами приближения/удаления модуля от исследуемой поверхности. Если фотоэлемент будет слишком приближен, то перегородка не даст пройти световому потоку от ИК-диода к фототранзистору, даже при самой белой поверхности. Та же ситуация произойдёт и при чрезмерном удалении фотоэлемента, так как весь световой поток попросту рассеется в воздушной среде не дойдя до объекта-отражателя.
Технические характеристики
Из основных технических характеристик можно выделить следующие:
- Расстояние уверенного определения препятствия: 1-25 мм;
- Диапазон рабочего напряжения питания: 3,3 – 5 В;
- Тип используемого ИК датчика: TCRT5000;
- Длина волны излучения: 950nm;
- Тип используемого компаратора: LM393;
- Максимальная нагрузка на выход компаратора: 15 мА;
- Физические размеры модуля: 40х11х11 мм.
Подключение к Arduino
В своём составе, датчик линии имеет всего 3 выхода (VCC, GND и S/OUT). Выводы VCC и GND предназначены для подачи питания на модуль. Вывод S (OUT) служит для регистрации срабатываний. Ввиду того, что датчик способен выдавать только логические «0» и «1», вывод S (OUT) можно цеплять на любой цифровой пин Arduino. На рисунке №3 изображена схема подключения датчика у которого сигнальный выход идёт на пин D2 Arduino.
Работа с датчиком или группой датчиков на программном уровне сводится к простейшей обработке состояний цифровых входов и не должна вызывать сложностей даже у начинающего программиста. Ниже приведён скетч с комментариями, позволяющий отслеживать моменты срабатывания одного датчика согласно схемы на рисунке.
// Макроопределение для подключения датчика линии к пину №2 Arduino #define PIN_SENSOR 2 void setup() { // Инициализируем работу с серийным портом для вывода отладочной информации Serial.begin(9600); // Настраиваем на вход пин, к которому подключен датчик линии. // Здесь нет необходимости включать внутреннюю подтяжку пина к VCC, т.к. // модуль сам заботится о формировании логической "1" при отсутствии цели pinMode(PIN_SENSOR, INPUT); } void loop() { // Контролируем датчик с периодичностью около 200мс if(digitalRead(PIN_SENSOR)) { // Датчик не срабатывает Serial.println("LIGHT"); } else { // Датчик срабатывает Serial.println("BLACK"); } delay(200); }
При обнаружении черной линии в зоне видимости фотоэлемента программа будет непрерывно выводить сообщение «BLACK» в терминал, а если линия отсутствует, то будет выводиться сообщение «LIGHT».