Автономный робот на основе Arduino с возможностью дистанционного управления. Какие бывают датчики для роботов? — Датчики измерения влажности

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

Тактильные сенсоры

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

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

Оптические датчики

При построении робота просто не обойтись без оптических датчиков. С помощью них аппарат будет «видеть» все вокруг. Эти сенсоры работают с помощью фоторезистора. Датчик отражения (излучатель и приемник) позволяет определять белые или черные участки на поверхности, что позволяет, к примеру, колесному роботу двигаться по нарисованной линии или определить близость препятствия. Источником света часто служит инфракрасный светодиод с линзой, а детектором — фотодиод или фототранзистор.

Отдельного внимания заслуживают видеокамеры. По сути, это глаза робота. Этот тип датчиков на сегодняшний широко используется благодаря росту технологий в сфере обработки изображений. Как понимаете, кроме роботов, применений видеокамерам достаточно: системы авторизации, распознавания образов, обнаружения движения в случае охранной деятельности и т.п.

Звуковые датчики

Эти датчики служат для безопасного передвижения роботов в пространстве за счет измерения расстояния до препятствия от нескольких сантиметров до нескольких метров. К ним относятся микрофон (позволяет фиксировать звук, голос и шум), дальномеры, которые представляют собой датчики, измеряющие расстояние до ближайших объектов и другие ультразвуковые сенсоры. УЗ особенно широко используются практически во всех отраслях робототехники.

Работа ультразвукового датчика основана на принципе эхолокации. Вот как это работает: динамик прибора издает УЗ импульс на определенной частоте и замеряет время до момента его возвращения на микрофон. Звуковые локаторы излучают направленные звуковые волны, которые отражаются от объектов, и часть этого звука снова поступает в датчик. При этом время поступления и интенсивность такого возвратного сигнала несут информацию о расстоянии до ближайших объектов.

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

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

Датчики положения

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

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

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

Датчики наклона

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

Инфракрасные датчики

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

В режиме "маяк", данный датчик посылает постоянные сигналы, по которым робот сможет определять примерное направление и удаленность маяка. Это позволяет запрограммировать робота таким образом, чтобы он всегда следовал в сторону этого маяка. Низкая стоимость этого датчика позволяет устанавливать его практически на все самодельные роботы, и таким образом, оснащать их способностью уходить от препятствий.

Датчики температуры

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

Мы рассмотрели все самые основные сенсоры, которые используются в робототехнике и позволяют роботу быть более ловким, маневренным и производительным.

Чтобы наработать опыт в работе с платой Arduino, так сказать в качестве учебного опыта и просто для интереса был создан этот проект. Целью проекта было создать автомобиль, который может автономно перемещаться, объезжая различные препятствия и не сталкиваясь с ними.

Шаг 1: Список компонентов и стоимость проекта

1. Игрушечная Машинка с радиоуправлением (radio controlled).

Стоит эта штука около 20 баксов, если у вас есть возможность потратить больше, то можете использовать и получше.

2. Arduino Uno микроконтроллер - 25 долларов

3. Motor shield для контроля электромоторов - 20 долларов

4. GPS для навигации. Adafruit Ultimate GPS Shield - 50 долларов

5. Магнитометр в качестве компаса для навигации. Adafruit HMC5883 Magnetometer - 10 долларов

6. Ультразвуковой датчик расстояния, чтобы избегать препятствия. HC-SR04 - 6 долларов

7. ЖК-дисплей для отображения состояния транспортного средства и информации. LCD Display Blue 1602 IIC, I2C TWI - 6 долларов (можете использовать другой)

8. Инфракрасный датчик и пульт.

9. Arduino sketch (программа C++).

10. Тонкая древесная плита в качестве монтажной платформы.

11. Макетные платы. Одна длинная и узкая, а другая маленькая, чтобы отдельно установить на ней магнитометр подальше от других элементов.

12. Перемычки.

13. Набор для монтажа ультразвукового датчика - 12 долларов

14. Паяльник и припой.

Итак, в общем на всё ушло около 150 долларов, это при условии, если закупать все эти компоненты, поскольку возможно у вас уже что то имеется из этого.

Шаг 2: Шасси и монтаж платформы

Радиоуправление изъяли из ненужной игрушки, которая стоила 15 баксов.

