Zürich. Roland Siegwart Margarita Chli Martin Rufli Davide Scaramuzza. ETH Master Course: L Autonomous Mobile Robots Summary

Similar documents
Mobile Robots Summery. Autonomous Mobile Robots

COS Lecture 13 Autonomous Robot Navigation

Introduction to Information Science and Technology (IST) Part IV: Intelligent Machines and Robotics Planning

Introduction to Autonomous Mobile Robots

Spring Localization II. Roland Siegwart, Margarita Chli, Juan Nieto, Nick Lawrance. ASL Autonomous Systems Lab. Autonomous Mobile Robots

Spring Localization II. Roland Siegwart, Margarita Chli, Martin Rufli. ASL Autonomous Systems Lab. Autonomous Mobile Robots

7630 Autonomous Robotics Probabilities for Robotics

Localization and Map Building

Localization and Map Building

10/11/07 1. Motion Control (wheeled robots) Representing Robot Position ( ) ( ) [ ] T

Perception. Autonomous Mobile Robots. Sensors Vision Uncertainties, Line extraction from laser scans. Autonomous Systems Lab. Zürich.

Mobile Robotics. Mathematics, Models, and Methods. HI Cambridge. Alonzo Kelly. Carnegie Mellon University UNIVERSITY PRESS

What is the SLAM problem?

CS283: Robotics Fall 2016: Sensors

EE565:Mobile Robotics Lecture 2

Uncertainties: Representation and Propagation & Line Extraction from Range data

Localization, Where am I?

Mobile Robots Locomotion

Dealing with Scale. Stephan Weiss Computer Vision Group NASA-JPL / CalTech

Probabilistic Robotics

Autonomous Mobile Robot Design

Augmented Reality, Advanced SLAM, Applications

Nonlinear State Estimation for Robotics and Computer Vision Applications: An Overview

MULTI-MODAL MAPPING. Robotics Day, 31 Mar Frank Mascarich, Shehryar Khattak, Tung Dang

EE565:Mobile Robotics Lecture 3

Kalman Filter Based. Localization

Overview. EECS 124, UC Berkeley, Spring 2008 Lecture 23: Localization and Mapping. Statistical Models

Autonomous Navigation for Flying Robots

ME 597/747 Autonomous Mobile Robots. Mid Term Exam. Duration: 2 hour Total Marks: 100

From Personal Computers to Personal Robots

Humanoid Robotics. Monte Carlo Localization. Maren Bennewitz

Autonomous Navigation in Complex Indoor and Outdoor Environments with Micro Aerial Vehicles

Robot Mapping. A Short Introduction to the Bayes Filter and Related Models. Gian Diego Tipaldi, Wolfram Burgard

Probabilistic Robotics

Application questions. Theoretical questions

Introduction to robot algorithms CSE 410/510

Data Association for SLAM

W4. Perception & Situation Awareness & Decision making

L15. POSE-GRAPH SLAM. NA568 Mobile Robotics: Methods & Algorithms

Simultaneous Localization and Mapping

CMPUT 412 Motion Control Wheeled robots. Csaba Szepesvári University of Alberta

Sensor Modalities. Sensor modality: Different modalities:

SLAM with SIFT (aka Mobile Robot Localization and Mapping with Uncertainty using Scale-Invariant Visual Landmarks ) Se, Lowe, and Little

Exam in DD2426 Robotics and Autonomous Systems

Robotics. Chapter 25. Chapter 25 1

Perception: Sensors. Autonomous Mobile Robots. Davide Scaramuzza Margarita Chli, Paul Furgale, Marco Hutter, Roland Siegwart

Davide Scaramuzza. University of Zurich

Simultaneous Localization

Turning an Automated System into an Autonomous system using Model-Based Design Autonomous Tech Conference 2018

Centre for Autonomous Systems

Motion Control (wheeled robots)

Simultaneous Localization and Mapping (SLAM)

Visual Odometry. Features, Tracking, Essential Matrix, and RANSAC. Stephan Weiss Computer Vision Group NASA-JPL / CalTech

L17. OCCUPANCY MAPS. NA568 Mobile Robotics: Methods & Algorithms

Robot Mapping. SLAM Front-Ends. Cyrill Stachniss. Partial image courtesy: Edwin Olson 1

Master Automática y Robótica. Técnicas Avanzadas de Vision: Visual Odometry. by Pascual Campoy Computer Vision Group

Chapter 4 Dynamics. Part Constrained Kinematics and Dynamics. Mobile Robotics - Prof Alonzo Kelly, CMU RI

Perception IV: Place Recognition, Line Extraction

E80. Experimental Engineering. Lecture 9 Inertial Measurement

