|
|
|
|
KALMAN-FILTER BASED ROBOT LOCALIZATION
A Kalman Filter (KF) is a device to achieve control in a noisy enviroment. We can conceptualize the KF as a plant in the sense of control theory, which transforms an input into output; however, the output is corrupted by ambient system noise , hence is not precisely known. To get to know the output as close as we can, we perform an operation called measurement, to compute it based on environment parameters, but the measurement taken is again corrupted by measurement noise. Both system and measurement noise are assumed to be Gaussian.
An agent capable of autonomous navigation in some environment is known as a robot . To achieve this autonomy,it must be capable of determining its position with respect to the environment, and orienting itself to reach a pre-determined destination. This activity is known as localization.
In our project, we design a KF-based localization tool for a car-shaped robot. The actual filter used is a nonlinear extension of the KF called the Extended Kalman Filter (EKF). The EKF estimates three parameters: the coordinates and the orientation of the robot at every stage of its motion. With its assistance, the robot is able to navigate around a room possibly with obstacles in it. The project code is written entirely in C++, with a Qt front-end. The code is divided into two parts: a text-mode Filter which computes the consecutive positions and measurements of the robot. This is supplemented with a Qt front end which displays the same on a canvas. The front end , though not essential to the implementation, is nevertheless the simplest way to determine the correctness of implementation, and a powerful tool in debugging. |
|
Send mail to
akpandey@research.iiit.ac.in with
questions or comments about this web site.
|