What Are the Modern Robotic Computing Architectures?
Knowledge

What Are the Modern Robotic Computing Architectures?

Robotic behavior is often built as a computational graph, with data flowing from sensors to computational technology, all the way to actuators and back. To gain additional performance capabilities, robotic computing platforms must efficiently map these graph-like structures to CPUs, as well as to specialized hardware including FPGAs and GPUs.
Published: Mar 17, 2022
What Are the Modern Robotic Computing Architectures?

Traditional software development for robotic systems has primarily focused on programming the central processing unit (CPU). However, these robotic systems often exhibit processing inefficiencies, high power consumption, and safety issues due to the inherent architectural constraints and limitations of CPUs.

What is a Robot Computing Platform?

Robotic behavior is often built as a computational graph, with data flowing from sensors to computational technology, all the way to actuators and back. To gain additional performance capabilities, robotic computing platforms must efficiently map these graph-like structures to CPUs, as well as to specialized hardware including FPGAs and GPUs.

Robots are complex mechatronic devices, which comprehensively use the latest research results of machinery and precision machinery, microelectronics and computers, automatic control and driving, sensors and information processing, and artificial intelligence.

To integrate these achievements and truly form the ability of cognition, feeling, and action, so that the robot can understand and respond to the real world and accurately complete the operation tasks, the computing platform it carries needs to meet various requirements:

  • Perception ability: The platform has rich I/O interfaces, supports USB3, UART, I2C, and other I/O protocols to receive various sensor data. 360-degree omnidirectional scanning and ranging detection of the surrounding environment, and then obtain the contour map of the surrounding environment.
  • Control ability: It can control various moving parts, such as chassis, arms, fingers, and head, to complete actions in multiple dimensions, and it has real-time and safety guarantees.
  • Computing power: It is necessary to cope with the processing overhead of a large amount of data, as well as meet the huge computing needs of various intelligent algorithms.

Advantages and disadvantages of various computing resources?

Robotics and AI platforms incorporate a variety of computing resources, including CPUs, digital signal processors (DSPs), graphics processing units (GPUs), field-programmable gate arrays (FPGAs), and application-specific integrated circuits (ASICs). They allow roboticists to build flexible computing architectures for robots, requiring the right tools for each task to maximize their performance.

  1. Scalar Processor (CPU):
    Scalar processing elements are very efficient in complex algorithms with multiple decision trees and extensive libraries. But performance scaling is limited. Although CPUs are very flexible, their underlying hardware is fixed. Most CPUs are still based on the Von-Neumann architecture (stored-program computer), where data is brought from memory to the processor, manipulated, and then written back to memory. Each CPU operates sequentially, one instruction at a time, and the architecture is centered around an arithmetic logic unit (ALU), which requires moving data in and out of each operation. In robotics architectures, scalar processors play a central role. Coordinating the flow of information across sensing, actuation, and cognition by using the CPU is fundamental to robotic systems. In addition, Robot Operating System (ROS), a widely adopted software framework for robot application development, is designed in a CPU-centric manner.
  2. Vector processors (DSP, GPU):
    Computational Architecture Vector processing elements (DSP, GPU) are more efficient on a narrower set of parallelizable computing capabilities compared to CPUs. The downside is an inflexible memory hierarchy, which creates latency and loss of efficiency. The GPU performs the same few tasks over and over again, best for professional and functional performance. Vector processors overcome the shortcomings of CPUs in robotics and have the ability to process large amounts of data.
  3. Programmable Logic (FPGA):
    Programmable logic can be precisely tailored to specific computing functions for latency-critical real-time applications. However, these advantages come at the cost of programming complexity. Also, reconfiguration and reprogramming of FPGA’s require longer compile times compared to the programing of scalar and vector processors. Unlike general-purpose memory structures, FPGAs are flexible and adaptable, tailorable to desired tasks,. In robotics architectures, FPGAs enable the creation of run-time reconfigurable robotic hardware via software. Software-defined hardware for robots is good at dataflow computations because statements are executed once all operands are available. This makes FPGAs useful for connecting sensors, actuators, and processing networks. In addition, FPGAs can create custom hardware-accelerated cores with the flexibility to be an alternative to vector processors for data processing tasks.
  4. Application-Specific Integrated Circuits (ASICs):
    The special fixed architecture of the ASIC provides higher performance and power efficiency, as well as the best price for high volume production. But ASICs take many years to develop and no changes are allowed. Therefore, while ASICs will play a role in some future robotic systems, the use of ASICs in robotics architecture is still limited.
  5. Network of Networks:
    Robots are inherently deterministic machines. They are a network of networks where sensors capture data, pass it to computing technology, then to actuators, and back again in a deterministic way. These networks can be understood as the nervous system of the robot. Like the human nervous system, real-time information is passed through all networks to control the coherent behavior of the robot. Von-Neumann-based scalar and vector processor architectures excel at control flow but struggle to guarantee determinism. This is where FPGAs and ASICs come into play as key enabling technologies for robotic systems.
  6. Robot Computing Architecture:
    Consider robotic systems that use robotic operating systems (ROS), which have become common in robotics development. Using ROS, robotic processes are designed as nodes in a computational graph. Robotic computing platforms must be able to efficiently map these graph-like structures onto silicon. The ROS computational graph should seamlessly run across the computational substrate, and data must flow from the programmable logic (FPGA) to the CPU, from the CPU to the vector processor, and all the way back. Robot chips should map not only the ROS computational graph to CPUs, but also FPGAs, GPUs, and other computing technologies for additional performance. 
  7. Best computing resources:
    In contrast to traditional, CPU-centric robotics programming models, the availability of additional computing platforms provides engineers with a high degree of architectural flexibility. Roboticists can take advantage of the properties of various computing platforms: determinism, power consumption, throughput, etc., by selecting, mixing and matching the right computing resources as needed.
