โครงการนี้สาธิตการใช้ทรานซิสเตอร์เป็นสวิตช์
การสวิตช์โดยใช้ทรานซิสเตอร์
การควบคุมกำลังไฟฟ้า: ความรู้เบื้องต้นเกี่ยวกับทรานซิสเตอร์
ขาพิน (Pin) ของ Arduino สามารถจ่ายไฟได้เพียง 5 โวลต์ที่กระแส 40 มิลลิแอมป์ ซึ่งเพียงพอสำหรับการจุดหลอด LED แต่ถ้าคุณเชื่อมต่อมอเตอร์ แถบไฟสว่าง หรือเครื่องทำความร้อน คุณจะทำลายไมโครโปรเซสเซอร์ได้ ทรานซิสเตอร์ คือทางออก
ทรานซิสเตอร์แบบ NPN Bipolar Junction (BJT)
ให้นึกภาพทรานซิสเตอร์เหมือนวาล์วน้ำ
- เบส (Base): ด้ามจับของวาล์ว Arduino จะเชื่อมต่อตรงนี้
- คอลเลกเตอร์ (Collector): แหล่งน้ำความดันสูง (เช่น แบตเตอรี่ 12V และมอเตอร์)
- อีมิตเตอร์ (Emitter): ท่อระบายน้ำ (กราวด์)
- หลักการทำงาน: เมื่อ Arduino ส่งสัญญาณไฟฟ้าเล็กๆ 5V ไปที่เบส มันจะ "เปิดวาล์ว" ทำให้กระแสไฟฟ้าจำนวนมากจาก 12V ไหลจากคอลเลกเตอร์ไปยังอีมิตเตอร์ เพื่อจ่ายไฟให้มอเตอร์ได้อย่างปลอดภัย
เพาเวอร์ MOSFETs
สำหรับโหลดที่กินกระแสสูงมากๆ (เช่น เตียงร้อน 10 แอมป์ในเครื่องพิมพ์ 3 มิติ) คุณต้องเปลี่ยนจาก BJT เป็น Logic-Level MOSFET (เช่น IRLZ44N) ซึ่งสร้างความร้อนน้อยกว่ามากและสามารถรับกระแสสูงได้
รายการอุปกรณ์
- Arduino Uno: สมองหลัก
- TIP120 (BJT) หรือ IRLZ44N (MOSFET)
- ตัวต้านทาน 1k-ohm: วางระหว่าง Arduino กับเบส/เกต
- โหลดกำลังสูง: มอเตอร์ DC 12V หรือแถบ LED
- ไดโอด 1N4007: ไดโอดฟลายแบ็ก (flyback diode) ข้ามขั้วมอเตอร์เพื่อป้องกันแรงดันกระชาก