Next Article in Journal
Sample Size Calculations in Simple Linear Regression: A New Approach
Next Article in Special Issue
An Incremental Broad-Learning-System-Based Approach for Tremor Attenuation for Robot Tele-Operation
Previous Article in Journal
Dynamical Quantum Phase Transitions of the Schwinger Model: Real-Time Dynamics on IBM Quantum
Previous Article in Special Issue
A New Nonlinear Dynamic Speed Controller for a Differential Drive Mobile Robot
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

A Cartesian-Based Trajectory Optimization with Jerk Constraints for a Robot

1
State Key Laboratory of Robotics, Shenyang Institute of Automation, Chinese Academy of Sciences, Shenyang 110016, China
2
Institutes for Robotics and Intelligent Manufacturing, Chinese Academy of Sciences, Shenyang 110169, China
3
University of Chinese Academy of Sciences, Beijing 100049, China
4
SIASUN Robot & Automation Co., Ltd., Shenyang 110169, China
5
School of Automation, Jiangsu University of Science and Technology, No. 666 Changhui Road, Zhenjiang 212100, China
*
Author to whom correspondence should be addressed.
Entropy 2023, 25(4), 610; https://doi.org/10.3390/e25040610
Submission received: 28 February 2023 / Revised: 31 March 2023 / Accepted: 31 March 2023 / Published: 3 April 2023
(This article belongs to the Special Issue Nonlinear Control Systems with Recent Advances and Applications)

Abstract

:
To address the time-optimal trajectory planning (TOTP) problem with joint jerk constraints in a Cartesian coordinate system, we propose a time-optimal path-parameterization (TOPP) algorithm based on nonlinear optimization. The key insight of our approach is the presentation of a comprehensive and effective iterative optimization framework for solving the optimal control problem (OCP) formulation of the TOTP problem in the ( s , s ˙ ) -phase plane. In particular, we identify two major difficulties: establishing TOPP in Cartesian space satisfying third-order constraints in joint space, and finding an efficient computational solution to TOPP, which includes nonlinear constraints. Experimental results demonstrate that the proposed method is an effective solution for time-optimal trajectory planning with joint jerk limits, and can be applied to a wide range of robotic systems.

1. Introduction

Presently, industrial robotics has a wide range of applications, including welding, palletizing, grinding and polishing, assembly, and painting [1,2,3]. After decades of research, the problem of time-optimal trajectory planning (TOTP) of robots along specified paths has been extensively studied to optimize operation time and improve the efficiency of automated industrial robot operations [4]. TOTP is based on interpolation and introduces the concepts of constraint and optimization to maximize the performance of the robot and ensure the shortest time, while making the trajectory smooth and the operation run smoothly [5]. Time-optimal path parameterization (TOPP) is a fast method for determining critical conditions for navigating a pre-defined smooth path in a robot system’s configuration space while respecting physical constraints [6]. Although finding the time-optimal parameterization of a path subject to second-order constraints is a well-studied problem in robotics, TOPP subject to third-order constraints (such as jerk and torque rate) has received relatively little attention and remains largely open. Moreover, joint space trajectory planning cannot visualize the end position of the robotic arm, and Cartesian space trajectory planning is often used in many specific industrial scenarios such as welding, cutting, or machining that require operation on a predetermined path. Therefore, a TOTP algorithm that satisfies the joint third-order constraints in Cartesian space is urgently needed.

1.1. Related Works

Over the years, many academics have worked on the issue of TOTP for industrial robots. This problem can be roughly divided into three main families of methods: Numerical Integration (NI), Convex Optimization (CO), and Dynamic Programming (DP).
The NI-based strategy was initiated by Bobrow et al. [7] and further developed by other researchers. Kunz et al. [8] provided a circular-blends route differentiability approach to ensure that the trajectory precisely follows the specified path of differentiable joint space. Pham [9] provided a comprehensive solution to the problem of dynamic singularities. Pham et al. [10] proposed TOPP3, a novel TOPP algorithm that addresses third-order constraints, as well as the problem of singularities that may hinder the integration of motion profiles and the smooth connection of optimal profiles.Shen et al. [11,12] proposed various new characteristics of the NI method for TOTP along the defined path, and provided explicit mathematical confirmation of these traits. Lu et al. [13] proposed a time-optimal motion planning method for sculpted surface robot machining that takes joint space and tool tip motion constraints into account. They solved the time-optimal tool motion planning in robot machining using an efficient numerical integration method based on the Pontryagin maximum principle. Methods based on NI explicitly calculate the optimal control at each position along the path, instead of performing an implicit search such as the CO-based method, which makes them very fast. However, finding the switch points between the acceleration and deceleration phases is necessary, and the main reason for their failure.
The CO-based strategy has been expanded upon by numerous researchers after being introduced by Verscheure et al. [14]. Xiao et al. [15] used the cubic polynomial fitting method to construct the maximum pseudo-speed curve that meets the torque and speed limits. Debrouwere et al. [16] proposed an effective sequential convex programming (SCP) method to solve the corresponding nonconvex optimal control problems as a difference of convex (DC) function. Pham et al. [6] presented a TOPP approach based on reachability analysis (TOPP-RA), which iteratively computes the reachable and controllable sets at discrete points along the path by solving linear programming problems (LP). Nagy et al. [17] considered kinematics and dynamics constraints and generated the time-optimal velocity distribution for the LP control problem using the sequential optimization method. Ma et al. [18] converted a nonconvex jerk limit into a linear acceleration constraint and indirectly introduced it into CO for TOTP. This method preserves CO’s convexity and does not increase the number of optimization variables, resulting in a quick calculation speed. CO-based methods are easy to implement and quite robust, and can consider multiple optimization objectives beyond just time. However, the optimization problem they solve is very large. The number of variables and constraint inequalities scales with the discretization grid size, resulting in implementation that is an order of magnitude slower than the NI-based method.
The DP-based approach was first developed by [19] and has since been expanded and improved upon by numerous researchers. Kaserer et al. [20] proposed a DP-based method for solving the optimal path-tracking problem, which uses interpolation in the phase plane. This approach considers joint speed, acceleration, torque, and mechanical power, as well as joint jerk and torque rate limitations. Kaserer et al. [21] extended this method to solve the time-optimal path-tracking problem for cooperative grasping tasks involving two robots, while also accounting for robot speed, acceleration, jerk, and torque constraints. Barnett et al. [22] introduced the bisection algorithm (BA), a novel technique that extends DP approaches to tackle more complex problems with a larger number of constraints. These approaches, which break down the larger problem into smaller sub-problems, become increasingly advantageous as the number of constraints grows, compared to direct transcription methods. Methods based on DP are simple to implement and do not suffer from local minima problems, and they traverse all states at each path point (rather than requiring convex space or convex function assumptions such as the CO-based method). However, the state space to be searched is huge, resulting in implementation being one (or even more) orders of magnitude slower than the CO-based method. Additionally, the DP method cannot truly achieve the global optimal point due to the issue of grid precision.
There are several alternative approaches to the TOTP problem beyond the three groups mentioned above [23,24,25,26,27,28]. Nevertheless, these approaches also neglect the third-order constraint and do not perform planning in Cartesian space. Table 1 summarizes and compares the similarities and differences of the above three methods in the following five aspects: the requirement for calculating switching points, the ability to consider multiple optimization objectives, the ability to achieve the optimal point (rather than approximately achieving the optimal point), the planning space, and the highest constraint order.

