A4988 스테핑 모터 드라이버는 아두이노에서 간편한 제어 신호만으로 바이폴라 스테핑모터를 제어하기 위해  사용되는  드라이버 모듈로서 마이크로 스텝기능이 내장되어 있어 모터를 더욱 더 정밀하게 제어할 수 있어 3D프린터를 제작할 때 많이 사용된다.   

 

 

 

A4988드리이버 사양

 

 Minimum Logic Voltage

 3V

 Maximum Logic Voltage

5.5V 

 Continuous current per phase

 1A

 Maximum current per phase

 2A

 Minimum Operating Voltage

 8V

 Maximum Operating Voltage

 35V

 

 

A4988드라이버 Pin Layout

 

 

 

-VMOT 와 GND에는 모터 제어용전원 (8~35V)을 공급해 준다.

-2B~1B 는 모터 4가닥 구동선을 연결한다.

-VDD와 GND는 제어용 전원으로서 아두이노에서 출력되는 5V와 GND를 연결한다.

-STEP과 DIR은 아두이노에서 제어하기 위한 펄스신호를 연결해 주는데 한 스텝을 움직이기 위한 펄스신호를 STEP핀에 움직이는 방향을 DIR에 주기만 하면 다른 부분은 제어하지 않아도 모터는 작동된다.

-RESET 핀과 SLEEP핀은 서로 연결해 준다.

-ENABLE핀은 생략치가 ENABLE이므로 신호를 주지 않아도 모터는 작동된다. 프로그램에서 일시적으로 Disable시켜 모터를 작동 중지시키는 제어를 원할 때에는 ENABLE핀에 LOW신호를 주면 된다.     

-MS1~MS3는 마이크로스텝 제어를 위한 핀으로서 아무 신호를 주지 않으면 기본 FULL STEP ( 1펄스당 1.8도 즉 200번 펄스를 주면 1회전)으로 작동되고, 좀 더 정밀한 제어를 원할 경우 다음과 같이 제어신호를 주면 된다. M1~M3 전부 HIGH신호를 주면 16배 정밀 스텝이 되어 스텝당  0.1125도 회전하는 정밀도로 제어할 수 있다. 하지만 속도는 그만큼 느려진다.  

  

 

 

NEMA 17급(42각) 스테핑모터

 

NAME 17급 스테핑모터란 모터 전면 부착부 한변의 길이가 1.7인치 크기의 스테핑모터로서 실제 크기는 42mm정도로서 42각 스테핑모터라고도 하는데, 3D 프린터 제작용으로 널리 사용된다. 같은 NEMA 17 사이즈라 해도 길이는 제각각으로서 길이가 길수록 고출력이 된다.  비슷하게 NEMA23은 56mm 정도 사이즈로서 56각 모터라고도 불리며, NEMA 32는 86mm 사이즈로 86각 모터라고 불린다.

 

 

 

아두이노와의 연결

 

 

 

 

-위와 같이 모터구동용 전원과 컨트롤용 전원을 연결해 주고 100µF  정도의 콘덴서를 연결해 준다. 

-RESET과 SLEEP단자는 서로 연결해 준다.

-A4988 드라이버의 DIR단자와 STEP 단자를 아두이노 디지털 출력핀에 연결해 준다 ( 여기에서는 2번과 3번)

-ENABLE과 MS1~MS3는 특별히 제어할 필요가 없으면 연결하지 않아도 된다.

 

샘플프로그램

 

 

-line 12, line 22 : DIR 단자에 HIGH 또는 LOW값을 주어 회전방향을 전환한다.

-line 13~19 : HIGH->LOW 펄스를 800번 발생 즉 4회전 회전시킨다.  

-line 16,18 : STEP핀에 가해주는 펄스의 시간을 길게 줄수록  스테핑모터의 속도가 느려진다. 

-line 26,28 : STEP핀에 가해주는 펄스의 시간을 짧게 줄수록  스테핑모터의 속도가 빨라진다. 

 

서보모터는 낮은 전압으로 큰 토크를 낼 수 있고 작동이 신속하기 때문에 카메라의 각도조절, 모형차의 핸들, 로봇의 팔다리 등과 같이 회전축을 일정한 범위내에서 각도 조절하기 웨해 사용하는 모터이다.  아두이노 환경에서 주로 사용되는 서보모터들에는 다음과 같은 것들이 있다.

 

 

미니서보모터

 

 

통상 sg90 급이라고 불리는 9그램 정도의 소형 서보모터로 사양은 다음과 같다.

 

Weight: 9 g
Dimension: 22.2 x 11.8 x 31 mm approx.
Stall torque: 1.8 kgf·cm / 2.5kg-cm
Operating speed: 0.1 s/60 degree
Operating voltage: 4.8 V (~5V)
Dead band width: 10 μs
Temperature range: 0 ºC – 55 ºC
Coreless Motor
Half rotation (rotate approximately 180 degrees )
All Nylon Gear
Connector Wire Length 150MM
Includes arm and gear assortment

 

