Сборка лазерного танка под управлением Leap Motion — Arduino, Raspberry Pi, RGB-светодиоды
Компоненты и материалы
| ИК-светодиод | ×1 |
| ИК-приемник | ×1 |
| Arduino UNO | ×1 |
| Raspberry Pi 2 Model B | ×1 |
| Модуль RF24 | ×1 |
| RGB-светодиод (общий катод) | ×1 |
| Драйвер двигателей L293D | ×1 |
| Беспаечная макетная плата | ×1 |
| Перемычки | ×1 |
| Корпус батареи | ×1 |
| Аккумуляторы АА (NiMH) | ×1 |
| Кубики LEGO | ×1 |
| Опорное колесо 3/8" | ×1 |
| Leap Motion Controller | ×1 |
О проекте
Цель проекта — создать набор роботизированных танков для битв, где операторы получают реалистичное ощущение управления с помощью контроллера Leap Motion. Танки сделаны максимально дешево, чтобы любой мог повторить проект.
Корпус танка собран из обычных деталей LEGO. Источник питания — блок из 4 перезаряжаемых батареек АА. Управление осуществляет Arduino Uno R3. Движение обеспечивают два коллекторных двигателя с колесами сзади и одно опорное колесо спереди, управляемые через драйвер L293D. «Оружейная система» — ИК-светодиод, «броня» — набор ИК-сенсоров, фиксирующих попадания от противоположного танка. «Индикатор состояния» (HUD) — один RGB-светодиод, сигнализирующий о действиях и состоянии брони. Беспроводное управление реализовано через Raspberry Pi 2 с Node.js и модуль RF24 на каждом танке.
Leap Motion отслеживает движения рук через JavaScript SDK. Данные передаются на Node.js-сервер на Raspberry Pi, который посылает команды танку через RF24. Обе руки вперед — танк едет вперед; обе назад — назад. Левая вперед, правая назад — поворот направо; правая вперед, левая назад — налево. Руки в нейтральном положении — стоп. Одна рука вперед, вторая опущена — выстрел.

Настройка проекта
- Соберите танки и соедините по схемам ниже. Скачайте библиотеки для Arduino (см. README в репозитории GitHub), скомпилируйте и загрузите скетчи для tank1 и tank2.
- Подключите RF24-трансивер к Raspberry Pi. Установите Raspbian OS и Node.js.
- Скачайте, настройте и соберите библиотеку RF24 на Pi (см. README).
- Скачайте серверное ПО Node.js с GitHub, настройте и запустите (см. README).
- Установите Leap Motion и драйверы на компьютер. Откройте браузер и перейдите по URL веб-сервера на Raspberry Pi для управления танком 1 или 2.
- Нажмите «Калибровка» и держите руки над Leap Motion, чтобы система зафиксировала нейтральное положение. После калибровки управляйте танком жестами.
Особенности шасси
Корпуса склеены на «Moment» (горилла-клей) для прочности. Фотосборка показывает процесс.











Фокусировка ИК-луча
ИК-светодиоды обычно имеют широкий угол излучения. Для точной игры луч сужают с помощью линзы из дешевого карманного увеличительного стекла, вставленной в трубку перед светодиодом. Это делает луч узким и направленным.

360° ИК-детекция
Один ИК-сенсор видит только ~90°. Для кругового обзора использованы 4 сенсора, соединенные через логический элемент «И» (74HCT21) на один входной пин. При срабатывании любого сенсора сигнал проходит на пин Arduino без модификации библиотеки и без задействования 4 пинов.


Код
Весь код проекта на GitHub: LaserTanks
Схемы
ИК-светодиод посылает коды, распознаваемые как попадания.
Один ИК-сенсор детектирует сигналы от вражеских танков.
Четыре ИК-сенсора через элемент «И» (74HCT21) дают 360° обзор.
RGB-светодиод показывает статус: цвет = кол-во попаданий, зеленый = выстрел.
L293D управляет двумя коллекторными двигателями для движения и поворотов.
RF24-трансивер обеспечивает беспроводную связь с оператором.
Raspberry Pi 2 + RF24 + Node.js = REST API для управления танками.
Производственный процесс
- Экспертное руководство по лазерной маркировке алюминия: точность, долговечность и отраслевые применения
- Полное руководство по лазерной маркировке: типы, преимущества и применения
- Волоконно-лазерная маркировка: точность, скорость и универсальность для современных отраслей
- Лазерный указатель: дизайн, производство и обзор безопасности
- Полупроводниковые лазеры: точное генерирование света для современных технологий
- Твердотельные лазеры: технологии, применения и будущие тренды
- Построение DIY инфракрасного датчика движения для Raspberry Pi — пошаговое руководство
- Управление светодиодом с PIR-датчиком движения на Raspberry Pi
- Набор MOSMusic: MOSFET, Arduino и управление светом по музыке
- Ключевые компоненты лазерной маркировочной машины: понимание основных узлов для долговечности