Download as pptx, pdf, or txt
Download as pptx, pdf, or txt
You are on page 1of 8

EE50238 – Navigation, Guidance & Communications

Dr Rob Wortham

Path Planning and Control

Note: This lecture is being recorded using University of Bath Panopto

16/03/2024 EE50238 Navigation, Guidance & Communications - Lecture 10 1


Today’s Lecture
• Probabilistic Path Planning
• MATLAB
• Parameter tuning
• Control along waypoints
• Tutorial Task: Implement Dijkstra algorithm in
MATLAB

16/03/2024 EE50238 Navigation, Guidance & Communications - Lecture 10 2


Probabilistic Path Planning in
MATLAB Probabilistic Roadmap
40
• EE50238_GridPR.mlx
35
• Inflate to allow for size of robot
30

• With few sample points we may not be 25


able to generate a path

Y [meters]
20
• Probabilistic approach generates different
path each run
15

• Need sufficient points to provide a path 10

• Uncertain how many points are really required 5

0
5 10 15 20 25 30 35 40 45 50
X [meters]

16/03/2024 EE50238 Navigation, Guidance & Communications - Lecture 10 3


Parameter Tuning #1 40
Probabilistic Roadmap

• EE50238_TuneGridPRNodes.mlx 35

30

• Increasing the number of sample nodes 25

Y [meters]
improves the path 20

• Path length 15

• Smoothness 10

• However it increases computational effort 0

with N2 – Q. Why?
0 5 10 15 20 25 30 35 40 45 50
X [meters]

Probabilistic Roadmap

• A. A straight line path must be attempted 40

between each point and all others 35

30

25

Y [meters]
20

15

10

0
0 5 10 15 20 25 30 35 40 45 50
X [meters]
16/03/2024 EE50238 Navigation, Guidance & Communications - Lecture 10 4
Parameter Tuning #2 40
Probabilistic Roadmap

• EE50238_TuneGridPRDist.mlx 35

30

• Keep number of sample nodes constant 25

Y [meters]
• We can get MATLAB to generate same ‘random’ 20

points 15

• Vary the maximum distance for straight 10

line paths between nodes


5

• Reduces computational effort


0 5 10 15 20 25 30 35 40 45 50
X [meters]
Probabilistic Roadmap

• May need more points to achieve a route


40

35

• Route may not be as ‘good’ 30

25

Y [meters]
20

15

10

0
0 5 10 15 20 25 30 35 40 45 50
X [meters]
16/03/2024 EE50238 Navigation, Guidance & Communications - Lecture 10 5
Path Following
12
• EE50238_TuneGridPRDist.mlx
10

• Tune path following based on


8
• Robot characteristics

Y [meters]
• The path 6

• Desired behaviour – smoothness, accuracy, speed? 4

• Robot parameters 2

• Max linear velocity 0


0 2 4 6 8 10 12

• Max angular velocity


Reset Simulation Randomize Location
X [meters]

• Others? 12

• Path following parameters 10

• Look ahead distance 8

Y [meters]
6

0
0 2 4 6 8 10 12
Reset Simulation Randomize Location
X [meters]
16/03/2024 EE50238 Navigation, Guidance & Communications - Lecture 10 6
Tutorial Session
• EE50238_DijkstraTemplate.mlx Binary Occupancy Grid

• Implement Dijkstra’s algorithm 40

• Template provides a starting point and 35

some suggested guidelines to write the 30


code.
25
• Working code will be provided after the

Y [meters]
tutorial. 20

15

10

0
0 5 10 15 20 25 30 35 40 45 50
X [meters]

16/03/2024 EE50238 Navigation, Guidance & Communications - Lecture 10 7


Today’s Lecture
• Probabilistic Path Planning
• Parameter tuning
• Control along waypoints
• Tutorial Task: Implement Dijkstra algorithm in MATLAB

Questions? – Remember the moodle


discussion forum!

16/03/2024 EE50238 Navigation, Guidance & Communications 8

You might also like