Published by Mar 17, 2022 Source :roboticsbusinessreview

Further reading

You might also be interested in ...

Headline
Knowledge
What is Hardware? Classification of Hardware Accessories
Hardware can be seen everywhere and used everywhere in our lives, especially on some large and small machines, many parts of which are made of hardware. It can be used separately or as an auxiliary, such as hardware tools, hardware parts, daily hardware, construction hardware and security supplies, etc. Let's learn what hardware includes and the classification of hardware accessories.
Headline
Knowledge
What is An Injection Molding Machine? What are The Types?
Injection molding machine, also known as injection machine, is a special machine for manufacturing plastic products. There are many types of injection molding machines, which can usually be distinguished by the following methods: driving mode, mold opening and closing direction, applicable raw materials, mold clamping structure, and injection structure.
Headline
Knowledge
Charging Principle, Method and Introduction of Charging Station for Electric Vehicles
A charging station is a device that supplies electric energy for electric vehicles (including pure electric vehicles and plug-in hybrid electric vehicles), similar to the gas station used in fuel vehicles. How does it work and in what scenarios? Let’s find out.
Headline
Knowledge
What is Quick Die Change System (SMED)?
Quick Die Change (SMED), or 10-minute die change, is a set of useful techniques for dealing with multiple batches of small quantities and improving the rapid response capability of the production system and is a type of lean production method. The point is to convert internal jobs to external job conversions as much as possible.
Headline
Knowledge
Methods and Practical Application Scenarios of Industrial Calibration
Calibration is a quantitative comparison. Check the reading of the instrument, it is achieved by measuring the actual standard part, and the deviation between the measured value and the actual value is corrected.
Headline
Knowledge
What is the Grinding Process and Grinding Wheel?
A grinding wheel is a tool for grinding. It is composed of coarse-grained abrasive compounds bonded together. After forming a solid round object, grinding and abrasive processing can be performed on a grinding machine. Grinding is a commonly used processing method, which can obtain higher workpiece density and surface quality. Different grinding methods will produce different grinding defects. The most influential factor is the grinding wheel.
Headline
Knowledge
What is Knurling?
Knurling is a mechanical process of rolling patterns on the knobs of metal products or other working surfaces, mainly for anti-skid purposes. And used in many hardware, mold, and mechanical components.
Headline
Knowledge
Knowledge of Gear and Gear Transmission in A Mechanical Design!
Gears are mechanical parts with teeth that can mesh with each other to transmit motion and power in mechanical transmission. Gear transmissions stand out due to the accuracy of their gear ratio, which makes them perfect for precision machinery.
Headline
Knowledge
What is the Waste Plastic Granulation Process?
The waste plastic granulation process is the process of metering, bonding, plasticizing and granulating polymer resin and various waste plastics and additives into granular plastics, which are semi-finished products in the plastic molding processing industry.
Headline
Knowledge
Analysis of the Advantages and Disadvantages of Electric Tools and Pneumatic Tools!
When it comes to maintenance tools, many people strongly recommend electric tools, which have many varieties, easy to use, and low prices, especially suitable for home use. But you know what? There is also a powerful and efficient tool in the tool industry, that is, pneumatic tools. So, what is the difference between the two, and how should one choose? Let this article tell you now.
Headline
Knowledge
What is the Granulation Process and its Function?
With the wide application of plastic products, the disposal of waste plastics has become a difficult problem and an urgent issue that needs to be solved in global environmental pollution. Therefore, it can be partially reused through the plastic granulation process.
Headline
Knowledge
Understand Passive Components in Minutes
Any electronic product must use two components, so-called "active components" and "passive components". "Active components", as the name suggests, are components that can actively perform operations independently, while "passive components" play a passive protective role. When an electronic product changes current or voltage, the role of "passive components" is to protect "active components" by means of low voltage, filtering noise, etc. To put it simply, "passive components" with low unit prices are always ready to protect the safety of "active components" with high unit prices.
Agree