Skip to content

8 KB

Machine-translated by Robotheca from the original in Chinese (opens in a new tab). License: Apache-2.0 (opens in a new tab).

OPENMOVER

Open-source AGV robot chassis based on ROS

Project Motivation

The origin of everything stems from a question: Is there a robot chassis development project that can accompany us from learning ROS basics to practical applications?

When we browse robot chassis on Taobao, we can see many small ROS robot chassis based on Raspberry Pi and Jetson, as well as large industrial-grade transport chassis. The former can often only accompany us through the initial learning and development stage, but their structure and hardware are often tied to other related products of the company. Therefore, the knowledge system we acquire during learning is incomplete, and we need to separately study the structural design and electrical control parts of the chassis later; the latter often do not provide open interfaces for us to learn and develop, their structures are relatively complex and difficult to disassemble, and the systems in their main controllers are often not based on the ROS framework...

Later, driven by the above question, we began exploratory development around the robot chassis. We have been exploring how to ensure low-cost simplification of industrial chassis structures, guided by the principle of "no entity should be added unless necessary," to avoid unnecessary designs made by ROS robot chassis on the market in pursuit of low cost and high sales, making the structure as simple as possible; in terms of electrical control, we strive to simplify it to be mainly modular, drawing lessons from the redundant designs of control chassis on the market, while reserving replacement options for easily damaged and difficult-to-design components such as power chips and motor controllers to prevent beginners from losing interest due to chassis design and occasional component damage and repair...

Later, based on the many lessons learned from the above, we launched the OPENMOVER project, hoping that this project can summarize our experiences and lessons in robot chassis design, providing a complete robot chassis design approach for beginners interested in exploring robot design and applications. We do not hope that they can avoid the problems in robot development learning, but rather that when they encounter problems in subsequent development and design, they can think from three dimensions: What tasks does our robot need to accomplish? What capabilities are required to complete the task? For achieving these capabilities, how many design approaches do my structure, hardware, and software have?

The essence of robot design is also based on human needs. Designing a complex system is not the original intention of our project. We do not want beginners to get lost in technology, labeling themselves as structure, hardware, and software developers, but rather to think about what we expect to get when we use this robot as users.

Of course, as the designers of the first version, we hope that this robot chassis is simple and reliable enough to be equipped with robotic arms, lifting platforms, engineering inspection equipment, etc., and can expand enough application scenarios without major structural changes, from educational applications to our actual business scenarios. Of course, our exploration continues...

This project follows the Apache-2.0 license (opens in a new tab)

Overall Structural Design

Updated on 2024-01-22, Version 1.0

Version 1.0

Click here (opens in a new tab) to view the design mind map file.

Click here (opens in a new tab) to view the prototype vehicle image.

The overall dimensions of the 1.0 prototype are 300×320 mm. The vehicle adopts a dual differential wheel + four caster wheel structure. The differential wheels use the Waveshare DDSM115 direct-drive hub servo motors, and the four caster wheels theoretically support a maximum load of 50 kg.

The initial version's appearance and structure are mainly inspired by the Hikvision AGV Q2 series LMR stealth robot, with the following simplifications and design improvements:

  1. Suspension for main wheels: Added suspension to the driving wheels to ensure adaptability to flat ground and improve motion performance.
  2. Radar field of view: The 1.0 version uses the Benewake LDS-50C-C30E single-line TOF laser radar, increasing the visible range of the single-line radar and reducing structural occlusion angles.
  3. Compact size: Reduced the overall vehicle size to stay within 320×320 mm.
  4. Layered design: Ensured expandability by adopting a layered structure, with the chassis and expandable components in a loosely coupled relationship.
  5. Chassis layout: Reserved internal expansion space in the chassis for easy cable management and component expansion.
  6. Battery positioning: Since a 4S battery pack is required for power supply, a dedicated battery compartment was added to prevent safety issues caused by unstable battery fixation.
  7. Load capacity: To ensure load capacity, the chassis design considers uniform force distribution to the four caster wheels.

