机器人操作系统(ROS):未来机器人编程的关键核心
Posted zhangrelay
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了机器人操作系统(ROS):未来机器人编程的关键核心相关的知识,希望对你有一定的参考价值。
2021 年 3 月 30 日一篇文章
强大生态
机器人操作系统或更广为人知的 ROS 是一个完全开源的机器人操作系统。它更像是一个元操作系统,有助于从软件中抽象出硬件。它背后的主要思想是避免不断地重新发明轮子并提供标准化的功能,因此您不会因为其他人已经做过,而从头开始浪费时间进行硬件抽象。它为业余爱好者和非专业人士进入机器人编程领域提供了便利。
- 入门非常轻松,门槛低
ROS 由加利福尼亚公司 Willow Garage 于 2006 年开发。目的是建立一个可用于一般目的的框架,从那时起,它由他们维护和开发。ROS 有许多版本或发行版(称为发行版),它们随每个新的 Ubuntu 操作系统版本一起出现。最新的是针对 Ubuntu 20.04 LTS 版本的 ROS Noetic Ninjemys。(2021年)
- 2022年ros2 humble
为什么要选择机器人操作系统?
有许多替代品,例如 MRPT、CARMEN、LCM、Player、Microsoft RDS。尽管如此,它们还是在设计缺陷方面失败了,例如语言支持限制、未优化的通信或缺乏对各种设备的硬件支持,这又是一个相当大的问题。ROS 使软件开发人员无需研究硬件设计或硬件如何工作即可创建程序。它提供了一种将进程网络与中央集线器或主集线器连接的方法。除此之外,ROS 支持许多编程语言,这使得它比其他框架更加灵活。
ROS 还使开发人员可以轻松地集成其他人已经开发的节点。举个例子,假设已经构建了一个包含运动节点和控制节点的机械臂。假设其他人制造了一个基于视觉的物体跟踪车,它由一个视觉节点和一个运动节点组成。如果愿意,可以将汽车的视觉节点包含在机械臂中,然后就拥有了一个具有物体检测功能的机械臂。它是如此简单。
ROS 正慢慢致力于成为机器人中间件的行业标准。根据ABI Research的数据,“到 2024 年,将近 55% 的商用机器人出货量(超过 915,000 台)将至少安装一个 ROS 软件包”,从而为支持 ROS 的机器人创造了相当大的安装基础。“ROS 的成功归功于其广泛的互操作性以及与其他开源项目的兼容性。ROS 1.0 利用 Orocos 进行实时通信,利用 OpenCV 进行机器视觉模型,”ABI Research 首席分析师 Lian Jye Su 说。
“nearly 55% of total commercial robots shipped in 2024, over 915,000 units, will have at least one ROS package installed,” creating a sizeable installed base of ROS-enabled robots. “The success of ROS is due to its wide range of interoperability and compatibility with other open-source projects. ROS 1.0 leverages Orocos for real-time communication and OpenCV for machine vision models,” said Lian Jye Su, Principal Analyst of ABI Research.
成熟的物理模拟能力
机器人操作系统有许多有用的工具,可以帮助用户了解系统在现实世界中的工作方式。其中之一是 RViz,它是一种流行的 3-D 可视化工具。它将软件参数作为输入,并根据输入的类型将它们可视化。这有助于我们从机器人的角度看待环境。
可视化效果良好后,可以在具有所有物理参数的 3-D 世界中对其进行模拟。该模拟是在 Gazebo 的帮助下完成的,它是一个 3-D 模拟器并支持 ROS。通过在这些模拟中快速测试我们的算法和设计,可以节省大量时间和金钱。
支持ROS的硬件产品
机器人操作系统需要一个基于 Linux 的环境才能运行。处理器类型和内存要求完全取决于项目。一般来说,小型 ROS 项目最常用的计算机是树莓派。这是由于它对 Linux 内核的支持和电路板的低成本。最近,RP2040的树莓派 Pico出来了,它也支持 micro-ROS。假设项目需要大量计算,例如基于 SLAM 的自主导航或计算机视觉应用程序。在这种情况下,应该选择功能强大的主板,例如 Nvidia Jetson TX2 或 Intel NUC。
至于传感器,ROS 拥有使其与大多数传感器兼容的库。许多产品都支持 ROS,例如 RPLIDAR A1M8 360 度激光扫描仪、英特尔实感深度摄像头等等。
如果想要学习 ROS 的绝对初学者,那么ROS wiki 页面是开始的最佳场所。它为初学者提供了文档齐全的库以及易于理解的教程。
以上是关于机器人操作系统(ROS):未来机器人编程的关键核心的主要内容,如果未能解决你的问题,请参考以下文章