Notice
Recent Posts
Recent Comments
Link
«   2024/09   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30
Archives
Today
Total
관리 메뉴

원콩 클라우드

LiDAR-based SLAM; Cartographer 본문

F1Tenth/SLAM

LiDAR-based SLAM; Cartographer

onebeany 2024. 3. 17. 20:28

F1Tenth 플랫폼을 기반으로 하여 차량 LiDAR로 트랙 mapping을 시도하고자 하였다.
인터넷에 f1tenth용 cartographer가 있길래 해당 github repository를 클론하여 사용하였다. 하지만 SLAM 과정 중 문제가 있었다.

문제

  1. Cartographer를 이용한 SLAM에 있어서 trajectory에 문제 발생
    • 아래 이미지를 보면, 실제로는 반바퀴 회전한 차량이 rviz 상에서는 그보다 더 회전한 궤적으로 확인된다.
    • 토픽들을 분석해본 결과, /odom 토픽 메세지 중 y postion 발행에 문제가 있음을 파악했다.

여기에 영향을 미치는 요소들은 다양하게 있다고 생각했다.

  • vesc.yaml 파일의 여러 파라미터값들의 수치에 문제가 있을 경우
  • vesc나 motor 자체에 문제가 있을 경우
  • 해당 repository 소스 코드가 우리 프로젝트에 맞지 않을 경우

우선 1번, 2번 항목을 집중적으로 공략해봤다.

과정 및 해결 방법

  1. 하드웨어 단의 문제인지 소프트웨어 단의 문제인지 구별하기 힘들었다.
  2. 따라서 vesc 자체의 configuration 먼저 진행하여 vesc 자체에서 발행하는 데이터에 문제가 있었을 가능성을 좀 줄이고
  3. vesc yaml 파일에서 steering_anlge_to_servo_gain이나 steering_anlge_to_servo_offset, servo steering의 최대 최소 값 등을 적절히 수정함으로써
    1. F1Tenth build docs에 나온 calibration instruction을 충족시키면서 (physically)
    2. 실제 /odom 데이터에서 출력되는 여러 값들에 있어서도 physical한 부분과 적정 오차범위(2~3cm) 내에서 동기화될 수 있도록 조정할 수 있었음.
  4. Cartographer RVIZ 상에서도 trajectory가 실제 차량 이동 경로와 일치하는 모습을 보였음.
하지만 SLAM 자체에는 문제가 있었는데, 같은 맵을 계속 돌아도 조금만 다른 경로로 이동하면 lidar로 mapping하는게 누적돼서 보였다. 아마 submap_list에 frame이 계속 누적되는 것 같다는 생각이 들었다. 정확히 무엇이 문제인지 파악은 현재 어려우나, 뭔가 localization에 있어서 부족한 부분이 있지 않나 추측됨. 따라서 UPENN에서 제공하는 SLAM 자료들을 참고해서 새롭게 SLAM 시도해볼 예정이다. particle filter나 지도 교수님께서 제안하신 loop closing 등을 적용해봐야겠다.

결과

우리 팀이 설치한 트랙 / Mapping 시도한 결과

'F1Tenth > SLAM' 카테고리의 다른 글

LiDAR-based SLAM; SLAM Toolbox  (0) 2024.04.22