Skip to content

AlexGyver/GyverSaber

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

24 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

AlexGyver YouTube

Крутейший световой меч на Arduino своими рукамаи

Описание проекта

Многоцветный световой меч на адресных светодиодах с воспроизведением звуков

ВОЗМОЖНОСТИ:

  • Плавное включение/выключение со звуками меча
  • Во время работы меч "пульсирует" случайным образом
  • Во время работы издаёт звуки:
    • РЕЖИМ 1: тон "гудения" зависит от угловой скорости (гироскоп) поворота меча, т.е. взмаха
    • РЕЖИМ 2: гудение и звуки взмахов воспроизводятся с карты памяти
      • Медленный взмах - длинный звук взмаха (случайно один из 4)
      • Быстрый взмах - короткий звук взмаха (случайно один из 5)
  • При ударе меч вспыхивает ярко-белым
  • При ударе воспроизводится один из 16 звуков удара (случайно)
    • Слабый удар - короткие звуки
    • Сильный удар - длинные звуки
  • При включении показывает уровень заряда аккумулятора длиной светящейся части в процентах
  • Следит за напряжением аккумулятора:
    • Аккумулятор разрядился ДО ВКЛЮЧЕНИЯ: меч не включится, светодиод кнопки мигнёт несколько раз
    • Аккумулятор разрядился ВО ВРЕМЯ РАБОТЫ: меч выключается

УПРАВЛЕНИЕ:

  • Включение/выключение по удерживанию кнопки
  • Тройное нажатие - смена цвета (красный - зелёный - синий - жёлтый - розовый - голубой)
  • Пятерное нажатие - смена звукового режима (режим генерации и режим звуков с карты памяти)
  • Выбранный цвет и режим хранится в памяти и не сбрасывается при перезагрузке

Подробности в видео:

Папки

ВНИМАНИЕ! Если это твой первый опыт работы с Arduino, читай инструкцию

  • libraries - библиотеки проекта. Заменить имеющиеся версии
  • GyverSaber - прошивка для Arduino
  • schemes - схемы подключения
  • SDsounds - набор звуков для карты памяти

Схемы

SCHEME SCHEME

Материалы и компоненты

Вам скорее всего пригодится

Как скачать и прошить

  • Первые шаги с Arduino - ультра подробная статья по началу работы с Ардуино, ознакомиться первым делом!
  • Скачать архив с проектом

На главной странице проекта (где ты читаешь этот текст) вверху справа зелёная кнопка Clone or download, вот её жми, там будет Download ZIP

  • Установить библиотеки в
    C:\Program Files (x86)\Arduino\libraries\ (Windows x64)
    C:\Program Files\Arduino\libraries\ (Windows x86)
  • Подключить Ардуино к компьютеру
  • Запустить файл прошивки (который имеет расширение .ino)
  • Настроить IDE (COM порт, модель Arduino, как в статье выше)
  • Настроить что нужно по проекту
  • Нажать загрузить
  • Пользоваться

Сборка и настройка

  • Открыть прошивку, настроить:
    • Число МИКРОСХЕМ на ленте (чёрные штуки такие. Одна микросхема отвечает за 3 светодиода). Если вы захотите сделать меч длиннее - без проблем, главное не забыть это настроить.
    • Включить или выключить мерцание клинка (для эпилептиков)
    • ЖЕЛАТЕЛЬНО измерить реальное сопротивление резисторов делителя и тоже их указать (в Омах)
      • Если вы не ставите делитель, то нужно отключить параметр BATTERY_SAFE. Но делать это крайне не рекомендую!
    • Остальные настройки - полная кастомизация поведения меча, описания настроек говорят сами за себя. По умолчанию настроено так, как понравилось мне
  • Загрузить прошивку
  • Информация по MicroSD карте:
    • Размер до 4 Гб
    • Форматировать в FAT
    • Скопировать аудиофайлы В КОРЕНЬ карты
    • Если хотите добавить свои файлы, то нужно конвертировать в формат .wav со следующими параметрами:
      • 8 bit
      • 16-32 kHz
      • Mono
      • Для конвертации есть онайлн сервисы, а есть софтина Total Audio Converter
  • Собрать всё по схеме
    • ВНИМАНИЕ! Если прошивается/отлаживается ПОЛНОСТЬЮ СОБРАННЫЙ МЕЧ, то нужно включить питание, иначе Ардуина будет постоянно перезагружаться! Это связано с питанием, так как у нас висит преобразователь.
  • Включить и пользоваться!

