top of page

Skills - ROS, Gazebo, RRT, Moveit!, PID, Mapping, Navigation, Localization 

 

3D Mapping and Navigation of Quadrotors in Indoor Environment

Phase-1: 3D mapping in simulation

Simulation is a very important part of any system. In robotics, Gazebo provides a great platform for robotics developers to test their algorithms and codebase. This phase pertained to getting the mapping pipeline completed and testing it on Gazebo. The project has been done using the ROS framework and the packages available. The packages used in the mapping phase are hector_quadrotor and octomap_server. Mapping is established by teleoping using a logitech joystick in a simulted world (Fetch robotics office). As the quadrotor moves, the onboard RGBD sensor generates point cloud which is then stored in the form of octomap.

Phase-2: Localization and navigation in simulation

This phase dealt with finishing the remaining pipeline, i.e localization and navigation. Localization enables the quadrotor to estimate its position with respect to a fixed origin in the map. It is accomplished using 6D localization which estimates the x,y,z,roll,pitch and yaw of the quadrotor. Humanoid_localization package is used to do the localization of the quad. For the navigation, Moveit! plugin is used in Rviz. This plugin uses RRT to plan 6D trajectories of the quad. Finally the controller is responsible for executing the trajectory generated. (Credit to Alessio Tonioni for providing with the controller).

Phase-3: Implementation on ErleCopter quadrotor (still ongoing)

The final phase of the project dealt with implementing all the previous phases on the real hardware. For this, the ErleCopter quadrotor is used. This drone contains an onboard linux running CPU called ErleBrain which is also capable of running ROS. Currently, I'm trying to localize the quadrotor in a handheld mode using Kinect.

Please reload

Project

Codebase - 

 

Videos

bottom of page