1 Differential Drive Kinematics

Similar documents
Path Tracking for a Miniature Robot

Chapter 10 Rotational Motion. Copyright 2009 Pearson Education, Inc.

Linear Motion vs. Rotational Motion

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

Unit 4 Practice Test: Rotational Motion

KINEMATICS OF PARTICLES RELATIVE MOTION WITH RESPECT TO TRANSLATING AXES

INSTRUCTOR WORKBOOK Quanser Robotics Package for Education for MATLAB /Simulink Users

Force on Moving Charges in a Magnetic Field

Solving Simultaneous Equations and Matrices

Rotation: Moment of Inertia and Torque

Sensor Based Control of Autonomous Wheeled Mobile Robots

Cabri Geometry Application User Guide

Physics 160 Biomechanics. Angular Kinematics

EXPERIMENT: MOMENT OF INERTIA

Mechanics lecture 7 Moment of a force, torque, equilibrium of a body

Simulation of Trajectories and Comparison of Joint Variables for Robotic Manipulator Using Multibody Dynamics (MBD)

Fric-3. force F k and the equation (4.2) may be used. The sense of F k is opposite

Objectives After completing this section, you should be able to:

Practice Exam Three Solutions

11. Describing Angular or Circular Motion

ROBOTICS 01PEEQW. Basilio Bona DAUIN Politecnico di Torino

Figure 1.1 Vector A and Vector F

Lecture L6 - Intrinsic Coordinates

Chapter. 4 Mechanism Design and Analysis

Gear Trains. Introduction:

SolidWorks: Mirror, Revolve, and. Introduction to Robotics

Lecture L5 - Other Coordinate Systems

PHYS 101-4M, Fall 2005 Exam #3. MULTIPLE CHOICE. Choose the one alternative that best completes the statement or answers the question.

ME 115(b): Solution to Homework #1

PHYSICS 111 HOMEWORK SOLUTION #9. April 5, 2013

Improved Mecanum Wheel Design for Omni-directional Robots

Multi-Robot Tracking of a Moving Object Using Directional Sensors

Deflectable & Steerable Catheter Handbook

Intelligent Submersible Manipulator-Robot, Design, Modeling, Simulation and Motion Optimization for Maritime Robotic Research

Robotics. Chapter 25. Chapter 25 1

Basic CAD/CAM. CHAPTER 5: Geometric Transformation

Animations in Creo 3.0

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

Unified Lecture # 4 Vectors

ANALYTICAL METHODS FOR ENGINEERS

Lecture L2 - Degrees of Freedom and Constraints, Rectilinear Motion

Problem 6.40 and 6.41 Kleppner and Kolenkow Notes by: Rishikesh Vaidya, Physics Group, BITS-Pilani

Guidelines in Nonholonomic Motion Planning for Mobile Robots

Electric Motors and Drives

Worksheet 1. What You Need to Know About Motion Along the x-axis (Part 1)

MECHANICAL PRINCIPLES OUTCOME 4 MECHANICAL POWER TRANSMISSION TUTORIAL 1 SIMPLE MACHINES

Parametric Curves. (Com S 477/577 Notes) Yan-Bin Jia. Oct 8, 2015

Centripetal Force. This result is independent of the size of r. A full circle has 2π rad, and 360 deg = 2π rad.

Feedback Control of a Nonholonomic Car-like Robot

Geometry: Unit 1 Vocabulary TERM DEFINITION GEOMETRIC FIGURE. Cannot be defined by using other figures.

The Effects of Wheelbase and Track on Vehicle Dynamics. Automotive vehicles move by delivering rotational forces from the engine to

Dynamics of Rotational Motion

SOLID MECHANICS TUTORIAL MECHANISMS KINEMATICS - VELOCITY AND ACCELERATION DIAGRAMS

MOBILE ROBOT TRACKING OF PRE-PLANNED PATHS. Department of Computer Science, York University, Heslington, York, Y010 5DD, UK

11. Rotation Translational Motion: Rotational Motion:

Progettazione Funzionale di Sistemi Meccanici e Meccatronici

Lecture L3 - Vectors, Matrices and Coordinate Transformations

Magnetism. d. gives the direction of the force on a charge moving in a magnetic field. b. results in negative charges moving. clockwise.

Section 9.1 Vectors in Two Dimensions

Objective: To distinguish between degree and radian measure, and to solve problems using both.

Name: Partners: Period: Coaster Option: 1. In the space below, make a sketch of your roller coaster.

Center of Gravity. We touched on this briefly in chapter 7! x 2

PES 1110 Fall 2013, Spendier Lecture 27/Page 1

MET 306. Activity 8a. Mechanism Design Creo 2.0 Level 7 POINT A GROUND LINK LINK 1 LINK 2 LINK 3 POINT B 10/15/2010 1

MSc in Autonomous Robotics Engineering University of York

