Model Predictive Control of a Novel Wheeled–Legged Planetary Rover for Trajectory Tracking

Amid increasing demands for planetary exploration, wide-range autonomous exploration is still a great challenge for existing planetary rovers, which calls for new planetary rovers with novel locomotive mechanisms and corresponding control strategies. This paper proposes a novel wheeled–legged mechanism for the design of planetary rovers. The leg suspension utilizes a rigid–flexible coupling mechanism with a hybrid serial–parallel topology. First, the kinematic model is derived. Then, a control strategy for the wheeled–legged rover that includes a trajectory tracking module based on the model predictive control, the steering strategy, and the wheel speed allocation algorithm is proposed. After that, three groups of cosimulations with different trajectories and speeds, and experiments are carried out. Results of both the simulations and experiments validate the proposed control method.


Introduction
The planetary rovers that were deployed for the exploration of the moon and Mars, such as Curiosity and Perseverance, are purely wheeled robotic systems [1,2]. They adopt the passive rocker-bogie suspension configuration. There are two identical linkage mechanisms on each side of the rover, which consist of a rocker and a bogie. A differential mechanism is adopted to connect the two linkage mechanisms. One wheel is fixed at one end of the rocker, while the bogie has two wheels that are mounted on the other end of the rocker. Recently, China's Zhurong Mars rover adopted an active rocker-bogie suspension. There was a novel angle-adjusting mechanism between the two rockers to generate a wheel-step motion that could help the rover avoid wheel slip sinkage [3]. Although many remarkable achievements have been made in the field of planetary exploration, the capability of wide-range autonomous exploration is still a great challenge for planetary rovers.
The hybrid leg-wheel mechanism can be used in the design of planetary rovers. Legged-wheeled robots have the merits of being both wheeled and legged robots. They can robustly deal with uncertainties or disturbances caused by the unstructured discontinuous terrain encountered during planetary exploration. Moreover, they have a relatively high locomotion efficiency. There are three categories of leg-wheel robotic systems that differ according to leg morphology [4]. The first one is the serial leg configuration. For example, the Jet Propulsion Laboratory (JPL) developed an articulated-wheeled lunar robot called ATHLETE [5]. Each leg was a 6R (rotational joint) serial mechanism with six degrees of freedom (DOFs). It could roll over flat smooth terrain on rotating wheels and could also use the wheels as feet to walk over irregular and steep terrain. Grand et al. [6] addressed a wheeled-legged robot called Hylos, which had 16 actively actuated DOFs, with each leg combining a two-DOF leg and the steering and rotation DOFs in the wheel. Smith et al. [7] presented the PAW, a four-legged vehicle with a T-shaped body and compliant Therefore, it is necessary to provide a suitable speed for each wheel that is based on the motion characteristics of the whole robot on rough terrain.
In this paper, a novel wheeled-legged mechanism called TAWL is proposed for the design of planetary rovers. The leg suspension utilizes a rigid-flexible coupling mechanism with a hybrid serial-parallel topology. A kinematic model is derived first. Then, a control strategy for a wheeled-legged rover is proposed that includes a trajectory-tracking module based on MPC, the steering module, and the wheel speed allocation module. After that, a cosimulation model is established in both NX/Motion and Simulink software to verify the control strategy. Finally, experiments are also carried out to validate the proposed control method.
The remainder of the paper is organized as follows: Section 2 reports the hardware design and the kinematics of the rover; Section 3 details the control strategy; Section 4 presents the simulations, experiments, and the discussion of the results; and finally, Section 5 offers the conclusions.

Mechanical Structure
There are two aspects that need to be considered for leg design: First, the leg inertia must be as low as possible. Each leg has four DOFs, as illustrated in Figure 1, namely the hip abduction/adduction (HAA) joint, the hip flexion/extension (HFE) joint, the hip endo/exorotation (HEE), and the knee flexion/extension (KFE) joint. The HEE joint can also be used to steer the wheels. To reduce the rotational inertia of the robot's legs, the actuators of the HFE and KFE joints are coaxially located at the hip. The KFE joint is actuated by a pantograph mechanism. In addition, to increase the driving torques of the HFE and KFE joints, a gear reducer stage was adopted at each of their output shafts. Second, compliant mechanisms are necessary for legged robotic systems to handle uncertainties or disturbances such as ground contact collisions. A telescopic structure with a passive damped spring was used for the leg design. In addition, there are two spring ball plungers that trigger the spring-damper mechanism. When the impact force from the ground exceeds the threshold value of the spring ball plunger, the spring-damper mechanism works to dissipate the impact energy. After that, the lower leg returns to its original length with the restoring force of the spring. provide a suitable speed for each wheel that is based on the motion characterist whole robot on rough terrain.
In this paper, a novel wheeled-legged mechanism called TAWL is propose design of planetary rovers. The leg suspension utilizes a rigid-flexible mechanism with a hybrid serial-parallel topology. A kinematic model is deriv Then, a control strategy for a wheeled-legged rover is proposed that includes a tr tracking module based on MPC, the steering module, and the wheel speed a module. After that, a cosimulation model is established in both NX/Motion and S software to verify the control strategy. Finally, experiments are also carried out to the proposed control method.
The remainder of the paper is organized as follows: Section 2 reports the h design and the kinematics of the rover; Section 3 details the control strategy; S presents the simulations, experiments, and the discussion of the results; and Section 5 offers the conclusions.

