L298N DC 모터 드라이버 모듈 설명

문제를 제거하기 위해 도구를 사용해보십시오





이 게시물에서는 마이크로 컨트롤러 및 IC를 사용하여 브러시 DC 모터 및 스테퍼 모터를 구동하는 데 사용할 수있는 L298N 듀얼 H- 브리지 DC 모터 드라이버 모듈에 대해 알아 봅니다.

개요

모듈 식 회로 기판은 프로토 타이핑 오류를 줄여주는 전자 설계자에게 최고의 시간 절약입니다. 이것은 마이크로 컨트롤러 용 코드를 작성하는 프로그래머가 컴퓨터 앞에 코드를 입력하여 대부분의 시간을 보내고 개별 전자 부품을 납땜하는 데 더 적은 시간을 보내는 프로그래머가 선호합니다.



그렇기 때문에 Arduino 보드 전용으로 만들어진 수많은 다양한 모듈 식 회로를 찾을 수 있습니다. 인터페이스가 쉽고 프로토 타입을 설계하는 동안 하드웨어 오류를 최소화 할 수 있습니다.

L298N 모듈 그림 :

L298N 모듈 그림 :



이 모듈은 IC L298N을 중심으로 구축되었으며 전자 상거래 웹 사이트에서 일반적으로 사용할 수 있습니다.

우리는 사용 DC 모터 드라이버 IC와 마이크로 컨트롤러는 일반적으로 100mA 이하의 전류를 전달할 수 없기 때문입니다. 마이크로 컨트롤러는 똑똑하지만 강력하지는 않습니다.이 모듈은 Arduino, IC 및 기타 마이크로 컨트롤러에 일부 근육을 추가하여 고전력 DC 모터를 구동합니다.

2 개의 DC 모터를 동시에 최대 2A까지 제어하거나 스테퍼 모터 1 개를 제어 할 수 있습니다. 우리는 할 수 있습니다 속도를 조절하다 PWM과 모터의 회전 방향을 사용합니다.

이 모듈은 로봇 구축 장난감 자동차와 같은 토지 이동 프로젝트.

L298N 모듈의 기술적 세부 사항을 살펴 보겠습니다.

L298N 모듈의 기술적 세부 사항.

핀 설명 :

· 왼쪽에는 DC 모터를 연결하기위한 OUT1 및 OUT2 포트가 있습니다. 마찬가지로 다른 DC 모터의 경우 OUT3 및 OUT4입니다.

· ENA 및 ENB는 활성화 핀이며 ENA를 high 또는 + 5V에 연결하여 포트 OUT1 및 OUT2를 활성화합니다. ENA 핀을 로우 또는 접지에 연결하면 OUT1 및 OUT2가 비활성화됩니다. 마찬가지로 ENB 및 OUT3 및 OUT4의 경우.

· IN1 ~ IN4는 아두 이노에 연결할 입력 핀입니다. 마이크로 컨트롤러에서 IN1 + Ve와 IN2 –Ve를 입력하거나 수동으로 입력하면 OUT1은 High가되고 OUT2는 Low가되어 모터를 구동 할 수 있습니다.

· IN3 High를 입력하면 OUT4가 High가되고, IN4 Low를 입력하면 OUT3이 Low가되며 이제 다른 모터를 구동 할 수 있습니다.

· 모터의 회전 방향을 바꾸려면 IN3과 IN4와 마찬가지로 IN1과 IN2의 극성을 반대로하면됩니다.

· ENA 및 ENB에 PWM 신호를 적용하여 두 개의 다른 출력 포트에서 모터의 속도를 제어 할 수 있습니다.

· 보드는 명목상 7 ~ 12V를 수용 할 수 있습니다. + 12V 단자에 전원을 입력하고 0V로 접지 할 수 있습니다.

· + 5V 단자는 필요에 따라 Arduino 또는 다른 모듈에 전원을 공급하는 데 사용할 수있는 OUTPUT입니다.

점퍼 :

그림 이미지를 보려면 위로 스크롤 할 수있는 세 개의 점퍼 핀이 있습니다.

모든 점퍼는 처음에 연결되어 필요에 따라 점퍼를 제거하거나 유지합니다.

점퍼 1 (그림 이미지 참조) :

· 모터에 12V 이상의 전원이 필요한 경우 점퍼 1을 분리하고 12v 단자에 원하는 전압 (최대 35V)을 적용해야합니다. 또 가져와 5V 공급 + 5V 단자에 입력합니다. 예, 12V 이상을 적용해야하는 경우 (점퍼 1이 제거 된 경우) 5V를 입력해야합니다.

