Simulator programmed in Python with PyGame. You can start by running the file:
It has localization implemented using landmarks with known correspondence and using Kalman Filter to correct the measurement noise.
• Velocity-based motion model (𝑢 = (𝑣, 𝜔)𝑇)
• Control robot with key board (W=increment 𝑣, S=decrement 𝑣, A=decrement 𝜔 D=increment 𝜔, X=stop)
• No walls, no collision with features
• Point-based features
• Omnidirectional sensor for feature detection
• Limited sensor range
• Bearing and distance estimate
• Known correspondence
• Track pose with Kalman Filter
*Ellipse = shows intermediate estimates of position and covariance
*Dotted line = estimated robot trajectory
*Solid line = actual robot trajectory
*Black point = beacons/landmarks/features
*Green line = sensor range between robot and beacon
The program is in Python
In order to use the code you need to install Numpy, Math and Pygame packages
import numpy as np
import pygame
import math
Elena Kane
Nikolaos Ntantis
Ioannis Montesantos