서보모터(Servo motor, SG90)

아두위키 : Arduwiki

신호에 따라 회전각도를 조절할 수 있는 제품입니다.

정확한 위치제어가 가능하여 로봇 관절 등에 사용됩니다.

회전각 범위는 0도 이상 180도 이하 입니다.

사양

  • 동작전압 : 5V
  • 소비전류 : 0.2A ~ 0.7A
  • 각도범위 : 0° ~ 180°

필요 하드웨어

연결

Servor motor Arduino
S D7
+ 5V
- GND

라이브러리

  • Servo (기본 라이브러리)

예제 코드

// servo 라이브러리 사용
#include <Servo.h>
// 7번핀 사용
#define pin 7

//sevo 객체 지정
Servo servo;

//각도 변수 지정
int pos = 60;

void setup() {
  Serial.begin(9600);
  //서보모터 사용 핀번호 설정
  servo.attach(pin);
  //서보모터 초기 각도 설정
  servo.write(pos);
  Serial.println("Serial start");
  Serial.print("default degree : ");
  Serial.println(pos);
}

void loop() {
  if (Serial.available()) {
    char contrl = Serial.read();
    if (contrl == 'a') { //시리얼 모니터에 a 입력시 60도 증가
      if (pos == 180)
        Serial.println("max angle");
      else {
        pos = pos + 60;
        Serial.print("degree : ");
        Serial.println(pos);
        servo.write(pos);
      }
    } else if (contrl == 'b') { //시리얼 모니터에 b 입력시 60도 감소
      if (pos == 0)
        Serial.println("min angle");
      else {
        pos = pos - 60;
        Serial.print("degree : ");
        Serial.println(pos);
        servo.write(pos);
      }
    }
  }
}

실행 결과


구매 링크