12.07.2015 Views

Three Problems in Robotics - helix

Three Problems in Robotics - helix

Three Problems in Robotics - helix

SHOW MORE
SHOW LESS
  • No tags were found...

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

<strong>Three</strong> <strong>Problems</strong> <strong>in</strong> <strong>Robotics</strong>J.M. SeligSchool of Comput<strong>in</strong>g, Info. Sys. & Maths.South Bank UniversityLondon SE1 0AA, U.K.Abstract<strong>Three</strong> rather different problems <strong>in</strong> robotics are studied us<strong>in</strong>g the same technique from screwtheory. The first problem concerns systems of spr<strong>in</strong>gs. We differentiate the potential function<strong>in</strong> the direction of an arbitrary screw to f<strong>in</strong>d the equilibrium position. The second problem isalmost identical <strong>in</strong> terms of the computations, we seek the least squares solution to the problemof f<strong>in</strong>d<strong>in</strong>g the rigid motion undergone by a body given only data about po<strong>in</strong>ts on the body. F<strong>in</strong>allywe look at the Jacobian of a Stewart platform. Six po<strong>in</strong>t on the mov<strong>in</strong>g platform are connectedby prismatic jo<strong>in</strong>ts to six fixed po<strong>in</strong>ts on the base. The Jacobian relates the jo<strong>in</strong>t rates of the legsto the l<strong>in</strong>ear and angular velocities of the platform. Aga<strong>in</strong> this can be done by differentiat<strong>in</strong>gwith respect to a screw.Although all three problems are quite well known and have be solved by other means, thescrew theory method is significantly simpler. For example, when m<strong>in</strong>imis<strong>in</strong>g a potential orresidual function we do not need to <strong>in</strong>clude constra<strong>in</strong>ts. These advantages mean that we can gofurther and study second order properties, the Hessian of the spr<strong>in</strong>g system, whether or not theleast squares solution m<strong>in</strong>imises or maximises the residual.1 IntroductionWhen Ball wrote his treatise at the end of the 19th centaury Sophius Lie was justbeg<strong>in</strong>n<strong>in</strong>g to th<strong>in</strong>k about what he called ‘cont<strong>in</strong>uous groups’. If Ball knew of Lie’swork it may not have been obvious that it had any connection to his own s<strong>in</strong>ce Lie was<strong>in</strong>terested <strong>in</strong> symmetries of differential equations. It was Klien who later <strong>in</strong>troducedthe idea that these ‘Lie groups’ could be thought of as geometrical symmetries. It wasafter both Ball and Lie had died that ‘Lie theory’ began to f<strong>in</strong>ds it place as central tomodern geometry. In particular, the work of Kill<strong>in</strong>g and Cartan on Lie algebras werevery <strong>in</strong>fluential.With h<strong>in</strong>dsight we can see that Ball’s f<strong>in</strong>ite screws were simply elements of a Liegroup: the group of proper Euclidean transformations <strong>in</strong> IR 3 .1


λ iaibiFigure 1: A Rigid Body Suspended by a System of Spr<strong>in</strong>gsThe <strong>in</strong>f<strong>in</strong>itesimal screws or motors were elements of the Lie algebra of this group.Many other elements of Lie theory were also present <strong>in</strong> Ball’s screw theory. But perhapstheir significance was not fully appreciated. For example, the Lie product or Liebracket is simply the cross product of screws. For Ball this was just a geometricaloperation, the analogue of the vector product of 3-dimensional vectors.Some authors refer to Screw theory and Lie group methods as if they were differentapproaches. This author’s view is that there is no dist<strong>in</strong>ction between them, screwtheory is simply the specialisation of Lie theory to the group of rigid body transformations.The name screw theory is useful <strong>in</strong> three ways, it is a useful shorthand, it isdescriptive and lastly it rem<strong>in</strong>ds us that it was Ball who worked out almost all of thetheory before Lie groups were <strong>in</strong>vented!In this work the fact that a Lie group is a differential manifold is used. To m<strong>in</strong>imisea smooth function on such a space we do not need the mach<strong>in</strong>ery of Lagrange multipliers.We can work on the manifold directly, we do not need to th<strong>in</strong>k of the group asembedded <strong>in</strong> Cartesian space, as would be implied by the use of Lagrange multipliers.To f<strong>in</strong>d equations for a function’s stationary po<strong>in</strong>ts we differentiate along tangentvector fields. The most convenient vector fields to use are the left-<strong>in</strong>variant fields onthe group. These are just elements of the Lie algebra of the group, the screws. Hencethis technique could be thought of as, “differentiat<strong>in</strong>g along a screw”.2 Spr<strong>in</strong>gsConsider a rigid body supported by a system of spr<strong>in</strong>gs, see figure 1. Further assumethat the spr<strong>in</strong>gs have natural length 0, obey Hook’s law and can both push and pull. Thespr<strong>in</strong>g constants λ i , of the spr<strong>in</strong>gs can be different. Let ã T i =(a T i , 1) be the po<strong>in</strong>ts wherethe spr<strong>in</strong>gs are attached to the ground or frame, and ˜b T i =(b T i , 1) the correspond<strong>in</strong>gattachment po<strong>in</strong>ts on the rigid body when the body is <strong>in</strong> some standard ‘home’ config-1


