3D интерфейс ввода на Arduino

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

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

Оригинал проекта находится здесь

Итак нам понадобится:
контроллер Arduino
3 резистора 10 кОм
3 резистора 270 кОм
3 зажима «крокодил»
экранированный провод, термоусадка, картон, фольга, клей

Для начала нам понадобится изготовить 3 стороны куба. Я для этого использовал почтовую картонную коробку и пищевую фольгу.
Размер квадрата 200х200 мм.

Фольгу к картону приклеил при помощи клея момент. Вот, что получилось:

Далее, собираем саму схему. Схема подключения следующая:

Для начала, отрезаем 3 одинаковых куска экранированного провода. Сильно длинными их делать не нужно. Одни концы провода припаиваем к зажиму «крокодил», экранированную оплетку просто обрезаем на этом конце.

Подготавливаем другие концы кабеля и к центральной жиле припаиваем резистор 10 кОм. Повторяем так для всех кабелей.

Между оплеткой и центральной жилой кабеля припаиваем резистор 270 кОм. Резисторы прячем под термоусадочную трубку, для всех кабелей.

Затем, спаиваем экраны всех 3-х кабелей между собой и делаем отвод от них проводом (питание +5 В)

Крокодилы зажимаем на фольге. Должно получиться что-то вроде этого:

Подключение куба к Arduino следующее:
8 вывод Arduino подключаем к оси X (левая часть)
9 вывод Arduino подключаем к оси Y (нижняя часть)
10 вывод Arduino подключаем к оси Z (правая часть)

Далее, открываем среду Arduino и скетч «Interface3D.ino». Запускаем и смотрим на результат в Serial Monitor (не забудьте в нем выставить скорость передачи на 115200, иначе увидите «крякозябры»).
Цифры будут быстро бежать и немного изменяться. Если поместить внутрь куба руку, то цифры будут менять на большие величины (порядка пару сотен).

Теперь необходимо установить программное обеспечения на компьютер. Для этого необходимо скачать среду Processing (не путать для Arduino) с сайта http://processing.org/
Среда кроссплатформенная, но у меня под Windows 7 x64 не заработала, но зато работает под Ubuntu 11.10, да и под Windows XP. Итак, скачиваем, распаковываем в директорию (установка не требуется) и открываем файл «TicTacToe3D.pde».
В самом скетче необходимо установить правильный COM-порт, на котором «висит» Arduino. Строка int serialPort =

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

Теперь, когда вы водите рукой в кубе, на экране монитора также перемещается шарик в 3-х измерениях. Применений данному проекту можно найти множество.

Оригинал статьи

Прикрепленные файлы:

Добавить комментарий

Ваш адрес email не будет опубликован.