#### Abstract

Kinematics of a free-floating space-robot system is a fundamental and complex subject. Problems at the position level, however, are not considered sufficiently because of the nonholonomic property of the system. Current methods cannot handle these problems simply and efficiently. A novel and systematical modeling approach is provided; forward and inverse kinematics at the position level are deduced based on the product of exponentials (POE) formula and conservation of linear momentum. The whole deduction process is concise and clear. More importantly, inertial tensor parameters are not introduced. Then, three situations with different known variables are mainly studied. Due to the complexity of inverse kinematical equations, a numerical method is proposed based on Newton’s iteration method. Two calculation examples are given, a dual-arm planar model and a single-arm spatial model; both forward and inverse kinematical solutions are given, while inverse kinematical results are compared with simulation results of Adams. The results indicate that the proposed methods are quite accurate and efficient.

#### 1. Introduction

Kinematics is a basic subject of robotics. It includes forward and inverse kinematics at the position and the velocity (differential) level. Mature traditional means have been applied to the research of ground-based robots, such as the Denavit–Hartenberg method [1]. Kinematics of space robots (also referred to as space manipulators) is more complicated due to the base-arm dynamic coupling. For example, the base is completely free in reaction to the arms’ movement when the system is under a free-floating situation [2], which is one of the key researches due to its low fuel consumption. And, motion of the base disturbs the pose (positions and orientations) of the end-effector inversely.

New theories were developed for the kinematics of a space-robot system. Vafa and Dubowsky [3] proposed an ingenious modeling method called the Virtual Manipulator (VM) method. It transforms the real model into a series of virtual-link vectors connected to a fixed base called the Virtual Ground (VG), by using conservation of linear momentum. VG is just located at the centroid of the whole system and is motionless in inertial space. Based on the VM method, Xu et al. [4] presented a concept of “system centroid equivalent manipulator”, whose kinematic model is derived. Then, the trajectory of the balance arm for stabilizing the base centroid is planned. Umetani and Yoshida [5] developed another modeling idea, which defines the generalized Jacobian matrix (GJM). GJM is derived by using the momentum conservation and geometrical relations; it contains inertial parameters of the system. This method is largely used to build the dynamic model of space robots [6–8]. Liang et al. [9] presented another concept called the Dynamically Equivalent Manipulator (DEM). DEM mapped a space manipulator into a fixed-base manipulator which preserves both its dynamic and kinematic properties. It can be physically built for experimental study. Moosavian and Papadopoulos [10] developed and compared two approaches for the kinematics modeling of multiplying robots, called the barycentric vector approach and the direct path method, and concluded that the latter requires significantly less computations. However, inverse kinematics is not discussed.

As angular momentum equations cannot be integrated [11], the space-robot system is nonholonomic. Therefore, the inverse kinematics at the position level cannot be solved only by the pose of the end-effector. This defect leads to that current studies mainly focused on differential kinematics. They usually have to do integration, however, when just joint displacements at the position level are needed in some scenarios, such as path planning [12, 13]. The above-mentioned methods could not solve the kinematics at the position level simply and efficiently. The VM and DEM methods focus on transformation of the model. After transformation, the system is just the same as the ground-based one so that traditional means can be applied. Nevertheless, the transformation process significantly increases the workload, which will be heavier if the system is more complex. The GJM method is derived by using body-fixed vectors, which does not make it easy to program. And its equation is in differential form, which means it cannot be applied to solve the kinematics at the position level directly. What is more, the equations of GJM and DEM contain dynamic parameters, which are not necessary to solve kinematical problems at the position level. Liang and Xu [14] discussed the possibility of an inverse kinematical solution at the position level when there are some constraints and known variables. Joint angles of a single-arm space robot are calculated by using the D-H method. A multiarm space-robot system is not concerned. To this end, this paper focused on the kinematics of a free-floating space-robot system at the position level, aimed at developing a simple and efficient method. Moreover, the method should cover forward and inverse kinematics and single-arm and multiarm space-robot systems.

Screw theory is an efficient alternative to analysis kinematics of a rigid body and mechanism. It was first systematized by R.S. Ball, then employed and improved for study on ground-based manipulators [15, 16] and parallel robots [17, 18]. A screw depicts a dual vector, so it can represent both translation and rotation, which gives screw theory the advantages of unity and simplicity. As a basic and conventional tool in screw theory to study robotic kinematics, the product of exponentials (POE) formula is derived by the successive screw displacement of a kinematic chain. Rocha et al. [19] compared the screw-based method with the D-H method in detail and concluded that the former has advantages over the D-H one, although the D-H method is more commonly used. Nevertheless, few studies on a space-robot system using screw theory are found in current research. Liu and Wu [20] deduced the dynamic model of a space-robot system based on the screw theory and Kane equation. Liu and Wu [21] provided a simple and efficient method to deduce the Jacobian matrix of a free-floating branching robot system, by dividing it into two parts, a ground robot with a fixed base and a locking joint robot with a floating base. Kinematics at the position level is not considered.

Taking the advantages of the screw theory, this paper provides a novel and systematical approach. Forward and inverse kinematical equations of a free-floating space-robot system at the position level are established based on the POE formula and conservation of linear momentum, without employing inertial tensors. And several situations with different known variables are discussed: only position of the base is known, only orientation of the base is known, and both the position and orientation of the base are measurable. A numerical means based on Newton’s iteration method is given, considering that the closed-form inverse solution may be hard to calculate directly when the system is complex. The entire approach can be applied to space robots at free-floating mode without regard to the number of arms.

#### 2. The Model and Basic Theories

##### 2.1. The Model of the Space-Robot System

A space-robot system consists of the base (satellite) and arms (also called manipulators, single or multiple) typically. Each arm consists of several links, joints, and an end-effector (EE). The following assumptions are made to build a concise and accurate model. (1)The position and orientation of the base is not controlled, and there are no external forces on the system, which means the system is at free-floating mode(2)Each arm is a single chain connected to the base, and the parallel manipulator is not considered(3)All links and joints are rigid(4)All joints are revolute, and all the rotation angles are limited between and (5)The number of dofs of each arm is no greater than six. For a planar model, it is no greater than three. A redundant system is not considered

A model is provided in Figure 1. The definitions of each symbol are given as follows. (i) represents the inertial frame and is located at the centroid of the whole system(ii) represents the base-fixed frame(iii)Vector represents the centroidal position of the base in the inertial frame(iv)Vector represents the centroidal position of the arm’s link in the inertial frame(v)Vector represents the position of the arm’s EE in the inertial frame

##### 2.2. Product of the Exponential Formula

The POE formula describes the kinematical relationship by using the exponential form of screws. Only two frames are needed, the tool frame and the referential frame . The formula is written as where and represent the final and initial poses of frame relative to frame , respectively. is just the exponential form of rigid motion. defines the twist of the corresponding joint. For a revolute joint, where is the unit vector along the axis of the twist and is the position vector of an arbitrary point on the axis.

can also be expressed as where is the rotational matrix and is the position vector.

satisfies an important rule:

It means the poses of frame relative to frame and frame can be transformed mutually.

#### 3. Kinematics Deduction Base on Screw Theory

##### 3.1. Forward Kinematics

In this section, forward kinematical equations of the above-mentioned model are established.

According to the POE formula, the final pose of the centroidal frame of the arm’s link in the base-fixed frame can be given by and the final pose of the arm’s EE can be given by

The final pose of the base and centroidal frame of the arm’s link in the inertial frame can be expressed as where is determined by the orientation of the base. If we define the attitude angles (roll, pitch, and yaw) of the base as , then where means and means .

According to the transformation rule of rigid motion, there is

So, and the final pose of the arm’s EE in the inertial frame can be expressed as

In the inertial frame, the centroidal formula of the system is written as

Substituting equation (10) into equation (12) yields

Based on these deductions, can be calculated while the known variables are changing.

*Situation 1. *When both the position and orientation of the base are measurable, equation (11) can be used directly.

*Situation 2. *When only the orientation of the base can be obtained, substituting equation (13) into equation (11), there is
where can be calculated by equation (5).

*Situation 3. *When only the position of the base can be obtained, substituting equation (8) into equation (13), there is
Let , then equation (15) can be written as
can be calculated using this equation, then can be calculated by equation (11).

##### 3.2. Inverse Kinematics

Firstly, the feasibility of the inverse solution should be demonstrated. The number of state variables of the system is , including the position and orientation of the base. The number of equations is , which is equal to the total number of state parameters of all the EEs. The formula of conservation of linear momentum is a holonomic constraint, which can eliminate three independent state variables of the system. If the other three state variables are known, the number of unknown state variables will be no greater than the number of equations . Then, the equations will have limited numbers of solutions. For the planar model, the explanation is similar. Accordingly, the following situations with different known variables are discussed.

*Situation 1. *When both the position and the orientation of the base are measurable, substituting equation (6) into equation (11), there is
Let,
Joint angles of the arm can be solved by using the Paden-Kahan subproblem method. It will not be discussed further because it belongs to a maturely studied subject.

*Situation 2. *When only the orientation of the base can be obtained, equation (14) can be converted into the following form:
where . Twelve elements of are dependent on the joint angles. Considering that nine elements of the rotational matrix are dependent mutually, let
By using the unit quaternion method, equation (19) can be simplified to
All the equations of all the arms compose the following equation set:
All joint angles can be obtained by solving this equation set. However, it may be hard to get a closed-form solution due to its complexity. A numerical approach is provided based on Newton’s iteration method [22]. Firstly, the Jacobian matrix of the equation set is given by
, where . Then, the iterative formula can be written as
where is the pseudoinverse matrix of .

