산업 제조
산업용 사물 인터넷 | 산업자재 | 장비 유지 보수 및 수리 | 산업 프로그래밍 |
home  MfgRobots >> 산업 제조 >  >> Manufacturing Technology >> 산업기술

L293D 모터 드라이버와 DC 모터를 아두이노에 연결하는 단계별 가이드

로봇이나 장난감 자동차를 설계하려면 모터에 대한 지식이 필수적입니다. 이 모터들을 제어하는 매우 비용 효율적이고 쉬운 방법은 L293D 드라이버 모터 실드를 사용하는 것입니다. 더 나아가 아두이노 같은 마이크로컨트롤러와 인터페이스해 사용하면 좋습니다.

여러 종류 중 L293D 모터 드라이버는 가장 인기 있는 칩셋 중 하나입니다. 서보, 스테퍼, DC 모터 등 다양한 전자 제작에 응용되기 때문입니다. 하지만 그 핵심 특징은 두 개의 독립적인 DC 모터의 방향과 속도 제어가 가능하다는 점입니다. 이에 대해 더 자세히 알아보겠습니다.

1. L293D 모터 드라이버란?

이 16핀 칩셋은 모터용 2채널 H-브리지 드라이버입니다. 주로 DC 모터 쌍이나 단일 스테퍼 모터를 위한 제어 인터페이스 역할을 합니다.

기본적으로 L293D 모터 드라이버 실드 칩셋은 두 개씩 제공됩니다. 따라서 네 개의 DC 모터를 구동할 수 있습니다. 이 때문에 L293D 칩셋은 4륜 로봇 제작에 귀중한 자산입니다.

총 네 개의 H-브리지를 제공합니다. 각 H-브리지는 0.6A의 모터 전류를 공급합니다. 또한 74HC595 시프트 레지스터가 실드 특징입니다. 이 레지스터는 듀얼 L293D IC의 8개 제어 핀을 아두이노의 4개 디지털 핀으로 확장합니다.

L293D 모터 드라이버와 DC 모터를 아두이노에 연결하는 단계별 가이드

(쿼드러플 하이커런트 H-브리지 16핀 L293D 모터 드라이버)

2. L293D 모터 드라이버 특징

CNC 및 로봇 프로젝트에서 L293D 모터 드라이버를 좋은 구성 요소로 만드는 특징들:

3. L293D 모터 드라이버 실드 출력 핀 구성

L293D 모터 드라이버와 DC 모터를 아두이노에 연결하는 단계별 가이드

(바이폴라 L293D 스테퍼 모터 드라이버 핀 다이어그램)

핀 번호핀 이름핀 설명
1Enable 1,2입력 핀 활성화: Input 1(2), Input 2(7)
2Input Pin 1Output 1 핀 직접 제어. 주로 디지털 회로 제어에 적용
3Output Pin 1모터 1 한 쪽 끝 연결
4Ground한쪽 끝이 회로 그라운드(0V) 연결
5Ground다른 쪽 그라운드 핀(0V)
6Output Pin 2Output Pin 1처럼 모터 1 다른 쪽 끝 연결
7Input Pin 2Output 2 핀 직접 제어. 디지털 회로 제어에도 적용
8Vs (Vcc2)4.5V-36V 정격, 전압 핀 연결로 모터에 전원 공급
9Enable 3,4입력 핀 활성화: Input 3(10), Input 4(15)
10Input 3Output 3 핀 직접 제어. 또 다른 디지털 회로 제어 아웃렛
11Output 3모터 2 한 쪽 끝 연결
12Ground회로 그라운드(0V) 연결
13Ground또 다른 그라운드 핀, 회로 그라운드(0V) 연결
14Output 4Output 3처럼 모터 2 다른 쪽 끝 연결
15Input 4Output 4 핀 직접 제어. 디지털 회로 제어 기능도 함
16Vss (Vcc1)IC 공급용 외부 전압 +5V 연결

4. L293D 모터 드라이버 동작 원리

앞서 강조했듯 L293D 모터 드라이버는 듀얼 DC 모터를 제어할 수 있습니다. 따라서 이 듀얼 채널 H-브리지 IC가 어떻게 작동하는지 이해하는 게 중요합니다.

L293D 모터 드라이버와 DC 모터를 아두이노에 연결하는 단계별 가이드

(5볼트 유니폴라 모터가 L293D와 연결된 다이어그램)

동작 원리의 첫 단계는 H-브리지 설정입니다. 즉, Q2/Q3와 Q1/Q4라 부르는 달링턴 트랜지스터 두 쌍을 사용합니다. 각각 컬렉터와 에미터에 다이오드가 연결돼 모터 발생 역기전력(Back EMF)으로부터 트랜지스터를 보호합니다.

트랜지스터 Q1/Q4가 ON이면 Q2/Q3는 OFF됩니다. 따라서 Vcc에서 모터를 거쳐 그라운드로 전류가 흐릅니다.

이 동작으로 모터가 시계/반시계 방향으로 회전합니다. 요약하면 모터 극성과 전원 연결 방식이 회전 방향을 결정합니다.

반면 Q1/Q4 트랜지스터가 OFF이면 Q2/Q3가 자동으로 ON됩니다. 따라서 모터를 통한 전류 흐름이 역전됩니다. 이 역전류가 흐르면 모터 회전 방향도 바뀝니다.

