> 업계 통찰 >기어 모터
기술 지원

마이크로컨트롤러로 서보 모터 각도를 제어하는 ​​방법: 완전한 단계별 가이드

게시됨 2026-04-17

01제어 방법서보 기구마이크로컨트롤러를 사용한 모터 각도: 완전한 단계별 가이드

이 가이드는 마이크로컨트롤러가 표준의 회전 각도를 정확히 어떻게 제어하는지 명확하고 실제적인 설명을 제공합니다.서보 기구모터. 핵심 작동 원리, 필요한 정확한 전기 신호, 일반적인 마이크로컨트롤러를 사용하여 해당 신호를 생성하는 완전한 단계별 방법을 배우게 됩니다. 브랜드 이름이나 특정 회사 제품은 언급되지 않습니다. 일반적이고 널리 적용 가능한 원칙과 실제 사례만 사용됩니다.

1. 핵심 원리: 펄스 폭 변조(PWM)가 각도를 직접 결정합니다.

표준서보 기구모터는~ 아니다일반 DC 모터처럼 연속적으로 회전합니다. 대신 특정 각도 위치(예: 0°, 90° 또는 180°)로 이동하고 해당 위치를 유지합니다. 각도는 20밀리초(ms)마다 전송되는 전기 펄스의 폭에 의해 전적으로 제어됩니다.

직접적인 관계는 다음과 같습니다.

1.0ms ~ 2.0ms 사이의 펄스 폭0° ~ 180° 사이의 각도(가장 일반적인 서보의 경우)

A 1.0ms 펄스 → 0°(시계 반대 방향으로 완전히 회전)

A 1.5ms 펄스 → 90°(중앙 위치)

2.0ms 펄스 → 180°(시계 방향 전체)

> 실제 사례:취미로 사용하는 로봇 팔에서는 그리퍼가 완전히 닫히도록(0°) 마이크로컨트롤러가 1.0ms 펄스를 반복적으로 보냅니다. 그리퍼를 완전히(180°) 열려면 2.0ms 펄스를 보냅니다. 반 개방 위치(90°)의 경우 1.5ms 펄스를 전송합니다.

이 신호는펄스 폭 변조(PWM)– 마이크로컨트롤러가 ON(5V 또는 3.3V)과 OFF(0V) 사이를 매우 빠르게 전환하는 디지털 신호를 출력하는 방법이며, ON 펄스의 지속 시간은 서보가 읽는 것입니다.

2. 단계별: 마이크로컨트롤러가 올바른 펄스를 생성하는 방법

마이크로컨트롤러로 표준 서보를 제어하려면 다음 단계를 정확하게 따르십시오.

1단계: 서보의 신호 요구 사항 식별

대부분의 표준 서보는 다음과 같이 작동합니다.

전압:4.8V – 6.0V(전원 공급 장치,~ 아니다마이크로컨트롤러 핀에서)

제어 신호 전압:3.3V 또는 5V(마이크로컨트롤러 로직 레벨과 일치)

펄스 반복 주기:20ms(50Hz 주파수)

펄스 폭 범위:1.0ms~2.0ms(0°~180°의 경우)

중요한:정확한 펄스 폭 범위에 대해서는 서보의 데이터시트를 확인하십시오. 일부 서보는 0°~180°에 대해 0.5ms~2.5ms를 사용하거나 0°~90°에 대해 1.0ms~2.0ms를 사용합니다. 원칙은 동일하게 유지됩니다.

2단계: 서보를 마이크로컨트롤러에 올바르게 연결

표준 서보에는 세 개의 와이어가 있습니다.

와이어 색상(일반) 기능 연결
브라운 또는 블랙 접지(GND) 마이크로컨트롤러 GND
빨간색 전원(VCC, 5V) 외부 5V 전원 공급 장치(하나 이상의 소형 서보에 마이크로컨트롤러의 5V 핀을 사용하지 마십시오)
주황색 또는 노란색 신호(PWM) 마이크로컨트롤러 PWM 지원 디지털 핀

중요 안전 참고사항:마이크로 컨트롤러의 5V 핀에서 직접 서보에 전원을 공급하지 마십시오. 서보는 대부분의 마이크로컨트롤러 핀 정격을 초과하는 200~1000mA를 소비할 수 있습니다. 공통 접지가 있는 별도의 5V 전원 공급 장치를 사용하십시오.

3단계: 마이크로컨트롤러의 PWM 하드웨어 구성

모든 마이크로컨트롤러에는 PWM 타이머가 내장되어 있습니다. 구성에는 두 가지 매개변수 설정이 필요합니다.

주파수 = 50Hz(주기 = 20ms)

해결(일반적으로 마이크로컨트롤러에 따라 8비트~16비트)

일반 계산 예(모든 마이크로컨트롤러에 대해):

PWM 분해능이 8비트(0~255)이고 총 주기가 20ms(20,000μs)인 경우:

1.0ms 펄스 → 듀티 사이클 = (1.0ms / 20ms) × 255 = 12.75 → 13 사용

1.5ms 펄스 → 듀티 사이클 = (1.5ms / 20ms) × 255 = 19.125 → 19 사용

2.0 ms 펄스 → 듀티 사이클 = (2.0 ms / 20 ms) × 255 = 25.5 → 26 사용

실제 사례:50Hz PWM으로 설정된 일반 8비트 마이크로 컨트롤러는 PWM 비교 레지스터에 13의 값을 기록하여 0°, 19는 90°, 26은 180°를 달성합니다.

4단계: 원하는 각도를 설정하기 위한 마이크로컨트롤러 코드 작성

코드 로직은 모든 ​​마이크로컨트롤러에서 항상 동일합니다.

1. 50Hz 주파수로 PWM 하드웨어를 초기화합니다.

2. 선형 공식을 사용하여 목표 각도에 필요한 펄스 폭을 마이크로초 단위로 계산합니다.

펄스 폭(μs) = 1000 + (각도 / 180) × 1000(1.0~2.0ms 범위의 경우)

각도 0° → 1000μs

각도 90° → 1500 µs

각도 180° → 2000 µs

3. 펄스 폭을 마이크로컨트롤러의 듀티 사이클 레지스터 값으로 변환합니다.

4. 해당 값을 PWM 출력 핀에 씁니다.

일반 의사코드(모든 마이크로컨트롤러에 적용 가능):

// PWM 타이머가 이미 50Hz, 8비트 분해능으로 구성되어 있다고 가정합니다. int targetAngle = 90; // 도 int pulseWidth_us = 1000 + (targetAngle1000/180); int DutyCycleValue = (pulseWidth_us255) / 20000; setPWMDutyCycle(PWM_PIN, DutyCycleValue);

5단계: 실제 측정으로 확인

코드를 업로드한 후 오실로스코프나 로직 분석기를 사용하여 신호를 확인하십시오.

주파수는 50Hz여야 합니다.(주기 = 20ms)

펄스 폭은 계산된 값과 일치해야 합니다.(예: 90°의 경우 1.5ms)

일반적인 실제 문제:서보가 흔들리거나 움직이지 않으면 펄스 폭이 잘못된 것일 수 있습니다. 신호 핀에서 직접 측정합니다. 0.05ms 오류로 인해 5°~10° 편차가 발생할 수 있습니다.

3. 전체 예: 0°에서 180°까지 그리고 그 반대로 서보 제어

다음은 약간의 구문 적용 후 모든 마이크로컨트롤러에서 작동하는 완전하고 일반적인 예입니다. 논리가 중요합니다.

대본:간단한 카메라 패닝 플랫폼. 서보는 0°에서 180°까지 계속해서 스위프해야 합니다.

단계별 구현 논리:

1. PWM 주파수를 50Hz로 설정합니다.

2. 함수 정의setAngle(각도)저것:

0° ~ 180° 사이의 클램프 각도

펄스 폭 = 1000 + (각도 × 1000 / 180) 마이크로초를 계산합니다.

듀티 사이클 레지스터 값으로 변환

PWM 핀에 쓰기

3. 메인 루프에서:

0°에서 180°까지 1°씩 증가 각도

부르다setAngle(각도)각 단계마다

15ms 동안 기다립니다(서보가 물리적으로 움직일 수 있도록 허용).

그런 다음 각도를 다시 0°로 감소시킵니다.

예상 결과:서보는 한쪽 끝에서 다른 쪽 끝으로 부드럽게 회전하며 계산된 각 각도에서 정확하게 멈춥니다.

4. 주요 검증 테이블: 펄스 폭 대 각도

계산 없이 빠르게 확인하려면 다음 표를 사용하세요.

원하는 각도 필요한 펄스 폭(μs) 듀티 사이클 @ 50Hz, 8비트(0–255)
1000 13
45° 1250 16
90° 1500 19
135° 1750 22
180° 2000 26