*Situation 3. *When only the position of the base can be obtained, the problem is more complex. Firstly, to convert equation (9) into the following form:
let,
Similarly, equation (25) can be simplified to
Equation (16) can be converted into the following form:
All the equations of all the arms and equation (28) compose another equation set:
The Jacobian matrix of the equation set is given by
. The iterative formula is written as
where is the pseudoinverse matrix of .

In particular, all the equations in this section can be simplified into kinematical equations of a single-arm space-robot system when .

#### 4. Examples and Discussion

##### 4.1. Solution of the Planar Model

Firstly, a simulation example of a three-link dual-arm planar robot is given in this part. The model at the initial configuration is shown in Figure 2.

To make a comparison between the simulation results of MATLAB and Adams, a simplified model of the robot is built in Adams and a certain motion process (from the initial configuration to the final configuration) is run. The final configuration of the Adams model is shown in Figure 3.

Detailed parameters of the model are given as follows:

So, and , and .

###### 4.1.1. Forward Kinematical Solution of the Planar Model

Base on the method in Section 3.1, forward kinematical solution of this planar model is given.

Final joint angles are . Then, according to equation (5), there are

According to equation (6), there are

*Situation 1. *Both the position and the orientation of the base are known:
So,
According to equation (11), there are

*Situation 2. *Only the orientation of the base is obtained: .

So,
According to equation (14), there are

*Situation 3. *Only the position of the base is obtained: .

Based on the known parameters, there is
According to equation (16), there is
So, . Then,
According to equation (11), there are

Comparing the results of these situations, which are almost equal to each other, it can be concluded that the method is feasible and effective. The result of Situation 3 has a subtle error due to the truncation error of angles during the calculation.

###### 4.1.2. Inverse Kinematical Solution of the Planar Model

Based on the method in Section 3.2, iterative programs for each situation are written with MATLAB and are run separately. Firstly, the final pose of the two arms is given by

The process of the iterative programs is as follow.

*Step 1. *Set the calculating parameters and known variables. Max number of iterations is . Convergence tolerance is . Known parameters are (for Situation 2). (for Situation 3).

*Step 2. *Set initial joint angles. . For the program of Situation 3, the initial attitude angles of the base should also be given: .

*Step 3. *Calculate the Jacobian matrix of each iterative step using equation (23) (for Situation 2) or equation (30) (for Situation 3).

*Step 4. *Calculate the angles of each iterative step using equation (24) (for Situation 2) or equation (31) (for Situation 3).

*Step 5. *Calculate the residual error and judge whether the iteration is over. If yes, go to the next step. If no, go to step 2.

*Step 6. *Calculate the final pose of each arm using the iterative result of the angles.

The results of the Adams simulation and the iterations are listed in Table 1.

The comparison shows that the results of the iterations are quite approximate to the real solution, which demonstrates the accuracy of the proposed methods. Actually, comparison between forward kinematical solutions and results of the iterations could also verify the accuracy.

Furthermore, efficiency of the methods is studied. Iterative time and number of iterative steps under certain calculating conditions are recorded while the initial parameters of the iteration of Situation 2 are changing. The results are presented in Table 2.

The results show that the iterative method is fairly efficient, and it could perform better when the initial parameters are closer to the real values. This is determined by the inherent property of Newton’s iterative method.

##### 4.2. Solution of the Spatial Model

To verify the application of the proposed method to a tridimensional model, a calculating example of a single-arm three-link space robot is presented. The Adams model at the initial configuration and the final configuration is shown in Figures 4 and 5, respectively.

The parameters of this spatial model are given as follows:

So, and , and .

###### 4.2.1. Forward Kinematical Solution of the Spatial Model

The final joint angles are . According to equation (5), there are

According to equation (6), there is

*Situation 1. *Both the position and the orientation of the base are known: .

So,
According to equation (11), there is

*Situation 2. *Only the orientation of the base is obtained: .

So,
According to equation (14), there is

*Situation 3. *Only the position of the base is obtained: .
According to equation (16), there is
So, . Then,
According to equation (11), there is

###### 4.2.2. Inverse Kinematical Solution of the Spatial Model

Likewise, final pose of EE and the iteration parameters are given at first.

The max number of iterations is . Convergence tolerance is . Known parameters are (for Situation 2). (for Situation 3).

The initial joint angles are and (for Situation 3).

The results are listed in Table 3. Accuracy of the proposed iterative methods is demonstrated while applying to the tridimensional model.

#### 5. Conclusions

This paper mainly studied the kinematical problem, including forward and inverse kinematics, of the free-floating space-robot system at the position level. Kinematical equations are systematically established based on the screw theory. Three situations with different known variables are discussed in detail. In particular, a numerical method for the inverse kinematical solution is proposed by using Newton’s iteration method. Examples demonstrate the accuracy and efficiency of the developed method, which appears to indeed be concise and valid compared to the traditional D-H method. The proposed iterative method can rapidly calculate joint angles with sufficient accuracy; it could be quite useful when differential kinematics is not concerned.

#### 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 work is funded by the Shanghai Aerospace Science and Technology Innovation Foundation, Grant No. SAST2017-020.