로봇 / 실물 검증 예정
설계와 제어를 연결하는 로봇 작업
하드웨어 명세에서 제어 코드까지. 시뮬레이션과 실물 검증 단계를 구분해 개발한다.
설계에서 코드로
FTC 코드 워크플로는 Fusion에서 내보낸 설계를 robot.yaml 하드웨어 명세로 옮긴다. 생성한 Java 코드는 빌드와 테스트, 명세 대조를 통과해야 하며, 이후 FTC Dashboard로 측정하고 튜닝하는 단계로 이어진다.
로봇 없이 연습할 수 있는 모의 Dashboard를 마련했다. 로봇을 움직이는 명령은 사람이 매번 확인하며, 이 워크플로는 대회 경기 중에는 사용하지 않는다. 실제 Control Hub에서의 검증이 남아 있다.
외란을 추정하는 제어
리프트의 위치와 플라이휠의 속도 제어에는 자기외란억제제어(ADRC)를 적용했다. 확장 상태 관측기로 중력과 마찰, 전압 강하에 의한 외란을 추정해 보상하는 구조다.
부하를 늘린 시뮬레이션에서 ADRC의 오차는 약 0.2였고, 외란을 추정하지 않는 PD 제어의 오차는 약 39였다. 이 값은 해당 시뮬레이션 조건의 비교 결과이며 실물 구동 검증이 남아 있다.
자율주행 로봇
학교 축제 전시용 R2-D2 로봇은 ESP32가 모터 PID와 엔코더, IMU를 다루고 Raspberry Pi 4가 지도 작성과 내비게이션을 맡도록 구성했다. 자율주행과 게임패드 조종은 twist_mux로 중재하며 수동 조종을 우선한다.
패키지 8종과 펌웨어, Gazebo 시뮬레이션의 초안을 작성했으며 컴파일과 실기 검증이 남아 있다. 별도의 차동구동 로봇 설계에서는 Pico가 모터를 제어하고, 200 ms 안에 명령이 오지 않으면 모터를 정지하도록 정했다.