아두이노 부저

이 튜토리얼에서는 아두이노를 프로그래밍하여 12V 액티브 부저를 제어해 큰 소리를 내는 방법을 배워보겠습니다. 5V 액티브/패시브 부저를 제어하고 싶다면, 이 아두이노 - 압전 부저을 확인하세요.

12V 버저를 구동하는 방법은 두 가지입니다. 릴레이는 간단하지만 스위칭할 때마다 딸깍 소리가 납니다. MOSFET 모듈은 같은 일을 소리 없이 하고, 매우 빠르게 스위칭할 수 있습니다. 그래서 경보음에 좋습니다. 이 튜토리얼에서는 두 가지 방법을 모두 사용해 봅니다.

준비물

1×아두이노 우노 R3 쿠팡 | 아마존
1×USB 2.0 타입 A-to-B 케이블 (USB-A PC용) 쿠팡 | 아마존
1×USB 2.0 타입 C-to-B 케이블 (USB-C PC용) 아마존
1×릴레이 아마존
1×(또는) MOSFET Module (AOD4184, LR7843 or FR120N) 아마존
1×12V Active Buzzer 쿠팡 | 아마존
1×12V 전원 어댑터 아마존
1×DC 커넥터 전원 연결 잭 플러그 소켓 쿠팡 | 아마존
1×점퍼케이블 쿠팡 | 아마존
1×(추천) 아두이노 우노용 스크루 터미널 블록 쉴드 쿠팡 | 아마존
1×(추천) Sensors/Servo Expansion Shield for Arduino Uno 쿠팡 | 아마존
1×(추천) 아두이노 우노용 브레드보드 쉴드 쿠팡 | 아마존
1×(추천) 아두이노 우노용 케이스 쿠팡 | 아마존
1×(추천) 아두이노 우노용 프로토타이핑 베이스 플레이트 & 브레드보드 키트 아마존
공개: 이 포스팅 에 제공된 일부 링크는 아마존 제휴 링크입니다. 이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다.

12V 액티브 부저에 대하여

12V 액티브 부저는 시끄러운 소리를 낼 수 있어 경보 시스템에 적합합니다.

핀배열

아두이노 12v active buzzer 사용법 핀아웃

12V 액티브 부저는 일반적으로 두 개의 핀이 있습니다:

  • Negative (-) pin (black): DC 전원 공급 장치의 GND에 연결해야 합니다.
  • Positive (+) pin (red): DC 전원 공급 장치의 12V에 연결해야 합니다.

12V 액티브 부저를 제어하는 방법

12V 액티브 버저가 12V 전원 공급장치로 작동되면 소리를 낸다. 12V 액티브 버저를 제어하기 위해서는 아두이노와 12V 액티브 버저 사이에 릴레이를 사용해야 한다. 아두이노는 릴레이를 통해 12V 액티브 버저를 제어할 수 있다. 릴레이(핀아웃, 작동 방식, 프로그래밍 방법 등)에 대해 모른다면, 아두이노 - 릴레이에서 릴레이에 대해 배워보세요.

MOSFET 모듈은 두 번째 선택입니다. 모듈의 핀, 내부 구조, 코드는 아두이노 - MOSFET 모듈 튜토리얼에서 설명합니다.

12V 버저용 릴레이와 MOSFET 모듈 비교

릴레이 MOSFET 모듈
할 수 있는 일 버저를 켜거나 끔 버저를 켜거나 끔
스위칭할 때 소음 매번 딸깍 소리가 나고 삐 소리와 섞임 소리 없음, 삐 소리만 들림
스위칭 속도 느림, 몇 밀리초 매우 빠름
빠른 삐 소리 릴레이가 크게 딸깍거리고 빨리 마모됨 문제없음
수명 여러 번 스위칭하면 접점이 마모됨 움직이는 부분이 없어 오래 감
전원 종류 AC 또는 DC DC만 가능
버저 전원 공급 장치 릴레이 정격에 맞는 모든 전압 약 6V 이상
Arduino와의 절연 예, 코일과 접점 사이 예, PC817 포토커플러로 절연
적합한 용도 몇 초 동안 켜는 것 같은 느린 ON/OFF 짧은 삐 소리가 많은 경보 패턴

버저가 천천히 울린다면 릴레이로 충분합니다. 짧은 삐 소리가 많은 경보음을 원한다면 MOSFET 모듈이 더 좋은 선택입니다.

선연결

아두이노 12v active buzzer 연결 배선도

이 이미지는 Fritzing을 사용하여 만들어졌습니다. 이미지를 확대하려면 클릭하세요.

프로젝트를 오래 실행하거나 케이스 안에 넣을 경우, 전선을 나사로 고정하는 것이 좋습니다. Proto Screw Terminal Block Shield 또는 Screw Shield V2를 사용해 보세요. Arduino 위에 장착되며, 각 핀마다 나사 단자가 있습니다. 아래는 Screw Shield V2를 사용한 배선도입니다.

아두이노 12v active buzzer 연결 배선도 (screw shield v2)

이 이미지는 Fritzing을 사용하여 만들어졌습니다. 이미지를 확대하려면 클릭하세요.

아두이노 코드

아래 코드는 12V 액티브 부저를 두 초 동안 켜고 다섯 초 동안 끕니다.

