Использование датчиков при разработке робота. Как сделать так, чтобы робот следовал за объектом

Использование датчиков при разработке робота. Как сделать так, чтобы робот следовал за объектом
Использование датчиков при разработке робота. Как сделать так, чтобы робот следовал за объектом

Инфракрасные приемники серий 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

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

В этой статье показано изготовление простого робота, избегающего препятствия на плате Xboard v2.0 . Данная плата хорошо подходит для небольших умных роботов, потому что она компактна, имеет четыре контроллера двигателей постоянного тока , может быть прошита по USB и имеет ещё много других функций. Также она очень проста в освоении и использовании. xAPI представляет собой набор функций на С, предназначенные для решения сложных программных задач, таких как работа с ШИМ, ЖК-дисплеем, дистанционным управление и т.д. Очень хорошо и легко для новичков. Её конструкция является открытой, поэтому если вы не хотите покупать Xboard v2.0 , вы можете изготовить её самостоятельно.

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

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

Механическая часть робота

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

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

Xboard v2.0 монтируется с помощью монтажного комплекта, который идет в комплекте и включает в себя болты, гайки и стойки. Xboard v2.0 сделана так, что её крепежные отверстия совпадают с отверстиями в корпусе.


Дифференциальная передача

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

На картинке это показано более наглядно.

Таким образом, перемещение и управление роботом осуществляется путем управления двумя двигателями, что легко делается при помощи xAPI. Подробнее об этом написано по ссылкам:
http://xboard.extremeelectronics.co.in/Motor1.htm
http://xboard.extremeelectronics.co.in/Motor2.htm

В статьях рассказано, как запустить двигатель по часовой стрелке или против неё. MotorA – правый двигатель, MotorB - левый двигатель. Фрагменты кода, показывающие работу с двигателями.

Движение робота вперед:

Движение робота назад:

Поворот на лево:
MotorA(MOTOR_CW,255); // правый мотор вращается по часовой стрелке (CW) с макс. скоростью (255)
MotorB(MOTOR_CW,255); // левый мотор вращается по часовой стрелке (CW) с макс. скоростью (255)

Поворот на право:
MotorA(MOTOR_CCW,255); // правый мотор вращается против часовой стрелки (CCW) с макс. скоростью
MotorB(MOTOR_CCW,255); // левый мотор вращается против часовой стрелки (CCW) с макс. скоростью (255)

О MotorA и MotorB можно узнать подробнее, перейдя по ссылке

Датчики

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

ИК-датчик

ИК-датчик состоит из ИК-приемника, Ик-передатчика и нескольких резисторов. Схема приведена ниже. Нам необходимо три таких датчика, установленных на переднюю часть робота.

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

Номинал R1 150Ом, R2 22кОм. Цветовой код показан на схеме выше. Номиналы резисторов очень важны, поэтому используйте только резисторы указанного номинала. Короткий вывод ИК-приемника черного (полупрозрачного) цвета является положительным выводом. Это не ошибка, поэтому подключайте его именно так.

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

Выход датчика подключается к АЦП AVR микроконтроллера. АЦП превращает напряжение в 10 битное цифровое значение от 0 до 1024. То есть, ориентируясь на значение с АЦП, вы можете узнавать о наличии препятствий перед датчиком. Работа с АЦП Xboard v2.0 проста и описана по ссылке.

Если мы подключили датчик к ADC0, то получить информацию с него можно при помощи следующей функции:
int sensor_value;
sensor_value=ReadADC(0); //Read Channel number 0

При использовании резисторов указанных на схеме выше, значение sensor_value составляет около 660 когда перед датчиком нет препятствия, и 745 когда до препятствия около 15 см. Если препятствие находится на расстоянии ближе чем 6 см, то значение 1023. Это максимальное значение, и даже если препятствие еще ближе, то значение не повышается.

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

Объединение и подключение ИК-датчиков

Три ИК-датчика крепятся на макетную плату, которая крепится на переднюю часть робота. Один датчик установлен в центре плату, а два других справа и слева соответственно.

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

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

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

Теперь макетную плату можно устанавливать на шасси

Обратите внимание, что я использую подстроечные резисторы вместо постоянных на 22кОм. Но вы должны использовать постоянные резисторы на 22кОм. Макетная плата подключается к Xboard v2.0 с использованием стандартного 8 выводного коннектора. Xboard v2.0 имеет 8 выводной разъем для датчиков. Также в этом разъеме есть выводы +5В и GND для датчиков. Его распиновка показана ниже.

