The force regulator implements decoupled integral control laws for each force component: matrix K F is thus constant and diagonal. This choice is motivated by the fact that the integral regulator, if properly designed, guarantees a crossover frequency of the force-control loop which is compatible with the phase shifts due to delays in the loop and to unmodelled dynamics. This point is confirmed by recent results presented by Ferretti, et al. (1995a), which have shown the increasing stability of integral control with increasing contact stiffness. 245
Finally, the vector of contact force measurements, can be obtained from the outputs of a wrist-mounted force sensor through a fixed transformation, where the compliant frame is rigidly connected to the end- effector.
4.3 Application architecture for hybrid control
The AA for the algorithm previously discussed is reported as a data flow diagram (DFD) (Lawrence, 1988) in Fig. 5. Actually the DFD has a hierarchical representation, and each function (circle) of Fig. 5 may be represented by another DFD, and so on until a decomposition in sufficiently simple functions is obtained. Functions which cannot be further decomposed are called "leaves" of the overall DFD, and are described by the process specifications (PS).
Functions marked with "," in Fig. 5 should be further decomposed, while those marked with "p" should be described by the PS. Non-filled circles represent functions already implemented in the standard C3G.
Control functions joined to the right-hand colunm of circles (1, 2, 3, 4, 5) are those which are relevant to the forward path of the current C3G (see Fig. 4). They include the action command interpretation (circle 1), trajectory computation in joint or Cartesian space as time function polynomials (2), trajectory knot-point computation at each sampling time (3), inverse kinematics (4), microinterpolation and motor position servos (5). It is assumed here that the path is introduced directly from the work program; optionally, it might be stored in external files.
Functions of the circles in the left leg (12, 13, 14, 15) group together the processing of sensory signals. The output of the motor position sensors is filtered (circle 13) and then transformed into joint positions (15); likewise circle 12 is in charge of the low-level processing of force sensor outputs, and circle 14 of yielding force measures in the sensor reference frame (SRF).