1.2. Motivations and Contributions

Motivated by previous approaches, this paper proposes aTOTP algorithm that considers joint third-order limits in a Cartesian coordinate system, maximizing the robot operation efficiency while maintaining smoothness and minimizing time. To achieve this, kinematic feasibility is ensured by introducing joint velocity, acceleration, and jerk constraints on the path parameters s, which are then relocated to the Cartesian space using a constraint transfer method based on Lie theory (We use the Lie group SE(3) to represent the motion of the robot end-effector in Cartesian space. The detailed description of using Lie theory for robot forward and inverse kinematic analysis and the Jacobian matrix derivation process is presented in the Appendix A), reducing the number of decision variables. After establishing the optimal control problem (OCP) formulation of the TOTP problem in the ( s , s ˙ ) phase plane, the TOPP-RA algorithm is extended to the Cartesian space to obtain an initial solution, and a constraint relaxation approach is used to simplify nonconvex state-update constraints. The method is validated through simulation experiments on a ROS-based platform and real-world experiments on an actual robot, demonstrating effectiveness, generality, and robustness. This paper makes several contributions to the field of optimal trajectory generation:
  • A comprehensive and effective framework for iterative optimization is presented to establish the OCP formulation of the TOTP problem, which is described by the path parameter s;
  • Given an efficient computational solution for computing the nonlinear TOPP in Cartesian space while satisfying third-order constraints in joint space;
  • Experiments have demonstrated that the proposed method can effectively generate smoother trajectories that satisfy jerk constraints on a wide range of robot systems.
The remainder of this paper is organized as follows. Section 2 outlines the key features of the OCP model used for the TOPP algorithm. In Section 3, we present the Cartesian-based TOPP-RA method and describe the proposed TOPP algorithm based on iterative optimization. Section 4 reports extensive experimental results. Finally, in Section 5, we provide concluding remarks.

2. Problem Statement

In this section, we establish the TOPP problem as an OCP in Cartesian space, which includes joint third-order constraints and an objective function in the ( s , s ˙ ) phase plane. The details of these constraints will be formulated in the following subsections.

2.1. General Description

In a n-dof robot system, the state profiles in configuration space are denoted by x ( t ) = [ q ( t ) ; q ˙ ( t ) ; q ¨ ( t ) ] , where q R n represents the configuration of the system. The control inputs u ( t ) represent the third derivative of the joint angles, q ( t ) , in configuration space. The following is a standard OCP that can be used to describe the time-optimal speed planning problem [29]:
min J ( x ( t ) , u ( t ) ) s . t . x ˙ ( t ) = f S t a t u s u p d a t e ( x ( t ) , u ( t ) ) , x m i n x ( t ) x m a x , u m i n u ( t ) u m a x , t [ 0 , T ] ; x ( 0 ) = x i n i t , u ( 0 ) = u i n i t , x ( T ) = x g o a l , u ( T ) = u g o a l .
f S t a t u s u p d a t e = 0 forms the status-update process. [ x m i n , x m a x , u m i n , u m a x ] describes the allowable regions of state and control profiles. [ x i n i t , u i n i t , x g o a l , u g o a l ] denotes the start and end conditions of the state and control profiles. T represents the total time, which is unidentified now.
To translate the above model to a TOPP problem in the ( s , s ˙ ) phase plane, we propose a function p ( s ) s [ 0 , s e n d ] that represents a geometric path in the Cartesian space, and is piece-wise C 2 -continuous. We introduce a time parameterization that itself represents the parameter of the path, as a piece-wise C 2 , increasing scalar function s : [ 0 , T ] [ 0 , s e n d ] . The trajectory is then recovered as p ( s ( t ) ) t [ 0 , T ]  [30]. In the rest of this section, we introduce how to complete the transformation of the TOPP problem through s : [ 0 , T ] [ 0 , s e n d ] .

2.2. Objective Function

To minimize the total time of robot movement, the objective function J ( x ( t ) , u ( t ) ) is defined as
J = T = t = 0 T 1 d t
Replace the previous equation with d s / d s = 1 and change the integral limits from [ 0 , T ] (time) to [ 0 , s e n d ] (s) [31]. Formula (2) is updated as follows:
J = t = 0 T 1 d t = t = 0 T d s d s d t = s = 0 s e n d d t d s d s = s = 0 s e n d 1 s ˙ d s
Therefore, to minimize the time, s ˙ 1 ( s ) should be as small as possible. In other words, s ˙ ( s ) must be as large as possible while still satisfying the various constraints mentioned later. This means that the state trajectory must follow the boundary of the phase diagram plotted by ( s , s ˙ ) , which is naturally aligned with TOPP-RA method.

2.3. Constraints

In a TOPP problem, there are generally three types of constraints: status-update constraints, constraints on the states/control profiles, and two-point boundary constraints [32].

2.3.1. Status-Update Constraints

The state-update/kinematic constraints of a robot describe the kinematic feasibility of the robot’s motion. Using forward and inverse kinematics, the configuration q in the joint space can be converted to the corresponding Cartesian space representation p (see the Appendix A for transformation method). As a result, the state and control profiles can be expressed in terms of the geometric path p ( s ) , which can then be further transformed to a form represented by path parameters s, as shown in Equation (4).
d d s s ˙ s ¨ = s ¨ s ˙ s s ˙ , s [ 0 , s e n d ]
The status-update function can be rewritten by performing a second-order Taylor series expansion at s i .
s ˙ = s ˙ i + s ¨ i s ˙ i Δ ( s ) + d 2 s ˙ d s 2 | s = ξ ( Δ ( s ) ) 2 s ¨ = s ¨ i + s i s ˙ i Δ ( s ) + d 2 s ¨ d s 2 | s = η ( Δ ( s ) ) 2
where s [ s i , s i + 1 ] , ξ , η [ s i , s ] and Δ ( s ) = s s i . Let us define the first-order status-update discretization function as follows:
s ˙ = s ˙ i + s ¨ i s ˙ i Δ ( s ) s ¨ = s ¨ i + s i s ˙ i Δ ( s )
The error of the first-order status-update discretization function, denoted by e f i r s t s t a t e , is as follows:
e f i r s t s t a t e = O ( Δ 2 ( s ) )
Similarly, by performing a third-order Tylor series expansion at s i , the second-order status-update discretization function and its error can be, respectively, rewritten as:
s ˙ = s ˙ i + s ¨ i s ˙ i Δ ( s ) + ( s i s ˙ i 2 s ¨ i 2 s ˙ i 3 ) Δ 2 ( s ) s ¨ = s ¨ i + s i s ˙ i Δ ( s ) s ¨ i s i s ˙ i 3 Δ 2 ( s )
e s e c o n d s t a t e = O ( Δ 3 ( s ) )

2.3.2. States/Control Profiles Constraints

