สารบัญ:
- ขั้นตอนที่ 1: สิ่งที่คุณต้องการ
- ขั้นตอนที่ 2: วงจร
- ขั้นตอนที่ 3: เริ่ม Visuino และเลือก Arduino UNO Board Type
- ขั้นตอนที่ 4: ใน Visuino เพิ่มส่วนประกอบ
- ขั้นตอนที่ 5: ในส่วนประกอบชุด Visuino
- ขั้นตอนที่ 6: ในส่วนประกอบ Visuino Connect
- ขั้นตอนที่ 7: สร้าง คอมไพล์ และอัปโหลดโค้ด Arduino
- ขั้นตอนที่ 8: เล่น
2025 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2025-01-13 06:58
ในบทช่วยสอนนี้ เราจะเรียนรู้วิธีสร้าง Volume Indicator โดยใช้ Neopixel Ws2812 LED Ring และ Arduino
ดูวิดีโอ!
ขั้นตอนที่ 1: สิ่งที่คุณต้องการ
- Arduino Uno หรือบอร์ด Arduino อื่น ๆ
- NeoPixel - RGB LED Ring
- สายจัมเปอร์
- โพเทนชิออมิเตอร์
- ซอฟต์แวร์ Visuino: ดาวน์โหลดที่นี่
ขั้นตอนที่ 2: วงจร
- เชื่อมต่อพินบอร์ด Arduino 5V กับพิน LedRing VCC
- เชื่อมต่อพินบอร์ด Arduino GND กับพิน LedRing GND
- เชื่อมต่อบอร์ด Arduino พินดิจิตอล 2 กับพิน LedRing DI
- เชื่อมต่อโพเทนชิออมิเตอร์พิน OTB กับ Arduino Analog Pin A0
- เชื่อมต่อโพเทนชิโอมิเตอร์พิน VCC กับ Arduino Analog Pin 5V
- เชื่อมต่อโพเทนชิออมิเตอร์พิน GND กับ Arduino Pin GND
ขั้นตอนที่ 3: เริ่ม Visuino และเลือก Arduino UNO Board Type
ต้องติดตั้ง Visuino: https://www.visuino.eu ด้วย ดาวน์โหลดเวอร์ชันฟรีหรือลงทะเบียนเพื่อทดลองใช้ฟรี
เริ่ม Visuino ดังรูปแรก คลิกที่ปุ่ม "Tools" บนส่วนประกอบ Arduino (ภาพที่ 1) ใน Visuino เมื่อกล่องโต้ตอบปรากฏขึ้น ให้เลือก "Arduino UNO" ดังแสดงในภาพที่ 2
ขั้นตอนที่ 4: ใน Visuino เพิ่มส่วนประกอบ
- เพิ่มองค์ประกอบ "ช่วงแผนที่อนาล็อก"
- เพิ่มองค์ประกอบ "Ramp To Analog Value"
- เพิ่มคอมโพเนนต์ "Analog To Unsigned"
- เพิ่ม 2X "เปรียบเทียบค่าอนาล็อก" ส่วนประกอบ
- เพิ่ม 2X "ค่าสี" ส่วนประกอบ
- เพิ่มคอมโพเนนต์ "RGBW Color Multi-Source Merger"
- เพิ่มองค์ประกอบ "NeoPixels"
ขั้นตอนที่ 5: ในส่วนประกอบชุด Visuino
- เลือก "MapRange1" และในคุณสมบัติตั้งค่า Input Range> Max to 1 และ Input Range> Min to 0
- เลือก "MapRange1" และในคุณสมบัติที่กำหนดช่วงเอาต์พุต> สูงสุดเป็น 12 และช่วงเอาต์พุต> ต่ำสุดถึง 0
หมายเหตุ: Output Range> Max to 12 คือจำนวน LED บน LEDRing
- เลือก "RampToValue1" และในหน้าต่างคุณสมบัติตั้งค่า Slope (S) เป็น 1000
- เลือก "CompareValue1" และในหน้าต่างคุณสมบัติตั้งค่า Compare Type to ctBigger และ Value to 10เลือกฟิลด์ Value และคลิกที่ไอคอน Pin แล้วเลือก "Float Sink Pin"
- เลือก "CompareValue2" และในหน้าต่างคุณสมบัติตั้งค่า Compare Type to ctSmaller แล้วเลือกฟิลด์ Value และคลิกที่ไอคอน Pin แล้วเลือก "Float Sink Pin"
- เลือก "ColorValue2" และในหน้าต่างคุณสมบัติตั้งค่า Value เป็น clNavy
- ดับเบิลคลิกที่ "NeoPixels1" และในหน้าต่าง PixelGroups ให้ลาก ColorPixel ไปทางด้านซ้าย และในหน้าต่างคุณสมบัติ จากนั้นตั้งค่า Count Pixels เป็น 12
หมายเหตุ: Count Pixels 12 คือจำนวน LED บน LEDRing
ขั้นตอนที่ 6: ในส่วนประกอบ Visuino Connect
- เชื่อมต่อ Arduino Analog pin [0] ออกไปยัง MapRange1 pin In
- เชื่อมต่อพิน "MapRange1" เข้ากับ RampToValue1 พินขาเข้า และ CompareValue1 มูลค่าพินและ CompareValue2 มูลค่าพิน
- เชื่อมต่อพิน "RampToValue1" เข้ากับ CompareValue1 pin In และ CompareValue2 pin In และ AnalogToUnsigned1 pin In
- เชื่อมต่อ AnalogToUnsigned1 พินออกกับ NeoPixels1 พิน Index
- เชื่อมต่อ CompareValue1 pin Out กับ ColorValue1 pin Clock
- เชื่อมต่อ CompareValue2 pin Out กับ ColorValue2 pin Clock
- เชื่อมต่อ ColorValue1 พินออกกับ RGBWColorMultiMerger1 พิน [0]
- เชื่อมต่อ ColorValue2 พินออกกับ RGBWColorMultiMerger1 พิน [1]
- เชื่อมต่อ RGBWColorMultiMerger1 พินออกกับ NeoPixels1 พิน Color
- เชื่อมต่อ NeoPixels1 พินออกกับ Arduino Digital Pin 2
ขั้นตอนที่ 7: สร้าง คอมไพล์ และอัปโหลดโค้ด Arduino
ใน Visuino ที่ด้านล่างให้คลิกแท็บ "บิลด์" ตรวจสอบให้แน่ใจว่าได้เลือกพอร์ตที่ถูกต้อง จากนั้นคลิกที่ปุ่ม "รวบรวม/สร้างและอัปโหลด"
ขั้นตอนที่ 8: เล่น
หากคุณจ่ายไฟให้กับโมดูล Arduino UNO และเลื่อนโพเทนชิออมิเตอร์ ไฟ LED Ring จะระบุตำแหน่งโพเทนชิออมิเตอร์ คุณสามารถใช้วิธีนี้ในแอปพลิเคชันเสียงที่คุณต้องการระบุตำแหน่งระดับเสียงหรือโครงการอื่นใดที่ต้องการตัวบ่งชี้ที่มองเห็นได้
ยินดีด้วย! คุณได้เสร็จสิ้นโครงการของคุณด้วย Visuino สิ่งที่แนบมาด้วยคือโครงการ Visuino ที่ฉันสร้างขึ้นสำหรับคำแนะนำนี้ คุณสามารถดาวน์โหลดและเปิดใน Visuino: