สารบัญ:
2025 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2025-01-13 06:58
สวัสดี, ในคำแนะนำนี้ ฉันจะอธิบายวิธีสร้างนาฬิกากราฟแท่ง LED IOT 256
นาฬิกาเรือนนี้ทำไม่ยาก ไม่แพงมาก แต่ต้องอดทนในการบอกเวลานะครับ ^^ แต่ทำออกมาได้น่าพอใจและเต็มไปด้วยการสอน
ในการทำนาฬิกานี้ ขั้นตอนหลักจะเป็น:
- ทำกล่องคลิปออน
- ค้นหาเวลาที่แน่นอนด้วยโปรโตคอล WiFi และ NTP
- ตั้งโปรแกรมแม่มดเมทริกซ์ LED 8x32 แทน 256 LED
เสบียง
-
Led Matrix WS2812B 8x32 11€ บน Aliexpress
เมทริกซ์ LED 8x32 WS2812B เรียกอีกอย่างว่า NeoMatrix โดย บริษัท Adafruit
- บอร์ด Nodemcu ESP8266 3 ถึง 4 ยูโรใน Aliexpress (Nodemcu ดีกว่า Wemos)
- ฟิลาเมนต์เครื่องพิมพ์ 3 มิติบางส่วน (≈ 120 กรัม)
- สกรูหรือตะปู 2 ตัว
- สาย USB (USB Type A ถึง Micro USB Type B)
- อะแดปเตอร์ติดผนัง USB
เครื่องมือที่จำเป็น
- เครื่องพิมพ์ 3 มิติ ของฉันคือ Creality CR-10
- คีม
- หัวแร้ง
เครื่องมือเสริม
- กาวร้อน
- เครื่องทดสอบแรงดันไฟฟ้า USB DC (ค่อนข้างมีประโยชน์ในหลายโครงการ)
ขั้นตอนที่ 1: วิธีการบอกเวลา ?
ภาพที่ 1 และไฟล์ "Explanation_Clock.pdf" จะอธิบายวิธีการอ่านนาฬิกานี้ โดยพื้นฐานแล้ว คุณต้องนับจุดในแต่ละคอลัมน์ RGB (สีแดง = ชั่วโมง / สีเขียว = นาที / สีน้ำเงิน = วินาที)
ตัวอย่างเช่น นาฬิกาแสดงเวลา 17h50m44s บนภาพที่ 2
ขั้นตอนที่ 2: การออกแบบกล่องใส่คลิปที่พิมพ์ 3 มิติโดยใช้ Fusion 360
ฉันต้องการให้กล่องนี้เป็นกล่องแบบหนีบได้ทั้งหมด ดังนั้นฉันจึงออกแบบให้ไม่ต้องใช้กาว
Clip-on ได้แรงบันดาลใจจากสองบทช่วยสอนนี้ (คลิปข้าง) (คลิปกลาง)
ขนาดเมทริกซ์:
สูง 300 มม. x ยาว 80 มม. x กว้าง 2 มม
ขนาดกล่อง:
สูง 323 มม. x ยาว 85 มม. x กว้าง 9.2 มม
พิมพ์ตัวเลขสำคัญ:
- เส้นใย 180 กรัม
- 16.30 น. (เวลาพิมพ์)
ด้านล่างมี 4 ไฟล์:
- Box_Bottom_ws (พร้อมรองรับ)
- Box_Top_ws (พร้อมรองรับ)
- Cover_Bottom_Matrix
- หน้าปก_เมทริกซ์
คุณจะต้องใช้ 4 ชิ้นนี้เพื่อสร้างเคสให้สมบูรณ์
ไฟล์ยังมีอยู่ใน Thingiverse นี่คือลิงค์:
ขั้นตอนที่ 3: ประกอบเคสพิมพ์ 3 มิติ + ESP8266
หลังจากพิมพ์ทั้ง 4 ชิ้นแล้ว ให้ทำตามขั้นตอนเหล่านี้:
- ปลดสายไฟทั้งหมดจาก Matrix ยกเว้น 5V, GND และ DIN
- บัดกรีสายไฟที่เหลืออีก 3 เส้นเข้ากับบอร์ด ESP8266 (ดูแผนผัง)
- ประกอบ "Box_Bottom_ws" และ "Box_Top_ws"
- เสียบสาย USB ผ่าน "Box_Bottom_ws"
- แก้ไข ESP8266 ด้วยเทปสองหน้าหรือกาวร้อน
- เสียบสาย USB เข้ากับ ESP8266
- เลื่อนเมทริกซ์ LED ผ่าน "Cover_Bottom_Matrix"
- คลิป "Cover_Bottom_Matrix" บน "Box_Bottom_ws"
- ทำซ้ำขั้นตอนที่ 7 และ 8 ด้วย "Cover_Top_Matrix"
- เริ่มเขียนโปรแกรม
ขั้นตอนที่ 4: การเขียนโปรแกรมโดยใช้ Arduino IDE
โปรแกรมนี้มีหน้าที่หลักสามประการ:
- WiFi
- NTP (Network Time Protocol) (วิกิพีเดีย)
- เมทริกซ์ที่สร้างด้วย 256 WS2812B LED (ดูวิธีการทำงาน)
ข้อกำหนดเบื้องต้น:
สำหรับผู้จัดการคณะกรรมการ:
เพิ่มบอร์ด ESP8266 บน Arduino IDE (วิธีใหม่)
สำหรับห้องสมุด:
ในการขับเคลื่อนเมทริกซ์ให้ใช้:
- "ห้องสมุด Adafruit GFX" สร้างโดย Adafuit
- "Adafuit NeoMatrix" ผลิตโดย Adafruit
- "Adafuit NeoPixel" สร้างสรรค์โดย Adafruit
ในการเชื่อมต่อกับ Wifi ให้ใช้:
- Build-In "WiFi" ที่สร้างโดย Arduino
- Build-In "ESP8266WiFi" พร้อมใช้งานโดยการเพิ่มบอร์ด
ดาวน์โหลดรหัส เปลี่ยน WiFi ssid และรหัสผ่าน (บรรทัดที่ 54 และ 55) และอัปโหลดบนบอร์ด ESP8266 ของคุณ
ไม่จำเป็น:
- เปลี่ยนสี (บรรทัด 52) (คุณสามารถใช้เครื่องมือนี้: รหัสสีเป็น RGB)
- เปลี่ยนเขตเวลา (สาย 59)
- เปลี่ยนความสว่างของ LED ทุกดวง (สาย 92)
- เปลี่ยนวิธีการแสดงที่สอง (บรรทัด 101 ถึง 104) (ฉันให้คุณลอง)
- โค้ดวิธีแสดงของคุณเอง ^^
/!\ เมทริกซ์ใช้พลังงานจากบอร์ดอินเทอร์เฟซ USB ดังนั้นการใช้พลังงานต้องจำกัดที่ 500mA (แหล่งที่มา) หากต้องการอยู่ต่ำกว่า 500mA ให้รักษาตัวแปรความส่องสว่างระหว่าง 0 ถึง 10 (ตรวจสอบกับเครื่องทดสอบ USB ของคุณหากมี)
หากคุณต้องการรายละเอียดเพิ่มเติมเกี่ยวกับ:
- วิธีการทำงานของ NTP ดูจากวิดีโอนี้ที่สร้างโดย Andreas Spiess
- วิธีการทำงานของ NeoMatrix ดูวิดีโอนี้อีกครั้งโดย Andreas Spiess
- วิธีการทำงานของ Adafuit Library ดูบทช่วยสอนนี้
ขั้นตอนที่ 5: แขวนไว้ ดูและเริ่มนับ - อดทน
ฉันพอใจกับผลลัพธ์ที่ได้ กล่องคลิปออนนั้นเจ๋งและประกอบง่าย และนาฬิกาก็ใช้งานได้อย่างมีเสน่ห์
ฉันยอมรับว่าไม่ใช่วิธีที่เร็วที่สุดในการบอกเวลา แต่เป็นวิธีที่ตลกดี
ขอให้เป็นวันที่ดี !