Screw theory is the algebraic calculation of pairs ofvectors, also known asdual vectors[1] – such asangular andlinear velocity, orforces andmoments – that arise in thekinematics anddynamics ofrigid bodies.[2][3]
Screw theory provides amathematicalformulation for thegeometry of lines which is central torigid body dynamics, where lines form thescrew axes of spatial movement and thelines of action of forces. The pair of vectors that form thePlücker coordinates of a line define a unit screw, and general screws are obtained by multiplication by a pair ofreal numbers andaddition of vectors.[4]
Important theorems of screw theory include: thetransfer principle proves that geometric calculations for points using vectors have parallel geometric calculations for lines obtained by replacing vectors with screws;[1]Chasles' theorem proves that any change between two rigid object poses can be performed by a single screw;Poinsot's theorem proves that rotations about a rigid object's major and minor – but not intermediate – axes are stable.
Screw theory is an important tool in robot mechanics,[5][6][7][8] mechanical design,computational geometry andmultibody dynamics. This is in part because of the relationship between screws anddual quaternions which have been used to interpolaterigid-body motions.[9] Based on screw theory, an efficient approach has also been developed for the type synthesis of parallel mechanisms (parallel manipulators or parallel robots).[10]
A spatial displacement of a rigid body can be defined by a rotation about a line and a translation along the same line, called ascrew motion. This is known asChasles' theorem. The six parameters that define a screw motion are the four independent components of the Plücker vector that defines the screw axis, together with the rotation angle about and linear slide along this line, and form a pair of vectors called ascrew. For comparison, the six parameters that define a spatial displacement can also be given by threeEuler angles that define the rotation and the three components of the translation vector.
A screw is a six-dimensional vector constructed from a pair of three-dimensional vectors, such as forces and torques and linear and angular velocity, that arise in the study of spatial rigid body movement. The components of the screw define the Plücker coordinates of a line in space and the magnitudes of the vector along the line and moment about this line.
Atwist is a screw used to represent the velocity of a rigid body as an angular velocity around an axis and a linear velocity along this axis. All points in the body have the same component of the velocity along the axis, however the greater the distance from the axis the greater the velocity in the plane perpendicular to this axis. Thus, the helicoidal field formed by the velocity vectors in a moving rigid body flattens out the further the points are radially from the twist axis.
The points in a body undergoing a constant twist motion trace helices in the fixed frame. If this screw motion has zero pitch then the trajectories trace circles, and the movement is a pure rotation. If the screw motion has infinite pitch then the trajectories are all straight lines in the same direction.
The force and torque vectors that arise in applying Newton's laws to a rigid body can be assembled into a screw called awrench. A force has a point of application and a line of action, therefore it defines thePlücker coordinates of a line in space and has zero pitch. A torque, on the other hand, is a pure moment that is not bound to a line in space and is an infinite pitch screw. The ratio of these two magnitudes defines the pitch of the screw.
Let ascrew be an ordered pair
whereS andV are three-dimensional real vectors. The sum and difference of these ordered pairs are computed componentwise. Screws are often calleddual vectors.
Now, introduce the ordered pair of real numbersâ = (a,b), called adual scalar. Let the addition and subtraction of these numbers be componentwise, and define multiplication asThe multiplication of a screwS = (S,V) by the dual scalarâ = (a,b) is computed componentwise to be,
Finally, introduce the dot and cross products of screws by the formulas:which is a dual scalar, andwhich is a screw. The dot and cross products of screws satisfy the identities of vector algebra, and allow computations that directly parallel computations in the algebra of vectors.
Let the dual scalarẑ = (φ,d) define adual angle, then the infinite series definitions of sine and cosine yield the relationswhich are also dual scalars. In general, the function of a dual variable is defined to bef(ẑ) = (f(φ),df′(φ)), wheredf′(φ) is the derivative of f(φ).
These definitions allow the following results:
A common example of a screw is thewrench associated with a force acting on a rigid body. LetP be the point of application of the forceF and letP be the vector locating this point in a fixed frame. The wrenchW = (F,P ×F) is a screw. The resultant force and moment obtained from all the forcesFi,i = 1, ...,n, acting on a rigid body is simply the sum of the individual wrenches Wi, that is
Notice that the case of two equal but opposite forcesF and −F acting at pointsA andB respectively, yields the resultant
This shows that screws of the form
can be interpreted as pure moments.
In order to define thetwist of a rigid body, we must consider its movement defined by the parameterized set of spatial displacements,D(t) = ([A(t)],d(t)), where [A] is a rotation matrix andd is a translation vector. This causes a pointp that is fixed in moving body coordinates to trace a curveP(t) in the fixed frame given by
The velocity ofP is
wherev is velocity of the origin of the moving frame, that is dd/dt. Now substitutep = [AT](P − d) into this equation to obtain,
where [Ω] = [dA/dt][AT] is the angular velocity matrix and ω is the angular velocity vector.
The screw
is thetwist of the moving body. The vectorV = v + d × ω is the velocity of the point in the body that corresponds with the origin of the fixed frame.
There are two important special cases: (i) whend is constant, that isv = 0, then the twist is a pure rotation about a line, then the twist is
and (ii) when [Ω] = 0, that is the body does not rotate but only slides in the directionv, then the twist is a pure slide given by
For arevolute joint, let the axis of rotation pass through the pointq and be directed along the vectorω, then the twist for the joint is given by,
For aprismatic joint, let the vectorv pointing define the direction of the slide, then the twist for the joint is given by,
The coordinate transformations for screws are easily understood by beginning with the coordinate transformations of the Plücker vector of line, which in turn are obtained from the transformations of the coordinate of points on the line.
Let the displacement of a body be defined byD = ([A], d), where [A] is the rotation matrix andd is the translation vector. Consider the line in the body defined by the two pointsp andq, which has thePlücker coordinates,
then in the fixed frame we have the transformed point coordinatesP = [A]p + d andQ = [A]q + d, which yield.
Thus, a spatial displacement defines a transformation for Plücker coordinates of lines given by
The matrix [D] is the skew-symmetric matrix that performs the cross product operation, that is [D]y = d × y.
The 6×6 matrix obtained from the spatial displacementD = ([A], d) can be assembled into the dual matrix
which operates on a screws = (s.v) to obtain,
The dual matrix [Â] = ([A], [DA]) has determinant 1 and is called adual orthogonal matrix.
Consider the movement of a rigid body defined by the parameterized 4x4 homogeneous transform,
This notation does not distinguish betweenP = (X,Y,Z, 1), andP = (X,Y,Z), which is hopefully clear in context.
The velocity of this movement is defined by computing the velocity of the trajectories of the points in the body,
The dot denotes the derivative with respect to time, and becausep is constant its derivative is zero.
Substitute the inverse transform forp into the velocity equation to obtain the velocity ofP by operating on its trajectoryP(t), that is
where
Recall that [Ω] is the angular velocity matrix. The matrix [S] is an element of the Lie algebrase(3) of the Lie groupSE(3) of homogeneous transforms. The components of [S] are the components of the twist screw, and for this reason [S] is also often called a twist.
From the definition of the matrix [S], we can formulate the ordinary differential equation,
and ask for the movement [T(t)] that has a constant twist matrix [S]. The solution is the matrix exponential
This formulation can be generalized such that given an initial configurationg(0) in SE(n), and a twistξ in se(n), the homogeneous transformation to a new location and orientation can be computed with the formula,
whereθ represents the parameters of the transformation.
Intransformation geometry, the elemental concept of transformation is thereflection (mathematics). In planar transformations a translation is obtained by reflection in parallel lines, and rotation is obtained by reflection in a pair of intersecting lines. To produce a screw transformation from similar concepts one must use planes inspace: the parallel planes must be perpendicular to thescrew axis, which is the line of intersection of the intersecting planes that generate the rotation of the screw. Thus four reflections in planes effect a screw transformation. The tradition ofinversive geometry borrows some of the ideas ofprojective geometry and provides a language of transformation that does not depend onanalytic geometry.
The combination of a translation with a rotation effected by a screw displacement can be illustrated with theexponential mapping.
Sinceε2 = 0 fordual numbers, exp(aε) = 1 +aε, all other terms of the exponential series vanishing.
LetF = {1 +εr :r ∈H},ε2 = 0.Note thatF isstable under therotationq →p−1qp and under the translation(1 +εr)(1 +εs) = 1 +ε(r +s) for any vector quaternionsr and s.F is a3-flat in the eight-dimensional space ofdual quaternions. This 3-flatF representsspace, and thehomography constructed,restricted toF, is a screw displacement of space.
Leta be half the angle of the desired turn about axisr, andbr half the displacement on thescrew axis. Then formz = exp((a +bε)r) andz* = exp((a −bε)r). Now the homography is
The inverse forz* is
so, the homography sendsq to
Now for any quaternion vectorp,p* = −p, letq = 1 +pε ∈F, where the required rotation and translation are effected.
Evidently thegroup of units of thering of dual quaternions is aLie group. A subgroup hasLie algebra generated by the parametersa r andb s, wherea,b ∈R, andr,s ∈H. These six parameters generate a subgroup of the units, the unit sphere. Of course it includesF and the3-sphere ofversors.
Consider the set of forcesF1,F2 ...Fn act on the pointsX1,X2 ...Xn in a rigid body. The trajectories ofXi,i = 1,...,n are defined by the movement of the rigid body with rotation [A(t)] and the translationd(t) of a reference point in the body, given by
wherexi are coordinates in the moving body.
The velocity of each pointXi is
whereω is the angular velocity vector andv is the derivative ofd(t).
The work by the forces over the displacementδri=viδt of each point is given by
Define the velocities of each point in terms of the twist of the moving body to obtain
Expand this equation and collect coefficients of ω andv to obtain
Introduce the twist of the moving body and the wrench acting on it given by
then work takes the form
The 6×6 matrix [Π] is used to simplify the calculation of work using screws, so that
where
and [I] is the 3×3 identity matrix.
If the virtual work of a wrench on a twist is zero, then the forces and torque of the wrench are constraint forces relative to the twist. The wrench and twist are said to bereciprocal, that is if
then the screwsW andT are reciprocal.
In the study of robotic systems the components of the twist are often transposed to eliminate the need for the 6×6 matrix [Π] in the calculation of work.[1] In this case the twist is defined to be
so the calculation of work takes the form
In this case, if
then the wrench W is reciprocal to the twist T.
The mathematical framework was developed by SirRobert Stawell Ball in 1876 for application in kinematics andstatics ofmechanisms (rigid body mechanics).[4]
Felix Klein saw screw theory as an application ofelliptic geometry and hisErlangen Program.[11] He also worked out elliptic geometry, and a fresh view of Euclidean geometry, with theCayley–Klein metric. The use of asymmetric matrix for avon Staudt conic and metric, applied to screws, has been described by Harvey Lipkin.[12] Other prominent contributors includeJulius Plücker,W. K. Clifford,F. M. Dimentberg,Kenneth H. Hunt, J. R. Phillips.[13]
The homography idea in transformation geometry was advanced bySophus Lie more than a century ago. Even earlier,William Rowan Hamilton displayed theversor form of unit quaternions as exp(a r)= cosa +r sina. The idea is also inEuler's formula parametrizing theunit circle in thecomplex plane.
William Kingdon Clifford initiated the use of dual quaternions forkinematics, followed byAleksandr Kotelnikov,Eduard Study (Geometrie der Dynamen), andWilhelm Blaschke. However, the point of view of Sophus Lie has recurred.[14]In 1940,Julian Coolidge described the use of dual quaternions for screw displacements on page 261 ofA History of Geometrical Methods. He notes the 1885 contribution ofArthur Buchheim.[15] Coolidge based his description simply on the tools Hamilton had used for real quaternions.