Abstract

Trajectory planning is a prerequisite for the tracking control of a free-floating space robot. There are usually multiple planning objectives, such as the pose of the end-effector and the base attitude. In efforts to achieve these goals, joint variables are often taken as exclusive operable parameters, while the berth position is neglected. This paper provides a novel trajectory planning strategy that considers the berth position by applying screw theory and an optimization method. First, kinematic equations at the position level are established on the basis of the product of exponential formula and the conservation of the linear momentum of the system. Then, generalized Jacobian matrices of the base and end-effector are derived separately. According to the differential relationship, an ordinary differential equation for the base attitude is established, and it is solved by the modified Euler method. With these sufficient and necessary preconditions, a parametric optimization strategy is proposed for two trajectory planning cases: zero attitude disturbance and attitude adjustment of the base. First, the berth position is transformed into the desired position of the end-effector, and its constraints are described. Joint variables are parameterized using a sinusoidal function combined with a five-order polynomial function. Then, objective functions are constructed. Finally, a genetic algorithm with a modified mutation operator is used to solve this optimization problem. The optimal berth position and optimized trajectory are obtained synchronously. The simulation of a planar dual-link space robot demonstrates that the proposed strategy is feasible, concise, and efficient.

1. Introduction

On-orbit servicing (OOS) [1] technology has been attracting increasing research and investment from space institutions worldwide for its potential to mitigate on-orbit failures [2] and maintain and extend outer-space projects. Space robots are one of the most successful and extensively used means to achieve these goals, as demonstrated by several notable deployments and experimental missions, such as Space Station Remote Manipulator System (SSRMS) [3], Experimental Test Satellite VII (ETS-VII) [4], Front-end Robotics Enabling Near-term Demonstration (FREND) [5], and China’s intelligent space robots [6]. The concept of cooperative small robotic servicers to handle large passive objects has also been studied in recent years [79]. Possible applications of space robots include inspection, assembly, maintenance, repair, and refueling [10]. When executing these tasks, the system often works in one of three modes: free-flying mode (in which the position and attitude of the base are both controllable) [11], free-translation mode (in which only the base attitude is controllable), and free-floating mode [12] (in which the base is completely free).

Trajectory planning—a term that is often used interchangeably with path planning, despite their technical differences—is crucial for implementing a space mission. Many research papers have addressed the trajectory planning and control issues of the free-floating space robot because it consumes relatively little fuel and avoids potential collisions that can result from excess control [13]. The distinctive feature of a free-floating space robotic system is that it is nonholonomic because the angular momentum equation cannot be integrated. This feature has been used to develop some helpful planning strategies, known as nonholonomic trajectory planning. Vafa and Dubowsky [14] proposed the self-correcting motion method, which adjusts the base attitude by adding small cyclic motions to the joint motions. They also developed another method called the Disturbance Map (DM) [15]. The DM method builds a relationship between each point in the joint space and the actual movement of the base, and then the trajectory of the joints that causes the minimum disturbance to the base can be selected. Dubowsky and Torres [16, 17] improved the DM method to minimize spacecraft attitude disturbance. They called the improved method the Enhanced Disturbance Map (EDM), which can also be used to minimize the fuel consumption for attitude control. Fernandes et al. [18] were inspired by the falling cat problem and developed a near-optimal motion planning method. Papadopoulos et al. [19, 20] proposed a path planning methodology that allows for simultaneous control of the end-effector and the base attitude. In this approach, polynomials are employed to obtain a smooth and continuous trajectory. Xu et al. [21] developed a coordinated trajectory planning method to stabilize the base attitude and centroid position by a balance arm.

In recent years, optimization algorithms have been introduced in studies that aim to achieve optimal trajectories for free-floating space robots. Huang et al. [22] provided an approach based on a Genetic Algorithm (GA) to find a global minimum-jerk trajectory of a space manipulator in the joint space. Xu et al. [23] employed sinusoidal functions, whose arguments are seven-order polynomials, and a GA to realize the base attitude and attain the desired states of the joints. They also proposed a similar planning strategy in Cartesian space and searched for the optimal parameters using the Particle Swarm Optimization (PSO) algorithm [24]. PSO was also used in the studies in [25, 26]. Rybus and Seweryn [27] employed the Rapidly-exploring Random Trees (RRT) algorithm for the trajectory planning of a satellite-manipulator system, and joint limits and obstacles were taken into account. Luo et al. [28] proposed a novel trajectory planning framework with a task-priority handling strategy for a space robot. A Quadratic Programming (QP) procedure was applied to solve the problem.