5. L293D 모터 드라이버 사용법

앞서 언급했듯 L293D 모터 드라이버는 약 600mA 양방향 드라이브 전류와 4.5V~36V 범위를 사용합니다. 하지만 이 기능들은 아두이노 우노와 이 16핀 모터 드라이버 칩을 함께 쓸 때 해당됩니다.

DC 모터와 L293D를 아두이노에 연결하는 프로젝트를 소개합니다. DC 모터 방향과 속도를 제어하는 회로 설정 단계별 절차입니다.

1단계: 프로젝트 필요한 재료 준비

2단계: 회로 구성

이 회로에 필요한 연결은 꽤 직관적입니다.

더 명확한 설명을 위해 동영상 튜토리얼을 이용해 회로를 구성합니다.

모터는 완전히 별도 전원 공급을 쓰는 게 좋습니다. 여기서는 모터용 12V를 사용합니다. 반면 L293D와 아두이노에는 5V 전원을 공급합니다.

주의: 외부 전원은 L293D 핀 8로 갑니다. 이 연결 시 주의하세요. 그렇지 않으면 모터 손상 위험이 있습니다.

3단계: DC 모터 프로그래밍 코드

두 가지 기본 단계가 필요합니다.

AFMotor.h 라이브러리 설치

우선 L293D IC와 통신할 매체가 필요합니다. AFMotor.h 라이브러리를 설치해야 합니다.

이 라이브러리로 DC, 솔레노이드, 스테퍼 모터를 제어하는 명령어를 내릴 수 있습니다.

AFMotor.h 라이브러리 설치 방법: 스케치(Sketch) → '라이브러리 포함(Include Library)' → '라이브러리 관리(Manage Libraries)' 순으로 이동. 라이브러리 매니저가 설치된 라이브러리 목록을 업데이트하며 인덱스를 다운로드합니다.

이후 검색 필터로 'Motor Shield'를 찾습니다. 항목 중 Adafruit의 'Adafruit Motor Shield Library'를 선택하고 설치 클릭.

아두이노 코드 실행

다음 아두이노 코드를 실행합니다:

#include <AFMotor.h>

AF_DCMotor motor(4);

void setup() {
  // 모터 시작 속도 설정 & 정지
  motor.setSpeed(200);
  motor.run(RELEASE);
}

void loop() {
  uint8_t i;
  // 모터 켜기
  motor.run(FORWARD);
  // 0에서 최대 속도로 가속
  for (i=0; i<255; i++) {
    motor.setSpeed(i);
    delay(10);
  }
  // 최대 속도에서 0으로 감속
  for (i=255; i!=0; i--) {
    motor.setSpeed(i);
    delay(10);
  }
  // 모터 방향 변경
  motor.run(BACKWARD);
  // 0에서 최대 속도로 가속
  for (i=0; i<255; i++) {
    motor.setSpeed(i);
    delay(10);
  }
  // 최대 속도에서 0으로 감속
  for (i=255; i!=0; i--) {
    motor.setSpeed(i);
    delay(10);
  }
  // 모터 끄기
  motor.run(RELEASE);
  delay(1000);
}

4단계: 설정 완료

이 단계에서 DIY 회로 설정이 완료됩니다. 이제 이 L293D 칩과 아두이노 우노 마이크로컨트롤러로 모든 DC 모터 장치에 대한 제어 메커니즘을 갖게 됩니다.

6. L293D 동등 듀얼 타이머 IC

L293D와 유사한 다른 IC들: ULN2003, SN754410, LB1909MC.

L293D 모터 드라이버와 DC 모터를 아두이노에 연결하는 단계별 가이드

(PCB 위의 ULN2003 IC, 라벨된 핀과 연결점 표시)

7. L293D 응용 분야

요약

아두이노로 DC 모터를 제어하는 방법은 이 외에도 여러 가지가 있습니다. 하지만 가장 쉬운 방법 중 하나는 L293D 모터 드라이버 IC를 사용하는 것입니다. L293D IC는 두 개의 개별 DC 모터 속도와 방향을 동시에 제어하는 이점을 줍니다.

결론적으로 이 IC로 DC 모터 설정과 프로그래밍하는 법을 배웠습니다. 하지만 더 도전적인 걸 시도하고 싶으실 수도 있습니다. 더 많은 튜토리얼은 연락처 페이지로 문의해 주시면 완벽한 가이드를 제공해 드리겠습니다.

산업기술

  1. 아두이노 우노 기반 인간 감지 로봇: 센서 통합 단계별 가이드
  2. 아두이노로 RC 수신기 PPM 신호 디코딩하기: 단계별 가이드
  3. 라즈베리파이 모터 쉴드로 만드는 안드로이드 제어 원격 주행 로봇
  4. 아두이노로 지구 질량 측정하기: 단계별 DIY 가이드
  5. PHP 기반 웹 인터페이스로 아두이노 우노 제어하기
  6. DIY 손동작 제어 아두이노 로봇 팔 - 단계별 제작 가이드
  7. 아두이노 웹 기반 XY 플로터 - 스테퍼 모터 컨트롤러
  8. 브러시드 DC 모터 작동 원리: 단순 구조와 신뢰성 높은 동력
  9. 아두이노와 프로세싱으로 실시간 디지털 나침반 만들기
  10. DC 모터 문제 진단·점검 단계별 가이드