#include <Servo.h>


Servo servo;


void setup() {

  Serial.begin(9600);

  servo.attach(3);

}


String str = "";

void loop() {

  str = "";

  while(Serial.available()){

    str += (char)Serial.read();

    delay(10);

  }

  if(str != ""){

    servo.write(str.toInt());

  }

}


최대한 간단히 만든 예제다.

시리얼 모니터에 0~180도 사이의 값을 입력하면 서보모터가 해당 숫자에 맞는 각도로 돌아간다.


난 값이 싸고, 구동전류값이 낮은 SG90을 선택했다(실습이니까..)

sg90은 구동전류가 작은 서보모터기 때문에 딱히 외부전원을 쓰지 않아도 된다.

연결해야 하는 선은 세가닥인데, 5V, GND, 데이터 선이다.


다른 모델도 그런지 모르겠는데, 내가 가지고 있는 SG90모델은 다음과 같이 연결하면 된다.

갈색(GND)

빨강(5V Vcc)

주황(데이터)