In the above studies, the parameterization and optimization approaches have been successfully applied to solve trajectory planning problems. Nevertheless, the parameters to be optimized are often exclusively chosen as coefficients of joint trajectories that are represented by continuous functions. Before executing the mission, the base (spacecraft) hovers at a proper position (called the berth position) relative to the target to avoid unexpected collision and change in the work mode. The variation in the berth position markedly affects the desired trajectories of the joints; however, it seems to have been frequently omitted from trajectory planning studies. Zhang and Liu [29] provided a new viewpoint that utilizes the base berth position as an optimizable parameter. A unified motion planning strategy based on the forward kinematics and parametrical optimization method was developed. The objective function was simplified by proposing the concept of grasping area and using a penalty function. Finally, PSO was employed to determine the parameters. It was demonstrated that the DOF requirement of the manipulator could be reduced by taking the berth position into account. This innovative idea has great potential to diversify the objectives of a single mission. However, only the desired position and attitude of the end-effector are satisfied. Furthermore, the berth position is not optimized directly; instead, it is calculated from the optimal results of the joint variables according to a geometric relationship. This point is worth further exploring.

Another point of current research that can be expanded is the kinematical theory. Kinematic equations constitute the objective function, which directly affects the efficiency of a given trajectory planning strategy. Because space robots differ from ground-based robots, researchers have developed new kinematical theories for space robots, including the Virtual Manipulator (VM) method [14], Generalized Jacobian Matrix (GJM) [30], and Dynamically Equivalent Manipulator (DEM) [31]. GJM is widely used in control of space robots [32, 33]. However, when applied to trajectory planning, the VM and DEM methods focus on the transformation of the model, and the transformation process significantly increases the workload. Furthermore, deriving the GJM with body-fixed vectors makes the programming difficult. Besides, integration is needed when calculating the displacement of joints and the end-effector at the position level, as Zhang and Liu did in the autonomous trajectory planner [34].

Screw theory is an efficient alternative to the kinematic analysis of a rigid body and its mechanism. It can establish a global description of the rigid body and avoid singularities [35]. It has been applied to research on the ground-based robot [36] and parallel manipulator [37, 38]. The unified description of translation and rotation confers the advantages of conciseness and efficiency to screw theory. Rocha et al. [39] compared the screw-based method with the Denavit-Hartenberg method [40] in detail and concluded that the former has advantages over the D-H approach, although the latter is more commonly used. Nevertheless, few studies on space robots using screw theory are available in the current literature. Liu and Wu [41] developed a dynamic model of a space robot system on the basis of screw theory and Kane’s equation. Liu and Wu [42] provided a simple and efficient method to derive the Jacobian matrix of a free-floating branching robot system by dividing it into two parts: the ground-robot with a fixed base and a locked-joint robot with a floating base. The authors of this paper studied kinematic problems at position level base on screw theory [43]; a part of these works will be applied in this research.

This paper proposes a novel trajectory planning strategy based on screw theory. The proposed approach considers the berth position and aims to improve calculation efficiency. First, the kinematic model of the free-floating space robot is built using screw theory, and the model includes the position and differential level. The base attitude is calculated using the modified Euler method. Next, we construct the optimization problem by transforming the berth position and parameterizing the joint variables. Then, the planning strategy is provided in detail. A simulation of a planar dual-link space robot is presented, and Adams simulation results are provided to verify the proposed method. A nomenclature is given to clarify important variables and abbreviations.

2. Kinematic Modeling Using Screw Theory

2.1. Model of the Space Robotic System

A space robot (also referred to as a space manipulator) is a very complicated system, which can be simplified if only kinematics is considered. Figure 1 provides a general model of the space robotic system, which consists of the base (spacecraft), arm(s), and the End-Effector (EE). The arm contains several links and joints. The following assumptions are made to build a concise and accurate kinematic model. 1.The position and orientation of the base is not controlled, and there are no external forces applied to the system, which means that the system is in free-floating mode2.The initial linear and angular momentum of the system are both zero3.The arm is a single chain connected to the base, and the parallel manipulator is not considered4.All links and joints are rigid5.All joints are revolute, and all rotation angles are limited between and

