Table of Contents
Fetching ...

Galilean Symmetry in Robotics

Robert Mahony, Jonathan Kelly, Stephan Weiss

TL;DR

The time is right for the robotics community to benefit from rediscovering and extending this classical material and applying it to modern problems, and this paper provides three examples where applying the Galilean matrix Lie-group algebra to robotics problems is straightforward and yields significant insights.

Abstract

Galilean symmetry is the natural symmetry of inertial motion that underpins Newtonian physics. Although rigid-body symmetry is one of the most established and fundamental tools in robotics, there appears to be no comparable treatment of Galilean symmetry for a robotics audience. In this paper, we present a robotics-tailored exposition of Galilean symmetry that leverages the community's familiarity with and understanding of rigid-body transformations and pose representations. Our approach contrasts with common treatments in the physics literature that introduce Galilean symmetry as a stepping stone to Einstein's relativity. A key insight is that the Galilean matrix Lie group can be used to describe two different pose representations, Galilean frames, that use inertial velocity in the state definition, and extended poses, that use coordinate velocity. We provide three examples where applying the Galilean matrix Lie-group algebra to robotics problems is straightforward and yields significant insights: inertial navigation above the rotating Earth, manipulator kinematics, and sensor data fusion under temporal uncertainty. We believe that the time is right for the robotics community to benefit from rediscovering and extending this classical material and applying it to modern problems.

Galilean Symmetry in Robotics

TL;DR

The time is right for the robotics community to benefit from rediscovering and extending this classical material and applying it to modern problems, and this paper provides three examples where applying the Galilean matrix Lie-group algebra to robotics problems is straightforward and yields significant insights.

Abstract

Galilean symmetry is the natural symmetry of inertial motion that underpins Newtonian physics. Although rigid-body symmetry is one of the most established and fundamental tools in robotics, there appears to be no comparable treatment of Galilean symmetry for a robotics audience. In this paper, we present a robotics-tailored exposition of Galilean symmetry that leverages the community's familiarity with and understanding of rigid-body transformations and pose representations. Our approach contrasts with common treatments in the physics literature that introduce Galilean symmetry as a stepping stone to Einstein's relativity. A key insight is that the Galilean matrix Lie group can be used to describe two different pose representations, Galilean frames, that use inertial velocity in the state definition, and extended poses, that use coordinate velocity. We provide three examples where applying the Galilean matrix Lie-group algebra to robotics problems is straightforward and yields significant insights: inertial navigation above the rotating Earth, manipulator kinematics, and sensor data fusion under temporal uncertainty. We believe that the time is right for the robotics community to benefit from rediscovering and extending this classical material and applying it to modern problems.

Paper Structure

This paper contains 24 sections, 103 equations, 5 figures.

Figures (5)

  • Figure 1: Consider a stationary point (black dot). Denote the position of the point at time $t$ by $p(t)$ with respect to a moving frame $\hbox{$\{ A\}$}$. The point is moving with linear velocity $v_p$. The frame is moving with linear velocity $w$ and rotating with angular velocity $\Omega$. The relative inertial velocity $v = (v_p - w)$ is that induced only by velocity of the point and the translation of the frame. The coordinate velocity $\dot{p}$ of the point is the sum of the relative inertial velocity and the perceived coordinate velocity induced by rotation of the frame.
  • Figure 2: Galilean kinematics of an agent with respect to a moving frame attached to the surface of the Earth.
  • Figure 3: Force balance describing the Earth geoid. The geoid is defined by the balance between gravitational acceleration $\tensor*[_{}^{A}]{g}{_{}} ( \tensor*[_{}^{}]{p}{_{A}})$ and normal acceleration $a_n(p_A)$ perpendicular to the surface of the geoid to generate the centripetal acceleration $a_c(p_A) = \tensor*[_{}^{A}]{g}{_{}} ( \tensor*[_{}^{}]{p}{_{A}}) + a_n(p_A)$ required to keep a point on the surface of the geoid circling the rotational axis of the earth. The proper acceleration $\tensor*[_{}^{}]{a}{_{A}} = a_n(p_A)$ measured by the IMU is the normal acceleration. The perceived gravitational acceleration is $g_A \mathbf{e}_3 = - a_n(p_A)$.
  • Figure 4: Diagram of a SCARA robotic manipulator with three revolute joints and one prismatic joint. The GDH parameters are shown for each link and include the angular velocities of joints 1, 2, and 4 ($q_1$, $q_2$, and $q_4$, respectively) and the linear velocity of joint 3 ($w_3$). Parameters not shown on the diagram are zero for this robot.
  • Figure 5: Fusion using the Galilean construction (top figure) compared to using classical fusion (bottom figure) for the case where there is high uncertainty in the measurement timestamp. The prior state estimate is the small red circle (at $(0,0)$) with red homogeneous uncertainty ellipse (large red circle centred at $(0,0)$). The system is travelling at velocity 1m/s as shown by the arrow. The measurement is shown as a cyan cross with cyan homogeneous uncertainty ellipse. The true state is shown by the black asterisk. The fused estimate is the blue circle with blue uncertainty ellipse. Note that for the Galilean fusion the uncertainty in the temporal coordinate stretches the uncertainty of the state estimate in the direction of the velocity. The temporal uncertainty is not modelled in classical fusion and the posteriori state estimate is homogeneous and overconfident.

Theorems & Definitions (5)

  • Remark 3.1: Frame versus Pose
  • Remark 3.2: Group elements versus frames
  • Remark 4.1
  • Remark 6.1
  • Remark 6.2: Preintegration