Forgive me if my mathematical notation is unusual, I'm an engineer :p What I've derived here is a bit of a mix of stuff I found on the internet and my own derivations. It might well be that this kind of stuff is already derived by someone, but then I just haven't found it yet unfortunately. If so, please let me know where I can find this.
Introduction
In my field of robotics I'm attempting to describe the trajectory of the TCP as a parabolic curve. Let $\vec{p} \in \mathbb{R}^n$ be the start point of the parabola, $\vec{q} \in \mathbb{R}^n$ the end point, and $\vec{v} \in \mathbb{R}^n$ the focal point. Let $\tau : [t_1, t_2] \mapsto [0,1]$ be the parametrization variable. Then we can write the parabolic curve as a quadratic Bezier curve; \begin{align*} \vec{x}(t) &= (1-\tau)^2 \vec{p} + 2\tau(1-\tau) \vec{v} + \tau^2 \vec{q} \\ &= (\vec{p} - 2\vec{v} + \vec{q})\tau^2 + 2(\vec{v} - \vec{p})\tau + \vec{p} \\ &= \vec{k}_1 \tau^2 + 2\vec{k}_2\tau + \vec{p}, \\ \dot{\vec{x}}(t) &= 2\vec{k}_1 \tau \dot{\tau} + 2\vec{k}_2 \dot{\tau}, \\ \ddot{\vec{x}}(t) &= 2\vec{k}_1 \dot{\tau}^2 + 2\vec{k}_1 \tau \ddot{\tau} + 2\vec{k}_2 \ddot{\tau} \end{align*} Feel free to verify, but I'm quite certain this is correct.
More about $\tau$
$\tau$ is essentially a representation of time. Considering the physical nature of this parabolic curve, I set the following (boundary) conditions on $\tau$:
- $\tau(t_1) = 0$
- $\tau(t_2) = 1$
- $\dot{\tau}(t) > 0$ for all $t$, otherwise time will stand still or go backwards
With these conditions, we can easily derive $\dot{\tau}(t)$ for $t=t_1,t_2$ if $\dot{\vec{x}}(t)$ is known.
Additionally, I set the conditions below to ensure that the robot TCP doesn't exceed maximal speed or acceleration.
- $\dot{\tau}(t) \leq \dot{\tau}_{\mathrm{max}}$ (no need to bound from below because it's required to be positive anyway)
- $|\ddot{\tau}(t)| \leq \ddot{\tau}_{\mathrm{max}}$
Eventually I plan to assume that $\dot{\tau}$ has a trapezodial shape. This is called a trapezoidal motion profile, I believe. Hence the limits on $\dot{\tau}$ and $\ddot{\tau}$, which should give me all the boundary conditions I need to fully determine $\tau(t)$.
Problem formulation
Knowing that $|\dot{\vec{x}}(t)| \leq \dot{\vec{x}}_{\mathrm{max}}$ and $|\ddot{\vec{x}}(t)| \leq \ddot{\vec{x}}_{\mathrm{max}}$ for all $t$, how to derive $\dot{\tau}_{\mathrm{max}}$ and $\ddot{\tau}_{\mathrm{max}}$?