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

단 몇 줄의 코드만으로 서보가 앞뒤로 흔들리고 자유로운 회전을 달성할 수 있습니다.

게시됨 2026-03-25

이런 상황에 직면한 적이 있습니까?서보 기구당신이 구입한 제품은 한 방향으로만 회전할 수 있거나 몇 가지 고정된 각도에서만 멈출 수 있어 부드러운 앞뒤 스윙 효과를 완전히 얻을 수 없습니까? 걱정하지 마십시오. 이는 실제로 문제가 되지 않습니다.서보 기구하지만 우리가 작성한 프로그램은 충분히 "스마트"하지 않습니다. 오늘 우리는 몇 줄의 간단한 코드를 사용하여 다음을 만드는 방법에 대해 이야기하겠습니다.서보 기구앞뒤로 자유롭게 회전하여 작은 발명품을 즉각적으로 민첩하게 만들 수 있습니다.

스티어링 기어 회전의 기본 논리를 이해합니다.

스티어링 기어가 특정 각도에서 정확하게 정지할 수 있는 이유는 내부 모터와 각도 피드백 시스템에 달려 있습니다. 간단히 말하면, PWM 신호(즉, 펄스폭 변조 신호)를 받아 어느 위치로 이동하고 싶은지 결정한다. 일반적으로 신호 주기는 20밀리초이고 하이 레벨 시간은 0.5~2.5밀리초이며 이는 0~180도의 각도 범위에 해당합니다. 이 논리를 이해하면 프로그램을 작성할 때 "운전대"를 마스터한 것입니다. 서보가 회전하도록 하려면 해당 신호 값을 서보에 보내면 됩니다.

이러한 유형의 개발 보드를 사용하여 제어하는 ​​경우 복잡한 펄스 시간을 직접 계산할 필요가 없으며 미리 만들어진 라이브러리 기능을 호출하기만 하면 됩니다. 예를 들어,쓰다()기능하다Servo.h도서관, 당신은 쓰기만 하면 됩니다.write(90), 서보는 90도 위치로 회전합니다. 그래서 앞뒤로 자유롭게 회전하게 하려면 이 각도 값이 지정된 범위 내에서 반복적으로 변경되도록 하는 것이 핵심입니다.

앞뒤로 회전하는 가장 간단한 코드를 작성하는 방법

프로그래밍을 처음 접하는 경우 가장 기본적인 "뒤로 이동"부터 시작하면 됩니다. 먼저 변수를 사용하여 현재 각도를 저장한 다음 0도에서 시작하여 매번 1도씩 증가하여 180도까지 증가한 다음 매번 1도씩 감소시켜 다시 0도로 돌아가 완전한 앞뒤 스윙 주기를 완료합니다. 여기에 적절한 지연을 추가하는 데 주의하세요. 그렇지 않으면 서보가 너무 빠르게 회전하여 경련을 일으키는 것처럼 보입니다.

실제 작업에서 코드 구조는 실제로 매우 간단합니다. 먼저 서보 핀을 정의합니다.설정()함수를 작성한 다음 두 개를 작성합니다.~을 위한루프 인고리()기능. 한 루프는 각도를 증가시키고 다른 루프는 각도를 감소시킵니다. 각 루프 호출.write(각도)내부적으로 다음과 협력합니다.지연(15)회전 속도를 제어합니다. 이렇게 쓰여진 효과는 서보가 진자처럼 앞뒤로 부드럽게 회전한다는 것입니다.

속도와 각도 범위를 제어하는 ​​주요 매개변수

많은 친구들이 프로그램을 작성할 때 속도 제어라는 한 가지 세부 사항을 간과하는 경향이 있습니다. 서보가 더 느리게 회전하도록 하려면 다음과 같이 더 긴 지연을 추가할 수 있습니다.지연(30), 각 각도 변경 후에는 전체 움직임이 지연되는 것처럼 보입니다. 더 좋은 방법은 매번 각도 증분을 줄이는 것입니다. 예를 들어 매번 각도를 1도에서 0.5도로 변경합니다. 이렇게 하면 서보의 이동 궤적이 더욱 섬세해지고 기계적으로 더욱 아름답게 보일 것입니다.