uration. If the body undergoes a rigid motion the attachment po<strong>in</strong>ts will move to,( ) ( )( )b′i R t bi=1 0 1 1which we will abbreviate to ˜b ′ i = M ˜b i .Thefirst question we can ask about this situationis: Is there an equilibrium configuration for the rigid body?The problem is to m<strong>in</strong>imise the potential energy of the spr<strong>in</strong>g system, this is givenby the follow<strong>in</strong>g function,Φ = 1 2 ∑ iλ i(ãi − M ˜b i) T (ãi − M ˜b i)Notice that this function is def<strong>in</strong>ed on the group SE(3), that is Φ : SE(3) −→ IR,asMvaries over the group we have different values of the potential.If this was just a function on IR n we would f<strong>in</strong>d the partial derivatives and set themto zero to f<strong>in</strong>d the stationary po<strong>in</strong>ts. The standard method of tackl<strong>in</strong>g this problemwould be to m<strong>in</strong>imise the matrix elements us<strong>in</strong>g Lagrange multipliers to take accountof the constra<strong>in</strong>t that the matrix must be a group element.However, we can imitate the simpler method for unconstra<strong>in</strong>ed functions us<strong>in</strong>gsome manifold theory. To f<strong>in</strong>d the stationary po<strong>in</strong>ts of a function def<strong>in</strong>ed on a manifoldwe simply differentiate the function along a vector fields on the manifold. As usual weset the results to zero and then solve the result<strong>in</strong>g equations to f<strong>in</strong>d the stationary po<strong>in</strong>t.For this to work we do need a set of vector field which span the space of all vector fieldon the manifold.As the manifold under consideration is the underly<strong>in</strong>g manifold of a Lie group,such a complete set of vector fields is always available. We can use the elements of theLie algebra thought of a left <strong>in</strong>variant vector fields.To differentiate along a vector field we move a little way along a path tangent to thevector field and compare the function values at the two po<strong>in</strong>ts, then we take the limit ofthe difference between values of the function at these neighbour<strong>in</strong>g po<strong>in</strong>ts as the pathget shorter and shorter.Let:S =( )Ω v0 0be a Lie algebra element or screw given <strong>in</strong> the 4 × 4 representation. Ω is a 3 × 3 antisymmetricmatrix correspond<strong>in</strong>g to a vector ω, Ωx = ω × x.If M is a group element written <strong>in</strong> the 4 × 4 representation, then the action of S onM, is given by the left translation,M(t)=e tS MThis takes M along a path tangent to the vector field def<strong>in</strong>ed by S. Tak<strong>in</strong>g the derivativealong the path and then sett<strong>in</strong>g t = 0gives,∂ S M = SMHence the derivative of the potential is given by,) T∂ S Φ = −∑λ i(ãi − M ˜b i SM ˜b ii2


Now for equilibrium this must vanish for arbitrary S. Hence we must separate out S,todo this look at the term,( ) (ω × (Rbi + t)+v −RBi RSM ˜b i ==T )− T I 3 ω00 0)(vwhere I 3 is the 3 × 3 identity matrix and B i is the anti-symmetric matrix correspond<strong>in</strong>gto b i .If we substitute this <strong>in</strong>to the equilibrium equation and use the fact that S and thusω and v are arbitrary, we get,() T −RBi R∑λ i(ãi − M ˜b T )− T I 3i = 00 0iAfter a little manipulation, this matrix equation produces 2 vector equations,∑λ i a i × (a i − Rb i − t)=0 (1)iand∑λ i (a i − Rb i − t)=0 (2)iIf the weights λ i are all equal, then equation 2 tells us that the optimal transformationmaps the centroids of the a po<strong>in</strong>ts to the b po<strong>in</strong>ts. Another way of putt<strong>in</strong>g this is that atan equilibrium configuration the centroids of the two sets of po<strong>in</strong>ts must co<strong>in</strong>cide. Toproceed, we choose the orig<strong>in</strong> of coord<strong>in</strong>ates so that the centroid of the b po<strong>in</strong>ts lies atthe orig<strong>in</strong>, ∑ i λ i b i = 0. The translation vector is now given by equation (2) as,t = ∑ i λ i a i∑ i λ iIn the above form equation (1) is not very easy to deal with, a more tractable form isthe 3 × 3 representation. A small computation confirms that the anti-symmetric matrixcorrespond<strong>in</strong>g to a vector product p×q,isgivenbyqp T −pq T . Hence <strong>in</strong> this form theequation becomes,(∑λ i Rbi a T i − a i b T i R T ) = 0iNow, writ<strong>in</strong>g, P = ∑ i λ i a i b T i and us<strong>in</strong>g the result that t = ∑ i λ i a i /∑ i λ i , this equationbecomes;RP T = PR T (3)This shows that the matrix PR T is symmetric. So let us write PR T = Q where Q issymmetric, then we have that,P = QRThis decomposes the matrix P as the product of a symmetric matrix with a properorthogonal one. This is, essentially the polar decomposition of the of the matrix. Noticethat the polar decomposition P = RQ ′ also satisfies the equation, the rotation matrix Rhere is the same as above but the symmetric matrix Q ′ = R T QR is simply congruentto the orig<strong>in</strong>al symmetric matrix. So as far as the solution for R is concerned there isno difference between these solutions. In fact the polar decomposition of a matrix is3


<strong>in</strong>to an orthogonal matrix and a non-negative symmetric matrix. But here we want aproper orthogonal matrix and a symmetric one. If the orthogonal matrix from the polardecomposition of P is a reflection then we can simply multiply by −1 to get a rotation.More details on the polar decomposition of a matrix can be found <strong>in</strong> [6], for example.The polar decomposition give one solution, but this solution is not unique. LetP = QR p be the polar decomposition of P, now substitute this <strong>in</strong>to the equation (3),RR T p QP T = QR p R TIf we write R i = RR T p then the equation becomes,R i QR i = QSuppose that v lies <strong>in</strong> the direction of the rotation axis of R i , so that R i v = v, postmultiply<strong>in</strong>gthe above equation by v gives,R i Qv = QvHence Qv lies along the axis of R i and we can write,Qv = µvfor some constant µ. Any solution for the rotation R i must have its axis of rotationaligned with an eigenvector of Q.The possible angles of rotation can be found by consider<strong>in</strong>g the action on the eigenvectorsof Q, us<strong>in</strong>g the fact that the eigenvectors of a symmetric matrix are mutuallyorthogonal. If the matrix P is non-s<strong>in</strong>gular then it is well known that the polar decompositionis unique. If the eigenvalues of Q are all different and also have differentmagnitudes then the only possible angles are 0 and π. This gives four solutions <strong>in</strong> all,R i = I 3 is the solution we found above, that is R is simply the rotation from the polardecomposition. The three other solutions for R i are rotations of π radians about thethree eigenvectors of Q. So <strong>in</strong> all we have four solutions R = R p R i , where R p is therotation from the polar decomposition of P and R i are as above, rotations of π about theith eigenvector of Q, the fourth solution is given by R 0 = I 3 . Notice that there four rotationsform a discrete subgroup of the group of rotation, this subgroup is the symmetrygroup of the octahedron.If any of the above conditions is broken, P is s<strong>in</strong>gular, two of the eigenvalues ofQ are equal, or a pair of eigenvalues sum to zero, then we get more solutions. Forexample, if a pair of eigenvalues of Q sum to zero then any rotation about the rema<strong>in</strong><strong>in</strong>geigenvector will satisfy the equation for R i .The fact that, <strong>in</strong> the general case, we have found four stationary po<strong>in</strong>ts of the potentialenergy function is not surpris<strong>in</strong>g. Morse theory studies the relationship betweenmanifolds and the critical po<strong>in</strong>ts of functions def<strong>in</strong>ed on them, see [9]. The criticalpo<strong>in</strong>ts, or stationary po<strong>in</strong>ts here, correspond to cells <strong>in</strong> a cellular decomposition of themanifold. The manifold <strong>in</strong> question here is the underly<strong>in</strong>g manifold of the rotationgroup SO(3), this is known to be 3-dimensional projective space, IRIP 3 . The m<strong>in</strong>imalcellular decomposition of IRIP 3 has for cells, with dimensions 0, 1, 2 and 3 see [3, p.105]. Hence, we expect a m<strong>in</strong>imum of 4 critical po<strong>in</strong>t for function on SO(3). Moreover,<strong>in</strong>dex of the critical po<strong>in</strong>t, the number of negative eigenvalues of its Hessian4


matrix, gives the dimension of the correspond<strong>in</strong>g cell. Thus, without any further computations,we can say that among the four critical po<strong>in</strong>ts will be a local maxima a localm<strong>in</strong>ima and two types of saddle po<strong>in</strong>ts. We will return to the problem of f<strong>in</strong>d<strong>in</strong>g whichsolution is the m<strong>in</strong>ima later.3 Rigid motion from po<strong>in</strong>t dataSuppose we have a vision system or range-f<strong>in</strong>d<strong>in</strong>g system, which can measure thelocation of po<strong>in</strong>ts <strong>in</strong> 3-dimensions. Imag<strong>in</strong>e that we have a rigid body and know theposition of a number of po<strong>in</strong>t on the body. The body is subjected to a unknown rigidmotion and the positions of the po<strong>in</strong>ts are measured. These measurements will conta<strong>in</strong>errors and the question we want to address here is: How can we estimate the rigidmotion undergone by the body?Let us represent the positions of the known po<strong>in</strong>ts as ˜b i and correspond<strong>in</strong>g measuredpo<strong>in</strong>ts are ã i . Write the unknown rigid transformation as M, then the function,) T )Φ = ∑(ãi − M ˜b i(ãi − M ˜b iirepresents the sum of squares of the differences between the measured po<strong>in</strong>ts andtheir ideal (noise-free) positions. Choos<strong>in</strong>g M to m<strong>in</strong>imise this function gives a ‘leastsquares’estimate for the rigid transformation. This function is almost identical to thepotential energy function studied <strong>in</strong> the previous section, the only differences are anoverall factor of one half and that all the λ i shavebeensetto1.The history of this problem is very <strong>in</strong>terest<strong>in</strong>g. The problem of f<strong>in</strong>d<strong>in</strong>g the rotationis clearly the <strong>in</strong>terest<strong>in</strong>g part and was first solved by MacKenzie <strong>in</strong> 1957 [8]. He cameupon this problem <strong>in</strong> the context of crystallography. In 1966 Wahba found the sameproblem while study<strong>in</strong>g the orientation of artificial satellites, [16]. In 1976 Moran resolvedthe problem us<strong>in</strong>g quarternions, [10]. The motivation here came from geology,<strong>in</strong> the particular the movement of tectonic plates. In the context of manufactur<strong>in</strong>g,Nádas found and re-solved the problem <strong>in</strong> 1978, [11]. Here the application was to themanufacture of ceramic substrates for silicon chips. In the robot vision community theproblem is usually credited to Horn [5], for example see [7, Chap. 5].The solution given above is, perhaps, a little simpler than the standard argumentswhich <strong>in</strong>volve a constra<strong>in</strong>ed m<strong>in</strong>imisation, the constra<strong>in</strong>ts be<strong>in</strong>g used to express thefact that the matrices must lie <strong>in</strong> the group.The standard solutions have not always been <strong>in</strong> terms of the polar decomposition.In fact (at least), two other descriptions of the solution are possible.To computer the polar decomposition of a matrix, texts on numerical analysis adviseus to start with the s<strong>in</strong>gular value decomposition of the matrix, see for example[12]. Hence, it is no real surprise that we can obta<strong>in</strong> the solution to our problemsdirectly from a s<strong>in</strong>gular value decomposition.Recall, from the section above that we are required to solve RP T = PR T , for therotation matrix R,whereP = ∑ i λ i a i b T i . Further, recall that,P = QR pwhere Q was symmetric. Hence, we can diagonalise Q as Q = UDU T with U orthog-5


onal and D diagonal. Now we can write,P = UDU T R p = UDV Twhere V T = U T R is still orthogonal. This is simply the s<strong>in</strong>gular value decomposition ofP. To put this another way, suppose the s<strong>in</strong>gular value decomposition of P is P =UDV Tthen we have the four solutions R = UV T R i .We can derive another form for the solution as follows, we beg<strong>in</strong> with the polardecomposition of P,P = QR pwhere Q is a symmetric matrix. Postmultiply<strong>in</strong>g this equation by its transpose gives,PP T = Q 2 . F<strong>in</strong>ally substitut<strong>in</strong>g for Q yields,R =(PP T ) −1/2 PR iThere are several different square roots of the matrix (PP T ) that we could take here, thechoice is limited by the requirement that the determ<strong>in</strong>ant of R must be 1. This meanswe must take the unique positive square root, see [6, p. 405].F<strong>in</strong>ally here we look at the determ<strong>in</strong>ant of the matrix P. A classical result tellsus that the polar decomposition of a matrix P is unique if P is non-s<strong>in</strong>gular, see [6,p. 413] for example. The classic polar decomposition, decomposes the matrix P <strong>in</strong>toan orthogonal matrix and positive-semidef<strong>in</strong>ite symmetric matrix. For our purposeswe need a proper-orthogonal matrix and a symmetric matrix (not necessarily positivesemidef<strong>in</strong>ite),this does not effect the uniqueness of the solution.Thus we are led to <strong>in</strong>vestigate the determ<strong>in</strong>ant of the matrix P def<strong>in</strong>ed above. Tosimplify the discussion we will assume that the spr<strong>in</strong>g stiffnesses λ i have all been setto 1.When there are less than three spr<strong>in</strong>gs or pairs of po<strong>in</strong>ts the determ<strong>in</strong>ant is alwayss<strong>in</strong>gular. For three po<strong>in</strong>t-pairs a straightforward computation reveals,det(P)=det( 3∑a i b T ii=1)=(a 1 a 2 a 3 )(b 1 b 2 b 3 )here the scalar triple product has been written as, a · (b × c)=(abc).Generalis<strong>in</strong>g this to n po<strong>in</strong>t-pairs we have that,det(P)=∑1≤i< j


iaiFigure 2: A General Stewart PlatformFor parallel manipulators it is the <strong>in</strong>verse k<strong>in</strong>ematics that is straightforward, whilethe forward k<strong>in</strong>ematics are hard. Suppose that we are given the position and orientationof the platform the leg-lengths are simple to f<strong>in</strong>d. Let us write a i for the position ofthe centre of the spherical jo<strong>in</strong>t on the ground belong<strong>in</strong>g to the i-th leg. In the homeconfiguration the correspond<strong>in</strong>g position of the jo<strong>in</strong>t centre on the platform will be, b i .So now the length of the i-th leg, or rather its square, can be written,li 2 = ( ) T )ã i − M ˜b i(ãi − M ˜b i i = 1,...,6As usual M is a rigid transformation, this time the motion that takes the platform fromhome to the current position. Notice that the leg-lengths can be thought of as functionson the group, however it is more usual to th<strong>in</strong>k of these as components of a mapp<strong>in</strong>gfrom the group to the space of leg-lengths, SE(3) −→ IR 6 . A po<strong>in</strong>t <strong>in</strong> IR 6 is given <strong>in</strong>coord<strong>in</strong>ates as (l 1 , l 2 ,...,l 6 ). It is the jacobian of this mapp<strong>in</strong>g that we seek. To do thiswe take the derivative of the leg-lengths,Rearrang<strong>in</strong>g this gives,dl 2 idt∣ = 2l i ˙l i = −2 ( ) T ã i − ˜b i S˜b it=0˙l i = 1 l i(˜b i − ã i) T S˜b i = 1 l i((ai × b i ) T ,(b i − a i ) T )( ωvThis gives the jo<strong>in</strong>t rate of each leg as a l<strong>in</strong>ear function of the velocity screw of theplatform. The jacobian J is the matrix satisfy<strong>in</strong>g the formula,⎛⎝⎞ ˙l 1.˙l 6( )⎠ ω= Jv)7


So we see that the rows of this Jacobian matrix are simply,1 ((ai × b i ) T ,(b i − a i ) T ) , i = 1,...,6l iThis is the wrench given by a unit force directed along the i-th leg.Consider a system of spr<strong>in</strong>gs as <strong>in</strong> section 2. Suppose there are just six spr<strong>in</strong>gs.Now it can be shown that the Jacobian associated with the equilibrium position is s<strong>in</strong>gular.To see this consider equations (1) and (2), which def<strong>in</strong>e the equilibrium position,if we arrange th<strong>in</strong>gs so that the equilibrium position is the reference position and henceR = I and t = 0 then the equations become,∑λ i a i × b i = 0iand∑λ i (a i − b i )=0iIn term of the Jacobian for a correspond<strong>in</strong>g Stewart platform, that is, one whose leglengthscorrespond to the lengths of the spr<strong>in</strong>gs, we see that the rows of the Jacobianare l<strong>in</strong>early dependant and hence the matrix is s<strong>in</strong>gular.The forward k<strong>in</strong>ematics problem for a Stewart platform is to determ<strong>in</strong>e the positionand orientation of the platform given the leg-lengths. It is well known that, for a givenset of leg-lengths there are a f<strong>in</strong>ite number of different solutions, <strong>in</strong> general 40. Differentsolutions are referred to as different poses or postures of the platform. Replac<strong>in</strong>gthe legs with spr<strong>in</strong>gs it is clear that the potential function will have the same value <strong>in</strong>each of these poses or postures s<strong>in</strong>ce the function only depends on the lengths of thespr<strong>in</strong>gs. However, we can also see that none of these positions will be m<strong>in</strong>ima of thepotential function s<strong>in</strong>ce we know the stable equilibrium position is unique.5 The Stiffness MatrixThe problems presented <strong>in</strong> the last three sections are well known and have been solvedby many different methods. The advantage of the screw theory methods studied is thatwe can go further and look at higher derivatives.First we note that it is possible to f<strong>in</strong>d the wrench due to the spr<strong>in</strong>gs. In general awrench is a 6-dimensional vector of forces and torques,( )τW =Fwhere τ is a moment about the orig<strong>in</strong> and F is a force. Notice that wrenches are notLie algebra elements but elements of the vector space dual to the Lie algebra. Usuallythe force due to a potential is given by its gradient. The same is true here, <strong>in</strong> termsof the exterior derivative d we have, W = −dΦ. Pair<strong>in</strong>g the wrench with an arbitraryscrew S gives,W (S)=−dΦ(S)=−∂ S Φsee [13, §. 4.20] for example. Hence we have already done the calculations <strong>in</strong> section 2above, the wrench is given by,W =( )∑i λ i a i × (a i − Rb i − t)∑ i λ i (a i − Rb i − t)8


this could, of course, also have been deduced from elementary mechanics.For the spr<strong>in</strong>g systems of section 2 an important object is the stiffness matrix of thesystem. In this section we show how to compute this by tak<strong>in</strong>g the second derivativesof the potential function.An <strong>in</strong>f<strong>in</strong>itesimal displacement of the body is represented by a screw. The wrenchproduced by a displacement s is given by W = Ks, where K is the stiffness matrix.The stiffness matrix is the hessian of the potential function, that is its matrix ofsecond order partial derivatives, see [1, Ch 5]. This is only valid at an equilibriumposition.There have been attempts <strong>in</strong> the <strong>Robotics</strong> literature to extend these ideas to nonequilibriumconfigurations, see for example Griffis and Duffy [4] and Žefran and Kumar[18]. In this work, however, the classical def<strong>in</strong>ition of the stiffness matrix will beused.Now let us write the result above for the wrench as( )Ai 0 )W = ∑λ iIi 3 0(ãi − M ˜b iDifferentiat<strong>in</strong>g this along an arbitrary screw gives,( )(Ai 0 RBi R∂ S W = ∑λ T )+ T I 3 ωiIi 3 0 0 0)(vus<strong>in</strong>g the result of section 2. Hence, we have that the stiffness matrix is,( )∑i λ i (A i RB i R T + A i T ) ∑ i λ i A iK =∑ i λ i (RB i R T + T ) ∑ i λ i I 3This time we choose the orig<strong>in</strong> to be at the po<strong>in</strong>t ∑ i λ i a i and then use the equilibriumcondition 2 to simplify the stiffness matrix to,( )∑i λ i A i RB i R T 0K =0 ∑ i λ i I 3This is a particularly neat result but it is a little surpris<strong>in</strong>g at first sight. The term∑ i λ i I 3 <strong>in</strong> the bottom right corner means that the system has the same stiffness <strong>in</strong> anydirection, irrespective of the stiffness of the <strong>in</strong>dividual spr<strong>in</strong>gs and their arrangement.This is due to the assumption that the spr<strong>in</strong>gs have zero natural length.Now we can return to the problem of f<strong>in</strong>d<strong>in</strong>g the <strong>in</strong>dex of the critical po<strong>in</strong>ts we havefound. For brevity we will just look at which of the critical po<strong>in</strong>ts is a m<strong>in</strong>imum of thepotential energy, that is a stable equilibrium. That is: which of the solutions for R givesa stiffness matrix K with all positive eigenvalues? Notice that three of the eigenvaluesof K are simply ∑ i λ i , and this is positive if the spr<strong>in</strong>g constants λ i are all positive. Sowe just have to look at the eigenvalues of the top-lefthand bock of K. After a littlemanipulation this can be written <strong>in</strong> term of the matrix P or its polar decomposition,∑λ i A i RB i R T = RP T + Tr(RP T )I 3 = R i Q + Tr(R i Q)I 3iHere Tr() represents the trace of the matrix. Now this matrix has the same eigenvectorsas R i Q and hence as Q, remember R i was either the identity or a rotation of π about9


an eigenvector of Q. So let us assume that the eigenvalues of Q are µ 1 , µ 2 and µ 3with correspond<strong>in</strong>g eigenvectors e 1 , e 2 and e 3 . Assum<strong>in</strong>g that R i is a rotation abouteigenvector e i , we can f<strong>in</strong>d the eigenvalues of the matrices by consider<strong>in</strong>g the action onthe eigenvectors e 1 , e 2 and e 3 . The eigenvalues for R 0 Q + Tr(R 0 Q)I 3 are,(2µ 1 + µ 2 + µ 3 ), (µ 1 + 2µ 2 + µ 3 ), and (µ 1 + µ 2 + 2µ 3 )We only need to look at one other matrix s<strong>in</strong>ce the other are just cyclic permutations,the eigenvalues of R 1 Q + Tr(R 1 Q)I 3 are,(2µ 1 − µ 2 − µ 3 ), (µ 1 − 2µ 2 − µ 3 ), and (µ 1 − µ 2 − 2µ 3 )Now there are just two cases to consider, if det(P) > 0 then we can assume that Qis positive-def<strong>in</strong>ite and thus so are all its eigenvalues. In this case it is easy to see thatthe critical po<strong>in</strong>t represented by R 0 will be the m<strong>in</strong>imum. This is the solution R = R p .In the other case det(P) < 0, the classical polar decomposition gives us a positivedef<strong>in</strong>itesymmetric matrix and a reflection. When we multiply these by −1 wegetarotation and a negative-def<strong>in</strong>ite symmetric matrix. That is Q has all negative eigenvalues.If we assume that these eigenvalues have the order<strong>in</strong>g 0 > µ 1 ≥ µ 2 ≥ µ 3 , that is µ 1is the eigenvalue of smallest magnitude, then the matrix, R 1 Q + Tr(R 1 Q)I 3 will haveall positive eigenvalues and hence R 1 corresponds to the m<strong>in</strong>imum of the potential. So<strong>in</strong> general, if det(P) < 0 the m<strong>in</strong>imum solution is given by R = R p R i , where R i is arotation of π about the eigenvector of Q with eigenvalue of smallest magnitude.6 ConclusionsThe concept unify<strong>in</strong>g the three problems we have studied <strong>in</strong> this work is the idea offunctions def<strong>in</strong>ed on the group of rigid body transformations. We have been able to f<strong>in</strong>dthe stationary po<strong>in</strong>ts of the functions and classify these critical po<strong>in</strong>ts. This <strong>in</strong>volves asimple technique of differentiat<strong>in</strong>g along a screw.The results agree with those of Kanatani [7, Chap. 5], his methods were, perhaps,a little more elegant than the above. But the methods used here are more general, wehave found all the critical po<strong>in</strong>ts of the potential function not just the m<strong>in</strong>imum andwith a little more effort we could f<strong>in</strong>d the <strong>in</strong>dex of each of them.These ideas are central to the subject of Morse theory, a field of study which relatesthe critical po<strong>in</strong>ts of functions def<strong>in</strong>ed on a manifold to the topology of the manifolditself. In this case the topology of the manifold, the underly<strong>in</strong>g manifold of the groupSO(3), is well known, and we can use this to say someth<strong>in</strong>g about the critical po<strong>in</strong>t ofour potential function.The problem of the spr<strong>in</strong>gs is a slightly artificial one <strong>in</strong> that we have used spr<strong>in</strong>gswill zero natural length. This simplifies the computations. It is possible to repeat mostof the above analysis us<strong>in</strong>g spr<strong>in</strong>g with a f<strong>in</strong>ite natural length, see [14]. The numberof critical po<strong>in</strong>ts now becomes a very hard problem but will still be constra<strong>in</strong>ed by thetopology of the group.The problem of estimat<strong>in</strong>g a rigid motion from po<strong>in</strong>t data is reasonably realistic.The utility of the estimate will depend on the distribution of error for the measuredpo<strong>in</strong>ts. There are some results on this <strong>in</strong> the literature, see [17]. However, I believethere is much scope for further research <strong>in</strong> this direction.10


We have only had time here to take a brief look at the implications for the Stewartplatform. Certa<strong>in</strong>ly us<strong>in</strong>g the technique of differentiat<strong>in</strong>g along a screw we could workout the acceleration properties of the Stewart platform. However, the usual difficultieson the geometric def<strong>in</strong>ition of a second derivative arise here. In particular circumstancesit is clear what should be done, for example it is not too difficult to f<strong>in</strong>d thedynamics of a Stewart platform, see [15]. Once aga<strong>in</strong>, I believe that the implicationsof the ideas presented here have yet to be fully understood.References[1] V.I. Arnol’d. Geometrical Methods of Classical Mechanics, volume 60 of GraduateTexts <strong>in</strong> Mathematics. Spr<strong>in</strong>ger-Verlag, New York, 1978.[2] R.S. Ball. The Theory of Screws. Cambridge University Press, Cambridge, 1900.[3] M. Greenberg. Lectures on Algebrac Topology. W.A. Benjam<strong>in</strong> Inc., New York,1967.[4] M. Griffis and J. Duffy. Global stiffness modell<strong>in</strong>g of a class of simple compliantcoupl<strong>in</strong>g. Mechanism and Mach<strong>in</strong>e Theory, 28(2):207–224, 1993.[5] B.K.P Horn. Closed-form solution of absolute orientation us<strong>in</strong>g unit quaternions.Journal of the Optical Society of America, A-4:629–642, 1987.[6] R.A. Horn and C.R. Johnson. Matrix Analysis, Cambridge University Press,Cambridge, 1985.[7] K. Kanatani. Geometric Computation for Mach<strong>in</strong>e Vision. Clarendon Press, Oxford,1993.[8] J.K. MacKenzie. The estimation of an orientation relationship. Acta. Cryst., 10,pp. 62–62 1957.[9] J. Milnor. Morse Theory. Pr<strong>in</strong>ceton University Press, New Jersey, 1969.[10] P.A.P. Moran. Quaternions, Harr measure and estimation of paleomagnetic rotation.In J. Gani (ed.), Perspectives <strong>in</strong> Prob. and Stats., pp. 295–301, AppliedProbability Trust, Sheffield 1975.[11] A. Nádas. Least squares and maximum likelihood estimation of rigid motion.IBM Research report, RC6945, IBM, Yorktown Heights, NY, 1978.[12] W.H. Press, S.A. Teukolsky, W.T. Vetterl<strong>in</strong>g and B.P. Flannery. NumericalRecipes <strong>in</strong> C: the art of Scientific comput<strong>in</strong>g 2nd ed. Cambridge University Press,Cambridge, 1992.[13] B.F. Schutz. Geometrical Methods of Mathematical Physics. Cambridge UniversityPress, Cambridge, 1980.[14] J.M. Selig. The Spatial Stiffness Matrix from Simple Stretched Spr<strong>in</strong>gs In Proceed<strong>in</strong>gsof the 2000 IEEE International Conference on <strong>Robotics</strong> and Automation,San Fransisco CA, toappear.11


[15] J.M. Selig and P.R McAree. Constra<strong>in</strong>ed Robot Dynamics II: Parallel Mach<strong>in</strong>esJournal of Robotic Systems, 16, pp.487–498, 1999.[16] G. Wahba. Section on problems and solutions: A least squares estimate of satelliteattitude. SIAM rev, 8, pp.384–385, 1966.[17] G.S. Watson. Statistics of Rotations, In Lecture Notes <strong>in</strong> Mathematics, Spr<strong>in</strong>gerVerlag, 1379, pp.398-413, 1989.[18] M. Žefran and V. Kumar. Aff<strong>in</strong>e connection for the cartesian stiffness matrix.In Proceed<strong>in</strong>gs of the 1997 IEEE International Conference on <strong>Robotics</strong> and Automation,Albuquerque, NM, pages 1376–1381.12

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!