Оглавление:
- Шаг 1: Обзор всего проекта
- Шаг 2: видео
- Шаг 3: Создание 3D-модели
- Шаг 4: Детали и инструменты
- Шаг 5: Схема
- Шаг 6: Крепление датчика сонара
- Шаг 7: Изготовление направляющей оси X
- Шаг 8: платформа оси X
- Шаг 9: Перемещение платформы оси X
- Шаг 10: Код
- Шаг 11: Раскрашиваем
- Шаг 12: Размещение и организация электроники
- Шаг 13: Заключение: Спасибо, что прочитали инструкции
Видео: Прима - робот, играющий на фортепиано: 13 шагов
2024 Автор: John Day | [email protected]. Последнее изменение: 2024-01-30 11:52
Идея робота, играющего на музыкальном инструменте, всегда увлекала меня, и я всегда хотел построить его сам. Однако у меня никогда не было особых знаний о музыке и музыкальных инструментах, поэтому я никогда не мог понять, как на самом деле начать с этого. До недавнего времени меня интересовало создание музыки, я начал изучать основы создания музыки, а после приобретения MIDI-клавиатуры я понял, что на этом инструменте нетрудно играть, и я действительно могу создать робота, который сможет на нем играть. Так началось создание Prima.
Я не был уверен в успехе этого проекта, поэтому не стал его документировать. Но так как он работал отлично, я решил поделиться подробностями с сообществом Instructables. Это будет не пошаговый журнал сборки, а скорее руководство для начала. Я объясню, как работает каждая часть этого робота, поделюсь их изображениями и кодом для Arduino. Надеюсь, этого будет достаточно, если вы захотите повторить этот проект.
И дизайн был вдохновлен этими инструкциями, привет JimRD!
Итак, приступим
Шаг 1: Обзор всего проекта
Prima - это робот, который может играть на клавишных / пианино или на любом подобном клавишном инструменте. У него есть Arduino Uno в качестве мозга, ЖК-экран для визуального вывода и ультразвуковой датчик для запуска без касания. Любой адаптер питания, который выдает 5 В на 2 А, должен обеспечивать его питание.
Он имеет следующие особенности -
- Программируемый - можно запрограммировать воспроизведение любой композиции, ограниченной октавой.
- Регулируемый темп - темп, которому он будет следовать при игре на инструменте, может быть установлен в коде.
- Бесконтактный запуск - пользователь может запустить игру, просто проведя рукой по датчику, что будет очень полезно, если пользователь занят игрой на другом инструменте и хочет, чтобы Прима играла вместе с ним / ней через определенное время. Игрок-человек играет с игроком-роботом - даже этого можно добиться с помощью этой функции.
Шаг 2: видео
Вы можете посмотреть, как он играет на клавиатуре в видео.
Шаг 3: Создание 3D-модели
Определив, что он должен делать, я спроектировал тело на TinkerCAD, чтобы я мог приступить к его созданию, имея четкое представление о том, что я делаю.
Этот подход очень помог мне получить аккуратно выглядящего робота, который работает именно так, как он был разработан. Хотя мне пришлось немного изменить исходный дизайн при его создании, тем не менее, 3D-модель сэкономила мне много времени и усилий. Более подробно с 3D-моделью вы можете ознакомиться здесь.
Шаг 4: Детали и инструменты
Для электронной части вам понадобится -
- Arduino Uno (количество - 1)
- ЖК-экран 16x2 (количество - 1)
- Адаптер I2C для ЖК-экрана (Количество - 1)
- Микро сервопривод TowerPro SG90 (количество - 2)
- Ультразвуковой датчик HC-SR04 (количество - 1)
- Тумблерный переключатель (количество - 1)
- Зуммер (количество - 1)
- Доска Vero / Dot Board / Perf Board
- Перемычки между мужчиной и мужчиной и между мужчиной и женщиной
Для изготовления тела -
- Лист ПВХ 5 мм
- Циклические спицы (Кол-во - 2)
- Винты
- Трубка держателя стержня ручки
- Аэрозольная краска (если вы хотите ее покрасить)
Инструменты, которые вам понадобятся -
- Супер клей
- Пистолет для горячего клея
- Паяльник
- Анти-резак (AKA Paper-Cutter)
Шаг 5: Схема
Схема была довольно простой. Я объясняю, как я сделал каждую часть этого -
Сегмент ЖК-дисплея - я использовал адаптер I2C для ЖК-дисплея, чтобы Arduino могла связываться с ним через I2C, что было необязательно, но упростило схему и уменьшило количество проводов. Вы можете использовать стандартный ЖК-дисплей, немного изменив код.
Сегмент питания - я сделал простую схему на плате veroboard, которая состоит из тумблера, зуммера, светодиода (который я потом решил не использовать) и общей шины питания 5В. Шина питания, как и в случае, выводы 5V и заземления сервоприводов, датчика сонара, ЖК-дисплея и Arduino соединены друг с другом соответственно. Один вывод нажимного переключателя подключен к линии 5V +, а другой вывод подключен к выводу VCC источника питания. Линия заземления подключается непосредственно к контакту заземления источника питания. Итак, Prima можно включить / выключить с помощью переключателя. Зуммер и светодиод подключены параллельно, и их вывод VCC идет на вывод 13 Arduino. Их земля подключается к заземлению общей шины питания.
Модификация разъема сервоприводов - поскольку перемычки часто отсоединяются от разъема сервопривода, я отрезал VCC и заземляющий провод от обоих сервоприводов и припаял их непосредственно к силовой шине. Однако для сигнальных контактов я использовал перемычки, чтобы подключить их к Arduino.
Датчик сонара - припаял два провода соответственно к VCC и контакту заземления датчика сонара, которые идут к общей шине питания, и использовал перемычки для подключения триггера и контакта эхо к Arduino.
Arduino - Питание через разъем типа «бочонок».
Который идет к чему -
Триггерный контакт датчика сонара -> контакт A2 Arduino
Вывод эхо-сигнала датчика сонара -> вывод A3 Arduino
Вывод SDA адаптера I2C -> вывод A4 Arduino
Вывод SCL адаптера I2C -> вывод A5 Arduino
VCC зуммера -> вывод D13 Arduino
Нажатие клавиши сигнальный штифт сервопривода -> штифт D9 Arduino
Сигнальный вывод сервопривода оси X -> вывод D8 Arduino
Все выводы VCC и заземления подключены к общей шине питания.
Шаг 6: Крепление датчика сонара
Картинка говорит сама за себя, просто приклеил L-образную полку к «стене» и приклеил датчик гидролокатора на полку горячим способом.
Шаг 7: Изготовление направляющей оси X
Я позаимствовал концепцию рельса оси X у станков с ЧПУ. Это всего лишь две велосипедные спицы, расположенные параллельно друг другу, а в «стенках» есть отверстия, через которые проходят велосипедные спицы. На других концах стен велосипедные спицы приклеены к стенкам горячим способом, поэтому они не двигаются. Велосипедные спицы достаточно прочные, чтобы поддерживать платформу оси X.
Шаг 8: платформа оси X
Это часть, которая идет боком, чтобы дотянуться до определенных клавиш, и имеет сервопривод, к которому прикреплен рычаг, который нажимает на клавишу.
У него есть две трубки держателя стержня для ручек, приклеенные к нижней части, через которые проходят велосипедные спицы, позволяя ему скользить по ним. Я получил эту трубку от ручки, вы можете использовать все, что подходит для спиц, например соломинку для питья.
Затем, в середине нижнего листа ПВХ, прямо стоит еще один лист ПВХ. Он имеет отверстие в нижней части, которое подходит к корпусу сервопривода, и сервопривод вставляется через него. Сервопривод закреплен с помощью горячего клея.
Сервопривод имеет соединенный с ним рычаг. Когда робот должен нажать клавишу, сервопривод поворачивает руку вниз, в результате чего нажимается клавиша, а затем поворачивает ее в прежнее положение.
Шаг 9: Перемещение платформы оси X
Сервопривод «перемещения оси X» прикреплен к приподнятой платформе, которая находится с левой стороны робота. Платформа оси X имеет полку наверху, где рычаг соединяется с помощью винта. На другом конце рычага другой рычаг соединен с помощью винта, и этот рычаг соединен с рупором сервопривода. Все шарниры подвижны, и сервопривод может приводить в движение платформу оси X по рельсам оси X, вращая рог влево / вправо, что заставит рычаги толкать / тянуть платформу по рельсам.
Стыки выполняются саморезом.
Шаг 10: Код
После завершения сборки корпуса и схемы загрузите код в Arduino. Поместите робота параллельно клавиатуре / пианино. Платформа оси x сначала начнет движение влево и остановится в определенной точке. Перемещайте робота, пока клавиша C пианино не встретится с этой точкой. Это важный шаг, потому что без такого расположения робота он не будет правильно воспроизводить мелодию. Затем включите робота, он должен начать играть мелодию в течение нескольких секунд.
Код довольно прост и нуждается в улучшении. Если вы хотите, чтобы робот воспроизводил вашу собственную мелодию, вам просто нужно поместить ее в код, что довольно просто.
Шаг 11: Раскрашиваем
Если вы хотите раскрасить его, как мой (я настоятельно рекомендую сделать это, он выглядит лучше нарисованным), сначала сделайте все части тела, убедитесь, что они правильно вырезаны. Затем вымойте их с мылом, чтобы на них не осталось масла и грязи. Обычно перед покраской поверхность шлифуют, но здесь в этом нет необходимости. Сначала нанесите на них слой, дайте ему высохнуть (несколько часов), затем нарисуйте еще один слой. Вы можете приступить к сборке деталей и их склейке после того, как краска высохнет.
Я использовал аэрозольную краску, чтобы покрасить свою
Шаг 12: Размещение и организация электроники
Я прикрутил Arduino к основному листу ПВХ и приклеил горячим клеем силовую цепь и ЖК-дисплей к основной плате. Организовал провода горячим клеем.
Шаг 13: Заключение: Спасибо, что прочитали инструкции
Итак, вот как я построил Приму. Надеюсь, журнал сборки был понятным и понятным. Если у вас есть вопросы, не стесняйтесь оставлять их в разделе комментариев, я постараюсь ответить как можно раньше.
Планы на будущее с этим проектом -
- Сделать программу для программирования Prima проще.
- Добавлена функция определения темпа, чтобы вы могли просто нажать кнопку для регулировки темпа.
- Замена сервоприводов на более тихие и быстрые
Если вы построите это, оставьте картинки в комментариях, я бы хотел увидеть ваше!:)
Рекомендуемые:
Фортепиано Arduino с ручным управлением и 7 предустановленными песнями: 7 шагов
Фортепиано Arduino с ручным управлением и 7 предустановленными песнями: Клавиатура Arduino Piano, взаимодействующая с ЖК-дисплеем, имеет 2 режима. Ручной режим & Режим предустановок. Я использовал 7 кнопок для простого 7-клавишного пианино и 1 кнопку для режима настройки, чтобы переключиться на 7 предустановленных песен. Песни в предустановленном режиме: нажмите кнопку режима настройки fi
Рабочий галстук для фортепиано: 6 шагов
Рабочий фортепьянный галстук: 1980-е годы принесли много больших достижений в моде и музыке. Там была синтезаторная музыка, фанк-клавиатура, леггинсы и классический мужской фортепьянный галстук. Эти галстуки носили иронично (и нелогично) многие модные (и немодные)
Макетное сенсорное фортепиано: 5 шагов
Макет сенсорного пианино: вам просто понадобится attiny 85, CD4051 (любой аналоговый мультиплексор) и зуммер, чтобы создать сенсорное пианино
Фортепиано Arduino - Пентотрон: 5 шагов
Arduino Piano - Пентотрон: Привет! Это моя первая инструкция, я сделаю все возможное, чтобы она была хорошей. Я не являюсь носителем языка, поэтому, пожалуйста, сохраните все возможные ошибки. Это руководство покажет вам, как создать собственное пианино для Arduino. Играет только пента
Макей Макей Фруктовое фортепиано: 13 шагов
Makey Makey Fruit Piano: изучите основы программирования, создав простой музыкальный синтезатор, в котором каждый «фрукт» представляет собой ключ