Command-Line Tools
rospack, roscd, rospd, rosls, rosed, roscp, rosdep, roswf, catkin_create_pkg, catkin_make, roscore, rosrun, ...
ROS 셸 명령어
roscd : ros+cd(changes directory) → 지정한 ROS 패키지의 디렉터리로 이동
ROS 실행 명령어
roscore : ros+core → master(ROS 네임 서비스), rosout(로그 기록), parameter server(파라미터 관리)
rosrun : ros+run → 노드 실행
서브스크라이버 노드 구동
$rosrun 패키지이름 노드이름
→ 실행되자마자 서브스크라이버 노드 정보를 마스터에게 전달한다. (노드 이름, 토픽 이름, 어떤 형태의 메시지를 옮길 건지, ip 정보와 port 정보)
퍼블리셔 노드 구동
$rosrun 패키지이름 노드이름
→ 마찬가지로 노드 이름, 토픽 이름, 어떤 형태의 메시지를 옮길 건지, ip 정보와 port 정보들을 마스터에게 전달한다.
→ 그러면 마스터는 토픽 이름이랑 메시지 형태를 매칭해보고 맞으면 서브스크라이버 노드에게 새로운 퍼블리셔 정보를 전달해준다.
→ 서브스크라이버 노드는 마스터로부터 받은 퍼블리셔 정보를 이용해 직접 TCPROS 접속 요청을 한다.
→ 퍼블리셔 노드가 서브스크라이버 노드에 접속 응답을 한다. (접속 응답에 해당되는 자신의 TCP URL 주소와 포트 번호를 전송한다.)
→ TCP 접속해 TCPROS를 이용해서 퍼블리셔 노드와 직접 연결한다. (서버가 XMLRPC에서 TCPROS로 변경된다)
→ 접속한 후부터는 메시지 전송이 된다. 퍼블리셔 노드는 서브스크라이버 노드에게 메시지를 전송한다. (topic, service 등등)
roslaunch : ros+launch → 노드를 여러 개 실행 및 실행 옵션 설정
rosclean: ros+clean → ROS 노드 파일을 검사하거나 삭제
ROS 정보 명령어
rostopic : ros+topic → ROS 토픽 정보 확인
rosservice : ros+service → ROS 서비스 정보 확인
rosnode : ros+node → ROS 노드 정보 확인
rosparam : ros+param(parameter) → ROS 파라미터 정보 확인, 수정
rosbag : ros+bag → ROS 메시지 기록, 재생
rosmsg : ros+msg → ROS 메시지 정보 확인
rossrv : ros+srv → ROS 서비스 정보 확인
ROS catkin 명령어
catkin_create_pkg → 패키지 자동 생성
catkin_make → catkin 빌드 시스템에 기반을 둔 빌드
catkin_eclipse → catkin 빌드 시스템으로 생성한 패키지를 이클립스에서 사용할 수 있게 변경
catkin_prepare_release → 릴리즈할 때 사용되는 로그 정리 및 버전 태깅
catkin_generate_changelog → 릴리즈할 때 CHANGWLOG.rst 파일 생성 또는 업데이트
catkin_init_workspace → catkin 빌드 시스템의 작업 폴더 초기화
ROS 패키지 명령어
rospack : ros+pack(package) → ROS 패키지와 관련된 정보 보기
rosinstall : ros+install → ROS 추가 패키지 설치
rosdep : ros+dep(dependencies) → 해당 패키지의 의존성 파일 설치
'ROS' 카테고리의 다른 글
ROS - 노드 통신을 위한 패키지 만들기 (0) | 2022.03.01 |
---|---|
ROS - roslaunch (0) | 2022.03.01 |
ROS - turtlesim, publisher, subscriber (0) | 2022.03.01 |
ROS 설치 및 환경설정 (0) | 2022.02.28 |
ROS 구조 및 기능 (0) | 2022.02.28 |