1. Introduction
Wheeled robots have high work efficiency and occupy a large portion of the mobile robot family. Legged robots have been extensively studied due to their strong terrain adaptability [Reference Li, Zhou, Feng, Zhang and Fu1–Reference Ge, Gao and Chen3]. Spherical robots [Reference Joshi, Banavar and Hippalgaonkar4, Reference Jose, Basco, Jolo, Yambao, Cabatuan, Bandala, Ching and Dadios5] differ from traditional mobile robots in that their main body is spherical in shape, they have a unique way of traveling, and they possess unique advantages in detection.
In recent years, many two-wheeled-legged robot platforms have been designed. Ascento is a compact two-wheeled legged robot [Reference Klemm, Morra, Salzmann, Tschopp, Bodie, Gulich, Kung, Mannhart, Pfister, Vierneisel, Weber, Deuber and Siegwart6], which can move quickly on flat terrain and overcome obstacles by jumping. The linear quadratic regulator (LQR) algorithm is used in the article to maintain the balance of the two-wheeled-legged robot [Reference Klemm, Morra, Gulich, Mannhart, Rohr, Kamel, de Viragh and Siegwart7]. Handle is also a two-wheeled robot that uses its wheels to move quickly over rough roads, quickly descend stairs, and jump over obstacles [8]. WLR-II is a hydraulically driven wheel-legged robot that can go up and down slopes, negotiate slightly uneven ground, and carry heavy objects [Reference Li, Zhou, Zhang, Feng and Fu9]. Ollie is a wheeled robot designed and developed by Tencent. Its single leg adopts a parallel mechanism, which gives its body the characteristics of a simple structure, high dynamic performance and strong explosive power [Reference Wang, Cui, Zhang, Lai, Zhang, Chen, Zheng, Zhang and Jiang10]. The linear feedback controller of the LQR method [Reference Ashraf, Mei, Gaoyuan, Kamal and Mutahir11] is used in the article to keep the robot standing stable [Reference Chen, Wang, Hong, Shen, Wensing and Zhang12]. At the same time, the nonlinear stable domain of the model is considered [Reference Eschmann, Ebel and Eberhard13], and a nonlinear controller based on the interconnection and damping assignment passive control method is used to enable the robot to be controlled in more general scenarios [Reference Cui, Wang, Lai, Chen, Yang, Zhang and Jiang14, Reference Jiang and Jiang15].
Compared with multi-wheeled and legged robots, spherical robots are known for their encapsulation and flexibility [Reference Xiao and Chen16, Reference Wu, Li, Wang, Luo, Jiao, Yu and Wang17]. When moving under special mode, the internal parts can be protected from external influences. Spherical robots have a “roly-poly” shape by designing the center of gravity in the lower hemisphere. Through the movement of the driving device inside the spherical shell, the static balance of the sphere is broken, and steering and omnidirectional movement can be achieved [Reference Alexey, Alexander, Yury and Anton18, Reference Andani, Ramezani, Moazami, Cao, Arefi and Zargarzadeh19]. In addition, when the spherical robot rolls and falls due to external factors, it can quickly adjust its posture from any state and return to normal, which is incomparable to legged robots [Reference Jia, Huang, Sun, Pu and Ma20].
Robots combining spherical rolling and foot-based locomotion have also gained extensive research. Aoki et al. developed a four-legged robot with a spherical shell called QROSS [Reference Aoki, Asami, Ito and Waki21]. The robot’s spherical shell is composed of a shape memory alloy (SMA), which is capable of externally absorbing shocks and improving mobility due to its circular shape [Reference Wei, Tian and Wen22]. The four legs can be stowed inside the ball shell, and in ball form, the ball is rolled by stirring the legs backward, and in crawling form, the four legs are extended to realize quadrupedal walking. FU Jingming has developed a composite robot with ball and leg [Reference Xu, Wang, Fu and Kang23]. The whole sphere structure of the robot mainly includes the upper hemisphere and the lower hemisphere. The upper hemisphere mainly realizes the opening and closing of the ball flap and the detection of the internal detection instrument, while the lower hemisphere mainly realizes the six-legged walking and deformation [Reference Zheng, Guo, Piao, Gu and An24, Reference Guo, Li and Guo25]. Chang et al developed a spherical robot capable of rolling and jumping that has two individually actuated hemispheres that produce forward rolling and turning motions, and a five-link mechanism in the middle of the two hemispheres with a release and retraction mechanism for jumping. The release and retraction mechanism uses only one degree of freedom to control and switch the mechanism in three different phases of retraction, hold and release. The robot can jump up to diameters close to 25.4 centimeters and can also jump while tumbling over a 14-centimeter obstacle, which corresponds to 1.14 times the radius of the sphere.
In this paper, we design a new type of multi-modal mobile robot (sphere-wheel-legged robot (SWLR)) by combining sphere, wheel, and leg motions. The main contributions of the paper are as follows:
-
1) A new type of SWLR is designed by combining sphere, wheel, and leg motions. The mechanics, hardware, and software are illustrated. In mechanical design, the clutch structure is designed for reuse of the wheel-legged structure and heavy pendulum, which reduces the weight and makes the structure more compact.
-
2) Kinematic and dynamic models of wheel-legged motion and spherical motion are analyzed. The controllers for wheel-legged balancing motion, wheel-legged jumping motion, and sphere rolling motion are developed, respectively. In the jump controller design, the switch between wheel-leg and ball motion is utilized for the landing cushion, which provides better performance than wheel-legged cushioning alone.
-
3) An experimental system containing various terrains such as slopes, steps, rocks, and rugged roads is built, and experiments are carried out. Results show that the designed multi-modal robot has great terrain adaptation performance. The designed landing buffer has smaller landing force impact.
2. System design
2.1. Mechanical design
The overall structure: The mechanical system includes a base, a two-wheeled legged mechanism, a spherical rolling component, a clutch, a housing, and electrical components, as shown in Figure 1. The base provides support for mounting components such as motors and controllers. The wheel-legged mechanism is a dual motor-driven parallel mechanism for the wheel-legged motion. The spherical rolling component consists of two meshing gears and a heavy pendulum. The clutch facilitates the multiplexing of the wheel motor drive and the sphere drive. The robot has a spherical housing. Electrical components mainly include drivers, controllers, and sensors.
The wheel-legged structure: Each leg can be extended and retracted by a pair of motors installed on the spherical housing. As shown in Figure 2. The height of the body can be adjusted by extending the legs. The leg mechanism scheme is a five-link structure. The two leg drive motors are connected to the two upper links, respectively, and the wheel foot motors are connected to the two lower links. By controlling the two motors of the legs, the legs move in the direction of the center of mass of the system.
The spherical structure: In the wheel-legged form, the robot’s legs can be retracted through the leg drive motor to switch to the ball form. While retracting the legs, the thigh can close the lower side protective cover by driving the protective cover link, so that the robot forms a complete and sealed spherical shape. As shown in Figure 3. Morphological transformation requires minimal clearances and high hub torque to provide smooth stability and counteract system noise interference. The protrusion on the wheelbase features a notch with guiding apertures located around its periphery. During the transformation from the wheelbase configuration to the spherical structure, the protrusion on the wheelbase applies pressure to the boundary plate of the boundary structure when the leg structure is folded. Additionally, the protruding notches form a secure connection with the I-beam drive shaft. The guiding edges of the grooves ensure smooth engagement between the protruding grooves and the drive shaft. To achieve this, we have customized a wheel assembly with frameless hub motors. This direct-drive configuration allows for almost gap-free motion and features a highly compact structure.
2.2. Hardware
Robot jumping motion needs to be able to provide large torque. Different motor types are used for leg motors and wheel motors. The overall electrical control scheme is shown in Figure 4.
The leg motor uses the A1 motor, which can provide 33.5Nm of instantaneous torque and has built-in position and torque control. The wheel motor uses Ak60-6 motor with an instantaneous torque of 9Nm. Each wheel motor is equipped with an encoder for precise position and speed feedback. The four motors in the legs communicate with the controller through Universal Asynchronous Receiver/Transmitter (UART), and the wheel motors communicate with the controller through Controller Area Network (CAN) bus. As the main processing unit, Intel NUC using i7 processor is used as the main processing unit to control the system. The system is also equipped with an inertial measurement unit (IMU) and a microcontroller to allow communication between the IMU and computer. In order to power all motors, a lithium battery with a battery capacity of 5500mAh, a discharge rate of 75C, and a rated voltage of 22.2V is used.
2.3. Software
In order to implement a real-time controller, the control-related software needs to be computationally efficient, and all software is written in $\text{C}\texttt{++}$ . In addition, the Robot Operating System (ROS) framework is adopted for communication.
The controller module [Reference Di Vito, Di Lillo, Arrichiello, Ferone, Amico and Antonelli26] includes horizontal, jump, roll controls, and height position controllers. Thanks to optimized leg geometry, jumping, rolling, and traversing are decoupled and therefore controlled independently. The horizontal and height controllers calculate and send torque commands to drive the wheel hub motor. Similarly, the jump and roll controllers provide control of the leg and wheel motors.
The overall control architecture is shown in Figure 5, which illustrates the relationship between sensors, controllers, and ball wheel robots. It consists of two main parts. First, the terminal state is calculated based on the set horizontal speed, jump height, and other parameters. Then, secondly, the controller is designed to track the desired trajectory. The impedance tracking controller is used for jumping motion, the LQR controller is used for horizontal and vertical motion, and the ball is controlled by PD controller.
3. Modeling
In order to design model-based control laws, we derive the robot dynamics. Since the SWLR has two forms, including wheel-legged mode and sphere mode, they are modeled, respectively. The two forms of motion are modeled as follows.
3.1. Dynamics modeling of two-wheeled mode
A variety of modeling methods for two-wheeled robots are mentioned in the literature [Reference Chan, Stol and Halkyard27]. The wheeled motion of the wheel-legged robot can be equivalently simplified to a two-wheeled inverted pendulum model with variable pendulum length [Reference Wu and Zhang28], as shown in Figure 6. The main model parameters are shown in Table 1.
The leg length can be independently adjusted to handle obstacles on various terrains. Since the leg length adjustment is not highly dynamic in real-time and is performed independently before jumping, it is not coupled with the jumping motion. As a result, our dynamics modeling does not account for changes in leg length, thereby simplifying the derivation and control of the dynamics. Experimental results demonstrate that this approach meets the requirements for dynamic control.
Dynamic analysis on the inverted pendulum model is performed by the Euler-Lagrange equation system. Mathematical model is expressed by Lagrange’s formula. The kinetic energy of the robot’s planar motion consists of translational kinetic energy and rotational kinetic energy. It can be expressed as:
where v r and v l denote the linear velocities of the right and left wheels, and J w and J B are the moments of inertia of the motor rotor about its axis and diameter, respectively.
Assume that the wheel is always in contact with the ground, so the potential energy of the wheel remains zero. The potential energy of the robot is expressed as:
where g is the gravitational acceleration constant.
The Lagrangian of the system is obtained from the difference between kinetic energy and potential energy, expressed as:
The Lagrange equation is:
In the formula, q i is the generalized coordinate and F i generalized force vector. The generalized coordinate vector is $q\textbf{=}[\begin{array}{llllll} \dot{\boldsymbol{x}} & \ddot{\boldsymbol{x}} & \dot{\boldsymbol{\theta }}_{B} & \ddot{\boldsymbol{\theta }}_{B} & \dot{\boldsymbol{\delta }} & \ddot{\boldsymbol{\delta }} \end{array}]$ .
Based on Eq. 1, 2, 3, 4 to Eq. 5, the system of dynamic equations of the robot is:
3.2. Dynamics modeling of sphere mode
The robot’s rolling movement relies on a stepper reduction motor to drive the wheel hub to rotate through a gear. According to the force analysis, the robot ultimately relies on the friction between the wheel hub and the ground to move forward. Under ideal conditions, the force analysis of a spherical robot rolling at a constant speed is shown in Figure 7.
If the angle through which the spherical shell rolls relative to the inertial coordinate system is $\alpha$ , then there is $x=\alpha R$ . Use the Lagrange equation to establish the dynamic model of the system. Choosing the plane where the center of the sphere is located as the zero potential energy surface, the motion of the spherical shell is decomposed into the linear motion of the center of the sphere along the x-axis and the rotation of the spherical shell around the center of the sphere. Then, the kinetic energy of the spherical shell can be expressed as
where $\dot{x}$ is the horizontal movement speed of the center of the ball, and $\dot{x}=\dot{\alpha }R$ . $J_{R}$ is the moment of inertia of the spherical shell. M d denotes the mass of body. In this article, the internal mechanism rolls with the spherical shell.
The components of the speed of a wheel with mass M m on the plane are:
where r is sphere radius, and θ is wheel offset angle. l is the distance from the center of mass of the wheel to the center of mass of the sphere.
The difference between the kinetic energy and potential energy of the eccentric wheel in the spherical state is:
The Lagrangian function of the linear motion of the spherical robot is:
4. Controller design
The performance of the robot depends on its mechanical structure and control system, which interact with each other. During the entire robot design optimization cycle, the control system design needs to be carried out based on full consideration of its structural characteristics. The two-wheeled robot itself is an unstable system. In this part, we divide the robot controller into a joint controller, a balance controller, and a rolling controller. Sensors are used to monitor the status of the robot in real time, and the robot’s balance and movement are controlled through the controller. Figure 8 is a block diagram of the controller, which shows the relationship between the sensors, controller, and the ball-wheeled robot. The controller is divided into controllers for jumping movements, LQR controllers for horizontal and vertical movements, and sphere motion controllers.
4.1. Balanced motion controller
LQR is an optimal control strategy that can regulate linear systems at the minimum cost. The LQR controller can achieve the robustness and reliability of a two-wheeled inverted pendulum [Reference Li, Yang and Fan29]. We design and implement an LQR controller to control and balance the robot. First, linearize the robot’s equilibrium point (θ = 0) and make the following small angle approximation as:
After linearizing the motion equation, the state space model of the system is defined according to the dynamic model $\dot{x}=f(x,u)$ .
where $\boldsymbol{x}\boldsymbol{=}[\begin{array}{llllll} \dot{\boldsymbol{x}} & \ddot{\boldsymbol{x}} & \dot{\boldsymbol{\theta }} & \ddot{\boldsymbol{\theta }} & \dot{\boldsymbol{\delta }} & \ddot{\boldsymbol{\delta }} \end{array}]$ is the state vector, and $u=[\begin{array}{ll} \tau _{L} & \tau _{R} \end{array}]$ is the input of the system. A and B are the system dynamics matrix and input matrix. It is based on Eq. 7, where
The state feedback control law is expressed as :
The system optimizes the following cost function :
Q and R serve as the weighting matrix of the system state and input, respectively.
For a continuous time-invariant system, the LQR feedback gain is:
In the formula, P is obtained by solving the following algebraic Riccati equation:
Determine the A and B matrices according to the dynamic formulas 4, 5, and 6 and the robot parameters in Table 1, and select the corresponding Q and R matrices to calculate the feedback matrix K LQR . Then the control variable u is calculated according to the formula. The change in the position of the robot’s overall center of mass is used as a trigger condition, and different K LQR matrices are used for stable control.
4.2. Spherical motion controller
In this paper, a robot dynamics feed-forward controller is used to realize the spherical motion of the robot. In the spherical state of the robot, the controller is categorized into linear velocity control and angular velocity control, and the following controller is designed according to the dynamics equations in Section 3.2.
The linear velocity controller in the spherical state is:
where V ref and V are the desired speed and actual speed of the sphere, and K p and K i are the Proportional Integral Derivative (PID) control coefficients. τ v is the feedforward control rate.
The angular velocity controller in the spherical state is:
${\phi} _{ref}$ and ${\phi}$ are the expected angular velocity and actual angular velocity of the sphere, and D p and D i are PID control coefficients. $\tau _{{\phi} }$ is the feedforward control rate.
4.3. Jumping motion controller
The virtual model control (VMC) algorithm has an efficient and intuitive control law that allows for the use of generalized variables and generalized force functions [Reference Pratt and Pratt30, Reference Pratt, Torres, Dilworth and Pratt31]. The robot leg motion control adopts the VMC method. The virtual force required for leg movement is established by adding a spring-damper virtual component, and then the end execution force of the leg link is obtained through the virtual force. Finally, the driving torque required for each joint motor is calculated from the end execution force.
For the virtual force Fy in the y direction, assuming that the elastic coefficient of the spring-damper virtual component is K p1 and the damping coefficient is K d1 , the equation of using the spring-damper virtual component to express the virtual force is:
where $y_{set}$ and $y$ are desired and actual positions along the y-direction.
The virtual forces P L and P R for the left and right legs were obtained from the dynamic equations:
Map the virtual force to the end joint moment through the Jacobian matrix, that is:
where J T is leg Jacobian matrix, and T L and T R are the calculated torques of the left and right wheels.
The required virtual force is converted into joint torque and applied to the motors of each joint of the robot. By adjusting parameters, the robot can exhibit different impedance characteristics in different situations. The robot needs higher damping during the landing phase to smooth out the kinetic energy and ensure a smooth landing.
5. Experiments
In order to verify the performance of the robots designed and algorithms developed in this paper, we built an experimental prototype system and wrote the control code based on ROS. This part initially tests the robot’s basic motion to gain its technical specifications, including the balance control motion, sphere rolling motion, and jumping motion. Then, anti-interference experiments, jumping motion performance, and landing buffer experiments are conducted. The complete video has been uploaded to YouTubeFootnote 1 . The prototype of SWLR is shown in Figure 9. The overall technical specifications of the SWLR are shown in Table 2.
5.1. Basic motion modes test
In order to verify the performance of SWLR, basic motion experiments are conducted as shown in Figure 10. The stability performance of the robot in the standing state is tested in the wheel-legged mode. In the slope-climbing test, we tested the robot’s performance on a 30° in the wheel-legged mode as shown in Figure 10 a. In the spherical mode, the robot’s steering and moving on gravel roads are tested as shown in Figure 10 b. Finally, we tested the robot’s jumping ability as shown in Figure 10c. From the experimental results, the performance of the robot is excellent and fully meets the design expectations.
5.2. Stability of wheel-legged balancing motion
Balance and stability are the precursors of robot movement. In order to test the robot’s ability to resist interference, we conducted experiments on the robot in the case of external interference. Figure 11 shows the distance from the equilibrium position, the θ angle output of the robot in the state of external interference, and the output torques of the robot’s left and right wheels. It can be seen that in the case of external interference, the robot can respond quickly to return to the horizontal position.
5.3. Jumping motion performance
In order to obtain the jumping performance of the robot, the robot’s jumping experiment is carried out. As shown in Figure 10 c, the robot’s in-situ jumping height and running jumping ability are tested, respectively. In the experiment, the robot jumped over a 20 cm high platform to verify its overall jumping ability. Figure 12 shows the curves of leg motor torque changing with time during robot jumping.
As can be seen from Figure 12, at the instant of the robot jump, the torque of the motors reaches 4.7 Nm in 0.25 s, providing an instantaneous force for the robot to jump. The completion time of the entire robot jumping process is controlled within 0.5 s. From the performance of the leg motors, the robot and the control method we designed can realize the robot’s jumping motion with a small torque output.
5.4. Robot landing buffer strategy
Robots need energy cushioning when falling to ensure a smooth landing. Inspired by human jumps from high platforms, we capitalized on the properties of robots to design a robot landing strategy that transitions from the wheeled-legged mode to the spherical mode. Experiments have shown that this approach effectively absorbs energy.
As shown in the Figure 13, the whole process is divided into four stages. First, the robot accelerates the traveling stage as the first stage. The second stage is the process of the robot falling from the high platform. The critical value of the output torque of the robot leg motors is detected to determine whether the robot is in the flight phase or falling to the ground, and buffering is performed at the instant of contact with the ground (judged by the torque of the motors). By buffering the height of the fall, it is judged that the spherical shell touches the ground in the third stage, at which time the rowing pendulum strategy starts to take effect. When the leg retracts to a certain position (using the position as a threshold), it switches to the fourth stage of the spherical mode and rolls forward.
The robot landing experiment is shown in Figure 14. When the robot detects a landing, it first performs leg cushioning. When the legs are retracted to approach the spherical shell, the robot’s operating state switches to the spherical operating state and rolls forward.
In the process of landing cushion, we make full use of the characteristics of the designed mechanism and propose a variable structure cushioning method. Figure 15 shows the output curve of the leg motor torque in the cushioning stage. Figure 15 a shows the results of the traditional cushioning method. The curve of the motor torque fluctuates a lot, and then it returns to a flat cross after 0.26 s. The results using the method in this paper are shown in Figure 15 b. It can be seen that the robot has less impact and faster convergence time. In our experiments, we found that the traditional cushioning method cannot effectively eliminate the impact of the robot falling, and the robot will fly up again under the reaction force, which is unfavorable to the subsequent tasks. The rowing method proposed in this paper can effectively decompose the impact force into the horizontal direction, and with the help of its own structural characteristics, it can effectively discharge the force and prevent the robot from taking off again.
6. Conclusion
In this paper, we design and validate a new SWLR multiconfiguration mobile robot. Specifically, the dynamics of the robot are first modeled. Subsequently, an impedance tracking controller is designed for the jumping motion and an LQR controller is designed for the two-wheeled flat traverse motion. The effectiveness of the overall structure and control scheme is verified in Gazebo. Simulation code has been uploaded to GitHubFootnote 2 . The experiment platform is built to verify the performannce of the robot. We verified the robot’s flat traverse, jumping, and rolling performances, carried out anti-disturbance experiments and ground motion experiments, and tested the jumping and landing performance. In the future, we will add a camera to the SWLR to work in more complex field environments. The whole-body dynamics of the robot will also be researched to improve the performance of the robot. Secondly, autonomous decision-making algorithms will be incorporated into the control system to automatically switch configurations according to different terrains.
Author contributions
Lunfei Liang and Yuquan Xu designed the study. Liang Han and Yu Liu provided the supervision.
Financial support
This work was supported by National Natural Science Foundation of China (Grant No. 62273129, Grant No. 62203147), Anhui Provincial Key Research and Development Project (Grant No. 202304a05020077), and the Fundamental Research Funds for the Central Universities of China (Grant No. JZ2024HGTB0225).
Competing interests
The authors declare that no conflicts of interest exist.
Ethical standards
Not applicable.