ROS机器人操作系统资料与资讯(2018年11月)

2022-04-29 20:10:57 浏览数 (1)

----ROS发展进入11年和ROSCon 2019!----

我们很高兴庆祝ROS成立11周年!

2007年的最后一周,在SourceForge上首次提交了ROS 。

自我们成立一周年以来,ROS社区不断发展壮大。正如我们最新报告中所记录的那样,我们在几乎每个跟踪指标中都看到了两位数的年度百分比增长。仅在2018年7月,我们就看到了从packages.ros.org通过328K唯一IP地址下载的16M二进制包(这些数字不包括来自世界各地的镜像的下载,其中至少有11个)。

今年我们还看到了两个空前的ROS开发者大会,从9月中旬开始,东京的ROSCon JP 2018。这是ROSCon的第一个本地版本,专门为本地开发人员社区设计并以当地语言保存。该活动取得了巨大的成功,提前售罄,最终出席人数为189人,并得到18个赞助组织的支持。我们期待在未来看到更多本地版本的ROSCon。9月下旬ROSCon 2018年在马德里举办。ROSCon 2018连续第四年售罄,共有510名与会者(包括来自6大洲19个国家的27位多元化的学者)47家赞助商打破了许多记录。

关于ROSCon的主题,我们很高兴发表以下声明:

举办日期:ROSCon 2019将于2019年 10月31日至11月1日在澳门路凼金光大道康莱德酒店举行。IROS 2019将于11月3日至8日在附近的澳门威尼斯人举行,所以计划参加澳门的这些重大活动!!!

部分博文是翻译ROS官方新闻,如需查看原文,请至官网进行浏览。目前,ROS支持全部主流操作系统,windows,macos,linux,如有需要查看之前博文。

关注开发团队的目标,是依据现有资源制作机器人课程和方案的充要条件。每年每月每次课程都要更新,以适应日新月异的技术变革!

----翻译----

Open Robotics计划在2020年5月发布针对Python 3的ROS 1发行版,但需要帮助才能使其成功。

在最近几年中,每年5月由Open Robotics(OR)发布一次ROS 1发行版。在偶数年份(2014Indigo,2016Kinetic,2018Melodic),ROS发行版具有5年的支持(长期支持,或LTS),而在奇数年,只有2年的支持(非LTS)。由于非LTS ROS分布未被社区大量使用,于是今年早些时候决定不进行非LTS发布,而是每两年发布一次LTS ROS发行版

今后只有ROS 1.0的LTS版本!!!

鉴于ROS 2获得更多支持,热度持续上升,最近出现了这对ROS 1发布的意义问题1 的讨论。这些讨论包括两个方面(这里只是对两个主要方向的简要描述):

  • 一方面,研发团队大部分的努力和资金都花在了ROS 2上。因此,在已经发布的长期支持版本Melodic之后,目前并没有继续发布ROS1.0长期支持版本的规划。这意味着Noetic支持将由2020-2025,并可能成为ROS1.0的最终重要版本!!!
  • 另一方面,目前机器人开源社区仍然大量使用ROS 1而没有(立即)计划迁移到ROS 2,并且ROS 2此时并不像ROS 1那样功能丰富和完整

开发团队需要仔细权衡并综合考量未来ROS 1发行版的利弊。一方面,团队希望两个ROS版本在可行的情况下共存,允许随时间迁移,但另一方面,团队受资源约束的限制。这里说的不仅仅包括OR,而是所有ROS 1软件包维护者,无论他们在哪里工作。正如已通过@Pyo指出1 ,每一个新的ROS 1的发行版创建初期开发和那些发布功能包的开发者都需要承担新发行后续的维护负担。正如@gerkey 所说,OR没有获得针对此类工作的资金,可以猜想其他组织也类似如此。

再看一下ROS 2当前的状态,它确实在核心部分具备很多功能,许多重要功能(如导航Navigation、移动MoveIt!、图像管道pipeline)的移植工作正在进行中。话虽如此,仍然有一些方法可以在各个方面与ROS 1相匹配,只提一个方面:文档和教程2 。

