Keynotes to ROS Wiki I-Introduction

Keynotes to ROS Wiki I-Introduction,第1张

Keynote to ROS wiki I-Introduction
  • 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

Concept

ROS has three levels of concepts: the FIlesystem level, Computation Graph level, and Community level.

1 ROS Filesystem Level

package 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

2 ROS Computation Level

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.

3 ROS Community Level

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 /Transforms

TF package

2 Actions/Tasks

Actionlib package

3 Message Ontology

The 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

4 Plugins

pluginlib provides a library for dynamically loading libraries in C++ code

5 Filters

filters package

6 Robot Model

urdf package

Client Libraries 1 Main Client libraries

roscpp C++ client library
rospy Python client library
roslisp a client library for LISP

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
  1. Subscriber starts
  2. Publisher starts
  3. Subscriber registers with the Master. (XMLRPC)
  4. Publisher registers with the Master. (XMLRPC)
  5. Master informs Subscriber of new Publisher. (XMLRPC)
  6. Subscriber contacts Publisher to request a topic connection and negotiate the transport protocol. (XMLRPC)
  7. Publisher sends Subscriber the settings for the selected transport protocol. (XMLRPC)
  8. Subscriber connects to Publisher using the selected transport protocol. (TCPROS, etc…)
7 Establishing a service connection
  1. Service registers with Master
  2. Service client looks up service on the Master
  3. Service client creates TCP/IP to the service
  4. Service client and service exchange a Connection Header
  5. Service client sends serialized request message
  6. Service replies with serialized response message.

https://wiki.ros.org/ROS/Introduction

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/langs/727493.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-04-26
下一篇 2022-04-26

发表评论

登录后才能评论

评论列表(0条)

保存