快速了解 Robot Operating System(ROS) 机器人操作系统_python http://www.ros.org/

关于ROS About ROS http://www.ros.org/about-ros/

机器人操作系统(ROS)是用于编写机器人软件的灵活框架。目的在简化多种机器人平台之间创建复杂和鲁棒的机器人行为的任务量,它是工具、库和约定的集合。
为什么这么做?因为创建真正可靠和通用的机器人软件是很困难的。从机器人角度而言,任务和环境的多样性是问题的关键。处理这种多变的任务和环境是困难的,而且没有个人、实验室或研究机构希望独自完成这一切。
于是ROS就这样应运而生,从底层设计就考虑并鼓励协作式的机器人软件开发。例如,一个实验室中有精通于室内环境建图的专家,并构建出一套绘制地图的顶级系统。另外一组则有使用地图进行导航的专家,同时其他团队发现了在杂物中识别小目标的一种计算机视觉方法。ROS就是专门为这样的团队设计的,在彼此工作的基础之上协作设计开发机器人软件。

快速了解 Robot Operating System(ROS) 机器人操作系统_ROS_02

贡献者 Contributors http://www.ros.org/contributors/

历史 History http://www.ros.org/history/


学习ROS最重要的两个网址:

http://www.ros.org/    https://github.com/


为什么选择ROS? Why ROS?  http://www.ros.org/is-ros-for-me/

ROS是否适合我? Is ROS For Me? 

ROS给大多数机器人项目和应用程序增加了价值,但你可能依然想问,“ROS是否适合我的应用特例呢?”为了能自己回答这个问题,并作决定,首先需要了解ROS的组成和功能等。

ROS的特色:

1 分布式模块化设计

2 充满活力的社区

3 没有限制的许可证

4 协作环境

ROS社区指标:http://wiki.ros.org/Metrics

ROS问答:http://answers.ros.org/questions/

快速了解 Robot Operating System(ROS) 机器人操作系统_c++_03快速了解 Robot Operating System(ROS) 机器人操作系统_ROS_04


核心模块 Core Components http://www.ros.org/core-components/

ROS的核心模块主要分为三个部分,如下图所示:

快速了解 Robot Operating System(ROS) 机器人操作系统_python_05


重要概念与链接:

Communications Infrastructure

At the lowest level, ROS offers a message passing interface that provides inter-process communication and is commonly referred to as a middleware.

The ROS middleware provides these facilities:

Robot-Specific Features

In addition to the core middleware components, ROS provides common robot-specific libraries and tools that will get your robot up and running quickly. Here are just a few of the robot-specific capabilities that ROS provides:

Tools


与其他库集成 Integration with Other Libraries http://www.ros.org/integration/

快速了解 Robot Operating System(ROS) 机器人操作系统_c++_06

版本 Distributions http://wiki.ros.org/Distributions

ROS以字母顺序发布更新版本(B C D E F G H ),目前最新版为Kinetic。

推荐使用Indigo版本。


wiki中文版如下:

ROS (Robot Operating System, 机器人操作系统) 提供一系列程序库和工具以帮助软件开发者创建机器人应用软件。它提供了硬件抽象、设备驱动、函数库、可视化工具、消息传递和软件包管理等诸多功能。ROS遵循BSD开源许可协议。 

ROS: 

  • 安装

    • 在你的机器上安装ROS。 

    入门

    • 学习ROS的相关概念、客户端函数库以及技术梗概等。 

    教程

    • ROS手把手教程,提供每一步详细操作命令。 

    贡献

    • 如何加入ROS社区,比如分享你的代码。 

    支持

    • 遇到问题可以从这里寻求支持和帮助。 

软件: 

机器人/硬件: 

出版物、课程以及活动: 

  • 论文

    • 带开源代码的ROS相关论文。 

    书籍

    • 出版书籍,包括文档、教程和开源代码等。 

    课程

    • 使用或教授ROS的课程。 

    活动

    • 历史活动和相关资料。 

ROS中国:

  • 中文社区

    • 收集了ROS相关QQ群、论坛和博客专栏等各种社区资源。 
  • ROS维基翻译

    • 志愿加入ROS维基中文翻译。 

世界各地wiki镜像站点。


中文教程如下:

非初学者: 如果你已经很熟悉 ROS fuerte(要塞龟)或更早期版本的使用,而只是想使用在groovy(加岛象龟)hydro(渔龟)中开始采用的最新编译构建系统catkin,那你可以深入学习catkin教程。 但是我们仍然建议所有人学完整个“初级”教程以方便理解新增的功能特性。 

如果你是Linux初学者:也许先学习一些有关linux命令行工具的快速使用教程会对你很有帮助,这里有篇好教程(英文)。 

目录

  1. 核心ROS教程
    1. 初级
    2. 中级
  2. ROS标准
  3. 外部ROS资源
    1. 外部教程
    2. 外部研讨会或课件
  4. 在机器人上运行ROS
  5. 其它ROS函数库教程
  6. 提供ROS接口的函数库教程

更多文章请关注《万象专栏》