0

$USD

$USD
SELECTION GUIDE

Single Board Computer (SBC) for Robotics

DFRobot May 03 2023 4856

Why use SBC for robotics?

The robotics field often demands extensive computation and data processing, requiring control algorithms that are stable, accurate, and capable of real-time performance. Furthermore, robots used for tasks such as camera calibration require sufficient storage and processing power. However, traditional industrial control computers are typically bulky and have high power consumption, high complexity, a long startup time, and slow operational speeds. Conversely, Single Board Computers (SBCs) have emerged as a favored option for powering robots due to their numerous benefits compared to traditional desktop computers.

SBC has the following advantages when applied to robotics:

 

Small and portable

Small in size and lightweight, it is easy to embed in the design of the robot.

 

Easy to program and configure

SBC's software programming and configuration are relatively simple and easy to perform. It can usually be programmed using various programming languages such as Python and C++, making robot development and control more flexible.

A most gratifying circumstance is that, with the proliferation of the ROS system, developers at large can harness the prowess of ROS or ROS2 systems to enhance their endeavors in robotic application development. Deploying ROS nodes on single-board computers (SBCs) endows robots with more tailored capabilities, thereby enabling them to function more dynamically.

 

High performance

SBCs can offer high performance by utilizing powerful processors, high-speed memory, and fast storage options. Some SBCs are designed with multi-core processors, such as the LattePanda 3 Delta, which enable efficient high-speed processing for demanding tasks.

For instance, it is feasible to deploy a ROS node for visual processing on the Lattepanda 3 Delta, facilitating the realization of human skeletal recognition using YOLO v8. Furthermore, the incorporation of a SLAM node empowers the robot with autonomous navigation capabilities. The formidable performance of SBCs plays a pivotal role in enabling the manifestation of such functionalities.

 

Adaptable & Scalable

SBCs are highly adaptable and scalable when applied to robotics. They can be customized and expanded according to the specific needs of a robot, making them a versatile option for various application scenarios.

Through the utilization of ROS, developers can deploy an SBC as a node that encompasses either a singular functionality or a multitude of services. Manipulating these nodes facilitates seamless scalability of functionalities and meticulous cost management.

 

Figure: Elephants Robotics myBuddy 280

 

 

Single-board computers (SBCs) offer so many advantages, but they also have some limitations, such as limited storage capacity due to their small form factor, and compatibility issues that can arise with certain software and protocols.

To reduce the risk of compatibility issues, it is important to select commonly used software and protocols that are known to work well with SBCs. Additionally, choosing an SBC that is specifically designed to meet your needs and requirements can help to ensure that you have the necessary features and capabilities to accomplish your goals.

 

Typical SBCs for Robotics

With so many different SBCs on the market, it can be tough to know where to start. To help get you started, we've narrowed down the choices to three typical SBCs that are great for robotics projects, including Raspberry Pi, BeagleBone Black, and LattePanda 3 Delta. They offer a range of capabilities and features that can be tailored to meet your specific project requirements.

 

1. Raspberry Pi

Raspberry Pi is a powerful and inexpensive single-board computer that is ideal for development and applications in the field of robotics.

It provides various I/O interfaces, such as GPIO, USB, HDMI, and Ethernet, which can connect sensors, actuators, and other external devices. In addition, Raspberry Pi supports various programming languages and operating systems, such as Python, C++, and Linux, which makes it highly flexible and scalable in robotics applications.

Raspberry Pi also has detailed documentation and a large user community, so you can find a lot of tutorials for inspiration and seek help with troubleshooting on forums. If you have higher computing requirements, Raspberry Pi 3 B+ or Pi 4 is also a perfect choice, while Raspberry Pi Zero/Zero W can be a small and low-power option.

 

What makes the Raspberry Pi stand out:

  • Lots of models to pick from
  • Off-the-shelf robotics kits available
  • Excellent hardware and software compatibility
  • Large community

 

Figure: Raspberry Pi

 

2. BeagleBone Black

BeagleBone Black is an affordable single-board computer designed for makers, originating from BeagleBoard.

While its specs may be modest, packing in 512MB of DDR3 RAM, a 4GB 8-bit eMMC module, 3D graphics acceleration, dual PRU 32-bit microcontrollers, and a NEON floating-point accelerator, the BeagleBone Black nevertheless serves as a solid base for various robotics projects.

On the software side, you can run Linux operating systems such as Ubuntu and Debian, as well as Android and a slew of other OSes.

It has HDMI, Ethernet, USB interfaces, and two 46-pin headers. Multiple digital and analog input/output pins provide flexibility to meet different needs. The BeagleBone Black has a large community, vast resources, and hardware add-ons. You'll discover numerous online forums, IRC channels, and books that can guide you through the learning process. Additionally, BeagleBone provides an impressive selection of hardware add-ons, and there's even a dedicated robotics cape with a 9-axis IMU for effortlessly creating a robot at home.

 

What makes the BeagleBone Black stand out:

  • Affordable
  • Great hardware and software compatibility
  • BeagleBoard Capes available including the robotics cape
  • Dual 46-pin GPIO headers
  • Large community

 

 

Figure: Beagle Board


 

3. LattePanda 4G/64GB

LattePanda 3 Delta is powered by the latest Intel 11th generation mobile quad-core processor N5105 with up to 2.9GHz burst frequency and rich GPIOs. Compared to its previous generation, the CPU speeds up to 2x faster, and the GPU speeds up to 3x faster. This excellent performance provides fast and responsive operation, which is critical for real-time control and decision-making in robotics. Meanwhile, it can be a great tool for Windows-based development environments due to its compatibility with a wide range of software and development tools, as well as its portability and ease of use.