워낙 소형이기 때문에 별도 모터용 전원 없이도 아두이노 내부 전원으로도 작동되고 다음과 같이 전용 Pan & Tilt kit에 장착하면 상하좌우로 이동하며 촬영 가능한 카메라 조절장치를 만들 수 있다.    

 

 

 

표준사이즈 서보모터

 

 

 

표준사이즈형 서보모터는 보통 가로 20mmx세로40mm 크기를 말하는데 전형적인 MG995 모델의 사양은 다음과 같다.

 

Net weight: 69g
Operating Speed : 0.17sec / 60 degrees (4.8V no load)
Operating Speed : 0.13sec / 60 degrees (6.0V no load)
Stall Torque : 13 kg-cm (180.5 oz-in) at 4.8V
Stall Torque : 15 kg-cm (208.3 oz-in) at 6V
Operation Voltage : 4.8 - 7.2Volts
Gear Type: All Metal Gears
Coreless Motor
Double Ball Bearing

 

 

실제 판매되는 것들은 크기와 모양이 다른 다양한 모델들도 많이 있는데 로봇팔용 등으로 더 큰 토크를 낼 수 있도록 조금 사이즈가 큰 것도 있고, 회전축이 양쪽에 양쪽에 있는 모델도 있고, 서보모터 내부에 프로세서가 내장되어 정밀하게 작동하는 디지털 서보모터 들도 있다.

 

    

 

 

무한회전 서보모터

 

서보모터가 작은 크기로 비교적 큰 토크를 낼 수 있기 때문에 일정 각도에서 멈추지 않고 무한회전 되도록 개조하여 DC모터 처럼 사용하는 경우도 있고, 아예 무한회전용 서보모터로 판매되기도 한다. 이러한 서보모터는 일반적인 서보모터와는 달리  90도에서 정지하고  180도 쪽으로 갈수록 정방향, 0도 쪽으로 갈수록 역방향으로 가속된다.   

 

 

서보모터 연결케이블

 

서보모터 연결메이블은 3선으로 되어 있는데, 붉은색이 전원 +, 검정색이 전원 -인것은 공통이나 제어용 신호선은 오렌지색,노란색 또는 흰색으로 되어 있다.

 

 

 

아두이노와의 연결

  

 

위와 같이 서보모터에는 별도 전원을 연결하고 - 접지선은 아두이노 GND핀에 연결해 준다. ( 소형일 경우 + 붉은선을 아두이노 5V핀에 직접 연결해도 작동은 되나 되도록이면 별도 전원으로 하는 것이 안전하다 )

 

신호선은 아두이노의 PWM용 핀( ~표시가 있는 3,5,6,9,10,11 중 하나 )연결한다.

 

샘플 프로그램

 

서보모터용 기능은 아두이노IDE에 기본으로 포함되어 있으므로 별도의  라이브러리를 설치할 필요는 없다.

 

 

- 1 line : 서보 모터용사용을 위한 파일include를 지정한다.

- 2 line : 서보모터로 사용 할 명칭을 선언한다. 

- 5 line : 서보모터 제어용으로 9번 핀을 사용함을 지정한다.

- 6 line : 단순히 원하는 각도를 write하기만 하면 해당 각도로 서보 모터가 움직인다.

 

주의사항 : 서보모터별로 움직일 수 있는 각도가 있는데 이범위를 초과하게 되면 모터가 틱틱거리며 제대로 동작하지 않고 모터에 무리를 주게 된다. 0도~180도 까지 지원하지 않고 20도~160도까지만  또는 30도~150도 까지만 지원되는 서보모터도 다수 있으므로 주의해야 한다.

 

BTS7960드라이버 모듈은  허용전류가 43A에 이르는 대용량 DC모터 드라이버로 대형 DC모터도 구동시킬 수 있다.

 

 

 

단자구조 및 용도

 

A : (GND)  : Ground

B : (VCC) : 콘트롤용 전원 ( +5V )

C : (L_IS) : Left turn current Warning  (사용안해도 됨)

D : (R_IS) :  Right turn current Warning (사용안해도 됨)

E :  (L_EN) : Left turn Enable ( HIGH를  주면 좌회전 Enable ) 

F :  (R_EN) : Right turn Enable ( HIGH를 주면 우회전 Enable ) 

G : (LPWM) : Left turn PWM ( 좌회전 세기를 PWM 방식으로 제어 )

H : (RPWM) : Right turn PWM ( 우회전 세기를 PWM 방식으로 제어 )

 

1 : 모터용 전원 공급 GND

2 : 모터용 전원 공급  ( +5.5 ~ 27 V )

3 : 모터연결 +

4 : 모터연결 -

 

 

아두이노와의 연결

 

 

-위와 같이 RPWM과 LPWM잔자를 아두이노 PWM출력 핀에 연결한다. (여기에서는 5번과 6번)

-R_EN과 L_EN은 아두이노 디지털 출력핀에 연결한다 ( 여기에서는 7번과 8번)

 

 

샘플프로그램

 

 

 

 

 

+ Recent posts