The state/control constraints of a robot refer to the physical constraints that the robot must adhere to during its motion process. Typically, these constraints involve the robot’s state variables, such as position, velocity, acceleration, joint angles, and so on. The constraints on the robot’s states and control profiles can be formulated as x m i n x ( t ) x m a x and u m i n u ( t ) u m a x , respectively, where t [ 0 , T ] . These constraints essentially limit the speed, acceleration, and jerk of the robot’s joints [33], as illustrated in the following equations.
q ˙ m i n q ¨ m i n q m i n q ˙ ( t ) q ¨ ( t ) q ( t ) q ˙ m a x q ¨ m a x q m a x , t [ 0 , T ]
The derivatives of the joints are projected into Cartesian space through the Jacobian matrix, as shown in Formula (11), which yields the derivatives of the path parameter s.
J q ˙ = p s ˙ J q ¨ + J ˙ q ˙ = p s ˙ 2 + q s ¨ J q + 2 J ˙ q ˙ + J ¨ q ˙ = p s ˙ 3 + 3 p s ˙ s ¨ + p s
where is defined as the differentiation of □ with respect to the path parameter s. Henceforth, we shall refer to s , s ˙ , s ¨ , and s as the position, velocity, acceleration, and jerk, respectively. By substituting Equation (11) into Equation (10), the inequality constraints on the states/control profiles can be expressed as follows:
q ˙ m i n q ¨ m i n q m i n a ( s ) s ˙ b ( s ) s ˙ 2 + c ( s ) s ¨ d ( s ) s ˙ 3 + e ( s ) s ˙ s ¨ + f ( s ) s q ˙ m a x q ¨ m a x q m a x , s [ 0 , s e n d ] , where
a ( s ) : = J 1 ( s ) p ( s ) , b ( s ) : = J 1 ( s ) ( p ( s ) J ( s ) J 1 ( s ) p ( s ) ) , c ( s ) : = J 1 ( s ) p ( s ) , d ( s ) : = J 1 [ p ( s ) 2 J ( s ) J 1 ( s ) ( p ( s ) J ( s ) J 1 ( s ) p ( s ) ) J ( s ) J 1 ( s ) p ( s ) ] , e ( s ) : = 3 J 1 ( s ) ( p ( s ) J ( s ) J 1 ( s ) p ( s ) ) , f ( s ) : = J 1 ( s ) p ( s ) .
The formulas for calculating each order derivative of the Jacobian matrix ( J , J ) will be presented in the Appendix A.

2.3.3. Boundary Constraints

Boundary constraints refer to the limitations imposed on the state and control variables of a robot during the initial and final stages of its operation. The constraints x ( 0 ) = x i n i t , u ( 0 ) = u i n i t , x ( T ) = x g o a l , and u ( T ) = u g o a l define the boundary conditions. These boundary conditions ensure that the state and control profiles at the start moment s = 0 ( t = 0 ) and the end moment s = s e n d ( t = T ) represent the necessary facts at those moments, respectively.
[ s ˙ ( 0 ) , s ¨ ( 0 ) , s ( 0 ) ] = [ s ˙ 0 , s ¨ 0 , s 0 ] , s ˙ ( s e n d ) , s ¨ ( s e n d ) , s ( s e n d ) ] = [ s ˙ s e n d , s ¨ s e n d , s s e n d ] .
In particular, more degrees of freedom are allowed in setting the control profile s at s = 0 ( t = 0 ) to ensure the normal operation of the motor.
As a summary of this section, the following OCP is established to represent the TOPP problem based on Cartesian space:
min ( 3 ) s . t . Status-update constraints ( 4 ) ; States / Control profiles constraints ( 12 ) and ( 13 ) ; Two-point boundary constraints ( 14 ) .
In general, when moving from the initial state to the target state along a predetermined path, speed planning aims to resolve any potential conflicts that may arise between kinematics-based constraints and environmental constraints. However, due to the nonlinear relationship between the state and control variables, an appropriate initial solution is required to solve the OCP (15). There is a problem with the state/control constraints (12) in OCP (15) because the jerk of the robot is not taken into account when solving the initial solution, which can easily lead to leaving out the free space required for kinematic feasibility. Therefore, directly solving OCP (15) may not always be effective. An alternative option we propose is to build an iterative framework in which the kinematic feasibility is adaptively adjusted when it is found to be inappropriate. The details on how to find an effective computational solution to TOPP with nonlinear constraints are described in Section 3.

3. TOPP by Iterative Optimization (TOPP-IO)

This section introduces our proposed Cartesian-based TOPP-IO method. First, we present the initial guess and control group generated by the Cartesian-based TOPP-RA method, followed by an explanation of the principle of the TOPP-IO method.

3.1. Cartesian-Based TOPP-RA Method

Combining with [6], we expanded the TOPP-RA method from joint space to Cartesian space, which we call the Cartesian-based TOPP-RA method. The geometric path in Cartesian space, denoted by p ( s ) , is divided into N segments with N + 1 grid points, where ( s i , s ˙ i , s ¨ i , s i ) represents the i-th stage state and control profiles, with i [ 0 , 1 , , N ] . The constraints of joint acceleration can be formulated as follows, by taking into account (12) and (13):
B s ˙ 2 + C s ¨ Q ¨
where B = b ( s ) b ( s ) , C = c ( s ) c ( s ) and Q ¨ = q ¨ m a x q ¨ m i n . The velocity constraints of the joints are expressed as a range of i-stage state variables, X i = [ ( s ˙ i 2 ) l o w e r , ( s ˙ i 2 ) u p p e r ] , which reflects the allowable velocity of the joints.
( s ˙ i 2 ) l o w e r = max j q ˙ m i n , j a j ( s i ) a j ( s i ) > 0 or q ˙ m a x , j a j ( s i ) a j ( s i ) < 0 , ( s ˙ i 2 ) u p p e r = min j q ˙ m a x , j a j ( s i ) a j ( s i ) > 0 or q ˙ m i n , j a j ( s i ) a j ( s i ) < 0 .
where j is the j-th element of a ( s i ) , q ˙ m i n and q ˙ m a x . The state-update function for constant acceleration over [ s i , s i + 1 ] is given by:
s ˙ i + 1 2 = s ˙ i 2 + 2 Δ i s ¨ i
where Δ = s i + 1 s i .

3.1.1. Backward Pass

In considering the segment [ s i , s i + 1 ] and assuming that the i + 1 -th feasible range, S i + 1 , is known, the i-th feasible range, S i = [ ( s ˙ i 2 ) , ( s ˙ i 2 ) + ] , can be calculated using the following formula:
( s ˙ i 2 ) : = min s ˙ i 2 , ( s ˙ i 2 ) + : = max s ˙ i 2 , s . t . s ˙ i 2 X i , s ˙ i 2 + 2 Δ i s ¨ i S i + 1 , B s ˙ i 2 + C s ¨ i Q ¨ .
Obviously, Formula (19) indicates that for any s ˙ i 2 S i , there always exists a state s ˙ i + 1 2 S i + 1 that corresponds to it. In other words, we can always move from the feasible range S i to S i + 1 using the state-update function. By applying Formula (19) recursively, we can obtain a set of transitive feasible ranges, [ S 0 , S 1 , , S n ] . Any state that belongs to the transitive feasible ranges can be transferred to the ending state when the last feasible range set is determined.

3.1.2. Forward Pass

