Real-time Acceleration-continuous Path-constrained Trajectory Planning With Built-in Tradability Between Cruise and Time-optimal Motions

12/08/2018 ∙ by Peiyao Shen, et al. ∙ Nankai University 0

In this paper, a novel real-time acceleration-continuous path-constrained trajectory planning algorithm is proposed with an appealing built-in tradability mechanism between cruise motion and time-optimal motion. Different from existing approaches, the proposed approach smoothens time-optimal trajectories with bang-bang input structures to generate acceleration-continuous trajectories while preserving the completeness property. More importantly, a novel built-in tradability mechanism is proposed and embedded into the trajectory planning framework, so that the proportion of the cruise motion and time-optimal motion can be flexibly adjusted by changing a user-specified functional parameter. Thus, the user can easily apply the trajectory planning algorithm for various tasks with different requirements on motion efficiency and cruise proportion. Moreover, it is shown that feasible trajectories are computed more quickly than optimal trajectories. Rigorous mathematical analysis and proofs are provided for these aforementioned results. Comparative simulation and experimental results on omnidirectional wheeled mobile robots demonstrate the capability of the proposed algorithm in terms of flexible tunning between cruise and time-optimal motions, as well as higher computational efficiency.

READ FULL TEXT VIEW PDF
POST COMMENT

Comments

There are no comments yet.

Authors

page 2

page 3

page 5

page 6

page 8

page 9

page 10

page 11

This week in AI

Get the week's most popular data science and artificial intelligence research sent straight to your inbox every Saturday.

I Introduction

Motion planning aims to generate an effective collision-free motion law under kinematic and dynamic constraints of robotic systems [1], which can be decoupled into path planning and path-constrained trajectory planning. Geometric paths are generated by path planning under constraints of curvature, collision avoidance and so on [2]. Path-constrained trajectory planning algorithms take the generated paths, kinematic and dynamic constraints as input arguments to output feasible velocity profiles along given paths. In this paper, we focus on path-constrained trajectory planning while simultaneously considering cruise motion proportion, time-optimal motion, as well as the algorithmic completeness and its real-time performance.

Fig. 1: It is a diagram of the proposed algorithm with a built-in tradability mechanism between cruise motion and time-optimal motion. The notations represent the path coordinate, path velocity, starting velocity and terminal velocity, respectively. The cyan dash curve and purple dash-dot curve decide the maximum velocity curve. The orange solid curves represent feasible trajectories generated by the proposed algorithm. In the tradability mechanism, a user-specified functional parameter corresponding to the gray-white button decides the adjustable velocity limit line (blue small dash lines). When the button slides to ‘Time-optimality’ (the parameter increasing), the traveling time and cruise proportion of the generated trajectories decrease. When the button slides to ‘Cruise’ (the parameter decreasing), the traveling time and cruise proportion of the generated trajectories increase.

In order to increase the production efficiency of robotic systems, many trajectory planning techniques design the traveling time as the objective function to generate time-optimal trajectories [3, 4]. However, their input structures are generally bang-bang, resulting in discontinuous acceleration. Thus, the time-optimal trajectory planning indicates input saturation of at least one actuator at any time instant, such that there is no space for the controller to correct tracking errors caused by disturbances or modeling errors [1]. Accordingly, smooth trajectory planning techniques are given to improve tracking accuracy [5, 6, 7, 8, 9]

. In general, feasible trajectories are expressed with piecewise polynomial interpolation to guarantee smoothness (such as continuous acceleration), and then existing optimization solvers are employed to compute optimal trajectories in polynomial parametric space. However, it is hard to obtain optimal trajectories in global space other than parametric space

[10, 11]. Moreover, most of smooth techniques are achieved in the offline manner due to the nonlinear optimization solvers. The piecewise polynomial trajectories mainly consist of acceleration and deceleration motions, thus it is difficult to possess a high proportion of cruise motion [12]. In this case, the robot is in ‘go fast or go slow’ motion, which may bring potential accidents for urban transport systems [13]. In addition, these aforementioned literatures take no notice of an appealing planning property ‘completeness’: a solution is returned if a planning problem is solvable otherwise a failure is returned in finite time. Thus, there is still a lack of a real-time acceleration-continuous path-constrained trajectory planning considering the cruise motion, time-optimality and completeness.

In this paper, we propose a novel real-time acceleration-continuous trajectory planning algorithm with a built-in tradability mechanism between cruise motion and time-optimal motion. Moreover, the proposed algorithm still preserves the completeness property after smoothing the time-optimal trajectories computed by the work [14]. By adjusting a user-specified functional parameter in the built-in mechanism, the proposed algorithm outputs an adjustable trajectory between smoothened time-optimal trajectories and feasible trajectories possessing a high proportion of cruise motion. Specifically, in the mechanism, the traveling time and cruise proportion of feasible trajectories generated by the proposed algorithm are inversely in proportional to the functional parameter. In addition, the computational time of the proposed algorithm is in proportional to the functional parameter.