메모:서보가 정확히 0° 또는 180°에 도달하지 못하는 경우 최소 및 최대 펄스 폭을 약간 조정하십시오(예: 0°의 경우 950 µs, 180°의 경우 2050 µs). 이는 제조 공차로 인해 정상적인 현상입니다.

5. 이 방법이 보편적이고 신뢰할 수 있는 이유

펄스 폭 제어 방법은 수십 년 동안 사용된 업계 표준 아날로그 서보 인터페이스입니다. 제조업체에 상관없이 모든 표준 서보는 동일한 1.0~2.0ms 펄스 범위에 응답합니다. 이는 다음을 의미합니다.

50Hz PWM을 출력하는 모든 마이크로컨트롤러를 사용하여 모든 표준 서보를 제어할 수 있습니다.

8비트부터 32비트까지의 마이크로 컨트롤러에도 동일한 코드 논리가 작동합니다.

독점 라이브러리나 브랜드별 기능이 필요하지 않습니다.

6. 일반적인 현실 문제와 해결책

문제 가장 가능성이 높은 원인 해결책
서보가 전혀 움직이지 않습니다 서보에 전원이 공급되지 않거나 접지 연결이 잘못되었습니다. 마이크로컨트롤러를 사용하여 서보 전원을 외부 5V 공급 장치 및 공통 접지에 연결합니다.
서보가 진동하거나 불안함 펄스 폭이 불안정하거나 주파수가 정확히 50Hz가 아닙니다. PWM 구성을 확인하십시오. 소프트웨어 지연 루프 대신 하드웨어 PWM 사용
서보는 중간 각도가 아닌 0°와 180°로만 이동합니다. 코드는 최소 및 최대 펄스 폭만 전송합니다. 계산 공식을 확인하십시오. 오실로스코프로 펄스 폭 측정
서보가 매우 뜨거워집니다. 펄스 주파수가 너무 높습니다(예: 50Hz 대신 300Hz). PWM을 정확히 50Hz(20ms 주기)로 재구성
시간이 지남에 따라 서보 위치가 표류합니다. 전원전압이 불안정하다 서보 전력선 전체에 대형 커패시터(1000μF) 추가

7. 실행 가능한 결론: 정확한 다음 단계

기억해야 할 핵심 원칙:

> 서보 각도는정비례1.0ms에서 2.0ms 사이의 펄스 폭으로, 20ms마다 반복됩니다. 펄스 폭을 변경하고 각도를 변경하면 다른 것은 중요하지 않습니다.

오늘 실행할 즉각적인 실행 계획:

1. 서보의 펄스 범위를 확인하세요– 데이터시트에서 최소/중심/최대 펄스 폭을 확인하세요. 대부분은 0/90/180°에 1.0/1.5/2.0ms를 사용합니다.

2. 마이크로컨트롤러의 PWM 설정– 하나의 PWM 핀을 50Hz 주파수로 구성합니다. 안정적인 펄스를 위해 소프트웨어 비트뱅킹이 아닌 하드웨어 PWM을 사용하십시오.

3. 각도-펄스 변환 공식 작성- 사용:pulse_us = 1000 + (angle_deg × 1000 / 180).

4. 세 가지 알려진 각도로 테스트– 0°, 90°, 180°를 명령합니다. 실제 샤프트 위치를 측정합니다. 필요한 경우 최소/최대 펄스 폭을 조정합니다.

5. 교정 루틴 추가– 서보의 정확한 최소 및 최대 펄스 폭을 코드에 저장하십시오. 이는 제조 변화에도 불구하고 완벽한 0°~180° 범위를 보장합니다.

최종 검증:이 가이드를 따르면 ±1° 정확도로 0°에서 180°까지 모든 각도를 명령할 수 있습니다. 연속 회전 서보(펄스 폭이 속도와 방향을 제어하는 ​​경우) 및 다양한 각도 범위(예: 0°~90° 또는 0°~270°)의 서보에도 동일한 방법이 적용됩니다. 그에 따라 펄스 폭 범위를 조정하기만 하면 됩니다.

핵심 진실을 반복하세요:마이크로컨트롤러는 ON 시간(펄스 폭)이 1.0ms(0°)에서 2.0ms(180°)까지 변하는 50Hz PWM 신호를 출력하여 서보의 각도를 제어합니다. 이 펄스-각 관계를 익히면 모든 마이크로컨트롤러로 모든 서보를 제어할 수 있습니다.

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

미래에 힘을 실어주다

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

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