Omnidirectional Continuous Movement Method of Dual-Arm Robot in a Space Station

The burgeoning complexity of space missions has amplified the research focus on robots that are capable of assisting astronauts in accomplishing tasks within space stations. Nevertheless, these robots grapple with substantial mobility challenges in a weightless environment. This study proposed an omnidirectional continuous movement method for a dual-arm robot, inspired by the movement patterns of astronauts within space stations. On the basis of determining the configuration of the dual-arm robot, the kinematics and dynamics model of the robot during contact and flight phases were established. Thereafter, several constraints are determined, including obstacle constraints, prohibited contact area constraints, and performance constraints. An optimization algorithm based on the artificial bee colony algorithm was proposed to optimize the trunk motion law, contact point positions between the manipulators and the inner wall, as well as the driving torques. Through the real-time control of the two manipulators, the robot is capable of achieving omnidirectional continuous movement across various inner walls with complex structures while maintaining optimal comprehensive performance. Simulation results demonstrate the correctness of this method. The method proposed in this paper provides a theoretical basis for the application of mobile robots within space stations.


Introduction
As human space exploration continues to advance, space robots capable of performing various operational tasks within a space station have emerged as a significant field of research [1,2]. Mobile space robots, compared to robots with fixed bases, can significantly enhance their operational capabilities. Numerous researchers have focused their studies on the movement methods of space robots, providing valuable insights for their application within a space station [3].
Numerous researchers have investigated ground mobile robots, focusing on common mobility modes such as wheel-type [4][5][6][7], track-type [8,9], and leg-type [10][11][12][13]. These mobility modes have also been applied to planetary exploration robots to accomplish various space tasks. For example, the German Aerospace Center and European Space Agency developed a wheeled humanoid space robot, providing preliminary insights for future manned Mars missions [14]. Chen et al. [15] proposed a chameleon-inspired multitoe quadruped robot for planetary surface exploration. Each bionic foot possessed four toes to stabilize them on granular materials. Moreover, other planetary exploration robots employing rolling [16] and jumping [17] modes have also been studied. In a weightless environment, the focus of research is on free-flying robots. For instance, Zhang et al. [18] proposed a full-size and free-flying humanoid robot named Taikobot that aimed to assist astronauts in a space station. Taikobot adopted a compact and lightweight design to work in microgravity, which reduced launch costs and improved safety during human-robot collaboration. Chen et al. [19] developed a free-flying space with gecko-inspired adhesives to grasp and manipulate large items or anchor themselves on smooth surfaces, and the tests were conducted on the International Space Station (ISS). For on-orbit tasks outside the space station, a crawling mode is typically employed to prevent robots from detaching from the space station. Representative examples of these types of robots include the US Space Station Remote Manipulator System (SSRMS) [20], the Chinese Core Module Manipulator (CMM) [21], and the European Robotic Arm (ERA) [22].
Numerous space robots are equipped with two manipulators to complete a variety of operational tasks [23,24]. For instance, Yang et al. [3] designed a continuum-manipulator space robot (CMSR). The continuum manipulators can be used for various tasks, such as assembly and inspection. A robot can also utilize its two manipulators to achieve freeflying movement by interacting with the space station's inner wall, thus mimicking the way astronauts maneuver within a space station. Jiang et al. [1] proposed a wide-ranging stable motion control method for robot astronauts in space stations based on human dynamics. The experimental results showed that the method is a highly competitive solution for robot astronauts with human-like moving capabilities in space stations. For this type of robot, motion planning for the robot's two manipulators is essential [25]. A common method for implementing motion planning is to divide two manipulators into a leader manipulator and a follower manipulator. The motion planning for the leader manipulator is completed first, and the motion trajectory of the follower manipulator is deduced through constraints [26][27][28]. By integrating perceptual information, such as vision [29,30] and haptic feedback [31], and intelligent algorithms, such as reinforcement learning [32], the motion planning of the manipulators can be achieved, especially in replicating the movement characteristics of human arms [33,34]. Due to the complexity of the space station's internal environment, obstacle avoidance in motion planning has emerged as a focal point of research in this field [35]. Dual-arm space robots must not only avoid collisions with the complex environment but also achieve self-obstacle avoidance [36][37][38]. Moreover, numerous researchers concentrate on the dynamic characteristics of dual-arm space robots, enabling them to simultaneously meet kinematic and dynamic constraints [39][40][41]. Through the aforementioned motion planning methods, robots can complete complex space tasks, such as assembly [23] and target acquisition [42,43].
Researchers continue to explore the use of robots within space stations. However, achieving continuous movement in a weightless environment remains a formidable challenge. Moreover, the complex structure of the space station's inner walls and the highperformance demands placed on the robots further complicate the analysis. This paper introduces an omnidirectional continuous movement method and has the following key contributions.
(1) The paper proposes a movement method for a dual-arm robot that simulates the way astronauts use their arms to interact with the inner walls for locomotion. This approach allows the robot to transition between different inner walls. The two manipulators function as both operational and mobile systems, reducing the structural complexity; (2) Based on the kinematic and dynamic models of the dual-arm robot in both contact and flight phases, this study proposes not only the contact points between manipulators and the inner wall, but also the trunk movement law and the driving torques, as optimization variables. It aids in enhancing the robot's overall performance; (3) This research presents multiple constraints, including obstacle constraints, prohibited contact area constraints, and performance constraints. To improve optimization efficiency under these constraints, an optimization algorithm based on the artificial bee colony algorithm (OA-ABC) is introduced.
The findings of this study provide a theoretical foundation for the practical application of robots within space stations. The remainder of the paper is structured as follows. Section 2 introduces the omnidirectional continuous motion method for the robot. Section 3 presents an example to validate the effectiveness of the proposed method. Section 4 discusses the results derived from the study.