The main procedure of the proposed algorithm is described as follows. First, along the given path, the kinematic and dynamic constraints of the robotic system are transformed into path acceleration constraints. Then, a maximum velocity curve (MVC) is computed to satisfy the path acceleration constraints. With the aid of complete numerical integration techniques [14], a time-optimal trajectory is obtained as a combination of maximum accelerating and maximum decelerating curves under the MVC. However, the path acceleration of the time-optimal trajectory is discontinuous at the intersection points. Thus, a bidirectional integration operation is newly designed in this paper to guarantee continuous path acceleration at intersection points. Specifically, two feasible velocity profiles are computed with continuous path acceleration. In this paper, it is proven that these two velocity profiles joint together and constitute one feasible trajectory with continuous path acceleration. Finally, a smoothened time-optimal trajectory under the maximum velocity curve is generated by executing the bidirectional integration operation at each intersection point. On this basis, a novel tradability mechanism is proposed as shown in Fig. 1. In order to adjust the traveling time and cruise proportion of generated trajectories under the MVC, a user-specified functional parameter is formulated as a straight line of velocity limit which reconstructs the MVC with minimum operation. As the parameter decreases, the path velocity of the reconstructed MVC decreases, while the constant velocity parts in the reconstructed MVC increase. Thus, the traveling time and cruise proportion of the generated trajectories increase. In addition, the constant velocity parts in the reconstructed MVC can be computed in time complexity. Thus, feasible trajectories with a high proportion of cruise motion need less computational time. The corresponding proofs are provided in this paper. Comparative simulation and experimental results on active-caster-based omnidirectional wheeled mobile robots (OWMR) verify the effectiveness and capability of the proposed algorithm.

The main contributions of this paper are summarized as follows:

  1. Under acceleration-continuous constraints, the proposed algorithm smoothens time-optimal trajectories to guarantee continuous acceleration by executing the bidirectional integration operation instead of polynomial interpolation. Accordingly, an appealing planning property ‘completeness’ is preserved in the proposed algorithm.

  2. A novel built-in tradability mechanism between cruise motion and time-optimal motion is proposed. As the value of a user-specified parameter increases, a faster smoothened trajectory is obtained to improve motion efficiency of robotic systems. As the value of this parameter decreases, a slower but feasible trajectory possessing a higher proportion of cruise motion is obtained to make robot move steadily and improve tracking accuracy.

  3. The computational time of the proposed algorithm possesses upper and lower limits. The computational time of generating smoothened time-optimal trajectories reaches the upper limit which is the same with the online technique [14], while the generation of feasible trajectories with a high proportion of cruise motion requires less computational time. It conforms to the intuition: feasible trajectories are generated faster than optimal trajectories.

The remainder of this paper is divided into five sections. Section II summarizes related path-constrained trajectory planning algorithms. Section III describes the detailed procedures of the proposed algorithm. Section IV provides mathematical proofs for appealing properties of the proposed algorithm. In Section V, comparative simulation and experimental results on omnidirectional wheeled mobile robots demonstrate the validity of the proposed algorithm. Finally, Section VI gives some conclusions.

Ii Related Works

Ii-a Time-Optimal Trajectory Planning

Time-optimal trajectory planning attracts significant research attention because they increase production efficiency of robotic systems and bring great commercial profit. Based on the Pontryagin Maximum Principle, the proposed methods in [3, 4] generate time-optimal trajectories with bang-bang torque inputs of industrial manipulators. The work in [15] applies the method [4] to output time-optimal trajectories under both acceleration and velocity constraints for wheeled mobile robots. A fast and open source code implementation of the method [3] is provided in [16]. Recently, under both torque and velocity constraints, the work in [14] proposes a provably complete and time-optimal path-constrained trajectory planning algorithm [14]. Alternative time-optimal trajectory planning methods are proposed with dynamic programming techniques in [17, 18]. Convex optimization techniques are also applied to the generation of time-optimal trajectories [19]. Although the reference trajectories generated by aforementioned methods are time-optimal, the input of robotic systems is a bang-bang structure and the path acceleration along the given path is discontinuous. It results in two undesired effects. First, the planned trajectory with discontinuous acceleration is difficult to be followed, and the planned trajectory requires the saturation of at least one actuator in the motion, so that the tracking accuracy is greatly reduced especially in the presence of external uncertainties such as friction. Second, following unsmooth reference trajectories may cause safety risks and decrease the life of actuators.

Ii-B Smooth Trajectory Planning

In order to guarantee the continuous path acceleration, most works use piecewise polynomial interpolation to express feasible trajectories [20], and then they compute the optimal solutions with existing sequential quadratic programming (SQP) [1, 21], flexible tolerance method (FTM) [22]

, particle swarm optimization (PSO)

[12] and active-set [23] optimization solvers. With a preset traveling time, the works in [6, 24] describe smooth trajectories as cubic splines and minimize the time integral of the squared jerk along the given path. The feasibility issues in the planning problem have been discussed in [5, 25, 26, 27, 28]. However, these trajectory planning methods need to set the predefined traveling time, which limits their application scopes. In addition, with cubic splines and quintic polynomials, the works in [10, 22] minimize an objective function of the traveling time with enforced constraints of bounded jerk to guarantee smoothness. The work in [12] first computes a time-optimal trajectory expressed by piecewise cubic splines, and then fixes knots among the cubic splines with the 7th order polynomial. In the works [1, 8], the objective function consists of two terms: the traveling time and integral of the square jerk along the given path. By adjusting the weight of two terms, smoother or faster trajectories can be generated. To summarize, for aforementioned planning techniques, there are still some unsolved issues as follows:

  1. The time optimality cannot be guaranteed in global space due to piecewise polynomial interpolation.

  2. The computational time of trajectory generation is not adjustable, and the real-time performance is usually difficult to be guaranteed due to the nonlinear optimization.

  3. An important algorithmic property ‘completeness’ is ignored, which indicates that a planning algorithm returns feasible solutions for solvable planning problems otherwise a failure is returned in finite time. The detailed statements of the algorithmic completeness is also discussed in our previous works [14].

