ค้นหาโค้ด

การใช้ IRF520 MOSFET เป็นสวิตช์สำหรับ Arduino

การใช้ IRF520 MOSFET เป็นสวิตช์สำหรับ Arduino

ในบทช่วยสอนนี้ เราจะสำรวจวิธีการใช้โมดูล IRF520 MOSFET เป็นสวิตช์สำหรับโปรเจกต์ Arduino IRF520 เป็น MOSFET ชนิด N-channel ที่ได้รับความนิยม ซึ่งช่วยให้คุณควบคุมโหลดขนาดใหญ่ เช่น มอเตอร์หรือไฟ โดยใช้สัญญาณควบคุมขนาดเล็กจาก Arduino ของคุณ เมื่อจบคำแนะนำนี้ คุณจะสามารถเปิดและปิดอุปกรณ์ต่างๆ ได้ผ่านคำสั่งโค้ดง่ายๆ

บทช่วยสอนนี้ครอบคลุมการตั้งค่าการเดินสายไฟ วิธีการเขียนโปรแกรม Arduino เพื่อควบคุม MOSFET และเคล็ดลับเพื่อให้การทำงานมีความน่าเชื่อถือ สำหรับคำอธิบายที่เห็นภาพมากขึ้น โปรดดูวิดีโอ (ในวิดีโอที่ 00:00)

อธิบายฮาร์ดแวร์

ส่วนประกอบหลักของการตั้งค่านี้คือ IRF520 MOSFET ซึ่งทำหน้าที่เป็นสวิตช์ ขาเกต (gate) จะรับสัญญาณแรงดันไฟฟ้าต่ำจาก Arduino ทำให้สามารถควบคุมการไหลของกระแสจากขาเดรน (drain) ไปยังขาซอร์ส (source) ได้อย่างมีประสิทธิภาพในการเปิดหรือปิดอุปกรณ์ที่เชื่อมต่ออยู่ ทำให้เหมาะสำหรับการควบคุมอุปกรณ์ที่ต้องการกระแสไฟฟ้ามากกว่าที่ Arduino จะจ่ายได้โดยตรง

นอกจาก MOSFET แล้ว คุณจะต้องมีตัวต้านทานเพื่อจำกัดกระแสที่ไหลเข้าสู่ขาเกต รวมถึงแหล่งจ่ายไฟสำหรับโหลดที่คุณต้องการควบคุม IRF520 สามารถรองรับกระแสต่อเนื่องได้สูงสุดถึง 9.2 A ทำให้เหมาะสำหรับการใช้งานที่หลากหลาย

รายละเอียดจาก Datasheet

ผู้ผลิตInternational Rectifier
หมายเลขชิ้นส่วนIRF520
แรงดันไฟฟ้าลอจิก/IO10 V (Vgs)
แรงดันไฟฟ้าจ่าย100 V (Vds)
กระแสเอาต์พุต (ต่อช่อง)9.2 A (สูงสุด)
กระแสสูงสุดชั่วขณะ (ต่อช่อง)33 A (สูงสุด)
คำแนะนำความถี่ PWMสูงถึง 100 kHz
ระดับเกณฑ์อินพุตลอจิก2-4 V (แรงดันเกณฑ์)
แรงดันตก / RDS(on) / สภาวะอิ่มตัว0.27 Ω (โดยทั่วไป)
ขีดจำกัดทางความร้อน175 °C (อุณหภูมิจุดเชื่อมต่อสูงสุด)
แพ็กเกจTO-220
หมายเหตุ / รุ่นต่างๆMOSFET ชนิด N-channel

  • ตรวจสอบให้แน่ใจว่าแรงดันไฟฟ้าที่ขาเกตเพียงพอที่จะทำให้ MOSFET ทำงาน
  • ใช้ตัวต้านทาน (โดยทั่วไปคือ 10kΩ) ระหว่างขาของ Arduino และขาเกตเพื่อจำกัดกระแส
  • เชื่อมต่อขาซอร์สเข้ากับกราวด์เพื่อให้ทำงานได้อย่างถูกต้อง
  • ระมัดระวังเรื่องพิกัดแรงดันและกระแสสูงสุดเพื่อป้องกันความเสียหาย
  • พิจารณาใช้แผ่นระบายความร้อนหากทำงานใกล้พิกัดสูงสุด

คำแนะนำการเดินสายไฟ

Arduino wriing for IRF520 module
Arduino wriing for IRF520 module

ในการเดินสายไฟโมดูล IRF520 MOSFET ให้เริ่มต้นโดยเชื่อมต่อ VIN และ GND เข้ากับแหล่งจ่ายไฟ เชื่อมต่อโหลดของคุณเข้ากับ V+ และ V- เชื่อมต่อขา SIG ของโมดูลเข้ากับขา 8 ของ Arduino อย่าลืมเชื่อมต่อขา GND ของโมดูลเข้ากับ Arduino

