1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22


Computer Graphics Forum, 2(4), October 1992

12

advocate the coach-trainee concept because the continuity requirement is of first importance

for the resulting motion. Moreover, our approach is the kernel of a new editing methodology

which permits incremental adjustment of the constraints so as to avoid such artefacts.


A problem remains due to the discontinuous nature of the control at the boundary of a

cartesian half-space constraint . When the constraint

appears or vanishes for the trainee end

effector, the control is simply switched from direct to inverse kinematic control, or vice

versa, leading to a discontinuity in the joint variation solution (figure 6). For this reason, we

now present a global control scheme including both direct and inverse kinematics for smooth

control switching over a transition zone.

3.4

The transition function

Smooth control switching is appealing but how can we enforce it with half-space cartesian

constraints ? Conducting inverse kinematic control until both end effectors and configurations

coincide is not sufficient to implement continuous switching. Even in this case there is a

discontinuity in the joint variation space solution due to switching from the null

space

projection to the full secondary task. An important related point is that such end effector

tracking would also entail specifying a completely arbitrary cartesian trajectory as the main

task. Such behaviour is incompatible with the aim of our method.


The solution we offer is to confer a thickness on the boundary of the half-space constraints

and to operate the smooth switching on the resulting transition zone(figure 7) by means of a

transition functionf.The formulation of the combined direct and inverse kinematic control

scheme is given by the following equation (one dimensional constraint case) :

[!]q= J

+ (f [!]x + (1 - f) J [!]z) + (I-J+J) [!]z


with


0 <=


f


<= 1


(2)

For the extreme values of f , this results in the following equations :


f = 1


f = 0


provides


provides

[!]q= J

+([!]x) + (I-J+J) [!]z


[!]q= J

+J[!]z + (I-J+J) [!]z


(equation (1))


(secondary task)

= J+J[!]z -J+J[!]z


+ [!]z

=

[!]z

When multiple constraints are defined, each constrained dimension is associated with one

transition function and the general form of the solution becomes :