Mechanical Structure
There are two aspects that need to be considered for leg design: First, the le must be as low as possible. Each leg has four DOFs, as illustrated in Figure 1, na hip abduction/adduction (HAA) joint, the hip flexion/extension (HFE) joint, endo/exorotation (HEE), and the knee flexion/extension (KFE) joint. The HEE also be used to steer the wheels. To reduce the rotational inertia of the robot's actuators of the HFE and KFE joints are coaxially located at the hip. The KFE actuated by a pantograph mechanism. In addition, to increase the driving torqu HFE and KFE joints, a gear reducer stage was adopted at each of their outpu Second, compliant mechanisms are necessary for legged robotic systems to uncertainties or disturbances such as ground contact collisions. A telescopic s with a passive damped spring was used for the leg design. In addition, there spring ball plungers that trigger the spring-damper mechanism. When the imp from the ground exceeds the threshold value of the spring ball plunger, the damper mechanism works to dissipate the impact energy. After that, the lower le to its original length with the restoring force of the spring.   The TAWL robot has four identical legs with wheels. The four legs are mounted to the torso in an axially symmetric distribution, as depicted in Figure 2. Its four hip joints are located on a circle with a diameter of 1.2 m. From a biological view, to obtain highly dynamic characteristics in the longitudinal direction, the ratio of the length to the width of the torso should be more than 1. However, the wheeled mode is the primary motion mode for the TAWL robot. An axially symmetrical arrangement was adopted for the robot design so that the robot would have all-directional locomotion capability in both the wheeled and legged modes (walking or trotting). Furthermore, this arrangement also increases the number of legged locomotion modes. There are at least three leg configurations for legged locomotion, i.e., the M-configuration, O-configuration, and X-configuration. The TAWL robot has four identical legs with wheels. The four legs are mounted to the torso in an axially symmetric distribution, as depicted in Figure 2. Its four hip joints are located on a circle with a diameter of 1.2 m. From a biological view, to obtain highly dynamic characteristics in the longitudinal direction, the ratio of the length to the width of the torso should be more than 1. However, the wheeled mode is the primary motion mode for the TAWL robot. An axially symmetrical arrangement was adopted for the robot design so that the robot would have all-directional locomotion capability in both the wheeled and legged modes (walking or trotting). Furthermore, this arrangement also increases the number of legged locomotion modes. There are at least three leg configurations for legged locomotion, i.e., the M-configuration, O-configuration, and Xconfiguration.

Perception and Control System
There are two types of sensors: proprioceptive and exteroceptive sensors. Proprioceptive sensors contain the joint encoder, the joint torque sensor, and the inertial measurement unit (IMU), as seen in Figure 3. All of the joint angles are precisely measured by absolute encoders. Since the angle measures of each motor are absolute, the robot does not have to be homed at startup. The IMU sensor is mounted on the body and is responsible for the poses of the robot's torso. Exteroceptive sensors include visual and nonvisual sensors, which are employed to measure environmental information such as the geometrical parameters of the terrain and ground contact forces. Here, a stereo vision system was attached to the front part of the main body. Furthermore, an independent computer was implemented to deal with the vision algorithms. To improve the reliability, we did not assemble force sensors for ground contact force measurements to the end of each leg. We established a distribution measurement model and then evaluated the ground contact forces using the measurement data from the joint torque sensors.
An onboard main controller was used to run the entire control program. The main controller communicates with 20 servo drives and 16 joint torque sensors in real time via the EtherCAT industrial network protocol (Bechoff, Verl, Germany). The measurement data from the IMU sensor are transferred into the main controller according to the RS-485 serial data standard. The main controller communicates with the visual controller by means of the ADS (automation device specifications) protocol. The TAWL robot's control software was developed using the TwinCAT software platform (Bechoff, Verl, Germany), a real-time PC-based control system. In addition, there are two on-board lithium batteries that the robot can use to run for about 1.5 h.