A General Framework for Mobile Robot Pose Tracking and Multi Sensors Self-Calibration

Final Exam Practice Fall Semester, 2012

High-precision, consistent EKF-based visual-inertial odometry

Robotics. Haslum COMP3620/6320

Mobile Robotics. Marcello Restelli. Dipartimento di Elettronica e Informazione Politecnico di Milano tel:

Motion estimation of unmanned marine vehicles Massimo Caccia

Introduction to Mobile Robotics

Artificial Intelligence for Robotics: A Brief Summary

Navigation methods and systems

Robotics. Lecture 7: Simultaneous Localisation and Mapping (SLAM)

CS 460/560 Introduction to Computational Robotics Fall 2017, Rutgers University. Course Logistics. Instructor: Jingjin Yu

Monte Carlo Localization using Dynamically Expanding Occupancy Grids. Karan M. Gupta

Robotic Perception and Action: Vehicle SLAM Assignment

Lecture 13 Visual Inertial Fusion

UAV Autonomous Navigation in a GPS-limited Urban Environment

SLAM: Robotic Simultaneous Location and Mapping

CSE 527: Introduction to Computer Vision

Revising Stereo Vision Maps in Particle Filter Based SLAM using Localisation Confidence and Sample History

Robotics/Perception II

Autonomous Mobile Robots

Robotics (Kinematics) Winter 1393 Bonab University

Robotics. Lecture 8: Simultaneous Localisation and Mapping (SLAM)

Practical Course WS12/13 Introduction to Monte Carlo Localization

PROGRAMA DE CURSO. Robotics, Sensing and Autonomous Systems. SCT Auxiliar. Personal

Real-Time Vision-Based State Estimation and (Dense) Mapping

Introduction to Mobile Robotics

UNIVERSITÀ DEGLI STUDI DI GENOVA MASTER S THESIS

L10. PARTICLE FILTERING CONTINUED. NA568 Mobile Robotics: Methods & Algorithms

ECE276A: Sensing & Estimation in Robotics Lecture 11: Simultaneous Localization and Mapping using a Particle Filter

Camera Drones Lecture 2 Control and Sensors

LUMS Mine Detector Project

Basics of Localization, Mapping and SLAM. Jari Saarinen Aalto University Department of Automation and systems Technology

CS283: Robotics Fall 2016: Robot Arms

Robot Localization based on Geo-referenced Images and G raphic Methods

C18 Computer vision. C18 Computer Vision. This time... Introduction. Outline.

CS283: Robotics Fall 2016: Software

Lecture «Robot Dynamics»: Kinematics 3

A Reactive Bearing Angle Only Obstacle Avoidance Technique for Unmanned Ground Vehicles

3D Human Motion Analysis and Manifolds

CSE 490R P1 - Localization using Particle Filters Due date: Sun, Jan 28-11:59 PM

ROBOT TEAMS CH 12. Experiments with Cooperative Aerial-Ground Robots

Transcription:

Roland Siegwart Margarita Chli Martin Rufli Davide Scaramuzza ETH Master Course: 151-0854-00L Autonomous Mobile Robots Summary

2 Lecture Overview Mobile Robot Control Scheme knowledge, data base mission commands Localization Map Building environment model local map position global map Cognition Path Planning path Perception Information Extraction raw data Sensing Path Execution actuator commands Acting Motion Control Real World Environment

Roland Siegwart Margarita Chli Martin Rufli Davide Scaramuzza ETH Master Course: 151-0854-00L Autonomous Mobile Robots Kinematics

4 Kinematics Definitions Kinematics Origin: kinein (Greek) to move The subfield of Mechanics dealing with motions of bodies Forward kinematics Given is a set of actuator positions Determine corresponding reference pose Inverse kinematics Given is a desired reference pose Determine corresponding actuator positions

