a framework for use in slam algorithms principle investigator: shaun egan supervisor: dr. karen...

19
A Framework for use in SLAM algorithms Principle Investigator: Shaun Egan Supervisor: Dr. Karen Bradshaw

Upload: kevin-gallagher

Post on 12-Jan-2016

219 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: A Framework for use in SLAM algorithms Principle Investigator: Shaun Egan Supervisor: Dr. Karen Bradshaw

A Framework for use in SLAM algorithms

Principle Investigator: Shaun EganSupervisor: Dr. Karen Bradshaw

Page 2: A Framework for use in SLAM algorithms Principle Investigator: Shaun Egan Supervisor: Dr. Karen Bradshaw

SLAM is a family of algorithms

Page 3: A Framework for use in SLAM algorithms Principle Investigator: Shaun Egan Supervisor: Dr. Karen Bradshaw
Page 4: A Framework for use in SLAM algorithms Principle Investigator: Shaun Egan Supervisor: Dr. Karen Bradshaw
Page 5: A Framework for use in SLAM algorithms Principle Investigator: Shaun Egan Supervisor: Dr. Karen Bradshaw

SLAM

State UpdateLandmark Tracking (Dead

reckoning)

Landmark Extraction

Data Association

Pose Tracking

Odometry

Page 6: A Framework for use in SLAM algorithms Principle Investigator: Shaun Egan Supervisor: Dr. Karen Bradshaw

CountLeft CountRight

Odometry Algorithm

Page 7: A Framework for use in SLAM algorithms Principle Investigator: Shaun Egan Supervisor: Dr. Karen Bradshaw

Change in wheel position:

βˆ† 𝑃=βˆ†π‘π‘‘Ξ π‘–

Change in heading:

c: encoder countd: wheel diameteri: increments per tour

βˆ† πœƒ=(βˆ†π‘Ÿ βˆ’βˆ† 𝑙)

π‘Žπ‘‘

r: right encoder countl: left encoder counta: axis wheel rationd: wheel diameter

Average heading:

πœ—=βˆ†πœƒβˆ—0.5+πœƒ 𝑙 ast known heading

New robot position and heading

))

y=𝑦+((βˆ†π‘ƒπ‘™+βˆ†π‘ƒπ‘Ÿ )βˆ—0.5sin (πœ— ))

Page 8: A Framework for use in SLAM algorithms Principle Investigator: Shaun Egan Supervisor: Dr. Karen Bradshaw

The problem with ultrasonic range detection

The answer?

Page 9: A Framework for use in SLAM algorithms Principle Investigator: Shaun Egan Supervisor: Dr. Karen Bradshaw

Range scans Triangulation

Page 10: A Framework for use in SLAM algorithms Principle Investigator: Shaun Egan Supervisor: Dr. Karen Bradshaw

Triangulation

1. Add current sensor information to the sliding window2. Compare each of the new sensor range readings with all other previous readings in the

window3. Triangulate these readings to create valid points for each new sensor reading:

Calculate some required values:

βˆ† π‘₯=π‘ π‘Ÿπ‘₯βˆ’π‘ π‘™π‘₯βˆ† 𝑦=π‘ π‘Ÿπ‘¦βˆ’π‘ π‘™π‘¦π‘‘2=βˆ† π‘₯2+βˆ† 𝑦 2𝑑=√ 𝑑2π‘˜=

(𝑑 2+π‘Ÿπ‘™βˆ’π‘Ÿπ‘Ÿ )2𝑑

s: sensor positionr: range value

Calculate the points of intersection

And finally, find which point is the one we want (the one visible to both sensors:

For each point (i): For each sensor (k):

πœ—=arctan (βˆ† 𝑦 ,βˆ†π‘₯ )βˆ† 𝑦=π‘ƒπ‘–π‘¦βˆ’π‘†π‘˜π‘¦βˆ† π‘₯=𝑃𝑖π‘₯βˆ’π‘†π‘˜π‘₯

πœ—βˆˆ(π‘ π‘˜πœƒβˆ’π‘ π‘˜π›Ώ2; π‘ π‘˜πœƒ+

𝑠 π‘˜π›Ώ2

)

Page 11: A Framework for use in SLAM algorithms Principle Investigator: Shaun Egan Supervisor: Dr. Karen Bradshaw

Range scans Triangulation

Point refinement

Page 12: A Framework for use in SLAM algorithms Principle Investigator: Shaun Egan Supervisor: Dr. Karen Bradshaw

𝑇 π‘₯=0𝑇 𝑦=0

For every point (i):

𝑇 π‘₯=𝑇π‘₯+𝑃𝑖π‘₯𝑇 𝑦=𝑇𝑦+𝑃𝑖𝑦

Calculate the average position of points:

𝑇 𝑑=0

𝑇 𝑑=𝑇𝑑+1

Create a new landmark: new Landmark()

Point refinement:

Page 13: A Framework for use in SLAM algorithms Principle Investigator: Shaun Egan Supervisor: Dr. Karen Bradshaw

Range scans Triangulation

Point refinement

Data association

Landmark refinement

Page 14: A Framework for use in SLAM algorithms Principle Investigator: Shaun Egan Supervisor: Dr. Karen Bradshaw

Data association and landmark refinement:

1) The newly created landmark is added to the map

2) Compare landmarks

3) If landmarks are within a certain range of each other: Considered the same landmark Merged according to their triangulation count

Page 15: A Framework for use in SLAM algorithms Principle Investigator: Shaun Egan Supervisor: Dr. Karen Bradshaw

phew…

Page 16: A Framework for use in SLAM algorithms Principle Investigator: Shaun Egan Supervisor: Dr. Karen Bradshaw

β€’ Configurationβ€’ Pointβ€’ Poseβ€’ Landmarkβ€’ ScanStep

CommonUtils

β€’ Odometerβ€’ Encoderβ€’ FT_Odometer

OdometryUtils

β€’ UltraSonicβ€’ TBFCalculator

TBFUtils

Page 17: A Framework for use in SLAM algorithms Principle Investigator: Shaun Egan Supervisor: Dr. Karen Bradshaw
Page 18: A Framework for use in SLAM algorithms Principle Investigator: Shaun Egan Supervisor: Dr. Karen Bradshaw

β€’ Additional landmark extraction and data association models

β€’ The addition of a package for localization algorithms

β€’ The addition of a package for loop closure utilities

β€’ Extensions for cooperative SLAM

Page 19: A Framework for use in SLAM algorithms Principle Investigator: Shaun Egan Supervisor: Dr. Karen Bradshaw

?