- Concept
- 1 ROS Filesystem Level
- 2 ROS Computation Level
- 3 ROS Community Level
- 4 Name
- 4.1 Graph Resource Names
- 4.2 Package Resource Names
- 4.3 Code API
- Higher-level Concepts
- 1 Coordinate Frames /Transforms
- 2 Actions/Tasks
- 3 Message Ontology
- 4 Plugins
- 5 Filters
- 6 Robot Model
- Client Libraries
- 1 Main Client libraries
- 2 Experimental client libraries
- Technical Overview
- 1 Master
- 2 Parameter Server
- 3 Node
- 4 Topic Transports
- 5 Message serialization and msg MD5 sums
- 6 Establishing a topic connection
- 7 Establishing a service connection
ROS has three levels of concepts: the FIlesystem level, Computation Graph level, and Community level.
1 ROS Filesystem Levelpackage contains nodes, ROS-dependent library, configuration files, etc.
Metapackage contains a group of related packages
Package Manifests Manifests (package.xml)
Repositories A collection of packages which share a common VCS system
Message (msg) types MyMessageType.msg
Service (srv) types MyServiceType.srv
The basic Computation Graph concepts of ROS are nodes, Master, Parameter Server, messages, services, topics, and bags, all of which provide data to the Graph in different ways.
The ROS Community Level concepts are ROS resources includes Distribution, Repositories, ROS wiki, Bug Ticket System ,Mailing Lists, ROS Answers and Blog.
4 Name 4.1 Graph Resource Names 4.2 Package Resource Names 4.3 Code API Higher-level Concepts 1 Coordinate Frames /TransformsTF package
2 Actions/TasksActionlib package
3 Message OntologyThe Common_msg stack includes:
actionlib_msgs representing actions
diagnostic_msgs sending diagnostic data
geometry_msgs common geometric primitives
nav_msgs message for navigation
sensor_msgs representing sensor data
pluginlib provides a library for dynamically loading libraries in C++ code
5 Filtersfilters package
6 Robot Modelurdf package
Client Libraries 1 Main Client librariesroscpp C++ client library
rospy Python client library
roslisp a client library for LISP
- Subscriber starts
- Publisher starts
- Subscriber registers with the Master. (XMLRPC)
- Publisher registers with the Master. (XMLRPC)
- Master informs Subscriber of new Publisher. (XMLRPC)
- Subscriber contacts Publisher to request a topic connection and negotiate the transport protocol. (XMLRPC)
- Publisher sends Subscriber the settings for the selected transport protocol. (XMLRPC)
- Subscriber connects to Publisher using the selected transport protocol. (TCPROS, etc…)
- Service registers with Master
- Service client looks up service on the Master
- Service client creates TCP/IP to the service
- Service client and service exchange a Connection Header
- Service client sends serialized request message
- Service replies with serialized response message.
https://wiki.ros.org/ROS/Introduction
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)