A force-control scheme for biped robots to walk over uneven terrain including partial footholds

The robustness of biped walking in unknown and uneven terrains is still a major challenge in research. Traversing such environments is usually solved through vision-based reasoning on footholds and feedback loops—such as ground force control. Uncertain terrains are still traversed slowly to keep inaccuracies in the perceived environment model low. In this article, we present a ground force-control scheme that allows for fast traversal of uneven terrain—including unplanned partial footholds—without using vision-based data. The approach is composed of an early-contact method, direct force control with an adaptive contact model, and a strategy to adapt the center of mass height based on contact force data. The proposed method enables the humanoid robot Lola to walk over a complex uneven terrain with 6 cm variation in ground height at a walking speed of 0.5 m/s. We consider our work a general improvement on the robustness to terrain uncertainties caused by inaccurate or even lacking information on the environment.


Introduction
The research on biped robots is often motivated by their theoretical ability to traverse uneven and unstructured terrain-a scenario in which wheeled robots may fail. This intrinsic property qualifies biped robots especially for disaster response or general tasks in hostile environments. Compared to three-or four-legged systems, bipeds can turn in a smaller area and have a reduced complexity in terms of required joints. The reliability and robustness of biped robots in such environments, however, is still limited and represents a major challenge in current research.
Typically, the environment is perceived by cameras or similar sensors on the robot and safe footholds are computed based on a generated environment model. [1][2][3][4] Although most approaches require the terrain to be flat around the contemplated footholds, recent work exists on vision-based foothold planning for irregularly protruded terrain. 5 Vision-based planning, however, greatly depends on the quality of the sensor signals. Ground height estimation errors can reach the centimeter range 1,2 and have a significant effect on the performance of the overall system. 6 To compensate for such disturbances and model inaccuracies caused by the planning of the center of mass (CoM) trajectories, fast feedback loops are typically deployed. [7][8][9][10][11][12] For robots with torque-controlled joints, this is usually the position control of the CoM to track a desired reference trajectory based on the estimated robot state. 11,[13][14][15] Robots with position-controlled joints usually require an additional force-control loop to track desired ground reaction forces based on force/torque sensor data. 7,10,12 So far, uneven terrains are traversed at low walking speeds 2,5,[16][17][18][19] to keep the perception errors low and maintain stability. We focus, however, on a force-control approach for the traversal of uneven terrain at high walking speeds (v ! 0:5 m=s) without any knowledge of the environment. The method is designed for robots with positioncontrolled joints and for update rates of 1 kHz. It consists of three combined methods: An early-contact method, the consideration of actual contact geometries in the forcecontrol law, and the use of vertical CoM accelerations to induce ground reaction forces. With the proposed approach, the biped robot LOLA is able to walk over uneven ground with several centimeters variation in heightincluding unexpected partial contacts between the foot and the ground, see Figure 1.
The article is organized as follows: First, the hardware platform LOLA and its general control framework is introduced. Then, each of the three parts of the force-control scheme is individually described and experimentally validated. Related work is described at the end of every part's section to allow the reader to first understand our concepts. Subsequently, the parts are combined to the proposed control scheme, which is again validated in several experiments with LOLA. A discussion on the limitations and future work concludes the article.

System overview
The method proposed in this article is experimentally evaluated on the biped LOLA. The robot weighs approximately 60 kg, is 1.8 m tall, and is actuated by 24 electric joint drives. The kinematic structure of LOLA and the inertial frame of reference (FoR, left subscript I) are shown in Figure 2. For the task-space definition, a torso-fixed FoR (left subscript T) is used; the orientation coincides with the inertial system if the upper body is upright. An Inertial Measurement Unit (IMU) is located at the torso of the robot to measure the upper-body inclination w m ¼ ½' x ; ' y T . The robot is equipped with a 6-axis force/torque (FT) sensor at each foot to measure the ground reaction forces l f ;m for each foot f ¼ fl; rg. The feet of the robot consist of four pads that make the actual contact with the ground. Each foot pad is equipped with a built-in discrete contact switch to detect ground contact, see Figure 2; the force threshold for the activation of these sensors F th;c is % 30 N per pad. Details on the mechatronic design of LOLA are described by Lohmeier. 20 Control structure The hierarchical control structure is shown in Figure 3. User inputs given via joystick or step parameters are used to calculate an ideal walking pattern with trajectories w id ; _ w id for the CoM, the feet, and the corresponding ideal ground reaction wrench Λ id ¼ ½F id ; T id T . A subsequent  local stabilization scheme uses sensor data from the IMU as input and modifies the desired ground reaction forces in order to keep the upper body upright. Furthermore, the resulting modified forces/torques Λ mod are distributed to the feet using a heuristic approach. 21 The resulting desired forces/torques l f ;d for each foot f are then fed into corresponding instances of a hybrid position/force-control scheme. 12 The included force controller tracks the desired ground reaction forces based on the measured forces l f ;m by modification of the task-space trajectories. These newly modified trajectories w mod ; _ w mod are then passed to a velocity-level inverse kinematics. All computations run with a sample time of 1 ms on an onboard control unit with the real-time operating system QNX Neutrino. The distributed real-time joint control system architecture allows for the tracking of the trajectories with high local sample rates (50 ms for current, 100 ms for velocity and position). 22

