ESP32 - 릴레이 | ESP32 - Relay
LED는 ESP32에 직접 연결할 수 있지만 고전압 장치(예: 전기 램프, 펌프, 전자기 잠금장치, 리니어 액추에이터 또는 큰 기계 등)는 ESP32에 직접 연결할 수 없습니다. 고전압 장치와 ESP32 사이에는 릴레이가 필요합니다. 릴레이 없이는 고전압이 ESP32를 파괴할 것입니다.
- LED와 전기 램프를 제어하는 공통점: ESP32 코드는 ESP32의 출력 핀을 HIGH/LOW로 프로그래밍하여 그것들을 켜거나 끕니다.
- LED와 전기 램프를 제어하는 차이점:
- LED 제어: LED는 3.3v 또는 그 이하에서 작동할 수 있으므로 ⇒ ESP32의 핀에 LED를 직접 연결할 수 있습니다.
- 전기 램프 제어: 전기 램프는 고전압(예: 12V)으로 작동합니다 ⇒ ESP32의 핀에 전기 램프를 직접 연결할 수 없습니다. ESP32의 핀과 전기 램프 사이에 릴레이를 사용해야 합니다. 그렇지 않으면 ESP32가 타 버릴 것입니다.
- 고전압 작업 시 주의해 주십시오. 진심으로, 전기 충격을 받거나 생명을 잃을 수도 있습니다. 100% 확신이 없다면, 스스로에게 호의를 베풀고 아무것도 만지지 마십시오. 아는 사람에게 물어보십시오!
- 일부 릴레이는 DC와 AC 전압 모두에서 작동할 수 있지만, AC 전압 사용은 극히 권장하지 않습니다. DC 장치(≤24V)만 사용하십시오.
- DC- 핀: 이 핀을 GND(0V)에 연결하십시오
- DC+ 핀: 이 핀을 VCC(5V)에 연결하십시오
- IN 핀: ESP32에서 제어 신호를 받습니다
- NO 핀: Normally Open 핀
- NC 핀: Normally Closed 핀
- COM 핀: 공통 핀
- 노멀리 오픈 모드: COM 핀과 NO 핀만 사용하세요
- 노멀리 클로즈드 모드: COM 핀과 NC 핀만 사용하세요
- 저수준 트리거 모드
- 고수준 트리거 모드
- 정상 개방 모드
- 정상 폐쇄 모드. 이 모드들은 서로 반대입니다.
- 노멀리 오픈과 노멀리 클로즈드 모드는 반대로 작동합니다
- 대부분의 릴레이 모듈은 노멀리 오픈과 노멀리 클로즈드 모드를 모두 지원합니다
- 로우 레벨 트리거와 하이 레벨 트리거 모드는 반대로 작동합니다
- 모든 릴레이 모듈이 로우 레벨 트리거와 하이 레벨 트리거 모드를 모두 지원하는 것은 아닙니다
- 한 번에, 릴레이 모듈은 로우 레벨 트리거와 하이 레벨 트리거 모드 중 하나에서만 작동할 수 있습니다
- IN 핀이 LOW(0V)에 연결되면 스위치가 열립니다. 디바이스는 꺼져 있습니다(또는 비활성화됩니다).
- IN 핀이 HIGH(5V 또는 3.3V)에 연결되면 스위치가 닫힙니다. 디바이스는 켜져 있습니다(또는 활성화됩니다).
- IN 핀이 LOW(0V)에 연결되면 ⇒ 스위치가 닫힘 ⇒ 장치가 켜짐(또는 활성화됨).
- IN 핀이 HIGH(5V 또는 3.3V)에 연결되면 ⇒ 스위치가 열림 ⇒ 장치가 꺼짐(또는 비활성화됨).
- ESP32의 핀을 릴레이의 IN 핀에 연결하세요.
- ESP32의 핀을 LOW 또는 HIGH로 프로그래밍하여 릴레이를 제어하세요.
- ESP32를 처음 사용하는 경우 Arduino IDE에서 ESP32 환경 설정 방법을 확인하세요.
- 위의 코드를 복사하여 Arduino IDE에 붙여넣기 하세요.
- Arduino IDE의 Upload 버튼을 클릭하여 ESP32 보드에 코드를 컴파일하고 업로드하세요.
- LED 스트립 상태 확인: 깜박임
준비물
1 | × | ESP-WROOM-32 Dev Module | 쿠팡 | Amazon | |
1 | × | USB Cable Type-C | 쿠팡 | Amazon | |
1 | × | Relay | Amazon | |
1 | × | LED Strip | Amazon | |
1 | × | 12V Power Adapter | Amazon | |
1 | × | Breadboard | 쿠팡 | Amazon | |
1 | × | Jumper Wires | Amazon | |
1 | × | (Optional) DC Power Jack | 쿠팡 | Amazon | |
1 | × | (Recommended) Screw Terminal Expansion Board for ESP32 | 쿠팡 | Amazon |
릴레이에 관하여
릴레이는 전기 장치의 켜기/끄기를 제어하는 데 사용할 수 있는 프로그래밍 가능한 스위치입니다. 릴레이는 ESP32로 프로그램 방식으로 제어될 수 있습니다 ⇒ ESP32는 릴레이를 사용하여 고전압 장치의 켜기/끄기를 제어할 수 있습니다.
WARNING
안전이 최우선입니다! 안전이 최우선입니다!
릴레이 핀배열
릴레이 핀은 입력(저전압)과 출력(고전압)의 두 그룹으로 분류할 수 있습니다.
입력 핀: ESP32와 연결되며, 다음과 같은 세 개의 핀이 포함됩니다:
출력 핀: 고전압 장치에 연결되며, 일반적으로 스크류 터미널에서 다음과 같은 세 개의 핀이 포함됩니다:
통상적으로 우리는 모든 고전압 핀을 사용하지 않습니다. 우리가 선택한 운영 모드에 따라 보통 두 개만 사용합니다:
또한, 릴레이가 LOW 레벨 트리거와 HIGH 레벨 트리거를 모두 지원하는 경우, 보통 LOW 레벨 트리거 또는 HIGH 레벨 트리거 중 하나를 선택하기 위한 점퍼가 있습니다.
※ NOTE THAT:
릴레이의 핀 순서는 제조업체마다 다를 수 있습니다. 릴레이에 인쇄된 라벨을 주의 깊게 확인해 주세요!
고전압 장치를 릴레이에 연결하는 방법
릴레이 작동 방법
릴레이 모듈이 작동하는 방식은 우리의 선택에 따라 여러 가지가 있습니다.
입력 측면에서, 아래의 두 가지 반대되는 입력 모드 중 하나를 선택할 수 있습니다:
출력 측면에서, 아래 두 가지 반대되는 출력 모드 중 하나를 선택할 수 있습니다:
“normally”는 “IN 핀이 LOW(0V)에 연결되어 있다면”을 의미합니다.
세부 정보에 들어가기 전에, 몇 가지 간단한 정보를 먼저 살펴보겠습니다:
입력 모드 모드와 출력 모드 모드의 조합은 많은 사용 사례를 만들어냅니다. 만약 초보자라면, HIGH 레벨 트리거 모드와 노멀리 오픈 모드 사용을 추천합니다.
저수준 트리거와 고수준 트리거 모드가 반대로 작동하기 때문에 다음은 고수준 트리거 모드를 자세히 설명할 것입니다. 저수준 트리거는 반대로 작동합니다.
고수준 트리거 - 보통 개방 모드
고전압 장치를 COM 핀과 NO 핀에 연결하세요. 스위치처럼:
고 레벨 트리거 - 보통 닫힌 모드
고전압 장치를 COM 핀과 NC 핀에 연결하세요. 스위치처럼요:
어떤 모드를 사용해야 하나요?
⇒ 응용 프로그램에 따라 다릅니다.
일반적으로 열린 모드 대 일반적으로 닫힌 모드
릴레이는 스위치와 마찬가지입니다. 아래 표는 HIGH Level Trigger의 두 가지 모드 차이를 보여줍니다.
Pins used | IN pin | Relay state | Device state | |
---|---|---|---|---|
Normally Open Mode | COM and NO pin | LOW | ⇒ open | ⇒ OFF |
Normally Closed Mode | COM and NC pin | LOW | ⇒ closed | ⇒ ON |
Normally Open Mode | COM and NO pin | HIGH | ⇒ closed | ⇒ ON |
Normally Closed Mode | COM and NC pin | HIGH | ⇒ open | ⇒ OFF |
ESP32 - 릴레이
고전압 장치는 릴레이를 통해 ESP32에 의해 제어될 수 있습니다.
릴레이를 제어하는 것은 식은 죽 먹기입니다. 우리에게 필요한 것은 다음과 같습니다:
선연결
이 이미지는 Fritzing을 사용하여 만들어졌습니다. 이미지를 확대하려면 클릭하세요.
ESP32 및 다른 구성 요소에 전원을 공급하는 방법에 대해 잘 알지 못하는 경우, 다음 튜토리얼에서 안내를 찾을 수 있습니다: ESP32 전원 공급 방법.
릴레이 모듈과 ESP32 사이의 배선 표
Relay Module | ESP32 |
---|---|
GND | → GND |
VCC | → Vin (5V) |
IN | → GPIO16 |
ESP32를 사용한 릴레이 프로그래밍 방법
pinMode() 함수를 사용하여 ESP32의 핀을 디지털 출력 모드로 설정합니다. 예를 들어, pin GPIO16:
digitalWrite() 함수를 사용하여 출력 핀을 LOW(0V)로 프로그래밍합니다:
digitalWrite() 함수를 사용하여 출력 핀을 HIGH (3.3V)로 프로그래밍하세요.