Research Objectives
In a space station, traditional movement modes, such as wheel-type and leg-type, are not applicable due to the low friction and complex surface structures of the inner wall. Astronauts often achieve efficient movement by using the reaction force between their arms or legs and the inner wall, thereby offering inspiration for the efficient movement of robots in a space station. As a solution, this paper proposes a dual-arm space robot, with each manipulator having six degrees of freedom (DOFs) and the capability to complete collaborative tasks. The robot can move through the interaction between the manipulators and the inner wall, as seen in Figure 1. Furthermore, the anthropomorphic mobile mode provides excellent environmental adaptability, enabling high mobility efficiency in an environment with obstacles. The findings of this study provide a theoretical foundation for the practical application of robots within space stations.
The remainder of the paper is structured as follows. Section 2 introduces the omnidirectional continuous motion method for the robot. Section 3 presents an example to validate the effectiveness of the proposed method. Section 4 discusses the results derived from the study.

Research Objectives
In a space station, traditional movement modes, such as wheel-type and leg-type, are not applicable due to the low friction and complex surface structures of the inner wall. Astronauts often achieve efficient movement by using the reaction force between their arms or legs and the inner wall, thereby offering inspiration for the efficient movement of robots in a space station. As a solution, this paper proposes a dual-arm space robot, with each manipulator having six degrees of freedom (DOFs) and the capability to complete collaborative tasks. The robot can move through the interaction between the manipulators and the inner wall, as seen in Figure 1. Furthermore, the anthropomorphic mobile mode provides excellent environmental adaptability, enabling high mobility efficiency in an environment with obstacles. The research objectives of this paper are as follows.
(1) The robot should achieve omnidirectional continuous movement in a space station using the manipulators. This means it should not have to stop and adjust its posture after each motion cycle (a motion cycle is defined as the process from the moment of contact between the robot and the inner wall to the next moment of contact with the inner wall); (2) The robot should be capable of moving along an expected trajectory in a complex environment with obstacles, steps, and prohibited contact areas; (3) The robot should possess superior comprehensive performance, including excellent dynamic stability, low energy consumption, and smooth motion laws. The research objectives of this paper are as follows.
(1) The robot should achieve omnidirectional continuous movement in a space station using the manipulators. This means it should not have to stop and adjust its posture after each motion cycle (a motion cycle is defined as the process from the moment of contact between the robot and the inner wall to the next moment of contact with the inner wall); (2) The robot should be capable of moving along an expected trajectory in a complex environment with obstacles, steps, and prohibited contact areas; (3) The robot should possess superior comprehensive performance, including excellent dynamic stability, low energy consumption, and smooth motion laws. Figure 2 shows the mechanism diagram of the six DOF manipulators and the dual-arm robot in contact with the inner wall of the space station. In Figure 2b, F 1 F 2 represents the trunk of the robot. O 1 O 2 and O 2 O 3 depict the potential trajectories of the trunk during the contact phase (the phase in which the two manipulators simultaneously make contact with the space station's inner wall). These trajectories may be straight lines or curves. O 2 is the Sensors 2023, 23, 5025 4 of 23 ideal nearest point, but it may change according to actual circumstances. The coordinate origin of the fixed coordinate system O 0 -X 0 Y 0 Z 0 coincides with the projection point of O 2 . The directions of the coordinate axes are demonstrated in Figure 2b. The coordinate origin of the moving coordinate system O p -X p Y p Z p coincides with the geometric center of the trunk. The coordinate system of the i-th joint is denoted as O i -X i Y i Z i . The contact points P 1 and P 2 between the two manipulators and the space station's inner wall may not be in the same plane, assuming P 1 and P 2 are fixed in a fixed coordinate system. Moreover, there may be obstacles on the inner wall. When the two manipulators of the robot detach from the inner walls of the space station, the robot enters the flight phase.

Establishment of Mathematical Model
arm robot in contact with the inner wall of the space station. In Figure 2b, F1F the trunk of the robot. O1O2 and O2O3 depict the potential trajectories of the t the contact phase (the phase in which the two manipulators simultaneously m with the space station's inner wall). These trajectories may be straight lines o is the ideal nearest point, but it may change according to actual circumstanc dinate origin of the fixed coordinate system O0-X0Y0Z0 coincides with the pro of O2. The directions of the coordinate axes are demonstrated in Figure 2b. Th origin of the moving coordinate system Op-XpYpZp coincides with the geome the trunk. The coordinate system of the i-th joint is denoted as Oi-XiYiZi. points P1 and P2 between the two manipulators and the space station's inner w be in the same plane, assuming P1 and P2 are fixed in a fixed coordinate system there may be obstacles on the inner wall. When the two manipulators of the from the inner walls of the space station, the robot enters the flight phase.  where t1 and t2 represent the times in the r-th phases of approaching the inne phase) and moving away from the inner wall (O2O3 phase), respectively. a represent the polynomial coefficients. os1 represents the coordinate of the poi is a known value. os2 represents the coordinate of the point O2. while os2 is on t O1O2, its position remains uncertain. It can be expressed as a function of pos Δyos2, which is the distance between the ideal closest point and the actual clo the Y0 direction. The function can be written as The trajectory O2O3 is variable and lies on the line between the optimi and the predetermined position point O1 for the subsequent cycle. By optimi ynomial coefficients and the position of os2, the trajectory of the robot's trun termined. The velocity of the trunk can be obtained by deriving Equation (1) The trajectory O 2 O 3 is variable and lies on the line between the optimized point O 2 and the predetermined position point O 1 for the subsequent cycle. By optimizing the polynomial coefficients and the position of o s2 , the trajectory of the robot's trunk can be determined. The velocity of the trunk can be obtained by deriving Equation (1).
Given that the robot needs to meet the expected movement, some values are known during the robot's continuous movement, which results in a sr , b sr , and c sr not being independent. The known value U sr can be expressed as where P O1 is the position of the trunk at point O 1 . v 1 , v 2 and v 3 are the velocities of the trunk at point O 1 , O 2 and O 3 , respectively. By incorporating the aforementioned known values as boundary conditions into the position and velocity equations, the polynomial coefficients b sr and c sr can be expressed as functions of a s2 and ∆y os2 . The change in the trunk posture can be expressed as where a Θ , b Θ , and c Θ represent the polynomial coefficients that can be determined through optimization in the r-th phases (O 1 O 2 phase or O 2 O 3 phase). (Θ xr , Θ yr , Θ zr ) is the initial posture of the trunk. The angular velocity of the trunk can be obtained by deriving Equation (4).
Similarly, due to the presence of boundary conditions, the polynomial coefficients a Θ , b Θ , and c Θ in Equation (4) are not independent. The known value U Θr can be expressed as where Moreover, the kinematics modeling of the manipulators is established based on the analysis of the trunk parameters. The homogeneous transformation matrix of the trunk coordinate system O p -X p Y p Z p relative to the fixed coordinate system can be expressed as 0 p T j = 0 1 T 1 2 T · · · i−1 i T · · · n−1 p T where i−1 i T is the homogeneous transformation matrix of the i-th coordinate system relative to (i − 1)-th coordinate system. The kinematics modeling of each manipulator involves six unknown joint angles θ i (i = 1, . . . , 6), which can be determined once the position and posture of the trunk are known. The joint angles, angular velocities, and angular accelerations can be formulated as where T p refers to the trunk parameters, including the position, velocity (angular velocity), and acceleration (angular acceleration) of the trunk. P i represents the position of the contact points between the manipulators and the inner wall. The angular velocity and angular acceleration of the link can be expressed as where i i−1 R is the transformation matrix of the (i − 1)-th link relative to the i-th link, and Q i is the direction vector. The acceleration i a j i of the origin of the i-th moving coordinate system for the j-th manipulator and the acceleration i a j ci of the center of mass of the i-th link can be expressed as where i−1 P j i represents the direction vector of the origin of the i-th coordinate system relative to the origin of the (i − 1)-th coordinate system, and i P j ci represents the direction vector of the center of mass of the i-th link in the i-th coordinate system. i ω j i represents the angular velocity of the link. Subsequently, the inertia force and inertia moment of each link of the manipulator can be expressed as where i I j i is an inertial tensor in the i-th coordinate system, which can be written as where i x ci , i y ci , and i z ci represent the coordinates of the center of mass of i-th link in the i-th coordinate system. Following this, the Newton-Euler method can be employed to calculate the mutual forces and torques between the links and the joint driving torques. For the i-th link, the equation can be written as where i F j i and i M j i represent the constraint force and constraint torque of the (i − 1)-th link to the i-th link in the i-th coordinate system, respectively. The manipulators possess a total of 12 DOFs and require 12 drives for the two manipulators. When two manipulators come into contact with the inner wall simultaneously, the trunk has 6 DOFs, resulting in redundant actuation. The robot has 11 components, with a total of 66 equations and 72 unknowns. Optimization is necessary to find the optimal solution. To simplify the calculation, three joints for each manipulator are selected, and the driving torque variation is modeled as a polynomial.
where a Mir , b Mir , and c Mir are the polynomial coefficients in the r-th phase. By optimizing these coefficients, the driving torques of three selected joints for each manipulator can be obtained, and the driving torques of other joints can be obtained by solving Equation (12).

Mathematical Model of the Robot in the Flight Phase
To ensure the robot's trunk trajectory stays within the workspace when both manipulators make contact with the inner wall in the subsequent cycle, the angular velocity of the trunk is typically non-zero during the flight phase. This angular velocity depends on the posture of the trunk at point O 3 , the posture of the trunk at point O 1 in the next cycle, and the duration of the flight phase. The duration t lk can be expressed as where v O3k represents the velocity of the robot when it is at point O 3 in the k-th cycle, and s p lk represents the distance between point O 3k and point O 1(k+1) . The angular velocity of the trunk can be written as where Θ O3k R. The rotation angle of the trunk during the flight phase can be formulated as where c mn represents the element corresponding to the m-th row and n-th column of the matrix O1(k+1) O3k R. Given the uncertainty of the position of the point O 2i , the rotation angle of the trunk needs to be determined based on the optimization results.
To ensure the two manipulators of the robot maintain the expected posture at the moment of contact with the inner wall, the joint angles of the two manipulators are not constant during the flight phase. The expected posture can be written as where θ j o1(i+1) is the angle of the j-th joint at point O 1(i+1) . The joint angular velocity can be expressed as where θ j o3i is the angle of the j-th joint at points O 3i . ∆θ j is the adjustment coefficient. Moreover, the obstacle avoidance index d p of the robot should meet the constraint D p , indicating that the two manipulators must avoid colliding with each other during the movement process.
In summary, the establishment of the kinematics and dynamics models of the robot through the aforementioned process lays a foundation for subsequent parameter optimization.

Constraints Analysis
(1) The continuous movement of a robot is governed by various constraints, including obstacle constraints, prohibited contact area constraints, and performance constraints.
Obstacle constraints: The two manipulators may not only collide with obstacles, but may also readily collide with each other, leading to joint-joint, joint-link, and link-link collisions. Collision detection is executed by simplifying the joints and links of the robot into capsules and obstacles into cuboids, followed by calculating the minimum distance between them. The self-collision detection is performed by calculating the minimum distance d qs between capsules, while the minimum distance D q between capsules and Sensors 2023, 23, 5025 8 of 23 each plane of the cuboid is calculated to identify potential collisions with obstacles. The minimum distances d qs and D q should meet the following conditions: where r q and r s are the radii of the capsules, and ∆d is the safe distance.
(2) Prohibited contact area constraints: Within the space station, certain regions of the inner wall may be vulnerable and require protection from potential damage caused by contact with the robot. Therefore, it is necessary to avoid contact with such areas, which can be expressed as where S Akx and S Aky represent the length and width of a rectangular prohibited contact area, respectively, and r A is the radius of the circular contact surface at the end of the manipulator.
(3) Performance constraints: The performance indices of the robot include motion feasibility, zero moment point (ZMP), total inertia moment, and energy consumption.
Motion feasibility: The motion feasibility constraint involves two aspects: firstly, the rotation angles of the joints of both manipulators and the trunk should be within the predefined ranges; secondly, the trajectories O 1 O 2 and O 2 O 3 of the trunk should lie within the workspace when two manipulators come into contact with the inner wall. These constraints can be expressed as where θ j i−min , θ j i−max denotes the allowable range of joint angles and Θ p s−min , Θ p s−max is the allowable range of trunk posture. P t represents the set of discrete points of the position of the center of mass of the trunk, and C t denotes the workspace.
ZMP. To ensure the motion stability of the robot, ZMP is introduced as a performance index. When the gravity acceleration is not considered, ZMP can be expressed as where m represent the coordinates and the acceleration of the center of mass of each link in their respective coordinate systems. The stability of the robot can be indicated by the proximity between the ZMP and straight line P 1 P 2 . The distance can be expressed as where A, B, and C are the coefficients of the linear equation. Total inertia moment. The robot may exhibit large velocities and acceleration during continuous movement. Moreover, due to the frequent changes in the motion direction of the robot and its zero velocity at the point closest to the inner wall, the amplitude of velocity and acceleration can be substantial. This can result in significant changes in inertia torque. Excessive inertia torque and large amplitude can make the dynamic performance of the robot challenging to control. Therefore, changes in total inertia moment should stay within a reasonable range. The total inertia moment can be expressed as where 0 F j Ii and 0 F It represent the inertia forces of the i-th link of the j-th manipulator and the trunk, respectively. 0 P ij and 0 P t are the vectors of the center of mass of the i-th link of the j-th manipulator and the trunk in the fixed coordinate system, respectively. 0 M j Ii and 0 M It are the inertia moments. The total inertia moment should be constrained from three aspects: mean, variance, and the total inertia moment at the moment of detachment from the inner wall. The mean value should also be within a reasonable range and not too large. It can be expressed as where mean(M G ) represents the mean of the total inertia moment and M mean G,min , M mean G,max is the allowable range. The variance of the total inertia moment should be as small as possible to reduce control difficulty and load on the driving motors. The total inertia moment at the moment of detachment from the inner wall should also be minimized to ensure the robot's stable movement during the flight phase.
Energy consumption. Energy consumption is another critical performance index for robots operating in a space station, where energy resources are limited. Therefore, it is essential to minimize energy consumption. The total energy consumption can be expressed as where P ij denotes the instantaneous power of the i-th joint of the j-th leg, i τ j i is the joint torque, and . θ j i is the joint angular velocity.

Optimize Variables and Objective Function
The optimization variables primarily consist of the trunk movement law, the contact points between manipulators and the inner wall, and the driving torques.
(1) Trunk movement law: Given the trajectory is not unique and the posture is not constant, the optimization variables include polynomial coefficient a s2 in Equation (1), polynomial coefficients a Θ2x , a Θ2y , and a Θ2z in Equation (4), and ∆y os2 in Equation (2). Furthermore, the optimization variables also include the motion time t 1 and t 2 of the robot in the O 1 O 2 and O 2 O 3 phases. (2) Contact points: The coordinates P 1 = (x P1 , y P1 ) and P 2 = (x P2 , y P2 ) of the two contact points are also optimized.  (13), which represent the driving torques, are also considered optimization parameters.
The optimization objective function for the continuous movement of the robot can be expressed as where where G 1 and G 2 symbolize the mean and variance of the discrete points corresponding to d ZMP . G 3 and G 4 represent the variance of the discrete points corresponding to the total inertia moment and the total inertia moment at the moment of detachment from the inner wall, respectively. G 5 represents the energy consumption of the robot. q n is the weight coefficient. For the driving torques, the main optimization objective is energy consumption, represented by G 5 in Equation (27).

Optimization Method
In the continuous movement process, a multitude of optimization parameters are involved. To enhance the optimization efficiency, an optimization algorithm based on an artificial bee colony algorithm is proposed, and the optimization flowchart is shown in Figure 3.
End ; where G1 and G2 symbolize the mean and variance of the discrete points corresponding to dZMP. G3 and G4 represent the variance of the discrete points corresponding to the total inertia moment and the total inertia moment at the moment of detachment from the inner wall, respectively. G5 represents the energy consumption of the robot. qn is the weight coefficient. For the driving torques, the main optimization objective is energy consumption, represented by G5 in Equation (27).

Optimization Method
In the continuous movement process, a multitude of optimization parameters are involved. To enhance the optimization efficiency, an optimization algorithm based on an artificial bee colony algorithm is proposed, and the optimization flowchart is shown in Figure 3.   The optimization process begins by defining the initial range of optimization parameters Z 0 = [Z 0-min , Z 0-max ] and the initial constraint range Q F = [Q Fmin , Q Fmax ] for the objective functions. Values from Z 0 are randomly selected to ascertain if the initial dataset has been filtered. If it has not, the values of each objective function are calculated. During this calculation process, the precision and efficiency of the inverse kinematics of the manipulator are linked to the given initial values. The ranges of the two contact points are divided into equidistant grids. When the trunk of the robot is at point O 1 , the joint angles of the two manipulators, which correspond to the end of the manipulators at each grid point, are calculated. This process establishes the initial joint angle dataset, D J . To solve inverse kinematics, joint angles corresponding to the coordinates of the contact points closest to the target contact points can be selected from the dataset as the initial values. This significantly enhances the efficiency of the solving process. After solving the inverse kinematics, the constraint Q y is assessed to determine whether it is satisfied. If Q y is not met, the value is re-evaluated from Z 0, and the inverse kinematics is re-solved. If Q y is satisfied, each objective function value and its corresponding argument parameters are stored. Subsequently, high-quality data are selected from the initial values to form the optimized initial value dataset D Y , after which Z 0 and Q F are updated.
The filtered dataset D Y is then input into the artificial bee colony algorithm B c for further optimization. In the three stages of leading bee, following bee, and investigating bee, the solved objective function values are evaluated against the objective function range constraint Q F . If Q F is not met, the corresponding date set is discarded. If Q F is satisfied, it is updated, and the optimization process continues. At each generation of the artificial bee colony algorithm, the minimum multi-objective function value G i is compared with the current optimal solution G best i−1 . If G i is superior to G best i−1 , it is taken as the current global optimal solution. Otherwise, the current optimal solution remains G best i−1 . After each generation of calculations, the convergence criteria R S , G best i+25 − G best i ≤ 10 −6 , is checked. If R S is not met, the optimization process continues; otherwise, the current optimal solution is regarded as the global optimal solution. This optimization method can also be applied to optimize the driving torques.

Calculation Results Analysis
To demonstrate the effectiveness of the proposed method, an example is presented. The structural parameters of two identical manipulators are shown in Table 1. Each link of the manipulator is assumed to have a mass of 0.05 kg/mm, while the trunk has a mass of 45 kg. The cross-section of the manipulator link is cylindrical with a radius of 300 mm, and that of the trunk link is rectangular with dimensions of 0.6 m × 0.8 m.   Table 3. The optimization results of driving torques are shown in Table A1 in Appendix A. Based on the method proposed in this paper, the optimization results of motion parameters are shown in Table 3. The optimization results of driving torques are shown in Table  A1 in Section Appendix A.        The motion trajectory of the center of mass of the robot's trunk in the space station is shown in Figure 4. Despite the complexity of the aforementioned environment, the robot can achieve continuous movement across various inner walls of the space station, with no intervening pauses between adjacent cycles. In the first cycle, the robot moves from the lower wall plane to the upper wall plane, followed by movement from the upper wall plane to the front wall plane during the second cycle, and from the front wall plane to the rear wall plane in the third cycle. During the fourth cycle, the robot stops when it reaches its closest point to the inner wall. The coordinates of the contact points between the manipulators and the inner wall during the four cycles are shown in Table 3. The robot will encounter obstacles during the first cycle and prohibited contact areas during the third cycle.

v1k/(m/s) v2k/(m/s) v3k/(m/s) Θ1k/° Θ2k/° ω1k/(rad/s) ω2k/(rad/s) ω3k/(rad/s)
The variations in the joint angles of the two manipulators are shown in Figure 5a,b. Throughout the contact phases, the maximum angle range for the four joints at A i , B i , C i , and  Figure 5a,b, the joint angles of the manipulators undergo significant changes, with manipulator 1 and manipulator 2 reaching maximum joint rotation angles of 31.10 • and 39.48 • , respectively. The movement of the manipulators' joints during this flight phase enables the robot to achieve the desired posture at the onset of the next cycle, ensuring movement continuity and superior performance. In terms of obstacle avoidance, during the contact phase, the minimum distance between the simplified capsules of two manipulators is 1.64 m, while the minimum distance between the capsules and the obstacles is 0.20 m. There are no collisions between the manipulators and obstacles. Similarly, during the flight phase, the minimum distance between the simplified capsules of the two manipulators is 1.48 m, which adequately satisfies the requirements for obstacle avoidance.
The motion trajectory of the center of mass of the robot's trunk in the space station is shown in Figure 4. Despite the complexity of the aforementioned environment, the robot can achieve continuous movement across various inner walls of the space station, with no intervening pauses between adjacent cycles. In the first cycle, the robot moves from the lower wall plane to the upper wall plane, followed by movement from the upper wall plane to the front wall plane during the second cycle, and from the front wall plane to the rear wall plane in the third cycle. During the fourth cycle, the robot stops when it reaches its closest point to the inner wall. The coordinates of the contact points between the manipulators and the inner wall during the four cycles are shown in Table 3. The robot will encounter obstacles during the first cycle and prohibited contact areas during the third cycle.
The variations in the joint angles of the two manipulators are shown in Figure 5a,b. Throughout the contact phases, the maximum angle range for the four joints at Ai, Bi, Ci, and Fi is [−37.74°, 73.83°], the maximum angle range for the two joints at D1 and E2 is [−122.71°, −47.01°], and the maximum angle range for the two joints at D2 and E1 is [26.37°, 122.58°]. The rotation angles remain within the permissible range. During the flight phase, as shown in Figure 5a,b, the joint angles of the manipulators undergo significant changes, with manipulator 1 and manipulator 2 reaching maximum joint rotation angles of 31.10° and 39.48°, respectively. The movement of the manipulators' joints during this flight phase enables the robot to achieve the desired posture at the onset of the next cycle, ensuring movement continuity and superior performance. In terms of obstacle avoidance, during the contact phase, the minimum distance between the simplified capsules of two manipulators is 1.64 m, while the minimum distance between the capsules and the obstacles is 0.20 m. There are no collisions between the manipulators and obstacles. Similarly, during the flight phase, the minimum distance between the simplified capsules of the two manipulators is 1.48 m, which adequately satisfies the requirements for obstacle avoidance. The variations in the angle and angular velocity of the trunk are presented in Figure  5c and Figure 5d, respectively. As can be seen from Figure 5c, the posture of the trunk is not constant and exhibits a polynomial variation law during the contact phase, which is obtained by optimization. Across the four cycles, the maximum rotation angles of the trunk around the X0, Y0, and Z0 axes are 9.58°, 7.00°, and 22.26°, respectively. If the robot's trunk posture remains unchanged, it results in a significant increase in the calculated mean and variance of dZMP, the variance of the total inertia moment and the total inertia moment at the moment of detachment from the inner wall, and the energy consumption of the robot, thereby leading to a decrease in overall performance.
The change in dZMP is shown in Figure 6a. It can be seen from Figure 6a that dZMP The variations in the angle and angular velocity of the trunk are presented in Figure 5c,d, respectively. As can be seen from Figure 5c, the posture of the trunk is not constant and exhibits a polynomial variation law during the contact phase, which is obtained by optimization. Across the four cycles, the maximum rotation angles of the trunk around the X 0 , Y 0, and Z 0 axes are 9.58 • , 7.00 • , and 22.26 • , respectively. If the robot's trunk posture remains unchanged, it results in a significant increase in the calculated mean and variance of d ZMP , the variance of the total inertia moment and the total inertia moment at the moment of detachment from the inner wall, and the energy consumption of the robot, thereby leading to a decrease in overall performance.
The change in d ZMP is shown in Figure 6a. It can be seen from Figure 6a Figure 6c. Prior to optimization, the robot's energy consumption during the four cycles, using the initial optimization values as the known values, is 3303.27 J, 3299.09 J, 3388.37 J, and 1348.79 J, respectively. Following optimization, the energy consumption of the robot during the four cycles is reduced by 51.24%, 46.48%, 43.57%, and 54.24%, respectively. These findings satisfy the requirement for low energy consumption by robots within the space station. Figure 7 shows the prohibited contact areas and contact points between robots and inner walls in the fixed coordinate system during the third cycle. The length and width sides of these areas are parallel to the X 0 -axis and Z 0 -axis, respectively. The positions of the centers of the three rectangles in the moving coordinate system for the third cycle are (17. The results from the above analysis demonstrate that the method proposed in this paper enables the robot to achieve continuous movement among the various complex inner walls of the space station while maintaining good comprehensive performance. This provides a theoretical basis for the control of robots within a space station.

Simulation Results Analysis
To further substantiate the feasibility of the method proposed in this paper, a simulation is conducted. Software Webots is employed to simulate the examples discussed in Section 3.1. Webots is an open-source and multi-platform desktop application used to simulate various types of robots, including industrial manipulators and legged robots. We employ Webots purely for simulation purposes, making no modifications to the software itself, in compliance with the software license. Webots is capable of providing realistic dynamic simulation effects and can replicate complex environments, making it an ideal match for our research. During the simulation process, the structural parameters of the robot (including the size and weight) and environmental settings are aligned with the theoretical calculations. The friction between joints is disregarded. In addition to the known values shown in Section 2.2, the positions of the contact points and the driving torques are also provided as known values.  Figure 7 shows the prohibited contact areas and contact points between robots and inner walls in the fixed coordinate system during the third cycle. The length and width sides of these areas are parallel to the X0-axis and Z0-axis, respectively. The positions of the centers of the three rectangles in the moving coordinate system for the third cycle are (17.35 m, 1.79 m), (17.35 m, 2.79 m), and (17.35 m, 3.78 m). Without considering the prohibited contact areas, the optimized positions of the two contact points are (17.50 m, 1.43 m) and (17.35 m, 4.08 m), respectively. However, these contact points fall within the prohibited contact areas. Thus, the contact position is optimized twice, resulting in new con-  The results from the above analysis demonstrate that the method proposed in this paper enables the robot to achieve continuous movement among the various complex inner walls of the space station while maintaining good comprehensive performance. This provides a theoretical basis for the control of robots within a space station.

Simulation Results Analysis
To further substantiate the feasibility of the method proposed in this paper, a simulation is conducted. Software Webots is employed to simulate the examples discussed in Section 3.1. Webots is an open-source and multi-platform desktop application used to simulate various types of robots, including industrial manipulators and legged robots. We employ Webots purely for simulation purposes, making no modifications to the software itself, in compliance with the software license. Webots is capable of providing realistic dynamic simulation effects and can replicate complex environments, making it an ideal match for our research. During the simulation process, the structural parameters of the robot (including the size and weight) and environmental settings are aligned with the theoretical calculations. The friction between joints is disregarded. In addition to the known values shown in Section 2.2, the positions of the contact points and the driving torques are also provided as known values.
The motion process of the robot within the space station is shown in Figure 8. It can be intuitively seen from Figure 8 that the motion trajectory and the change in the posture of the robot. The discrepancy between the theoretical calculation results and the simulation results for the motion law of the robot is shown in Figure 9. Figure 9a shows the difference in the motion trajectory of the robot. The cumulative errors result in an increasing trajectory difference. The difference in the motion trajectory along the three axes is 110.23 mm, 123.41 mm, and 110.51 mm at the end of the continuous movement, respectively. Compared with the total movement distance (60.32 m in four cycles), the error remains within a marginal range. Figure 9b shows the variation in the trunk velocities, with maximum and minimum values of 5.72 × 10 −3 m/s and 0 m/s, respectively. Moreover, the ratio of the maximum difference to the maximum motion velocity of the robot is merely 0.01. Figure 9c,d show the difference between the theoretical calculation results and simulation results regarding the trunk angle and angular velocity, where the difference in both angle and angular velocity fluctuates within small ranges. The variation range for the angle difference is [−6.91°, 7.10°], and for angular velocity difference, it is [−0.013 rad/s, 0.011 rad/s]. These ranges also remain within a reasonable range when compared with the actual rotation angles and angular velocities of the robot's trunk. The disparity between the theoretical calculation results and the simulation results can primarily be attributed to the following key factor. The inability to completely immobilize the contact points, and The motion process of the robot within the space station is shown in Figure 8. It can be intuitively seen from Figure 8 that the motion trajectory and the change in the posture of the robot. The discrepancy between the theoretical calculation results and the simulation results for the motion law of the robot is shown in Figure 9. Figure 9a shows the difference in the motion trajectory of the robot. The cumulative errors result in an increasing trajectory difference. The difference in the motion trajectory along the three axes is 110.23 mm, 123.41 mm, and 110.51 mm at the end of the continuous movement, respectively. Compared with the total movement distance (60.32 m in four cycles), the error remains within a marginal range. Figure 9b shows the variation in the trunk velocities, with maximum and minimum values of 5.72 × 10 −3 m/s and 0 m/s, respectively. Moreover, the ratio of the maximum difference to the maximum motion velocity of the robot is merely 0.01. Figure 9c,d show the difference between the theoretical calculation results and simulation results regarding the trunk angle and angular velocity, where the difference in both angle and angular velocity fluctuates within small ranges. The variation range for the angle difference is [−6.91 • , 7.10 • ], and for angular velocity difference, it is [−0.013 rad/s, 0.011 rad/s]. These ranges also remain within a reasonable range when compared with the actual rotation angles and angular velocities of the robot's trunk. The disparity between the theoretical calculation results and the simulation results can primarily be attributed to the following key factor. The inability to completely immobilize the contact points, and the micro-slip of the end of the manipulator relative to the inner wall, leads to changes in the motion law of the robot. Hence, during the prototype production stage, high-friction materials or adsorption devices can be employed at the end of the manipulators to prevent contact point slips. The aforementioned simulation was conducted without considering joint friction. However, joint friction could potentially influence omnidirectional continuous movement [44]. Assuming a friction coefficient of 0.15, the difference in the motion trajectory of the trunk, both with and without considering joint friction, is shown in Figure 10. It can be seen from Figure 10 that the trunk's trajectory, after factoring in friction, deviates from the previous simulation trajectory. This deviation occurs because the presence of friction can alter the force distribution at the manipulator joints, thereby affecting the trunk's trajectory. However, this deviation falls within a small range, with a maximum error of 2.7 mm. A larger friction coefficient may lead to a greater deviation in movement and increased energy consumption.
The aforementioned analysis indicates that the simulation results of the robot align closely with the theoretical calculation results, supporting the feasibility of the method proposed in this paper. of friction can alter the force distribution at the manipulator joints, trunk's trajectory. However, this deviation falls within a small ran error of 2.7 mm. A larger friction coefficient may lead to a greater de and increased energy consumption. the micro-slip of the end of the manipulator relative to the inner wall, leads to changes in the motion law of the robot. Hence, during the prototype production stage, high-friction materials or adsorption devices can be employed at the end of the manipulators to prevent contact point slips. The aforementioned simulation was conducted without considering joint friction. However, joint friction could potentially influence omnidirectional continuous movement [44]. Assuming a friction coefficient of 0.15, the difference in the motion trajectory of the trunk, both with and without considering joint friction, is shown in Figure  10. It can be seen from Figure 10 that the trunk's trajectory, after factoring in friction, deviates from the previous simulation trajectory. This deviation occurs because the presence of friction can alter the force distribution at the manipulator joints, thereby affecting the trunk's trajectory. However, this deviation falls within a small range, with a maximum error of 2.7 mm. A larger friction coefficient may lead to a greater deviation in movement and increased energy consumption.   The aforementioned analysis indicates that the simulation r closely with the theoretical calculation results, supporting the fe proposed in this paper.

Discussion
The strengths of the algorithm proposed in this paper are p following areas.
(1) Traditional artificial bee colony algorithms randomly select h range of independent variables. For our algorithm, we creat to optimization. This means that the randomly obtained hon based on the values of each objective function, leading to e efficiency; (2) The range of contact points between the manipulators and th and a joint angle dataset is established. Using the joint angl mesh points closest to the actual contact points as the initia dresses the problem of low efficiency in solving the inverse k ulators; (3) A single objective function range constraint is introduced in ing bee, following bee, and investigating bee. This strategy al of some solutions that evidently do not meet the requiremen ing and comparing the normalized multi-objective function v (4) Throughout the optimization process, the range of independ tial dataset and the constraint range of each objective functi dated to improve the convergence speed of the algorithm.

Discussion
The strengths of the algorithm proposed in this paper are primarily evident in the following areas.
(1) Traditional artificial bee colony algorithms randomly select honey sources within the range of independent variables. For our algorithm, we create an initial dataset prior to optimization. This means that the randomly obtained honey sources are screened based on the values of each objective function, leading to enhanced computational efficiency; (2) The range of contact points between the manipulators and the inner wall is meshed, and a joint angle dataset is established. Using the joint angles corresponding to the mesh points closest to the actual contact points as the initial values effectively addresses the problem of low efficiency in solving the inverse kinematics of the manipulators; (3) A single objective function range constraint is introduced in the three stages of leading bee, following bee, and investigating bee. This strategy allows for the elimination of some solutions that evidently do not meet the requirements even before calculating and comparing the normalized multi-objective function values; (4) Throughout the optimization process, the range of independent variables in the initial dataset and the constraint range of each objective function are dynamically updated to improve the convergence speed of the algorithm.
To further underscore the superiority of OA-ABC introduced in this paper, we compare it with the traditional artificial bee colony algorithm (ABC) and the genetic algorithm (GA) [45][46][47]. For the GA, we set the number of individuals (NIND) at 100, the maximum number of generations (MAXGEN) at 100, and the generation gap (GGAP) at 0.9. The convergence speeds of the algorithms are shown in Figure 11. The convergence algebra (cg), calculation time, and final objective function values of different algorithms are shown in Table 4. Both Figure 11 and Table 4 clearly demonstrate that the method proposed in this paper has the fastest convergence speed and is capable of delivering solutions that meet the requirements in the shortest possible time.  The comparison of the omnidirectional mobile robot proposed in this paper with existing space mobile robots is shown in Table 5. The humanoid robot, Rollin' Justin, is a wheel-type mobile space robot capable of utilizing its two manipulators for collaborative tasks [14]. Chen et al. [15] developed a multi-toed quadruped robot, which is a typical bionic-legged robot. This type of robot exhibits good adaptability to complex terrains but has limited operational capabilities. Zhang et al. [18] developed a full-size and free-flying humanoid robot that can nearly replicate an astronaut's movements, indicating promising application prospects. However, there is no mention of its capacity for omnidirectional continuous movement in the published research results. The space robot Astrobee, developed by Stanford University, features a straightforward structure, facilitating easy installation and placement. Nevertheless, its omnidirectional mobility requires further enhancement [19]. The robot proposed in this paper employs its two manipulators as both a mobile device and an operating device. The robot is capable of swiftly moving between different inner walls of the space station and exhibits good obstacle-crossing capabilities.  The comparison of the omnidirectional mobile robot proposed in this paper with existing space mobile robots is shown in Table 5. The humanoid robot, Rollin' Justin, is a wheel-type mobile space robot capable of utilizing its two manipulators for collaborative tasks [14]. Chen et al. [15] developed a multi-toed quadruped robot, which is a typical bionic-legged robot. This type of robot exhibits good adaptability to complex terrains but has limited operational capabilities. Zhang et al. [18] developed a full-size and freeflying humanoid robot that can nearly replicate an astronaut's movements, indicating promising application prospects. However, there is no mention of its capacity for omnidirectional continuous movement in the published research results. The space robot Astrobee, developed by Stanford University, features a straightforward structure, facilitating easy installation and placement. Nevertheless, its omnidirectional mobility requires further enhancement [19]. The robot proposed in this paper employs its two manipulators as both a mobile device and an operating device. The robot is capable of swiftly moving between different inner walls of the space station and exhibits good obstacle-crossing capabilities.

Omnidirectional Mobility
Collaborative Ability

Conclusions
In order to facilitate efficient robot movement within a space station, this paper proposed an omnidirectional continuous movement method for a dual-arm robot. This method emulates the way astronauts use the reaction forces from their hands or feet and the inner walls to move around. (1) After determining the configuration of the robot's two manipulators, mathematical models for both the contact and flight phases were established. These models clarified the relationship between motion parameters and dynamic performance, underscoring the significance of the robot's motion mode in achieving continuous movement. (2) Several constraints were proposed, including obstacle constraints, prohibited contact area constraints, and performance constraints. After determining the optimization parameters, an optimization algorithm based on the artificial bee colony algorithm (OA-ABC) was proposed to enhance computational efficiency through the stepwise screening of variables and objective function values. (3) An example was provided of a robot achieving omnidirectional continuous movement within a space station model measuring 32.5 m × 23.7 m × 18.6 m. The robot achieves continuous movement between different inner walls over more than three cycles, covering a total distance of 60.32 m. During the flight phase, the maximum rotation angle and angular velocity of the robot's trunk were 189 • and 0.23 rad/s, respectively. In long-distance movement, the error between the theoretically calculated results and the simulation results fell within a reasonable range, and the robot demonstrated good comprehensive performance. These findings validate the feasibility of the method proposed in this paper. The method proposed in this paper provides a theoretical reference for controlling the motion of robots in a space station.  Force between links/torque between links/drive torque E Energy consumption A j (x Aj /y Aj ) Landing point coordinates

Appendix A
The driving torque contains a large number of optimization variables. For the example shown in Section 3.1, the optimization results of the parameters corresponding to the driving torque are shown in Table A1.