ตัวอย่างโค้ดและคำอธิบาย

โค้ดสำหรับควบคุม IRF520 MOSFET นั้นตรงไปตรงมา อันดับแรก เรากำหนดขาควบคุมโดยใช้คำสั่ง #define ในฟังก์ชัน setup() เราตั้งค่าขานี้เป็นเอาต์พุตและเริ่มต้นการสื่อสารแบบอนุกรม


#define control 8 // ขาที่ควบคุม MOSFET

void setup() {
  pinMode(control,OUTPUT); // กำหนดขาควบคุมเป็นเอาต์พุต
  Serial.begin(9600);
}

ในฟังก์ชัน loop() เราจะเปิดและปิด MOSFET โดยมีหน่วงเวลาระหว่างแต่ละการทำงาน ซึ่งช่วยให้คุณเห็นการทำงานของสวิตช์ โดยโหลดจะได้รับไฟเป็นเวลา 2 วินาที จากนั้นปิดเป็นเวลา 2 วินาที

Using an IRF520 MOSFET switch button with an Arduino

void loop() {
  digitalWrite(control,HIGH); // เปิดสวิตช์ MOSFET
  delay(2000); // หน่วงเวลา 2000 มิลลิวินาทีหรือ 2 วินาที

  digitalWrite(control,LOW); // ปิดสวิตช์ MOSFET
  delay(2000); // หน่วงเวลา 2000 มิลลิวินาทีหรือ 2 วินาที
}

สำหรับโค้ดเต็มและรายละเอียดเพิ่มเติม โปรดดูโค้ดที่โหลดไว้ด้านล่างบทความ ตรวจสอบให้แน่ใจว่าปรับขาควบคุมในโค้ดให้ตรงกับการเดินสายไฟของคุณ

การสาธิต / สิ่งที่คาดหวัง

เมื่อคุณรันโค้ด คุณควรเห็นโหลดเปิดเป็นเวลา 2 วินาที จากนั้นปิดเป็นเวลา 2 วินาทีอย่างต่อเนื่อง หากโหลดไม่เปิด ให้ตรวจสอบการเชื่อมต่อของคุณและตรวจสอบให้แน่ใจว่าแหล่งจ่ายไฟเพียงพอ นอกจากนี้ ยืนยันว่า MOSFET ต่อสายไฟอย่างถูกต้องโดยให้ขาซอร์สเชื่อมต่อกับกราวด์

โปรดระมัดระวังเรื่องการกลับขั้วหรืออินพุตลอย ซึ่งอาจทำให้เกิดพฤติกรรมที่ไม่คาดคิด หาก MOSFET ไม่สลับการทำงานอย่างถูกต้อง ตรวจสอบให้แน่ใจว่าขาเกตได้รับสัญญาณแรงดันไฟฟ้าที่ถูกต้องจาก Arduino

ภาพ

Using an IRF520 MOSFET switch button with an Arduino
Using IRF520 MOSFET Switch button for Arduino
Arduino wriing for IRF520 module
Arduino wriing for IRF520 module
IRF520_module-1
IRF520_module-1
IRF520_module-2
IRF520_module-2
IRF520_module-3
IRF520_module-3
105-Using an IRF520 MOSFET as a switch for Arduino
ภาษา: C++
/*
 * IRF520 MOSFET Switch module for Arduino
 * Written by Ahmad Shamshiri for Robojax.com
Date modified: June 9, 2018 at 18:58 in Ajax, Ontario, Canada
Watch video instructions for this code: https://youtu.be/17vqLv508Uw
 */

#define control 8 // pin that controls the MOSFET

void setup() {
  // IRF520 MOSFET Tutorial by Robojax
  pinMode(control,OUTPUT);// define control pin as output
  Serial.begin(9600);

}

void loop() {
  // IRF520 MOSFET Tutorial by Robojax

  digitalWrite(control,HIGH); // Turn the MOSFET Switch ON
  delay(2000);// Wait for 2000 ms or 2 seconds

  digitalWrite(control,LOW); // Turn the MOSFET Switch OFF
  delay(2000);// Wait for 2000 ms or 2 seconds


}

แหล่งข้อมูลและเอกสารอ้างอิง

ไฟล์📁

แผนภาพวงจร

  • E-Switch Schematic using IRF5305S Mosfedt
    Schematic for the IRF5305S P-channel MOSFET. This component is a power MOSFET commonly used for high-side switching applications, with a drain-source voltage of -55V and continuous drain current of -31A.
    robojax_e-switch_IRF5305S_schematic.pdf 1.38 MB

ไฟล์อื่น ๆ

  • IRF5305 P-Channel MOSFET Datasheet
    Datasheet for the IRF5305, a P-channel power MOSFET. It features a drain-to-source voltage of -55V, continuous drain current of -31A, and low on-resistance, suitable for high-power switching applications.
    robojax_e-switch_IRF5305_datasheet.pdf 0.16 MB