/* * 이 아두이노 코드는 newbiely.kr 에서 개발되었습니다 * 이 아두이노 코드는 어떠한 제한 없이 공개 사용을 위해 제공됩니다. * 상세한 지침 및 연결도에 대해서는 다음을 방문하세요: * https://newbiely.kr/tutorials/arduino/arduino-buzzer */ #define RELAY_PIN 4 // 아두이노 핀이 릴레이를 통해 부저를 제어합니다 // setup 함수는 보드에 전원을 넣거나 리셋을 누를 때 한 번 실행됩니다 void setup() { // 디지털 핀 D4를 출력으로 초기화합니다. pinMode(RELAY_PIN, OUTPUT); } // loop 함수는 계속해서 반복적으로 실행됩니다 void loop() { digitalWrite(RELAY_PIN, HIGH); // 부저를 2초 동안 켭니다 delay(2000); digitalWrite(RELAY_PIN, LOW); // 부저를 5초 동안 끕니다 delay(5000); }

사용 방법

  • 아두이노를 USB 케이블을 통해 PC에 연결하세요
  • 아두이노 IDE를 열고, 올바른 보드와 포트를 선택하세요
  • 위의 코드를 복사하고 아두이노 IDE로 열기
  • 아두이노 IDE에서 Upload 버튼을 클릭하여 코드를 아두이노에 업로드하세요
  • 12V 활성 버저의 상태를 확인하세요

코드 설명

위의 아두이노 코드의 주석 라인에서 설명을 찾을 수 있습니다.

MOSFET 모듈로 경보음 만드는 방법

이제 릴레이를 MOSFET 모듈로 바꿔 봅시다. 버저는 똑같이 작동하지만 딸깍 소리가 없어서, 실제 경보기처럼 빠르게 울릴 수 있습니다.

배선도

아두이노 12v 액티브 버저 mosfet 모듈 배선도

이 이미지는 Fritzing을 사용하여 만들어졌습니다. 이미지를 확대하려면 클릭하세요.

시작 연결 대상
Arduino 핀 9 MOSFET 모듈 PWM
Arduino GND MOSFET 모듈 GND
12V 어댑터 + MOSFET 모듈 +
버저 빨간색 선(+) MOSFET 모듈 + (어댑터 +와 같은 단자)
버저 검정색 선(−) MOSFET 모듈 LOAD
12V 어댑터 − MOSFET 모듈 −

대부분의 12V 액티브 버저는 안에 작은 회로가 있어서 플라이백 다이오드가 필요 없습니다. 버저가 자기식(안에 코일이 있음)이라면 버저 양단에 1N4007 또는 1N5819 다이오드를 연결하세요. 줄무늬가 있는 쪽(캐소드)은 버저 +에, 다른 쪽은 버저 −에 연결합니다.

Arduino 코드

/* * 이 아두이노 코드는 newbiely.kr 에서 개발되었습니다 * 이 아두이노 코드는 어떠한 제한 없이 공개 사용을 위해 제공됩니다. * 상세한 지침 및 연결도에 대해서는 다음을 방문하세요: * https://newbiely.kr/tutorials/arduino/arduino-buzzer */ #define MOSFET_PIN 9 // The Arduino pin connected to the PWM pin of the MOSFET module void setup() { Serial.begin(9600); pinMode(MOSFET_PIN, OUTPUT); digitalWrite(MOSFET_PIN, LOW); // start with the buzzer OFF } void loop() { // fast alarm beeps: 10 short beeps Serial.println("Alarm: fast beeps"); for (int i = 0; i < 10; i++) { digitalWrite(MOSFET_PIN, HIGH); // turn on buzzer delay(100); digitalWrite(MOSFET_PIN, LOW); // turn off buzzer delay(100); } // one long beep Serial.println("Alarm: long beep"); digitalWrite(MOSFET_PIN, HIGH); delay(1000); digitalWrite(MOSFET_PIN, LOW); // quiet time Serial.println("Quiet"); delay(3000); }

버저의 동작: 빠르게 10번 울리고, 한 번 길게 울린 다음, 3초 동안 조용합니다. 그리고 다시 시작합니다.

액티브 버저는 스스로 소리를 냅니다. digitalWrite()로 완전히 켜거나 완전히 끄기만 하세요. 볼륨을 바꾸려고 analogWrite()(PWM)를 사용하지 마세요. 소리가 약해지거나 이상해집니다.

빠른 단계

  • 위 릴레이 부분의 빠른 단계와 같이 설정합니다.
  • 다이어그램에 나온 대로 버저와 MOSFET 모듈을 배선합니다. 12V 어댑터는 뽑아 둡니다.
  • 위 코드를 Arduino에 업로드합니다.
  • 12V 어댑터를 꽂습니다.
  • 시리얼 모니터를 9600 보드레이트로 엽니다.
  • 버저 소리를 들어 보세요. 릴레이 딸깍 소리 없이 빠른 삐 소리가 들립니다.
∞
Newbiely | Arduino IDE 2.3.8
──
☐
✕
File
Edit
Sketch
Tools
Help
Arduino Uno
Newbiely.ino
···
8 Serial.println("Hello World!");
Output
Serial Monitor
Message (Enter to send message to 'Arduino Uno' on 'COM15')
New Line
9600 baud
Alarm: fast beeps Alarm: long beep Quiet Alarm: fast beeps Alarm: long beep Quiet
Ln 11, Col 1
Arduino Uno on COM15
2

※ 주의:

MOSFET 모듈은 DC에서만 작동하며, 버저 전원 공급 장치는 약 6V 이상이어야 합니다. 5V 버저는 아두이노 - 압전 부저을 참고하세요. AC 버저나 사이렌에는 릴레이를 사용하세요.

동영상

비디오 제작은 시간이 많이 걸리는 작업입니다. 비디오 튜토리얼이 학습에 도움이 되었다면, YouTube 채널 을 구독하여 알려 주시기 바랍니다. 비디오에 대한 높은 수요가 있다면, 비디오를 만들기 위해 노력하겠습니다.

댓글