IEEE Transactions on Robotics and Automation 10(4), August 1994, 465-479 FORCE-ASSEMBLY WITH FRICTION Joseph M. Schimmels (1) Michael A. Peshkin (2) ABSTRACT If an admittance control law is properly designed, a workpiece can be guided into a fixture using only the contact forces for guidance (force-assembly). Previously, we have shown that: 1) a space of accommodation control laws that will ensure force-assembly without friction always exists, and 2) as friction is increased, a control law that allows force- assembly can be obtained as long as the forces associated with positional misalignment are characteristic. A single accommodation control law that allows force-assembly at the maximum value of friction can be obtained by an optimization procedure. The single accommodation control law obtained by the optimization procedure, however, is not unique. There exists a space of accommodation control laws that will allow force-assembly at, or below, the value of friction that marginally violates the characteristic forces condition. Here, for the purpose of the accommodation control law design, a set of linear sufficient conditions is used to generate accommodation basis matrices. Any nonnegative linear combination of the accommodation basis matrices that, when combined, yields a positive definite accommodation matrix is guaranteed to provide force-assembly at or below a specified value of friction. (Basis matrices exist only if that specified value of friction is less than the value for which forces are still characteristic.) (1) Department of Mechanical Engineering Marquette University 1515 W. Wisconsin Av. Milwaukee, WI 53233 (2) Department of Mechanical Engineering Northwestern University 2145 Sheridan Rd. Evanston, IL 60208 1.0 Introduction This work addresses one of the most basic current limitations of automated assembly: the failure of an assembly task when part relative positional misalignment occurs. In automated assembly, some form of force control is required to prevent small positional misalignments (that inevitably occur) from leading to excessive contact forces that may damage the parts in contact or the manipulator itself. Previous approaches to force control address contact force regulation without regard to the primary, task level objective of reliable proper assembly. The general topic this paper addresses is force- assembly: the exploitation of the capability for reliable error-corrective assembly inherent in force control. To accomplish force-assembly: 1) relative positional error must be sensed, and 2) any one of many error-reducing motions associated with the sensed error must be executed. Relative positional information is contained in the sensed contact force. The force/torque of contact, in most cases, contains geometrical information unique to a class of relative positional errors. The insertion of a workpiece into a fixture using accommodation (a linear mapping of contact forces to manipulator velocities) has been addressed as a testbed application of force-assembly. Results from the evaluation of force- assembly without friction [6] indicate that contact forces that occur during the insertion of a workpiece into a deterministic, partial fixture can, with the appropriate admittance control law, be used to guide the workpiece into the properly mated position in the fixture. It has been proved that all such fixtures have a non-null space of acceptable nominal velocities Vo and a non- null space of acceptable accommodation matrices A which satisfy the force- assemblability conditions when friction is zero. In [5] an optimization procedure was used to determine the maximum value of friction for which force-assembly is still allowed. The admittance control law returned by the optimization procedure provided in [5] is one that is guaranteed to allow force-assembly at or below the maximum value of friction that the fixture design will allow. This procedure for the design of the control law is particularly useful when the actual coefficient of friction (of materials in contact) is close to the maximum coefficient of friction for force- assembly (determined by workpiece/fixture geometry). The procedure yields a nominal velocity and an accommodation matrix that, if implemented, guarantees force-assembly. The control law obtained from the optimization program, however, is not as useful at values of friction less than the maximum value. Often, the control law returned by the optimization program (which guarantees force-assembly at the maximum coefficient of friction for the workpiece/fixture combination) marginally satisfies some of the force-assembly conditionsÊ at values of friction significantly less than the maximum value. For example, the accommodation matrix returned may be very close to being singular. This only marginally satisfies the positive definite condition on the accommodation matrix, a condition that must be satisfied even when friction is zero. A non-robust motion control law is obtained as a result. A small disturbances in a control law parameter may cause the control law to no longer provide force-assembly even at zero friction. Here, a procedure for the design of the space of motion control laws that satisfy a set of sufficient conditions for force-assembly is presented. In this approach, a space of acceptable nominal velocities Vo and a space of acceptable accommodation matrices A(m) are generated. The nominal velocities and accommodation matrices associated with these spaces ensure force-assembly for any value of friction less than the value of friction, m, used to generate these spaces. In all fixture/workpart examples evaluated, these spaces are non-null if the value of friction used is less than or equal to the maximum value at which forces are characteristic. 2.0 Space of Acceptable Admittance Control Laws The design of the space of admittance control laws that guarantee force- assembly with friction is addressed. The optimization procedure in [5] for the design of the manipulator control law by maximizing the value of friction that will still allow force-assembly provides a single control law (a single vo, A combination) as output. Here, an alternate approach is presented in which a space of acceptable nominal velocities Vo and a space of acceptable accommodation matrices A(m) are generated. The construction the spaces Vo and A(m) is similar to that used to construct the space of nominal velocities and accommodation matrices when friction is zero [6]. Similar to the frictionless case, a set of simplified sufficient conditions are generated from the set of necessary and sufficient conditions for force-assembly with friction (from the conditions for force-assembly with friction identified in [5]). These sufficient conditions for force-assembly with friction are simplified and separated into four types: 1) linear conditions on the nominal velocity vo; 2) linear conditions on the accommodation matrix A; 3) nonlinear conditions on the accommodation matrix A; and 4) nonlinear conditions on the coefficient of friction m. 2.1 Sufficient Conditions for Force-Assembly with Friction The separation and simplification of the conditions is outlined in Appendix A for a general three-fixel planar fixture ; the spatial six-fixel case is similar. The results are summarized below. 2.1.1 Linear Conditions on the Nominal Velocity The sufficient conditions on vo for force-assembly with friction are exactly the same as the sufficient conditions on vo for force-assembly without friction [6]. A nominal velocity vo is in the space Vo of nominal velocities which satisfy the force-assembly conditions (i.e. vo Î Vo) if: WT vo < 0 (1) 2.1.2 Linear Conditions on the Accommodation Matrix The single-point contact force-assembly conditions are used to generate a set of linear conditions on the accommodation matrix A. The linear sufficient conditions on the accommodation matrix are listed in Appendix A. The linear conditions are expressed in the following compact notation similar to the compact notation used in [6]. G\O(m,T) A ² 0 (2) where: A is the vector representation of the accommodation matrix; described in Appendix A and in [6]. G\O(m,T) is the rN2 ´ N2 matrix (where r is the number of wrenches used to span the wrench friction cone and N is the degrees of freedom; the matrix is 18 ´ 9 for planar fixtures, 144 ´ 36 for spatial fixtures) for which each row is obtained by the Kronecker product [3] of the vectors which pre- and post-multiply the accommodation matrix in each one of the force-assembly with friction single-point contact cases. This matrix for the planar case is listed in Appendix A. As in the frictionless case, Equation 2 represents conditions that define a polyhedral convex cone in N2 dimensional space. The "strung-out" accommodation matrices that satisfy Equation 2 are in the interior of the polyhedral convex cone. 2.1.3 Nonlinear Condition on the Accommodation Matrix As demonstrated in Appendix A, the nonlinear condition on the accommodation matrix for force-assembly with friction is the same as that for force-assembly without friction. The accommodation matrix must be positive definite. A > 0 (i.e. A is positive definite) (3) An accommodation matrix A is in the space A(m) of accommodation matrices which satisfy the force-assembly with friction conditions (i.e. A Î A(m)) if both Equations 2 and 3 are satisfied. In other words, the space A(m) is the intersection of the polyhedral convex cone in N2 dimensional space (defined by the conditions in Equation 2) with the convex cone in N2 dimensional space associated with a positive definite matrices. 2.1.4 Nonlinear Conditions on the Coefficient of Friction As demonstrated in Appendix A, the simplification of the conditions of force-assembly with friction yields explicit conditions on the coefficient of friction alone. These conditions are: Det (KWT) Det (K\O(W,~)) > 0 " K\O(W,~) ÎÊK{W}e (4) where K is the set of all fixels (i.e., K = {1, 2, 3} for the planar case) and each column of K\O(W,~) is a linear combination the normal wrench and the tangential wrench (both of which are dictated by the geometry of the workpiece/fixel contacts). The relationship between the relative contribution of the normal wrench and the relative contribution of the tangential wrench is dictated by the coefficient of friction m. Although derived differently, this condition is a necessary condition for characteristic forces [5]. 3.0 Design of the Manipulator Admittance Control Law For the purpose of designing the control law, the spaces (Vo and A(m)) of nominal velocities vo and accommodation matrices A which confer force- assemblability on a given fixture are characterized. The conditions used as constraints in the optimization procedure of [5] are the set of nonlinear necessary and sufficient conditions for force-assembly with friction. Equations 1 Ð 4 are the set of sufficient conditions for force-assemblability with friction. Either set is useful as a tool in evaluating whether a particular vo and a particular A satisfy the force-assemblability conditions with friction. Neither one, however, is useful as a tool for the design of a motion control law. Each is limited by the fact that a search is required to find any vo and any A that will satisfy these conditions. The spaces Vo and A(m) can be fully described by a linear combination of "basis vectors". These basis vectors span the space of conditions for force- assembly with friction. They are useful as design tools since their use eliminates the need to search for a solution to the force-assembly conditions. 3.1 Basis Vectors in Vo The space Vo of nominal velocities satisfying the force-assembly conditions (Equation 1) is fully described through the use of a set of basis vectors which span Vo. Any positive linear combination of the basis vectors is in Vo. The construction of the these basis vectors has been presented in [6]. A complete set of independent basis vectors in Vo is obtained from the following operation: Bv = Ð (WT)-1 IN (5) where: IN is the N´N identity matrix. and Bv is the N´N matrix for which each column provides an independent basis vector in the space Vo. Bv = [bv1 bv2 . . . bvN]. 3.2 Basis Vectors in A(m) Similar to the case without friction, the space of accommodation matrices satisfying the force-assembly conditions with friction A(m) (i.e. the space of accommodation matrices that satisfies Equations 2 and 3) is fully described through the use of basis matrices which span the linear conditions on A. Nonnegative linear combinations of the basis matrices which yield positive definite A are in A(m). The construction of the basis matrices for force- assembly with friction is, however, quite different from the construction of the basis matrices for force-assembly without friction. The generation of the basis matrices that span the linear conditions on the accommodation matrix for force-assembly with friction is complicated by the fact that there are more linear inequalities than there are dimensions in the space of design variables. There are rN2 linear conditions (where r is the number of wrenches used to span the wrench friction cone and N is the degrees of freedom) on an N2 dimensional accommodation matrix space. Recall that, in the frictionless case, the number of linear conditions on the accommodation matrix (N2 conditions) is equal to the dimension of the accommodation matrix space (an N2 dimensional space). The spanning vectors, for the frictionless case, are obtained simply by inverting the matrix of linear conditions GT. In the case with friction, however, the matrix of linear conditions G\O(m,T) is not invertible because there are more conditions than the number of dimensions. The conventional approach [1] to solving sets of linear inequalities of this kind (transformed to the context of the fixturing problem) is to: 1) choose (in all possible ways) a subset of N2 Ð 1 linearly independent rows of the set of rN2 inequalities in G\O(m,T); 2) for each subset, find a vector (if one exists) that will satisfy the N2 Ð 1 inequalities as equalities (gij A = 0) and satisfy the remaining set of (rÊÐÊ1)N2 + 1 as inequalities (gij A ² 0). Each non-trivial solution vector is an edge of the polyhedral convex cone in the space of the "strung-out" accommodation matrices that satisfy the linear conditions on the A matrix. Each edge corresponds to an accommodation basis matrix. Nonnegative linear combinations of these basis matrices that yield positive definite A define the space of accommodation matrices A(m) that confer force-assembly to a fixture at coefficient of friction m. The number of N2 Ð 1 subsets of the set of rN2 inequalities, however, is very large. The total number of combinations Y to be considered using this procedure is: Y = \F((rN2)!,(N2Ð1)! ((rÐ1)N2+1)!) (6) The number of combinations that must be considered for the planar fixturing problem is: Y = \F(18!,8! 10!) = 43758 The number of combinations that must be considered for the spatial fixturing problem is: Y = \F(144!,35! 109!) = 4.06(10)35 3.2.1 Decomposition of the Linear Conditions on A The conventional approach yields a prohibitively large number of combinations to be considered, particularly in the spatial case. In evaluating the conventional approach for the selected combinations of the planar case, however, a pattern was observed. A large portion of the Y possible combinations yield no basis matrix and another very large portion yield redundant basis matrices (basis matrices obtained from other combinations). As a result of simplifications based on these observations, the system of linear inequalities could be decomposed into N subsystems of inequalities each having rN conditions on a N-dimensional space. For the planar case, then, the 18 conditions on the 9-dimensional accommodation matrix space can be decomposed into 3 sets of 6 conditions each on a 3-dimensional accommodation vector subspace. The decomposition of the linear conditions on the accommodation matrix for a simple two degree of freedom planar case is illustrated below. Given the eight linear conditions on the four dimensional space of the accommodation matrix: G\O(m,T) A = \B\BC\[(\A\CO1\VS2\HS7(Ðw1T ´ w1ÐT, w1T ´ w2ÐT, w2T ´ w1ÐT,Ðw2T ´ w2ÐT,Ðw1T ´ w1+T, w1T ´ w2+T, w2T ´ w1+T,Ð w2T ´ w2+T))] A ² 0 (4) where: A in this case is a 4 element accommodation vector. The conventional approach for finding the set of basis matrices that will span the solution of the linear conditions is to select 3 inequalities and solve them as equalities (in the gij A = 0 form), then determine whether there exists a non-trivial solution that will satisfy the remaining conditions as inequalities. In proceeding in the conventional approach to solving systems of linear inequalities, it was observed that some combinations of conditions yield basis matrices and others do not. A particular pattern was observed in those combinations that do not yield basis matrices. The observations are summarized below and an example that illustrates the observations follows: 1. Those combinations of the conditions that are to be satisfied as equalities for which all three of the conditions had either only ±w1 or only ±w2 as the first matrix in the Kronecker product (8 of the 56 combinations; Y = 56 for this 2 DOF case) are not linearly independent. A property of the Kronecker product is that the rank of matrix D = B ´ C is given by rank(D) = rank(B) rank(C) [3]. Therefore, if a matrix D can be written in the form D = B ´ C where B is a 1´2 matrix of rank 1 (B = w1 or B = w2) and C is 3´2 matrix of rank 2, then matrix D is a 3´4 matrix of rank 2. Also recall (from Goldman and Tucker [1] and from Section 3.2 above) that edges are obtained by choosing a subset of N2 - 1 linearly independent row vectors of G\O(m,T). These combinations, therefore, do not yield basis vectors. 2. All other combination of the conditions that are to be satisfied as equalities have either two conditions with ±w1 as the first matrix in the Kronecker product (24 of the remaining 48 combinations) or two conditions with ±w2 as the first matrix in the Kronecker product (the other 24 of the remaining 48 combinations). In these situations, two of the three conditions that are selected to satisfy the conditions as equalities can be written in the form D = B ´ C where B is a 1´2 matrix of rank 1 (B = w1 or B = w2) and C is 2´2 matrix of rank 2, then matrix D is a 2´4 matrix of rank 2. (C must be rank 2 to satisfy the nonlinear conditions on the coefficient of friction given in Equation 4.) The fact that C is full rank, dictates that any other conditions that involve B as the first matrix in the Kronecker product are also induced to satisfy the equality condition imposed. Therefore, any row with B as the first matrix in the Kronecker product is in the null space of the solution. This, in effect, reduces the system of rN2 linear inequalities on an N2 dimensional space into N systems of rN inequalities on an N dimensional subspace and greatly reduces the number of combinations that need be considered, Z. Z = N \F((rN)!,(NÐ1)! ((r-1)N+1)!) (7) The number of combinations for the 2 DOF planar fixturing problem is reduced from 56 to: Z = 2 \F(4!,1! 3!) = 8 The number of combinations for the planar fixturing problem is reduced three orders of magnitude from 43758 to: Z = 3 \F(6!,2! 4!) = 45 The number of combinations that must be considered for the spatial fixturing problem is reduced 30 orders of magnitude from 4.06(10)35 to: Z = 6 \F(24!,5! 19!) = 255024 The observations summarized above are illustrated below for a specific example. For the normal wrench matrix and tangential wrench matrix given by: W = [w1 w2] = \B\BC\[(\A\CO2\VS5\HS7(1,0,0,1))] (8) \O(W,^) = [\O(w,^)1 \O(w,^)2] = \B\BC\[(\A\CO2\VS5\HS7(0,1,1,0)) ] (9) and coefficient of friction of 0.25, the wrenches that span the friction cone, {C}\O(W,*), [5] are: {1}\O(W,*) = [w1Ð w1+ ] = [w1 \O(w,^)1] \B\BC\[(\A\CO2\VS5\HS10(1,1,Ðm,m)) ] = \B\BC\[(\A\CO2\VS5\HS10(1,1,-0.25,0.25)) ] (10) {2}\O(W,*) = [w2Ð w2+ ] = [w2 \O(w,^)2] \B\BC\[(\A\CO2\VS5\HS10(1,1,Ðm,m)) ] = \B\BC\[(\A\CO2\VS5\HS10(- 0.25,0.25,1,1)) ] (11) Then the linear conditions on the accommodation matrix are expressed as: G\O(m,T) A = \B\BC\[(\A\CO1\VS2\HS7(Ðw1T ´ w1ÐT, w1T ´ w2ÐT, w2T ´ w1ÐT,Ðw2T ´ w2ÐT,Ðw1T ´ w1+T, w1T ´ w2+T, w2T ´ w1+T,Ðw2T ´ w2+T))] A ² 0 (12) = \B\BC\[(\A\CO4\VS2\HS7(-1,0.25,0,0, -0.25,1,0,0, 0,0,1,-0.25, 0,0,0.25,-1, -1,-0.25,0,0, 0.25,1,0,0, 0,0,1,0.25, 0,0,-0.25,- 1))] \B\BC\[(\A\CO1\VS3\HS7(a11,a12,a21,a22))] ² \B\BC\[(\A\CO1\VS2\HS7(0,0,0,0,0,0,0,0))] In the context of a general 2 DOF example, observation 1 states that, in any combination of the three rows that are selected to satisfy the equalities, if all three rows can be expressed as the Kronecker product of a single row vector with a matrix, then the three rows are not linearly independent. If the rows selected to satisfy the conditions as equalities are not linearly independent, the combination does not yield edges of the polyhedral convex cone [1]. To illustrate the observation that the Kronecker product of a single row vector with a matrix having N+1 rows is linearly dependent, rows 1, 2, and 5 of G\O(m,T) are selected. The linear dependence of matrix M of N2-1 rows of G\O(m,T) is obvious in this example, the rank of M is 2: M = \B\BC\[(\A\CO4\VS5\HS10(-1,0.25,0,0, -0.25,1,0,0,-1,- 0.25,0,0))] In the context of a general N DOF example, any matrix M that is composed of N2-1 rows of G\O(m,T) for which any subset of N+1 rows is the Kronecker product of a single row vector multiplying any other matrix will not be linearly independent. The sets of row combinations S for which this is true in this 2 DOF example is: S = {{1,2,5}, {1,2,6}, {1,5,6}, {2,5,6}, {3,4,7}, {3,4,8}, {3,7,8}, {4,7,8}} In the context of a general 2 DOF example, observation 2 states that, in all cases for which observation 1 does not apply, two of the three rows of G\O(m,T) selected to satisfy the constraints as equalities (as gij A = 0) can always be expressed in the form of a Kronecker product of a single row vector with a full rank matrix. As a result, all rows involving the Kronecker product of the same vector with any other vector is in the null space of the solution. Therefore, all combinations involving two rows with w1 as the first matrix of the Kronecker product yield the same edges of the polyhedral convex cone. Likewise, all combinations involving two rows with w2 as the first matrix of the Kronecker product yield the same edges of the polyhedral convex cone. To illustrate this observation, the evaluation of the edges a polyhedral convex cone for two combinations of three rows selected to satisfy the conditions as equalities is provided below. The first combination of selected rows is S = {1, 2, 7} and the following equality is imposed: \B\BC\[(\A\CO4\VS5\HS10(-1,0.25,0,0, -0.25,1,0,0, 0,0,1,0.25))] \B\BC\[(\A\CO1\VS3\HS7(a11,a12,a21,a22))] = \B\BC\[(\A\CO1\VS3\HS7(0,0,0))] The one dimensional infinite number of solutions is given by: a11 = a21 = 0 a22 = Ð 4 a21 which are then substituted into the remaining 5 rows to determine whether a non trivial solution to the inequalities exists. The substitution yields: row 3: Ð \F(1,4) a22 Ð \F(1,4) a22 ² 0 Þ a22 > 0 row 4: \F(1,4) \B\BC\((Ð \F(1,4) a22) Ð a22 ² 0 Þ a22 > 0 row 5: 0 + 0 ² 0 Þ a22 arbitrary row 6: 0 + 0 ² 0 Þ a22 arbitrary row 8: Ð \F(1,4) \B\BC\((Ð \F(1,4) a22) Ð a22 ² 0 Þ a22 > 0 The set of linear inequalities is satisfied, then, for any positive value of a22. An edge of the polyhedral convex cone in the accommodation vector space (a basis vector) is any positive multiple of: bA1 = [ 0 0 Ð1 4]T This edge, however, is not obtained uniquely. Other combinations of three selected rows yield the same edge or basis accommodation vector. If the set of rows S = {1, 5, 7} is chosen, the following equality is imposed: \B\BC\[(\A\CO4\VS5\HS10(-1, 0.25,0,0,-1,-0.25,0,0, 0,0,1,0.25))] \B\BC\[(\A\CO1\VS3\HS7(a11,a12,a21,a22))] = \B\BC\[(\A\CO1\VS3\HS7(0,0,0))] The same one dimensional infinite number of solutions is obtained: a11 = a21 = 0 a22 = Ð 4 a21 which ultimately yields the same basis vector. In fact, all combinations that: 1) involve two rows in which w1 is the first matrix in the Kronecker product, and 2) includes row 7, yield the same basis vector. The sets which yield the same basis vector given above are: S = {{1,2,7}, {1,5,7}, {1,6,7}, {2,5,7}, {2,6,7}, {5,6,7}} The same behavior is observed for all combinations that involve two rows of w1 (or w2) as the first matrix of the Kronecker product and any other row that involves w2 (or w1) as the first matrix of the Kronecker product. This indicates that there are separate subspaces associated with each wrench that is the first matrix in the Kronecker product. In other words, each edge is in the null space of all but one of the N subspaces. As a consequence of this observation, the solution to finding edges of a polyhedral convex cone in N2 dimensional space can be decomposed into the solution of finding edges of N different polyhedral convex cones each in an N dimensional space. As a result, and as stated previously (Equation 7), this greatly reduces the number of row combinations to consider. The decomposition of the linear conditions on the accommodation matrix into linear conditions on subspaces of the accommodation matrix is conducted by first separating the conditions into the appropriate subspace. In this example, all combinations of conditions having two rows of w1 as the first matrix in the Kronecker product are grouped into one category and all combinations of conditions having two rows of w2 as the first matrix in the Kronecker product are grouped into another category. The following subsection addresses the generation of basis vectors in each subspace. 3.2.2 Edges in the Subspaces of A In each of the N subspaces of the N dimensional fixturing problem there are rN linear inequalities. In the 2 DOF problem of above, the 8 linear conditions on the 4 dimensional accommodation matrix are decomposed into 4 linear conditions on each of 2 different 2 dimensional subspaces. First note that, with some rearranging, the linear conditions on the accommodation vector can be written as: G\O(m,T) A = \B\BC\[(\A\CO1\VS3\HS7(w1T ´ \B\BC\[(\A\CO1\VS3\HS7(Ðw1ÐT, w2ÐT,Ðw1+T, w2+T))],w2T ´ \B\BC\[(\A\CO1\VS3\HS7( w1ÐT,Ðw2ÐT, w1+T,Ðw2+T))]))] A ² 0 (10) or more generally and more compactly: G\O(m,T) A = \B\BC\[(\A\CO1\VS3\HS7(w1T ´ {1}L,w2T ´ {2}L,. . . ,wNT ´ {N}L))] A ² 0 (11) where: {i}L is the matrix that corresponds to the rN linear conditions on the accommodation vector subspace associated with wiT (wiT is the first matrix of the Kronecker product.) This matrix consists of rows that correspond to all rN edges of the friction cone wrenches (the transpose of K\O(W,*) from [5]) with sign changes on selected rows. Each subspace is associated with a particular wrench as the first matrix of the Kronecker product. The separated conditions on the accommodation vector subspaces are: {i}L {i}a ² 0 (12) where: {i}a is the subspace of the accommodation vector space that addresses error-reduction associated with fixel i. In other words, this subspace must have the property that: 1) when contacting fixel i, contact is maintained with fixel i, and 2) when contacting any other fixel, the resulting velocity causes motion toward fixel i. {i}L is defined in Equation 11 above. The separated conditions for this 2 DOF example are: {1}L {1}a ² 0 (13) {2}L {2}a ² 0 (14) The 4 conditions on each subspace are evaluated to find the edges of the polyhedral convex cone in each subspace. The edges of the subspace are obtained using the approach of Goldman and Tucker [1] outlined above. Use of this procedure in this example involves selecting (in all possible ways) a single row (N-1 rows in the general fixturing problem) and solving it as an equality, then determining whether there exists a non-trivial solution that will satisfy the remaining 3 (rN - 1 in general) inequalities. If a non- trivial solution exists, any positive multiple of this solution is one of the edges of the polyhedral convex cone in the corresponding subspace of the accommodation matrix space that addresses error-reduction associated with fixel i. A general approach for evaluating the edges for each accommodation matrix subspace that lends itself to numerical solution is outlined below. 1. For each accommodation vector subspace {i}a, generate the matrix {i}L that multiplies {i}a (e.g. one of the 4´2 matrices in Equations 13 and 14). The matrix {i}L consists of all rN edges of the friction cone wrenches (the transpose of K\O(W,*) where K corresponds to all fixels of the fixture) with sign changes on selected rows. In each subspace, sign changes are required on those friction cone wrenches that are associated with fixel i for the accommodation vector space {i}a so that the conditions on the A and {i}a are equivalent. For example, the {1}L matrix of Equation 13 is {1,2}\O(W,*)T with sign changes on w1Ð and w1+ because error-reduction associated with fixel 1 is addressed. 2. For each combination of N-1 rows that are satisfied as equalities in the evaluation of edges on the accommodation vector subspace, generate matrix {i}M, a N´N matrix whose first N-1 rows are those selected rows of {i}L that are to satisfy N-1 conditions as equalities and the last row is any other row of {i}L that must satisfy the condition as an inequality. 3. This matrix {i}M is then inverted and multiplied by a column vector whose first N-1 elements are zeros and the last element is Ð1. The resulting vector p satisfies the N-1 equality conditions and at least one of the inequality conditions. 4. The matrix {i}L is then multiplied by the solution vector p. The vector o obtained is evaluated to determine whether all elements are nonpositive. If all elements of o are nonpositive, then vector p is an edge of the polyhedral convex cone associated with the corresponding accommodation vector subspace {i}a. This procedure for generating the edges of the accommodation vector subspace associated with error-reduction for fixel 1 is illustrated below for the specific 2 DOF example identified in Equations 8-11. 1. First, the matrix {1}L of transposed wrenches (with sign changes) that span the friction cone for each fixel is given by: {1}L = \B\BC\[(\A\CO1\VS3\HS7(Ðw1ÐT, w2ÐT,Ðw1+T, w2+T))] = \B\BC\[(\A\CO2\VS3\HS7(Ð1,0.25,Ð0.25,1,Ð1,Ð 0.25,0.25,1))] 2. Next, the first of the four {1}M matrices is generated. The first row of {1}M is the first row of {1}L. The second row of {1}M can be any of the other three rows; if the second row of {1}L is chosen, {1}M is: {1}M = \B\BC\[(\A\CO1\VS3\HS7(Ðw1ÐT, w2ÐT))] = \B\BC\[(\A\CO2\VS3\HS7(Ð1,0.25,Ð0.25,1))] 3. Then, a possible edge of the polyhedral convex cone in this subspace is: p = ({1}M)-1 \B\BC\[(\A\CO1\VS3\HS7( 0,-1))] = \B\BC\[(\A\CO2\VS3\HS7(Ð1.067,0.267,Ð0.267,1.067))] \B\BC\[(\A\CO1\VS3\HS7( 0,-1))] = \B\BC\[(\A\CO1\VS3\HS7(-0.267,-1.067))] 4. Next, this possible edge is evaluated to determine whether all the conditions on the subspace are satisfied: o = {1}L p = \B\BC\[(\A\CO2\VS2\HS7(Ð1,0.25,Ð 0.25,1,Ð1,Ð0.25,0.25,1))] \B\BC\[(\A\CO1\VS2\HS7(-0.267,-1.067))] = \B\BC\[(\A\CO1\VS2\HS7(0,-1,0.533,-0.133))] Since at least one of the elements of o is positive, then vector p is not an edge of the polyhedral convex cone associated with the corresponding accommodation vector subspace {1}a. The other possible edges of the accommodation vector subspace associated with fixel 1 are evaluated by repeating items 2 through 4 with the other rows satisfying the conditions as equalities (different {1}M matrices). The results of the evaluation of all the possible edges of the polyhedral convex cone in the subspace {1}a for this example are listed in Table 1. The edges of subspace {1}a are positive multiples of the two basis vectors in this subspace: {1}Ba = [ {1}ba1 {1}ba2 ] = \B\BC\[(\A\CO2\VS3\HS7(0.267,0.941,Ð 1.067,Ð0.235))] Table 1 Summary of the Results in the Evaluation of Possible Edges of {1}a The edges of the other accommodation vector subspace (associated with error-reduction for fixel 2) are obtained by the same procedure. First the matrix {2}L of transposed wrenches (with sign changes) that span the friction cone for each fixel (item 1) is generated, then items 2 through 4 are repeated for the different {2}M matrices. Results are summarized in Table 2. The edges of subspace {2}a are positive multiples of the two basis vectors of this subspace: Table 2 Summary of the Results in the Evaluation of Possible Edges of {2}a {2}Ba = [ {2}ba1 {2}ba2 ] = \B\BC\[(\A\CO2\VS3\HS7(Ð0.267,Ð 0.941,1.067,0.235))] Edges (i.e. nontrivial solutions to the set of inequalities) can be obtained for all accommodation vector subspaces (i.e. " {i}a, i = 1,...,N) if the coefficient of friction is less than the maximum value that satisfies the nonlinear conditions on the coefficient of friction (i.e. satisfies Equation 4). A detailed discussion of this topic is located in Section 4.1 which addresses the existence of nontrivial accommodation basis matrices. 3.2.3 Basis Vectors of A The edges of each accommodation vector subspace {i}a are used to obtain the basis matrices of A(m). The N dimensional edges of the accommodation vector subspaces are transformed into N2 dimensional basis vectors that are the vector equivalents of the basis accommodation matrices. This transformation is conducted by subspace. The transformation of the edges that span one accommodation vector subspace {i}a is different from the transformation of the edges that span a different accommodation vector subspace {j}a. For a specified subspace {i}a the transformation of an N dimensional edge of the accommodation vector subspace to an N2 dimensional edge of the accommodation vector subspace is: {i}bAj = Ð bvi ´ {i}baj (15) where: {i}bAj is the N2 dimensional edge of the accommodation vector space. {i}baj is the N dimensional edge of the accommodation vector subspace. bvi is the ith basis vector in the N dimensional space of nominal velocities. This result is a consequence of the observation that the linear conditions on the accommodation matrix can be written as a Kronecker product in the form: G\O(m,T) A = \B\BC\[(\A\CO1\VS2\HS7(w1T ´ {1}L,w2T ´ {2}L, . . .,wNT ´ {N}L))] A ² 0 (11) and the use of the following property of the inversion of a Kronecker product [3]: (B ´ C)-1 = B-1 ´ C-1 (16) The basis accommodation matrices for the example 2 dimensional fixturing problem are obtained by the following procedure: First, the nominal velocity basis vectors are calculated using the procedure developed in [6]: Bv = [ bv1 bv2] = Ð (WT)-1 (17) = \B\BC\[(\A\CO2\VS3\HS7(Ð1,0,0,Ð1))] Then, each of the four accommodation basis vectors is calculated by the following operation: {1}bA1 = Ð bv1 ´ {1}ba1 (15) = Ð \B\BC\[(\A\CO1\VS3\HS7(Ð1,0))] ´ \B\BC\[(\A\CO1\VS3\HS7(0.267,Ð1.067))] = \B\BC\[(\A\CO1\VS3\HS7(0.267,-1.067,0,0))] The matrix BA(m) is composed of all the accommodation basis vectors that satisfy the linear conditions for force-assembly at (or below) a particular value of friction, m. BA(m) = [ {1}bA1 {1}bA2 . . . {N}bAj] (17) where: BA(m) is the N2 ´ L matrix consisting of the L basis accommodation vectors calculated using Equation 15. The set of all basis accommodation vectors for this example are the columns of BA(0.25). BA(0.25) = [ {1}bA1 {1}bA2 {2}bA1 {2}bA2] (18) = \B\BC\[(\A\CO4\VS3\HS7(0.267,0.941,0,0,Ð1.067,Ð 0.235,0,0,0,0,Ð0.267,Ð0.941,0,0,1.067,0.235))] The validity of each accommodation basis vectors can be checked by multiplying matrix G\O(0.25,T) by matrix BA(0.25). This multiplication yields: \B\BC\[(\A\ O4\VS3\HS7 -1,0.25,0,0, -0.25,1,0,0, 0,0,1,-0.25, 0,0,0.25,-1, -1,-0.25,0,0, 0.25,1,0,0, 0,0,1,0.25, 0,0,-0.25,- 1))] \B\BC\[(\A\C 4\VS3\HS7(0. 67,0.941,0,0,- 1.067,- 0.235,0,0,0,0 -0.267,- 0.941,0,0,1.0 7,0.235))] = \B\BC\[(\A\CO4\VS3\HS7(-0.533,-1,0,0,-1.133,- 0.470,0,0,0,0,-0.533,-1,0,0,-1.133,-0.470,0,-0.882,0,0,-1,0,0,0,0,0,0,- 0.882,0,0,-1,0))] Since all elements of the resulting matrix are nonpositive, the basis accommodation vectors of BA(0.25) correspond to matrices that will satisfy the linear conditions of force-assembly with friction (for the value of friction considered, m = 0.25). The set of basis matrices is obtained by reversing the "stringing-out" process for each of the basis accommodation vectors. The basis accommodation matrices for this example are positive multiples of the matrices that correspond to columns of BA(0.25) or to positive multiples of the following matrices: A1 = \B\BC\[(\A\CO2\VS3\HS7(1,-4,0,0))] A2 = \B\BC\[(\A\CO2\VS3\HS7(4,-1,0,0))] A3 = \B\BC\[(\A\CO2\VS3\HS7(0,0,-1,4))] A4 = \B\BC\[(\A\CO2\VS3\HS7(0,0,-4,1))] 3.3 Positive Definite A from a Set of Basis Vectors In subsection 3.2 above, a procedure to find a set of basis accommodation matrices was outlined. These basis matrices span the linear conditions on A for force-assembly with friction. Nonnegative linear combinations of the basis matrices which also yield positive definite A are in the space of acceptable accommodation matrices, A(m). Below, a systematic procedure for obtaining a positive definite accommodation matrix (A > 0) from a nonnegative linear combination of the accommodation basis matrices is outlined. The basis accommodation matrices that satisfy the linear conditions for force- assembly each has a rank of one. (This is true for the basis matrices of a fixturing problem of any dimension.) Each matrix, then, is positive semidefinite at best. No individual basis matrix can satisfy the nonlinear condition (A > 0) because a necessary requirement for positive definiteness is that the matrix must be full rank (i.e. rank A = N). The objective of this subsection is to identify a criterion whose satisfaction insures that a nonnegative linear combination of the positive semidefinite basis matrices yields a positive definite accommodation matrix. This criteria is expressed as: A = \O(\O(S,L),i=1) ai Ai > 0 (19) where: Ai is a basis accommodation matrix. ai is the nonnegative scalar that multiplies the ith basis accommodation matrix. L is the number of basis accommodation matrices. As a first step toward satisfying this objective, a sufficient linear condition for positive semidefiniteness is identified. A restrictive sufficient condition for a symmetric matrix to be positive semidefinite is dominance [8]. Dominance is described as: A real symmetric matrix is said to be dominant if each of its main diagonal elements is not less than the sum of the absolute values of all other elements in the same row (or column). A more restrictive condition is placed on the accommodation matrix, however. The accommodation matrix must be positive definite, not just positive semidefinite. This is satisfied if the dominance condition is similarly restricted. A restrictive condition for a symmetric matrix to be positive definite is strict dominance. Strict dominance is described as: A real symmetric matrix is said to be strictly dominant if each of its main diagonal elements is greater than the sum of the absolute values of all other elements in the same row (or column). Note, however, that this condition is not immediately applicable to the basis matrices generated above since the basis matrices are, in general, not symmetric. A nonsymmetric matrix can be decomposed into a symmetric matrix and an skew-symmetric (or antisymmetric) matrix [7] by the following operation: K = K(s) + K(a) (20) = \F(K + KT,2) + \F(K Ð KT,2) The definition of positive definite [7] requires that the matrix K, in the quadratic form, yields a positive number (for any vector). The mathematical expression is: xT K x > 0 " x ­ 0 (21) For nonsymmetric matrices: xT K x = xT (K(s) + K(a)) x > 0 " x ­ 0 (22) = xT K(s) x + xT K(a) x > 0 " x ­ 0 Since, it can be shown that the quadratic form of a skew-symmetric matrix yields zero (i.e., xT K(a) x = 0, " x), an equivalent expression is: xT K x = xT K(s) x > 0 " x ­ 0 (23) Therefore, if the symmetric part of a nonsymmetric matrix is positive definite, then the original nonsymmetric matrix is positive definite. The evaluation of positive definiteness for the basis matrices generated for the example used throughout this chapter is illustrated below. First, the symmetric portion of each basis accommodation matrix is given as: A(s)1 = \B\BC\[(\A\CO2\VS3\HS7(1,-2,-2,0))] A(s)2 = \B\BC\[(\A\CO2\VS3\HS7(4,-0.5,-0.5,0))] A(s)3 = \B\BC\[(\A\CO2\VS3\HS7(0,-0.5,-0.5,4))] A(s)4 = \B\BC\[(\A\CO2\VS3\HS7(0,-2,-2,1))] From the definition of dominance given above, no basis matrix by itself is dominant. The symmetric portion of basis matrices 2 and 3 (A(s)2 and A(s)3) satisfy the dominance condition on one row (or one column) but not the other. The symmetric portion of basis matrices 1 and 4 (A(s)1 and A(s)4) do not satisfy the dominance condition on any of the rows (or columns). Those basis matrices for which the dominance condition is not satisfied on any row are discarded (i.e. aj = 0 for all matrices "j" for which the dominance condition is not satisfied on any row). Basis accommodation matrices 2 and 3 can be combined to form a strictly dominant matrix. If the combination is given by: A(s)23 = a2 \B\BC\[(\A\CO2\VS3\HS7(4,-0.5,-0.5,0))] + a3 \B\BC\[(\A\CO2\VS3\HS7(0,-0.5,-0.5,4))] Then, the conditions of strict dominance are: 4 a2 > 0.5 a2 + 0.5 a3 Þ 0 < a3 < 7 a2 4 a3 > 0.5 a2 + 0.5 a3 Þ 0 < a2 < 7 a3 An equal contribution of basis matrix 2 and basis matrix 3 (a2 = a3 = 1; a1 = a4 = 0) satisfies the above conditions and yields the following positive definite matrix: A(s)23 = \B\BC\[(\A\CO2\VS3\HS7(4,-1,-1,4))] In this example, the basis matrices (before generating the symmetric portion) each had the special form of only one row with nonzero elements. This desirable special form, however, is not obtained in all cases. This special form is desirable because it, in effect, reduces the number of matrices that may provide a nonzero contribution to any given element. The symmetric portion of each accommodation basis matrix in this form contains, at most, 2N-1 nonzero elements. The maximum number of matrices that may provide any contribution to a given diagonal element is reduced from rN (if all conditions of G\O(m,T) yield a basis matrix) to r (only those basis matrices that were obtained from the {i}a subspace can have a nonzero ith diagonal element in the accommodation matrix) if the matrices are put in the desired form. The maximum number of matrices that may provide any contribution to a given off-diagonal element is reduced from rN to 2r (only those basis matrices obtained from the {i}a and {j}a subspaces have a contribution to aij element of the accommodation matrix) if the matrices are put in the desired form. Although the accommodation basis matrices do not, in general, take this desirable special form, they can, however, be transformed to this form by a congruence transformation. The congruence transformation that transforms a basis accommodation matrix into a matrix with nonzero elements on only one row is: {j}Pi = WT {j}Ai W (24) where: {j}Ai is ith basis accommodation matrix that was obtained from the {j}a subspace. {j}Pi is matrix that results from the congruence transformation on the basis accommodation matrix {j}Ai. Only the jth row of this matrix contains nonzero elements. This matrix has units of power (velocity times force) and will be referred to as the power matrix. By Sylvester's Law of Inertia [7], the resulting matrix {j}Pi has the same number of positive eigenvalues, the same number of negative eigenvalues, and the same number of zero eigenvalues as {j}Ai. (Sylvester's Law of Inertia is valid if the matrices that pre- and post-multiply the basis accommodation matrix are nonsingular; W is nonsingular for all deterministic fixtures.) Therefore, if {j}Pi is positive definite (all eigenvalues are positive), then {j}Ai is positive definite, and vice versa. A general procedure for obtaining a positive definite accommodation matrix using congruence transformations on the set of basis accommodation matrices is described below. 1. Transform each of the basis accommodation matrices using Equation 24 so that the resulting power matrix contains only one row of nonzero elements. 2. Generate the symmetric portion of the power matrix using Equation 20. 3. Identify the system of linear inequalities that must be satisfied for the power matrix obtained using all basis accommodation matrices (P = S ai Pi) to be dominant. A linear program can be used to find solutions to the system of inequalities. A simpler approach is to select those matrices that are "most dominant" (i.e. having the largest ratio of diagonal element to sum of off-diagonal terms) in each row (or column), then combining these matrices to form a dominant matrix. 4. Those scalars ai that satisfy the linear inequalities for dominance of P are the same scalars that will yield a positive definite accommodation (A = S ai Ai > 0). 3.4 Summary of Motion Control Law Design The manipulator admittance design procedure which ensures force-assembly with friction is summarized as follows: 1) A nominal velocity vo is in the space Vo of nominal velocities which satisfy the force-assemblability conditions (i.e. vo Î Vo) if: vo = Bvn where: n > 0 (25) where: 0 is a N-element column vector of zeros. and Bv is a matrix of basis vectors describing Vo; given in Equation 5. 2) An accommodation matrix A is in the space A(m) of accommodation matrices which satisfy the force-assembly with friction conditions (i.e. A Î A(m)) if: A = BA(m) a where: (a ³ 0 and A > 0) (26) where: 0 is a N2-element column vector of zeros. BA(m) is a matrix of basis vectors describing the linear condition on A; given in Equation 17. A > 0 if WT A W is dominant (see Section 3.3). 4.0 Geometrical and Topological Implications of the Sufficient Conditions This section addresses the interpretation of the sufficient conditions for force-assembly with friction. The significance of each of the four conditions on the other conditions is discussed and the implications of the conditions on the space of admittance control laws is presented. The sufficient conditions for force-assembly with friction are summarized below: WT vo < 0 (1) G\O(m,T) A ² 0 (2) A > 0 (i.e. A is positive definite) (3) Det (KWT) Det (K\O(W,~)) > 0 (\O(W,~) is a function of m) (4) " K\O(W,~) ÎÊK{W} for all fixels in contact, i.e. K = {1, 2, 3} First, the condition on the nominal velocity is addressed. In [6] it was proved that, if the fixture is deterministic, there always exists a non-null space of nominal velocities Vo that will satisfy the force-assemblability conditions on the nominal velocity. This condition is completely separated from the others. It is the only condition on vo and does not place any restriction on A or m. The other three conditions are not completely separable. Each has ramifications on the space of acceptable accommodation matrices, A(m). The significance of the condition on the coefficient of friction (Equation 4) has been previously identified as a necessary condition for characteristic forces [5]. If the coefficient of friction violates this condition, contact forces are no longer characteristic. This condition is equivalent to evaluating whether the space of contact forces associated with any one fixel intersects the space of contact forces associated with single or multiple fixel contact with any of the other N-1 fixels. If a fixture is deterministic, a solution to this condition on the coefficient of friction (Equation 4) always exists. For example, if m equals zero, the condition becomes: det(W) det(W) > 0 which is always satisfied for a deterministic fixture (i.e. det(W) ­ 0). The implications of this condition on the space of accommodation matrices is indirect, i.e. the accommodation matrix is not explicit in the condition. However, the conditions on the coefficient of friction and the set of linear conditions on the accommodation matrix are both functions of the workpiece/fixture geometry and friction. The relationship between the two conditions is addressed in Section 4.1. Next, the two conditions on the accommodation matrix are addressed together. As stated previously, an accommodation matrix A is in the space A(m) of accommodation matrices which satisfy the force-assembly with friction conditions (i.e. A Î A(m)) if both Equations 2 and 3 are satisfied. Each condition taken independently is easily satisfied. A zero vector satisfies Equation 6.1 (trivial solution). This trivial solution, however, does not correspond to a positive definite matrix, i.e. it violates Equation 3. A diagonal matrix with positive elements satisfies the positive definite condition of Equation 3. This positive definite matrix, however, may not satisfy the linear conditions of Equation 2. Therefore the significance of the union of the two conditions is addressed below. In other words, the intersection of the polyhedral convex cone in N2 dimensional space (defined by the conditions in Equation 2) with the convex cone in N2 dimensional space associated with a positive definite matrix (Equation 3) is addressed. A summary of the results of the investigation into the significance of the union of the two conditions is listed below. 1. A nontrivial solution can be obtained to the system of linear equalities for each of the accommodation vector subspaces (" {i}a i = 1,...,N) if the condition on the coefficient of friction (Equation 4) is not violated. 2. The set of basis accommodation matrices obtained can be combined to yield a positive definite matrix if the coefficient of friction is less than the value that causes the loss of characteristic forces. The first result can be proved; the second is an observation made based on many workpiece/fixture geometries. The proof of result 1 is provided in Section 4.1. 4.1 Existence of Nontrivial Basis Accommodation Matrices The significance of the condition on the coefficient of friction (Equation 4) on the space of accommodation matrices that satisfy the linear conditions (Equation 2) is presented below. A general planar (3 DOF) fixture is used to illustrate the concepts; these concepts, however, are applicable to a general (2, 3 or 6 DOF) fixture. The space of accommodation matrices that satisfies the linear conditions on the accommodation vector subspace for a planar fixture can be represented in the plane of the fixture. Recall that the edges of the accommodation vector subspaces were obtained from a set of linear conditions and each linear condition represented a contact wrench (Equation 12). These conditions on the accommodation vector subspace, {i}L {i}a ² 0, are equivalent to the conditions on the space of available motions WT d ² 0 [4] in that both represent polyhedral convex cones. For the general planar case, both can be represented graphically in the plane of the fixture. The polyhedral convex cone associated with detaching motions is illustrated in a planar figure as the intersection of the cone with both the w = 1 and w = -1 planes. Similarly, the polyhedral convex cone in the space of each accommodation vector subspace can be represented in a plane by the intersection of the cone with the {i}a3 = 1 and the {i}a3 = -1 planes. The polyhedral convex cone for each accommodation vector subspace for a single workpiece/fixture combination at m = 0.25 is illustrated in Figures 1 - 3. Figure 1: Planar Representation of the Polyhedral Convex Cone Associated with {1}a. The edges of this polyhedral convex cone are calculated using the procedure outlined in Section 3.2 and are listed in Equation 27. Alternately, the edges could be obtained by means of a graphical solution using the friction cone edges. Locations that correspond to the cone interior are identified either by: 1) all points to the right of the lines associated with fixel 1 and to the left of the lines associated with fixels 2 and 3; or 2) all points to the left of the lines associated with fixel 1 and to the right of the lines associated with fixels 2 and 3. The edges of the accommodation vector subspace associated with error- reduction for fixel 1 (i.e. the polyhedral convex cone of {1}a) are shown in Figure 1 for a coefficient of friction of 0.25. The interior of the polyhedral convex cone is the shaded area. The intersection of the cone with the {1}a3 = 1 plane is the shaded area in the upper right. The intersection of the cone with the {1}a3 = Ð1 plane is the shaded area in the lower left. The edges of the accommodation vector subspace {1}a, are listed in Equation 27 and identified in Figure 1. Edge {1}ba4 is not illustrated in the figure because it intersects neither the {1}a3 = 1 plane nor the {1}a3 = Ð1 plane. (The location of the intersection of the edges with the {i}a3 = ±1 planes is given by the position vector r from the base of the coordinate system, where r is given by: r = (w ´ v) / (w ¥ w)). {1}Ba = [ {1}ba1 {1}ba2 {1}ba3 {1}ba4 {1}ba5 ] (27) = \B\BC\[(\A\CO5\VS3\HS7(Ð0.222,Ð0.220, 0.333, 0.941, 0.733,Ð0.444,Ð0.373,Ð0.333,Ð0.235,Ð0.933,Ð0.222,Ð0.254,Ð0.333,0, 0.333))] As an alternative, the edges could be obtained by a graphical solution using the friction cone edges. Locations in the plane that correspond to the polyhedral convex cone interior are the points that satisfy either of the following two conditions: 1) points to the right (point of view is from the fixel to the workpiece) of the lines associated with fixel 1 and to the left of the lines associated with fixels 2 and 3; or 2) points to the left of the lines associated with fixel 1 and to the right of the lines associated with fixels 2 and 3. The edges of the second accommodation vector subspace associated with error-reduction for fixel 2 (i.e. the polyhedral convex cone of {2}a) are shown in Figure 2 for a coefficient of friction of 0.25. The intersection of the cone with the {2}a3 = Ð1 plane is illustrated as the shaded area. The edges of the accommodation vector subspace are listed in Equation 28 below and are also identified in Figure 2. {2}Ba = [ {2}ba1 {2}ba2 {2}ba3 ] (28) = \B\BC\[(\A\CO3\VS3\HS7(Ð0.467,Ð1.292,Ð1.667,Ð0.133, 0.917, 0.167,Ð0.333,Ð0.708,Ð0.333))] Figure 2: Planar Representation of the Polyhedral Convex Cone Associated with {2}a. Locations that correspond to the cone interior are identified by: all points to the right of the lines associated with fixel 2 and to the left of the lines associated with fixels 1 and 3. ÊNote that the polyhedral convex cone of {2}a is substantially smaller than that observed for {1}a. If the coefficient of friction is increased further to the point that any one of the conditions on the coefficient of friction is marginally satisfied, this polyhedral convex cone of triangular cross section will disappear. In fact, the area of the triangle generated by the intersection of the polyhedral convex cone with the {2}a3 = Ð1 plane is the determinant of matrix {2}Ba [2]. The collapse of this cone of triangular cross section is also indicated by the linear dependence of the vectors that define the polyhedral convex cone face normals. Each face normal corresponds to a friction cone wrench. Therefore, the collapse (or near collapse) of this cone of triangular cross section can be assessed by evaluating the determinant of the set of wrenches that define its faces. A nontrivial solution to the linear conditions that define the accommodation vector subspace can always be obtained if the determinant of the various wrench combinations is nonzero. The edges of the accommodation vector subspace associated with error- reduction for fixel 3 are shown in Figure 3 for a coefficient of friction of 0.25. The intersection of the cone with the {3}a3 = 1 plane is illustrated as the shaded area. The edges of the accommodation vector subspace are listed in Equation 29 and are identified in Figure 3. {3}Ba = [ {3}ba1 {3}ba2 {3}ba3 {3}ba4 {3}ba5 ] (29) = \B\BC\[(\A\CO5\VS3\HS7(Ð0.333, 0.216, 0.125,Ð0.333,Ð 2.333, 0.333, 0.196,Ð3.250,Ð0.667,Ð0.166, 0.333, 0.333, 1.875, 0.333, 0.333))] Figure 3: Planar Representation of the Polyhedral Convex Cone Associated with {3}a. Locations that correspond to the cone interior are identified by: all points to the left of the lines associated with fixel 3 and to the right of the lines associated with fixels 1 and 2. Two important observations can be made about this planar representation of accommodation vector subspaces. The first observation is that the accommodation vector subspace is defined by lines that correspond to friction cone edges. The other observation is that the existence of a space of nontrivial solutions to the system of inequalities associated with the subspace is directly related to the intersection of friction cones. The condition of the coefficient of friction is also directly related to the intersection of friction cones. For each planar fixture there exists a set of three wrenches that bounds a polyhedral convex cone of triangular cross section. The cross- sectional area of this cone is proportional to the determinant of the wrenches that define its bounds. The possible combinations of three edges of friction cone wrenches are evaluated when considering the conditions on the coefficient of friction (Equation 4). Acknowledgement Discussion with Ed Colgate and Ambarish Goswami (both of Northwestern) is much appreciated. This work was supported by Northwestern University and Marquette University. Appendix A: Sufficient Conditions for Force-Assembly with Friction The separation and simplification of the force-assembly with friction conditions are outlined below for a general three-fixel planar fixture; the spatial six-fixel case is similar. The conditions that must be satisfied for force-assembly with friction [5] are: CWT (vo + A f) = 0 (A.1) \O(C,Ð)WT (vo + A f) < 0 (A.2) " C Î P(K) " f ÎÊC\O(W,~) C\O(f,~) where: CWT is the matrix of transposed unit constraint wrenches of the fixels in contact. \O(C,Ð)WT is the matrix of transposed unit constraint wrenches of the fixels not in contact. P(K) is the "power set of K", the set of all subsets of K; and K is the set of all fixels. C\O(W,~) is a matrix for which each column is an element of C{W}e; defined in [5]. C{W}e is the set of wrench combinations that are evaluated for set C; combinations of friction cone edges. C\O(f,~) is the vector of wrench scalars that satisfies Equation A.1. Given a three fixel planar fixture with the set of fixels given by K, where K = {1, 2, 3}. The set of all subsets of K is P(K), where P(K) = {Æ, {1}, {2}, {3}, {1,2}, {1, 3}, {2, 3}, {1, 2, 3}}. Force-assembly requires that the motion of the workpiece is error-reducing for all possible initial positional errors (" C Î P(K)). All possible forces that may occur at each infinitesimal positional error must also be evaluated. The space of possible forces is bounded by the wrenches that span the wrench friction cone for each fixel in contact. Because the force-assembly conditions (Equations A.1 and A.2) are linear in f and because the wrench friction cone linearly bounds the space of possible forces f, it is sufficient to evaluate only the bounds of the wrench friction cone. The 81 conditions identified below are sufficient conditions for force- assembly of a general planar (3 degree of freedom) 3-fixel fixture. For the case for which no fixels are in contact, i.e., C = Æ: CW is null; \O(C,Ð)W = [w1, w2, w3]. The reciprocal condition is trivial; and the individual contrary conditions are: w1T vo < 0 (A.3) w2T vo < 0 (A.4) w3T vo < 0 (A.5) These equations (Equations A.3Ê-ÊA.5) will be part of the final set of sufficient conditions for force-assembly with friction. These are the same conditions on the nominal velocity that were obtained for the frictionless case. Next, consider the three cases for which contact occurs at a single fixel (i.e. C = {1}, C = {2}, CÊ=Ê{3}): When contact occurs at fixel 1 only (i.e. C = {1}), CW = [w1] \O(C,Ð)W = [w2, w3] C{W}e = {{w1Ð}, {w1+}} The evaluation of the negative side of the friction cone (C\O(W,~) = w1Ð ) yields: The reciprocal condition is: w1T vo + w1T A w1Ð {1}f1Ð= 0 (A.6) And the individual contrary conditions are: w2T vo + w2T A w1Ð {1}f1Ð < 0 (A.7) w3T vo + w3T A w1Ð {1}f1Ð < 0 (A.8) The following equations: Ð w1TA w1Ð < 0 (A.9) w2TA w1Ð ² 0 (A.10) w3TA w1Ð ² 0 (A.11) in conjunction with Equations A.3Ê-ÊA.5 above are sufficient conditions for satisfying the reciprocal and contrary conditions (Equations A.6Ê- ÊA.8) for some positive {1}f1Ð that satisfies the reciprocal condition. Therefore, Equations A.6Ê-ÊA.8 are dropped and the sufficient conditions, Equations A.9Ê-ÊA.11 are kept. Similarly, the evaluation of the positive side of the friction cone (C\O(W,~) = w1+) yields: Ð w1TA w1+ < 0 (A.12) w2TA w1+ ² 0 (A.13) w3TA w1+ ² 0 (A.14) These conditions are also kept as part of the set of sufficient conditions. When contact occurs at fixel 2 only (i.e. C = {2}), The following, in conjunction with Equations A.3Ê-ÊA.5, are sufficient conditions for satisfying force-assembly with friction for contact with fixel 2: Ð w2TA w2Ð < 0 (A.15) w3TA w2Ð ² 0 (A.16) w1TA w2Ð ² 0 (A.17) Ð w2TA w2+ < 0 (A.18) w3TA w2+ ² 0 (A.19) w1TA w2+ ² 0 (A.20) When contact occurs at fixel 3 only (i.e. C = {3}), The following, in conjunction with Equations A.3Ê-ÊA.5, are sufficient conditions for satisfying force-assembly with friction for contact with fixel 3: Ð w3TA w3Ð < 0 (A.21) w1TA w3Ð ² 0 (A.22) w2TA w3Ð ² 0 (A.23) Ð w3TA w3+ < 0 (A.24) w1TA w3+ ² 0 (A.25) w2TA w3+ ² 0 (A.26) Equations A.15Ê-ÊA.26 are part of the final set of sufficient conditions. Next, the three cases for which contact occurs at two fixels are considered (i.e., C= {1,2}, CÊ=Ê{1,3}, C = {2,3}). When contact occurs at fixels 1 and 2, i.e. C = {1, 2}: CW = [w1, w2] \O(C,Ð)W=[w3] C{W}e = {{w1Ð,w2Ð},{w1Ð,w2+},{w1+,w2Ð},{w1+,w2+}} The evaluation of the first set of wrenches in C{W}e, (i.e. C\O(W,~) = [w1Ð w2Ð]) yields: The individual reciprocal conditions are: w1Tvo + w1TA w1Ð {1,2}f1ÐÐ + w1TA w2Ð {1,2}f2ÐÐ = 0 (A.27) w2Tvo + w2TA w1Ð {1,2}f1ÐÐ + w2TA w2Ð {1,2}f2ÐÐ = 0 (A.28) and the contrary condition is: w3Tvo + w3TA w1Ð {1,2}f1ÐÐ + w3TA w2Ð {1,2}f2ÐÐ < 0 (A.29) The previously stated conditions (in particular, Equations A.5, A.11, and A.16) are sufficient to meet the contrary condition (Equation A.29), i.e. all components are negative, therefore the sum must be negative. The reciprocal conditions are more difficult to satisfy. In addition to the previously stated conditions (in particular, Equations A.9, A.10, A.15, A.17), the following must be satisfied: Det \B\BC\[(\A\CO2\VS10\HS15(w1TA w1Ð,w1TA w2Ð,w2TA w1Ð ,w2TA w2Ð))] > 0 (A.30) This additional condition, in combination with the previously stated conditions, guarantees that {1,2}f1ÐÐ and {1,2}f2ÐÐ (the wrench magnitudes if the wi's are unit wrenches) are positive. This is required if the workpiece is to remain in contact with the fixels already in contact. Similarly, an additional condition is obtained for the other 3 sets of wrenches in {1,2}{W}e. The additional conditions are: Det \B\BC\[(\A\CO2\VS10\HS15(w1TA w1Ð,w1TA w2+,w2TA w1Ð,w2TA w2+))] > 0 (A.31) Det \B\BC\[(\A\CO2\VS10\HS15(w1TA w1+,w1TA w2Ð,w2TA w1+,w2TA w2Ð))] > 0 (A.32) Det \B\BC\[(\A\CO2\VS10\HS15(w1TA w1+,w1TA w2+,w2TA w1+,w2TA w2+))] > 0 (A.33) When C = {2, 3} the additional conditions are: Det \B\BC\[(\A\CO2\VS10\HS15(w2TA w2Ð,w2TA w3Ð,w3TA w2Ð ,w3TA w3Ð))] > 0 (A.34) Det \B\BC\[(\A\CO2\VS10\HS15(w2TA w2Ð,w2TA w3+,w3TA w2Ð,w3TA w3+))] > 0 (A.35) Det \B\BC\[(\A\CO2\VS10\HS15(w2TA w2+,w2TA w3Ð,w3TA w2+,w3TA w3Ð))] > 0 (A.36) Det \B\BC\[(\A\CO2\VS10\HS15(w2TA w2+,w2TA w3+,w3TA w2+,w3TA w3+))] > 0 (A.37) And, when C = {1, 3} the additional conditions are: Det \B\BC\[(\A\CO2\VS10\HS15(w1TA w1Ð,w1TA w3Ð,w3TA w1Ð ,w3TA w3Ð))] > 0 (A.38) Det \B\BC\[(\A\CO2\VS10\HS15(w1TA w1Ð,w1TA w3+,w3TA w1Ð,w3TA w3+))] > 0 (A.39) Det \B\BC\[(\A\CO2\VS10\HS15(w1TA w1+,w1TA w3Ð,w3TA w1+,w3TA w3Ð))] > 0 (A.40) Det \B\BC\[(\A\CO2\VS10\HS15(w1TA w1+,w1TA w3+,w3TA w1+,w3TA w3+))] > 0 (A.41) Finally, for the case in which contact occurs at all three fixels, C = {1, 2, 3}: CW = [w1, w2, w3]; \O(C,Ð)W is null. C{W}e = {{w1Ð,w2Ð,w3Ð},{w1Ð,w2Ð,w3+},{w1Ð,w2+,w3Ð},{w1Ð ,w2+,w3+}, {w1+,w2Ð,w3Ð},{w1+,w2Ð,w3+},{w1+,w2+,w3Ð },{w1+,w2+,w3+}} Evaluation of the first set of wrenches in C{W}e, i.e. C\O(W,~) = [w1Ð w2Ð w3Ð], yields: The individual reciprocal conditions are: w1Tvo + w1TA w1Ð {1,2,3}f1ÐÐÐ + w1TA w2Ð {1,2,3}f2ÐÐÐ + w1TA w3Ð {1,2,3}f3ÐÐÐ = 0 (A.42) w2Tvo + w2TA w1Ð {1,2,3}f1ÐÐÐ + w2TA w2Ð {1,2,3}f2ÐÐÐ + w2TA w3Ð {1,2,3}f3 ÐÐÐ= 0 (A.43) w3Tvo + w3TA w1Ð {1,2,3}f1ÐÐÐ + w3TA w2Ð {1,2,3}f2ÐÐÐ + w3TA w3Ð {1,2,3}f3 ÐÐÐ= 0 (A.44) and there are no contrary conditions. Once again, in addition to the previously stated conditions, the following must be satisfied to guarantee that the wrench magnitudes are positive: Det \B\BC\[(\A\CO3\VS10\HS15(w1TA w1Ð,w1TA w2Ð,w1TA w3Ð ,w2TA w1Ð,w2TA w2Ð,w2TA w3Ð,w3TA w1Ð,w3TA w2Ð,w3TA w3Ð ))] > 0 (A.45) And, for the other combinations of friction cone edges, the following are obtained: Det \B\BC\[(\A\CO3\VS10\HS15(w1TA w1Ð,w1TA w2Ð,w1TA w3+,w2TA w1Ð,w2TA w2Ð,w2TA w3+,w3TA w1Ð,w3TA w2Ð,w3TA w3+))] > 0 (A.46) Det \B\BC\[(\A\CO3\VS10\HS15(w1TA w1Ð,w1TA w2+,w1TA w3Ð,w2TA w1Ð,w2TA w2+,w2TA w3Ð,w3TA w1Ð,w3TA w2+,w3TA w3Ð))] > 0 (A.47) Det \B\BC\[(\A\CO3\VS10\HS15(w1TA w1Ð,w1TA w2+,w1TA w3+,w2TA w1Ð,w2TA w2+,w2TA w3+,w3TA w1Ð,w3TA w2+,w3TA w3+))] > 0 (A.48) Det \B\BC\[(\A\CO3\VS10\HS15(w1TA w1+,w1TA w2Ð,w1TA w3Ð,w2TA w1+,w2TA w2Ð,w2TA w3Ð,w3TA w1+,w3TA w2Ð,w3TA w3Ð))] > 0 (A.49) Det \B\BC\[(\A\CO3\VS10\HS15(w1TA w1+,w1TA w2Ð,w1TA w3+,w2TA w1+,w2TA w2Ð,w2TA w3+,w3TA w1+,w3TA w2Ð,w3TA w3+))] > 0 (A.50) Det \B\BC\[(\A\CO3\VS10\HS15(w1TA w1+,w1TA w2+,w1TA w3Ð,w2TA w1+,w2TA w2+,w2TA w3Ð,w3TA w1+,w3TA w2+,w3TA w3Ð))] > 0 (A.51) Det \B\BC\[(\A\CO3\VS10\HS15(w1TA w1+,w1TA w2+,w1TA w3+,w2TA w1+,w2TA w2+,w2TA w3+,w3TA w1+,w3TA w2+,w3TA w3+))] > 0 (A.52) The sufficient conditions listed above are of three types: 1) linear conditions on the nominal velocity (Equations A.3 - A.5); 2) linear conditions on the accommodation matrix (Equations A.9Ê-ÊA.26); and 3) non-linear conditions on the accommodation matrix (Equations A.30Ê-ÊA.41 and A.45 - A.52). The linear conditions on the accommodation matrix and the nonlinear conditions on the accommodation matrix are simplified further below. A.1 Linear Conditions on the Accommodation Matrix Twelve of the eighteen linear equations involving A (Equations A.9 -ÊA.26) satisfy the force-assemblability conditions with inequalities of the "less than or equal to" form; the other six are strict inequalities of the "less than" form. In order to compactly express these equations in vector form, the strict inequalities will be handled as inequalities of the "less than or equal to" form. The fact that they are actually strict inequalities will be addressed later. As in [6], each equation involving A can be rearranged to facilitate the evaluation of the linear conditions on A. Each of the above linear conditions of the form: wiTAÊwj±Ê²Ê0 (where wj± corresponds to an edge of a wrench friction cone), can be expressed as the multiplication of a row vector and a column vector: (g\o(±,ij))TA ² 0 where: A is the Òaccommodation vectorÓ; a column vector obtained by "stringing out horizontallyÓ then transposing the accommodation matrix A, defined in [6]. (g\o(±,ij))T is the row vector obtained by the Kronecker product of the vectors which pre- and post-multiply the accommodation matrix, (g\o(±,ij))T = ± wiT ´ wj±T i.e. (g\o(±,ij))T = + wiT ´ wj±T when i ­ j. and (g\o(±,ij))T = Ð wiT ´ wj±T when i = j. e.g. if w1T = [e f], and w2+T = [g h]: (g\o(+,12))T = [e f] ´ [g h] = [eg eh fg fh] For example, for w1, w2+ as given above: w1TA w2+ = (g\o(+,12))T A \B\BC\[(\A\CO2\VS5\HS7(e,f))]\B\BC\[(\A\CO2\VS5\HS7(a,b,c,d))]\B\ BC\[(\A\CO1\VS5\HS7(g,h)) ]= \B\BC\[(\A\CO4\VS5\HS7(eg,eh,fg,fh))]\B\BC\[(\A\CO1\VS5\HS7(a,b, c,d))] The sufficient force-assemblability linear conditions on A can be compactly expressed as the following: An accommodation vector A will satisfy the force-assemblability linear conditions on A if: G\O(m,T) A ² 0 (A.53) where: G\O(m,T) is the rN2 ´ N2 matrix (r is the number of friction cone edges, 2 in the planar case; G\O(m is 18´9 for planar fixtures) for which each row is obtained from the Kronecker product of the vectors that pre- and post-multiply the accommodation matrix. G\O(m,T) takes the form: G\O(m,T) = \B\BC\[(\A\CO1\VS3\HS7( \B\BC\[(\A\CO1\VS3\HS7(gÐ11T,gÐ12T,gÐ13T,. . .,gÐNNT))] , \B\BC\[(\A\CO1\VS3\HS7(g+11T,g+12T,g+13T,. . .,g+NNT))] ))] = \B\BC\[(\A\CO1\VS3\HS7( \B\BC\[(\A\CO1\VS3\HS7(Ðw1T ´ w1ÐT,w1T ´ w2ÐT,w1T ´ w3ÐT,. . .,ÐwNT ´ wNÐT))] , \B\BC\[(\A\CO1\VS3\HS7(Ðw1T ´ w1+T,w1T ´ w2+T,w1T ´ w3+T,. . .,Ð wNT ´ wN+T))] ))] _ _ \B\BC\[(\A\CO5\VS3\HS7(Ðw11wÐ11, Ðw11wÐ12, Ðw11wÐ13, . . .,Ðw1NwÐ1N, w11wÐ21, w11wÐ22, w11wÐ23, . . ., w1NwÐ2N, w11wÐ31, w11wÐ32, w11wÐ33, . . ., w1NwÐ3N, . . ., . . ., . . ., . . ., . . .,Ð wN1wÐN1,ÐwN1wÐN2,ÐwN1wÐN3, . . .,Ð wNNwÐNN))] \B\BC\[(\A\CO5\VS3\HS7(Ðw11w+11, Ðw11w+12, Ðw11w+13, . . .,Ðw1Nw+1N, w11w+21, w11w+22, w11w+23, . . ., w1Nw+2N, w11w+31, w11w+32, w11w+33, . . ., w1Nw+3N, . . ., . . ., . . .,. . ., . . .,Ð wN1w+N1,ÐwN1w+N2,ÐwN1w+N3, . . .,Ð wNNw+NN))] Ð Ð where: wkl refers to the lth element of the normal wrench resulting from contact with the kth fixel. w±kl refers to the lth element of the wrench on the friction cone that results from contact with the kth fixel. A.2 Nonlinear Conditions on the Accommodation Matrix The nonlinear conditions on the accommodation matrix for force-assembly with friction can be simplified further. The existing conditions on the accommodation matrix and the coefficient of friction (Equations A.30 - A.52) are separated into: 1) nonlinear conditions on the accommodation matrix only; and 2) nonlinear conditions on the coefficient of friction. The simplification is outlined below: First, it is important to note that each sufficient reciprocal condition (for single-point contact, two-point contact, and three-point contact) can be expressed in the form: Det (CWT A C\O(W,~)) > 0 (A.54) For the three-point contact case (i.e. C = K = {1,2,3}), the equations can be written in the form: Det (KWT) Det (A) Det (K\O(W,~)) > 0 (A.55) It is known from the evaluation of force-assembly without friction that the accommodation matrix must be positive definite. Since force-assembly without friction is a subclass of force-assembly with friction, all conditions of force-assembly without friction must be satisfied for force assembly with friction. Therefore, the accommodation matrix must be positive definite in all cases, including when friction is greater than zero. Therefore, its determinant is greater than zero: Det (A) > 0 (A.56) Using this fact and the fact that the determinant of a deterministic fixture can not be zero (definition of deterministic fixture in [6], Equation A.55 is satisfied if the determinants of KW and K\O(W,~) have the same sign, or equivalently: Det (KWT) Det (K\O(W,~)) > 0 (A.57) This is a necessary condition for characteristic forces identified in [5]. In summary, the nonlinear conditions on the accommodation matrix for the cases in which all fixels of a minimum fixel deterministic fixture are in contact are satisfied iff: A > 0 (A.57) Det (KWT) Det (K\O(W,~)) > 0 " K\O(W,~) ÎÊK{W}e (A.58) where K is the set of all fixels, i.e. K = {1, 2, 3} This effectively separates conditions on the accommodation matrix from conditions on the friction coefficient. Below, it is shown that these conditions are sufficient to satisfy the other nonlinear conditions on the accommodation matrix. For the planar case, these ÒotherÓ nonlinear conditions are associated with two-point contact. Equations A.56 and A.57 ensure that Equations A.45 - A.52 are satisfied. To illustrate this, the first of the nonlinear conditions with three point contact (Equation A.45) is used as an example. Det \B\BC\[(\A\CO3\VS10\HS15(w1TA w1Ð,w1TA w2Ð,w1TA w3Ð ,w2TA w1Ð,w2TA w2Ð,w2TA w3Ð,w3TA w1Ð,w3TA w2Ð,w3TA w3Ð ))] > 0 (A.45) The linear conditions on A (Equations A.9 - A.26) place restrictions on the signs of each element of this matrix. Using this information, Equation A.45 becomes: Det \B\BC\[(\A\CO3\VS10\HS15(a,Ðd,Ðe,Ðf,b,Ðg,Ðh,Ði,c))] > 0 (A.58) where: a > 0, b > 0, and c > 0 d ³ 0, e ³ 0, f ³ 0, g ³ 0, h ³ 0, and i ³ 0 Then expanding the determinant yields: a(bc Ð gi) Ð d(fc + gh) Ð e(fi +bh) > 0 (A.59) then, rearranging: (bc Ð gi) > (d(fc + gh) + e(fi +bh)) / a ³ 0 (A.60) which is equivalent to one of the nonlinear conditions for two-point contact: Det \B\BC\[(\A\CO2\VS10\HS15(w2TA w2Ð,w2TA w3Ð,w3TA w2Ð ,w3TA w3Ð))] > 0 (A.34) By expanding the determinant about different rows, other two-point contact conditions are satisfied (in this case, Equations A.30 and A.38). The other two-point contact nonlinear conditions are satisfied by following the same general procedure using Equations A.57 and A.58). References 1. Goldman, A. J. and A. W. Tucker. Polyhedral Convex Cones. Linear Inequalities and Related Systems. Kuhn and Tucker ed. Princeton University Press. (1956) 2. Klein, F. Elementary Mathematics from an Advanced Standpoint. Dover Publications. (1939) 3. Marcus, M. Basic Theorems in Matrix Theory. Applied Mathematics Series. National Bureau of Standards. (1960) 4. Reuleaux, F. Kinematics of Machinery. Dover. New York (1963) 5. Schimmels, J. M. and M. A. Peshkin. The Robustness of an Admittance Matrix Designed for Force Guided Assembly to the Disturbance of Contact Friction. IEEE Transactions on Robotics and Automation ((submitted for publication)) 6. Schimmels, J. M. and M. A. Peshkin. Admittance Matrix Design for Force Guided Assembly. IEEE Transactions on Robotics and Automation (April)(1992) 7. Strang, G. Linear Algebra and Its Applications. Academic Press. (1980) 8. Weinberg, L. Network Analysis and Synthesis. McGraw-Hill Electrical and Electronic Enginerring Series. Terman ed. McGraw-Hill Book Company, Inc. New York (1962)