4 The Rhumb Line and the Great Circle in Navigation

Physics 112 Homework 5 (solutions) (2004 Fall) Solutions to Homework Questions 5

Interactive Computer Graphics

rarecorvettes.com, (831) Pacific Time Zone

Chapter 11. h = 5m. = mgh mv Iω 2. E f. = E i. v = 4 3 g(h h) = m / s2 (8m 5m) = 6.26m / s. ω = v r = 6.

Chapter 6 Circular Motion

Angular acceleration α

Readings this week. 1 Parametric Equations Supplement. 2 Section Sections Professor Christopher Hoffman Math 124

Midterm Exam 1 October 2, 2012

Teacher Answer Key: Measured Turns Introduction to Mobile Robotics > Measured Turns Investigation

FEEDBACK CONTROL OF A NONHOLONOMIC CAR-LIKE ROBOT

ENGINEERING COUNCIL DYNAMICS OF MECHANICAL SYSTEMS D225 TUTORIAL 1 LINEAR AND ANGULAR DISPLACEMENT, VELOCITY AND ACCELERATION

Lateral Acceleration. Chris Garner

Physics 201 Homework 8

Rules of Actuator and Guide Alignment in Linear Motion Systems

Q27.1 When a charged particle moves near a bar magnet, the magnetic force on the particle at a certain point depends

Physics 121 Sample Common Exam 3 NOTE: ANSWERS ARE ON PAGE 6. Instructions: 1. In the formula F = qvxb:

Engineering Feasibility Study: Vehicle Shock Absorption System

Some Comments on the Derivative of a Vector with applications to angular momentum and curvature. E. L. Lady (October 18, 2000)

Computer Animation. Lecture 2. Basics of Character Animation

Chapter 3.8 & 6 Solutions

State Newton's second law of motion for a particle, defining carefully each term used.

3D Tranformations. CS 4620 Lecture 6. Cornell CS4620 Fall 2013 Lecture Steve Marschner (with previous instructors James/Bala)

Practical Work DELMIA V5 R20 Lecture 1. D. Chablat / S. Caro Damien.Chablat@irccyn.ec-nantes.fr Stephane.Caro@irccyn.ec-nantes.fr

discuss how to describe points, lines and planes in 3 space.

Welcome back to Physics 211. Physics 211 Spring 2014 Lecture ask a physicist

LINES AND PLANES CHRIS JOHNSON

Problem Set 1. Ans: a = 1.74 m/s 2, t = 4.80 s

Review Questions PHYS 2426 Exam 2

Section 1.1. Introduction to R n

Lecture L22-2D Rigid Body Dynamics: Work and Energy

Simple Harmonic Motion

Datum > Curve KIM,ME,NIU

Artificial Intelligence

TRUCKCAM AXLE PARALLELITY SYSTEM. TruckCam AB Wheel Alignment Systems

Transcription:

CS W4733 NOTES - Differential Drive Robots Note: these notes were compiled from Dudek and Jenkin, Computational Principles of Mobile Robotics. 1 Differential Drive Kinematics Many mobile robots use a drive mechanism known as differential drive. It consists of 2 drive wheels mounted on a common axis, and each wheel can independently being driven either forward or backward. While we can vary the velocity of each wheel, for the robot to perform rolling motion, the robot must rotate about a point that lies along their common left and right wheel axis. The point that the robot rotates about is known as the ICC - Instantaneous Center of Curvature (see figure 1). Figure 1: Differential Drive kinematics (from Dudek and Jenkin, Computational Principles of Mobile Robotics. By varying the velocities of the two wheels, we can vary the trajectories that the robot takes. Because the rate of rotation ω about the ICC must be the same for both wheels, we can write the following equations: ω (R + l/2) = V r (1) ω (R l/2) = V l (2) where l is the distance between the centers of the two wheels, V r, V l are the right and left wheel velocities along the ground, and R is the signed distance from the ICC to the midpoint between the wheels. At any instance in time we can solve for R and ω: R = l 2 V l + V r ; ω = V r V l ; (3) V r V l l 1

There are three interesting cases with these kinds of drives. 1. If V l = V r, then we have forward linear motion in a straight line. R becomes infinite, and there is effectively no rotation - ω is zero. 2. If V l = V r, then R =, and we have rotation about the midpoint of the wheel axis - we rotate in place. 3. If V l =, then we have rotation about the left wheel. In this case R = l. Same is true if 2 V r =. Note that a differential drive robot cannot move in the direction along the axis - this is a singularity. Differential drive vehicles are very sensitive to slight changes in velocity in each of the wheels. Small errors in the relative velocities between the wheels can affect the robot trajectory. They are also very sensitive to small variations in the ground plane, and may need extra wheels (castor wheels) for support. 2 s In figure 1, assume the robot is at some positon (x, y), headed in a direction making an angle θ with the X axis. We assume the robot is centered at a point midway along the wheel axle. By manipulating the control parameters V l, V r, we can get the robot to move to different positions and orientations. (note: V l, V r ) are wheel velocities along the ground). Knowing velocities V l, V r and using equation 3, we can find the ICC location: and at time t + δt the robot s pose will be: x y θ = ICC = [x R sin(θ), y + R cos(θ)] (4) cos(ωδt) sin(ωδt) sin(ωδt) cos(ωδt) 1 x ICC x y ICC y θ + ICC x ICC y ωδt (5) This equation simply describes the motion of a robot rotating a distance R about its ICC with an angular velocity of ω. Refer to figure 2. Another way to understand this is that the motion of the robot is equivalent to 1) translating the ICC to the origin of the coordinate system, 2) rotating about the origin by an angular amount ω δt, and 3) translating back to the ICC. 2

