> 업계 통찰 >서보 기구
기술 지원

PWM이 서보 모터 각도를 제어하는 ​​방법 – 전체 가이드

게시됨 2026-04-13

펄스 폭 변조(PWM)는 표준 취미의 각도 위치를 정밀하게 제어하는 ​​데 사용되는 표준 방법입니다.서보 기구모터. 전송되는 전기 펄스의 폭을 변경함으로써서보 기구20밀리초마다 다음 명령을 내릴 수 있습니다.서보 기구일반적으로 0~180도 사이의 특정 각도로 이동합니다. 이 가이드에서는 PWM 서보 제어를 즉시 구현할 수 있도록 정확한 신호 사양, 단계별 제어 로직, 실제 예 및 문제 해결 팁을 제공합니다.

01핵심 원리: 펄스 폭이 각도에 직접 매핑됨

표준 서보 모터에는 들어오는 PWM 신호를 읽는 작은 제어 회로가 포함되어 있습니다. 서보의 출력 샤프트 위치는 전적으로 서보에 의해 결정됩니다.펄스 폭(높은 신호의 지속 시간)은 고정된 20ms(50Hz) 프레임 내입니다. 관계는 선형입니다. 특정 펄스 폭은 특정 목표 각도와 같습니다.

표준 펄스-각도 매핑(0~180° 서보의 경우):

0도:0.5ms 펄스(500마이크로초)

90도(중립):1.5ms 펄스(1500마이크로초)

180도:2.5ms 펄스(2500마이크로초)

이 값은 업계 표준입니다. 항상 서보의 데이터시트를 확인하세요. 하지만 표준 서보의 95% 이상이 이 정확한 매핑을 따릅니다.

02단계별: 올바른 PWM 신호 생성

서보 각도를 제어하려면 두 가지 주요 매개변수를 사용하여 반복 신호를 생성해야 합니다.

1단계: PWM 주기를 20ms(50Hz)로 설정

서보는 20밀리초마다 새로운 펄스를 기대합니다. 이는 PWM 주파수가 1/0.02s = 50Hz임을 의미합니다. 이 빈도를 변경하지 마십시오. 그렇지 않으면 서보가 흔들리거나 응답하지 않습니다.

2단계: 원하는 각도 선택 및 펄스 폭 계산

다음 선형 보간 공식을 사용하세요.

펄스 폭(ms) = 0.5 + (각도 / 180) 2.0

예를 들어:

각도 = 45° → 펄스 = 0.5 + (45/180)2.0 = 0.5 + 0.5 =1.0ms

각도 = 135° → 펄스 = 0.5 + (135/180)2.0 = 0.5 + 1.5 = 2.0ms

3단계: 계산된 기간에 대해 높은 펄스를 적용한 다음 나머지 20ms에 대해 낮은 펄스를 적용합니다.

실제로는 타이머를 설정합니다. 펄스 폭(예: 1.5ms)에 대해 HIGH를 출력한 다음 남은 시간(20ms – 1.5ms = 18.5ms)에 대해 LOW를 출력합니다. 계속해서 반복하세요.

03실제 예: 0°에서 180°까지 서보 제어

로봇 팔에 서보가 연결되어 있다고 상상해 보세요. 완전히 왼쪽(0°)에서 완전히 오른쪽(180°)까지 단계적으로 이동하려고 합니다.

신호 순서(각 라인은 20ms 주기 1개):

사이클 1: 0.5ms 동안 HIGH → 서보가 0°로 이동

사이클 2: 1.0ms 동안 HIGH → 서보가 45°로 이동

사이클 3: 1.5ms 동안 HIGH → 서보가 90°로 이동

사이클 4: 2.0ms 동안 HIGH → 서보가 135°로 이동

사이클 5: 2.5ms 동안 HIGH → 서보가 180°로 이동

관찰된 행동:서보는 각 각도로 이동하여 해당 위치를 유지합니다. 제어 회로가 목표 펄스 폭을 지속적으로 수신하기 때문에 드리프트가 발생하지 않습니다.

04일반적인 구현 방법(브랜드 이름 없음)

다음을 사용하여 필요한 PWM 신호를 생성할 수 있습니다.

마이크로컨트롤러 타이머/카운터 모듈– 가변 듀티 사이클로 50Hz PWM을 설정합니다. 듀티 사이클 = (펄스 폭 / 20ms) 100%. 1.5ms 펄스의 경우 듀티 사이클 = 7.5%입니다.

소프트웨어 비트뱅킹– 지연이 있는 GPIO 핀을 직접 제어합니다. 덜 정확하지만 학습에 효과적입니다.