From the above analysis, there is still a lack of a real-time acceleration-continuous path-constrained trajectory planning, which possesses an effective tradability mechanism between cruise motion and time-optimal motion. It will be provided in this paper, and the corresponding appealing properties and proofs are also given in following sections.

Iii The Proposed Algorithm

This section provides the procedures of the proposed algorithm which generates smoothened time-optimal trajectories, as well as feasible trajectories possessing a high proportion of cruise motion.

Iii-a Path Parameterization

Along a given path, the trajectory planning problem is transformed from a high-dimensional space into a two-dimensional space consisting of path coordinate and path velocity. For instance, the dynamically extended model of a first-order nonlinear system (robot manipulators [29], unicycle robots [30], car-like robots [31], tractor-trailer robots [32], OWMR [33]) is described as follows:

(1)
(2)

where the vector

is the state of the robotic system, and the vectors are the velocity and acceleration of actuators, respectively. The matrix is a function of denoting the Jacobian matrix.

Along a specified path, the state of the robotic system is represented as with the scalar being path coordinate. Accordingly, the equations (1) and (2) are rewritten as

(3)
(4)

wherein , and . The scalars and are the path velocity and path acceleration, respectively.

The following inequalities represent velocity and acceleration constraints of actuators of the robotic system,

(5)
(6)

where and are constant vectors representing velocity and acceleration bounds, respectively.

In order to guarantee velocity constraints (5), substituting (3) into (5) yields that

(7)

with

(8)
(9)

In order to guarantee acceleration constraints (6), substituting (4) into (6) yields that

(10)

with

(11)
(12)

With the aid of the inequality (10), path acceleration constraints are computed as

(13)

where lower and upper bounds are described as

(14)
(15)

with the scalars are elements of vectors , respectively.

From above analysis, the model and constraints of the robotic system are transformed from a -dimensional state space into a two-dimensional space.

Fig. 2: It is a diagram of velocity limit curves. The cyan dash curve represents the velocity limit curve satisfying acceleration constraints (6). The purple dash-dot curve represents the velocity limit curve satisfying velocity constraints (5). The blue small dash line stands for the velocity limit curve decided by . The black dash-dot-dot curve represents a constant velocity boundary on the plane . The symbols are the starting path velocity, terminal path velocity and total length of a specified path.

Iii-B Velocity Limit Curve

In this subsection, velocity and acceleration constraints of robotic systems are represented as velocity limit curves on the phase plane . A user-specified functional parameter is also introduced as a user-prone constant velocity limit curve to adjust the traveling time, cruise proportion and computational time of feasible trajectories.

According to (7), a velocity limit curve satisfying velocity constraints (5) is computed as

(16)

where the scalar is the total length of the given path and is the element of . For example, is represented as the dash-dot curve in Fig. 2. When the path velocity of the robotic system reaches , there exists at least one saturated actuator velocity.

With the aid of the equation (13), the velocity limit curve satisfying acceleration constraints (6) is computed as

(17)

In Fig. 2, is represented as a dash cyan curve, where the equation holds. When the path velocity of the robotic system reaches , there exists at least one actuator achieving acceleration saturation.

In order to satisfy velocity and acceleration constraints, the maximum velocity curve is obtained as

(18)

It is represented as a boundary between gray and non-gray regions in Fig. 2. Constraints (5) and (6) are satisfied in the non-gray region.

With the aid of complete numerical integration techniques [14], a time-optimal trajectory is obtained under the maximum velocity curve. It consists of accelerating velocity profiles , decelerating velocity profiles and switch arcs, where switch arcs are feasible parts satisfying path acceleration constraints (13) in the maximum velocity curve [14]. Thus, the feasible trajectory is attached to the maximum velocity curve. Note that the path acceleration of the feasible trajectory is discontinuous. For instance, accelerating velocity profiles , decelerating velocity profiles and the switch arc constitute the feasible trajectory attached to the maximum velocity curve in Fig. 3. Its discontinuous path acceleration occurs at points and , which will be smoothened to achieve acceleration-continuous trajectory in Section III-C.

Iii-C Tradability Mechanism

In order to adjust the traveling time and cruise proportion of the feasible trajectories attached to the maximum velocity curve, a functional parameter changing the maximum velocity curve is introduced as an user-adjustable path velocity constraint

(19)

where with being the maximum value of with .

In order to satisfy the constraint (19), a velocity limit curve is described as

(20)

In Fig. 2, is represented as a blue small dash straight line, which moves up and down between and .

The velocity limit curve decided by reconstructs the maximum velocity curve as

(21)
Fig. 3: It is a diagram of the adjustment of the functional parameter . The amplitude and shape of change with the variation of . The decreasing of indicates that the traveling time and cruise proportion of feasible trajectories attached to increase. The purple solid straight lines represent , which can be taken as switch arcs in . The green stands for the switch point in . The red represents the intersection point among switch arcs (), accelerating velocity profiles () and decelerating velocity profiles ().

