Hauling material in an open pit mine requires a planning stack capable of both navigating at the global scale and avoiding obstacles during local path following. Navigation Toolbox™ offers planners and controllers that serve well for 2-D indoor planning, but they can also be extended for 2.5-D offroad navigation. You can do this by deriving structure from terrain and incorporating heuristics into the planners to account for changes in elevation or slope. The solution proposed by this repository approaches the offroad navigation problem in multiple steps described in the following MLX files:
-
CreateRoutePlannerUsingDigitalElevationData.mlx
— Process digital elevation data into a road network for route planning.
-
CreateTerrainAwareGlobalPlanners.mlx
— Create an onramp planner that enables the autonomous haul truck to drive onto the road network while avoiding obstacles. This example also creates a terrain-aware planner for situations where the onramp planner cannot find a path to the road network.
-
CreateLocalPlannerToNavigateGlobalPath.mlx
— Create a planner for following global reference paths while satisfying the kinematic and geometric constraints of the haul truck.
-
CreatePathFollowingMPCController.mlx
— Create an MPC-based controller for efficiently following a reference-path while minimizing drift.
Lastly, the repository has the ModelAndControlAutonomousHaulTruck
MLX file. This file shows how to use Simulink® to integrate the road network and planners into an autonomous navigation stack with logic controlled by Stateflow®.
This figure shows the top-level of the autonomous navigation stack.
In R2024a, support for Unreal® simulation was added:
MathWorks Products (https://www.mathworks.com)
Requires MATLAB release R2024b or newer
- MATLAB®
- Simulink®
- Navigation Toolbox™
- Computer Vision Toolbox™
- Image Processing Toolbox™
- Automated Driving Toolbox™
- Stateflow®
- Robotics System Toolbox™ (Optional)
- Simulink 3D Animation™ (Optional)
- Model Predictive Control Toolbox™ (Optional)
Installation instructions
- MATLAB installation: Visit installation instructions webpage to get started with the MATLAB installation process.
- Ensure that the products mentioned under MathWorks Products above are installed.
The license is available in the license.txt file in this GitHub repository.
Copyright 2023-2024 The MathWorks, Inc.