Perception and Control System
There are two types of sensors: proprioceptive and exteroceptive sensors. Proprioceptive sensors contain the joint encoder, the joint torque sensor, and the inertial measurement unit (IMU), as seen in Figure 3. All of the joint angles are precisely measured by absolute encoders. Since the angle measures of each motor are absolute, the robot does not have to be homed at startup. The IMU sensor is mounted on the body and is responsible for the poses of the robot's torso. Exteroceptive sensors include visual and nonvisual sensors, which are employed to measure environmental information such as the geometrical parameters of the terrain and ground contact forces. Here, a stereo vision system was attached to the front part of the main body. Furthermore, an independent computer was implemented to deal with the vision algorithms. To improve the reliability, we did not assemble force sensors for ground contact force measurements to the end of each leg. We established a distribution measurement model and then evaluated the ground contact forces using the measurement data from the joint torque sensors.
An onboard main controller was used to run the entire control program. The main controller communicates with 20 servo drives and 16 joint torque sensors in real time via the EtherCAT industrial network protocol (Bechoff, Verl, Germany). The measurement data from the IMU sensor are transferred into the main controller according to the RS-485 serial data standard. The main controller communicates with the visual controller by means of the ADS (automation device specifications) protocol. The TAWL robot's control software was developed using the TwinCAT software platform (Bechoff, Verl, Germany), a real-time PC-based control system. In addition, there are two on-board lithium batteries that the robot can use to run for about 1.5 h.

