아두이노 부저 센서 - adu-ino bujeo senseo

아두이노 부저 센서 - adu-ino bujeo senseo

안녕하세요

오늘은 아두이노로 부저 센서를 제어해볼 건데요

제어해보기 전에 앞서서

부저 센서에 대해서 알아보자면 피에조 부저라고도 불리며

전기적 신호를 이용하여 소리를 내는 부품을 뜻합니다.

이름의 유래는 피에조 효과를 이용하기 때문에 불리는데요

아두이노 부저 센서 - adu-ino bujeo senseo

그러면 피에조 효과란 무엇일까요?

피에조 효과결정에 압력을 가할 때 전기 분극에 의해서 전압이 발생하는 현상을 말하는데요

수정이나 세라믹과 같은 일부 물질의 경우 전기적 신호를 주면 물질이 응축,신장을 하는 효과를

피에조 효과라고 하며 압전 효과라고도 부르는데요

결정의 어느 방향에서 힘을 가한 경우, 정해진 방향에 전기분극을 일으키는

현상을 압전 효과라고 부릅니다.

그리고 다시 부저 센서를 소개하자면 코드상에서의 음량 조절은 불가능합니다.

한마디로 말하면 코드가 업로드되어 동작되면 바로 소리가 나오는데요

조용한 공간에서 소리 때문에 깜짝 놀라실 수도 있으니 당황하지 마시기 바랍니다~

아두이노 부저 센서 - adu-ino bujeo senseo

그리고 이 소리는 진동수의 값에 따라 여러 가지 음역대가 출력이 가능한데요

같은 음만 계속 출력할 수도 있지만 피아노처럼 음악도 연주가 가능하다는 뜻입니다.

정말 신기하죠?

아두이노 부저 센서 - adu-ino bujeo senseo

또 이 부저 센서는 수동 부저능동 부저가 있는데요

이 부저들은 구별법이 있는데 부저에 전원을 공급했을 때 소리가 나면 능동 부저이고

소리가 나지 않으면 수동 부저라고 하며

서로의 다리길이가 다르면 능동 부저이고 다리길이가 서로 같으면 수동 부저라고 합니다.

이둘의 차이는 간단한데요

능동 부저는 단일음으로 간단하게 경보음 같은 중복적인 음을 출력할 때 적합하며

수동 부저는 음역대를 조절하여 멜로디를 출력하는 데에 적합합니다.

부저 센서에 대해 간단하게 알아봤으니 이젠 한번 직접 해봐야겠죠?

아두이노 부저 센서 - adu-ino bujeo senseo

먼저 아래의 사진과 같이 준비하셔야 할 게 있는데요

아두이노 부저 센서 - adu-ino bujeo senseo

USB Cable, 부저 센서, AC/DC Adapter, 브레드 보드, 점퍼케이블,우노 보드

이렇게 준비하시면 되겠습니다.

그다음은 빈 브레드 보드에 부저 센서를 장착해주시면 되겠습니다.

아두이노 부저 센서 - adu-ino bujeo senseo

그리고 점퍼케이블로 아래 사진과 같이 우노 보드와 브레드 보드에 연결 해주시면 됩니다.

아두이노 부저 센서 - adu-ino bujeo senseo

그리고 USB Cable과 AC/DC Adapter로 각각 컴퓨터 본체 USB Port와 콘센트에

연결해주시고 사진과 같이 우노 보드에도 연결해주시면 됩니다.

아두이노 부저 센서 - adu-ino bujeo senseo

그리고 이제 마지막으로 아두이노 프로그램에서 코드만 입력해주시면 끝입니다

참 쉽죠?

아두이노 부저 센서 - adu-ino bujeo senseo

지금 제가 올려 놓은 코드는 간단하지만 다양한 연주가 가능합니다~

#define BUZ_PIN 9 //부저 연결 핀 선언

#define DO 256 //4옥타브 기준의 피아노 음계 주파수 선언

#define RE 288

#define MI 320

#define FA 341

#define SO 384

#define LA 427

#define TI 480

#define DELAY 300 //딜레이 값 선언

int music[] = {SO,SO,LA,LA,SO,SO,MI,SO,SO,MI,MI,RE,

SO,SO,LA,LA,SO,SO,MI,SO,MI,RE,MI,DO}; //음계 배열

void setup()

{

}

void loop()

{

music_play();

}

void music_play() //멜로디 재생

{

for(int i = 0; i < sizeof(music)/sizeof(int); i++)

{

tone(BUZ_PIN, music[i] * 2, 100);

delay(DELAY);

}

}

밑에 영상은 위의 코드를 이용하여 학교종이 땡땡땡을 연주해보았습니다

그럼 전 여기서 이만 글쓰기를 마치도록 하겠습니다

궁금하신 점은 댓글을 남겨주세요

긴 글 봐주셔서 감사합니다 다음에 또 뵙도록 하겠습니다

아두이노 부저 센서 - adu-ino bujeo senseo