By transferring s ˙ i 2 S i from step i to s ˙ i + 1 2 S i + 1 of step i + 1 , we can recursively reach the final state S n . Furthermore, literature [6] has demonstrated that the transition process occurs on a convex polygon. Therefore, selecting control variables that can reach the upper limit of the next S will result in the shortest task time. This selection exhibits locally greedy behavior while globally optimizing performance. Once the transitive feasible ranges have been derived from the backward pass, the method for transferring ( s ˙ i 2 ) * to ( s ˙ i + 1 2 ) * using a greedy algorithm is as follows:
( s ˙ i + 1 2 ) * : = max ( s ˙ i 2 ) * + 2 Δ i s ¨ i , s . t . ( s ˙ i 2 ) * + 2 Δ i s ¨ i S i + 1 , B ( s ˙ i 2 ) * + C s ¨ i Q ¨ .
where ( s ˙ i 2 ) * denotes the optimal solution at the i-th grid point. By setting deterministic values of ( s ˙ 0 2 ) * S 0 and S n = { ( s ˙ n 2 ) * } , the solution of Cartesian-based TOPP-RA, [ ( s ˙ 0 2 ) * , ( s ˙ 1 2 ) * , , ( s ˙ n 2 ) * ] , is obtained by recursively applying Formula (20).

3.2. Principle of the Proposed TOPP-IO Method

The general principle of the TOPP iterative optimization method is illustrated by the pseudo-codes in Algorithm 1. Given a path P in Cartesian space, Algorithm 1 first generates an initial conjecture using the ToppraGuess() function to numerically solve (15) without joint jerk limits. This initial conjecture includes the path discretization, all the parameters required to solve (15), and the initial values of all the decision variables. Then, using the full content of this initial conjecture, Algorithm 1 establishes an iterative OCP where an intermediate optimal solution is obtained from each iteration. After the first three lines of initialization, the while loop is applied to iteratively solve the TOPP O C P . Similar to (15), the only difference is that we add (4) as a soft constraint to the objective function. Specifically, this iterative OCP solves the following optimization problems.
min ( 3 ) + ω s o f t · f s o f t ( s ) s . t . States / Control profiles constraints ( 12 ) and ( 13 ) ; Two-point boundary constraints ( 14 ) .
where ω s i f t > 0 is a parameter used to weight the softening of the state updating, and f s o f t ( s ) is denoted as
f s o f t ( s ) = s = 0 s e n d s ˙ s ¨ f S t a t u s u p d a t e ( s ) 2 d s
In each iteration of the while loop, the function SolveIteratively ( OCP T O P P , G ) is used to solve (21) using the initial conjecture G . The function StateUpdateInfeasibility ( G ) evaluates the infeasibility degree of the status update determined by f s o f t ( s ) as given in (22). When f s o f t ( s ) becomes small enough, i.e., close to 0 + , the function GetTrajectoryInformation ( G ) is called to extract information about the optimal trajectory from the solution G .
Algorithm 1: An Iterative Optimal Method for TOPP
Input: Geometric path in Cartesian space P
Output: Optimal trajectory information info o p t i
Entropy 25 00610 i001

3.3. Properties Discussion of Algorithm 1

This subsection describes the relevant properties of the proposed TOPP-IO method in Algorithm 1.
First, the iterative process progressively increases the feasibility and optimality of the phase state. It is assumed that the initial solution obtained by the Cartesian frame TOPP-RA does not satisfy the jerk constraint and, hence, is not status-update feasible. In such cases, restoring status-update feasibility becomes the primary goal of minimizing the objective function of OCP T O P P . Therefore, the optimal solution differs from the initial guess by reducing the status-update infeasibility. Although the status-update infeasibility may not be eliminated, the resulting ( s , s ˙ ) phase diagram is closer to being feasible, providing opportunities for further improvement in succeeding iterations.
Second, optimality is achieved when Algorithm 1 exits from line 9. As the iteration continues, the status-update infeasibility approaches 0 + and incrementing ω s o f t expedites the procedure. When the degree of status-update infeasibility is small, the total time (3) in the objective function of (21) dominates. Thus, the objective function of (21) is minimized, closing in on minimizing the original objective function (3) to an accuracy level of e s o f t .
Third, the OCP T O P P is always feasible, which is a crucial cornerstone of the entire iterative framework. With strict restrictions on CPU runtime and a willingness to accept suboptimal solutions, a feasible solution can be obtained at any point by interrupting the iterative optimization process. With very slow motion always feasible, the solution procedure for each (21) is consistently in the feasible region of the solution space when the initial solution is set to 0 . Thus, as long as the obtained ( s , s ˙ ) phase diagram’s near-future period is status-update feasible, the resulting phase states can be transferred to the next iterative OCP T O P P for further enhancements.

4. Simulation and Real-World Experiment Results

In this section, simulation experiments will be used to demonstrate the feasibility, performance, and generality of the proposed method, as well as an industrial robot real machine-verification experiment will be performed, which gives practical significance to the TOPP-IO algorithm. The proposed method is executed on Ubuntu using an Intel i7-7700HQ @ 2.80 GHz CPU and 16-GB RAM, and all optimization problems are solved using CasADi (CasAdi is an open-source software framework for nonlinear optimization and optimal control. It provides a flexible and efficient interface for constructing and solving various optimization problems, including trajectory optimization) [34]. We use the 6-DOF Firefox robot from SIASUN in both the simulation and the real world, in addition to the Pioneer P3-DX robot used in the simulation. The implementation of TOPP-IO was done in C++, and the required communication between systems for these experiments was established. Figure 1 illustrates the architecture of the implementation.

4.1. Experiment Settings

The joint and wheel velocity, acceleration, and jerk limits are presented in each experiment, respectively, which are critical factors for the safe and efficient operation of robotic systems. To assess the robustness and adaptability of our proposed algorithm, TOPP-IO, we conducted a series of experiments with varying jerk limits. Specifically, we evaluated the performance of TOPP-IO under four different jerk limits: 0.1×, 1×, 10×, and 100× the default value. The basic parameters for the iterative optimization are carefully selected to ensure the convergence and efficiency of the optimization process, which are listed in Table 2.

4.2. Comparison with TOPP-RA Method