2.2. Kinematic Equations at the Position Level

According to the product of exponentials (POE) formula, the final pose of a centroid-fixed frame of the link with respect to the base-fixed frame can be defined as follows: where denotes the twist coordinates of .

Then, the final pose of the end-effector with respect to the base-fixed frame can be determined by

The final pose of the base and the centroid-fixed frame of the link with respect to the inertial frame can be expressed as follows: where is determined by the orientation of the base. If we define the attitude angles (roll, pitch, yaw) of the base as , then where denotes and denotes .

In terms of the transformation rule of rigid motion, the following equation holds:

Thus,

Then, the final pose of the end-effector with respect to the inertial frame can be derived as follows:

In the inertial frame, the centroid formula of the system is written as follows:

Substituting Equation (6) into Equation (8) yields where . In particular, when the centroid of the system is chosen as the initial point of the inertial frame.

Substituting Equation (9) into Equation (7) yields

2.3. The Generalized Jacobian Matrix

Angular momentum of the base and the link with respect to the inertial frame can be defined as follows: where is the body angular velocity of the link. The body velocity of the base and the link is defined as follows:

Similarly, the spatial velocity is specified as follows:

The similarity transformation relationship between the body and spatial velocity is specified as follows: where corresponds to the adjoint transformation of , and

Then, can be derived as follows: where , which can be defined as the generalized inertia matrix.

In terms of the transformation rule of spatial velocities, the following equation holds:

From Equations (16) and (17), the angular momentum of the system can be defined by where , , and , .

The angular momentum of the system is conserved. Without loss of generality, it is considered to be zero. Thus, where is the pseudoinverse matrix of . , which is defined as the generalized Jacobian matrix of the base.

Furthermore, where , which is defined as the generalized Jacobian matrix of the end-effector.

2.4. Attitude Calculation of the Base Using the Generalized Jacobian Matrix

Equation (19) can be rewritten as follows: where is the submatrix of related to orientation and position, respectively. According to the deductions in Subsections 2.2 and 2.3, it is apparent that is a function that depends on . Thus,

On the other hand, according to Equations (4) and (13), where Substituting Equation (23) into Equation (22) yields

If is given, then Equation (25) is an ordinary differential equation about , which can be solved by the modified Euler method. If the initial state of () is known, then where is the time step.

3. Problem Construction

By considering berth position, we can achieve an extra goal while the EE reaches the desired pose. A relatively simple case is planning a trajectory with zero attitude disturbance to the base. Another case is the adjustment of the attitude of the base to the desired orientation simultaneously. Both trajectory planning problems can be converted to parametric optimization problems. The problems can be described clearly by first performing the following preparations.

3.1. Transformation of the Berth Position

The problem can be simplified by disregarding the movement of the target. Thus, the berth position can be directly expressed as the vector from the target’s centroid to the base’s centroid, which is the variable we aim to optimize. With respect to the target-centroid-fixed inertial frame , the desired position of the end-effector is constant, while the centroid of the system varies with because of the conservation of linear momentum. Conversely, the problems become complex if they are analyzed in . Given that the berth position has no effect on the kinematic relationship, and the centroid of the system will be immobile once the berth position is determined, kinematic equations can be made much more concise when expressed in the system-centroid-fixed inertial frame . In fact, if the berth position is expressed with respect to , then the kinematic equations contain no variables of the berth position. Only the target’s centroid, as well as the desired position of the EE, varies with , which means that the berth position is transformed into the desired position of the EE. The transformation process is shown in Figure 2. It must be clarified that the transformation is performed at the initial time, and all the involved vectors are independent of time.

According to Equation (9), the position of the base’s centroid with respect to is as follows:

Then, the position of the target’s centroid with respect to can be derived as follows:

Then, the desired position of the EE with respect to can be derived as follows:

Further, the desired orientation of the EE should also be transformed: where is the desired rotation matrix from the capture point to the EE, is the rotation matrix of the capture point with respect to , and is the rotation matrix of with respect to .

