Цифровой датчик линии призван отличать тёмную поверхность от светлой.
Разместите датчик на нижней поверхности мобильной платформы, чтобы научить вашего робота двигаться вдоль линии, не выезжать за пределы территории или не сваливаться с края стола.
Проверим датчик в действии с платформами Arduino. На выходе сенсора цифровой сигнал. Для быстрого и удобного подключения используйте Troyka Shield.
// пин датчика линии #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-порта. Проведите датчиком сначала над столом, а потом за краем стола. При выходе за край стола на мониторе должно возникнуть предупреждение.
Датчик подключается к управляющей электронике по трём проводам.
Оптопара TCRT5000 — это собранные в одном корпусе светоиод (синий на рисунке) и фототранзистор n-p-n типа (чёрный на рисунке). Светодиод излучает в инфракрасном диапазоне на длине волны 950 нм. Свет отражается от поверхности и попадает на фототранзистор.
Нужно иметь ввиду, что показания датчика также зависят от расстояния до поверхности. Когда датчик слишком низко, перегородка между диодом и фототранзистором оптопары мешает транзистору принимать отраженный свет. Когда датчик слишком высоко, отраженный свет рассеивается и не доходит до датчика. В обоих случаях датчик выдаст 0.
На борту цифрового датчика расположен инвертирующий триггер Шмитта. При низком напряжении на фототранзисторе — на выходе датчика единица, при высоком — ноль.
Переменный резистор позволяет настраивать датчик линии на различные оттенки серого. Если повернуть ручку резистора до упора против часовой стрелки (максимальное сопротивление), то датчик будет выдавать логический ноль над поверхностью светлого оттенка серого. Если повернуть ручку до упора по часовой стрелке (минимальное сопротивление) то датчик будет реагировать только на самые тёмные оттенки. Варьируя сопротивление, вы можете настроить датчик на нужный вам оттенок.
Сигнальный светодиод загорается, когда датчик находится над светлой (по его мнению) поверхностью. Наличие диода позволяет более точно откалибровать датчик. Оттенок серого, над которым он загорается в зависимости от настройки можно считать реперной точкой.