Table of Contents
Fetching ...

Online Multi-Contact Feedback Model Predictive Control for Interactive Robotic Tasks

Seo Wook Han, Maged Iskandar, Jinoh Lee, Min Jun Kim

TL;DR

A model predictive control that accomplishes interactive robotic tasks, in which multiple contacts may occur at unknown locations, is proposed, and an explicit contact feedback loop in the MPC framework is made to address such scenarios.

Abstract

In this paper, we propose a model predictive control (MPC) that accomplishes interactive robotic tasks, in which multiple contacts may occur at unknown locations. To address such scenarios, we made an explicit contact feedback loop in the MPC framework. An algorithm called Multi-Contact Particle Filter with Exploration Particle (MCP-EP) is employed to establish real-time feedback of multi-contact information. Then the interaction locations and forces are accommodated in the MPC framework via a spring contact model. Moreover, we achieved real-time control for a 7 degrees of freedom robot without any simplifying assumptions by employing a Differential-Dynamic-Programming algorithm. We achieved 6.8kHz, 1.9kHz, and 1.8kHz update rates of the MPC for 0, 1, and 2 contacts, respectively. This allows the robot to handle unexpected contacts in real time. Real-world experiments show the effectiveness of the proposed method in various scenarios.

Online Multi-Contact Feedback Model Predictive Control for Interactive Robotic Tasks

TL;DR

A model predictive control that accomplishes interactive robotic tasks, in which multiple contacts may occur at unknown locations, is proposed, and an explicit contact feedback loop in the MPC framework is made to address such scenarios.

Abstract

In this paper, we propose a model predictive control (MPC) that accomplishes interactive robotic tasks, in which multiple contacts may occur at unknown locations. To address such scenarios, we made an explicit contact feedback loop in the MPC framework. An algorithm called Multi-Contact Particle Filter with Exploration Particle (MCP-EP) is employed to establish real-time feedback of multi-contact information. Then the interaction locations and forces are accommodated in the MPC framework via a spring contact model. Moreover, we achieved real-time control for a 7 degrees of freedom robot without any simplifying assumptions by employing a Differential-Dynamic-Programming algorithm. We achieved 6.8kHz, 1.9kHz, and 1.8kHz update rates of the MPC for 0, 1, and 2 contacts, respectively. This allows the robot to handle unexpected contacts in real time. Real-world experiments show the effectiveness of the proposed method in various scenarios.
Paper Structure (18 sections, 17 equations, 7 figures)

This paper contains 18 sections, 17 equations, 7 figures.

Figures (7)

  • Figure 1: The simultaneous accomplishment of hybrid motion-force control at the end-effector (yellow and magenta colored arrows) and safe handling of unexpected contact caused by human interaction (blue colored arrow).
  • Figure 2: Red and blue colored arrows indicate the $x$ and $z$ axes, respectively, of the frame. (a) The $i^{\text{th}}$ contact frame $\{ C_i\}$ is obtained using the contact feedback $\tilde{\boldsymbol{r}}_{c,i}$ and $\tilde{\boldsymbol{\lambda}}_{i}$. (b) $^{\{ C_i \}}\boldsymbol{r}_{env,i}$ is computed using (\ref{['eq:env_location_contact_frame']}) within the contact frame. (c) $\boldsymbol{r}_{env,i}$ and $\boldsymbol{K}_{env,i}$ are calculated by transforming coordinates from $\{ C_i\}$ to $\{ W\}$. (d) $\boldsymbol{r}_{c,i}$ is fixed on the robot surface (see the orange dot representing $\boldsymbol{r}_{c,i}$). The predictive contact force is derived from $\boldsymbol{\lambda}_{i} = \boldsymbol{g}(\boldsymbol{x};\boldsymbol{\theta}_i)$.
  • Figure 3: $\boldsymbol{\tau}_j$ and $\boldsymbol{W}_{b}$ are the JTSs and base F/T sensor measurements, respectively, and red arrows represent real-time communication. Utilizing the robot states ($\tilde{\boldsymbol{x}}$) and contact information ($\tilde{\boldsymbol{r}}_{c,i}$ and $\tilde{\boldsymbol{\lambda}}_{i}$), the contact-feedback MPC (\ref{['eq:ocp']}) calculates $\boldsymbol{\mathbf{X}}^*$ and $\boldsymbol{\mathbf{U}}^*$. Then, $\boldsymbol{u}^{[0]^*}$ is commanded to the torque-controlled robot.
  • Figure 4: Scenario $\#1$: The current end-effector position is represented as a red dot, and the desired end-effector position trajectory is given by linear interpolation, as indicated by a yellow arrow. While tracking the trajectory, the robot's body makes contact with the obstacle.
  • Figure 5: Scenario $\#1$: The region is shaded when the contact exists. Top: The magnitude of the contact force ($\lVert\tilde{\boldsymbol{\lambda}}_{1}\rVert$). Bottom: The actual and desired end-effector trajectories ($\boldsymbol{p}_{ee}$ and $\boldsymbol{p}_{des}$).
  • ...and 2 more figures