กลับหน้าหลัก
views
ตัวต้านทานสำหรับ Arduino: วิธีอ่านค่าสี การเลือกโอห์ม และป้องกัน LED ไหม้
Last updated on

ตัวต้านทานสำหรับ Arduino: วิธีอ่านค่าสี การเลือกโอห์ม และป้องกัน LED ไหม้


เตรียมของให้พร้อม!

โปรเจคนี้ต้องใช้: โมดูลวัดค่าสี อ่านค่าสี RGB Color Recognition Sensor (TCS230/TCS3200) สำหรับ Arduino

🛒 สั่งซื้อที่ Shopee

บทนำ: ทำไมเรื่องตัวต้านทานถึงสำคัญจริงๆ

หลายคนเริ่มเล่น Arduino มาต่อ LED ดับ ต่อไม่ติด หรือ LED ไหม้ทั้งที่ยังไม่ทันทำอะไร เลยมาลองดูว่าเกิดจากอะไร — คำตอบส่วนใหญ่คือไม่ได้คำนวณค่าตัวต้านทานที่ถูกต้อง

บทความนี้จะพาอ่านค่าสีตัวต้านทาน เข้าใจกฎของโอห์มในเชิงปฏิบัติ และเลือกค่าโอห์มที่เหมาะกับ LED แต่ละสี เพื่อให้วงจรทำงานได้อย่างปลอดภัยโดยไม่ต้องเดา

[image: ตัวต้านทานหลายขนาดวางเรียงกันบนเบาะรองแบบ antistatic พร้อมแถบสี 4 แถบ 5 แถบ และ SMD]

ทำความรู้จักตัวต้านทาน (Resistor) แบบเร็ว

ตัวต้านทานมีหน่วยเป็นโอห์ม (Ω) ทำหน้าที่จำกัดกระแสไฟฟ้าที่ไหลผ่านวงจร ยิ่งค่า Ω สูง กระแสยิ่งไหลน้อย

ในงาน Arduino ที่พบบ่อยที่สุดคือใช้ตัวต้านทานกับ LED เพื่อไม่ให้ไหลกระแสเกินและไหม้ กับใช้เป็น pull-up หรือ pull-down resistor สำหรับ switch หรือ button

วิธีอ่านค่าสีตัวต้านทาน (Resistor Color Code)

แถบสี 4 แถบ (ที่ใช้บ่อยที่สุด)

แถบที่ความหมายตัวอย่าง
แถบ 1ตัวเลขตัวแรกแดง = 2
แถบ 2ตัวเลขตัวที่สองดำ = 0
แถบ 3ตัวคูณ (เลขยกกำลัง 10)ทอง = ×0.1
แถบ 4ค่าความทนทาน (tolerance)ทอง = ±5%

ตัวอย่าง: แถบสี แดง-แดง-ทอง-ทอง

  • แถบ 1 แดง = 2
  • แถบ 2 แดง = 2
  • แถบ 3 ทอง = ×0.1 (หรือ ÷10)
  • ค่า = 22 × 0.1 = 2.2Ω

ตัวอย่าง: แถบสี น้ำตาล-ดำ-ส้ม-ทอง

  • น้ำตาล = 1, ดำ = 0, ส้ม = ×1,000
  • ค่า = 10 × 1,000 = 10,000Ω หรือ 10kΩ

ตัวอย่างที่ใช้บ่อยในโปรเจค Arduino

แถบสีค่าโอห์มใช้งานกับ
น้ำตาล-ดำ-น้ำตาล-ทอง100Ωบางวงจร Logic
แดง-แดง-ดำ-ทอง22Ωดูก่อนเลย แต่น้อยคนใช้
แดง-แดง-แดง-ทอง2,200Ω = 2.2kΩSignal resistor
เหลือง-ม่วง-ส้ม-ทอง47,000Ω = 47kΩPull-up/Pull-down
น้ำตาล-ดำ-เขียว-ทอง1MΩบางวงจรพิเศษ

[image: แผนภาพอธิบายตำแหน่งแถบสีทั้ง 4 แถบพร้อมตัวเลขและสูตรคูณ ลูกศรชี้ชัดเจนว่าแถบไหนคืออะไร]

วิธีจำค่าสีแบบเร็ว

จำเป็นตัวเลขลำดับ Black Reed Orange Yellow Green Blue Violet Gray White = BROYGBVGW ค่อยเลื่อนไปทีละตัวเลข เริ่มจากดำ = 0 แดง = 1 ไปเรื่อยๆ

กฎของโอห์ม (Ohm’s Law) ใช้ยังไงกับ Arduino

สูตรพื้นฐานมีแค่นี้:

