Unit 2: Locomotion Kinematics of Wheeled Robots: Part 3

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

Mobile Robot Kinematics

Centre for Autonomous Systems

Robotics (Kinematics) Winter 1393 Bonab University

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

Kinematics, Kinematics Chains CS 685

EE565:Mobile Robotics Lecture 2

Fundamental problems in mobile robotics

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

Introduction to Robotics

CHAPTER 3 MATHEMATICAL MODEL

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

Chapter 3: Kinematics Locomotion. Ross Hatton and Howie Choset

Kinematics of Wheeled Robots

Motion Control (wheeled robots)

Mobile Robots Locomotion

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

Cinematica dei Robot Mobili su Ruote. Corso di Robotica Prof. Davide Brugali Università degli Studi di Bergamo

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

Mobile Robotics. Competitions and Opportunities

Encoder applications. I Most common use case: Combination with motors

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

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

E0005E - Industrial Image Analysis

1 Differential Drive Kinematics

Final Exam Practice Fall Semester, 2012

Localization, Where am I?

Robots are built to accomplish complex and difficult tasks that require highly non-linear motions.

Introduction to Robotics

Lecture 1 Wheeled Mobile Robots (WMRs)

MEM380 Applied Autonomous Robots Winter Robot Kinematics

Exam in DD2426 Robotics and Autonomous Systems

MC-E - Motion Control

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

Supplementary Material: The Rotation Matrix

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

Non-holonomic Planning

Cobots

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:

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

Kinematics of Closed Chains

Lecture VI: Constraints and Controllers. Parts Based on Erin Catto s Box2D Tutorial

ROBOTICS AND AUTONOMOUS SYSTEMS

Robotics and Autonomous Systems

Robotics and Autonomous Systems

Chapter 4. Mechanism Design and Analysis

3. The three points (2, 4, 1), (1, 2, 2) and (5, 2, 2) determine a plane. Which of the following points is in that plane?

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

Planning: Part 1 Classical Planning

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

CS283: Robotics Fall 2016: Sensors

MATH 31A HOMEWORK 9 (DUE 12/6) PARTS (A) AND (B) SECTION 5.4. f(x) = x + 1 x 2 + 9, F (7) = 0

9. Representing constraint

COMP30019 Graphics and Interaction Transformation geometry and homogeneous coordinates

State Estimation for Continuous-Time Systems with Perspective Outputs from Discrete Noisy Time-Delayed Measurements

Controlled Steering. Prof. R.G. Longoria Spring Relating to Kinematic models of 2D steering and turning

ROBOTICS 01PEEQW. Basilio Bona DAUIN Politecnico di Torino

Time Optimal Trajectories for Bounded Velocity Differential Drive Robots

MEAM 520. Mobile Robots

Improving autonomous orchard vehicle trajectory tracking performance via slippage compensation

Unit 5: Part 1 Planning

Experimental study of Redundant Snake Robot Based on Kinematic Model

Spacecraft Actuation Using CMGs and VSCMGs

FROM MANIPULATION TO WHEELED MOBILE MANIPULATION : ANALOGIES AND DIFFERENCES. B. Bayle J.-Y. Fourquet M. Renaud

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

Background for Surface Integration

Chapter 8: Applications of Definite Integrals

Odometry and Calibration Methods for Multi-Castor Vehicles

Homography-Based Multi-Robot Control with a Flying Camera

AUTONOMOUS PLANETARY ROVER CONTROL USING INVERSE SIMULATION

Lecture VI: Constraints and Controllers

Animation. CS 4620 Lecture 32. Cornell CS4620 Fall Kavita Bala

Geometric Construction of Time Optimal Trajectories for Differential Drive Robots

Graphics and Interaction Transformation geometry and homogeneous coordinates

Autonomous Mobile Robots, Chapter 6 Planning and Navigation Where am I going? How do I get there? Localization. Cognition. Real World Environment

Introduction to Mobile Robotics Probabilistic Motion Models

CONTROL OF A WHEELED ROBOT FOLLOWING A CURVILINEAR PATH

4 DIFFERENTIAL KINEMATICS

Instantaneous Centre of Rotation Estimation of an Omnidirectional Mobile Robot

Edge and local feature detection - 2. Importance of edge detection in computer vision

Kinematics of Machines Prof. A. K. Mallik Department of Mechanical Engineering Indian Institute of Technology, Kanpur. Module - 3 Lecture - 1

Slope Traversal Experiments with Slip Compensation Control for Lunar/Planetary Exploration Rover

Implementation of a Capacitive Proximity Sensor System for a Fully Maneuverable Modular Mobile Robot to Evade Humans

