Оглавление:

Ультразвуковой джойстик: 4 шага
Ультразвуковой джойстик: 4 шага

Видео: Ультразвуковой джойстик: 4 шага

Видео: Ультразвуковой джойстик: 4 шага
Видео: Как подключить DUALSHOCK 4 к ПК через bluetoooth / USB + драйвера 2024, Ноябрь
Anonim
Image
Image
Ультразвуковой джойстик
Ультразвуковой джойстик

Используя Arduino, я хотел создать конструкцию для управления игрой Snake необычным образом, используя ультразвуковые датчики расстояния. Это сделано для школьного проекта If This Than That в Университете искусств Утрехта.

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

При управлении Snake все еще есть некоторые ошибки (голландский журнал можно найти здесь)

Запасы

Требования:

- Arduino Uno (теоретически подойдет любая Arduino)

- 2 ультразвуковых датчика расстояния (HC-SR04)

- 8 кабелей для подключения датчиков расстояния к Arduino. Предпочтительно кабели типа "папа-мама"

- Ограждение размером не менее 300 мм x 300 мм x 40 мм. (ширина и высота легко регулируются. Глубина составляет 40 мм, потому что вам нужно место для компонентов внутри)

- Единство

Чтобы сделать это постоянным, вам понадобятся:

- Паяльник

- припой

- (горячий) клеевой пистолет (или крепления для датчиков расстояния)

- Разъемы от мужчины к мужчине для подключения к Arduino

- 8 кабелей для припайки ультразвуковых датчиков расстояния к штекерным разъемам.

Шаг 1: Схема

Схема
Схема
Схема
Схема

Схема действительно простая.

- Вам необходимо подключить заземление к контактам заземления ультразвуковых датчиков расстояния. - 5 В (я также использую Vin, потому что я использую питание от USB) идет на контакты Vcc на Arduino. - Контакты Trig идут на D8 (Arduino Digital). контакт 8) для 1 датчика и D11 для другого датчика. Выводы Echo идут на D9 для 1 датчика и D12 для другого.

Для экспериментов легко использовать провода "папа-мама".

Чтобы получить постоянное решение, лучше всего припаять провода к ультразвуковым датчикам и к разъемам «папа-папа». После этого вы можете поместить в Arduino заголовок «мужчина к мужчине», чтобы он заработал.

Шаг 2: Код Arduino

Код Arduino
Код Arduino

В этом проекте будет 2 части кода.

1. Получение расстояния с помощью библиотеки NewPing.h и установка его на Serial.

2. Убедитесь, что серийный номер отформатирован таким образом, чтобы Unity могла его правильно прочитать.

Вы можете увидеть код с соответствующими комментариями здесь:

Шаг 3. Код Unity

Код единства
Код единства

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

Во-первых: уроки YouTube о том, как создать Snake в Unity с помощью Code Monkeyhttps://www.youtube.com/playlist? List = PLzDRvYVwl53…

Во-вторых: WRMHL для обработки чтения из последовательного порта внутри единства.

Третье: помощь UKL и его проекта GitHub «виртуальный вездеход».

Со всеми указанными источниками файл проекта Unity можно скачать здесь:

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

Шаг 4: Изготовление корпуса

Изготовление корпуса
Изготовление корпуса
Изготовление корпуса
Изготовление корпуса
Изготовление корпуса
Изготовление корпуса

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

Мои размеры: - Нижняя сторона: 450х450мм.

- Верх: 450х450мм, с поперечным вырезом. Он расположен по центру на расстоянии 60 мм от сторон и имеет ширину 20 мм.

- Стороны: 2x 450x50 мм и 2x 420x50 мм (это потому, что в противном случае дерево могло бы перекрывать друг друга). Разумно сделать вырез на одной стороне, через который вы можете протянуть USB-порт / кабель Arduino для облегчения подключения.

- Рукоять: диаметр 15 мм (убедитесь, что это меньше ширины поперечного выреза).

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

Я прикрутил Arduino, чтобы он не двигался.

Датчики расстояния приклеены горячим клеем. Кабели также обрабатываются горячим клеем.

Я покрасил все гладкие стороны в белый цвет и нарисовал 4 стрелки сверху, чтобы было удобнее использовать.

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