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

모터드라이버 L298N 5V로 모터 제어하기

by DIYver 2021. 3. 11.

 

<목표>

 

 

- 낮은전압(12V 이하)에서 L298N 모터드라이버를 이용하여 모터를 제어해보자


<준비물>

 

 

- 아두이노(우노,나노,메가), L298N 모터드라이버, 점퍼선, 12V이하의 배터리팩


<회로도>

< 12V 이하의 건전지 사용 시 회로 >

< 컴퓨터 USB 전원 사용 시 회로 >

 


<코드>

 

int motor_1 = 3;
int motor_2 = 4;

void setup() {
  // put your setup code here, to run once:
  pinMode(motor_1, OUTPUT);
  pinMode(motor_2, OUTPUT);


}

void loop() {
  // put your main code here, to run repeatedly:
  delay(1000);
  digitalWrite(motor_1, HIGH);
  digitalWrite(motor_2, LOW);

  delay(2000);

  digitalWrite(motor_1, LOW);

  delay(1000);

  digitalWrite(motor_2, HIGH);

  delay(2000);

  digitalWrite(motor_2, LOW);

}

 


<실행 결과>

 

youtu.be/IqHsNNQmfCg

< 12V 이하의 건전지 사용 시 회로 >

- 1.5V 건전지 4개를 사용하여 총 6V 전원으로 모터드라이버 L298N을 사용

- 코드의 내용대로 모터가 작동하는 것을 확인할 수 있다.

 

 

 

 

youtu.be/Q8L9OI0C2n4

< 컴퓨터 USB 전원 사용 시 회로 >

- 컴퓨터 USB 전원을 이용하여 모터드라이버를 사용하고 모터를 제어

- 코드의 내용대로 모터가 작동하는 것을 확인할 수 있다.

 

 

 

 

 

 

 

 

 

 

 

두 가지의 작동을 비교해봤을때,

건전지로 모터를 작동시키는 경우의 모터가 더 빠르게 도는 것을 볼 수 있다.

 

제일 중요한 것은 L298N 의 12V 와 5V 를 점퍼선으로 연결해줘야 하며,

모터드라이버 내부 레귤레이터 사용을 하지 않도록 점퍼를 제거해줘야 한다.

 

 

 

 

 

L298N 은 정말 아두이노를 다룬다면 쉽게 접할 수 있는 모듈 중 하나이다.

DC 모터를 사용하기도, 스텝모터를 제어하는데에도 사용한다.

이 모터드라이버를 싫어하는 사람들이 되게 많은 것이 사실이다. 

하지만 이 모터드라이버처럼 저렴하면서 사용자를 위한 모듈도 흔치 않은것도 사실이다.

 

12V ~ 24V 전원을 공급해주면 레귤레이터를 통해서 5V 출력이 가능하여

바로 아두이노 Vin에 연결하여 전원을 공급해줄 수 있는게 가장 큰 장점이다.

전원 공급 회로를 따로 하지 않아도 되는것이 행복을 가져다 주곤 한다.

 

그리고 저렴한 모터드라이버 중에서도 나름 고출력이 가능하다.

2A 까지 출력이 가능하다고 하니, 나름 괜찮은 녀석이다.

 

하지만 이 모터드라이버를 싫어하는 사람도 많다.

고장이 많고, 초기불량도 있으며, 마음처럼 한번에 작동이 안 될때가 많기 때문이다.

그리고 방열판 때문에 크기가 애매모호 한 것이 단점이다.

소형 장치에 넣기에는 공간을 너무 많이 차지하기 때문이다.

필자의 경우 소형 장치에는 L9110 모터드라이버를 더 선호한다.

 

 

아무튼 이렇게 이번 시간에는 모터드라이버로 12V 이하의 전원으로 모터를 작동시키는 것이 가능하다는 것을 확인할 수 있었다.

회로가 나름 복잡하지만, 이 문제로 끙끙 앓던 분들에게는 좋은 자료이지 않을까 싶다.

 


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

 

 

 

 

댓글