กลับไปหน้ารวมไฟล์
minimal-parts-simple-word-clock-f7903c.md

ชื่อโปรเจกต์: Word Clock ฉบับงบน้อย อะไหล่ไม่กี่ชิ้น

โปรเจกต์นี้พี่เล็งไว้นานแล้วตั้งแต่เห็นใน Project Hub แต่ตอนนั้นต้องใช้พวก shift registers แถมต้องต่อแหล่งจ่ายไฟแยก แถมการเดินสายไฟก็น่าปวดหัว พี่เลยพักไว้ก่อน จนกระทั่งไอ้เจ้า LED WS2812B (Addressable LEDs) มันออกมานี่แหละ ชีวิตง่ายขึ้นเยอะ! พี่สามารถลดขนาดโปรเจกต์ลงจนใช้ [Arduino](https://s.shopee.co.th/7fUgFAWSki) จ่ายไฟให้ LED ได้สบายๆ แถมเขียนโปรแกรมคุมไฟรายดวงได้เลยโดยไม่ต้องพึ่ง shift register ให้วุ่นวาย

งานนี้พี่เน้นประหยัด เพราะไม่มีอุปกรณ์หรูๆ อย่างเครื่อง 3D printer หรือเครื่องกัดปริ้นต์ (PCB) พี่เลยใช้ "กระดาษลัง" ทำแผงกั้นไฟซะเลย ส่วนตัว LED ก็แปะลงบนกระดาษลังเนี่ยแหละ ไม่ต้องใช้แผ่นปริ้นต์ หน้าปัดตัวอักษรพี่ก็ปริ้นต์ลงกระดาษธรรมดา (แต่ถ้าน้องอยากให้หล่อเท่กว่านี้ แนะนำให้ใช้กระดาษไขหรือพลาสติกโปร่งแสงนะ ไฟจะนวลมาก) วงจรก็ง่ายๆ เพราะโปรเจกต์นี้พี่ออกแบบให้ไฟติดพร้อมกันไม่เกิน 7 ดวง ซึ่ง Arduino Nano ตัวเดียวเอาอยู่แน่นอน สู้งานนะน้อง!

ขั้นตอนแรกคือปริ้นต์แบบหน้าปัดออกมาก่อน พี่เลือกขนาด 7x7 ซม. เพื่อให้ LED หนึ่งดวงส่องสว่างให้แต่ละคำได้แบบพอดีๆ

Face plate layout

ขั้นตอนที่สอง ทำช่องกั้นแสงจากกระดาษลัง เพื่อไม่ให้แสงไฟมันฟุ้งไปทับคำข้างๆ

Making cardboard mask to separate segments

จัดวาง LED ลงบนกระดาษลังให้ตรงกับช่องกั้นที่เราเตรียมไว้

Mask on LEDs

เชื่อมต่อสายไฟ LED เลยน้อง ดูตามตัวเลขที่พี่มาร์กไว้ใน Layout ด้านล่างนะ

LED numbers

ผังการต่อสายไฟ LED (ดูให้ดี ห้ามช็อตนะตัวนี้)

LED wiring

ส่วนตัวโค้ด (Sketch) พี่เขียนให้มันโชว์สีต่างกันเพื่อบอกว่าเป็นช่วง AM หรือ PM เวลาจะถูกตั้งค่าให้ตรงกับตอนที่เราเบิร์นโปรแกรมลงไปเพื่อให้โมดูล RTC เดินเวลาได้ถูกต้อง โค้ดนี้พี่ไม่ได้ย่อให้สั้นนะ เน้นเขียนแบบดิบๆ ให้น้องอ่านแล้วเข้าใจง่ายที่สุด จัดไปวัยรุ่น!

รายละเอียดทางเทคนิคเพิ่มเติม

นาฬิกาบอกเวลาด้วยตัวอักษรฉบับมินิมอล

โปรเจกต์ Word Clock นี้ตัดความยุ่งยากของนาฬิกาทั่วไปออก แล้วเปลี่ยนมาใช้การแสดงผลแบบตัวหนังสือเท่ๆ โดยใช้อุปกรณ์ให้น้อยชิ้นที่สุด

  • Direct-Drive LED Matrix: แทนที่จะใช้ชิป Driver เยอะแยะ พี่ใช้แค่ Pins ของ Arduino ร่วมกับโมดูล MAX7219 (หรือสั่งตรงเข้า LED) เพื่อยิงไฟใส่คำเฉพาะอย่าง "IT IS," "TEN," "PAST," "SIX" ผ่านแผ่นฉลุที่เตรียมไว้
  • RTC Precision: ใช้โมดูล DS3231 RTC เพื่อให้เวลาเดินเที่ยงตรงเป๊ะๆ โดยไม่ต้องต่ออินเทอร์เน็ตให้วุ่นวาย

ลอจิกของโค้ดที่มีประสิทธิภาพ

  • Word-Mapping Algorithm: พี่ใช้ตาราง bit-masking จับคู่เวลาในแต่ละนาทีเข้ากับชุด LED ที่กำหนดไว้ ช่วยลดความซับซ้อนในการคำนวณหน้าจอใหม่ในทุกนาที ลื่นปรื๊ดแน่นอน!

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

title: "Minimal parts simple word clock"
description: "Simple word clock using 2812b leds."
author: "garysat"
category: "Screens & Displays"
tags:
  - "clocks"
views: 6658
likes: 3
price: 1120
difficulty: "Easy"
components:
  - "1x Arduino Nano R3"
  - "1x Breadboard (generic)"
  - "1x Jumper wires (generic)"
  - "1x Card stock, glue, misc supplies"
  - "1x Real Time Clock (RTC)"
  - "22x 2812b addressable rgb Leds"
  - "1x Soldering iron (generic)"
tools: []
apps:
  - "1x Arduino IDE"
downloadableFiles: []
documentationLinks: []
passwordHash: "8366a28d037db0f25bbb7b8206727684b4ee634526efd2f541dc8483b1efebed"
encryptedPayload: "U2FsdGVkX1/+g6+U8pB6XdO6LLPfMjm5Coct6VcjHsVqIbEN4oPZoNYx680hmttekbOMNwo7teOda6SxTfM3NN/0bnQGDP75KtQA6wiYPMM="
seoDescription: "Build a simple Word clock using 2812b LED and minimal parts. An easy Arduino project for beginners."
videoLinks: []
heroImage: "https://cdn.jsdelivr.net/gh/bigboxthailand/arduino-assets@main/images/projects/minimal-parts-simple-word-clock-f7903c_cover.jpg"
lang: "th"