본문 바로가기
코딩/아두이노

모스펫으로 DC모터 제어하는 방법 ( IRFZ44N )

by DIYver 2020. 9. 14.

<다뤄볼 센서>

 

오늘 다룰 센서는 모스펫 ( MOSFET ) 이다.

 

생긴것이 마치 트랜지스터 처럼 생겼는데,

맞다.

 

트랜지스터의 한 종류다.

트랜지스터처럼 증폭의 역할을 하는 것이 아닌, 스위치의 역할을 한다고 보면 된다.

 

마치 릴레이와 같다.

릴레이는 하드웨어적으로 스위치 역할을 한다면,

모스펫은 회로적으로 스위치 역할을 한다.

 

모스펫은 언제 사용하나?

- 아두이노의 출력으로는 부족한 센서를 다룰 때 사용

- 스위치 회로를 구성할 때 사용

 

모스펫의 활용도는 너무 무궁무진 하지만, 일반적으로 사용하는 경우는 위의 경우들이다.

아두이노는 보통 5V 와 낮은 출력 전류를 갖고 있기에 모터를 구동하기엔 턱없이 부족하다.

 

따라서 이런 경우에 릴레이는 부피가 너무 커서 부적합하며

모스펫을 사용하는 것이 적당하다.

또한 모터의 방향을 제어할 것이 아니라면 모스펫으로 충분히 모터를 구동시킬 수 있다.

 

 


<센서 원리>

 

www.youtube.com/watch?v=b9ofoDE_ILg&t=327s

모스펫 원리는 위의 영상에서 알기 쉽게 설명해 주고 있다.

참고하면 좋다.

 

간단히 소개한다면

모스펫의 경우 

gate, drain, source 의 총 3개의 다리가 있다.

 

gate 는 문 또는 통로로 해석하고

drain 은 배출구 라고 해석하며,

source 는 소스(원천)라고 해석한다.

 

왼쪽부터 gate, drain, source 로 이루어져있다.

(모스펫 마다 다를 수 있음, 그리고 위는 N채널의 경우임)

 

gate 에는 signal 선을 연결해준다.

그리고 drain 에는 센서의 GND를 연결해준다.

마지막으로 source 에는 전원부의 (-)음극에 연결해준다.

 

쉽게 쉽게 이해해보자.

건전지에서 전류가 흐르는 것은 -극 에서 전자들이 +극으로 이동하기 때문이다.

따라서 전자들이 많이 있는 곳 바로 음극(-) 이 소스가 되는 것이다.

 

원천에서 들어온 전자들이 배출되는 곳

그곳이 바로 drain 이다. 

아까 drain 이 배출구라고 하지 않았던가, 전자 배출구라는 뜻이다.

 

그렇다면 gate 는 문 또는 통로로 해석하라했는데,

제어 신호가 문을 박차고 들어오면 이라고 해석하면 편하다.

 

다시 요약하면

" 제어 신호가 gate(문)를 박차고 들어오면

source(소스)의 전자들이 drain(배출구)을 통해서 흘러 나간다. "

라고 해석하면 된다.

 

센서의 Vcc 에는 외부 전원이 물려있다면,

모스펫에 제어 신호가 입력되면 

센서에 음극이 연결되면서 센서가 작동하게 된다.

 

 


<준비물>

 

아두이노(우노,메가,마이크로), 시리얼통신케이블, 모터, 모스펫, 저항(10k 옴), 점퍼선, 브레드보드, 외부전원

 


<회로도>

 

 

회로도는 위와 같다.

 

저항은 풀다운저항으로써 사용된다.

풀다운저항은 10k옴을 사용하는것이 원칙인데

10k 옴이 없다면, 다른 저항을 사용해도 사실 무방하다.

아두이노의 2번핀에 대해서 플로팅 상태를 해결하기 위함으로 사용된다.

전기 회로를 구성하고, 신호제어를 함에 있어서 풀다운 저항과 풀업 저항은 필수적으로 알고 있어야 한다.

 

 

 

지저분하지만 실제로 연결하면 이런느낌이다.


<코드>

 

 

void setup() {
  // put your setup code here, to run once:


  pinMode(2, OUTPUT);
}

void loop() {
  // put your main code here, to run repeatedly:

  digitalWrite(2, LOW);
  delay(2000);
  digitalWrite(2, HIGH);
  delay(2000);
}

코드는 위의 코드를 그대로 복붙해서 사용하면 된다.


<실행 결과>

 

youtu.be/mxX4d6U-Fy8

코드에서 작성한대로

2초마다 작동하였다가 멈췄다가를 반복하는 것을 확인할 수 있다.

 

 

 


<고찰>

 

모스펫을 쉽게설명하고 쉽게 사용했지만

사실 데이터시트만 봐도, 고려해야할 사항이 매우 많다.

문턱전압이라는 것이 있어서 제어 신호 전압이 모스펫의 문턱전압보다 높은지도 확인해 봐야한다.

 

만약 문턱전압보다 낮은 신호라면, 모스펫에 백날 신호를 보내도 작동하지 않는다.

 

사용해본 결과, 확실히 모터의 방향을 제어할 필요가 없는 것이라면 모스펫을 사용해도 좋을 듯 하다.

 

 

 

 


※ 궁금하시거나 질문사항이 있으시면 댓글로 작성해주시면 답변해 드릴 수 있는 부분에서 친절히 답변드리겠습니다!

댓글