Validation setup
The following setup conditions are used for experiments with LOLA: The vision system of LOLA is inactive during all experiments, that is, the walking pattern generator always plans for perfectly flat terrain. Furthermore, only data from the FT sensors, the IMU, the contact switches on the foot and the robot's kinematics are used for the real-time control. The step sequence is-unless noted differently-fixed with a step time of T step ¼ 0:8 s, a step height of h step ¼ 7 cm, a step length-being half the distance the swing foot travelsof d step ¼ 0:4 m, and a respective torso velocity of v ¼ 0:5 m=s. Videos of all experiments described in this article are available online: https://youtu.be/ifuD-ETTi_I.

Previous work on LOLA
In this section, we summarize relevant previous work on the control system of LOLA to help the reader understand the integration of the proposed approaches in the overall control concept.

Balance control and force distribution
The Balance Control and Force Distribution module, see ffl; in Figure 3, contains a feedback controller to stabilize the measured upper-body inclination w m of the robot. 21 The output of this PD-type controller a torque acting on the CoM-is added to the ideal planned forces/torques Λ id of the planning module ffi, to yield the modified forces/torques Λ mod . Note that the desired state is set to ½w d ; _ w d T ¼ ½0; 0 T . The matrix K contains gains for the two independently described inclinations ' x ; ' y around the x-and y-axis, respectively 21 ; there is no torque generated around the z-axis. The original design of this balancing controller contained an additional feedback law to indirectly control the CoM height by modifying the desired normal forces F z ; this is necessary to avoid drifting effects caused by inaccuracies or modeling errors when the feet are force-controlled. We propose, however, a different solution to this problem within this article.
The modified forces/torques Λ mod are distributed to the feet using relative load factors that are planned based on the gait-cycle phase. In the double-support phase, a subsequent heuristic then modifies this initial distribution to realize the torques preferably via modification of the relative normal forces of the feet. The computations result in desired forces/torques l f ;d for every foot f. 21 Hybrid position/force control The force-control approach 12 -module ; in Figure 3-is based on a hybrid position/force-control scheme and directly modifies the ideal planned trajectories w id ; _ w id on velocity level The approach modifies the z-position of the foot's tool center point (TCP) T z TCP relative to the CoM T z c and the orientation of the foot w g relative to the torso. To specify the orientation of the foot, the sine values for pitch and tilt angles-½sing x ; sing y -are used. This way, the pitch and tilt angles g y ; g x describe independent rotations around the axes of the torso-frame T (for g z % 0). 21 Other components of the task-space representation for the foot, namely the position in x-and y-direction as well as the rotation around the z-axis, are not modified and remain in the positioncontrolled space. This leads to the following definition for the force-controlled directions with the binary selection matrix S f for each foot f. The modifications in the task-space velocities are composed of the output of separate controllers for each foot f. Each controller is again partitioned in a force-control part _ w f ;l ðl f ;d ; l f Þ to track desired forces l f ;d , and a position-control part _ w f ;x ðw id ; w mod Þ to drive the modifications back to zero once the respective foot is in the air. The blending factors b f are used to smoothly switch from position to force control and vice versa, separately for each foot. This concept considers both the walking phases with position-based references (swing-foot, single-support) and the phases with force-based references (stance-foot, double-support).
Every force controller uses an analytical, static contactmodel with stiffness-matrix U and is based on a first-order target error dynamics with time-constant d The actual forces/torques on each foot result from the whole 6-axis FT sensor data l f ;m via the transformation and selection matrix A TF , which maps the data to the force-controlled directions and correct frame of reference. Finally, the following control law results This force controller modifies the position/orientation of the feet in contact. Getting back to the original trajectory in the swing phase requires the position-control loop with the gain K x , which is plugged into (5). Using this position controller, however, causes the swing-foot to end in the air or hit the ground unexpectedly in the presence of ground unevenness. That is because the positions of the feet are described relative to the CoM in the workspace: If the force controller modifies the relative position of one foot, also the other foot's inertial position changes. This means that the position-controlled foot must follow the modifications on the vertical height of the force-controlled foot, which are caused by the control law (8). Thus, the position-control law is extended to with the selection matrix S f of the foot opposite to foot f. This control method also defines that the next stance foot is always-also for varying ground height-set on the same height as the current stance foot. This behavior is desired, as we do not know if the ground height increases or decreases for the next step.

