캡스톤디자인(3-1)/아두이노

[아두이노] 피에조 부저 모듈, fiezo buzzer

av0nr3pus 2024. 7. 8. 01:00

이건 어엄~청 간단하니까 서론 없이 시작하겠다.

fiezo buzzer module 구매처

https://www.navimro.com/g/440745?k=K28012091

 

https://www.navimro.com/g/440745?k=K28012091

 

www.navimro.com


 

1. buzzer module

VCC: 역시.. 다 압니다.

GND: 동일

I/O: input, output 결정해주는 핀이고 arduino UNO 보드에서 임의로 지정해주면 되겠죠

 

2. 준비물

1) buzzer module

2) breadboard

3) 점퍼선

4) USB cable

 

3. 구현할 기능

-> 초음파 센서를 이용해 장애물을 감지하는데 그 장애물이 5cm 이하로 들어왔을 때 경고음을 출력해 주는 기능을 구현하려고 했다. 경고음은 3번 정도 출력해주고 2초동안 딜레이를 주기로 결정하였다.

 

4. 실제 연결

1) VCC -> arduino UNO 보드의 5V 핀에 연결

2) GND -> GND에 연결

3) I/O -> 6번 핀에 연결

* 우리는 tone(pin, frequency, duration) 명령어를 이용해 경고음을 출력하기 때문에 PWM 기능을 지원하는 6번 핀에 연결하였다.

 

** 참고로 PWM 기능은 Pulse Width Modulation의 약자로 디지털 신호를 사용하여 아날로그 출력을 생성하는 기술이다. 또한, 이를 통해 다양한 장치의 전력을 제어할 수 있다고 한다.

 

5. arduino IDE program code

* int 변수이름 = 핀 번호; 명령어를 이용해 output으로 사용할 디지털 핀 번호(PWM 기능을 포함한)를 지정해준다.

 

** 사용할 핀을 출력으로 설정한다.

 

*** 3번 반복하기 때문에 for문을 활용해서 주파수를 435로 지정해주고 지속 시간을 500ms, 즉 0.5s로 설정해준다.

1
2
3
4
5
6
7
8
9
10
11
12
13
int buzzer=6;
 
void setup(){
  pinMode(buzzer, OUTPUT);
}
 
void loop(){
  for(int i=0; i<3; i++){ // repeat three times
  tone(buzzer, 435500); // tone(pin, frequency, duration)
  delay(700);}
  delay(2000); // 3번 반복 후 2초 delay
}
 
cs

 

6. 결과

소리 매우 크니.. 최소화하시길 권장합니다.

 

경고음이 경쾌하게 3번씩 나오는 것을 확인할 수 있다!