Ch. 4: Velocity Kinematics

Slides:



Advertisements
Similar presentations
Outline: Introduction Link Description Link-Connection Description
Advertisements

1 C02,C03 – ,27,29 Advanced Robotics for Autonomous Manipulation Department of Mechanical EngineeringME 696 – Advanced Topics in Mechanical Engineering.
3-D Homogeneous Transformations.  Coordinate transformation (translation+rotation) 3-D Homogeneous Transformations.
Manipulator’s Inverse kinematics
University of Bridgeport
ASME DETC Background Twists in Kinematics and Wrenches in Statics Vijay Kumar.
Denavit-Hartenberg Convention
Kinematic Modelling in Robotics
The City College of New York 1 Dr. Jizhong Xiao Department of Electrical Engineering City College of New York Kinematics of Robot Manipulator.
Ch. 7: Dynamics.
Ch. 2: Rigid Body Motions and Homogeneous Transforms
Ch. 3: Forward and Inverse Kinematics
Forward Kinematics.
Ch. 3: Forward and Inverse Kinematics
Introduction to Robotics Lecture II Alfred Bruckstein Yaniv Altshuler.
ME Robotics DIFFERENTIAL KINEMATICS Purpose: The purpose of this chapter is to introduce you to robot motion. Differential forms of the homogeneous.
Manipulator Dynamics Amirkabir University of Technology Computer Engineering & Information Technology Department.
Mechanics of Rigid Bodies
Rotations and Translations. Representing a Point 3D A tri-dimensional point A is a reference coordinate system here.
Inverse Kinematics Jacobian Matrix Trajectory Planning
Introduction to ROBOTICS
Velocity Analysis Jacobian
Velocities and Static Force
INTRODUCTION TO DYNAMICS ANALYSIS OF ROBOTS (Part 5)
ME/ECE Professor N. J. Ferrier Forward Kinematics Professor Nicola Ferrier ME Room 2246,
Definition of an Industrial Robot
UNIVERSITI MALAYSIA PERLIS
Rotations and Translations
February 21, 2000Robotics 1 Copyright Martin P. Aalund, Ph.D. Computational Considerations.
Feb 17, 2002Robotics 1 Copyright Martin P. Aalund, Ph.D. Kinematics Kinematics is the science of motion without regard to forces. We study the position,
15/09/2015handout 31 Robot Kinematics Logics of presentation: Kinematics: what Coordinate system: way to describe motion Relation between two coordinate.
Kinematics of Robot Manipulator
Outline: 5.1 INTRODUCTION
Transformations Jehee Lee Seoul National University.
POSITION & ORIENTATION ANALYSIS. This lecture continues the discussion on a body that cannot be treated as a single particle but as a combination of a.
1 C03 – Advanced Robotics for Autonomous Manipulation Department of Mechanical EngineeringME 696 – Advanced Topics in Mechanical Engineering.
1 Fundamentals of Robotics Linking perception to action 2. Motion of Rigid Bodies 南台科技大學電機工程系謝銘原.
Mon 30 July 2007 Overview of the course
Differential Kinematics and Statics Ref: 理论力学,洪嘉振,杨长俊,高 等教育出版社, 2001.
Manipulator’s Forward kinematics
EEE. Dept of HONG KONG University of Science and Technology Introduction to Robotics Page 1 Lecture 2. Rigid Body Motion Main Concepts: Configuration Space.
KINEMATIC CHAINS & ROBOTS (I).
11/10/2015Handout 41 Robotics kinematics: D-H Approach.
Robot Kinematics: Position Analysis 2.1 INTRODUCTION  Forward Kinematics: to determine where the robot ’ s hand is? (If all joint variables are known)
Kinematics. The function of a robot is to manipulate objects in its workspace. To manipulate objects means to cause them to move in a desired way (as.
Just a quick reminder with another example
Chapter 3 Differential Motions and Velocities
FROM PARTICLE TO RIGID BODY.
CSCE 552 Fall 2012 Math By Jijun Tang. Applied Trigonometry Trigonometric functions  Defined using right triangle  x y h.
INTRODUCTION TO DYNAMICS ANALYSIS OF ROBOTS (Part 1)
Robotics Chapter 3 – Forward Kinematics
Velocity Propagation Between Robot Links 3/4 Instructor: Jacob Rosen Advanced Robotic - MAE 263D - Department of Mechanical & Aerospace Engineering - UCLA.
Kinematics 제어시스템 이론 및 실습 조현우
MT411 Robotic Engineering
Joint Velocity and the Jacobian
Ch. 2: Rigid Body Motions and Homogeneous Transforms
Manipulator Dynamics 1 Instructor: Jacob Rosen
PROPERTIES OF THE JACOBIAN
Lecture Rigid Body Dynamics.
Direct Manipulator Kinematics
Direct Kinematic Model
Mobile Robot Kinematics
Outline: 5.1 INTRODUCTION
Homogeneous Transformation Matrices
Manipulator Dynamics 2 Instructor: Jacob Rosen
KINEMATIC CHAINS.
Outline: 5.1 INTRODUCTION
KINEMATIC CHAINS & ROBOTS (I)
Outline: 5.1 INTRODUCTION
Chapter 3. Kinematic analysis
Presentation transcript:

Ch. 4: Velocity Kinematics ES159/259

Velocity Kinematics We want to relate end-effector linear and angular velocities with the joint velocities First we will discuss angular velocities about a fixed axis Second we discuss angular velocities about arbitrary (moving) axes We will then introduce the Jacobian Instantaneous transformation between a vector in Rn representing joint velocities to a vector in R6 representing the linear and angular velocities of the end-effector ES159/259

Angular velocity: arbitrary axis Skew-symmetric matrices Definition: a matrix S is skew symmetric if: i.e. Let the elements of S be denoted sij, then by definition: Thus there are only three independent entries in a skew symmetric matrix Now we can use S as an operator for a vector a = [ax ay az]T ES159/259

Angular velocity: arbitrary axis Properties of skew-symmetric matrices The operator S is linear The operator S is known as the cross product operator This can be seen by the definition of the cross product: ES159/259

Angular velocity: arbitrary axis Properties of skew-symmetric matrices For This can be shown for and R as follows: This can be shown by direct calculation. Finally: For any Thus RS(a)R^T is a similarity transform of S(a) ES159/259

Angular velocity: arbitrary axis Derivative of a rotation matrix let R be an arbitrary rotation matrix which is a function of a single variable q R(q)R(q)T=I Differentiating both sides (w/ respect to q) gives: Now define the matrix S as: Then ST is: Therefore S + ST = 0 and This says that computing the derivative of a rotation matrix R is equivalent to matrix multiplication by a skew symmetric matrix S ES159/259

Angular velocity: arbitrary axis Example: let R=Rx,q, then using the previous results we have: This verifies that our new derivation of the S matrix gives the same results as previously determined ES159/259

Angular velocity: arbitrary axis Now consider that we have an angular velocity about an arbitrary axis Further, let R = R(t) Now the time derivative of R is: Where w(t) is the angular velocity of the rotating frame To show this, consider a point p fixed to a moving frame o1: This is seen using a nearly identical argument as the last derivation. ES159/259

Addition of angular velocities For most manipulators we will want to find the angular velocity of one frame due to the rotations of multiple frames We assume that there are no translational components: all coordinate frames have coincident origins Consider three frames: o0, o1, o2: To illustrate how the rotation of multiple frames is determined by the rotations of the individual frames, take the derivative of this rotation matrix: By our previous convention: Where w0,20 is the angular velocity corresponding to a rotation of R20 in the inertial frame w_{I,j} is the angular velocity corresponding to the derivative of R_j^i ES159/259

Addition of angular velocities Now the first term can be derived as follows: Where w0,10 is the angular velocity corresponding to a rotation of R10 in the inertial frame The second term is derived using the properties of so(n) Thus combining these results: from our definition of since because w_{I,j} is the angular velocity corresponding to the derivative of R_j^i ES159/259

Addition of angular velocities Further: And since Therefore angular velocities can be added once they are projected into the same coordinate frame. This can be extended to calculate the angular velocity for an n-link manipulator: Suppose we have an n-link manipulator whose coordinate frames are related as follows: Now we want to find the rotation of the nth frame in the inertial frame: We can define the angular velocity of the tool frame in the inertial frame: w_{I,j} is the angular velocity corresponding to the derivative of R_j^i ES159/259

Linear velocities The linear velocity of any point on a rigid body is the sum of the linear velocity of the rigid body and the velocity of the particle due to rotation of the rigid body First, the position of a point p attached to a rigid body is: Where o is the origin of the o1 frame expressed in the inertial frame To find the velocity, take the derivative as follows: Where v is the velocity of the rigid body in the inertial frame If the point p is moving relative to the rigid body, then we also need to take this in consideration we assume that p is fixed w/ respect to the rigid body ES159/259

The Jacobian Now we are ready to describe the relationship between the joint velocities and the end effector velocities. Assume that we have an n-link manipulator with joint variables q1, q2, …, qn Our homogeneous transformation matrix that defines the position and orientation of the end-effector in the inertial frame is: We can call the angular velocity of the tool frame w0,n0 and: Call the linear velocity of the end-effector: ES159/259

The Jacobian Therefore, we want to come up with the following mappings: Thus Jv and Jw are 3xn matrices we can combine these into the following: where: J is called the Jacobian 6xn where n is the number of joints In this case, we use the notation w_n^0 as the angular velocity of the tool frame expressed in the inertial frame. ES159/259

Deriving Jw Remember that each joint i rotates around the axis zi-1 Thus we can represent the angular velocity of each frame with respect to the previous frame If the ith joint is revolute, this is: If the ith joint is prismatic, the angular velocity of frame i relative to frame i-1 is zero Thus, based upon our rules of forming the equivalent angular velocity of the tool frame with respect to the base frame: Where the term ri determines if joint i is revolute (ri =1) or prismatic (ri =0) ES159/259

Deriving Jw Now Jw can simply be written as follows: There are n columns, each is 3x1, thus Jw is 3xn ES159/259

Deriving Jv Linear velocity of the end effector: Therefore we can simply write the ith column of Jv as: However, the linear velocity of the end effector can be due to the motion of revolute and/or prismatic joints Thus the end-effector velocity is a linear combination of the velocity due to the motion of each joint w/o L.O.G. we can assume all joint velocities are zero other than the ith joint This allows us to examine the end-effector velocity due to the motion of either a revolute or prismatic joint Linear velocity of the end-effector is from the chain rule ES159/259

Deriving Jv End-effector velocity due to prismatic joints Assume all joints are fixed other than the prismatic joint di The motion of the end-effector is pure translation along zi-1 Therefore, we can write the ith column of the Jacobian: ES159/259

Deriving Jv End-effector velocity due to revolute joints Assume all joints are fixed other than the revolute joint qi The motion of the end-effector is given by: Where the term r is the distance from the tool frame on to the frame oi-1 Thus we can write the ith column of Jv: ES159/259

The complete Jacobian The ith column of Jv is given by: The ith column of Jw is given by: ES159/259

Example: two-link planar manipulator Calculate J for the following manipulator: Two joint angles, thus J is 6x2 Where: ES159/259

Example: velocity of an arbitrary point We can also use the Jacobian to calculate the velocity of any arbitrary point on the manipulator This is identical to placing the tool frame at any point of the manipulator ES159/259

Example: Stanford manipulator The configuration of the Stanford manipulator allows us to make the following simplifications: Where o is the common origin of the o3, o4, and o5 frames ES159/259

Example: Stanford manipulator 03_04tbl Example: Stanford manipulator From the forward kinematics of the Stanford manipulator, we calculated the homogeneous transformations for each joint: 03_04tbl.jpg ES159/259

Example: Stanford manipulator 03_04tbl Example: Stanford manipulator To complete the derivation of the Jacobian, we need the following quantities: z0, z1, … , z5, o0, o1, o3, o6 o3 is o and o0 = [0 0 0]T We determine these quantities by noting the construction of the T matrices oj is the first three elements of the last column of Tj0 zj is Rj0k, or equivalently, the first three elements of the third column of Tj0 Thus we can calculate the Jacobian by first determining the Tj0 Thus the zi terms are given as follows: 03_04tbl.jpg Remember that o3 is just o ES159/259

Example: Stanford manipulator 03_04tbl Example: Stanford manipulator And the oi terms are given as: Finally, the Jacobian can be assembled as follows: 03_04tbl.jpg ES159/259

Example: Stanford manipulator 03_04tbl Example: Stanford manipulator Finally, the Jacobian can be assembled as follows: 03_04tbl.jpg We call o6 = [dx dy dz]^T ES159/259

Example: SCARA manipulator 03_04tbl Example: SCARA manipulator Jacobian will be a 6x4 matrix Thus we will need to determine the following quantities: z0, z1, … , z3, o0, o1, o2, o4 Since all the joint axes are parallel, we can see the following: From the homogeneous transformation matrices we can determine the origins of the coordinate frames 03_04tbl.jpg ES159/259

Example: SCARA manipulator 03_04tbl Example: SCARA manipulator Thus o0, o1, o2, o4 are given by: Finally, we can assemble the Jacobian: 03_04tbl.jpg ES159/259

Next class… Formal definition of singularities Tool velocity manipulability ES159/259