ROS Navigation
Navigation is of the utmost importance when robots are to be used in a foreign environment. It has to be aware of its surroundings to carry out its task with the least possible errors. Here I have created a configurable open-source ROS package that can be used to perform autonomous navigation with differential driven systems. Mapping Firstly, the robot has to be moved around to scan its environment. The robot is driven using teleop_twist_keyboard (ROS Package). As it moves, it maps the environment using a laser scanner (or Kinect sensor). SLAM (Simultaneous localization and mapping) algorithm is implemented using the gmapping node of ROS. It builds a map while keeping a track of robots' position on the map. This node gives Occupancy Grid map (OGM) which is then saved in the system using map_server node. Localization AMCL(Adaptive Monte Carlo localization) node is used to carry out Monte Carlo localization also called particle filter localization. It provides the probable