Меню

Для чего нужен датчик касания в робототехнике

Робототехника

Урок №4 — Изучаем датчик касания

Введение:

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

4.1. Изучаем первый датчик – датчик касания

Для подключения датчиков к модулю EV3 предназначены порты, обозначенные цифрами «1», «2», «3» и «4». Таким образом, к одному модулю EV3 одновременно можно подключить до четырех различных датчиков. Все порты абсолютно равнозначны и вы можете подключать датчики к любым портам, главное — будьте внимательны при указании номера порта для соответствующих датчиков в ваших программах.

Первым датчиком, который мы изучим, будет датчик касания (Рис. 2).

Этот датчик, по сути, представляет собой специальную кнопку, которая может находиться в двух состояниях: «Нажатие» (Рис. 3 поз. 1) или «Освобождение» (Рис. 3 поз. 2). Также, последовательный переход в состояние «Нажатие», а затем «Освобождение» называется: «Щелчок» (Рис. 3 поз. 3) и может обрабатываться программой. как самостоятельное событие.

4.2. Оранжевая палитра – Управление операторами

Какие же инструменты представляет нам среда программирования для получения информации с датчиков и реагирования на эту информацию в программе? Давайте начнем знакомиться с программными блоками, расположенными в Оранжевой палитре, которая называется «Управление операторами». (Рис. 4)

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

  • С самым первым блоком Оранжевой палитры мы уже с вами знакомы: он называется «Начало». Именно с него начинаются все программы для роботов.
  • Второй программный блок называется «Ожидание». Этот блок заставляет программу ожидать выполнения какого-либо условия или наступления какого-либо события. Пока не выполнится условие, установленное в этом блоке, программа не перейдет к выполнению следующих программных блоков! Если перед тем, как начнется выполнение блока «Ожидание» были включены, какие-либо моторы, то они будут продолжать вращаться с установленной скоростью.
  • Третий программный блок называется «Цикл». Этот блок многократно выполняет программные блоки, вложенные внутрь его, пока не будет выполнено условие завершения цикла, заданное в настройках блока.
  • Следующий программный блок называется «Переключатель». Он служит для того, чтобы в зависимости от заданных условий — выполнить одну последовательность программных блоков, вложенных в один из своих контейнеров.
  • Заключительный программный блок называется «Прерывание цикла». Его предназначение — досрочное прекращение выполнения заданного цикла.

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

Читайте также:  000568 датчик давления наддува p0238 000 слишком высокий уровень сигнала

4.3. Оранжевая палитра, программный блок «Ожидание»

Перед тем, как приступить к решению практических задач, давайте закрепим датчик касания на нашем роботе, как показано на Рис. 5, и подключим его кабелем к порту «1» модуля EV3.

Задача №6: необходимо написать программу, запускающую движение робота по щелчку кнопки.

Само условие задачи подсказывает нам возможное решение: перед началом движения — необходимо дождаться нажатия-отпускания кнопки датчика касания. Возьмем программный блок «Ожидание», изменим режим программного блока на «Датчик касания»«Сравнение» (Рис. 6).

Как можно увидеть — программный блок «Ожидание» сменил свое отображение! Рядом с песочными часами появилось изображение датчика касания (Рис. 7 поз. 1), помогающее в программе визуально оценивать установленный режим работы. Настройка программного блока «Состояние» задает требуемое состояние датчика, достижение которого прекратит выполнение блока «Ожидание» (Рис. 7 поз. 2). Настройка «Состояние» может принимать следующие значение: «0»«Отпущено», «1»«Нажатие», «2»«Щелчок». Для решения нашей задачи выберем состояние «Щелчок». Вывод «Измеренное значение» (Рис. 7 поз. 3) при необходимости позволяет передать окончательное состояние датчика для обработки в другой программный блок.

Итак: при такой настройке блока ожидания выполнение нашей программы будет остановлено до нажатия-отпускания кнопки датчика касания. Только после «Щелчка» выполнение будет передано следующему программному блоку. Установим после блока ожидания один программный блок «Рулевое управление», загрузим программу в робота и убедимся в правильности её выполнения! (Рис. 8)

Задача №7: необходимо написать программу, останавливающую робота, столкнувшегося с препятствием.

Из датчика касания давайте соберем небольшой бампер, который будет нам сигнализировать о том, что наш робот столкнулся с препятствием. Ниже приведены подробные инструкции для сборки, как из домашней, так и из образовательной версии конструктора Lego mindstorms EV3. Можете поэкспериментировать и придумать собственный вариант конструкции.

Lego mindstorms EV3 home

Lego mindstorms EV3 education

Получившийся элемент закрепим на передней балке нашего робота и соединим датчик касания с портом «1» модуля EV3.