· 5V 입력은 IC의 적절한 기능을위한 것입니다. 점퍼를 제거하면 내장 된 5v 레귤레이터가 비활성화되고 12v 단자의 높은 입력 전압으로부터 보호되기 때문입니다.

· + 5V 단자는 전원 공급이 7 ~ 12V 인 경우 출력으로 작동하고 12V 이상을 적용하고 점퍼가 제거 된 경우 입력으로 작동합니다.

· 대부분의 프로젝트는 12V 이하의 모터 전압 만 필요하므로 점퍼를 그대로 유지하고 + 5V 단자를 출력으로 사용합니다.

점퍼 2 및 점퍼 3 (그림 이미지 참조) :

·이 두 개의 점퍼를 제거하면 마이크로 컨트롤러에서 활성화 및 비활성화 신호를 입력해야합니다. 대부분의 사용자는 두 개의 점퍼를 제거하고 마이크로 컨트롤러에서 신호를 적용하는 것을 선호합니다.

· 두 개의 점퍼를 유지하면 OUT1 ~ OUT4가 항상 활성화됩니다. OUT1 및 OUT2에 대한 ENA 점퍼를 기억하십시오. OUT3 및 OUT4 용 ENB 점퍼.

이제 실제 회로를 살펴 보겠습니다. 인터페이스 모터, Arduino 드라이버 모듈에 공급합니다.

개략도:

L298N 모듈의 개략도.

위의 회로는 코드를 적절하게 변경하고 조이스틱을 추가하면 장난감 자동차에 사용할 수 있습니다.

L289N 모듈에 전원을 공급하기 만하면 모듈이 Vin 터미널을 통해 Arduino에 전원을 공급합니다.

위의 회로는 두 모터를 시계 방향으로 3 초 동안 회전하고 3 초 동안 멈 춥니 다. 그 후 모터는 3 초 동안 시계 반대 방향으로 회전하고 3 초 동안 정지합니다. 이것은 작동중인 H- 브리지를 보여줍니다.

그 후 두 모터는 시계 반대 방향으로 천천히 회전하기 시작하여 점차적으로 최대 속도를 얻고 점차적으로 속도를 0으로 줄입니다. 이것은 PWM에 의한 모터의 속도 제어를 보여줍니다.

프로그램:

//----------------Program developed by R.GIRISH--------------//
const int Enable_A = 9
const int Enable_B = 10
const int inputA1 = 2
const int inputA2 = 3
const int inputB1 = 4
const int inputB2 = 5
void setup()
{
pinMode(Enable_A, OUTPUT)
pinMode(Enable_B, OUTPUT)
pinMode(inputA1, OUTPUT)
pinMode(inputA2, OUTPUT)
pinMode(inputB1, OUTPUT)
pinMode(inputB2, OUTPUT)
}
void loop()
{
//----Enable output A and B------//
digitalWrite(Enable_A, HIGH)
digitalWrite(Enable_B, HIGH)
//----------Run motors-----------//
digitalWrite(inputA1, HIGH)
digitalWrite(inputA2, LOW)
digitalWrite(inputB1 , HIGH)
digitalWrite(inputB2, LOW)
delay(3000)
//-------Disable Motors----------//
digitalWrite(Enable_A, LOW)
digitalWrite(Enable_B, LOW)
delay(3000)
//-------Reverse Motors----------//
digitalWrite(Enable_A, HIGH)
digitalWrite(Enable_B, HIGH)
digitalWrite(inputA1, LOW)
digitalWrite(inputA2, HIGH)
digitalWrite(inputB1 , LOW)
digitalWrite(inputB2, HIGH)
delay(3000)
//-------Disable Motors----------//
digitalWrite(Enable_A, LOW)
digitalWrite(Enable_B, LOW)
delay(3000)
//----------Speed rise----------//
for(int i = 0 i < 256 i++)
{
analogWrite(Enable_A, i)
analogWrite(Enable_B, i)
delay(40)
}
//----------Speed fall----------//
for(int j = 256 j > 0 j--)
{
analogWrite(Enable_A, j)
analogWrite(Enable_B, j)
delay(40)
}
//-------Disable Motors----------//
digitalWrite(Enable_A, LOW)
digitalWrite(Enable_B, LOW)
delay(3000)
}
//----------------Program developed by R.GIRISH--------------//

저자의 프로토 타입 :

L298N 모듈을 사용한 모터 드라이버 회로의 Arduino 프로토 타입.

이 L298N DC 모터 드라이버 프로젝트와 관련하여 질문이 있으시면 언제든지 의견란에 알려 주시면 빠른 답변을 받으실 수 있습니다.




이전 : 덤프 커패시터를 사용하는 다중 배터리 충전기 회로 다음 : Arduino를 사용하여 조이스틱으로 제어되는 2.4GHz RC 자동차