

















Study with the several resources on Docsity
Earn points by helping other students or get them with a premium plan
Prepare for your exams
Study with the several resources on Docsity
Earn points to download
Earn points by helping other students or get them with a premium plan
The goal of this chapter is to introduce the basic terminology and notation used in robot geometry and kinematics, and to discuss the methods used for the analysis and control of robot manipulators. The scope of this discussion will be limited, for the most part, to robots with planar geometry
Typology: Papers
1 / 25
This page cannot be seen from the preview
Don't miss anything!


















V. Kumar
The goal of this chapter is to introduce the basic terminology and notation used in robot geometry and kinematics, and to discuss the methods used for the analysis and control of robot manipulators. The scope of this discussion will be limited, for the most part, to robots with planar geometry. The analysis of manipulators with three-dimensional geometry can be found in any robotics text^1.
5.1 Some definitions and examples
We will use the term mechanical system to describe a system or a collection of rigid or flexible bodies that may be connected together by joints. A mechanism is a mechanical system that has the main purpose of transferring motion and/or forces from one or more sources to one or more outputs. A linkage is a mechanical system consisting of rigid bodies called links that are connected by either pin joints or sliding joints. In this section, we will consider mechanical systems consisting of rigid bodies, but we will also consider other types of joints.
Degrees of freedom of a system The number of independent variables (or coordinates) required to completely specify the configuration of the mechanical system.
While the above definition of the number of degrees of freedom is motivated by the need to describe or analyze a mechanical system, it also is very important for controlling or driving a mechanical system. It is also the number of independent inputs required to drive all the rigid bodies in the mechanical system.
Examples: (a) A point on a plane has two degrees of freedom. A point in space has three degrees of freedom. (b) A pendulum restricted to swing in a plane has one degree of freedom.
(^1) In particular, two books offer an excellent treatment while keeping the mathematics at a very simple level: (a) Craig, J. J. Introduction to Robotics , Addison-Wesley, 1989; and (b) Paul, R., Robot Manipulators, Mathematics, Programming and Control , The MIT Press, Cambridge, 1981.
(c) A planar rigid body (or a lamina) has three degrees of freedom. There are two if you consider translations and an additional one when you include rotations. (d) The mechanical system consisting of two planar rigid bodies connected by a pin joint has four degrees of freedom. Specifying the position and orientation of the first rigid body requires three variables. Since the second one rotates relative to the first one, we need an additional variable to describe its motion. Thus, the total number of independent variables or the number of degrees of freedom is four. (e) A rigid body in three dimensions has six degrees of freedom. There are three translatory degrees of freedom. In addition, there are three different ways you can rotate a rigid body. For example, consider rotations about the x , y , and z axes. It turns out that any rigid body rotation can be accomplished by successive rotations about the x , y , and z axes. If the three angles of rotation are considered to be the variables that describe the rotation of the rigid body, it is evident there are three rotational degrees of freedom. (f) Two rigid bodies in three dimensions connected by a pin joint have seven degrees of freedom. Specifying the position and orientation of the first rigid body requires six variables. Since the second one rotates relative to the first one, we need an additional variable to describe its motion. Thus, the total number of independent variables or the number of degrees of freedom is seven.
Kinematic chain A system of rigid bodies connected together by joints. A chain is called closed if it forms a closed loop. A chain that is not closed is called an open chain.
Serial chain If each link of an open chain except the first and the last link is connected to two other links it is called a serial chain.
An example of a serial chain can be seen in the schematic of the PUMA 560 series robot 2 , an industrial robot manufactured by Unimation Inc., shown in Figure 1. The trunk is bolted to a fixed table or the floor. The shoulder rotates about a vertical axis with respect to the trunk. The upper arm rotates about a horizontal axis with respect to the shoulder. This rotation is the shoulder joint rotation. The forearm rotates about a horizontal axis (the elbow) with respect to the upper arm. Finally, the wrist consists of an assembly of three rigid bodies with three
(^2) The Programmable Universal Machine for Assembly (PUMA) was developed in 1978 by Unimation Inc. using a set of specifications provided by General Motors.
Another schematic of an industrial robot arm, the T3 made by Cincinnati Milacron, is shown in Figure 2. Once again, it is possible to model it as a collection of seven rigid bodies (the first being fixed) connected by six joints^3.
Types of joints There are mainly four types of joints that are found in robot manipulators:
Planar chain All the links of a planar chain are constrained to move in or parallel to the same plane. A planar chain can only allow prismatic and revolute joints. In fact, the axes of the revolute joints must be perpendicular to the plane of the chain while the axes of the prismatic joints must be parallel to or lie in the plane of the chain. An example of a planar chain is shown in Figure 3. Almost all internal combustion engines use a slider crank mechanism. The high pressure of the expanding gases in the combustion chamber is used to translate the piston and the mechanism converts this translatory movement into the rotary movement of the crank. This mechanical system consists of three revolute joints and one prismatic joint. The example in Figure 3 is a planar, closed, kinematic chain. Examples of planar, serial chains are shown in Figure 4 and 5.
(^3) This is a convenient model. A more accurate kinematic model is required to model the coupling between the actuator that drives the elbow joint and the elbow joint.
Connectivity of a joint The number of degrees of freedom of a rigid body connected to a fixed rigid body through the joint. The revolute, prismatic and helical joint have a connectivity 1. The spherical joint has a connectivity of 3. Sometimes one uses the term “degree of freedom of a joint” instead of the connectivity of a joint.
Crank shaft Connecting rod
Piston
Cylinder
Figure 3 A schematic of a slider crank mechanism
Link
Link
Link
Joint
Joint
Joint
Figure 4 A schematic of a planar manipulator with three revolute joints
When closed loops are present in the kinematic chain (that is, the chain is no longer serial, or even open), it is more difficult to determine the number of degrees of freedom or the mobility of the robot. But there is a simple formula that one can derive for this purpose. Let n be the number of moving links and let g be the number of joints, with f (^) i being the
connectivity of joint i. Each rigid body has six degrees if we consider spatial motions. If there were no joints, since there are n moving rigid bodies, the system would have 6 n degrees of freedom. The effect of each joint is to constrain the relative motion of the two connecting bodies. If the joint has a connectivity f (^) i , it imposes (6- f (^) i ) constraints on the relative motion. In other words, since there are f (^) i different ways for one body to move relative to another, there (6- f (^) i )
different ways in which the body is constrained from moving relative to another. Therefore, the number of degrees of freedom or the mobility of a chain (including the special case of a serial chain) is given by:
g i
M n fi 1
or,
g i
M n g fi 1
END-EFFECTOR
ACTUATORS
Figure 6 A planar parallel manipulator.
In the special case of planar motion, since each unconstrained rigid body has 3 degrees of freedom, this equation is modified to:
g i
M n g fi 1
Example 1 In Figures 4 and Figure 5, since n = g =3, Equation (3) reduces to the special case of Equation (1). And since f 1 = f 2 = f 3 = 1, and M = g.
Example 2 In the slider crank mechanism shown in Figure 3, n =3 and g =4. Since it is a planar mechanism we use Equation (2). All four joints have connectivity one: f 1 = f 2 = f 3 = f 4 = 1, and M =1.
Example 3 Consider the parallel manipulator shown in Figure 6. Here, n = 7, g =9, and f (^) i =1. According to Equation (3), M =3. There are correspondingly three actuators in the manipulator. Contrast this arrangement with the arrangement shown in Figures 4 and 5. The three actuators are mounted in parallel in Figure 6. In Figures 4 and 5, they are mounted “sequentially” in a serial fashion.
The Stewart Platform The Stewart-Gough or the Stewart Platform 5 device is a six degree of freedom (mobility six) kinematic chain with closed loops. The kinematic chain consists of a base and a moving platform each of which is a spatial hexagon. See Figure 7. Every vertex of the base hexagon is connected to one vertex of the moving platform hexagon by one leg. Similarly, every vertex of the moving hexagon is connected to a vertex of the base hexagon by a leg. There are six such legs. Each leg has is a serial chain consisting of two revolute joints with intersecting axes, a prismatic joint and a spherical joint. Typically the prismatic joints are actuated. The mobility of a Stewart Platform can be easily verified to be six. Each leg has three links and four joints. If we include the moving platform, n = 6 × 3+1 = 19.
(^5) D. Stewart, “A Platform with Six Degrees of Freedom,” The Institution of Mechanical Engineers , Proceedings 1965-66, Vol. 180 Part 1, No. 15, pages 371-386.
The connectivity of the revolute and the prismatic joint is one. The connectivity of the spherical joint is three. Since there are 6×2 revolute joints, 6 prismatic joints and 6 spherical joints,
12 6 6 3 36 1
g i
fi
According to Equation (3), M = 6 19( − 24 ) + 36 = 6
The Stewart Platform has actuators for all its six prismatic joints and it is therefore possible to control all six degrees of freedom.
(a) The Adept 1850 Palletizer (b) side view (axes 2-4 are numbered)
(c) top view (axes 2-4 are numbered) Figure 8 The Adept 1850 Palletizer There are four degrees of freedom in this SCARA manipulator. Joint 1 is a sliding joint that carries the manipulator arm up or down. Joints 2-4 are rotary joints with vertical axes.
5.2 Geometry of planar robot manipulators
The mathematical modeling of spatial linkages is quite involved. It is useful to start with planar robots because the kinematics of planar mechanisms is generally much simpler to analyze. Also, planar examples illustrate the basic problems encountered in robot design, analysis and control without having to get too deeply involved in the mathematics. However, while the examples we will discuss will involve kinematic chains that are planar, all the definitions and ideas presented in this section are general and extend to the most general spatial mechanisms. We will start with the example of the planar manipulator with three revolute joints. The manipulator is called a planar 3 R manipulator. While there may not be any three degree of freedom (d.o.f.) industrial robots with this geometry, the planar 3 R geometry can be found in many robot manipulators. For example, the shoulder swivel, elbow extension, and pitch of the Cincinnati Milacron T3 robot (Figure 2) can be described as a planar 3 R chain. Similarly, in a four d.o.f. SCARA manipulator (Figure 8), if we ignore the prismatic joint for lowering or raising the gripper, the other three joints form a planar 3 R chain. Thus, it is instructive to study the planar 3 R manipulator as an example. In order to specify the geometry of the planar 3 R robot, we require three parameters, l 1 , l 2 , and l 3. These are the three link lengths. In Figure 9, the three joint angles are labeled θ 1 , θ 2 , and θ 3. These are obviously variable. The precise definitions for the link lengths and joint angles are
as follows. For each pair of adjacent axes we can define a common normal or the perpendicular between the axes.
(^7) The reference point is often called the tool center point (TCP).
we measure the joint angle from the x axis which we have chosen to be horizontal. d 2 is defined as the distance from joint axis 1 to the reference point on the end effector. As in the previous example, the end effector coordinates are variables that completely specify the position and orientation of the end effector. In the figure, they are ( x , y , φ). Finally, we consider a Cartesian robot consisting of two prismatic joints at right angles. The P - P chain is found in x-y tables, plotters and milling machines. A schematic is shown in Figure
Figure 10 The RT3300 cylindrical robot (Seiko)
REFERENCE POINT ( x , y )
θ 1
φ
x
y
d 2
Figure 11 The joint variables and link lengths for a R-P planar manipulator
d 2
d 1
Figure 12 The joint variables for a P-P planar manipulator
Figure 13 The G365 Gantry robot manipulator (CRS Robotics) on the left, and the Biomek 2000 Laboratory Automation Workstation (Beckman Coulter) on the right both have tooling mounted at the end of a P-P-P chain.
The end effector of a manipulator that has only prismatic joints is constrained to remain in the same orientation. Thus, the end effector coordinates for the P - P manipulator only include the coordinates of the reference point on the end effector ( x , y ). In summary, in each case, we defined a set of constant parameters called link lengths ( l (^) i ) and set of joint variables or joint coordinates consisting of either joint angles (θ i ) or displacements
1
2 1
2 1 sin
cos
φ= θ
= θ
= θ y d
x d (5)
Again the end effector coordinates are explicitly given in terms of the joint coordinates. However, since the equations are simpler (than in (4)), you would expect the algebra involved in solving for the joint coordinates in terms of the end effector coordinates to be easier. Notice that in contrast to (4), now there are three equations in only two joint coordinates, θ 1 , and d 2. Thus, in general, we cannot solve for the joint coordinates for an arbitrary set of end effector coordinates. Said another way, the robot cannot, by moving its two joints, reach an arbitrary end effector position and orientation. Let us instead consider only the position of the end effector described by ( x , y ), the coordinates of the end effector tool point or reference point. We have only two equations:
2 1
2 1 sin
cos = θ
= θ y d
x d (6)
Given the end effector coordinates ( x , y ), the joint variables can be computed to be:
θ =
− x
y
d x y
1 1
2 2 2 tan
Notice that we restricted d 2 to positive values. A negative d 2 may be physically achieved by allowing the end effector reference point to pass through the origin of the x - y coordinate system over to another quadrant. In this case, we obtain another solution:
θ =
− x
y
d x y
1 1
2 2 2 tan
In both cases (7-8), the inverse tangent function is multivalued 10. In particular,
tan( x ) = tan( x + k π), k =…-2, -1, 0, 1, 2, … (9) However, if we limit θ 1 to the range 0<θ 1 <2π, there is a unique value of θ 1 that is consistent with the given ( x , y ) and the computed d 2 (for which there are two choices).
(^10) In Appendix 1, we define another inverse tangent function called atan2 that takes two arguments, the sine and the cosine of an angle, and returns a unique angle in the range [0, 2π).
The existence of multiple solutions is typical when we solve nonlinear equations. As we will see later, this poses some interesting questions when we consider the control of robot manipulators. The planar Cartesian manipulator is trivial to analyze. The equations for kinematic analysis are:
x = d 2 , y = d 1 (10) The simplicity of the kinematic equations makes the conversion from joint to end effector coordinates and back trivial. This is the reason why P - P chains are so popular in such automation equipment as robots, overhead cranes, and milling machines.
Direct kinematics As seen earlier, there are two types of coordinates that are useful for describing the configuration of the system. If we focus our attention on the task and the end effector, we would prefer to use Cartesian coordinates or end effector coordinates. The set of all such coordinates is generally referred to as the Cartesian space or end effector space^11. The other set of coordinates is the so called joint coordinates that is useful for describing the configuration of the mechanical lnkage. The set of all such coordinates is generally called the joint space. In robotics, it is often necessary to be able to “map” joint coordinates to end effector coordinates. This map or the procedure used to obtain end effector coordinates from joint coordinates is called direct kinematics. For example, for the 3- R manipulator, the procedure reduces to simply substituting the values for the joint angles in the equations
1 1 2 1 2 3 1 2 3
1 1 2 1 2 3 1 2 3 sin sin sin
cos cos cos
φ=θ +θ + θ
= θ + θ +θ + θ +θ +θ
= θ + θ +θ + θ +θ +θ y l l l
x l l l
and determining the Cartesian coordinates, x , y , and φ. For the other examples of open chains discussed so far ( R - P , P - P ) the process is even simpler (since the equations are simpler). In fact, for all serial chains (spatial chains included), the direct kinematics procedure is fairly straight forward. On the other hand, the same procedure becomes more complicated if the mechanism contains one or more closed loops. In addition, the direct kinematics may yield more than one solution or
(^11) Since each member of this set is an n -tuple, we can think of it as a vector and the space is really a vector space. But we shall not need this abstraction here.
We assume that we are given the Cartesian coordinates, x , y , and φ and we want to find analytical expressions for the joint angles θ 1 , θ 2 , and θ 3 in terms of the Cartesian coordinates. Substituting (4c) into (4a) and (4b) we can eliminate θ 3 so that we have two equations in θ 1 and θ 2 :
where the unknowns have been grouped on the right hand side; the left hand side depends only on the end effector or Cartesian coordinates and are therefore known. Rename the left hand sides, x ′= x - l 3 cos φ, y ′ = y - l 3 sin φ, for convenience. We regroup
terms in (d) and (e), square both sides in each equation and add them:
1 1 2 2 1 2 2
sin sin
cos cos
′− θ = θ + θ
′− θ = θ +θ
y l l
x l l
After rearranging the terms we get a single nonlinear equation in θ 1 :
Notice that we started with three nonlinear equations in three unknowns in (a-c). We reduced the problem to solving two nonlinear equations in two unknowns (d-e). And now we have simplified it further to solving a single nonlinear equation in one unknown (f). Equation (f) is of the type
P cosα + Q sinα + R = 0 (g) Equations of this type can be solved using a simple substitution as shown in Appendix 2. There are two solutions for θ 1 given by:
θ =γ+σ − − ′ + ′ + − 1 2 2
1 2 2 12 22 1 2
cos l x y
x y l l (h)
where,
γ =atan 2 2 2 , 2 2 x y
x x y
y (^) ,
and σ =± 1.
Note that there are two solutions for θ 1 , one corresponding to σ=+1, the other corresponding to σ=-1. Substituting any one of these solutions back into Equations (d) and (e) gives us:
2
cos 1 2 1 cos^1 l
θ +θ = x^ ′− l θ
2
sin 1 2 1 sin^1 l
θ +θ = y^ ′− l θ
This allows us to solve for θ 2 using the atan2 function in Appendix 1:
1 2
1 1 2 2 atan^21 sin^1 , cos −θ
θ = ^ ′− θ ′− θ l
x l l
y l (i)
Thus, for each solution for θ 1 , there is one (unique) solution for θ 2. Finally, θ 3 can be easily determined from (c):
θ 3 = φ - θ 1 - θ 2 (j) Equations (h-j) are the inverse kinematics solution for the 3- R manipulator. For a given end effector position and orientation, there are two different ways of reaching it, each corresponding to a different value of σ. These different configurations are shown in Figure 14.
REFER ENC E P OINT ( x , y ) φ
σ =-
σ =+
Figure 14 The two inverse kinematics solutions for the 3 R manipulator: “elbow-up” configuration (σ=+1) and the “elbow-down” configuration (σ= -1) Commanding a robot to move the end effector to a certain position and orientation is ambiguous because there are two configurations that the robot must choose from. From a