Configuration Space. Chapter 2

Autonomous Mobile Robots Using Real Time Kinematic Signal Correction and Global Positioning System Control

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

Outline Sensors. EE Sensors. H.I. Bozma. Electric Electronic Engineering Bogazici University. December 13, 2017

ELEC Dr Reji Mathew Electrical Engineering UNSW

Control of Snake Like Robot for Locomotion and Manipulation

To do this the end effector of the robot must be correctly positioned relative to the work piece.

Cecilia Laschi The BioRobotics Institute Scuola Superiore Sant Anna, Pisa

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

This was written by a designer of inertial guidance machines, & is correct. **********************************************************************

NOT COMPLETE. θ 4 B 2 = O 2 O 4 = A 2 = A 1 B 1 O 2 KINEMATIC SYNTHESIS

S-SHAPED ONE TRAIL PARALLEL PARKING OF A CAR-LIKE MOBILE ROBOT

A Genetic Algorithm for Robust Motion Planning

Lesson 1: Introduction to Pro/MECHANICA Motion

Kinematics of Machines Prof. A. K. Mallik Department of Mechanical Engineering Indian Institute of Technology, Kanpur. Module 10 Lecture 1

Transcription:

Unit 2: Locomotion Kinematics of Wheeled Robots: Part 3 Computer Science 4766/6778 Department of Computer Science Memorial University of Newfoundland January 28, 2014 COMP 4766/6778 (MUN) Kinematics of Wheeled Robots: Part 3 January 28, 2014 1 / 29

1 Manoeuvrability 2 Motion Control Trajectory Following Closed-Loop Control Two-step Controller Smooth Controller 1 Smooth Controller 2 COMP 4766/6778 (MUN) Kinematics of Wheeled Robots: Part 3 January 28, 2014 2 / 29

Manoeuvrability: Degree of Mobility Some robots are more manoeuvrable than others Intuitively, we can see that the differential drive robot is more manoeuvrable than the turning bicycle A robot s degree of mobility is defined by its sliding constraints Sliding constraints can be visualized by drawing a zero motion line through the wheel s axis, perpendicular to the wheel plane The intersection of all zero motion lines defines the instantaneous centre of rotation (ICR) ICR YR XR COMP 4766/6778 (MUN) Kinematics of Wheeled Robots: Part 3 January 28, 2014 3 / 29

A robot s instantaneous velocity must be tangential to the circle centred at its ICR Recall the translatory component of the turning bicycle s velocity: ẋ R = r φ 1 /2, ẏ R = r φ 1 For any given r and φ 1 the velocity vector (heavy vector below) will be orthogonal to the line connecting P and ICR r φ/2 Y R r φ X R ICR COMP 4766/6778 (MUN) Kinematics of Wheeled Robots: Part 3 January 28, 2014 4 / 29

ICR s for Various Wheel Configurations ICR Left: For a differential-drive the two zero-motion lines are coincident; Thus, the ICR is constrained only to lie somewhere on that line Centre: For an Ackerman configuration (approximated by modern cars) the two rear wheels give only one zero-motion line; To prevent slipping, the two front wheels must be steered such that their zero motion lines intersect the rear line at a common point Right: A degenerate configuration; There is no ICR; If there is no slipping, there is also no movement COMP 4766/6778 (MUN) Kinematics of Wheeled Robots: Part 3 January 28, 2014 5 / 29

We can formally characterize a robot s degree of mobility Consider a differential-drive robot; It has two wheels but only one independent sliding constraint To determine the degree of mobility we count the number of independent sliding constraints Define a matrix C that encodes the wheel direction component of the sliding constraint equations for all wheels The rank of this matrix is the number of independent constraints rank = number of independent rows or columns (have to be equal) COMP 4766/6778 (MUN) Kinematics of Wheeled Robots: Part 3 January 28, 2014 6 / 29

Examples: Differential-drive: Turning bicycle: [ C = C = [ 0 1 0 0 1 0 rank [C] = 1 ] 1 0 1 2/2 2/2 2/2 rank [C] = 2 ] COMP 4766/6778 (MUN) Kinematics of Wheeled Robots: Part 3 January 28, 2014 7 / 29

The maximum rank of an N 3 matrix is We define a robot s degree of mobility as follows, δ m = 3 rank [C] Differential-drive: δ m = 2 Turning bicycle: δ m = 1 Robot with all omnidirectional wheels: δ m = 3 Determining δ m is an important part of determining how manoeuvrable a robot is; However, the fact that some wheels are steerable should also be considered... COMP 4766/6778 (MUN) Kinematics of Wheeled Robots: Part 3 January 28, 2014 8 / 29

