|Xilinx News: ROS 2 Simplifies Hardware Acceleration for Robots|
The process of creating optimized, hardware specific, compute architectures can be time consuming and complex. The ROS 2 Hardware Acceleration Working Group (HAWG) is working to simplify hardware acceleration engineering tasks by creating acceleration kernels based on open standards.
By Víctor Mayoral-Vilches | September 27, 2021
A robot is a network of networks. One that utilizes sensors to perceive the world, actuators to produce a physical change, and dedicated computational resources to process it all and respond to events in a coherent, timely manner. As such, robotics development is largely the art of system integration, both in terms of software and hardware, with a significant portion of robotics development resources dedicated to systems integration efforts.
With the wide availability of low cost, highly functional, collaborative robots, many companies are focusing solely on creating software for these systems, building on top of the hardware of others. In time, many of these companies have discovered that a critical relationship exists between the hardware and the software capabilities in a robot. Furthermore, it is essential to select hardware that simplifies system integration, as well as meets power requirements and adapts to the changing demands of specific robotic applications.
As semiconductor improvements have slowed below the pace predicted by Moore’s law, robotics developers have turned to other methods to achieve higher performance, including the use of hardware accelerators. By creating specialized compute architectures that rely on specific hardware (i.e., through field-programmable gate arrays or FPGAs), hardware acceleration empowers faster robots, with reduced computation times (real fast, as opposed to real-time), lower power consumption and more deterministic behaviors.
Mixed Control and Data
With hardware acceleration, the traditional control-driven approach for software development in robotics can instead be replaced with a mixed control- and data- driven process where custom compute architectures allocate the optimal amount of hardware resources for an application. This allows for more specialized, power-efficient, secure and higher performance robotic circuitry. To rephrase Alan Kay’s famous quote about software development (“People who are really serious about software should make their own hardware.“), if you are serious about robotics, you should build your own hardware at one or multiple levels, including the computational, mechanical and behavioral levels.
Table 1 compares the different computational models in robotics that illustrates how the Mixed model provides the best trade-off between that various control and data driven approaches. CPUs and GPUs excel in control flow computations, while FPGAs excel in data flow computations.
Various adaptive System-on-Chips (SoCs) and System-on-Modules (SOM) devices available from multiple vendors provide the best of both worlds for the Mixed computational model. It is an approach for robotic computation that delivers the best of both worlds, the flexibility and full control of CPUs to implement complex computations, with the low power, high performance, low latency and deterministic nature of hardware acceleration. Examples include adaptive SoCs and SOMs from vendors such as AMD, Xilinx, MicroChip Technology and Qualcomm, among others.
With hardware acceleration and adaptive SoCs and SOMs, building robotic behaviors involves programming an architecture that creates both the right data paths and control mechanisms.
Table 1: Comparison of Hardware Computational Models in Robotics
HW Expertise a Gating Factor
With this new batch of SoCs, hardware acceleration has the potential to revolutionize the robotics sector in the coming years. Unfortunately, there is a caveat – complexity. The process of creating specialized compute architectures for robots using a Mixed computational model is complex, often exceeding the engineering skills of robotics developers.
Utilizing advanced software engineering practices, roboticists can build complex real-time deterministic systems using languages such as C++. But, these developers often lack hardware and embedded systems expertise, which can hinder the adoption of hardware acceleration technologies.
Robot Operating System
To address this challenge and simplify hardware acceleration for roboticists, companies like Xilinx are focusing on Robot Operating System(ROS) and Gazebo. Robot Operating System, an open-source collection of software frameworks and tools, is the de facto standard for robotics software development.
Since 2020, and especially with the introduction of ROS 2, ROS has become the default Software Development Kit (SDK) for robotic applications across many industries. Most groups are using ROS and the simulation tool Gazebo in some way.
Rather than reinventing the wheel with new tools, frameworks and/or platforms to bridge the hardware acceleration complexity gap among robotics architects, Xilinx and others are leveraging the power of ROS 2. Organizations like the ROS 2 Hardware Acceleration Working Group (HAWG) have been created, with initial objectives and goals announced publicly ( proposal, working group announcement) and an open architecture developed. The architecture proposed aims to be platform-agnostic (for edge, workstation, data center and/or cloud targets), technology-agnostic (FPGAs, CPUs, and GPUs) and easily portable to other boards.
Through the HAWG and beyond, we’re committed to paving the way for roboticists to leverage hardware acceleration easily through ROS 2.
About the Author
Víctor Mayoral-Vilches is the Robotics System Architect at Xilinx. With a strong technical background in robotics, embedded systems and cybersecurity, he spent the last 10 years building robots. Prior to joining Xilinx, he founded and led 3 robotics startups building teams of 30+ engineers and leading them across research initiatives and projects in the fields of robotics, cybersecurity and artificial intelligence. Mayoral-Vilches was selected as one of the ten most innovative individuals under 35 in Spain by the MIT Technology Review in 2017 and holds multiple national expert positions representing Spain in ISO and IEC committees for standards in robotics, safety and cybersecurity.