Early contacts
During the single-support phase, the swing foot is controlled with pure position control to allow fast adaptation for step recovery or stepping over obstacles. 4 This leads to a serious disturbance of the system, however, in the case of an undetected obstacle. With the foot in position-control mode, any vertical velocity of the foot causes high contact forces on impact. In this section, we present our approach to mitigate the unwanted effects caused by such earlycontact situations. Our approach does not trigger a replanning of the CoM, and foot trajectories, but instead only modifies the currently planned trajectories to minimize the impact on the system reactively. The control concept consists of three general parts: (1) An early-contact detection logic, (2) a feed-forward controller with jerk filter, and (3) a module to handle the transition from position-to force-controlled state.

Early-contact detection
Early contacts occur only in the early-contact window, which starts once the swing foot is in the air and ends with the planned beginning of the double-support phase. An early-contact event is detected if one of the contact switches of the swing leg closes and the vertical force on the swing foot is above the threshold F ec;th ¼ 100 N. By using the additional force threshold, minor contact-timing imperfections are tolerated; otherwise every real-world contact would trigger this logic. Using just the data from the FT sensors in the feet was not reliable in our case, as dynamic movements could trigger the logic while the foot was accelerated but in the air. The detection of an early contact is mapped to an activation factor a ec , which is set to 1:0 in an early-contact event and is faded-out linearly over the time-interval Dt a ¼ 0:1 s once the planned double-support phase begins.

Feed-forward control
In an early-contact situation, the swing foot still has a (planned) nonzero velocity in the direction of the ground. The general idea is to reduce these planned velocities _ w id as fast as possible. Therefore, we add a respective feedforward control part to our force-control module. Equation (2) then becomes with the additional feed-forward term The binary selection matrix S i selects the task-space components of the vertical movement (z-axis) as well as the rotation along the x-and y-axis (see Figure 2) of the impacting foot. The velocities are then multiplied with the activation factor a ec -generated from the detection module-and filtered with the low-pass filter function y ¼ lpf ðT ; uÞ-see Appendix 1-to get C 2 smooth trajectories. Figure 4 shows the signals of each step exemplarily for the vertical velocity of the impacting foot. Ideally, this method reaches D _ w ec ¼ À _ w id shortly after the beginning of the early-contact situation, which means full compensation of the planned ideal foot velocities in the selected task-space directions. The time-constant T of the low-pass filter determines the build-up time of the feedforward approach (99% in 5T ) and can be used to tune the speed of adaptation.

Contact transition
The feed-forward control described above only operates in the position domain with the aim of reducing the velocities of the foot as fast as possible. Still, the foot is not stopped immediately and moves further in the direction of the undetected ground. Thus, the direct force-control scheme (first part of (5)) is activated immediately in an early-contact situation by increasing the blending factor b f of the corresponding foot (see section on the previous work). Note that an earlycontact situation is treated as a disturbance of the system, that is, we do not trigger a replanning of the CoM trajectories/ ground reaction wrenches. Consequently, the desired load for the force controller of the early-contact foot is zero, as the foot would be in the air under normal conditions. Tracking a zeroforce reference, however, is tricky, as it may lead to the foot drifting too far away from the ground-resulting in a subsequent late-contact scenario (tipping over). Therefore, the planned relative load (0-1) is modified to match a low normal force F z;ec ¼ 30 N on the early-contact foot. Figure 5 shows the unmodified (planned) and modified load on the impacting foot. Note that the sum of the relative loads of both feet is always 1. The load modification and the transition to pure force control with b f ¼ 1:0 are faded-in linearly over a timeduration Dt b ¼ 0:05 s right after the early-contact event (t ¼ t ec ) to ensure smooth output trajectories.