We define a robot s degree of steerability, δ s, as the number of independently steerable wheels that yield a valid ICR A normal bicycle: δ s = 1 A car: δ s = 1 (cannot independently steer both front wheels) The maximum δ s is 2: Once two wheels define the ICR, the choice of the third is not independent We define a robot s degree of manoeuvrability as follows, δ M = δ m + δ s COMP 4766/6778 (MUN) Kinematics of Wheeled Robots: Part 3 January 28, 2014 9 / 29

Degrees of Manoeuvrability, Mobility, and Steerability for Various Configurations COMP 4766/6778 (MUN) Kinematics of Wheeled Robots: Part 3 January 28, 2014 10 / 29

The term holonomic robot refers to a robot with either......constraints which can be expressed purely in terms of position variables e.g. the following locked-wheel bicycle YR XR can be described by the holonomic constraints: y = 0 and θ = 0...or no constraints on its motion: an omnidirectional robot Nonholonomic robots are subject to nonholonomic constraints (i.e. sliding constraints) Omnidirectional robots have δ M = 3 and exhibit the best possible manoeuvrability; However, the omnidirectional wheels required for such robots (i.e. Swedish, Castor, or spherical) exhibit a number of drawbacks: increased complexity and expense reduced accuracy for dead reckoning reduced ground clearance for powered versions standard wheels can passively counteract lateral forces; more efficient and stable for high-speed turns COMP 4766/6778 (MUN) Kinematics of Wheeled Robots: Part 3 January 28, 2014 11 / 29

What is the difference between an omnidirectional robot, and a non-omnidirectional robot such as the Two-Steer? Both have δ M = 3? The difference is that it takes time for a steered robot to steer its wheels to the appropriate positions; Consider this omnidirectional robot following an L shaped trajectory COMP 4766/6778 (MUN) Kinematics of Wheeled Robots: Part 3 January 28, 2014 12 / 29

Now consider the trajectory of the Two-Steer During time intervals 1-2 and 3-4 the robot was doing nothing but steering its wheels; The omnidirectional robot could transition between segments of the trajectory without any delay; Both robots take the same path but the trajectories (path + time dimension) differ

Motion Control: Trajectory Following One simple means of controlling the motion of a robot is to decompose its path into a sequence of elementary motions Elementary motions may include lines and segments of circles which any robot with δ M 2 can execute The robot s trajectory can be planned completely in advance without using any sensors Open-loop control Alternatively, information from the sensors can be used to update the plan Closed-loop control COMP 4766/6778 (MUN) Kinematics of Wheeled Robots: Part 3 January 28, 2014 14 / 29

Open-Loop System: The input (a.k.a. reference) is first converted by the input transducer to the form required by the controller. The process or plant caries out the core function of the system (e.g. the furnace in a heating system, motors in a robot). The output (a.k.a. the controlled variable) differs from its desired value because of the two disturbances. e.g. Open-loop heating system: The controller is an electronic amplifier and disturbance 1 is noise in the amplifier s output. Disturbance 2 might be variations in temperature due to the furnace itself. COMP 4766/6778 (MUN) Kinematics of Wheeled Robots: Part 3 January 28, 2014 15 / 29

Open-loop systems cannot correct for disturbances. In our example, the final temperature would deviate from the desired temperature. e.g. A toaster is an open-loop system. It cannot correct for the thickness of the bread or whether it is whole wheat or white. COMP 4766/6778 (MUN) Kinematics of Wheeled Robots: Part 3 January 28, 2014 16 / 29

Closed-Loop System: In a closed-loop system there is an output transducer or sensor which converts the output into the form used by the controller. e.g. Position can be converted to an electrical signal by a potentiometer. The first summing junction subtracts the output signal from the input. This is the error signal. COMP 4766/6778 (MUN) Kinematics of Wheeled Robots: Part 3 January 28, 2014 17 / 29

Closed-loop systems compensate for disturbances through feedback. If the actuating signal is zero then the output is correct and the plant does not need to be driven. Otherwise, the actuating signal describes how different the output is from what it should be. This drives the plant to correct this difference. While open-loop systems fail to correct for disturbances or changes in the environment, they will tend to be simpler and cheaper than closed-loop systems. Thus, there is a trade-off to consider between them. COMP 4766/6778 (MUN) Kinematics of Wheeled Robots: Part 3 January 28, 2014 18 / 29

