Robotics has long been a booming market and there is still a lot to come. According to the World Robotics 2021 report, the industry is growing in terms of funding, implementation, and positive economic impact. Investments in robotics technology are driven both by business and government. For instance, the US government is planning a budget of $35 billion from 2020 to 2024. In the meantime, the average global robot density in the manufacturing industries has almost doubled: from 66 robots per 10,000 employees in 2015 to 126 in 2021. What’s more, as reported by London Economics (LE), increasing robot installations by 30% may result in an extra $4.9 trillion in the 2030 global economy.
Robots are adopted in various industries, including manufacturing, aerospace, medical, retail, logistics, and automotive. And the more companies seek to achieve full automation, the more challenges there are for roboticists to overcome. One of the most common issues is the collaboration with humans and the dynamic environment, be it the manufacturing facility for the industrial manipulator or the surroundings of a self-driving vehicle. The navigation of a robot is a subject of motion planning technology. For a long time, it couldn’t guarantee collision-free paths due to such hardware and software limitations, as high energy and computational resources consumption, insufficient memory buffers, inability to predict moving objects' behavior.
It was Realtime Robotics who managed to fuse all the latest technological achievements and academic research and to elaborate a specialized toolkit for on-the-fly motion planning. “Realtime Robotics has created technology that solves a 30-year-old challenge in the robotics industry. Our motion planning solution allows industrial automation to move collision-free and respond to obstacles in real time,” says Will Floyd-Jones, Co-Founder & Robotics Engineer in Realtime Robotics.
Read how CAD Exchanger contributed to making robot motion planning more available and customizable, by supporting numerous CAD formats inside Realtime Robotics solutions via a single API.
Realtime Robotics is an industrial automation company based out of Boston, Massachusetts. It specializes in motion planning technology, which is vastly used in robotics and concreates the future of automotive. The focus of the work is a set of systems and tools to help multiple robots coordinate their motion so they don’t interfere with each other, static objects in their environment, and humans.
The company was founded by a professor of electrical and computer engineering (ECE) Daniel Sorin and a professor of robotics George Konidaris who were soon joined by a Ph.D. candidate Sean Murray and double-majoring undergraduate Will Floyd-Jones. The fusion of ECE and robotics competencies allowed Realtime Robotics to squeeze the best out of these two fields. The result is the hardware motion planning accelerator (MPA) fast enough for on-the-fly processing of the spatial data and the roadmap generation software that enables easy integration with controllers, simulation software, and other customers’ solutions.
Technology elaborated by Realtime Robotics is used by manufacturing, logistics, and self-driving car companies, among them being KUKA, Kawasaki Heavy Industries, Siemens, Mitsubishi Electric Corporation, FANUC, Yaskawa Electric Corporation, ABB, Universal Robots. It is designed to transform the way pick and place, packaging, palletizing, assembly, inspection, bin picking, fastening, welding, and machine tending tasks are performed.
The three core tools that Realtime Robotics provides are:
- Realtime Controller that accelerates calculations up to 1000x as compared with ones running on high-end GPUs.
- RapidPlan and RapidSense software that guides single and multiple robots surrounded by static and dynamic objects through collision-free motion plans.
The workflow starts with creating a robotic workcell using models in the Realtime Robotics library and external files. In essence, it is required to add robots themselves, end-effectors (weld guns, inspection cameras, grippers, pneumatic tubes, paint guns, drills, etc.), and objects in the robot's environment (walls, fixtures, jigs, pallets, shelves, totes, conveyor belts, safety equipment). Then the operator selects the target locations, e.g. a home position of the robot and pick and place locations. After that, the optimization process is launched, including calculating the best possible placement of robots and bases, task allocation and sequencing in case of multiple robot workcells. Finally, the motion paths are automatically elaborated with regard to the robot’s joints limits and possible collisions. The resulting data can be imported to the Realtime Controller for the run-time operation of the robots.
In case of a changing environment and dynamic objects involved an advanced vision system is to be integrated. Data from multiple depth sensors is reprojected into a 3D point cloud. Real-time imaging is used in a perception system that enables robots to respond to moving obstacles instantaneously, namely, stopping the movement and changing the trajectory.
To enable responsive workcell monitoring and obstacles detection, it’s necessary to load 3D models of various industrial manipulators and workcell parts. Standard parts available in a built-in library are not always enough. To guarantee precise paths calculation users often need to load custom CAD models.
By 2020, Realtime Robotics were using OpenCASCADE tools to load .STEP and .IGES files. But as the customers' requirements were getting more diverse and complicated, that was not sufficient anymore. There were three key issues that forced Realtime Robotics to seek for a new solution.
- First, the number of customers demanding support of the formats besides .STEP and .IGES grew. To be able to add their objects to the workcell, customers had to convert .JT, .DAE and other CAD files themselves, with varying results in terms of data loss and performance. Available OpenCASCADE interfaces, in their turn, still required dealing with low-level issues while integrating them.
- Then, the existing solution missed an API to cancel CAD file loading. As a temporary fix, Realtime Robotics detached the loading operation and hid it in the front-end. That improved the UX but still didn’t let the user exit the tool until the background thread was finished.
- Finally, the need for large files processing grew as some of the customers routinely used files over 100 MB. CAD files parsing on a single-core processor was improved with serializing geometry. It speeded up the subsequent loading of the 3D models but increased the memory footprint. The latter was particularly painful considering the enormous tessellated representations volume.
The initial plan to cobble together various libraries was no longer relevant when Realtime Robotic stumbled upon CAD Exchanger. “We would have to hack a bunch of things together and try to figure out how to get them to import data in one common way. And then we discovered that CAD Exchanger has already solved the problem and would just do that for us,” explains Will Floyd-Jones, Co-Founder & Robotics Engineer in Realtime Robotics.
CAD Exchanger is integrated into RapidPlan software to load 22 CAD formats, including JT, Parasolid, ACIS, and others. This way a user can provide the motion planner with the models of the robots and their environment. A user specifies a path to the CAD file from the GUI, and then CAD Exchanger’s API parses and tessellates the file before it is sent to the GPU for rendering and to the geometry backend for collision-checking.
Apart from an ability to read numerous 3D CAD formats, Realtime Robotics benefit from the following features of CAD Exchanger SDK:
- Unified API. CAD Exchanger collapses all the complex infrastructure for loading 3D CAD into a single API with a unified data structure to encode it. Single API decreases the development and maintenance efforts, resulting in faster time-to-market with lower costs.
- Fast processing. CAD Exchanger parses files on multiple cores and delivers a ten-fold improvement in loading large files. And an ability to tag scene elements with UUIDs (universally unique identifiers) remedies the problem of re-loading existing projects.
- Adjustable meshing. CAD Exchanger not only reads polygon data and enables meshing, but also allows to easily adjust the tessellation setting: element dimensions, mesh granularity, angular displacements, etc.
- Cancellation support. CAD Exchanger purpose-built algorithms support regular checks of the operation running and thus allow it to cancel file loading at any time.
Realtime Robotics customers load 3D files that represent a myriad of industrial gizmos. Getting involved in supporting all necessary CAD formats, figuring out their incarnations and standards is a challenging task. CAD Exchanger takes these issues off the shoulders of software vendors by simply abstracting them away behind the simple API with intuitive controls. While 3D CAD data processing is smoothly going behind the scenes, Realtime Robotics can do what they are best at: automated collision-free robot movement.