V = I × R
  • V = แรงดัน (Voltage) หน่วย Volt
  • I = กระแส (Current) หน่วย Ampere
  • R = ความต้านทาน (Resistance) หน่วย Ohm

สำหรับ Arduino (ที่จ่าย 5V) กับ LED ทั่วไป เราต้องรู้ว่า LED แต่ละสีรับแรงดันตกคร่อม (Forward Voltage) เท่าไหร่

สี LEDForward Voltage ประมาณ
แดง1.8 - 2.2V
ส้ม / เหลือง2.0 - 2.2V
เขียว2.0 - 3.0V
ฟ้า / ขาว3.0 - 3.5V

ถ้าลองใช้โมดูลวัดค่าสี RGB Color Recognition Sensor (TCS230/TCS3200) ในโปรเจค การเข้าใจเรื่องแรงดันของ LED สีต่างๆ จะช่วยให้ออกแบบวงจรหลังจากตรวจจับสีได้ดีขึ้น เช่น ใช้ LED แสดงผลหลายสีแต่ละสีต้องใช้ค่า R ไม่เท่ากัน

สูตรคำนวณตัวต้านทานสำหรับ LED

R (Ω) = (Vin - Vf) / If
  • Vin = แรงดันจ่าย (Arduino = 5V หรือ 3.3V ถ้าใช้บอร์ด 3.3V)
  • Vf = Forward Voltage ของ LED
  • If = กระแสที่ LED ต้องการ (ส่วนใหญ่ 20mA สำหรับ LED 5mm ขนาดเล็กกว่าใช้ 10mA ก็พอ)

ตัวอย่าง: LED สีแดง + Arduino 5V

R = (5 - 2) / 0.020 = 3 / 0.020 = 150Ω

ค่าที่ใกล้ที่สุดในชุดมาตรฐานคือ 150Ω หรือ 220Ω ก็ใช้ได้ LED จะสว่างน้อยกว่าเล็กน้อยแต่อายุยาวขึ้น

ตัวอย่าง: LED สีขาว + Arduino 5V

R = (5 - 3.3) / 0.020 = 1.7 / 0.020 = 85Ω

ค่าที่ใกล้ที่สุดคือ 100Ω หรือจะใช้ 220Ω ก็ไม่ผิด ถ้าไม่ต้องการความสว่างเต็มที่

[image: การต่อวงจร LED กับตัวต้านทานบน breadboard ร่วมกับ Arduino พร้อมวัดแรงดันด้วยมัลติมิเตอร์จริง]

ค่าโอห์มที่ใช้บ่อยที่สุดในโปรเจค Arduino

สถานการณ์ค่าที่แนะนำเหตุผล
LED สีแดง/ส้ม/เหลือง/เขียว ที่ 5V220Ωค่ามาตรฐาน หาซื้อง่าย หุ้นในชุดอุปกรณ์เกือบทุกชุด
LED สีฟ้า/ขาว ที่ 5V330ΩForward voltage สูงขึ้น ต้องค่าสูงขึ้นด้วย
Pull-up resistor สำหรับปุ่มกด10kΩค่าสูงพอที่จะไม่กินกระแสมากเกินไป
Pull-down resistor สำหรับ switch10kΩเหมือนกัน
Limiting resistor สำหรับ signal ขาanalog1kΩ - 10kΩขึ้นอยู่กับวงจร แต่โดยทั่วไป 4.7kΩ ก็ใช้ได้

ทำไมชุดอุปกรณ์ Arduino ส่วนใหญ่ถึงแถม R 220Ω มาหลายตัว

เพราะมันใช้ได้กับ LED สีธรรมดาส่วนใหญ่ที่รัน 5V ค่า 220Ω จะทำให้กระแสไหลประมาณ 14-15mA ซึ่งเพียงพอให้ LED สว่างชัดเจนและไม่เกินขีดจำกัดของ Arduino pin (40mA ต่อขา)

ข้อผิดพลาดที่พบบ่อย

1. ต่อ LED โดยไม่มีตัวต้านทาน

ถ้าลองต่อ LED ตรงเข้า pin 5V กับ GND โดยไม่มี R สังเกตดู LED จะสว่างจัดในชั่วอึกใจแล้วดับไป บางทีต่อให้ไม่ไหม้แต่ก็จะสว่างจางมากเพราะ internal resistance ของ LED ประมาณไม่ได้สูงพอจะจำกัดกระแส

2. ใช้โอห์มต่ำเกินจน LED ร้อน