Машинка здесь с двумя двигателями. С помощью одного движка пультом контролируется скорость движения робота, а с помощью другого контролируется рулевое управления.

Использовалась тонкая доска в качестве монтажной поверхности, на которой были прикреплены макетные платы, Arduino, ЖК и т.д. Батарейки размещены под доской и провода пропущены через просверленные отверстия.

Шаг 3: Программа

Arduino управляется через программу С ++.

Исходный код

RC_Car_Test_2014_07_20_001.ino

Шаг 4: ЖК-дисплей

Во время работы экран отображает следующую информацию:

Ряд 1:

1. TH - Задача, курс к текущей маршрутной точки

2. CH - Текущее направление робота

Ряд 2:

3. Err - Направление по компасу, показывает в каком направлении движется робот (влево или вправо)

4. Dist - Фокусное расстояние (в метрах) до текущей маршрутной точки

Ряд 3:

5. SNR - Sonar расстояние, то есть расстояние до любых объектов в передней части робота

6. Spd - Скорость робота

Ряд 4:

7. Mem - Память (в байтах). В памяти Arduino имеется 2 КБ

8. WPT n OF x - Показывает, где робот находится в списке маршрутных точек

Шаг 5: Избежать столкновения с объектами

Чтобы робот избегал препятствий, здесь использовался ультразвуковой датчик » Ping». Было решено совместить его с библиотекой Arduino NewPing, поскольку она лучше, чем простая PIng библиотека.

Библиотека была взята отсюда: https://github.com/fmbfla/Arduino/tree/master/NewPing

Датчик был установлен на бампере робота.

Инфракрасный датчик входит домашнюю версию набора Lego mindstorms EV3. Это единственный датчик, который может применяться как самостоятельно, так и в паре с инфракрасным маяком, тоже являющимся частью домашнего набора. Следующие два урока мы посвятим изучению этих двух устройств, а также их взаимодействию между собой.

8.1. Изучаем инфракрасный датчик и инфракрасный маяк

(Рис. 1) в своей работе использует световые волны, невидимые человеку - инфракрасные волны* . Такие же волны используют, например, дистанционные пульты управления различной современной бытовой техникой (телевизорами, видео и музыкальными устройствами). Инфракрасный датчик в режиме "Приближение" самостоятельно посылает инфракрасные волны и, поймав отраженный сигнал, определяет наличие препятствия перед собой. Еще два режима работы инфракрасный датчик реализует в паре с инфракрасным маяком (Рис. 2) . В режиме "Удаленный" инфракрасный датчик умеет определять нажатия кнопок инфракрасного маяка, что позволяет организовать дистанционное управление роботом. В режиме "Маяк" инфракрасный маяк посылает постоянные сигналы, по которым инфракрасный датчик может определять примерное направление и удаленность маяка, что позволяет запрограммировать робота таким образом, чтобы он всегда следовал в сторону инфракрасного маяка. Перед использованием инфракрасного маяка в него необходимо установить две батарейки AAA.

Рис. 1

Рис. 2

8.2. Инфракрасный датчик. Режим "Приближение"

Этот режим работы инфракрасного датчика похож на режим определения расстояния ультразвуковым датчиком. Разница кроется в природе световых волн: если звуковые волны отражаются от большинства материалов практически без затухания, то на отражение световых волн влияют не только материалы, но и цвет поверхности. Темные цвета в отличие от светлых сильнее поглощают световой поток, что влияет на работу инфракрасного датчика. Диапазон работы инфракрасного датчика также отличается от ультразвукового - датчик показывает значения в пределах от 0 (предмет находится очень близко) до 100 (предмет находится далеко или не обнаружен). Еще раз подчеркнем: инфракрасный датчик нельзя использовать для определения точного расстояния до объекта, так как на его показания в режиме "Приближение" оказывает влияние цвет поверхности исследуемого предмета. В свою очередь это свойство можно использовать для различия светлых и темных объектов, находящихся на равном расстоянии до робота. С задачей же определения препятствия перед собой инфракрасный датчик справляется вполне успешно.

Решим практическую задачу, похожую на Задачу №14 Урока №7 , но, чтобы не повторяться, усложним условие дополнительными требованиями.

