■ 조이스틱을 사용해 스텝 모터를 회전시키는 방법을 보여준다.
▶ 부품 내역
1 2 3 4 5 6 7 8 9 |
─────────────────────── 구분 모델 수량 비고 ───── ──── ── ───────── JOYSTICK 1 MOTOR 28BYJ-48 1 Stepper Motor CONTROLLER 1 Motor Drive Module ─────────────────────── |
▶ 부품 연결
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 |
───────────── 아두이노 Joystick Module ──── ──────── GND GND 5V +5V A0 VRx A1 VRy D2 SW ───────────── ────────────── 아두이노 Motor Drive Module ──── ───────── D8 IN1 D9 IN2 D10 IN3 D11 IN4 5V + GND - ────────────── |
▶ 소스 코드
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 |
#include<Stepper.h> Stepper myStepper(1024, 11, 9, 10, 8); const int x = 0; const int y = 1; const int s = 2; void setup() { pinMode(s, INPUT); digitalWrite(s, HIGH); } void loop() { int direction = analogRead(x) - 520; if(direction > 0) { myStepper.setSpeed(map(direction, 0, 503, 1, 25)); myStepper.step(1); } else { direction *= -1; myStepper.setSpeed(map(direction, 1, 520, 1, 25)); myStepper.step(-1); } } |