Centre for Autonomous Systems

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

Motion Control (wheeled robots)

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

BEST2015 Autonomous Mobile Robots Lecture 2: Mobile Robot Kinematics and Control

Mobile Robot Kinematics

Robotics (Kinematics) Winter 1393 Bonab University

Unit 2: Locomotion Kinematics of Wheeled Robots: Part 3

Motion Control (wheeled robots)

Fundamental problems in mobile robotics

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

Kinematics, Kinematics Chains CS 685

17. Wheeled Robots Overview. Part B 17. Guy Campion, Woojin Chung

EE565:Mobile Robotics Lecture 2

Introduction to Robotics

Linear algebra deals with matrixes: two-dimensional arrays of values. Here s a matrix: [ x + 5y + 7z 9x + 3y + 11z

MEM380 Applied Autonomous Robots Winter Robot Kinematics

Mobile Robots Locomotion

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

Kinematics of Wheeled Robots

Kinematics Modeling of the Amigobot Robot

CHAPTER 3 MATHEMATICAL MODEL

CALCULATING TRANSFORMATIONS OF KINEMATIC CHAINS USING HOMOGENEOUS COORDINATES

Bearing only visual servo control of a non-holonomic mobile robot. Robert Mahony

Industrial Robots : Manipulators, Kinematics, Dynamics

Visual Recognition: Image Formation

1 Differential Drive Kinematics

Mobile Robotics. Competitions and Opportunities

CS612 - Algorithms in Bioinformatics

Jacobian: Velocities and Static Forces 1/4

9. Representing constraint

Lecture 18 Kinematic Chains

Final Exam Practice Fall Semester, 2012

Graphics and Interaction Transformation geometry and homogeneous coordinates

Practical Robotics (PRAC)

COMP30019 Graphics and Interaction Transformation geometry and homogeneous coordinates

EE Kinematics & Inverse Kinematics

CSC418 / CSCD18 / CSC2504

Lecture 1 Wheeled Mobile Robots (WMRs)

MTRX4700 Experimental Robotics

Lecture Note 3: Rotational Motion

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

Planning in Mobile Robotics

Planar Robot Kinematics

Computer Animation II

Non-holonomic Planning

Forward kinematics and Denavit Hartenburg convention

Kinematic Model of Robot Manipulators

MEAM 520. Mobile Robots

Robotics I. March 27, 2018

CS545 Contents IX. Inverse Kinematics. Reading Assignment for Next Class. Analytical Methods Iterative (Differential) Methods

Homography-Based Multi-Robot Control with a Flying Camera

Torque Distribution and Slip Minimization in an Omnidirectional Mobile Base

4.1 Radian and Degree Measure

METR 4202: Advanced Control & Robotics

1498. End-effector vibrations reduction in trajectory tracking for mobile manipulator

10. Cartesian Trajectory Planning for Robot Manipulators

ROBOTICS: ADVANCED CONCEPTS & ANALYSIS

EEE 187: Robotics Summary 2

WORKSPACE AGILITY FOR ROBOTIC ARM Karna Patel

Configuration Space. Chapter 2

Introduction to Robotics

Generalizing the Dubins and Reeds-Shepp cars: fastest paths for bounded-velocity mobile robots

DETC THREE-DIMENSIONAL KINEMATIC ANALYSIS OF THE ACTUATED SPOKE WHEEL ROBOT. September 10-13, 2006, Philadelphia, Pennsylvania, USA

E80. Experimental Engineering. Lecture 9 Inertial Measurement

Cobots

CS283: Robotics Fall 2016: Sensors

The Path-of-Probability Algorithm for Steering and Feedback Control of Flexible Needles. Wooram Park, Yunfeng Wang, and Gregory S.

Kinematics of Closed Chains

Waypoint Navigation with Position and Heading Control using Complex Vector Fields for an Ackermann Steering Autonomous Vehicle

Fall 2016 Semester METR 3113 Atmospheric Dynamics I: Introduction to Atmospheric Kinematics and Dynamics

ME 115(b): Final Exam, Spring

3D Computer Vision II. Reminder Projective Geometry, Transformations. Nassir Navab. October 27, 2009

Session #5 2D Mechanisms: Mobility, Kinematic Analysis & Synthesis

Robot Inverse Kinematics Asanga Ratnaweera Department of Mechanical Engieering

3-D D Euclidean Space - Vectors

MCE/EEC 647/747: Robot Dynamics and Control. Lecture 3: Forward and Inverse Kinematics

Kinematics. Kinematics analyzes the geometry of a manipulator, robot or machine motion. The essential concept is a position.

NMT EE 589 & UNM ME 482/582 ROBOT ENGINEERING. Dr. Stephen Bruder NMT EE 589 & UNM ME 482/582

Ch. 7.4, 7.6, 7.7: Complex Numbers, Polar Coordinates, ParametricFall equations / 17

Motion Planning for a Reversing Full-Scale Truck and Trailer System

Formation Control of Nonholonomic Mobile Robots with Omnidirectional Visual Servoing and Motion Segmentation

ECE569 Fall 2015 Solution to Problem Set 2

Jane Li. Assistant Professor Mechanical Engineering Department, Robotic Engineering Program Worcester Polytechnic Institute

Singularity Handling on Puma in Operational Space Formulation

Exercise 1: Kinematics of the ABB IRB 120

COMP30019 Graphics and Interaction Three-dimensional transformation geometry and perspective

Singularity Loci of Planar Parallel Manipulators with Revolute Joints

Chapter 3: Kinematics Locomotion. Ross Hatton and Howie Choset

Transformations. Ed Angel Professor of Computer Science, Electrical and Computer Engineering, and Media Arts University of New Mexico

θ x Week Date Lecture (M: 2:05p-3:50, 50-N202) 1 23-Jul Introduction + Representing Position & Orientation & State 2 30-Jul

11. Kinematic models of contact Mechanics of Manipulation

An approach for generic detection of conic equation from images

A Simple Introduction to Omni Roller Robots (3rd April 2015)

Jacobian: Velocities and Static Forces 1/4

PPGEE Robot Dynamics I

Mathematics for Computer Graphics. Trigonometry

To graph the point (r, θ), simply go out r units along the initial ray, then rotate through the angle θ. The point (1, 5π 6. ) is graphed below:

Inverse Kinematics Analysis for Manipulator Robot With Wrist Offset Based On the Closed-Form Algorithm

Cecilia Laschi The BioRobotics Institute Scuola Superiore Sant Anna, Pisa

Lecture «Robot Dynamics»: Kinematic Control

Transcription:

Robot Henrik I Centre for Autonomous Systems Kungl Tekniska Högskolan hic@kth.se 27th April 2005

Outline 1 duction 2 Kinematic and Constraints 3 Mobile Robot 4 Mobile Robot 5 Beyond Basic 6 Kinematic 7

Motion Requirements Kinematic / dynamic model of the robot Model of ground/wheel interaction Definition of required motion velocity / position control Design of control law to satisfy constriants

Mobile Robot Model of mechanical behaviour of robot for design and control can be used both for mobile systems and manipulators Manipulators allow direct estimation of position, which is not always true for mobile systems Position to be derived from integration over time Motion is not free. There are constraints to be considered in the design and control generation.

Outline 1 duction 2 Kinematic and Constraints 3 Mobile Robot 4 Mobile Robot 5 Beyond Basic 6 Kinematic 7

Reference frames Inertial reference frame (I) Robot references frame (R) Robot pose ξ I = x y θ

Transformation between reference frames The relation between the references frame is through the standard orthogonal rotation transformation: cos(θ) sin(θ) 0 R(θ) = sin(θ) cos(θ) 0 0 0 1 Enable handling of motion between frames ξ R = R(θ) ξ I

Simple 90 rotation Now with ξ R = R(θ) ξ I ξ R = R( π 2 ) ξ I Implies ξ R = R( π 2 ) ξ I = R( π 2 ) = 1 0 0 0 1 0 0 0 1 1 0 0 0 1 0 0 0 1 ẋ ẏ θ = ẏ ẋ θ

Kinematic modelling Goal: Determine the robot speed ξ = [ ] T ẋ ẏ θ as a function of wheel speed ϕ, steering angle β, steering speed β and the geometric parameters of the robot. Forward kinematics ξ = ẋ ẏ θ = f ( ϕ 1,..., ϕ n, β 1,..., β m, β 1,..., β m ) Inverse kinematics [ ] ϕ 1... ϕ n β 1... β m β 1... β T m = f (ẋ, ẏ, θ) Why not x y θ = f (ϕ 1,..., ϕ n, β 1,..., β m ) the relation is not straight forward. See later.

Forward kinematic model differential drive r Assume a set up with two drive wheels. Wheels have radius r, and a places at a distance l from the center. Wheels rotate at speeds ϕ 1 and ϕ 2 Prediction of the motion of the robot motion in the global frame l P l ξ I = ẋ ẏ θ = f (l, r, θ, ϕ 1, ϕ 2 )

Differential drive model Given ξ I = R(θ) 1 ξ R Speed of each wheel is r ϕ i, the translational speed is the average velocity ẋ R = r ϕ 1 + ϕ 2 2 The instantaneous rotation of P for one wheel is The total rotation is then ω 1 = r ϕ 1 2l θ = r 2l ( ϕ 1 ϕ 2 )

Differential drive model Given ξ I = R(θ) 1 ξ R The full model is then: ξ I = R(θ) 1 r 2 ϕ 1 + ϕ 2 0 ϕ 1 ϕ 2 l The rotation matrix is trivial to invert cos(θ) sin(θ) 0 R(θ) 1 = sin(θ) cos(θ) 0 0 0 1

Differential motion ICCor ICR The Instantaneous Center of Rotation (ICR) or Instantaneous Center of Curvature is relevant. Characterised by rotation ω and radius R: R = l ϕ 1 + ϕ 2 ϕ 1 ϕ 2 With ϕ 1 = ϕ 2 R =

Kinematic constraints Assumptions Plane of wheel is always vertical Single point of contact with surface Motion is purely by rolling (no slippage) Rotation of wheel is around the vertical axis

Fixed wheel constraint r The motion of the wheel must be in the plane of the wheel Speed of wheel v = r ϕ The motion must then be (rolling constraint): ˆ sin(α + β) cos(α + β) ( l) cos(β) R(θ) ξ I r ϕ = 0 Motion in the orthogonal plane must be zero (sliding constraint), i.e. beta ˆ cos(α + β) sin(α + β) l sin(β) R(θ) ξi = 0 l alpha v Wheels cannot slide sideways! Similar models can be developed for Swedish and Spherical wheels (see the book!)

Steering wheel constraint d r The motion of the wheel must be in the plane of the wheel Speed of wheel v = r ϕ, Rotation speed is β The motion must then be (rolling constraint): ˆ sin(α + β) cos(α + β) ( l) cos(β) R(θ) ξ I r ϕ = 0 Motion in the orthogonal plane must be zero (sliding constraint), i.e. beta ˆ cos(α + β) sin(α + β) (d + l) sin(β) R(θ) ξi + β = 0 l alpha d v Rolling constraint similar to fixed wheel, but the sliding constraint is wrt the wheel-contact point

Robot Kinematic Constraints Combination of the wheel constraints imposes the overall constraints for the vehicle Differential between fixed and steerable wheels Assume N wheels divided into N f fixed and N s steerable wheels β f is orientation of fixed wheels β s (t) is the steering angle of the controllable wheels Define motion of wheels as: ϕ(t) = [ ϕf (t) ϕ s (t) ]

Kinematic constraints The rolling constraints can be collected: where J 1 (β s )R(θ) ξ I J 2 ϕ = 0 [ J 1 (β s ) = J 1f J 1s (β s ) J 1f is an N f 3 constant matrix and J 1s is an N s 3 matrix of constraints. ] J 2 is a diagonal matrix with wheel radii r i A similar set of constraints can be defined for sliding (C)

Differential drive constraints example Fusing rolling and sliding constraints we obtain: [ ] [ ] J1 (β s ) R(θ) C 1 (β s ) ξ J2 ϕ I = 0 Assume robot axis along +X R, then α = π 2, and β = π for right wheel and α = π 2 and β = 0 for left wheel

Differential drive contraint Resulting in 2» 3 1 0 l 4 ˆ 1 0 l 5 R(θ) ξ I = 0 1 0 Inverting the equation results in:» J2 ϕ 0 2 ξ I = R(θ) 1 4 1 0 l 3 2 3» 1 0 l 5 1 J2 ϕ = 1 1 1 0» 0 0 1 0 2 R(θ) 1 4 0 0 2 5 J2 ϕ 1 l 1 0 0 l

Outline 1 duction 2 Kinematic and Constraints 3 Mobile Robot 4 Mobile Robot 5 Beyond Basic 6 Kinematic 7

Degree of mobility The sliding constraints can be separated between fixed and steerable wheels: C 1f R(θ) ξ I = 0 C 1s (β s )R(θ) ξ I = 0 Motion of the robot must belong to the null space of C 1, i.e. C 1 (β s ) m = 0, m null(c 1 ) Constraint is also shown by the instantaneous centre of rotation (ICR) mentioned earlier

Instantaneous centre of rotation ICR ICR Ackermann steering Bicycle

Mobility constraints The rank(c 1 ) defines the number of independent constraints The degree of mobility is defined by the dimensionality of the null space of C 1 which for a mobile platform is equal to: δ m = dim(null(c 1 )) = 3 rank(c 1 ) Examples: Robot δ m Differential drive 2 Bicycle 1

Degree of steerability Steerability is the number of independent DOF that can be controlled δ s = rank(c 1s ) Similarly the degree of maneuverability is defined as δ M = δ m + δ s

examples

Outline 1 duction 2 Kinematic and Constraints 3 Mobile Robot 4 Mobile Robot 5 Beyond Basic 6 Kinematic 7

The / Degree of Freedom :controllable degree of freedom The workspace: the space of possible configurations The velocity space: independent degree of motion that can be controlled. Sometimes referred to as the Differentiable degree of freedom (DDOF). DDOF = δ m. DDOF δ M DOF

Holonomic Systems Holonomy is frequently used in robotics Holonomic kinematic constraints: defined by position / pose variables Non-holonomic kinematic constraints: defined by differential variables. The pose cannot be recovered by integration. Non-holonomic systems are also referred to as non-integrable systems.

Holonomic systems Example, fixed wheel sliding constraint: [ cos(α + β) sin(α + β) l sin(β) ] R(θ) ξ I = 0 the constraint is in terms of ξ rather the ξ as it constraint the motion not the final configuration. A systems is only holonomic iff DDOF = DOF.

Path/trajectory considerations The constraints only define what can be achieved and the limitations. For systems there is a a need to consider how to achieve different configuration. Trajectory planning: partly covered in final lecture Trajectory control/tracking: given a specification how can the robot be moved to achieve the specified trajectory

Example of trajectory control

Outline 1 duction 2 Kinematic and Constraints 3 Mobile Robot 4 Mobile Robot 5 Beyond Basic 6 Kinematic 7

Beyond Basic The above analysis has been performed under a strong set of assumptions: only rolling motion with no sliding Tanks, rigid vehicles, etc use skid steering in which sliding motion is utilized to ensure control of the vehicle. Requires consideration of dynamic models beyond pure kinematics The friction model for interaction between surface and wheel must be considered. High speed motion also requires explicit modelling of system dynamics for the control. Dynamics is a separate field of research in robotics. Beyond the scope of this course.

Outline 1 duction 2 Kinematic and Constraints 3 Mobile Robot 4 Mobile Robot 5 Beyond Basic 6 Kinematic 7

Kinematic Start Goal

Trajectory following Kinematic control is following of a pre-specified trajectory described in terms of positions and velocities Often the trajectory is divided into trajectory segments Simple controllers use a combination of arcs and line segments (as done on American roads). Others use clothoids in which the curvature changes linearly with time, as done on European roads An entire field of robotics is devoted to path planning See http://msl.cs.uiuc.edu/planning for comprehensive / free book on the topic.

Feedback control A more appropriate strategy is a trajectory feedback controller that uses the path specification as control points to drive the robot system

Problem statement In the robot reference frame the error is e = [x, y, θ] T R The task is now to design a control matrix K [ ] k11 k K = 12 k 13 k k 21 k 22 k ij = k(t, e) 23 Such that [ v(t) ω(t) ] = Ke = K drives the error to zero lim t e(t) = 0 x y θ R

The basic setup for control β ρ α θ x

Kinematic model Consider a differential drive robot in the inertial frame ẋ cos(θ) 0 [ ] ẏ = sin(θ) 0 v ω θ 0 1 In polar coordinates the error is now ρ = x 2 + y 2 α = θ + atan2( y, x) β = θ α

Kinematic control Rephrased in polar coordinates: ρ cos(α) 0 α sin(α) = ρ 1 β sin(α) ρ 0 [ v ω ]

The control law the linear control law: v = k ρ ρ ω = k α α + k β β Which generates a closed loop system of: ρ k ρ ρ cos(α) α = k ρ sin(α) k α α k β β β k ρ sin(α)

Stability requirement It can be shown that the system is exponentially stable if: k ρ > 0 k β < 0 k α k ρ > 0 Sketch of proof (cos x = 1, sin x = x): ρ α β = k ρ 0 0 0 (k α k ρ ) k β 0 k ρ 0 ρ α β

Sketch of stability requirement if A has all eigenvalues where the real part is negative it is exponentially stable Characteristic polynomial: (λ + k ρ )(λ 2 + λ(k α k ρ ) k ρ k β )

examples

Outline 1 duction 2 Kinematic and Constraints 3 Mobile Robot 4 Mobile Robot 5 Beyond Basic 6 Kinematic 7

WRAP-UP Brief introduction to kinematic modelling of mobile systems Presentation of constraints and its use in models Example models for robots Brief example of kinematic control