Mobile Robot FastSLAM with Xbox Kinect



Similar documents
C# Implementation of SLAM Using the Microsoft Kinect

Robotics. Lecture 3: Sensors. See course website for up to date information.

What s Left in E11? Technical Writing E11 Final Report

Static Environment Recognition Using Omni-camera from a Moving Vehicle

Autonomous Advertising Mobile Robot for Exhibitions, Developed at BMF

Representing Vector Fields Using Field Line Diagrams

CE801: Intelligent Systems and Robotics Lecture 3: Actuators and Localisation. Prof. Dr. Hani Hagras

Robotics. Chapter 25. Chapter 25 1

Understanding and Applying Kalman Filtering

UNIT 1 INTRODUCTION TO NC MACHINE TOOLS

Introduction to Accuracy and Repeatability in Linear Motion Systems

Lab 7: Rotational Motion

How To Fuse A Point Cloud With A Laser And Image Data From A Pointcloud

USING THE XBOX KINECT TO DETECT FEATURES OF THE FLOOR SURFACE

Mobile Robotics I: Lab 2 Dead Reckoning: Autonomous Locomotion Using Odometry

Onboard electronics of UAVs

Shape Ape. Low- Cost Cubing and Dimensioning

GANTRY ROBOTIC CELL FOR AUTOMATIC STORAGE AND RETREIVAL SYSTEM

FREE FALL. Introduction. Reference Young and Freedman, University Physics, 12 th Edition: Chapter 2, section 2.5

FastSLAM: A Factored Solution to the Simultaneous Localization and Mapping Problem With Unknown Data Association

P r oba bi l i sti c R oboti cs. Yrd. Doç. Dr. SIRMA YAVUZ sirma@ce.yildiz.edu.tr Room 130

SIMULTANEOUS LOCALIZATION AND MAPPING FOR EVENT-BASED VISION SYSTEMS

DP-SLAM: Fast, Robust Simultaneous Localization and Mapping Without Predetermined Landmarks

IP-S2 Compact+ 3D Mobile Mapping System

Automatic Labeling of Lane Markings for Autonomous Vehicles

Real-Time Indoor Mapping for Mobile Robots with Limited Sensing

TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AAAAA

Centripetal force, rotary motion, angular velocity, apparent force.

Visual Servoing Methodology for Selective Tree Pruning by Human-Robot Collaborative System

ROBOTICS 01PEEQW. Basilio Bona DAUIN Politecnico di Torino

Artificial Intelligence

Exploration, Navigation and Self-Localization in an Autonomous Mobile Robot

Data Sheet. Remote Presence for the Enterprise. Product Overview. Benefits of Video Collaboration Robots

Robotics & Automation

Definitions. A [non-living] physical agent that performs tasks by manipulating the physical world. Categories of robots

Implementation of kalman filter for the indoor location system of a lego nxt mobile robot. Abstract

Force on Moving Charges in a Magnetic Field

Protocol for Microscope Calibration

Unit 1: INTRODUCTION TO ADVANCED ROBOTIC DESIGN & ENGINEERING

Choosing Between Electromechanical and Fluid Power Linear Actuators in Industrial Systems Design

The Design and Implementation of a Quadrotor Flight Controller Using the QUEST Algorithm

white paper JANUARY 2011 The Next- Warehouse Scanning and the Emergence of 2D Bar Codes

Development of Docking System for Mobile Robots Using Cheap Infrared Sensors

2/26/2008. Sensors For Robotics. What is sensing? Why do robots need sensors? What is the angle of my arm? internal information

DIALux. evo 1. User Manual. The Software Standard for Calculating Lighting Layouts

ExmoR A Testing Tool for Control Algorithms on Mobile Robots

A Reliability Point and Kalman Filter-based Vehicle Tracking Technique

Robot Perception Continued

3D Interactive Information Visualization: Guidelines from experience and analysis of applications

Basic Principles of Inertial Navigation. Seminar on inertial navigation systems Tampere University of Technology

Mercury TM 1500P PCB-Mount Digital Encoders

ACCELERATION OF HEAVY TRUCKS Woodrow M. Poplin, P.E.

Applications > Robotics research and education > Assistant robot at home > Surveillance > Tele-presence > Entertainment/Education > Cleaning

MSc in Autonomous Robotics Engineering University of York

High Resolution RF Analysis: The Benefits of Lidar Terrain & Clutter Datasets

Collision Prevention and Area Monitoring with the LMS Laser Measurement System

Self-Calibrated Structured Light 3D Scanner Using Color Edge Pattern

