Path Planning Documentation

This documentation shows how to implement path planning in MATLAB and Simulink.

Contents

Introduction

There are a variety of path planning techiques which enable robots to navigate through an environment. The Robotics System Toolbox includes functionality to create Occupancy Grids and create a Probablistic Roadmap.

Occupancy Grid

An occupancy grid is useful when creating a robot workspace. The integration of sensor data and position estimates create a spatial representation of the approximate locations of the obstacles.

This example demonstrates how to create or update an Occupancy Grid using range sensor readings and how to use the conversion functions (such as quat2eul and axang2rotm) from Robotics System Toolbox™.

Open Example: Updating an Occupancy Grid From Range Sensor Data

Probablistic Roadmap

To determine how to navigate through a known map while avoiding obstacles, try using a probablistic roadmap. The <matlab:web(fullfile(docroot,'robotics/ref/robotics.prm-class.html')) robotics.PRM path planner class constructs a roadmap in the free space of a given map using randomly sampled nodes in the free space and connecting them with each other.

This example demonstrates how to compute an obstacle free path between two locations on a given map using the Probabilistic Roadmap (PRM) path planner.

Open Example: Path Planning in Environments of Different Complexity

Waypoint Navigation

The robotics.PurePursuit class creates a controller object used to make a differential drive robot follow a set of waypoints. The object computes the linear and angular velocities for the robot.

The following examples demonstrates how to use the PurePursuit object to follow waypoints.

Open Example: Path Following for a Differential Drive Robot

Other Information

Other Path Planning algorithms can be found on the File Exchange and in the "Robotics, Vision and Control Toolbox" from Peter Corke.