Подключите правый датчик к ADC0, центральный датчик к ADC 1 и левый датчик к ADC 2. Датчики готовы, и теперь можно перейти к их тестированию.

Тестирование ИК-датчиков

Ниже приведена небольшая тестовая программа, которая считывает значение с трех датчиков и отображает его на ЖК-дисплее. Для понимания работы программы прочитайте статью Взаимодействие с ЖК-дисплеем при помощи xAPI.

#include "avr/io.h" #include "util/delay.h" #include "lcd.h" void InitADC() { ADMUX=(1

Скомпилируйте и прошейте программу в Xboard v2.0. После этого подключите ЖК-дисплей и плату с датчиками. На экране должны быть значения с трех датчиков как показано ниже.

Когда вы подносите препятствие к одному из датчиков, значение с него должно увеличиваться, а когда препятствие совсем близко, то увеличиться до 1023. Запишите значения датчиков когда препятствия перед ними нет и когда препятствие на расстоянии около 15 см от него. Эти значения понадобятся вам для настройки программы робота.

Также я предоставил HEX файл, готовый для прошивки микроконтроллера ATmega32 (или ATmega16) и запуска в кратчайшие сроки.

Если на дисплее нет никакого текста, настройте контрастность потенциометром.

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

Программная часть

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

Мы определили три константы, а именно RTHRES, CTHRES и LTHRES: //Threshold Values For Sensor Triggering #define RTHRES 195 #define CTHRES 275 #define LTHRES 195

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

Программа начинается с инициализации подсистемы двигателя и подсистемы АЦП: MotorInit(); InitADC();

Потом мы начинаем двигать робота вперед. Это делается при помощи обращения к функциям MotorA и MotorB. Первым аргументом является необходимое направление: MOTOR_STOP MOTOR_CW MOTOR_CCW

Вторым аргументом является необходимая скорость. Ее значение может от 0 до 255. Мы используем 25,5 чтобы двигаться на полной скорости.

Более подробную информацию о работе с двигателем при помощи xAPI можно найти в документации Xboard v2.0 .

После того как наш робот начинает двигаться вперед, мы переходим в бесконечный цикл, проверяя, если какое-то препятствие перед роботом. Если да, то робот поворачивает.

Скачать прошивки и исходники проекта в вы можете ниже

Датчики работы механизмов - цифровые или аналоговые устройства для передачи информации о работе дополнительных агрегатов транспортных средств. Используется в системе GPS/ГЛОНАСС мониторинга транспорта. Позволяет знать сколько времени работал механизм, где работал, какой пробег был со включенным механизмом, сколько литров топлива было потрачено за каждый час работы.

  • Датчик вращения или движения . Применяется в системах GPS/ГЛОНАСС мониторинга для контроля вращающихся или движущихся механизмов. В основном, датчик вращения применяется для контроля автобетоновозов. Датчик вращения позволяет отслеживать все разгрузки автобетоновоза и контролировать какой был пробег с включенным «миксером». Датчик вращения также используется на строительных кранах. При установке на валу лебедки, легко контролировать интенсивность работы крана. Датчик вращения также может быть использован на коммунальной технике для контроля скорости и подсчета оборотов транспортерной ленты на пескоразбрасывающих автомобилях.
  • Датчик фактической работы механизмов . Применяется в системах спутникового мониторинга для контроля работы спецтехники. Устанавливается на подвижную часть и позволяет контролировать насколько эффективно использовалась техника. Датчик позволяет определить момент и длительность подъема, к примеру, стрелы и узнать сколько всего времени использовалась Ваша техника.
  • Датчик угла наклона . Датчик угла наклона прост в установке, имеет легкую настройку. Датчик угла наклона применяется для контроля транспортных средств, которые имеют подъемный механизм. С его помощью можно контролировать КПД работы автокрана, экскаватора, считать количество загруженных контейнеров на мусороуборочной техники.

Лучшие датчики от СтавТРЭК

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

Индуктивный датчик приближения. Внешний вид

Типы датчиков

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

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

Там же и много другой информации, но у меня своё, инженерно-электронно-прикладное, видение вопроса.

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

Индуктивные. Активируется наличием металла в зоне срабатывания. Другие названия - датчик приближения, датчик положения, индукционный, датчик присутствия, индуктивный выключатель, бесконтактный датчик или выключатель. Смысл один, и не надо путать. По-английски пишут «proximity sensor». Фактически это - датчик металла.