Validation
In the experimental test scenario, see Figure 6, LOLA walks in the direction of an unknown, undetected obstacle, which is 4 cm high. The obstacle is hit at t ¼ 7:85 s with a vertical impact velocity of % 0:6 m=s. Note that the critical parameter of an early-contact scenario is not the height of the obstacle but the impact velocity of the foot. The proposed method is compared to the previous implementation for early-contact situations on LOLA. 23 With the new earlycontact method, the impact-induced change in sagittal torso inclination is reduced from 3.1 to 1.2 , see Figure 7. The change in frontal torso inclination is similarly reduced from 3.7 to 1.6 . The impact forces decrease faster, and there is no "bouncing" of the foot with the new approach-that is, no second force peak at 7.97 s, see Figure 8. In simulation, foot impact velocities of up to 1:08 m=s can be compensated with this approach. All other methods described in the remainder of this article rely on this feed-forward approach. The method is active in all subsequent experiments.

Related work
An early-contact concept is especially important for robots with position-controlled joints with the resulting high, intrinsic stiffness. There are several ways to mitigate the    impact effects of the swing foot on uneven terrain, such as the modification of the joint controller gains based on the gait cycle timing 24,25 or the activation of a ground reaction force controller once the swing foot is in contact. 10 Another strategy is the implementation of reflexive heuristics that change the vertical trajectory of the swing foot when an early contact occurs-that is, when the vertical contact forces exceed a certain threshold. 8,26 Other approaches trigger a replanning of the gait-cycle trajectories once an early contact occurs 23 or combine a fast walking-pattern regeneration with heuristics to stop the swing-foot upon early contact. 9 While these global approaches certainly have the ability to consider a reduced dynamics of the system in the updated trajectories, the latency from an early-contact event to an actual change in trajectories is usually about 20 ms-this may lead to high impact forces for fast walking on uneven ground. For the proposed method, we therefore restricted ourselves to maintaining the original trajectory plan and to modifying the swing-foot trajectory based on the combination of a reflexive heuristic with force control at a latency of only 1 ms. Furthermore, findings with our previous early-contact method 23 indicate that actually maintaining the original step timing is beneficial, as the effective double-support phase is then extended in the presence of such disturbances. The combination of force control and reflexes has already been described in related work. 17,25 In contrast to related work, our approach includes an additional modification of the planned load on the impacting foot. This avoids bouncing effects of the impacting foot just after the early-contact event and allows for higher impact velocities.

Unplanned partial footholds
Usually, full foot contact with the environment is assumed for force-control approaches on humanoid robots. In scenarios with partial contact between the robot's feet and the ground, however, the actual contact dynamics can be quite different. In this section, we present a new approach to considering the actual contact geometry of the foot in the ground force-control scheme.

Control approach
As described in the previous sections, we use a hybrid position/force-control scheme with an explicit contact model to link the force-controlled position/orientation w f ;l of the foot f to the resulting forces/torques The contact geometry (assuming a flat foot) is included in the matrix U, which depends on the estimated ground stiffness c z , the contact area A, the center of the contact area (r c;x , r c;y ), and the second moments of area I xy , I xx , I yy relative to the TCP. For further information on the contact model, refer to Sygulla et al. 12 In our previous work, we assumed U to be static; for partial contacts, the matrix now depends on time, and each foot f has its own representation U f ðtÞ.
To integrate the contact model into our force-control approach, we invert (13) and derive it with respect to time to get Mathematically, (14) and (15) are identical descriptions. It is, however, difficult to measure the inertial state of the contact w f ;l on the real robot. Therefore, we use (14) as basis for our control law.
By solving (6) for _ l f and inserting it into (14), we obtain the force-control law for changing contact geometry    which replaces (8). The first term of (16) is a feed-forward control part that compensates for the temporal change of the contact geometry. When the contact closes, _ V f ðtÞ is negative definite (the area increases with detð _ V f Þ < 0) and the effective foot velocity is reduced. When the contact opens, _ V f ðtÞ is positive definite (the area decreases with detð _ V f Þ > 0), which consequently leads to an increase in effective foot velocity. This compensation allows for the tracking of the target gradient _ l f defined by the error dynamics (6) even though the contact geometry changes over time. The second term in (16) contains the feedback control parts with the momentary contact model V f ðtÞ, which reflects the current geometry and effective stiffness of the contact.