ถ้าใช้ R 47Ω กับ LED แดงที่ 5V กระแสจะเป็น (5-2)/47 ≈ 64mA ซึ่งเกินทั้ง LED และ Arduino ถ้าใช้หลายตัวพร้อมกัน อาจทำให้บอร์ดร้อนและเสียหายได้

3. สับสนระหว่าง LED แบบ Common Anode กับ Common Cathode

ถ้าต่อ RGB LED แบบ 4 ขา (Common Anode) แล้วต่อ R ผิดขา จะไม่มีทางได้สีที่ต้องการ วิธีตรวจสอบคือ ดูขาที่ยาวกว่า — ขายาวกว่าคือ Anode (ขับ) ส่วน Cathode จะต่อ GND พร้อม R อนุกรม

4. ลืมว่า ESP32 หรือบอร์ด 3.3V ใช้แรงดันจ่ายไม่เท่ากับ Arduino

ถ้าใช้สูตรคำนวณกับ 3.3V แทน 5V ค่า R ที่ได้จะต่ำลงมาก เช่น LED แดงที่ 3.3V จะได้ R = (3.3-2)/0.02 = 65Ω ใช้ 68Ω ได้เลย

[image: เปรียบเทียบ LED ไหม้กับ LED ที่ยังใช้งานได้ปกติ พร้อมอธิบายว่าอันไหนเป็นเพราะกระแสเกิน]

วิธีทดสอบตัวต้านทานที่ไม่แน่ใจค่า

ถ้าแถบสีอ่านไม่ออกหรือสีซีดไป ใช้มัลติมิเตอร์วัดตรงๆ ได้เลย:

  1. ตั้งย่านวัดเป็น Ω (โอห์ม)
  2. วางขาตัวต้านทานทั้งสองข้างบนช่องวัด
  3. อ่านค่าจอ ถ้าวัดได้ 220Ω แสดงว่าถูกต้อง

หลักในการเลือกใช้งานจริง: ถ้าค่าที่คำนวณได้ไม่ลงตัวกับค่ามาตรฐาน (E-series) ค่าที่ใกล้เคียงขึ้นไปเสมอ ไม่ใช่ลง เพราะ R สูงกว่า = กระแสต่ำกว่า = ปลอดภัยกว่า LED สว่างน้อยกว่าเล็กน้อยยังดีกว่าไหม้

การใช้งานขั้นสูง: หลาย LED ต่อขนาน

ถ้าต้องการต่อ LED หลายตัวขนาน อย่าใช้ R ตัวเดียวร่วมทุกตัว เพราะถ้า LED ตัวใดตัวหนึ่งเสียจะทำให้กระแสไหลไปตัวอื่นหมดแล้วไหม้เร็ว แต่ละ LED ควรมี R ของตัวเอง ถ้าเขียนโปรแกรมเปลี่ยนสีให้ LED หลายดวง อย่างเช่นโปรเจค Voice Controlled LED’s โดยใช้ Arduino และ Bluetooth จะเห็นว่าแต่ละสีต้องคำนวณ R แยก

สรุปเรื่องค่าที่ต้องจำ

  • LED สีแดง/เขียว → ใช้ 220Ω ที่ 5V
  • LED สีฟ้า/ขาว → ใช้ 330Ω ที่ 5V
  • ปุ่มกด / switch → ใช้ 10kΩ pull-up หรือ pull-down
  • จำสูตร R = (Vin - Vf) / If ไว้เลย ใช้บ่อยมาก
  • ถ้าค่าที่คำนวณไม่ลงตัว ใช้ค่าที่ใกล้เคียงขึ้นไปเสมอ

บทความที่เกี่ยวข้อง

ถ้าอยากต่อยอดจากเรื่องตัวต้านทานไปสู่การใช้งาน Input/Output จริงๆ แนะนำอ่าน 10 โปรเจค Arduino มือใหม่ ที่ทำแล้วเข้าใจ Input/Output จริง ๆ ซึ่งมีตัวอย่างวงจรที่ใช้ R ร่วมกับ switch, LED และเซ็นเซอร์ต่างๆ แบบละเอียด

สำหรับใครที่ใช้ Arduino Mega 2560 ซึ่งมีขา I/O มากกว่า การเข้าใจเรื่องกระแสต่อขาและการต่อ R จะช่วยให้ออกแบบวงจรหลาย LED ได้ดีขึ้นด้วย

อยากทำโปรเจคแบบนี้?

รับทำโปรเจค Arduino / IoT จบงานไว ส่งงานครบ พร้อมสอน

หากต้องการ รับทำโปรเจคอาดูโน่ หรือระบบ IoT แบบเร่งด่วน สามารถดูรายละเอียดบริการได้ที่หน้าแรก

จ้างทำโปรเจคเลย

ความคิดเห็น