1. Field of the Invention
This invention relates generally to a system and method for controlling a tendon-driven manipulator using closed-loop control. In particular, the joint angle and torque in the joints of the manipulator are controlled in such a way that it reduces coupled transient joint motions and allows for independent motion of the joints.
2. Discussion of the Related Art
Dexterous robot systems typically comprise robot arms and hands that operate to grasp and manipulate objects or parts during assembly or other applications. The term “robot manipulator” is used to describe all or part of one or more robot arms and hands. Tendon-driven robot manipulators are robot manipulators that are actuated using tendons or cables that allow the actuators to be located outside of the part of the manipulator being controlled. Tendon transmissions are frequently used to actuate distal joints in robot manipulators. They can improve strength-to-weight ratios by allowing actuators to be located closer to the base of the manipulator. They also give the mechanical designer more flexibility in actuator selection. For example, when the manipulator is a tendon-driven finger in a humanoid robotic hand, the actuators are typically located in the forearm area of the robotic arm. In this case, tendons extend from the forearm actuators to the fingers, where they are attached.
It is sometimes the case that the number of tendons in a tendon-driven manipulator is associated with a corresponding motion by multiple tendons. This is the case with “n+1” tendon arrangements where n+1 tendons bi-drectionally actuate n joints. n+1 tendon arrangements are useful because they allow bi-directional joint actuation with a minimum number of actuators. However, this presents an extra control burden because the resulting physical coupling between tendons and joints must be decoupled in the control system. During control, the actuators must move multiple tendons so that the tendons do not stretch or break as the manipulator joints move. For one joint motion, there is a plurality of tendon motions that are required to make the joint motion. Thus, there is a complex motion between joint motion and tendon motion.
Known control schemes for controlling the actuators that actuate the tendons are typically hierarchical in nature. Each actuator is associated with a single controller that controls the position of a single tendon or the force applied by a single tendon. A higher level controller sends commands to each of the single-tendon controllers so as to realize a particular joint motion or torque. When this hierarchical approach to control is used, the dynamics of the low-level controllers cause coupled joint motions. In other words, because each low-level controller controls a single tendon, and the motion of a single tendon causes multiple joints to move, the dynamics of the low-level controllers cause coupled joint motions. As a result of this coupling, multiple joints may move when motion of only a single joint is desired. Thus, undesired motions occur in the robotic manipulator.
It is frequently desirable to control joint compliance and torque in tendon-driven manipulators. This is particularly true for robot hands where the tendon driven manipulators are fingers. For these applications, precise control of the dynamics of the forces applied to the environment by the fingers is paramount. For example, compliance control in the joints of robot fingers is an effective way to wrap the fingers around an object, thereby maximizing the contact surface area and improving the grasp. Alternatively, a robot may grasp and lift an object more robustly when the contact forces are accurately controlled. In these applications, it is essential to control joint positions and forces independently and in a dynamically accurate way.
A system and method for controlling the joint torque and impedance of a tendon-driven robot manipulator is disclosed. The method includes calculating tendon reference positions or motor commands by projecting a torque error into tendon position space using a single linear operation. The method calculates the torque error using sensed tendon tensions and a reference torque and internal tension. The method can be used to control joint impedance by calculating the reference torque based on a joint position error. The method limits minimum and maximum tendon tensions by projecting the torque error into the tendon tension space and then projecting it back into the joint space.
Additional features of the present invention will become apparent from the following description and appended claims, taken in conjunction with the accompanying drawings.
The following discussion of the embodiments of the invention directed to a system and method for controlling tendon-driven manipulators is merely exemplary in nature, and is in no way intended to limit the invention or its applications or uses.
The following embodiments apply the present invention to the control of a tendon-actuated finger. However, the present invention can be applied to any tendon-driven robot manipulator. Consider the perspective view of a robotic finger 10 for a robotic arm shown in
The joints of the finger 10 are manipulated by tendons 28 in a manner that is well understood in the art. The tendons 28 are coupled to tension sensors 32, typically in the forearm area of the robotic arm. The tension sensors 32 provide a signal of the tension in the tendons 28 that provides an indication of the force on the finger 10. The tendons 28 provide a pulling force that is actuated by a suitable actuator, such as motors 34.
Assuming that all joints are revolute, the relationship between tendon tensions and joint torques can be described by:
τ=Rf (1)
Where τ if the vector of n joint torques and f is a vector of m≧n+1 tendon tensions.
Note that by inverting this relationship, a set of tendon tensions that generates a specified torque can be calculated as:
f=R+τ+N(R)λ (2)
Where R+ is the pseudo-inverse of R and N(R) is the null space of R.
The requirements that it be possible to generate arbitrary bi-directional joint torques while applying strictly positive tendon tensions is known as force closure and can be expressed as two constraints on R. First, in order to be able to generate arbitrary joint torques, R is required to be surjective. Second, a λεRm−n must exist such that every element of N(R)λ is strictly positive. When these conditions are met, the elements of equation (2) can be made strictly positive by scaling λ by the necessary amount.
Let W be the orthogonal compliment of R such that RWT=0. Vectors of tendon tension in the span of W can be referred to as internal tendon tensions. Furthermore, for convenience, the matrix R shall be augmented with its orthogonal complement, resulting in a square and full rank matrix P:
Using this notation gives:
Where t describes the internal tendon tension of the system.
Using a virtual work argument, it can be shown that P can also be used to describe the relationship between tendon velocities and joint velocities. Let {dot over (x)}describe a vector of m tendon velocities and let {dot over (q)} describe a vector of n joint velocities. Then:
Where θ describes the internal tendon velocity of the system, i.e., the set of tendon velocities that do not generate any joint velocity. Because internal tendon velocities do not cause the joints to move, it is only possible for the internal tendon velocity to be non-zero in the context of elastic tendons.
It will be useful to write these relationships in the frequency domain and to distinguish between the portion of the tendon attached to the actuator and the portion attached to the manipulator. Let Xa be the position of the tendon at the point that is attached to the linear actuator. Let Xj be the position of the tendon at the point that it is attached to the joint. When using joint-space tendon control, it is useful to express tendon positions in joint space. Recall that the relationship between joint velocities and tendon velocities given in equation (5) allowed for non-zero internal tendon velocities {dot over (θ)}. These internal velocities are only possible on the actuator side of the tendon. On the actuator side:
Where Qa and Θa describe the position of the actuator-side tendons in terms of joint-space variables.
Integrating equation (6) gives:
Where the constant of integration is assumed to be implicit in the measurement of Xa.
On the joint side of the tendon, no internal velocities are possible because there is no elasticity between the joint-side tendon and the joint. Therefore, Θj is always zero and:
Xj=RTQj (8)
Where, again, the integration constant is assumed to be implicit in the Xj measurement.
One embodiment of the invention uses joint-space torque control in the context of a proportional integral controller. For this control law, the desired joint space behavior is:
Where Q*a and Θ*a are joint-space actuator commands, and s is the Laplace variable.
Using equations (4) and (7) gives:
Where kp and ki are assumed to be multiples of identity.
As was done for tendon space control, the joint torque reference can be used to implement a joint compliance law as:
τ*=Kc(Q*j−Qj) (11)
The resulting joint space compliance law is:
The control law of equation (12) is illustrated by a block diagram in
The signal is then provided to a summation junction 56 in a torque controller portion 58 of the system. The torque controller portion 58 operates in the torque space. The summation junction 56 receives a torque feedback signal from a block 60 and a signal from a b block 62. The torque controller portion 58 is a proportional/integral controller that is controlling the torque of the specific joint that provides a joint displacement signal. Boxes 64 and 66 integrate the signal. Box 68 converts the signal from the desired joint displacement to a desired tendon displacement.
The tendon displacement signal is sent to the motor 34 to control the tendon tension. It is assumed that the motor contains a high-speed position controller. The effect of sending the signal to the motor 34 is modeled by a passive robot dynamics portion 70 of the system 40. A summation junction 72 models the amount by which the tendon 28 is stretched between the actuator and manipulator. A block 74 models the tendon stiffness and calculates the resulting tendon tensions. Boxes 76, 78 and 80 in the robot dynamics portion 70 all define the inertia and physical coupling of the robotic system. Using the joint displacement signal, the passive robot dynamics portion 70 models the position of the joints that is embodied in the joint value that is fed back to the comparator 42.
Another embodiment of the invention uses joint-space torque control in the context of a proportional derivative controller. For this control law, the desired joint space behavior is:
Where kd and kp are the proportional and derivative gains.
This control law can be written in the tendon space as:
X*a=Xa−kdXas+kp(RTτ*+WTt*−PTPf) (14)
Incorporating the desired joint reference position, the corresponding tendon space impedance law is:
X*a=Xa−kdXas+kp(RTKc(Q*j−Qj)+WTt*−PTPf) (15)
Note the similarity between equations (14) and (15). The only difference between the two control laws is the use of PT versus P−1. Using the transpose of the inverse produces the decoupled motion in the joint-space. This is analogous to the duality associated with the Jacobian in the Cartesian control of serial manipulators. Consider the two control laws: J−1Δx and JTΔx. The first produces straight line motion in Cartesian space, while the second produces coupled Cartesian motion.
The foregoing discussion discloses and describes merely exemplary embodiments of the present invention. One skilled in the art will readily recognize from such discussion and from the accompanying drawings and claims that various changes, modifications and variations can be made therein without departing from the spirit and scope of the invention as defined in the following claims.
The invention described herein may be manufactured and used by or for the U.S. Government for U.S. Government (i.e., non-commercial) purposes without the payment of royalties thereon or therefore.
Number | Name | Date | Kind |
---|---|---|---|
4860215 | Seraji | Aug 1989 | A |
4974210 | Lee | Nov 1990 | A |
5103404 | McIntosh | Apr 1992 | A |
5207114 | Salisbury et al. | May 1993 | A |
5388480 | Townsend | Feb 1995 | A |
5499320 | Backes et al. | Mar 1996 | A |
5710870 | Ohm et al. | Jan 1998 | A |
6081754 | Schlemmer | Jun 2000 | A |
6199271 | Hahn et al. | Mar 2001 | B1 |
6226566 | Funda et al. | May 2001 | B1 |
6233504 | Das et al. | May 2001 | B1 |
6385509 | Das et al. | May 2002 | B2 |
6393340 | Funda et al. | May 2002 | B2 |
6494039 | Pratt et al. | Dec 2002 | B2 |
6532400 | Jacobs | Mar 2003 | B1 |
6840127 | Moran | Jan 2005 | B2 |
6999850 | McDonald | Feb 2006 | B2 |
7184858 | Okazaki et al. | Feb 2007 | B2 |
7260450 | Okazaki et al. | Aug 2007 | B2 |
7331967 | Lee et al. | Feb 2008 | B2 |
7363109 | Jiang | Apr 2008 | B2 |
7386366 | Dariush | Jun 2008 | B2 |
7529632 | Ueda et al. | May 2009 | B2 |
7699835 | Lee et al. | Apr 2010 | B2 |
7747311 | Quaid, III | Jun 2010 | B2 |
7774177 | Dariush | Aug 2010 | B2 |
7795834 | Norihisa | Sep 2010 | B2 |
20060048364 | Zhang et al. | Mar 2006 | A1 |
20070016329 | Herr et al. | Jan 2007 | A1 |
20070118252 | Okazaki et al. | May 2007 | A1 |
20070255454 | Dariush | Nov 2007 | A1 |
20070285040 | Jenner, Jr. | Dec 2007 | A1 |
20080046122 | Manzo et al. | Feb 2008 | A1 |
20080140257 | Sato et al. | Jun 2008 | A1 |
20080300722 | Dudek et al. | Dec 2008 | A1 |
20090182436 | Ferrara | Jul 2009 | A1 |
20090209170 | Richter | Aug 2009 | A1 |
20100152898 | Reiland et al. | Jun 2010 | A1 |
20100161127 | Abdallah et al. | Jun 2010 | A1 |
20100168917 | Roh | Jul 2010 | A1 |
20110130879 | Abdallah et al. | Jun 2011 | A1 |
Number | Date | Country | |
---|---|---|---|
20100152898 A1 | Jun 2010 | US |