아두이노용 스위치로 IRF520 MOSFET 사용하기
이 튜토리얼에서는 Arduino 프로젝트에서 IRF520 MOSFET 모듈을 스위치로 사용하는 방법을 살펴보겠습니다. IRF520은 널리 사용되는 N채널 MOSFET으로, Arduino의 작은 제어 신호를 사용하여 모터나 조명과 같은 더 큰 부하를 제어할 수 있게 해줍니다. 이 가이드가 끝나면 간단한 코드 명령을 통해 장치를 켜고 끌 수 있게 될 것입니다.

이 튜토리얼은 배선 설정, MOSFET을 제어하도록 Arduino를 프로그래밍하는 방법, 그리고 안정적인 작동을 보장하기 위한 팁을 다룹니다. 더 시각적인 설명을 원하시면 비디오(00:00 부분)를 확인하세요.
하드웨어 설명
이 설정의 주요 구성 요소는 스위치 역할을 하는 IRF520 MOSFET입니다. 게이트는 Arduino로부터 낮은 전압 신호를 받아 드레인에서 소스로 흐르는 전류를 제어하여 연결된 장치를 효과적으로 켜거나 끕니다. 이는 Arduino가 직접 공급할 수 있는 것보다 더 많은 전류가 필요한 장치를 제어하는 데 이상적입니다.
MOSFET 외에도 게이트로 흐르는 전류를 제한하는 저항과 제어하려는 부하용 전원 공급 장치가 필요합니다. IRF520은 최대 9.2A의 연속 전류를 처리할 수 있어 다양한 응용 분야에 적합합니다.
데이터시트 세부 정보
| 제조업체 | International Rectifier |
|---|---|
| 부품 번호 | IRF520 |
| 로직/IO 전압 | 10V (Vgs) |
| 공급 전압 | 100V (Vds) |
| 출력 전류(채널당) | 9.2A (최대) |
| 피크 전류(채널당) | 33A (최대) |
| PWM 주파수 가이드 | 최대 100kHz |
| 입력 로직 임계값 | 2-4V (임계 전압) |
| 전압 강하 / RDS(on) / 포화 | 0.27Ω (일반) |
| 열 제한 | 175°C (최대 접합 온도) |
| 패키지 | TO-220 |
| 참고 사항 / 변형 | N채널 MOSFET |
- MOSFET을 켜기에 충분한 게이트 전압이 있는지 확인하세요.
- Arduino 핀과 게이트 사이에 저항(일반적으로 10kΩ)을 사용하여 전류를 제한하세요.
- 올바른 작동을 위해 소스를 접지에 연결하세요.
- 손상을 방지하기 위해 최대 전압 및 전류 정격을 주의하세요.
- 최대 정격에 가깝게 작동하는 경우 방열판 사용을 고려하세요.
배선 지침

IRF520 MOSFET 모듈을 배선하려면 먼저 VIN과 GND를 전원 공급 장치에 연결하세요. 부하를 V+와 V-에 연결하세요. 모듈의 SIG 핀을 Arduino의 8번 핀에 연결하세요. 모듈의 GND 핀도 Arduino에 연결하는 것을 잊지 마세요.
코드 예제 및 설명
IRF520 MOSFET을 제어하는 코드는 간단합니다. 먼저 #define 지시문을 사용하여 제어 핀을 정의합니다. setup() 함수에서 이 핀을 출력으로 설정하고 시리얼 통신을 초기화합니다.
#define control 8 // MOSFET을 제어하는 핀
void setup() {
pinMode(control,OUTPUT); // 제어 핀을 출력으로 정의
Serial.begin(9600);
}
loop() 함수에서는 각 동작 사이에 지연을 두고 MOSFET을 켜고 끕니다. 이를 통해 부하가 2초 동안 전원이 공급된 후 2초 동안 꺼지는 스위치 동작을 확인할 수 있습니다.

void loop() {
digitalWrite(control,HIGH); // MOSFET 스위치 켜기
delay(2000); // 2000ms 또는 2초 대기
digitalWrite(control,LOW); // MOSFET 스위치 끄기
delay(2000); // 2000ms 또는 2초 대기
}
전체 코드와 추가 세부 정보는 기사 아래에 로드된 코드를 참조하세요. 배선에 맞게 코드의 제어 핀을 조정해야 합니다.
시연 / 기대 효과
코드를 실행하면 부하가 2초 동안 켜졌다가 2초 동안 꺼지는 것이 계속 반복되는 것을 볼 수 있습니다. 부하가 켜지지 않으면 연결을 확인하고 전원 공급 장치가 충분한지 확인하세요. 또한 MOSFET이 소스가 접지에 연결된 상태로 올바르게 배선되었는지 확인하세요.
역극성이나 플로팅 입력은 예기치 않은 동작을 유발할 수 있으므로 주의하세요. MOSFET이 제대로 스위칭되지 않으면 게이트가 Arduino로부터 올바른 전압 신호를 받고 있는지 확인하세요.
/*
* 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
}
자원 및 참고자료
-
외부
-
외부IRF520 datasheet (Vishay)vishay.com
파일📁
도면
-
E-Switch Schematic using IRF5305S MosfedtSchematic 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.pdf1.38 MB
다른 파일들
-
IRF5305 P-Channel MOSFET DatasheetDatasheet 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.pdf0.16 MB