라즈베리파이:모터
둘러보기로 이동
검색으로 이동
개요[편집 | 원본 편집]
모터 조작에 대하여.
보통 TB6612 등 모터드라이버를 사용한다.
모터 드라이버[편집 | 원본 편집]
TB6612[편집 | 원본 편집]
2개의 모터를 제어할 수 있는 모터드라이버.
Input | Output |
---|---|
AIN1, AIN2로 들어가는 신호로 모터의 방향을 제어하고, PWMA로 들어가는 신호로 모터의 구동을 제어한다.
2번째 모터는 BIN1, BIN2, PWMB로 제어. |
A01을 모터의 양극에, A02를 음극에 연결한다. |
제어[편집 | 원본 편집]
의도 | 설명 | 방법 |
---|---|---|
세팅 | # 핀 번호를 상황에 맞게 지정.
PWMA = 18
AIN1 = 22
AIN2 = 27
GPIO.setmode(GPIO.BCM)
GPIO.setup(PWMA, GPIO.OUT)
GPIO.setup(AIN1, GPIO.OUT)
GPIO.setup(AIN2, GPIO.OUT)
motor = GPIO.PWM(PWMA, 500) # 이 드라이버는 1만Hz 이하의 신호를 받을 수 있다.
| |
방향 제어 | 모터의 회전방향을 정한다. | # 정방향
GPIO.output(AIN1, 0)
GPIO.output(AIN2, 1)
#음방향
GPIO.output(AIN1, 1)
GPIO.output(AIN2, 0)
|
세기제어 | 모터의 세기를 조절한다. | pwm.ChangeDutyCycle(0) # 멈추기
pwm.ChangeDutyCycle(100) # 최대속도
|