티스토리 뷰

robot

[꼬부기/kobuki] navigation

별의 별 2021. 6. 25. 13:12

kobuki navigation 도전


네비게이션은 앞서 slam gmapping으로 만든 맵을 이용해 localization과 planning을 진행해 물체를 회피한다.\

localizaion

지도에서 로봇의 위치를 알기 위한 자신의 위치 추정

2d 거리 정보를 통해 로봇의 위치를 확률적으로 나타내는 몬테카를로 위치추정

 

AMCL(Adaptive Monte Carlo Localization)

 

 

경로계획(planning)은 두가지로 나뉜다.

1. global path plannig

    출발지에서 목적지까지 전체적인 경로

    로봇이 이동 가능한 영역, 로봇이 충돌하지 않는 영역 중심으로 전체 경로 탐색

2. local path planning

    로봇의 상대 위치 저보로 경로 계획

    DWA알고리즘 (로봇이 이동가능한 최대 속도 범위를 탐색 공간으로 정의) 이용

 


꼬부기에서 navigation을 하기 전!

다시한번 더 mapping을 복습

rosbag으로 저장해둔걸 다시 돌려서 mapping 을 해보자

이때 ros시간과 정보의 시간을 맞춰야함

 

 

 

ros time과 bag time이 다르면 다음처럼

messag removed because it is too old 라는 에러가 뜬다. 그럴땐

$rosparam set use_sim_time true

 

시뮬레이션 time을 맞추는 코드이다. 이 코드를 돌리고 gmapping을 해준다

 

rosbag을 실행시킬때도 --clock 추가해서 돌리고

$ rosbag play <파일> --clock

------------------------------------------------------------

navigation

21.06.22

해야할일

1. 키보드로 꼬부기 조정하면서 우선 localization

2. 키보드 끄고 planning(move_base)하기

그러면 navigation

 

원래 turtlebot3를 변경해서 했는데 localization은 되나 navigation이 안됨

---- 되는 것을 다운받아옴


하나의 launch 파일로 만들어서 쓴다.

kobuki_run의 kobuki_navigation.launch다

여기에 설정된 rviz도 동시에 실행하기위해 터틀봇3의 rviz들고와서 썼다.

$ roslaunch kobuki_run kobuki_navigation.launch

map file경로도 잘 설정해주 launch파일 잘 조절하면 됨.

여기에 여러 파라미터 들고와서 쓰는걸 볼 수 있다.

 

처음 파일을 git clone해서 들고왔을 땐 kobuki_test여서 다 kobuki_run으로 바꿨는데 실행이 안되서 여러 찾다보니

cmakelists.txt랑 package.xml의 kobuki_test-> kobuki_run으로 바꾸니 됐음


 

gmapping도 마찬가지로 하나로 묶었다.

$ roslaunch kobuki_run gmapping.launch
  <arg name="set_base_frame" default="base_footprint"/>




<!-- Gmapping -->
  <node pkg="gmapping" type="slam_gmapping" name="kobuki_slam_gmapping" output="screen">
    <param name="base_frame" value="$(arg set_base_frame)"/>
  </node>
  

다음처럼 노드를 실행시키는 launch 파일 코드

저 코드는

$ rosrun gmapping slam_gmapping _base_frame:="base_footprint"

터미널에서 이걸 실행 시키는것과 같음

 

 

'robot' 카테고리의 다른 글

[gmapping map size] 맵 사이즈 변경  (0) 2021.07.12
[kobuki] 내비게이션 파라미터 조정  (0) 2021.07.05
[꼬부기/kobuki] slam  (0) 2021.05.26
모바일 로봇 공부하기  (0) 2021.05.03
바퀴 감속비 구하기  (0) 2021.03.11
댓글