ESP8266 부저

이 튜토리얼은 ESP8266을 프로그래밍하여 12V 액티브 부저를 제어해 큰 소리를 내는 방법을 안내합니다. 5V 액티브/패시브 부저를 제어하고 싶다면, 이 ESP8266 - 피에조 부저을 확인해 주세요.

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

준비물

1×Micro USB Cable 아마존
1×ESP8266 NodeMCU 쿠팡 | 아마존
1×USB 케이블 타입-A to 타입-C (USB-A PC용) 쿠팡 | 아마존
1×USB 케이블 타입-C to 타입-C (USB-C PC용) 아마존
1×릴레이 아마존
1×(또는) MOSFET Module (AOD4184, LR7843 or FR120N) 아마존
1×12V Active Buzzer 쿠팡 | 아마존
1×12V 전원 어댑터 아마존
1×DC 커넥터 전원 연결 잭 플러그 소켓 쿠팡 | 아마존
1×점퍼케이블 쿠팡 | 아마존
1×(추천) ESP8266용 스크루 터미널 확장 보드 쿠팡 | 아마존
공개: 이 포스팅 에 제공된 일부 링크는 아마존 제휴 링크입니다. 이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다.

12V 액티브 부저에 대하여

12V 액티브 부저는 큰 소리를 낼 수 있으며, 이는 경보 시스템에 적합합니다.

핀배열

ESP8266 NodeMCU 12v active buzzer 사용법 핀아웃

12V 액티브 부저는 보통 두 개의 핀을 가지고 있습니다:

  • 부(-) 극 (검정색): DC 전원 공급 장치의 GND에 연결해야 합니다.
  • 양(+) 극 (빨간색): DC 전원 공급 장치의 12V에 연결해야 합니다.

12V 액티브 부저 제어 방법

12V 활성 부저가 12V 전원 공급 장치로 구동될 때 소리를 낸다. 12V 활성 부저를 제어하기 위해서는 ESP8266과 12V 활성 부저 사이에 릴레이를 사용해야 한다. ESP8266은 릴레이를 통해 12V 활성 부저를 제어할 수 있다. 릴레이(핀 아웃, 작동 원리, 프로그래밍 방법 등)에 대해 모른다면, ESP8266 - 릴레이에서 릴레이에 대해 알아보십시오.

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

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

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

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

선연결

ESP8266 NodeMCU 12v active buzzer 연결 배선도

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

ESP8266 핀배열 및 ESP8266 전원을 켜는 방법에 대해 더 많이 보십시오.

브레드보드를 사용하지 않는다면 이렇게 연결하세요:

ESP8266 NodeMCU 12v active buzzer 연결 배선도 (브레드보드 없음)

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

ESP8266 코드

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

/* * 이 ESP8266 NodeMCU 코드는 newbiely.kr 에서 개발되었습니다 * 이 ESP8266 NodeMCU 코드는 어떠한 제한 없이 공개 사용을 위해 제공됩니다. * 상세한 지침 및 연결도에 대해서는 다음을 방문하세요: * https://newbiely.kr/tutorials/esp8266/esp8266-buzzer */ #define RELAY_PIN D7 // ESP8266 핀이 릴레이를 통해 부저를 제어합니다 // 설정 함수는 재설정이나 전원 켜짐 시 한 번 실행됩니다 void setup() { // 디지털 핀 D7을 출력으로 초기화합니다. pinMode(RELAY_PIN, OUTPUT); } // loop 함수는 무한 반복됩니다 void loop() { digitalWrite(RELAY_PIN, HIGH); // 부저를 2초 동안 켭니다 delay(2000); digitalWrite(RELAY_PIN, LOW); // 부저를 5초 동안 끕니다 delay(5000); }

사용 방법

Arduino IDE에서 ESP8266을 시작하기 위해 다음 단계를 따르세요:

ESP8266을 처음 사용한다면 ESP8266 - 소프트웨어 설치 튜토리얼을 확인하세요.

도표에 표시된 대로 구성 요소들을 연결하세요.

ESP8266 보드를 USB 케이블을 사용하여 컴퓨터에 연결하세요.

컴퓨터에서 Arduino IDE를 엽니다.

올바른 ESP8266 보드를 선택하세요, 예를 들면 (NodeMCU 1.0 (ESP-12E Module)), 그리고 해당하는 COM 포트를 선택하세요.

ESP8266을 USB 케이블을 통해 PC에 연결하세요

Arduino IDE를 열고, 올바른 보드와 포트를 선택하세요

위의 코드를 복사하고 Arduino IDE에서 엽니다

Arduino IDE에서 Upload 버튼을 클릭하여 ESP8266에 코드를 업로드하세요

12V 활성 부저의 상태를 확인하세요

코드 설명

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

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

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

배선도

ESP8266 NodeMCU 12v 액티브 부저 mosfet 모듈 배선도

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

시작 연결 대상
ESP8266 D5 (GPIO14) MOSFET 모듈 PWM
ESP8266 G (GND) MOSFET 모듈 GND
12V 어댑터 + MOSFET 모듈 +
부저 빨간색 선(+) MOSFET 모듈 + (어댑터 +와 같은 단자)
부저 검정색 선(−) MOSFET 모듈 LOAD
12V 어댑터 − MOSFET 모듈 −

3.3V ESP8266 핀으로 충분합니다. PC817 포토커플러의 LED에는 몇 밀리암페어만 흐르기 때문입니다.

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

ESP8266 코드

/* * 이 ESP8266 NodeMCU 코드는 newbiely.kr 에서 개발되었습니다 * 이 ESP8266 NodeMCU 코드는 어떠한 제한 없이 공개 사용을 위해 제공됩니다. * 상세한 지침 및 연결도에 대해서는 다음을 방문하세요: * https://newbiely.kr/tutorials/esp8266/esp8266-buzzer */ const int MOSFET_PIN = D5; // ESP8266 pin D5 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 어댑터는 뽑아 둡니다.
  • 위 코드를 ESP8266에 업로드합니다.
  • 12V 어댑터를 꽂습니다.
  • 시리얼 모니터를 9600 보드레이트로 엽니다.
  • 부저 소리를 들어 보세요. 릴레이 딸깍 소리 없이 빠른 삐 소리가 들립니다.
∞
Newbiely | Arduino IDE 2.3.8
──
☐
✕
File
Edit
Sketch
Tools
Help
Nodemcu 1.0 (ESP-12E Module)
Newbiely.ino
···
8 Serial.println("Hello World!");
Output
Serial Monitor
Message (Enter to send message to 'Nodemcu 1.0 (ESP-12E Module)' on 'COM15')
New Line
9600 baud
Alarm: fast beeps Alarm: long beep Quiet Alarm: fast beeps Alarm: long beep Quiet
Ln 11, Col 1
Nodemcu 1.0 (ESP-12E Module) on COM15
2

※ 주의:

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

동영상

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