The adjustment of the functional parameter affects the amplitude and shape of . The physical interpretation of is given as follows:

  • : The amplitude of decreases, and it indicates that the traveling time of generated trajectories corresponding to increases. Simultaneously, the shape of tends to be a straight line, and it indicates that feasible trajectories possess a higher proportion of cruise motion.

  • : The amplitude of increases, and it indicates that the traveling time of generated trajectories corresponding to decreases and tends to be optimal. Simultaneously, the shape of is closer to , and it indicates that the cruise proportion of feasible trajectories decreases.

For example, the functional parameter is adjusted to , and in Fig. 3. For , the generated trajectory consists of the switch arc , accelerating () and decelerating () velocity profiles. For , the generated trajectory consists of the switch arc , accelerating () and decelerating velocity profiles. For , the generated trajectory consists of the switch arc and decelerating velocity profile. As reduces , the traveling time and cruise proportion of feasible trajectories increase. Note that the discontinuous acceleration of the feasible trajectories at red will be addressed with a bidirectional integration operation in Section III-C.

The generation of feasible trajectories attached to needs to search switch arcs along [14]. The computational time of searching switch arcs is in proportional to the length of the given path. Therefore, in order to reduce the computational time, we introduce a new concept called ‘constant velocity boundary’ in order to speed up the computation of switch arcs in of .

Definition 1

Constant velocity boundary is a continuous curve which divides the plane into constant and non-constant velocity regions. Below the boundary, constant velocity profiles satisfy the path acceleration constraints, while above the boundary, constant velocity profiles violate the path acceleration constraints.

According to the Definition 1, the computational formula of the constant velocity boundary is given as

(22)

For instance, is represented as the black dash-dot-dot curve in Fig. 2. In the implementation code, the curve is stored in a table structure. By querying the table, the solution of the equation is solved in time complexity to obtain

(23)
(24)

Both lines and possess the same path acceleration , however only satisfies path acceleration constraints (13). With respect to time complexity of searching along [14], the look-up table query only has the time complexity of to obtain as switch arcs of feasible trajectories, such as the purple straight solid lines in Fig. 3. Thus, the constant velocity boundary reduces the computational time of switch arcs in of .

Remark 1

According to the equation (22), the table structure computation of is derived from the equation (10), which is same with the computation of velocity limit curves , and . Therefore, the constant velocity boundary together with these velocity limit curves can be obtained through parallel computation.

Iii-D Trajectory Generation

This subsection describes the procedures of the proposed algorithm generating feasible trajectories under those velocity limit curves as follows. First, with the aid of complete numerical integration techniques [14], time-optimal trajectories with discontinuous path acceleration are generated under . Then, the discontinuous path acceleration is addressed by a bidirectional integration operation. Through adjusting the user-specified functional parameter in (20), the straight line moving up and down reconstructs to change the computational time, traveling time and cruise proportion of generated trajectories in real time.

Complete numerical integration (CNI) computes time-optimal trajectories with discontinuous path acceleration under :

Fig. 4: It is a diagram of three intersection cases among switch arcs, accelerating and decelerating velocity profiles. Top: The accelerating velocity profile intersects the switch arc at the point . Middle: The switch arc intersects the decelerating velocity profile at the point . Bottom: The accelerating velocity profile intersects the decelerating velocity profile at the point . The black big dash curves are computed by the proposed bidirectional integration operation.

1) Switch search: The goal of this step is searching switch arcs and switch points along . There are three types of switch points in : Tangent points, discontinuity points and zero-inertia points [14]. The switch points and endpoints of switch arcs are used as the starting points of numerical integration: Forward integration and Backward integration.

2) Forward integration: The goal is computing accelerating velocity profiles by doing forward numerical integration from the point , switch points and right endpoints of switch arcs with maximum path acceleration .

3) Backward integration: The goal is computing decelerating velocity profiles by doing backward numerical integration from the point , switch points and left endpoints of switch arcs with minimum path acceleration .

Time-optimal trajectories under are generated by intersecting these accelerating and decelerating velocity profiles and switch arcs. For example, a time-optimal trajectory consists of switch arc (), accelerating velocity profiles () and decelerating velocity profiles () for as shown in Fig. 3. The path acceleration of the time-optimal trajectory is discontinuous at the intersection points, such as and in Fig. 3. There are three intersection cases among switch arcs and accelerating and decelerating velocity profiles as shown in Fig. 4. In order to guarantee continuous path acceleration, a bidirectional integration operation is proposed around the intersection points.

Bidirectional integration operation (BIO) computes acceleration-continuous velocity profiles to connect trajectories at two sides of intersection points:

1) At two sides of the intersection point , find two arbitrary points and in the generated trajectory by CNI, so that the point is the only intersection point between and , as shown in Fig. 4. The scalars represent the path coordinate and path velocity of the point on the plane , while the scalars and represent the path acceleration of the generated trajectories by CNI at and , respectively.

2) Starting from , one velocity profile is computed by doing forward numerical integration using the path acceleration as follow:

(25)

until . Starting from , another velocity profile is computed by doing backward numerical integration using the path acceleration as follow:

(26)

until . In (25) and (26), the and are computed as

(27)
(28)

with

Theorem 1

The velocity profile consisting of and is continuous, and its path acceleration is also continuous at .

   Proof: When is chosen as and , it holds that is the connection point of and . According to the continuity of and on the plane [34], the connection point of and still exists when two arbitrary points at two sides of are chosen as and as shown in Fig. 4. Therefore, the velocity profile consisting of and is continuous.