전용 서보 드라이버 모듈– 이러한 오프로드 타이밍 정밀도는 동일하지만 여전히 동일한 0.5~2.5ms 펄스 범위가 필요합니다.

중요한 정밀도 요구 사항:펄스 폭 정확도는 ±10 µs(마이크로초) 이내여야 합니다. 타이밍이 20μs 이상 어긋나면 지터 또는 잘못된 각도가 발생합니다.

05문제 해결: 서보가 올바른 각도에 도달하지 못하는 이유는 무엇입니까?

징후 가장 가능성이 높은 원인 고치다
서보는 0°에서 90° 사이에서만 움직입니다(180° 아님). 펄스 폭 범위는 0.5~2.5ms가 아닌 1.0~2.0ms입니다. 최소 0.5ms, 최대 2.5ms를 출력하도록 코드를 조정하세요.
서보가 극단적으로 진동하거나 윙윙거립니다. 펄스 폭은 기계적 한계를 약간 초과합니다. 펄스를 0.5~2.5ms로 제한합니다. 2.6ms를 보내지 마세요
서보가 전혀 응답하지 않습니다 잘못된 주파수(50Hz 아님) PWM 주기가 정확히 20ms(50Hz)인지 확인하세요.
각도가 오프셋됨(예: 1.5ms는 90° 대신 95°를 제공함) 서보에는 비표준 중립점이 있습니다. 90°의 실제 펄스를 측정하고 매핑을 재보정하세요.

실제 사례:일반적인 실수는 일부 마이크로 컨트롤러 라이브러리가 기본적으로 1.0~2.0ms 범위를 사용하는 것입니다. 한 사용자는 서보가 총 90°만 회전했다고 보고했습니다. 펄스 범위를 0.5-2.5ms로 변경한 후 전체 180° 회전이 복원되었습니다.

06주요 내용 – 핵심 원칙을 반복하세요

PWM은 듀티 사이클만 제어하는 ​​것이 아니라 펄스 폭으로 서보 각도를 제어합니다.고정된 20ms 기간 동안 절대 최고 시간(0.5~2.5ms)이 위치를 결정합니다.

관계는 선형적입니다.펄스 폭 = 0.5ms + (각도/180)*2.0ms.

항상 50Hz(20ms 주기)를 사용하십시오.다른 주파수를 사용하면 불규칙한 동작이 발생하거나 움직임이 발생하지 않습니다.

최소 및 최대 펄스 폭을 확인하십시오.대부분의 문제는 하드웨어 오류가 아닌 잘못된 펄스 범위에서 발생합니다.

07안정적인 서보 제어를 위한 실행 가능한 권장 사항

일관된 결과를 얻으려면 즉시 다음 단계를 따르십시오.

1. 서보의 실제 응답을 측정하십시오.0.5ms, 1.5ms 및 2.5ms 펄스를 보냅니다. 물리적인 각도를 표시하세요. 0°, 90°, 180°가 아닌 경우 실제 펄스 대 각도 매핑을 기록합니다.

2. 100~200μs 안전 여유 추가기계적 바인딩을 방지하기 위해 양쪽 끝에서(최소 펄스 = 0.6ms, 최대 = 2.4ms).

3. 전용 타이머 하드웨어 사용가능하면 소프트웨어 지연 대신. 타이머 기반 PWM은 메인 코드가 사용 중일 때에도 정확성을 유지합니다.

4. 로직 분석기 또는 오실로스코프를 사용하여 테스트펄스 폭을 확인합니다. 많은 소프트웨어 시뮬레이션에서는 타이밍 오류를 숨깁니다.

5. 다중 서보 프로젝트의 경우,전원 공급 장치를 논리 공급 장치와 별도로 유지하십시오. 정지된 서보는 1~2A를 소비하여 PWM 신호를 손상시키는 전압 강하를 일으킬 수 있습니다.

20ms 주기 내에서 0.5~2.5ms의 펄스 폭 범위를 엄격하게 준수하면 모든 표준 서보 모터에서 정밀하고 반복 가능한 각도 제어를 달성할 수 있습니다. 먼저 측정 단계를 구현한 다음 코드를 미세 조정하면 서보가 명령하는 위치로 정확히 이동합니다.

업데이트 시간:2026-04-13

미래에 힘을 실어주다

귀하의 제품에 적합한 모터 또는 기어박스를 추천하려면 Kpower 제품 전문가에게 문의하십시오.

케이파워에 메일보내기
문의 제출
+86 0769 8399 3238
 
kpower지도