9/16/213 X (2,1) Example: Differential Drive Robot. Rotate about ICC 9 degrees. How do we know where the robot ends up? First, Translate ICC to origin X (, 3) X (5,4) X (3,) Finally, Translate back to original ICC Then, Rotate by 9 degrees about Z axis Transformed Point X,Y Rotation by wdt about Z axis Translate ICC to origin Translate ICC Back to original location 1

Figure 2: Forward kinematics for differential robot 3 Inverse Kinematics of a Mobile Robot In general, we can describe the positon of a robot capable of moving in a particular direction Θ t at a given velocity V (t) as: x(t) = y(t) = Θ(t) = V (t)cos[θ(t)]dt V (t)sin[θ(t)]dt ω(t)dt For the special case of a differential drive robot such s the Create, the equations become: x(t) = 1 2 y(t) = 1 2 Θ(t) = 1 l [v r (t) + v l (t)]cos[θ(t)]dt [v r (t) + v l (t)]sin[θ(t)]dt [v r (t) v l (t)])dt A related question is: How can we control the robot to reach a given configuration (x, y, θ) - this is known as the inverse kinematics problem. Unfortunately, a differential drive robot imposes what are called non-holonomic constraints on establishing its position. For example, the robot cannot move laterally along its axle. A similar nonholonomic constraint is a car that can only turn its front wheels. It cannot move directly sidewise, as parallel parking a car requires a more complicated set of steering maneuvers. So we cannot simply specify an arbitrary robot pose (x, y, θ) and find the velocities that will get us there. 3

For the special cases of v l = v r = v (robot movng in a straight line) the motion equations become: x y θ = x + v cos(θ)δt y + v sin(θ)δt θ If v r = v l = v, then the robot rotates in place and the equations become: x y θ = x y θ + 2vδt/l (6) (7) This motivates a strategy of moving the robot in a straight line, then rotating for a turn in place, and then moving straight again as a navigation strategy for differential drive robots. 4 Mapping Angular Wheel Velocity to Linear Velocity The left and right wheel velocities used above, V l, V r are linear velocities. We actually control the wheels by specifying an angular velocity V wheel for a wheel specified in radians per second. Given V wheel, we need to find out what the resulting linear velocity for that wheel s movement is. We will use as an example the Khepera robot which is a small robot, similar to the irobot Create, that uses differential drive. We define the following terms: r wheel : wheel radius. D robot : length of the differential drive wheel axle. V wheel : magnitude of wheel velocity measued in radians/sec. In ths example, let s assume that the wheels are turning in the opposite direction at the same velocity (the robot is turning in place). If we want the robot base to roatate by φ degrees, we need to find an equation for the amount of time t we need to run the wheel motor at velocity V wheel to turn the robot an angle of φ degrees. The wheel turns a linear distance of r wheel θ along its arc where θ is simply V wheel t. The wheel will travel a distance equal to rθ along its arc (see figure 3). If we assume a wheel velocity of V wheel = 1 radians/sec, then the wheel will travel 1*8 = 8 mm in 1 sec, which is also equivalent to.8mm in 1 msec. Given a time t, the wheel will turn: Dist wheel = r wheel V wheel t To determine the time to turn the robot a specified angle in place, we note that the entire circumference C of the robot when it turns 36 is π D robot. We can turn an angle of φ in time t using the equation: Dist wheel C = φ 2π (φ measured in radians) 4

Figure 3: Left: Khepera wheel dimensions. Right: Khepera robot dimensions V wheel r wheel t C t = = φ 2π (φ measured in radians) φ C 2π V wheel r wheel Example: suppose you want to turn a Khepera robot 9. For the Khepera, r wheel is 8mm, D robot is 53mm, and we can set the speed of the wheel to 1 radians/sec: So to turn 9 ( π 2 radians): T = φ C 2π V wheel r wheel = π 166.42 2 2π 8 1 =.52 secs So your control parameter t given a specified velocity can be found. 5