The path acceleration and of and at are obtained by substituting the path coordinate and path velocity of into (25) and (26), respectively. According to (25) and (26), the difference between and is equal to zero. Thus, the path acceleration of the velocity profile consisting of and is continuous at .

The whole procedure of the proposed algorithm is given in Algorithm 1. According to (21) and (24), the subfunction does parallel computation to obtain decided by the user-specified parameter and switch arcs in . Then, with the aid of and , the subfunction CNI outputs a result of constructing trajectory between and . The may be an acceleration-discontinuous trajectory or failure [14]. For the acceleration-discontinuous , the subfunction BIO is called to return a smoothened time-optimal trajectory.

Input: .
Output: a solution or failure.

1:   PreCompute
2:   CNI
3:  if  is a failure  then
4:     return   failure
5:  end if
6:  solution BIO
7:  return  solution
Algorithm 1 The proposed algorithm
Theorem 2

The proposed algorithm is complete for a path-constrained planning problem.

   Proof: The proposed algorithm consists of CNI and BIO. The work in [14] has proven that CNI is complete for a path-constrained planning problem. When the planning problem is unsolvable, the CNI returns a failure in finite time, and then the proposed algorithm terminates and returns the failure immediately. When the planning problem is solvable, the CNI outputs a feasible trajectory with discontinuous path acceleration, which occurs at intersection points among switch arcs, accelerating and decelerating velocity profiles. Then, BIO is called to compute acceleration-continuous feasible velocity profiles to connect trajectories at two sides of intersection points, which haven been proven in Theorem 1. The number of intersection points is finite [3], thus the proposed algorithm does a finite number of BIO function invocations and it returns an acceleration-continuous feasible trajectory in finite time.

Iv Proof of Tradability Mechanism

This section provides three theorems of the tradability mechanism of the proposed algorithm with detailed proofs.

Theorem 3

With the increasing of , the traveling time of trajectories generated by the proposed algorithm decreases until it achieves the time-optimal motion.

   Proof: According to (21), the adjustment of from to () indicates that with is greater than or equal to with at each path coordinate . Namely, the admissible region under with contains the admissible region under with . With the aid of CNI, the trajectory generated by the proposed algorithm is time-optimal under . Thus, the traveling time of the trajectory generated under with is less than the traveling time of the trajectory generated under with .

Fig. 5: The adjustment of the functional parameter changes the ratio of in . The purple solid straight lines represent . The blue small dash straight lines represent . The red and green solid curves represent accelerating and decelerating velocity profiles, respectively. When the functional parameter increases from to , the ratio of in decreases, and the ratio of in increases.
Theorem 4

With the increasing of , the computational time of trajectories generated by the proposed algorithm increases.

   Proof: Under the curve , the resultant trajectory generated by the proposed algorithm consists of switch arcs, accelerating and decelerating velocity profiles assigned to the given path with the total path length . According to (21), switch arcs in include the straight lines in and the curves satisfying path acceleration constraints (13) in . With the aid of in (22), the is computed as switch arcs with time complexity. According to (24), the increasing of indicates that the ratio of in decreases. Namely, the corresponding path length of decreases as shown in Fig. 5. Then, the corresponding path length of the switch arcs in , accelerating and decelerating velocity profiles increases, as shown in the case when is adjusted from to in Fig. 5. The work in [14] has described that the time complexity of computing the switch arcs in , accelerating and decelerating velocity profiles is . Thus, with the increasing of , the computational time of resultant trajectories increases.

Fig. 6: NK-OMNI I [33]: The omnidirectional wheeled mobile robot uses two active casters and one passive caster.
Theorem 5

With the increasing of , the cruise proportion of trajectories generated by the proposed algorithm decreases.

   Proof: The adjustment of the functional parameter changes the ratio of in . According to (24), when the functional parameter increases, the ratio of in decreases, as shown in Fig. 5. In the ‘switch search’ stage of CNI of the proposed algorithm, the in is chosen as switch arcs which constitute constant velocity parts of the resultant trajectory. Therefore, the cruise proportion of trajectories generated by the proposed algorithm is decreasing with the increasing of .

V Simulation and Experimental Results

In order to verify the proposed algorithm and related properties, this section provides simulation and experimental results compared with the methods [22, 8] on a self-developed OWMR platform “NK-OMNI I” as shown in Fig. 6. The OWMR possesses two active casters and one passive caster. Each active caster has two motors which take charge of driving and steering motion of the caster independently. The velocity and acceleration constraints of active casters are listed in simulation and experimental cases. The detailed kinematic model and path parameterization of the OWMR along a given path can be found in [14], therefore we omit these contents of model and path parameterization. In following simulation and experimental cases, a cubic Bèzier curve is chosen as the given path:

(29)

where is the binomial coefficient, is the path parameter, and is the path control point. The represents the position of the center point of OWMR in a reference coordinate system. The OWMR orientation is specified as .

Fig. 7: The proposed algorithm generates a feasible trajectory with a high proportion of cruise motion. First, the switch arc (purple solid lines ), accelerating (red solid curves ) and decelerating (green solid curves ) velocity profiles intersect to constitute a feasible trajectory with discontinuous path acceleration. Then, the discontinuous path acceleration at intersection points is addressed by the proposed BIO to guarantee smoothness, such as those blue solid curves.

