BASIC4MCU | 질문게시판 | 라즈베리파이 L298N 모터드라이버 질문드립니다.
페이지 정보
작성자 27315co 작성일2018-08-09 12:39 조회19,555회 댓글3건본문
라즈베리파이를 이용해서 L298N 드라이버를 사용해 DC모터를 제어하려고합니다.
외부전원을 12V가아닌 5V 2A짜리 어댑터를 이용하여서 외부전원을 인가해주려고하는데요 다음 그림에서 화살표 로 나타낸 부분에 5V어댑터의 +단자를 연결해주면 되는것 아닌가요??
어떤 자료에서는 5V 입력이라고 되있는부분이 5V 출력이라는 글도있고 어떤 자료에서는 5V 입력이라고 되있는 부분에 5V를 인가하라고 되있고 어느부분에 전원을 입력해주어야 하는지 잘 모르겠습니다.
제가 직접 연결한 사진도 첨부합니다.
DC모터 A , B 가 앞쪽으로 가게하는 동작을 하기위해서 코드를 작성해 보았습니다.
#include <wiringPi.h>
#define MOTOR_IN_1 21
#define MOTOR_IN_2 22
#define MOTOR_IN_3 23
#define MOTOR_IN_4 24#define MOTOR_EN_A 25
#define MOTOR_EN_B 26
int main(void)
{
while (1)
{
digitalWrite(MOTOR_IN_1, 1);
digitalWrite(MOTOR_IN_2, 0);
digitalWrite(MOTOR_EN_B, 1);
digitalWrite(MOTOR_IN_3, 1);
digitalWrite(MOTOR_IN_4, 0);
digitalWrite(MOTOR_EN_A, 1);delay(1000);
return 0;
}
댓글 3
조회수 19,555master님의 댓글
master 작성일
화살표의 12V가 모터 전원 맞습니다.
5V 사용가능이라고 적힌 점퍼를 연결하면 모듈의 5V가 출력될겁니다.
점퍼를 사용하지 않으면 외부 5V를 입력할 수 있겠죠
현재는 점퍼가 연결되어 있으니 5V를 연결해줄 필요는 없고요
파이의 GND와 모터전원의 GND는 연결해줘야합니다.
//
#include <wiringPi.h>
//
#define MOTOR_IN_1 21
#define MOTOR_IN_2 22
#define MOTOR_IN_3 23
#define MOTOR_IN_4 24
//
#define MOTOR_EN_A 25
#define MOTOR_EN_B 26
//
int main(void){
digitalWrite(MOTOR_IN_1, 1);
digitalWrite(MOTOR_IN_2, 0);
digitalWrite(MOTOR_EN_B, 1);
digitalWrite(MOTOR_IN_3, 1);
digitalWrite(MOTOR_IN_4, 0);
digitalWrite(MOTOR_EN_A, 1);
while(1){}
}
27315co님의 댓글
27315co
감사합니다 그런데 제가 궁금한점이 한개더 생겼는데요 데이터시트를보니까 l298 의 공급전압이 13mA 인데 공급 전원으로 5V의 2A의 전원을 사용하면 문제가되나요??
master님의 댓글
master
L298N 자체 소모전류가 13mA라고 적혀있던가요?
모터 전류는 기입하지 않은 것입니다.
공급전압의 전류용량이 20000000000A 라고 하더라도
모터가 1A를 소모하면 전류는 1A만 흐릅니다.
LED 1개만 연결해서 L298로 구동하면 10mA 밖에 흐르지 않습니다.
//
전류는 공급측이 정하는 것이 아니고 부하가 정합니다.
단, 공급측은 소모전류보다 큰 전류용량을 가지고 있어야지 고장나지 않습니다.