Differentiation of 3D scanners and their positioning method when applied to pipeline integrity

3D Vision An enabling Technology for Advanced Driver Assistance and Autonomous Offroad Driving

An Energy-Based Vehicle Tracking System using Principal Component Analysis and Unsupervised ART Network

GEOScaN Remote Data Acquisition for Hydrographic, Topographic and GIS Surveying

Lab 8: Ballistic Pendulum

Introduction to Fourier Transform Infrared Spectrometry

E/M Experiment: Electrons in a Magnetic Field.

CHAPTER I INTRODUCTION

Encoders for Linear Motors in the Electronics Industry

Ecopaint Robot Painting Station

Estimation of Position and Orientation of Mobile Systems in a Wireless LAN

MASTER'S THESIS. Laser Guided Vehicle Java and MATLAB for Control

Course 8. An Introduction to the Kalman Filter

ZMART Technical Report The International Aerial Robotics Competition 2014

Control of a quadrotor UAV (slides prepared by M. Cognetti)

I-SiTE - Laser Scanning Revolutionises Site Survey

The RTS-STILL Robotic Fork-Lift

Lecture L5 - Other Coordinate Systems

Automotive Applications of 3D Laser Scanning Introduction

Robot Sensors. Outline. The Robot Structure. Robots and Sensors. Henrik I Christensen

SURVEYING WITH GPS. GPS has become a standard surveying technique in most surveying practices

Dev eloping a General Postprocessor for Multi-Axis CNC Milling Centers

Integer Computation of Image Orthorectification for High Speed Throughput

Microsoft Excel 2010 Charts and Graphs

IP-S2 HD. High Definition 3D Mobile Mapping System

Conservation of Energy Physics Lab VI

PARAMETRIC MODELING. David Rosen. December By carefully laying-out datums and geometry, then constraining them with dimensions and constraints,

Vectors. Objectives. Assessment. Assessment. Equations. Physics terms 5/15/14. State the definition and give examples of vector and scalar variables.

Automated Bottle Filling System

Somero SiteShape System

FRC WPI Robotics Library Overview

Experimental Uncertainties (Errors)

Work and Energy. W =!KE = KE f

Robot Navigation. Johannes Maurer, Institute for Software Technology TEDUSAR Summerschool u

PHYS 211 FINAL FALL 2004 Form A

VECTORAL IMAGING THE NEW DIRECTION IN AUTOMATED OPTICAL INSPECTION

Transcription:

Mobile Robot FastSLAM with Xbox Kinect Design Team Taylor Apgar, Sean Suri, Xiangdong Xi Design Advisor Prof. Greg Kowalski Abstract Mapping is an interesting and difficult problem in robotics. In order to create a map the position of the robot must be known. However, in order for the robot to determine its position it needs a map. This problem is refered to as simultaneous localization and mapping (SLAM). In this project a variant of SLAM is used, which is grid based FastSLAM. In this algorithm the position of the robot is estimated using a particle filter while the map is estimated using occupancy grids. The result of using this algorithm with the Xbox Kinect was 15 cm mapping accuracy over a 100 meter loop. A 3D map generated by this robot For more information, please contact gkowal@coe.neu.edu.

The Need for a Mapping Robot A robot using SLAM creates Over the last decade, robotic applications of the SLAM accurate maps which can be used for a number of applications. Figure 1: The mobile robot used in this project algorithm have been the focus of many research projects. This area has been given so much attention because maps can be used in a variety of useful ways. Many of these applications involve robotic exploration in an environment inaccessible or hazardous to human beings such as, underwater caves or abandoned mines. A map that is generated by a robot using a SLAM algorithm can then be used by another robot for localization. The time saved by the lack of human involvement and the avoidance of human endangerment are beneficial assets a mapping robot can provide. A much easier approach to the mapping problem is to assume that the position of the robot is directly observable and therefore all measurements of the map are taken at known locations. The problem with this assumption is that the robots motion and position are never directly observable; there is always a certain amount of error in the sensor measurements. The SLAM algorithm takes this error into account when estimating the map, leading to significantly more accurate results. The Design Project Objectives and Requirements The objective of this project is Design Objectives for a robot to autonomously The goal of this project is for a robot to automatically generate create a 3D color map of a flat a 3 dimensional color map using grid based FastSLAM. This is done indoor environment. using an Xbox Kinect on a mobile robot. Design Requirements The environment used to validate this design was the 2 nd floor of Hurtig Hall at Northeastern University. The accuracy of the estimated 2 dimensional map should be within 10 cm of the actual building layout which was measured by hand. The 3D color data will be aligned to the 2D estimated map. The creation of the 3D color map is not constrained to the same 10 cm accuracy since it is not being estimated.

