Page 66 - Sensing, Intelligence, Motion : How Robots and Humans Move in an Unstructured World
P. 66
COMPLIANT MOTION 41
y
x A
A
B 2 B 2
B 1 B 1
T T
(a) (b)
p
A
B 2 B 2
B 1 B 1 A
T T
p
(c) (d)
Figure 2.9 In this task, as object A is moved by the robot arm along the surface of table
T , between positions (c) and (d), the control system has to maintain a compliant contact
between A and T .
practical purposes the grasped object A becomes the rigid continuation of the
robot hand. The contact relation between object A and objects B 1 , T ,and B 2 is
each a point relation and easy to accomplish. Our primary concern is the contact
relation between object A and surface T during the motion of A along T .This
contact relation is an external constraint on the arm’s position control during
this part of the path. The PID controller in our example in Figure 2.8 realizes
positioning control; that is, it concerns itself only with the robot arm endpoint
position (θ 1 ,θ 2 ) [or, equivalently, (x, y)]. In the example in Figure 2.9, such
a controller would work as long as the arm moves in free space. But when
the arm attempts to move its endpoint along the surface of table T , a contact
constraint comes in, affecting the y component of the arm motion and acting as
another “control.” With two simultaneous constraints affecting the same motion
components, one from the control system and the other from a contact constraint,
the system is overspecified.
In other words, we have a potential conflict. Imagine that at some moment
a little bump on the table will require the arm to move for an instant up and
then down again. As the robot control will “insist” on moving along the straight
line, the arm’s positioning system will likely fail because of inconsistency of the
simultaneous constraints. Besides deviations of surface T from its model, there
may be a conflict due to modeling uncertainty, controller errors, and so on. We
need to resolve this conflict.
The solution is to (a) add a force control at this part of the path and (b) limit
the force and positioning controls so that each type never creates an overspecified