rqt_console 사용해보기

평범한컴공생·2022년 8월 4일
0

[ROS2]

목록 보기
10/19
post-thumbnail

배경

rqt_console은 로그 메시지를 보는 GUI 툴이다. 로그 메시지는 터미널에서도 볼 수 있지만, rqt_console을 이용하면 메시지를 필터링하고, 파일을 저장하여 불러오는 등 다양한 작업을 할 수 있다.

작업

1. 설정

다음 명령어로 rqt_console을 실행한다.

ros2 run rqt_console rqt_console

rqt_console에서 첫 번째 구역은 로그 메시지가 출력되는 곳이다. 가운데 구역은 메시지를 필터링할 수 있다. 오른쪽의 +버튼으로 필터를 추가할 수도 있다. 마지막 구역은 입력한 문자열이 포함된 로그 메시지를 강조하여 출력해 주는 곳이다. 가운데 구역처럼 +버튼으로 필터를 추가할 수 있다.

새 터미널을 열고 turtlesim을 실행하자.

ros2 run turtlesim turtlesim_node

2. rqt_console에서 메시지

로그 메시지를 만들기 위해, 거북이를 벽에 충돌시켜 보자. 새 터미널을 열고 ros2 topic pub 명령을 수행하자.

ros2 topic pub -r 1 /turtle1/cmd_vel geometry_msgs/msg/Twist "{linear: {x: 2.0, y: 0.0, z: 0.0}, angular: {x: 0.0, y: 0.0, z: 0.0}}"

rqt_console에 경고 수준의 메시지가 출력되고 있다.

3.로그 레벨

ROS2의 로그 레벨을 심각성 수준으로 정렬하여 나타내면 다음과 같다.

Fatal (높음)
Error
Warn
Info
Debug

각 수준을 표현하는 방법에 대한 정확한 기준은 없지만 다음과 같다고 할 수 있다.

  • Fatal메시지는 손상을 막기 위해 프로그램을 중단시키는 오류이다.
  • Error메시지는 시스템이 제대로 작동하지 못하게 하는 중대한 사항을 보여준다.
  • Warn메시지는 실행에는 문제없지만, 예기치 않은 작업이나 결과가 나타낼 수 있음을 보여준다.
  • Info메시지는 정상적으로 실행되고 있는 시스템에서의 이벤트나 상태 업데이트를 시각적으로 보여준다.
  • Debug메시지는 실행 과정을 단계별로 자세히 설명해 준다.

일반적으로 Debug메시지는 Info보다 수준이 낮아 보이지는 않는다.

예를 들어 기본 레벨을 Warn으로 설정하면 Fatal메시지와 Error메시지, Warn메시지만 출력된다.

3.1 기본 레벨 설정

기본 로그 레벨을 설정할 수 있다.

ros2 run turtlesim turtlesim_node --ros-args --log-level WARN

기본 로그 레벨을 Warn으로 설정하면 turtlesim실행 시 나오는 Info레벨의 메시지가 나오지 않게 된다.

profile
학부 연구생(220627~)

0개의 댓글