Оглавление:

Тобиас - Музыкальная шкатулка Arduino с TVout: 5 шагов (с изображениями)
Тобиас - Музыкальная шкатулка Arduino с TVout: 5 шагов (с изображениями)

Видео: Тобиас - Музыкальная шкатулка Arduino с TVout: 5 шагов (с изображениями)

Видео: Тобиас - Музыкальная шкатулка Arduino с TVout: 5 шагов (с изображениями)
Видео: Музыкальная шкатулка на Arduino своими руками 2024, Июнь
Anonim
Тобиас - Музыкальная шкатулка Arduino с TVout
Тобиас - Музыкальная шкатулка Arduino с TVout
Тобиас - Музыкальная шкатулка Arduino с TVout
Тобиас - Музыкальная шкатулка Arduino с TVout
Тобиас - Музыкальная шкатулка Arduino с TVout
Тобиас - Музыкальная шкатулка Arduino с TVout

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

У Тобиаса есть личность, сформировавшаяся со временем, в то время как мы в шутку задаемся вопросом, чем он занимается, пока она на работе.

Проект задумывался как простой подарок - Arduino с пьезо-динамиком, играющим ее любимую песню. Она быстро вышла из-под моего контроля и превратилась в музыкальную шкатулку:

  • 3D-печать
  • возможность воспроизведения музыки без необходимости подключения USB с использованием батареек AA
  • с «клавишами» пианино, которые загораются при каждой ноте
  • возможность воспроизведения изображения на старом телевизоре с ЭЛТ через разъемы RCA

Запасы

  • Ардуино Нано
  • Динамик (брал от сломанной старой магнитолы)
  • Тумблер (3-контактный) - переключатель режима
  • Поворотный потенциометр - регулятор громкости
  • 2 резистора 220 Ом
  • 1 резистор 440 Ом или 2 резистора 220 Ом
  • 1x резистор 1 кОм
  • 11 светодиодов 3 мм
  • 2x RCA гнездовых разъема
  • провода
  • Белый акрил 3,5 мм
  • горячий клей или суперклей

Инструменты:

  • комплект для пайки
  • 3д принтер
  • компьютер с Arduino IDE для загрузки кода

Шаг 1. Код - загрузка

Тебе понадобится:

  • Библиотека TVout - позволяет Arduino передавать изображения и звук на телевизор с подключением RCA или SCART
  • arduino-volume1 - эта библиотека улучшает качество звука, используется в режиме 1 (только Arduino без подключения к телевизору). Однако в режиме 2 невозможно использовать его одновременно, поскольку библиотека TVout использует тот же таймер, что и volume1

Если вы хотите изменить музыку или изображение, см. Следующие шаги, если не просто загрузите код в свой Arduino, но сначала убедитесь, что у вас установлены обе библиотеки.

Шаг 2: Код (изменить музыку)

Код (изменить музыку)
Код (изменить музыку)

Здесь вы можете найти песню:

Я разбиваю музыку на части, присваивая буквы каждой повторяющейся части. Затем я присвоил каждой заметке значение от 1 до 16 и поместил их в строку 0 каждого массива. Значения соответствуют частоте проигрываемой ноты (массив freq ). В строке 1 я помещаю продолжительность каждой ноты выше. Пример:

const byte melB1 [2] [6] PROGMEM = {

{11, 8, 0, 8, 7, 6}, // примечание

{1, 3, 1, 1, 1, 1}}; // продолжительность

Если вы хотите использовать другую песню:

  • измените массив freq с новыми желаемыми частотами (нотами)
  • изменить массивы, соответствующие каждой части песни
  • в void music () выберите порядок воспроизведения
  • измените «X» в объявлении массива для количества элементов в каждой строке, а также измените соответствующий void, например:

melB1 [2] [X]

void melodiaB1 () {

for (a = 0; a <X; a ++) {

Шаг 3: Код (измените изображение / фото)

Код (изменить изображение / фото)
Код (изменить изображение / фото)
Код (изменить изображение / фото)
Код (изменить изображение / фото)
Код (изменить изображение / фото)
Код (изменить изображение / фото)

Я использовал GIMP, чтобы изменить фотографию на черно-белую, шаги:

Цвета / Насыщенность = 0

Изображение необходимо изменить на разрешение 95x95 пикселей. Библиотека TVout позволяет использовать более высокое разрешение, но из-за размера кода, который я намеревался использовать, я был вынужден снизить разрешение.

  • Инструмент выбора прямоугольника (соотношение сторон - фиксированное 1: 1)
  • Редактировать / Копировать
  • Файл / Создать / Из буфера обмена
  • Изображение / Масштаб изображения (95x95)

Крайне важно преобразовать изображение в черно-белое, а не в оттенки серого.

  • Инструмент Fuzzy Select Tool и Free Select Tool, чтобы выбрать области, которые я хочу отобразить черным цветом.
  • Карандаш (черный), чтобы сделать наш выбор черным
  • Select / Invert (инвертирует наш выбор)
  • Карандаш (белый) для окраски остальной области в белый цвет
  • Цвета / Яркость-Контрастность (максимальная контрастность, чтобы черный цвет был черным)

Теперь, когда у нас есть черно-белое изображение с разрешением 95x95 пикселей.

Файл / Экспорт как (. BMP)

Чтобы преобразовать новое изображение в код, я использовал Image2Code

Что дает нам почти хороший массив. Затем я скопировал и вставил его в IDE Arduino.

Использование Edit / Find:

  • найдите все «0xFF» и замените его на «0» (Заменить все)
  • сделайте то же самое для «0x00» и замените его на «1»
  • Удалить все "{" и "}"

«0» будет черным пикселем

«1» будет белым пикселем

Шаг 4: 3D-модель

3D модель
3D модель

Для создания 3D-модели коробки я использовал SketchUp. Из-за ограничений моего 3D-принтера и сложности, которую я себе представлял, он будет выполнять внутренние соединения, я решил создать модель из 4 частей.

Я загрузил файл SketchUp, если вы хотите что-то изменить в дизайне, если нет, просто распечатайте файлы.stl

Шаг 5: Сборка

сборка
сборка
сборка
сборка
сборка
сборка

Сборка несложная, но сложная из-за размеров коробки и количества подключаемых проводов.

Рекомендуемые: