前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >ROS2编程基础课程--概述

ROS2编程基础课程--概述

作者头像
zhangrelay
发布2019-09-18 15:22:45
1.1K0
发布2019-09-18 15:22:45
举报

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

文链接:https://cloud.tencent.com/developer/article/1508811

课程补充参考资料:https://download.csdn.net/download/zhangrelay/11751608


为什么学习和研究ROS 2?

参考文献:https://index.ros.org/doc/ros2/Marketing/

ROS 2(机器人操作系统2)是用于机器人应用的开源开发套件。ROS 2之目的是为各行各业的开发人员提供标准的软件平台,从研究和原型设计再到部署和生产。 ROS 2建立在ROS 1的成功基础之上,ROS 1目前已在世界各地的无数机器人应用中得到应用。

特色

  • 缩短上市时间

ROS 2提供了开发应用程序所需的机器人工具,库和功能,可以将时间花在对业务非常重要的工作上。因为它 是开源的,所以可以灵活地决定在何处以及如何使用ROS 2,以及根据实际的需求自由定制,使用ROS 2 可以大幅度提升产品和算法研发速度

  • 专为生产而设计

凭借在建立ROS 1作为机器人研发的事实上的全球标准方面的十年经验,ROS 2从一开始就被建立在工业级 基础上并可用于生产,包括高可靠性安全关键系统。 ROS 2的设计选择、开发实践和项目管理基于行业利 益相关者的要求。

  • 多平台支持

ROS 2在Linux,Windows和macOS上得到支持和测试,允许无缝开发和部署机器人自动化,后端管理和 用户界面。分层支持模型允许端口到新平台,例如实时和嵌入式操作系统,以便在获得兴趣和投资时引入和推 广。

  • 丰富的应用领域

与之前的ROS 1一样,ROS 2可用于各种机器人应用,从室内到室外、从家庭到汽车、水下到太空、从消费 到工业。

  • 没有供应商锁定

ROS 2建立在一个抽象层上,使机器人库和应用程序与通信技术隔离开来。抽象底层是通信代码的多种实现, 包括开源和专有解决方案。在抽象顶层,核心库和用户应用程序是可移植的。

  • 建立在开放标准之上

ROS 2中的默认通信方法使用IDL、DDS和DDS-I RTPS等行业标准,这些标准已广泛应用于从工厂到航空 航天的各种工业应用中。

  • 开源许可证

ROS 2代码在Apache 2.0许可下获得许可,在3条款(或“新”)BSD许可下使用移植的ROS 1代码。这两个 许可证允许允许使用软件,而不会影响用户的知识产权。

  • 全球社区

超过10年的ROS项目通过发展一个由数十万开发人员和用户组成的全球社区,为机器人技术创建了一个庞大 的生态系统,他们为这些软件做出贡献并进行了改进。 ROS 2由该社区开发并为该社区开发,他们将成为未 来的管理者。

  • 行业支持

正如ROS 2技术指导委员会成员所证明的那样,对ROS 2的行业支持很强。除了开发顶级产品外,来自世界 各地的大大小小公司都在投入资源为ROS 2做出开源贡献

  • 与ROS1的互操作性

ROS 2包括到ROS 1的桥接器,处理两个系统之间的双向通信。如果有一个现有的ROS 1应用程序, 可 以通过桥接器开始尝试使用ROS 2,并根据要求和可用资源逐步移植应用程序。

ROS 2

Overview概述

The Robot Operating System (ROS) is a set of software libraries and tools that help you build robot applications. From drivers to state-of-the-art algorithms, and with powerful developer tools, ROS has what you need for your next robotics project. And it’s all open source.

机器人操作系统(ROS)是一组软件库和工具,用于协助开发机器人应用程序,从驱动程序到最先进的算法,以及强大的开发人员工具。ROS为开发下一个机器人项目提供了所需的一切,而且它都是开源的。

Here you will find documentation on how to install and use software from ROS 2, which is a new version of ROS that is under heavy development. See below for more information on ROS 2. Also have a look at our promotional material.

这份文档中将包含有关如何安装和使用ROS 2(Dashing)软件的资料,它是正在全力开发的一个新的ROS版本。有关ROS 2的更多信息,请参考下文,或者请查看宣传材料

If you’re looking for information on ROS 1 (i.e., ROS as it has existed for several years and what you might be using right now), check the ROS website or the documentation wiki.

如果需要查阅有关ROS 1的信息(即,已存在12年的ROS以及现在可能正在使用的ROS),请查看ROS网站文档维基。ROS 1 LTS包括indigo、kinetic和Melodic。ROS 2 LTS为Dashing发行版。

Before you proceed here, please read the features page to get an idea of what is in the current ROS 2 release.

在此之前,请先阅读功能介绍的网页了解当前ROS 2版本中的内容。

Releases 发行版

See the releases page. 请参考版本发行版介绍网页

Installation 安装

See the installation page. 请参考安装介绍网页

Tutorials and Features 教程和功能

ROS 2 is under heavy development. ROS 2正在快速发展。

You can check out the tutorials page to see a range of examples of what the system can do in its current state, if it fits your project today depending on the exact requirement.