从目前的ROS 1支持时间表来看,最新的Melodic发行版于2018年发布,并将持续到2023年。虽然原则上给出的时间表为4.5年,但有两个因素限制了有效的支持范围:

  • 在未来的某个时刻,ROS 2将针对更新版本的Ubuntu(即20.04)。通常用于在Ubuntu LTS可用之后发布的下一个ROS发行版的ROS发行版。虽然具体的时间点可以讨论,但在某些时候这种情况会发生 - 很可能在2023年之前发生。然后没有针对新版Ubuntu的新ROS发行版会让我们陷入“分裂”的境地(只有一个ROS版本,即ROS 2.0):在同一个Ubuntu发行版中不支持ROS 1和ROS 2的版本,这将使异构系统更具挑战性。因此,这种分裂也会使任何渐进的迁移工作变得更加困难。这个方面缩短了支持的时间窗口,缩短了ROS 1和ROS 2发行版之间的重叠,这个平台不到4.5年 - 更像是2 - 3年(也是由@mikeferguson 注意到)。
  • 第二个方面限制ROS 1 Melodic的有效支持窗口是Python 2中的EOL 3 在2020年开始在现有的发行版和功能包将继续存在,安全补丁的维护停止可能会显著阻碍继续的使用Python 2软件。因此,有效时间窗口变得更短 - 更实际的是大约1.5 - 2年

基于这些考虑因素,或者已决定投入一些资源来创建一个代号为Noetic Ninjemys(Noetic)的ROS 1版本该版本将于2020年5月以Python 3(而不是Python 2)为目标ROS 1发行版的可用性将解决上述限制并有效确保ROS 1和ROS 2共存至少2025年。而在2022年,新的ROS 2发行版可能会针对较新的Ubuntu发行版(ROS 1不支持,如Noetic)这对于共存/迁移来说不是一个问题,因为那时开发团队当然希望从2020/2021年发布的ROS 2成为用户可以坚持的可行平台。(目前情况要少得多,而重要功能仍处于开发状态,以前的版本不一定处于可行状态。)

因此,在ROS 1中从Python 2到Python 3的过渡肯定是一个重要的过程。虽然OR将​​于在2020年创建Noetic版本,但工作范围要高得多。它需要整个社区为这项工作做出贡献 - 否则Noetic只会包含以前ROS 1版本的一小部分软件包,或者如果没有进行广泛测试,质量可能会低于标准。

在ROS 1 Noetic版本和ROS 2移植工作的背景下,可以看到Python 3过渡对两个ROS世界都有好处。首先将包与Noetic的Python 3兼容,然后移植到ROS 2其次将包移植到ROS 2(这涉及使其与Python 3一起使用),然后可以移植Python 3特定的更改Noetic发布。无论哪种方式,Python 3的步骤都是必要的。

与任何ROS发行版一样,由软件包维护人员决定是否以及何时将其软件包发布到Noetic中。和往常一样,欢迎所有社区成员加强帮助以获得功能包。如果发现任何受支持的ROS发行版中缺少某些内容,请考虑自愿花时间帮助发布。如果这是非常关心的一揽子计划,请考虑自愿成为共同维护者,甚至承担单独的维护工作。你很可能从软件包维护者那里得到积极的回应。考虑到Python 3过渡所带来的额外努力,开发团队比以往更需要社区的帮助,以便Noetic成为一个完整的发行版。

对Noetic之外的ROS 1意味着什么?目前,或者无法继续将资源投入到Noetic之后的ROS 1版本中。所以OR并不打算O-turtle ROS 1上发挥作用。如果社区有很大的兴趣,这绝不意味着不会有更多的ROS 1版本。所有基础设施都是开放的,如果一个或多个实体愿意负责推出未来的ROS 1发行版,或者非常乐意帮助他们开始这项工作。

开发团队希望这篇文章为ROS 1在可预见的未来提供了一个明确的方向,并且确定了OR的预期。

ROS开发团队@Open Robotics

ROS Melodic的迷失与救赎::https://blog.csdn.net/column/details/28058.html

