Abstract
- โปรเจกต์นี้จะพาน้องๆ มาลองเล่นกับเจ้า Potentiometer กัน
ก็ลองดูกันนะ
Objective
- ควบคุมความสว่างของ LED ด้วย Potentiometer งานนี้จัดไปวัยรุ่น!
Working with a Potentiometer
Introduction to Analog Control
พวกอุปกรณ์ดิจิทัลเนี่ย มันมีแค่ "เปิด" กับ "ปิด" อย่างเดียว แต่เจ้า Potentiometer นี่มันเป็นอนาล็อก หมุนได้เรื่อยๆ เลยควบคุมได้ละเอียดกว่า โปรเจกต์นี้เราจะมาหมุนปุ่มเพื่อปรับความสว่างของ LED กัน งานนี้แหละที่เชื่อมโยงการหมุนมือเรากับความเข้มของไฟฟ้า เป็นพื้นฐานสำคัญของ Pulse Width Modulation (PWM) และ Analog-to-Digital Conversion (ADC) เลย
Hardware Infrastructure
- Arduino UNO: ตัวหลักของเรา ทำหน้าที่อ่านค่าแรงดันจาก Potentiometer แล้วแปลงเป็นค่าความสว่างให้ LED
- Potentiometer (10k Ohm): ตัวต้านทานปรับค่าได้ หมุนปุ่มแล้วได้แรงดันตั้งแต่ 0V ถึง 5V เรียบๆ
- LED และ Resistor 1k Ohm: ไฟแสดงผลของเรา ตัวต้านทานนี่สำคัญนะ ช่วยกันไม่ให้ LED รับไฟเกินจนพัง
- Breadboard และ Jumper Wires: เอาไว้ต่อวงจรแบบไม่ต้องบัดกรี งานนี้สะดวกและเป็นระเบียบ
Technological Logic and Signal Path
การควบคุมความสว่างมันเดินทางตามเส้นทางตรรกะแบบนี้เลย:
- Analog Sensing: Arduino อ่านตำแหน่งของปุ่ม Potentiometer ผ่าน Analog pin (เช่น A0) จะได้ค่าดิจิทัลระหว่าง 0 (หมุนซ้ายสุด) ถึง 1023 (หมุนขวาสุด)
- Value Remapping: เพราะว่า LED ใช้ PWM ควบคุมความสว่าง (ซึ่งมีค่าตั้งแต่ 0 ถึง 255) Arduino เลยใช้ฟังก์ชัน
map()เพื่อแปลงค่าจากเซ็นเซอร์ที่ 0-1023 ให้กลายเป็น 0-255 อย่างเนียนๆ - PWM Output (Dimming): แทนที่จะจ่ายไฟแรงดันคงที่ Arduino ใช้ Pulse Width Modulation คือสวิตช์ไฟ LED เปิด-ปิดเร็วมากๆ ถ้าปิดนานกว่า ไฟก็จะดูสว่างกว่าในสายตามนุษย์
- Execution: ด้วยการอัพเดทคำสั่ง
analogWrite()ในฟังก์ชันloop()ไฟ LED ก็จะตอบสนองทันทีทุกครั้งที่เราหมุนปุ่ม
Practical Learning and Next Steps
การสร้างสวิตช์ปรับความสว่างนี้จะสอนให้น้องรู้ว่าไมโครคอนโทรลเลอร์จัดการกับข้อมูลอนาล็อกจาก "โลกจริง" ยังไง ตรรกะเดียวกันนี้ใช้ในปุ่มปรับเสียง, ตัวควบคุมความเร็วมอเตอร์, หรือปรับความถี่เสียงได้เลย พอเข้าใจแล้ว น้องก็เอาไปใช้ควบคุมมอเตอร์ DC กำลังสูง หรือแม้แต่ปรับสมดุลสีของ RGB LED ได้เลย หล่อเท่เลยงานนี้! สู้งานนะน้อง