Настройки меча в прошивке

NUM_LEDS 30         // число МИКРОСХЕМ на ленте
BTN_TIMEOUT 800     // задержка кнопки для удерживания (миллисекунды)
BRIGHTNESS 255      // максимальная яркость ленты (0 - 255)

SWING_TIMEOUT 500   // таймаут между двумя взмахами
SWING_L_THR 150     // порог угловой скорости для взмаха
SWING_THR 300       // порог угловой скорости для сильного взмаха
STRIKE_THR 150      // порог ускорения для распознавания удара
STRIKE_S_THR 320    // порог ускорения для распознавания сильного удара
FLASH_DELAY 80      // время вспышки при ударе (миллисекунды)

BLINK_ALLOW 1       // разрешить мерцание (1 - разрешить, 0 - запретить)
BLINK_AMPL 20       // амплитуда мерцания клинка
BLINK_DELAY 30      // задержка между мерцаниями

R1 100000           // сопротивление резистора делителя    
R2 51000            // сопротивление резистора делителя
BATTERY_SAFE 1      // не включаться и выключаться при низком заряде АКБ

DEBUG 0             // вывод в порт отладочной информации

FAQ

Основные вопросы

В: Как скачать с этого грёбаного сайта?
О: На главной странице проекта (где ты читаешь этот текст) вверху справа зелёная кнопка Clone or download, вот её жми, там будет Download ZIP

В: Скачался какой то файл .zip, куда его теперь?
О: Это архив. Можно открыть стандартными средствами Windows, но думаю у всех на компьютере установлен WinRAR, архив нужно правой кнопкой и извлечь.

В: Я совсем новичок! Что мне делать с Ардуиной, где взять все программы?
О: Читай и смотри видос http://alexgyver.ru/arduino-first/

В: Компьютер никак не реагирует на подключение Ардуины!
О: Возможно у тебя зарядный USB кабель, а нужен именно data-кабель, по которому можно данные передавать

В: Ошибка! Скетч не компилируется!
О: Путь к скетчу не должен содержать кириллицу. Положи его в корень диска.

В: Сколько стоит?
О: Ничего не продаю.

Вопросы по этому проекту

В: Я купил ленту, на ней контакты G R B 12V. Как подключить?
О: Молодец, можешь кинуть ей в собаку. Это не та лента.

В: Всё работает, но не воспроизводятся звуки с карты! Режим генерации работает, а звуки включения/выключения/ударов нет!
О: Проверь, распознала ли Ардуина карту памяти. В настройках прошивки можно включить DEBUG, при старте системы должна выйти в монитор порта строчка SD OK. Если видишь SD Fail, значит либо не подходит карта памяти, либо неправильно подключен модуль карты.

В: Звуки включения/выключения работают, но меч не реагирует на удары и взмахи!
О: Проверь, подключился ли модуль акселерометра. В настройках прошивки можно включить DEBUG, при старте системы должна выйти в монитор порта строчка MPU6050 OK. Если видишь MPU6050 fail, значит либо аксель приказал долго жить, либо неправильно подключен.

В: Обязательно ли нужен светодиод кнопки?
О: Он показывает включено или выключено питание, если забыть выключить меч - акумы сдохнут.

В: У меня ничего не работает!
О: Я конечно поздравляю, но у меня работают два меча, собранные двумя разными способами. Ищи ошибки в схеме.

В: Работает частично, система меча как будто зависает!
О: Где то ошибка в схеме, или неисправен один из модулей (SD карта, аксель).

Полезная информация

About

Световой меч на Arduino

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published