Next, constraints of need to be specified. (1)Safe distance, which is designed to avoid unexpected collision while the space robot system is docking, is expressed as follows: where is the threshold value of safe distance.(2)In workspace, which is designed to guarantee that the capture point is reachable by the EE, is expressed as follows: where is the radius of the system’s guaranteed workspace. In terms of the inequality property of the norm, (3)Proper location, which is designed to prevent the system from docking at the opposite side of the capture point. Considering the situation in Figure 2, where and are projections of and along the axis, respectively.

3.2. Parameterization of Joint Variables

Trajectory planning in the joint space requires that the joint variables be parameterized first. Many methods have been developed to obtain a feasible and smooth trajectory. Since these variables are bounded, we chose a concise and effective approach—a sinusoidal function combined with five-order polynomial functions—to parameterize the joint angles, angle velocities, and angular accelerations. where , and are undetermined coefficients.

Furthermore, the constraints of these variables are specified as follows. (1)Equality constraints, including the initial and final states of the joint angles, angle velocities, and angle accelerations, are defined by where is the final time. Substituting Equation (35) into Equation (36) yields

Then, Equation (35) can be rewritten as follows: where . (2)Inequality constraints, including limits of joint angles, angle velocities, and angular accelerations, are expressed as follows:

According to Equations (38) and (39), and can be determined as follows: where .

According to Equations (38), (40), and (41), the boundary limits of can be determined by where , and . Let .

3.3. Objective Function

According to Subsection 3.1, the desired pose of the EE can be determined by

For the trajectory planning of zero attitude disturbance to the base, the following equality should be satisfied:

Thus, the objective function for this case can be defined as follows: where log() means logarithm mapping of a matrix.

For the trajectory planning of the attitude adjustment of the base, the following equality should be satisfied:

Thus, the objective function for this case can be defined as follows:

4. Trajectory Planning Strategy with Consideration of the Optimal Berth Position

With the conclusion of Section 3, trajectory planning problems using a parametric optimization method can be described as follows: where the coefficients and berth position are variables to be optimized, and .

A genetic algorithm is employed to solve this minimization problem because of its fast and stochastic searching ability. Here, the designation and procedure of the trajectory planning strategy is sketched. A flowchart is shown in Figure 3. Step 1.Coding. Choose real-number coding, and vector is the individualStep 2.Fitness function. Let the fitness function equal the objective function or . The smaller the value of , the better the individualStep 3.Initialization. Set the genetic algorithm parameters, including the population size , maximum generation number , crossover fraction , mutation fraction , and stopping criterion . Then, generate the first generation randomly in terms of constraintsStep 4.Fitness calculation. Fitness functions for the two cases consist of two parts. Here, the calculation process is detailed as follows: (a)Calculate , by substituting Equation (38) into Equations (1) and (2), respectively. Thus, , is known(b)Denote , JEuler by substituting undetermined into Equations (4) and (23), respectively(c)Denote by substituting , into Equation (9), where (d)Denote the generalized Jacobian matrix of the base by substituting , into Equation (19)(e)Calculate the final attitude of the base by Equation (26)(f)Calculate by using Step 4 and Equation (21)(g)Calculate , where can be calculated by Equation (10), and can be calculated by Equations (29), (30), and (44)

From the above, can be achieved. Then, rank individuals according to their fitness values and judge whether the minimum fitness value is less than . If yes, go to Step 7; otherwise, go to the next step. Step 5.Reproduction. Generate the next generation by the selection, crossover, and mutation operator

Selection. Use the Roulette Wheel Selection method, in which the area of each individual depends on its rank

Crossover. Choose the scatter crossover operator; a random binary vector selects the genes of the parents, which then combine to form the child

Mutation. Modify the classical Gaussian mutation method, which is usually used for unconstrained problems. The Gaussian mutation method adds random numbers from a Gaussian distribution in terms of to the parent, and shrinks as the generations increase. The method has two disadvantages: the first is that the genes of the child might exceed the boundary, and the second is that the process might slow down to find the optimal solution when performing the local search because only varies with the generation. In view of these shortcomings, we offer a modified Gaussian mutation method. The determination of is defined as follows: where , is current generation number, and is the smallest fitness value of the current population. Furthermore, correction is made when the genes of the child exceed the boundary: where is the gene of the child and is a random number between . Step 6.Stopping judgment. Judge whether the number of the current generation exceeds . If yes, go to Step 7; otherwise, go to Step 4Step 7.Trajectory calculation. Obtain the population containing the best individual. Calculate the trajectory of each joint using of the best individual. Thus, the planning concludes