V-a Simulation Results

In this simulation case, each element of velocity constraints is set as , and each element of acceleration constraints is set as . The starting and terminal path velocities are set as and , respectively. Fig. 7 shows that when the functional parameter is adjusted to 0.6, the proposed algorithm generates a feasible trajectory with a high proportion of cruise motion under . The cyan dash curve, purple dash-dot curve and blue solid line with star marker represent , and , respectively. The black dash-dot thin curve represents in (22), and it divides into (the blue solid line with star marker ) and (the purple solid line ). First, a feasible trajectory with discontinuous path acceleration is obtained by intersecting the switch arcs , accelerating and decelerating velocity profiles. Accordingly, for each intersection point, the proposed BIO is conducted to guarantee continuous path acceleration. For example, Fig. 8 shows the enlarged view of the region around intersection points among , and . The blue solid curves derived from the BIO successfully connect , and , and ensure continuous path acceleration. It verifies Theorem 1 and Theorem 2. For simplicity, the resultant trajectories generated by the proposed algorithm are expressed as orange solid curves (not distinguishing acceleration and deceleration) in following simulation and experimental cases.

Fig. 8: The enlarged view of the region around intersection points in Fig. 7.
Fig. 9: With the increasing of , the cruise proportion and traveling time of resultant trajectories (orange curves) generated by the proposed algorithm decrease.
Trav. Time [s] Comp. Time [ms] Cruise Prop.
 0.4 11.36 1 94%
0.5 9.28 3 90%
0.6 7.97 6 85%
0.7 7.12 16 67%
0.8 6.63 19 50%
0.9 6.37 26 36%
1.0 6.23 31 22%
1.1 6.15 37 16%
1.2 6.11 44 7%
1.3 6.10 45 0%
TABLE I: Performance of the proposed algorithm with increasing
Fig. 10: The blue solid curve represents a given path from the starting point to the terminal point. The black dash-dot curve represents the real path of following the trajectory obtained by [22]. The green dash curve and red dash curve with star marker represent real paths of following trajectories obtained by the proposed algorithm with and , respectively.
Fig. 11: The orange solid curves are feasible trajectories obtained by the proposed algorithm with and , respectively. The red solid curve is a piecewise polynomial feasible trajectory obtained by the method [22].
Normalized parameter This paper Reference [8]
 0 1 221
0.1 5 245
0.2 9 239
0.3 21 247
0.4 22 232
0.5 24 201
0.6 36 242
0.7 42 246
0.8 45 233
0.9 48 251
1.0 59 233
TABLE II: Comparative results on the computational time [ms]

The adjustment of the functional parameter affects the traveling time, computational time and cruise proportion of trajectories generated by the proposed algorithm. Fig. 9 shows that when increases from 0.4 to 1.3, the blue solid line with star marker moves up. Accordingly, the traveling time and cruise proportion of trajectories (orange solid curves) generated by the proposed algorithm decrease. In addition, Tab. I lists the detailed information of the traveling time, computational time and cruise proportion for each , which verifies that Theorem 3-5 of the proposed algorithm hold.

V-B Comparative Experimental Results

Fig. 12: The driving and steering velocities of active casters of the OWMR following the feasible trajectory obtained by the proposed algorithm with .
Fig. 13: The driving and steering accelerations of active casters of the OWMR following the feasible trajectory obtained by the proposed algorithm with .
Fig. 14: The driving and steering velocities of active casters of the OWMR following the feasible trajectory [22].
Fig. 15: The driving and steering accelerations of active casters of the OWMR following the feasible trajectory [22].

In order to show the real-time performance of the proposed algorithm, and the advantages of the tradability mechanism between time-optimal motion and cruise motion in the proposed algorithm, this subsection provides comparative experimental results with existing methods [22] and [8].

Both works in [22, 8] transform a path-constrained trajectory planning problem into a nonlinear optimization problem, and then solve the problem by numerical optimization techniques (such as FTM or SQP in ). In the nonlinear optimization problem, the trajectory of robotic systems is expressed as cubic or fifth-order polynomials. In order to output smooth trajectories, the jerk of trajectories is bounded and described as inequality constraints in the optimization problem. For objective functions in the optimization problem, the work in [22] selects the traveling time of trajectories, while the work in [8] selects the weighted sum of the traveling time and the integral of the squared jerk. By adjusting the weights of two terms in the objective function, the method [8] can output more smooth but slower trajectories, or faster but less smooth trajectories. In following experimental cases, the comparative results with [22] show the advantages of the tradability mechanism between cruise and time-optimal motions in the proposed algorithm, while the comparison results with [8] validates the real-time performance of the proposed algorithm.

Experimental Verification of Time-optimal Motion with a Large . The given path of OWMR is set as a blue cubic Bèzier curve in Fig. 10. Each element of velocity constraints is set as , and each element of acceleration constraints is set as . Both starting and terminal path velocities are set as zero. According to (21), the curve is equal to when the functional parameter is set as . As shown in Fig. 11, the proposed algorithm and the method [22] generate smooth and feasible trajectories, respectively. Moreover, the path velocity of the feasible trajectory obtained by the proposed algorithm is greater than or equal to the method [22] at each path coordinate. With the aid of a simple PID controller, the OWMR tracks these feasible trajectories. Fig. 12-15 show the velocity and acceleration of active casters of the OWMR following the feasible trajectories, which also verify the time optimality of the proposed algorithm.

