roscore
rosrun pkg file.py
rosrun pkg exefile //roscpp
roslaunch pkg file.launch
패키지 폴더 하위에 src msg launch 함께 있다.
<launch>
<group ns = "ns1">
<node pkg="rospy_tutorials" type="talker" name="talker1" output="screen"/>
<node pkg="rospy_tutorials" type="listener" name="listener1" output="screen"/>
</group>
<group ns = "ns2">
<node pkg="rospy_tutorials" type="talker" name="talker2" output="screen"/>
<node pkg="rospy_tutorials" type="listener" name="listener2" output="screen"/>
</group>
</launch>
name: rqt graph에 표시되는 node 이름 설정하기. remapping이라고 생각하면 될듯. 메세지명은 변화 X
pkg: 패키지명
type: exe_file
group ns: namespace설정. ns하위로 각 노드와 토픽까지 들어가기 때문에 토픽도 어디 소속인지 구분 O
output=”screen” : 터미널창에 실행파일의 ROS_INFO 출력
[command line] roslaunch pkg *.launch —screen 모든 노드에 대해 ROS_INFO 출력
❗output=”screen” 이 부분은 프로그램이 (ex.publish 부분??) 터미널창에 출력되도록 설정하는 것을 말한다. 주로 디버깅을 위해 사용하는 부분이고 잘 동작한다면 터미널창이 더러우니 빼버리면 된다. 터미널에 보이지 않을 뿐 log file에 출력된다.
Ctrl C는 Linux Unix 계열 터미널에서 프로그램을 강제 종료 시킬 때 일반적인 방법이다. 따라서 launch 파일도 터미널에 Ctrl C가 입력되면 실행된 노드를 모두 닫고 마지막으로 roslaunch 자신을 종료한다. 물론 roscore까지 종료한다.