This method is built and tested on the random geometric route depicted in Figure 2, subject to joint velocity, acceleration, and jerk limitations which are presented in Table 3. The simulation results are compared with those obtained from the CO algorithm (TOPP-RA) presented in [6] to demonstrate the effectiveness of the proposed strategy in controlling the acceleration surge caused by ignoring the jerk constraints.
The results of the two approaches, TOPP-RA and TOPP-IO, in the ( s , s ˙ ) and ( s , s ¨ ) phase planes are presented in Figure 3 and Figure 4, respectively. It can be observed from Figure 4 that TOPP-RA allows for steep slopes of acceleration due to the lack of restriction on jerk, leading to an abrupt shift in acceleration between neighboring path points. This sudden change in acceleration can be seen in the velocity curve of Figure 3, where there is no smooth transition between the acceleration and deceleration portions. Such abrupt changes in acceleration can result in jerky and unstable motion, which is not desirable in many real-world applications. To address this issue, TOPP-IO imposes explicit joint jerk limitations, leading to smoother acceleration profiles between neighboring path points. Figure 4 shows that the TOPP-IO method successfully restricts the acceleration mutation, preventing any abrupt changes in acceleration. Furthermore, the velocity curve of TOPP-IO in Figure 3 exhibits smoother transitions between the portions representing acceleration and deceleration, guaranteeing that the nearby segments will not violate the imposed restrictions.
To further evaluate the performance of the two approaches, we compare their execution times in Table 4 and display the corresponding speed, acceleration, and jerk curves in Figure 5 for various jerk limits ( 100 × , 10 × , 1 × , and 0.1 × ). In the TOPP-RA method, it is evident that the acceleration profiles are bang-bang, satisfying all joint second-order constraints.
With all third-order kinematic constraints, the jerk profiles are bang-bang in the TOPP-IO method, leading to smoother transitions between the portions representing acceleration and deceleration. Without joint jerk limits, the maximum acceleration is about 1638.4 rad/s 3 . As the jerk limit is decreased from “none” to 100 × and 10 × jerk limits, the execution time only slightly increases from 2.81067 s to 2.89393 s and 2.90326 s, respectively, and the smoothing effect of the speed profile is not immediately noticeable. The speed profile becomes smoother as the jerk limits approach 1 × jerk limits. Notably, even when the jerk limit is set to 0.1 × jerk limits, TOPP-IO can still produce a valid solution, albeit with an increased execution time.

4.3. Application on Mobile Robot

Our method applies not only to manipulators but also to a wide range of robots. To demonstrate its flexibility, we computed a ground trajectory for the Pioneer P3-DX, a diff-drive mobile robot. The wheel velocity, acceleration, and jerk limitations are presented in Table 5. Screenshots of the operational phase as well as the wheel speed curve in comparison to TOPP-RA are shown in Figure 6.
The restrictions on wheel jerk and route jerk constraints have similar effects on controlling acceleration mutation. In this study, jerk restrictions were defined as wheel jerk constraints that effectively limit acceleration mutation in the route. The robot trajectories obtained from TOPP-RA and the proposed method are presented in Figure 7. Table 6 indicates that the maximum absolute values of the robot’s acceleration and jerk curves obtained from the proposed method are reduced by 60.28% and 69.82%, respectively, compared to those from TOPP-RA.

4.4. Real-World Experiments

In real-world experiments, we applied our method to the welding industry where the objective is to complete tasks as quickly, safely, and efficiently as possible. TOPP-IO succeeded in executing the assignment in a timely, safe, and stable manner. The running state of the Firefox robot in the actual world is shown in Figure 8 and is consistent with the simulation results.
We performed both quantitative and qualitative analyses of our method’s performance during the actual operation process. Specifically, we analyzed the position error of each joint and examined the speed-tracking situation using joint1 as an example. Figure 9a shows the joint position error of the TOPP-RA method during actual operation, while Figure 9b displays the joint position error of the TOPP-IO method under the same path. In addition, Table 7 compares the performance of our TOPP-IO method with that of the TOPP-RA method. The results show that the average and maximum position errors of all joints in TOPP-IO have been reduced to different degrees during operation. The absolute values of the average position error and maximum position error have been reduced by about 29% and 27%, respectively, compared to the TOPP-RA method.
To examine the speed-tracking situation, we used joint1 as an example. Figure 10a shows the speed-tracking of the TOPP-RA method during actual operation, while Figure 10b presents the speed curve of our TOPP-IO method, which considers the third-order constraint. Only the second-order constraint of joint space is considered, which leads to snap-point (represented by the gray circle), or the sudden change in joint acceleration, resulting in the inability to track the given speed on the actual physical robot. As shown in the zoomed-in section of Figure 10a, the snap-point causes fluctuations in the speed curve. In contrast, our TOPP-IO method eliminates the snap-point and enables smooth tracking of joint speed. Our method ensures a smooth trajectory and efficient, steady completion of the task while maintaining high speed.

5. Conclusions

In this paper, we develop a comprehensive and efficient iterative optimization framework for solving the TOTP problem with joint third-order constraints. The main contributions and results of this paper are as follows:
  • The framework is constructed from the bottom up in the Cartesian coordinate system and can be applied to both manipulator and mobile robots;
  • Our study has identified two main challenges in the framework: how to consistently represent the TOTP problem in the Cartesian space using the ( s , s ˙ ) phase plane, while imposing third-order kinematic constraints on each joint, and how to devise an efficient computational solution strategy that uses a constraint relaxation approach to simplify nonconvex constraints without violating them;
  • We demonstrated the effectiveness of our proposed framework through both simulation and physical experiments. Compared to the TOPP-RA method, our approach effectively reduced the maximum absolute values of the robot’s jerk and the average absolute values of the position error over 60% and 29%, respectively. These are critical factors in ensuring smooth robotic velocity tracking and reducing impact during operation.
Our framework has a few limitations. First, we assume that the path of the end-effector in Cartesian space is predetermined. We use B-spline interpolation to generate continuous, smooth end-effector poses from the given path points. Second, our approach accepts suboptimal solutions when a feasible solution can be obtained at any point by interrupting the iterative optimization process.
Our future work can be divided into two main areas:
  • First, we aim to extend our framework to handle both path planning and speed planning simultaneously, which will enable our method to generate feasible solutions more efficiently;
  • Second, we plan to explore the potential of the constraint relaxation approaches and achieve real-time performance. Moreover, handling dynamic environments is a challenging and interesting area for future research.

Author Contributions

Conceptualization, Z.F. and Y.C.; methodology, Z.F.; software, Z.F.; validation, Z.F., F.Z., Q.Z. and K.J.; formal analysis, L.Z. and Z.D.; investigation, Z.F.; resources, Z.D.; data curation, M.L.; writing—original draft preparation, Z.F.; writing—review and editing, Z.F. and M.L.; visualization, Z.F. and Y.C.; supervision, K.J.; project administration, L.Z.; funding acquisition, F.Z. and Q.Z. All authors have read and agreed to the published version of the manuscript.

Funding

This research was funded by the National Key R&D Program of China (No. 2020YFB1710905) and the National Natural Science Foundation of China (No. 61903162).

Institutional Review Board Statement

Not applicable.

Informed Consent Statement

Not applicable.

Data Availability Statement

Not applicable.

Conflicts of Interest

The authors declare no conflict of interest.

Abbreviations

The following abbreviations are used in this manuscript:
TOTPtime-optimal trajectory planning
TOPPtime-optimal path parameterization
NINumerical Integration
COConvex Optimization
DPDynamic Programming
DCdifference of convex
SCPsequential convex programming
TOPP-RATOPP approach based on reachability analysis
TOPP-IOTOPP approach based on iterative optimization
LPlinear programming
BAbisection algorithm
NLPnonlinear programming

Appendix A. From Configuration Space to Cartesian Space

In this appendix, we introduce how to determine the position and attitude of the end-effector and their derivatives using the robot joint variables and their derivatives of each order, and then convert them into path parameter s for representation. This process involves forward kinematics, inverse kinematics and the derivatives of Jacobian matrix, which will be described in detail in the following subsections.

Appendix A.1. Forward and Inverse Kinematics

