1. Setup
1.1 roscore
새 터미널에서 roscore이 running중인지 확인해보자!
roscore cannot run as another roscore/master is already running.
지난 튜토리얼에서 실행 중인 roscore을 그대로 두면, 이와 같은 오류가 난다.
이땐 하나의 roscore만 실행하면 된다 :)
1.2 turtlesim
귀여운 터틀심 사용해보자!
새 터미널에서 rosrun turtlesim turtlesim_node를 하면, TurtleSim창이 나타난다.
거북이 모양은 다양하므로, 모양이 다른 것에 걱정하지 않아도 됨!
1.3 거북이 키보드 teleoperation(원격 조작)
거북이가 arrow key(방향키)에 따라 조작이 되지 않는다면,
Turtle_teleop_key의 터미널 창을 선택하고 방향키를 조작해본다.
좌/우 방향키는 45도씩 회전하고, 앞/뒤 방향키는 일정 블록 이동하게끔 되어 있다.
2. ROS topics
turtlesim_node와 turtle_teleop_key nodes는 ROS topics을 통해 통신한다.
turtle_teleop_key는 topic에 대한 key strokes를 publishing을 한다. 반면, turtlesim은 key strokes를 수신하기 위해 같은 topic을 subscribe한다.
현재 실행 중인 node와 topic을 알려주는 rqt_graph를 사용해보자.
2.1 rqt_graph
시스템에서 일어나는 일에 대한 동적 그래프를 생성한다. rqt_graph는 rqt package의 일부이다.
처음 실행한다면, 아래와 같이 설치해야 한다!
$ sudo apt-get install ros-<distro>-rqt
$ sudo apt-get install ros-<distro>-rqt-common-plugins
새 터미널을 만들고
위와 같이 작성하면,
위와 같이 turtlesim이라는 ROS nodes를 원으로 나타낸 graph형태를 볼 수 있었다.
ROS tutorial의 예제 그림의 경우는 아래와 같다.
마우스를 갖다대면 색이 나타나는데,
아래와 같이, 원 형태의 ROS nodes는 파란색, 녹색 / topic은 빨간색으로 강조된다.
2.2 Introducing rostopic
rostopic 툴을 사용하면 ROS topics에 대한 정보를 얻을 수 있다.