부품설명

자주 사용하는 부품들의 사용법에 대하여 알아봅니다.

가변저항 x 피에조 부저-음의 높낮이 조절하기

2014-08-08 16:55:46

개요


출처 : 전자기타 암(arm) - strat-talk.com

전자기타에는 암(arm)이라는 것을 올리고 내림으로써
기타의 장력을 조절하여 음의 높낮이를 조절하는 데요,

아두이노에서 간단한 코드를 통해 소리의 크기와 그 소리의 높낮이를 조절할 수 있습니다.

 

 


이처럼 자신만의 전자 악기를 만들어 볼수도 있습니다.


이 예제에서는 2개의 가변저항과 피에조부저를 이용하여 음을 생성하고 그 음의 높낮이(pitch)를 조절 해 보겠습니다.

 

 

 

 

 

부품목록

본 학습에는 총 5종류의 부품이 필요합니다.
 
NO 부품명 수량 상세설명
1 아두이노  1 아두이노
2 피에조 1 피에조
3 브레드보드 1 브레드보드
4 점퍼 케이블 9 점퍼 케이블
5 가변저항 2 가변저항
 
부품명 아두이노  브레드보드 점퍼케이블 가변저항 피에조
파트 x1 x1 x9  x2 x1

 

 

하드웨어 Making

 

회로도

브레드보드 레이아웃
 

 

가변저항의 회로연결 
 



일반적으로 가운데 부분이 Data 핀과 연결되며
좌우에 각각 Ground 와 5V를 연결해주시면 됩니다.

 

 

 

소프트웨어 Coding

아래의 코드를 아두이노에 업로드 합니다.
 

출처 : 아두이노 for 인터랙티브 뮤직

int pitch=0;//음정을 담당합니다.
int amp=0;//음량을 담당합니다.
void setup(){
  pinMode(7,OUTPUT);//피에조를 7번핀과 연결하여 출력으로 설정합니다.
}
void loop(){
  pitch = 1136 - analogRead(0);
  amp = analogRead(1)/10;
  digitalWrite(7,1);
  delayMicroseconds(amp);
  digitalWrite(7,0);
  delayMicroseconds(2*pitch-amp);
}
 

 

소프트웨어 & 하드웨어 설명

  pitch = 1136 - analogRead(0);


아날로그(A0) 입력값에 따라 음의 높낮이(Pitch)는 1136에서 113(1136-1023)까지 변하며 A4부터 C8이상의 음정을 표현할 수 있습니다.

 

 

amp = analogRead(1)/10;


아날로그(A1) 의 입력값을 10으로 나누었습니다. 이는 아날로그 입력값에 따라 최대 전압일경우 1:1 의 비율로 최대 출력을 지니며
입력값이 작아짐에 따라 1:5 , 1:10이 되면서 점차 음량이 작아지게 됩니다.
또한 음정 값이 1136부터 113까지 변하는데 이값을 뺏을때 음수가 발생하여 생길수 있는 오류를 방지하기 위한것입니다.

 

 

 

 

 

kocoafabeditor

항상 진취적이고, 새로운 것을 추구하는 코코아팹 에디터입니다!

가변저항, 피에조 부저, 아두이노