Задача №17: написать программу прямолинейно движущегося робота, останавливающегося перед стеной или препятствием, отъезжающего немного назад, поворачивающего на 90 градусов и продолжающего движение до следующего препятствия.

У робота, собранного по инструкции small-robot-31313 , впереди по ходу движения установлен инфракрасный датчик. Соединим его кабелем с портом "3" модуля EV3 и приступим к созданию программы.

Рассмотрим программный блок "Ожидание" Оранжевой палитры, переключив его в Режим: - "Сравнение" - "Приближение" (Рис. 3) . В этом режиме программный блок "Ожидание" имеет два входных параметра: "Тип сравнения" и "Пороговое значение" . Настраивать эти параметры мы уже умеем.

Рис. 3

Решение:

  1. Начать прямолинейное движение вперед
  2. Ждать, пока пороговое значение инфракрасного датчика станет меньше 20
  3. Прекратить движение вперед
  4. Отъехать назад на 1 оборот двигателей
  5. Повернуть вправо на 90 градусов (воспользовавшись знаниями Урока №3, рассчитайте необходимый угол поворота моторов)
  6. Продолжить выполнение пунктов 1 - 5 в бесконечном цикле.

Попробуйте решить Задачу № 17 самостоятельно, не подглядывая в решение.

Рис. 4

А теперь для закрепления материала попробуйте адаптировать решение Задачи №15 Урока №7 к использованию инфракрасного датчика! Получилось? Поделитесь впечатлениями в комментарии к уроку...

8.3. Дистанционное управление роботом с помощью инфракрасного маяка

Инфракрасный маяк, входящий в домашнюю версию конструктора Lego mindstorms EV3, в паре с инфракрасным датчиком позволяет реализовать дистанционное управление роботом. Познакомимся с маяком поближе:

  1. Пользуясь инфракрасным маяком, направляйте передатчик сигнала (Рис. 5 поз. 1) в сторону робота. Между маяком и роботом должны отсутствовать любые препятствия! Благодаря широкому углу обзора инфракрасный датчик уверено принимает сигналы, даже если маяк располагается позади робота!
  2. На корпусе маяка расположены 5 серых кнопок (Рис. 5 поз. 2) , нажатия которых распознает инфракрасный датчик, и передает коды нажатий в программу, управляющую роботом.
  3. С помощью специального красного переключателя (Рис. 5 поз. 3) можно выбрать один из четырех каналов для связи маяка и датчика. Сделано это для того, чтобы в непосредственной близости можно было управлять несколькими роботами.

Рис. 5

Задача №18: написать программу дистанционного управления роботом с помощью инфракрасного маяка.

Мы уже знаем, что для реализации возможности выбора выполняющихся блоков необходимо воспользоваться программным блоком "Переключатель" Оранжевой палитры. Установим режим работы блока "Переключатель" в - "Измерение" - "Удалённый" (Рис. 6) .

Рис. 6

Для активации связи между инфракрасным датчиком и маяком необходимо установить правильное значение параметра "Канал" (Рис. 7 поз. 1) в соответствии с выбранным каналом на маяке! Каждому программному контейнеру блока "Переключатель" необходимо сопоставить один из возможных вариантов нажатия серых клавиш (Рис. 7 поз. 2) . Заметьте: некоторые варианты включают одновременное нажатие двух клавиш (нажатые клавиши помечены красным цветом). Всего в программном блоке "Переключатель" в этом режиме можно обрабатывать до 12 различающихся условий (одно из условий должно быть выбрано условием по умолчанию). Добавляются программные контейнеры в блок "Переключатель" нажатием на "+" (Рис. 7 поз.3) .

Рис. 7

Предлагаем реализовать следующий алгоритм управления роботом:

  • Нажатие верхней левой кнопки включает вращение левого мотора, робот поворачивает вправо (Рис. 7 поз. 2 значение: 1)
  • Нажатие верхней правой кнопки включает вращение правого мотора, робот поворачивает влево (Рис. 7 поз. 2 значение: 3)
  • Одновременное нажатие верхних левой и правой кнопок включает одновременное вращение вперед левого и правого мотора, робот двигается вперед прямолинейно (Рис. 7 поз. 2 значение: 5)
  • Одновременное нажатие нижних левой и правой кнопок включает одновременное вращение назад левого и правого мотора, робот двигается назад прямолинейно (Рис. 7 поз. 2 значение: 8)
  • Если не нажата ни одна кнопка маяка - робот останавливается (Рис. 7 поз. 2 значение: 0) .