Closed-Loop Control Consider the problem of driving a differential-drive robot to goal position g I = [g Ix g Iy ], expressed in the global reference frame (Later we will consider the problem of arriving at the goal position with a particular orientation) We need to determine how to set the robot s forward speed v(t) and rotational speed ω(t) For a differential-drive robot we have the following, v(t) = ẋ R = r( φ r + φ l ) 2 w(t) = θ = r( φ r φ l ) 2l COMP 4766/6778 (MUN) Kinematics of Wheeled Robots: Part 3 January 28, 2014 19 / 29

If we can obtain g R then we can apply some control function f to get v(t), the forward velocity component, and ω(t), the angular velocity component [ ] v(t) = f (g ω(t) R ) The control function should drive the robot such that, lim g t R(t) = [0 0] T which just means that the robot will eventually reach the goal COMP 4766/6778 (MUN) Kinematics of Wheeled Robots: Part 3 January 28, 2014 20 / 29

...Some Details We are given g I ; How do we determine g R? COVERED ON BOARD g R = R(θ)(g I [x y] T ) (We should use the 2 2 rotation matrix here) Clearly we need [x y] T ; How do we get that? Odometry (previously covered), or by using a map (to be covered) COMP 4766/6778 (MUN) Kinematics of Wheeled Robots: Part 3 January 28, 2014 21 / 29

Two-step Controller We break the problem into two steps: Turn to face the goal Move towards goal First, it is convenient to express g R using polar coordinates [ρ α] T YR g Ry ρ α The two steps can now be specified: Minimize α Minimize ρ g Rx XR COMP 4766/6778 (MUN) Kinematics of Wheeled Robots: Part 3 January 28, 2014 22 / 29

The Controller: Two States parameters: k α, ɛ α, k ρ, ɛ ρ 1 [ v(t) ω(t) ] [ = 2 [ v(t) ω(t) Note: angle α must be in [ π, π] 0 k α sign(α) Switch to state 2 if α < ɛ α ] = [ kρ 0 End if ρ < ɛ ρ ] ]

There are problems with this controller: If the first step fails, the second will also fail It is difficult to choose appropriate values for the parameters: k α, ɛ α, k ρ, ɛ ρ Smaller thresholds require high-precision localization and actuation (if too small, goal is never reached) Larger thresholds reduce accuracy Splitting the motion into two distinct phases is inefficent; We can save time by moving forwards while turning COMP 4766/6778 (MUN) Kinematics of Wheeled Robots: Part 3 January 28, 2014 24 / 29

Smooth Controller 1 We try to minimize the quantities g Rx, g Ry, but now we minimize both simultaneously Consider the following control law v(t) = k v g Rx ω(t) = k ω g Ry where the k parameters are positive The robot drives forward until g Rx = 0 If g Ry is positive, robot will turn CCW to face the goal; If negative it will turn CW. COMP 4766/6778 (MUN) Kinematics of Wheeled Robots: Part 3 January 28, 2014 25 / 29

Smooth Controller 2 Assume we now wish to drive the robot to a desired pose Pose means (x, y) position and orientation θ We are given the goal pose g I = [g Ix g Iy g I θ ] T, expressed in the inertial reference frame We need the goal pose in the robot reference frame g R = R(θ)(g I ξ I ) (We should use the 3 3 rotation matrix here) COMP 4766/6778 (MUN) Kinematics of Wheeled Robots: Part 3 January 28, 2014 26 / 29

Again it will be useful to express the goal pose using polar coordinates Y R g Ry g Rθ ρ α g Rx X R The final orientation is given by g Rθ We require a controller that minimizes α, ρ, and g Rθ simultaneously COMP 4766/6778 (MUN) Kinematics of Wheeled Robots: Part 3 January 28, 2014 27 / 29

Consider the following control law v(t) = k ρ ρ ω(t) = k α α k θ g Rθ where the following conditions hold: α [ π, π] all of the k parameters are positive k θ < k α The robot drives forward until ρ = 0 If α is positive, robot will turn CCW to minimize it k θ < k α so θ does not have much influence until α becomes small; At this point the robot will be driven to turn away from the goal; This increases α so the robot will turn towards the goal again, only now g Rθ will be reduced COMP 4766/6778 (MUN) Kinematics of Wheeled Robots: Part 3 January 28, 2014 28 / 29

Smooth Controller 2: Refinement If α ( π 2, π 2 ] then the robot will approach the goal directly (although its trajectory will be curved) If α ( π, π 2 ] ( π 2, π] then the robot will first have to turn around before approaching the goal; We can detect this situation and modify the control law so that the robot backs up to the goal position, without turning around v(t) = k ρ ρ ω(t) = k α (α π) k θ g Rθ (Here the angle (α π) must be in [ π, π]) COMP 4766/6778 (MUN) Kinematics of Wheeled Robots: Part 3 January 28, 2014 29 / 29