659.107 다중 로봇 시스템에서의 TF 관리 전략
1. 개요
다중 로봇 시스템(Multi-Robot System)에서는 복수의 로봇이 각자의 TF2 변환 트리를 유지하면서 상호 간의 좌표 관계를 파악하여야 한다. 이는 프레임 이름 충돌, 변환 트리 통합, 네트워크 대역폭 관리 등의 추가적인 과제를 야기한다.
2. 핵심 과제
| 과제 | 설명 |
|---|---|
| 프레임 이름 충돌 | 복수 로봇이 동일한 이름(예: base_link)을 사용하면 TF2 트리에서 충돌 발생 |
| 트리 통합 | 각 로봇의 독립적 트리를 공통 기준 프레임 하에 통합 |
| 네트워크 부하 | 모든 로봇의 변환 데이터가 네트워크에 전파되면 대역폭 소모 증가 |
| 시간 동기화 | 로봇 간의 시스템 시계 차이가 변환 조회에 영향 |
3. 관리 전략
3.1 네임스페이싱
각 로봇의 모든 토픽, 서비스, 프레임에 고유한 네임스페이스를 적용한다.
robot1/base_link, robot1/odom, robot1/laser_link
robot2/base_link, robot2/odom, robot2/laser_link
3.2 공통 글로벌 프레임
모든 로봇이 공유하는 글로벌 프레임(map 또는 earth)을 설정하여 로봇 간의 상대 위치를 계산할 수 있게 한다.
map (공유)
├── robot1/odom → robot1/base_link
└── robot2/odom → robot2/base_link
3.3 TF 네임스페이스 리매핑
런치 파일에서 네임스페이스를 적용하면 프레임 이름에 자동으로 접두사가 추가된다.
Node(
package='robot_state_publisher',
executable='robot_state_publisher',
namespace='robot1',
parameters=[{
'robot_description': robot_description,
'frame_prefix': 'robot1/',
}],
)
3.4 선택적 TF 브리징
모든 로봇의 모든 변환을 전파하는 대신, 필요한 변환만 선택적으로 전달하는 TF 브리지를 구현한다. 이를 통하여 네트워크 대역폭을 절약할 수 있다.
4. 요약
다중 로봇 시스템에서의 TF 관리는 네임스페이싱을 통한 프레임 이름 충돌 방지, 공통 글로벌 프레임을 통한 트리 통합, 그리고 선택적 TF 브리징을 통한 네트워크 부하 관리의 세 가지 전략으로 구성된다. 이러한 전략의 적절한 조합이 확장 가능하고 효율적인 다중 로봇 TF 시스템의 핵심이다.
참고 문헌 및 출처
- T. Foote, “REP 105 – Coordinate Frames for Mobile Platforms,” ROS Enhancement Proposals, https://www.ros.org/reps/rep-0105.html (2010, 최종 갱신 2022)
- S. Macenski et al., “Robot Operating System 2: Design, Architecture, and Uses in the Wild,” Science Robotics, vol. 7, no. 66, 2022.