It uses 2933MHz high-frequency LPDDR4 RAM - up to 8GB, 2x larger than the previous generation - for super-fast and smooth performance whether you're loading a large number of web pages in Chrome or running multiple virtual machines. More memory means more efficient multitasking, and it can be expanded up to 64GB, allowing for more software and data to be installed without any external storage.

LattePanda 3 Delta uses WIFI 6, whose transfer speed is 2.7 times faster than WIFI5. It is also equipped with a USB 3.2 gen2 x1 port with an ultra-high bandwidth, delivering up to 10Gb/s of throughput which is twice faster than USB3.2 gen1 x1 (previously known as USB3.0). It has a Gigabit Ethernet port onboard, which can connect to the Internet at extremely high speed. By using LattePanda 3 Delta's high-speed network and various connectivity options, robots can quickly transmit and receive data and support various machine learning and artificial intelligence applications, thereby improving their intelligence and autonomy.

 

 

What makes the LattePanda stand out:

  • Powerful processor
  • Rich GPIOs
  • Smooth performance
  • Ultra-fast connectivity

 

 

Figure:Lattepanda 3 Delta

 

Applications of Single Board Computers in Robotics

So, in robotics, SBCs are mainly used for control systems, image processing and computer vision, sensor integration, and machine learning & AI. I bet you're curious to know some real-life examples of how SBCs are being used in robotics. Let's explore four cool scenarios that showcase the power of SBCs in robotics.

 

MechArm Pi 270 Based on Raspberry Pi

Application area: Control systems

 

Figure: Raspberry Pi 4-based Robotic Arm

 

 

The Raspberry Pi 4 SBC-driven MechArm Pi 270 desktop robotic arm shown in Figure is a six-axis robotic arm with a working radius of 270 millimeters, supporting a load of up to 250 grams, and running Debian/Ubuntu + ROS on the Raspberry Pi 4 single-board computer.

Due to SBCs' small size, lightweight, and ease of embedding into various electrical and mechanical systems of robots, including motors, actuators, sensors, communication, and navigation systems, SBCs can assist robots in performing autonomous navigation, obstacle avoidance, and object grasping tasks.

 

 

OpenCV Face Recognition Based on LattePanda

Application area: Image processing and computer vision

 

Figure: Visual Recognition Robot Based on Lattepanda

 

 

The project shown in the figure above is a facial recognition robot made by a Hackster user based on DFRobot LattePanda.

SBCs have a high-performance processing capability and can be used to process image data collected by robots, to perform computer vision analysis, and for tasks such as facial recognition or motion tracking. This can help robots better perceive their environment and identify targets, obstacles, etc. SBC can be used

 

Self-driving Car Based on LattePanda 3 Delta

Application area: Sensor integration

Figure: DonkeyDrift X2

 

 

Donkey Car is an open-source project that uses SBCs as a computing platform to help AI developers, students, and researchers build autonomous driving prototypes. Mushroom Cloud Makerspace incubated the "Drift Donkey Car Community" focused on AI education and sports platforms using SBCs as a computing platform. The community has launched the new generation DonkeyDrift X2 (Figure 3), based on the Donkey Car project. It uses an Intel® Celeron® N5105 processor and OpenVINO™ toolkit to achieve efficient image recognition and sensitive motion response, without additional acceleration cards or AI modules.

SBCs have become a crucial technology for autonomous driving research due to their high performance and easy programming.

 

 

Service Robot Based on Latte Panda

Application area: Sensor integration, machine learning & AI

Figure: Service Robot

 

 

The service robot built using Latte Panda shown in Figure 4 represents a more complex and large-scale robot system achieved through such integration.

The adaptability and scalability of Single Board Computers (SBC) allow them to integrate various sensors, such as cameras, sonar, LiDAR, thermometers, hygrometers, and others. When combined with machine learning and artificial intelligence algorithms, SBCs can achieve smarter and more autonomous robot systems.

 

Future of Single Board Computers in Robotics

We have already introduced the typical SBCs and listed some popular applications in robotics. However, the development of SBC is far beyond that.

In the future, robotics will be diversified, intelligent, flexible, collaborative, and social. Robots will become an important part of human society, creating more value and benefits for humanity.

For example, with the continuous development of the ROS system, we can now run it on some single-board computers. For instance, by using Gazebo's 3D physics simulation platform, we can further adjust robots in a virtual environment. Through simulation, we can fine-tune our robots, optimize our designs, reduce physical losses, and directly run them on the robot after simulation, thereby reducing the difficulty of deployment.

As the application of robots expands, the requirements for computing power and power consumption will also become more stringent. At the same time, robots also need to be more energy-efficient and environmentally friendly to reduce their impact on the environment.

 

In Summary

SBCs are quickly becoming the go-to option for powering robots, thanks to their numerous benefits, such as compact size, high performance, adaptability, scalability, and ease of programming. These features make SBCs a versatile solution for a variety of applications in robotics, including control systems, image processing, computer vision, sensor integration, and machine learning & AI.

If you're new to SBCs and want to get started quickly, we recommend checking out popular options like Raspberry Pi, BeagleBone Black, and LattePanda 3 Delta. These SBCs are widely used and have a large community for support and development.

Looking for more SBCs? You can check out the website to find the one you need.