
Оглавление:
2025 Автор: John Day | [email protected]. Последнее изменение: 2025-01-23 15:04



Прежде всего, позвольте мне представить Тобиаса, гигантского плюшевого мишки моей девушки, который является источником вдохновения для этого проекта.
У Тобиаса есть личность, сформировавшаяся со временем, в то время как мы в шутку задаемся вопросом, чем он занимается, пока она на работе.
Проект задумывался как простой подарок - 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-модели коробки я использовал SketchUp. Из-за ограничений моего 3D-принтера и сложности, которую я себе представлял, он будет выполнять внутренние соединения, я решил создать модель из 4 частей.
Я загрузил файл SketchUp, если вы хотите что-то изменить в дизайне, если нет, просто распечатайте файлы.stl
Шаг 5: Сборка



Сборка несложная, но сложная из-за размеров коробки и количества подключаемых проводов.
Рекомендуемые:
Как: установка Raspberry PI 4 Headless (VNC) с Rpi-imager и изображениями: 7 шагов (с изображениями)

Как: установка Raspberry PI 4 Headless (VNC) с Rpi-imager и изображениями: я планирую использовать этот Rapsberry PI в кучу забавных проектов еще в моем блоге. Не стесняйтесь проверить это. Я хотел вернуться к использованию своего Raspberry PI, но у меня не было клавиатуры или мыши в моем новом месте. Прошло много времени с тех пор, как я установил Raspberry
Счетчик шагов - Micro: Bit: 12 шагов (с изображениями)

Счетчик шагов - Микро: Бит: Этот проект будет счетчиком шагов. Мы будем использовать датчик акселерометра, встроенный в Micro: Bit, для измерения наших шагов. Каждый раз, когда Micro: Bit трясется, мы добавляем 2 к счетчику и отображаем его на экране
Bolt - Ночные часы с беспроводной зарядкой своими руками (6 шагов): 6 шагов (с изображениями)

Bolt - Ночные часы с беспроводной зарядкой своими руками (6 шагов): Индуктивная зарядка (также известная как беспроводная зарядка или беспроводная зарядка) - это тип беспроводной передачи энергии. Он использует электромагнитную индукцию для обеспечения электропитания портативных устройств. Самым распространенным применением является беспроводная зарядка Qi st
Arduino Old-Style Pong (TVout): 5 шагов

Arduino Old-Style Pong (TVout): Эстетика: Эстетика этого проекта была полностью разработана мной, но меня вдохновила идея телевизоров 1950-х годов. Материалы, использованные в этом проекте, были разработаны таким образом, чтобы быть легко доступными & производятся публикой, и как таковые являются по
Как разобрать компьютер с помощью простых шагов и изображений: 13 шагов (с изображениями)

Как разобрать компьютер с помощью простых шагов и изображений: это инструкция о том, как разобрать компьютер. Большинство основных компонентов имеют модульную конструкцию и легко снимаются. Однако важно, чтобы вы были организованы по этому поводу. Это поможет уберечь вас от потери деталей, а также при повторной сборке