Lego mindstorms EV3 Home

Lego mindstorms EV3 Education

Конструкция готова! Приступим к созданию программы. По условию задачи: робот должен двигаться вперед, пока не наткнется на препятствие. В этом случае датчик касания будет нажат! Для решения снова воспользуемся программным блоком «Ожидание».

  1. Начать прямолинейное движение вперед (Рис. 9 поз. 1).
  2. Ждать, пока датчик касания не будет нажат (Рис. 9 поз. 2).
  3. Прекратить движение вперед (Рис. 9 поз. 3).

Для решения следующей задачи нам понадобится программный блок «Цикл» Оранжевой палитры.

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

Подсказка: напишите и протестируйте программу движения — отъезда — поворота, а затем поместите эти блоки внутрь программного блока «Цикл».

  1. Включаем моторы для прямолинейного движения вперед (Рис. 10 поз.1)
  2. Ожидаем нажатия датчика касания (Рис. 10 поз.2)
  3. Выключаем моторы (Рис. 10 поз.3)
  4. Отъезжаем немного назад (Рис. 10 поз.4)
  5. Расчитываем значения параметра для поворота робота вправо на 90 градусов (диаметр колес робота равен 56 мм (образовательная версия конструктора)) (Рис. 10 поз.5)
  6. Поворачиваем вправо на 90 градусов (Рис. 10 поз.6)
  7. Пункты 1 — 6 повторяем в бесконечном цикле (Рис. 10 поз.7)
Читайте также:  Программные датчики случайных чисел

Источник

Типы датчиков для робототехники, описание. Обзор для различных платформ

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

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

Электронные помощники для платформы LEGO Mindstorms Education EV3

В набор одной из самых популярных конструкторских платформ входит 5 сенсоров, поставляющих необходимые данные:

  • Светочувствительный датчик — Education EV3 Color Sensor.
  • Два тактильных датчика (касания) — Education EV3 Touch Sensor.
  • Ультразвуковой датчик расстояния — Education Ultrasonic Sensor.
  • Гироскоп — Education EV3 Gyro Sensor.

Инструмент, дающий «зрение» системе

Первый по списку сенсор дает возможность различать наличие или отсутствие света, а также, 7 оттенков цветов (белый, черный, синий, красный, зеленый, коричневый, желтый). Постоянный опрос происходит с частотой в 1000Гц.

Устройство действует как два компонента в одном — датчик освещенности (фоторезистор) и трехцветный, излучающий красный, зеленый и синий свет светодиод. Оно полностью совместимо с программным обеспечением EV3.

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

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

Чувствительные датчики

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

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

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

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

Датчик, измеряющий расстояние

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

Сенсор может измерять расстояние до предмета: от 0,03м до 2,5м с точностью +-1см. Частота опроса сигналом: 1000Гц при дискретности шкалы измерения в 1 мм. Имеется LED подсветка, помогающая определить режим работы датчика.

Читайте также:  Датчик дмрв nissan almera n16

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

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

Датчики для определения положения в пространстве

Последним чувствительным элементом в линейке датчиков конструктора LEGO Mindstorms Education EV3 является гироскоп. Для того чтобы робот мог правильно передвигаться, не падая, и совершать поступательные и вращательные движения, в конструкторе предусмотрен гироскопический датчик. С его помощью робот может балансировать, например, на 2 колесах.

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

Частота опроса датчика: 1000Гц. Погрешность: +-3° на 90° измеряемого угла поворота. Максимальный определяемый угол в режиме гироскопа: 440°.

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

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

Датчики, используемые в конструкторах HUNA

Данный производитель имеет разнообразную по возрастной категории линейку конструкторов. Среди них выделяются наборы Class 3 Full Kit и MRT3 (1+2+3+4). Это платформы не ограничены возрастными рамками пользователя (от младших школьников до старшеклассников). Они включают в себя набор сенсоров:

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

По сравнению с конструктором LEGO Mindstorms Education EV3, отсутствует функция различия цветов, гироскоп и ультразвуковой измеритель расстояния.

Сенсоры платформы VEX IQ

Конструкторы американского производителя VEX Robotics очень популярны в мире и принимают участие в соревнованиях по робототехнике. В состав набора «Супер Кит» входит 7 датчиков:

  • Гироскоп.
  • Датчик цвета и освещенности.
  • Два датчика касания.
  • Ультразвуковой сенсор.
  • Два светодиодных устройства с тактильными датчиками.

В данной платформе имеем набор сенсоров, аналогичных LEGO Mindstorms Education EV3 плюс последние два датчика.

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

Об авторе: Шевцова Алиса, инженер-конструктор по робототехнике.

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

Источник

Adblock
detector