GitChat::沉迷机器人操作系统的一个理由和四种修仙秘籍

基于Windows和Ubuntu的ROS Melodic课程已经开发完毕,包括Navigation和MoveIt!,将win和linux进行融合讲解,并同步进行ROS1.0和ROS2.0的对比授课。

----Udemy ROS初学者的主要更新:基础知识,动作和OpenCV----

Udemy课程名为:初学者的ROS:基础知识,动作和OpenCV

自发布以来,已经进行了几次重大更新,最初内容仅涉及3小时的ROS教程,现在是10小时的ROS教程。 该课程涵盖了许多方面,包括安装,ROS生态系统,ROS主题,ROS服务,ROS应用于Turtlebot的运动,带OpenCV的计算机视觉,包括讲座和项目,激光扫描仪,rosserial Arduino,网络配置,发布文件等更多。

该课程包含许多编程任务和实际项目,以便将讲座中学到的知识应用于各种主题。 它是机器人类别中的畅销产品。

----Swift实现ROS客户端----

在GItHub https://github.com/tgu/RosSwift上传了客户端库的初步Swift实现。

----针对ROS的Google Dialogflow-v2和Speech-To-Text API的更新----

去年我为Google的STT API和NLP平台Dialogflow编写了一个软件包。该套餐运作良好,但有两个问题:

  1. 它要求您使用Google的STT API获取文本,然后将其发送到Dialogflow。
  2. 它只能在本地运行。

使用此更新包,您可以:

  1. 通过麦克风将音频直接发送到Dialogflow。
  2. 通过您可以在网络上的另一台计算机/机器人上运行的服务器发送/接收音频,这样您就不必在一台计算机上运行所有内容。
  3. 公开访问上下文,意图,查询文本,置信度和更清晰的消息格式。

由于Dialogflow完成了大部分工作,因此不再需要ROS-ify Google STT API。但是,如果您对使用beta / ML功能进行更精细的语音识别感兴趣,那么我留下了一个可以在您感兴趣时使用的脚本。

文档可以在这里找到:https://wiki.ros.org/dialogflow_ros

源代码这里:https://github.com/piraka9011/dialogflow_ros

安装说明是相同install.sh的,除了设置您的Google凭据(文档中的说明)之外,您可以运行一个负责大部分工作的脚本。

同样,我希望得到一些关于如何增强此功能以及添加哪些功能的反馈。

----TIAGo----TALOS----

----开发:Arduino的ROS2库----

今天写这篇文章来介绍ros2arduino并开设一个讨论论坛。 ros2arduino针对Arduino中的ROS2库,如ros1中的rosserial_arduino。 目前,这已包含在下一版ROS2 的路线图中。 以下是ros2arduino关于当前路线图的计划。

ros2arduino(使用支持XRCE的RTPS,例如microRTPS;请注意,此方法使用与完整DDS / RTPS系统顶部的ROS 2不同的线路协议)

  • 支持TurtleBot3的嵌入式系统(OpenCR,它支持Arduino IDE)
  • 支持Arduino MEGA,ZERO和其他兼容微控制器
  • 制作邮件标题和API生成器
  • 提供教程(例如,Arduino IDE设置,自定义消息,LED /伺服/传感器控制,TF,简单机器人)

这个ros2arduino的前一步是支持TB3汉堡的ROS2。 现在我们想要创建一个通常可用于Arduino以及TB3汉堡的库。

Github存储库就是这个链接。 目前使用的代码来自TB3。 但是,它不能用于一般的arduino板,因为它依赖于microRTPS。

无论如何,由于这是开源的,我希望你能一起讨论和贡献,如果你想。

以下是我认为我们需要讨论的一些事情。

  • 构建系统:用于Arduino IDE的编译方法。(@Ingo_Lutkebohle提到modm作为考虑因素之一。)
  • S / W 架构
  • 编程语言版本
  • 等等…

我想我们不能从一开始就做到完美。 我们将继续为发布进行开发,并希望这次讨论能够带来更好的图书馆。

任何形式的贡献都是受欢迎的。

0 人点赞