При разработке алгоритма дистанционного управления вы должны знать следующее: когда нажата одна из комбинаций серых кнопок - инфракрасный маяк непрерывно посылает соответствующий сигнал, если кнопки отпущены, то отправка сигнала прекращается. Исключение составляет отдельная горизонтальная серая кнопка (Рис. 7 поз 2 значение: 9) . Эта кнопка имеет два состояния: "ВКЛ" - "ВЫКЛ" . Во включенном состоянии маяк продолжает посылать сигнал, даже если вы отпустите кнопку (о чём сигнализирует загорающийся зеленый светодиод), чтобы выключить отправку сигнала в этом режиме - нажмите горизонтальную серую кнопку еще раз.

Приступим к реализации программы:

Наш алгоритм дистанционного управления предусматривает 5 вариантов поведения, соответственно наш программный блок "Переключатель" будет состоять из пяти программных контейнеров. Займемся их настройкой.

  1. Вариантом по умолчанию назначим вариант, когда не нажата ни одна кнопка (Рис. 7 поз. 2 значение: 0) . Установим в контейнер программный блок , выключающий моторы "B" и "C" .
  2. В контейнер варианта нажатия верхней левой кнопки (Рис. 7 поз. 2 значение: 1) установим программный блок "Большой мотор" , включающий мотор "B" .
  3. В контейнер варианта нажатия верхней правой кнопки (Рис. 7 поз. 2 значение: 3) установим программный блок "Большой мотор" , включающий мотор "C" .
  4. В контейнер варианта одновременного нажатия верхних левой и правой кнопок (Рис. 7 поз. 2 значение: 5) установим программный блок "Независимое управление моторами" "B" и "C" вперед.
  5. В контейнер варианта одновременного нажатия нижних левой и правой кнопок (Рис. 7 поз. 2 значение: 8) установим программный блок "Независимое управление моторами" , включающий вращение моторов "B" и "C" назад.
  6. Поместим наш настроенный программный блок "Переключатель" внутрь программного блока "Цикл" .

По предложенной схеме попробуйте создать программу самостоятельно, не подглядывая в решение!

Рис. 8

Загрузите получившуюся программу в робота и запустите её на выполнение. Попробуйте управлять роботом с помощью инфракрасного маяка. Всё ли у вас получилось? Понятен ли вам принцип реализации дистанционного управления? Попробуйте реализовать дополнительные варианты управления. Напишите свои впечатления в комментарии к этому уроку.

* Хотите увидеть невидимые волны? Включите режим фотосъемки в мобильном телефоне и поднесите излучающий элемент дистанционного пульта от телевизора к объективу мобильного телефона. Нажимайте кнопки пульта дистанционного управления и на экране телефона наблюдайте свечение инфракрасных волн.

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

Воспроизвести органы чувств живого существа в данный момент очень сложно. Из-за этого исследователи и разработчики прибегают к альтернативам биологических чувств.

Что могут чувствовать люди, но не могут чувствовать роботы?

При помощи камер роботы могут “видеть”, но испытывают трудности с понимание того, что они видят. Робот может получить с камеры изображение, состоящее из миллионов пикселей. Но без сложного программирования, он не будет знать, что любой из этих точек обозначает.

Датчики расстояния указывают расстояние до объекта, но нужно, чтобы робот не врезался в препятствие или объект. Исследователи и компании экспериментируют с различными подходами к датчикам роботов. Дополнительно разрабатываются датчики, которые позволяет роботу не только “видеть” но “понимать” что он видит.

Это может занять длительное время, прежде чем сможет различить объекты, расположенные перед ним на столе. Особенно если они расположены не так как в базе данных объектов.

Роботы очень плохо различают то, что связано со вкусом или обонянием.

Человек может сказать вам, “это является на вкус сладким” или “это плохо пахнет”, в то время как роботу необходимо провести анализ химического состава. Затем нужно искать вещества в базе данных, чтобы определить, что у человека отмечено на вкус как “сладкое” или на запах как “плохой”.

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

