Table of Contents
Fetching ...

Minimum-Time Planar Paths with up to Two Constant Acceleration Inputs and $L_2$ Velocity and Acceleration Constraints

Victor M. Baez, Haoran Zhao, Nihal Abdurahiman, Nikhil V. Navkar, Aaron T. Becker

Abstract

Given starting and ending positions and velocities, $L_2$ bounds on the acceleration and velocity, and the restriction to no more than two constant control inputs, this paper provides routines to compute the minimal-time path. Closed form solutions are provided for reaching a position in minimum time with and without a velocity bound, and for stopping at the goal position. A numeric solver is used to reach a goal position and velocity with no more than two constant control inputs. If a cruising phase at the terminal velocity is needed, this requires solving a non-linear equation with a single parameter. Code is provided on GitHub at https://github.com/RoboticSwarmControl/MinTimeL2pathsConstraints.

Minimum-Time Planar Paths with up to Two Constant Acceleration Inputs and $L_2$ Velocity and Acceleration Constraints

Abstract

Given starting and ending positions and velocities, bounds on the acceleration and velocity, and the restriction to no more than two constant control inputs, this paper provides routines to compute the minimal-time path. Closed form solutions are provided for reaching a position in minimum time with and without a velocity bound, and for stopping at the goal position. A numeric solver is used to reach a goal position and velocity with no more than two constant control inputs. If a cruising phase at the terminal velocity is needed, this requires solving a non-linear equation with a single parameter. Code is provided on GitHub at https://github.com/RoboticSwarmControl/MinTimeL2pathsConstraints.
Paper Structure (15 sections, 27 equations, 8 figures)

This paper contains 15 sections, 27 equations, 8 figures.

Figures (8)

  • Figure 1: Left: trajectory of a particle starting from $\textbf{p}_0$ with initial velocity $\textbf{v}_0$ and ending at $\textbf{p}_g$ with ending velocity $\textbf{v}_g$ under two constant acceleration inputs $\textbf{u}$ applied at directions $\theta_1$ and $\theta_2$ for durations $t_1$ and $t_2$; the $\bullet$ shapes show the switching points at $t_1$, $t_c$, and $t_2$ along the path, where $t_c$ is the duration the particle cruises at its maximum velocity $v_m$. Right: $L_2$ position, velocity, and acceleration profiles. $x$ in blue, $y$ in orange, $\sqrt{x^2+y^2}$ in purple. Bounds on velocity and acceleration are highlighted in pink $\blacksquare$. The control switch times are shown on the position profile. See video overview at https://youtu.be/2J-p6CDF4FE.
  • Figure 2: Two examples of accelerating a particle from a starting position and velocity to a goal position as fast as possible with a bounded input. The locus of reachable positions is a circle whose center moves with $\mathbf{v}_0$. 100 isochrones (gray circles $\bigcirc\!\!\!\!\!\circ$ ) are evenly spaced in squared time: $t= \sqrt{k}$ for $k \in [0,100]$ to show these loci.
  • Figure 3: Locus of positions where the particle reaches $v_m = 1$ in light blue $\blacksquare$. Top row shows four different starting velocities (blue). The velocity of the particle due to thrust $a_m=1$ in directions $\theta \in k \pi /16$, $k\in [0,31]$ is shown with pink arrows, all of length $v_m$. These arrows point in every direction. The bottom row shows $\mathbf{v}_0 = [1/2,1/2]$ for four values of $a_m$.
  • Figure 4: Solution with nonzero starting and zero ending velocity. The locus of positions where the particle reaches $v_m = 1$ from the initial position are shown with a light blue set for $\mathbf{p}(t_1)$, $\blacksquare$. A similar set constructed starting from the goal position is shown in orange, $\blacksquare$. The solution trajectory is drawn in red. The positions where thrust 1 stops and thrust 2 starts are indicated by black dots. Top row shows four different initial positions with $\mathbf{v}_0 = [-0.5,-0.5]$ or $[-1,0]$ and $a_m = 1/2$. The system never exceeds terminal velocity. Bottom row shows the same positions and velocities, but with $a_m = 1$, so each requires a coasting phase.
  • Figure 5: Solution with nonzero starting and ending velocity. The locus of positions where the particle reaches $v_m = 1$ from the initial position are shown with a light blue set for $\mathbf{p}(t_1)$. A similar set constructed starting from the goal position using $-\mathbf{v}_G$ is shown in orange. The solution trajectory is drawn in red. The positions where thrust 1 stops and thrust 2 starts are indicated by black dots. Top row shows four different initial positions with $\mathbf{v}_0 = [-0.5,-0.5]$, $\mathbf{v}_G = [-0.5,0]$ and $a_m = 1/2$ (the right differs to ensure $v_m$ is not reached). The system never reaches terminal velocity. Bottom row shows the same positions and velocities, but with $a_m = 1$. The system reaches terminal velocity $v_m$ in each case.
  • ...and 3 more figures