ψ is defined as the screw coordinate of the spiral axis relative to the spatial coordinate system. Its Lie algebra representation is as follows:
s e ( 3 ) = ψ = ρ ϕ R 6 , ρ R 3 , ϕ s o ( 3 ) , ψ = ϕ ρ 0 T 1 R 4 × 4
The Lie group corresponding to ψ can be expressed as
S E ( 3 ) = Ψ = R ϱ 0 T 1 R 4 × 4 , R S O ( 3 ) , ϱ R 3
where R and ϱ separately denote the directions and positions of the rigid-body. The mapping between the Lie algebra ψ and the corresponding Lie group Ψ is given by:
Ψ = exp ( ψ ) = exp ( ϕ ) ( I exp ( ϕ ) ) ϕ ρ + ϕ ϕ T ρ ϕ 2 0 T 1
Consider a robot system with n degrees of freedom, whose configuration is represented by q = [ q 1 , q 2 , , q n ] T R n . The forward kinematics model of the robot is determined as follows:
Ψ e n d ( q ) = i = 1 n exp ( ψ i q i ) Ψ S = R e n d ϱ e n d 0 T 1
where Ψ S represents the pose matrix of the end coordinate system relative to the space coordinate system when the robot is in the initial position; ( q i , ψ i ) denote the joint position and twist, respectively, of the i-th joint; R e n d and ϱ e n d separately denote the orientations and positions of the end-effector.
For a given robot model, it is possible to convert the end pose p expressed in Cartesian space to the corresponding joint values q in joint space using inverse kinematics. Similarly, the joint values q can be converted to the end pose p through forward kinematics. Thus, the reciprocal transformation between p and q can be achieved through these two transformations.

Appendix A.2. Explicit Expressions of High-Order Jacobian Derivatives

Jacobian matrix in Formula (13) is as follows:
J = J p · J b = A 1 ( r ) O O R s b ( r ) · β 1 , β 2 , , β n
where J b ( q ) R 6 × n represents the geometric Jacobian matrix; r R 3 represents the exponential coordinate of the axis angle, which is reflected in the last three lines of the p ( s ) . In J p R 6 × 6 , A ( r ) R 3 × 3 and R s b ( r ) R 3 × 3 can be expressed as:
A ( r ) = I 1 cos r r 2 r + r sin r r 3 ( r ) 2 , R s b ( r ) = exp ( r ) .
Since r can be expressed by p ( s ) , the first-order and second-order path parameter derivatives of J p are expressed as follows:
J p ( p ( s ) ) = A 1 ( p ( s ) ) d A ( p ( s ) ) d s A 1 ( p ( s ) ) 0 0 T d R s b d s , J p ( p ( s ) ) = 2 A 1 d A d s A 1 d A d s A 1 A 1 d 2 A d s 2 A 1 0 0 T d 2 R s b d s 2 .
(1)
First-order path parameter derivative J : The first-order derivative of Jacobian matrix J with respect to the path parameter s is as following:
J = J p · J b + J p · J b
The matrices J p and J p depend on the path parameter s, while J b is a function of the joint values q , which can be obtained by forward and inverse kinematics. Each column of J b ( q ) can be represented as an adjoint matrix, given by:
β i = A d Ψ i 1 ( ψ i ) = ( Ψ i ψ i Ψ i 1 ) R 6 , where Ψ i = j = 1 n exp ( ψ j q j ) Ψ S .
According to the chain rule of differentiation, the first-order derivative of the geometric Jacobian matrix with respect to the path parameter s, denoted as J b , and its i-th column, denoted as β i , can be expressed as:
J b = β 1 , β 2 , , β n , β i = j = 1 n β i q j q j = β i q 1 , β i q 2 , , β i q n q = β i q 1 , β i q 2 , , β i q n J 1 p .
In combination with the literature [35], β i q j can be calculated using ( β i , β j ) as follows:
β i q j = 0 , j < i a d β j ( β i ) = ( β j β i β i β j ) , j i
(2)
Second-order path parameter derivative J : The second-order derivative of the Jacobian matrix J with respect to the path parameter s is given by:
J = J p · J b + J p · J b + J p · J b
According to the chain rule, the second-order path parameter derivative, J b , and its i-th column, β i , can be denoted as:
J b = β 1 , β 2 , , β n , β i = s ( j = 1 n β i q j q j ) = j = 1 n β i q j q j + s ( j = 1 n β i q j ) q j = β i q 1 , β i q 2 , , β i q n q + s ( β i q 1 ) , s ( β i q 2 ) , , s ( β i q n ) J 1 p .
where
q = J 1 ( p J J 1 p )
and
s ( β i q j ) = 0 , j < i a d β j ( β i ) + a d β j ( β i ) , j i
Overall, this appendix establishes the forward kinematics of a robot using Lie theory and symbolically derives the first-order and second-order derivatives of the Jacobian matrix. Higher-order Jacobian matrices could be derived similarly. Furthermore, the inverse kinematics for a specific robot model can be easily obtained.