각도 범위도 전적으로 귀하에게 달려 있습니다. 반드시 0에서 180으로 이동할 필요는 없으며 90에서 120도 사이에서 앞뒤로 회전시키면 됩니다. 이는 로봇 팔이나 작은 장식품의 특정 적용 시나리오에 특히 유용합니다. 시작 값과 끝 값을 수정하면 됩니다.~을 위한루프, 예를 들어for(angle=45; angle , 서보가 45도에서 135도 사이에서 왕복 운동하도록 합니다.

버튼이나 센서로 더 스마트하게 방향 전환하기

서보가 스스로 앞뒤로 회전하도록 놔두는 것만으로는 충분하지 않습니다. 외부 컨트롤을 추가할 수 있다면 더 흥미로울 것입니다. 버튼을 연결하고 서보를 누르면 앞뒤로 회전이 시작되고, 다시 누르면 현재 각도에서 정지할 수 있습니다. 또는 초음파 센서를 사용하여 앞에 있는 물체를 감지하고 물체가 접근하면 자동으로 스윙 동작을 트리거합니다. 이렇게 하면 "안녕하세요"라고 말하는 대화형 장치를 만들 수 있습니다.

이 기능을 구현하려면 프로그램에 몇 가지 판단 조건만 추가하면 됩니다. 먼저 센서 데이터를 읽고, 데이터 값을 기준으로 서보의 왕복 사이클을 실행할지 여부를 결정합니다. 여기에 약간의 트릭이 있습니다. 프로그램이 루프에 걸리는 것을 방지하기 위해 서보의 회전을 함수로 캡슐화한 다음 다음을 사용할 수 있습니다.만약에이 함수를 호출할지 여부를 결정하려면 메인 루프의 조건을 사용하세요. 이러한 방식으로 메인 프로그램은 서로 간섭하지 않고 센서 판독과 서보 제어를 동시에 처리할 수 있습니다.

이와 같은 일반적인 정체 및 지터 문제 해결

실제 디버깅에서는 서보가 흔들리거나 특정 각도에서 멈추는 상황이 발생할 수 있습니다. 이는 일반적으로 전원 공급 부족으로 인해 발생합니다. 서보의 순간 전류는 시작 및 방향 전환 시 상대적으로 큽니다. 개발 보드의 5V 핀을 통해서만 전원 공급 장치에 전원을 공급하는 경우 전압 불안정이 쉽게 발생합니다. 해결 방법도 매우 간단합니다. 1.5V 배터리 4개 또는 5V 2A 전원 어댑터와 같은 외부 전원 공급 장치를 찾으세요. 양극과 음극을 각각 서보의 빨간색과 갈색 선에 연결합니다. 동시에 개발 보드의 GND와 전원 공급 장치의 GND를 함께 연결하여 신호 기준 전압이 일정한지 확인합니다.

또 다른 상황은 프로그램에 추가된 지연이 충분하지 않다는 것입니다. 직후에 각도 값을 변경하면쓰다(), 서보가 지정된 위치에 도달하기 전에 새로운 명령을 받으면 이상한 경련 느낌이 발생합니다. 서보가 작업을 완료하는 데 충분한 시간을 가질 수 있도록 각 각도 변경 사이에 최소 15~20밀리초의 대기 시간을 두십시오. 이것이 앞서 우리가 추가해야 한다고 언급한 이유입니다.지연루프에.

간단한 스윙부터 창의적인 응용까지 고급 게임플레이

앞뒤로 뒤집기의 기본을 익힌 후에는 더 흥미로운 조합을 시도해 볼 수 있습니다. 예를 들어, 서보가 LED 조명과 협력하여 특정 각도로 회전할 때 다양한 색상의 조명을 켜도록 합니다. 또는 두 개의 서보를 사용하여 간단한 기계 팔을 형성하여 동기 또는 교대 스윙을 달성할 수 있습니다. 이러한 아이디어는 스마트 홈 장치, 어린이 장난감 개조 또는 예술 설치에 즉시 사용되어 제품의 재미와 상호 작용성을 즉시 향상시킬 수 있습니다.

또한 회전 모드와 타이밍을 저장하여 "동작 라이브러리"를 만들고 휴대폰의 Bluetooth 또는 적외선 리모컨을 사용하여 다양한 스윙 모드를 호출할 수도 있습니다. 이렇게 당신의 작업은 더 이상 반복적인 기계적인 움직임이 아니라, 장면에 따라 다양한 액션 자세를 보여줄 수 있는 가변적인 '표현'을 갖게 되어 사용자에게 더욱 풍부한 경험을 선사합니다.

서보를 사용하여 어떤 흥미로운 소규모 프로젝트를 진행하고 있나요? 사람들을 화나게 만드는 그런 종류의 프로그래밍 문제에 직면한 적이 있습니까? 댓글 영역에서 귀하의 이야기를 공유하거나 "Shenzhen Hengxing Micro Motor"를 직접 검색하여 보다 실용적인 스티어링 기어 제어 솔루션과 소스 코드 참조를 얻을 수 있으므로 다음 아이디어를 보다 원활하게 구현할 수 있습니다.

업데이트 시간:2026-03-25

미래에 힘을 실어주다

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

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