This low-level controller can be divided in four parts: the computed torque module, the inverse delta-p unit, the local PI controller and the bang-bang controller.
Using the Lagrange equations of the dynamic model the equations of motion can be summarized in the following matrix form (during single support):
Where M is the inertia matrix, which is symmetric and positive
definite, C is the centrifugal matrix which contains the
centrifugal torques and the
coriolis torques, G is the gravitational torque vector. This is the
feedforward calculation which is added with a proportional and
derivative feedback part for which the gains are tuned in order
for the mechanical system to behave as critically damped.
Immediately after the impact of the swing leg, three geometrical constraints are enforced on the motion of the system. They include the stepheight, steplength and angular position of the foot. Due to these constraints, the robot's number of DOF is reduced to three.
The equations of motion are then written as
where J is the Jacobian matrix and Lambda is a column vector
of Lagrange multipliers representing the generalized constraint
This problem can be solved by dividing the 6 coordinates into a group of independent and dependent coordinates. Using the matrix pseudoinverse, the torque vector can than be calculated. This feedforward term is added with a feedback part which gives the computed torque.
For each joint a computed torque is available. The computed torque is then feeded into the inverse delta-p control unit, one for each joint, which calculates the required pressure values to be set in the muscles. These two gauge pressures are generated from a mean pressure value p_m while adding and subtracting a Delta-p value:
Feeding back the joint angle theta and using the torque expression of the muscles, Delta-p can be determined by:
The delta-p unit is actually a feed-forward calculation from torque level to pressure level using the kinematic model of the muscle actuation system. The calculated Delta-p affects the torque needed to follow the desired trajectory while p_m is introduced to determine the sum of pressures which influences the stiffness of the joint. Increasing p_m will lower the compliance of the joint. This control law does not decouple stiffness control from position control since the weights k_1 and k_2 are not taken into account. Until now p_m has a fixed value, in the future we will adapt this parameter to reduce energy consumption and control efforts.
Because the communication between PC and the micro-controllers is slower dan 1ms, instabilities occur when the proportional and derivative feedback part of the computed torque are too high. To track the desired trajectory a local PI controller was needed to regulate the error introduced by lowering the feedback gains.
In the last control block the desired gauge pressures are compared with the measured gauge pressure values after which appropriate valve actions are taken by the bang-bang pressure controller.