Robot Vision SS 2005 Matthias R¼ther 1 ROBOT VISION Lesson 9: Robot Kinematics Matthias R¼ther

  • View
    213

  • Download
    0

Embed Size (px)

Text of Robot Vision SS 2005 Matthias R¼ther 1 ROBOT VISION Lesson 9: Robot Kinematics Matthias...

  • Slide 1

Robot Vision SS 2005 Matthias Rther 1 ROBOT VISION Lesson 9: Robot Kinematics Matthias Rther Slide 2 Robot Vision SS 2005 Matthias Rther 2 Contents Introduction Overview Basic Terms Typical Configurations Geometry Homogeneous Transformations Representing Orientation Direct Kinematics Open Chain Denavit-Hartenberg Typical Configurations Inverse Kinematics Problem Numerical Algorithms Slide 3 Robot Vision SS 2005 Matthias Rther 3 Overview An industrial robot consists of A manipulator that consists of a sequence of rigid bodies (links) connected by means of articulation (joints). It is characterized by an arm (for mobility), a wrist (for dexterity) and an end effector (to perform a task). Actuators that set the manipulator in motion by actuating the joints (electric, hydraulic or pneumatic) Sensors that measure the manipulators status (proprioceptive sensors) or the status of the environment (exteroceptive sensors). A control system that controls and supervises manipulator motion. Slide 4 Robot Vision SS 2005 Matthias Rther 4 Overview An industrial robot has three fundamental capacities Material handling: objects are transported from one location to another, their physical characteristics are not altered (e.g. pallettizing, warehouse loading/unloading, sorting, packaging) Material Manipulation: physical characteristics of objects are changed or their physical identity is lost (e.g. welding, painting, gluing, cutting, drilling, screwing, assembly, ) Measurement: object properties are measured by sensors on the end effector, so they are able to explore a 3D environment (e.g. quality control by image processing, tactile sensors, ) Slide 5 Robot Vision SS 2005 Matthias Rther 5 Basic Terms Kinematic chain: sequence of links and joints connecting the end effector to the base. Can be open (single chain) or closed (loop within the chain). Joints: Revolute: rotational joint Prismatic: translational joint Degree of mobility: each joint typ. provides an additional DOM (e.g. 6DOM necessary for 3D motion) Accuracy: How close does the robot get to a desired point?, distance between desired point and actual point. (off line) Repeatability: How close does the robot get to a position it has reached before? (on line) Slide 6 Robot Vision SS 2005 Matthias Rther 6 Repeatability and Accuracy Where :P t is the target position, P a the average achieved position, R is the repeatability, and A is the accuracy. Repeatability: the measurement of how closely a robot returns to the same position n number of times. Accuracy: the measurement of how closely the robot moves to a given target coordinate. Slide 7 Robot Vision SS 2005 Matthias Rther 7 Many factors can effect the accuracy of a robot such as: environmental factors ( eg temperature, humidity and electrical noise ); kinematic parameters ( eg robot link lengths etc ); dynamic parameters ( eg structural compliance, friction ); measurement factors ( eg resolution and non-linearity of encoders and resolvers ); computational factors ( eg digital round off, steady-state control errors ); and application factors ( eg installation errors and errors in defining work-piece coordinate frames ). Slide 8 Robot Vision SS 2005 Matthias Rther 8 Why? Each of these can effect the robot kinematics depending on the robot model design and manufacturing process the kinematics can be the most significant source of error. if the internal kinematic model of the robot does not match the actual model we can not accurately predict where the end-effector is. Make them match by either tighter manufacturing tolerances; or by measuring actual kinematics and incorporating this information into the kinematic model. Slide 9 Robot Vision SS 2005 Matthias Rther 9 Basic Terms Joint space: end effector position and orientation given in joint coordinates. Operational space: end effector position and orientation given in world coordinates (e.g. cartesian coordinate system) Workspace: Reachable WS: set of positions the EE can reach Dexterous WS: set of positions the EE can reach with a given orientation Redundancy: more DOM than needed are available Slide 10 Robot Vision SS 2005 Matthias Rther 10 Revolute Joint 1 DOF ( Variable - ) Prismatic Joint 1 DOF (linear) (Variables - d) Basic Joints Slide 11 Robot Vision SS 2005 Matthias Rther 11 The PUMA 560 has SIX revolute joints A revolute joint has ONE degree of freedom ( 1 DOF) that is defined by its angle 1 2 3 4 There are two more joints on the end effector (the gripper) An Example - The PUMA 560 Slide 12 Robot Vision SS 2005 Matthias Rther 12 Manipulator Structures Slide 13 Robot Vision SS 2005 Matthias Rther 13 Manipulator Structures Slide 14 Robot Vision SS 2005 Matthias Rther 14 Forward and Inverse Kinematics xwxw Joint 1 Joint 2 Joint 3 Link 1 z1z1 World (Base) Coordinate Frame Tool Coordinate Frame Joint 1 Joint 2 Joint 3 Link 1 z1z1 World (Base) Coordinate Frame Tool Coordinate Frame 11 22 zwzw ytyt ztzt Link Space n variables ( 1 n ) Tool Space 6 variables ( x,y,z, x, y, z ) Forward K Inverse K Slide 15 Robot Vision SS 2005 Matthias Rther 15 Co-ordinate Frames right handed coordinate frames used as reference frames x z y xwxw World (Base) Coordinate Frame Link frame zwzw x 2x 2 z 2z 2 Tool Coordinate Frame ytyt ztzt Slide 16 Robot Vision SS 2005 Matthias Rther 16 F o r w a r d K i n e m a t i c s Slide 17 Robot Vision SS 2005 Matthias Rther 17 The Situation: You have a robotic arm that starts out aligned with the x o -axis. You tell the first link to move by 1 and the second link to move by 2. The Quest: What is the position of the end of the robotic arm? Solution: 1. Geometric Approach This might be the easiest solution for the simple situation. However, notice that the angles are measured relative to the direction of the previous link. (The first link is the exception. The angle is measured relative to its initial position.) For robots with more links and whose arm extends into 3 dimensions the geometry gets much more tedious. 2. Algebraic Approach Involves coordinate transformations. Slide 18 Robot Vision SS 2005 Matthias Rther 18 X2X2 X3X3 Y2Y2 Y3Y3 11 22 33 1 23 Example Problem: You are have a three link arm that starts out aligned in the x- axis. Each link has lengths l 1, l 2, l 3, respectively. You tell the first one to move by 1, and so on as the diagram suggests. Find the Homogeneous matrix to get the position of the yellow dot in the X 0 Y 0 frame. H = R z ( 1 ) * T x1 (l 1 ) * R z ( 2 ) * T x2 (l 2 ) * R z ( 3 ) i.e. Rotating by 1 will put you in the X 1 Y 1 frame. Translate in the along the X 1 axis by l 1. Rotating by 2 will put you in the X 2 Y 2 frame. and so on until you are in the X 3 Y 3 frame. The position of the yellow dot relative to the X 3 Y 3 frame is (l 1, 0). Multiplying H by that position vector will give you the coordinates of the yellow point relative the the X 0 Y 0 frame. X1X1 Y1Y1 X0X0 Y0Y0 Slide 19 Robot Vision SS 2005 Matthias Rther 19 Slight variation on the last solution: Make the yellow dot the origin of a new coordinate X 4 Y 4 frame X2X2 X3X3 Y2Y2 Y3Y3 11 22 33 1 23 X1X1 Y1Y1 X0X0 Y0Y0 X4X4 Y4Y4 H = R z ( 1 ) * T x1 (l 1 ) * R z ( 2 ) * T x2 (l 2 ) * R z ( 3 ) * T x3 (l 3 ) This takes you from the X 0 Y 0 frame to the X 4 Y 4 frame. The position of the yellow dot relative to the X 4 Y 4 frame is (0,0). Notice that multiplying by the (0,0,0,1) vector will equal the last column of the H matrix. Slide 20 Robot Vision SS 2005 Matthias Rther 20 More on Forward Kinematics Denavit - Hartenberg Parameters Slide 21 Robot Vision SS 2005 Matthias Rther 21 Z (i - 1) X (i -1) Y (i -1) ( i - 1) a (i - 1 ) Z i Y i X i a i d i i IDEA: Each joint is assigned a coordinate frame. Using the Denavit- Hartenberg notation, you need 4 parameters to describe how a frame (i) relates to a previous frame ( i -1 ). THE PARAMETERS/VARIABLES: , a, d, Denavit-Hartenberg Notation Slide 22 Robot Vision SS 2005 Matthias Rther 22 Z (i - 1) X (i -1) Y (i -1) ( i - 1) a (i - 1 ) Z i Y i X i a i d id i i You can align the two axis just using the 4 parameters 1) a (i-1) Technical Definition: a (i-1) is the length of the perpendicular between the joint axes. The joint axes is the axes around which revolution takes place which are the Z (i-1) and Z (i) axes. These two axes can be viewed as lines in space. The common perpendicular is the shortest line between the two axis-lines and is perpendicular to both axis-lines. The Parameters Slide 23 Robot Vision SS 2005 Matthias Rther 23 Z (i - 1) X (i -1) Y (i -1) ( i - 1) a (i - 1 ) Z i Y i X i a i d id i i a (i-1) cont... Visual Approach - A way to visualize the link parameter a (i-1) is to imagine an expanding cylinder whose axis is the Z (i-1) axis - when the cylinder just touches the joint axis i the radius of the cylinder is equal to a (i-1). (Manipulator Kinematics) Its Usually on the Diagram Approach - If the diagram already specifies the various coordinate frames, then the common perpendicular is usually the X (i-1) axis. So a (i-1) is just the displacement along the X (i-1) to move from the (i-1) frame to the i frame. If the link is prismatic, then a (i-1) is a variable, not a parameter. Slide 24 Robot Vision SS 2005 Matthias Rther 24 2) (i-1) Technical Definition: Amount of rotation around the common perpendicular so that the joint axes are parallel. i.e. How much you have to rotate around the X (i-1) axis so that the Z (i-1) is pointing in the same direction as the Z i axis. Positive rotation follows the right hand rule. 3) d (i-1) Technical Definition: The displacement along the Z i axis needed to align the a (i-1) common perpendicular to the a i common perpendicular. In other words, displacement along the Z i to align the X (i-1) and X i axes. 4) i Amount of rotation around the Z i axis needed to align the X (i-1) axis with the X i axis. Z (i - 1) X (i -1) Y (i -1) ( i - 1) a (i - 1 ) Z i Y i X i a i d id i i Slide 2