ESP8266 - 문 센서 - LED | ESP8266 - Door Sensor - LED
이 튜토리얼은 ESP8266과 문 센서를 사용하여 LED를 제어하는 방법을 안내합니다. 우리는 두 가지 다른 응용 프로그램을 배울 것입니다:
어플리케이션 1 - 문이 열려 있을 때 LED가 켜지고 문이 닫혀 있을 때는 LED가 꺼집니다. LED의 상태는 문 센서의 상태와 동기화됩니다. 자세히는:
- 문이 열리면 ESP8266이 LED를 켭니다.
- 문이 닫히면 ESP8266이 LED를 끕니다.
애플리케이션 2 - 문이 열릴 때마다 LED 상태가 토글됩니다. 보다 구체적으로:
- ESP8266이 문이 열렸음을 감지하면 (센서 상태가 LOW에서 HIGH로 변경될 때), 현재 꺼져 있으면 LED를 켜고, 현재 켜져 있으면 LED를 끕니다.
- 문 센서를 닫는 것은 LED 상태에 영향을 주지 않습니다.
준비물
1 | × | ESP8266 NodeMCU | Amazon | |
1 | × | Micro USB Cable | Amazon | |
1 | × | Door Sensor | 쿠팡 | Amazon | |
1 | × | LED | Amazon | |
1 | × | 220 ohm resistor | Amazon | |
1 | × | Breadboard | 쿠팡 | Amazon | |
1 | × | Jumper Wires | Amazon | |
1 | × | (Optional) 5V Power Adapter for ESP8266 | Amazon | |
1 | × | (Optional) Screw Terminal Expansion Board for ESP8266 | 쿠팡 | Amazon |
LED 및 도어 센서에 관하여
LED와 도어 센서(핀아웃, 작동 및 프로그래밍 포함)에 익숙하지 않다면, 다음 튜토리얼이 도움이 될 수 있습니다:
선연결
이 이미지는 Fritzing을 사용하여 만들어졌습니다. 이미지를 확대하려면 클릭하세요.
ESP8266의 핀 배치 및 ESP8266 및 다른 구성 요소에 전원을 공급하는 방법에 대해 더 많이 보십시오.
애플리케이션 1 - LED 상태가 문 센서 상태와 동기화됩니다
ESP8266 코드
사용 방법
Arduino IDE에서 ESP8266을 시작하는 방법은 다음과 같습니다:
- ESP8266을 처음 사용하는 경우, Arduino IDE에서 ESP8266 환경 설정하는 방법 튜토리얼을 확인하세요.
- 다이어그램에 표시된 대로 구성 요소를 연결하세요.
- USB 케이블을 사용하여 ESP8266 보드를 컴퓨터에 연결하세요.
- 컴퓨터에서 Arduino IDE를 엽니다.
- 올바른 ESP8266 보드(예: NodeMCU 1.0 (ESP-12E Module))와 해당 COM 포트를 선택하세요.
- USB 케이블로 컴퓨터에 ESP8266을 연결하세요.
- Arduino IDE를 실행하고 올바른 보드와 포트를 선택하세요.
- 코드를 복사하고 Arduino IDE에서 엽니다.
- Arduino IDE에서 Upload 버튼을 클릭하여 코드를 ESP8266에 컴파일 및 업로드하세요.
- 문을 열고 닫으세요.
- LED 상태의 변화를 확인하세요.
문이 열리면 LED 상태가 도어 센서 상태와 동기화되어 있음을 볼 수 있습니다.
코드 설명
소스 코드의 주석에 포함된 줄별 설명을 확인하세요!
애플리케이션 2 - 도어 센서가 LED를 토글합니다
ESP8266 코드 - 문 센서가 LED를 토글합니다
코드 설명
ESP8266 코드 위의 주석 라인에서 설명을 찾을 수 있습니다.
코드에서 led_state = !led_state 표현식은 다음 코드와 같습니다:
사용 방법
- 코드를 복사하여 Arduino IDE에서 열어보세요.
- 코드를 ESP8266에 업로드하세요.
- 문을 여러 번 열고 닫아보세요.
- LED 상태의 변화를 확인하세요.
문이 닫힐 때마다 LED 상태가 한 번씩 토글되는 것을 보게 될 것입니다.
동영상
비디오 제작은 시간이 많이 걸리는 작업입니다. 비디오 튜토리얼이 학습에 도움이 되었다면, YouTube 채널 을 구독하여 알려 주시기 바랍니다. 비디오에 대한 높은 수요가 있다면, 비디오를 만들기 위해 노력하겠습니다.