정보나눔

오픈소스하드웨어 프로젝트에 대한 다양한 정보를 나누는 공간입니다.

서보모터 질문입니다.
김성수 | 2015-05-11

#include <Servo.h>

int sw = 5;     // 스위치를 5번 핀으로 설정
Servo myservo;
Servo myservo1;

void setup()
{
 myservo.attach(6);   // servo motor 6번 핀 설정
 myservo1.attach(7);   // servo motor 7번 핀 설정

 // 스위치가 연결된 핀의 모드를 INPUT_PULLUP 상태(초기 로직레벨을 HIGH로 설정)로 설정합니다.
 // 설정된 디지털 핀은 아래와 같은 값을 반환합니다.
 // 스위치가 열려있다면 (누르지 않은 상태) HIGH
 // 스위치를 닫혀있다면 (누른 상태), LOW
 pinMode(sw, INPUT_PULLUP);
}

void loop()
{
 if(digitalRead(sw) == LOW) {  // 스위치가 닫혀있는 상태(누른 상태)
  myservo.write(180);  // 180도, 초기각도
  myservo1.write(180);  // 180도, 초기각도
  delay(500);   // delay 0.5초
  myservo.write(0);  // 0도
  myservo1.write(0);  // 0도
  delay(3000);
  myservo.write(180);
  myservo1.write(180);
 }
 else {
  myservo.write(180);  // 초기각도
  myservo1.write(180);  // 초기각도
 }
}

 

라는 간단한 서보모터 제어 소스 인데요

180도에만 가면 이상하게 모터가 덜덜 거리네요

이 덜덜 거림좀 없애는 방법 없을까요?

만약 소스가 잘못되었다면 수정 부탁드리겠습니다.

스위치를 누르면 서보모터 2개가 같은 각도로 180도 → 0도 → 180도로 움직이는 소스입니다.

이전글   |    아두이노 IDE를 설치했는데 스케치에 도구 -> 포트에서 포트가 비활성화되네요... 2015-05-11
다음글   |    도와주세요 ㅜㅜㅜㅜㅜㅜ 2015-05-12