Skip to main content
로봇 위치 추적 정확도 개선: 가속도 피드포워드 최적화 여정
Robotics

로봇 위치 추적 정확도 개선: 가속도 피드포워드 최적화 여정

6축 로봇 암의 가속도 피드포워드 제어를 최적화한 과정을 공유합니다. 수치 미분 대신 플래너 가속도 + LPF 조합으로 위치 RMSE 21.2% 개선과 토크 안정성을 동시에 달성했습니다.

WRWIM Robotics Team
·
roboticscontrol-systemsfeedforwardreal-timeros2

로봇 위치 추적 정확도 개선: 가속도 피드포워드 최적화 여정

기존 수치 미분 방식의 가속도 피드포워드(FF)로는 약 5% 개선에 그쳤습니다. 이론적으로 기대한 것보다 훨씬 낮은 수치입니다.

핵심 질문: "모션 플래너의 가속도를 직접 사용하면 얼마나 더 좋아질까?"

이 질문에 답하기 위해 6가지 가속도 획득 방법을 체계적으로 비교했습니다.

결론 먼저

방법Position RMSE개선율Torque RMSE
A0 (없음)0.001389 rad기준2.77 Nm
A1 (수치 미분)0.001141 rad+17.8%4.29 Nm (+55%)
A4 (LPF)0.001095 rad+21.2%2.68 Nm (-3%)

최적 방법: 플래너 가속도 + Low-Pass Filter (alpha=0.3)

  • 위치 정확도 21.2% 개선
  • 토크 변동 3% 감소 (기준선 대비)

시스템 아키텍처

핵심 발견: ROS2 JointTrajectoryController가 이미 Quintic Spline 보간으로 가속도를 계산하고 있었습니다. 별도 수치 미분이 필요 없습니다.

새로운 문제: Quintic Spline은 위치/속도/가속도의 연속성을 보장하지만, Jerk(가속도의 미분)는 불연속입니다. 웨이포인트 경계에서 고주파 성분이 발생하여 기계적 진동을 유발할 수 있습니다.

로봇 동역학 방정식

τ=M(q)q¨+C(q,q˙)q˙+g(q)+τfriction\tau = M(q)\ddot{q} + C(q, \dot{q})\dot{q} + g(q) + \tau_{friction}
설명FF와의 관계
M(q)q¨M(q)\ddot{q}관성 토크가속도 FF 대상
C(q,q˙)q˙C(q, \dot{q})\dot{q}코리올리/원심력 토크-
g(q)g(q)중력 보상 토크-
τfriction\tau_{friction}마찰 보상 토크-

6가지 가속도 획득 방법 비교

코드방법설명
A0None가속도 FF 없음 (기준선)
A1NumDiff속도 명령의 수치 미분 (기존 방식)
A2ABGAlpha-Beta-Gamma 필터
A3PlannerJTC 가속도 직접 사용 (필터 없음)
A4LPFJTC 가속도 + Low-Pass Filter
A5JerkLimitJTC 가속도 + Jerk 제한

수치 미분 (A1)의 문제

acceleration[k] = (velocity[k] - velocity[k-1]) / dt;
문제원인결과
위상 지연이산 미분은 현재와 과거 샘플만 사용실제 가속도보다 지연된 값 출력
노이즈 증폭미분 연산이 고주파 성분을 증폭토크 변동 55% 증가

Low-Pass Filter (A4)

플래너 가속도를 직접 사용하면(A3) 웨이포인트 경계에서 Jerk 불연속이 발생합니다. LPF는 이 고주파 성분을 제거하여 부드러운 가속도 신호를 만듭니다.

y[k] = alpha * x[k] + (1 - alpha) * y[k-1];

즉, 새 출력 = (alpha × 새 입력) + ((1-alpha) × 이전 출력) 입니다.

변수의미
x[k]새로 들어온 가속도 값
y[k-1]이전 필터 출력
alpha새 값 반영 비율 (0~1)

alpha=0.3이면 새 값 30% + 이전 값 70%로, 급격한 변화가 완화됩니다.

alpha와 차단 주파수의 관계 (fsf_s = 샘플링 주파수 1kHz, fcf_c = 차단 주파수):

fcαfs2πf_c \approx \frac{\alpha \cdot f_s}{2\pi}

fcf_c 이하 주파수는 통과하고, 이상은 감쇠됩니다.

Alpha차단 주파수특성
0.1~16 Hz과도한 필터링, 응답 지연
0.2~32 Hz안정적, 약간의 응답 지연
0.3~48 Hz최적 균형점
0.5~80 Hz빠른 응답, 토크 증가 시작
0.7~112 Hz필터링 약함, 토크 11% 증가

실험 결과

1차 실험: 6가지 방법 비교

6가지 방법 비교