Fig. 16: The tracking error for the position and orientation of the OWMR following the feasible trajectory obtained by the proposed algorithm with .
Fig. 17: The tracking error for the position and orientation of the OWMR following the feasible trajectory [22].

Experiment Verification of Cruise Motion with a Small . When the functional parameter decreases to 0.26, the proposed algorithm generates another feasible trajectory of which the traveling time is the same with the trajectory [22]. As shown in Fig. 11, the feasible trajectory with possesses a high proportion of cruise motion, which improves tracking accuracy and makes robots move steadily. Fig. 16 and Fig. 17 show that the tracking accuracy of the position and orientation of the OWMR following the feasible trajectory obtained by the proposed algorithm with is better than the feasible trajectory obtained by the method [22]. In addition, with respect to [22], the velocity and acceleration of active casters of the OWMR following the feasible trajectory obtained by the proposed algorithm are more smooth as shown in Fig. 18 and Fig. 19. It verifies that the proposed algorithm can output a feasible trajectory possessing a high proportion of cruise motion, which improve the tracking accuracy and make robots move steadily.

Fig. 18: The driving and steering velocities of active casters of the OWMR following the feasible trajectory obtained by the proposed algorithm with .
Fig. 19: The driving and steering accelerations of active casters of the OWMR following the feasible trajectory obtained by the proposed algorithm with .

Experiment Verification of the Real-time Performance. Although the method [8] and the proposed algorithm possess own adjustable mechanisms, the computational time of the proposed algorithm is also adjustable and it can achieve real-time performance. Tab. II shows comparative results on the computational time between the method [8] and the proposed algorithm. For consistency, the weight parameter in [8] and the functional parameter in the proposed algorithm are normalized as ‘0 to 1’. Tab. II shows that the trajectory generation of the proposed algorithm is much faster than the method [8], as well as the computational time of the proposed algorithm is in proportional to . In addition, compared with [8], the proposed approach can achieve cruise motion and adjust the cruise motion speed explicitly in the planning module.

Vi Conclusion

We have proposed a real-time and acceleration-continuous trajectory planning algorithm along given paths. After smoothing time-optimal trajectories, it is proven that the proposed algorithm still preserves the completeness property. In addition, the proposed algorithm possesses a built-in tradability mechanism which flexibly changes the traveling time, cruise proportion and computational time of the resultant trajectory by adjusting a user-specified functional parameter. We have also provided the detailed proofs of the tradability mechanism in terms of the traveling time, cruise proportion and computational time. Simulation and comparative experimental results on omnidirectional wheeled mobile robots demonstrate the superior performance of the proposed algorithm.

