본문 바로가기

공대생 주석마루/아두이노 UNO

(10) 서보 모터 (Servo motor)

-Servo 모터란 정확한 회전각을 조절할 수 있는 모터를 말한다.

이는 아날로그 입력을 통해 조절할 수 있는데

아두이노 보드의 PWM기능을 활용한다.

또한 Servo.h (아두이노에 내장됨)을 이용해 Servo함수를 사용

구성품은

아두이노 우노, 포텐셔미터, 미니 서보모터(Servo motor), 연결선, 브렛보드 이다.


-코드는

#include <Servo.h>

Servo servo;
int pinS=10;

void setup() {
  // put your setup code here, to run once:
servo.attach(pinS);
}

void loop() {
  // put your main code here, to run repeatedly:
int motor = analogRead(A5);
int angular= map(motor,0,1023,0,180);

servo.write(angular);
delay(200);

}

Servo 헤더를 사용

servo.attach를 통해 출력핀 번호 설정

(단, PWM핀을 사용)

A5를 통해 아날로그 입력을 받는다.

map(motor,0,1023,0,180)에서

motor는 변환 전 변수

0,1023는 변환 전 변수 범위

0,180는 변환 후 변수 범위

servo.write를 통해 변수값을 출력하면

그 값만큼 서보 모터가 회전하다.


-회로도


-동영상1


-동영상2