L298N : Arduino 용 모터 제어 모듈

l298n

Arduino 용 또는 제조업체의 DIY 프로젝트에 사용하기위한 많은 모듈이 있습니다. 의 경우 L298N은 모터를 제어하는 ​​모듈입니다.. 그들과 함께 당신은 간단한 코드를 사용하여 Arduino 보드 프로그래밍 간단하고 제어 된 방식으로 DC 모터를 제어 할 수 있습니다. 일반적으로 이러한 유형의 모듈은 다양한 응용 분야에 사용될 수 있지만 로봇 공학 또는 모터를 사용하는 액추에이터에서 더 많이 사용됩니다.

필요한 모든 것을 이미 입력했습니다. ESP8266 칩이있는 ESP 모듈하는 용량을 확장 할 수있는 모듈 Arduino 보드 및 기타 프로젝트를 통해 WiFi 연결이 가능합니다. 이러한 모듈은 단독으로 사용할 수있을뿐만 아니라 결합 할 수 있다는 장점이 있습니다. 예를 들어, ESP8266은 우리의 프로토 타입과 L298N에 사용될 수 있으며, 인터넷이나 무선을 통해 제어 가능한 모터를 얻을 수 있습니다.

L298N 및 데이터 시트 소개 :

l298n 핀아웃

Arduino를 사용하면 로봇 공학에서 잘 알려진 스테퍼 모터로 작업 할 수도 있지만,이 경우 일반적으로 컨트롤러 또는 DC 모터 용 드라이버. 제조업체의 데이터 시트에서 L298 칩 및 모듈에 대한 정보를 얻을 수 있습니다. 이 링크의 STMicroelectronics. 칩뿐만 아니라 특정 모듈의 데이터 시트를 보려면이 다른 PDF를 다운로드 할 수 있습니다. 핸슨텍 L298N.

그러나 일반적으로 L298N은 DC 모터의 회전 속도와 방향을 제어 할 수있는 H- 브리지 유형 드라이버입니다. 또한 2 개로 인해 스테퍼 모터와 함께 쉽게 사용할 수 있습니다. H 브리지 구현합니다. 즉, H의 브리지는 모터의 회전자가 원하는 방향으로 회전 할 수 있도록 전류의 방향을 반전 할 수있는 4 개의 트랜지스터로 구성되어 있음을 의미합니다. 이것은 공급 전압의 값만 제어하여 회전 속도 (RPM) 만 제어 할 수있는 컨트롤러에 비해 장점입니다.

L298N은 다양한 전압, 3v ~ 35v, 2A의 강도에서. 이것이 실제로 모터의 성능 또는 회전 속도를 결정합니다. 모듈이 소비하는 전자 장치는 일반적으로 약 3V를 소비하므로 모터는 항상 우리가 공급하는 전력에서 3V를 적게받습니다. 그것은 다소 높은 소비량이며 실제로 이미지에서 볼 수 있듯이 방열판이 필요한 고전력 요소가 있습니다.

속도를 제어하려면 출력에서 ​​특정 전압을 얻고 각도로 변환하는 대신 LM35로 수행 한 작업과 반대의 작업을 수행 할 수 있습니다. 여기서는 반대가됩니다. 우리는 드라이버에 더 낮거나 더 높은 전압을 공급하여 더 빠르거나 느린 회전. 또한 L298N 모듈을 사용하면 드라이버에 최소 5v 전압을 공급하는 한 Arduino 보드에 12V로 전원을 공급할 수 있습니다.

Arduino와 통합

Arduino를 사용한 l298n의 회로도

그곳에 이 모듈을 사용할 수있는 다양한 프로젝트 L298N. 사실, 당신은 그것으로 할 수있는 모든 것을 상상하고 일을 시작할 수 있습니다. 예를 들어, Fritzing으로 만든 이전 다이어그램에서 볼 수 있듯이 간단한 예는 두 개의 직류 모터를 제어하는 ​​것입니다.

