6. robot kinematics and dynamics (1)
TRANSCRIPT
6. Basic CoordinatesRotation and Translation in basic of Robot Coordinates, Homogeneous Transformg
Euler Angles, Denavit-Hartenberg Notation
Affiliated Professor : Jaeyoung LeeE-mail : [email protected]
H P : 011 9455 5277H.P : 011 – 9455 - 5277
한국 IT직업전문학교
Topicsp
Basic Coordinates
Coordinate Frames & Denavit Hartenberg NotationCoordinate Frames & Denavit-Hartenberg Notation
Forward and Inverse Kinematics of Robot Manipulators
Manipulator Jacobianp
Review of Lagrangian Dynamics
Lagrangian Dynamics of Robot Manipulators
Newton-Euler Equations of Robot Manipuators
Forward and Inverse Dynamics
Robot StaticsRobot Statics
Robot Trajectory Planning
Robot Control
로봇공학개론 2
한국 IT직업전문학교
Basic Coordinates
Operators for Translation and Rotation
- Translation - RotationTranslation Rotation
로봇공학개론 3
한국 IT직업전문학교
Basic Coordinate
Coordinate Frames
- Translation - RotationTranslation Rotation
로봇공학개론 4
한국 IT직업전문학교
Basic Coordinate
Different View Based Upon Different Coordinates
- Translation - RotationTranslation Rotation
로봇공학개론 5
한국 IT직업전문학교
Basic Coordinate
Rotation and Translation Combined
- A single rotation after a single translation:A single rotation after a single translation:
- A single rotation and a single translation after another pair of translation and rotation:
- Scheme shown above to represent transform operations is not a good way of simplifying notation and computations.
- We need consistent transforms for translations and rotations:- We need consistent transforms for translations and rotations: homogeneous transform
로봇공학개론 6
한국 IT직업전문학교
Basic Coordinate
Rotation Matrix R
- Vector p can be represented with respect to the two different coordinates, i.e., coordinate A and B
- We can to find a rotation matrix such that
- Noting that x_A, y_A and z_A represent the components of p along the x, y, and z axes of coordinate A.coordinate A.
로봇공학개론 7
한국 IT직업전문학교
Basic Coordinate
Rotation Matrix R
- Noting that x A, y A and z A represent the components of p along the x, y, and zNoting that x_A, y_A and z_A represent the components of p along the x, y, and z axes of coordinate A.
- Therefore,
로봇공학개론 8
한국 IT직업전문학교
Basic Coordinate
Rotation Matrix R
- Therefore,Therefore,
- Similarly,
- Thus, Therefore,
- Rotational matrix R is orthonormal (orthogonal).
로봇공학개론 9
한국 IT직업전문학교
Basic Coordinate
Homogeneous Transform
- In homogeneous transforms, translation and orientations have identicalIn homogeneous transforms, translation and orientations have identical characteristics.
- Position vector [x y z]T is represented by an augmented vector [x y z 1]T .
- Translation is represented by a matrix:Translation is represented by a matrix:
로봇공학개론 10
한국 IT직업전문학교
Basic Coordinate
- Rotation is represented by a matrix:
로봇공학개론 11
한국 IT직업전문학교
Basic Coordinate
- If translation and rotation are combined
로봇공학개론 12
한국 IT직업전문학교
Basic Coordinate
- If translation and rotation are combined
Therefore,
- Inverse of homogeneous transform
로봇공학개론 13
한국 IT직업전문학교
Basic Coordinate
More On Rotation : Euler Angles
- Many different sets of Euler angles existMany different sets of Euler angles exist
- Z-Y-Z, Z-Y-X, and etc,
- Example : Z-Y-X : Rotate around z-axis, and then around y-axis, and finally around x-axisaround x axis.
- Rotational Transformation (Post-multiplication)
로봇공학개론 14
한국 IT직업전문학교
Basic Coordinate
More On Rotation : Euler Angles
로봇공학개론 15
한국 IT직업전문학교
Basic Coordinate
More On Rotation : Euler Angles
- X-Y-Z Fixed Angles (Pitch-Yaw-Roll)X Y Z Fixed Angles (Pitch Yaw Roll)
- Note
Rotational Transformation (Pre multiplicatin)- Rotational Transformation (Pre-multiplicatin)
로봇공학개론 16
한국 IT직업전문학교
Basic Coordinate
Equivalent Angle-Axis
- Represented by a unit vector that indicates the axis of rotation and an angle toRepresented by a unit vector that indicates the axis of rotation and an angle to rotate.
- If the axis of rotation is k = [K_x K_y K_z]^T,
로봇공학개론 17
한국 IT직업전문학교
Basic Coordinate
Denavit-Hartenberg Notation
- Conventions
Joint i moves link i
Frame i is fixed at (attached to) link i and located at the distal joint, which means that frame i is located at joint i+1.
로봇공학개론 18
Z-axes are aligned with joint axes.
한국 IT직업전문학교
Basic Coordinate
4 Link Parameters
- Link Length(L n): the shortest distance between two joint axes at bothLink Length(L_n): the shortest distance between two joint axes at both ends of Link n.
- Link Twist(alpha_n): "twist" angle of two z-axes at both ends of Link n in the direction of x n -axisin the direction of x_n axis.
- Link Offset (d_n): distance from the origins of Frame n-1 to Frame n in the direction of Z_n-1-axis.
i l h l f 1 i i i h di i- Joint Angle(Thetat_n): angle from x_n-1-axis to x_n -axis in the directionof z_n-1-axis.
로봇공학개론 19
한국 IT직업전문학교
Basic Coordinate
Miscellaneous Conventions
- If z-axes meet each other x n – axis in general is defined to be z n-If z axes meet each other, x_n axis, in general, is defined to be z_n1Ⅹz_n.
- Positive direction of z-axis can be either.
로봇공학개론 20
한국 IT직업전문학교
Basic Coordinate
Miscellaneous Conventions
- The origin of frame 0 is usually coincide with that of frame 1The origin of frame 0 is usually coincide with that of frame 1.
- Z-axis of frame 0 is aligned with z-axis of joint 1.
- For a prismatic joint, z-axis is aligned with the sliding direction of the j i I hi li k ff d i h j i i bljoint. In this case, link offset d is the joint variable.
- Homogeneous transform :
- Homogeneous transform can be obtained directly by observing the dcoordinates in most cases.
로봇공학개론 21
한국 IT직업전문학교
Basic Coordinate
Example :
로봇공학개론 22
한국 IT직업전문학교
Basic Coordinate
Example :
h b d l d dNote that T^0_1 can be directly determined
로봇공학개론 23
한국 IT직업전문학교
Kinematics & Inverse Kinematics
Forward Kinematics
- For a given set of joint displacements, the end-effector position and orientation can be calculated. (Forward Kinematics)
Inverse Kinematics
- For a given set of end-effector position
and orientation, joint displacements are
computed.
- We have to solve nonlinear equations;We have to solve nonlinear equations;
however, we may not able to solve for
solutions analytically.
로봇공학개론 24
한국 IT직업전문학교
Kinematics & Inverse Kinematics
Kinematics & Inverse Kinematics for a 2-D Revolute-Jointed Manipulator
Forward Kinematics
로봇공학개론 25
한국 IT직업전문학교
Kinematics & Inverse Kinematics
Kinematics & Inverse Kinematics for a 2-D Revolute-Jointed Manipulator
F d Ki tiForward Kinematics
로봇공학개론 26
한국 IT직업전문학교
Kinematics & Inverse Kinematics
Kinematics & Inverse Kinematics for a 2-D Revolute-Jointed Manipulator
E d Eff t P itiEnd-Effector Position End-Effector Orientation
로봇공학개론 27
한국 IT직업전문학교
Kinematics & Inverse Kinematics
Kinematics & Inverse Kinematics for a 2-D Revolute-Jointed Manipulator
Inverse KinematicsInverse Kinematics- For a given tip position [x y]^T, the joint displacement [theta_1 theta_2]^Tis to be determined.
Geometric Method (Using cosine rule)
로봇공학개론 28
한국 IT직업전문학교
Kinematics & Inverse Kinematics
Kinematics & Inverse Kinematics for a 2-D Revolute-Jointed Manipulator
Inverse KinematicsInverse Kinematics
로봇공학개론 29
한국 IT직업전문학교
Kinematics & Inverse Kinematics
Kinematics & Inverse Kinematics for a 2-D Revolute-Jointed Manipulator
Inverse KinematicsInverse Kinematics
로봇공학개론 30
한국 IT직업전문학교
Kinematics & Inverse Kinematics
Kinematics & Inverse Kinematics for a 2-D Revolute-Jointed Manipulator
Inverse KinematicsInverse Kinematics
Sign: "+", if -p < theta_2 < 0, i.e., at "elbow up“ configuration "-", otherwise.
로봇공학개론 31
한국 IT직업전문학교
Kinematics & Inverse Kinematics
Kinematics & Inverse Kinematics for a 2-D Revolute-Jointed Manipulator
Algebraic MethodAlgebraic Method
left-hand-side: a constant matrixleft hand side: a constant matrixright-hand-side: a matrix whose elements are functions of joint angles
로봇공학개론 32
한국 IT직업전문학교
Kinematics & Inverse Kinematics
Kinematics & Inverse Kinematics for a 2-D Revolute-Jointed Manipulator
Algebraic MethodAlgebraic Method
로봇공학개론 33
한국 IT직업전문학교
Kinematics & Inverse Kinematics
Kinematics & Inverse Kinematics for a 2-D Revolute-Jointed Manipulator
Algebraic MethodAlgebraic Method
Let
Then
로봇공학개론 34
한국 IT직업전문학교
Kinematics & Inverse Kinematics
Kinematics & Inverse Kinematics for a 2-D Revolute-Jointed Manipulator
Algebraic MethodAlgebraic MethodSimilarly,
Usingg
로봇공학개론 35
한국 IT직업전문학교
Kinematics & Inverse Kinematics
Kinematics & Inverse Kinematics for a 2-D Revolute-Jointed Manipulator
Algebraic MethodAlgebraic Methodwhere
Therefore,
로봇공학개론 36
한국 IT직업전문학교
Kinematics & Inverse Kinematics
Kinematic Decoupling
If the final 3 consecutive axes meet at a point, the process of solving inverseIf the final 3 consecutive axes meet at a point, the process of solving inverse kinematics is simplified.
Three axes z4 , z5 , and z6 meet at a wrist centermeet at a wrist center.
The position of the wrist center, w, is determined by q1, q2 , and q3 only.
로봇공학개론 37
한국 IT직업전문학교
Kinematics & Inverse Kinematics
Kinematic Decoupling
- From the target tool position d and orientation R, wrist centerFrom the target tool position d and orientation R, wrist centerposition can be computed:
hwhere
- Once the wrist center is known, the first 3 joint variables, q1, q2, and q3 , canOnce the wrist center is known, the first 3 joint variables, q1, q2, and q3 , can be computed.
- The orientation matrix R^0_3 can be computed after q1, q2 , and q3 are d t i ddetermined.
- The rest of joint variables, q 4, q5 , and q6 , can be computed from R_6^3, which in turn can be computed bywhich in turn can be computed by
로봇공학개론 38
한국 IT직업전문학교
Kinematics & Inverse Kinematics
SCARA Robot
로봇공학개론 39
한국 IT직업전문학교
Kinematics & Inverse Kinematics
SCARA Robot
- Inverse Kinematics of SCARA Robot
로봇공학개론 40
한국 IT직업전문학교
Kinematics & Inverse Kinematics
SCARA Robot
- Rotation matrix R can be in the form ofRotation matrix R can be in the form of
로봇공학개론 41
한국 IT직업전문학교
Kinematics & Inverse Kinematics
SCARA Robot
- Using a geometry formed by projecting the manipulator configurationUsing a geometry formed by projecting the manipulator configuration upon a horizontal plane, which forms a 2-link manipulator,
- Again, similarly to a 2-link manipulator,
- and
로봇공학개론 42
한국 IT직업전문학교
Kinematics & Inverse Kinematics
SCARA Robot
- Solvability : A manipulator is defined to be solvable, if all the sets of joint variablesSolvability : A manipulator is defined to be solvable, if all the sets of joint variables for a given position and orientation can be determined by an algorithm. Many manipulators have multiple solutions for a single configuration. For example, PUMA 560 has 8 solutions.
W k Th l f h h d ff f i l h- Workspace : The volume of space that the end-effector of a manipulator can reach. Within the workspace, inverse kinematics solutions exist.
- Closed Form Solution : Inverse kinematic solutions can be grouped into closed form solutions and numerical solutions Closed form solutions are noniterative such assolutions and numerical solutions. Closed form solutions are noniterative such as algebraic expressions; whereas numerical solutions are iterative. Numerical solutions are computationally more expensive and slower.
- Pieper's work : A general 6 d.o.f. manipulator does not have a closed form solution. p g pIf the three consecutive axies intersect at a point, a closed form solution exists. For most commercial manipulators, the last consecutive axes intersect at a point.
- Notes: Even if inverse kinematic solutions are found, they may not be physically realizable due to joint angle limitationsrealizable due to joint angle limitations.
로봇공학개론 43
한국 IT직업전문학교
HW 6
139p, 연습문제 1
로봇공학개론 44
한국 IT직업전문학교
REFERENCE
기초로봇 공학
제 2편 : 로봇 제어의 시작- 제 2편 : 로봇 제어의 시작
Introduction to Robotics, by J, J. Craig , y , g
- Ch 2. Spatial descriptions and transformations
- Ch 3. Manipulator kinematics
- Ch 4. Inverse manipulator kinematics
로봇공학개론 45