SEIKO Controller:
Multi-Contact Whole Body Force Control
for Position-Controlled Robots

Quentin Rouxel             Serena Ivaldi             Jean-Baptiste Mouret             Inria Nancy - Grand Est, CNRS, Université de Lorraine

Abstract

Many humanoid and multi-legged robots are controlled in positions rather than in torques, preventing direct control of contact forces, and hampering their ability to create multiple contacts to enhance their balance, such as placing a hand on a wall or a handrail. This paper introduces the SEIKO (Sequential Equilibrium Inverse Kinematic Optimization) pipeline, drawing inspiration from flexibility models used in serial elastic actuators to indirectly control contact forces on traditional position-controlled robots. SEIKO formulates whole-body retargeting from Cartesian commands and admittance control using two quadratic programs solved in real time. We validated our pipeline with experiments on the real, full-scale humanoid robot Talos in various multi-contact scenarios, including pushing tasks, far-reaching tasks, stair climbing, and stepping on sloped surfaces. This work opens the possibility of stable, contact-rich behaviors while getting around many of the challenges of torque-controlled robots.

Multi-Contact Experiments on Talos Humanoid Robot

Traversal of sloped uneven ground with wall contact

Stepping up 15 cm with enhanced stability

Hand contact extends reaching distance

Testing robustness to 9 kg mass model error

Methodology

Multi-Contact Control Challenges:

  • Multi-contact tasks require realizing specific contact forces
  • Due to closed kinematic chains in multi-contact, perfectly rigid systems exhibit redundancy in force distribution: for the same posture, multiple force distributions can exist
  • Position-controlled robots cannot directly control contact forces

Objective:

Control contact forces on position-control robots to perform multi-contact tasks

Main Ideas:

  • Real systems, including stiff position-controlled robots, inherently possess flexibilities arising from structural bending and internal actuator impedance
  • In presence of flexibilities, the actual system's force distribution is unique, determined by the configuration that minimizes the overall whole body elastic energy
  • Despite being unobservable, flexibilities can be modeled and predicted through nonlinear whole-body optimization
  • This unique and well defined configuration depends on joint position commands
  • By inverting this relationship, joint position commands are optimized to produced a desired contact force distribution

Control Pipeline (SEIKO):

  • Input: Cartesian motion commands for each effector (position and/or velocity)
  • Output: corrected joint position commands realizing desired contact forces
  • In our experiments, a human operator teleoperates the robot, but input commands could alternatively come from an autonomous planner
  • SEIKO Retargeting computes feasible desired whole body configurations from given commands
  • SEIKO Controller updates joint position commands to indirectly regulate contact forces using a model of flexibilities.

Controller's Capabilities

Smooth contact switching

Pushing task tracking hand contact force

Far reach with and without unmodeled load

Robustness Against Motion Speed and Model Error

In simulation, we evaluated the controller's robustness by performing reaching motions near the feasibility boundary, varying hand motion velocity (2 cm/s to 40 cm/s) and unmodeled added mass on the hand (none to 12 kg). We measured the number of successful trials without a fall, out of 10 trials, under three conditions: (i) without the SEIKO Controller, (ii) with the SEIKO Controller but without considering joint torque limits, and (iii) using the full control method.

BibTeX

@misc{rouxel2023multicontact,
    title={Multi-Contact Whole Body Force Control for Position-Controlled Robots}, 
    author={Quentin Rouxel and Serena Ivaldi and Jean-Baptiste Mouret},
    year={2023},
    eprint={2312.16465},
    archivePrefix={arXiv},
    primaryClass={cs.RO}
}