สารบัญ:

Digispark & WS2812 Rainbow Wheel ในกล่อง: 4 ขั้นตอน (พร้อมรูปภาพ)
Digispark & WS2812 Rainbow Wheel ในกล่อง: 4 ขั้นตอน (พร้อมรูปภาพ)

วีดีโอ: Digispark & WS2812 Rainbow Wheel ในกล่อง: 4 ขั้นตอน (พร้อมรูปภาพ)

วีดีโอ: Digispark & WS2812 Rainbow Wheel ในกล่อง: 4 ขั้นตอน (พร้อมรูปภาพ)
วีดีโอ: AliExpress Postbag #24 Part 2 of 2 Post bag / Electronics mailbag from AliExpress 2024, พฤศจิกายน
Anonim
Image
Image
Digispark & WS2812 Rainbow Wheel ในกล่อง
Digispark & WS2812 Rainbow Wheel ในกล่อง
Digispark & WS2812 Rainbow Wheel ในกล่อง
Digispark & WS2812 Rainbow Wheel ในกล่อง

โครงการเล็กๆ นี้สร้างขึ้นโดยใช้กล่องไม้ขนาด 10x6x5 ซม. ที่แกะสลักอย่างสวยงามซึ่งฉันพบในร้าน

คุณลักษณะที่ดีที่สุด ซึ่งจริงๆ แล้วไม่ได้ติดกล้องไว้อย่างถูกต้องก็คือ การให้แสงสว่างด้วยสีที่สว่างและอิ่มตัว ด้านข้างของฝากล่องที่แกะสลักด้วยต้นไม้

ในอีกด้านหนึ่ง โปรดทราบว่าการใช้เอฟเฟกต์สีรุ้งบนแถบ LED RGB 5050 แบบแคบจะส่งผลให้มีการส่องสว่างสีขาวภายในระยะเซนติเมตรจาก LED เสมอ เนื่องจากสีของพิกเซลแต่ละพิกเซลจะผสมกับสีข้างเคียงในไม่ช้า หากคุณต้องการหลีกเลี่ยงเอฟเฟกต์นี้ คุณสามารถลองใช้เลนส์โฟกัสบางตัว

ความสว่างของหลอดไฟจะคงสัดส่วนกับแสงโดยรอบด้วย LDR: หลอดไฟจะส่องสว่างในสภาพแสงกลางวันและจะไม่สว่างเกินไปเมื่อใช้เป็นไฟกลางคืนในที่มืด

เสบียง

รายการวัสดุ:

  • บอร์ด Attiny85 Digispark (โคลน) หนึ่งอัน พร้อมด้วยไมโครนิวเคลียส bootloader
  • 8x WS2812 หนึ่งแท่ง
  • หนึ่ง LDR ใช้เพื่อปรับความสว่างของหลอดไฟตามสภาพแวดล้อม
  • ตัวต้านทานแบบดึงขึ้น 10KΩ หนึ่งตัวสำหรับ LDR
  • สายไมโคร USB เพื่อตั้งโปรแกรม Digispark และเปิดไฟเมื่อทำเสร็จ
  • กล่องไม้กลวง
  • แหล่งพลังงาน 5V⎓ (สามารถจ่ายไฟได้ไม่น้อยกว่า 500mA)

ทักษะและเครื่องมือ:

  • PlatformIO (ทำงานบน Visual Studio Code) เป็น IDE - Arduino IDE ใด ๆ ก็ทำงานได้
  • หัวแร้ง ลวดเชื่อม และทักษะการบัดกรีเบื้องต้น
  • สายไฟ กรรไกร
  • กาว แหนบ
  • สีทึบแสงบางส่วน (เพื่อปกปิด Digispark LED และเพื่อป้องกัน LDR จากการได้รับอิทธิพลจากแสงหลอดไฟ)

ขั้นตอนที่ 1: Digispark และ PlatformIO

Digispark (และทุกโคลนที่เกี่ยวข้องกับไมโครคอนโทรลเลอร์ 8 บิตตัวเดียวกัน) เป็นบอร์ดฝ่าวงล้อมที่สร้างขึ้นจาก AVR Attiny85 ซึ่งสามารถสื่อสารผ่าน USB ได้โดยตรงด้วยไมโครนิวเคลียส bootloader โปรดดูข้อมูลเพิ่มเติมในวิกิของมัน:

PlatformIO คือระบบนิเวศที่ฉันใช้ตั้งโปรแกรม Digispark หากต้องการใช้งาน คุณต้องติดตั้ง Visual Studio Code

ขั้นตอนที่ 2: แผนผังและการเดินสาย

แผนผังและการเดินสายไฟ
แผนผังและการเดินสายไฟ
แผนผังและการเดินสายไฟ
แผนผังและการเดินสายไฟ
แผนผังและการเดินสายไฟ
แผนผังและการเดินสายไฟ

บัดกรี

  1. เชื่อมต่อสายไฟสามเส้นเข้ากับแถบ WS2812 (กราวด์ อินพุตพลังงาน และอินพุตข้อมูล)
  2. สายกราวด์และ Vcc ถึง 5V และพิน GND ของ Digispark
  3. บัดกรีลวดที่เหลือกับพิน P0 ของ Digispark
  4. ประสานตัวต้านทาน10KΩกับพิน GND และ P2 ของบอร์ด
  5. ใช้สายไฟสองเส้นเพื่อเชื่อมต่อ LDR กับพิน 5V และ P2 (ฉันใช้สายเคลือบที่มองไม่เห็นด้วยเหตุผลด้านสุนทรียะ)