Design Concepts Considered The main part of the project From the beginning of Capstone this project was defined as a that was considered in the mobile robot using a SLAM algorithm with the Xbox Kinect to design process is which SLAM generate a 3D map. Therefore, the mobile robot platform and state algorithm to use and how the estimation algorithms were the main focus in terms of design. The map should be represented. mobile robot platform went through five different iterations. All of the designs implemented differential drive motors with 1 or 2 casters. Also as the designs progressed the robot increased in height to ensure that the Xbox Kinect could see both the floor and the ceiling. There were both local and global state estimation algorithms considered for this project. A Kalman filter was considered for estimating the angular rotation about the horizontal axes. An extended Kalman filter was considered for estimating linear and rotational velocity. There was also the decision of whether or not to estimate the 3 rd dimension. By estimating the map in 3 dimensions then the 6 degrees of freedom of the robot need to be considered. Since this means significantly more processing the estimated map was chosen to be 2 dimensions. There are many different SLAM algorithms that can be considered for indoor mapping. One of the largest distinctions is between feature based maps or grid based maps. Initially feature based mapping was considered because it often means it is less computationally expensive. However, one of the requirements of this project is for the map to be a human readable map which is more straightforward to construct as an occupancy grid map. Recommended Design Concept The final design uses an EKF to increase the accuracy of the apriori update of the particle filter. A standard particle filter is used for estimating the position of the robot while occupancy grids are used for estimating the map. Design Description This project uses grid based FastSLAM with the Xbox Kinect to build a 3 dimensional color map of a flat indoor environment. This algorithm uses a standard particle filter to estimate the position of the robot and occupancy grids to estimate the map. Using a standard particle filter for estimating the position of the robot requires relatively good odometery. For this reason an extended Kalman filter is used for estimating the linear and rotational velocities of the robot from the gyro and encoder measurements. This approach leads to much more accurate particle position predictions. Because of this it is possible to

Raw Odometry Map FastSLAM Map Figure 2: Raw odometry map compared to the map generated using FastSLAM Financial Issues Total cost of the robot (excluding the CPU) - $650. travel longer distances while maintaining a relatively accurate position prediction. The robot is able to drive autonomously through the environment using a path planning algorithm known as potential functions. Using this algorithm the robot is able to determine the best direction of travel based on the most recent measurement from the Kinect and is not dependent on the robot having a map. It does this by creating a virtual force field around obstacles it has measured with the Kinect. These virtual force fields then create a local velocity vector field which directs the robot. Experimental Investigations Using this algorithm it was possible to close the loop of a 100 meter path. Also after the robot finished the first lap around the building it was able to maintain 15 cm mapping accuracy. Key Advantages of Recommended Concept One of the main advantages of this design is that it is possible to rely more on the position prediction by using the EKF. Other particle filter SLAM algorithms will add additional steps such as scan matching to the position prediction in order to increase the robustness of the algorithm. Using an EKF for increasing the accuracy of the apriori update is also less computationally expensive compared to other approaches like scan matching for example. Figure 2 shows a map of Hurtig Hall generated using raw odometry compared to the map generated using the FastSLAM algorithm. This clearly shows the advantages of using the FastSLAM algorithm over the simpler method which uses raw odometry. The total cost of the robot (excluding the CPU) was approximately $650. Many similar projects cost thousands of dollars mainly due to the expensive 2D laser scanners that are used. However, it is also possible to recreate this project using less expensive parts. The main focus of this project was on the state estimation algorithms; therefore many improvements can be made in the hardware used and the structural design of the robot.

Recommended Improvements Direct drive motors should be used to increase dynamic model accuracy. Modify the FastSLAM algorithm so it can run online. One of the main things that can be improved on this robot is switching to direct drive motors. The 20:1 gear ratio of the motors that were used caused a lot of inaccuracy in the dynamic model of the robot. By having direct drive motors a better dynamic model and therefore a more robust EKF estimate would be attainable. Increased accuracy in odometry is also attainable by combining the individual motor mounts into a single mount. The EKF should also be changed so that the gyro bias is also estimated. Scan matching should also be implemented to further improve the position prediction. Including this step shows a huge improvement in the algorithms effectiveness. Lastly, the current implementation runs the FastSLAM algorithm after the robot has completed collecting data. Running the FastSLAM algorithm on the robot as it is driving through the environment would allow the robot to make much more efficient path planning decisions.