References

  1. Mikolajczyk, T. Manufacturing Using Robot. Adv. Mater. Res. 2012, 463, 1643–1646. In Proceedings of the Advanced Materials Research II; Trans Tech Publications Ltd.: Baech, Switzerland, 2012. [Google Scholar] [CrossRef]
  2. Oztemel, E.; Gursev, S. Literature review of Industry 4.0 and related technologies. J. Intell. Manuf. 2020, 31, 127–182. [Google Scholar] [CrossRef]
  3. Chiurazzi, M.; Alcaide, J.O.; Diodato, A.; Menciassi, A.; Ciuti, G. Spherical Wrist Manipulator Local Planner for Redundant Tasks in Collaborative Environments. Sensors 2023, 23, 677. [Google Scholar] [CrossRef] [PubMed]
  4. Gasparetto, A.; Boscariol, P.; Lanzutti, A.; Vidoni, R. Trajectory Planning in Robotics. Math. Comput. Sci. 2012, 6, 269–279. [Google Scholar] [CrossRef]
  5. Zhang, T.; Zhang, M.; Zou, Y. Time-optimal and Smooth Trajectory Planning for Robot Manipulators. Int. J. Control. Autom. Syst. 2021, 19, 521–531. [Google Scholar] [CrossRef]
  6. Pham, H.; Pham, Q.-C. A New Approach to Time-Optimal Path Parameterization Based on Reachability Analysis. IEEE Trans. Robot. 2018, 34, 645–659. [Google Scholar] [CrossRef] [Green Version]
  7. Bobrow, J.E.; Dubowsky, S.; Gibson, J.S. Time-Optimal Control of Robotic Manipulators Along Specified Paths. Int. J. Robot. Res. 1985, 4, 3–17. [Google Scholar] [CrossRef]
  8. Kunz, T.; Stilman, M. Time-optimal trajectory generation for path following with bounded acceleration and velocity. In Robotics: Science and Systems VIII; The MIT Press: Cambridge, MA, USA; London, UK, 2012; pp. 1–8. [Google Scholar]
  9. Pham, Q.C. A General, Fast, and Robust Implementation of the Time-Optimal Path Parameterization Algorithm. IEEE Trans. Robot. 2014, 30, 1533–1540. [Google Scholar] [CrossRef] [Green Version]
  10. Pham, H.; Pham, Q.C. On the structure of the time-optimal path parameterization problem with third-order constraints. In Proceedings of the 2017 IEEE International Conference on Robotics and Automation (ICRA), Singapore, 29 May–3 June 2017; pp. 679–686. [Google Scholar] [CrossRef] [Green Version]
  11. Shen, P.; Zhang, X.; Fang, Y. Essential Properties of Numerical Integration for Time-Optimal Path-Constrained Trajectory Planning. IEEE Robot. Autom. Lett. 2017, 2, 888–895. [Google Scholar] [CrossRef] [Green Version]
  12. Shen, P.; Zhang, X.; Fang, Y. Complete and Time-Optimal Path-Constrained Trajectory Planning With Torque and Velocity Constraints: Theory and Applications. IEEE/ASME Trans. Mechatronics 2018, 23, 735–746. [Google Scholar] [CrossRef]
  13. Lu, L.; Zhang, J.; Fuh, J.Y.H.; Han, J.; Wang, H. Time-optimal tool motion planning with tool-tip kinematic constraints for robotic machining of sculptured surfaces. Robot.-Comput.-Integr. Manuf. 2020, 65, 101969. [Google Scholar] [CrossRef]
  14. Verscheure, D.; Demeulenäre, B.; Swevers, J.; De Schutter, J.; Diehl, M. Practical time-optimal trajectory planning for robots: A convex optimization approach. IEEE Trans. Autom. Control. 2008, 53, 1–10. [Google Scholar]
  15. Xiao, Y.; Dong, W.; Du, Z. A time-optimal trajectory planning approach based on calculation cost consideration. In Proceedings of the 2012 IEEE International Conference on Mechatronics and Automation, Chengdu, China, 5–8 August 2012; pp. 1845–1850. [Google Scholar] [CrossRef]
  16. Debrouwere, F.; Van Loock, W.; Pipeleers, G.; Dinh, Q.T.; Diehl, M.; De Schutter, J.; Swevers, J. Time-Optimal Path Following for Robots With Convex-Concave Constraints Using Sequential Convex Programming. IEEE Trans. Robot. 2013, 29, 1485–1495. [Google Scholar] [CrossRef]
  17. Nagy, Á.; Vajk, I. Sequential Time-Optimal Path-Tracking Algorithm for Robots. IEEE Trans. Robot. 2019, 35, 1253–1259. [Google Scholar] [CrossRef]
  18. Ma, J.-w.; Gao, S.; Yan, H.-t.; Lv, Q.; Hu, G.-q. A new approach to time-optimal trajectory planning with torque and jerk limits for robot. Robot. Auton. Syst. 2021, 140, 103744. [Google Scholar] [CrossRef]
  19. Shin, K.; McKay, N. A dynamic programming approach to trajectory planning of robotic manipulators. IEEE Trans. Autom. Control. 1986, 31, 491–500. [Google Scholar] [CrossRef] [Green Version]
  20. Kaserer, D.; Gattringer, H.; Müller, A. Nearly Optimal Path Following with Jerk and Torque Rate Limits Using Dynamic Programming. IEEE Trans. Robot. 2019, 35, 521–528. [Google Scholar] [CrossRef]
  21. Kaserer, D.; Gattringer, H.; Müller, A. Time Optimal Motion Planning and Admittance Control for Cooperative Grasping. IEEE Robot. Autom. Lett. 2020, 5, 2216–2223. [Google Scholar] [CrossRef]
  22. Barnett, E.; Gosselin, C. A Bisection Algorithm for Time-Optimal Trajectory Planning Along Fully Specified Paths. IEEE Trans. Robot. 2021, 37, 131–145. [Google Scholar] [CrossRef]
  23. Faulwasser, T.; Findeisen, R. Nonlinear Model Predictive Control for Constrained Output Path Following. IEEE Trans. Autom. Control. 2016, 61, 1026–1039. [Google Scholar] [CrossRef] [Green Version]
  24. Consolini, L.; Locatelli, M.; Minari, A.; Piazzi, A. An optimal complexity algorithm for minimum-time velocity planning. Syst. Control. Lett. 2017, 103, 50–57. [Google Scholar] [CrossRef]
  25. Steinhauser, A.; Swevers, J. An Efficient Iterative Learning Approach to Time-Optimal Path Tracking for Industrial Robots. IEEE Trans. Ind. Inform. 2018, 14, 5200–5207. [Google Scholar] [CrossRef]
  26. Consolini, L.; Locatelli, M.; Minari, A. A Sequential Algorithm for Jerk Limited Speed Planning. IEEE Trans. Autom. Sci. Eng. 2022, 19, 3192–3209. [Google Scholar] [CrossRef]
  27. Petrone, V.; Ferrentino, E.; Chiacchio, P. Time-Optimal Trajectory Planning With Interaction With the Environment. IEEE Robot. Autom. Lett. 2022, 7, 10399–10405. [Google Scholar] [CrossRef]
  28. Yang, Y.; Xu, H.z.; Li, S.h.; Zhang, L.l.; Yao, X.m. Time-optimal trajectory optimization of serial robotic manipulator with kinematic and dynamic limits based on improved particle swarm optimization. Int. J. Adv. Manuf. Technol. 2022, 120, 1253–1264. [Google Scholar] [CrossRef]
  29. Singh, S.; Leu, M.C. Optimal Trajectory Generation for Robotic Manipulators Using Dynamic Programming. J. Dyn. Syst. Meas. Control. 1987, 109, 88–96. [Google Scholar] [CrossRef]
  30. Slotine, J.J.E.; Yang, H.S. Improving the Efficiency of Time-Optimal Path-Following Algorithms. In Proceedings of the 1988 American Control Conference, Atlanta, GA, USA, 15–17 June 1988; pp. 2129–2134. [Google Scholar] [CrossRef]
  31. Consolini, L.; Locatelli, M.; Minari, A.; Nagy, Á.; Vajk, I. Optimal Time-Complexity Speed Planning for Robot Manipulators. IEEE Trans. Robot. 2019, 35, 790–797. [Google Scholar] [CrossRef]
  32. Li, B.; Ouyang, Y.; Li, L.; Zhang, Y. Autonomous Driving on Curvy Roads Without Reliance on Frenet Frame: A Cartesian-Based Trajectory Planning Method. IEEE Trans. Intell. Transp. Syst. 2022, 23, 15729–15741. [Google Scholar] [CrossRef]
  33. Guarino Lo Bianco, C.; Faroni, M.; Beschi, M.; Visioli, A. A Predictive Technique for the Real-Time Trajectory Scaling Under High-Order Constraints. IEEE/ASME Trans. Mechatronics 2022, 27, 315–326. [Google Scholar] [CrossRef]
  34. Andersson, J.A.E.; Gillis, J.; Horn, G.; Rawlings, J.B.; Diehl, M. CasADi—A software framework for nonlinear optimization and optimal control. Math. Program. Comput. 2019, 11, 1–36. [Google Scholar] [CrossRef]
  35. Fu, Z.; Spyrakos-Papastavridis, E.; Lin, Y.-H.; Dai, J.S. Analytical Expressions of Serial Manipulator Jacobians and their High-Order Derivatives based on Lie Theory. In Proceedings of the 2020 IEEE International Conference on Robotics and Automation (ICRA), Paris, France, 31 May–31 August 2020; pp. 7095–7100. [Google Scholar] [CrossRef]