ขั้นตอนที่ 3: เฟิร์มแวร์

ค้นหารหัสสำหรับโครงการนี้ใน GitHub ของฉัน:

ดีที่รู้:

  • #include ต้องใช้ขณะทำงานกับ PlatformIO
  • พารามิเตอร์ เช่น การกำหนดพิน จำนวน LED WS2812 ความเร็วของวงล้อสีรุ้ง และขีดจำกัดความมืด/สว่างสำหรับทั้ง LED และ LDR อยู่ที่จุดเริ่มต้นของโค้ด
  • Adafruit Neopixel เป็นไลบรารีที่ใช้ควบคุม WS2812 LEDs
  • ไลบรารี RunningMedian ใช้เพื่อทำให้การอ่าน LDR มีเสถียรภาพมากขึ้น เนื่องจากการกำหนดขอบเขต การทำแผนที่ขอบเขตความสว่างของ LED จึงเหมาะอย่างยิ่งในสภาวะที่มีความสว่างต่ำ ซึ่งการผันผวนเล็กน้อยอาจส่งผลให้เกิดการกะพริบที่น่ารำคาญ
  • คุณจะไม่พบความพยายามใดๆ ในการล็อก Attiny85 ดังนั้นโครงการจะยังคงสามารถแก้ไขได้

คำแนะนำบางอย่าง (ปรากฏในไฟล์ README.md บน GitHub ด้วย):

  • ในการอัปโหลดโค้ด ตรวจสอบให้แน่ใจว่าได้มีสาย USB ที่มีสายพินทุกอัน: สายชาร์จราคาถูกมักจะมีเพียง +5V และต่อสายดิน
  • การอัปโหลดจาก PlatformIO ไปยัง DigiSpark ต้องการให้คุณเสียบ DigiSpark หลังจากคอมไพล์ แม้ว่าคอนโซลจะไม่เตือนว่า "ถึงเวลาต้องเสียบ DigiSpark ของคุณแล้ว" อย่างที่ Arduino IDE ทำ
  • แก้ไขปัญหาการอัปโหลดไปยัง DigiSpark จาก PlatformIO บน MacOS อย่างรวดเร็ว: ปัญหา PIO 111
  • ที่ชาร์จ USB ราคาถูกอาจให้เอาต์พุตที่สกปรก/มีเสียงดัง ซึ่งอาจทำให้ไฟ LED กะพริบผิดปกติโดยเฉพาะที่ความสว่างต่ำ: ตรวจสอบให้แน่ใจว่ามีแหล่งกำเนิด 5VDC ที่สะอาด หรือเพื่อกรองการเพิ่มตัวเก็บประจุ (หรือวงจรที่เหมาะสมกว่า)

ขั้นตอนที่ 4: ปลอกและสัมผัสการตกแต่ง

ปลอกและสัมผัสการตกแต่ง
ปลอกและสัมผัสการตกแต่ง
ปลอกและสัมผัสการตกแต่ง
ปลอกและสัมผัสการตกแต่ง
ปลอกและสัมผัสการตกแต่ง
ปลอกและสัมผัสการตกแต่ง
  • เจาะรูในกล่องที่คุณเลือกสำหรับโฮสต์โครงการ เพื่อเสียบสาย USB ของคุณ โปรดทราบว่ายิ่งรูรอบๆ ขั้วต่อ micro USB ใหญ่เท่าใด แสงจากแถบ LED ก็จะยิ่งรั่วมากขึ้นเท่านั้น เว้นแต่ว่าคุณจะไม่ให้ซีลทึบแสง
  • แกะสลักรูสำหรับ LDR; ตรวจสอบให้แน่ใจว่าไม่ได้ชี้ไปทางพื้นที่ที่จะส่องสว่างโดย LED ไม่เช่นนั้นการควบคุมอัตโนมัติจะวนซ้ำ
  • แกะสลักพื้นผิวด้านในเพื่อให้มีที่ว่างสำหรับแถบ LED เนื่องจากคุณไม่ควรต้องการเห็นไฟ LED โดยตรงขณะมองที่โคมไฟของคุณ
  • ปิดผนึกด้วยวัสดุทึบแสงที่ด้านล่างของ LDR เพื่อหลีกเลี่ยงการแทรกแซงความสว่างของสภาพแวดล้อมการตรวจจับที่เกิดจากแถบ WS2812
  • ใช้สีทึบแสงหนึ่งหยดเพื่อปกปิดไฟ LED ของ Digispark เพื่อหลีกเลี่ยงไม่ให้มันส่องแสงอยู่ภายในกล่อง
  • กาวบอร์ด Digispark, แถบ LED, LDR และทุกสายเพื่อหลีกเลี่ยงกล่องกลวงของคุณที่ดูไม่เป็นระเบียบ
  • คาดคะเนสาย USB พร้อมสวิตช์เพื่อเปิดและปิดหลอดไฟได้อย่างง่ายดาย

แนะนำ: