mikeferguson/robot_calibration

Generic calibration for robots

해결하는 문제

이 프로젝트는 3D 카메라 내부/외부 파라미터, 관절 각도 오프셋, 로봇 프레임 오프셋의 오차를 줄이기 위해 로봇 파라미터를 보정하는 ROS2 노드 세트를 제공합니다. 또한 휠 지름, 트랙 너비, 자이로 게인, 자석계 하드 아이언 보정과 같은 모바일 베이스 튜닝도 지원합니다.

작동 방식

보정은 주로 두 단계로 이루어집니다:

  1. 데이터 캡처: 로봇은 관절 위치와 '관측값'(카메라 또는 레이저 스캐너와 같은 센서가 감지한 점들)의 샘플을 캡처합니다. 환경 내 특정 타겟을 식별하기 위해 '피처 파인더'(예: CheckerboardFinder, PlaneFinder)를 사용합니다.
  2. 최적화: 시스템은 재투영 오차(다른 센서가 본 점의 자세 차이)를 최소화하도록 로봇 파라미터를 최적화합니다. 예를 들어, 카메라에서 본 체커보드의 위치를 로봇 암의 운동학 계산값과 일치시킵니다.

결과는 업데이트된 URDF 파일 또는 카메라 설정 YAML 파일로 내보내집니다.

대상 사용자

로봇의 물리적 하드웨어를 디지털 모델(URDF)과 정확히 일치시켜야 하는 ROS2 사용자인 로봇 공학자 및 개발자.

주요 기능

  • 다중 센서 지원: 체커보드(2D 및 3D), LED, 평면, 레이저 스캔용 파인더 포함.
  • 유연한 최적화: 3D 체인, 2D 카메라, 메시, 평면을 비교할 수 있는 다양한 오류 블록 지원.
  • 모바일 베이스 튜닝: 휠 기하학 및 자석계 오프셋을 보정하는 전용 노드.
  • 통합성: ROS 2 런치 파일로 감싸 사용 가능하며, bag 파일 기록을 지원하여 데이터 재수집 없이 최적화를 재실행할 수 있습니다.

관련

  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트