-
ROS2 유용한 명령어ROS/ROS2 2025. 1. 7. 19:05
1. Check env variables
printenv | grep -i ROS
ROS2 관련 환경 변수를 찾거나 Package의 위치를 찾을 수 있음.
echo $ROS_DOMAIN_ID # domain ID 확인 export ROS_DOMAIN_ID = <domain ID> # domain ID 설정
ROS_DOMAIN_ID를 확인하거나 설정할 수 있다.
humble에서 사용하는 환경변수
echo $ROS_LOCALHOST_ONLY export ROS_LOCALHOST_ONLY = <host_id>
노드 검색 범위 조절.
ROS_LOCALHOST_ONLY는 ROS2 통신을 로컬 호스트로만 제한할 수 있다.
jazzy에서 사용하는 환경변수
export ROS_AUTOMATIC_DISCOVERY_RANGE = local export ROS_AUTOMATIC_DISCOVERY_RANGE = subnet export ROS_AUTOMATIC_DISCOVERY_RANGE = global
노드 검색 범위 조절. (default: subnet)
- local
- 자동 검색 범위를 로컬 네트워크로 제한.
- 같은 물리적 네트워크에 있는 노드들만 탐지.
- Robot & Local workstation 간의 통신.
- subnet (default)
- 검색 범위를 하위 네트워크로 확장.
- 동일한 서브넷에 연결된 노드들까지 탐지 가능.
- global
- 검색 네트워크를 전체 네트워크로 확장.
- 네트워크에 연결된 모든 노드를 탐지하려고 시도.
- 네트워크 트래픽을 크게 증가시킬 수 있으므로 필요하지 않은 경우 피하는 것이 좋음.
2. ros2 run의 추가 명령어
ros2 run turtlesim turtle_teleop_key --ros-args --remap turtle1/cmd_vel:=turtle2/cmd_vel
- --ros-args
- ROS2 명령어에서 ROS 관련 추가 인자를 전달할 때 사용하는 옵션.
- ROS2의 remap, param set 등을 수행.
- --remap <current_name>:=<new_name>
- current_name topic을 new_name topic으로 remap.
<TODO>
'ROS > ROS2' 카테고리의 다른 글
ROS2 Service 기초 사용법 (0) 2025.01.13 ROS2 Topic 기초 사용법 (0) 2025.01.08 ROS2 Node 기초 사용법 (0) 2025.01.07 ROS2 DDS (Data Distribution Service) (0) 2025.01.06 _ROS2_Robot Operating System2 (0) 2024.05.24 - local