Оптические. Другие названия - фотодатчик, фотоэлектрический датчик, оптический выключатель. Такие применяются и в быту, называются «датчик освещённости»

Емкостные. Срабатывает на наличие практически любого предмета или вещества в поле активности.

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

Концевые выключатели (электрический датчик). Это обычный пассивный выключатель, который срабатывает, когда на него наезжает или давит объект.

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

Пока хватит, перейдём к теме статьи.

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

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


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


Схема индуктивного npn датчика. Приведена функциональная схема, на которой: генератор с колебательным контуром , пороговое устройство (компаратор), выходной транзистор NPN, защитные стабилитрон и диоды

Большинство картинок в статье - не мои, в конце можно будет скачать источники.

Применение индуктивного датчика

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


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

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

Типы индуктивных датчиков

Чем отличаются датчики.

Почти всё, что сказано ниже, относится не только к индуктивным, но и к оптическим и ёмкостным датчикам .

1. Конструкция, вид корпуса

Тут два основных варианта - цилиндрический и прямоугольный . Другие корпуса применяются крайне редко. Материал корпуса - металл (различные сплавы) или пластик.

2. Диаметр цилиндрического датчика

Основные размеры - 12 и 18 мм . Другие диаметры (4, 8, 22, 30 мм) применяются редко.

Чтобы закрепить датчик 18 мм, нужны 2 ключа на 22 или 24 мм.

3. Расстояние переключения (рабочий зазор)

Это то расстояние до металлической пластины, на котором гарантируется надёжное срабатывание датчика. Для миниатюрных датчиков это расстояние - от 0 до 2 мм, для датчиков диаметром 12 и 18 мм - до 4 и 8 мм, для крупногабаритных датчиков - до 20…30 мм.

4. Количество проводов для подключения

Подбираемся к схемотехнике.

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

2-проводный датчик. Схема включения

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

3-проводные. Наиболее распространены. Есть два провода для питания, и один - для нагрузки. Подробнее расскажу отдельно.

