Space Detumbling Robot Arm Deployment Path Planning Based on Bi-FMT* Algorithm

In order to avoid damage to service satellites and targets during space missions and improve safety and reliability, it is necessary to study how to eliminate or reduce the rotation of targets. This paper focused on a space detumbling robot and studied the space detumbling robot dynamics and robot arm deployment path planning. Firstly, a certain space detumbling robot with a ‘platform + manipulator + end effector’ configuration is proposed. By considering the end effector as a translational joint, the entire space detumbling robot is equivalent to a link system containing six rotating joints and three translational joints, and the detailed derivation process of the kinematic and dynamic model is presented. Then, ADAMS and MATLAB were used to simulate the model, and the MATLAB results were compared with the ADAMS results to verify the correctness of the model. After that, the robot arm deployment problem was analyzed in detail from the aspects of problem description, constraint analysis and algorithm implementation. An algorithm of robot arm deployment path planning based on the Bi-FMT* algorithm is proposed, and the effectiveness of the algorithm is verified by simulation.


Introduction
Space operation and control refer to the on-orbit activity for specific targets with or without people's participation to achieve proximity detection, auxiliary orbit maneuvers, fault maintenance, fuel filling, system upgrades, assembly, construction, rescue and space debris removal [1]. From the Lunakod/Luna project of the Soviet Union and the SAINT (Satellite Inspector) project of the US to Phoenix and SMART-OLEV, the development of space operation and control has always been promoted by the Space Age. A series of experiments have been carried out to develop and verify relevant technologies by the space powers of the world. Space operation and control have become an important indicator of a country's space force. A review of the development of space operation and control projects around the world is summarized in [2]. Space robot motion and control are the core of space operation and control.
Whether it is on-orbit service (OOS), on-orbit assembly or space debris removal, the approach to non-cooperative targets is important. These non-cooperative targets usually have complex attitude movements, including spins, precession and tumbling, which greatly affect the approach process. In order to avoid adverse damage to service satellites and targets during operation and improve safety and reliability, it is necessary to study how to eliminate or reduce the rotation of the target. Generally speaking, as long as the relative state of the service satellite and target meets certain requirements, effective acquisition can be achieved. From the perspective of detumbling, detumbling can be divided into relative detumbling and absolute detumbling. Relative detumbling means that it does not change the target's motion state but uses the service satellite's own adjustment capabilities Table 1. Summary of the detumbling methods in recent years.

Category Schematic Diagram Brief Description
Injection [4][5][6][7][8] Micromachines 2021, 12, x 2 of 22 justment capabilities to change its own motion state to meet relative state constraints. For example, approaching from the target spin axis direction [3] is a typical relative detumbling strategy. This article focused on absolute detumbling, that is, through the direct or indirect interaction between the service satellite and target, the target state is changed to satisfy the capture condition. In principle, the main operation to make the target detumble is to apply additional torque to the target. According to the different torque sources, absolute detumbling can be divided into contact detumbling and non-contact detumbling. A series of technical verification tests was conducted by the space powers, proposing numerous detumbling methods. These methods are shown in Table 1. Table 1. Summary of the detumbling methods in recent years.

Category Schematic Diagram Brief Description
Injection [4][5][6][7][8] The service satellite injects substances such as a gas, ion beam or laser into the target, changing the quality characteristics of the target, including mass and inertia. Thus, it is known from the angular momentum conservation law that the target will be detumbling. On the other hand, the injection could hinder the movement of the target, thereby achieving the purpose of eliminating the target rotation. Using this method, it is necessary to carry an additional end effector and substances for the purpose of detumbling, except for gas injection which can be injected through its own engine but needs more fuel.
Auxiliary Device [9][10][11] Attaching an auxiliary device to the target through the service satellite and using the auxiliary device to eliminate the target rotation. The service satellite can avoid contact with the target, and the detumbling mode can flexibly adopt various means according to the target situation. However, similar to the above, the detumbling mode needs to be an additional device that is dedicated to the service satellite and has certain maneuverability and controllability which increases the system complexity.
The service satellite injects substances such as a gas, ion beam or laser into the target, changing the quality characteristics of the target, including mass and inertia. Thus, it is known from the angular momentum conservation law that the target will be detumbling. On the other hand, the injection could hinder the movement of the target, thereby achieving the purpose of eliminating the target rotation. Using this method, it is necessary to carry an additional end effector and substances for the purpose of detumbling, except for gas injection which can be injected through its own engine but needs more fuel.
Auxiliary Device [9][10][11] justment capabilities to change its own motion state to meet relative state constraints. For example, approaching from the target spin axis direction [3] is a typical relative detumbling strategy. This article focused on absolute detumbling, that is, through the direct or indirect interaction between the service satellite and target, the target state is changed to satisfy the capture condition. In principle, the main operation to make the target detumble is to apply additional torque to the target. According to the different torque sources, absolute detumbling can be divided into contact detumbling and non-contact detumbling. A series of technical verification tests was conducted by the space powers, proposing numerous detumbling methods. These methods are shown in Table 1. Table 1. Summary of the detumbling methods in recent years.

Category Schematic Diagram Brief Description
Injection [4][5][6][7][8] The service satellite injects substances such as a gas, ion beam or laser into the target, changing the quality characteristics of the target, including mass and inertia. Thus, it is known from the angular momentum conservation law that the target will be detumbling. On the other hand, the injection could hinder the movement of the target, thereby achieving the purpose of eliminating the target rotation. Using this method, it is necessary to carry an additional end effector and substances for the purpose of detumbling, except for gas injection which can be injected through its own engine but needs more fuel.
Auxiliary Device [9][10][11] Attaching an auxiliary device to the target through the service satellite and using the auxiliary device to eliminate the target rotation. The service satellite can avoid contact with the target, and the detumbling mode can flexibly adopt various means according to the target situation. However, similar to the above, the detumbling mode needs to be an additional device that is dedicated to the service satellite and has certain maneuverability and controllability which increases the system complexity.
Attaching an auxiliary device to the target through the service satellite and using the auxiliary device to eliminate the target rotation. The service satellite can avoid contact with the target, and the detumbling mode can flexibly adopt various means according to the target situation. However, similar to the above, the detumbling mode needs to be an additional device that is dedicated to the service satellite and has certain maneuverability and controllability which increases the system complexity.
Electrostatic [12][13][14][15] Micromachines 2021, 12, x 3 of 22 Electrostatic [12][13][14][15] Electrons are continuously emitted to the target through an electron-emitting device carried on the service satellite, charging the target. By doing this, the target rotation is detumbled by Coulomb electrostatic force generated by the voltage difference between the service satellite and the target. This also avoids contact between the service satellite and target. However, in this method, it is necessary to continuously charge and discharge to change the potential of the service satellite and target. In addition, this method needs to be further studied in the identification of target charge and discharge characteristics, formation maintenance and charge and discharge control algorithms.
Electromagnetic [16][17][18][19][20] Space debris mostly contains conductive materials such as aluminum alloys and titanium alloys. Therefore, when the target is in an external magnetic field, eddy currents are internally induced to hinder the relative motion. By using a superconducting coil to construct an external magnetic field, the target can be detumbled. The electromagnetic damping effect passively eliminates the component angular rate perpendicular to the component of the external magnetic field but does not affect the angular rate component parallel to the magnetic field direction. Thus, the Electrons are continuously emitted to the target through an electron-emitting device carried on the service satellite, charging the target. By doing this, the target rotation is detumbled by Coulomb electrostatic force generated by the voltage difference between the service satellite and the target. This also avoids contact between the service satellite and target. However, in this method, it is necessary to continuously charge and discharge to change the potential of the service satellite and target. In addition, this method needs to be further studied in the identification of target charge and discharge characteristics, formation maintenance and charge and discharge control algorithms.

Category Schematic Diagram Brief Description
Electromagnetic [16][17][18][19][20] and discharge to change the potential of the service satellite and target. In addition, this method needs to be further studied in the identification of target charge and discharge characteristics, formation maintenance and charge and discharge control algorithms.
Electromagnetic [16][17][18][19][20] Space debris mostly contains conductive materials such as aluminum alloys and titanium alloys. Therefore, when the target is in an external magnetic field, eddy currents are internally induced to hinder the relative motion. By using a superconducting coil to construct an external magnetic field, the target can be detumbled. The electromagnetic damping effect passively eliminates the component angular rate perpendicular to the component of the external magnetic field but does not affect the angular rate component parallel to the magnetic field direction. Thus, the relative position between the magnetic field source and the target is to be changed. In addition, the use of superconducting coils to construct a wide range of electromagnetic fields requires a corresponding power supply and cooling system. How to superimpose the superconducting magnetic field source system with service satellites requires further study.
Robotic Contact [21][22][23] In this method, the service satellite touches the target intermittently by using the elastic deceleration device attached to the end of the arm. The target rotation is detumbled by the friction. Robotic contact detumbling can actively adjust the direction, size and time of the control force and provide a higher braking efficiency with an accurate torque control model. However, this type of detumbling mode needs a service satellite to perform a complex orbit maneuver before implementation, located at a position very close to the target, and the collision risk is also increased. In addition, it is suitable for a target with a lower speed considering the on-orbit identification efficiency and the manipulator control precision.
Space debris mostly contains conductive materials such as aluminum alloys and titanium alloys. Therefore, when the target is in an external magnetic field, eddy currents are internally induced to hinder the relative motion. By using a superconducting coil to construct an external magnetic field, the target can be detumbled. The electromagnetic damping effect passively eliminates the component angular rate perpendicular to the component of the external magnetic field but does not affect the angular rate component parallel to the magnetic field direction. Thus, the relative position between the magnetic field source and the target is to be changed. In addition, the use of superconducting coils to construct a wide range of electromagnetic fields requires a corresponding power supply and cooling system. How to superimpose the superconducting magnetic field source system with service satellites requires further study.
Robotic Contact [21][22][23] Electromagnetic [16][17][18][19][20] Space debris mostly contains conductive materials such as aluminum alloys and titanium alloys. Therefore, when the target is in an external magnetic field, eddy currents are internally induced to hinder the relative motion. By using a superconducting coil to construct an external magnetic field, the target can be detumbled. The electromagnetic damping effect passively eliminates the component angular rate perpendicular to the component of the external magnetic field but does not affect the angular rate component parallel to the magnetic field direction. Thus, the relative position between the magnetic field source and the target is to be changed. In addition, the use of superconducting coils to construct a wide range of electromagnetic fields requires a corresponding power supply and cooling system. How to superimpose the superconducting magnetic field source system with service satellites requires further study.
Robotic Contact [21][22][23] In this method, the service satellite touches the target intermittently by using the elastic deceleration device attached to the end of the arm. The target rotation is detumbled by the friction. Robotic contact detumbling can actively adjust the direction, size and time of the control force and provide a higher braking efficiency with an accurate torque control model. However, this type of detumbling mode needs a service satellite to perform a complex orbit maneuver before implementation, located at a position very close to the target, and the collision risk is also increased. In addition, it is suitable for a target with a lower speed considering the on-orbit identification efficiency and the manipulator control precision.
In this method, the service satellite touches the target intermittently by using the elastic deceleration device attached to the end of the arm.
The target rotation is detumbled by the friction. Robotic contact detumbling can actively adjust the direction, size and time of the control force and provide a higher braking efficiency with an accurate torque control model. However, this type of detumbling mode needs a service satellite to perform a complex orbit maneuver before implementation, located at a position very close to the target, and the collision risk is also increased. In addition, it is suitable for a target with a lower speed considering the on-orbit identification efficiency and the manipulator control precision.
Net or Tether [24][25][26][27][28] Micromachines 2021, 12, x 4 of 23 Net or Tether [24][25][26][27][28] When the net or tether catches the target, the target rotational speed is reduced by the tension and damping force of the tether. This method is only used for debris. In addition, how to avoid failure in catching and preventing the entanglement of the rope also needs further research.
Considering technical maturity and energy consumption, among these methods, the robotic contact method is the most feasible to implement and verify. Additionally, this method combines capture and detumbling together which is very suitable for OOS. As one of the key technologies in space robot control, path planning generates a motion sequence to guide the robot from the initial state to the goal state safely. Path planning is widely used in the field of robotics and has accumulated a wide range of research results [29,30]. Roughly, path planning can be divided into two categories: complete planning and sampling-based planning.
Complete path planning is usually planned directly in the state space, with the Depth First Search (DFS), Breadth First Search (BFS) and Dijstra algorithms representing the original algorithms, and the Astar algorithm representing the most commonly used algorithm. The advantage of this method is that it can completely obtain the solution, but the cost is that the algorithm will become very complicated. This cost is not obvious in path planning in low-dimensional spaces but becomes very prominent in highdimensional spaces. Since the actual work space-to-state space mapping is non-linear, it is very troublesome to represent obstacles and constraints in the state space. The usual approach is to discretize the space and detect the discrete parts. However, as mentioned earlier, this type of discretization is fine in low-dimensional spaces, but it will bring unimaginable complex calculations in high-dimensional spaces, which directly promotes the generation of sampling-based path planning algorithms.
When the net or tether catches the target, the target rotational speed is reduced by the tension and damping force of the tether. This method is only used for debris. In addition, how to avoid failure in catching and preventing the entanglement of the rope also needs further research.
Considering technical maturity and energy consumption, among these methods, the robotic contact method is the most feasible to implement and verify. Additionally, this method combines capture and detumbling together which is very suitable for OOS. As one of the key technologies in space robot control, path planning generates a motion sequence to guide the robot from the initial state to the goal state safely. Path planning is widely used in the field of robotics and has accumulated a wide range of research results [29,30]. Roughly, path planning can be divided into two categories: complete planning and sampling-based planning.
Complete path planning is usually planned directly in the state space, with the Depth First Search (DFS), Breadth First Search (BFS) and Dijstra algorithms representing the original algorithms, and the Astar algorithm representing the most commonly used algorithm. The advantage of this method is that it can completely obtain the solution, but the cost is that the algorithm will become very complicated. This cost is not obvious in path planning in low-dimensional spaces but becomes very prominent in high-dimensional spaces. Since the actual work space-to-state space mapping is non-linear, it is very trou-blesome to represent obstacles and constraints in the state space. The usual approach is to discretize the space and detect the discrete parts. However, as mentioned earlier, this type of discretization is fine in low-dimensional spaces, but it will bring unimaginable complex calculations in high-dimensional spaces, which directly promotes the generation of sampling-based path planning algorithms.
Sampling-based path planning generally does not plan directly in the state space but randomly arranges a certain density of the sample space to approximate the state space. Sampling-based path planning is also divided into two types: One is graph-based, which scatters sampling points in the original state space and extracts the path by connecting those points with consideration of constraints, such as the probabilistic road map (PRM) algorithm and its improvement. The other is tree-based, which randomly arranges a point in the state space and iteratively grows the tree with the purpose of connecting the starting and ending points, such as the rapid exploration random tree (RRT) algorithm and its improvement. Whether graph-based or tree-based, these algorithms do not need to consider the distribution of obstacles in space but only need to perform collision detection on random sampling points. The planning speed is quite fast and can be used in any dimensional space, and, in particular, path planning has been widely used in high-dimensional spaces.
Due to the complexity of characterizing obstacles and constraints in the state space, complete planning is usually limited to handling low-dimensional problems with simple-shaped obstacles. Sampling-based planning does not need to express obstacles and constraints explicitly but instead combines search-based sampling and performs safety verification through a collision detection algorithm. By separating the planning problem from the actual physical and geometric problems, sampling-based planning greatly accelerates the speed of planning, especially in high-dimensional problems with complex-shaped obstacles.
Space detumbling is a multi-disciplinary complex system engineering problem involving basic disciplines such as mathematics, physics and materials and combining technical disciplines such as control, computer and simulation. Measurement noise, actuator noise, high-order dynamics and orbital perturbations all contribute to the complexity and uncertainty of space detumbling. Considering the uncertainty in space robot motion and control, robot platforms need to have near real-time planning ability in order to handle various uncertainties quickly and safely. Now, the solution for handling uncertainty is mainly divided into three categories. One is to optimize the design of a new spatial structure, as in [31,32]; another is to change the way of thinking and decompose the problem reasonably and abstractly, as explored by Kumar et al., where they decomposed any 3D motion into a 3D translation and three rotations about specific axes related to the object, which allows planning for 3D dexterous in-hand manipulation with a moderate increase in complexity in just a few seconds [33]; the third is to use probabilistic analysis methods. Sampling-based path planning achieves an optimal solution under probability analysis through a reduction in constraints and backward detection and evaluation, which can not only ensure the calculation efficiency but also deal with various constraints well.
Commonly used sampling-based path planning algorithms include PRM [34], RRT [35] and EST [36]. These algorithms can quickly find a feasible path, especially in highdimensional spaces. However, when the sampling points are too few or the distribution is unreasonable, sampling-based path planning only obtains a feasible path, not the optimal path. In order to solve this problem, scholars have proposed asymptotically optimal versions, PRM* [37] and RRT* [38], where, as the number of samples increases, the solution path obtained will inevitably converge to a global optimum, as with BIT* [39] and RRT# [40]. It is particularly worth noting that the fast marching tree (FMT*) algorithm proposed by Janson et al. [41] is a conceptually novel sampling-based path planning algorithm, and numerical simulation experiments have shown that the FMT* algorithm can converge to the optimal solution faster than PRM* and RRT* in the face of a high-dimensional state space and complex collision detection.
Although sampling-based path planning has not been applied in space missions, its effects and advantages for solving problems with high dynamics and uncertain environ- ments have been verified in ground practical systems. In the Urban Challenge held by the Defense Advanced Research Projects Agency (DARPA), almost all of the winners adopted sampling-based path planning [42][43][44][45]. Since the path planning framework is universal, it seems that those research results can be applied to space path planning in theory. However, spacecraft motion is very different from ground robots, especially in space mapping and the C-space [46][47][48][49], meaning these planners cannot be directly applied to space missions without modification. Some scholars have studied the feasibility of sampling-based path planning in space missions [50][51][52][53], especially the studies by Starek et al. [54][55][56][57], in which the real-time implementability, safety and propellant efficiency of path planning by using FMT* or Bi-FMT* were thoroughly discussed in detail.
In the early stage, an improved sampling-based approach for spacecraft proximity operation path planning under Clohessy-Wiltshire-Hill dynamics based on a modified version of the FMT* algorithm with a safety strategy was proposed and analyzed in [58]. In this work, the dynamics and robot arm deployment path planning problem of a certain space detumbling robot were analyzed. Section 2 introduces the design and structure of the space detumbling robot. The kinematics and dynamics of the robot are also analyzed in this section. Then, the detumbling robot arm deployment path planning by using the Bi-FMT* algorithm is described based on the prevention model in detail from the aspects of problem description, constraint analysis and algorithm implementation in Section 3. Additionally, the proposed approach is illustrated by using two numerical experiments in Section 4. Finally, the conclusion and future work directions are provided in Section 5.

Space Detumbling Robot Modeling
The space detumbling robot designed in this paper is shown in Figure 1. As shown in the figure, the robot is divided into three parts: satellite platform, manipulator and end effector. Among them, the satellite platform has a 'central rigid body + solar panel' configuration. The arm adopts the configuration of 'elbow-shaped mechanical arm + spherical wrist'. Additionally, the end effector is designed as a flexible brush, which can be considered equivalent to a translational joint with a fixed length.
ines 2021, 12, x end effector. Among them, the satellite platform has a 'central configuration. The arm adopts the configuration of 'elbow-s spherical wrist'. Additionally, the end effector is designed as a be considered equivalent to a translational joint with a fixed len

Kinematics
Generally, a robot arm system can be treated as a series of These joints can be divided into single-degree-of-freedom jo

Kinematics
Generally, a robot arm system can be treated as a series of links connected by joints. These joints can be divided into single-degree-of-freedom joints and multi-degree-offreedom joints. In fact, multi-degree-of-freedom joints can also be considered as continuous single-degree-of-freedom joints connected by a zero-length link. Therefore, in this study, it is assumed all joints are single-degree-of-freedom joints. Each coordinate system satisfies the Denavit-Hartenberg (DH) convention, that is, Under the condition of the DH convention, the transformation matrix can be expressed as the product of four basic matrices [59]: Suppose the angular velocity of end effector is ω and the linear velocity is v, and let From the transformation matrix, we can obtain Taking the joint variable q i as variable, by the chain rule, we can obtain Therefore, the angular velocity of the end effector coordinate system relative to the fixed coordinate system is Similarly, the velocity of the end effector coordinate system relative to the fixed coordinate system is where J is the Jacobian matrix of the robot arm. When the joint is a revolute joint, v i is 0, and ω i is the angular velocity of the joint; when the joint is a translational joint, ω i is 0, and v i is the translational velocity of the joint. By considering the end effector as a translational joint, the entire space detumbling robot is equivalent to a link system containing six rotating joints and three translational joints, as shown in Figure 2.
O i -X i Y i Z i (i = 0, 1, . . . , 8) is the coordinate system of each link, which is fixed at the center of mass (CM) of the joint and meets the DH convention. Combined with the structure diagram presented in Figure 2, the DH parameters of the robot system can be obtained, as shown in Table 2. d 0 is the distance from the platform CM to the center of Joint #1; L1 and L2 are the lengths of the two links of the elbow manipulator; d 6 is the distance from the end effector to the center of the mounting flange of Joint #6; d 7 and a 8 are the vertical and horizontal displacements of the flexible brush. Table 2. DH parameters of the robot.
As each joint of the robot arm is a rotating joint, Therefore, the velocity and angular velocity of the flexible brush end coordinate system relative to the platform coordinate system are v 0

Dynamics
Due to the limitation of the launching mass, the mass of the space robot will be relatively light, and the joint and its accessories will be relatively heavy, meaning the mass center of the joint and the connecting link can be placed at the joint. The Lagrange equation is used to derive the dynamic model. For a space robot, its kinetic energy is the total energy. Kinetic energy is divided into rotational kinetic energy and translational kinetic energy. For link i, its kinetic energy is It can be seen from the previous kinematic analysis that which is where I ii is the inertia matrix of the connecting link in this system. Then, the total kinetic energy of the robot arm is where M is the generalized mass matrix of the system and a positive definite symmetric matrix; m ij is an element in M.
From the Lagrange equation, we can obtain Then, Thus, Therefore, the dynamic equation of the robot arm is m k1 m k2 · · · m kn    where where J is the Jacobian matrix of the robot arm. When the joint is a revolute joint, vi is 0, and ωi is the angular velocity of the joint; when the joint is a translational joint, ωi is 0, and vi is the translational velocity of the joint. By considering the end effector as a translational joint, the entire space detumbling robot is equivalent to a link system containing six rotating joints and three translational joints, as shown in Figure 2. Oi-XiYiZi (i = 0, 1, …, 8) is the coordinate system of each link, which is fixed at the center of mass (CM) of the joint and meets the DH convention. Combined with the structure diagram presented in Figure 2, the DH parameters of the robot system can be obtained, as shown in Table 2.

Bi-FMT* Algorithm
The input of the FMT* algorithm is the set S of the initial state X initial , the target state X goal and all sampling points X S in the free state space X free . Assume that when the Euclidean distance of two sampling points satisfies Equation (20), we state that these two sampling points are adjacent.
Among them, n is the number of sampling points, d is the dimension of the state space, η is the neighborhood radius coefficient, which is generally greater than 0, µ(·) is the Lebesgue measure and V d represents the unit sphere volume in a d-dimensional space. The basic description of the FMT* algorithm is shown in Figure 3.
Micromachines 2021, 12, x Among them, n is the number of sampling points, d is the dimension of the space, η is the neighborhood radius coefficient, which is generally greater than 0, the Lebesgue measure and Vd represents the unit sphere volume in a d-dimen space. The basic description of the FMT* algorithm is shown in Figure 3. In the FMT* algorithm, the set S is divided into three subsets: the node set Stree tree, the candidate point set Scheck and the pruning set Scut. Stree includes sampling p that have been added to the path tree and continue to participate in the next step path tree growth; Scheck includes all sampling points that have not been tested; S cludes sampling points that have been added to the path tree but are pruned durin growth of the tree The next sampling point no longer participates in the further g of the path tree. At the beginning, the FMT* algorithm puts Xinitial in Stree and all sampling points in Scheck, while Scut is an empty set; then, the algorithm finds the sh point in Stree from the Xinitial path Snearest and finds Snearest in Scheck. The neighborhood Xnear is shown in Figure 3(A); for each sampling point x in Xnear, in turn, find its n borhood point xnear in Stree, evaluate the path cost of each connection and find the with the lowest path cost xnearest; if this connection path does not conflict with the ob area, it is added as a branch of the tree, as shown in Figure 3(B); when each x in Xn completed the above operation, as shown in Figure 3(C), move the sampling point cessfully connected to the tree from Scheck to Stree, and at the same time, move Sneares Stree to Scut, and no longer participate in the growth of the tree, as shown in Figure  keep repeating the above steps to let the tree grow until Stree includes Xgoal or Stree empty set, and the algorithm ends.
It can be seen that the FMT* algorithm synchronizes the construction and sea the path graph. By transforming the collision detection into a local optimal conn problem, a large number of collision detections are avoided. While reducing the co tational complexity, it can also ensure the result of path planning. In order to im the convergence speed of the algorithm, some scholars [60] applied the bidirec search idea to path planning, trying to search from the initial state to the target stat from the target state back to the initial state. Studies have found that the conver speed can be greatly improved through bidirectional planning, and this idea can ba In the FMT* algorithm, the set S is divided into three subsets: the node set S tree of the tree, the candidate point set S check and the pruning set S cut . S tree includes sampling points that have been added to the path tree and continue to participate in the next step of the path tree growth; S check includes all sampling points that have not been tested; S cut includes sampling points that have been added to the path tree but are pruned during the growth of the tree The next sampling point no longer participates in the further growth of the path tree. At the beginning, the FMT* algorithm puts X initial in S tree and all other sampling points in S check , while S cut is an empty set; then, the algorithm finds the shortest point in S tree from the X initial path S nearest and finds S nearest in S check . The neighborhood point X near is shown in Figure 3A; for each sampling point x in X near , in turn, find its neighborhood point x near in S tree , evaluate the path cost of each connection and find the node with the lowest path cost x nearest ; if this connection path does not conflict with the obstacle area, it is added as a branch of the tree, as shown in Figure 3B; when each x in X near has completed the above operation, as shown in Figure 3C, move the sampling points successfully connected to the tree from S check to S tree , and at the same time, move S nearest from S tree to S cut , and no longer participate in the growth of the tree, as shown in Figure 3D; keep repeating the above steps to let the tree grow until S tree includes X goal or S tree is an empty set, and the algorithm ends.
It can be seen that the FMT* algorithm synchronizes the construction and search of the path graph. By transforming the collision detection into a local optimal connection problem, a large number of collision detections are avoided. While reducing the computational complexity, it can also ensure the result of path planning. In order to improve the convergence speed of the algorithm, some scholars [60] applied the bidirectional search idea to path planning, trying to search from the initial state to the target state and from the target state back to the initial state. Studies have found that the convergence speed can be greatly improved through bidirectional planning, and this idea can basically be applied to any path planning problem [61,62]. The basic description of the Bi-FMT* algorithm is shown in Figure 4.
ly be applied to any path planning problem [61,62]. The basic description of the B algorithm is shown in Figure 4. The core of the Bi-FMT* algorithm is bidirectional. Except for two growing the Bi-FMT* algorithm is basically the same as the FMT* algorithm. Although th structure of the Bi-FMT* algorithm is the same as that of the FMT* algorithm, its c tion efficiency on a given sample is much higher than that of the FMT* algorithm the dimension of the state space is d, the speed of the Bi-FMT* algorithm can creased by 2 d−1 times compared with the FMT* algorithm.

Problem Definition
The state space Θ is defined as the rotation angles {θ1, θ2, θ3, θ4, θ5, θ6} of t nipulator joints. Θinitial denotes the initial configuration of the robot arm, and Θ notes the goal configuration. The manipulator path planning is expressed as follow Given: Θinitial, t0, Θgoal, Θfree Cost function:

Time Constraints
This paper assumes that the running time between adjacent path points is that is, The core of the Bi-FMT* algorithm is bidirectional. Except for two growing trees, the Bi-FMT* algorithm is basically the same as the FMT* algorithm. Although the basic structure of the Bi-FMT* algorithm is the same as that of the FMT* algorithm, its calculation efficiency on a given sample is much higher than that of the FMT* algorithm. When the dimension of the state space is d, the speed of the Bi-FMT* algorithm can be increased by 2 d−1 times compared with the FMT* algorithm.

Problem Definition
The state space Θ is defined as the rotation angles {θ 1 , θ 2 , θ 3 , θ 4 , θ 5 , θ 6 } of the manipulator joints. Θ initial denotes the initial configuration of the robot arm, and Θ goal denotes the goal configuration. The manipulator path planning is expressed as follows.

Time Constraints
This paper assumes that the running time between adjacent path points is equal, that is, In addition, the total time the robot moves from the initial state to the target state should be within the time required by the task, i.e., The longer the response time, the smaller the required angular acceleration, the more stable the movement of the robot arm and the smoother the trajectory, the longer the travel time. DELTA.t between adjacent path points can be lengthened as much as possible during planning. From Formulas (21) and (22), the maximum value of ∆t is found: In this paper, ∆t is taken as the maximum value ∆t max , which is involved in subsequent path planning.

Stationary Constraints
The motion of the manipulator should be smooth, and unsteady motion will intensify the relative motion between the components and cause system vibration and impact. Therefore, in addition to describing the continuity of the function of the motion trajectory of the manipulator, its velocity and acceleration should be continuous.
At this time, the path sampling point Θ(t i ) satisfies .. .
where Θ(t i −) is a local planning trajectory before time t i , and Θ(t i +) is the local planning trajectory after time t i .

Dynamic Characteristic Constraints
The dynamic characteristic constraint mainly means that the angular velocity and angular acceleration of the joint satisfy the bounded condition .

Path Planning Algorithm Description
The robot path planning algorithm is described in Table 3. Table 3. Manipulator path planning based on the Bi-FMT* algorithm.

1:
given initial state Θ initial , Θ goal , task time T plan , sampling point number N, maximum angular velocity ω max and maximum angular acceleration . ω max 2: Calculating single step response time ∆t by using (23) 3: The state space is sampled by means of Halton sampling method, and the set of sampling points Θ S is obtained.

4:
The path trees {S tree , S check , S cut } and {S' tree , S' check , S' cut } which are based on Θ initial and Θ goal is generated -While Do 5: Finding the intersection S meet of S tree and S' tree 6: S meet is not empty 7: Calculate the path cost J of each point 8: Find the sampling point ϑ meet with the smallest J 9: By connecting S tree and S' tree with ϑ meet as the connection point, the path between Θ initial and Θ goal is obtained 10: S meet is empty 11: performing FMT*algorithms on {S tree , S check , S cut } and {S' tree , S' check , S' cut }, respectively, and updating S tree and S' tree -While Done

12:
The local cubic polynomial interpolation is used to generate trajectory between sampling points in path 4. Simulation

Robot Model
ADAMS and MATLAB were used to simulate the model, and the MATLAB results were compared with the ADAMS results to verify the correctness of the model. Combining common components and their characteristics, the simulation parameter settings of the space detumbling robot are shown in Table 4. Table 4. List of simulation parameters of the space detumbling robot.
We constructed the space detumbling robot model in ADAMS, as shown in Figure 5. Under the torque applied by the joints, the robot simulation results are shown in Figures 6 and 7.
According to the simulation parameters, the kinematics and dynamics equations of the robot are specifically expanded (see Appendix B of [63] for details). We used MATLAB to build the model, import the simulation parameters and obtain the simulation results, as shown in Figure 8.
We compared the ADAMS calculation results with the MATLAB mathematical model simulation results, as shown in Figure 9. It can be seen from the figure that the simulation results' deviation is small, which verifies the correctness of the robot model.

Path Planning
The initial and goal states of the robot are shown in Figure 10.       According to the simulation parameters, the kinematics and dynamics equat the robot are specifically expanded (see Appendix B of [63] for details). W MATLAB to build the model, import the simulation parameters and obtain the s tion results, as shown in Figure 8.   According to the simulation parameters, the kinematics and dynamics equations of the robot are specifically expanded (see Appendix B of [63] for details). We used MATLAB to build the model, import the simulation parameters and obtain the simulation results, as shown in Figure 8.  We compared the ADAMS calculation results with the MATLAB mathematical model simulation results, as shown in Figure 9. It can be seen from the figure that the simulation results' deviation is small, which verifies the correctness of the robot model.

Path Planning
The initial and goal states of the robot are shown in Figure 10.
Considering that the flexible brush has a length, the state of the manipulator must also be satisfied: In summary, the sampling state space is  The data structure defining the sampling points in the robot path planning is as follows: where i is the sample point number; iftoinitial and iftogoal are identifiers for determining that the node is connected to the initial state or the goal state; j denotes the node from the node to the initial connection point. The hardware conditions are Intel(R)Core(TM)i7-4720HQ CPU@2.60GHz, 8.00GB It should be noted that the arm wrist joint can be locked, and thus the sampling state space can be expressed as On the other hand, under this simplified condition, the non-collision condition can be expressed as Considering that the flexible brush has a length, the state of the manipulator must also be satisfied: In summary, the sampling state space is while T plan = 600 s The data structure defining the sampling points in the robot path planning is as follows: where i is the sample point number; iftoinitial and iftogoal are identifiers for determining that the node is connected to the initial state or the goal state; j denotes the node from the node to the initial connection point. The hardware conditions are Intel(R)Core(TM)i7-4720HQ CPU@2.60GHz, 8.00GB RAM. The simulation platform adopts MATLAB2015b. The simulation results are shown in Figure 11. Under the hardware conditions presented in this paper, the path planning time is 0.567 s when the sampling number is 1000. It can be seen from the figure that the robot arm can reach the goal configuration, which shows the validity of the robot arm path planning algorithm. Considering that the increase in sampling points makes the solution matrix very large, this paper adopted a two-step strategy: first, according to the full sampling space to carry out the path planning, we generated the sequence of path sampling points; then, we selected a small sample to generate the trajectory in the obtained sequence. Taking Figure 11 as an example, the resulting trajectory equation is shown in Figure 12.

Conclusions and Future Work
With the development of space exploration technology and space commercial activities, the number of spacecrafts in space is sharply increasing, and space resources and the environment are facing enormous challenges. On-orbit service (OOS, which consists of on-orbit refueling, on-orbit repairing, on-orbit upgrading and space debris removal) is an effective means to achieve successful space exploration missions and keep the space environment safe. Whether on-orbit assembly or space debris removal, the proximity to non-cooperative targets is important. However, these non-cooperative targets usually

Conclusions and Future Work
With the development of space exploration technology and space commercial activities, the number of spacecrafts in space is sharply increasing, and space resources and the environment are facing enormous challenges. On-orbit service (OOS, which consists of on-orbit refueling, on-orbit repairing, on-orbit upgrading and space debris removal) is an effective means to achieve successful space exploration missions and keep the space environment safe. Whether on-orbit assembly or space debris removal, the proximity to non-cooperative targets is important. However, these non-cooperative targets usually have complex attitude movements, which greatly affect the proximity operation process. In order to avoid damage to service satellites and targets during operation and improve safety and reliability, it is necessary to study how to eliminate or reduce the rotation of targets. A series of technical verification tests have been conducted by the space powers, proposing numerous detumbling methods, including friction, static, net, auxiliary device and electromagnetic. Considering technical maturity and energy consumption, among these methods, frictional detumbling is the most feasible. This paper focused on a space detumbling robot and studied the related technologies including space detumbling robot dynamics and robot arm path planning. A certain space detumbling robot with a 'platform + manipulator + end effector' configuration was proposed. By considering the end effector as a translational joint, the kinematic and dynamic model of the space detumbling robot was presented. Then, ADAMS and MATLAB were used to simulate and verify the model. After that, the robot arm deployment problem was analyzed in detail, and path planning based on the Bi-FMT* algorithm was also proposed and verified by simulation.
Space detumbling is a multi-disciplinary complex system engineering problem involving basic disciplines such as mathematics, physics and materials and combining technical disciplines such as control, computer and simulation. In contrast, the research work conducted in this article is only a small part of the solution, there is still a big gap to fill before practical engineering applications and theoretical research needs to be improved. On the basis of this article, future work directions include the following: (1) The platform, manipulator and target are all regarded as rigid bodies; in practice, both the manipulator and solar panels have a certain degree of flexibility, and modeling under the condition of multiple flexible bodies is an important research direction.
(2) Semi-physical design and simulation verification of detumbling platforms and mechanisms.