Skip to content

Latest commit

 

History

History
186 lines (160 loc) · 14.8 KB

README.md

File metadata and controls

186 lines (160 loc) · 14.8 KB

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 карта, аксель).

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