Proceedings of the IEEE 1993 International Conference on Robotics and Automation, Atlanta, GA TASK-SPACE / JOINT-SPACE DAMPING TRANSFORMATIONS FOR PASSIVE REDUNDANT MANIPULATORS Ambarish Goswami Michael A. Peshkin Mechanical Engineering, Northwestern Univ. ABSTRACT We consider here passive mechanical wrists, capable of imparting a desired damping matrix to a grasped workpiece. Previous work [12, 13] has shown how to select a damping matrix such that an assembly operation can be made force-guided. The passive mechanical wrist is programmable -- it can adopt a wide range of damping matrices -- by virtue of a number of tunable dampers which interconnect the joints. We have been studying the range of damping matrices that such a wrist can adopt, purely by tuning its dampers. A kinematic Jacobian relates the task-space damping matrix to a similar matrix in the hydraulic space of the tunable dampers (joint-space). We find that a redundant wrist has a broader range of realizable damping matrices than a non-redundant wrist. However for redundant wrists the transformation of damping matrices between task-space and joint-space is not straightforward. In this paper we identify the causal directions along which the transformations are linear. We show that the joint-space matrices which are obtained as linear transformations of desired task-space matrices are all singular. Many realizable joint-space matrices (corresponding to a desired task-space damping matrix) are shown to exist which are not discovered by linear transformations. I. BACKGROUND AND MOTIVATION The motion with which a robot responds to forces encountered during assembly may move the workpiece closer to or farther from correct assembly. We have been studying methods of designing the accommodation (inverse damping) properties of a grasped workpiece, such that the forces arising during assembly always cause motions which move the workpiece closer to correct assembly The design of an accommodation matrix for force-guided assembly was described in [13] . Implementing a suitable accommodation behavior is a form of force control [7] . Force control schemes in which the robot mimics a passive physical system are found to enjoy inherent advantages in interactive robotic tasks such as automated assembly. Colgate and Hogan showed that only a passive system remains stable at all frequencies when coupled to an arbitrary passive environment [3] . Robot controllers may emulate a passive system in order to take advantage of this fact [1, 11, 14] . Unfortunately, the speed of a software-controlled system is limited by the control system bandwidth [17] . This motivates the use of mechanical elements, such as springs, dampers etc., in order to implement force control. One of the well known mechanical devices used for a class of assembly tasks is the remote center of compliance (RCC) device [16] . Work on the analysis and design of compliance, accommodation, or inertia matrices suitable for different classes of interactive tasks are found in [2, 6, 9] . A suitable force control law is task-specific. An accommodation matrix that is suitable for a particular task is not necessarily useful (in fact it may be detrimental) for another. Accommodation matrix requirements vary with the geometric properties of the tasks. Therefore, robots must be able to adopt a broad range of accommodation matrices in order to perform a variety of tasks. A disadvantage of mechanically implemented force control is the loss of simple software programmability. This motivates the need for mechanical elements with programmable parameters, e.g. spring stiffness, damping coefficient etc. Cutkosky and Wright developed a programmable RCC wrist for introducing variable compliance in a robot [4] . We have been studying the range of accommodation matrices attainable by coupling the joints of a robot (or more practically of a wrist) via a passive network of programmable dampers. The network directly determines the wrist's joint-space accommodation matrix. This matrix describes the force-velocity relationship of the individual joints and does not involve their geometry or interconnections. The accommodation matrix of the workpiece as viewed by the environment is called the task-space accommodation matrix. This matrix relates the forces on and the velocities of a firmly grasped rigid workpiece. The task-space matrix is related to the joint-space matrix by the manipulator's Jacobian. Our objective is to achieve a wide range of task-space accommodation matrices by programming the network of dampers that couple the joints. However we find that passive networks may adopt only a particular class of accommodation matrices [5] . We have proposed kinematic redundancy as a means of increasing the range of force control laws that may be implemented by a passive device. II. OBJECTIVE AND SUMMARY In this paper, we study the relationship between accommodation (or damping) matrices in joint-space and task- space for passive redundant manipulators. Our analysis can be immediately applied to networks of springs (imparting a compliance) or of masses (imparting an inertia matrix). Just as we use a manipulator's Jacobian matrix to transform forces and velocities between its joint-space and task-space, we can imagine similar transformations between the spaces for its accommodation or damping matrices. By analogy to the term "forward kinematics," the computation of the task-space accommodation matrix for a given joint-space accommodation matrix will be called the forward transformation problem. The problem of determining the joint- space accommodation matrix for a desired task-space matrix will be called the inverse transformation problem. The inverse transformation problem is relevant when, as described above, a desired accommodation matrix is specified in task-space in order to make an assembly operation force-guided. The desired matrix is transformed to the robot's joint space. To implement the resulting joint-space accommodation matrix one still has to program the network appropriately as described in [5] . The tasks-space accommodation (or damping) matrices of a manipulator are related to their joint-space counterparts through a congruence transformation. This is a linear transformation involving the manipulator's Jacobian and is sensitive to the manipulator's pose. For non-redundant manipulators in non- singular poses, the forward and inverse transformations are simple one-to-one mappings between joint-space and task-space. For redundant manipulators, however, the transformations are not always straightforward. Kinematic redundancy imposes constraints on joint-space velocities (in parallel manipulators) or forces (in serial manipulators). These constraints give rise to preferred causal directions along which linear transformations of accommodation and damping matrices may take place. The causal directions depend on the structure of the manipulator (serial or parallel) as well as on the type of matrix being transformed (accommodation or damping). For example, in a parallel manipulator, an accommodation matrix maps linearly from task-space to joint-space but not in the reverse direction. A damping matrix, on the other hand, maps linearly from joint-space to task-space. Dual results exist for serial manipulators. For redundant manipulators some of the transformations are many-to-one. For instance, for a serial redundant manipulator, many joint-space accommodation matrices map to a single task- space matrix. To implement a desired task-space matrix, one has a choice of many joint-space matrices, and hopefully some of them are realizable by a passive network of dampers. Unfortunately the causal linear transformations do not directly identify all of the corresponding matrices in the case of many-to-one transformations. As an example, the inverse transformation (which is a linear congruence transformation) of a desired task-space accommodation matrix for a parallel manipulator yields only one matrix. However, infinitely many joint-space matrices exist that also correspond to the given task- space matrix. In order to take full advantage of redundancy, one must therefore look beyond the linear transformation. In the next section we give a simple physical example to point out some of the important characteristics exhibited by redundant passive mechanisms. Section IV discusses the nature of force and velocity transformation between joint-space and task-space of redundant manipulators. An understanding of force and velocity transformation is important for identifying the causal directions in which accommodations and damping matrices transform. We discuss the latter in Section V. Finally, in Section VI we apply our results to passive force control. III. AN EXAMPLE Fig. 1 shows a parallel arrangement of two hydraulic cylinders that are connected to a massless cart. The cylinders have damping coefficients of d1 and d2. This mechanism may be thought of as a redundant parallel manipulator with a 1- DOF task-space and a 2- DOF joint-space. The joint-space damping matrix Dj is a 2´2 diagonal matrix1 with d1 and d2 as the diagonal elements. The task-space damping matrix Dt (a scalar here) is the apparent damping of the cart as seen by the environment, which we know to be (d1 + d2). Although this example may appear a bit trivial, it exhibits some important characteristics of redundant mechanisms. For Fig. 1. A simple parallel mechanism to illustrate the basic features of redundant parallel manipulators. instance, we can observe many-to-one mapping of damping matrices from joint-space to task-space in this manipulator. IV. REVIEW OF VELOCITY AND FORCE TRANSFORMATIONS A. Velocity Transformation The velocity transformation relationship vt®vj for a parallel manipulator is expressed as: J vt = vj (1) where vt is an (m´1) task-space velocity vector and vj is the corresponding (n´1) joint-space velocity vector. m and n are the degrees of freedom of the task-space and the joint-space respectively. For a redundant manipulator n>m and J is an (n´m) Jacobian matrix transforming a task-space velocity to a joint-space velocity. Contrary to the impression the word 'redundancy' might generate, there is one and only one joint-space velocity corresponding to a given task-space velocity in a redundant parallel manipulator. If the velocities of any m-independent joints are known, the velocities of rest of the n-m joints are uniquely determined. The left nullspace of J correspond to those velocities which are physically impossible. The pseudo-inverse of the Jacobian J+ = (JTJ)-1 JT may not be used to obtain a vt for a given vj unless one restricts the set of joint-space velocities to be the physically possible ones. For the manipulator in Fig. 1, the Jacobian J = [1 1]T. The dampers must always have equal velocity. The left nullspace of J corresponds to physically impossible unequal damper velocities. B. Force Transformation In our ideal lossless mechanism, the virtual power in joint- space and task-space are equal. The force transformation fj®ft is dual to the velocity transformation expression of (1), and is expressed as, JT fj = ft , (2) where fj is an (n´1) joint-space force vector, ft is the corresponding (m´1) task-space force vector, and JT is the Jacobian transpose. Equation (2) maps an n-dimensional space (of fj ) to a smaller m-dimensional space (of ft ) in a many-to-one fashion. A joint-space force fj is decomposed into two components, fjr and fjn, the row space component and the nullspace component of fj (with regard to JT ), respectively. In (2), the matrix JT effectively transforms the row space component fjr into its column space and reduces the nullspace component to zero as shown in the following equation, JT fj = JT (fjr + fjn) = ft + 0 = ft . (3) Every force vector in the nullspace of JT maps to zero. Infinitely many physically possible joint-space forces2, combinations of a unique row space component and arbitrary nullspace components, may therefore map onto the same task- space force. Joint-space forces lying entirely in the nullspace of JT are not manifested in the task-space. These are the internal forces in a mechanical system. Although many joint-space forces may result in a single task-space force, a force applied in the task space of a physical system results in a unique joint-space force. The pseudo-inverse (JT )+ cannot correctly depict this ft®fj mapping. Although a mapping through the pseudo-inverse produces a unique fj for a given ft , the mapping is based on an ad-hoc mathematical assumption that nullspace forces are zero, which is not necessarily satisfied by redundant manipulators. For the redundant manipulator in Fig. 1, we may write out (2) as, fj1 + fj2 = ft , where fj1 and fj2 are the forces in the two dampers. An unequal joint-space force generated in this mechanism (which happens whenever d1 ­ d2) corresponds to a non-zero nullspace component. Given only ft, it is impossible to predict the joint-space forces from (2). However, if we know the accommodation properties of the manipulator, we can easily compute fj1 = d1 (d1+ d2)-1ft , and fj2 = d2(d1+ d2)-1ft . This we do by using the velocity constraint (vj1 = vj2) and the task- space accommodation matrix (d1 + d2)-1. In Section V. A we generalize this method to obtain a physically meaningful one-to- one ft®fj mapping. C. Serial Manipulators The velocity and force transformation relationships in serial manipulators are dual to those in parallel manipulators. For serial manipulators the transformation equations are, vt = J vj (4) fj = JT ft , (5) where J is an (m´n) Jacobian matrix. Considering the nature of the mappings, (4) and (5) are dual to (2) and (1), respectively. Note that the Jacobian matrix J in a serial manipulator transforms a joint-space velocity to a task-space velocity. In a parallel manipulator J represents the inverse transformation. Serial redundant manipulators may have infinite number of joint-space velocities, all mapping onto a single task-space velocity. Joint-space velocities lying in the nullspace of J are not manifested in the task-space. There are joint-space force constraints in serial redundant manipulators as opposed to joint- space velocity constraints in parallel manipulators. The left nullspace of JT (in Eq. 5 above) corresponds to the physically impossible forces which would require infinite joint velocities. V. TRANSFORMATIONS OF ACCOMMODATION AND DAMPING MATRICES In this section we use the causal transformations equations of force and velocity (Equations 1, 2, 4, and 5) to obtain the causal relationships of accommodation and damping matrices between task-space and joint space of redundant manipulators. Our discussion in this section will mainly relate to parallel manipulators. Unless explicitly stated, the Jacobian J will imply the vt ®vj mapping. A. Force-Velocity Cycle We first start with the two causal kinematic transformations J: vt ®vj and JT: fj®ft as seen in (1) and (2), respectively. We have two other transformations expressed as At : ft®vt and Dj : vj®fj . These four transformations may be simultaneously illustrated with the help of a force-velocity cycle diagram, as shown in Fig. 2. Mussa-Ivaldi et al. described similar causality cycles in biological networks as K-nets [10] . Kim et al. described similar cycles to derive optimal control strategies for redundant manipulators [8] . There are two types of parameters in a force-velocity cycle. The first type corresponds to a force vector or a velocity vector. This includes fj, ft , vj , and vt . The second type of parameters includes the matrices J , JT, Aj , Dj , At, and Dt. Each of these matrices represents a transformation and is therefore associated with an input vector and an output vector. The vector parameters are located at the nodes of the cycle whereas a matrix is positioned on the directed arc connecting the input and the output vectors. The direction of the arc specifies the causality of the mapping. Notice that for non-singular damping and accommodation matrices, the relationships ft«vt and fj«vj are bi-directional. The relationships vt ®vj and fj®ft are, on the other hand, unidirectional for redundant parallel manipulators. This is because the inversion of the non-square Jacobian (or its transpose) is not always physically meaningful as we have observed in the last section. These unidirectional branches are responsible for specifying the general direction of the force-velocity cycle. Fig. 2. The force-velocity cycle for a passive parallel redundant manipulator. The cycle may start from task-space velocity or task-space force only. Since passive systems consist of unpowered joints, they may only respond to forces or velocities imparted in the task- space. Thus, there are only two starting nodes in the force- velocity cycle of passive manipulators, those corresponding to vt and ft . See Fig. 2. Now consider the question: What joint-space force fj results from a given task-space velocity vt ? We are looking for the vt®fj mapping here. The general rule is to start from the given input vector vt , travel in the causal direction (shown by the arrowheads) of the force-velocity cycle, get pre-multiplied by the encountered matrices until the output vector fj is reached. Following this rule we obtain the desired relationship fj = (Dj J) vt . Although any two vectors may be related this way, only those relationships which represent mapping from one of the starting vectors are physically meaningful for a passive manipulator. For instance, one may express the mapping vj®vt as vt = (At JT Dj ) vj. Since joint-space velocities are generated only as consequences of task-space velocities, and not the other way around, vj®vt is not a meaningful mapping for passive manipulators. The force-velocity cycle also helps in answering a typical matrix transformation question such as the following: How to compute the task-space damping matrix Dt for a given joint- space damping matrix Dj ? The representative mapping here is Dj ®Dt. From the force-velocity cycle of Fig. 2, we see that Dt represents the mapping vt®ft. This mapping may be represented in an alternative way if we follow the route vt®vj®fj®ft. One may obtain this alternative relationship as, ft = (JT Dj J )vt . (6) Comparing (6) with the relationship ft = Dt vt , we may derive the well-known expression: Dt = JT Dj J , (7) which linearly maps a joint-space damping matrix to the corresponding task-space damping matrix. We complete this discussion by illustrating the force- velocity diagram for serial redundant manipulators. As shown in Fig. 3 this diagram is dual to that for parallel manipulators. It is interesting to note that the general causality direction of Fig. 3 is clockwise, which is opposite to that for parallel redundant manipulators (Fig. 2). B. Linear Directions of Matrix Mapping There are four different mappings of accommodation and damping matrices in a manipulator. These are Dj ®Dt, At®Aj., Aj ®At, and Dt®Dj . We will show that for parallel redundant manipulators only the first two mappings are linear whereas for serial manipulators only the last two are linear. From the force-velocity cycles we can see that only if there are two different valid routes between two adjacent vectors, we get a linear relationship between the associated matrices. For example, the mapping Dj ®Dt, (see Eq. 7) was derived We observing that there are two different routes from vt to ft. One may obtain an At®Aj mapping by exploiting two different routes between fj and vj . The first route is direct and it involves Aj only (see Fig. 2). The other route is along fj®ft®vt ®vj. Following the procedure used for obtaining (7), we get Aj = J At JT . (8) One can check that for a parallel manipulator it is impossible to obtain the other two linear mappings, Aj ®At and Dt®Dj , without inverting the Jacobian. We will show that inversion of J or JT produces physically meaningless results. Fig. 3. The force-velocity cycle for a passive serial redundant manipulator. The cycle may commence from task- space velocity or task-space force only. For the manipulator in Fig. 1, we can obtain the linear relationships (7) and (8) as3, Dt = d1 + d2 and Aj = \B\LC\[\RC\](\A\CO2\AC\VS4\HS8(at,at,at,at)) , (9) where Aj and at are the joint-space and task-space accommodation matrices respectively. at is a scalar in this case. As another example, for a given Aj = \B\LC\[\RC\](\A\CO2\AC\VS2\HS6(a1,0,0,a2)), where a1= 1/d1 and a2= 1/d2, we can compute At = Dt-1 = (JT Dj J)-1 = (1/a1 + 1/a2)-1, a Aj ®At relationship that involves nonlinearity. If we invert (8) and use At = J+ Aj (JT)+, this would produce wrong results. This is because it assumes a linear Aj ®At relationship where no such relationship really exists. Also the process of pseudo-inversion of Jacobian matrices looses the information about task-space velocity constraints. We compute J+ = [0.5 0.5] and (JT )+ = (J+)T , and calculate At = J+ Aj (JT )+ = 0.25(a1 +a2). One can easily check that this result is incorrect. For serial manipulators, we have dual results that follow from Fig. 3, At = J Aj JT , (10) and Dj = JT Dt J , (11) which are the only linear relationships between accommodation and damping matrices in a serial redundant manipulator. One should remember that the Jacobian J in (10) and (11) represents the vj®vt mapping. Notice that for non-redundant manipulators, serial or parallel, one may obtain all of the four transformations given by (7), (8), (9), and (10). C. Flexibility in Programming a Task-Space Matrix Flexibility in programming a task-space matrix in a redundant manipulator results from the extra choice of joint- space force (in parallel) or joint-space velocity (in serial). In Fig. 4 we show how the existence of nullspace forces in a parallel manipulator gives rise to a set of joint-space accommodation matrices, all of which map to a single task- space accommodation matrix. Fig. 4. An abstract illustration depicting the redundancy of accommodation matrices in a parallel manipulator. An infinite number of combinations of Aj is equivalent to a specified At. Consider the effect of a particular task-space accommodation matrix A\O(*,t ) on a particular task-space force f\O(*,t ). The transformation of this force takes place according to v\O(*,t ) = A\O(*,t ) f\O(*,t ). This task-space velocity corresponds to a unique joint-space velocity v\O(*,t ) = J v\O(*,t ). We know that there are an infinite number of joint-space forces f\O(k,j ), each of which maps to f\O(*,t ) under the transformation of JT (see Section IV. B). These forces are composed of a unique row space component of JT and arbitrary nullspace components. From Fig. 4, we can infer that any A\O(k,j ) that maps one of the f\O(k,j) to v\O(*,t ) is equivalent to A\O(*,t ). Consequently we have an infinite number of joint-space accommodation matrices all of which are equivalent to A\O(*,t ). All different joint-space forces that are resulted from a given f\O(*,t ) by modifying the accommodation/damping characteristics in a fixed geometry mechanism, have a unique row space component given by (JT)+ fj = f\O(*,t ). This is true since all the fj must satisfy (2) which is a consequence of invariance of power in joint-space and task-space. For a serial manipulator the situation is reversed. For a given f\O(*,t ) and v\O(*,t ) we will have a unique f\O(*,t ) and an infinite number of combinations of vj. VI. APPLICATION Recall that our main interest is the implementation of passive force control laws by a low-inertia unpowered mechanical device. Such a device may be used as the wrist of a robot connecting the workpart and the robot body. The wrist may be a miniature parallel mechanism in the form of a hydraulic Stewart platform. From electrical network theory we know that a network of passive programmable resistors (potentiometers) may be systematically programmed to possess a class of symmetric conductance matrices (analogous to accommodation matrices) called dominant matrices. The diagonal elements of dominant matrices are greater than or equal to the sum of the absolute values of all other elements in the same row (or column) [15] . For a specified task-space accommodation matrix, a set of equivalent joint-space matrices exist in a redundant manipulator, although not all of them are accessible by the linear transformation of the task-space matrices. In fact, we show that joint-space matrices that are images of task-space matrices under the linear transformation (8) or (11) are all singular matrices of rank m, where m is task-space DOF. This is due to the fact that At is of rank m, and no linear congruence transformation on it (here, with full rank Jacobians) may change the rank of the resulting matrix. We have illustrated the transformation of accommodation and damping matrices with the help of Venn diagrams in Fig. 5. We explain this figure with the help of our simple parallel manipulator of Fig. 1. As seen in (9) every Aj which are images of task-space matrices under linear transformation are singular with Fig. 5. An illustration of the fact that the image of task-space accommodation matrices under linear mapping consists of singular joint-space accommodation matrices only. Area ¬ corresponds to Aj matrices of rank m. Area ­ corresponds to Yj matrices of rank n. Area  corresponds to Dj matrices of rank n. Area à corresponds to Dj matrices of rank less than n. m and n are the task-space DOF and the joint-space DOF, respectively. equal elements. This is a marginally dominant matrix and is implementable. These matrices belong to area ¬ in Fig. 5. Any matrix of the form Aj = \B\LC\[\RC\](\A\CO2\AC\VS1\HS3(a1,0,0,a2)) where the specified task-space matrix At = (1/a1 + 1/a2)-1 belongs to area ­ . There are other more general non-singular matrices which go to area ­ . For the specified Aj above, area  will contain matrices of the form Dj = \B\LC\[\RC\](\A\CO2\AC\VS2\HS4(d1,0,0,d2)). There will be other non-singular damping matrices which would fall in the category of area Â. For a given At = Dt-1, a typical matrix of area à is of the form Dj = \B\LC\[\RC\](\A\CO2\AC\VS1\HS6(d11,d12,d12,d22)) where Dt = d11+ 2d11 + d22 and d11d22Ð d122 = 0 (to render Dt singular). In order to justify the search for appropriate joint-space accommodation matrices beyond area ¬ , we give a simple example to demonstrate that for a given At equivalent dominant matrices may exist beyond area ¬. Imagine a parallel redundant mechanism with three hydraulic cylinders arranged in the same pattern as in Fig. 1. The Jacobian matrix for the mechanism is J = [1 1 1]T. Now, for a given at = 3, the joint-space accommodation matrix given by (8) is Aj = \B\LC\[\RC\](\A\CO3\AC\VS2\HS4(3,3,3,3,3,3,3,3,3)). This resulting Aj is not a dominant matrix, and therefore we don't know a systematic way to implement it. However one can easily find out a dominant Aj = \B\LC\[\RC\](\A\CO3\AC\VS2\HS4(9,0,0,0,9,0,0,0,9)) that can be easily implemented. This matrix belongs to the area ­. We may verify that the later Aj indeed corresponds to the given at by transforming it as follows: Aj ®Dj ®dt®at. VI. CONCLUSIONS This paper investigated how physical quantities such as velocities, forces, and accommodation and damping matrices transform between task-space and joint-space of redundant manipulators. We found that parallel redundant manipulators have joint- space force redundancy. The joint-space velocities are subjected to constraints, the violation of which would require mechanical failure of the manipulator. Serial redundant manipulators, on the other hand, have a higher DOF only in joint-space velocities. The joint-space forces, in this case, are subjected to constraints, the violation of which would require infinite joint velocities. By virtue of their force or velocity redundancy, redundant manipulators may exhibit an increased range of task-space accommodation and damping matrices. This makes them valuable for the implementation of force control. Redundancy dictates the causal directions in which accommodation and damping matrices may linearly transform between the joint-space and the task-space of a manipulator. These causal directions result from the fact that the inversion of non-square Jacobian matrices are not physically meaningful. Joint-space matrices are mapped in a many-to-one fashion to the task-space matrices. This provides a manipulator the flexibility to choose from a set of joint-space matrices in order to achieve a specified task-space matrix. However this is complicated by the fact that this mapping is not always linear. Also, the linear transformation that maps task-space matrices to joint-space matrices result in singular joint-space matrices only. Therefore one has to look beyond these linear mappings in order to exploit the full potential offered by kinematic redundancy. ACKNOWLEDGMENTS The authors wish to acknowledge useful discussion with Ed Colgate and Joe Schimmels. This work was supported by Northwestern University and NSF grant DMC-8857854. REFERENCES 1. Anderson, R. J. Dynamic Damping Control: Implementation Issues and Simulation Results. Proceedings of the 1988 IEEE International Conference on Robotics and Automation. Cincinnati, OH (68-77) IEEE Press (1990) 2. Asada, H. and Y. Kakumoto. The Dynamic RCC Hand for High-Speed Assembly. Proceedings of the 1988 IEEE International Conference on Robotics and Automation. Philadelphia (120-) IEEE Press (1988) 3. Colgate, J. E. and N. Hogan. Robust Control of Dynamically Interacting Systems. International Journal of Control 48(1):65-88 (1988) 4. Cutkosky, M. R. and P. K. Wright. Active Control of a Compliant Wrist in Manufacturing Tasks. Journal of Engineering for Industry ; Transactions of the ASME 108(February):36-43 (1986) 5. Goswami, A., M. Peshkin and J. E. Colgate. Passive Robotics: An Exploration of Mechanical Computation. IEEE International Conference on Robotics and Automation. Cincinnati IEEE Press (1990) 6. Griffis, M. and J. Duffy. Kinestatic Control: A Novel Theory for Simultaneously Regulating Force and Displacement. The 1990 ASME Design Technical Conferences. Chicago (287-295) The American Society of Mechanical Engineer (1990) 7. Hogan, N. Impedence Control: An Approach to Manipulation. ASME Journal of Dynamic Systems, Measurement, and Control 107:1-24 (1985) 8. Kim, J.-O., P. Khosla and W.-K. Chung. Static Modeling and Control of Redundant Manipulators. Robotics and Computer Integrated Manufacturing Vol. 9(No. 2):pp. 145-157 (1992) 9. Loncaric, J. Elastic Systems and Quasistatic Grasp Stability. Proceedings IEEE International Conference on Robotics and Automation. Sacramento IEEE Press (1991) 10. Mussa-Ivaldi, F. A., P. Morasso and R. Zaccaria. Kinematic Networks: A Distributed Model for Representing and Regulating Motor Redundancy. Biological Cybernetics 60:1-16 (1988) 11. Newman, W. S. and M. E. Dohring. Augmented Impedance Control: An Approach to Compliant Control of Kinematically Redundant Manipulators. Proceedings of IEEE International Conference on Robotics and Automation. Sacramento, CA (30-35) IEEE Press (1991) 12. Peshkin, M. A. Programmed Compliance for Error- Corrective Assembly. IEEE Transactions on Robotics and Automation 6(4):473-482 (1990) 13. Schimmels, J. M. and M. A. Peshkin. Admittance Matrix Design for Force Guided Assembly. IEEE Transactions on Robotics and Automation Vol. 8(No. 2):213-227 (1992) 14. Wang, D. and M. Vidyasagar. Passive Control of a Single Flexible Link. Proceedings of the 1988 IEEE International Conference on Robotics and Automation. Cincinnati, OH (1432- 1437) IEEE Press (1990) 15. Weinberg, L. Network Analysis and Synthesis. McGraw- Hill Electrical and Electronic Enginerring Series. Terman ed. McGraw-Hill Book Company, Inc. New York (1962) 16. Whitney, D. E. Quasi-Static Assembly of Compliantly Supported Rigid Parts. ASME J. Dynamic Systems, Measurement, and Control. 104:65-77 (1982) 17. Whitney, D. E. Historical Perspective and State of the Art in Robot Force Control. International Journal of Robotics Research 6(1):3-14 (1987) 1Cross-coupling of the hydraulic cylinders gives rise to the off- diagonal terms in the damping matrix, see [5] 2an (n-m)-infinity combinations of fj 3For this manipulator, impedance matrices and admittance matrices are replaced by damping matrices and accommodation matrices, respectively.