References

  • [1] A. Gasparetto and V. Zanotto, “A new method for smooth trajectory planning of robot manipulators,” Mechanism and Machine Theory, vol. 42, no. 4, pp. 455-471, 2007.
  • [2] L. Jaillet, J. Cortés and T. Siméon, “Sampling-based path planning on configuration-space costmaps,” IEEE Transactions on Robotics, vol. 26, no. 4, pp. 635-646, 2010.
  • [3] K. Shin and N. Mckay, “Minimum-time control of robotic manipulators with geometric path constraints,” IEEE Transactions on Automatic Control, vol. 30, no. 6, pp. 531-541, 1985.
  • [4] J. Bobrow, S. Dubowsky and J. Gibson, “Time-optimal control of robotic manipulators along specified paths,” International Journal of Robotics Research, vol. 4, no. 3, pp. 3-17, 1985.
  • [5] C. Bianco, “Minimum-jerk velocity planning for mobile robot applications,” IEEE Transactions on Robotics, vol. 29, no. 5, pp. 1317-1326, 2013.
  • [6] A. Piazzi and A. Visioli, “Global minimum-jerk trajectory planning of robot manipulators,” IEEE Transactions on Industrial Electronics, vol. 47, no. 1, pp. 140-149, 2000.
  • [7] B. Cao, G. Doods and G. Irwin, “Time-optimal and smooth constrained path planning for robot manipulators,” Proceedings of 1994 IEEE International Conference on Robotics and Automation, pp. 1853-1858, 1994.
  • [8] V. Zanotto, A. Gasparetto, A. Lanzutti, P. Boscariol and R. Vidoni, “Experimental validation of minimum time-jerk algorithms for industrial robots,” Journal of Intelligent and Robotic Systems, vol. 64, no. 2, pp. 197-219, 2011.
  • [9] D. Ortiz, S. Westerberg, P. Hera, U. Mettin and L. Freidovich, “Increasing the level of automation in the forestry logging process with crane trajectory planning and control,” Journal of Field Robotics, vol. 31, no. 3, pp. 343-363, 2014.
  • [10] S. Macfarlane and E. Croft, “Jerk-bounded manipulator trajectory planning: Design for real-time applications,” IEEE Transactions on Robotics and Automation, vol. 19, no. 1, pp. 42-52, 2003.
  • [11] L. Liu, C. Chen, X. Zhao and Y. Li, “Smooth trajectory planning for a parallel manipulator with joint friction and jerk constraints,” International Journal of Control Automation and Systems, vol. 14, no. 4, pp. 1022-1036, 2016.
  • [12] S. Kucuk, “Optimal trajectory generation algorithm for serial and parallel manipulators,” Robotics and Computer-Integrated Manufacturing, vol. 48, pp. 219-232, 2017.
  • [13] D. González, J. Pérez, V. Milanés and F. Nashashibi, “A review of motion planning techniques for automated vehicles,” IEEE Transactions on Intelligent Transportation Systems, vol. 17, no. 4, pp. 1135-1145, 2016.
  • [14] P. Shen, X. Zhang and Y. Fang, “Complete and time-optimal path-constrained trajectory planning with torque and velocity constraints: Theory and Applications,” IEEE/ASME Transactions on Mechatronics, vol. 23, no. 2, pp. 735-746, 2018.
  • [15] F. Lamiraux, S. Sekhavat and J. Laumond, “Motion planning and control for Hilare pulling a trailer,” IEEE Transactions on Robotics and Automation, vol. 15, no. 4, pp. 640-652, 1999.
  • [16] Q. Pham, “A general, fast, and robust implementation of the time-optimal path parameterization algorithm,” IEEE Transactions on Robotics, vol. 30, no. 6, pp. 1533-1540, 2014.
  • [17] K. Shin and N. McKay, “Selection of near-minimum time geometric paths for robotic manipulators,” IEEE Transactions on Automatic Control, vol. 31, no. 6, pp. 501-511, 1986.
  • [18] S. Singh and M. Leu, “Optimal trajectory generation for robotic manipulators using dynamic programming,” Journal of Dynamic Systems Measurement and Control, vol. 109, no. 2, pp. 88-96, 1987.
  • [19] D. Verscheure, B. Demeulenaere, J. Swevers, J. Schutter, and M. Diehl, “Time-optimal path tracking for robots: A convex optimization approach,” IEEE Transactions on Automatic Control, vol. 54, no. 10, pp. 2318-2327, 2009.
  • [20] K. Kyriakopoulos and G. Saridis, “Minimum jerk path generation,” Proceedings of the 1988 IEEE International Conference on Robotics and Automation, pp. 364-369, 1988.
  • [21] H. Liu, X. Lai and W. Wu, “Time-optimal and jerk-continuous trajectory planning for robot manipulators with kinematic constraints,” Robotics and Computer-Integrated Manufacturing, vol. 29, no. 2, pp. 309-317, 2013.
  • [22] D. Constantinescu and E. Croft, “Smooth and time-optimal trajectory planning for industrial manipulators along specified paths,” Journal of Robotic Systems, vol. 17, no. 5, pp. 233-249, 2000.
  • [23] S. Baraldo and A. Valente, “Smooth joint motion planning for high precision reconfigurable robot manipulators,” Proceedings of 2017 IEEE International Conference on Robotics and Automation, pp. 845-850, 2017.
  • [24] A. Piazzi and A. Visioli, “An interval algorithm for minimum-jerk trajectory planning of robot manipulators,” Proceedings of the 36th IEEE International Conference on Decision and Control, pp. 1924-1927, 1997.
  • [25] P. Huang, K. Chen, J. Yuan and Y. Xu, “Motion trajectory planning of space manipulator for joint jerk minimization,” Proceedings of IEEE International Conference on Mechatronics and Automation, pp. 3543-3548, 2007.
  • [26] C. Bianco and M. Romano, “Bounded velocity planning for autonomous vehicles,” Proceedings of IEEE/RSJ International Conference on Intelligent Robots and Systems, pp. 685-690, 2005.
  • [27] C. Bianco, “Optimal velocity planning for autonomous vehicles under kinematic constraints,” Proceedings of the 8th IFAC Symposium on Robot Control, vol. 39, no. 15, pp. 126-131, 2006.
  • [28] S. Perri, C. Bianco and M. Locatelli, “Jerk bounded velocity planner for the online management of autonomous vehicles,” Proceedings of IEEE International Conference on Automation Science and Engineering, pp. 618-625, 2015.
  • [29] C. Lin, Y. Zhao, M. Tomizuka and W. Chen, “Path-constrained trajectory planning for robot service life optimization,” Proceedings of IEEE American Control Conference, pp. 2116-2122, 2016.
  • [30] Z. Li, C. Yang, C. Su, J. Deng and W. Zhang, “Vision-based model predictive control for steering of a nonholonomic mobile robot,” IEEE Transactions on Control Systems Technology, vol. 24, no. 2, pp. 553-564, 2016.
  • [31] F. Lamiraux and J. Lammond, “Smooth motion planning for car-like vehicles,” IEEE Transactions on Robotics and Automation, vol. 17, no. 4, pp. 498-501, 2001.
  • [32] A. Khalaji and S. Moosavian, “Robust adaptive controller for a tractor-trailer mobile robot,” IEEE/ASME Transactions on Mechatronics, vol. 19, no. 3, pp. 943-953, 2014.
  • [33] P. Shen, Y. Fang and X. Zhang, “Trajectory planning of omnidirectional mobile robots with active casters: Multi-motor coordination and singularity avoidance,” Proceedings of 2015 IEEE International Conference on Cyber Technology in Automation, Control and Intelligent Systems, pp. 151-156, 2015.
  • [34] P. Shen, X. Zhang and Y. Fang, “Essential properties of numerical integration for time-optimal trajectory planning along a specified path,” IEEE Robotics and Automation Letters, vol. 2, no. 2, pp. 888-895, 2017.