DancePad своими руками

Последнее изменение: 11/04/2009 00:59:56

С чего всё началось

Чуть больше года назад наткнулся на проект http://stepmania.com. Суть игры - под музыку нужно нажимать кнопочки. Суть проста и казалось бы глупа, но сам процесс очень затягивает. Покопавшись в теме я нашел что это всё называется DDR. В википедии есть отличный материал по этой теме. Загорелся идеей играть нормально - используя не кнопки клавиатуры или геймпада, а полноценный коврик. Купить его даже в Москве в то время было проблематично (сейчас уже появился магазин, но цены пока "кусачие"). Думал о заказе из-за рубежа и в конце концов сделал всё сам.

Использовал идею из этой статьи: http://royconejo.host.sk/piso-pad1-en.html

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

Поехали :)

Список требуемых материалов

Image:lenta.jpg

Ну и чтобы было понятно что будем делать - я сразу покажу что получилось у меня: Result pad (90kb)

Мучаем геймпад

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

Изначально плата выглядит вот так: Image:pad1.jpgОтмечены те сигнальные площадки, к которым я буду припаивать провода.

Каждая кнопка срабатывает при замыкании сигнального контакта с землей (ground). Земля одна для всех кнопок (это четко видно на схеме), и спасибо нашим китайским братьям за выведенные места для припаивания проводов. Потрошим витую пару, и припаиваем один провод к земле, и ещё 6 - к кнопкам. Я припаял провода к игровым кнопкам (1-4), а не к стрелочкам. Для стрелочек там какие-то странные контакты на плате выведены. Решил их не трогать. Чтобы без проблем припаяться к площадкам - сначала их надо зачистить немного (лезвие, скальпель, нож) и потом прежде чем паять не забудьте канифольки немного. Хватается без проблем.

Получилось вот так: Image:pad2.jpg

Теперь подключаем для тестирования к USB. Если любой из сигнальных проводов соединить с землей - то должна сработать кнопка. Проверяется это легко - в Windows через "Control Panel" -> "Game Controllers" -> открываем свойства геймпада и тестируемся.

Делаем "кнопки"

Следующая задача - сделать кнопки, на которые можно будет прыгать ногами. Размер одной кнопки - 30 * 30 см, соответственно для квадрата 3*3 получает 90 * 90 см. Тут надо решить - какой "рисунок" кнопок делать. Если посмотреть на плату - видно как выведены контакты там. Рядом находятся сигнал и земля, при нажатии на кнопку геймпада - они замыкаются. Соответственно на коврике должен быть аналогичный механизм, только вместо кнопки нужно замыкать контакты ногами. Для себя решил использовать "рисунок" контактов, аналогичные геймпадовскому. Получилось вполне удобно, только стоит немного смещать расположение к центру всего коврика. Image:1button.jpg

Каждая полоска на кнопке состоит из: свернутой в 2 раза ленты, и затем проклеена сверху половиной ленты. Сначала сворачиваем две ленты для длинных контактных дорожек - они идут по бокам всей длины кнопки (порядка 35 см, чтобы ещё хватило на присоединение проводов от геймпада). Отрезаем кусок ленты, сворачиваем пополам по длине, затем аккуратно отсоединяем от подложки и склеиваем по линии сгиба. У ленты на одну сторону нанесена клейкая основа. Что очень удобно. Затем сворачиваем её ещё раз. Получаем полоску шириной где-то 1-1,5 см.

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

Поперечные контактные дорожки длинной порядка 21 см. Для них выполняется аналогичная операция, что и для длинных. Дальше это всё аккуратно наклеивается на место кнопки. Для простоты делаем так - сначала приклеиваем длинную ленту, в местах ответвлений подкладываем свернутые маленькие ленты. Затем проклеиваем эти боковые ленты. Image:buttonprocess.jpg

Ну и делаем таким образом все 6 кнопок.

Финальные доделки

После того, как вы проклеите все кнопки - остается только аккуратно прикрепить к ним провода от геймпада. К каждой кнопке надо присоединить одну землю и один сигнальный провод (для каждой кнопки свой отдельный). Земля у нас "одна", поэтому её надо аккуратно развести по всему коврику. С сигнальными проводами всё легко - просто проводим к каждой кнопке свой.

Для крепления провода к алюминиевой ленте я использовал чисто механический способ. Делаем дыру в ленте, в неё просовываем винт 4*12 с накрученной одной гайкой и шайбой. сверху обматываем винт зачищенным проводом, придавливаем ещё одной шайбой и прикручиваем гайкой. Затягиваем это дело - контакт получается хороший. Для земли на один винт можно спокойно прикручивать по 3 провода - без проблем. Image:connect1.jpgImage:connect2.jpg

Ну вот собственно и всё. Чтобы кнопка сработала - нужно "замкнуть" два контакта (землю и сигнал) между собой. Самый простой вариант - просто прилепить ленту по всей длине подошвы ваших любимых домашних тапочек. Но такая реализация недолговечна. Пока ещё думаю что с этим можно сделать. Image:boots.jpg

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

Недостатки

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

Улучшения

  1. О чем написано в минусах - под полоски надо подложить свернутый несколько раз лист бумаги. Чтобы избежать проблем с втаптыванием.
  2. Самое простое что можно быстро сделать - это попробовать избавится от необходимости крепить ленту на обувь. Если свободное место в "кнопке" коврика, между приклеенными лентами, проложить подходящим материалом (вроде губки), то сверху можно будет разместить контактную площадку. В её роли например может выступать другой кусок линолеума, где по размерам "кнопки" будет полностью проклеена алюминиевая лента. Тогда если стать сверху - замыкать контакты будет именно она, а не ваша обувь.

Список ресурсов

Программа для игры:

Ресурсы по теме DDR:

Сообщества:

Сделай сам (ссылки по созданию коврика):


январь 2008, Alver
При использовании этого материала, пожалуйста, ставьте ссылку на оригинал.