게시됨 2026-04-06
서보 기구펄스 제어는 반복되는 전기 신호를 보내는 방법입니다.펄스 폭 변조(PWM) 신호—표준으로서보 기구출력축을 정확한 각도로 설정하는 모터입니다. 펄스 폭(높은 신호의 지속 시간)은 전압 레벨이나 주파수만으로는 위치를 결정하지 않고 위치를 결정합니다.
대다수의 취미 및 산업용 서보의 경우,펄스 폭 1.5밀리초(ms)명령하다중립(90도) 위치,1.0ms 펄스명령0도(완전히 왼쪽) 및2.0ms 펄스명령180도(완전 오른쪽). 이는 안정적인 작동을 위해 따라야 하는 보편적인 표준입니다.
표준 서보에 전송되는 모든 제어 신호는 두 부분으로 구성됩니다.
높은 펄스 폭(활성 부분): 일반적으로 사이0.5ms 및 2.5ms, 대부분의 서보는1.0ms – 2.0ms0~180° 범위용.
프레임 기간(총 사이클 시간):20ms(50Hz) 표준 아날로그 서보의 경우. 디지털 서보는 더 높은 주파수(최대 333Hz)를 수용할 수 있지만 50Hz는 보편적으로 작동합니다.
중요한 규칙:서보는 다음 값만 읽습니다.펄스 폭각 사이클의. 나머지 사이클(낮은 신호)에서는 단순히 타이머가 재설정됩니다. 동일한 펄스 폭을 유지하면서 프레임 주기 변경그렇지 않다각도를 변경하면 토크와 업데이트 속도에만 영향을 미칩니다.
> 검증 가능한 출처:이 값은 RCMA(Radio Control Manufacturer Association)에서 정의한 표준과 일치하며 모든 주요 서보 데이터 시트(예: Futaba, Hitec, Savox)에서 사용됩니다. 더 넓은 범위(예: 270°)를 요구하는 서보의 경우 펄스 범위는 그에 따라 0.5ms – 2.5ms로 확장됩니다.
일반 마이크로컨트롤러(Arduino, ESP32, STM32 등)에 표준 5V 서보가 연결되어 있다고 가정해 보겠습니다. 서보가 0°에서 180°로 스윕하고 그 반대로 스윕하기를 원합니다.
서보 신호선 → 모든 디지털 출력 핀(예: 핀 9)
서보 전원(빨간색) → 5V 외부 공급 장치(500mA를 초과하는 경우 마이크로컨트롤러의 5V 핀에서 전원을 공급하지 않음)
서보 접지(갈색/검은색) → 마이크로 컨트롤러가 있는 공통 접지
대부분의 마이크로 컨트롤러 라이브러리는 펄스 생성을 추상화합니다. 하위 수준 코드를 작성할 때 구현할 정확한 논리는 다음과 같습니다.
# 50Hz(20ms 주기) 서보 제어를 위한 의사 코드 핀을 HIGH로 설정 pulse_width_ms(예: 1.5ms) 동안 대기 핀 LOW로 설정(20 - pulse_width_ms)ms 동안 대기 20ms마다 반복
일반적인 실수:사용지연()다른 작업을 차단합니다. 대신, millis() 또는 하드웨어 타이머를 사용하여 비차단 타이밍을 사용하세요.
한 애호가가 GoPro용 짐벌을 만들었지만 표준 180° 서보에서 0.5~2.5ms 펄스를 사용했습니다. 결과: 서보는 기계적 한계를 넘어(약 270°까지) 움직이려고 했기 때문에 지속적으로 흔들리고 과열되었습니다. 으로 수정한 후1.0~2.0ms, 짐벌이 원활하게 작동했습니다. 실제 펄스 한계에 대해서는 항상 서보의 데이터 시트를 확인하십시오.
원인 1:펄스 폭이 불안정합니다(소프트웨어 타이밍 오류로 인해 ±0.01ms 변동).
고치다:비트 뱅잉 대신 하드웨어 PWM 주변 장치를 사용하십시오.
원인 2:프레임 기간이 일관되지 않습니다(예: 18ms~22ms).
![]()
고치다:정확히 20ms 주기를 보장합니다. 디지털 서보는 덜 민감하지만 아날로그 서보는 지터링됩니다.
원인:펄스 범위가 너무 좁습니다. 많은 라이브러리의 기본값은 0.5~2.5ms이지만 서보에는 0.9~2.1ms가 필요합니다.
고치다:서보가 움직이지 않을 때까지 점점 더 큰 펄스를 전송하여 실제 끝점을 측정한 다음 그에 따라 최소/최대를 설정하십시오.
원인:전류가 부족합니다. 정지된 서보는 >1A를 소모할 수 있습니다.
고치다:서보당 최소 2A 정격의 별도 5V 공급 장치를 사용하십시오. USB 전원에 의존하지 마십시오.
원인:신호 라인의 전기적 노이즈.
고치다:신호선과 직렬로 100~220Ω 저항을 추가하고 서보 근처의 전원 및 접지 전체에 10μF 커패시터를 추가합니다.
프로젝트의 성공을 보장하려면 다음 단계를 따르세요.
1. 서보의 펄스 사양을 확인하세요– 데이터시트를 확인하세요. 사용할 수 없는 경우 0~180°에 대해 1.0~2.0ms를 가정합니다.
2. 전용 PWM 핀 사용– 하드웨어 타이머는 안정적인 펄스를 생성합니다. 소프트웨어 비트뱅잉은 테스트용으로만 사용됩니다.
3. 서보에 별도로 전원을 공급하십시오.– 서보의 VCC를 조정된 5V 전원(또는 지정된 대로 4.8V-6V)에 연결합니다. 로직 공급 장치(예: Raspberry Pi의 5V 핀)에서 전원을 끌어오지 마십시오.
4. 중립 펄스(1.5ms)로 시작– 이는 서보의 중심을 맞추고 갑작스러운 점프를 방지합니다.
5. 점차적으로 펄스 폭을 스윕– 1.0ms에서 2.0ms까지 0.01ms 단위로 제공됩니다. 실제 기계적 범위를 관찰하십시오.
6. 서보의 실제 최소/최대 펄스를 기록하세요.– 최종 코드에서 이러한 제한을 사용하여 끝 정지에 대한 강제를 피하십시오.
7. 불감대 보상 추가– 정확한 위치 지정을 위해 동일한 펄스를 두 번 보냅니다. 대부분의 서보에는 3~10μs 불감대가 있습니다.
다시 말하지만 펄스 폭만으로 각도를 제어합니다. 전압이나 주파수가 아닙니다(합당한 범위 내에서).1.5ms 펄스는 프레임 기간이 20ms인지 10ms인지에 관계없이 표준 서보에서 항상 90°를 명령합니다. 주기 변경은 서보가 위치를 업데이트하는 빈도에만 영향을 미칩니다. 아날로그 서보의 경우 50Hz(20ms)를 고수하세요. 디지털 서보의 경우 최대 333Hz(3ms 주기)까지 올라갈 수 있지만 펄스 폭 범위는 동일하게 유지됩니다.
서보 펄스 제어를 즉시 올바르게 적용하려면:
하다:하드웨어 PWM 주변 장치를 사용하여 20ms 주기로 안정적인 1.0~2.0ms 펄스를 생성합니다.
하지 말아야 할 것:마이크로컨트롤러의 레귤레이터에서 서보에 전원을 공급하세요. 별도의 배터리나 소모품을 사용하십시오.
하다:다른 각도로 이동하기 전에 항상 1.5ms 중립 펄스로 시작하십시오.
하지 말아야 할 것:모든 서보가 0.5~2.5ms를 사용한다고 가정합니다. 특정 모델의 데이터시트를 확인하세요.
이 가이드를 따르면 지터를 제거하고 기계적 손상을 방지하며 로봇 암부터 RC 차량 및 카메라 짐벌에 이르기까지 모든 서보 기반 프로젝트에 대한 정밀한 각도 제어를 달성할 수 있습니다. 추가 문제 해결을 위해서는 서보의 공식 데이터시트를 참조하거나 오실로스코프를 사용하여 테스트하여 펄스 타이밍을 확인하십시오.
업데이트 시간:2026-04-06