ESP8266 - DHT11 - LCD | ESP8266 - DHT11 - LCD
이 튜토리얼은 ESP8266을 사용하여 DHT11 센서에서 온도와 습도를 읽고 그것들을 LCD I2C에 표시하는 방법을 안내합니다.
준비물
1 | × | ESP8266 NodeMCU | Amazon | |
1 | × | Micro USB Cable | Amazon | |
1 | × | LCD I2C | 쿠팡 | Amazon | |
1 | × | DHT11 Temperature and Humidity Sensor | Amazon | |
1 | × | Jumper Wires | Amazon | |
1 | × | (Optional) 5V Power Adapter for ESP8266 | Amazon | |
1 | × | (Optional) Screw Terminal Expansion Board for ESP8266 | 쿠팡 | Amazon |
공개: 이 섹션에서 제공된 링크 중 일부는 제휴 링크입니다. 이 링크를 통해 구매한 경우 추가 비용없이 수수료를 받을 수 있습니다. 지원해 주셔서 감사합니다.
DHT11과 LCD에 관하여
DHT11 온도 습도 센서와 LCD(핀아웃, 작동 원리, 프로그래밍 방법 포함)에 익숙하지 않다면, 다음 튜토리얼이 도움이 될 수 있습니다:
선연결
ESP8266 - DHT11 및 LCD 배선도
이 이미지는 Fritzing을 사용하여 만들어졌습니다. 이미지를 확대하려면 클릭하세요.
ESP8266의 핀 배치 및 ESP8266 및 다른 구성 요소에 전원을 공급하는 방법에 대해 더 많이 보십시오.
ESP8266 코드 - DHT11 센서 - LCD I2C
/*
* 이 ESP8266 NodeMCU 코드는 newbiely.kr 에서 개발되었습니다
* 이 ESP8266 NodeMCU 코드는 어떠한 제한 없이 공개 사용을 위해 제공됩니다.
* 상세한 지침 및 연결도에 대해서는 다음을 방문하세요:
* https://newbiely.kr/tutorials/esp8266/esp8266-dht11-lcd
*/
#include <DHT.h>
#include <LiquidCrystal_I2C.h>
#define DHT11_PIN D7 // ESP8266 핀 D7이 DHT11 센서에 연결되어 있습니다.
LiquidCrystal_I2C lcd(0x27, 16, 2); // I2C 주소 0x27 (DIYables LCD에서), 16열과 2행
DHT dht11(DHT11_PIN, DHT11);
void setup() {
dht11.begin(); // DHT 센서 초기화
lcd.init(); // LCD I2C 디스플레이 초기화
lcd.backlight(); // 백라이트 켜기
}
void loop() {
float humi = dht11.readHumidity(); // 습도 읽기
float temperature_C = dht11.readTemperature(); // 온도 읽기
lcd.clear();
// 읽기가 성공적으로 이루어졌는지 확인
if (isnan(temperature_C) || isnan(humi)) {
lcd.setCursor(0, 0);
lcd.print("Failed");
} else {
lcd.setCursor(0, 0); // 디스플레이 위치
lcd.print("Temp: ");
lcd.print(temperature_C); // 온도 표시
lcd.print("°C");
lcd.setCursor(0, 1); // 디스플레이 위치
lcd.print("Humi: ");
lcd.print(humi); // 습도 표시
lcd.print("%");
}
// 읽기 사이에 2초간 대기
delay(2000);
}
※ NOTE THAT:
LCD의 I2C 주소는 제조사에 따라 다를 수 있습니다. 우리의 코드에서는 DIYables 제조사가 명시한 대로 0x27을 사용하였습니다.
사용 방법
아두이노 IDE에서 ESP8266을 시작하는 방법은 다음과 같은 단계를 따르세요:
- ESP8266을 처음 사용하는 경우, Arduino IDE에서 ESP8266 환경 설정하는 방법 튜토리얼을 확인하세요.
- 다이어그램에 표시된 대로 구성요소들을 연결하세요.
- USB 케이블을 사용하여 컴퓨터에 ESP8266 보드를 연결하세요.
- 컴퓨터에서 Arduino IDE를 엽니다.
- 올바른 ESP8266 보드를 선택하세요, 예를 들면 (NodeMCU 1.0 (ESP-12E Module))과 해당하는 COM 포트입니다.
- ESP8266에서 PC로 USB 케이블을 연결하세요.
- Arduino IDE를 열고 올바른 보드와 포트를 선택하세요.
- Arduino IDE의 왼쪽 바에 있는 Libraries 아이콘을 클릭하세요.
- “DHT”를 검색하고 Adafruit DHT 센서 라이브러리를 찾으세요.
- 설치를 완료하려면 Install 버튼을 누르세요.
- 필요한 추가 라이브러리 종속성을 설치하라는 메시지가 표시됩니다.
- 모든 필수 라이브러리를 설치하려면 Install All 버튼을 클릭하세요.
- "LiquidCrystal I2C"를 검색한 다음, Frank de Brabander가 만든 LiquidCrystal_I2C 라이브러리를 찾으세요.
- LiquidCrystal_I2C 라이브러리를 설치하려면 Install 버튼을 클릭하세요.
- 위의 코드를 복사해서 Arduino IDE로 열어주세요.
- Arduino IDE에서 Upload 버튼을 클릭하여 코드를 컴파일하고 ESP8266에 업로드하세요.
- 센서 주변 환경의 온도를 변경해보세요.
- LCD에서 결과를 확인하세요.
LCD에 아무 것도 표시되지 않는 경우, 도움을 위해 LCD I2C 문제 해결을 확인하세요.
동영상
비디오 제작은 시간이 많이 걸리는 작업입니다. 비디오 튜토리얼이 학습에 도움이 되었다면, YouTube 채널 을 구독하여 알려 주시기 바랍니다. 비디오에 대한 높은 수요가 있다면, 비디오를 만들기 위해 노력하겠습니다.