Time-parameterization

The paths found in Section Path planning are geometric objects devoid of any timing information and, as such, cannot be executed directly on the robot. One simple solution may consist in time-parameterizing the path using a constant path velocity. However, this solution is usually unsatisfactory: either the velocity is too high and the robot will violate kinodynamic constraints at some positions on the path, or the velocity is too low, hence inefficient. This section presents algorithms to find optimal time-parameterizations, i.e. which minimize traversal time while respecting given kinodynamic constraints.

Consider a path in the configuration space

The objective is to find a time-parameterization

so that the retimed trajectory satisfies given constraints while minimizing trajectory duration , which is the most important criterion in industrial robotics.

Time-parameterization of straight segments under velocity and acceleration bounds

Velocity and acceleration bounds are the most common constraints in industrial robotics. For a n-DOF robot, they have the form

Paths returned by motion planners (see Section Path planning) are usually composed of straight segments. A straight segment between and is given by . Differentiating with respect to , one has and .

Therefore, the optimization problem becomes: find the function such that is minimal and that

and , , , . Note that the initial and final velocities are constrained to be zero so as to ensure velocity continuity at the junction of different path segments.

This problem has a closed-form solution:

  1. If , then the optimal profile is composed of two segments:

    i. acceleration between time instants 0 and ;

    ii. deceleration between time instants and , where ;

  2. Else, the optimal profile is composed of three segments:

    i. acceleration between time instants 0 and ;

    ii. zero acceleration (constant velocity) between time instants and ;

    iii. deceleration between time instants and , where and .

Velocity profile for the time-parameterization of a straight
path under velocity and acceleration bounds. Left: case 1 (max
acceleration – max deceleration). Right: case 2 (max acceleration –
constant velocity – max deceleration).
Figure 19. Velocity profile for the time-parameterization of a straight path under velocity and acceleration bounds. Left: case 1 (max acceleration – max deceleration). Right: case 2 (max acceleration – constant velocity – max deceleration).

Exercise: Time-parameterize a 2D path

Implement in Python the above algorithm to optimally time-parameterize the paths found in Section Path planning under the following bounds , .

Time-parameterization of arbitrary paths under general second-order bounds

Second-order (kinodynamic) bounds are constraints of the form

where , , and are, respectively, an M x n matrix, an n x M x n tensor, and an M-dimensional vector.

Inequality (*) is very general and may represent a large variety of second-order systems and constraints. As an example, consider an n-DOF manipulator with dynamics

Assume that the manipulator is subject to lower and upper bounds on the joint torques, that is, for any joint i and time t,

Clearly, these torque bounds can be put in the form of (*) with

Contrary to the case of velocity and acceleration bounds and linear paths, there is no closed-form solution in the general case of second-order constraints and arbitrary paths. However, there is a very efficient algorithm, first proposed by Bobrow in the 1980's and later perfected by many others, to numerically find the optimal time-parameterization, see Pham and Pham (2018). An implementation of the algorithm can be found at https://github.com/hungpham2511/toppra.

To learn more about this topic

  • Hauser, K., & Ng-Thow-Hing, V. (2010). Fast smoothing of manipulator trajectories using optimal bounded-acceleration shortcuts. In Robotics and Automation (ICRA), 2010 IEEE International Conference on (pp. 2493-2498).

  • H. Pham, Q.-C. Pham. A new approach to Time-Optimal Path Parameterization based on Reachability Analysis. IEEE Transactions on Robotics, vol. 34(3), pp. 645–659, 2018.

results matching ""

    No results matching ""