Принцип работа датчика линии: при подаче питания на модуль, инфракрасный светодиод начинает излучать свет, который отражаясь от белой поверхности попадает на фототранзистор. В таком режиме на выводе будет установлена логическая единица. Как только в зону видимости датчика попадает чёрный объект, световой поток, поглощаясь этим самым объектом, перестает доходить до фототранзистора и компаратор переключает вывод в логический ноль.
Датчик нужен для того, чтобы робот мог следовать по заранее нарисованной черной линии, а 2 датчика ему для того чтобы понимать в какую сторону он с нее съехал и мог вырулить на неё обратно.
Подключение датчика линии
Рисунок. Наименование портов Hobot L
Подключите датчик линии к порту 1 Hobots LЕсли под датчиком черное - включить мотор
Иначе - выключить мотор
Сделаем так, чтобы робот шел по белому полю и останавливался на черной линии:
Если датчик линии на белом - робот движется вперёд
Иначе - робот стоит
Результат условия цифровой ввод пин “11”:
Чтобы робот двигался именно в том направлении, в котором нужно, добавим управление направлениями с использованием контактов 4 и 7 (подробнее см. занятие по управлению направлениями моторов). Для упрощения понимания программы создадим через Мои блоки и используем в ветвлении функции Вперёд и Стоп:
Определить Вперёд:
Определить Стоп:
Общий алгоритм для движения по линии с использованием одного датчика линии, определяющего, черная линия под ним или белое поле:
Если датчик на белом - ехать Вперед Влево
Если датчик на черном - ехать Вперед Вправо
Определить Вперёд Влево:
Определить Вперёд Вправо:
Определить Вперёд Влево:
Определить Вперёд Вправо: