작성자: 박준규
최초작성 2023.01.03, 수정 2023.01.13
로봇 운영체제 강좌 : ROS 개념 정리 및 ROS/Concepts [Official Documentation]을 참고했습니다.
아무것도 모르는 사람이 적는 글이니 본인이 직접 공부하는게 좋을 수도 있습니다..
ROS Filesystem:
These are ROS resources that we can see on the disk.
- Packages
- Main unit for organizing software in ROS.
- May contain Nodes (ROS runtime processes), ROS-dependent library, datasets, config files, or anything that is useful organized together.
- Most atomic build item and release item in ROS.
- Metapackages
- specialized Packages that represent a group of related other packages.
- Package Manifests
- Provide metadata about a package (name, version, description, etc.)
- Repositories
- collection of packages which share a common VCS(version control system)
- Packages which share a VCS share the same version and can be released together using the catkin release automation tool bloom
- Message (msg) types
- Message descriptions
- define the data structures for messages sent in ROS.
- Services (srv) types
- Service descriptions
- define the request and response data structures for services in ROS.
ROS Computational Graph Level
The ‘Computational Graph’ is the P2P network of ROS processes that are processing data together.
The basic concepts are Nodes, Master, Parameter Server, Messages, Services, Topics, and Bags.
They all provide data to the ‘Computational Graph’ in different ways.
- Nodes
- Processes that perform computation
- ROS is designed to be modular - a robot control system is usually comprised of many nodes
- Ex. one node controls laser range finder, one node controls wheel motors, one node performs localization, one node provides graphical view of the system, etc.
- ROS node is written with the use of a ROS client library, such as roscpp or rospy
- Master
- The ROS Master provides name registration and lookup to the rest of the Computation Graph.
- Without the Master, nodes would not be able to find each other, exchange messages, or invoke services.
- Kind of like DNS?
- After initial step, the nodes communicate directly with each other. Does not pass through ROS Master.