Люди имеют множество нервных окончаний на всей своей коже, и мы знаем, когда мы дотронулись до какого-либо предмета или что-то коснулось нас. Роботы оборудованы кнопками или простыми контактами, размещенными в стратегически важных местах. Например, на переднем бампере, чтобы определить, вступает ли он в контакт с объектом.

Роботы типа «домашние животные» могут иметь контакты или группу датчиков, расположенных на голове, ногах или спине, но если вы попытаетесь прикоснуться к зоне, где нет датчика, робот не поймет, что его касались, и не будет реагировать. Поскольку исследования в области гуманоидных роботов продолжаются, возможно, такие датчики роботов как “электромеханическая кожа” будет развиваться.

Что могут чувствовать роботы, но не могут чувствовать люди?

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

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

Люди используют пару глаз, чтобы получить визуальную информацию, хотя многие люди не могут определить точно расстояние до объекта. Человек может сказать вам, что до дерева около 20 метров. В то же самое время робот, оснащенный датчиками расстояния, может сказать вам, что до дерева 21.1 метра.

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

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

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

Какие датчики необходимы для вашего робота?

Итак, какие типы датчиков доступны, а какие датчики нужны вашему роботу? Вы должны сначала спросить себя, для каких целей нужен робот и что он должен измерять. Затем ниже можно посмотреть какие бывают типы датчиков для роботов.

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

Датчики для роботов бывают:

  1. контактные
  2. дистанционные
  3. позиционирования
  4. реагирующие на условия окружающей среды
  5. использующие вращение
  6. и другие

Контактные датчики.

— Кнопка / контактный выключатель.


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

Бампер робота может быть оснащен датчиком касания или кнопкой. Дополнительно “усы” (как и у животного) могут использоваться для обнаружения объекта на различных расстояниях.

  • Преимущества: очень низкая цена, простота интеграции, надежность.
  • Недостатки: расстояние измерения ограничено.

— Датчики измерения давления

Кнопка, которая предлагает одно из двух возможных показаний (ON или OFF). В результате датчик робота производит выходной сигнал, пропорциональный прилагаемой к нему силе.

  • Преимущества: позволяет измерять, сколько силы применяется.
  • Недостатки: могут быть неточными и сложнее в использовании, чем простые коммутаторы.

Дистанционные датчики

— Ультразвуковые датчики


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

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

  • Преимущества: измерение среднего диапазона (несколько метров).
  • Недостатки: поверхности и факторы окружающей среды могут повлиять на показания.

— Инфракрасные датчики

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

  • Преимущества: низкая стоимость, достаточно надежные и точные.
  • Недостатки: более широкий диапазон, чем у ультразвуковых датчиков.

— Лазер

Лазеры используются, когда требуется высокая точность, или большое расстояние до объекта, или когда присутствуют оба фактора. Сканирующие лазерные дальномеры используют спин-лазеры (ультрабыстрые лазеры) для двумерного сканирования расстояния до объектов.

  • Преимущества: очень точные с очень большим диапазоном.
  • Недостатки: намного дороже, чем обычные инфракрасные или ультразвуковые датчики.

— Энкодеры


Оптические энкодеры часто используют пару светодиод фотодиод. На валу установлен диск с отверстиями, через которые сигнал со светодиода попадает на фотодиод и считывается количество импульсов.

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

  • Преимущества: если нет скольжения, то высокая точность измерения. Часто устанавливается на задний вал двигателя.
  • Недостатки: требуется дополнительное программирование, более точные оптические энкодеры могут дорого стоить.

— Линейный потенциометр


Линейный потенциометр способен измерять абсолютное положение объекта.

  • Преимущества: точно измеряет абсолютное положение.
  • Недостатки: маленький диапазон.

— Датчики растяжения и изгиба


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

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

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

— Стереокамера

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

Камера, в сочетании с правильным программным обеспечением, может обеспечить хорошее распознавание цвета и объектов.

Преимущества: возможность предоставления подробной информации и хорошая обратная связь.

Недостатки: сложность в программирование и в использовании информации.

Датчики позиционирования

— Локализация в помещении (навигация в комнате)


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

  • Преимущества: отлично подходит для абсолютного позиционирования
  • Недостатки: требуется сложное программирование и использование маркеров.

