9 de Sep de 2017•0 gostou•258 visualizações

Denunciar

Tecnologia

Simultaneous localization of two Unmanned vehicles collecting map information and sharing between each other to collectively form a bigger map.

Akash BorateSeguir

- 1. Multiple UGV Simultaneous Localization and Map Sharing Autonomous Systems Lab Advanced Controls and Sensors Group by Akash Borate
- 2. Introduction • Cooperation between human teams and UGV teams. • Use of cooperative robots on assisting humans in distributed activities. • Mobile UGVs used in Search and Rescue (SaR) missions in urban catastrophic incidents.
- 3. Approach • Independent agents divide the task of building a global map. • Centralized coordination architecture. • Iterative construction of map through data obtained from range sensors. • Metric Maps represented by 2D occupancy grids.
- 4. Simultaneous localization & Mapping Overview Classical Slam • Navigation success is dependent on results of four stages : perception, localization, cognition and motion control. • Sensors used in Mobile Robotics can be divided in exteroceptive and proprioceptive sensors. • The main energy sensors used in Mobile Robotics are the Light Detection And Rangings (LIDARs), sonar, radars and the Global Navigation Satellite Systems (GNSSs).
- 5. • SLAM : Repetitively improving an existing map, while at the same time localizing the UGV within that map. • A good filtering algorithm used can reduce noise from signals. • The Extended Kalman Filter (EKF) is intended to overcome that difficulty and use odometry and the observation of spacial references. • RBPF effective way to solve SLAM problems. Filter Type Advantages Disadvantages Extended Kalman Filter SLAM Linear update of the observations using fractioned updates; Through sub mapping it is possible to obtain a solution in constant time; It assumes a Gaussian error which does not exist always; The non-linear models linearization can cause divergences; Rao- Blackwellized Particle Filter Simultaneously keeps several hypotheses; With a large number of samples it can efficiently represent non-linear or non-Gaussian models; It estimates the robot's entire trajectory online; The number of particles exponentially increases with the state's size;
- 6. Map Representation • It is important for autonomous UGVs to learn and maintain models of the environment. • Main problem to deal with the high dimensionality of the entities being mapped. • Detailed 2D geometric maps require huge memory. • Topological entities rooms, doors, corridors may not require much memory. • Two major distinct paradigms for indoor mapping. • Grid based Maps • Topological Maps
- 7. Grid-based Maps: • Accurate metric maps similarly to a blueprint of the environment. • Requires precise location of the robot. • Common example of metric maps is Occupancy grids.
- 8. Topological Maps: • Produce graph-like maps more efficiently. • Vertices correspond to important places or landmarks. • Difficulties in recognizing similar places that look alike.
- 9. Implementation of Multi – UGV SLAM • Algorithm consists of diverse modules. • Framework used to support Multi UGVs SLAM. • Each individual UGV runs its own SLAM. • Receiving partial map, map alignment and merging both maps. Map
- 10. Multi – UGV System in ROS • Robot Operating System (ROS) is used as the development framework. • Uses a publish/subscribe semantics architecture and a central master. • Each node reports its register information back to the roscore. • Execution of algorithms are controlled by such ROS nodes, which can be programmed in C++, Python,
- 11. • Challenge to overcome :UGVs should have a different namespace • Use of the tf_prefix parameter is the recommended when sharing reference frame transforms. • Remap topics where the different UGVs use the same node internally. Map_exchange Defining a prefix will turn things like the command velocity reference of the robot (typically named “/cmd_vel”) into “drrobot_master/cmd_vel” and “drrobot_slave/cmd_vel” automatically, depending on which UGV it is.
- 13. Simultaneous Localization and Mapping approach Rao-Blackwellized particle filter grid mapping algorithm Gmapping • Key idea of the Rao-Blackwellized particle filter for SLAM is to estimate the joint posterior p(x1:t, m | z1:t, u1:t−1) about the map m and the trajectory x1:t = x1, . . . , xt of the robot. • The process can be summarized by the following four steps: Sampling: obtained from the generation Importance Weighting: is assigned to each particle Resampling: Replacement to their importance weight. Map Estimation: based on trajectory and history of observation
- 14. • Require a high number of particles . • Increase in Computational Complexity. • Depletion problem associated with the particle filters. • Therefore, an adaptive resampling technique has been developed • Taking into account not only robot's motion, but also its most recent observations. • Most recent sensor observation and computes a Gaussian approximation to efficiently obtain the next generation of particles. • Gaussian parameters are given by the following equations:
- 15. • Using this distribution, the weight of the ith particle is: • Resampling is necessary since only a finite number of particles are used to approximate the target distribution. • Equation computes the effective number of particles Neff, which is a trigger that defines when the resampling step should be performed: • The algorithm resamples each time Neff drops below a given threshold of N/2, being N the number of particles.
- 16. • Gmapping is a laser-based RBPF-SLAM algorithm. • Gmapping is the most stable and commonly-used package with recognized results. • This package provides a laser- based SLAM as a ROS node called slam_gmapping • The slam_gmapping node transforms each incoming scan into the odometry frame of the robot. • Shows the average rate of messages of each transform and the existing frames.
- 17. Scan matching algorithm Hector Mapping • Scan matching is the process of aligning laser scans with each other or with an existing map. • The algorithm uses a Gauss-Newton approach for optimization, and formulates the optimized rigid transformation as where and denotes the world coordinates. • Above equation is minimized as Gauss-Newton equation with Hessian matrix
- 18. • Gaussian Newton equation rely on the gradient of the map at some coordinate . • The gradient can be approximated via bilinear filtering as where x, y, x0, x1, y0 and y1 are the map coordinates of the integer values P,
- 19. • An approximation of the match uncertainty can be computed as the inverse Hessian scaled by some sensor specific constant: • Procedure is based on gradient descent, getting stuck in local minima is a source of error. • Hector SLAM seeks to minimize these effects where the map is stored at different resolutions.
- 20. • Hector SLAM works with grid maps, and its underlying principle is scan matching. • First LIDAR scan is written to the map. Subsequent LIDAR scans are matched with the map. • Transform tree diagram with the coordinate frames associated with master and slave UGV
- 21. Map Alignment • Two different stages: map alignment and map merging. • In the alignment stage, the objective is to find the transformation between the different reference systems of the local maps. • The 2D aligning method computes the transformation between the two local maps, which consists of three alignment parameters: translation in x and y and the rotation • ROS provides a package .for alignment called mapstitch.
- 22. Map Merging • Combining the partial maps of all robots into a global map. • Assume an occupancy grid map M is a matrix with r rows and c columns. • The spatial location of cell is indicated as . Given two maps, M1 and M2, and a rigid transformation T. • The second UGV's environment map is transformed using • The transformed occupancy grid map of the second UGV , can then be fused with the first UGV's map.
- 23. • Stable package available in ROS, called occupancy_grid_utils was employed. • When the alignment function returns a possible transform between the maps to a common referential, that transform may be considered valid or rejected.
- 24. Experiments and Results Basic Simulation results • Simulation results using the Stage, the ground truth of the test arena is presented below. • The UGV is depicted in blue and the seven blocks are shown in shades of white to black
- 25. • Figures help us to understand the basic principles of the LIDAR technology and how the 270 degree vision identifies obstacles around. • The goal of this simulation is to test the gmapping and hector_slam packages.
- 26. Real World Results • The proposed results are tested with a team of two Jaguar 4x4 platforms. • The Jaguar 4x4 is a small lightweight differential wheeled robot ideal for indoor laboratory or classroom use. • The robot is equipped with front sonar array and a Laser Hokuyo URG-04lx-UG014 as seen in below images.
- 27. • The robots are placed in the arena of approximately 100 square meters. • Some photos of such space, located at the Autonomous Systems Lab 126 at University of Texas at Arlington Research Institute. Arena 1
- 28. Panoramic View of Arena 1
- 29. • The goal of this experiment, is to obtain a global map of the arena from two partial maps retrieved by the team of two Jaguar 4x4. Partial map built by drrobot_master Partial Map built by drrobot_slave Whole map built by merging
- 30. • In Arena 2 we change the obstacles from which master travels and put extra obstacle in the room. Arena 2
- 31. • Also changed the position of master slave. Partial map built by drrobot_master Partial Map built by drrobot_slave Whole map built by merging