L298N으로 작업하기 전에 모듈 또는 Vin의 입력을 고려해야합니다. 3v ~ 35v 사이의 전압 지원 빨간색과 검은 색 케이블로 각각 이미지에서 볼 수 있듯이 접지 또는 GND에도 연결해야합니다. 전원에 연결되면 다음은 모터 또는 제어를 허용하는 두 개의 모터를 동시에 연결하는 것입니다. 이것은 간단합니다. 두 개의 모터 단자를 양쪽에 모듈이있는 연결 탭에 연결하기 만하면됩니다.

그리고 이제 아마도 가장 복잡 할 것입니다. 모듈 연결을 연결하거나 Arduino에 올바르게 핀. 모듈의 레귤레이터 점퍼 또는 브리지가 닫히면 즉, 모듈의 전압 레귤레이터가 활성화되고 Arduino 보드에 전원을 공급하는 데 사용할 수있는 5v 출력이 있음을 기억하십시오. 반면에 점퍼를 제거하면 레귤레이터를 비활성화하고 Arduino에 독립적으로 전원을 공급해야합니다. 눈! 점퍼는 최대 12v 전압으로 만 설정할 수 있기 때문에 그 이상으로 모듈을 손상시키지 않도록 제거해야합니다.

당신은 그것을 감사 할 수 있습니다 각 모터에 대해 3 개의 연결이 있습니다.. IN1 ~ IN4로 표시된 것은 모터 A와 B를 제어하는 ​​것입니다. 모터가 하나만 필요하기 때문에 연결된 모터가 없다면 모두 넣을 필요가 없습니다. 각 모터에 대한 이러한 연결의 각 측면에있는 점퍼는 ENA 및 ENB입니다. 즉, 모터 A와 B를 활성화하기위한 것입니다. 두 모터가 모두 작동하려면 있어야합니다.

모터 A (B도 동일) 회전 방향을 제어 할 IN1과 IN2가 연결되어 있어야합니다. IN1이 HIGH이고 IN2가 LOW이면 모터가 한 방향으로 회전하고 LOW 및 HIGH이면 다른 방향으로 회전합니다. 회전 속도를 제어하려면 INA 또는 INB 점퍼를 제거하고 Arduino PWM에 연결하는 것처럼 보이는 핀을 사용하여 0에서 255 사이의 값을 제공하면 각각 저속 또는 고속을 얻을 수 있습니다.

에 관한 Arduino IDE에서도 프로그래밍이 쉽습니다. 예를 들어, 코드는 다음과 같습니다.

<pre>// Motor A
int ENA = 10;
int IN1 = 9;
int IN2 = 8;

// Motor B
int ENB = 5;
int IN3 = 7;
int IN4 = 6;

void setup ()
{
 // Declaramos todos los pines como salidas
 pinMode (ENA, OUTPUT);
 pinMode (ENB, OUTPUT);
 pinMode (IN1, OUTPUT);
 pinMode (IN2, OUTPUT);
 pinMode (IN3, OUTPUT);
 pinMode (IN4, OUTPUT);
}
//Mover los motores a pleno rendimiento (255), si quieres bajar la velocidad puedes reducir el valor hasta la mínima que son 0 (parados)</pre>
<pre>//Para mover los motores en sentido de giro contrario, cambia IN1 a LOW e IN2 a HIGH

void Adelante ()
{
 //Direccion motor A
 digitalWrite (IN1, HIGH);
 digitalWrite (IN2, LOW);
 analogWrite (ENA, 255); //Velocidad motor A
 //Direccion motor B
 digitalWrite (IN3, HIGH);
 digitalWrite (IN4, LOW);
 analogWrite (ENB, 255); //Velocidad motor B
}</pre>

코멘트를 첫번째로 올려

코멘트를 남겨주세요

귀하의 이메일 주소는 공개되지 않습니다. 필수 필드가 표시되어 있습니다 *

*

*

  1. 데이터 책임자 : Miguel Ángel Gatón
  2. 데이터의 목적 : 스팸 제어, 댓글 관리.
  3. 합법성 : 귀하의 동의
  4. 데이터 전달 : 법적 의무에 의한 경우를 제외하고 데이터는 제 XNUMX 자에게 전달되지 않습니다.
  5. 데이터 저장소 : Occentus Networks (EU)에서 호스팅하는 데이터베이스
  6. 권리 : 귀하는 언제든지 귀하의 정보를 제한, 복구 및 삭제할 수 있습니다.