  This paper proposes an algorithm for combined contact detection and state
estimation for legged robots. The proposed algorithm models the robot's
movement as a switched system, in which different modes relate to different
feet being in contact with the ground. The key element in the proposed
algorithm is an interacting multiple-model Kalman filter, which identifies the
currently-active mode defining contacts, while estimating the state. The
rationale for the proposed estimation framework is that contacts (and contact
forces) impact the robot's state and vice versa. This paper presents validation
studies with a quadruped using (i) the high-fidelity simulator Gazebo for a
comparison with ground truth values and a baseline estimator, and (ii) hardware
experiments with the Unitree A1 robot. The simulation study shows that the
proposed algorithm outperforms the baseline estimator, which does not
simultaneous detect contacts. The hardware experiments showcase the
applicability of the proposed algorithm and highlights the ability to detect
contacts.