5. Simulation Examples

Trajectory planning of a planar dual-link space robot was performed with MATLAB. To verify the effectiveness of our strategy and illustrate berth position and the moving process of optimized joint trajectory, we built a corresponding model by Adams. The optimal results of each calculation were substituted into the Adams model, and Adams simulations were run. The simulation model in the initial configuration is shown in Figure 4. The CPU clock of the computer used is 3.5 GHz.

The detailed initial and inertia parameters of the model are as follows.

.

Then, .

Next, ; where is the direction cosine matrix along axis. According to Equation (27), and , , , so constraints of can be given as and . Constraints of the angular variables are as follows.

According to Equations (42) and (43), , where .

The desired orientation of the EE is set at , and the desired attitude of the base is set as for attitude adjustment. The parameters of the genetic algorithm are set at . The results of the simulation using MATLAB programs are as follows.

For the planning case of zero attitude disturbance to the base, the iteration stops when the maximum generation number is reached. The variation in the mean fitness and best fitness of each generation is shown in Figure 5(a). The optimal individual is , and the corresponding fitness is . The disturbance to the base attitude is tolerable, and the maximum amplitudes of the base’s angle and angular velocity are and , respectively. The optimized trajectories of the joints and the base attitude are shown in Figures 6 and 7, respectively. Figure 8 shows the optimized berth position and motion process simulated by Adams, with the dotted lines denoting the initial configuration. It can be observed that the EE reaches the capture point precisely, and the base attitude is nearly changeless. The trajectory of the EE is also sketched. The calculation time for each simulation is about 7.5 min.

For the planning case of attitude adjustment of the base, iteration stops at the generation as the stopping criterion is satisfied. Variation in the mean fitness and the best fitness of each generation is shown in Figure 5(b). The optimal individual is , and the corresponding fitness is . The final attitude of the base achieves the desired adjustment, , and the corresponding error is compared with . The optimized trajectories of the joints and the base attitude are shown in Figures 9 and 10, respectively. Figure 11 shows the optimized berth position and motion process simulated by Adams, and it shows that the EE again reaches the capture point precisely. The trajectory of the EE is also sketched. The calculation time for each simulation is about 8 min.

6. Conclusion

In this paper, several innovations are presented to improve the approach to the trajectory planning of a free-floating space robot. First, there are two useful techniques to improve the calculation efficiency: systematical deduction of the generalized Jacobian matrix using screw theory and the calculation of the base attitude by the modified Euler method without integration. Second, the berth position is optimized with the joint variables by the transformation between the target-centroid-fixed and system-centroid-fixed inertial frame. The extra goals proposed are all achieved by considering the berth position, while the EE reaches the desired position and orientation. More importantly, the simulations of example missions are completed by using only two joints. Figure 5 shows that the presented optimization method converges quickly and stably, thereby demonstrating that the proposed objective function is of good quality. Furthermore, the optimized trajectories of both the joints and the EE are feasible and smooth.

Nomenclature

:The general inertial frame
:System-centroid-fixed, target-centroid-fixed inertial frame
:The centroid-fixed frame of the ith link (i = 0, 1, …, n, 0 represents the base hereinafter)
:The end-effector-fixed frame
:The position of the centroid of the ith link expressed in frame A (A denotes an arbitrary frame hereinafter)
:The position of the end-effector expressed in frame A
:The position of the centroid of the system expressed in frame A
:The orientation matrix of the centroid of the ith link expressed in frame A
:The orientation matrix of the end-effector expressed in frame A
:The pose of frame A expressed in frame B, and
:The angle of joint i
:The rotational axis of joint i
:An arbitrary point on the rotational axis of joint i
:The corresponding twist of joint i
:The matrix exponential of
:The inertial tensor of the ith link with respect to its body frame
:The mass of the ith link
:The operator that maps a vector to the corresponding skew-symmetric matrix (or twist),
:The operator that maps a skew-symmetric matrix (or twist) to the corresponding vector, .

Data Availability

The data used to support the findings of this study are included within the article.

Conflicts of Interest

The authors declare that there is no conflict of interest regarding the publication of this paper.

Acknowledgments

This research is funded by the Shanghai Aerospace Science and Technology Innovation Foundation (Grant No. SAST2017-020).