กลับไปหน้ารวมไฟล์
weather-station-arduino-dht11-sensor-oled-display-e7b61b.md

การจะดูอุณหภูมิและความชื้นรอบตัวเราก็ไม่ใช่เรื่องยากเลยน้องๆ แค่ใช้เซ็นเซอร์ DHT11 กับ Arduino ที่ใช้ง่ายมากๆ สำหรับโปรเจกต์นี้ เราจะใช้จอแสดงผล Oled I2C SSD1306 มาช่วยแสดงค่าอุณหภูมิและความชื้นที่เซ็นเซอร์ DHT11 อ่านมาจากสิ่งแวดล้อมรอบตัวเรา

แผนภาพการต่อวงจร:

วิดีโอสอนและสาธิต:

หวังว่าน้องๆ จะชอบโปรเจกต์นี้นะ อย่าลืมกดติดตามช่องยูทูปพี่ด้วยล่ะ ขอบคุณที่ติดตามกันจ้า!!!

ภาพรวมโปรเจกต์

"สถานีอากาศ Arduino" นี้คือเครื่องมือตรวจวัดสิ่งแวดล้อมเบื้องต้นที่เน้นสองค่าสำคัญ: อุณหภูมิโดยรอบ และความชื้นสัมพัทธ์ ด้วยการผสมผสานเซ็นเซอร์ดิจิทัลกับจอแสดงผล OLED ที่คอนทราสต์สูง โปรเจกต์นี้จะให้ค่าที่อ่านง่ายและตัวเครื่องกระทัดรัด เหมาะมากสำหรับวางบนโต๊ะทำงานหรือในห้องปลูกต้นไม้

อุปกรณ์หลักและการเชื่อมต่อ

  • Arduino UNO: ตัวสมองกลหลักที่คอยประมวลผลข้อมูล
  • เซ็นเซอร์ DHT11: เซ็นเซอร์ราคาประหยัดแต่ประสิทธิภาพดี ใช้หลักการวัดความชื้นแบบ capacitive และมีเทอร์มิสเตอร์วัดอุณหภูมิ มันส่งสัญญาณดิจิทัลออกมาทางขาเดียว ทำให้ต่อสายง่ายมาก
  • จอแสดงผล SSD1306 OLED (128x64): ไม่เหมือนกับจอ LCD ทั่วไป จอ OLED นี้สว่างสดใสและสีดำลึกมาก มันใช้การสื่อสารแบบ I2C ซึ่งหมายความว่าใช้สายแค่ 4 เส้นเท่านั้น (VCC, GND, SDA, SCL)
  • เบรดบอร์ด: สำหรับต่อวงจรชั่วคราวระหว่างอุปกรณ์ต่างๆ กับ Arduino

กระบวนการทำงานและไลบรารี

โค้ดของโปรเจกต์นี้สร้างขึ้นจากไลบรารีหลักสองตัว:

  1. ไลบรารี DHT (จาก Adafruit): ไลบรารีนี้จัดการเรื่องไทม์มิ่งที่ซับซ้อนในการสื่อสารกับเซ็นเซอร์ DHT11 มันมีฟังก์ชันใช้ง่ายๆ เช่น dht.readTemperature() และ dht.readHumidity()
  2. ไลบรารี Adafruit SSD1306 & GFX: ใช้สำหรับควบคุมจอ OLED พวกนี้ทำให้ Arduino วาดข้อความ วงกลม หรือแม้แต่ไอคอนเล็กๆ บนหน้าจอได้

ระบบทำงานยังไง

  1. รอบการอ่านค่า: ทุกๆ 2 วินาที (ซึ่งเป็นช่วงเวลาขั้นต่ำสำหรับ DHT11) Arduino จะไปถามเซ็นเซอร์เพื่อขอค่าล่าสุด
  2. จัดรูปแบบข้อมูล: ค่าดิบจะถูกแปลงเป็นสตริงและจัดรูปแบบให้อ่านง่าย (เช่น "Temp: 25°C, Hum: 50%")
  3. แสดงผล: หน้าจอ OLED จะถูกล้าง แล้วข้อมูลใหม่จะถูกพิมพ์ลงไป เพราะ OLED เปล่งแสงได้เอง มันจึงมองเห็นชัดเจนแม้ในที่มืดสนิท

ทำไมโปรเจกต์นี้ถึงสำคัญ

การสร้างชิ้นงานนี้คือบทเรียนพื้นฐานในเรื่อง การเชื่อมต่อเซ็นเซอร์ดิจิทัล และ การจัดการอุปกรณ์ต่อพ่วงผ่าน I2C มันแสดงให้เห็นว่าเราจะรวมโมดูลฮาร์ดแวร์ที่ต่างกันเข้าด้วยกันให้เป็นอุปกรณ์ที่ใช้งานได้จริงและให้ข้อมูลที่มีค่ากับโลกแห่งความเป็นจริงได้ยังไง

ข้อมูล Frontmatter ดั้งเดิม

title: "Weather station: Arduino, DHT11 sensor, Oled display"
description: "How to make a mini weather station (temperature, humity monitor) using Arduino, DHT11 sensor and Oled display"
author: "herolivechannel"
category: ""
tags:
  - "weather"
  - "oled"
  - "temperature sensor"
  - "humidity sensor"
  - "dht11"
  - "arduino"
views: 69097
likes: 13
price: 299
difficulty: "Easy"
components:
  - "1x SSD1306 OLED 128X64 0.96 inch - I2C"
  - "1x DHT11 Temperature & Humidity Sensor (3 pins)"
  - "1x Jumper wires (generic)"
  - "1x Solderless Breadboard Half Size"
  - "1x Arduino UNO"
tools: []
apps:
  - "1x Arduino IDE"
downloadableFiles:
  - "https://projects.arduinocontent.cc/455ad337-07b3-4399-91d4-b9db0f2a8b94.ino"
  - "https://projects.arduinocontent.cc/455ad337-07b3-4399-91d4-b9db0f2a8b94.ino"
documentationLinks: []
passwordHash: "acb0114d204a3c2b99b3af6424b4453ba2a1591edb2350ad3fef7731357980b7"
encryptedPayload: "U2FsdGVkX19V5mRyUdatoi/qeRyP1HyElnZECk74L1gYC8fstKriHfVrKvad3ADoOUz5CL4nZrliOTLOS9QBfEwk9+RkTQsbaCoqWSOsNTY0t6Or2GTd65re5zijOlsvj9eSNxgdIGYcL2wUb/GH65Tfvtu2otRYzmjLg+Llv/4dR9qBYhZk7GzeUMeAaSAfVAMlD2ET3fS9TM56rIgBx6VzozEu561YqrjkZ8GlZNAKxZqqf8gwPmXva1MJcAXfWLmR9EvQFpDNujzGIzv7Wg=="
seoDescription: "Build a mini Weather station to monitor temperature and humidity using Arduino, DHT11 sensor, and Oled display."
videoLinks:
  - "https://www.youtube.com/embed/P1a0uFImNTE"
heroImage: "https://cdn.jsdelivr.net/gh/bigboxthailand/arduino-assets@main/images/projects/weather-station-arduino-dht11-sensor-oled-display-e7b61b_cover.jpg"
lang: "th"