Общие сведения
Датчик линии выполнен на оптопаре TCRT5000. Установите два аналоговых сенсора линии на днище мобильной платформы, чтобы заставить робота не выезжать за пределы территории обозначенной контуром или следовать за нарисованной линией.
Сенсор способен не только отличать чёрную поверхность от белой, но и фиксировать все оттенки серого. Это дает вам возможность точно контролировать процесс перехода границы от черного к белому и поможет роботу не сбиться с пути.
Примеры работы
Датчик общается с микроконтроллером через аналоговый сигнал. На роль контроллера для работы с датчиком линии рассмотрим платформу Arduino Uno.
Что понадобится
- 1× Arduino Uno
- 1× Датчик линии TCRT5000 / Аналоговый (Trema-модуль)
- 1× Соединительные провода «папа-мама»
- 1× Кабель USB (A — B)
Схема устройства
Для быстрой сборки и отладки устройства рекомендуем взять плату расширения Trema Shield, которая надевается сверху на Uno R3 методом бутерброда.
Исходный код
Выведем показания аналогового датчика линии в консоль. Для наглядного теста сенсора понадобится шкала от чёрного к белому со всеми оттенками серого, которую можно распечатать на обычном принтере.
// Определяем ядро платы Arduino // для установки рабочего напряжения #if defined(__AVR__) #define OPERATING_VOLTAGE 5.0 #else #define OPERATING_VOLTAGE 3.3 #endif // GPIO пин с поддержкой АЦП constexpr auto PIN_SENSOR = A0; void setup() { // Открываем Serial-порт Serial.begin(9600); } void loop() { // Считываем данные с датчика линии int valueSensor = analogRead(PIN_SENSOR); // Переводим данные с датчика в напряжение float voltageSensor = valueSensor * OPERATING_VOLTAGE / 1024.0; // Выводим выходное напряжение в Serial-порт Serial.print("Value = "); Serial.print(voltageSensor); Serial.println(" Volts"); // Ждём 100 мс delay(100); }
Элементы платы
Оптопара TCRT5000
Датчик линии выполнен на оптопаре TCRT5000, которая состоит из двух элементов — ИК-светодиода (излучателя) и фототранзистора (приемника). Когда светодиод излучает инфракрасный свет, световой поток отражается от поверхности и попадает на фототранзистор, где преобразуется в электрический сигнал. Темный цвет отражает меньше света, светлый — больше.
Показания датчика линии зависит от цвета объекта и расстояния сенсора до детектируемой поверхности.
- Цвет объекта. Чем белее отражающая поверхность, тем выше уровень напряжение на выходе «S». Чем чернее отражающая поверхность, тем ниже уровень сигнала на выходе «S». Пропасть над столом равносильно максимально черной поверхности.
- Расстояние сенсора до детектируемой поверхности. Датчик способен выдавать «адекватные» показания при расстоянии между сенсором и детектируемой поверхностью в диапазоне от 3 до 12 мм. При расстоянии менее 3 миллиметров — перегородка между ИК-излучателем и приемником мешает сенсору принимать отраженный свет. А при расстоянии более 12 миллиметров — отраженный свет рассеивается и не доходит до приемника.
Trema-контакты
Датчик линии подключается к управляющей электронике через группу из трёх контактов.
Контакт | Функция | Подключение |
---|---|---|
S | Выходной сигнал сенсора | Подключите к пину ввода-вывода микроконтроллера с поддержкой АЦП. |
V | Питание | Подключите к питанию микроконтроллера. |
G | Земля | Подключите к земле микроконтроллера. |