아두이노 스텝모터 (28BYJ-48) 구동하기
아래의 스텝모터는 인터넷에서 쉽게 구할 수 있으며 스텝모터(28BYJ-48)와 모터 드라이브(ULN2003)가 함께 판매되고 있다.
아래의 예제는 모터가 한바퀴 회전하고 다시 역방향으로 한바퀴 회전하는 예제이다.
아래의 순서대로 점퍼 케이블을 연결한다.
주황색 케이블 : 아두이노 8번핀, 스텝모터 IN1
초록색 케이블 : 아두이노 9번핀, 스텝모터 IN2
파란색 케이블 : 아두이노 10번핀, 스텝모터 IN3
노란색 케이블 : 아두이노 11번핀, 스텝모터 IN4
하얀색 케이블 : 아두이노 5V, 스텝모터 +
검은색 케이블 : 아두이노 GND, 스텝모터 -
예제 소스1
#include <Stepper.h>// 2048:한바퀴(360도), 1024:반바퀴(180도)... const int stepsPerRevolution = 2048;
// 모터 드라이브에 연결된 핀 IN4, IN2, IN3, IN1 Stepper myStepper(stepsPerRevolution,11,9,10,8); void setup() { myStepper.setSpeed(14); } void loop() { // 시계 반대 방향으로 한바퀴 회전 myStepper.step(stepsPerRevolution); delay(500); // 시계 방향으로 한바퀴 회전 myStepper.step(-stepsPerRevolution); delay(500); }
예제소스2
#include <Stepper.h>const int stepsPerRevolution = 64; Stepper myStepper(stepsPerRevolution, 11,9,10,8); void setup() { myStepper.setSpeed(300); } void loop() { // 시계 반대 방향으로 한바퀴 회전 for(int i=0; i<32; i++) { // 64 * 32 = 2048 한바퀴 myStepper.step(stepsPerRevolution); } delay(500); // 시계 방향으로 한바퀴 회전 for(int i=0; i<32; i++) { myStepper.step(-stepsPerRevolution); } delay(500); }
스텝모터 (28BYJ-48)와 모터 드라이브 (ULN2003)으로 구성되어 있다.
주황색 IN1, 초록색 IN2, 파란색 IN3, 노란색 IN4에 연결한다.
주황색 8번핀, 초록색 9번핀, 파란색 10번핀, 노란색 11번핀에 연결한다.
아두이노의 5V는 +에 연결하고 GND는 -에 연결한다.
소스코드를 업로드하면 모터가 회전하는 것을 확인 할 수 있다.