Robot Modeling and the Forward Kinematic Solution

Slides:



Advertisements
Similar presentations
Introduction to Robotics cpsc - 460
Advertisements

ME 4135 Robotics & Control R. Lindeke, Ph. D.. FKS vs. IKS  In FKS we built a tool for finding end frame geometry from Given Joint data:  In IKS we.
Robot Modeling and the Forward Kinematic Solution
Outline: Introduction Link Description Link-Connection Description
3-D Homogeneous Transformations.  Coordinate transformation (translation+rotation) 3-D Homogeneous Transformations.
Links and Joints.
University of Bridgeport
Introduction to Robotics
Denavit-Hartenberg Convention
Kinematic Modelling in Robotics
Kinematics – Frame Assignment using Denavit-Hartenberg Convention
Forward Kinematics. Focus on links chains May be combined in a tree structure Degrees of Freedom Number of independent position variables (i.e. joints.
Robot Modeling and the Forward Kinematic Solution ME 4135 Lecture Series 4 Dr. R. Lindeke – Fall 2011.
Motion Kinematics – Lecture Series 3 ME 4135 – Fall 2011 R. Lindeke.
Introduction to Robotics Kinematics. Link Description.
Time to Derive Kinematics Model of the Robotic Arm
Ch. 3: Forward and Inverse Kinematics
Ch. 4: Velocity Kinematics
Ch. 3: Forward and Inverse Kinematics
Introduction to ROBOTICS
Slide Set 3 – Review of Matrix Methods Applicable to Robot Control
Serial and Parallel Manipulators
Introduction to ROBOTICS
Inverse Kinematics Jacobian Matrix Trajectory Planning
Screw Rotation and Other Rotational Forms
Direct Kinematics.
ME 4135 Robotics & Control Slide Set 3 – Review of Matrix Methods Applicable to Robot Control.
An Introduction to Robot Kinematics
More details and examples on robot arms and kinematics
ME/ECE Professor N. J. Ferrier Forward Kinematics Professor Nicola Ferrier ME Room 2246,
KINEMATIC CHAINS AND ROBOTS (III). Many robots can be viewed as an open kinematic chains. This lecture continues the discussion on the analysis of kinematic.
Advanced Graphics (and Animation) Spring 2002
KINEMATICS ANALYSIS OF ROBOTS (Part 3). This lecture continues the discussion on the analysis of the forward and inverse kinematics of robots. After this.
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.
Chapter 2 Robot Kinematics: Position Analysis
KINEMATICS ANALYSIS OF ROBOTS (Part 4). This lecture continues the discussion on the analysis of the forward and inverse kinematics of robots. After this.
T. Bajd, M. Mihelj, J. Lenarčič, A. Stanovnik, M. Munih, Robotics, Springer, 2010 GEOMETRIC DESCRIPTION OF THE ROBOT MECHANISM T. Bajd and M. Mihelj.
Manipulator’s Forward kinematics
Spatial Modeling – some fundamentals for Robot Kinematics ME 3230.
COMP322/S2000/L91 Direct Kinematics- The Arm Equation Link Coordinates and Kinematics Parameters (Cont‘d) Another example: A 5-axis articulated robot (Rhino.
SCARA – Forward Kinematics
11/10/2015Handout 41 Robotics kinematics: D-H Approach.
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.
MT411 Robotic Engineering
The Forward Kinematics of Manipulators Sebastian van Delden USC Upstate
KINEMATICS ANALYSIS OF ROBOTS (Part 5). This lecture continues the discussion on the analysis of the forward and inverse kinematics of robots. After this.
Forward Kinematics Where is my hand ?. Examples Denavit-Hartenberg Specialized description of articulated figures (joints) Each joint has only one degree.
Kinematics Intro :a branch of dynamics that deals with aspects of motion apart from considerations of mass and force Merriam-Webster.
MECH572A Introduction To Robotics Lecture 5 Dept. Of Mechanical Engineering.
COMP322/S2000/L81 Direct Kinematics- Link Coordinates Questions: How do we assign frames? At the Joints? At the Links? Denavit-Hartenberg (D-H) Representation.
An Introduction to Robot Kinematics Renata Melamud.
Manipulator Kinematics Treatment of motion without regard to the forces that cause it. Contents of lecture: vResume vDirect kinematics vDenavit-Hartenberg.
Robotics Chapter 3 – Forward Kinematics
Kinematics 제어시스템 이론 및 실습 조현우
Denavit-Hartenberg Convention
Denavit-Hartenberg Convention
Ch. 3: Forward and Inverse Kinematics
F o r w a r d K i n e m a t i c s.
Direct Manipulator Kinematics
Introduction to Robotics Tutorial II
CHAPTER 2 FORWARD KINEMATIC 1.
Direct Kinematic Model
Homogeneous Transformation Matrices
CHAPTER 2 FORWARD KINEMATIC 1.
Day 06 Denavit-Hartenberg 12/26/2018.
Direct Kinematics Where is my hand? Direct Kinematics: HERE!
Robotics kinematics: D-H Approach
Forward Kinematics: Denavit-Hartenberg (DH) Notation
Chapter 2 Mathematical Analysis for Kinematics
Presentation transcript:

Robot Modeling and the Forward Kinematic Solution ME 3230 R. R. Lindeke

Looking Closely at the T0n Matrix At the end of our discussion of “Robot Mapping” we found that the T0n matrix related the end of the arm frame (n) to its base (0) – Thus it must contain information related to the several joints of the robot It is a 4x4 matrix populated by complex equations for both position and orientation (POSE)

Looking Closely at the T0n Matrix To get at the equation set, we will choose to add a series of coordinate frames to each of the joint positions The frame attached to the 1st joint is labeled 0 – the base frame! – while joint two has Frame 1, etc. The last Frame is the end or n Frame

Looking Closely at the T0n Matrix As we have seen earlier, we can define a HTM (T(i-1)i) to the transformation between any two SO3 based frames Thus we will find that the T0n is given by a product formed by:

Looking Closely at the T0n Matrix For simplicity, we will redefine each of the of these transforms (T(i-1)i) as Ai Then, for a typical 3 DOF robot Arm, T0n = A1*A2*A3 While for a full functioned 6 DOF robot (arm and wrist) would be: T0n = A1*A2*A3*A4*A5*A6 A1 to A3 ‘explain’ the arm joint effect while A4 to A6 explain the wrist joint effects

Looking At The Frame To Frame Arrangements – Building A Modeling Basis When we move from one frame to another, we will encounter: Two translations (in a controlled sense) Two rotations (also in a controlled sense) A rotation and translation WRT the Zi-1 These are called the Joint Parameters A rotation and translation WRT the Xi These are called the Link Parameters

A model of the Joint Parameters NOTE!!!

A model of the Link Parameters ai or

Talking Specifics – Joint Parameters i is an angle measured about the Zi-1 axis from Xi-1 to Xi and is a variable for a revolute joint – its fixed for a Prismatic Joint di is a distance measured from the origin of Frame(i-1) to the intersection of Zi-1 and Xi and is a variable for a prismatic joint – its fixed for a Revolute Joint

Talking Specifics – Link Parameters ai (or li) is the Link length and measures the distance from the intersection of Zi-1 to the origin of Framei measured along Xi i is the Twist angle which measures the angle from Zi-1 to Zi as measured about Xi Both of these parameters are fixed in value regardless of the joint type. A Further note: Fixed does not mean zero degrees or zero length just that they don’t change

Very Important to note: Two Design Axioms prevail in this modeling approach Axiom DH1: The Axis Xi must be designed to be perpendicular to Zi-1 Axiom DH2: The Axis Xi must be designed to intersect Zi-1 Thus, within reason we can design the structure of the coordinate frames to simplify the math (they are under our control!)

Returning to the 4 ‘Frame-Pair’ Operators: 1st is  which is an operation of pure rotation about Z or: 2nd is d which is a translation along Z or:

Returning to the 4 Frame Operators: 3rd is a Translation Along X or: 4th is  which is a pure Rotation about X or:

The Overall Effect is:

Simplifying this Matrix Product: This matrix is the general transformation relating each and every of the frame pairs along a robot structure

So, Since We Can Control the Building of this Set Of Frames, What Are The Rules? We will employ a method called the Denavit-Hartenberg Method It is a Step-by-Step approach for modeling each of the frames from the initial (or 0) frame all the way to the n (or end) frame This modeling technique makes each joint axis (either rotation or extension) the Z-axis of the appropriate frame (Z0 to Zn-1). The Joint motion, thus, is taken W.R.T. the Zi-1 axis of the frame pair making up the specific transformation matrix under design

The D-H Modeling Rules: Locate & Label the Joint Axes: Z0 to Zn-1 Establish the Base Frame. Set Base Origin anywhere on the Z0 axis. Choose X0 and Y0 conveniently and to form a right hand frame. Locate the origin Oi where the common normal to Zi-1 and Zi intersects Zi. If Zi intersects Zi-1 locate Oi at this intersection. If Zi-1 and Zi are parallel, locate Oi at Joint i+1

The D-H Modeling Rules: Establish Xi along the common normal between Zi-1 and Zi through Oi, or in the direction Normal to the plane Zi-1 – Zi if these axes intersect Establish Yi to form a right hand system Set i = i+1, if i<n loop back to step 3 (Repeat Steps 3 to 5 for I = 1 to I = n-1) Establish the End-Effector (n) frame: OnXnYnZn. Assuming the n-th joint is revolute, set kn = a along the direction Zn-1. Establish the origin On conveniently along Zn, typically mounting point of gripper or tool. Set jn = o in the direction of gripper closure (opening) and set in = n such that n = oxa. Note if tool is not a simple gripper, set Xn and Yn conveniently to form a right hand frame.

The D-H Modeling Rules: Create a table of “Link” parameters: i as angle about Zi-1 between X’s di as distance along Zi-1 i as angle about Xi between Z’s ai as distance along Xi Form HTM matrices A1, A2, … An by substituting , d,  and a into the general model Form T0n = A1*A2*…*An

Some Issues to remember: If you have parallel Z axes, the X axis of the second frame runs perpendicularly between them When working on a revolute joint, the model will be simpler if the two X directions are in alignment at “Kinematic Home” – ie. Our model’s starting point To achieve this kinematic home, rotate the model about moveable axes (Zi-1’s) to align X’s Kinematic Home is not particularly critical for prismatic joints An ideal model will have n+1 frames However, additional frames may be necessary – these are considered ‘Dummy’ frames since they won’t contain joint axes

Applying D-H to a General Case:

General Case: Considering Link i Connects Frames: i-1 and I and includes Joint i This information allowed us to ‘Build’ The L.P. (link parameter) Table as seen here Frames Link Var  d a  S  C  S  C  i -1 to i i R  + 37 17.5 u 47.8 u 17.8  0.306 .952 S( + 37) C( + 37)

Leads to an Ai Matrix:

Frame Skeleton for Prismatic Hand Robot

Depends on Location of n(end)-frame! LP Table: Frames Link Var  d a  S  C  S  C  0 1 1 R 1 -90 -1 S1 C1 1 2 2 2 6 0 S2 C2 2  3 3 3 0.5 90 S3 C3 3  4 4 P d4 + 4.25 S4 C4 4  n 5 5 S5 C5 Depends on Location of n(end)-frame!

Leading to 5 Ai Matrices

#5 is: Now, Lets Form the FKS: T0n = A1*A2*A3*A4*A5 This value is called the Hand Span and depends on the Frame Skeleton we developed Now, Lets Form the FKS: T0n = A1*A2*A3*A4*A5 I’ll use a software: Mathematica

Solving for FKS Here we have a special case – two of the Joints are a “planer arm” revolute model – i.e. parallel, consecutive revolute joints These are contained in the A2 and A3 Matrices These should be pre-multiplied using a trigonometric tool that recognizes the sum of angle cases ((Full)Simplify in mathematica) Basically then: T0n = A1*{A2A3}*A4*A5

Finalizing the FKS – perform a physical verification Physical verification means to plug known angles into the variables and compute the Ai’s and FKS against the Frame Skeleton

Another? 6dof Articulating Arm – (The Figure Contains Frame Skelton)

LP Table Frames Link Var  d a  S  C  S  C  0 1 1 R 1 90 -1 S1 C1 1 2 2 2 a2 0 S2 C2 2  3 3 3 a3 S3 C3 3  4 4 4 a4 -90 S4 C4 4  5 5 5 S5 C5 5  6 6 6* d6 S6 C6 * With End Frame in Better Kinematic Home. Here, as shown, it would be (6 - 90), which is a problem!

A Matrices

At Better Kinematic Home! A Matrices, cont. At Better Kinematic Home!

Leads To: FKS of: After Preprocessing A2-A3-A4, with (Full)Simplify function, the FKS must be reordered as A1-A234-A5-A6 and Simplified

Solving for FKS Pre-process {A2*A3*A4} with Full Simplify They are the “planer arm” issue as in the previous robot model Then Form: A1* {A2*A3*A4}*A5*A6 Simplify for FKS!

Simplifies to (in the expected Tabular Form): nx = C1·(C5·C6·C234 - S6·S234) - S1·S5·C6 ny = C1·S5·C6 + S1·(C5·C6·C234 - S6·S234) nz = S6·C234 + C5·C6·S234 ox = S1·S5·S6 - C1·(C5·S6·C234 + C6·S234) oy = - C1·S5·S6 - S1·(C5·S6·C234 + C6·S234) oz = C6·C234 - C5·S6·S234 ax = C1·S5·C234 + S1·C5 ay = S1·S5·C234 - C1·C5 az = S5·S234 dx = C1·(C234·(d6·S5 + a4) + a3·C23 + a2·C2) + d6·S1·C5 dy = S1·(C234·(d6·S5 + a4) + a3·C23 + a2·C2) - d6·C1·C5 dz = S234·(d6·S5 + a4) + a3·S23 + a2·S2

Verify the Model Again, substitute known’s (typically 0 or 0 units) for the variable kinematic variables Check each individual A matrix against your robot frame skeleton sketch for physical agreement Check the simplified FKS against the Frame skeleton for appropriateness

After Substitution: nx = C1·(C5·C6·C234 - S6·S234) - S1·S5·C6 = 1(1-0) – 0 = 1 ny = C1·S5·C6 + S1·(C5·C6·C234 - S6·S234) = 0+ 0(1 – 0) = 0 nz = S6·C234 + C5·C6·S234 = 0 + 0 = 0 ox = S1·S5·S6 - C1·(C5·S6·C234 + C6·S234) = 0 – 1(0 + 0) = 0 oy = - C1·S5·S6 - S1·(C5·S6·C234 + C6·S234) = -0 – 0(0 + 0) = 0 oz = C6·C234 - C5·S6·S234 = 1 – 0 = 1 ax = C1·S5·C234 + S1·C5 = 0 + 0 = 0 ay = S1·S5·C234 - C1·C5 = 0 – 1 = -1 az = S5·S234 = 0 dx = C1·(C234·(d6·S5 + a4) + a3·C23 + a2·C2) + d6·S1·C5 = 1*(1(0 + a4) + a3 + a2) + 0 = a4 + a3 + a2 dy = S1·(C234·(d6·S5 + a4) + a3·C23 + a2·C2) - d6·C1·C5 = 0(1(0 + a4) + a3 + a2) – d6 = -d6 dz = S234·(d6·S5 + a4) + a3·S23 + a2·S2 = 0(0 + a4) + 0 + 0 = 0