The multimode decision algorithm is recognized as a crucial component of the multimode autonomous cruise control system deployed on the Zhurong Mars rover prototype HIT-MRII.
This repo contains
-
Visual odometry block of the multimode autonomous cruise control system
-
Generate height map and obstacle map
-
Create driving cost map by combining slope-based cost data with the obstacle map
-
Plan path using the dynamic multi-level path planning algorithm
-
-
Multimode decision block of the multimode autonomous cruise control system
-
Obtain the elevation of the terrain by Elevation Mapping
-
Mark the obstacles on the terrain by Connected Component Labeling
-
Extract geometric features of the obstacle surface by Convolution Operator
-
Compare the desired motion plane of the wheel with the upper surface of the obstacle by Fitting Plane
-
Evaluate the safety of the rover’s motion while moving on the obstacle by Grey Relation Analysis and Fuzzy Logic
-
Main Contributions
Our works are mainly in files under "elevation_mapping/elevation_mapping/src" as follows:
-
CheckObstacle.cpp
-
TraversalCheck.cpp
-
ConnectAeras.cpp, ConnectAeras.h
-
Connectmap_pub.cpp
-
GRA.cpp, GRA.h
-
SecondLayer.cpp, SecondLayer.h
-
MotionSafety.cpp, MotionSafety.h
-
ThirdLayer.cpp
Dependencies
-
elevation_mapping (https://github.com/ANYbotics/elevation_mapping)
-
grid_map (https://github.com/ANYbotics/grid_map)
-
kindr_ros (https://github.com/ANYbotics/kindr_ros)
Note
- This repo does not contain path planning or motion execution. Therefore, it is only for demonstrating algorithm logic and cannot be directly applied to real machines.