🧪 예제 따라하기메뉴
코딩하기 · 예제 따라하기

기기 코딩 24 / 31

서보 모터로 움직이기

서보 모터를 0도, 90도, 180도로 돌려요. 로봇 팔, 자동 문, 깃발 흔들기의 시작이에요.

  • 준비물: 서보 모터 SG90 1개, 점퍼선 3개
  • ESP32: 도구 → 라이브러리 관리에서 'ESP32Servo'를 검색해 설치해요. (Uno는 Servo가 기본으로 들어 있어요)
연결 표 (서보 선 색 기준)
서보 선아두이노 UnoESP32
갈색 (또는 검정) = GNDGNDGND
빨강 = 전원5VVIN (USB 5V가 나오는 핀, '5V'로 적힌 보드도 있어요)
주황 (또는 노랑) = 신호3번GPIO 13
코드
// 서보 모터 0° → 90° → 180°
#ifdef ARDUINO_ARCH_ESP32
#include <ESP32Servo.h>← ESP32용 서보 라이브러리
const int SERVO_PIN = 13;← ESP32 보드면 이쪽 번호를 써요 (보드에 따라 자동으로 골라져요)
#else
#include <Servo.h>← 아두이노 기본 서보 라이브러리
const int SERVO_PIN = 3;
#endif
Servo arm;← 서보 하나에 'arm'이라는 이름을 붙여요
void setup() {
arm.attach(SERVO_PIN);← 이 핀에 서보가 있다고 알려요
}
void loop() {
arm.write(0);← 0도로
delay(1000);
arm.write(90);← 90도로
delay(1000);
arm.write(180);← 180도로
delay(1000);
}

서보가 움직일 때 보드가 다시 켜지거나(리셋) 덜덜 떨면 USB 전기가 부족한 거예요. 서보는 한 개만 연결하고, 여러 개를 쓰려면 별도 전원이 필요해요. 움직이는 동안 손가락을 가까이 대지 않아요.

바꿔 보기: ① for 반복으로 0도에서 180도까지 1도씩 천천히 ② 빛 센서 값에 따라 각도 바꾸기(map) ③ 버튼을 누르면 문이 열렸다 닫히게 해 보세요.

💬 막히면 도우미에게 물어보세요

오류가 나면 오류 문구를 그대로 붙여 넣으면 더 정확해요. 예: “서보를 천천히 움직이게 하려면 어떻게 해요?”