Contact geometry estimation
The foot contact geometry is measured based on the state of the discrete contact switches located in each foot pad of LOLA, see Figure 2. Once a switch is closed, we assume that the corresponding pad has full contact with the ground. When no switch is closed, we assume full contact at all pads of the foot. The switches are far from being ideal contact indicators; they do not trigger when the foot is inclined relative to the contact surface, and there is a certain threshold of % 30 N for activation. Therefore, the raw sensor signal per foot is enhanced with information from the FT sensors. Figure 9 shows the whole pipeline from the raw sensor signals to the final contact geometry matrix V f ðtÞ. It is separated into several modules, which are described next. Each foot has its own separate pipeline with an independent estimation.
1. CoP calculator: Based on the full 6-axis data from the FT sensor, the location r CoP of the Center of Pressure (CoP) in the foot plane is calculated. Note that this is the CoP per foot, not the overall CoP of both feet. Sensor noise and acceleration of the foot mass can falsify the calculated r CoP , therefore the module is only active when the load on the foot is higher than 30% of the robot's weight. 2. Contact estimator: This module contains several strategies to improve the quality of the raw sensor contact state: (i) A contact closing delay is applied to the sensor data upon first detection of a contact, that is, a contact state must be active for a certain duration Dt c until it is captured in the enhanced state. This is only for the first contact of the foot. In this phase, the threshold of the switches may otherwise lead to erroneous detection of a partial contact situation, because some pads might just not trigger immediately during build-up of the contact. (ii) Contacts may only close based on sensor data, but not open again. This assumption is necessary, as the discrete nature of the contact sensors otherwise leads to instabilities caused by permanent transition between closed and open contact states. Therefore, if a pad contact was closed in the past, it remains closed in the enhanced state. The enhanced state is reset to zero-that is, no contact-in the swing phase of the corresponding foot. (iii) The calculated position of the CoP is utilized to detect contact-closing transitions, which cannot-or not on time-be detected by the contact switches. At least one pad must have detected contact for this algorithm to be activated. The general principle is simple: Once the CoP is outside the geometric region of closed contact pads, some of the other pads must also be in contact. A more detailed description of our approach is visualized in Figure 10. The algorithm handles all permutations of the three scenario classes shown there. For classes (a) and (b), only one dimension of r CoP is evaluated for the decision, which is a simplification for class (b) scenarios. Furthermore, the estimation of type (c) is also simplified, as it does not consider the more complicated actual support polygon of the three closed pads. The simplifications, however, make the algorithm robust against false data, as it tends to overestimate the contact area-which in turn leads to lower gradients of the force-control output. 3. Geometry calculation: Based on the known geometry and location of the contact pads, and the enhanced contact state from the Contact Estimator, the estimated contact geometry parameters for each foot are  calculated. These consist of the position of the contact area centroid (r c;x , r c;y ), the contact area A, as well as the corresponding second moments of area relative to the location of the TCP. If a pad contact is closed, the whole area of the pad is considered the contact area. If no contact is detected on any pad of the foot, full contact is assumed.

Assembly and filtering:
The contact geometry parameters calculated in the previous step are now used to actually compute the raw contact model matrix V f ;r ðA; r c;x ; r c;y ; I xx ; I yy ; I xy Þ for each foot f. The analytical description of the matrix can be found in the Appendix 1 (equation (1A)). As the geometry information is discontinuous due to the discrete nature of the contact switches, the raw matrix is then filtered with a second-order low-pass filter: The filter is applied element-wise, that is, every matrix element is filtered independently. This step represents the end of the contact estimation process, and the resulting contact model is then used for the control approach described above.

Implementation
In this section, we briefly describe restrictions and limitations we had to put on the original control law formulation (16) in order to apply the method to LOLA.
First, we had to assume _ V f ðtÞ % 0 for the control law, as our sensory input currently does not allow us to measure the actual gradient of the contact geometry. Estimating _ V f ðtÞ by filtering the discrete derivative of V f ðtÞ entails high phase-shift and did not show any benefit in simulation. The corresponding term in the control law (16) is predominantly important during the closing of the contact. In theory, it compensates for the nonlinear increase in force; both the contact area increase and the velocity of the foot lead to force gradients. Our assumption, however, has no practical importance, as our contact estimator anyway prohibits partial contacts in the first milliseconds of foot contact. Second, the inverse contact model V f may yield high effective gains for the contact forces in situations with a relatively small contact area. While this is valid for perfect sensory input, in practice, structural oscillations of the upper body were coupled to the feedback loop via the balance controller and led to instabilities. To mitigate such stability issues, we extend (16) by the inverse contact model matrix for a static, full contact V full . We then introduce an additional gain g p < 1, which operates only on the This way, full-contact feedback is not limited in bandwidth, but partial-contact force feedback is.

