목차
특징
유니폴라 스텝모터 1채널을 구동하는 모듈입니다.
- SLA7026M 사용
- 전원 : 16V, 3A 까지 가능
- 크기 : 39 mm x 46 mm
- 아두이노, ATMEGA128, PIC, ST 등 모든 MCU에서 사용 가능
커넥터 설명
모터 전원, 컨트롤 신호, 5V 전원 표시, 스텝모터, 모터전원 표시, 토크 크기 설정 으로 구분됩니다.
모터 전원
(그림에서 1번) 흰색 2핀 소켓이며 스텝모터를 구동할 전원입니다.
전압은 16V 까지 가능하며 일반 스텝모터일 경우 12V를 사용합니다.
아래쪽이 +, 위쪽이 – 입니다.
컨트롤 신호
(그림에서 2번) 검정색10핀 핀헤더소켓이며 스텝모터를 구동하는 신호를 입력 받습니다.
WAT-AVR128 과 호환되며 핀1, 핀2,핀3,핀4, 핀9, 핀10번만 사용됩니다.
핀 번호 | 기능 |
---|---|
1번핀 | 모터 제어 신호 A |
2번핀 | 모터 제어 신호 A/ |
3번핀 | 모터 제어 신호 B |
4번핀 | 모터 제어 신호 B/ |
9번핀 | 5V |
10번핀 | GND |
5V 전원 표시
(그림에서 3번) 5V 전원이 공급되고 있는지 표시됩니다. (녹색)
스텝모터
(그림에서 4번) 스텝 모터를 연결합니다.
핀 번호 | 스텝모터 선 |
---|---|
1번핀 | A |
2번핀 | COM |
3번핀 | A/ |
4번핀 | B |
5번핀 | COM |
6번핀 | B/ |
모터전원 표시
- (그림에서 5번) 모터 전원(6V ~ 46V)이 공급되고 있는지 표시됩니다. (적색)
토크 크기 설정
- (그림에서 6번) 스텝모터 토크 크기를 설정합니다.
- 반시계 방향으로 돌리면 스텝모터의 토크가 작아집니다.(소비 전류 작아짐, 회전 힘이 약해짐)
- 시계 방향으로 돌리면 스텝모터의 토크가 커집니다.(소비 전류 커짐, 회전 힘이 강해짐)
- 스텝모터의 종류, 용도에 맞게 설정할 수 있습니다.
구동 방식
- 구동 방식은 1상 여자 방식, 2상 여자방식, 1-2상 여자 방식이 있습니다.
- 비교해 보면 다음과 같습니다.
항목 | 1상 여자방식 – Full Step | 2상 여자방식 – Full Step | 1-2상 여자방식 – Half Step |
---|---|---|---|
소비 전류 | 적음 | 많음 | 많음 |
발열 | 적음 | 많음 | 많음 |
토크 | 작음 (탈조 날 가능성 높음) | 큼 | 큼 |
신호 |
|
|
|
1상 여자 방식
1개의 코일을 차례로 여자하는 방식입니다.
2상 여자 방식
2개의 코일을 동시에 여자하는 방식입니다.
1-2상 여자 방식
1상과 2상을 교대로 하는 방식으로 1상여자 방식에 비해 1.5배의 전류가 필요합니다.
1펄스에 대한 스텝 각은1상 여자와 2상 여자 방식의 스텝각의 1/2 입니다.
정밀하게 제어하는데 사용하는 방식입니다.
Arduino UNO R3 예제
부품목록
부품명 | Arduino UNO R3 |
|
---|---|---|
기능 | 아두이노 모듈 | |
수량 | 1 | |
구매처 | https://kit128.com/goods/view?no=337 |
부품명 | WAT-STEP1 |
|
---|---|---|
기능 | 스텝모터 드라이버 | |
수량 | 1 | |
구매처 | https://kit128.com/goods/view?no=41 |
부품 연결
Arduino UNO R3 | WAT-STEP1 |
---|---|
2 | CONTROL 핀의 1번 핀 |
3 | CONTROL 핀의 2번 핀 |
4 | CONTROL 핀의 3번핀 |
5 | CONTROL 핀의 4번 핀 |
5V | CONTROL 핀의 9번핀(5V) |
GND | CONTROL 핀의 10번핀(GND) |
소스코드
소스코드는 [파일]=>[예제]=>[WhiteAT UNO] =>[StepMotor] => [Simple] 에 있습니다.
아두이노 추가 라이브러리는 https://docs.whiteat.com/?page_id=5449 를 참조하세요
/* 일정속도로 스텝모터 회전 출처: http://whiteat.com/Arduino 보드: Arduino UNO R3 : https://kit128.com/goods/view?no=337 WAT-STEP1 : https://kit128.com/goods/view?no=41 */ #include <WAT_STEP1.h> // STEP1 : 유니폴라 1상 여자 방식 // STEP2 : 유니폴라 2상 여자 방식 // STEP12 : 유니폴라 1-2상 여자 방식 Step1 step(STEP2,2,3,4,5); // 프로그램 시작 - 초기화 작업 void setup() { // step.setSpeed(-98); // 반시계 방향으로 회전 step.setSpeed(99) // 시계 방향으로 회전 } // 계속 실행할 무한 루프 void loop() { // 계속 회전 step.Next(); }
WAT-Arduino128 예제
부품목록
부품명 | WAT-Arduino128 |
|
---|---|---|
기능 | 아두이노 모듈 | |
수량 | 1 | |
구매처 | https://kit128.com/goods/view?no=64 |
부품명 | WAT-STEP1 |
|
---|---|---|
기능 | 스텝모터 드라이버 | |
수량 | 1 | |
구매처 | https://kit128.com/goods/view?no=41 |
소스코드
소스코드는 [파일]=>[예제]=>[WhiteAT] =>[StepMotor] => [Simple] 에 있습니다.
아두이노 추가 라이브러리는 https://docs.whiteat.com/?page_id=5449 를 참조하세요
/* 일정속도로 스텝모터 회전 출처: http://whiteat.com/Arduino 보드: WAT-Arduino128 : https://kit128.com/goods/view?no=64 WAT-STEP1 : https://kit128.com/goods/view?no=41 */ #include <WAT_STEP1.h> // STEP1 : 유니폴라 1상 여자 방식 // STEP2 : 유니폴라 2상 여자 방식 // STEP12 : 유니폴라 1-2상 여자 방식 Step1 step(STEP2,PA0,PA1,PA2,PA3); // 프로그램 시작 - 초기화 작업 void setup() { step.setSpeed(-98); // 반시계 방향으로 회전 step.setSpeed(99) // 시계 방향으로 회전 } // 계속 실행할 무한 루프 void loop() { // 계속 회전 step.Next(); }
WAT-AVR128 Plus 예제
부품 목록
부품명 | WAT-AVR128 Plus |
|
---|---|---|
기능 | ATMEGA128 모듈 | |
수량 | 1 | |
구매처 | https://kit128.com/goods/view?no=52 |
부품명 | WAT-STEP1 |
|
---|---|---|
기능 | 스텝모터 드라이버 | |
수량 | 1 | |
구매처 | https://kit128.com/goods/view?no=41 |
소스 코드
/* 스텝모터 예제 ( Avrstudio 4.23) 출처: http://whiteat.com 보드: WAT-AVR128 PLUS : https://kit128.com/goods/view?no=52 WAT-STEP1 : https://kit128.com/goods/view?no=41 */ #include <avr/io.h> void DelayUS(unsigned int time_us) /* time delay for us */ { register unsigned int i; for(i = 0; i < time_us; i++) // 4 cycle + { asm volatile(" PUSH R0 "); // 2 cycle + asm volatile(" POP R0 "); // 2 cycle + asm volatile(" PUSH R0 "); // 2 cycle + asm volatile(" POP R0 "); // 2 cycle = 16 cycle = 1 us for 16MHz } } void DelayMS(unsigned int time_ms) /* time delay for ms */ { register unsigned int i; for(i = 0; i < time_ms; i++) { DelayUS(250); DelayUS(250); DelayUS(250); DelayUS(250); } } main() { DDRA = 0x0F; while(1) { PORTA = 0x09; DelayMS(1); PORTA = 0x03; DelayMS(1); PORTA = 0x06; DelayMS(1); PORTA = 0x0C; DelayMS(1); } }
제품 구매
[WAT-STEP1] 6-wire 스텝모터 드라이버는 https://kit128.com/goods/view?no=41 에서 구매하실 수 있습니다.
.