Figure 1. Architecture of implementation.
Figure 1. Architecture of implementation.
Entropy 25 00610 g001
Figure 2. The geometric path on which this approach is implemented and tested.
Figure 2. The geometric path on which this approach is implemented and tested.
Entropy 25 00610 g002
Figure 3. Comparison of the TOPP-RA resultant velocity curve without jerk limitations (red dashed line) and the one obtained from the proposed method with jerk limits (blue solid line).
Figure 3. Comparison of the TOPP-RA resultant velocity curve without jerk limitations (red dashed line) and the one obtained from the proposed method with jerk limits (blue solid line).
Entropy 25 00610 g003
Figure 4. Comparison of the TOPP-RA resultant acceleration curve without jerk limitations (red dashed line) and the one obtained from the proposed method with jerk limits (blue solid line).
Figure 4. Comparison of the TOPP-RA resultant acceleration curve without jerk limitations (red dashed line) and the one obtained from the proposed method with jerk limits (blue solid line).
Entropy 25 00610 g004
Figure 5. Velocity, acceleration, and jerk profiles for various methods and jerk restrictions. (a) Speed, (b) Acceleration, and (c) Jerk.
Figure 5. Velocity, acceleration, and jerk profiles for various methods and jerk restrictions. (a) Speed, (b) Acceleration, and (c) Jerk.
Entropy 25 00610 g005
Figure 6. The ground path on which this approach is implemented and tested.
Figure 6. The ground path on which this approach is implemented and tested.
Entropy 25 00610 g006
Figure 7. Comparing the resulting mobile robot acceleration (a) and jerk (b) from TOPP-RA and the ones obtained from the proposed approach.
Figure 7. Comparing the resulting mobile robot acceleration (a) and jerk (b) from TOPP-RA and the ones obtained from the proposed approach.
Entropy 25 00610 g007
Figure 8. Real-world experiments (eh) in accordance with the simulation (ad).
Figure 8. Real-world experiments (eh) in accordance with the simulation (ad).
Entropy 25 00610 g008
Figure 9. Comparing the resulting joint position error from TOPP-RA (a) and the ones obtained from proposed approach (b).
Figure 9. Comparing the resulting joint position error from TOPP-RA (a) and the ones obtained from proposed approach (b).
Entropy 25 00610 g009
Figure 10. Comparing the resulting joint1 velocity curve from TOPP-RA (a) and the ones obtained from proposed approach (b). (The gray circle represented the snap-point).
Figure 10. Comparing the resulting joint1 velocity curve from TOPP-RA (a) and the ones obtained from proposed approach (b). (The gray circle represented the snap-point).
Entropy 25 00610 g010
Table 1. A brief overview of related methods.
Table 1. A brief overview of related methods.
Methods Calculate Switch PointsOptimization Objectives (Simple, Multiple)Achieve Optimal PointPlanning SpaceConstraint Order (Second-Order, Third-Order)
NI-based[7,11,12]NeedSimpleYesJoint/CartesianSecond-order
[8,9]NeedSimpleYesJointSecond-order
[10,13]NeedSimpleYesJointThird-order
CO-based[6,17]Not needSimpleYesJointThird-order
[14,15]Not needMultipleYesJoint/CartesianSecond-order
[16]Not needMultipleYesJoint/CartesianThird-order (Limit)
[18]NeedSimpleYesJointThird-order (Limit)
DP-based[19,20]Not needMultipleNoJointThird-order
[21]Not needMultipleNoJoint/CartesianThird-order
[22]Not needMultipleNoJointSecond-order
OursNot needMultipleYesJoint/CartesianThird-order
Table 2. Hyperparameter setting for iterative optimization.
Table 2. Hyperparameter setting for iterative optimization.
HyperparameterDescriptionValue
i t e r m a x Maximum iteration number5
ω s o f t 0 ω s o f t initial value10 5
α Multiplier to enlarge ω s o f t 10
e s o f t Softened constraints tolerance16
Table 3. Velocity, acceleration, and jerk limits of joints.
Table 3. Velocity, acceleration, and jerk limits of joints.
LimitsJoint1Joint2Joint3Joint4Joint5Joint6
Vel. (rad/s)222444
Acc. (rad/s 2 )566121212
Jerk (rad/s 3 )161618202828
Table 4. Execution time of different trajectory planning algorithms and jerk restrictions.
Table 4. Execution time of different trajectory planning algorithms and jerk restrictions.
MethodTOPP-RATOPP-IO
Jerk Limits (rad/s 3 )-100×10×0.1×
t e (s)2.810672.893932.903264.029418.63447
Table 5. Velocity, acceleration, and jerk limits of wheels.
Table 5. Velocity, acceleration, and jerk limits of wheels.
LimitsWheel1Wheel2
Vel. (rad/s)22
Acc. (rad/s 2 )44
Jerk (rad/s 3 )88
Table 6. Comparing the maximum absolute value of the robot’s acceleration and jerk curves between the two approaches.
Table 6. Comparing the maximum absolute value of the robot’s acceleration and jerk curves between the two approaches.
Acceleration (m/s2)Jerk (m/s3)
TOPP-RA3.9808626.4858
TOPP-IO1.581187.9937
Degree of decline60.28%69.82%
Table 7. The absolute values of the average and maximum joint position error on different trajectory planning algorithms.
Table 7. The absolute values of the average and maximum joint position error on different trajectory planning algorithms.
Joint1Joint2Joint3Joint4Joint5Joint6
Average
position error
TOPP-RA (rad)0.01600.02960.02930.00750.00660.0192
TOPP-IO (rad)0.01120.02050.02060.00530.00470.0135
Degree of decline30.13%30.67%29.81%29.60%29.65%29.46%
Maximum
position error
TOPP-RA (rad)0.05180.09110.08490.02700.01830.0621
TOPP-IO (rad)0.03390.06240.05570.01960.01270.0444
Degree of decline34.63%31.54%34.36%27.62%30.36%28.47%
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content.

Share and Cite

MDPI and ACS Style

Fan, Z.; Jia, K.; Zhang, L.; Zou, F.; Du, Z.; Liu, M.; Cao, Y.; Zhang, Q. A Cartesian-Based Trajectory Optimization with Jerk Constraints for a Robot. Entropy 2023, 25, 610. https://doi.org/10.3390/e25040610

AMA Style

Fan Z, Jia K, Zhang L, Zou F, Du Z, Liu M, Cao Y, Zhang Q. A Cartesian-Based Trajectory Optimization with Jerk Constraints for a Robot. Entropy. 2023; 25(4):610. https://doi.org/10.3390/e25040610

Chicago/Turabian Style

Fan, Zhiwei, Kai Jia, Lei Zhang, Fengshan Zou, Zhenjun Du, Mingmin Liu, Yuting Cao, and Qiang Zhang. 2023. "A Cartesian-Based Trajectory Optimization with Jerk Constraints for a Robot" Entropy 25, no. 4: 610. https://doi.org/10.3390/e25040610

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop