กลับไปหน้ารวมไฟล์
reactive-sound-color-changing-cube-3745b4.md

ชื่อโปรเจกต์: ลูกบาศก์ไฟเปลี่ยนสีตามจังหวะเสียง สุดเฟี้ยว! (Reactive Sound Color Changing Cube!)

มาร่วมสนุกลุ้นรับลูกบาศก์ Sound Reactive Cube กันได้เลยวัยรุ่น!

บทนำ

วันนี้พี่จะพาน้องๆ มาทำลูกบาศก์ไม้เปลี่ยนสีตามเสียง บอกเลยว่าโครตเท่ เพราะมันจะเปลี่ยนสีไปตามจังหวะเพลงหรือแรงสั่นสะเทือนรอบๆ ตัวแบบ Real-time เลยล่ะ

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

  • [Arduino](https://s.shopee.co.th/7fUgFAWSki): พี่เลือกใช้รุ่น Nano เพราะมันตัวเล็ก ยัดลงกล่องง่ายดี
  • Addressable LED: พี่ใช้รุ่น UCS1903B ขนาด 5V (ห้ามต่อไฟผิดนะน้อง เดี๋ยวไหม้)
  • Mic Module: โมดูลไมค์ไว้รับเสียง

หลักการทำงาน

  • เสียงจะถูกดักจับด้วย Mic Module แล้วส่งค่าเข้าไปที่ Arduino ทางช่อง Analog Input
  • จากนั้นเราจะเอาค่า Analog ที่ได้มาประมวลผล แล้วสั่งเปลี่ยนสี LED แบบสุ่มตามความดังของเสียง จัดไปวัยรุ่น!

ขั้นตอนการประกอบ

ดูรูปเอาเลยไอ้น้อง ภาพเดียวแทนคำพูดได้เป็นล้าน! 😉

เตรียมบล็อกไม้เนื้ออ่อน
เอาแผ่นอะคริลิคหรือพลาสติกบางๆ มาแปะเชื่อมชิ้นส่วนเข้าด้วยกัน
Arduino Nano กับ Mic Module พร้อมประจำการ
ยัดอุปกรณ์ทุกอย่างลงไปในกล่องให้เรียบร้อย อย่าให้สายขาดนะเว้ย
ขั้นตอนการเขียนโปรแกรม (Programming)
ทดสอบด่านสุดท้าย
วิดีโอสอนแบบละเอียด
อย่าลืมไปร่วมสนุกรับของรางวัลกันนะน้อง!

รายละเอียดทางเทคนิคแบบจัดเต็ม (สำหรับสายเข้ม)

ระบบวิเคราะห์แสงตามคลื่นเสียง (Acoustic Spectral Illumination Hub)

โปรเจกต์แต่งบ้านสุดอาร์ตที่เปลี่ยนห้องธรรมดาให้กลายเป็นผับย่อมๆ ด้วยลูกบาศก์โปร่งแสงที่กระพริบตามจังหวะดนตรี

  • การวิเคราะห์สัญญาณ Analog แบบ Envelope-Follower: ใช้ Mic Module ที่มีอัตราขยายสูง โดย Arduino จะจับสัญญาณเสียงและคำนวณหาความต่างของค่าสูงสุดและต่ำสุด (Peak-to-Peak Amplitude) ทุกๆ 20ms เพื่อหาจังหวะ "Beat" ของเพลงให้แม่นยำที่สุด
  • การแมปค่าสีตามความแรงเสียง (Hue-to-Amplitude Linear Mapping): เมื่อเสียงดังขึ้น Arduino จะสั่งเปลี่ยนเฉดสีของ LED แบบ RGB หรือ WS2812B โดยอัตโนมัติ เช่น ถ้าเสียงเบาๆ จะเป็นสีน้ำเงินเข้มดูเย็นตา แต่ถ้าเสียงพีคเมื่อไหร่ ก็จัดสีแดงกระพริบแบบ Strobe ไปเลย หล่อเท่แน่นอน

สุนทรียภาพและการแสดงผล (Aesthetics)

  • ตัวกรองการเปลี่ยนสีแบบนุ่มนวล (Soft-Fade Transition Filter): พี่ใส่ Software Low-pass Filter ลงไปในโค้ดด้วยนะ เพื่อให้การเปลี่ยนสีมันดู "สมูท" เหมือนเครื่องกำลังหายใจ ไม่ใช่เปลี่ยนสีแบบตัดฉับๆ ให้ปวดตา ผลลัพธ์ที่ได้คือแสงไฟที่ดูพรีเมียมและนวลตาสุดๆ ไปเลยน้อง!

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

title: "Reactive Sound Color Changing Cube!"
description: "Here We are going to make a light cube which will change color accordingly with surrounding sounds. This work is featured in Hackspace mag"
author: "najad"
category: ""
tags:
  - "lights"
  - "art"
  - "toys"
  - "entertainment system"
  - "kids"
views: 19888
likes: 48
price: 699
difficulty: "Intermediate"
components:
  - "1x Superglue"
  - "1x Arduino Nano"
  - "1x UTSOURCE Electronic Parts"
  - "1x SparkFun Electret Microphone Breakout"
  - "1x Addressable LED UCS1903B"
  - "1x Acrylic"
  - "1x White wood"
tools: []
apps:
  - "1x Arduino IDE"
downloadableFiles: []
documentationLinks: []
passwordHash: "ce5d4be018023cdcbf984ec2836b53a829f79443aa0437a6f36e1634c6c372c3"
encryptedPayload: "U2FsdGVkX1/NEWrxEBPw4anIda3p9bTk9UrZhJl3pyqiI7wa6L9mRsJPg4NZ6ZZN4uAkuWIk129ZxHK7a3oyl+U2YTR8sXEWnEW5DRp1hMc="
seoDescription: "Build a Reactive Sound Color Changing Cube featured in Hackspace mag. Sync your light cube colors with surrounding sounds using Arduino."
videoLinks:
  - "https://www.youtube.com/embed/3mDEBsKmTLY"
  - "https://www.youtube.com/embed/2BKPLPYYSP0"
  - "https://www.youtube.com/embed/3mDEBsKmTLY"
heroImage: "https://cdn.jsdelivr.net/gh/bigboxthailand/arduino-assets@main/images/projects/reactive-sound-color-changing-cube-3745b4_cover.gif"
lang: "th"