Posts

Showing posts from June, 2019

ROS Navigation

Image
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

The move_base ROS node

Image
move_base package provides the move_base node which is a major element of ROS Navigation stack. It moves the robot from its current position to a goal position. When path planning is done, the user gives uses the 2D Nav Goal in RVIZ to specify the goal position and orientation. This position (x,y,z) and orientation(x,y,z,w) are actually published in move_base/goal topic. The move_base node links together a global and local planner to accomplish its global navigation task. The Global Planner It is in charge of calculating the safe path in order to arrive at goal pose. Note that the path is calculated before the robot starts moving so it will not take into account the laser readings while moving i.e. unscanned obstacles that are not in the map. Navfn Planner The Navfn planner is the most commonly used global planner for ROS Navigation. It uses Dijkstra's algorithm in order to calculate the shortest path between the initial pose and the goal pose. Carrot Planner This plann