Оглавление:

Голова мистера Уолплейта поворачивается, чтобы выследить вас: 9 шагов (с изображениями)
Голова мистера Уолплейта поворачивается, чтобы выследить вас: 9 шагов (с изображениями)

Видео: Голова мистера Уолплейта поворачивается, чтобы выследить вас: 9 шагов (с изображениями)

Видео: Голова мистера Уолплейта поворачивается, чтобы выследить вас: 9 шагов (с изображениями)
Видео: Keeping the Heart | John Flavel | Christian Audiobook 2024, Декабрь
Anonim
Image
Image
Двигатель для датчика
Двигатель для датчика

Это более продвинутая версия робота-иллюзиониста мистера Уолплейта https://www.instructables.com/id/Mr-Wallplates-Eye-Illusion. Ультразвуковой датчик позволяет голове мистера Уолплейта отслеживать вас, когда вы идете перед ним.

Процесс можно резюмировать следующим образом. Датчик сначала поворачивается против часовой стрелки (влево) на 60 градусов, а затем поворачивается вправо при сканировании объекта ближе 3 футов. Если он ничего не обнаруживает до того, как достигнет 60 градусов вправо, он повторяет поворот влево, а затем сканирование, пока не обнаружит объект. Затем голова поворачивается к нему лицом, датчик поворачивается влево до предела влево (-60 градусов) и снова сканирует вправо. Этот поворот головы и сканирование продолжается до тех пор, пока объект не отодвинется назад более чем на 3 фута или не уйдет слишком далеко влево или вправо. Более подробное описание логики программы находится в шаге №6.

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

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

Интересным моментом является то, что датчик лучше всего работает для обнаружения объектов с твердыми поверхностями, которые хорошо отражают звук. Объект с мягкой поверхностью, например, кто-то в толстом свитере, может вообще не быть обнаружен, когда находится слишком далеко (более 3 ½ футов в моих тестах). Когда я держал перед собой кусок гофрированного картона размером примерно 13 дюймов на 20 дюймов и подошел к датчику, он обнаружил меня на расстоянии примерно 8 футов.

На видео я намеренно держался на расстоянии примерно 2 ½ фута, двигаясь в сторону, чтобы датчик и голова указывали на меня. При тестировании на более близком расстоянии датчик был направлен немного влево, поскольку правый край поля зрения датчика обнаруживал мою руку. Поле зрения составляет около 25 или 30 градусов.

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

Запасы

  1. Набор LEGO Mindstorms EV3.
  2. Ультразвуковой датчик LEGO Mindstorms EV3. Он не входит в набор EV3.
  3. 2 круглых пластиковых выносных контейнера диаметром не менее 6 ¼ дюймов (16 см) и высотой 1 ¾ дюйма (4 ½ см). Или ванна того же диаметра и высотой около 3 ½ дюймов тоже подойдет.
  4. 4 болта №8 с плоской головкой, длиной 1 ½ дюйма (около 4 см).
  5. 4 гайки для болтов.
  6. 2 винта №6 с полукруглой головкой, длиной около ½ дюйма (1 см), желательно того же цвета, что и выносные контейнеры.

ИНСТРУМЕНТЫ:

  1. Сверла и сверла.
  2. Отвертка.
  3. Ножницы.

Шаг 1: Двигатель для датчика

Двигатель для датчика
Двигатель для датчика
Двигатель для датчика
Двигатель для датчика
Двигатель для датчика
Двигатель для датчика

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

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

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

Присоедините ультразвуковой датчик к мотору, используя 3 серых элемента LEGO, как показано на одной из фотографий.

Шаг 2: Мотор для головы

Мотор для головы
Мотор для головы
Мотор для головы
Мотор для головы
Мотор для головы
Мотор для головы

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

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

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

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

Шаг 3: Измените голову

Изменить голову
Изменить голову
Изменить голову
Изменить голову
Изменить голову
Изменить голову

Возьмите голову Mr. Wallplate из «Mr. Wallplate’s Eye Illusion »и снимите заднюю стойку. Его можно просто снять.

Ссылаясь на одну из фотографий, возьмите 2 X-образных черных элемента и 2 синих элемента, которые имеют поперечное сечение как «X» на одном конце и «O» на другом конце. Прикрепите их к нижнему элементу на голове, как показано. Голова будет скользить по контейнеру по ним.

Шаг 4: прикрепите головку к мотору

Присоедините голову к мотору
Присоедините голову к мотору
Присоедините голову к мотору
Присоедините голову к мотору
Присоедините голову к мотору
Присоедините голову к мотору

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

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

Шаг 5: Подключите модуль EV3 к настенной пластине Mr