Position RMSE(좌)와 Torque RMSE(우) 비교. A4(LPF)가 최적 균형점

Position RMSE 순위:

순위방법RMSE (rad)개선율
1A4 (LPF)0.001190+16.0%
2A2 (ABG)0.001212+14.4%
3A5 (Jerk)0.001231+13.1%
4A1 (NumDiff)0.001297+8.4%
5A3 (Planner)0.001302+8.1%
6A0 (None)0.001416기준

Torque RMSE:

방법Torque RMSE평가
A5 (Jerk)2.61 Nm안정
A4 (LPF)2.63 Nm안정
A3 (Planner)2.64 Nm안정
A0 (None)2.76 Nm기준
A1 (NumDiff)4.15 Nm+50% (경고)
A2 (ABG)5.19 Nm+88% (탈락)

A2(ABG) 탈락 이유: 위치는 좋지만 토크 변동이 너무 큽니다.

2차 실험: LPF 파라미터 튜닝

LPF 트레이드오프

alpha 값에 따른 Position RMSE vs Torque RMSE 트레이드오프. alpha=0.3 선택

Alpha차단 주파수Position RMSEvs alpha=0.2Torque RMSE
0.1~16 Hz0.001227 rad+1.0%2.85 Nm
0.2~32 Hz0.001240 rad기준2.69 Nm
0.3~48 Hz0.001118 rad-9.8%2.76 Nm
0.5~80 Hz0.001150 rad-7.3%2.97 Nm
0.7~112 Hz0.001071 rad-13.6%2.99 Nm

alpha=0.3 선택 이유:

  • Position 개선: alpha=0.2 대비 9.8% 개선
  • Torque 안정: 기준선(2.77 Nm)과 거의 동일한 2.76 Nm
  • 안전 마진: alpha=0.7은 토크 11.2% 증가

3차 실험: 최종 벤치마크

최종 벤치마크

A0(기준), A1(수치 미분), A4(LPF) 최종 비교

Position 추적 성능:

방법Position RMSE표준편차개선율
A4 (LPF)0.001095 rad0.000087+21.2%
A1 (NumDiff)0.001141 rad0.000064+17.8%
A0 (None)0.001389 rad0.000071기준

Torque 안정성:

방법Torque RMSE표준편차평가
A4 (LPF)2.68 Nm0.37안정 (-3%)
A0 (None)2.77 Nm0.52기준
A1 (NumDiff)4.29 Nm1.04불안정 (+55%)

왜 플래너 가속도 단독(A3)으로는 부족한가?

플래너 가속도를 필터 없이 직접 사용하면 8.1% 개선에 그칩니다 (A4의 절반).

원인: 웨이포인트 경계에서 Jerk 불연속이 고주파 성분을 생성하여 컨트롤러에 부담을 줍니다.

왜 LPF(A4)가 Jerk Limiting(A5)보다 좋은가?

측면LPFJerk Limiting
응답 특성지수적 감쇠선형 램프
수렴 속도초기 빠른 응답, 점진적 수렴일정 속도 접근, 느린 수렴
예시: Δacc=20 rad/s², MAX_JERK=50 rad/s³빠름400ms 소요

웜업 효과

실험 중 웜업 효과를 발견했습니다:

조건웜업 전웜업 후차이
A3 (Planner)0.001532 rad0.001302 rad15% 개선

시사점: 콜드 스타트 시 성능이 15% 저하될 수 있습니다. 실제 로봇 운영에서 고려해야 합니다.

실험 조건

파라미터이유
테스트 관절J1 (어깨)최대 마찰(Fc=35Nm)로 FF 효과 극대화
속도 스케일0.3, 0.4, 0.5고속 조건에서 차이 명확화
가속도 스케일0.5고가속 조건
반복 횟수속도당 4회방향 균형 (정방향 2회 + 역방향 2회)
궤적±30도 토글표준 테스트 모션

핵심 정리

  1. 기존 수치 미분(A1)의 한계: 이산 미분의 위상 지연과 노이즈 증폭으로 토크 변동이 55% 증가합니다.

  2. ROS2 JTC가 이미 가속도를 계산합니다. 별도 수치 미분 없이 플래너 가속도를 직접 활용할 수 있습니다.

  3. Jerk 불연속 문제: 플래너 가속도를 필터 없이 사용하면 웨이포인트 경계의 고주파 성분이 성능을 저하시킵니다.

  4. 최적 방법: LPF (alpha=0.3)

    • Position RMSE: 21.2% 개선
    • Torque RMSE: 3% 감소
    • 위치 정확도와 토크 안정성을 동시에 개선
  5. 웜업 효과: 콜드 스타트 시 15% 성능 저하가 발생할 수 있습니다.

단순한 1차 Low-Pass Filter가 위치 정확도와 토크 안정성을 동시에 개선하는 최적 해법이었습니다.