예전에 제품에서 분해해서 가지고 있던 모터를 살펴보니 일본 MITSUMI사에서 만든 모델명이 M35SP-7N인 스텝 모터입니다. 인터넷 검색을 하여 해당 모델의 데이터 시트를 찾아보았습니다.
아래는 제가 가지고 있는 모델입니다.
Compact size and high output torque.
Superior running quietness and stability.
Step angle 7.5˚
Excellent responsiveness acquired.
데이터 시트에 위와 같은 특징이 적혀 있습니다.
데이터 시트를 좀 더 살펴봤는데 제가 가지고 있는 6Ω(모터 오른쪽 아랫부분) 저항을 가지는 모델이 안 보이고 8Ω 과 50Ω 두 가지 모델만 적혀 있습니다.
비슷한 8Ω 모델의 동작 전압을 사용하여 테스트해 보았습니다.
스텝 모터 소스 코드는 아두이노 IDE에서 기본 제공되는 File->Examples->Stepper->Stepper_onRevolution 예제를 사용하여 테스트하였습니다.
/*
Stepper Motor Control - one revolution
This program drives a unipolar or bipolar stepper motor.
The motor is attached to digital pins 8 - 11 of the Arduino.
The motor should revolve one revolution in one direction, then
one revolution in the other direction.
Created 11 Mar. 2007
Modified 30 Nov. 2009
by Tom Igoe
*/
#include <Stepper.h>
const int stepsPerRevolution = 48; // change this to fit the number of steps per revolution
// for your motor
// initialize the stepper library on pins 8 through 11:
Stepper myStepper(stepsPerRevolution, 8, 9, 10, 11);
void setup() {
// set the speed at 60 rpm:
myStepper.setSpeed(60);
// initialize the serial port:
Serial.begin(9600);
}
void loop() {
// step one revolution in one direction:
Serial.println("clockwise");
myStepper.step(stepsPerRevolution);
delay(500);
// step one revolution in the other direction:
Serial.println("counterclockwise");
myStepper.step(-stepsPerRevolution);
delay(500);
}
기본 예제에서 변경해야 하는 부분이 있는데 위 코드 중 stepsPerRevolution 값은 사용하는 스텝 모터에 맞게 변경해 주셔야 합니다. 제 경우 200인 부분을 48로 변경하였습니다.
예를 들면 스텝 모터의 데이터 시트를 보다 보면 step angle이라는 값이 나옵니다.
제가 사용한 M35SP-7N의 step angle은 7.5도(이 게시글 위에서 3번째 스펙 이미지 참고)입니다. 즉 한 번에 최소 7.5도를 움직일 수 있다는 것으로 1회전 360도를 회전하기 위해서는 360/7.5=48 스텝이 되어야 합니다. 그리고 제가 본 NEMA 스텝 모터들은 step angle이 1.8도인데 360/1.8=200 스텝이 되며 예제 소스에 적혀 있던 기본값 200입니다.
아래와 같이 회로를 구성하였습니다.
모터 드라이버의 모든 OUT 포트를 스텝 모터와 연결하고 ENA/B는 5V로 고정하였습니다.
아래는 위의 회로도를 바탕으로 실제 구성된 이미지입니다.
위 소스코드를 실행시키면 스텝 모터가 시계방향으로 1회전 후 반시계 방향으로 1회전하는 동작이 반복됩니다.
'Hardware > Arduino ( AVR )' 카테고리의 다른 글
TM1637 사용해 보기 (0) | 2022.03.01 |
---|---|
[아두이노] 적외선 근접 센서 사용하기 (0) | 2022.02.20 |
[아두이노] DC 모터 사용하기(L298N 모터드라이버 사용) (3) | 2022.02.17 |
[아두이노] LM35DZ 온도센서 사용하기 (0) | 2022.02.16 |
[아두이노] WAV 파일 재생하기 (MP3파일을 WAV 파일로 변환) (0) | 2022.02.15 |
댓글