보행 제어
Stanford Pupper 4족 로봇 보행 제어 구조
프로젝트와 버전
이 저장소는 Raspberry Pi 기반 4족 로봇 Stanford Pupper와 Woofer의 제어 코드를 제공합니다. 걷기, 트로트 보행과 점프를 다룹니다. 공식 README에는 Pupper v1 지원 종료 안내가 있으므로, 이 자료를 현재 Pupper v3의 제작 지침으로 혼동하지 않도록 구분해야 합니다.
제어 프로그램의 흐름
주 프로그램 run_robot.py는 조이스틱 인터페이스, 제어기, 하드웨어 인터페이스가 반복 실행되는 구조입니다. 조이스틱 인터페이스는 UDP 입력을 로봇 명령으로 바꿉니다. 제어기는 휴식·걷기·트로트 같은 상태를 전환하고 서보 목표 위치를 생성합니다. 하드웨어 인터페이스는 이 목표를 PWM 듀티 사이클로 변환하여 모터 신호로 전달합니다.
지지와 스윙 단계
보행 스케줄러는 각 발이 지면을 지지할지, 다음 착지 위치로 이동할지를 결정합니다. 트로트에서는 대각선 다리 두 쌍이 번갈아 움직입니다. 지지 제어기는 원하는 몸체 속도의 반대 방향으로 발의 상대 속도를 계산합니다. 스윙 제어기는 지지 단계를 마친 발을 들어 다음 착지 지점으로 옮깁니다.
역기구학과 자료 활용
지지·스윙 제어기가 생성한 발 목표 위치는 몸체 기준 직교좌표입니다. 역기구학 모델이 이를 모터 관절 각도로 변환합니다. 본문과 PDF에 원본 제어 구조도를 싣고 Controller.py를 첨부했습니다. 이 저장소의 수집 범위에는 기계 CAD 도면이 없으며, 기구 제작과 부품 목록은 공식 제작 문서에서 별도로 확인합니다.