Validation
The partial-contact method is evaluated in experiments with LOLA where g p ¼ 0:1 and d ¼ 0:032 s. In the  validation scenario, the robot steps onto an undetected obstacle only with the heel of the right foot, see Figure 11. The output of the Contact Estimator for this scenario is shown in Figure 12. At time t ¼ 7:07 s, the heel-contact with the board is closed. While the raw sensor signal from the contact switches is quite noisy, the enhanced state gives a robust estimation of the actual state in the partial-contact situation. At time t ¼ 7:63 s, the toe touches the ground, but the switches in the pads (raw state) are unable to detect this contact because of the high inclination of the foot. The enhanced state, however, reflects this state change, as the location of the measured CoP leaves the permitted boundaries and contact of the frontal pads is thus assumed. In Figure 13, the sagittal inclination angle of the robot is shown for the static (V f ¼ const:; ref ) and dynamic contact model (V f ðtÞ; new). With a static contact model, the robot is not able to maintain balance and falls; the joint controllers are shut down at time t ¼ 8:253 s as a safety measure. With the dynamic contact model, however, the robot is able to stabilize itself. This is mostly because the force controller reacts more aggressively for smaller contact areas. This can be seen in the actual foot-tilt modification shown in Figure 14.
Other unplanned partial foothold situations-for example, a toe-only contact-were also successfully tested with this method. The results are shown later as part of the validation of the combined methods.

Related work
To the authors' knowledge, there has only been little research on the use of terrain information directly in the ground reaction force control. One interesting approach uses a foot with four point contacts with one force sensor in every corner 27 to get information on the contact geometry. The work uses a set of foot-motion primitives-entitled environmental modes-to control the contact forces that affect the zero moment point (ZMP). Furthermore, a strategy for a two-point contact along the diagonal axis of the feet is described to avoid instability in case the desired ZMP is on that axis. Other work proposes the use of two different force sensors at the center and front position of the foot. Based on the two force sensor readings, a heuristic detects if uneven terrain is present and lowers the stiffness of a virtual impedance of the ankle joint. 28 The parameters used for the virtual impedance are predefined and switch in a digital way when uneven terrain is detected. In contrast to our work, both approaches have no direct coupling between the contact geometry information and a force control's contact model-that is, the sensitivity of the controllers is not adapted for different contact areas. Another approach estimates the rough terrain profile based on direct kinematics and the location of the center of pressure at initial touchdown. 16 The disturbed robot is driven back to the reference trajectories by using the updated kinematics and IMU data. Also, in other work, the actual center of pressure is used to determine basic information on the contact state and to heuristically adapt the motion of the robot. 29 The contact area, however, cannot be directly measured from the instantaneous CoP information. Still, it is possible to use an active exploration mechanism of the foot to determine the current contact area. This is used on the  robot Atlas to walk on partial footholds and even line contacts. 30 While that contribution focuses on the generation of the CoM trajectories and balancing with such narrow support regions, our work focuses on how to realize already planned contact wrenches when there is an unplanned partial foothold.

Contact forces through CoM acceleration
The ground force-control schemes for humanoid robots usually-and implicitly-assume an inertially fixed torso. That is because the methods applied originate in the field of robot manipulators-where closed kinematic chains exist. Humanoid robots, however, have a floating-base dynamics, which can additionally be exploited for contact force generation. We have already shown the potential of our approach for the single-support phase. 12 In this article, we generalize the idea to all phases of the gait cycle and integrate it in this more general force-control scheme.

Control approach
The method is based on a simple floating-base dynamics model of the robot, which is directly integrated into the force-control scheme. When the conventional forcecontrol scheme fails to track the desired forces/torques, a control error e f resides on foot f. Based on this error, we calculate accelerations of the CoM, which dynamically produce the missing contact forces on the ground. The accelerations are limited to the vertical domain of the CoM for the following reasons: (1) Horizontal accelerations typically require the combination with a time-global step adaptation method to reach stable motions. 4 (2) Although angular accelerations do work, they are hard to apply due to the limited support area of the feet. Furthermore, this can lead to large foot angles with low reserves to actuator limitations.
The utilized model consists of a point mass of the robot's total weight m at the robot's CoM and is depicted in Figure 15. Note that all quantities are described in the torso-fixed frame of reference T and not in the inertial frame of reference. We can write the desired vertical acceleration of the CoM D€ z c depending on the vertical force tracking errors e l;3 ; e r;3 of the left and right foot The activation factors a l ; a r 2 ½0; 1 are calculated from the pad contact sensors and describe whether the corresponding foot is currently touching the ground. Furthermore, a rate limiter is applied to their value with maxðj _ a ljr jÞ ¼ 1:0 0:02 s to get C 2 smooth trajectories. The desired accelerations are generated by moving the feet in contact with This modification of the vertical foot velocity is added to the force-control output _ w f ;l , (8). In the case that both a l and a r are zero (no contact), the value of the integrator is reset to zero.

