Giter Site home page Giter Site logo

lazy_man-s_musicbox's Introduction

Project name - Lazy man's musicbox

Project idea from mitxela

https://www.youtube.com/watch?v=EuggcDJOED8

전체적인 아이디어와 디자인을 활용하였고

입력장치와 작동방식 변화를 위해 사용되는 하드웨어를 바꾸고 다른 언어로 코딩하였다.

Project overview - 1

사진

시중에 판매하는 punch hole music box 제품의 자동화

punch hole music box란?

기존에 원통에 정해진대로 재생되는 오르골과 달리 종이에 구멍을 뚫어 오르골을 통과시키며 구멍의 위치에 따라 정해진 노트가 재생되는 오르골

유튜브 예시영상 : https://www.youtube.com/watch?v=8F3ijtrZ5x8

개요1 이 장치는 종이에 뚫려있는 구멍을 통해 이빨이 나있는 원판을 돌리며 원판에 돋아있는 이빨을 통해 오르골의 진동판을 작동시켜 소리나게 한다.

종이에 구멍을 하나하나 뚫어주는 작동법 대신 작은 막대를 각 음의 위치마다 달아주어 서보모터로 원하는 타이밍에 밀어준다면, 악기의 자동화가 가능하다. 개요

각 장치는 총 30개의 음을 소리낼 수 있으며 30개의 서보모터가 필요하다.

Project overview - 2

배선도

Raspberry Pi 4B 하나와 아두이노등의 서보모터 컨트롤러 두가지를 사용한다.

총 31개의 모터를 운용해야하기 때문에 Raspberry Pi이외의 모터를 운용할 추가보드가 필요하다.

Raspberry Pi 의 주 기능은 두가지이다.

첫째 마스터키보드, 전자피아노등의 USB MIDI 외부디바이스와 직접 연결되어 입력되는 MIDI신호를 가공하여 서보모터 컨트롤러에 UART 통신으로 전달한다.

둘째 USB등의 메모리에서 MIDI파일 형식으로 저장되어있는 음악 파일을 열어서 해석하여 적절히 서보모터 컨트롤러에 정보를 전달한다.

배선도2

서보모터 컨트롤을 하는 아두이노의 기능은 한가지이다.

Raspberry Pi에서 전달하는 정보를 받아와 해당하는 서보모터를 작동시켜 오르골이 소리가 나도록 한다.

사용보드는 STM32보드 혹은 아두이노 Mega제품을 사용할 예정이다.

Project language

Raspberry Pi - Python

Servo Controller - C

lazy_man-s_musicbox's People

Contributors

cake31115 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.