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

Урок 29. Тахометр. Определяем скорость вращения при помощи датчика линии

Тахометр собранный с использованием датчика линии прост в подключении. Вам не нужно вносить конструктивные изменения в деталь, скорость вращения которой требуется измерить: сверлить отверстия, делать прорези, устанавливать дополнительные элементы и т.д. Достаточно нанести на неё контрастную линию (чёрную на светлой поверхности или белую на тёмной) и поднести датчик линии, Вы сразу получите точный результат, количество оборотов в минуту. Скетч не нуждается в корректировке, независимо от того, какого цвета будет линия.

Нам понадобится:

Для реализации проекта нам необходимо установить библиотеку:

  • Библиотека iarduino_4LED (для работы с четырёхразрядным LED индикатором).

О том как устанавливать библиотеки, Вы можете ознакомиться на странице Wiki — Установка библиотек в Arduino IDE .

Видео:

Схема подключения:

LED индикатор подключается к любым двум выводам Arduino (как цифровым, так и аналоговым), номера указываются в скетче. Датчик линии подключается к любому аналоговому входу, номер указывается в скетче.

В данном уроке, LED индикатор подключён к цифровым выводам 2 и 3, а датчик линии подключён к аналоговому входу A0.

Источник

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

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

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

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

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

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

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

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

Видеообзор

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

Troyka-контакты

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

Оптопара TCRT5000

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

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

Инвертор

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

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

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

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

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

Источник

Восьмиканальный датчик линии Octoliner v1: инструкция, примеры работы и документация

Езда по линии — самое зрелищное и азартное соревнование по робототехнике. Следуя по чёрной линии, робот должен быстрее всех добраться до финиша. В этом ему помогает датчик линии: при помощи оптических сенсоров робот «видит» чёрную линию и следует по ней. Чем точнее датчик, тем быстрее робот преодолеет дистанцию и придёт к финишу.

Установите на «Робоняшу» целую сборку из датчиков линии, и ваш робот станет чемпионом в этом виде соревнований. Ни одна линия не ускользнёт от его восьмиканального зрения.

Видеообзор

Как это работает

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

Сенсоры линии подключены к отдельному 32-разрядному микроконтроллеру STM32F030F4P6 с вычислительным ядром ARM Cortex M0. Контроллер считывает данные с восьми датчиков линии и передаёт их управляющей платформе по интерфейсу I²C/TWI. Адрес модуля по умолчанию 0x42 , но его можно изменить, если захотите подключить несколько модулей.

Интенсивность излучения и чувствительность фотоприёмников можно программно регулировать.

Примеры работы для Arduino

Подключение датчика

К платформе Arduino сенсорный модуль удобнее подключать через плату расширения: например, через Troyka Shield.

При помощи трёхпроводных шлейфов подключите модуль к питанию V и G и к пинам шины I²C — SDA и SCL .

Получение данных с датчиков линии

Для запуска примеров скачайте и установите библиотеку Octoliner.

Попробуем получить значения с датчиков сборки и вывести полученные значения на монитор serial-порта. Для этого создадим объект для работы с датчиком, выставим чувствительность фотоприёмников и настроим яркость свечения инфракрасных светодиодов.

Поиск линии

Теперь научим датчики определять нахождение линии. Будем использовать диапазон от –1 до 1:

Для плавной езды по линии рекомендуем использовать сборку датчиков совместно с ПИД-регулятором.

Примеры работы для Espruino

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

К платформе Iskra JS сенсорный модуль удобнее подключать через плату расширения: например, через Troyka Shield.

При помощи трёхпроводных шлейфов подключите модуль к питанию V и G и к пинам шины I²C — SDA и SCL .

Получение данных с датчиков линии

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

Поиск линии

Теперь научим датчики определять нахождение линии. Будем использовать диапазон от –1 до 1:

Для плавной езды по линии рекомендуем использовать сборку датчиков совместно с ПИД-регулятором.

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

Плата крепится к роботу при помощи шести ушек, которые сделаны под размер винтов М3.

Микроконтроллер STM32F030F4P6

Мозг сенсорной сборки — мощный 32-разрядный микроконтроллер STM32F030F4P6 с вычислительным ядром ARM Cortex M0. Контроллер считывает данные с восьми датчиков линии и передаёт управляющей платформе по интерфейсу I²C/TWI.

Микросхема MCP6004

На борту модуля расположены два четырёхканальных операционных усилителя MCP6004, при помощи которых можно отрегулировать чувствительность сразу восьми сенсоров.

