[ROS2] RQT
각각의 터미널에서 turtlesim_node와 turtle_teleop_key를 실행한다
turtle_keleop_key를 실행한 터미널에서 방향키로 거북이를 움직일 수 있다
1
2
3
ros2 run turtlesim turtlesim_node
ros2 run turtlesim turtle_teleop_key
새로운 터미널에서 RQT를 실행해보자
1
rqt
rqt란?
ROS에서 노드의 상태, 토픽, 파라미터 등을 시각적으로 모니터링하고 디버깅할 수 있는 그래픽 툴
rqt_graph, rqt_console, rqt_plot 등 다양한 플러그인을 통해 노드 간 통신 흐름, 로그 메시지, 데이터 시각화 등을 지원
Plugins→Introspection→Node Graph 를 선택하면 각 노드의 관계가 표시된다
화살표는 각 노드에서 주고받는 토픽, 서비스, 액션 등이 표시된다
서비스를 호출해보자
Plugins→Services→Service Caller를 선택
서비스 목록에서 /turtle1/set_pen을 선택
표시된 type의 값을 변경하고 call을 누르면 거북이의 이동 경로 표시가 변경된다
서비스 목록에서 /spawn을 호출하면 새로운 거북이가 나타난다
이름은 turtle2로 지어줬다
만약 거북이의 위치가 잘못되서 문제 발생시 /kill 에서 turtle2를 입력하고 호출하면 삭제된다
거북이2를 조종해보자
새로운 터미널에 아래 커맨드를 입력하면 새로운 거북이를 조종할 수 있다
1
2
3
ros2 run turtlesim turtle_teleop_key --ros-args --remap turtle1/cmd_vel:=turtle2/cmd_vel
# --ros-args : ROS2에서 추가적인 ROS 인수 전달을 허용
# --remap turtle1/cmd_vel:=turtle2/cmd_vel : `turtle1`의 `cmd_vel` 토픽을 `turtle2`의 `cmd_vel` 토픽으로 리매핑 (토픽 경로 변경)
This post is licensed under CC BY 4.0 by the author.