— GPS


GPS использует сигналы от нескольких спутников, вращающихся вокруг планеты, чтобы определить их географические координаты.

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

  • Преимущества: не требует маркеров или других ссылок.
  • Недостатки: могут работать только на открытом пространстве.

Датчики вращения

— Потенциометр


Поворотный потенциометр – это, по сути, делитель напряжения и обеспечивает аналоговое напряжение, соответствующее углу поворота ручки.

  • Преимущества: простой в использовании, недорогой, достаточно точный, обеспечивает абсолютные показания.
  • Недостатки: большинство из них ограничены 300 градусами вращения.

— Гироскоп


Электронный гироскоп измеряет скорость углового ускорения и подает соответствующий сигнал (аналоговый сигнал напряжения, последовательный канал связи, с I2C и т. д.). В электронном гироскопе используются пьезопластины.

  • Преимущества: отсутствие «механических» компонентов.
  • Недостатки: датчик всегда подвергается угловому ускорению, тогда как микроконтроллер не всегда может принимать непрерывный входной сигнал, то есть значения теряются, что приводит к ”дрейфу" значений

— Энкодеры

Оптические энкодеры используют мини — инфракрасные пары передатчика / приемника. Количество разрывов инфракрасного пучка соответствует полному углу, пройденному колесом.

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

  • Преимущества: точность.
  • Недостатки: у оптических энкодеров угол поворота является относительным (не абсолютным) от исходного положения.

Датчики роботов, реагирующие на условия окружающей среды

— Датчик света


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

  • Преимущества: обычно очень недорогие и очень полезные.
  • Недостатки: не могут различать источник или тип света.

— Датчик звука


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

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

— Температурные датчики


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

  • Преимущества: могут быть высокоточными.
  • Недостатки: более сложные и точные датчики могут быть более сложными в использовании.

— Тепловизионная камера


Тепловизионный датчик (камера) инфракрасного или теплового изображения позволяет получить полное 2D-тепловое изображение всего, что находится перед камерой тепловизора. Таким образом, можно определить температуру объекта.

  • Преимущества: можно выборочно на расстоянии измерять тепловую активность объектов.
  • Недостатки: высокая стоимость

— Датчики измерения влажности


Датчики влажности определяют процентное содержание воды в воздухе и часто соединяются с датчиками температуры.

— Барометрический датчик давления


Датчик давления (который также может быть барометрическим датчиком) может использоваться для измерения атмосферного давления. Следовательно может дать представление о высоте БПЛА (беспилотный летательный аппарат).

— Датчики газа

Датчики газа используются для определения наличия и концентрации различных газов. Однако они нужны только специализированных робототехнических комплексов.

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

— Магнитометры


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

  • Преимущества: помогает обнаружить ферромагнитные металлы.
  • Недостатки: в некоторых случаях датчики могут быть повреждены сильными магнитами.

Датчики, использующие вращение

— Компас


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

  • Преимущества: обеспечивает абсолютную навигации.
  • Недостатки: более высокая точность увеличивает цену.

— Гироскоп


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

  • Преимущества: электронные гироскопы имеют более высокую точность, чем механические.
  • Недостатки: более высокая стоимость.

— Акселерометры


Акселерометры измеряют линейное ускорение. Это позволяет измерять гравитационное ускорение или любое другое ускорение, которое испытывает робот.

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

Акселерометры могут измерять ускорение вдоль одной, двух или трех осей. Трехосевой акселерометр позволяет измерять все углы наклона сенсора в пространстве.

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

— ИИБ


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

  • Преимущества: это очень надежный способ измерения без использования внешних ссылок (кроме магнитного поля Земли)
  • Недостатки: может быть очень дорогим и сложным в использовании.

И другие


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

  • Преимущества: они делают именно то, что они предназначены.
  • Недостатки: могут вносить изменения в измеряемое напряжение или ток. Иногда требуется изменить измеряемую электрическую цепь.

— Магнитные датчики


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

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

  • Преимущества: как правило, недорогие
  • Недостатки: как правило, должны располагаться относительно близко к объекту, и к сожалению, не могут обнаруживать немагнитные металлы.

— Датчики вибрации


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

