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

스티어링 기어 제어 원리 및 연결 51 초보자를 위한 마이크로컨트롤러 튜토리얼 빠르게 시작하기

게시됨 2026-02-24

가지고 놀기서보 기구: 51 MCU를 활용한 시작부터 실제 전투까지, 이 글이 도움이 될 것입니다!

귀하의 혁신적인 제품에 정확하게 스윙할 수 있는 "조인트"를 추가하는 것을 고려하고 계십니까? 스티어링 기어는 매우 전문적으로 들리지만 실제로는 생각만큼 어렵지 않습니다. 특히 이를 클래식 51 마이크로컨트롤러와 연결하는 것은 보급형 제조업체에게 탁월한 경로입니다. 많은 친구들이 처음 이 제품을 접했을 때 가장 큰 골칫거리는 그것이 어떻게 움직이는지, 코드를 사용하여 어떻게 제어할 수 있는지 알 수 없다는 것이었습니다. 걱정하지 마세요. 오늘 자세히 이야기해 드리고, 읽고 나면 자신감을 가지실 수 있도록 할게요.

스티어링 기어 제어의 원리는 무엇입니까?

직설적으로 말하면,서보 기구특히 순종적인 "작은 회전 가드"와 같습니다. 모터, 감속기어, 제어회로가 통합되어 있습니다. 어느 각도로 돌릴지 알려주면 그 위치에 도달하기 위해 열심히 노력하고 꾸준히 멈출 것입니다.

이 명령은 PWM(Pulse Width Modulation)이라는 신호를 통해 전달됩니다. 높은 레벨과 낮은 레벨의 펄스가 반복적으로 발생하는 것으로 생각하면 되는데, 펄스의 폭, 즉 높은 레벨의 지속시간이 조향장치의 '동작 신호'가 됩니다.

흔한서보 기구SG90과 같은 소형 서보와 같은 s는 20밀리초 주기의 펄스를 인식합니다. 그 중 1.5밀리초 정도의 하이 레벨 시간은 중간 위치(90도)에 해당한다. 펄스 폭이 0.5밀리초에서 2.5밀리초 사이에서 변경되면 서보 축은 0도에서 180도 범위 내에서 회전합니다. 펄스 폭을 더 정확하게 제공할수록 더 정확하게 회전합니다.

51 마이크로컨트롤러를 사용하여 제어 신호를 생성하는 방법

51 마이크로 컨트롤러 자체는 정밀한 펄스 폭 신호를 직접 출력하지 않지만 프로그래밍을 통해 이를 "시뮬레이트"할 수 있습니다. 이를 위해서는 매우 정확한 "타이머"인 마이크로컨트롤러 내부의 타이머를 사용해야 합니다.

10마이크로초 또는 100마이크로초마다 인터럽트를 생성하도록 타이머를 설정할 수 있습니다. 인터럽트 서비스 프로그램에서는 변수를 사용하여 카운트하고 이 카운터의 값에 따라 서보에 연결된 IO 포트(예: P1.0)의 레벨을 변경합니다.

예를 들어 1.5ms 동안 하이 레벨을 출력하려면 타이머가 100마이크로초마다 한 번씩 인터럽트를 걸면 15번의 인터럽트 동안 하이 레벨을 유지해야 합니다. 이러한 방식으로 우리는 서보가 인식할 수 있는 PWM 파동을 "결합"할 수 있습니다. 처음 코드 작성을 시작할 때는 다소 혼란스러울 수 있지만, 직접 디버깅에 성공하면 성취감은 비교할 수 없을 정도로 뛰어납니다.

51 마이크로컨트롤러에 어떤 스티어링 기어가 더 적합합니까?

시장에는 다양한 유형의 서보가 있습니다. 51 마이크로 컨트롤러의 "파트너" 선택은 주로 작동 전압과 신호 요구 사항이라는 두 가지 사항에 따라 달라집니다. 가장 일반적으로 사용되는 것은 SG90과 같은 아날로그 서보입니다. 신호 요구 사항은 위에서 언급한 표준 PWM이며 이는 매우 친숙합니다.

이러한 서보는 일반적으로 51 마이크로컨트롤러의 표준 작동 전압과 정확히 일치하는 5V 전압에서 작동합니다. 마이크로컨트롤러의 IO 포트 드라이버를 직접 사용할 수 있나요? 서보가 작동할 때 전류가 상대적으로 커서 마이크로컨트롤러 핀이 손상될 수 있으므로 그렇게 하지 않는 것이 가장 좋습니다.

더 안전한 접근 방식은 절연을 위해 3극관이나 특수 레벨 변환 칩을 사용하는 것입니다. 마이크로 컨트롤러의 IO 포트는 제어 신호를 구동 회로에 출력한 다음 구동 회로가 스티어링 기어에 회전하도록 "명령"합니다. 이러한 방식으로 마이크로 컨트롤러는 "브레인" 명령 출력만 담당하고 어려운 작업은 드라이버 부분에 맡겨 시스템을 더욱 안정적이고 신뢰할 수 있게 만듭니다.

스티어링 기어의 회전이 불안정한 이유는 무엇입니까?