Kinemactics of the Rover
The body frame {OB-XBYBZB} of the whole robot is located at the center of t and is composed of the centers of four hip joints. We established the D-H co systems in Figure 4 for each leg. Because each leg has the same kinematic struc D-H parameters of the four legs are also the same. {O0-x0y0z0} is the base fram leg (i.e., the leg frame), which is located at the center of the hip joint. {O4-x4y4 wheel frame of each leg. The D-H parameters are shown in Table 1

Kinemactics of the Rover
The body frame {O B -X B Y B Z B } of the whole robot is located at the center of the plane and is composed of the centers of four hip joints. We established the D-H coordinate systems in Figure 4 for each leg. Because each leg has the same kinematic structure, the D-H parameters of the four legs are also the same. {O 0 -x 0 y 0 z 0 } is the base frame of each leg (i.e., the leg frame), which is located at the center of the hip joint. {O 4 -x 4 y 4 z 4 } is the wheel frame of each leg. The D-H parameters are shown in Table 1. Therefore, the transformation matrix from frame i − 1 to i for the ith limb can be written as where s and c denote the sine and cosine functions.

Kinemactics of the Rover
The body frame {OB-XBYBZB} of the whole robot is located at the center of the plane and is composed of the centers of four hip joints. We established the D-H coordinate systems in Figure 4 for each leg. Because each leg has the same kinematic structure, the D-H parameters of the four legs are also the same. {O0-x0y0z0} is the base frame of each leg (i.e., the leg frame), which is located at the center of the hip joint. {O4-x4y4z4} is the wheel frame of each leg. The D-H parameters are shown in Table 1. Therefore, the transformation matrix from frame i − 1 to i for the ith limb can be written as   For the ith leg, the transformation matrix from the wheel frame to the leg frame is written as For the ith leg, the transformation matrix from the wheel frame to the leg frame is written as where s 34 = sin(θ 3 +θ 4 ), c 34 = cos(θ 3 +θ 4 ), s 2 = sinθ 2 , c 2 = cosθ 2 , s 3 = sinθ 3 , and c 3 = cosθ 3 .
Here, θ 1 = π/2 and P = (P x , P y P z ) T . are the positions of the wheel center with respect to the leg frame. When P is given, the rotational angle of each joint, θ 2 , θ 3 , and θ 4 , can be obtained as where

Control Strategy
In this section, a control architecture for the wheeled-legged rover is proposed, as depicted in Figure 5. The control strategy consists of a planning layer, a controller layer, and a physical layer. First, the planner layer generates the reference trajectory. A planned path is generally composed of discrete points that come from the operator or the planner, which is based on a vision system. Using these points, a Bezier curve was adopted to produce a reference trajectory that included the time information. Thus, the derivation of the reference trajectory yielded the reference velocity. Second, the controller layer includes an MPC module, a steering module, and a wheel speed allocation module. The MPC module calculates the optimal control inputs through the last control inputs and the current state variables. The state variables can be estimated by a data fusion algorithm such as a Kalman filter and a particle filter, which is based on the proprioceptive and exteroceptive sensors in the robotic system. Considering that the main purpose was to verify the trajectory tracking algorithm, the state variables, including the position and velocity of the robot, were measured by the vision motion capture system directly in the present experimental study. In addition, to eliminate the accumulated errors, a PID control method was added in the loop. Then, the steering module provided the speed and the steering angle of each wheel. After that, the wheel speed allocation algorithm was presented to avoid a wheel slip. Next, the leg joint angles were obtained through the inverse kinematics of the rover. Third, the physical layer received the steering angles, the wheel speeds, and the leg joint angles and sent these orders to servo drives. such as a Kalman filter and a particle filter, which is based on the proprioceptive and exteroceptive sensors in the robotic system. Considering that the main purpose was to verify the trajectory tracking algorithm, the state variables, including the position and velocity of the robot, were measured by the vision motion capture system directly in the present experimental study. In addition, to eliminate the accumulated errors, a PID control method was added in the loop. Then, the steering module provided the speed and the steering angle of each wheel. After that, the wheel speed allocation algorithm wa presented to avoid a wheel slip. Next, the leg joint angles were obtained through the inverse kinematics of the rover. Third, the physical layer received the steering angles, the wheel speeds, and the leg joint angles and sent these orders to servo drives.

Trajectory tracking based on MPC
Steering strategy The TAWL Rover Wheel speed allocation PID PID -

Locomotive Equations
The rotation matrix from the body frame {B} to the world frame {W} is written as where , , and are the fixed rotational angles with respect to the x, y, and z axes o the world frame, respectively. Furthermore, the velocity of the centroid of the robot can be denoted by

Locomotive Equations
The rotation matrix from the body frame {B} to the world frame {W} is written as where α, β, and γ are the fixed rotational angles with respect to the x, y, and z axes of the world frame, respectively. Furthermore, the velocity of the centroid of the robot can be denoted by where V W cm and V B cm are the velocities of the body centroid for frames {W} and {B}, and The yaw angle of the robot with respect to the body frame, γ B , can be written as where γ is the yaw angle in frame {W}.
Aordingly, the kinematic equation for the trajectory tracking is obtained as x, . y, x r , . y r , . γ r T , and Therefore, expanding Equation (10) in the Taylor series around the reference point (X r , u r ) and discarding the high order terms yields Accordingly, the state space equation can be denoted by .X is the error with respect to the reference trajectory, andû is its associated perturbation control input.
Using forward differences, the approximation of . X can be obtained as the following discrete-time form: where G k = TA k + I, and H k = TB k . T and k are the sampling period and the sampling time. I is the identity matrix.

Objective Function
A controller was designed for the wheeled-legged robot to track the desired trajectory precisely and stably. By changing the current and future inputs of the control system, the optimization problem is the minimization of a predicted performance cost, which is a quadratic function of the states and control inputs as follows: where N p and N c are the prediction and control horizons, respectively. Here, Q and R are the weighting matrices; ρ is the weight coefficient, and ε is the relaxation factor. Let we obtain Furthermore, Equations (16) and (17) can be rewritten as the following matrix form: where Equations (14) and (18) yield Here, Ωξ(t) is not affected by the inputs and can thus be discarded. Therefore, the objective function is rewritten as a standard quadratic form: where

Constraints
There are some constraints when the wheeled-legged robot carries out trajectory tracking tasks. The amplitude of the control input u and control input increment ∆u satisfy where u min and ∆u min are the predefined lower bounds, and u max and ∆u max are the predefined upper bounds. Furthermore, the variable to be solved in the objective function are the control increment in the control horizon. Therefore, the constraints need be converted into the product form of the control increment and the transformation matrix.
The following relationship exists: Furthermore, Equation (23) can be reformulated as a matrix form: where . . .
For the control increment, we have where Accordingly, Equations (20), (25) and (26) yield the following quadratic programming problem Sving Equation (27) in each control cycle leads to a series of control increments in the control time domain: Furthermore, the first element in the sequence was adopted for the actual control increment u * (t|t) = u(t − 1|t) + ∆u * (t|t). (29) Finally, by repeating the above process in each control cycle, the desired trajectory is tracked.

Streering Strategy
Using the aforementioned MPC method, we can obtain the optimal control inputs, u * (t|t) = v B x , ω B z . Furthermore, the speed and the steering angle of each wheel need to be derived. In the present study, the steering strategy in which all of the wheels make the uniform circular motion was adopted, as seen in Figure 6. Finally, by repeating the above process in each control cycle, the desired traje tracked.

Streering Strategy
Using the aforementioned MPC method, we can obtain the optimal control * ( | ) = ( , ). Furthermore, the speed and the steering angle of each wheel be derived. In the present study, the steering strategy in which all of the wheels m uniform circular motion was adopted, as seen in Figure 6.
The point M is the steering center and the steering radius of the robot R is = , where ≠ 0. Furthermore, the steering radii of the four wheels are written as .
According to Ackermann's principle, the wheel speeds and the steering an obtained as follows: The point M is the steering center and the steering radius of the robot R is where ω B z = 0. Furthermore, the steering radii of the four wheels are written as According to Ackermann's principle, the wheel speeds and the steering angles are obtained as follows: where ω r f , ω l f , ω rr , and ω lr are the wheel speeds, and δ r f , δ l f , δ rr , and δ lr are the steering angles. Here, sign(k) is a signum function, and sign(k) = −1 when the wheel rotates clockwise; sign(k) = 1 when the wheel rotates anticlockwise. When ω B z = 0 in Equation (30), the four steering angles are all zero, i.e., δ r f = δ l f = δ rr = δ lr = 0.

Wheel Speed Allocation (WSA)
The WSA module calculates the suitable speed for each wheel according to the motion characteristics of the whole robot on rough terrain.
First, according to the kinematic equations, the linear velocity of the wheel center and the angular velocity of the lower leg (i.e., Frame 4) in Figure 4 are written as where S iw is the position vector of the wheel center with respect to the body frame; 4 B R i is the rotation transformation matrix from the body frame to frame 4; 4 0 R i is the rotation transformation matrix from the leg frame to frame 4; J i is the Jacobian matrix with respect to the leg frame; i = 1-4 denotes the leg number; and v B i0 and ω B i0 are the linear and angular velocities of the leg frame with respect to the body frame, which are given by where ω B is the angular velocity of the body. Second, the ideal (no-slip) linear velocity of the wheel center comes from the driving motor and the rotation of the lower leg, which can be denoted by where ω iwz is the projection of ω iw on the direction of the wheel axis. Accordingly, the rotational speeds of the wheel motors are obtained by

Simulations
The numerical program of the control strategy was first developed using MATLAB software. Then, the joint simulation model was established by SIMULINK and UG Motion software. UG motion software provides the joint angles as well as the pitch and roll angles for each control block. In the meantime, the control blocks calculate the joint angles and wheel speeds and provide them to the virtual prototype. There are some system and control parameters that can be grouped into three categories, namely the input parameters, the output parameters, and the control parameters, as seen in Table 2. The input parameters include the points on the reference path, the desired yaw angle of the robot body, and the desired linear and angular velocities of the robot body. The output parameters are the linear and angular velocities of the robot body from the MPC and the steering angles and the wheel speeds. In addition, there are control parameters, including the prediction and control horizons, the weight coefficient and the relaxation factor, and the PID parameters to control the linear and angular velocities of the robot body.
The linear and angular velocities of the body δ r f , δ l f , , δ lr Steering angles ω id .
Rotational speeds of the wheel motors First, the WSA module was verified. For the simulation, the terrain included two trapezoid and two arc obstacles. The posture as well as the linear and angular velocities of the body, the joint angles and the angular velocities of the joints, and the driving speeds of the wheels were all measured using the virtual model in UG Motion software. Note that the terrain with the obstacles led to the changes of rover attitude angles (α, β). Here, the terrain-adaptive algorithm in [27] was adopted to control the rover attitude. With this algorithm, the robot attitude was almost kept unchanged in irregular terrains. Then, the practical linear velocity of the wheel centers and the practical angular velocity of the wheels were calculated according to Equations (36) and (37). Therefore, the slip percent could be obtained from where R w is the radius of the wheel; ω id is the practical angular velocity of the wheel, which can be measured by the wheels' encoders; and v i is the practical linear velocity of the wheel center. Figure 7 shows the comparison of the slippage percentages with and without the WSA module. Without the WSA module, the slippage reached up to 0.25, while with the WSA, the maximum of the slippage was less than 0.13. It was found that wheel slip was obviously decreased by the WSA component. Second, the trajectory tracking based on MPC was verified. An arc trajectory with a radius of 30 m in the plane was selected for the validation simulation. In the simulations, there were three speeds, i.e., 0.1 m/s, 0.2 m/s, and 0.4 m/s. The control parameters for the simulations of the linear trajectory were: N p = 6; N c = 3; ρ = 10; ε = 0 for the lower limit and ε = 10 for the upper limit. The PID parameters for the linear velocity were set as: k p1 = 2, k i1 = 1, k d1 = 0. Since there was only a linear velocity in the body frame, the PID module for the control of angular velocities did not work. Figures 8-10 show the trajectory tracking results for three speeds. It was found that the robot could track the corresponding target values within a short period of time under the three different speeds. There was a large increase in trajectory errors at the beginning of the tracking process. The reason for this is that the initial direction of the target speed was the same as the x axis in the global coordinate system. There was an obvious delay before the actual speed reached the target value, and the speed error was relatively larger at the beginning. Furthermore, it was found that there were obvious overshoots in the velocity responses from the MPC method in the beginning. These overshoots facilitated trajectory tracking, and thus, the forward velocity of the robot could approximate the desired value quickly. In the meantime, the overshoot increased as the desired speed increases. The overshoot at 0.4 m/s was the largest one among the three forward speeds. It should also be noted that the final velocity response errors increased as the target speed increased. However, as a whole, the trajectory errors for the three speeds were all relatively small, validating the MPC module and the whole control strategy. Second, the trajectory tracking based on MPC was verified. An arc trajectory with a radius of 30 m in the plane was selected for the validation simulation. In the simulations, there were three speeds, i.e., 0.1 m/s, 0.2 m/s, and 0.4 m/s. The control parameters for the simulations of the linear trajectory were: Np = 6; Nc = 3; = 10; = 0 for the lower limit and = 10 for the upper limit. The PID parameters for the linear velocity were set as: = 2, = 1, = 0. Since there was only a linear velocity in the body frame, the PID module for the control of angular velocities did not work. Figures 8-10 show the trajectory tracking results for three speeds. It was found that the robot could track the corresponding target values within a short period of time under the three different speeds. There was a large increase in trajectory errors at the beginning of the tracking process. The reason for this is that the initial direction of the target speed was the same as the x axis in the global coordinate system. There was an obvious delay before the actual speed reached the target value, and the speed error was relatively larger at the beginning. Furthermore, it was found that there were obvious overshoots in the velocity responses from the MPC method in the beginning. These overshoots facilitated trajectory tracking, and thus, the forward velocity of the robot could approximate the desired value quickly. In the meantime, the overshoot increased as the desired speed increases. The overshoot at 0.4 m/s was the largest one among the three forward speeds. It should also be noted that the final velocity response errors increased as the target speed increased. However, as a whole, the trajectory errors for the three speeds were all relatively small, validating the MPC module   To further validate the control strategy, a more complicated trajectory, i.e., an S-type trajectory was selected for the tracking simulations. The S-type trajectory consisted of two semicircles with a radius of R = 20 m, which can be described as follows:   To further validate the control strategy, a more complicated trajectory, i.e., an S-type trajectory was selected for the tracking simulations. The S-type trajectory consisted of two semicircles with a radius of R = 20 m, which can be described as follows: To further validate the control strategy, a more complicated trajectory, i.e., an S-type trajectory was selected for the tracking simulations. The S-type trajectory consisted of two semicircles with a radius of R = 20 m, which can be described as follows: where v x = 0.4 m/s; ω z = v x /R; T s = π/ω z . During the simulation, the control parameters were set as: N p = 6; N c = 3; ρ = 10; ε = 0 for the lower limit and ε = 10 for the upper limit. The PID parameters for the linear velocity were set as: k p1 = 0.7, k i1 = 0, k d1 = 5. Figure 11 gives the comparisons of the theoretical and real trajectories and velocities. It was found that the robot could track well the reference trajectory and the reference velocity when running along the S-type trajectory. Furthermore, the errors in the x and y coordinates were very small, the relative error of which were less than 2% and 1.75%, respectively, as seen in Figure 12.
parameters were set as: Np = 6; Nc = 3; = 10; = 0 for the lower limit and = 10 for the upper limit. The PID parameters for the linear velocity were set as: = 0.7, = 0, = 5. Figure 11 gives the comparisons of the theoretical and real trajectories and velocities. It was found that the robot could track well the reference trajectory and the reference velocity when running along the S-type trajectory. Furthermore, the errors in the x and y coordinates were very small, the relative error of which were less than 2% and 1.75%, respectively, as seen in Figure 12. In addition, tracking simulations for high speeds were also carried out. Two speeds, i.e., = 2 m/s and 4 m/s, were chosen, which were ten times as large as the speeds in the previous simulations. A circle trajectory with a radius of R = 35 m was selected for the simulations, which can be described by where = / . The control parameters for the simulations of the linear trajectory were set as: Np = 6; Nc = 3; = 10; = 0 for the lower limit and = 10 for the upper limit. The PID parameters for the linear velocity were set as: = 2, = 1, = 0. Figure 13 gives the changes of the real velocities. It was found that the robot could still track the reference velocity after a relatively short time. Moreover, with the control, the robot could parameters were set as: Np = 6; Nc = 3; = 10; = 0 for the lower limit and = 10 for the upper limit. The PID parameters for the linear velocity were set as: = 0.7, = 0, = 5. Figure 11 gives the comparisons of the theoretical and real trajectories and velocities. It was found that the robot could track well the reference trajectory and the reference velocity when running along the S-type trajectory. Furthermore, the errors in the x and y coordinates were very small, the relative error of which were less than 2% and 1.75%, respectively, as seen in Figure 12. In addition, tracking simulations for high speeds were also carried out. Two speeds, i.e., = 2 m/s and 4 m/s, were chosen, which were ten times as large as the speeds in the previous simulations. A circle trajectory with a radius of R = 35 m was selected for the simulations, which can be described by where = / . The control parameters for the simulations of the linear trajectory were set as: Np = 6; Nc = 3; = 10; = 0 for the lower limit and = 10 for the upper limit. The PID parameters for the linear velocity were set as: = 2, = 1, = 0. Figure 13 gives the changes of the real velocities. It was found that the robot could still track the reference velocity after a relatively short time. Moreover, with the control, the robot could In addition, tracking simulations for high speeds were also carried out. Two speeds, i.e., v x = 2 m/s and 4 m/s, were chosen, which were ten times as large as the speeds in the previous simulations. A circle trajectory with a radius of R = 35 m was selected for the simulations, which can be described by where ω z = v x /R. The control parameters for the simulations of the linear trajectory were set as: N p = 6; N c = 3; ρ = 10; for the lower limit and ε = 10 for the upper limit. The PID parameters for the linear velocity were set as: k p1 = 2, k i1 = 1, k d1 = 0. Figure 13 gives the changes of the real velocities. It was found that the robot could still track the reference velocity after a relatively short time. Moreover, with the control, the robot could track the reference trajectories of both the x coordinate and the y coordinate, depicted in Figures 14 and 15. Compared to the lower speed, the position errors increased. However, the relative errors of the position points were small. The maxima of the relative position errors at 2 m/s and 4 m/s were less than 3% and 8.5%, respectively.
track the reference trajectories of both the x coordinate and the y coordinate, depicted in Figures 14 and 15. Compared to the lower speed, the position errors increased. However, the relative errors of the position points were small. The maxima of the relative position errors at 2 m/s and 4 m/s were less than 3% and 8.5%, respectively.

Experiments
To further verify the control strategy, an experimental setup based on the NOKOV vision motion capture system was established that consisted of six cameras, as shown in Figure 16. An L-type tool was used for the benchmark calibration of the vision system. After there were enough cameras placed around the robot, the c vision capture system was calibrated. The L-type tool was mounted on the body, as seen in Figure 17. There are four markers on the L-type tool. The cameras recognize the markers, and thus, the vision frame (i.e., the global coordinate system) can be established. According to the geometrical relationship between the mounting location of the L-type tool and the robot's body frame, the initial transformation matrix between the vision frame and the body frame could be obtained. Serval markers were bonded to the body of the rover, and thus, the body coordinate system could be established in the world coordinate system. Therefore, the real motion trajectory of the rover could be measured in real time and sent to the rover control system. To clarify the effectiveness of the WSA module, a terrain with a flat surface and two trapezoids was employed in the experiments. Since the terrain included obstacles, the terrain-adaptive algorithm [27] was adopted, similar to the simulations. During the experiments, the control parameters for the MPC module were set as: N p = 6; N c = 3; ρ = 10; ε = 0 for the lower limit and ε = 10 for the upper limit. The PID parameters for the control of linear velocities were set as: k p1 = 8, k i1 = 0, k d1 = 0.2. Figure 18 shows the slippage in the experiments. Note that the slippages of Leg 1 and 4 (Leg 2 and 3) are almost the same because they suffer the same terrain condition. It was found that the average slippage of all of the legs demonstrated an obvious decrease after WSA control, up to 20%. Figure 19 shows the experimental results of trajectory tracking. As it can be seen, the rover could strictly track the reference trajectory. The deflection with respect to the reference trajectory was less than 2% F.S., which is a relatively small error. Accordingly, the control strategy was validated by the experiments.
After there were enough cameras placed around the robot, the c vision capture was calibrated. The L-type tool was mounted on the body, as seen in Figure 17. T four markers on the L-type tool. The cameras recognize the markers, and thus, th frame (i.e., the global coordinate system) can be established. According to the geo relationship between the mounting location of the L-type tool and the robot's bod the initial transformation matrix between the vision frame and the body frame obtained. Serval markers were bonded to the body of the rover, and thus, t coordinate system could be established in the world coordinate system. Therefore motion trajectory of the rover could be measured in real time and sent to the rove system. To clarify the effectiveness of the WSA module, a terrain with a flat sur two trapezoids was employed in the experiments. Since the terrain included obsta terrain-adaptive algorithm [27] was adopted, similar to the simulations. Du experiments, the control parameters for the MPC module were set as: Np = 6; Nc 10; = 0 for the lower limit and = 10 for the upper limit. The PID parameter control of linear velocities were set as: = 8, = 0, = 0.2. Figure 18 sh slippage in the experiments. Note that the slippages of Leg 1 and 4 (Leg 2 and 3) ar the same because they suffer the same terrain condition. It was found that the slippage of all of the legs demonstrated an obvious decrease after WSA control, up Figure 19 shows the experimental results of trajectory tracking. As it can be seen, t could strictly track the reference trajectory. The deflection with respect to the r trajectory was less than 2% F.S., which is a relatively small error. Accordingly, the strategy was validated by the experiments.  frame (i.e., the global coordinate system) can be established. According to the relationship between the mounting location of the L-type tool and the robot's b the initial transformation matrix between the vision frame and the body fram obtained. Serval markers were bonded to the body of the rover, and thu coordinate system could be established in the world coordinate system. Theref motion trajectory of the rover could be measured in real time and sent to the ro system. To clarify the effectiveness of the WSA module, a terrain with a flat two trapezoids was employed in the experiments. Since the terrain included ob terrain-adaptive algorithm [27] was adopted, similar to the simulations. experiments, the control parameters for the MPC module were set as: Np = 6; 10; = 0 for the lower limit and = 10 for the upper limit. The PID param control of linear velocities were set as: = 8, = 0, = 0.2. Figure 18 slippage in the experiments. Note that the slippages of Leg 1 and 4 (Leg 2 and 3 the same because they suffer the same terrain condition. It was found that slippage of all of the legs demonstrated an obvious decrease after WSA control Figure 19 shows the experimental results of trajectory tracking. As it can be see could strictly track the reference trajectory. The deflection with respect to th trajectory was less than 2% F.S., which is a relatively small error. Accordingly strategy was validated by the experiments.

Conclusions
In this paper, a novel wheeled-legged planetary rover with four legs was prop and each leg had four DOFs with an actuated wheel. The articulated legs utilized a s parallel hybrid configuration, and it had the merits of both serial and parallel mechan Moreover, the legs had a rigid-flexible coupling structure that could confo unstructured terrain using both active and passive compliance. The kinematics equ of the rover were derived. Then, a control scheme including trajectory trackin steering strategy, and the WSA module was proposed. A trajectory tracking model

Conclusions
In this paper, a novel wheeled-legged planetary rover with four legs was proposed, and each leg had four DOFs with an actuated wheel. The articulated legs utilized a serialparallel hybrid configuration, and it had the merits of both serial and parallel mechanisms. Moreover, the legs had a rigid-flexible coupling structure that could conform to unstructured terrain using both active and passive compliance. The kinematics equations of the rover were derived. Then, a control scheme including trajectory tracking, the steering strategy, and the WSA module was proposed. A trajectory tracking model based on MPC that could handle the line and arc trajectory with quite a good accuracy was established. In addition, the WSA was introduced into the control strategy to decrease the

Conclusions
In this paper, a novel wheeled-legged planetary rover with four legs was proposed, and each leg had four DOFs with an actuated wheel. The articulated legs utilized a serial-parallel hybrid configuration, and it had the merits of both serial and parallel mechanisms. Moreover, the legs had a rigid-flexible coupling structure that could conform to unstructured terrain using both active and passive compliance. The kinematics equations of the rover were derived. Then, a control scheme including trajectory tracking, the steering strategy, and the WSA module was proposed. A trajectory tracking model based on MPC that could handle the line and arc trajectory with quite a good accuracy was established. In addition, the WSA was introduced into the control strategy to decrease the slippage. After that, to validate the control method, three groups of cosimulations, i.e., tracking an arc trajectory, tracking a S-type trajectory, and trajectory tracking with high speeds were carried out. Finally, trajectory tracking experiments were conducted through a vision motion capture system. It was found that the average slippage of all of the legs decreased obviously after WSA control, with a slippage up to 20% in our experiments. Moreover, the rover could strictly track the reference trajectory. With respect to the reference trajectory, the deflection was found to be less than 2% F.S., which is a relatively small error. Accordingly, the proposed control strategy was thoroughly verified by the simulations and experiments.  Data Availability Statement: Data will be made available upon reasonable request by the corresponding author.

Conflicts of Interest:
The authors declare no conflict of interest.