InfoQ Homepage News Robot Operating System Comes to Windows

Robot Operating System Comes to Windows


Robot Operating System (ROS), a meta-operating system for robot development, is now available on Windows 10. Microsoft’s initial, experimental build, dubbed ROS1, is integrated within Visual Studio and includes a full port of Core ROS and several other modules. According to Microsoft, ROS on Windows will evolve to include full integration with GPU-based machine learning and Azure IoT Hub.

Despite its name, ROS is not an actual operating system. Rather, it is a collection of frameworks and services that provide operating system-like functionality running on top of a heterogeneous computer cluster powered by the robot hardware. ROS services include hardware abstraction, low-level device control, message-passing between processes, and package management.

ROS is not the only ‘robot framework’ currently available. Alternative includes Player, YARP, Orocos, CARMEN, and others. What sets ROS apart is its design centered around rich robotic platforms using actuated sensing (tilting lasers, pan/tilt sensor heads, sensors attached to arms) and its aim to leverage a naturally distributed computing environment. Additionally, ROS aims to be a thin, almost language-independent layer making it easy to run ROS-based code on other robotics platforms. ROS implementations exist in Python, C++, and Lisp, while support for Java an Lua is experimental.

The primary goal of ROS is to support code reuse in robotics research and development. ROS is a distributed framework of processes (aka Nodes) that enables executables to be individually designed and loosely coupled at runtime. These processes can be grouped into Packages and Stacks, which can be easily shared and distributed.

At ROSCon 2018 in Madrid, Spain, Microsoft demonstrated a ROBOTIS Turtlebot 3 robot running ROS Melodic Morenia on Windows 10 IoT Enterprise. Furthermore, Microsoft showed an Azure-based ROS simulation environment demonstrating a swarm of virtual robots connected to an orchestration system and controlled via Azure IoT Hub.

ROS1 requires a 64-bit Windows 10 Desktop or Windows 10 IoT Enterprise edition and is not yet enabled on Windows 10 IoT Core. At the time being, ROS1 can be installed using a binary package. The build process is not as easy as it could be desired, requiring a number of steps, but Microsoft is describing it in full detail. Integration with Visual Studio Code is also possible through a plugin.

ROS for Windows is not Microsoft’s first foray into robotics. In fact, Bill Gates developed his a robot in every home vision in 2007, following Microsoft’s introduction of Microsoft Robotics Developer Studio in 2006. Unfortunately, the project never gained traction, writes Steven Crowe for The Robot Report, and was abandoned in 2012.

Microsoft has already announced it is working on the next version of its ROS Windows port, ROS2, but did not disclose what it will bring. As usual, InfoQ will keep reporting about this project as it progresses.

We need your feedback

How might we improve InfoQ for you

Thank you for being an InfoQ reader.

Each year, we seek feedback from our readers to help us improve InfoQ. Would you mind spending 2 minutes to share your feedback in our short survey? Your feedback will directly help us continually evolve how we support you.

Take the Survey

Rate this Article


Hello stranger!

You need to Register an InfoQ account or or login to post comments. But there's so much more behind being registered.

Get the most out of the InfoQ experience.

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Community comments

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p


Is your profile up-to-date? Please take a moment to review and update.

Note: If updating/changing your email, a validation request will be sent

Company name:
Company role:
Company size:
You will be sent an email to validate the new email address. This pop-up will close itself in a few moments.