ESP8266 - LDR 모듈 | ESP8266 - LDR Module

LDR 광 센서 모듈은 주변의 빛의 양을 감지하고 측정할 수 있습니다. 이 모듈은 디지털 신호(LOW 또는 HIGH)를 출력하는 하나와 아날로그 신호를 출력하는 다른 하나의 두 가지 출력을 가지고 있습니다.

이 튜토리얼은 ESP8266과 LDR 광센서 모듈을 사용하여 빛을 감지하고 측정하는 방법을 안내합니다. 다음을 다룰 것입니다:

LDR Light Sensor Module
image source: diyables.io

나중에 조도센서(LDR)가 빛을 감지하면 릴레이를 사용하여 LED나 전구를 켤 수 있도록 코드를 변경할 수 있습니다.

원형 그대로의 광 센서를 선호한다면, ESP8266 - 광 센서에 관한 튜토리얼을 탐색하는 것을 제안합니다.

준비물

1×ESP8266 NodeMCU Amazon
1×Micro USB Cable Amazon
1×LDR Light Sensor Module Amazon
1×Jumper Wires Amazon
1×(Optional) 5V Power Adapter for ESP8266 Amazon
1×(Optional) ESP8266 Screw Terminal Adapter Amazon
공개: 이 섹션에서 제공된 링크 중 일부는 제휴 링크입니다. 이 링크를 통해 구매한 경우 추가 비용없이 수수료를 받을 수 있습니다. 지원해 주셔서 감사합니다.

LDR 광 센서 모듈에 대하여

LDR 광 센서 모듈을 사용하여 해당 지역에 빛이 있는지 감지하거나 얼마나 밝은지 측정할 수 있습니다. 선택할 수 있는 디지털 출력 핀과 아날로그 출력 핀이 있습니다.

핀배열

LDR 광 센서 모듈에는 네 개의 핀이 있습니다:

  • VCC 핀: 3.3V에서 5V 사이의 전압을 가진 전원에 연결하십시오.
  • GND 핀: 0V를 가진 접지에 연결하십시오.
  • DO 핀: 이것은 디지털 출력 핀입니다. 어두울 때 HIGH 신호를, 밝을 때는 LOW 신호를 제공합니다. 모듈에 내장된 가변 저항을 사용하여 어둠과 밝음 사이의 임계값을 조정할 수 있습니다.
  • AO 핀: 이것은 아날로그 출력 핀입니다. 밝아질수록 출력값이 감소하고 어두워질수록 증가합니다.
LDR Light Sensor Module Pinout
image source: diyables.io

게다가, LDR 광 센서 모듈은 두 개의 LED 표시등을 포함합니다:

  • 하나의 PWR-LED 지시등이 전원 상태를 보여줍니다.
  • 하나의 DO-LED 지시등이 DO 핀의 빛 상태를 보여줍니다: 빛이 있을 때 켜지고 어두울 때 꺼집니다.

작동 원리

DO 핀에 관하여:

  • LDR 광 센서 모듈은 빛 감지에 대한 민감도나 임계값을 조정할 수 있게 해주는 내장형 포텐시오미터를 가지고 있습니다.
  • 주변 환경의 빛 강도가 설정된 임계값보다 높을 때(즉, 밝을 때), 센서의 출력 핀이 LOW가 되고, DO-LED가 켜집니다.
  • 주변 환경의 빛 강도가 설정된 임계값보다 낮을 때(즉, 어둡을 때), 센서의 출력 핀이 HIGH가 되고, DO-LED가 꺼집니다.

AO 핀에 관하여:

주변 환경의 빛의 강도가 증가함에 따라 (즉, 더 밝아짐에 따라) AO 핀에서 읽은 값이 감소합니다.

주변 환경의 빛의 강도가 감소함에 따라 (즉, 더 어두워짐에 따라) AO 핀에서 읽은 값이 증가합니다.

포텐쇼미터는 AO 핀의 값을 영향을 주지 않는다는 것을 유의하세요.

선연결

빛 센서 모듈에 두 개의 출력이 있기 때문에, 필요에 따라 하나 또는 둘 다를 사용할 수 있습니다.

DO만 사용할 때 ESP8266과 LDR 광 센서 모듈 간의 배선도.

ESP8266 NodeMCU LDR Light Sensor Module wiring diagram

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

ESP8266의 핀 배치ESP8266 및 다른 구성 요소에 전원을 공급하는 방법에 대해 더 많이 보십시오.

ESP8266과 LDR 광센서 모듈을 AO만 사용할 때의 배선도.

ESP8266 NodeMCU LDR Module wiring diagram

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

ESP8266과 LDR 조도 센서 모듈을 AO와 DO 모두 사용할 때의 연결도

