Arduino Uno 로 SG90 마이크로 서보 모터를 구동 시켜보는 프로젝트 입니다
서보모터(Servo Motor)는 모터와 제어구동보드(적당한 제어 회로와 알고리즘)를 포함하는 것으로
모터 자체만 가지고 서보모터라고 부르지 않습니다
서보모터의 개념은 모터와 구동 시스템 까지 포함하는 것으로 흔히 볼수 있는 공작기계, CCTV 카메라, 캠코더, 프린터 등에서
사용되는 모터와 같이 명령에 따라 정확한 위치와 속도를 제어할수 있는 모터를 서보모터라고 부릅니다
서보 모터는 일반 모터와 달리 회전 반경이 정해져 있습니다. 종류에 따라 다르지만 일반적으로 약 0~270도 범위의 회전각을 가집니다
서보모터의 회전 각도는 아래 그림과 같이 PWM (펄스폭변조) 방식으로 제어합니다
다양한 종류의 서보 모터가 있지만 SG90 마이크로 서보 모터를 사용해 보겠습니다
SG90 마이크로 서보 모터 Servo Motor 는 9g 급으로 동작 전압이 4.2V ~ 6V 로 아두이노로 테스트 하기 적합 합니다
회전각도 는 180도 이며 동작 속도는 0.1 s/60 degree 입니다
사용된 부품
Arduino Uno R3 (Italy)
브래드 보드
점퍼케이블
사용된 키트
구성 배선도
사용된 예제소스
#include <Servo.h>
#define SERVO 8 // Porta Digital 12 PWM
Servo s; // Variavel Servo
int pos; // Posicao Servo
void setup (){
s.attach(SERVO);
Serial.begin(9600);
s.write(0); // Inicia motor posicao zero
}
void loop(){
for(pos = 0; pos < 90; pos++){
s.write(pos);
delay(15);
}
delay(1000);
for(pos = 180; pos > 0; pos--){
s.write(pos);
delay(15);
}
}
Servo.h 라이브러리 사용, 서보모터 핀모드 8번입니다, 시리얼 통신속도 9600입니다,
for(pos = 0; pos < 90; pos++){
for(pos = 180; pos > 0; pos--){
서보모터 회전각도 설정 (SG90 은 최대 180도 회전가능)
주의사항
배선시 서보 모터의 핀맵에 주의 해야 합니다
빨간선이 VCC, 황색선이 GND, 노란선이 데이터 출력핀 입니다
예제소스를 보면 Servo.h 라이브러리를 불러오는 내용이 있습니다
Servo.h 는 아두이노 IDE를 설치하면 기본적으로 라이브러리가 포함 되어 있습니다
이점 숙지하고 넘어 가도록 하겠습니다
프로젝트 동영상
MG90S 메탈 서보모터도 재질만 틀릴뿐 사양은 거의 동일하기 때문에 동일하게 제어할 수 있습니다
프로젝트 동영상
'Arduino(아두이노) 키트 강좌' 카테고리의 다른 글
Step.19-Arduino Uno 로 DHT11 온습도센서를 이용해 실내 온습도 1602LCD로 출력하기 (0) | 2015.06.24 |
---|---|
Step.18-Arduino Uno 로 직류 DC 모터 구동 시키고, 속도 제어해 보기 (0) | 2015.06.02 |
Step.16-Arduino Uno 로 HC-SR04 초음파센서를 이용해 거리측정하기 (0) | 2015.06.01 |
Step.15-Arduino Uno 로 1602 LCD를 사용해 문자 출력하기 (0) | 2015.06.01 |
Step.14-Arduino Uno 로 여러개의 LED 켜기 (0) | 2015.05.29 |
댓글