본문 바로가기
코딩/아두이노

아두이노 피에조 부저를 울려보자

by 어릴적 꿈은 미친과학자 2019. 11. 3.

안녕하세요 전자공이 입니다.

본문에서 다룰 내용은 아두이노를 이용해 피에조 부저를  울려보겠습니다.

 

 

피에조 부저 란

피에조 부저는 판과 판이 붙어 진동으로 인해 소리가 나는 소자로 부저는 두 가지의 종류로 나뉘게 됩니다.

수동 부저와 능동 부저로 수동 부저는 스피커를 생각하시면 되고 능동 부저는 자동차의 혼(horn) 즉 빵빵 소리를

내는 경적을 생각하시면 이해가 쉽습니다.

뭐 둘 다 똑같이 소리를 내는 스피커이니 똑같지 않은 건가 라고 생각하실 수 있는 데 엄연히 다릅니다.

수동 부저인 스피커는 소리를 내기 위해 소리에 맞는 전압과 파형을 스피커에 전달하여 다양한 소리를 냅니다.

하지만 능동 부저는 만들때 이미 소리값이 정해져 있기 때문에 전압만 주어도 소리를 출력하게 되는 겁니다.

 

 

직접 구별을 하고 싶다면 일반 스피커 소자에 스피커에서 요구하는 5~12V를 인가해보는 겁니다.

그럼 일반 스피커는 아무 소리도 나지 않지만 경적은 빠아아아아앙 하는 소리가 출력됩니다.

이렇게 수동과 능동을 구별할 수 있습니다.

 

 

이번 아두이노로 소리를 낼 부저의 종류는 수동 부저단순 압만 주어서는 소리가 나지 않는 특성을 가지고 있습니다.

 

 

-준비물-

아두이노

브레드 보드

점퍼선

 

 

-회로 구성-

----------------------------------------------------------------------------------------

아두이노------------------<>------------------부저

pin8------------------<>------------------부저(+) 단자

 

부저------------------<>------------------아두이노

부저(-) 단자------------------<>------------------GND

----------------------------------------------------------------------------------------

 

 

-코드 구성 및 설명-

----------------------------------------------------------------------------------------

void setup(){

   pinMode(8, OUTPUT); // 8번 핀을 OUTPUT으로 사용하겠다고 선언

  }

   void loop(){

   digitalWrite(8, HIGH); // 8번 핀을 HIGH으로 사용하겠다고 선언

   delay(10/100); // 딜레이 (10/100=0.1) ms 적용

   digitalWrite(8, LOW); // 8번 핀을 LOW으로 사용하겠다고 선언

   delay(90/100); // 딜레이 (90/100=0.9) ms 적용

    }

----------------------------------------------------------------------------------------

 

 

회로 구성과 아두이노 코드를 업로드하면 찌이이이이 잉 하는 소리로 부저가 울리기 시작합니다.

현재 위의 코드 구성은 단순 0~5V로 파형이 나오는 것처럼 흉내를 낸 모양으로 소리가 다양하게 나오지는 않습니다.

소리가 다양하게 나오게 하려면 PWM으로 펄스폭 변조를 적용해주어야 하며

간단하게 설명하면 같은 시간에 일정 간격의 전압을 얼마나 자주 인가해 주냐를 결정하는 것으로 위와 다른 코드가 적용됩니다.

 

 

위의 과정을 꼭 해보기를 권장하며

다음 글에서는 PWM 펄스폭 변조를 적용해 음계를 나타내는 방법에 대해 알아보겠습니다.

 

 

 

-아두이노 피에조 부저 울리기 끝-

댓글


page contents