Подключите модуль EV3 к Mr. Wallplate
Подключите модуль EV3 к Mr. Wallplate
Подключите модуль EV3 к Mr. Wallplate
Подключите модуль EV3 к Mr. Wallplate

Плоские кабели в наборе EV3 подключаются к модулю следующим образом:

Порт A: кабель 14 дюймов (35 см) к небольшому двигателю с выступом.

Порт B: кабель 10 дюймов (26 см) к большому двигателю для головы.

Порт C: кабель 14 дюймов (35 см) к большому двигателю ультразвукового датчика.

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

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

Шаг 6: Описание программы

Логика программы кратко изложена ниже. Я думаю, что шаги №3 и №6, вероятно, будут выполняться по-другому в программе для другой системы, такой как Arduino. LEGO Mindstorms EV3 очень полезен и прост в использовании, но есть некоторые ограничения в том, что можно сделать. Единственный способ сканирования, который я мог понять, - это повернуть датчик на 10 градусов за раз и проверить, обнаруживается ли объект.

  1. Инициализация: установите переменные в ноль и подождите 7 секунд.
  2. Поверните датчик против часовой стрелки (влево) в крайнее левое положение (-60 градусов).
  3. Поверните датчик на 10 градусов вправо.
  4. Датчик переместился в правый предел (+60 градусов)?
  5. Если да, проверьте, не был ли кто-то обнаружен. Если не обнаружено, датчик поворачивается на 120 градусов влево, и программа переходит к следующему шагу. Если обнаружено, значит, человек ушел. Программа говорит «До свидания», головка и датчик поворачиваются лицом вперед, и программа останавливается.
  6. Вернитесь к шагу № 3, если датчик ничего не видит в пределах 36 дюймов.
  7. Этот шаг выполняется, если датчик обнаружил что-то в пределах 36 дюймов. Поверните голову лицом к обнаруженному человеку. Если раньше никто не был обнаружен, скажите «Привет».
  8. Вернитесь к шагу 2, чтобы продолжить сканирование. Но если цикл повторяется 20 раз, программа переходит к следующему шагу.
  9. Скажите «Игра окончена». Головка и датчик поворачиваются лицом вперед, и программа останавливается.

Шаг 7: Создайте программу

Создайте программу
Создайте программу
Создайте программу
Создайте программу
Создайте программу
Создайте программу

LEGO Mindstorms EV3 имеет очень удобный метод программирования на основе значков. Блоки программирования показаны в нижней части экрана, и их можно перетащить в окно Programming Canvas для создания программы. Я построил 4 «Мои блоки», которые представляют собой мини-программы, похожие на подпрограммы в обычных программах. Это упростило понимание логики основной программы на скриншоте.

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

  1. Основная программа.
  2. «Инициализировать» мой блок.
  3. «Поверните датчик влево до левого предела» Мой блок.
  4. «Поверните голову» My Block.
  5. «Закончить» мой блок.

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

  1. Сначала создайте «Мои блоки».
  2. Важно работать слева направо и увеличивать блоки цикла и переключателя, прежде чем перетаскивать внутрь другие блоки. Я столкнулся с грязными проблемами, пытаясь вставить дополнительные блоки в циклы во время тестирования и доработки почти законченной программы.
  3. Перед тем, как вы начнете вставлять блоки, следует увеличить больший блок цикла почти до правого края области программирования. Это необходимо для того, чтобы было достаточно места для перетаскивания других блоков внутрь. Впоследствии его можно уменьшить.

Шаг 8: Загрузите программу в модуль EV3

Модуль EV3 можно подключить к компьютеру с помощью кабеля USB, Wi-Fi или Bluetooth. Когда он подключен и включен, это отображается в небольшом окне в правом нижнем углу окна EV3 на компьютере. Если щелкнуть соответствующий значок в правом нижнем углу, программа будет загружена в модуль EV3 и немедленно запущена.

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

Шаг 9: ЗАКЛЮЧИТЕЛЬНЫЕ ЗАМЕЧАНИЯ

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

Есть и другой подход к сканированию: несколько ультразвуковых датчиков могут быть размещены рядом друг с другом, разветвляясь под углом примерно 25 или 30 градусов друг от друга. Голова могла поворачиваться в направлении любого датчика, обнаруживающего объект. Этот метод обнаружит быстро движущийся объект намного лучше, чем метод, описанный в проекте выше. Однако голова будет иметь только небольшое количество направлений. Этот метод должен быть возможен с Mindstorms EV3. Устройство Brick имеет 4 порта для подключения до 4 ультразвуковых датчиков (для программирования требуется, чтобы для датчика был назначен номер порта). Можно разместить больше датчиков, подключив второй блок Brick.

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

Рекомендуемые: