Next Article in Journal
SC-YOLOv8 Network with Soft-Pooling and Attention for Elevator Passenger Detection
Previous Article in Journal
Practical Considerations in the Design of Passive Free Piles in Sliding Soil
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Dynamic Modeling and Improved Nonlinear Model Predictive Control of a Free-Floating Dual-Arm Space Robot

1
College of Astronautics, Nanjing University of Aeronautics and Astronautics, Nanjing 210016, China
2
Shanghai Aerospace Electronic Technology Institute, Shanghai 201109, China
*
Author to whom correspondence should be addressed.
Appl. Sci. 2024, 14(8), 3333; https://doi.org/10.3390/app14083333
Submission received: 20 February 2024 / Revised: 8 April 2024 / Accepted: 10 April 2024 / Published: 15 April 2024

Abstract

:
With the increasing demand for space missions, space robots have become the focus of research and attention. As a typical representative, the free-floating dual-arm space robot has the characteristics of multiple degrees of freedom, a floating base, and dynamic coupling between the manipulator and the base, so its modeling and control are very challenging. To address these challenges, a novel dynamic modeling and control method is proposed for a free-floating dual-arm space robot. First, an explicit dynamic model of a free-floating dual-arm space robot is established based on the explicit canonical multi-rigid-body dynamic modeling theory and combined with the concept of a dynamic equivalent manipulator. The establishment process of this model is not only simple and canonical to avoid the definition and calculation of many intermediate variables, but the symbolic result expression of the model also has the characteristics of iteration, which is convenient for computer automatic modeling. Next, aiming at addressing the problem of trajectory tracking and the base attitude stability of a free-floating dual-arm space robot with parameter perturbation and external disturbance, an improved nonlinear model predictive control method introducing the idea of sliding mode variable structure is proposed. Theoretical analysis shows that the proposed controller has better robustness than the traditional nonlinear model predictive controller. Then, an in-orbit service task is designed to verify the effectiveness of the proposed dynamic modeling and control strategy of the free-floating dual-arm space robot. Finally, the dynamic modeling and control methods proposed are discussed and summarized. The proposed methods can not only realize the tracking of the desired trajectory of the arms of the free-floating space robot, but can also realize the stable control of the base of the free-floating space robot. This paper provides new insights into the difficult problems regarding the dynamics and control of free-floating dual-arm space robots.

1. Introduction

Since the 1990s, space manipulators used to manipulate and capture payloads have received extensive attention [1,2,3,4,5,6]. Space manipulator can not only be installed on a space station to assist astronauts in the maintenance of the space station [7,8,9], but can also be installed on an unmanned satellite to carry out in-orbit maintenance of the satellite and capture space debris [10,11,12,13]. In 2007, the US Orbital Express project carried out capture and maintenance experiments of controlled target satellites using unmanned satellites equipped with a manipulator [14]. Unlike a manipulator with a fixed base on the ground, the base of a small space robot composed of a small unmanned satellite and manipulator is generally movable [15]. This kind of space robot with a movable base is a typical unrooted tree multibody dynamic system, which has the characteristics of many degrees of freedom (DOF), strong nonlinearity and strong coupling [16]. Its dynamic modeling and control are challenging and have attracted increasing attention from researchers in recent years [1,15].
Compared with single-arm space robots, the establishment of the dynamic model of a dual-arm space robot is more complicated. So far, according to the different expressions of dynamic equations, the dynamic modeling methods of multibody systems such as robots are mainly divided into recursive methods based on the Newton–Euler equation and explicit methods based on the Lagrange equation. Recursive methods can obtain efficient recursive equations, but they are not suitable for the derivation of a high control law [17,18]. Compared with recursive methods, the expression of the dynamic equation of explicit methods is more intuitive. The pseudo inertia matrix method [19,20] and the generalized momentum method [21] are two common explicit dynamic modeling methods. However, these two explicit methods both have the problem that many intermediate variables need to be analyzed and calculated. Recently, an explicit multi-rigid-body dynamic modeling method was proposed, which can directly obtain the final canonical expression of a multibody system [22,23].
Unlike ground robots with a fixed base, space robots have dynamic coupling between the arm and the movable base [24,25]. If this is not controlled, it will lead to accidental movement of the base and affect the performance of the space robot [7,26,27]. For example, to ensure reliable communication with the ground or receive solar energy, the base of the satellite needs to accurately point in a fixed position, but the dynamic coupling between the arm and the base will interfere with the attitude of base [7]. Dubowsky and Papadopoulos [28] divided space robots with movable bases into free-flying space robots and free-floating space robots according to the different control problems to be solved. Unlike free-flying space robots that need to control the position and attitude of the base at the same time, free-floating space robots only needs to consider the control of base attitude, which can save energy [29]. In order to simplify the kinematic analysis of free-floating space robots, Vafa and Dubowsky [30] proposed the concept of the virtual manipulator (VM). VM is a fixed base robot with the same kinematic equivalence as a free-floating space robot, and its first joint is a passive spherical joint, which represents the free-floating characteristics of the space robot [31]. Liang [32] extended the concept of VM and proposed the dynamic equivalent manipulator (DEM), which can simultaneously simplify the kinematics and dynamics analysis of free-floating space robots.
In the process of in-orbit service, a space robot will not only be subjected to unknown disturbances from the outside, but will also be constrained by the uncertainty of internal parameters of the system caused by the change in fuel quality and other factors [15]. Therefore, designing controllers for space robots is a challenge which has been studied by many researchers [33,34,35]. Papadopoulos and Dubowsky [29] noted the similarities in control between free-floating space robots and ground fixed-base robots. Since then, many control algorithms designed for ground fixed-base robots have been studied and applied in space robots. Among them, the PID control method, which has been widely studied in ground industrial robots, has also been used in space robots [36]. However, this method has the problem of parameter tuning difficulty when it is applied to control an in-orbit service space robot with complex disturbances. Sliding mode control (SMC) is widely applied in the field of nonlinear systems because of its high precision and fast response [37,38]. Slotine et al. [39] first used SMC to design the controller of a two-DOF manipulator, and then the researchers conducted much research on the SMC of robots, representing a typical nonlinear system [40,41]. In recent years, many novel SMC methods have been proposed for the in-orbit service of space robots [42,43]. Model predictive control (MPC) is an excellent control method based on a system model to obtain a control signal by minimizing the objective function [44]. Raimondo et al. [45,46] improved MPC for the control problem of nonlinear systems and obtained better control performance. In the field of space robots, compared with other control methods, there is relatively less research on MPC. When studying the control problem of dual-arm space robots, Shi [47] found that MPC can achieve higher-precision control performance than SMC when there is no system disturbance, while SMC shows better robustness than MPC when there is system disturbance. Tomasz Rybus [44] discussed the possibility of applying a nonlinear model predictive controller (NMPC) to a free-floating space robot. Tomasz Rybus [11] proposed a new concept for a free-floating space robot control system, in which the NMPC controller introduced a trajectory planning module, but the paper only carried out a numerical simulation on the planar case of the two-DOF manipulator.
In this paper, the dynamic model of a free-floating dual-arm space robot with stylization and high computational efficiency is established by using the concept of DEM and the explicit multi-rigid-body dynamic modeling theory [22,23], and a novel control method is proposed. This method can be effectively applied to the terminal trajectory tracking and base attitude stability control of free-floating space robots under the condition of parameter perturbation and external disturbance. The remainder of this paper is organized as follows: in Section 2, a free-floating dual-arm space robot is modeled and analyzed by using explicit multi-rigid-body dynamic modeling theory and DEM. In Section 3, an improved NMPC controller is designed and its stability is analyzed based on Lyapunov theory. In Section 4, an in-orbit service task is designed and a numerical simulation is performed to verify the proposed controller. In Section 5, the dynamic modeling and control methods for the free-floating space robot are discussed, while the conclusions are provided in Section 6.

2. Dynamic Modeling of Free-Floating Dual-Arm Space Robot

This section mainly introduces and analyzes the dynamic model of a free-floating dual-arm space robot based on the explicit multi-rigid-body dynamic modeling method and combined with the concept of DEM, which is used for subsequent control research. Because kinematics is the foundation of dynamics [17], the kinematic model is introduced first before the dynamic modeling.

2.1. Kinematic Modeling

The free-floating dual-arm space robot used in this study is a typical unrooted tree multibody system [16]. The schematic diagram of the free-floating dual-arm space robot studied in this paper is shown in Figure 1. The topological structure analysis and the establishment of the reference frames of the space robot are introduced below.
The topology of a robot is usually composed of nodes representing the links (except the root node) and arcs representing the joints [48]. The schematic diagram of the free-floating dual-arm space robot is shown in Figure 1, where k l l ¯ represents the kinematic pair composed of parent link l ¯ and child link l. Each arm of the free-floating dual-arm space robot contains three single-DOF revolute pairs. The attitude of the base of the free-floating space robot has three rotational DOF. According to the concept of DEM, after the free-floating base of the space robot is equivalent to three single-DOF revolute pairs, the unrooted free-floating tree-chain space robot can be equivalent to a fixed-base tree-chain ground robot [31]. According to the above analysis, the topology graph of the free-floating dual-arm space robot is shown in Figure 2, where i represents the inertial space, b represents the base, l represents the left arm, r represents the right arm and R represents the revolute pair. Except for the root node, the remaining nine nodes in the topology correspond to the nine DOF of the free-floating dual-arm space robot, and these nodes are numbered in turn. In addition, unless otherwise specified, the rest of the symbols used in this article are shown in Table A1 of Appendix A.
To improve the calibration accuracy of the robot’s structural parameters, we propose a reference system establishment method based on the Axis-Invariant [49]. The reference frames and the Axis-Invariant of the left arm of the free-floating dual-arm space robot are described in Figure 3. The origin of the inertial reference frame O i x i y i z i is located at the center of the Earth. The origin of the base reference frame O b x b y b z b is located at the center of mass of the base. The origins of the joint reference frames O l x l y l z l are located on the rotation axes of the joints. At the initial moment, the directions of these reference frames are consistent. The Axis-Invariant n l l ¯ is defined as the motion axis vector direction of joint l. For more background and applications of the Axis-Invariant, refer to [22,23,49,50,51].
With the Axis-Invariant n l l ¯ as the reference axis, the rotational vector ϕ l l ¯ of the rotating joint and the translational vector r l l ¯ of the prismatic joint can be expressed as follows [22,23]:
ϕ l l ¯ = n l l ¯ · ϕ l l ¯
r l l ¯ = n l l ¯ · r l l ¯ + r l 0 l ¯
The rotation transformation matrix Q l l ¯ based on the Axis-Invariant n l l ¯ can be expressed as follows [22,23]:
Q l l ¯ = 1 + n ˜ l l ¯ · sin ( ϕ l l ¯ ) + n ˜ l ^ 2 l ¯ · 1 cos ( ϕ l l ¯ )
According to the expression of the rotation transformation matrix Q l l ¯ in Equation (3), the iterative kinematic equations of multi-joint series based on the Axis-Invariant n l l ¯ can be expressed as follows:
Q l i = 𝟷 l i k Q k k ¯
ϕ l i = k 𝟷 l i ϕ k i | k ¯ = k 𝟷 l i Q k ¯ i · ϕ k k ¯
r l i ¯ = k 𝟷 l i r k i | k ¯ = k 𝟷 l i Q k ¯ i · r k k ¯
where the left superscript “i|” of the vector represents the projection of the vector under the inertial reference frame O i x i y i z i .
The velocity vector and acceleration vector are the derivative and second derivative of the displacement vector, respectively. By taking the derivative and second derivative of Equations (5) and (6), the iterative velocity and iterative acceleration of multi-joint kinematic chain l l i can be expressed as follows:
ϕ ˙ l i = k 𝟷 l i ϕ ˙ k i | k ¯
ϕ ¨ i l = k 𝟷 l i ϕ ˜ ˙ k ¯ i · ϕ ˙ k i | k ¯ + ϕ ¨ k i | k ¯
r ˙ l i = k 𝟷 l i ϕ ˜ ˙ k ¯ i · r k i | k ¯ + r ˙ k i | k ¯
r ¨ l i = k 𝟷 l i ϕ ˜ ¨ k ¯ i · r k i | k ¯ + ϕ ˜ ˙ k ¯ ^ 2 i · r k i | k ¯ + 2 · ϕ ˜ ˙ k ¯ i · r ˙ k i | k ¯ + r ¨ k i | k ¯

2.2. Dynamic Modeling

As a classical method of multibody system dynamics modeling, the Lagrange equation is widely used in the field of robot dynamics [52]. When the free-floating dual-arm space robot serving in orbit is running in space, the influence of gravity can be ignored, and the joint type of the robot only contains rotating joints. The Lagrange equation expression of the space robot tree-chain multibody system based on the Axis-Invariant, which only contains rotating joints and ignores gravity, is as follows [22,23]:
d d t L i ϕ ˙ u u ¯ L i ϕ u u ¯ =   i | u ¯ n u T ·   i L τ u
where L i is an energy term,
L i = k i L 1 2 · ϕ ˙ k T i · J k I i | k I · ϕ ˙ k i + 1 2 · m k · r ˙ k I T i · r ˙ k I i
The iterative partial derivative equation based on the Axis-Invariant is [22,23]
r n S i ϕ k k ¯ = r ˙ n S i ϕ ˙ k k ¯ = r ¨ n S i ϕ ¨ k k ¯ = n ˜ k i | k ¯ · r n S i | k
ϕ ˙ n i ϕ ˙ k k ¯ = ϕ ¨ n i ϕ ¨ k k ¯ = n k i | k ¯
Substituting Equations (1)–(10) and (13) and (14) into Equations (11) and (12), after simplifying the results, the explicit canonical dynamic expression of the space robot tree-chain multibody system that ignores gravity and only contains rotating joints can be obtained:
n u T i | u ¯ · M R [ u ] [ ] · q ¨ + n u T i | u ¯ · h R [ u ] = n u T i | u ¯ · τ u i L
where M R [ u ] [ ] is a 3 × 3 inertia matrix for revolute pairs and h R [ u ] is a 3D bias force vector for revolute pairs,
M R [ u ] [ ] · q ¨ = l 𝟷 u ¯ i j u L J j I i | j I m j · r ˜ j I i | u · r ˜ j I i | l · n l i | l ¯ · ϕ ¨ l l ¯ + k u L j k L J j I i | j I m j · r ˜ j I i | u · r ˜ j I i | k · n k i | k ¯ · ϕ ¨ k k ¯  
h R [ u ] = l 𝟷 u ¯ i k u L J k I i | k I m k · r ˜ k I i | u · r ˜ k I i | l · ϕ ˜ ˙ l ¯ i · ϕ ˙ l i | l ¯   + k u L j k L J j I i | j I m j · r ˜ j I i | u · r ˜ j I i | k · ϕ ˜ ˙ k ¯ i · ϕ ˙ k i | k ¯   + k u L m k · r ˜ k I i | u · l 𝟷 k I i ϕ ˜ ˙ l ¯ ^ 2 i · r l i | l ¯ + 2 · ϕ ˜ ˙ l ¯ i · r ˙ l i | l ¯   + k u L ϕ ˜ ˙ k i · J k I i | k I · ϕ ˙ k i
According to Equation (15) and the above topological analysis, the explicit canonical dynamic model of the base, left arm and right arm of the free-floating dual-arm space robot can be obtained as follows:
  base : n 1 T i · M R [ 1 ] [ ] · q ¨ + n 1 T i · h R [ 1 ] = n 1 T i · τ 1 i L n 2 T i | 1 · M R [ 2 ] [ ] · q ¨ + n 2 T i | 1 · h R [ 2 ] = n 2 T i | 1 · τ 2 i L n 3 T i | 2 · M R [ 3 ] [ ] · q ¨ + n 3 T i | 2 · h R [ 3 ] = n 3 T i | 2 · τ 3 i L left   arm : n 4 T i | 3 · M R [ 4 ] [ ] · q ¨ + n 4 T i | 3 · h R [ 4 ] = n 4 T i | 3 · τ 4 i L   n 5 T i | 4 · M R [ 5 ] [ ] · q ¨ + n 5 T i | 4 · h R [ 5 ] = n 5 T i | 4 · τ 5 i L n 6 T i | 5 · M R [ 6 ] [ ] · q ¨ + n 6 T i | 5 · h R [ 6 ] = n 6 T i | 5 · τ 6 i L right   arm : n 7 T i | 3 · M R [ 7 ] [ ] · q ¨ + n 7 T i | 3 · h R [ 7 ] = n 7 T i | 3 · τ 7 i L   n 8 T i | 7 · M R [ 8 ] [ ] · q ¨ + n 8 T i | 7 · h R [ 8 ] = n 8 T i | 7 · τ 8 i L n 9 T i | 8 · M R [ 9 ] [ ] · q ¨ + n 9 T i | 8 · h R [ 9 ] = n 9 T i | 8 · τ 9 i L
The above Equation (18) can be rewritten as follows:
M [ 1 ] [ 1 ]   M [ 1 ] [ 2 ]   M [ 1 ] [ 3 ]     M [ 1 ] [ 7 ]   M [ 1 ] [ 8 ]   M [ 1 ] [ 9 ] M [ 2 ] [ 1 ]   M [ 2 ] [ 2 ]   M [ 2 ] [ 3 ]     M [ 2 ] [ 7 ]   M [ 2 ] [ 8 ]   M [ 2 ] [ 9 ] M [ 3 ] [ 1 ]   M [ 3 ] [ 2 ]   M [ 3 ] [ 3 ]     M [ 3 ] [ 7 ]   M [ 3 ] [ 8 ]   M [ 3 ] [ 9 ]                 M [ 7 ] [ 1 ]   M [ 7 ] [ 2 ]   M [ 7 ] [ 3 ]     M [ 7 ] [ 7 ]   M [ 7 ] [ 8 ]   M [ 7 ] [ 9 ] M [ 8 ] [ 1 ]   M [ 8 ] [ 2 ]   M [ 8 ] [ 3 ]     M [ 8 ] [ 7 ]   M [ 8 ] [ 8 ]   M [ 8 ] [ 9 ] M [ 9 ] [ 1 ]   M [ 9 ] [ 2 ]   M [ 9 ] [ 3 ]     M [ 9 ] [ 7 ]   M [ 9 ] [ 8 ]   M [ 9 ] [ 9 ] ϕ ¨ 1 i ϕ ¨ 2 1 ϕ ¨ 3 2     ϕ ¨ 7 3 ϕ ¨ 8 7 ϕ ¨ 9 8 + h [ 1 ] h [ 2 ] h [ 3 ]     h [ 7 ] h [ 8 ] h [ 9 ] = τ [ 1 ] τ [ 2 ] τ [ 3 ]     τ [ 7 ] τ [ 8 ] τ [ 9 ]
According to Equations (16) and (17), the inertia matrix M[·][·] and the bias force vector h[·] in Equation (19) can be defined by Equations (A1)–(A9) and Equations (A10)–(A15) in Appendix B, respectively.

3. Design of the Improved NMPC Controller

In this section, an improved NMPC controller is designed for the trajectory tracking control of a free-floating dual-arm space robot serving in orbit. The principle of the improved NMPC controller designed in this paper is shown in Figure 4. As shown in Figure 4, the controller proposed in this paper is mainly composed of a predictive control unit for the rolling optimization of a nominal dynamic model and a sliding mode variable structure control unit for the purposes of weakening the influence of disturbance. The improved NMPC controller introduced the idea of SMC control and added the sliding mode variable structure control technology to suppress the disturbance, which improved the performance of the traditional NMPC controller.
According to Figure 4, the control law of the proposed controller can be expressed as follows:
u = u m + u c
where u m is the torque generated by the predictive control unit and u c is the torque generated by the sliding mode variable structure control unit.

3.1. Design of the NMPC Controller

The designed predictive controller refers to the classical NMPC control algorithm developed in [53]. NMPC is essentially a kind of optimal control that aims to minimize the trajectory tracking error during control. Therefore, the cost function of the NMPC is often expressed as [53,54]:
J cost = 1 2 T 1 T 2 e ( t + τ ) T e ( t + τ ) d τ
where e ( t + τ ) = q ( t + τ ) q d ( t + τ ) is the prediction error at time t + τ and τ is the prediction time. q ( t + τ ) and q d ( t + τ ) represent the actual and desired joint angles of the system at time t + τ , respectively.
The truncated Taylor series is applied to expand q ( t + τ ) as follows:
q ( t + τ ) = q ( t ) + τ q ˙ ( t ) + τ 2 2 q ¨ ( t )
If T ( t ) = [ I 9 × 9 τ · I 9 × 9 τ 2 2 · I 9 × 9 ] , ρ   ( t ) = [ q ( t ) q ˙ ( t ) q ¨ ( t ) ] T , and ρ d ( t ) = [ q d ( t ) q ˙ d ( t ) q ¨ d ( t ) ] T are taken, then q ( t + τ ) and q d ( t + τ ) can be expressed as:
q   ( t + τ ) = T ( t ) · ρ ( t ) q d ( t + τ ) = T ( t ) · ρ d ( t )
According to Equation (23), the prediction error e ( t + τ ) can be re-expressed as:
e ( t + τ ) = T ( t ) ( ρ ( t ) ρ d ( t ) )
The nominal dynamic model of the free-floating dual-arm space robot under ideal conditions can be expressed as follows:
M ^ · q ¨ ( t ) + h ^ = u
where M ^ and h ^ are the nominal inertia matrix and nominal bias force vector of the free-floating dual-arm space robot constructed in the second section of this paper under ideal conditions.
According to Equation (25), the vector ρ ( t ) can be expressed as
ρ ( t ) = q ( t ) q ˙ ( t ) q ¨ ( t ) = q ( t ) q ˙ ( t ) M ^ 1 · h ^ + 0 9 × 1 0 9 × 1 M ^ 1 · u
According to Equation (26), the cost function J cost in Equation (21) can be re-expressed as
J cos t = 1 2 ( ρ ( t ) ρ d ( t ) ) T Π ( ρ ( t ) ρ d ( t ) )
The matrix Π in the above formula is expressed as
Π = T 1 T 2 T ( t ) T T ( t ) d τ = T r · Ι 9 × 9 T r   2 2 · Ι 9 × 9 T r   3 6 · Ι 9 × 9   T r   2 2 · Ι 9 × 9 T r   3 3 · Ι 9 × 9 T r   4 8 · Ι 9 × 9   T r   3 6 · Ι 9 × 9 T r   4 8 · Ι 9 × 9 T r   5 20 · Ι 9 × 9
where the rolling period T r = T 2 T 1 .
The system control law u m of the predictive control unit can be solved according to J cost u m = 0 :
u m = M ^ 10 3 T r   2 · Ι 9 × 9 5 2 T r · Ι 9 × 9           Ι 9 × 9 · \ q ( t ) q d ( t ) q ˙ ( t ) q ˙ d ( t ) M ^ 1 · h ^ q ¨ d ( t )
According to e ( t ) = q ( t ) q d ( t ) and e ˙ ( t ) = q ˙ ( t ) q ˙ d ( t ) , Equation (29) can be re-expressed as
u m = M ^ · [ A 1 · e ( t ) + A 2 · e ˙ ( t ) ] + h ^ + M ^ · q ¨ d ( t )
where A 1 = 10 3 T r   2 · Ι 9 × 9 , A 2 = 5 2 T r · Ι 9 × 9 .

3.2. Design of an Improved NMPC Controller Based on Sliding Mode Variable Structure

During the in-orbit service of an actual space robot, the dynamic parameters will change due to factors such as fuel consumption, and the space robot will inevitably be affected by external disturbances. Therefore, considering the influence of parameter uncertainty and external disturbances, the practical dynamic model of the in-orbit service free-floating dual-arm space robot is
M · q ¨ ( t ) + h = u + d
where M and h are the actual inertia matrix and the actual bias force vector of the free-floating dual-arm space robot, respectively, and d is the external disturbance.
The sliding mode function is taken as
s = e ˙ ( t ) + P · e ( t ) + V · 0 t e ( t ) d t
where e ( t ) = q ( t ) q d ( t ) , e ˙ ( t ) = q ˙ ( t ) q ˙ d ( t ) , P = 2 Λ , V = Λ 2 , Λ is a positive definite diagonal matrix of size 9 × 9 , λ i is a diagonal element of Λ , and λ i > 0 .
The sliding mode hyperplane is
s ˙ = e ¨ ( t ) + P · e ˙ ( t ) + V · e ( t )
According to e ¨ ( t ) = q ¨ ( t ) q ¨ d ( t ) , Equation (33) can be re-expressed as
s ˙ = q ¨ ( t ) [ q ¨ d ( t ) P · e ˙ ( t ) V · e ( t ) ]
The reference acceleration q ¨ r ( t ) is taken as
q ¨ r ( t ) = q ¨ d ( t ) P · e ˙ ( t ) V · e ( t )
Then, Equation (34) can be re-expressed as
s ˙ = q ¨ ( t ) q ¨ r ( t )
According to Equation (31), we can obtain
q ¨ ( t ) = M 1 · u + d h
According to Equation (37), Equation (36) can be re-expressed as
s ˙ = M 1 · [ u + d h M · q ¨ r ( t ) ]
By substituting Equations (20), (30) and (35) into Equation (38), we can obtain
s ˙ = M 1 · ( u c + Δ u )
where Δ u is the uncertainty of the system.
According to Equation (39), we can obtain
s T · s ˙ = s T · M 1 · ( u c + Δ u )
Theorem 1.
Suppose there is a positive definite matrix  B R a × a of a × a  and there is a positive real number b > 0 such that  b · I > B  holds, where I is the identity matrix of size  a × a . Suppose any vector  y R a  and  y ρ ; then, for any vector  x R a , the following inequality holds:
x T · B · y b · ρ · x
According to Theorem 1, we can obtain
s T · M 1 · Δ u 1 _ m · ρ · s
where _ m is the infimum of M.
Because s i = 1 9 s i , then according to Equations (40) and (42), we can obtain
s T · s ˙ 1 _ m · ρ · i = 1 9 s i + s T · M 1 · u c

3.3. Analysis of Stability

The sliding mode boundary thickness is denoted as σ i . If the control process of the closed-loop control system from the initial state to the sliding mode surface is expected to satisfy Lyapunov stability, then
1 2 · d d t s T · s i = 1 9 η i · s i ϕ i < 0
Because s T · s ˙ = 1 2 · d d t s T · s , according to Equations (43) and (44), to ensure the stability of the system, it is necessary to select u c to meet the following conditions:
1 _ m · ρ · i = 1 9 s i + s T · M 1 · u c i = 1 9 η i · s i η i · ϕ i < 0
Equation (45) can be re-expressed as
s T · M 1 · u c i = 1 9 ρ m _ + η i · s i η i · ϕ i
According to Equation (46), the control law of the sliding mode variable structure control unit can be constructed as
u c = G · Ω ( s i ) · s
where G is a positive definite diagonal matrix of size 9 × 9 , g i s i is a diagonal element of G and g i s i is a positive definite function; Ω is also a positive definite diagonal matrix of size 9 × 9 , and 1 / | s i | is a diagonal element of Ω .
By substituting Equation (47) into Equation (46), we can obtain
m ¯ · s T · M 1 · G s i · Ω s i · s m ¯ · i = 1 9 ρ m _ + η i · s i η i · ϕ i
where m ¯ is the supremum of M.
Theorem 2.
Consider  M R a × a  to be a positive definite matrix of size  a × a  and  K R a × a to be a diagonal positive definite matrix of size  a × a . If there exists a positive real number  m > 0  and  m · I M , then for any vector  x R a , the following equation holds:
m · x t · M 1 · K · x x t · K · x
The proof of Theorem 2 is given in Equations (A16)–(A18) in Appendix C.
According to Theorem 2, we can obtain
m ¯ · s T · M 1 · G s i · Ω s i · s s T · G s i · Ω s i · s \ = i = 1 9 g i s i · s i · dsgn s i 0
According to Equations (48) and (50), to ensure the stability of the system, the following equation needs to be satisfied:
i = 1 9 g i s i · s i · dsgn s i m ¯ · i = 1 9 ρ _ m + η i · s i η i · ϕ i
The above Equation (51) can be re-expressed as
g i s i > m ¯ · ρ _ m + η i m ¯ · η i · ϕ i s i
The control law of the sliding mode variable structure control unit in Equation (47) is equivalent to
u c [ i ] = g i s i · 1 s i · s i = g i s i · dsgn s i
Since the slope of the sign function dsgn() in Equation (53) is infinite, the control signal of the system has a serious jitter problem in the switching process. In this paper, the hyperbolic tangent function tanh() with a gentler slope is introduced to replace the sign function dsgn() to improve it. According to Equations (52) and (53), the improved u c [ i ] can be expressed as
u c [ i ] = g i s i · tan h s i = m ¯ · ρ _ m + η i · tan h s i
According to Equation (54), we can obtain the control law u c of the sliding mode variable structure control unit of the system as
u c = G · tanh ( s )

4. Simulation

In this section, an in-orbit service task as shown in Figure 5 is designed for a free-floating dual-arm space robot, in which one manipulator performs the capture operation on the target object and the other manipulator performs the maintenance operation on the captured object. The parameters of the free-floating dual-arm space robot are shown in Table 1.
The space robot will inevitably be affected by uncertain dynamic parameters and external disturbance when it performs the in-orbit service task. First, we use the traditional NMPC method to simulate and contrast the trajectory tracking of the space robot under the influence of dynamic parameter uncertainty and external disturbance. The relevant parameter settings of the dynamic parameter uncertainty and external disturbance of the space robot during simulation can be found in Table 1. Taking joint 5 as an example, the traditional NMPC method is used to simulate and compare the actual situation of the free-floating dual-arm space robot affected by parameter uncertainty and external disturbance with the ideal situation that is not affected. The results are shown in Figure 6. It can be seen from Figure 6 that the traditional NMPC method has a good control effect on the robot under ideal conditions, but the control effect of the robot under actual conditions with disturbances needs to be improved.
To show the advantages of the proposed improved NMPC method, we next build two controllers based on the traditional NMPC method and the proposed improved NMPC method, respectively. The relevant parameter settings of these two controllers can be found in Table 1. We use these two controllers to simulate the trajectory tracking of the two arms of the free-floating dual-arm space robot under the influence of uncertain dynamic parameters and external disturbances. Figure 7 shows the tracking comparison of each joint of the left arm based on these two controllers to the desired trajectory. As shown in Figure 7, compared with the traditional NMPC controller, the proposed improved NMPC controller is more accurate in tracking the desired trajectory, and can keep the error within the target range, showing an excellent control effect.
Unlike the ground fixed manipulator, the attitude of the base of the free-floating dual-arm space robot needs to be controlled stably; otherwise, it will seriously affect the operation accuracy of the two arms, resulting in the failure of the operation task. Therefore, we finally use these two controllers to simulate the stable control of the base attitude of the free-floating dual-arm space robot. In order to further demonstrate the advantages of the designed improved NMPC controller, we increase the amplitude of the external disturbance of the robot base attitude simulation experiment to five times the original to increase the uncertainty of the system to verify the performance of the proposed controller. Figure 8 shows the error comparison of the base attitude stabilization control of the free-floating dual-arm space robot based on these two controllers. It can be seen from Figure 8 that compared with the traditional NMPC controller, the designed improved controller obtains a more stable base attitude. The proposed controller shows excellent stability in conditions of strong disturbance.

5. Discussion

This section will discuss the proposed method from two perspectives: dynamic modeling and control.
  • Dynamic modeling:
    (1)
    The free-floating dual-arm space robot studied in this paper is a complex multibody system with nine DOF. The modeling efficiency of the traditional explicit multibody system dynamic modeling method needs to be improved. For example, when the pseudo inertia matrix method [19,20] is used, the pseudo inertia matrix, the homogeneous transformation matrix, and other intermediate variables need to be calculated; when the generalized momentum method [21] is used, although the computational efficiency of the inertia matrix is higher than that of the pseudo inertia matrix method, it is also necessary to derive and calculate the intermediate variables such as the Jacobian matrix, and the generalized momentum method cannot explicitly establish the bias force vector. The space robot modeling method in this paper avoids the definition and operation of intermediate variables, and its modeling efficiency is higher than the traditional explicit modeling method. The highest computational complexity is obtained when all joint types of the robot are considered as rotational joints. Table 2 shows the comparison of the computational complexity of the inertia matrix M and the bias force vector h in the calculation of an n-DOF robot with full rotational joints when the three different explicit dynamics modeling methods are adopted. Table 2 shows that the computational complexity of the explicit canonical method in this paper is significantly lower than those of the other two methods.
    (2)
    Due to the floating characteristics of the base of the free-floating space robot, it is difficult to combine the traditional explicit dynamic modeling method with DEM, because it requires tedious and complex analysis processes, such as the definition and operation of complex intermediate variables. When combined with DEM, our explicit canonical dynamic modeling method can avoid the tedious and complex analysis of intermediate variables.
    (3)
    Due to the inconvenient modeling method, most of the literature in the study of space robot dynamics and control only simulates the plane situation of the two-DOF manipulator, which makes it difficult to reflect the real working state of the complex multi-DOF space robot. When using the proposed explicit dynamic modeling method, it is easy to establish a dynamic model for complex multi-DOF space robot for control research.
  • Control:
    (1)
    Compared with other traditional control methods, research on the NMPC method applied to space robots is not extensive enough. Recently, Tomasz Rybus [11,44] explored the possibility of using the NMPC method to control manipulators mounted on free-floating space robots. However, Tomasz Rybus [11,44] only considered the trajectory tracking control of the end manipulator of the free-floating space robot, and did not consider the stable control of the attitude of the base of the free-floating space robot. In addition, Tomasz Rybus [11,44] only carried out dynamic modeling and simulation verification of the NMPC method for a two-DOF planar manipulator. This paper not only considers the trajectory tracking control of the end manipulator of the free-floating space robot, but also considers the stable control of the base attitude of the free-floating space robot. In addition, the dynamic modeling and control simulation of the free-floating dual-arm space robot with nine DOF are carried out in this paper.
    (2)
    The free-floating space robot has high requirements on the accuracy of trajectory tracking and the stability of the base attitude. The traditional NMPC method has difficulty meeting these requirements. This paper innovatively introduces the idea of sliding mode variable structure to improve the traditional NMPC method. The proposed improved NMPC method has better robustness and can better meet the requirements of trajectory tracking accuracy and base attitude stability for free-floating space robots serving in orbit.
    (3)
    Inspired by the literature [15], the control system in this paper consists of a combined controller for the base and the arms, rather than two separate controllers, which can reduce the risk of failure.

6. Conclusions

Based on a new dynamic modeling theory, a novel dynamic control method is proposed for the free-floating dual-arm space robot. This method can not only realize the tracking of the desired trajectory by the two arms of the space robot, but also realize the stable control of the space robot base. The in-orbit service mission of space debris capture was designed and simulated. The main contributions of this paper are as follows:
(1)
Based on a new explicit multi-rigid-body dynamic modeling method and employing the concept of DEM, the dynamic model of a free-floating dual-arm space robot is established. The modeling process of the model is simple and standardized, which is convenient for computer programming.
(2)
After introducing the control idea of the sliding mode variable structure into the traditional NMPC method, a novel NMPC controller is designed, which effectively solves the problem of tracking the desired trajectory and stabilizing the base attitude of the free-floating dual-arm space robot under unknown model uncertainty and external disturbance.
This article focuses on the challenging problem of dynamic modeling and control of free-floating space robots. The proposed new dynamic modeling and control method can be effectively applied to the on-orbit service tasks of free-floating dual-arm space robots, providing new insights into the challenging problems regarding the dynamics and control of complex multi-DOF space robots. In order to fully verify the method proposed in this paper, a prototype platform of a free-floating dual-arm space robot will be built in the future, and the development and test of hardware system will be carried out. At the same time, in the future, factors such as link flexibility, joint friction and contact collision will be considered to study the dynamic modeling, control and planning of multi-arm space robots.

Author Contributions

Methodology, Z.G. and C.L.; software, Z.G.; writing—original draft preparation, Z.G.; writing—review and editing, Z.G., H.J. and K.W. All authors have read and agreed to the published version of the manuscript.

Funding

This work is supported by the National Natural Science Foundation of China (61673010).

Data Availability Statement

The authors will supply the relevant data in response to reasonable requests.

Conflicts of Interest

The authors have no relevant financial or non-financial interests to disclose.

Appendix A

Table A1. Symbol descriptions.
Table A1. Symbol descriptions.
SymbolsDescriptionSymbolsDescription
ϕ l l ¯ Angular position along n l l ¯ ϕ l l ¯ Vector   form   of   ϕ l l ¯
r l l ¯ Linear   position   along   n l l ¯ r l 0 l ¯ Vector   from   O l ¯   to   O l
r l l ¯ Vector   form   of   r l l ¯ Q l l ¯ Rotation matrix from   l ¯   to   l
u L Closed subtree of link u 𝟷 l i Kinematic chain from i to l
m k Mass of link k J k I k I Inertia tensor of link k
M R [ u ] [ ] Inertial force matrix of revolute joint u h R [ u ] Bias force vector of revolute joint u
τ u i L resultant torque on axis n u u ¯ except gravity M [ u ] [ k ] uth row and kth column element of inertia matrix

Appendix B

  • Because the inertia matrix M[·][·] is a symmetric matrix, and because we are limited by the length of the article, the following are only the explicit expressions of the corresponding elements in the upper left corner of the M[·][·] matrix in Equation (19).
M [ 1 ] [ 1 ] = n 1 T i · J 1 I i | 1 I m 1 · r ˜ 1 I ^ 2 i | 1 + J 2 I i | 2 I m 2 · r ˜ 2 I ^ 2 i | 1 + J 3 I i | 3 I m 3 · r ˜ 3 I ^ 2 i | 1 \ + J 4 I i | 4 I m 4 · r ˜ 4 I ^ 2 i | 1 + J 5 I i | 5 I m 5 · r ˜ 5 I ^ 2 i | 1 + J 6 I i | 6 I m 6 · r ˜ 6 I ^ 2 i | 1 \ + J 7 I i | 7 I m 7 · r ˜ 7 I ^ 2 i | 1 + J 8 I i | 8 I m 8 · r ˜ 8 I ^ 2 i | 1 + J 9 I i | 9 I m 9 · r ˜ 9 I ^ 2 i | 1 · n 1 i M [ 1 ] [ 2 ] = n 1 T i · J 2 I i | 2 I m 2 · r ˜ 2 I i | 1 · r ˜ 2 I i | 2 + J 3 I i | 3 I m 3 · r ˜ 3 I i | 1 · r ˜ 3 I i | 2 \ + J 4 I i | 4 I m 4 · r ˜ 4 I i | 1 · r ˜ 4 I i | 2 + J 5 I i | 5 I m 5 · r 5 I i | 1 · r 5 I i | 2 \ + J 6 I i | 6 I m 6 · r ˜ 6 I i | 1 · r ˜ 6 I i | 2 + J 7 I i | 7 I m 7 · r ˜ 7 I i | 1 · r ˜ 7 I i | 2 \ + J 8 I i | 8 I m 8 · r ˜ 8 I i | 1 · r ˜ 8 I i | 2 + J 9 I i | 9 I m 9 · r ˜ 9 I i | 1 · r ˜ 9 I i | 2 · n 2 i | 1 M [ 1 ] [ 3 ] = n 1 T i · J 3 I i | 3 I m 3 · r ˜ 3 I i | 1 · r ˜ 3 I i | 3 + J 4 I i | 4 I m 4 · r ˜ 4 I i | 1 · r ˜ 4 I i | 3 \ + J 5 I i | 5 I m 5 · r ˜ 5 I i | 1 · r ˜ 5 I i | 3 + J 6 I i | 6 I m 6 · r ˜ 6 I i | 1 · r ˜ 6 I i | 3 \ + J 7 I i | 7 I m 7 · r ˜ 7 I i | 1 · r ˜ 7 I i | 3 + J 8 I i | 8 I m 8 · r ˜ 8 I i | 1 · r ˜ 8 I i | 3 \ + J 9 I i | 5 I m 9 · r ˜ 9 I i | 1 · r ˜ 9 I i | 3 · n 3 i | 2 M [ 1 ] [ 4 ] = n 1 T i · J 4 I i | 4 I m 4 · r ˜ 4 I i | 1 · r ˜ 4 I i | 4 + J 5 I i | 5 I m 5 · r ˜ 5 I i | 1 · r ˜ 5 I i | 4 + J 6 I i | 6 I \ m 6 · r ˜ 6 I i | 1 · r ˜ 6 I i | 4 · n 4 i | 3 M [ 1 ] [ 5 ] = n 1 T i · J 5 I i | 5 I m 5 · r ˜ 5 I i | 1 · r ˜ 5 I i | 5 + J 6 I i | 6 I m 6 · r ˜ 6 I i | 1 · r ˜ 6 I i | 5 · n 5 i | 4 M [ 1 ] [ 6 ] = n 1 T i · J 6 I i | 6 I m 6 · r ˜ 6 I i | 1 · r ˜ 6 I i | 6 · n 6 i | 5 M [ 1 ] [ 7 ] = n 1 T i · J 7 I i | 7 I m 7 · r ˜ 7 I i | 1 · r ˜ 7 I i | 7 + J 8 I i | 8 I m 8 · r ˜ 8 I i | 1 · r ˜ 8 I i | 7 + J 9 I i | 9 I \ m 9 · r ˜ 9 I i | 1 · r ˜ 9 I i | 7 · n 7 i | 3 M [ 1 ] [ 8 ] = n 1 T i · J 8 I i | 8 I m 8 · r ˜ 8 I i | 1 · r ˜ 8 I i | 8 + J 9 I i | 9 I m 9 · r ˜ 9 I i | 1 · r ˜ 9 I i | 8 · n 8 i | 7 M [ 1 ] [ 9 ] = n 1 T i · J 9 I i | 9 I m 9 · r ˜ 9 I i | 1 · r ˜ 9 I i | 9 · n 9 i | 8
M [ 2 ] [ 2 ] =   i | 1 n 2 T ·   i | 2 I J 2 I m 2 ·   i | 2 r ˜ 2 I   ^ 2 +   i | 3 I J 3 I m 3 ·   i | 2 r ˜ 3 I   ^ 2 +   i | 4 I J 4 I m 4 ·   i | 2 r ˜ 4 I   ^ 2 +   i | 5 I J 5 I m 5 ·   i | 2 r ˜ 5 I   ^ 2 +   i | 6 I J 6 I m 6 ·   i | 2 r ˜ 6 I   ^ 2 +   i | 7 I J 7 I m 7 ·   i | 2 r ˜ 7 I   ^ 2 +   i | 8 I J 8 I m 8 ·   i | 2 r ˜ 8 I   ^ 2 +   i | 9 I J 9 I m 9 ·   i | 2 r ˜ 9 I   ^ 2 ·   i | 1 n 2 M [ 2 ] [ 3 ] =   i | 1 n 2 T ·   i | 3 I J 3 I m 3 ·   i | 2 r ˜ 3 I ·   i | 3 r ˜ 3 I +   i | 4 I J 4 I m 4 ·   i | 2 r ˜ 4 I ·   i | 3 r ˜ 4 I +   i | 5 I J 5 I m 5 ·   i | 2 r ˜ 5 I ·   i | 3 r ˜ 5 I +   i | 6 I J 6 I m 6 ·   i | 2 r ˜ 6 I ·   i | 3 r ˜ 6 I +   i | 7 I J 7 I m 7 ·   i | 2 r ˜ 7 I ·   i | 3 r ˜ 7 I +   i | 8 I J 8 I m 8 ·   i | 2 r ˜ 8 I ·   i | 3 r ˜ 8 I +   i | 9 I J 9 I m 9 ·   i | 2 r ˜ 9 I ·   i | 3 r ˜ 9 I ·   i | 2 n 3 M [ 2 ] [ 4 ] =   i | 1 n 2 T ·   i | 4 I J 4 I m 4 ·   i | 2 r ˜ 4 I ·   i | 4 r ˜ 4 I +   i | 5 I J 5 I m 5 ·   i | 2 r ˜ 5 I ·   i | 4 r ˜ 5 I +   i | 6 I J 6 I m 6 ·   i | 2 r ˜ 6 I ·   i | 4 r ˜ 6 I ·   i | 3 n 4 M [ 2 ] [ 5 ] =   i | 1 n 2 T ·   i | 5 I J 5 I m 5 ·   i | 2 r ˜ 5 I ·   i | 5 r ˜ 5 I +   i | 6 I J 6 I m 6 ·   i | 2 r ˜ 6 I ·   i | 5 r ˜ 6 I ·   i | 4 n 5 M [ 2 ] [ 6 ] =   i | 1 n 2 T ·   i | 6 I J 6 I m 6 ·   i | 2 r ˜ 6 I ·   i | 6 r ˜ 6 I ·   i | 5 n 6 M [ 2 ] [ 7 ] =   i | 1 n 2 T ·   i | 7 I J 7 I m 7 ·   i | 2 r ˜ 7 I ·   i | 7 r ˜ 7 I +   i | 8 I J 8 I m 8 ·   i | 2 r ˜ 8 I ·   i | 7 r ˜ 8 I +   i | 9 I J 9 I m 9 ·   i | 2 r ˜ 9 I ·   i | 7 r ˜ 9 I ·   i | 3 n 7 M [ 2 ] [ 8 ] =   i | 1 n 2 T ·   i | 8 I J 8 I m 8 ·   i | 2 r ˜ 8 I ·   i | 8 r ˜ 8 I +   i | 9 I J 9 I m 9 ·   i | 2 r ˜ 9 I ·   i | 8 r ˜ 9 I ·   i | 7 n 8 M [ 2 ] [ 9 ] =   i | 1 n 2 T ·   i | 9 I J 9 I m 9 ·   i | 2 r ˜ 9 I ·   i | 9 r ˜ 9 I ·   i | 8 n 9
M [ 3 ] [ 3 ] =   i | 2 n 3 T ·   i | 3 I J 3 I m 3 ·   i | 3 r ˜   ^ 2 3 I +   i | 4 I J 4 I m 4 ·   i | 3 r ˜   ^ 2 4 I +   i | 5 I J 5 I m 5 ·   i | 3 r ˜   ^ 2 5 I +   i | 6 I J 6 I m 6 ·   i | 3 r ˜   ^ 2 6 I +   i | 7 I J 7 I m 7 ·   i | 3 r ˜   ^ 2 7 I +   i | 8 I J 8 I m 8 ·   i | 3 r ˜   ^ 2 8 I +   i | 9 I J 9 I m 9 ·   i | 3 r ˜   ^ 2 9 I ·   i | 2 n 3 M [ 3 ] [ 4 ] =   i | 2 n 3 T ·   i | 4 I J 4 I m 4 ·   i | 3 r ˜   4 I ·   i | 4 r ˜ 4 I +   i | 5 I J 5 I m 5 ·   i | 3 r ˜   5 I ·   i | 4 r ˜ 5 I +   i | 6 I J 6 I m 6 ·   i | 3 r ˜   6 I ·   i | 4 r ˜ 6 I ·   i | 3 n 4 M [ 3 ] [ 5 ] =   i | 2 n 3 T ·   i | 5 I J 5 I m 5 ·   i | 3 r ˜   5 I ·   i | 5 r ˜ 5 I +   i | 6 I J 6 I m 6 ·   i | 3 r ˜   6 I ·   i | 5 r ˜ 6 I ·   i | 4 n 5 M [ 3 ] [ 6 ] =   i | 2 n 3 T ·   i | 6 I J 6 I m 6 ·   i | 3 r ˜   6 I ·   i | 6 r ˜ 6 I ·   i | 5 n 6 M [ 3 ] [ 7 ] =   i | 2 n 3 T ·   i | 7 I J 7 I m 7 ·   i | 3 r ˜   7 I ·   i | 7 r ˜ 7 I +   i | 8 I J 8 I m 8 ·   i | 3 r ˜   8 I ·   i | 7 r ˜ 8 I +   i | 9 I J 9 I m 9 ·   i | 3 r ˜   9 I ·   i | 7 r ˜ 9 I ·   i | 3 n 7 M [ 3 ] [ 8 ] =   i | 2 n 3 T ·   i | 8 I J 8 I m 8 ·   i | 3 r ˜   8 I ·   i | 8 r ˜ 8 I +   i | 9 I J 9 I m 9 ·   i | 3 r ˜   9 I ·   i | 8 r ˜ 9 I ·   i | 7 n 8 M [ 3 ] [ 9 ] =   i | 2 n 3 T ·   i | 9 I J 9 I m 9 ·   i | 3 r ˜   9 I ·   i | 9 r ˜ 9 I ·   i | 8 n 9
M [ 4 ] [ 4 ] =   i | 3 n 4 T ·   i | 4 I J 4 I m 4 ·   i | 4 r ˜   ^ 2 4 I +   i | 5 I J 5 I m 5 ·   i | 4 r ˜   ^ 2 5 I +   i | 6 I J 6 I m 6 ·   i | 4 r ˜   ^ 2 6 I ·   i | 3 n 4 M [ 4 ] [ 5 ] =   i | 3 n 4 T ·   i | 5 I J 5 I m 5 ·   i | 4 r ˜   5 I ·   i | 5 r ˜   5 I +   i | 6 I J 6 I m 6 ·   i | 4 r ˜   6 I ·   i | 5 r ˜   6 I ·   i | 4 n 5 M [ 4 ] [ 6 ] =   i | 3 n 4 T ·   i | 6 I J 6 I m 6 ·   i | 4 r ˜   6 I ·   i | 6 r ˜   6 I ·   i | 5 n 6 M [ 4 ] [ 7 ] = 0 M [ 4 ] [ 8 ] = 0 M [ 4 ] [ 9 ] = 0
m [ 5 ] [ 5 ] =   i | 4 n 5 T ·   i | 5 I J 5 I m 5 ·   i | 5 r ˜   ^ 2 5 I +   i | 6 I J 6 I m 6 ·   i | 5 r ˜   ^ 2 6 I ·   i | 4 n 5 m [ 5 ] [ 6 ] =   i | 4 n 5 T ·   i | 6 I J 6 I m 6 ·   i | 5 r ˜   6 I ·   i | 6 r ˜   6 I ·   i | 5 n 6 m [ 5 ] [ 7 ] = 0 m [ 5 ] [ 8 ] = 0 m [ 5 ] [ 9 ] = 0
m [ 6 ] [ 6 ] =   i | 5 n 6 T ·   i | 6 I J 6 I m 6 ·   i | 6 r ˜   ^ 2 6 I ·   i | 5 n 6 m [ 6 ] [ 7 ] = 0 m [ 6 ] [ 8 ] = 0 m [ 6 ] [ 9 ] = 0
m [ 7 ] [ 7 ] =   i | 3 n 7 T ·   i | 7 I J 7 I m 7 ·   i | 7 r ˜ 7 I   ^ 2 +   i | 8 I J 8 I m 8 ·   i | 7 r ˜   ^ 2 8 I +   i | 9 I J 9 I m 9 ·   i | 7 r ˜   ^ 2 9 I ·   i | 3 n 7 m [ 7 ] [ 8 ] =   i | 3 n 7 T ·   i | 8 I J 8 I m 8 ·   i | 7 r ˜   8 I ·   i | 8 r ˜   8 I +   i | 9 I J 9 I m 9 ·   i | 7 r ˜   9 I ·   i | 8 r ˜   9 I ·   i | 7 n 8 m [ 7 ] [ 9 ] =   i | 3 n 7 T ·   i | 9 I J 9 I m 9 ·   i | 7 r ˜   9 I ·   i | 9 r ˜   9 I ·   i | 8 n 9
m [ 8 ] [ 8 ] =   i | 7 n 8 T ·   i | 8 I J 8 I m 8 ·   i | 8 r ˜   ^ 2 8 I +   i | 9 I J 9 I m 9 ·   i | 8 r ˜   ^ 2 9 I ·   i | 7 n 8 m [ 8 ] [ 9 ] =   i | 7 n 8 T ·   i | 9 I J 9 I m 9 ·   i | 8 r ˜   9 I ·   i | 9 r ˜   9 I ·   i | 8 n 9
m [ 9 ] [ 9 ] =   i | 8 n 9 T ·   i | 9 I J 9 I m 9 ·   i | 9 r ˜   ^ 2 9 I ·   i | 8 n 9
  • The explicit expressions of the bias force vector h[·] of the left arm and the right arm of the free-floating dual-arm space robot with symmetrical tree-chain topology are very similar. Since we are limited by the length of the article, the following are only the explicit expressions of the corresponding elements of the base and the left arm in the h[·] vector in Equation (19).
h   [ 1 ] =   i n 1 T · m 1 ·   i | 1 r ˜ 1 I ·   i ϕ ˜ ˙ 1   ^ 2 ·   i | 1 r 1 I +   i n 1 T · m 2 ·   i | 1 r ˜ 2 I ·   i ϕ ˜ ˙ 1   ^ 2 ·   i | 1 r 2 +   i ϕ ˜ ˙ 2   ^ 2 ·   i | 2 r 2 I +   i n 1 T · m 3 ·   i | 1 r ˜ 3 I ·   i ϕ ˜ ˙ 1   ^ 2 ·   i | 1 r 2 +   i ϕ ˜ ˙ 2   ^ 2 ·   i | 2 r 3 +   i ϕ ˜ ˙ 3   ^ 2 ·   i | 3 r 3 I +   i n 1 T · m 4 ·   i | 1 r ˜ 4 I ·   i ϕ ˜ ˙ 1   ^ 2 ·   i | 1 r 2 +   i ϕ ˜ ˙ 2   ^ 2 ·   i | 2 r 3 +   i ϕ ˜ ˙ 3   ^ 2 ·   i | 3 r 4 +   i ϕ ˜ ˙ 4   ^ 2 ·   i | 4 r 4 I +   i n 1 T · m 5 ·   i | 1 r ˜ 5 I ·   i ϕ ˜ ˙ 1   ^ 2 ·   i | 1 r 2 +   i ϕ ˜ ˙ 2   ^ 2 ·   i | 2 r 3 +   i ϕ ˜ ˙ 3   ^ 2 ·   i | 3 r 4 +   i ϕ ˜ ˙ 4   ^ 2 ·   i | 4 r 5 +   i ϕ ˜ ˙ 5   ^ 2 ·   i | 5 r 5 I +   i n 1 T · m 6 ·   i | 1 r ˜ 6 I ·   i ϕ ˜ ˙ 1   ^ 2 ·   i | 1 r 2 +   i ϕ ˜ ˙ 2   ^ 2 ·   i | 2 r 3 +   i ϕ ˜ ˙ 3   ^ 2 ·   i | 3 r 4 +   i ϕ ˜ ˙ 4   ^ 2 ·   i | 4 r 5 +   i ϕ ˜ ˙ 5   ^ 2 ·   i | 5 r 6 +   i ϕ ˜ ˙ 6   ^ 2 ·   i | 6 r 6 I +   i n 1 T · m 7 ·   i | 1 r ˜ 7 I ·   i ϕ ˜ ˙ 1   ^ 2 ·   i | 1 r 2 +   i ϕ ˜ ˙ 2   ^ 2 ·   i | 2 r 3 +   i ϕ ˜ ˙ 3   ^ 2 ·   i | 3 r 7 +   i ϕ ˜ ˙ 7   ^ 2 ·   i | 7 r 7 I +   i n 1 T · m 8 ·   i | 1 r ˜ 8 I ·   i ϕ ˜ ˙ 1   ^ 2 ·   i | 1 r 2 +   i ϕ ˜ ˙ 2   ^ 2 ·   i | 2 r 3 +   i ϕ ˜ ˙ 3   ^ 2 ·   i | 3 r 7 +   i ϕ ˜ ˙ 7   ^ 2 ·   i | 7 r 8 +   i ϕ ˜ ˙ 8   ^ 2 ·   i | 8 r 8 I +   i n 1 T · m 9 ·   i | 1 r ˜ 9 I ·   i ϕ ˜ ˙ 1   ^ 2 ·   i | 1 r 2 +   i ϕ ˜ ˙ 2   ^ 2 ·   i | 2 r 3 +   i ϕ ˜ ˙ 3   ^ 2 ·   i | 3 r 7 +   i ϕ ˜ ˙ 7   ^ 2 ·   i | 7 r 8 +   i ϕ ˜ ˙ 8   ^ 2 ·   i | 8 r 9 +   i ϕ ˜ ˙ 9   ^ 2 ·   i | 9 r 9 I +   i n 1 T ·   i ϕ ˜ ˙ 1 ·   i | 1 I J 1 I ·   i ϕ ˙ 1 +   i ϕ ˜ ˙ 2 ·   i | 2 I J 2 I ·   i ϕ ˙ 2 +   i ϕ ˜ ˙ 3 ·   i | 3 I J 3 I ·   i ϕ ˙ 3 +   i ϕ ˜ ˙ 4 ·   i | 4 I J 4 I ·   i ϕ ˙ 4 +   i ϕ ˜ ˙ 5 ·   i | 5 I J 5 I ·   i ϕ ˙ 5 +   i ϕ ˜ ˙ 6 ·   i | 6 I J 6 I ·   i ϕ ˙ 6 +   i ϕ ˜ ˙ 7 ·   i | 7 I J 7 I ·   i ϕ ˙ 7 +   i ϕ ˜ ˙ 8 ·   i | 8 I J 8 I ·   i ϕ ˙ 8 +   i ϕ ˜ ˙ 9 ·   i | 9 I J 9 I ·   i ϕ ˙ 9 +   i n 1 T ·   i | 2 I J 2 I m 2 ·   i | 1 r ˜ 2 I ·   i | 2 r ˜ 2 I +   i | 3 I J 3 I m 3 ·   i | 1 r ˜ 3 I ·   i | 2 r ˜ 3 I +   i | 4 I J 4 I m 4 ·   i | 1 r ˜ 4 I ·   i | 2 r ˜ 4 I +   i | 5 I J 5 I m 5 ·   i | 1 r ˜ 5 I ·   i | 2 r ˜ 5 I +   i | 6 I J 6 I m 6 ·   i | 1 r ˜ 6 I ·   i | 2 r ˜ 6 I +   i | 7 I J 7 I m 7 ·   i | 1 r ˜ 7 I ·   i | 2 r ˜ 7 I +   i | 8 I J 8 I m 8 ·   i | 1 r ˜ 8 I ·   i | 2 r ˜ 8 I +   i | 9 I J 9 I m 9 ·   i | 1 r ˜ 9 I ·   i | 2 r ˜ 9 I ·   i ϕ ˜ ˙ 1 ·   i | 1 ϕ ˙ 2 +   i n 1 T ·   i | 3 I J 3 I m 3 ·   i | 1 r ˜ 3 I ·   i | 3 r ˜ 3 I +   i | 4 I J 4 I m 4 ·   i | 1 r ˜ 4 I ·   i | 3 r ˜ 4 I +   i | 5 I J 5 I m 5 ·   i | 1 r ˜ 5 I ·   i | 3 r ˜ 5 I +   i | 6 I J 6 I m 6 ·   i | 1 r ˜ 6 I ·   i | 3 r ˜ 6 I +   i | 7 I J 7 I m 7 ·   i | 1 r ˜ 7 I ·   i | 3 r ˜ 7 I +   i | 8 I J 8 I m 8 ·   i | 1 r ˜ 8 I ·   i | 3 r ˜ 8 I +   i | 9 I J 9 I m 9 ·   i | 1 r ˜ 9 I ·   i | 3 r ˜ 9 I ·   i ϕ ˜ ˙ 2 ·   i | 2 ϕ ˙ 3 +   i n 1 T ·   i | 4 I J 4 I m 4 ·   i | 1 r ˜ 4 I ·   i | 4 r ˜ 4 I +   i | 5 I J 5 I m 5 ·   i | 1 r ˜ 5 I ·   i | 4 r ˜ 5 I +   i | 6 I J 6 I m 6 ·   i | 1 r ˜ 6 I ·   i | 4 r ˜ 6 I ·   i ϕ ˜ ˙ 3 ·   i | 3 ϕ ˙ 4 +   i n 1 T ·   i | 5 I J 5 I m 5 ·   i | 1 r ˜ 5 I ·   i | 5 r ˜ 5 I +   i | 6 I J 6 I m 6 ·   i | 1 r ˜ 6 I ·   i | 5 r ˜ 6 I ·   i ϕ ˜ ˙ 4 ·   i | 4 ϕ ˙ 5 +   i n 1 T ·   i | 6 I J 6 I m 6 ·   i | 1 r ˜ 6 I ·   i | 6 r ˜ 6 I ·   i ϕ ˜ ˙ 5 ·   i | 5 ϕ ˙ 6 +   i n 1 T ·   i | 7 I J 7 I m 7 ·   i | 1 r ˜ 7 I ·   i | 7 r ˜ 7 I +   i | 8 I J 8 I m 8 ·   i | 1 r ˜ 8 I ·   i | 7 r ˜ 8 I +   i | 9 I J 9 I m 9 ·   i | 1 r ˜ 9 I ·   i | 7 r ˜ 9 I ·   i ϕ ˜ ˙ 3 ·   i | 3 ϕ ˙ 7 +   i n 1 T ·   i | 8 I J 8 I m 8 ·   i | 1 r ˜ 8 I ·   i | 8 r ˜ 8 I +   i | 9 I J 9 I m 9 ·   i | 1 r ˜ 9 I ·   i | 8 r ˜ 9 I ·   i ϕ ˜ ˙ 7 ·   i | 7 ϕ ˙ 8 +   i n 1 T ·   i | 9 I J 9 I m 9 ·   i | 1 r ˜ 9 I ·   i | 9 r ˜ 9 I ·   i ϕ ˜ ˙ 8 ·   i | 8 ϕ ˙ 9
h   [ 2 ] =   i | 1 n 2 T · m 2 ·   i | 2 r ˜ 2 I ·   i ϕ ˜ ˙ 1   ^ 2 ·   i | 1 r 2 +   i ϕ ˜ ˙ 2   ^ 2 ·   i | 2 r 2 I +   i | 1 n 2 T · m 3 ·   i | 2 r ˜ 3 I ·   i ϕ ˜ ˙ 1   ^ 2 ·   i | 1 r 2 +   i ϕ ˜ ˙ 2   ^ 2 ·   i | 2 r 3 +   i ϕ ˜ ˙ 3   ^ 2 ·   i | 3 r 3 I +   i | 1 n 2 T · m 4 ·   i | 2 r ˜ 4 I ·   i ϕ ˜ ˙ 1   ^ 2 ·   i | 1 r 2 +   i ϕ ˜ ˙ 2   ^ 2 ·   i | 2 r 3 +   i ϕ ˜ ˙ 3   ^ 2 ·   i | 3 r 4 +   i ϕ ˜ ˙ 4   ^ 2 ·   i | 4 r 4 I +   i | 1 n 2 T · m 5 ·   i | 2 r ˜ 5 I ·   i ϕ ˜ ˙ 1   ^ 2 ·   i | 1 r 2 +   i ϕ ˜ ˙ 2   ^ 2 ·   i | 2 r 3 +   i ϕ ˜ ˙ 3   ^ 2 ·   i | 3 r 4 +   i ϕ ˜ ˙ 4   ^ 2 ·   i | 4 r 5 +   i ϕ ˜ ˙ 5   ^ 2 ·   i | 5 r 5 I +   i | 1 n 2 T · m 6 ·   i | 2 r ˜ 6 I ·   i ϕ ˜ ˙ 1   ^ 2 ·   i | 1 r 2 +   i ϕ ˜ ˙ 2   ^ 2 ·   i | 2 r 3 +   i ϕ ˜ ˙ 3   ^ 2 ·   i | 3 r 4 +   i ϕ ˜ ˙ 4   ^ 2 ·   i | 4 r 5 +   i ϕ ˜ ˙ 5   ^ 2 ·   i | 5 r 6 +   i ϕ ˜ ˙ 6   ^ 2 ·   i | 6 r 6 I +   i | 1 n 2 T · m 7 ·   i | 2 r ˜ 7 I ·   i ϕ ˜ ˙ 1   ^ 2 ·   i | 1 r 2 +   i ϕ ˜ ˙ 2   ^ 2 ·   i | 2 r 3 +   i ϕ ˜ ˙ 3   ^ 2 ·   i | 3 r 7 +   i ϕ ˜ ˙ 7   ^ 2 ·   i | 7 r 7 I +   i | 1 n 2 T · m 8 ·   i | 2 r ˜ 8 I ·   i ϕ ˜ ˙ 1   ^ 2 ·   i | 1 r 2 +   i ϕ ˜ ˙ 2   ^ 2 ·   i | 2 r 3 +   i ϕ ˜ ˙ 3   ^ 2 ·   i | 3 r 7 +   i ϕ ˜ ˙ 7   ^ 2 ·   i | 7 r 8 +   i ϕ ˜ ˙ 8   ^ 2 ·   i | 8 r 8 I +   i | 1 n 2 T · m 9 ·   i | 2 r ˜ 9 I ·   i ϕ ˜ ˙ 1   ^ 2 ·   i | 1 r 2 +   i ϕ ˜ ˙ 2   ^ 2 ·   i | 2 r 3 +   i ϕ ˜ ˙ 3   ^ 2 ·   i | 3 r 7 +   i ϕ ˜ ˙ 7   ^ 2 ·   i | 7 r 8 +   i ϕ ˜ ˙ 8   ^ 2 ·   i | 8 r 9 +   i ϕ ˜ ˙ 9   ^ 2 ·   i | 9 r 9 I +   i | 1 n 2 T ·   i ϕ ˜ ˙ 2 ·   i | 2 I J 2 I ·   i ϕ ˙ 2 +   i ϕ ˜ ˙ 3 ·   i | 3 I J 3 I ·   i ϕ ˙ 3 +   i ϕ ˜ ˙ 4 ·   i | 4 I J 4 I ·   i ϕ ˙ 4 +   i ϕ ˜ ˙ 5 ·   i | 5 I J 5 I ·   i ϕ ˙ 5 +   i ϕ ˜ ˙ 6 ·   i | 6 I J 6 I ·   i ϕ ˙ 6 +   i ϕ ˜ ˙ 7 ·   i | 7 I J 7 I ·   i ϕ ˙ 7 +   i ϕ ˜ ˙ 8 ·   i | 8 I J 8 I ·   i ϕ ˙ 8 +   i ϕ ˜ ˙ 9 ·   i | 9 I J 9 I ·   i ϕ ˙ 9 +   i | 1 n 2 T ·   i | 2 I J 2 I m 2 ·   i | 2 r ˜   ^ 2 2 I +   i | 3 I J 3 I m 3 ·   i | 2 r ˜   ^ 2 3 I +   i | 4 I J 4 I m 4 ·   i | 2 r ˜   ^ 2 4 I +   i | 5 I J 5 I m 5 ·   i | 2 r ˜   ^ 2 5 I +   i | 6 I J 6 I m 6 ·   i | 2 r ˜   ^ 2 6 I +   i | 7 I J 7 I m 7 ·   i | 2 r ˜   ^ 2 7 I +   i | 8 I J 8 I m 8 ·   i | 2 r ˜   ^ 2 8 I +   i | 9 I J 9 I m 9 ·   i | 2 r ˜   ^ 2 9 I ·   i ϕ ˜ ˙ 1 ·   i | 1 ϕ ˙ 2 +   i | 1 n 2 T ·   i | 3 I J 3 I m 3 ·   i | 2 r ˜ 3 I ·   i | 3 r ˜ 3 I +   i | 4 I J 4 I m 4 ·   i | 2 r ˜ 4 I ·   i | 3 r ˜ 4 I +   i | 5 I J 5 I m 5 ·   i | 2 r ˜ 5 I ·   i | 3 r ˜ 5 I +   i | 6 I J 6 I m 6 ·   i | 2 r ˜ 6 I ·   i | 3 r ˜ 6 I +   i | 7 I J 7 I m 7 ·   i | 2 r ˜ 7 I ·   i | 3 r ˜ 7 I +   i | 8 I J 8 I m 8 ·   i | 2 r ˜ 8 I ·   i | 3 r ˜ 8 I +   i | 9 I J 9 I m 9 ·   i | 2 r ˜ 9 I ·   i | 3 r ˜ 9 I ·   i ϕ ˜ ˙ 2 ·   i | 2 ϕ ˙ 3 +   i | 1 n 2 T ·   i | 4 I J 4 I m 4 ·   i | 2 r ˜ 4 I ·   i | 4 r ˜ 4 I +   i | 5 I J 5 I m 5 ·   i | 2 r ˜ 5 I ·   i | 4 r ˜ 5 I +   i | 6 I J 6 I m 6 ·   i | 2 r ˜ 6 I ·   i | 4 r ˜ 6 I ·   i ϕ ˜ ˙ 3 ·   i | 3 ϕ ˙ 4 +   i | 1 n 2 T ·   i | 5 I J 5 I m 5 ·   i | 2 r ˜ 5 I ·   i | 5 r ˜ 5 I +   i | 6 I J 6 I m 6 ·   i | 2 r ˜ 6 I ·   i | 5 r ˜ 6 I ·   i ϕ ˜ ˙ 4 ·   i | 4 ϕ ˙ 5 +   i | 1 n 2 T ·   i | 6 I J 6 I m 6 ·   i | 2 r ˜ 6 I ·   i | 6 r ˜ 6 I ·   i ϕ ˜ ˙ 5 ·   i | 5 ϕ ˙ 6 +   i | 1 n 2 T ·   i | 7 I J 7 I m 7 ·   i | 2 r ˜ 7 I ·   i | 7 r ˜ 7 I +   i | 8 I J 8 I m 8 ·   i | 2 r ˜ 8 I ·   i | 7 r ˜ 8 I +   i | 9 I J 9 I m 9 ·   i | 2 r ˜ 9 I ·   i | 7 r ˜ 9 I ·   i ϕ ˜ ˙ 3 ·   i | 3 ϕ ˙ 7 +   i | 1 n 2 T ·   i | 8 I J 8 I m 8 ·   i | 2 r ˜ 8 I ·   i | 8 r ˜ 8 I +   i | 9 I J 9 I m 9 ·   i | 2 r ˜ 9 I ·   i | 8 r ˜ 9 I ·   i ϕ ˜ ˙ 7 ·   i | 7 ϕ ˙ 8 +   i | 1 n 2 T ·   i | 9 I J 9 I m 9 ·   i | 2 r ˜ 9 I ·   i | 9 r ˜ 9 I ·   i ϕ ˜ ˙ 8 ·   i | 8 ϕ ˙ 9
  h [ 3 ] =   i | 2 n 3 T · m 3 ·   i | 3 r ˜ 3 I ·   i ϕ ˜ ˙ 1   ^ 2 ·   i | 1 r 2 +   i ϕ ˜ ˙ 2   ^ 2 ·   i | 2 r 3 +   i ϕ ˜ ˙ 3   ^ 2 ·   i | 3 r 3 I +   i | 2 n 3 T · m 4 ·   i | 3 r ˜ 4 I ·   i ϕ ˜ ˙ 1   ^ 2 ·   i | 1 r 2 +   i ϕ ˜ ˙ 2   ^ 2 ·   i | 2 r 3 +   i ϕ ˜ ˙ 3   ^ 2 ·   i | 3 r 4 +   i ϕ ˜ ˙ 4   ^ 2 ·   i | 4 r 4 I +   i | 2 n 3 T · m 5 ·   i | 3 r ˜ 5 I ·   i ϕ ˜ ˙ 1   ^ 2 ·   i | 1 r 2 +   i ϕ ˜ ˙ 2   ^ 2 ·   i | 2 r 3 +   i ϕ ˜ ˙ 3   ^ 2 ·   i | 3 r 4 +   i ϕ ˜ ˙ 4   ^ 2 ·   i | 4 r 5 +   i ϕ ˜ ˙ 5   ^ 2 ·   i | 5 r 5 I +   i | 2 n 3 T · m 6 ·   i | 3 r ˜ 6 I ·   i ϕ ˜ ˙ 1   ^ 2 ·   i | 1 r 2 +   i ϕ ˜ ˙ 2   ^ 2 ·   i | 2 r 3 +   i ϕ ˜ ˙ 3   ^ 2 ·   i | 3 r 4 +   i ϕ ˜ ˙ 4   ^ 2 ·   i | 4 r 5 +   i ϕ ˜ ˙ 5   ^ 2 ·   i | 5 r 6 +   i ϕ ˜ ˙ 6   ^ 2 ·   i | 6 r 6 I +   i | 2 n 3 T · m 7 ·   i | 3 r ˜ 7 I ·   i ϕ ˜ ˙ 1   ^ 2 ·   i | 1 r 2 +   i ϕ ˜ ˙ 2   ^ 2 ·   i | 2 r 3 +   i ϕ ˜ ˙ 3   ^ 2 ·   i | 3 r 7 +   i ϕ ˜ ˙ 7   ^ 2 ·   i | 7 r 7 I +   i | 2 n 3 T · m 8 ·   i | 3 r ˜ 8 I ·   i ϕ ˜ ˙ 1   ^ 2 ·   i | 1 r 2 +   i ϕ ˜ ˙ 2   ^ 2 ·   i | 2 r 3 +   i ϕ ˜ ˙ 3   ^ 2 ·   i | 3 r 7 +   i ϕ ˜ ˙ 7   ^ 2 ·   i | 7 r 8 +   i ϕ ˜ ˙ 8   ^ 2 ·   i | 8 r 8 I +   i | 2 n 3 T · m 9 ·   i | 3 r ˜ 9 I ·   i ϕ ˜ ˙ 1   ^ 2 ·   i | 1 r 2 +   i ϕ ˜ ˙ 2   ^ 2 ·   i | 2 r 3 +   i ϕ ˜ ˙ 3   ^ 2 ·   i | 3 r 7 +   i ϕ ˜ ˙ 7   ^ 2 ·   i | 7 r 8 +   i ϕ ˜ ˙ 8   ^ 2 ·   i | 8 r 9 +   i ϕ ˜ ˙ 9   ^ 2 ·   i | 9 r 9 I +   i | 2 n 3 T ·   i ϕ ˜ ˙ 3 ·   i | 3 I J 3 I ·   i ϕ ˙ 3 +   i ϕ ˜ ˙ 4 ·   i | 4 I J 4 I ·   i ϕ ˙ 4 +   i ϕ ˜ ˙ 5 ·   i | 5 I J 5 I ·   i ϕ ˙ 5 +   i ϕ ˜ ˙ 6 ·   i | 6 I J 6 I ·   i ϕ ˙ 6 +   i ϕ ˜ ˙ 7 ·   i | 7 I J 7 I ·   i ϕ ˙ 7 +   i ϕ ˜ ˙ 8 ·   i | 8 I J 8 I ·   i ϕ ˙ 8 +   i ϕ ˜ ˙ 9 ·   i | 9 I J 9 I ·   i ϕ ˙ 9 +   i | 2 n 3 T ·   i | 3 I J 3 I m 3 ·   i | 3 r ˜   3 I ·   i | 2 r ˜   3 I +   i | 4 I J 4 I m 4 ·   i | 3 r ˜   4 I ·   i | 2 r ˜   4 I +   i | 5 I J 5 I m 5 ·   i | 3 r ˜   5 I ·   i | 2 r ˜   5 I +   i | 6 I J 6 I m 6 ·   i | 3 r ˜   6 I ·   i | 2 r ˜   6 I +   i | 7 I J 7 I m 7 ·   i | 3 r ˜   7 I ·   i | 2 r ˜   7 I +   i | 8 I J 8 I m 8 ·   i | 3 r ˜   8 I ·   i | 2 r ˜   8 I +   i | 9 I J 9 I m 9 ·   i | 3 r ˜   9 I ·   i | 2 r ˜   9 I ·   i ϕ ˜ ˙ 1 ·   i | 1 ϕ ˙ 2 +   i | 2 n 3 T ·   i | 3 I J 3 I m 3 ·   i | 3 r ˜   ^ 2 3 I +   i | 4 I J 4 I m 4 ·   i | 3 r ˜   ^ 2 4 I +   i | 5 I J 5 I m 5 ·   i | 3 r ˜   ^ 2 5 I +   i | 6 I J 6 I m 6 ·   i | 3 r ˜   ^ 2 6 I +   i | 7 I J 7 I m 7 ·   i | 3 r ˜   ^ 2 7 I +   i | 8 I J 8 I m 8 ·   i | 3 r ˜   ^ 2 8 I +   i | 9 I J 9 I m 9 ·   i | 3 r ˜   ^ 2 9 I ·   i ϕ ˜ ˙ 2 ·   i | 2 ϕ ˙ 3 +   i | 2 n 3 T ·   i | 4 I J 4 I m 4 ·   i | 3 r ˜ 4 I ·   i | 4 r ˜ 4 I +   i | 5 I J 5 I m 5 ·   i | 3 r ˜ 5 I ·   i | 4 r ˜ 5 I +   i | 6 I J 6 I m 6 ·   i | 3 r ˜ 6 I ·   i | 4 r ˜ 6 I ·   i ϕ ˜ ˙ 3 ·   i | 3 ϕ ˙ 4 +   i | 2 n 3 T ·   i | 5 I J 5 I m 5 ·   i | 3 r ˜ 5 I ·   i | 5 r ˜ 5 I +   i | 6 I J 6 I m 6 ·   i | 3 r ˜ 6 I ·   i | 5 r ˜ 6 I ·   i ϕ ˜ ˙ 4 ·   i | 4 ϕ ˙ 5 +   i | 2 n 3 T ·   i | 6 I J 6 I m 6 ·   i | 3 r ˜ 6 I ·   i | 6 r ˜ 6 I ·   i ϕ ˜ ˙ 5 ·   i | 5 ϕ ˙ 6 +   i | 2 n 3 T ·   i | 7 I J 7 I m 7 ·   i | 3 r ˜ 7 I ·   i | 7 r ˜ 7 I +   i | 8 I J 8 I m 8 ·   i | 3 r ˜ 8 I ·   i | 7 r ˜ 8 I +   i | 9 I J 9 I m 9 ·   i | 3 r ˜ 9 I ·   i | 7 r ˜ 9 I ·   i ϕ ˜ ˙ 3 ·   i | 3 ϕ ˙ 7 +   i | 2 n 3 T ·   i | 8 I J 8 I m 8 ·   i | 3 r ˜ 8 I ·   i | 8 r ˜ 8 I +   i | 9 I J 9 I m 9 ·   i | 3 r ˜ 9 I ·   i | 8 r ˜ 9 I ·   i ϕ ˜ ˙ 7 ·   i | 7 ϕ ˙ 8 +   i | 2 n 3 T ·   i | 9 I J 9 I m 9 ·   i | 3 r ˜ 9 I ·   i | 9 r ˜ 9 I ·   i ϕ ˜ ˙ 8 ·   i | 8 ϕ ˙ 9
h   [ 4 ] =   i | 3 n 4 T · m 4 ·   i | 4 r ˜ 4 I ·   i ϕ ˜ ˙ 1   ^ 2 ·   i | 1 r 2 +   i ϕ ˜ ˙ 2   ^ 2 ·   i | 2 r 3 +   i ϕ ˜ ˙ 3   ^ 2 ·   i | 3 r 4 +   i ϕ ˜ ˙ 4   ^ 2 ·   i | 4 r 4 I +   i | 3 n 4 T · m 5 ·   i | 4 r ˜ 5 I ·   i ϕ ˜ ˙ 1   ^ 2 ·   i | 1 r 2 +   i ϕ ˜ ˙ 2   ^ 2 ·   i | 2 r 3 +   i ϕ ˜ ˙ 3   ^ 2 ·   i | 3 r 4 +   i ϕ ˜ ˙ 4   ^ 2 ·   i | 4 r 5 +   i ϕ ˜ ˙ 5   ^ 2 ·   i | 5 r 5 I +   i | 3 n 4 T · m 6 ·   i | 4 r ˜ 6 I ·   i ϕ ˜ ˙ 1   ^ 2 ·   i | 1 r 2 +   i ϕ ˜ ˙ 2   ^ 2 ·   i | 2 r 3 +   i ϕ ˜ ˙ 3   ^ 2 ·   i | 3 r 4 +   i ϕ ˜ ˙ 4   ^ 2 ·   i | 4 r 5 +   i ϕ ˜ ˙ 5   ^ 2 ·   i | 5 r 6 +   i ϕ ˜ ˙ 6   ^ 2 ·   i | 6 r 6 I +   i | 3 n 4 T ·   i ϕ ˜ ˙ 4 ·   i | 4 I J 4 I ·   i ϕ ˙ 4 +   i ϕ ˜ ˙ 5 ·   i | 5 I J 5 I ·   i ϕ ˙ 5 +   i ϕ ˜ ˙ 6 ·   i | 6 I J 6 I ·   i ϕ ˙ 6 +   i | 3 n 4 T ·   i | 4 I J 4 I m 4 ·   i | 4 r ˜ 4 I ·   i | 2 r ˜ 4 I +   i | 5 I J 5 I m 5 ·   i | 4 r ˜ 5 I ·   i | 2 r ˜ 5 I +   i | 6 I J 6 I m 6 ·   i | 4 r ˜ 6 I ·   i | 2 r ˜ 6 I ·   i ϕ ˜ ˙ 1 ·   i | 1 ϕ ˙ 2 +   i | 3 n 4 T ·   i | 4 I J 4 I m 4 ·   i | 4 r ˜ 4 I ·   i | 3 r ˜ 4 I +   i | 5 I J 5 I m 5 ·   i | 4 r ˜ 5 I ·   i | 3 r ˜ 5 I +   i | 6 I J 6 I m 6 ·   i | 4 r ˜ 6 I ·   i | 3 r ˜ 6 I ·   i ϕ ˜ ˙ 2 ·   i | 2 ϕ ˙ 3 +   i | 3 n 4 T ·   i | 4 I J 4 I m 4 ·   i | 4 r ˜   ^ 2 4 I +   i | 5 I J 5 I m 5 ·   i | 4 r ˜   ^ 2 5 I +   i | 6 I J 6 I m 6 ·   i | 4 r ˜   ^ 2 6 I ·   i ϕ ˜ ˙ 3 ·   i | 3 ϕ ˙ 4 +   i | 3 n 4 T ·   i | 5 I J 5 I m 5 ·   i | 4 r ˜ 5 I ·   i | 5 r ˜ 5 I +   i | 6 I J 6 I m 6 ·   i | 4 r ˜ 6 I ·   i | 5 r ˜ 6 I ·   i ϕ ˜ ˙ 4 ·   i | 4 ϕ ˙ 5 +   i | 3 n 4 T ·   i | 6 I J 6 I m 6 ·   i | 4 r ˜ 6 I ·   i | 6 r ˜ 6 I ·   i ϕ ˜ ˙ 5 ·   i | 5 ϕ ˙ 6
h   [ 5 ] =   i | 4 n 5 T · m 5 ·   i | 5 r ˜ 5 I ·   i ϕ ˜ ˙ 1   ^ 2 ·   i | 1 r 2 +   i ϕ ˜ ˙ 2   ^ 2 ·   i | 2 r 3 +   i ϕ ˜ ˙ 3   ^ 2 ·   i | 3 r 4 +   i ϕ ˜ ˙ 4   ^ 2 ·   i | 4 r 5 +   i ϕ ˜ ˙ 5   ^ 2 ·   i | 5 r 5 I +   i | 4 n 5 T · m 6 ·   i | 5 r ˜ 6 I ·   i ϕ ˜ ˙ 1   ^ 2 ·   i | 1 r 2 +   i ϕ ˜ ˙ 2   ^ 2 ·   i | 2 r 3 +   i ϕ ˜ ˙ 3   ^ 2 ·   i | 3 r 4 +   i ϕ ˜ ˙ 4   ^ 2 ·   i | 4 r 5 +   i ϕ ˜ ˙ 5   ^ 2 ·   i | 5 r 6 +   i ϕ ˜ ˙ 6   ^ 2 ·   i | 6 r 6 I +   i | 4 n 5 T ·   i ϕ ˜ ˙ 5 ·   i | 5 I J 5 I ·   i ϕ ˙ 5 +   i ϕ ˜ ˙ 6 ·   i | 6 I J 6 I ·   i ϕ ˙ 6 +   i | 4 n 5 T ·   i | 5 I J 5 I m 5 ·   i | 5 r ˜ 5 I ·   i | 2 r ˜ 5 I +   i | 6 I J 6 I m 6 ·   i | 5 r ˜ 6 I ·   i | 2 r ˜ 6 I ·   i ϕ ˜ ˙ 1 ·   i | 1 ϕ ˙ 2 +   i | 4 n 5 T ·   i | 5 I J 5 I m 5 ·   i | 5 r ˜ 5 I ·   i | 3 r ˜ 5 I +   i | 6 I J 6 I m 6 ·   i | 5 r ˜ 6 I ·   i | 3 r ˜ 6 I ·   i ϕ ˜ ˙ 2 ·   i | 2 ϕ ˙ 3 +   i | 4 n 5 T ·   i | 5 I J 5 I m 5 ·   i | 5 r ˜   5 I ·   i | 4 r ˜   5 I +   i | 6 I J 6 I m 6 ·   i | 5 r ˜   6 I ·   i | 4 r ˜   6 I ·   i ϕ ˜ ˙ 3 ·   i | 3 ϕ ˙ 4 +   i | 4 n 5 T ·   i | 5 I J 5 I m 5 ·   i | 5 r ˜   ^ 2 5 I +   i | 6 I J 6 I m 6 ·   i | 5 r ˜   ^ 2 6 I ·   i ϕ ˜ ˙ 4 ·   i | 4 ϕ ˙ 5 +   i | 4 n 5 T ·   i | 6 I J 6 I m 6 ·   i | 5 r ˜ 6 I ·   i | 6 r ˜ 6 I ·   i ϕ ˜ ˙ 5 ·   i | 5 ϕ ˙ 6
h   [ 6 ] =   i | 5 n 6 T · m 6 ·   i | 6 r ˜ 6 I ·   i ϕ ˜ ˙ 1   ^ 2 ·   i | 1 r 2 +   i ϕ ˜ ˙ 2   ^ 2 ·   i | 2 r 3 +   i ϕ ˜ ˙ 3   ^ 2 ·   i | 3 r 4 +   i ϕ ˜ ˙ 4   ^ 2 ·   i | 4 r 5 +   i ϕ ˜ ˙ 5   ^ 2 ·   i | 5 r 6 +   i ϕ ˜ ˙ 6   ^ 2 ·   i | 6 r 6 I +   i | 5 n 6 T ·   i ϕ ˜ ˙ 6 ·   i | 6 I J 6 I ·   i ϕ ˙ 6 +   i | 5 n 6 T ·   i | 6 I J 6 I m 6 ·   i | 6 r ˜ 6 I ·   i | 2 r ˜ 6 I ·   i ϕ ˜ ˙ 1 ·   i | 1 ϕ ˙ 2 +   i | 5 n 6 T ·   i | 6 I J 6 I m 6 ·   i | 6 r ˜ 6 I ·   i | 3 r ˜ 6 I ·   i ϕ ˜ ˙ 2 ·   i | 2 ϕ ˙ 3 +   i | 5 n 6 T ·   i | 6 I J 6 I m 6 ·   i | 6 r ˜   6 I ·   i | 4 r ˜   6 I ·   i ϕ ˜ ˙ 3 ·   i | 3 ϕ ˙ 4 +   i | 5 n 6 T ·   i | 6 I J 6 I m 6 ·   i | 6 r ˜   6 I ·   i | 5 r ˜   6 I ·   i ϕ ˜ ˙ 4 ·   i | 4 ϕ ˙ 5 +   i | 5 n 6 T ·   i | 6 I J 6 I m 6 ·   i | 6 r ˜ 6 I   ^ 2 ·   i ϕ ˜ ˙ 5 ·   i | 5 ϕ ˙ 6

Appendix C

Proof of Theorem 2.
Since  m · I M , where m > 0 and M R a × a is a positive definite matrix, and K R a × a is a diagonal positive definite matrix, then the following equation holds:
m · I · K M · K
Since M is a positive definite matrix, then M 1 is also a positive definite matrix. According to Equation (A16), the following equation holds:
m · M 1 · K K
Since K R a × a is a diagonal positive definite matrix, then M 1 and K are interchangeable, so M 1 · K is also positive definite. According to Equation (A17), for any vector x R a , the following equation holds:
m · x T · M 1 · K · x x T · K · x
Proof done. □

References

  1. Zong, L.; Emami, M.R.; Luo, J. Reactionless Control of Free-Floating Space Manipulators. ITAES 2019, 56, 1490–1503. [Google Scholar] [CrossRef]
  2. Chu, X.; Hu, Q.; Zhang, J. Path Planning and Collision Avoidance for a Multi-Arm Space Maneuverable Robot. ITAES 2017, 54, 217–232. [Google Scholar] [CrossRef]
  3. Wang, D.; Huang, P.; Meng, Z. Coordinated stabilization of tumbling targets using tethered space manipulators. ITAES 2015, 51, 2420–2432. [Google Scholar] [CrossRef]
  4. Dou, B.; Yue, X. Disturbance observer-based fractional-order sliding mode control for free-floating space manipulator with disturbance. Aerosp. Sci. Technol. 2023, 132, 108061. [Google Scholar] [CrossRef]
  5. Meng, D.; Xu, H.; Xu, H.; Sun, H.; Liang, B. Trajectory tracking control for a cable-driven space manipulator using time-delay estimation and nonsingular terminal sliding mode. Control Eng. Pract. 2023, 139, 105649. [Google Scholar] [CrossRef]
  6. Wu, H.; Hu, Q.; Shi, Y.; Zheng, J.; Sun, K.; Wang, J. Space manipulator optimal impedance control using integral reinforcement learning. Aerosp. Sci. Technol. 2023, 139, 108388. [Google Scholar] [CrossRef]
  7. Jayakody, H.S.; Shi, L.; Katupitiya, J.; Kinkaid, N. Robust Adaptive Coordination Controller for a Spacecraft Equipped with a Robotic Manipulator. J. Guid. Control Dyn. 2016, 39, 2699–2711. [Google Scholar] [CrossRef]
  8. Sallaberger, C.; Force, S.P.T.; Agency, C.S. Canadian space robotic activities. Acta Astronaut. 1997, 41, 239–246. [Google Scholar] [CrossRef]
  9. Liu, Y.; Chen, Z.; Gao, J.; Gan, S.; Kang, E. High performance assembly of complex structural parts in special environments–research on space manipulator assisted module docking method. Robot. Intell. Autom. 2023, 43, 122–131. [Google Scholar] [CrossRef]
  10. Zhu, Y.; Qiao, J.; Guo, L. Adaptive Sliding Mode Disturbance Observer-Based Composite Control With Prescribed Performance of Space Manipulators for Target Capturing. ITIE 2018, 66, 1973–1983. [Google Scholar] [CrossRef]
  11. Rybus, T.; Seweryn, K.; Sasiadek, J.Z. Control System for Free-Floating Space Manipulator Based on Nonlinear Model Predictive Control (NMPC). JIRS 2017, 85, 491–509. [Google Scholar] [CrossRef]
  12. Wei, Y.; Yang, X.; Xu, Z.; Bai, X. Novel ground microgravity experiment system for a spacecraft-manipulator system based on suspension and air-bearing. Aerosp. Sci. Technol. 2023, 141, 108587. [Google Scholar] [CrossRef]
  13. Kernot, J.E.; Ulrich, S. Adaptive control of a tendon-driven manipulator for capturing non-cooperative space targets. JSpRo 2022, 59, 111–128. [Google Scholar] [CrossRef]
  14. Ogilvie, A.; Allport, J.; Hannah, M.; Lymer, J. Autonomous Satellite Servicing Using the Orbital Express Demonstration Manipulator System. In Proceedings of the 9th International Symposium on Artificial Intelligence, Robotics Automation in Space, Los Angeles, CA, USA; 2008; pp. 25–29. [Google Scholar]
  15. Seddaoui, A.; Saaj, C.M. Combined Nonlinear H∞ Controller for a Controlled-Floating Space Robot. J. Guid. Control Dyn. 2019, 42, 1878–1885. [Google Scholar] [CrossRef]
  16. Liu, X.; Li, H.; Chen, Y.; Cai, G.; Wang, X. Dynamics and control of capture of a floating rigid body by a spacecraft robotic arm. Multibody Syst. Dyn. 2015, 33, 315–332. [Google Scholar] [CrossRef]
  17. Ding, W.H.; Deng, H.; Li, Q.M.; Xia, Y.M. Control-orientated dynamic modeling of forging manipulators with multi-closed kinematic chains. Robot. Comput. Integr. Manuf. 2014, 30, 421–431. [Google Scholar] [CrossRef]
  18. Xu, X.R.; Chung, W.J.; Choi, Y.H.; Ma, X.F. A new approach for modeling and computation of dynamics of robots containing closed chains. In Proceedings of the IEEE/RSJ International Conference on Intelligent Robots & Systems, Victoria, BC, Canada, 17 October 1998. [Google Scholar]
  19. Uicker, J.J. History of Multibody Dynamics in the U.S. J. Comput. Nonlinear Dyn. 2016, 11, 060302. [Google Scholar] [CrossRef]
  20. Li, C. A New Lagrangian Formulation of Dynamics for Robot Manipulators. J. Dyn. Syst. Meas. Control 1989, 111, 545. [Google Scholar] [CrossRef]
  21. Siciliano, B.; Sciavicco, L.; Villani, L.; Oriolo, G. Robotics: Modelling, Planning and Control; Springer: Berlin/Heidelberg, Germany, 2011. [Google Scholar]
  22. Yang, Y.; Ju, H.; Wang, K. An innovative joint-space dynamic theory for rigid multi-axis system-Part I: Fundamental principles. Appl. Math. Model. 2022, 110, 28–44. [Google Scholar] [CrossRef]
  23. Wang, K.; Ju, H.; Yang, Y. An innovative joint-space dynamic theory for rigid multi-axis system—Part II: Canonical dynamic equations. Appl. Math. Model. 2022, 110, 475–492. [Google Scholar] [CrossRef]
  24. Shao, X.; Sun, G.; Xue, C.; Li, X. Nonsingular terminal sliding mode control for free-floating space manipulator with disturbance. Acta Astronaut. 2021, 181, 396–404. [Google Scholar] [CrossRef]
  25. Zhang, X.; Liu, J.; Gao, Q.; Ju, Z. Adaptive robust decoupling control of multi-arm space robots using time-delay estimation technique. Nonlinear Dyn. 2020, 100, 2449–2467. [Google Scholar] [CrossRef]
  26. Nguyen-Huynh, T.C.; Sharf, I. Adaptive Reactionless Motion and Parameter Identification in Postcapture of Space Debris. J. Guid. Control Dyn. 2013, 36, 404–414. [Google Scholar] [CrossRef]
  27. James, F.; Shah, S.V.; Singh, A.K.; Krishna, K.M.; Misra, A.K. Reactionless Maneuvering of a Space Robot in Precapture Phase. JGCD 2016, 39, 2419–2425. [Google Scholar] [CrossRef]
  28. Dubowsky, S.; Papadopoulos, E. The kinematics, dynamics, and control of free-flying and free-floating space robotic systems. IEEE Trans. Robot. Autom. 1993, 9, 531–543. [Google Scholar] [CrossRef]
  29. Papadopoulos, E.; Dubowsky, S. On the nature of control algorithms for free-floating space manipulators. ITRA 1991, 7, 750–758. [Google Scholar] [CrossRef]
  30. Vafa, Z.; Dubowsky, S. The Kinematics and Dynamics of Space Manipulators: The Virtual Manipulator Approach. IJRR 1990, 9, 3–21. [Google Scholar] [CrossRef]
  31. Pazelli, T.F.P.A.T.; Terra, M.H.; Siqueira, A.A.G. Experimental investigation on adaptive robust controller designs applied to a free-floating space manipulator. Control Eng. Pract. 2011, 19, 395–408. [Google Scholar] [CrossRef]
  32. Liang, B.; Xu, Y.; Bergerman, M. Dynamically equivalent manipulator for space manipulator system. 1. In Proceedings of the Proceedings of International Conference on Robotics and Automation, Albuquerque, NM, USA, 25 April 1997. [Google Scholar]
  33. Guo, Y.; Chen, L. Robust Control of Dual-Arm Space Robot Systems with Two Objects in Joint Space. In Proceedings of the IEEE/RSJ International Conference on Intelligent Robots & Systems, Beijing, China, 9–15 October 2006; pp. 5091–5095. [Google Scholar]
  34. Flores-Abad, A.; Ou, M.; Pham, K.; Ulrich, S. A review of space robotics technologies for on-orbit servicing. PrAeS 2014, 68, 1–26. [Google Scholar] [CrossRef]
  35. Cocuzza, S.; Pretto, I.; Debei, S. Least-Squares-Based Reaction Control of Space Manipulators. J. Guid. Control Dyn. 2012, 35, 976–986. [Google Scholar] [CrossRef]
  36. Shi, Z.; Huang, X.X.; Tan, Q.; Tian-Jian, H.U. Fractional-order PID control for teleoperation of a free-flying space robot. Control Theory Appl. 2016, 33, 800–808. [Google Scholar]
  37. Liu, J.; Vazquez, S.; Wu, L.; Marquez, A.; Gao, H.; Franquelo, L.G. Extended State Observer-Based Sliding-Mode Control for Three-Phase Power Converters. ITIE 2016, 64, 22–31. [Google Scholar] [CrossRef]
  38. Guanghui; Sun; Ligang; Wu; Zhian; Kuang; Zhiqiang; Ma; Jianxing, Practical tracking control of linear motor via fractional-order sliding mode. Autom 2018, 94, 221–235. [CrossRef]
  39. Slotine, J.; Li, W.P. Applied Nonlinear Control; China Machine Press: Beijing, China, 1991. [Google Scholar]
  40. Korayem, M.H.; Taherifar, M.; Tourajizadeh, H. Compensating the flexibility uncertainties of a cable suspended robot using SMC approach. Robot 2015, 33, 578–598. [Google Scholar] [CrossRef]
  41. Tsuda, S.; Kobayashi, T. Space Robot Control for Unknown Target Handling. In International Conference on Advances in Intelligent Control and Innovative Computing; Springer: New York, NY, USA, 2012; pp. 11–24. [Google Scholar]
  42. Song, Z.; Chao, D.; Wang, J.; Wu, Q. Chattering-free full-order recursive sliding mode control for finite-time attitude synchronization of rigid spacecraft. J. Frankl. Inst. 2019, 356, 998–1020. [Google Scholar] [CrossRef]
  43. Gui, H.; Vukovich, G. Adaptive integral sliding mode control for spacecraft attitude tracking with actuator uncertainty. J. Frankl. Inst. 2015, 352, 5832–5852. [Google Scholar] [CrossRef]
  44. Rybus, T.; Seweryn, K.; Sąsiadek, J.Z. Nonlinear Model Predictive Control (NMPC) for Free-Floating Space Manipulator. In Aerospace Robotics III; Sasiadek, J., Ed.; Springer International Publishing: Cham, Switzerland, 2019; pp. 17–29. [Google Scholar]
  45. Raimondo, D.M.; Limon, D.; Lazar, M.; Magni, L.; Camacho, E.F. Min-max Model Predictive Control of Nonlinear Systems: A Unifying Overview on Stability. Eur. J. Control 2009, 15, 5–21. [Google Scholar] [CrossRef]
  46. Rahideh, A.; Shaheed, M.H. Stable model predictive control for a nonlinear system. J. Frankl. Inst. 2011, 348, 1983–2004. [Google Scholar] [CrossRef]
  47. Shi, L.; Kayastha, S.; Katupitiya, J. Robust coordinated control of a dual-arm space robot. Acta Astronaut. 2017, 138, 475–489. [Google Scholar] [CrossRef]
  48. Featherstone, R. Rigid Body Dynamics Algorithms; Springer US: New York, NY, USA, 2008. [Google Scholar]
  49. Xiao, P.; Ju, H.; Li, Q.; Meng, J.; Chen, F. A New Fixed Axis-Invariant Based Calibration Approach to Improve Absolute Positioning Accuracy of Manipulators. IEEE Access 2020, 8, 134224–134232. [Google Scholar] [CrossRef]
  50. Ju, H. Axis-Invariant Based Multi-Axis Robot System Forward Kinematics Modeling and Solving Method. US16541147, 20 February 2020. [Google Scholar]
  51. Ju, H. Axis-Invariant Based Multi-Axis Robot Inverse Kinematics Modeling and Solving Method. US16541149, 20 February 2020. [Google Scholar]
  52. Hollerbach, J.M. A Recursive Lagrangian Formulation of Maniputator Dynamics and a Comparative Study of Dynamics Formulation Complexity. IEEE Trans. Syst. Man Cybern. 1980, 10, 730–736. [Google Scholar] [CrossRef]
  53. Merabet, A.; Gu, J. Robust nonlinear predictive control based on state estimation for robot manipulator. Int. J. Appl. Math Mech. 2008, 5, 48–49. [Google Scholar]
  54. Rojas-Moreno, A.; Valdivia-Mallqui, R. Embedded position control system of a manipulator using a robust nonlinear predictive control. In Proceedings of the International Conference on Advanced Robotics, Montevideo, Uruguay, 25–29 November 2013; pp. 1–6. [Google Scholar]
Figure 1. Schematic diagram of the free-floating dual-arm space robot.
Figure 1. Schematic diagram of the free-floating dual-arm space robot.
Applsci 14 03333 g001
Figure 2. Topology graph of the free-floating dual-arm space robot.
Figure 2. Topology graph of the free-floating dual-arm space robot.
Applsci 14 03333 g002
Figure 3. The reference system and the Axis-Invariant of the left arm.
Figure 3. The reference system and the Axis-Invariant of the left arm.
Applsci 14 03333 g003
Figure 4. The principle block diagram of the proposed controller.
Figure 4. The principle block diagram of the proposed controller.
Applsci 14 03333 g004
Figure 5. Schematic diagram of the designed in-orbit service task.
Figure 5. Schematic diagram of the designed in-orbit service task.
Applsci 14 03333 g005
Figure 6. Simulation comparison of traditional NMPC with and without disturbance. (a) Comparison of desired trajectory tracking for joint 5. (b) Error comparison of desired trajectory tracking for joint 5.
Figure 6. Simulation comparison of traditional NMPC with and without disturbance. (a) Comparison of desired trajectory tracking for joint 5. (b) Error comparison of desired trajectory tracking for joint 5.
Applsci 14 03333 g006
Figure 7. Simulation comparison between traditional NMPC and proposed improved NMPC. (a) Comparison of desired trajectory tracking for joint 4. (b) Error comparison of desired trajectory tracking for joint 4. (c) Comparison of desired trajectory tracking for joint 5. (d) Error comparison of desired trajectory tracking for joint 5. (e) Comparison of desired trajectory tracking for joint 6. (f) Error comparison of desired trajectory tracking for joint 6.
Figure 7. Simulation comparison between traditional NMPC and proposed improved NMPC. (a) Comparison of desired trajectory tracking for joint 4. (b) Error comparison of desired trajectory tracking for joint 4. (c) Comparison of desired trajectory tracking for joint 5. (d) Error comparison of desired trajectory tracking for joint 5. (e) Comparison of desired trajectory tracking for joint 6. (f) Error comparison of desired trajectory tracking for joint 6.
Applsci 14 03333 g007
Figure 8. Error comparison of base attitude stability control. (a) Comparison of the x-axis error of the base. (b) Comparison of the y-axis error of the base. (c) Comparison of the z-axis error of the base.
Figure 8. Error comparison of base attitude stability control. (a) Comparison of the x-axis error of the base. (b) Comparison of the y-axis error of the base. (c) Comparison of the z-axis error of the base.
Applsci 14 03333 g008
Table 1. Initial parameters of the free-floating dual-arm space robot.
Table 1. Initial parameters of the free-floating dual-arm space robot.
ParameterSymbolValue
Axis-Invariant n 1 i
n 2 1 , n 4 3 , n 7 3
n 3 2 , n 5 4 , n 6 5 , n 8 7 ,
n 9 8
[1 0 0]T
[0 1 0]T
[0 0 1]T
Initial linear position (m) r 2 0 1 ; r 3 0 2 ; r 4 0 3 ;
r 5 0 4 ; r 6 0 5 ; r 7 0 3 ;
r 8 0 7 ; r 9 0 8
[0 0 0]T; [0 0 0]T; [−0.5 0.5 0]T;
[0 0.2 0]T; [0 0.3 0]T; [0.5 0.5 0]T;
[0 0.2 0]T; [0 0.3 0]T
Center position of the link mass (m) r 1 I 1 ; r 2 I 2 ; r 3 I 3 ;
r 4 I 4 ; r 5 I 5 ; r 6 I 6 ;
r 7 I 7 ; r 8 I 8 ; r 9 I 9
[0 0 0]T; [0 0 0]T; [0 0 0.1]T;
[0 0.1 0]T; [0 0.15 0]T; [0 0.1 0]T;
[0 0.1 0]T; [0 0.15 0]T; [0 0.1 0]T
Link mass (kg) m 1 ; m 2 ; m 3 ; m 4 ; m 5 ;
m 6 ; m 7 ; m 8 ; m 9
0; 0; 300; 30; 10;
5; 30; 10; 5
Link MOI (kg·m2) J 1 I 1 I ; J 2 I 2 I ; J 3 I 3 I
J 4 I 4 I ; J 5 I 5 I ;
J 6 I 6 I ; J 7 I 7 I ;
J 8 I 8 I ; J 9 I 9 I
diag(0,0,0); diag(0,0,0); diag(0.1,0.1,0.002);
diag(0.03,0.006,0.03); diag(0.002,0.002,0.001);
diag(0.001,0.001,0.0002); diag(0.03,0.006,0.03);
diag(0.002,0.002,0.001); diag(0.001,0.001,0.0002)
Step size (s) Δ t 0.001
Stepsi25,000
Rolling period (s) T r 0.1
Diagonal elements
of Λ
λ 1 ; λ 2 ; λ 3 ;
λ 4 ; λ 5 ; λ 6 ;
λ 7 ; λ 8 ; λ 9
20; 10; 200;
45; 20; 10;
45; 20; 10
Dynamic parameter uncertainty M ;
h
1.5 M ^ ;
1.5 h ^
External disturbanced1; d2; d3;
d4; d5; d6;
d7; d8; d9
10sin(0.01i); 40sin(0.01i); 20sin(0.01i);
2sin(0.01i); 2sin(0.01i); 2sin(0.01i);
2sin(0.01i); 2sin(0.01i); 2sin(0.01i)
Table 2. Comparison of computational complexity.
Table 2. Comparison of computational complexity.
NumbersPseudo-Inertia
Matrix
Method
Generalized
Momentum
Method
Explicit
Canonical Method
Inertia
matrix
Multiplication21n3 + 63n2 + 66n7n3 + 12n2 + 3n3.5n3 + 16n2 + 12.5n
Addition18n3 + 49.5n2 + 43.5n5n3 + 10n2 + 2n3.5n3 + 10n2 + 6.5n
Bias force
vector
Multiplication91n2 + 157n-16.5n2 + 43.5n
Addition67n2 + 105n-7.5n2 + 27.5n
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content.

Share and Cite

MDPI and ACS Style

Guo, Z.; Ju, H.; Lu, C.; Wang, K. Dynamic Modeling and Improved Nonlinear Model Predictive Control of a Free-Floating Dual-Arm Space Robot. Appl. Sci. 2024, 14, 3333. https://doi.org/10.3390/app14083333

AMA Style

Guo Z, Ju H, Lu C, Wang K. Dynamic Modeling and Improved Nonlinear Model Predictive Control of a Free-Floating Dual-Arm Space Robot. Applied Sciences. 2024; 14(8):3333. https://doi.org/10.3390/app14083333

Chicago/Turabian Style

Guo, Zhenhao, Hehua Ju, Chenxin Lu, and Kaimeng Wang. 2024. "Dynamic Modeling and Improved Nonlinear Model Predictive Control of a Free-Floating Dual-Arm Space Robot" Applied Sciences 14, no. 8: 3333. https://doi.org/10.3390/app14083333

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

Article Metrics

Back to TopTop