— Технологии RFID


Технология RFID – это технология беспроводного обмена данными посредством радиосигнала между электронной меткой, которая помещается на объект и специальным радиоэлектронным устройством, которое считывает сигнал метки.

Устройства радиочастотной идентификации могут использовать как активные (с питанием), так и пассивные (без питания) RFID-метки обычно имеющие размер и форму кредитной карты, небольшой плоский диск или дополнение к брелоку (другие формы также возможны).

Когда метка RFID находится на определенном расстоянии от считывателя RFID, создается сигнал с идентификатором тега.

  • Преимущества: RFID метки обычно имеют очень низкую стоимость и могут определяться индивидуально.
  • Недостатки: бесполезно для измерения расстояния, кроме случаев, когда метка находится в пределах диапазона.

Практическая часть

Типичным примером, демонстрирующим автономную работу робота, является робот на базе набора Lego EV3 для движения по линии при помощи одного или двух датчиков цвета. В этом случае датчики робота определяют яркость отраженного света.

Инфракрасные приемники серий TSOP (17xx, 21xx) давно и достаточно успешно используются в любительской робототехнике. Применяются они как по своему прямому назначению (для приема команд по ИК-каналу) так и в качестве недорогих бесконтактных датчиков препятствия. Их преимущество по сравнению с обычными инфракрасными фототранзисторами и фотодиодами - лучшая помехозащищенность, так как TSOPы реагируют только на сигнал с определенной частотой и скважностью. Частота принимаемого сигнала обозначена в маркировке ИК-приемников - последние две цифры.

Несомненнымипреимуществами так же являются простота подключения и доступность в приобретении.

Представленный модуль ИК-датчика прост в повторении и по сути сочетает в себе два узла - TSOP2136 с обвязкой и электронный ключ для управления инфракрасными светодиодами с возможностью настройки яркости излучения.

Модуль можно использовать:

  • В качестве приемника команд по ИК-каналу с помощью протокола RC5.
  • В качестве передатчика команд по ИК-каналу.
  • В качестве приемо-передатчика для обмена информацией по ИК-каналу (как для связи с ПК так и с другими устройствами)
  • В качестве бюджетного бесконтактного сенсора препятствий.

Обвязка TSOPа стандартная с добавлением согласующего резистора на выход сигнала. Инфракрасные светодиоды подключены через полевой транзистор BS170. Регулировка яркости свечения инфракрасных светодиодов регулируется с помощьюпостроечного резистора.

Рассмотрим работу модуля в качестве датчика препятствий. Как было сказано выше - ик-приемники серии TSOP реагируют только на определенный сигнал, в нашем случае это сигнал с частотой 36kHz и скважностью 50%. Генерация сигнала осуществляется программно микроконтроллером. Излучаемый сигнал, отражаясь от поверхности препятствия, улавливается приемником и обрабатывается МК. По умолчанию - в отсутствие принимаемого сигнала на выходе TSOPа присутствует высокий логический уровень, в противном случае - низкий уровень.

Таким образом в МК обработка сигнала:

Нет препятствия - 1 на входе порта МК.

Препятствие - 0 на входе порта МК.

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

Для примера мы использовали контроллер MRC28 с универсальным модулем. Тестовая прошивка создана с помощью BASCOM-AVR. В качестве препятствия рука =).

"Пример работы инфракрасного датчика препятствия на основе TSOP2136

$regfile = "m8def.dat" "используем Mega8
$crystal = 16000000 "частота кварцевого резонатора 16mHz

"Генерация частоты 36kHz
"Настраиваем Timer1

Config Timer1 = Counter , Edge = Rising , Prescale = 8 , Compare A = Toggle

" Расчитываем Compare1a
" тактовая частота (kHz) / частота TSOPa (kHz) / 2 = Compare
" 16000 / 36 / 2 = 222

Compare1a = 222

"PortB.1 - выход сигнала
"PinC.0 - считываем состояние TSOPa
"Portd.0 - сигнальный светодиод

Config Pinb . 1 = Output
Config Portd . 0 = Output
Config Pinc . 0 = Input

Start Timer1
Do
If Pinc . 0 = 0 Then
Portd . 0 = 1
Else
Portd . 0 = 0
End If
Loop

End

Метки к статье: