Table of Contents
Fetching ...

Kinematic Modularity of Elementary Dynamic Actions

Moses C. Nah, Johannes Lachner, Federico Tessari, Neville Hogan

TL;DR

A kinematically modular approach to robot control that involves structures called Elementary Dynamic Actions and a network model combining these elements, which makes it particularly effective for contact-rich manipulation.

Abstract

In this paper, a kinematically modular approach to robot control is presented. The method involves structures called Elementary Dynamic Actions and a network model combining these elements. With this control framework, a rich repertoire of movements can be generated by combination of basic modules. The problems of solving inverse kinematics, managing kinematic singularity and kinematic redundancy are avoided. The modular approach is robust against contact and physical interaction, which makes it particularly effective for contact-rich manipulation. Each kinematic module can be learned by Imitation Learning, thereby resulting in a modular learning strategy for robot control. The theoretical foundations and their real robot implementation are presented. Using a KUKA LBR iiwa14 robot, three tasks were considered: (1) generating a sequence of discrete movements, (2) generating a combination of discrete and rhythmic movements, and (3) a drawing and erasing task. The results obtained indicate that this modular approach has the potential to simplify the generation of a diverse range of robot actions.

Kinematic Modularity of Elementary Dynamic Actions

TL;DR

A kinematically modular approach to robot control that involves structures called Elementary Dynamic Actions and a network model combining these elements, which makes it particularly effective for contact-rich manipulation.

Abstract

In this paper, a kinematically modular approach to robot control is presented. The method involves structures called Elementary Dynamic Actions and a network model combining these elements. With this control framework, a rich repertoire of movements can be generated by combination of basic modules. The problems of solving inverse kinematics, managing kinematic singularity and kinematic redundancy are avoided. The modular approach is robust against contact and physical interaction, which makes it particularly effective for contact-rich manipulation. Each kinematic module can be learned by Imitation Learning, thereby resulting in a modular learning strategy for robot control. The theoretical foundations and their real robot implementation are presented. Using a KUKA LBR iiwa14 robot, three tasks were considered: (1) generating a sequence of discrete movements, (2) generating a combination of discrete and rhythmic movements, and (3) a drawing and erasing task. The results obtained indicate that this modular approach has the potential to simplify the generation of a diverse range of robot actions.
Paper Structure (19 sections, 19 equations, 4 figures)

This paper contains 19 sections, 19 equations, 4 figures.

Figures (4)

  • Figure 1: (A) Three Elementary Dynamic Actions (EDA). Submovements (orange box) and oscillations (blue box) correspond to kinematic primitives and mechanical impedances (green box) manage physical interaction. (B) EDA combined using a Norton equivalent network model. The virtual trajectory $\mathbf{x}_0(t)$ (yellow box) consists of submovements and/or oscillations, and mechanical impedance $\mathbf{Z}$ (green box) regulates interactive dynamics.
  • Figure 2: A sequence of discrete movements using a KUKA LBR iiwa14. (A, B) Time-frames of the robot movement towards the (A) original (old) and (B) new goal location. Start $\mathbf{p}_1$, original goal $\mathbf{p}_2$ and new goal $\mathbf{p}_3$ are depicted as orange markers. The origin of the robot's coordinate frame is attached at the robot base, depicted as a green marker. (C) The end-effector trajectory $\mathbf{p}(t)$ (black filled line) and the virtual trajectory (black dashed line) $\mathbf{p}_0(t)$ depicted on the $YZ$-plane. (D, E) Time $t$ vs. end-effector velocity $\dot{\mathbf{p}}(t)$ along the (D) $Y$-coordinate and (E) $Z$-coordinate. Black filled lines show the end-effector velocity, which was derived by a first-order finite difference of $\mathbf{p}(t)$ with a sampling interval of 3ms. The two unimodal speed profiles filled in orange depict the two submovements $\mathbf{p}_{0,sub1}(t)$ (left) and $\mathbf{p}_{0,sub2}(t)$ (right) (Eq. \ref{['eq:sequencing_two_submovements']}). As shown in (D) and (E), the second submovement is directly superimposed, without any modification of the first submovement. Parameters of the submovements (Section \ref{['subsec:experiment_sequence_movements']}): $\mathbf{p}_1=[0.6735, 0.1396, 0.2048]$m, $\mathbf{p}_2=[0.6735, 0.3396, 0.4048]$m, $\mathbf{p}_3=[0.6735, 0.4396, 0.3048]$m, $T_1=T_2=2.0$s, $t_i=0.5$s, $t_g=1.5$s.
  • Figure 3: A combination of discrete and rhythmic movements using a KUKA LBR iiwa14. (A) Elements of the robot movement. The origin of the robot's coordinate frame is attached at the robot base, depicted as green marker. Orange markers depict $\mathbf{p}_1$ (left) and $\mathbf{p}_2$ (right) of $\mathbf{p}_{0,sub}(t)$. Blue line depicts $\mathbf{p}_{0,osc}(t)$ (Eq. \ref{['eq:direct_sum_sub_and_osc']}, \ref{['eq:experiment_oscillation']}). (B) The end-effector trajectory $\mathbf{p}(t)$ (black filled line) and the virtual trajectory (black dashed line) $\mathbf{p}_0(t)$ depicted on the $YZ$-plane. Multiple submovements that move between $\mathbf{p}_1$ and $\mathbf{p}_2$ were generated. (C, D) Time $t$ vs. end-effector trajectory $\mathbf{p}(t)$ along (C) $Y$-coordinate and (D) $Z$-coordinate. Black dashed lines depict $\mathbf{p}_0(t)$. Blue lines highlight the duration of a movement without any discrete movement. Parameters of submovement and oscillation (Eq. \ref{['eq:experiment_oscillation']}): $\mathbf{p}_1=[0.5735, 0.0, 0.5048]$m, $\mathbf{p}_2=[0.5735, 0.35, 0.5048]$m, $T_1=1.5$s, $r=0.03$m, $\omega_0=3\pi$rad/s.
  • Figure 4: The drawing and erasing task using a KUKA LBR iiwa. A green pen was used for the drawing. (A) Data collection of human-demonstrated $\mathbf{p}^{(d)}(t)$ which was to be drawn (Section \ref{['subsec:drawing_and_erasing']}). The end-effector trajectory along $X$- and $Y$-coordinates were collected. (B) Time $t$ vs. $X$-coordinate (black line) and $Y$-coordinate (purple line) of $\mathbf{p}^{(d)}(t)$ (top row), $\dot{\mathbf{p}}^{(d)}(t)$ (middle row), $\ddot{\mathbf{p}}^{(d)}(t)$ (bottom row). With a sampling rate of 333Hz, a first-order finite difference method was used to calculate the velocity and acceleration (left column). These trajectories were Gaussian filtered (right column) using MATLAB's smoothdata function with a time window size of 165ms. (C) The resulting trajectory $\mathbf{p}^{(d)}(t)$ (black dashed line) generated with Imitation learning. (D) The drawing task was achieved by setting $\mathbf{p}_0(t)$ as $\mathbf{p}^{(d)}(t)$. The black dashed line depicts $\mathbf{p}_{0,dmp}(t)$ (or $\mathbf{p}^{(d)}(t)$), the green line depicts $\mathbf{p}(t)$. (E) The erasing task was achieved by superimposing an oscillation $\mathbf{p}_{0,osc}(t)$ onto a time-reversed $\mathbf{p}_{0,dmp}(t)$. The green pen was replaced by a rectangular eraser. The green line depicts $\mathbf{p}(t)$. For (C, D, E), trajectories were plotted in MATLAB and overlapped onto the drawing/erasing table. Parameters of DMP: $\alpha_z=1000$, $\beta_z=250$, $N=100$, $P=2331$, $\tau=7$, $c_i = \exp( -\alpha_s (i - 1)/ ( N-1) )$, $h_i=1/(c_{i+1} - c_i)^2$ for $i\in[1,2,\cdots, N-1]$, $c_{N}=\exp{(-\alpha_s)}$, $h_{N}=h_{N-1}$. Parameters of oscillation: $r=0.03$m, $\omega_0=2\pi$rad/s.