CoM height tracking
The method described with (24) can already effectively accelerate the CoM to generate missing contact forces. The approach is, however, local in time and not limited to certain walking phases. Therefore, the actual position of the CoM needs to be constrained-or kinematic limits are violated. Thus, we use a virtual spring and virtual damper between the actual vertical CoM position z c and the reference position z c;ref . This yields the following additional accelerations for the CoM with the linear stiffness K and damping coefficient D. Consequently, the control law (24) changes to and the CoM is now constrained by the dynamics of the resulting spring-mass-damper system. Furthermore, the gain factor g c 2 0; 1 is introduced to limit the bandwidth of the control law if necessary.

Implementation and validation
To apply the method on LOLA, the bandwidth of the CoM dynamics feedback is limited with g c ¼ 0:26. For higher gains, structural vibrations of the upper body start to propagate to the IMU sensor signals and lead to instability effects. The effect only occurs on the real robot and not In the validation scenario, LOLA again walks in the direction of a previously unknown and undetected board, see Figure 6. The sagittal torso inclination of the robot for 4 cm and 6 cm board height with the proposed method and the reference is shown in Figure 16. The proposed method has no significant advantage for normal walking and early-contact situations.
It does, however, have a clear advantage in (subsequent) late-contact situations. The dynamics model in the force controller enables LOLA to blindly walk from a 6-cm-high board-an experiment which fails for the reference. For the 4-cm-high board, the maximum positive inclination (forwards) is reduced by % À½47% with the proposed method. Similarly, the maximum frontal inclination (to the left) is reduced by % À½20%. The method is especially effective for a late-contact situation because then the vertical force on the contacting foot is higher than expected. Consequently, the controller commands a downwards acceleration of the CoM, which has several beneficial effects: (1) The contact forces are dynamically reduced on the foot in contact, which delays tilting over the edge of the foot. (2) The loose foot hits the ground earlier.
(3) The CoM height is automatically adapted to the new ground height. The combination of this method and the early-contact method allows for the terrain-blind traversal of obstacles 6 cm in height. Higher obstacles were not tested but in general seem possible with the described method.

Discussion
We would like to provide a few words on the theoretical stability of the proposed approach when the robot's mass and the ground contact are considered a dynamic system. The double-integrator in the control approach (26) introduces a significant phase lag above the eigenfrequency of the system. This causes a small phase margin and maydepending on the model uncertainties like the contact stiffness and the joint controllers-lead to instability. The superposed direct force-control scheme (8), however, acts as a lead compensator, that is, the phase margin-and therefore stability-is increased by the combination of the two methods.
Another property of the approach is observed by adding (25) to the desired CoM accelerations (23). The model equation (23) then changes to which corresponds to the equations for admittance control of the CoM directly. This controller operates on the tracking error e z -not on the actual forces-and is superposed on the direct force-control scheme described in (8). In the authors' opinion, this combines the best of the two concepts: The robot's feet in general behave stiffly when tracking desired force trajectories (direct force control). But for forces exceeding the desired set-point, the robot's feet behave compliant as an admittance defined by K and D. Forces below the desired set-point trigger an acceleration of the CoM to reduce the error by means of dynamic movements. The method indirectly modifies the vertical CoM trajectory. Recently, it was shown that a robot can be balanced solely by modifying the CoM height trajectory. 31 In our case, the trajectory modification is influenced by the terrain and model inaccuracies, therefore we currently cannot prove stabilizing effects caused by the induced height variation. However, there is also indication of beneficial behavior in case of tippling over the edges of the feet. For example, a forward inclination of the robot also leads to an acceleration of the CoM in the forward direction as we accelerate along the torso-fixed z-axis. Such behavior allows the ZMP to stay in the support-polygon and delays the forward inclination.

