ROS 용어
Node
최소 단위의 실행 가능한 프로세스
개발자가 마음대로 나눔(하나로 묶어버릴수도 있지만 그럼 ROS의 장점을 이용못함.)
ex) 영상 촬영, 노이즈 제거 필터1, 필터2, 식별 …
Package
하나 이상의 노드, 노드 실행을 위한 정보 등을 묶어 놓은 것
쉽게 말해 그냥 프로그램?
ex) 얼굴 인식 출입 관리
Message
메시지를 통해 노드간의 데이터를 주고받게 된다
(int, float, point, bool)변수형태, 메시지안에 메시지, 배열과 같은 구조도 사용
메시지의 종류
Topic
publisher → subscriber
단방향 메시지, 연속성 방식
1:N, N:1, N:N 도 가능
Service
양방향 메시지, 일회성 방식
요구와 그에 따른 응답
Action
양방향 메시지
Service와 비슷, 차이점은 중간의 피드백
노드간 메시지 통신 과정
- 마스터 구동
- 노드1 구동
- 노드2 구동
- 노드2 정보를 노드1에 알림
- 노드1에 접속 요청
- 접속 응답
- TCP 접속
- 메시지 전송(topic)
- 서비스 요청 및 응답(service or action)
https://wiki.ros.org/ 에 가면 이것저것 볼 수 있다~
ROS 명령어
셸 명령어
roscd(changes directory) - 디렉토리 이동
rosls(lists files) - 파일 목록 확인
rosed(editor) - 파일 편집
roscp(copies files) - 파일 복사
rospd(pushd) - 디렉토리 인텍스에 디렉토리 추가
rosd(directory) - 디렉토리 인덱스 확인
실행 명령어
roscore(core) - master, rosout(로그기록), parameter server(파라미터 관리)
rosrun(run) - 노드 실행
roslaunch(launch) - 노드 여러 개 실행
rosclean(clean) - 로그 파일 검사or삭제
정보 명령어
rostopic(topic) - 토픽 정보 확인
rosservice(service) - 서비스 정보 확인
rosnode(node) - 노드 정보 확인
rosparam(parameter) - 파라미터 정보 확인, 수정
rosbag(bag) - 메시지 기록, 재생
rosmsg(msg) - 메시지 정보 확인
rossrv(srv) - 서비스 정보 확인..?
rosversion(version) - 패키지 및 릴리즈 버전 정보 확인
roswtf(wtf) - 시스템 검사
catkin 명령어
catkin이란? 컴파일 빌드 관련 시스템
catkin_create_pkg - 패키지 자동 생성
catkin_make - 캐킨 빌드 시스템에 기반을 둔 빌드
catkin_eclipse - 캐킨 빌드 시스템으로 생성한 패키지를 이클립스에서 사용할 수 있게 변경
catkin_prepare_release - 릴리즈할 때 사용되는 로그 정리 및 버전 태깅
catkin_gererate_chanelog - 릴리즈할 때 changelog.rst 파일 생성 또는 업데이트
catkin_init_workspace - 캐킨 빌드 시스템의 작업 폴더 초기화
catkin_find - 캐킨 검색
패키지 명령어
rospack(package) - 패키지 관련 정보 보기
rosinstall(install) - 추가 패키지 설치
rosdep(dependencies) - 의존성 파일 설치
roslocate(locate) - 패키지 정보 관련 명령어
roscreate-pkg(create pkg) - 패키지 자동 생성
rosmake(make) - 패키지를 빌드
뭐 이런 명령어들이 있다~ 차차 사용하며 알아가자~
ROS 도구
RViz (visualization tool)
3D 시각화툴
센서 데이터의 시각화
로봇 외형의 표시와 계획된 동작을 표현
urdf
내비게이션
매니퓰레이션
원격제어
RQT
종합 GUI 툴
image_view
graph
plot
bag
Gazebo
3D 시뮬레이터
물리 엔진 탑재(여러 물리 엔진 선택 가능)
open source
센서 탑재로 불러오기 가능
출처 : https://youtu.be/skqzz_xQQXg?si=OJZN5HCiiBE9P4rz, https://youtu.be/5RBqGt1hvpM?si=E0XzbUSNXuQCiudV, https://youtu.be/fB2YINZOIng?si=upXPYGBcOVTGt_jr
'FOSCAR-(Autonomous Driving) > ROS 스터디' 카테고리의 다른 글
[2025 ROS 스터디] 황희찬 #2주차- ROS 용어,명령어,도구 (0) | 2025.01.22 |
---|---|
[2025 ROS 스터디] 이승찬 #2주차 - ROS의 컨셉 / 명령어와 도구 (0) | 2025.01.22 |
[2025 ROS 스터디] 김예찬 #1주차 - ROS 개요 및 설치 (0) | 2025.01.21 |
[2024 ROS 스터디] 이호휘 #2주차-ROS의 용어/명령어/도구 (0) | 2025.01.19 |
[2025 ROS 스터디] 이성빈 #2주차 - ROS용어,명령어,도구 (0) | 2025.01.19 |