Понижающий DC-DC

Преобразователь NCP582LSQ33 с выходом 3,3 В обеспечивает питание логической части модуля. Максимальный выходной ток 150 мА.

Светодиодная индикация

На плате расположены два светодиода — индикаторы данных и питания.

Имя светодиода Назначение
ACT Отвечает за обмен данными между управляющей платформой и сенсорной сборкой. При обмене данными индикатор мигает.
PWM Показывает чувствительность датчиков: чем больше чувствительность, тем ярче горит светодиод.

Troyka-контакты

На модуле выведен разъём Troyka-контактов:

Входной сенсорный канал

На модуле расположено восемь датчиков линии на оптопаре TCRT5000.

Оптопара TCRT5000 — это светодиод и фототранзистор, собранные в одном корпусе. Светодиод излучает инфракрасный свет, длина волны 950 нм. Световой поток отражается от поверхности и попадает на фототранзистор, где преобразуется в электрический сигнал. Чем светлее поверхность, тем больше отражается света. Чем темнее — тем меньше.

Показания датчика зависят не только от цвета линии, но и от расстояния сенсора до поверхности. Если расстояние менее 3 мм, то перегородка между ИК-излучателем и приёмником мешает транзистору принимать отражённый свет. При расстоянии более 15 мм отражённый свет рассеивается и не доходит до приёмника.

Источник

Как устроен и работает датчик линии

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

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

Аналоговый датчик линии

Аналоговый датчик линии умеет не просто различать черную и белую поверхности, он также способен реагировать на другие цвета и на их промежуточные оттенки. Кроме этого аналоговый датчик линии позволяет измерять расстояние до поверхности выбранного цвета, будучи предварительно откалиброван соответствующим образом. С его помощью получится точно отследить процесс пересечения границы черное-белое и при необходимости управлять данным процессом с ориентиром на расстояние или оттенок.

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

С датчика, когда он получает питание, на рабочую поверхность направлен луч инфракрасного светодиода, излучающего волну длиной 940 нм. Отражаясь от поверхности напротив, луч возвращается назад, и попадает на расположенный рядом с инфракрасным светодиодом фототранзистор структуры NPN, с коллектора которого снимается полезный сигнал.

Поскольку датчик аналоговый, то выходной сигнал будет тем меньше, чем светлее поверхность под ним или чем ближе она расположена, то есть в распоряжении разработчика весь диапазон величин напряжения — почти от нуля до почти напряжения питания. При этом потребляемый устройством ток находится в районе 10 мА при напряжении питания 5 вольт.

Так, теоретически при полном отражении луча, на коллекторе фототранзистора будет минимум напряжения, а при полном поглощением поверхностью — максимум напряжения. Если поверхность находится дальше — напряжение на выходе датчика будет больше, если она ближе — выходное напряжение меньше. Датчик подключается к управляющей электронике тремя проводами: общий провод, провод питания и сигнальный провод.

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

Здесь, как и в аналоговом датчике, инфракрасный светодиод излучает волну с длиной 950 нм (в инфракрасном диапазоне). ИК-луч отражается от поверхности напротив и попадает на фототранзистор. На выходе получаем либо логическую 1 (напряжение высокого уровня), либо 0 (напряжение низкого уровня).

Чувствительность датчика зависит от того как он откалиброван, и связана с расстоянием до поверхности. Кроме того его можно откалибровать на оттенок серого или любой другой цвет, а также на максимальное расстояние.

Если датчик расположить слишком низко, то прямой ИК-луч отразится рано и попадет сразу обратно или на перегородку между светодиодом и фототранзистором, поэтому есть некое минимальное расстояние. Если же датчик установлен слишком далеко — луч преждевременно рассеется, не дойдя обратно. Поэтому есть максимальное расстояние.

Выходной сигнал получается здесь в цифровой форме благодаря инвертирующему триггеру Шмитта. Когда NPN-фототранзистор не принимает луч, на его коллекторе максимальное рабочее напряжение, следовательно на выходе датчика 0. Когда луч принят, на выходе 1.

Датчик может быть легко настроен на определенный оттенок, либо для работы на определенном расстоянии.

Для калибровки (регулировки чувствительности) ручку подстроечного резистора поворачивают в ту или иную сторону. Так можно добиться срабатывания только на самый темный оттенок или на самый светлый, либо если цвет преграды напротив датчика неизменен — только на расстояние не дальше установленного.

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

Источник

Adblock
detector