Elecrow's 2nd Electronics Design Contest is Heating Up! Win $6,000 cash + Maker products + Official sponsorship! Share your designs today! [Learn More]

user-img

Blade Master

+ Follow

ddbot, a mobile robot for AI and robotics education

This robot is named "ddbot", standing for a mobile differential-drive robot platform. We aim to make it AI-driven, affordable, and supported by comprehensive tutorials for education in AI and robotics. The platform offers guiding examples where users can learn how to develop advanced AI features such as deep learning, computer vision, reinforcement learning, etc on robots.

ddbot, a mobile robot for AI and robotics education
 
  • thumbnail-img
 

Story

This robot project, temporally named "ddbot", which is a ground robot with differential-drive kinematics. We 3D print the base to support the battery, motors, and connectors. Right now the 1800mAh LIPO battery is used and we will see if it can last long enough for the applications. DC gearbox motors are used. Two main wheels and one universal caster wheel (in the front, below the base) are used for differential drive mode.

We selected a dual-channel DC motor drive module to drive two motors simultaneously and provide useful voltage outputs like 3.3V, and 5V for other modules. We chose ESP32 as the microcontroller, which provides low-level interfaces such as I2C, SPI, PWM, etc. It can control devices with these interfaces, e.g. PWM for adjusting motor speed, and I2C for reading IMU data. A 6-axis IMU sensor is included to measure the car's attitude.

For easy setup and flexibility, we use a breadboard for wire connections for now. we add an OrangePi 3 LTS as the high-level central controller responsible for managing all peripherals, including sensors, and coordinating with other modules such as the ESP32 located on the second layer. It runs a modified version of the Linux Ubuntu operating system. Moreover, we attach an 8MP USB video camera (UVC) module on this layer at the very front of the robot body. This is required for all vision-based tasks.

On the fourth layer, we add a Time-of-Flight (ToF)-based 2D LiDAR at the top for scanning the distance of nearby environment. This is useful for projects such as SLAM and collision avoidance. The robot is shown in the image below.

we shift the focus to software development, from verifying all hardware modules to adding several AI-based projects and their tutorials. In terms of the software programming language, we will choose Python as it is widely used in the AI & deep learning community and is easy to learn. Specifically, we will use Python within the Linux OS on the OrangePi and use its micro-controller version, named CircuitPython, on the ESP32.

To point out where the software utilities are needed, we show a scatch of system structure here. The numbered arrows and blocks in red are where the software should cover. These numbers help as a reference to track the development status of each software component and are used below as [x] to match specific functionality. We have developed and tested the software for several functionalities, including the wireless video streaming of the UVC camera [1,5], the UART communication between Orangepi and ESP32 [6,7], a terminal UI-based control panel [4], and a simple motor control [8].

Video streaming enables wireless, real-time visualization of the ddBot camera view on a webpage, facilitating remote FPV control. UART communication facilitates high- to low-level device information exchange, allowing the Orangepi to process compute-extensive AI tasks like image classification via deep learning, with its results sent to the ESP32 to control low-level hardware like motors. The terminal UI-based control panel offers users an easy way to control robot movement via terminal programs and keyboard inputs. Additionally, we do full voltage motor control using H-bridge mode.

UART communication between Pi and ESP32

 UART communication between Pi and ESP32

UART communication between Pi and ESP32

UART communication between Pi and ESP32

Terminal UI-based control panel: use the local computer keyboard to send commands to the robot via SSH

Terminal UI-based control panel: use the local computer keyboard to send commands to the robot via SSH

ddbot, a mobile robot for AI and robotics education

This robot is named "ddbot", standing for a mobile differential-drive robot platform. We aim to make it AI-driven, affordable, and supported by comprehensive tutorials for education in AI and robotics. The platform offers guiding examples where users can learn how to develop advanced AI features such as deep learning, computer vision, reinforcement learning, etc on robots.

674
 
7
3
0

Share your project on social media to expand its influence! Get more people to support it.

  • Comments( 3 )
  • Like( 7 )
/1000
Upload a photo:
You can only upload 1 files in total. Each file cannot exceed 2MB. Supports JPG, JPEG, GIF, PNG, BMP
  • Hi, your project is also suitable for our 'AI & Open Hardware' contest. Are you interested in participating? No need to upload again, just add this category.
    Mar 14,2025 1 comments
    • Doreen Tn 2025-03-14 16:06:42
      Reply@Doreen Tn
      'AI & Open Hardware' Contest : https://www.elecrow.com/ai-open-hardware-contest.html
      Reply
    Reply
  • Great project!
    Mar 19,2025 0 comments
    Reply

You May Also Like

View All
Add to cart
Board Type : GerberFile :
Layer : Dimensions :
PCB Qty :
Different PCB Design
PCB Thickness : PCB Color :
Surface Finish : Castellated Hole :
Copper Weight : 1 oz Production Time :
Total: US $
As a sharing platform, our community will not bear responsibility for any issues with this design and parameters.

PCB Assembly

PCBA Qty: BomFile:
NO. OF UNIQUE PARTS: NO. of Components:
Assembly Cost: US $
As a sharing platform, our community will not bear responsibility for any issues with this design and parameters.
Add to cart
3dPrintingFile : Size :
Unit : Volumn :
3D Printing Qty : Material :
Total: US $12.99
As a sharing platform, our community will not bear responsibility for any issues with this design and parameters.
Add to cart
Acrylic Type : AcrylicFile :
Dimensions: Engrave:
Acrylic Qty :
Acrylic Thickness:
Acrylic Color:
Total: US $12.99
As a sharing platform, our community will not bear responsibility for any issues with this design and parameters.
Add to cart
CNC Milling File : Size:
Unit: Volumn:
CNC Milling Qty : Material:
Type of Aluminum: Surface Finish:
Tolerance:
Surface Roughness:
Total: US $12.99
As a sharing platform, our community will not bear responsibility for any issues with this design and parameters.
Add to cart
Item Price Qty Subtotal Delete
Total: US $0.00
Certified Product | Supported Purchase: Full After-sales Protection