Mechatronics Final Project

 

Team Members:

Sulema E. Aranda (aranda@uiuc.edu)
Mark Disch (disch@uiuc.edu)
Rajan Lakshmi (lakshmi@uiuc.edu)
Ketan Savla (ksavla@uiuc.edu)

 

Objective:

The objective of the project is to implement the BUG's algorithm for motion planning and obstacle avoidance in an unknown environment.

 

Implementation:

The objective will be met by aid of the following sensors:

Obtain better estimate with use of:

Decentralized Motion Planning for Multiple Mobile Robots:

Assumption For Each Robot:

Desired Results of Algorithm:

Algorithm:

  1. Move along the straight line, M-line (the line connecting the traget point to the starting point) until one of the following occurs:
  2. At every step, follow the boundary of the collision front, while modifying the hit point and the M-line according to the rules, until one of the following occurs:

Kalman Filter:

  1. "Optimal recursive data processing algorithm"

  2. Optimal linear estimator
  3. The filter projects forward what the state and covariance is going to be using the dynamics of the vehicle, and then the filter corrects that prediction as soon as new measurements are received.

Note: Since our vehicle model was actually a nonlinear model, we implemented an Extended Kalman filter, which is based on the same properties of the Kalman filter, but the model is linearized. The optimal feature of the non-linear filter is no longer guaranteed, but the estimate is still very accurate.

 

Results:

Demo 1:
Enviroment: Consist of two robots, and one obstacle
Goal: For each robot to reach it's given target, as well as avoid the obstacle without a collision.

movie clip

Demo 2:
Enviroment: Consist of two robots.
Goal: For each robot to reach it's given target, as well as avoid each other without a collision.

movie clip

Demo 3:
Enviroment: Consist of two robots and two asymmetric obstacles.
Goal: For each robot to reach it's given target, as well as avoid the obstacles without a collision.

movie clip


Demo 4:

Enviroment: Consist of two robots, and two obstacles
Goal: .For each robot to reach it's given target, as well as avoid the obstacle and other robot without a collision.

movie clip

Code:

Link to zipped code



Reference:

1. G. Welch and G. Bishop, "An introduction to the Kalman filter," University of North Carolina at Chapel Hill, Department of Computer Science, Chapel Hill, NC.

2. Lumelsky and Harinarayan, "Decentralized Motion Planning for Multiple Mobile Robots: The Cocktail Party Model", Autonomous Robots 4, 121-135 (1997).