1202
IEEE TRANSACTIONS ON ROBOTICS, VOL. 22, NO. 6, DECEMBER 2006
Superposition Methods for Distributed Manipulation Using Quadratic Potential Force Fields Konstantinos Varsos, Student Member, IEEE, and Jonathan Luntz, Member, IEEE
Abstract—Planar quadratic potential fields are useful for distributed manipulation because they are readily analyzable and naturally produce predictable equilibria. This generally simplifies implementation, since feedback and control may not be necessary. Traditionally, to dynamically produce moving fields for complex manipulation tasks, these fields had to be realized by highly capable, but redundant, actuator arrays. This paper suggests a new method: using simpler devices to generate basic component fields, and superposing these fields to produce desired fields with similar degrees of freedom. This approach is particularly useful for naturally produced force fields which do not allow the dynamic moving and changing of a field, but allow for superposition, and thus, can be spatially combined to produce the desired net behaviors. A vector representation of these fields is developed and applied to two problems: how to place the fields in space to span the maximum possible configuration space; and how to generate an optimal solution to generate a desired field by a superposition of a fixed field arrangement with minimal effort from each field. We experimentally validated these methods using airflow fields based on phenomenological and time superposition. Finally, we use superposition to simplify trajectory following, by blending proportions of two fields over time and by superimposing a set of component fields, each responsible for compensating a particular dynamic term. Index Terms—Distributed manipulation, parts feeding, programmable force fields, quadratic potential fields.
I. INTRODUCTION ISTRIBUTED manipulation systems induce motions on objects through the application of many external forces. The general task is to impart some desired motion to an object, either in space or restricted to a plane, by using either a large number of independently controlled actuators acting at many points on the object, or by exploiting the dynamics of a continuous medium which is in contact with the manipulated object. Many forms of distributed manipulation systems exist, including those based on vibrating plates [1], [2], actively controlled air jets [3], passive airflow fields [4], and planar micro[5], [6], mini- [7], and macro-mechanical actuator arrays [3], [8], [9]. By nature, such systems generally involve redundant actuation, and hence, provide tremendous manipulation power. In
D
Manuscript received January 9, 2006; revised May 5, 2006. This paper was recommended for publication by Associate Editor D. Sun and Editor K. Lynch upon evaluation of the reviewers’ comments. This work was supported in part by the National Science Foundation under CAREER award RHA-0093312. This paper was presented in part at the International Conference on Intelligent Robots and Systems, Beijing, China, October 2006. Color versions of Figs. 2-4, 6, 7, and 9-11 are available at http://ieeexplore.ieee.org. The authors are with the Department of Mechanical Engineering, University of Michigan, Ann Arbor, MI 48109 USA (e-mail:
[email protected];
[email protected]). Digital Object Identifier 10.1109/TRO.2006.882924
addition, by distributing the application of force, these devices allow the manipulation of thin, flexible, and delicate objects. The concept of a programmable force field abstracts many distributed manipulators, including actuator arrays, which explicitly generate arbitrary forces at every point in the planar field. An object experiences net force and moment, which are the integral of the pointwise force field over the area of the object. The study of programmable force fields reduces to the determination of the net force and moment as a function of the shape of the field and of the object, and the object’s position and orientation relative to the field. Typical work in this area revolves around the particular problem of bringing an object to a unique position and orientation in a sensorless manner. Based on minimalistic manipulation concepts [10]–[12], Böhringer, et al. [5] began examining provably useful force fields for orienting objects. Improving upon this, Kavraki [13] analyzed an elliptic potential field which orients most parts to one of two orientations (within symmetry). Finally, these researchers combined a unit radial field and constant (gravity) field to bring parts to a single orientation [14]. This line of research trades off feedback and control complexity for actuation complexity using redundant actuation to produce predictable equilibria without sensing and control. Previous work in [14] and [15], generating elliptic fields (and other powerful distributed manipulation fields), required pointwise actuation (i.e., a dense array of individually addressable actuators) leading to complicated devices. More recent work [16] naturally produces the same fields without requiring large numbers of actuators. Specifically, the class of quadratic fields (which includes elliptic fields) was generated by establishing shaped planar airflow regions shaping the manipulating field, thus providing the same manipulating power with a much simpler implementation. However, all this prior work is based on a “one” field philosophy, where manipulation is done by a single potential force field which offers a limited set of manipulation behaviors to the object. This is due to the fact that most of the force fields are stationary, and thus cannot offer the manipulation flexibility which would allow more manipulation tasks, such as controlling the motion of an object and following trajectories. These tasks require the device to be capable of producing an infinity of different fields. This does not pose a problem for actuator arrays, whose redundant degrees of freedom (DOFs) allow the generation of any field. A field generator based on natural phenomena, however, can typically produce just one field. This work takes advantage of the linear superimposability of the class of quadratic fields to allow a small number of simple natural
1552-3098/$20.00 © 2006 IEEE
VARSOS AND LUNTZ: SUPERPOSITION METHODS FOR DISTRIBUTED MANIPULATION
field generators to form a “vector basis” which produces a wide range of quadratic fields. Thus, complex actuation tasks can be performed with simple implementations without the highly redundant actuation found in traditional approaches. In Section II, we first discuss, in a general sense, different approaches to superimposing fields for a variety of implementation methods, comparing their applicability in certain situations, and their relative merits. In Section III, we briefly review the definition and classification of quadratic potential force fields and their action on objects. Section IV presents a vector space representation of quadratic fields, which provides the mathematical basis for superposition. In Section V we demonstrate how to place the fields in space to span the maximum possible configuration space, and how to generate an optimal solution to generate a desired field by a superposition of a fixed field arrangement with minimal effort from each field. In addition, we present experimental results demonstrating two different methods of superposition using airflow to produce critical quadratic fields. In Section VI, we demonstrate how superposition can be applied to simplify the problem of trajectory following, by either using time-balancing field blending or motion-component field superposition. II. SUPERPOSITION METHODS Superposition of force fields can be accomplished by a variety of methods, depending on the method of generation.1 Superposition methods fit into four main categories: programmable, time, multifield, and phenomenological superposition. A. Programmable Superposition In programmable superposition, the potential force fields are numerically combined on the software level in the system controller. A fully programmable force field is then programmed accordingly and the manipulating system directly produces the desired net field. Such a type of superposition may be accomplished by actuator array devices, which are the most common form of distributed manipulation seen in the literature [3], [5]–[9]. This method has the advantage that any conservative or nonconservative fields may be combined. Many fields in the literature require this type of superposition [14], [17]. These systems are usually complex and expensive with discretization nonlinearities. B. Time Superposition In the absence of a fully programmable force field, it may be possible to apply fields from a set of static preprogrammed fields one at a time, and interleave them in time according to some duty cycle. The time-averaged effect will be the linear superposition of the fields. The accessible set of net fields, in this case, is limited by the set of independently generatable fields, and by the frequency at which the fields can be switched. However, this method can still produce a wide range of powerful fields [18]. Time superposition is subject to time-discretization error, and can result in local unstable behavior with a limit cycle between each equilibrium, depending on the frequency of switching. 1Classification
of generation methodologies are discussed in [16].
1203
C. Multifield Superposition We can simultaneously use multiple actuator systems to produce a force field if their actions are not physically coupled. Thus, the manipulated object will experience the sum of the independently applied fields. There are two basic approaches: independent phenomena and spatial interleaving. Phenomena that are naturally independent in their generation and action can be easily linearly superimposed. For example, Böhringer suggested manipulation fields using the combination of a gravitational field and an actuator array [14]. Another example of such manipulation would be the use of airflow fields with magnetic fields. Alternatively, multiple instances of the same phenomenon may be used by spatially interleaving multiple sets of field generators (for example, in an offset grid pattern) such that the net effect produces the desired field when averaged over the manipulated object. For example, two parallel, interleaved sets of electrodes attached to two different voltage patterns could produce an average electrostatic potential field. While the net fields that can be generated are limited only by the individual actuator systems, the actuator systems themselves are limited to those that can act simultaneously and independently. There is generally a tradeoff between power and complexity in a multifield system, where very expressive fields are typically more difficult to superimpose than simpler fields. D. Phenomenological Superposition Natural phenomenon such as airflow or electric fields can produce force fields, which respect the dynamics of the phenomena according to the configuration of the field generator. For example, a suction point produces a radially directed field in planar airflow [19]. Multiple fields can be linearly superimposed by applying multiple field generators, as long as the phenomenon superimposes linearly. Normally, such fields are expressed as a differential equation (ex. Poisson’s or Laplace’s equation), and thus, superposition may be used if the net field belongs to the set of solutions depicted by the differential equation. We can distinguish two cases: boundary condition superposition, where several sets of boundary conditions produce a net field between them [19], and point-density superposition, where distributions of fields generators combine their action [16]. While such systems are limited in the fields they can produce by the solutions to the differential equations, relying on physical phenomena is typically much simpler in implementation than other approaches, and many useful fields are still accessible [16], [19], [20] III. QUADRATIC POTENTIAL FIELDS In this section, we give a brief introduction to some useful properties of quadratic potential force fields. We analytically discuss field placement and the decomposition of fields to translational and rotational components. A. Quadratic Fields The general form of a quadratic potential is (1)
1204
where acting on a point
IEEE TRANSACTIONS ON ROBOTICS, VOL. 22, NO. 6, DECEMBER 2006
is a point in global coordinates. The force is the negative gradient of (1) (2)
is a constant force, and the symmetric stiffness where . This force is defined as the traction matrix is force per unit area on the object, independent of any physical , as it does not contribute to the phenomenon. We can set force. Thus five parameters uniquely represent a quadratic field. We can now define the placement of a field as the position and the orientation of its of its equilibrium principal axis (expressed in rotation matrix )
Using the definition of object centroid the net force about the centroid is
,
(5) (6) where is the identity, and . This net force is independent of the shape of the object as the integral over the area reduces to area and centroid terms. The net moment is obtained by integrating the scalar cross , where is the position relative to the product ). By rotating the field and center of mass (i.e., , and aligning it with the object’s principal axes, we have . The net moment will be thus
(3)
In general, we determine the position of the field by solving . However, when is for the location , where singular, the selection of becomes somewhat arbitrary; the solution is not unique, and we choose the solution closest to the origin. and represent the strengths of the The eigenvalues field in the directions of the first and second eigenvectors, re), and despectively (i.e., the and directions when scribe the behavior of the field. Thus, any quadratic field can be represented by five parameters (three scalars and a 2-vector) . Based on the action that a quadratic field has on an object described in the next subsection, we now introduce the orientaand position strength tion strength . Using these definitions, a field is pointwise and , meaning the stiffness mastable when trix is positive definite, such that a single stable equilibrium exists for a point in the field. We can now define the tuple (4) B. Net Force and Moment on an Object The net force acting on an object is obtained by integrating the pointwise forces over the area of the object for any shape object, as long as it is compact. This was done for quadratic fields in [21] and separately for circular fields in [22]. Since the force field is defined explicitly in terms of traction force per unit area, no assumption about the mass distribution of the object is required, although later in the paper, in the case of fluid flow fields, uniformity of surface roughness assumptions are made
where is the second product of area of the object about its centroid in a coordinate frame aligned with the field (note that we have expanded the cross product of the second term). The integrals add up to zero based on the into a definition of the centroid. In addition, we can rotate coordinate frame fixed to the object (7) If we align the object-fixed frame ( - ) with the object’s , and thus, the moment major principal axes, then about the object centroid with its principal axis rotated at an is angle
(8) Similar to the expression for net force, the shape of the object is integrated out of the expression, and only the second moments about the centroid of the object remain. Therefore, the same expression applies for any shape object, whether symmetric or appears as a scaling factor on the net asymmetric. Note that moment, hence, the term orientation strength. Experimental validation of (5) and (8) for several symmetric and asymmetric objects can be found in [16]. Quadratic potential fields can be classified based on their shape and stability properties (Fig. 1) determined by the stiffand (equivalently, and ). The ness coefficients is an elliptic field. For case when
VARSOS AND LUNTZ: SUPERPOSITION METHODS FOR DISTRIBUTED MANIPULATION
1205
rotational component (balanced hyperbolic field) can be arbitrary chosen [by setting in (9)] to satisfy the equation
(10) where . , we choose the circular and hyIn the cases where . perbolic fields to lie on the same point The net force and moment of the decoupled equation is now the summation of the net forces and moments from the circular and hyperbolic fields (11) (12) Fig. 1. Elliptic (upper left), hyperbolic (upper right), critical (lower left), and constant (lower right) quadratic potential fields.
a pointwise stable elliptic field,2 an object will come to stable translational equilibrium with its centroid coincident with the origin of the field, according to the positive-definite matrix term in (6). The torsional spring term in (8) has four zero crossings , two of which have negative . Therefore, objects reach one of two slope stable equilibria with the principal axis aligned with the field is a circular axis. The special case where . field with stiffness matrix , the equilibrium of the field When is a saddle and describes a hyperbolic field. A balanced hyperwith stiffness matrix bolic field has . When or the resulting critical field only applies a force in the nonzero-strength direction. Equilibrium lies everywhere along a line, aligned with the sole , eigenvector of the field. When the only contribution to force is , which is a constant field.
IV. SUPERPOSITION OF QUADRATIC FIELDS A simple way of superimposing any quadratic field would be to directly add their potential matrices. It is evident that any resultant potential will be a quadratic form, even for noncollocated fields. Thus, any arbitrary combination of quadratic fields with different equilibria will result in a unique quadratic field. This suggests that by controlling the superimposed fields, we can control the behavior of the resulting field, and equivalently under quasistatic assumptions, the position and orientation of the object. However, using this approach, the parameters of the resulting net field would have to be extracted from the net potential. Since this operation does not include any information about the lifted behavior of the field, it does not allow its use for controllability and design purposes. In this paper, we will take a different approach, and apply a useful vector representation of quadratic fields which permits easier affine transformations. Definition 1: Any quadratic field can be represented by the vector form
(13) C. Decomposition From the above categorization, we recognize that the position and orientation strengths and appear as scaling factors of a unit circular and a unit balanced hyperbolic field, and thus, we have the following. Proposition 1: Any quadratic field can be represented by a translational (circular field) and a rotational component (balanced hyperbolic field). Thus, (3) can be written as (9) where the decoupling of position and orientation allows the two fields to not be collocated (in the cases where ). The and positions of the translational component (circular field)
K
2Without
). If
S
S > K >
loss of generality, we assume the convention that 0( = ) or = , orientation is not possible.
= 0(
K
K
I
I
where and . Note that this representation predicts that fields 180 apart are equivalent (thus, the two possible orientations for one object). This differs in (4), which does from the earlier tuple representation of not take this into account, and uses the field position rather than the offset force. The information carried by this vector representation pertains to the lifted behavior of the field. Based on the above definition, we can state [23] the following. Proposition 1: Any superposition of quadratic fields will be given by the simple vector addition Proof: The net field is given by the direct summation of the pointwise forces in the decoupled form. Combining the fields in the form of (6)
(14)
1206
IEEE TRANSACTIONS ON ROBOTICS, VOL. 22, NO. 6, DECEMBER 2006
~ vector is represented by the vertical axis, while the S~ plane Fig. 2. (a) Vector addition of orientation strengths. (b) 3-D representation of quadratic fields. The S is represented by the horizontal plane.
Solving the above equations for the unknown parameters, we get the system of equations (15) (16) (17) (18) From (15), we determine the net position strength . Equations and the ori(16) and (17) give both the orientation strength entation angle . Equation (18) gives the resultant offset force. Equations (16) and (17) show that we can treat the orientation strength of each field as a vector, with magnitude that of the scalar and angle twice the angle of rotation of the field, , hence, the vector representation introduced earlier. The resulting vector addition of two fields (displayed in Fig. 2(a)) is (19) The two strengths of the fields and form a useful 3-D vector space, shown in Fig. 2(b). Each quadratic field is represented by a point in this space. Any point inside the cones represents an elliptic field, while any point outside represents a hyperbolic field. Circular fields are represented by the axis, while critical fields are represented by points on the surface of the cones, and constant fields are represented by the null vector (origin) in this space. Note that this space does not incorporate , and hence, does not show the position of a field, although the orientation of a field is given by half the angle of the horizontal projection of its vector. V. SUPERPOSITION SPANNING Since we wish to design a manipulation system that can manipulate a planar object with translation and orientation through the use of superposition of a number of stationary fields, we are concerned with two basic problems: 1) how to place the fields in space in order to provide the maximum possible configuration space for the fields (i.e., the space of possible equilibrium
configurations under different combinations of field strengths); and 2) how to generate an optimal solution to generate a desired field by a superposition of a fixed field arrangement with minimal effort from each field. The vector representation of quadratic fields provide us with a convenient linear algebra approach to representing summations of multiple fields. Without loss of generality, since the ratio between orientation and position strength describes the shape (but not the position, orientation, or magnitude) of a field, the vector representation simplifies to . The linear strength of the field appears as a scaling factor, and does not change its shape, position, and orientation.3 Thus, superpositions can be represented in the linear form (20) is a matrix whose columns are the where vectors representing each field, with are a column vector with the position strengths of each field, is the net field, and is the number of fields to be superimposed. A. Optimal Field Placement for Spanning the Configuration Space In this subsection, we are concerned with the problem of how to set the fields in space (in fixed positions and orientations), such that when these are superimposed and their strengths varied, the net field maximally spans the larger possible subspace of net fields. We shall only consider the bounded positive , as praclinear span of these fields tically, the use of unstable fields would complicate the realization, and generally the amplitude of each field is fields to positively bounded. Note that we require at least span the -dimensional subspace. 1) Optimization Problem: To maximize the configuration space of the net field, we need to maximize the positive bounded linear span of the vectors, which can be translated to a nonlinear 3Note that 1=S F ~ = (I + RHR ), and thus, components f x , , and , and not S . and f =S are actually functions only of ~
=S
VARSOS AND LUNTZ: SUPERPOSITION METHODS FOR DISTRIBUTED MANIPULATION
1207
Fig. 3. Results of the optimal placement of five and eight fields. Each field is represented by a line. The center of each field is represented by a circle. In the five-field case, the fields form a pentagon. In the eight-field case, the fields form a star. In both cases, the fields are placed at evenly spaced angles and encircle the box.
Fig. 4. Results of the placement of three fields. Left: Without the use of a weight matrix, the solution becomes degenerate. This arrangement does not span orientation nor position. Right: The use of the weight matrix gives a triangle that spans the preassigned box.
optimization problem where we desire to maximize the hypervolume of the hyper-parallelepiped defined by the vectors. For the underdetermined case (where there is an excess of linearly and rank independent fields to be placed), , and a measure of the hypervolume is the square root of the pseudodeterminant matrix . For the . For the exactly determined case, this reduces to , the objective function is overdetermined case where . Thus the optimization problem can be stated as maximize s.t.
(21) (22) (23)
where are the locations of the fields, and is a subspace on which the fields are allowed to be placed. Note that of more constraints and a weight matrix can be easily added, if necessary, to accommodate for design constraints. 2) Examples: To demonstrate the use of optimal field placement, we optimize the placement of three, five, and eight critical fields, each represented by a line in the plane. The vector representation of a critical field simplifies to . This form directly carries the information about the location of the fields rather
than the constant force component. In this example, we restrict box the placement of the fields on a rectangular area (Fig. 3). For five fields, the system is exactly determined, and the solution gives a pentagon with the fields assigned on the far edges of [Fig. 3 (left)]. For eight fields, the results of the optimization give us a star-shaped region [Fig. 3 (right)]. Note that the net field, which is generated after the superposition of critical fields, lies anywhere within the region defined by the line equilibria of the fields. These results are consistent with the intuitive result that the fields should be placed at the edges of the restricted plane at even angles. Even angles maximize the span of possible orientations, while placing the fields as far from each other as possible maximizes the span of positions. Finally, for three fields, the optimization as defined above gives a degenerate solution, due to the reduction of dimension of the hypervolume [Fig. 4 (left)], yielding infinite hypervolume in position, but no hypervolume in orientation. By adding a weight matrix , the optithat emphasizes the span in the orientation plane mization changes to a right triangle which covers the maximum area while spanning a 180 angle. 3) Hardware Demonstration: Orientation Spanning Using Phenomenological Superposition: To demonstrate that we can phenomenologically span orientation, we have built an experimental device that can superimpose two critical fields at 45
1208
IEEE TRANSACTIONS ON ROBOTICS, VOL. 22, NO. 6, DECEMBER 2006
Fig. 5. Top: Superpositions of two critical fields placed in several different an~ plane), the area covered by the positive linear span gles. For 45 (90 in the S of the two vectors is the maximum. Bottom: The superposition of two critical fields angled in 45. The resulting net field for this case is always an elliptic ~ vector spans double the angle, and its magnitude is always bigger field. The S than the individual orientation strengths. Two superpositions are shown, where one field is added to a fraction times another field.
relative to each other. This represents the optimal span between two fields on the basis of maximal vector span of , or equivalently, using during the optimization procedure. In this case, the vectors span a 90 angle, corresponding to a 45 degree angle in orientation [as in (19)], while the location of the position always stays at the intersection of the two critical fields, as shown on the bottom of Fig. 5. On the top of Fig. 5, we present other angles of two field superposition which do not represent the maximum area of the vector span. In [16], it was shown that quadratic fields can be generated using planar airflow. More specifically, by inducing planar airflows generated by regions of suction (sinks) in the plane, quadratic-shaped potential flow can be established, which manipulates objects resting on a low-friction surface via viscous traction forces. This was based on the fact that the dynamics of the physical medium can be exploited by setting the differential equation that governs the phenomena, and thus, the forces at each point in space. Since stable quadratic fields have constant negative divergence, we can match this with an appropriately shaped uniform distributed sink region, which also has a constant negative divergence (see [16] for details). The process of building this manipulation system can be described in two steps: 1) regulate the divergence to match the desired one by adjusting the density of the sinks over a region; 2) shape the region to acquire a linear force. Since setting the flow rate sets the divergence at each point in the plane, we can superimpose quadratic fields by superimposing flows, i.e., by simultaneously applying multiple, overlapping flow sink regions. The resulting divergence will be the sum of the divergences of the superimposed fields. Alternatively, since locally, we set the solution at each point in space, to Poisson’s equation any superposition of solutions is also a solution, and thus, superposition of quadratic fields with flow fields is possible. A critical field is produced by an adjustable flow rate rect, angular region is the flow rate, and is a constant of proportionwhere ality related to the skin friction of the air over the object. By adjusting the flowrate through the rectangular sink region, which
Fig. 6. This experimental setup consists of a superposition of two critical fields. There are two rectangular sink regions which partially overlap to create the superposition. At the overlapping region, the flow is the sum of the two flows.
can easily be controlled by a regulating flow valve, we can directly adjust the strength of the critical field. Two overlapping rectangular regions with individual valves allow superposition of two critical fields, creating an elliptic field. Note that in our case, while we do not have an exact value for , it is a property of the object, and therefore, the same of both fields, and does not affect the equilibrium location of the object in our experiments. The experimental device consists of three parts: 1) an air table on which the object is floating in order to reduce the friction; 2) an airflow chamber which is used to evenly distribute the flow over the sink region; 3) an airflow filter which is shaped according to the region shape, as shown in Fig. 6 (a photo of the actual device is shown in Fig. 7). The flow chamber consists of five different compartments which correspond to the five different regions in which a superposition of two rectangular regions is divided. The flowrate to the compartments can be separately adjusted by flow valves. A single air vacuum pump is responsible for sucking the flow through the compartments. The flow valves have been calibrated so that the two critical fields have the same flow strength at their maximum. In this way, the overall flow is kept constant, and thus, we can assume that , where is the flow fraction between the two fields. By adjusting the flowrate of the two fields (or, equivalently, and ), we can span an orientation of 45 . Note that in this case, the net field will always be an elliptic field, and that as we vary the flows, the aspect ratio of the ellipse changes accordingly. The angle for each superposition is given by
(24) A plot of the object’s orientation angle versus the flow fraction is shown in Fig. 8. Using a standard approach [24] to eliminate the outliers, we present only the data that were within the
VARSOS AND LUNTZ: SUPERPOSITION METHODS FOR DISTRIBUTED MANIPULATION
1209
B. Optimal Field Strength Selection
Fig. 7. Picture of the actual device. The flow toward the chamber is regulated by a system of pipes which are all connected to the main suction pump.
Fig. 8. Experimental results for the orientation. The experimental fit and the expected curve are shown. The variability occurred in the upper and lower tails of the curve can be attributed to the inability of the one field to produce an evenly distributed flow due to the lack of pressure in the chamber.
95% prediction bound of the initial data set. We fitted the data to , which is on the form of (24), and and the fitting parameters were found to be , which are very close to the expected values, while , which signifies a very good fit. Other types of functions were also tested, but resulted in a lower . In Fig. 8, both the actual and the fitted curves are shown. The 95% prediction bound of the revised data is also shown.
Once the fields to be superimposed have been placed, we need which will to determine the distribution of field strengths give us any particular desired net field. Note that it is required range , where range is the bounded positive that range, otherwise, the system is inconsistent and there is no solution. 1) Optimization Problem: Since this problem has already been formulated as a linear systems of equations, if both stable and unstable fields can be superimposed, we can use standard optimization methods to find the best fit. For the exactly determined case, we can solve for . Using least squares, for the underdeter, and for the overdemined case . These solutions termined case might give negative values to the strengths of the fields, which requires the use of unstable fields. If we are restricted to the bounded positive linear span, the fitting problem becomes more complex. For the underdetermined case (overactuated systems), there exist multiple solutions for the same desired field. If the solution exists, we desire the solution that minimizes the total consumption of energy. The energy , which consumption can be translated to minimizing is associated with the “flow of energy” by each field. This is accomplished by minimizing the error using standard quadratic optimization techniques for this problem minimize
(25)
s.t.
(26)
We can use the same method for the underactuated case where the number of fields is less than the available DOFs, though , the configuration space of the net field does not span and thus, there is no guarantee of the existence of a solution, although quadratic optimization will find the closest possible fit. 2) Hardware Demonstration: Combination of Critical Fields Using Time Superposition: To demonstrate the use of time superposition, we have constructed an experimental setup that can combine three critical fields that form a triangle, where (positions are given in millimeters). We demonstrate three different superpositions: , and . Time superposition is accomplished by using the “hopping” method, as described in [16]. At each step, we activate the air bearing for a small interval of time while the manipulating flow of the critical suction region is on. This causes the object to lift from the surface of the airtable and move a small distance as directed by the drag force of the flow. At each step, we use a different critical field dictated by the required sequence of fields suitable for the time superposition. For this case, the respective and sequences are . Fields , and are realized by the same rectangular sink region which is placed in different locations and orientations to form the triangle.
1210
IEEE TRANSACTIONS ON ROBOTICS, VOL. 22, NO. 6, DECEMBER 2006
Fig. 9. Experimental results for two runs. Top: Orientation results for the object. In both cases, the mean value of the observations is close to the expected orientation angle. Bottom: X and Y position results for the location of the object. The two runs are consistent with respect to each other. The consistent error can be attributed to the existence of a constant field (i.e., inclination of the airbearing). After approximately 15 steps, the object reaches a limit cycle.
Fig. 11. Top: the error plot for the orientation for multiple runs of three different time superposition cases. The circle depicts the observed mean value for orientation for each case. The horizontal lines depict the expected angles. The graphs suggest that with time superposition, we have good controllability over the angle of the object. Bottom: the associated S vector plots that describe the three superpositions.
Fig. 10. Experimental setup with the three critical fields. The object moves under the influence of each field from its initial pose and reaches a limit cycle in position and orientation.
The resulting net fields for each of these three superpositions are , and . The experimental results for the orientation and the position of the object for two separate runs of the first case are shown in Fig. 9. The object reaches a limit cycle in both cases after a sequence of
approximately 15 steps. The error in the final position of the object can be attributed to the existence of the gravitational field due to a slight inclination of the airbearing, but since orientation is independent of position, orientation is unaffected. In Fig. 10, we present the actual experimental observations of the object as it moves from the initial position to the final limit cycle. Finally, in Fig. 11, we present the error plots for the orientations of the object in all three cases along with the vector plots. The results suggest that we have associated good controllability over the angle of the object and the error is decoupled from the position of the object, as expected from the theoretical results.
VARSOS AND LUNTZ: SUPERPOSITION METHODS FOR DISTRIBUTED MANIPULATION
1211
VI. SUPERPOSITION OF FIELDS FOR TRAJECTORY FOLLOWING Moving objects along desired trajectories is a common task for which superposition of force fields is well suited. We can formally state this task of trajectory following as the transporting with specof an object along a time-parameterized path ified orientation . Note that the ideas in this section are not demonstrated in hardware, due to the fact that the current hardware is not capable of producing fields spread over a wide enough area or of producing continuously moving fields.
Fig. 12. Example: Two-point field blending. The equilibrium of the net field moves along the bold line. An intermediate state of the superimposed field is also shown.
A. Equations of Motion To accurately describe the nature of the manipulating system, we need to consider both the net traction force and moment due to the force field, and the net damping force and moment acting on the object due to the environment. The net traction force and moment are given by (11) and (12). To compute the net damping force and moment, we assume that each point in the field induces a damping force per unit area equal to some damping constant times the negative velocity of the object at . We express the pointwise that point, of the object in terms of the position and velocity velocity of the object centroid, and , and the rotation speed of the . While we are mod-
object
eling the object moving through a viscous medium on a spatially continuous force field, this model applies to a more general set of distributed manipulation implementations. For example, the viscous model is actually the limiting case of an infinitely dense array of motorized wheels with velocity-dependent friction contact and evenly distributed (unit) object weight, and approximately applies in the truly discrete case [25]. We can compute the net damping force and moment acting on the object by integrating the pointwise forces and moments over the area covered by the object, (27) (28) In general, the net damping force [the integral of the second term , and the net damping torque [the in (27)] reduces to , integral of the second term in (28)] reduces to where is the polar moment of area of the object. This simplification results from picking the centroid of the object as our reference point. Thus, the damping is independent of the applied field, and both the rotational and translational damping forces are linear. Thus, the net damping force and moments are and
(29)
The equations of motion can now be derived using (6), (8), and (29) (30) (31) where is the polar moment of inertia of the object. Equations (30) and (31) represent linear mass-spring-damper-type
dynamics, with the exception of the sinusoidal torsional spring term. Note that the same result would be obtained by assuming that the pointwise object velocity is not negligible relative to the flow speed, and that the manipulating drag force is proportional to the pointwise difference in speed between the flow and the object. B. Time-Balancing Field Blending For the simple task of moving an object between two points, we can simply use direct switching between two stable attracting fields located at the initial and final positions. The object will initially reach equilibrium at the first point, and will dynamically move to the final position after the switch. Such a method of moving between two points is rather sudden and produces a significant overshoot, in practice. We can accomplish the same task more smoothly by blending two fields that are located at the initial and ending points. Their strengths can vary according to a linear time schedule. We place two quadratic fields and at fixed positions is in space. Without loss of generality, we can assume that at the origin aligned with the axes , while the second field is at . As an example case for analysis, we to coincide with the line connecting choose the orientation of , as shown in Fig. 12, and the two centers and . The fields are choose each field to have the same balanced in a linear manner according to equation
(32) where is a continuous monotonically increasing function , where and . The two defined for fields act in the same plane, and thus they can be superimposed. The strengths of the net field will be given by (33) (34) Note that (34) states that the net positioning strength is constant, due to the convex form of (32). After superposition, the net quadratic field is placed at (35) This equation predicts the curved trajectory shown in Fig. 12. This method can be easily extended for multiple points, where
1212
IEEE TRANSACTIONS ON ROBOTICS, VOL. 22, NO. 6, DECEMBER 2006
the transition from one point to the other follows the same balancing rules. Any trajectory can be easily approximated by a set of point-field way points along the trajectory.
C. Motion Component Fields Up to now, we have been concerned with how to generate desired fields from single stationary component fields. As a more general case, we will consider trajectory-following applications where we can place multiple moving fields in the plane. We introduce two main methods for the general task of dynamic trajectory following: trajectory following with single-field compensation and trajectory following with motion component fields. 1) Single-Field Compensation: We place the moving field “ahead” of the trajectory (both in position and orientation) such that the object will move exactly along the desired path. Over time (in steady-state), the convergent nature of the fields will drive the errors to zero, assuming a perfect model. Thus we need to invert and solve the nonlinear (30) and (31) at each point along the given desired trajectory. We can approximate the task by first computing the compensation needed for a straight line or a circular trajectory. These will give closed, time-invariant forms for the compensation. Then we instantaneously fit to the arbitrary path a straight line or a circle, and apply at each instant the previously computed compensation (this was done in [21] and summarized here). a) Straight Line: To fit a straight line, we compute at each point the tangent of the arbitrary path and place the field along this tangent (and oriented with it) ahead of that point by a distance . That distance would compensate for the steady-state error due to friction in a straight-line trajectory: . This fit does not compensate for rotation rate, and thus does not perform well for sharply curved paths or trajectories demanding a high rotation rate. b) Circular Path: To fit a circle at each point, we compute the curvature of the path and the center of curvature at each point. We then place the field at an appropriate angle and position to compensate for the steady-state errors (i.e., the difference between the moving desired trajectory and the actual position of the object in steady state) due to friction. We can precompute the appropriate compensation terms if we invert the dynamics of the equations of motion for a circular path. In this case, we place the field so that it leads the desired trajectory in orientation and along a different circle to bring the object to the desired circular trajectory. We first compensate for orientation since it is independent from translation. Here, we simply may lead the trajectory orientation by the predicted steady-state error . Equation (31) gives
(36) There is a fundamental limit in how fast we can rotate the object, represented by the argument of the inverse term. If our trajectory exceeds this limit, overcoming rotational drag would
require more torque than the field can provide, effectively “saturating” the rotation actuator. For position, we cannot simply use the open-loop steady-state error as our compensation term since we are now rotating the , rotating the field ahead of the the trajectory. Since field changes the forces applied to the object, and we must recompute the and compensation terms in terms of the orientation compensation . Thus, position is no longer decoupled from the orientation (but orientation is still independent from first. We follow a similar position), and we must compute friction-canceling procedure which led to the straight-line compensation terms. The motion of the object will be described by
(37) (38) and . Note that since this with shorthand compensation fits a circle at each point, it does not perform well for high rates of change of curvature. 2) Application of Position-Orientation Decoupling: Rather than computing a single field, we can apply the position-orientation decoupling property to the task of trajectory following. To construct a field to manipulate an object along a trajectory, we will superimpose fields to perform three functions: 1) provide a centripetal force around a curved path to counteract inertial forces; 2) provide a force to overcome translational friction and counteract linear acceleration; 3) provide a moment to overcome rotational friction and counteract the forces due to angular acceleration. The net field will pull the object along the desired trajectory. 1) Centripetal Acceleration Field: To counteract inertial forces of the object on a curved path, we place a circular field (as it must not affect orientation) at the center of curvature of the path . The net force it exerts on the object must be the force required to keep the object along the circle with the same of the path, radius as the instantaneous radius of curvature . Thus, we use a circular field , with with velocity , located at the center of curvature of the path
(39) where superscript na stands for “acceleration normal to the trajectory.” 2) Tangential Speed Compensation: To counteract friction, we place a circular field ahead of the trajectory along the tangent to the path at a distance such that the field’s attractive force exactly cancels friction at a speed . From (6) and (29), must be the lead distance of the field given the field strength
(40)
VARSOS AND LUNTZ: SUPERPOSITION METHODS FOR DISTRIBUTED MANIPULATION
Thus we place the field along the tangent of the path distance given by the above equation. The field will be
1213
at a
(41) where superscript tf stands for “friction tangent to the trajectory.” 3) Tangential Acceleration Compensation: To counteract the force due to linear acceleration, we will superimpose a circular field along the tangent of the path with field strength at a distance (42) The field will be (43) 4) Angular Speed Compensation: The above two circular fields maintain the centroid of the object along the trajectory. Orientation will be handled by two hyperbolic fields placed at the desired trajectory. Assuming the object lies over that point, the hyperbolic field induces no net force on the object. We shall regard only the orientation dynamics which are decoupled from position dynamics.4 With this field, we compensate the offset in angle due to friction. Assuming that the object rotates at the same rate as the trajectory, we can compute [as was done for (36)] the leading angle on the trajectory, which is needed so that the object exactly matches the angle of the trajectory
(44)
Fig. 13. Example: the object is required to follow a sinusoidal trajectory. Centripetal Q , tangential Q , and rotational Q ; Q fields are combined to an elliptic field Q .
5) Angular Acceleration Compensation: With the second hyperbolic field, we provide torque on the object to compensate the forces that are produced from angular acceleration. The leading angle on the trajectory that is needed so that the object exactly matches the angle of trajectory for a constant angular acceleration is
(47)
where is a manipulability measure for accelerating an ob, and thus, both ject. Note that for uniform density metrics carry similar information. The field will be (48)
Note that depends on the shape of the object, but not the size, and it is a unitless measure of how manipulable the object is. Its value specifies the maximum permissible rate (due to inverse function) of rotation of the object, so it can keep up with the trajectory (45) There is a fundamental difference between this measure and the symmetry coefficient stated by Kavraki [13]. The latter does not consider the movement of the object and the effects of damping. Additionally, it loses information about the direction of the object’s major axis and depends the dynamic on the orientation of the object. Thus, we name the static manipulability. The field will manipulability and be (46) 4Even if there will be some error due to improper modeling or disturbances, as long as S S S > S , the object will be stably pulled toward is the net orientation strength of superimposed the trajectory point, where S fields.
+
+
The free variables , and are selected based on the fact that the resultant elliptic field must be stable, which implies that the net circular field (combined tangential and centripetal fields) must be stronger than the hyperbolic field; such that if the object deviates from the desired trajectory, it is pulled stably back. As an example of using three fields for trajectory following, we simulate a case similar to that used in [21], where a rectangle moves at constant speed along a sinusoidal trajectory oriented tangentially to the path. Fig. 13 shows a snapshot of the simulation. The figure shows the three fields as well as the resultant , which we know to be elliptic. field Note that to directly implement these fields requires the ability to place and control arbitrary moving fields on the plane (not static). However, the analysis presented in this section could be used as a design tool for dynamic trajectory following, and the fields actually implemented through superpositions of static fields, as discussed in Section V. 3) Perturbation Analysis: This feedforward action brings the object close to the desired trajectory, since the fields are naturally stable. In [21], a perturbation analysis was done in
1214
IEEE TRANSACTIONS ON ROBOTICS, VOL. 22, NO. 6, DECEMBER 2006
existence of modeling error in and with the same initial conditions, the system enters a limit cycle around an offset equilibrium. In both cases, the trajectory is locally stable. VII. CONCLUSION
Fig. 14. Example: open-loop responses of x-y errors in local coordinates with initial condition (I.C.) and with (M.E.) and without (No M.E.) modeling error.
global coordinates. In this paper, we will analyze perturbation dynamics in local coordinates, relative to the moving trajectory fixed frame. The decoupling of position and orientation allows their separate analyses. Assuming that the trajectory rotation rate is below the manipulability threshold defined by (45), we can linearize the orientation dynamics and examine a perturbation around the trajectory and . If we substitute this into (31), we can expand the term into a Taylor series. The feedforward terms cancel, leaving only the perturbation terms (49) where . For the position dynamics, we first make the perturbations in global - , such that and (50) , where and, for example ( evaluated at ). The above equation is expressed in the global inertial frame. We will transform this to a local system coordinate which rotates along and assuming that the with the trajectory. Using time-dependent dynamics vary slowly with respect to the perturbation dynamics, we can regard them as constants, and thus derive the linearized equations
(51) where . Note that the Coriolis acceleration term couples the two DOFs. In addition, it acts toward the center of curvature, which causes the cross-coupling term to be nonminimum phase. This equation is stable and convergent, indicating that for small perturbations, the trajectory is stable. To verify the trajectory stability, we simulated the same example as shown in Section VI.C–2 for the nonlinear system. In Fig. 14, we show the - plot of the position errors with initial conditions both with and without modeling error. Without modeling error, the position error converges to zero. With the
Quadratic fields, in addition to being readily analyzable, naturally produce predictable equilibria, thus simplifying implementation, since feedback and control may not be necessary. On the other hand, traditionally producing an arbitrary quadratic field generally required the use of a highly capable but complex and redundant actuator array. The results in this paper, however, suggest a different approach where a simpler device produces some basic component fields, and these superimpose to produce desired fields with similar DOFs. This approach is particularly useful for naturally produced force fields which do not allow the dynamic moving and changing of a field, but allow for superimposition and thus can be spatially combined to produce the desired net behaviors. After laying out a vector representation of these fields, we applied this approach to two problems: how to place the fields in space to span the maximum possible configuration space, and how to generate an optimal solution to generate a desired field by a superposition of a fixed field arrangement with minimal effort from each field. We experimentally validated two methods of superposition using airflow fields, phenomenological superposition and time superposition, where predictable equilibrium positions and orientations were demonstrated for varying combinations of fields. The methods presented in this paper can be used to simplify the tasks of trajectory following. We provided a method of time-balance field blending to smoothly transition between multiple points. In addition, the ability to decompose and superimpose quadratic fields provides tools for designing fields specific to tasks. In particular, since we can separate functions such as translation and rotation, we can design simple functional components of a more general quadratic field based on the task at hand, and superimpose these fields after they have been separately defined. This allows an intuitive, rather than purely analytical or numerical, approach for designing fields. ACKNOWLEDGMENT The authors give special thanks to A. Kosin for helping with the construction of the experimental devices. REFERENCES [1] K. Böhringer, K. Goldberg, V. Bhatt, and B. Donald, “Algorithms for sensorless manipulation using a vibrating surface,” Algorithmica, vol. 26, pp. 389–429, Mar. 2000. [2] P. Frei, M. Wiesendanger, R. Büchi, and L. Ruf, “Simultaneous planar transport of multiple objects on individual trajectories using friction forces,” in Distributed Manipulation, K. F. Böhringer and H. Choset, Eds. Norwell, MA: Kluwer, 2000, pp. 49–64. [3] M. Yim, J. Reich, and A. Berlin, “Two approaches to distributed manipulation,” in Distributed Manipulation, K. F. Böhringer and H. Choset, Eds. Norwell, MA: Kluwer, 2000, pp. 237–261. [4] J. Luntz and H. Moon, “Distributed manipulation with passive air flow,” in Proc. IEEE Int. Conf. Intell. Robot. Syst., 2001, pp. 195–201. [5] K. Böhringer, B. Donald, R. Mihailovich, and N. MacDonald, “Sensorless manipulation using massively parallel microfabricated actuator arrays,” in Proc. IEEE Int. Conf. Robot. Autom., 1994, pp. 826–833.
VARSOS AND LUNTZ: SUPERPOSITION METHODS FOR DISTRIBUTED MANIPULATION
[6] J. Suh, R. Darling, K. Böhringer, B. Donald, H. Baltes, and G. Kovacs, “CMOS integrated organic ciliary actuator array for general-purpose micromanipulation tasks,” in Distributed Manipulation, K. F. Böhringer and H. Choset, Eds. Norwell, MA: Kluwer, 2000, pp. 49–64. [7] S. Tadokoro, S. Fuji, T. Takamori, and K. Oguro, “Distributed actuation devices using soft gel actuators,” in Distributed Manipulation, K. F. Böhringer and H. Choset, Eds. Norwell, MA: Kluwer, 2000, pp. 217–235. [8] J. Luntz, W. Messner, and H. Choset, “Parcel manipulation and dynamics with a distributed actuator array: The virtual vehicle,” in Proc. IEEE Int. Conf. Robot. Autom., 1997, pp. 1541–1546. [9] T. Murphey and J. Burdick, “Feedback control for distributed manipulation systems that involve mechanical contacts,” Int. J. Robot. Res., vol. 23, no. 7, pp. 763–781, Jul. 2004. [10] S. Akella, W. Huang, K. Lynch, and M. Mason, “Sensorless parts feeding with a one joint robot,” in Proc. Workshop Algorithmic Found. Robot., 1996, pp. 229–238. [11] M. Erdmann, “An exploration of nonprehensile two-palm manipulation,” Int. J. Robot. Res., vol. 17, no. 5, pp. 467–484, 1998. [12] K. Goldberg, “Orienting polygonal parts without sensors,” Algorithmica: Special Issue Comput. Robot., vol. 10, pp. 201–225, 1993. [13] L. Kavraki, “Part orientation with programmable vector fields: Two stable equilibria for most parts,” in Proc. IEEE Int. Conf. Robot. Autom., 1997, pp. 2446–2451. [14] K. Böhringer, B. Donald, L. Kavraki, and F. Lamiraux, “Part orientation with one or two stable equilibria using programmable force fields,” IEEE Trans. Robot. Autom., vol. 16, no. 2, pp. 157–170, Apr. 2000. [15] J. Luntz, W. Messner, and H. Choset, “Distributed manipulation using discrete actuator arrays,” Int. J. Robot. Res., vol. 20, no. 7, pp. 553–583, Jul. 2001. [16] K. Varsos, H. Moon, and J. Luntz, “Generation of quadratic potential force fields from flow fields for distributed manipulation,” IEEE Trans. Robot., vol. 22, no. 1, pp. 108–118, Feb. 2006. [17] A. Sudsang and L. Kavraki, “A geometric approach to designing a programmable force field with a unique stable equilibrium,” in Proc. IEEE Int. Conf. Robot. Autom., 2001, pp. 1079–1085. [18] D. Reznik, E. Moshkoich, and J. Canny, “Building a universal planar manipulator,” in Distributed Manipulation, K. F. Böhringer and H. Choset, Eds. Norwell, MA: Kluwer, 2000, pp. 147–171. [19] H. Moon and J. Luntz, “Prediction of equilibria of lifted logarithmic radial potential fields,” Int. J. Robot. Res., vol. 23, no. 7–8, pp. 747–762, Jul.–Aug. 2004. [20] ——, “Toward sensorless manipulation using airflow,” in Proc. IEEE Int. Conf. Robot. Autom., 2004, pp. 1574–1579.
1215
[21] K. Varsos and J. Luntz, “Distributed manipulation along trajectories using open-loop force fields,” in Proc. IEEE Int. Conf. Robot. Autom., 2002, pp. 1203–1209. [22] A. Sudsang, “Sensorless sorting of two parts in the plane using programmable force fields,” in Proc. IEEE Int. Conf. Intell. Robot. Syst., 2002, vol. 2, pp. 1784–1789. [23] K. Varsos and J. Luntz, “Analysis, decomposition and superposition of quadratic potential force fields for distributed manipulation,” in Proc. IEEE Int. Conf. Intell. Robot. Syst., 2003, pp. 3168–3173. [24] D. S. Moore and G. P. McCabe, Introduction to the Practice of Statistics, 3rd ed. New York: W. H. Freeman, 1999. [25] J. Luntz, W. Messner, and H. Choset, “Distributed manipulation using discrete actuator arrays,” Int. J. Robot. Res., vol. 20, no. 7, pp. 553–583, Jul. 2001.
Konstantinos Varsos (S’00) received the diploma from the Department of Electrical Engineering and Computer Technology, University of Patra, Patra, Greece, in 2000, and the Masters degrees in 2001 from the Department of Industrial and Operations Engineering and the Department of Mechanical Engineering, University of Michigan, Ann Arbor, where he is currently working toward the Ph.D. degree in mechanical engineering. His research interests include distributed manipulation, medical robotics, and industrial automation.
Jonathan Luntz (M’00) obtained the B.S. degree in mechanical engineering from the State University of New York at Buffalo in 1992, and the M.E. and Ph.D. degrees in mechanical engineering from Carnegie Mellon University, Pittsburgh, PA, in 1994 and 1999, respectively. He joined the University of Michigan, Ann Arbor, as an Assistant Professor of Mechanical Engineering in 2000, and in 2004, joined the research faculty as an Assistant Research Scientist. He currently works in the areas of distributed manipulation, cooperative mobility, smart material actuation (particularly with shape memory alloy), and in reconfigurable logic control of combined hardware and software resources in manufacturing systems.