สอนใช้งาน Arduino UNO กับเซ็นเซอร์DHT11 และจอ LCD 16×2

สอนการใช้งานชุด Arduino UNO กับเซ็นเซอร์DHT11 และจอ LCD 16×2 สามารถนำไปประยุกต์ใช้ได้กับหลากหลายงาน เช่น ระบบควบคุมความชื้นในโรงเรือน ระบบควบคุมอุณหภูมิในตู้ฝักไข่ หรือระบบพ่นหมอกลดอุณหภูมิ เป็นต้น แสดงค่าอุณหภูมิและความชื้นบนจอ LCD

อุปกรณ์ที่ต้องใช้

การต่อวงจร

LCD  to Arduino UNO
GND  →  GND
VCC   →   5V
SDA   →   SDA
SCL    →   SCL

DHT11  ⇒  Arduino UNO
+   →   5V
S   →   D2
–    →   GND

การติดตั้งโปรแกรม Arduino IDE  →  คลิก

การใช้งานบอร์ด Arduino UNO  →  คลิก

โหลดLibrary

ตัวอย่างโค้ด

#include “DHT.h”
#include <Wire.h>
#include <LiquidCrystal_I2C.h> //ประกาศ Library ของจอ I2C
LiquidCrystal_I2C lcd(0x27, 16, 2); // กำหนดจอเป็น 16*2
#define DHTPIN 2
#define DHTTYPE DHT11 // ประกาศตัวแปร DHT 11
DHT dht(DHTPIN, DHTTYPE);
void setup()
{
lcd.begin();
Serial.begin(9600);
Serial.println(F(“DHTxx test!”));
dht.begin();
}

void loop()
{
float h = dht.readHumidity();
float t = dht.readTemperature();
float f = dht.readTemperature(true);
if (isnan(h) || isnan(t) || isnan(f)) {
Serial.println(F(“Failed to read from DHT sensor!”));
return;
}
float hif = dht.computeHeatIndex(f, h);
float hic = dht.computeHeatIndex(t, h, false);

Serial.print(F(“Humidity: “));
Serial.print(h);
Serial.print(F(“% Temperature: “));
Serial.print(t);
Serial.print(F(“°C “));
Serial.print(f);
Serial.print(F(“°F Heat index: “));
Serial.print(hic);
Serial.print(F(“°C “));
Serial.print(hif);
Serial.println(F(“°F”));

lcd.setCursor(0, 0); //ฟังก์ชั่นในการกำหนดตำแหน่ง Cursor
lcd.print(“Humi = ” + String(h, 1) + ” %”); //แสดงค่าความซื้นบนLCD

lcd.setCursor(0, 1); //ฟังก์ชั่นในการกำหนดตำแหน่ง Cursor
lcd.print(“Temp = ” + String(t, 1) + ” C”); //แสดงค่าอุณหภูมิบนLCD

delay(1000);
}

ดาวโหลดโค้ด  → คลิก

เมื่อกดอัพโหลดโค้ดลงบอร์ดจะได้ผลดังรูปครับ

คลิปสอนการใช้งาน

Banner Content

0 Comments

Leave a Comment

Popular Posts