많은 친구들이 처음으로 서보를 돌릴 때 격렬하게 흔들리거나 반 비트 느리게 반응하는 것을 발견할 수 있습니다. 이는 전원 공급 장치 문제일 가능성이 높습니다. 서보가 시작되고 잠길 때 현재 영향을 과소평가할 수 없습니다. 전원 공급이 부족하면 전압이 낮아지고 마이크로컨트롤러가 재설정되거나 서보가 비정상적으로 작동하게 됩니다.

해결책은 간단합니다. 서보에 별도로 전원을 공급하는 것입니다! 더 나은 품질의 5V 전원 공급 장치를 사용하고 전원 접지(GND)와 마이크로 컨트롤러 접지를 함께 연결하여 공통 기준 전위를 갖도록 합니다. 그러면 마이크로 컨트롤러의 전원 공급 장치와 서보의 전원 공급 장치를 분리하여 간섭을 효과적으로 피할 수 있습니다.

또한 PWM 주기가 20밀리초로 엄격하게 안정적인지 확인하세요. 다른 작업으로 인해 프로그램이 차단되어 펄스 주기가 부정확해지면 서보도 진동합니다. 타이머 인터럽트 우선순위를 충분히 높게 유지하는 것이 안정적인 신호를 생성하는 열쇠입니다.

코드를 사용하여 여러 각도에서 정밀한 제어를 달성하는 방법

나는 서보가 천천히 0도에서 180도로 회전했다가 다시 돌아오길 원합니다. 코드를 어떻게 작성해야 하나요? 펄스 폭 매핑 기능에 대한 각도를 정의할 수 있습니다. 예를 들어 0도는 0.5ms 하이 레벨에 해당하고 180도는 2.5ms에 해당합니다. 그러면 90도는 1.5ms입니다.

메인 루프에서는 for 루프를 사용하여 각도 변수를 0에서 180까지 증가시키고 1도씩 변경될 때마다 PWM 비교 값을 재설정할 수 있습니다. 서보가 물리적으로 회전하려면 각 각도 사이에 15~20밀리초의 지연과 같은 약간의 시간이 남아 있어야 합니다. 이렇게 하면 동작이 일관되고 부드러워 보입니다.

보다 유연하게 하기 위해 서보 제어를 다음과 같은 함수로 캡슐화할 수 있습니다.무효 (문자 각도), 각도 값을 전달하면 PWM 매개변수가 함수 내에서 자동으로 계산되고 업데이트됩니다. 이렇게 하면 팔을 들거나 카메라를 돌리는 등 나중에 어떤 동작을 할지 제어하고 싶을 때 이 함수만 호출하면 되며 메인 프로그램이 매우 상쾌해집니다.

여러 개의 서보를 제어할 때 주의할 점은 무엇입니까?

다중 자유도 로봇 팔을 만드는 등 프로젝트에서 여러 서보를 동시에 제어해야 하는 경우 상황이 좀 더 복잡해집니다. 51 마이크로 컨트롤러에는 리소스가 제한되어 있으므로 각 서보에 독립적인 하드웨어 PWM을 장착하는 것은 불가능합니다.

하지만 걱정하지 마세요. 소프트웨어 시뮬레이션을 계속 사용할 수 있습니다. 핵심 아이디어는 여전히 타이머 인터럽트에서 "타임 슬라이스" 개념을 사용하는 것입니다. 예를 들어, 10밀리초 주기를 설정하고 이 주기 내에 각 서보는 필요한 펄스 폭을 차례로 출력합니다. 첫 번째 서보의 펄스를 처리한 후 즉시 두 번째 서보의 펄스 출력으로 전환하십시오.

이를 위해서는 타이머 인터럽트 처리 기능이 매우 효율적이어야 하며 지연이나 복잡한 계산을 수행할 수 없어야 합니다. 일반적인 접근 방식은 각 서보의 현재 목표 펄스 폭을 저장하는 배열을 만드는 것입니다. 인터럽트에서 테이블을 확인하여 현재 서비스 중인 서보의 일련번호에 따라 IO 포트를 설정하고 정확한 시간을 측정합니다. 이러한 방식으로 하나의 타이머는 여러 서보를 "별도로" 관리할 수 있습니다. 동시에 완전히 움직일 수는 없지만 인간의 눈은 이 작은 시간차를 감지할 수 없습니다.

이것을 보고 51 마이크로 컨트롤러를 사용하여 서보를 제어하는 ​​방법에 대한 명확한 아이디어가 이미 있습니까? 원칙부터 선택, 코드 구현까지 모든 단계가 실제로 매우 흥미롭습니다. 지금 당장 아이디어가 떠오르면 컴퓨터를 켜고 마이크로 컨트롤러 개발 보드를 꺼내서 직접 연결해 보는 것이 좋습니다. 처음으로 코드의 명령에 따라 서보가 정확하게 회전할 때의 놀라운 느낌은 창조의 기쁨입니다.

서보와 마이크로 컨트롤러를 사용하여 어떤 종류의 장치를 가장 조립하고 싶습니까? 햇빛을 자동으로 추적하는 장치인가요, 아니면 그림을 그릴 수 있는 작은 로봇인가요? 의견을 공유하려면 댓글 영역에 메시지를 남겨주세요. 함께 소통하고 더 나은 불꽃을 만들 수 있을지도 모릅니다! 이 기사가 도움이 되었다면 이 기사가 필요한 더 많은 친구들과 좋아요를 누르고 공유하는 것을 잊지 마세요.

업데이트 시간:2026-02-24

미래에 힘을 실어주다

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

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