ESP8266 NodeMCU Light Sensor Module wiring diagram

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

ESP8266 코드 - DO 핀에서 값 읽기

/* * 이 ESP8266 NodeMCU 코드는 newbiely.kr 에서 개발되었습니다 * 이 ESP8266 NodeMCU 코드는 어떠한 제한 없이 공개 사용을 위해 제공됩니다. * 상세한 지침 및 연결도에 대해서는 다음을 방문하세요: * https://newbiely.kr/tutorials/esp8266/esp8266-ldr-module */ #define DO_PIN D7 // ESP8266의 DO 핀에 연결된 핀 void setup() { // 시리얼 모니터와 통신하기 위해 시리얼 초기화합니다. Serial.begin(9600); // ESP8266의 핀을 입력으로 초기화합니다. pinMode(DO_PIN, INPUT); } void loop() { int light_state = digitalRead(DO_PIN); if (light_state == HIGH) Serial.println("The light is NOT present"); else Serial.println("The light is present"); }

사용 방법

Arduino IDE에서 ESP8266을 시작하는 방법은 다음과 같습니다:

  • ESP8266을 처음 사용하는 경우, Arduino IDE에서 ESP8266 환경 설정 방법 튜토리얼을 확인하세요.
  • 다이어그램에 표시된 대로 구성 요소를 연결하세요.
  • USB 케이블을 사용하여 ESP8266 보드를 컴퓨터에 연결하세요.
  • 컴퓨터에서 Arduino IDE를 엽니다.
  • 올바른 ESP8266 보드를 선택하세요. 예를 들어, (NodeMCU 1.0 (ESP-12E Module))과 그에 맞는 COM 포트를 선택하세요.
  • 위의 코드를 복사하고 Arduino IDE로 열기
  • Arduino IDE에서 Upload 버튼을 클릭하여 코드를 ESP8266에 업로드하세요
  • 손이나 다른 물건으로 LDR 광 센서 모듈을 가리고 가리지 않기
  • 시리얼 모니터에서 결과를 확인하세요.
COM6
Send
The light is present The light is present The light is NOT present The light is NOT present The light is NOT present The light is present The light is present The light is present
Autoscroll Show timestamp
Clear output
9600 baud  
Newline  

LED 상태가 빛의 조건에 관계없이 계속 켜져 있거나 꺼져 있는 것이 관찰되면, 가변 저항기를 조정할 수 있는 옵션이 있습니다. 이 조정을 통해 센서의 빛 감도를 미세 조정할 수 있습니다.

또한, 빛이 감지되었을 때 LED 또는 조명을 활성화하도록 코드를 수정할 수 있는 유연성을 가지고 있습니다. 회전을 가능하게 하는 서보 모터를 제어할 수도 있습니다. 자세한 지침과 추가 정보는 이 가이드의 끝에 제공된 튜토리얼을 참조하십시오.

ESP8266 코드 - AO 핀에서 값 읽기

/* * 이 ESP8266 NodeMCU 코드는 newbiely.kr 에서 개발되었습니다 * 이 ESP8266 NodeMCU 코드는 어떠한 제한 없이 공개 사용을 위해 제공됩니다. * 상세한 지침 및 연결도에 대해서는 다음을 방문하세요: * https://newbiely.kr/tutorials/esp8266/esp8266-ldr-module */ #define AO_PIN A0 // ESP8266의 핀이 ldr 모듈의 AO 핀에 연결되었습니다. void setup() { // 직렬 통신을 직렬 모니터와 통신하기 위해 초기화합니다. Serial.begin(9600); } void loop() { int light_value = analogRead(AO_PIN); Serial.print("The analog value: "); Serial.println(light_value); }

사용 방법

  • 위의 코드를 복사하고 아두이노 IDE로 열기
  • ESP8266에 코드를 업로드하기 위해 아두이노 IDE에서 Upload 버튼을 클릭하세요
  • 손이나 무언가로 LDR 광 센서 모듈을 가리고 가리지 않기
  • 직렬 모니터에서 결과를 확인하세요.
COM6
Send
The analog value: 145 The analog value: 146 The analog value: 146 The analog value: 572 The analog value: 678 The analog value: 945 The analog value: 956 The analog value: 1001 The analog value: 1002 The analog value: 1012 The analog value: 1013 The analog value: 645 The analog value: 546 The analog value: 346 The analog value: 172
Autoscroll Show timestamp
Clear output
9600 baud  
Newline  

동영상

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

※ OUR MESSAGES

  • Please feel free to share the link of this tutorial. However, Please do not use our content on any other websites. We invested a lot of effort and time to create the content, please respect our work!