Important
This repo contains all necessary packages as submodules (see src directory):
cd ~
git clone https://github.com/dddmobilerobot/dddmr_navigation.git
cd dddmr_navigation && git submodule init && git submodule update
DDDMR navigation (3D Mobile Robot Navigation) is a navigation stack allows users to map, localize and autonomously navigate in 3D environments.
Detail
Below figure shows the comparison between 2D navigation stack and DDD(3D) navigation. Our stack is a total solution for a mobile platform to navigate in 3D environments. There are plenty advantages for choosing DDD navigation:- The standard procedures of DDD mobile robots and 2D mobile robots are the same, make it easier for 2D navigation stack users to transit to DDD navigation without difficulties:
- Mapping and refined the map.
- Turn off mapping, use MCL to localize the robot by providing an initial pose.
- Provide a goal to the robot, the robot will calculate the global plan and avoid obstacles using local planner.
- DDD navigation is no longer suffered from terrain situations. For example, ramps in factories or wheelchair accessible.
- DDD navigation has been welled tested is many fields and is based on the cost-effective hardware, for example, 16 lines lidar, intel NUC/Jetson Orin Nano and consumer-grade imu. We are trying to make the solution as affordable as possible.
3D mapping |
3D global planning |
3D local planning |
3D navigation |
Obstacle avoidance (annoying test) |
Auto docking |
We have been intensively testing our navigation stack on the development platform and different outdoor areas. We also keep in mind that a cost-effective solution is our objective. Our platform is composed of:
- A lidar with 16 lines (Leishen C16)
- intel NUC i7 with 8 GB memory (Now we are testing on Nvidia Jetson Orin Nano)
- MPU 9250 IMU
- Intel Realsense D435
- AgileX Scout Mini - we have retrofitted Scout Mini Odometry with 3D odometry