Skip to content

Issue in SW

Spiraline edited this page Aug 5, 2021 · 3 revisions

Replanning을 반복하는 문제

미니카가 주행 중에 replanning을 진행하며 잠깐 멈추는 문제가 있음. 이후 주행 자체는 정상적으로 진행되나 보기에 주행이 잘 안 되는 것처럼 보이기 때문에 해결할 필요가 있음.


Rosbag 녹화 문제 (Resolved)

Autoware 설치 후 rosbag 녹화가 잘 되지 않는 문제 Autoware 내에 rosbag_controller가 있는데 코드의 baseline이 ROS kinetic (Ubuntu 16.04 호환) 기반임. 따라서 ROS melodic에서 기존 ROS의 rosbag package를 덮어써서 rosbag 녹화가 잘 되지 않음.

Autoware 내에서 해당 모듈을 지워서 아마 원래 순서대로 (setup.bash에서 해주는 대로) 실행해도 되지만, 만약 문제가 있다면 ~/.bashrc에서 sourcing할 때 ros를 가장 마지막에 하면 rosbag이 정상적으로 동작한다. 그러나 ros를 마지막에 하면 autoware 모듈이 안 돌아가기도 하기 때문에 rosbag을 녹화할 터미널만 source 순서를 다르게 하는 것을 권장한다.

Points map Quality (Resolved)

points_raw topic을 직접 ndt_mapping node에 넘겨주지 않고 voxel_grid_filter를 거친 뒤 filtered_points로 map을 만들게 하여 해결

미니카 기준 points map 만들 때의 parameter는 아래와 같다.

[voxel_grid_filter]

  • leaf size : 1
  • measurement range : 100
- TODO : ndt_mapping parameter 추가

제어 parameter tuning (Resolved)

pure_pursuit은 특정 거리 내의 waypoint들을 확인하여 가장 작은 값으로 다음 속력을 결정한다. 이 때 (lookahead ratio) * (현재 속도)가 minimum lookahead distance보다 작으면 minimum lookahead distance를 사용한다. 그런데 현재 미니카에서 속도가 튀기 때문에 이 거리 값이 너무 튀는 것으로 확인되어 lookahead ratio를 0으로 설정하였다. 그 외 속도에 따른 주행 성공한 parameter는 아래와 같다.

parameter

False End State (Resolved)

미니카가 정상적인 경로로 돌고 있는데 멈추면서 End state로 넘어가는 경우가 종종 발견됨. DecisionMaker.cpp (L220)에서 ReachEndOfGlobalPath 함수를 통해 global path를 모두 완주했는지를 판단하는데, 속도가 튐에 따라 남은 거리 값이 커진 것으로 판단. 남은 거리가 0.3m일 때에 end state로 넘어가도록 수정함. 추후 실차에서는 속도에 비례하게 값을 수정할 필요가 있음.