다음과 같은 코드를 사용해서 제어 했습니다.
vcc 5v 연결했고요.
#include <Servo.h>
const unsigned int MOTOR_PIN = 9;
const unsigned int MOTOR_DELAY = 15;
const unsigned int SERIAL_DELAY = 5;
const unsigned int BAUD_RATE = 9600;
Servo servo; // <label id="code.motors.servo"/>
void setup() {
Serial.begin(BAUD_RATE);
servo.attach(MOTOR_PIN); // <label id="code.motors.servo_attach"/>
delay(MOTOR_DELAY);
servo.write(1);
delay(MOTOR_DELAY);
}
void loop() {
const int MAX_ANGLE = 3;
char degrees[MAX_ANGLE + 1]; // <label id="code.motors.degrees"/>
if (Serial.available()) {
int i = 0;
while (Serial.available() && i < MAX_ANGLE) {
const char c = Serial.read();
if (c != -1 && c != '\n')
degrees[i++] = c;
delay(SERIAL_DELAY);
}
degrees[i] = 0;
Serial.print(degrees);
Serial.println(" degrees.");
servo.write(atoi(degrees)); // <label id="code.motors.servo_write"/>
delay(MOTOR_DELAY);
}
}
한가지 말고는 동작에 이상이 없습니다..
1~10 도사이에 입력을 주면
모드가 웅~~ 소리를 내며 덜덜 떨고요..
이상태에서 3, 4,5 도 등을 입력해보면 동작을 하지 않습니다.
10 이상을 입력하면 또 정상적으로 동작하네요.
제품에 대한 wiki등의 정보를 찾아볼수 있는 사이트도 없어서 확인이 불가하네요..
무언가 고려할 사항이 있는건가요?
아니면 이건 제품 불량인가요?
확인 부탁드립니다.
회원에게만 댓글 작성 권한이 있습니다.