机器人操作系统来到 Windows

  • Sergio De Simone
  • 谢丽

2018 年 10 月 10 日

话题:Azure语言 & 开发架构AI

机器人操作系统(ROS)是一种用于机器人开发的元操作系统,目前可在 Windows 10 上使用。微软最初的实验性构建名为 ROS1,集成在 Visual Studio 中,包括ROS Core 的完全移植和若干模块。根据微软的说法,ROS on Windows 将逐步发展,以至于完全集成基于 GPU 的机器学习和 Azure IoT Hub。

抛开它的名字,ROS 并不是一个真正的操作系统。相反,它是一个框架和服务的集合,这些框架和服务提供了类似操作系统的功能,运行在由机器人硬件支撑的异构计算机集群之上。ROS 服务包括硬件抽象、底层设备控制、进程间消息传递和包管理。

ROS 并不是目前唯一可用的“机器人框架”。可供选择的框架包括PlayerYARPOrocosCARMEN。ROS 的与众不同之处在于,它的设计以丰富的机器人平台为中心,使用驱动传感(倾斜激光器、pan/tilt 传感器头、附在手臂上的传感器),其目标是利用自然分布的计算环境。另外,ROS 的目标是成为一个几乎与语言无关的薄层,以便在其他机器人平台上轻松运行基于 ROS 的代码。ROS 有PythonC++Lisp实现,而对 Java 和 Lua 的支持仍处于试验阶段。

ROS 的主要目标是在机器人研究和开发中支持代码重用。ROS 是一个分布式的进程框架(又名 Nodes),它使可执行程序能够单独设计并在运行时保持松耦合。这些进程可以分组为 Packages 和 Stacks,实现轻松共享和分发。

在西班牙马德里举行的ROSCon 2018 大会上,微软展示了一个在 Windows 10 IoT Enterprise 上运行 ROS Melodic Morenia 的 ROBOTIS Turtlebot 3 机器人。此外,微软还展示了基于 Azure 的 ROS 仿真环境,演示了一群虚拟机器人连接到一个编排系统,并通过 Azure IoT Hub 进行控制。

ROS1 需要 64 位的 Windows 10 桌面版或 Windows 10 IoT 企业版,目前还不支持 Windows 10 IoT Core。目前,可以使用二进制包安装 ROS1。构建过程并不像想象的那么简单,需要很多步骤,但微软做了全面详细的介绍与 Visual Studio Code 的集成也可以通过插件实现

ROS for Windows 并不是微软首次涉足机器人领域。事实上,在 2006 年推出了Microsoft Robotics Developer Studio之后,比尔·盖茨在 2007 年就开发出了他的家用机器人。遗憾的是,该项目从未获得关注,并在 2012 年被放弃,Steven Crowe 在 The Robot Report 上这样写道

微软已经宣布正在开发其 ROS 的下个 Windows 移植版本 ROS2,但没有透露它将带来什么。和往常一样,InfoQ 将会继续跟踪报道这个项目的进展。

查看英文原文:Robot Operating System Comes to Windows

Azure语言 & 开发架构AI