19
Obstacle Avoidance Obstacle Avoidance Manjulata Chivukula Manjulata Chivukula

Obstacle Avoidance

Embed Size (px)

DESCRIPTION

Obstacle Avoidance. Manjulata Chivukula. Requirements. Traversing the list of waypoints Avoiding the obstacle in the path Going back to the list of waypoints after avoiding the obstacle Path planning Speed control Adhering to the corridor boundary constraints and LBO constraints. Design. - PowerPoint PPT Presentation

Citation preview

Page 1: Obstacle Avoidance

Obstacle AvoidanceObstacle Avoidance

Manjulata ChivukulaManjulata Chivukula

Page 2: Obstacle Avoidance

RequirementsRequirements

Traversing the list of waypointsTraversing the list of waypoints Avoiding the obstacle in the pathAvoiding the obstacle in the path Going back to the list of waypoints after Going back to the list of waypoints after

avoiding the obstacleavoiding the obstacle Path planningPath planning Speed controlSpeed control Adhering to the corridor boundary constraints Adhering to the corridor boundary constraints

and LBO constraintsand LBO constraints

Page 3: Obstacle Avoidance

DesignDesign

Traversing the list of waypoints:Traversing the list of waypoints: Calculating the heading and distance to the waypoint.Calculating the heading and distance to the waypoint.

Reading the next waypoint when reaching a distance Reading the next waypoint when reaching a distance of of 2m2m close to the waypoint. close to the waypoint.

Heading ControllerHeading Controller Error between the current cart heading and desired heading Error between the current cart heading and desired heading

to the waypoint –to the waypoint – inverse_turn_radiusinverse_turn_radius

Page 4: Obstacle Avoidance

Test ResultTest Result

Page 5: Obstacle Avoidance

Obstacle AvoidanceObstacle Avoidance Objective:Objective:

Avoiding the one obstacle in the path by Avoiding the one obstacle in the path by using the static (lat,lon) coordinates of the using the static (lat,lon) coordinates of the obstacleobstacle

Avoiding more than one obstacle by reading Avoiding more than one obstacle by reading the obstacle (lat,lon) values from the the obstacle (lat,lon) values from the synthetic lasersynthetic laser

Avoiding more than one obstacle by reading Avoiding more than one obstacle by reading the obstacle (lat,lon) from the real laserthe obstacle (lat,lon) from the real laser

Page 6: Obstacle Avoidance

Avoiding One ObstacleAvoiding One Obstacle

Avoiding one obstacle in the path was simple.Avoiding one obstacle in the path was simple.

Achieved by using the (lat,lon) values of the Achieved by using the (lat,lon) values of the obstacle.obstacle.

Planning the best route around the obstacle.Planning the best route around the obstacle.

Page 7: Obstacle Avoidance

Test ResultTest Result

Page 8: Obstacle Avoidance

Avoiding obstacle from Avoiding obstacle from Synthetic laserSynthetic laser

Avoidance list < 30Avoidance list < 30 degree error degree error between current cart heading and between current cart heading and obstacle headingobstacle heading

Orientation checkOrientation check CenterCenter LeftLeft RightRight

Moving in the opposite directionMoving in the opposite direction

Page 9: Obstacle Avoidance

Orientation CheckOrientation Check

Page 10: Obstacle Avoidance

Going back to the list of waypoints Going back to the list of waypoints after avoiding the obstacleafter avoiding the obstacle

Switching between modes of operation:Switching between modes of operation: ‘‘Obstacle’ modeObstacle’ mode : On seeing the obstacle by the : On seeing the obstacle by the

synthetic laser.synthetic laser.

‘‘No obstacle’ modeNo obstacle’ mode: When not seeing the obstacle : When not seeing the obstacle and after reaching the synthetic point.and after reaching the synthetic point.

Generating only one synthetic point to avoid any Generating only one synthetic point to avoid any number of obstacles that are. Storing all the number of obstacles that are. Storing all the obstacles between two waypoints and the synthetic obstacles between two waypoints and the synthetic point calculated to avoid the obstacle.point calculated to avoid the obstacle.

Path planning – in the second lap.Path planning – in the second lap.

Page 11: Obstacle Avoidance

Test ResultsTest Results

39.1819 39.182 39.1821 39.1822 39.1823

-86.5224

-86.5222

-86.522

-86.5218

-86.5216

Wpt1

Wpt2

Wpt3

Wpt4

Wpt5

Wpt6

Wpt7Wpt8

cone1 syn

cone3

syn

cone4

syn

cone5

syncone6

cone8

syn

Page 12: Obstacle Avoidance

Obstacle Avoidance using Real Obstacle Avoidance using Real laserlaser

First obstacle seen at distance > First obstacle seen at distance > 6m6m Providing an offset to the steering controller Providing an offset to the steering controller

by calculating the bearing to the obstacleby calculating the bearing to the obstacle Determining the orientation of the obstacleDetermining the orientation of the obstacle

LeftLeft RightRight CenterCenter

Obstacles seen <= Obstacles seen <= 5m5m

Page 13: Obstacle Avoidance

Orientation CheckOrientation Check (Right-hand rule) (Right-hand rule)

Determinant of vectors: (x1,y1) = Obs_point,(x2,y2) = current_gps det = x1*y2-y1*x2

Page 14: Obstacle Avoidance

Obstacle <= 5mObstacle <= 5m

Storing the obstacle in the listStoring the obstacle in the list Updating the obstacle value in the list since Updating the obstacle value in the list since

within within 4m4m the value is more accurate the value is more accurate Ignoring an update if the between new Ignoring an update if the between new

obstacle and the list value is <obstacle and the list value is <0.6m (Same 0.6m (Same obstacle)obstacle)

Calculating the synthetic pointCalculating the synthetic point Updating the synthetic point. Path planningUpdating the synthetic point. Path planning

Page 15: Obstacle Avoidance

More than One obstacleMore than One obstacle

Max distance, max positive error

Min distance, min positive error

Maximum negative error

Page 16: Obstacle Avoidance

Plan best route around by comparing Plan best route around by comparing all the valuesall the values

Max distanceMax distance Min distanceMin distance Max positive errorMax positive error Max negative errorMax negative error

Page 17: Obstacle Avoidance

Path PlanningPath Planning Lagrange Interpolating Polynomial Lagrange Interpolating Polynomial

If the distance between two points > 4mIf the distance between two points > 4m

Where Where x3 = x1 + 0.25*(x2-x1)x3 = x1 + 0.25*(x2-x1)

x4 = x1 + (0.5)*(x2-x1)x4 = x1 + (0.5)*(x2-x1)

x5 = x1 + (0.75)*(x2-x1)x5 = x1 + (0.75)*(x2-x1)

 

 

                                                             

      

 

                                                                     

Page 18: Obstacle Avoidance

Speed ControlSpeed Control

Adjusted the throttle using PI loopAdjusted the throttle using PI loop

Page 19: Obstacle Avoidance

Thank youThank you