4- и 5-проводные. Такое возможно, если используется два выхода на нагрузку (например, PNP и NPN (транзисторные), или переключающие (реле). Пятый провод - выбор режима работы или состояния выхода.

5. Виды выходов датчиков по полярности

У всех дискретных датчиков может быть только 3 вида выходов в зависимости от ключевого (выходного) элемента:

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

Транзисторный PNP. Это - PNP датчик. На выходе - транзистор PNP, то есть коммутируется «плюсовой» провод. К «минусу» нагрузка подключена постоянно.

Транзисторный NPN. На выходе - транзистор NPN, то есть коммутируется «минусовой», или нулевой провод . К «плюсу» нагрузка подключена постоянно.

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

Ниже будут даны схемы включения датчиков , на которых будет хорошо видно эти отличия.

6. Виды датчиков по состоянию выхода (НЗ и НО)

Какой бы ни был датчик, один из основных его параметров - электрическое состояние выхода в тот момент, когда датчик не активирован (на него не производится какое-либо воздействие).

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

То есть, главное, что надо знать про транзисторные выходы датчиков - то, что их может быть 4 разновидности, в зависимости от полярности выходного транзистора и от исходного состояния выхода:

  • PNP NO
  • PNP NC
  • NPN NO
  • NPN NC

7. Положительная и отрицательная логика работы

Это понятие относится скорее к исполнительным устройствам, которые подключаются к датчикам (контроллеры, реле).

ОТРИЦАТЕЛЬНАЯ или ПОЛОЖИТЕЛЬНАЯ логика относится к уровню напряжения, который активизирует вход.

ОТРИЦАТЕЛЬНАЯ логика: вход контроллера активизируется (логическая «1») при подключении к ЗЕМЛЕ. Клемму S/S контроллера (общий провод для дискретных входов) при этом необходимо соединить с +24 В=. Отрицательная логика используется для датчиков типа NPN.

ПОЛОЖИТЕЛЬНАЯ логика: вход активизируется при подключении к +24 В=. Клемму контроллера S/S необходимо соединить с ЗЕМЛЕЙ. Используйте положительную логику для датчиков типа PNP. Положительная логика применяется чаще всего.

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

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

Скачать инструкции и руководства на некоторые типы индуктивных датчиков:

/ Индуктивные датчики приближения. Подробное описание параметровэ, pdf, 135.28 kB, скачан:1079 раз./

/ Каталог датчиков приближения Autonics, pdf, 1.73 MB, скачан:540 раз./

/ Каталог датчиков приближения Omron, pdf, 1.14 MB, скачан:667 раз./

/ Чем можно заменить датчики ТЕКО, pdf, 179.92 kB, скачан:537 раз./

/ Датчики фирмы Turck, pdf, 4.13 MB, скачан:462 раз./

/ Схема включения датчиков по схемам PNP и NPN в программе Splan/ Исходный файл., rar, 2.18 kB, скачан:1219 раз./

Реальные датчики

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

  • Индукт. Датчик PNP - питание постоянного тока, 6-36В, нормально открытый, цилиндрический, диаметр 12 мм, расстояние до объекта - 4 мм, ток выхода - до 300 мА. Прекрасный пример и цена.
  • Индукт. Датчик PNP - датчик примерно такой, но цена ниже, так как опт - 10 шт.
  • Индукт. Датчик NPN прямоугольный - этот датчик гораздо лучше в крепеже. В некоторых местах незаменим.
  • Оптические датчики инфракрасные диффузного отражения (от объекта) - большой выбор датчиков.

В последнее время на рынке DIY-электроники появилось большое количество роботов, выполненных на базе Arduino. Каждый из них обладает своими преимуществами и недостатками. Хотелось бы представить вашему вниманию еще одну новинку - набор «Смарт РОБО» от компании «УмныеЭлементы» .

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

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

Робот работает в трех стандартных режимах:

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


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


  1. Дистанционное управление. Готовый робот принимает команду с пульта дистанционного управления при помощи инфракрасного приемника. Устройство подчиняется командам аналогично игрушечному радиоуправляемому автомобилю.


В основе устройства робота лежат высококачественные датчики и микроконтроллерная плата от компании Keyestudio, которая является абсолютным аналогом оригинальной платы Arduino Uno, не уступая ей по внешним характеристикам и техническим параметрам. Шасси выполнено на акриловой основе с четырьмя электромоторами N20, снабженными редукторами.

К числу важных преимуществ «Смарт РОБО», которые делают набор привлекательным на фоне конкурентов, относятся:

  • В комплекте имеется все необходимое для сборки. Набор представляет собой полноценное, готовое к работе устройство. Кроме основных базовых элементов, в комплект входят дополнительные элементы: отвертки для сборки платформы и крепления элементов, а также батарейка для автономной работы робота;
  • Предусмотрена пошаговая инструкция по сборке и настройке. Данное руководство позволяет поэтапно пройти весь путь: от сборки механической части робота до загрузки готовой программы в контроллер;
  • Три различных режима работы. Допускается доработка каждого режима по своему усмотрению;
  • Возможность сборки без паяльника. Подсоединение всех проводов выполняется с использованием быстроразъемных соединителей и винтовых клемм. То есть пользователю остается только соединить элементы друг с другом;
  • Безопасность. Питание робота предусматривает использование обыкновенной батарейки мощностью 9 вольт.
  • Универсальность. Функциональные возможности робота не ограничиваются тремя стандартными режимами. Вы можете самостоятельно доработать существующую конструкцию или разработать что-то новое. Монтажные площадки снабжены универсальными креплениями, что позволяет существенно расширить или полностью заменить состав модулей и датчиков. Возможности робота зависят лишь от вашей фантазии.

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


Узнать более подробную информацию о наборе «Смарт РОБО» можно на официальном

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

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


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

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

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


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

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

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


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

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

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


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

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


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

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

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

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

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

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


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

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

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


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

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

В этой статье мы рассмотрим несколько схем роботов, в которых реализованы следующие варианты поведения:
1. Объезжает препятствие при контакте с ним "усиками".
2. Избегает препятствия без контакта (ИК бампер).
3. Упирается "усиками" в препятствие, отъезжает назад, делает поворот, затем продолжает движение.
4. Избегает препятствие с разворотом (ИК бампер).
5. Следует за объектом, сохраняя дистанцию (ИК бампер).

Перед тем как приступить к рассмотрению схем давайте кратко разберем особенности микросхемы L293.

Рис.1. Расположение выводов микросхемы L293D

Внутри нее имеется два драйвера для управления электромоторами.
Моторы подключаются к выходам OUTPUT. Мы имеем возможность подключить два двигателя постоянного тока.
8-й и 16-й выводы микросхемы подключаются к плюсу питания. Поддерживается раздельное питание, т.е. 16-й вывод (Vss) предназначен для питания самой микросхемы (5 вольт), а контакт Vs (8-й вывод) можно подключить к источнику питания для двигателей. Максимальное напряжение силовой части составляет 36 вольт.
Я их разделять не буду и во всех схемах подключу к общему источнику питания.
Минус питания или земля (GND) подключается к выводам № 4, 5, 12, 13. Эти контакты, кроме того, обеспечивают теплоотвод микросхемы, поэтому при пайке на плату для этих выводов желательно выделить увеличенную металлизированную область.
Еще микросхема имеет входы ENABLE1 и ENABLE2.
Для включения драйверов, необходимо наличие логической единицы на этих выводах, проще говоря 1-й и 9-й выводы подключаем к плюсу питания.
Также имеются входы INPUT для управления двигателями.

Рис.2. Таблица соответствия логических уровней на входах и выходах.

Выше представлена таблица, по которой можно понять, что если на вход INPUT1 подать логической единицу, т.е. соединить с плюсом источника питания, а вход INPUT2 - с минусом, то мотор М1 начнет вращаться в определенную сторону. А если поменять местами логические уровни на этих входах, то мотор М1 будет вращаться в другую сторону.
Аналогично происходит и со второй частью, к которой подключается мотор М2.

Именно эта особенность и использована в представленных схемах роботов.

Схема №1. Робот объезжает препятствие при контакте с ним "усиками".

Рис.3. Схема №1. С механическими датчиками препятствий.

После подачи питания моторы будут вращаться в определенную сторону, двигая робота вперед. Это происходит за счет того, что на INPUT1 через резистор R2 поступает сигнал высокого уровня, так же как и на входе INPUT4. Транзистор VT1 надежно закрыт, база стянута на минус питания, на коллектор ток не втекает.
Объяснять я буду по левой части, т.к. обе части симметричны.
На входе INPUT2 через резистор R3 устанавливается логический 0. Судя по таблице (рис.2) мотор вращается в определенную сторону. В правой части схемы происходит тоже самое и робот едет вперед.
В схеме имеются ключи (SB1, SB2), в качестве которых применены SPDT переключатели. На них с помощью термоклея прикрепляются скрепки и получаются датчики препятствий.

Рис.4. Из скрепок сделаны датчики "усики".

Когда такой датчик упирается в препятствие, ключ замыкается и вход INPUT2 оказывается подключенным к плюсу питания, т.е. подается логическая "1". В этот же момент времени открывается и транзистор, вследствие чего логическая единица на входе INPUT1 сменяется логическим нулем. Мотор при нажатой кнопке вращается в другую сторону. Рывками происходят микропереключения и мотор разворачивает робота от препятствия, до того момента, пока датчик перестанет соприкасаться с препятствием.

Как вы уже догадались, переключатели или сами моторы нужно расположить крест-накрест.

Схема №2. Робот избегает препятствия без контакта (ИК бампер)

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

Рис.5. Схема №2. С инфракрасными датчиками препятствий.

"Модуль приема ИК" работает так: при поступлении инфракрасного сигнала на TSOP-приемник на его выходе появляется отрицательное напряжение, которое отпирает PNP транзистор, и ток с плюса питания поступает на входную цепь микросхемы. Если в прошлый раз были использованы механические переключатели, с так называемыми усиками из скрепок, то новая схема позволит роботу не врезаться в препятствие, а реагировать на него с некоторой дистанции. Это выглядит так:

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

В качестве приемников использованы TSOP1136 с рабочей частотой 36 кГц. Расположение выводов представлено на рисунке ниже.

Рис.6. TSOP1136.

С приемниками мы разобрались, но для обнаружения препятствий нужно в пространство перед роботом посылать инфракрасное излучение с определенной частотой. Рабочая частота приемников бывает разная, в моем случае она составляет 36 кГц. Поэтому на микросхеме NE555 был собран генератор импульсов на данную частоту, а к выходу подключены излучающие диоды инфракрасного диапазона.


Рис.7. Схема излучателя на NE555.

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

Рис.8. ИК бампер.

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

Схема №3. Такой робот отъезжает назад от препятствия, делая поворот.

Давайте рассмотрим еще одну интересную схему.

Рис.9. Схема №3.

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

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

В схеме появились электролитические конденсаторы между эмиттером и базовыми резисторами транзисторов VT1 и VT2. Появились диоды VD1, VD2 и светодиоды HL1, HL2.
Давайте по порядку разберем, зачем нужны эти дополнительные компоненты.
Итак, когда замыкается переключатель SB1, т.е. первый датчик, ток от плюса питания через диод VD1 и токоограничивающий резистор R1 поступает на базу транзистора. Он открывается, меняя логический уровень на входе INPUT1, на входе INPUT2 уровень тоже меняется.
В этот момент ток также поступает на конденсатор C1 и он заряжается. Мотор М1 резко меняет направление вращения и робот отъезжает назад от препятствия. На видео можно заметить, что второй мотор тоже меняет направление движения, но на более короткий промежуток времени. Это происходит из-за того, что при замыкании датчика SB1, ток от плюса питания поступает также и на правую часть схемы, через светодиод HL2. Светодиоды не только подают кратковременный сигнал о столкновении с препятствием, но и являются гасителем напряжения, поступающего на противоположную половину схемы. Проще говоря, при замыкании ключа SB1, конденсатор C2 заряжается меньше, чем C1. А при замыкании ключа (датчика) SB2 происходит тоже самое, но наоборот - С2 заряжается больше (т.е. напряжение на его обкладках больше). Это позволяет не только отъехать от препятствия, но и немного отвернуться от него. Угол этого отворачивания зависит от емкости конденсаторов C1 и С2. Конденсаторы емкостью 22 мкФ, на мой взгляд, являются оптимальными. При емкости 47 мкФ угол поворота будет больше.
Также на видео можно заметить, что после того, как робот отъезжает назад от препятствия, то присутствует небольшая пауза перед тем как он поедет вперед. Это происходит из-за разрядки конденсаторов, т.е. в некоторый момент времени логические сигналы на входах INPUT уравновешиваются и драйвер на секунду перестает понимать в какую сторону вращать мотор. Но когда C1 и С2 разрядятся, на входах INPUT установятся первоначальные логические уровни.
Диоды VD1 и VD2 препятствуют разрядке конденсаторов через светодиоды HL1, HL2. Без светодиодов схема не работает.

Схема №4. Предыдущая схема с ИК бампером.

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

Рис.10. Схема №4.

Коллекторы PNP транзисторов VT1 и VT2 при обнаружении препятствия, подадут сигнал на входную цепь микросхемы. Далее всё происходит также, как было описано ранее, только такой робот при обнаружении препятствия перед собой отъезжает назад, делает поворот, затем продолжает движение.
Поведение показано на анимации ниже:

У робота будет более резкое поведение, если уменьшить емкость конденсаторов C1 и C2 например до 1 мкФ (минимальная емкость 0,22 мкФ).

Как сделать так, чтобы робот следовал за объектом?

Во всех схемах, представленных выше, датчики-сенсоры или сами моторы должны быть расположены крест-накрест. А при прямом подключении (когда левый датчик "командует" левым двигателем, правый - правым) робот будет не избегать препятствие, а наоборот следовать за ним. Благодаря прямому подключению можно добиться очень интересного поведения робота - он будет активно преследовать объект, сохраняя определенную дистанцию. Расстояние до объекта зависит от яркости ИК диодов на бампере (настроить).

Еще немного фотографий:

В шасси использованы металлические детали от конструктора. Макетная плата откидывается для удобства замены батареек.

Питание робота осуществляется от 4-х батареек АА.

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

К этой статье имеется видео, в котором подробно описана работа схем и продемонстрированы разные варианты поведения робота.

Список радиоэлементов

Обозначение Тип Номинал Количество Примечание Магазин Мой блокнот
Элементы схемы №1 и №2 (кроме ИК бампера)
VT1, VT2 Биполярный транзистор

2N3904

2 В блокнот
R1, R2, R4, R6 Резистор

10 кОм

4 В блокнот
R3, R5 Резистор

4.7 кОм

2 В блокнот
C1 100 мкФ 1 В блокнот
Элементы "модуля приема ИК" на схеме №2, №4
VT1, VT2 Биполярный транзистор

2N3906

2 КТ361, КТ816 В блокнот
R1, R2 Резистор

100 Ом

2 В блокнот
C1, C2 Электролитический конденсатор 10-47 мкФ 2 В блокнот
Элементы "модуля излучения ИК сигнала" рис.7
R1 Резистор

1 кОм

1 В блокнот
R2 Резистор

1.5 кОм

1 В блокнот
R3 Переменный резистор 20 кОм 1 для настройки яркости FD1, FD2 В блокнот
C1 Конденсатор керамический 0.01 мкФ 1 В блокнот
C2 Конденсатор керамический 0.1 мкФ 1 В блокнот
FD1, FD2 ИК диод 2 Любой

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Люди используют пару глаз, чтобы получить визуальную информацию, хотя многие люди не могут определить точно расстояние до объекта. Человек может сказать вам, что до дерева около 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 для движения по линии при помощи одного или двух датчиков цвета. В этом случае датчики робота определяют яркость отраженного света.

ИК-датчик препятствий для роботов-машин YL-63 (FC-51)
Smart Car Obstacle Avoidance Sensor Module Infrared Tube Module Reflective Photoelectric Sensor

Бесконтактный датчик YL-63 обнаруживает объекты в диапазоне расстояний почти от нуля и до установленного предела не вступая с ними в непосредственный контакт. Разные производители присваивают одному и тому же устройству разные наименования. Одни именуют представленный датчик наименованием YL-63 другие FC-51. Датчик предназначен для применения, когда не требуется информация о расстоянии до объекта, а только о его наличии или отсутствии. Предельная дистанция регистрации зависит от настройки. Датчик YL-63 имеет дискретный выход. Это оптический датчик регистрирующий увеличение интенсивности отраженного инфракрасного (ИК) излучения в контролируемом пространстве. Изменение отраженного излучения происходит из-за движущихся частей механизмов или перемещения окружающих предметов. YL-63 может размещаться на движущемся объекте для определения положения в окружающем пространстве. Применяется для обнаружения препятствия при движении колесных и гусеничных автоматов. Датчик может стать частью наглядного пособия для обучающихся в области систем управления и автоматики.
Устройство содержит источник ИК излучения и фотоприемник. Излучение отражается от препятствия и регистрируется фотоприемником. Он передает сигнал на компаратор LM393, который настроен на срабатывание при определенном уровне освещенности фотоприемника. Компаратор формирует сигнал на выходе датчика YL-63 низкого или высокого логического уровня.

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

Коэффициенты расстояния для отражения от различных материалов.

Белая матовая бумага 1
Хлопчатобумажная ткань 0,6
Серый поливинилхлорид 0,57
Дерево
слабо окрашенное 0,73
необработанное 0,4
Пластик
белый 0,7
черный 0.22
Черная резина 0,2-0,15
Матовый алюминий 1,2
Нержавеющая полированная сталь 2,3

Различное отражение и поглощение излучения различных материалов используются для работы воспринимающего узла тахометра. Предположим у нас есть . Требуется узнать количество оборотов в минуту вала двигателя. Нас выручит YL-63. Достаточно приклеить на маховик фрагмент белой бумаги, направить луч датчика на маховик и получим воспринимающий узел тахометра.
Для снижения последствий различных помех обрабатывающим микроконтроллером накапливаются данные полученные от датчика за короткий промежуток времени и производится усреднение. Датчик YL-63 может работать в приборах не имеющих МК.

Параметры

Напряжение питания 3,3-5 В
Дистанция обнаружения до отражающей белой матовой плоскости 0,02-0,3 м
Угол обнаружения 35°
Размеры 43 х 16 х 7 мм

Контакты

Датчик препятствия YL-63 он же FC-51 имеет вилку разъема из трех контактов:
VCC - питание,
GND - общий провод,
OUT - выход.

Индикаторы

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

Установка расстояния срабатывания

Настройку устройства облегчает работа индикатора обнаружения. Это позволяет настроить YL-63 он же FC-51 на срабатывание в реальных условиях. Установка чувствительности датчика выполняется с помощью переменного резистора, установленного на плате. Препятствие устанавливается на требуемом удалении от фотоприборов датчика. Поворотом подвижного контакта переменного резистора на плате модуля YL-63 выполняется установка расстояния срабатывания, добиваются включения красного светодиода. Затем проверяют дистанцию срабатывания перемещением отражающего объекта. Настройку повторяют не менее трех раз.

Программа для Ардуино обработки сигнала Y L-63

Сигнал датчика подается на контакт 12 Ардуино.

Void setup() {
Serial.begin (9600);
pinMode (12, INPUT);
}
void loop() {
Serial.print("Signaal: ");
Serial.println (digitalRead(12));
delay (500);
}