Related work
Admittance control-also known as position-based impedance control-is often utilized to mitigate the landing impacts of the swing foot. One approach for robots with position-controlled joints is to reduce the swing leg's joint controller gains just before anticipated contact. 24,25 Alternatively, admittance control can be implemented by modifying the desired trajectories based on FT sensor information. 18,19,[32][33][34] The force reference for this controller usually depends on a predefined 18,32,34 or previously recorded force profile. 19 Later work extended the concept to using model-based force references-that is, the output of a ZMP controller. 10 In general, admittance control leads to a trade-off between impact mitigation during the landing phase and the control of the desired forces once the foot is in safe contact with the ground. In the first case, the stiffness should be relatively low, while for the second case the stiffness needs to be high in order to track the desired force profiles. In related work, this is often resolved by varying the impedance parameters based on the gait cycle phase. 18,19,33,34 A different approach for force control on biped robots with position-controlled joints is the direct force-control scheme, 7,12,21 which does not impose a certain impedance/ admittance on the system but tracks a given force directly. The approach presented here consists of a superposition of an admittance controller and a direct force-control scheme. This resolves the trade-off of the usual admittance control, as desired trajectories can be tracked with high effective stiffness (direct force control), while disturbances in the vertical direction are mitigated by the admittance controller.
At robots with torque-controlled joints, all bodies (and the CoM) are intrinsically accelerated by the local joint control. The problem changes from a force-control to a positioncontrol task of the CoM. Popular control frameworks usually deploy high-gain PD control to track a CoM reference trajectory. 11,14 Only recently, interesting work replaced the hard constraint on the height of the CoM with a soft constraint of the knee joint angle. 35 Depending on the parametrization, this method should allow for similar behavior to the work presented here. Other relevant work tracks the CoM via a 3-D Cartesian impedance law (or low-gain PD-control). 13,15 While this yields interesting compliance for stationary balance experiments, to the authors' knowledge, the approaches were not extended to disturbance rejection during walking.

Combination of the methods
The three proposed methods can cooperate as a combined strategy for ground reaction force control on humanoid robots. Integration of the methods is done by superposition of the controller outputs (11), (21), and (26).
While the early-contact method has already been tested in combination with the other methods, the combined strategy is experimentally validated separately. The considered scenario is similar to the partial contact scenario shown in Figure 11, however, the position of the board is changed to induce a toe-only initial contact. Compared to the heel-only early-contact, this means even greater disturbance on the system, as the tracking error of the ZMP-ideally it should remain in the stand-foot-increases. Figure 17 shows the sagittal inclination of the robot for the method with changing contact geometries only and for the integration of all methods into a combined force-control scheme. The results show a significant reduction in the maximum sagittal inclination angle (% À28 %) for the combination-that is, with the early-contact concept, changing contact model, and CoM dynamics in the force controller. The combined strategy has also been evaluated in a scenario with initial side-contact of the foot. Although this was successful, in some test cases, the contact switches triggered while the corresponding pad was still in the air. This happened when the sole of the pad started to degrade and loosen from the internal switch mechanics; the issue was fixed by rebonding the sole material.
Furthermore, with the proposed force-control scheme, LOLA was able to walk over an uneven wooden plate without using any vision-based data, see Figure 1. Videos of these additional experiments are available online: https:// youtu.be/pmtKv8VEItY.

Conclusion
In our contribution, we presented a ground force-control scheme for biped robots that allows for the terrain-blind and fast traversal of uneven ground-including unplanned partial footholds. This enables the biped robot LOLA to walk over an irregularly protruded surface with height variation of up to 6 cm at a walking speed of 0.5 m/s.
The results show that the consideration of the actual contact geometry in the force-control law has significant stability advantages for unplanned partial contact with the ground. Furthermore, the insertion of vertical CoM dynamics into the force controller enables LOLA to handle late-contact scenarios for 6 cm in unexpected ground height change. We argued that this additional incorporation of vertical CoM accelerations for contact force tracking can be described as a superposition of direct force control with an admittance controller for the CoM position. Current limitations are imposed by the contact sensors at the feet, which can detect partial contacts only with a quite narrow spatial resolution (pad in contact or not). In addition, the reliability of the contact sensors (false contacts) degrades over their lifetime. Above all, the suboptimal design of the IMU mount greatly limits the performance of our approaches; it needs to be reworked. For future work, we plan to integrate tactile sensing elements on the feet to get a better estimation of the actual contact geometry. 36 I xx r c;x À I xy r c;y I xy r c;x À I yy r c;y I xx r c;x À I xy r c;y À 1 A ðI 2 xy À I xx I yy Þ with detðU f ;r Þ ¼ c z ðI 2 xy À 2AI xy r c;x r c;y þ AI xx r 2 c;x þ AI yy r 2 c;y À I xx I yy Þ.
The used discrete-time low-pass filter function y ¼ lpf ðT ; uÞ for signal u and with time-constant T is defined as the bilinear transform of the continuous-time second order transfer function FðsÞ ¼ 1 T 2 s 2 þ2Tsþ1 .