Цифровой датчик линии

Цифровой датчик линии призван отличать тёмную поверхность от светлой.

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

Пример использования с Arduino

Проверим датчик в действии с платформами Arduino. На выходе сенсора цифровой сигнал. Для быстрого и удобного подключения используйте Troyka Shield.

Схема устройства

Код программы

digital-line-sensor.ino
// пин датчика линии
#define SENSOR_LINE_PIN A0
 
void setup() {
  // открываем последовательный порт
  Serial.begin(9600);
}
 
void loop() {
  // считываем значение с датчика
  bool signal = digitalRead(SENSOR_LINE_PIN);
  if ( !signal ) {
    // если сигнал ноль
    // выдаем предупреждение
    Serial.println("Warning! Out of table!");
  } else {
    // если сигнал единица
    Serial.println("OK! Above table!");
  }
 
  delay(100);
}

После загрузки скетча — откройте монитор Serial-порта. Проведите датчиком сначала над столом, а потом за краем стола. При выходе за край стола на мониторе должно возникнуть предупреждение.

Видеообзор

Элементы платы

Troyka-контакты

Датчик подключается к управляющей электронике по трём проводам.

  • Питание (V) — красный провод. На него должно подаваться напряжение 5 В (или 3,3 В).
  • Земля (G) — чёрный провод. Должен быть соединён с землёй микроконтроллера.
  • Сигнальный (S) — жёлтый провод. Подключается к цифровому входу микроконтроллера. Через него датчик передает микроконтроллеру бинарное значение, ноль или единицу.

Оптопара TCRT5000

Оптопара TCRT5000 — это собранные в одном корпусе светоиод (синий на рисунке) и фототранзистор n-p-n типа (чёрный на рисунке). Светодиод излучает в инфракрасном диапазоне на длине волны 950 нм. Свет отражается от поверхности и попадает на фототранзистор.

Нужно иметь ввиду, что показания датчика также зависят от расстояния до поверхности. Когда датчик слишком низко, перегородка между диодом и фототранзистором оптопары мешает транзистору принимать отраженный свет. Когда датчик слишком высоко, отраженный свет рассеивается и не доходит до датчика. В обоих случаях датчик выдаст 0.

Инвертор

На борту цифрового датчика расположен инвертирующий триггер Шмитта. При низком напряжении на фототранзисторе — на выходе датчика единица, при высоком — ноль.

Переменный резистор

Переменный резистор позволяет настраивать датчик линии на различные оттенки серого. Если повернуть ручку резистора до упора против часовой стрелки (максимальное сопротивление), то датчик будет выдавать логический ноль над поверхностью светлого оттенка серого. Если повернуть ручку до упора по часовой стрелке (минимальное сопротивление) то датчик будет реагировать только на самые тёмные оттенки. Варьируя сопротивление, вы можете настроить датчик на нужный вам оттенок.

Сигнальный светодиод

Сигнальный светодиод загорается, когда датчик находится над светлой (по его мнению) поверхностью. Наличие диода позволяет более точно откалибровать датчик. Оттенок серого, над которым он загорается в зависимости от настройки можно считать реперной точкой.

Принципиальная и монтажная схемы

Характеристики

  • Чип сенсора: оптопара TCRT5000
  • Напряжение питания: 3,3-5 В
  • Максимальный потребляемый ток: менее 10 мА

Ресурсы