5 Kinematics Inverse Kinematics for Kin. Chains From forward kinematics we know T x y z h,, ) g g g ( 1 n h is often not easily invertible in closed form Approach: iteratively perform the following steps 1. Start from a known forward-kinematic solution (e.g., via T sampling). xi yi zi h( 1,, n ) 2. Linearize h around ( 1,, n ), resulting in the Jacobian... h1 h1... 1 n J... hm hm... 1 n i T 1 3. Invert the Jacobian to obtain J x T 1 2 i yi zi 4. Move by in direction x x y y z z g i g i g T i

6 Kinematics (Wheeled) Non-Holonomic Systems Wheels Are often subject to motion constraints Often do not allow to compute kinematics directly Consequently, for most wheeled robots, actuator positions do not map to unique reference poses There is no direct (i.e., instantaneous) way to measure a robot s position Position must be integrated over time, depends on the path taken Understanding mobile robotic motion requires an understanding of wheel constraints placed on the robot s mobility

R y R x Kinematics Forward Kinematics for Wheels 7 T R y x 1 1 1 0 ) ( cos ) cos( ) sin( r R l I T 0 ) ( sin ) sin( ) cos( I T R l Fixed standard wheel

T R y x 12 - Summery ẋ l Robot chassis y..... A. l). (-l)sin.. l)cos Kinematics Forward Kinematics for Wheels. T R y x 1 1 1 0 ) ( cos ) cos( ) sin( r R l I T 0 ) ( sin ) sin( ) cos( I T R l 8

9 Differential Forward Kinematics Concatenation of Constraints Given a wheeled robot Each wheel imposes 0 constraints on its motion Only fixed and steerable standard wheels impose no-sliding constraints Suppose the robot has N standard wheels of radius, then the f N s individual wheel constraints can be concatenated in matrix form Rolling constraints 1( ) ( ) I J R J 2 s No-sliding constraints I C1 ( ) R( ) 0 s 0 ( t) f ( t) ( ) s t 1 N f N s N f N s 1s s N f N s 3 Solving for results in an expression for differential forward kinematics I J C1 f C1 ( s) 1 ( ) C s s 3 1 r i 1 ( J f s) ( ) J ( J ) 2 diag r 1 r N

10 Five Basic Types of Three-Wheel Configurations m s Degree of mobility = 3 - Number of independent wheel constraints Degree of steerability Robots maneuverability M m s 3 - Mobile Robot Kinematics

Roland Siegwart Margarita Chli Martin Rufli Davide Scaramuzza ETH Master Course: 151-0854-00L Autonomous Mobile Robots Perception: Sensors Overview

12 Sensors Overview Sensor Outline Optical encoders Heading sensors Compass Gyroscopes Accelerometer IMU GPS Range sensors Sonar Laser Structured light Vision

13 Sensors Overview Inertial Measurement Unit (IMU) Definition An inertial measurement unit (IMU) is a device that uses measurement systems such as gyroscopes and accelerometers to estimate the relative position (x, y, z), orientation (roll, pitch, yaw), velocity, and acceleration of a moving vehicle with respect to an inertial frame In order to estimate motion, the gravity vector must be subtracted. Furthermore, initial velocity has to be known (this is done by starting moving from a rest position)

14 Sensors Overview Range sensors Sonar Laser range finder Time of Flight Camera Structured light

Roland Siegwart Margarita Chli Martin Rufli Davide Scaramuzza ETH Master Course: 151-0854-00L Autonomous Mobile Robots Robot Vision

16 Robot Vision From World to Pixel coordinates Mapping of world points to pixels in the image Z Cc v Y c u O X c p P P c w W [R T] Z w X w Y w Extrinsic Parameters Perspective projection Convert a 3D point in camera coordinates P c to pixel coordinates Generalize the projection for any 3D point P w in world coordinates Use projection equations for camera calibration

17 Robot Vision Stereo Vision - Summary Summary Stereo imaging can give us scale Triangulation : with known stereocamera configuration, we can compute the 3D coordinates of a point seen in both images Epipolar constraint for efficient & robustified search for correspondences Use stereo processing for 3D scene reconstruction or computation of disparity maps Generalize stereo processing to multiple cameras for structure from motion Left Image 3D Object Right Image

18 Robot Vision Salient Image Regions Correlation vs. Convolution Use in template matching, smoothing and taking the derivate of an image Image filtering for edge detection Point Features: Haris, Sift, FAST, BRIEF, BRISK and their characteristics e.g. scale/rotation invariance, computational time Building and using the visual vocabulary for place recognition Examples of Visual Words 2N +1 2N +1

19 Robot Vision Error Propagation and Line Fitting Representing uncertainty for real-world data The error propagation law and its significance Line Fitting algorithms for image/laser point clouds: Split-and-merge, Line regression, RANSAC, Hough Transform, How they work and their characteristics and applications

Roland Siegwart Margarita Chli Martin Rufli Davide Scaramuzza ETH Master Course: 151-0854-00L Autonomous Mobile Robots Localization

21 Localization The probabilistic localization problem Consider a mobile robot moving in a known environment. As it starts to move, say from a precisely known location, it can keep track of its motion using odometry. Due to odometry uncertainty, after some movement the robot will become very uncertain about its position. To keep position uncertainty from growing unbounded, the robot must localize itself in relation to its environment map. To localize, the robot uses its on-board exteroceptive sensors (e.g. ultrasonic, laser, vision sensors) to make observations of its environment The robot updates its position based on the observation. Its uncertainty shrinks. Sensor reference frame

22 Localization Action and Perception updates In robot localization, we distinguish two update steps: 1. ACTION (or prediction) update: the robot moves and estimates its position through its proprioceptive sensors. During this step, the robot uncertainty grows. 2. PERCEPTION (or meausurement) update: the robot makes an observation using its exteroceptive sensors and correct its position by opportunely combining its belief before the observation with the probability of making exactly that observation. During this step, the robot uncertainty shrinks. Probability of making this observation Robot belief before the observation

23 Localization Solution to the probabilistic localization problem How do we solve the Action and Perception updates? Action update uses the Theorem of Total probability Perception update uses the Bayes rule bel( xt ) p( zt xt ) bel( xt ) (because of the use of the Bayes rule, probabilistic localization is also called Bayesian localization)

24 Localization Markov versus Kalman Two approaches exist to represent the probability distribution and to compute the Total Probability and Bayes Rule during the Action and Perception phases Markov The configuration space is divided into many cells. The configuration space of a robot moving on a plane is 3D dimensional (x,y,θ). Each cell contains the probability of the robot to be in that cell. The probability distribution of the sensors model is also discrete. During Action and Perception, all the cells are updated. Therefore, the computational cost is very high Kalman The probability distribution of both the robot configuration and the sensor model is assumed to be continuous and Gaussian! Since a Gaussian distribution is only described by its mean value μ and covariance Σ, we need only to update μ and Σ. Therefore the computational cost is very low!

25 Localization Markov versus Kalman Markov PROS localization starting from any unknown position recovers from ambiguous situation Kalman PROS Tracks the robot and is inherently very precise and efficient CONS However, to update the probability of all positions within the whole state space at any time requires a discrete representation of the space (grid). The required memory and calculation power can thus become very important if a fine grid is used. CONS If the uncertainty of the robot becomes too large (e.g. collision with an object) the Kalman filter will fail and the position is definitively lost

26 Simultaneous Localization and Mapping SLAM - Summary What is SLAM and how does it work? Graphical representation of SLAM and approaches to solve it Full graph optimization Filtering Keyframe-based approaches Popular techniques, working principles and relative merits EKF SLAM (via the MonoSLAM system) Particle Filtering SLAM GraphSLAM B C A

Roland Siegwart Margarita Chli Martin Rufli Davide Scaramuzza ETH Master Course: 151-0854-00L Autonomous Mobile Robots Motion Planning

28 Motion Planning Work & Configuration Spaces Work space The physical space we live and operate in Usually 3D on flat ground and 6D for flying robots State space (Configuration space) The space of configurations an agent operates in One DoF for each non-redundant actuator Application: manipulator arm Work Space Configuration Space

29 Motion Planning Work & Configuration Spaces Application: wheeled robot Operation on ground results in a 3D config space: (x, y, θ) In practice / for simplicity often a holonomic point-mass is assumed Obstacles are inflated by the robot radius Work Space Configuration Space

30 Motion Planning Dynamic Window Approach (DWA) Working Principle 2D evidence grid transformed into (v,ω) space based on inevitable collision states Circular arcs and acceleration window V d account for vehicle kinematics Selection of (v,ω)-pair within V V V V that maximizes objective function r s a d, (, ) (, ) (, ) G v heading v dist v velocity v Properties Prone to local minima

31 Motion Planning Graph Search Algorithms Overview Graph structure is a discrete representation G(N,E) Solves a least cost problem between two states on a (directed) graph Limitations State space is discretized, hence completeness is at stake Feasibility of paths is often not inherently encoded Algorithms Covered Breadth first Depth first Dijkstra A* and variants (D* and variants) Courtesy wikipedia.org

32 Global Planning Breadth First Graph Search Working principle Operates on a FIFO queue and a closed list Backtracks optimal solution starting from goal state Properties First goal state encountered is optimal, iff edge costs are identical Optimal for arbitrary edge costs, iff expansion is continued until FIFO queue is empty A A A A A A A B C D B C D B C D B C D B C D B C D B C D E E F E F G E F G E F G E F G G H G H F I G H F I D I A B C D A B C D A B C D B E E F G E F G E F G D G H F I I K D G H F I I K C H D G H F I I K C H First path found! = optimal L A=initial C F H K D G I L=goal

33 Discussion:

34 Exam Oral, 30 minutes 3 Questions selected drawn by dices Application Basics 1 Basics 2 Questions given beforehand (Webpage, sent to all participants) http://www.asl.ethz.ch/education/master/mobile_robotics/questions2013.pdf Example: All terrain demining in unstructured environments 3.2.3 Wheel kinematic constraints of the 5 wheel types, pro/cons of wheel types 5.2.4 Odometric position estimation and error model for a differential drive robot and their use in Markov and EKF localization 12 - Summery