We provide multiple mounting holes for different radar models. The prototype vehicle uses the Benewake LDS-50C-C30E radar, which communicates with the industrial computer via Ethernet. Considering that this radar may not be easily available, we have also tested the relatively accessible RoboSense N10P series radar. You can modify the mounting holes based on the radar you have.

Chassis Main Control Design

Update time: 2024.1.20, Version 1.1

1.1 Version

The first version of the chassis control board uses the ESP32S3 from Holo as the main controller. The industrial computer connects to the onboard dual-channel UART-to-Ethernet module (USR-TCP232-E) via Ethernet to communicate with the chassis controller and the serial screen. In the future, a Raspberry Pi Pico will be used as the main controller, communicating with the industrial computer through a UART-to-USB module via a serial port.

The main design considerations for this version are as follows:

  1. Minimize the soldering of SMD and plug-in components; use existing modules as much as possible.
  2. Use an RS485 bus-to-UART module to control the Waveshare hub servo motor.
  3. Support control of dual brushed motors.
  4. Include external lighting effects and button control interfaces.
  5. Provide dual 12V power outputs with a maximum current rating of at least 3A.
  6. Use a dual-channel UART-to-Ethernet module for communication with the industrial computer. The main controller's Type-C port is primarily used for power supply and will be phased out in the future.
  7. The chassis controller runs on the FreeRTOS system, but for ease of use by beginners, Arduino or PlatformIO is used as the development platform for flashing.

Control System Framework

Update: 24.1.20

The chassis uses ROS Noetic (opens in a new tab) running on Ubuntu 20.04.6 as the robot system framework.

Related sample code and adaptations will be provided in subsequent updates.

Bill of Materials and Accessories Description

All materials for this vehicle can be purchased and processed on the Taobao platform.

Main components include:

ComponentModelReference Price
TOF Laser RadarBlue Sea LDS-50C-C30E (opens in a new tab)2000
TOF Laser RadarRayShape N10P (opens in a new tab)571.2
Hub MotorElecrow DDSM115 Direct-Drive Servo Motor (opens in a new tab)392
N100 Industrial PCT8PLUS/N100/DDR5 (opens in a new tab)740
14.8V Li-ion Battery PackEssen Energy 14.8V 10500mAh (opens in a new tab)160
Metal Plate Cutting5052 Aluminum Plate Processing (opens in a new tab)230~260

A detailed bill of materials will be provided in the next update.

Upload Instructions

The most recent upload update was on 2024.1.20, with an overall version of 1.0.

Project files and code are being uploaded and updated gradually.

2024.1.20 First upload, mainly including the overall vehicle structural design, the first version of the chassis control board files, and a simple bill of materials.

2024.1.22 Second upload, correcting details in the overall vehicle structural design from the first upload, updating documentation including images, processing files, and module description files, and uploading the first version of the bill of materials for related accessories.

Update Plan

The next upload is expected before January 25, 2024, with version 1.0 planned.

  1. Add structural expansion instructions for the entire vehicle, including extension design and installation solutions for the robotic arm and lifting platform
  2. Update detailed structural design instructions for the entire vehicle, and prepare to upload ROS-related control programs and first-version instructions
  3. Add explanations of the overall design
  4. Update reference materials and related instructions

This section couldn't be translated automatically. Read the original (opens in a new tab)

收集意见

希望大家能在issues中提出你们对小车的改进与应用意见,我们将会及时回复并在整理后以月报进行发布

About Us

This project comes from the team of A510 Laboratory, Engineering Training Center, Southwest Jiaotong University.

Files by @wuyaolinglab, at commit 2ae5b2e, read from GitHub in your browser. Hardware license: Apache-2.0; software license: Apache-2.0. Robotheca doesn't review code: read it before running it.