ROS 2 시스템은 보통 여러 프로세스(또는 여러 기기)에 걸쳐 많은 노드가 동작한다. 노드를 하나씩 수동으로 띄우는 것은 금방 번거로워진다.
런치(Launch) 시스템은 한 번의 명령으로 여러 노드를 자동 실행하기 위한 것이다. 사용자가 시스템 구성을 기술하면, 그에 맞춰 실행한다.
구성에 포함되는 내용
- 어떤 프로그램을 실행할지
- 어디에서 실행할지
- 어떤 인자를 넘길지
- ROS 관례에 따른 설정으로, 구성만 바꿔 여러 곳에서 재사용하기 쉽게 하는 것
또한 런치 시스템은 실행된 프로세스의 상태를 모니터링하고, 상태 변화를 보고하거나 반응하는 역할도 한다.
위 내용은 모두 런치 파일(launch file) 에 적는다. 런치 파일은 XML, YAML, Python 중 하나로 작성할 수 있다. ros2 launch 명령으로 이 파일을 실행하면, 파일에 적힌 노드들이 모두 실행된다.
실습은 공식 Launch 튜토리얼(Creating a launch file 등)을 참고하고, 상세 사양은 Launch 문서를 참고하면 된다.