ros2 param list·get
돌고 있는 노드의 설정값은 어떻게 들여다볼까?
준비
거북이와 키보드 노드를 먼저 띄웁니다
2강에서 한 것처럼 터미널 두 개에 거북이 노드와 키보드 노드를 띄웁니다. 파라미터 명령은 세 번째 새 터미널에서 칩니다. 새 터미널마다 source /opt/ros/jazzy/setup.bash가 되어 있어야 합니다(2강 3편).
따라 하기
list는 노드별로 이름을 보여 줍니다
ros2 param list는 지금 떠 있는 노드마다 이름을 적고, 그 아래에 그 노드의 파라미터 이름을 들여 써서 보여 줍니다. 노드 하나만 보려면 ros2 param list /turtlesim처럼 노드 이름을 붙입니다.
출력 일부만 보였습니다. … 자리에는 qos_overrides로 시작하는 줄과 start_type_description_service, use_sim_time이 있습니다.
읽는 법
어느 노드에나 있는 것과 그 노드만의 것
use_sim_time과 start_type_description_service는 ROS가 모든 노드에 붙입니다. use_sim_time은 시뮬레이터 시계를 쓸지 정하는 값으로 14강에서 씁니다. qos_overrides로 시작하는 줄은 C++(rclcpp) 노드에만 붙습니다(11강). 노드를 알려면 그 노드만의 파라미터를 봅니다.
turtlesim과 teleop은 C++ 노드라 qos_overrides가 보입니다. holonomic은 거북이가 옆으로도 움직이게 하는 설정입니다.
따라 하기
get은 타입과 값을 함께 알려 줍니다
형식은 ros2 param get <노드 이름> <파라미터 이름>입니다. ros2 param get /turtlesim background_g는 Integer value is: 86을 돌려줍니다. 값이 정수(Integer)라는 것까지 알 수 있습니다.
세 값의 뜻
빨강·초록·파랑을 섞으면 연못 색
세 파라미터는 빛의 세 가지 색을 0부터 255까지 얼마나 섞을지 정합니다. 파랑이 255로 가장 세서 연못이 파랗게 보입니다. 이 숫자가 바뀌면 연못 색도 바뀝니다.
더 자세히
describe는 설명과 범위까지
ros2 param describe /turtlesim background_r은 타입, 설명, 넣을 수 있는 범위를 보여 줍니다. 이 값은 0부터 255 사이의 정수만 받습니다. 노드를 만든 사람이 붙여 둔 정보입니다(4편).
설명 줄은 길어서 줄였습니다. 줄 끝의 \는 다음 줄로 이어 친다는 뜻입니다.
다음 편