查看教程内容的网页了解一些关于系统在当前状态下可以实现的功能,依据具体的要求决定它是否适合当前开发的工程案例。

For details of the current features, see features status page. 有关当前功能的详细信息,请参考功能状态网页

If migrating code from ROS to ROS 2, check the migration guide.

如果将代码从ROS1迁移到ROS 2,请查看迁移指南网页。

What’s ahead 事先说明

ROS 2 is currently planning to release new versions every six month (which is twice as often as ROS 1) to give the community members an opportunity to provide early feedback on the evolving system. See the Roadmap for details on the planned upcoming features for ROS 2.

ROS 2目前计划每六个月发布一个新版本(这是ROS 1的两倍),以便社区成员有机会提供有关正在开发系统的源源不断的早期反馈。有关ROS 2计划即将推出的功能的详细信息,请参考路线图

Contributing 贡献

See the contributing page and the developer guide for details on how to contribute to ROS 2 developments.

有关如何为ROS 2开发做出贡献的详细信息,请参考参与网页开发人员指南

Governance 管理

See the governance page. 请参考管理网页

Marketing 市场

See the marketing page. 查看市场网页

Reporting problems and asking questions

报告并提出问题

See the contact page. 请参考联系网页

About ROS 2 关于ROS2

Since ROS was started in 2007, a lot has changed in the robotics and ROS community. The goal of the ROS 2 project is to adapt to these changes, leveraging what is great about ROS 1 and improving what isn’t. There’s a full article on the motivation of ROS 2 here.

自ROS于2007年启动以来,机器人学和ROS社区发生了很多变化。ROS 2项目的目标是适应这些变化,利用ROS 1的优点和改进不足之处。关于ROS 2开发缘由的一篇完整文章在这里点击查看。

Where to find more information

哪里可以找到更多信息

There are various articles on the design of ROS 2 at design.ros2.org, such as: *Why ROS 2?*, *ROS on DDS*, and *Changes between ROS 1 and ROS 2*.

design.ros2.org上有关于ROS 2设计的各种文章,例如:* 为什么开发ROS 2?** 基于DDS的ROS *,以及* ROS 1和ROS 2之间的变化 *。

The code for ROS 2 is open source and broken into various repositories. You can find the code for most of the repositories on the ros2 github organization.

ROS 2的代码是开源的,并拆分为各种库。在ros2 github组织网页上找到大多数库的源代码。

docs.ros2.org contains current details about ROS 2 internal design and organization.

网页docs.ros2.org包含有关ROS 2内部设计和组织的最新详细信息。

awesome-ros2 is a “cheat sheet” style quick reference for ROS 2 packages and resources which will get (hopefully) listed on the curated list of awesome lists to help GitHub users to get to know ROS 2.

网页awesome-ros2是ROS 2包和资源的“清单”式的快速参考指南,将(前景看好的资源)列在精选列表中,以帮助GitHub用户了解ROS 2。

The following ROSCon talks have been given on ROS 2 and provide information about the workings of ROS 2 and various demos:

以下ROSCon将与ROS 2相关的讨论和,介绍了ROS 2工作方式和非常的案例等信息:

Title 标题

Type 类型

Links 链接

Hands-on ROS 2: A Walkthrough 一步一步实践ROS 2

ROSCon 2018

slides / video

Launch for ROS 2 ROS 2的Launch

ROSCon 2018

slides / video

The ROS 2 vision for advancing the future of robotics development ROS 2愿景 - 推动未来机器人技术的发展

ROSCon 2017

slides / video

ROS 2 Update - summary of alpha releases, architectural overview ROS 2更新 - alpha版本摘要、架构概述

ROSCon 2016

slides / video

Evaluating the resilience of ROS2 communication layer 评估ROS 2通信层的弹性

ROSCon 2016

slides / video

State of ROS 2 - demos and the technology behind ROS 2的状态 - 案例和背后的技术

ROSCon 2015

slides / video

ROS 2 on “small” embedded systems “小型”嵌入式系统上的ROS 2

ROSCon 2015

slides / video

Real-time control in ROS and ROS 2 ROS 2和ROS中的实时控制

ROSCon 2015

slides / video

Why you want to use ROS 2 为什么要使用ROS 2

ROSCon 2014

slides / video

Next-generation ROS: Building on DDS 下一代ROS:基于DDS编译

ROSCon 2014

slides / video

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019年09月12日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • ROS 2
    • Overview概述
      • Releases 发行版
        • Installation 安装
          • Tutorials and Features 教程和功能
            • What’s ahead 事先说明
              • Contributing 贡献
                • Governance 管理
                  • Marketing 市场
                    • Reporting problems and asking questions
                      • 报告并提出问题
                      • About ROS 2 关于ROS2
                        • Where to find more information
                          • 哪里可以找到更多信息
                          相关产品与服务
                          项目管理
                          CODING 项目管理(CODING Project Management,CODING-PM)工具包含迭代管理、需求管理、任务管理、缺陷管理、文件/wiki 等功能,适用于研发团队进行项目管理或敏捷开发实践。结合敏捷研发理念,帮助您对产品进行迭代规划,让每个迭代中的需求、任务、缺陷无障碍沟通流转, 让项目开发过程风险可控,达到可持续性快速迭代。
                          领券
                          问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档