1. Introduction
In the last twenty years, robot technology has rapidly evolved in tandem with the development of societal productivity, encompassing the diverse development of robots that are now integral to society. Among these, ground mobile robots have found extensive applications in fields such as logistics and storage, counter-terrorism and bomb disposal, wilderness transportation, and domestic services [Reference Antonyshyn, Silveira, Givigi and Marshall1]. Two-wheeled balancing robots, which constitute a subset of mobile robotics, possess a moderate number of variables and can be more closely approximated by the classical linear inverted pendulum model. These features render them ideal research platforms for validating a variety of control algorithms. Moreover, their simple structure and agile movement make them well-suited for operations in confined spaces or complex environments, enabling the realization of tasks that other multi-wheeled robots may be unable to undertake, such as space exploration and terrain reconnaissance [Reference Tang, Zhang, Pan and Zhang2].
Scholars from various countries have conducted extensive research on two-wheeled balancing robots due to their uniqueness and practicality. Kazuo Yamafuji et al. [Reference Yamafuji and Kawamura3] initially proposed the concept of a two-wheeled balancing robot, laying the foundation for subsequent studies, even though the robot they constructed could only move on fixed tracks at the time. Felix Grasser et al. [Reference Grasser, D’arrigo, Colombi and Rufer4] achieved a significant milestone by developing the mobile inverted pendulum robot, establishing a dynamic model, and designing a full-state feedback controller. This marked a pivotal moment in the history of two-wheeled self-balancing robots, particularly for control on flat terrains.
In the case of the above-mentioned two-wheeled self-balancing robot during acceleration or deceleration, achieving higher acceleration requires a significant tilting of the body. If the body of the balancing robot is equipped with devices such as robotic arms or LiDAR sensors, the use of these devices is influenced by the chassis tilt angle (CTA), leading to reduced operational efficiency and collaborative capabilities [Reference Prado, Simón, Pérez and Ezquerro5]. Therefore, in this context, a parallel mechanism is employed that enables the drive wheels to have a two-degree-of-freedom (DOF) motion plane relative to the body. This approach facilitates the adjustment of the body’s posture and height.
Leg structure design options include serial and parallel mechanisms. The parallel mechanisms have compact structures, making them more suitable for heavy-load scenarios [Reference Luo, Ye, Su and Jin6]. This study adopts a two-DOF five-bar parallel mechanism. Giberti [Reference Giberti, Cinquemani and Ambrosetti7] applied this structure in a planar robotic arm design, derived kinematic and dynamic equations, conducted arm testing, achieved tracking of the prescribed trajectory, and determined its motion space. Kau [Reference Kau, Schultz, Ferrante and Slade8] designed a quadruped mobile robot based on this structure, showing lighter leg structure and higher motor efficiency compared to serial-legged robots. Other researchers have improved robot motion performance by designing hybrid mechanisms [Reference Ottaviano and Rea9] and switching mechanisms [Reference Cao, Zhang, Wang, Meng, Li and Li10].
To make a robot adaptable to the various environments and diverse demands, Dai introduced the concept of the metamorphic mechanism in 1998 [Reference Dai and Jones11, Reference Dai, Huang and Lipkin12] and then reconfigurable mechanisms [Reference Kuo, Dai and Yan13] for mechanisms to possess variable mobility and topology during motion, significantly broadening the functionality and adaptability of robots [Reference Aimedee, Gogu, Dai, Bouzgarrou and Bouton14]. Based on this, a novel robot hand with a metamorphic palm was developed [Reference Dai and Wang15], with the mathematical and manifold-related perspectives [Reference Dai, Holland and Kerr16], to have higher dexterity of the hand [Reference Dai, Wang and Cui17]. In subsequent research, scholars delved deeper into the kinematics [Reference Wei, Dai, Wang and Luo18], manipulability [Reference Cui and Dai19], and singular value decomposition [Reference Cui and Dai20] of the metamorphic hand. Furthermore, such mechanisms have also found application in legged robots. Zhang et al. employed a planar six-bar closed-loop linkage as the robot’s trunk, enhancing its stability margin and biomimetic performance [Reference Zhang, Zhang, Dai and Qi21]. The reconfigurable quadruped robot, Origaker [Reference Tang, Wang, Spyrakos-Papastavridis and Dai22], developed by Tang et al., utilizes a spatial eight-bar mechanism [Reference Tang and Dai23], offering four biomimetic configurations, thereby significantly enhancing the locomotion capabilities of the robot [Reference Fu, Chen, Tang, Wei and Dai24, Reference Li, Shi, Chen, Zhuang, Dai and Okada25]. This serves as an inspiration for robot development from both a biomimetic and mechanical design perspective. Additionally, other legged robots employing Bennett mechanisms [Reference Gu, Feng, Guo, Wan, Dai, Pan and Song26], planar five-bar mechanisms [Reference Chen, Pan, Yu, Feng and Dai27, Reference Chen, Pan, Li, Zhu, Gao, Wang, Xiao, Deng, Dai and Okada28], or parallel mechanisms [Reference Pan and Gao29] have served as valuable references for leg designs in mobile robots.
In the field of robot control, numerous scholars have attempted to enhance the overall performance of robots from various aspects [Reference Zhou, Pan, Chen and Lei30]. Wang et al proposed a nonlinear controller that improved the robot’s balancing performance [Reference Wang, Cui, Zhang, Lai, Zhang, Chen, Zheng, Zhang and Jiang31]. Saglia et al. delivered an inverse-kinematics control strategy that largely enhanced the robot’s performance [Reference Saglia, Tsagarakis, Dai and Caldwell32, Reference Saglia, Tsagarakis, Dai and Caldwell33]. Klemm et al. derived the motion loop dynamics for more complex systems, thus reducing the computational load on the controller [Reference Klemm, Morra, Gulich, Mannhart, Rohr, Kamel, d. Viragh and Siegwart34]. Xin et al. introduced the Cart-Linear Inverted Pendulum Model and implemented model predictive control to achieve online dynamic hybrid locomotion in wheeled biped robots [Reference Xin and Vijayakumar35]. Chen et al. proposed a novel wheeled-spring-loaded inverted pendulum model to characterize the dynamics of wheeled biped robots during jumping [Reference Chen, Wang, Hong, Shen, Wensing and Zhang36]. In ref. [Reference Zhang, Liu, Song, Wang and Meng37], Zhang et al. introduced a wheel-to-foot transition mechanism and control strategy, addressing the challenge of transitioning between the robot’s wheeled balancing and bipedal standing states. Robot parameter identification is also one of the significant challenges in dynamic control. Chang et al. effectively reduced the difficulty of parameter identification by proposing the “E-B” identification method [Reference Chang, An and Ma38]. Other works have also focused on improving the performance of wheeled-legged robots through approaches such as torque control [Reference Siravuru, Shah and Krishna39], attitude compensation [Reference Shen, Chen, Li, Wei, Lu, Meng and Guo40], and hybrid control frameworks [Reference Zhu, He and Sun41].
In this study, we focus on the dynamics modeling and the cascaded control strategy of the wheeled biped robot based on the decoupling principle, with a compensating strategy for the CTA. This approach enables the robot to maintain a horizontal posture during the inclined motion, effectively reducing the CTA’s magnitude. The paper incorporates a five-bar mechanism. The validity of the established model is verified through experiments. The main contributions of this paper are the following:
-
(1) An analytical method that is used for detailed kinematic and dynamic modeling of this wheeled-legged robot, enabling it to achieve self-balancing and locomotion.
-
(2) A multi-objective and multilevel controller that is designed based on decoupling the robot’s motion. With both simulations and practical experiments, when using locked and unlocked leg structures, the control framework is demonstrated to significantly reduce the CTA during inclined motion and loading processes.
-
(3) A control framework that primarily relies on the positional control of the motors, employing direct motor drive without the need for additional transmission systems, thereby reducing the control complexity.
The remainder of this paper is organized as follows. Section 2 provides a brief overview of the overall mechanism of the robot. Section 3 elaborates on the detailed modeling and analysis of the leg module’s kinematics, robot dynamics, and acceleration principles. Section 4 combines the balancing control of the robot with leg module locking/unlocking control to conduct a comprehensive controller analysis. Section 5 involves simulation and physical experiments to validate the proposed control framework, followed by an analysis of the experimental results. Lastly, Section 6 concludes the paper.
Table I shows the relevant symbols and descriptions pertaining to the paper’s mathematical derivations.
2. Overview of the wheeled biped robot
2.1. Requirements for mechanism design
The wheeled biped robot needs to adapt to various terrains while ensuring variable body inclination. Building upon the foundations of traditional wheeled biped robots, a five-bar mechanism is introduced. Accordingly, this paper defines the requirements for mechanism design as follows:
-
(1) The robot should possess a highly symmetric overall structure, ensuring that the projection of the center of gravity in its upright state falls as close as possible to the geometric center of the support polygon on the ground [Reference Zhang, Li, Liu and Liu42].
-
(2) The leg design of the parallel mechanism must ensure a movable connection to the chassis [Reference Zhang and Dai43]. This ensures that during motion, the driving wheels will not significantly impact the body posture.
-
(3) As the plane of the driving wheels is always perpendicular to the ground, body posture adjustability must be maintained, requiring the leg design to comprise at least two DOFs.
2.2. Mechanism design of the wheeled biped robot
Considering the aforementioned requirements, the conceptual design of the robot’s overall configuration is depicted in Figure 1(a). The robot comprises the body module, two-sided driving wheel modules, and leg modules connecting the body and driving wheels. Regarding the design of the legs, as mentioned in section 2.1, each robot leg requires at least two DOFs to adjust the robot’s posture. Therefore, a simple and effective parallel five-bar mechanism is deemed an auspicious choice. Compared to the traditional planar four-bar mechanism, the five-bar mechanism not only has an additional DOF that enables more flexible movement but also does not require a complex transmission mechanism [Reference Kau, Schultz, Ferrante and Slade8]. It can be directly driven by motors, which to a certain extent, reduces the control complexity. Its configuration is illustrated in Figure 1(b), with both legs possessing the same configuration as each other. This five-bar mechanism also maintains a symmetrical configuration on each side, enhancing leg rigidity.
The hip joints, denoted as drive joints I and II, on one side of the robot are connected to the body. The shank linkages (SLs) are attached to the driving wheels at their ends, facilitating the forward and backward movement of the robot. Due to the high symmetry requirements for balanced motion, the robot is symmetrically designed, ensuring that the symmetrical linkages have equal lengths.
The overall structure of the robot is depicted in Figure 2. The mechanical components mainly consist of three modules: the body module, leg module, and drive wheel module. The body module houses key electronic devices, batteries, femoral joint motors, and flexible limiters for protecting the leg structure. On each side, the leg can be divided into the TLs (thigh linkages), TL A and TL B, and the SLs, SL A and SL B. The leg module is predominantly constructed of carbon fiber, ensuring strength while reducing weight. The drive wheel module comprises a drive motor, rim, and pneumatic tire.
3. Kinematics and dynamics modeling of the wheeled biped robot
3.1. Kinematics modeling of the planar five-bar parallel mechanism
In general, existing approaches to robot modeling include the generalized coordinate method, and the analytical method, among others. The former can generate a simplified symbolic representation when modeling systems of low to medium complexity [Reference Chen, Wang, Hong, Shen, Wensing and Zhang36]. The latter in the analytical method, on the other hand, offers more intuitiveness in simpler systems and can achieve real-time control with less computational resource consumption. For the system discussed in this paper, we have adopted the more intuitive, analytical modeling method.
The leg module employs a planar parallel five-bar mechanism. Taking the leg module of one side as an example, if the line connecting the two driving joints of the leg module is treated as an equivalent link, a coordinate frame is established as shown in Figure 3(a) and simplified in Figure 3(b). The respective coordinate systems and defined parameters are the following:
-
1) The origin $O_{0}$ of the coordinate frame $\{L\}$ is located at the center of rotation of driving joint I, and the $x_{0}$ and $y_{0}$ axes are along the horizontal and vertical directions of the body, respectively.
-
2) The origin $O_{1}$ in frame $\{L\}$ is located at the center of the leg’s tip. The $x_{1}$ and $y_{A_1}$ axes are parallel to the $x_{0}$ and $y_{0}$ axes, respectively.
-
3) Points $A$ , $B$ , and $C$ serve as the joint rotational centers; $\alpha _1$ and $\alpha _2$ represent the rotation angles of driving joints I and II, respectively; $\varepsilon$ and $\phi$ denote the angles between the leg linkage $l_{CO_{1}}$ and $l_{BO_{1}}$ and the horizontal direction; and $\psi$ indicates the angle between $l_{CB}$ and the horizontal direction.
From the geometric relationship in Figure. 3(b), one can obtain:
Then
According to the cosine law, we have
where $\sin \psi =-({y_{{B}}-y_{{C}}} )/{|{\boldsymbol{l}}_{\boldsymbol{C}\boldsymbol{B}}|}$ and $\cos \psi =({x_{{B}}-x_{{C}}}) /{|{\boldsymbol{l}}_{\boldsymbol{C}\boldsymbol{B}}|}$ . Substituting these values into Eq. 4 yields
Letting $ c=2 L_3\left (x_{{B}}-x_{{C}}\right ), \quad d=2 L_3\left (y_{{B}}-y_{{C}}\right )$ , we have
Using the trigonometric identity, Eq. 6 can be rewritten as follows:
Solving Eq. 7, $\varepsilon$ can be expressed as:
Since $\boldsymbol{l}_{\boldsymbol{CO}_{\boldsymbol{1}}}=\left (\begin{array}{ll} L_3 \cos \delta, L_3 \sin \delta \end{array}\right )$ , $\boldsymbol{l}_{{\boldsymbol{O}_{\boldsymbol{0}}} {\boldsymbol{O}_{\boldsymbol{1}}}}$ can be expressed as:
where the precise forms of $\varepsilon, c$ and $d$ are provided in Appendix A.1.
Based on the aforementioned forward kinematic analysis, the relationship between the end-point of the leg module and the driving joint angles $\alpha _1$ and $\alpha _2$ can be obtained. After rearranging the equations, the inverse kinematics solution of this leg module can be expressed as:
where the precise forms of $e, f, g, h$ , and $i$ are provided in Appendix A.1.
Thus far, we have established the kinematics of the leg module for the wheeled biped robot. This lays the foundation for the subsequent dynamic modeling, acceleration analysis, and trajectory planning.
3.2. Dynamic modeling for the wheeled biped robot
The robot maintains point contact with the ground, with only two contact points, which cannot form a stable contact surface. It requires additional driving forces and control algorithms to achieve body balancing. Therefore, before further investigating the parallel structure of the robot, the issue of self-balancing needs to be addressed.
When the leg modules of the robot are locked, the wheeled biped robot can be simplified into a first-order inverted pendulum (FIP) model with two drive wheels, as shown in Figure 4. In this model, the drive wheel is simplified as a uniformly distributed disk with a certain thickness, while the other parts can be simplified as a homogeneous pendulum. This robot is a typical example of an underactuated system [Reference Kim and Kwon44, Reference Dong, Asadi, Qiu, Dai and Chen45]. In Figure 4(a), two coordinate frames are established: the ground coordinate system, denoted as $O_G-x_Gy_Gz_G$ , and the pendulum coordinate frame, denoted as $O_B-x_By_Bz_B$ . In the figure, the direction of $y_G$ and $y_B$ is aligned, $z_G$ and $z_B$ are created by the right-hand rule, and the origin points $O_G$ and $O_B$ coincide with each other. The robot achieves yaw motion (YM) ( $y_B$ -axis) and pitch motion (PM) ( $z_B$ -axis) as well as forward motion (FM) through the drive wheels. The pendulum pitch angle (PPA) of the inverted pendulum is represented as $\theta$ , while the pendulum yaw angle (PYA) is denoted as $\delta$ . YM is achieved by the differential rotation of the wheels, while PM and FM are achieved through codirectional rotation of the wheels. Therefore, by decoupling the YM and the other two movements, the model can be decomposed into planar motion and rotational motion, with their respective dynamics to be discussed separately.
For the sake of clarification, a force analysis on the right wheel in Figure 4(a) is conducted, as shown in Figure 4(b). Assuming the robot is in motion, a force analysis of the wheels yields the following equations for both force equilibrium and torque equilibrium:
where $f_r$ represents the frictional force exerted by the ground on the right wheel, $\tau _r$ is the active torque applied to the right wheel, $H_r$ and $v_r$ result from the gravitational force $m_pg$ of the pendulum, leading to the horizontal and vertical components of the force exerted on the wheel by the wheel axis, $m_r$ is the mass of the wheel, $J_{\omega }$ is the moment of inertia of the wheel around its axial direction, $x_r$ is the forward displacement of the right wheel, and $R$ is the radius of the wheel. Similar conclusions apply to the left wheel. Figure 4(c) shows the external forces applied to the entire robot system. Let the axle displacement of the FIP be denoted by $x$ , which can be expressed as:
It is assumed that the left and right wheels of the FIP have the same mass and inertia. So $m_w=m_l=m_r, J_\omega =J_{\omega l}=J_{\omega r}$ . From Eq. 11, one can obtain:
Eq. 12 gives $\ddot{x}=\left (\ddot{x}_l+\ddot{x}_r\right )/2$ . By combining Eq. 12 with Eq. 13 to eliminate the static friction force $f_l+f_r$ , we can obtain:
For a homogeneous pendulum, conducting a force analysis at its COM yields:
where $J_p$ is the moment of inertia of the pendulum around the $z_B$ axis. The relationship between the displacement of the equivalent COM of the pendulum in the horizontal direction and the wheel axis displacement can be expressed as follows:
The relationship between the two in the vertical direction can be described as:
Substituting Eqs. 16 and 17 into Eq.15 yields:
Additionally, by substituting Eqs. 15 and 16 into Eq. 14 and eliminating the horizontal interaction force $H_l+H_r$ between the equivalent pendulum and the wheel axle, we can derive:
After simplifying Eqs. 18 and 19, we obtain the dynamic equations for the PM and FM of the robot:
For the robot’s YM, under the assumption that the robot achieves self-balancing through a controller, we have:
where $J_y$ is the moment of inertia of the robot around the $y_B$ -axis, which can be calculated using the parallel-axis theorem, as demonstrated below:
The PYA, $\delta$ , of the robot can be expressed as:
Taking into account Eq. 11, we have:
Then
By using Eqs. 21, 24, and 25 and eliminating the difference in static friction force $f_r-f_l$ and the difference in horizontal interaction force $H_r-H_l$ , we obtain the following dynamic equation for the robot’s YM:
Eqs. 20 and 26 comprise the dynamic equations. We have built a simulation model in Simulink to validate these dynamic equations. At a body height of 0.2 m and with an acceleration of 0.3 m/s $^2$ , we obtained two datasets to conduct a comparative analysis, as shown in Figure 5. Herein, state variables with the subscript “c” are calculated according to the dynamics equations, and those without a subscript are collected from Simulink. By inputting the torque into the dynamic equations, we calculate the system’s acceleration at the current moment and then integrate the acceleration to obtain state information such as velocity and position. The results extracted from the Simulink model are congruent with those obtained using the dynamic equations, confirming the correctness of the derivation of these equations.
So far, through a Newtonian mechanics-based analysis, we have obtained dynamic expressions of the robot corresponding to the locked parallel structure (Eqs. 20 and 26). It can be observed that the robot’s dynamics involve nonlinear terms such as gravitational torque, centrifugal force, and variable inertia parameters. When the robot is in a self-balancing state, the PPA, $\theta$ , has a small value, and the rate of change of the angle, denoted as $\dot{\theta }$ , is also small. Therefore, the following linearization assumptions can be made: $\sin \theta \approx \theta$ , $\cos \theta \approx 1$ , $\dot{\theta }^2 \approx 0$ , and $\sin ^2 \theta \approx 0$ .
This assumption considers that the PPA $\theta$ state moves minimally and disregards the effect of the centrifugal force of the pendulum on the wheel axis movement, as well as the influence of the PPA $\theta$ on the YM. In this case, the dynamic expressions can be linearized as follows:
3.3. Decoupled representation of the state space and acceleration analysis
By selecting the robot state variable $\boldsymbol{X}=\left [\begin{array}{llllll} x & \dot{x} & \theta & \dot{\theta } & \delta & \dot{\delta } \end{array}\right ]^T$ and the control variable $\boldsymbol{u}=\left [\begin{array}{ll} \tau _l & \tau _r \end{array}\right ]^T$ , the linearized robot dynamics can be represented in state-space form:
where the precise forms of $M, A_{23}, A_{43}, B_{21}, B_{41}, B_{61}, B_{22}, B_{42}$ and $B_{62}$ can be viewed in Appendix A.2.
In this case, from the linear state-space equations, it can be observed that the control torques applied to the left and right wheels simultaneously affect the pitch, yaw, and FM. However, the rotational states around the $y_B$ -axis, represented via $\delta$ and $\dot{\delta }$ , remain unaffected by other state variables. Based on this relationship, it is straightforward to decouple the state space into two independent state spaces and control them separately (this result relies on the assumption that $\theta$ is small and changes minimally, and that the robot carries a static load).
Two new control variables are introduced, namely $\tau _\theta$ and $\tau _\delta$ , that, respectively, represent the driving torques that control the PPA $\theta$ and the PYA $\delta$ of the control system. Through an intermediate decoupling link, as shown in Figure 6, a conversion from control variables $\tau _l$ and $\tau _r$ to $\tau _\theta$ and $\tau _\delta$ can be achieved [Reference Wang, Jianliang and Zhang46].
The decoupling process can be expressed via the following equations:
After decoupling, the two state-space models can be expressed as:
As shown by the equations above, controllers can be designed separately for the two state-space models. The first controller maintains the robot’s PM within a certain range, achieving self-balancing and FM. The second controller, building upon the balanced state, controls the YM of the robot, enabling it to change its direction.
For the simplified inverted pendulum model of the wheeled biped robot, its FM requires both the pendulum and the wheels to experience the same acceleration. For the wheels, this acceleration is provided by the static frictional force exerted by the ground. Analyzing the forces acting on the pendulum can be performed by following the approach illustrated in Figure 7.
As observed from Figure 7, the combined force $F_{total}$ of the wheel axle provides horizontal acceleration to the pendulum [Reference Zhao, Li and Zhou47]. When the robot maintains a constant PPA $\theta$ under the influence of the controller, the acceleration of the pendulum’s COM in the vertical direction is 0. Therefore, using trigonometric analysis, the horizontal acceleration can be deduced as follows:
It can be seen that in order for the pendulum to attain a horizontal acceleration, it is necessary for the vehicle to generate and maintain a tilt angle $\theta$ . However, for traditional wheeled biped robots, due to the absence of adjustable leg modules, the generation of the equivalent pendulum tilt angle can only originate from the CTA. This is disadvantageous for subsequent installation of upper-body mechanisms, such as manipulators, cameras, and LiDAR, which, to some extent, constrains the development of self-balancing robots.
4. Cascade controller design to reduce chassis tilt angle (CTA)
When the robot needs to cover long distances on flat ground, locking the leg modules to attain a general wheeled biped self-balancing robot configuration can effectively reduce the energy consumption relating to the leg module’s active joints. However, in scenarios where the robot requires frequent short-distance movements, frequent acceleration and braking can lead to oscillations in the CTA. In such cases, unlocking the leg module is necessary to maintain the horizontal orientation and to enable changes in vertical height. The overall control framework corresponding to situations in which the leg module is unlocked is depicted in Figure 8.
The entire control framework can be divided into the parallel mechanism controller, the wheel joints controller, and the measurement and equivalent parameters calculation. In the parallel mechanism controller, the approach relies upon calculating the leg joint angles based on the desired height and displacement to change the robot’s configuration. The control of the wheel joints is divided into self-balancing control and turning direction control, with corresponding controllers designed for each one of these. The outputs of the controllers, $\tau _\theta$ and $\tau _\delta$ , are then converted into output torques, $\tau _l$ and $\tau _r$ , for the wheel joints, which are then sent to the robot. In the measurement and equivalent parameters calculation layer, the corresponding parameters are calculated based on the actual output and measurement results and then fed back to the wheel joint controllers to close the loop.
The central concepts of the control framework revolve around real-time estimation of the length $L_{eq}$ between the chassis equivalent COM and the wheel axis, as well as the equivalent PPA, $\theta _{eq}$ , of the inverted pendulum model. This treatment ensures that the entire model can be approximated by an FIP. Closed-loop control is applied to the forward velocity of the wheel axis, using the position of the wheel axis relative to the robot as the desired foot-tip position. This process ensures the maintenance of the desired horizontal orientation and vertical height.
The subsequent sub-sections sections provide specific information about the balancing, and velocity, controllers of the robot.
4.1. Balance controller design of the robot
When the leg module is locked, the robot’s structure is simplified into that of a conventional wheeled biped self-balancing robot, which is then analyzed using the classical FIP model. When the leg module is unlocked, it is controlled by joint actuators, and all parts of the robot are assumed to be rigid bodies with constant masses. Even when the joint actuator speed is slow, the robot can still be abstracted as a variable-length FIP model. Based on this model, an analysis is performed to determine the left and right wheel joint driving torques required to enable self-balancing control. Controlling the robot’s balance corresponds to controlling the PPA, $\theta$ .
From Eq. 30(a), it is known that the differential equation for the PPA, $\theta$ , can be expressed as follows:
Furthermore, based on an earlier derivation, $A_{43}=-\left |A_{43}\right |\lt 0$ , $B_{41}\gt 0$ (in Appendix A.2). Performing a Laplace transform on the above equation yields the transfer function of the PPA, $\theta$ , with respect to the driving torque $\tau _\theta$ :
This transfer function possesses a pair of complex conjugate poles located on the imaginary axis, indicating critical stability. This implies that if the system is at an equilibrium point, a slight disturbance could cause the system to diverge, which aligns with our intuitive understanding: perturbing the robot’s wheel joint with a sufficient large force/moment, while in an upright position, will lead to the robot falling over. Considering closed-loop control of the angle $\theta$ , the concomitant feedback control system is designed as shown in Figure 9(a).
The $G_{c \theta }(s)$ controller’s design is based on a classical Proportional-Integral-Derivative (PID) control scheme. In single-input-single-output continuous systems, the PID control algorithm, which functions in accordance with the proportional, integral, and derivative terms of the error, is a widely used control law in practical engineering applications. For the continuous system depicted in Figure 9(b), a PID controller of the form shown in Eq. 34 below is employed:
where $K_p, T_i$ and $T_d$ correspond to proportional gain, integral time constant, and differential time constant, respectively, and $e(t)$ is the deviation between the desired value and the actual value of the controlled variable of the system, namely the error. In the self-balancing control of the wheeled biped robot, based on the open-loop system that is itself in a critically stable state, the concomitant unity negative feedback closed-loop system can be described via the following transfer function:
If only the proportional control element is used, the characteristic equation of the closed-loop system is:
When $K_p \geq 0$ , the system poles are located on the imaginary axis. However, when $K_p\lt 0$ , the system will have positive real poles. This implies that regardless of the value of $K_p$ , the closed-loop system under pure integral control remains unstable. Therefore, considering the adoption of PD control is necessary. Taking $G_{c \theta }(s)=K_p T_d s+K_p$ , the characteristic equation of the closed-loop system becomes:
whose solution can be expressed as:
To ensure stability of the closed-loop system, the solutions of the characteristic equation should have negative real parts. Taking $K_p T_d\gt 0$ , when ${\Delta }\lt 0$ , the closed-loop poles are complex conjugates with negative real components. When ${\Delta } \geq 0$ , it is only necessary to ensure that:
The choice of different values for the parameters $K_p$ and $T_d$ will lead to different performance of the closed-loop system. In the case of self-balancing robots, it is generally desirable for the system to exhibit as fast a response as possible, and minimal fluctuations in the pitch axis angle. Therefore, when applying this PD controller in practice, larger values of $K_p$ and $K_pT_d$ can be employed to fine-tune a set of parameters that provide improved self-balancing performance.
4.2. Cascaded PID-based velocity controller design for the robot
As deduced from the acceleration analysis in Section 3.3, it is apparent that for the robot to possess a non-zero velocity while maintaining self-balancing, the robot needs to generate a certain PPA, $\theta$ , to provide forward acceleration. Consequently, the problem of controlling the robot’s velocity fundamentally becomes a trajectory-tracking problem for PPA $\theta$ . Treating the subsystem $G_{{close\theta }}(s)$ , refined through the PD control law, as an inner-loop subsystem, we can derive the relationship between the forward displacement $x$ and the desired PPA $\theta _t$ from Eq. 30 as:
That is
The characteristic equation of the system can be expressed as:
In addition to having two poles corresponding to the PPA $\theta$ , the system also possesses two poles with values of $0$ . One of them arises from the pure integral of the forward velocity $\dot{x}$ to the forward displacement $x$ , while the other is inherent to the forward velocity $\dot{x}$ . If we set $v(s)=x(s) s$ , then the transfer function $G_{pv}(s)$ from the target PPA $\theta _t(s)$ to the forward velocity $v(s)$ has the following characteristic equation:
If the forward velocity $\dot{x}$ is taken as the controlled variable and the desired forward velocity is used as the reference input $\dot{x}_t$ , applying unity negative feedback to the transfer function $G_{pv}(s)$ as shown in Figure 10, it can be observed that the system can achieve the following step input commands:
For robot velocity control, pure integral closed-loop control can theoretically achieve set-point regulation of the desired forward velocity. Considering the existence of unmodeled joint friction and sensor observation errors in the actual robot, practical implementation of closed-loop velocity control on the robot is achieved using a PI controller. This forms a cascade control system as shown in Figure 11.
By appropriately adjusting the parameters of the self-balancing PD controller and the velocity loop PI controller, it is possible to achieve velocity control for self-balancing and FM of the robot in both the locked and unlocked states of the leg modules.
4.3. Relationship between CTA and inverted pendulum model after unlocking of leg modules
Concerning the balancing controller of the robot, its objective is to guide the convergence of the equivalent PPA $\theta _{eq}$ of the FIP model, rather than controlling the CTA $\theta _c$ . This difference in objectives may result in the equivalent PPA $\theta _{eq}$ being zero during movement, while the CTA $\theta _c$ is not, as shown in Figure 12(a). Consequently, the control framework necessitates additional compensation for the CTA $\theta _c$ . This compensation is realized through a PD control scheme, producing a torque output that supplements the output torque of the balancing controller.
For the sake of clarity, let us define the midpoint of the two hip joints of the same leg module as point $P$ . The distance from $P$ to the foot end is denoted as $h$ , and the angle between the line $h$ and the vertical line is $\theta _L$ . The line from the chassis’s equivalent COM to point $P$ is designated as $L_0$ , and the angle between the line $L_0$ and the vertical line is defined as $\theta _c$ . The distance from the chassis’s equivalent COM to the foot end is represented as $L_{eq}$ , and the angle between the line $L_{eq}$ and the vertical line is defined as $\theta _{eq}$ . At point $P$ , we establish a two-dimensional ground coordinate frame, denoted as $x_gPy_g$ , and a chassis coordinate frame, denoted as $x_bPy_b$ .
As shown in Figure 12(b), the coordinates $(x_b, y_b)$ calculated from the forward kinematics are in the body coordinate frame $x_bPy_b$ , and they need to be transformed into $(x_g, y_g)$ coordinates in the ground coordinate frame $x_gPy_g$ , as follows:
Subsequently, we can calculate $\theta _L$ and $h$ :
By implementing closed-loop PID control on the forward linear velocity of the wheel axis, the desired horizontal position $x_{gt}$ of the wheel axis relative to point $P$ can be obtained, while the desired vertical position $y_{gy}$ of the wheel axis relative to point $P$ will be directly specified by the command. The coordinates $(x_t, y_t)$ in the body coordinate frame $x_bPy_b$ can be computed using Eq. 47:
Using the leg module’s inverse kinematics model, the required joint angles are calculated and then used to control the leg motors’ movement.
By continuously estimating the real-time position of the equivalent COM relative to the wheel axis, it becomes possible to calculate the angle $\theta _{eq}$ and the length $L_{eq}$ . These calculations are subsequently integrated into the FIP model. Given that the chassis typically carries additional mechanisms, resulting in a total mass exceeding that of the leg module, the influence of the leg modules is temporarily disregarded when calculating the equivalent COM. Based on the geometric relationship illustrated in Figure 12(c), $\theta _{eq}$ and $L_{eq}$ can be expressed as:
Then $\dot{\theta }_{eq}$ can be expressed as:
Therefore, the angle $\theta _{eq}$ and its rate of change $\dot{\theta }_{eq}$ , in the above equation, correspond to $\theta$ and $\dot{\theta }$ in the FIP model, respectively, which yields the input torques required for self-balancing of the robot.
5. Simulation and experiments for wheeled biped robot
5.1. Simulation of motion and control
To validate the modeling and control strategies proposed in this paper, simulations were conducted using a robot dynamics simulation platform. Webots, an open-source rigid-body robot dynamics simulation software utilizing the Ordinary differential equation (ODE) physics engine, was selected for its user-friendly interface [Reference Téllez and Angulo48]. In this study, Webots was chosen as the dynamic simulation platform, and a simplified wheeled-legged self-adaptive balancing robot was constructed, as depicted in Figure 13. In Figure 13, (a), (b), and (c) respectively depict a robot walking on flat ground, traversing rough terrain, and walking on a slope in the simulation.
The simulation utilized the dynamic parameters presented in Table II in Appendix A.3. A simulation step of 0.002 s (500 Hz) was set. The PID control parameters were chosen as detailed in Table III in Appendix A.3.
To evaluate the effectiveness of the control framework, simulation experiments were conducted under varying target velocity commands and different chassis height commands. A fixed target velocity command of 1.2 m/s was used, and the resulting translational velocity and CTA response were obtained for chassis heights of 0.18 m, 0.225 m, 0.27 m, and 0.315 m, as shown in Figure 14.
Figure 14’s subfigures (a) and (b) depict the robot’s speed and CTA response when the legs are locked, whereas (c) and (d) display these same variables when the legs are unlocked. In subfigures (a) and (c) of Figure14, for different chassis heights, the controller effectively achieves following of the 1.2 m/s velocity command in the simulation environment. Acceleration of the inverted pendulum model relies on the vertical projection of the body’s COM onto the wheel axis, inducing an equivalent pendulum tilt angle. When the robot needs to accelerate along the forward axis, it must initially move in the opposite direction to disrupt its balance and generate a positive tilt angle. Regarding subfigures (b) and (d), when the robot generates an equivalent PPA ( $\theta _{eq}$ ), the wheel axis moves relative to the chassis in the opposite direction. This will cause the entire robot to be subjected to a recovery torque due to the CTA compensator. This torque causes the chassis to exhibit a reverse tilt angle ( $-\theta _c$ ), thus forming an equivalent PPA ( $\theta _{eq}$ ) used for acceleration (as depicted in Figure 15). The amplitude of the CTA’s fluctuations does not exceed the 0 $^\circ$ – 2.9 $^\circ$ range. (Unless otherwise noted, this article discusses CTA without regard to the initial reverse tilt process.)
Using a fixed chassis target height command of 0.225 m, simulation results are obtained for various forward velocity step commands, namely: 0.8 m/s, 1.2 m/s, 1.6 m/s, 2.0 m/s, and 2.4 m/s. As shown in Figure 16, subfigures (a) and (b) display the robot’s response when its legs are locked, and (c) and (d) when its legs are unlocked. Under a fixed chassis height, the robot consistently tracks velocity commands of varying magnitudes effectively. As the target velocity values are increased, the corresponding peak CTA amplitudes also increase. After unlocking the leg structure, the range of CTA changes becomes significantly smaller compared to when the legs are locked, always remaining below 3.5 $^\circ$ (in the FM).
The proposed control strategy’s feasibility and stability are validated in the simulation environment. It is demonstrated that, after unlocking the parallel structure, the robot can stably respond to both velocity and chassis height commands, while exhibiting very low levels of CTA oscillation as a tradeoff.
5.2. Motion experiments of the robot prototype
To further validate the effectiveness of the leg module unlocking, and its impact on the robot’s motion and control strategy, we constructed a robot prototype as an experimental platform, as shown in Figure 17. Subfigures (a), (b), and (c) in Figure 17, respectively, show the robot traversing flat ground, slopes, and rough terrain. These aspects will be discussed in detail below. The prototype is equipped with a six-axis inertial sensor on the chassis, capable of estimating the ground attitude, three-axis angular velocities, and three-axis accelerations of the robot chassis. The leg module employs high-torque FOC DC motors to power the active joints, while the wheel mechanism utilizes FOC DC motors to drive the left and right wheel joints. The dynamic parameters of the prototype are outlined in Table IV in Appendix A.3. Consistent with the simulation environment, the control frequency is set to 500 Hz, and after tuning, the PID control parameters are determined as shown in Table V in Appendix A.3.
We altered the relative heights of the chassis and wheel axis to establish a variable-length inverted pendulum, locking the leg module in place. We conducted experiments to assess the robot’s FM at four target height states (namely 0.18 m, 0.225 m, 0.27 m, and 0.315 m). The velocity and CTA response curves, pertaining to situations in which the legs are unlocked/locked, are shown in Figure 18. Figure 18 illustrates the velocity and CTA responses during two distinct robot conditions: when the leg joints are locked, as shown in (a) and (b), and when the leg joints are unlocked, as presented in (c) and (d). From (a) and (c), it is evident that the robot’s velocity can converge for varying values of equivalent rod length $h$ of the legs, and the convergence speed when the legs are unlocked is faster than when the legs are locked. From (b) and (d), it can be observed that after the legs are unlocked, the robot’s CTA decreases from about 7 degrees to approximately 1.5 degrees. Additionally, as the height $h$ decreases, the amplitude of the CTA slightly increases. This is due to a reactive torque generated by the legs during swinging, which acts on the chassis. As the height $h$ decreases, this reactive force increases, augmenting the disturbance to the chassis, thereby leading to a slight increase in the CTA.
Similarly, when the robot’s height h is set to a fixed value of 0.225 m, and target velocities of 0.8 m/s, 1.2 m/s, 1.6 m/s, 2.0 m/s, and 2.4 m/s are given during the locking/unlocking of the leg mechanisms, the corresponding robot responses are depicted in Figure 19. Subfigures (a) and (b) display the velocity and CTA responses when the leg mechanisms are locked, while (c) and (d) display the responses after unlocking the leg mechanisms. From (a) and (b), it is observed that as the target velocity increases, the robot requires a larger CTA to provide the necessary acceleration. At the five target velocity settings of 0.8 m/s, 1.2 m/s, 1.6 m/s, 2.0 m/s, and 2.4 m/s, the maximum CTA generated by the robot during acceleration or braking is 4 degrees, 6.3 degrees, 8.6 degrees, 10.3 degrees, and 12 degrees, respectively. By comparing subfigures (b) and (d), it is evident that the trend remains consistent, but after unlocking the leg mechanisms, the maximum CTA value decreases from 12 degrees to 2.7 degrees. This means that, in terms of peak CTA values, the maximum CTA when the leg mechanisms are unlocked is even lower than the minimum CTA when the leg mechanisms are locked. It is evident that unlocking the leg mechanisms effectively reduces the CTA, thereby maintaining the chassis’s horizontal orientation.
To further verify the practicality of the proposed control framework for the robot’s movement on complex terrains, an experimental environment for the robot’s prototype movement was set up, as shown in Figure 17(c). Wooden planks and strips were used to create evenly-spaced obstacles (with a height of 10.3 mm, width of 40 mm, and spacing of 240 mm) protruding from the flat ground for the experiments. The robot’s target velocity was set to 1.2 m/s, allowing the robot to accelerate over a 1 m distance on flat ground, then pass through a 1.25 m rugged terrain section, and finally brake at four different target height commands: 0.18 m, 0.225 m, 0.27 m, and 0.315 m. The responses when the leg mechanisms were locked and unlocked are shown in Figure 20. After unlocking the leg mechanisms, the robot’s CTA could still be maintained within a 2.9-degree range, which was significantly lower than the corresponding range recorded when the leg mechanisms were locked. This demonstrates that the control framework can effectively maintain the robot’s balance when traversing rugged surfaces.
As previously mentioned, reducing the CTA of the robot aids in the support of upper-body loads and completion of operations. Therefore, experiments were also conducted on the robot under different load conditions, as shown in Figure 21. In Figure 21, subfigures (a) and (b) show the robot carrying a load of 10 kg while traversing rugged terrain and while rolling up a 15-degree ramp, respectively. The red arrows in the figures indicate the direction of the robot’s movement. Figure 22 displays the CTA responses recorded while the robot was traversing rough terrain and while rolling up a 15-degree slope, under different loads (it should be noted that these are static loads; dynamic loads such as those involving the operation of robotic arms require further discussion). Under loaded conditions, the robot’s target speed was set to 1.2 m/s and the target height to 0.225 m, accelerating over a flat surface for 1 m before entering a 1.25 m rough terrain segment or a 15-degree slope, and finally braking. The robot’s CTA responses generated when using locked/unlocked leg structures were compared over the same travel distance. Subfigures (a) and (b) respectively show the CTA responses recorded when the robot was traversing rough terrain with locked and unlocked leg structures. Comparing the two figures, it is apparent that with the leg structure unlocked, the tendency of the CTA’s value to increase due to the load is less than that when the leg structure is locked. Furthermore, the amplitude of the CTA when the leg structure is unlocked is also smaller than when it is locked. Subfigures (c) and (d) respectively show the CTA responses measured when the robot is rolling up a 15-degree ramp with locked and unlocked leg structures. The main point of interest is the data variation while traversing the slope (the data between the two red vertical lines, with subsequent data showing the robot’s response after braking not analyzed here). When the robot carries a smaller load, the CTA amplitude exhibited when the legs are unlocked is significantly smaller than that corresponding to the locking of the legs. As the robot’s load gradually increases, the advantage of unlocking diminishes. Overall, compared to when the leg structures are locked, robots with unlocked leg structures exhibit a clear advantage in terms of CTA response.
In conclusion, this study has verified the feasibility of the control strategy with both simulation and a physical platform involving the locked/unlocked leg module. Experimental validations were conducted on the prototype under different configurations. Additionally, to verify the universality of the proposed control framework, experiments were conducted on robots traversing rough terrain and slopes under various load conditions. The results indicate that the control framework can effectively reduce the robot’s CTA after unlocking the leg structures, confirming the effectiveness of the control framework. This has significant implications for the widespread application of such robots.
6. Conclusions
In order to mitigate the CTA’s impact on upper-body structures during a wheeled-legged robot’s motion, and to enhance its adaptability in complex environments, we developed kinematic and dynamical models of the wheeled-legged robot. The robot employs a five-bar mechanism as its leg module. This study focuses on conducting the motion-decoupling analysis and introduces an accompanying multilevel cascaded controller. The robot can keep the chassis horizontal with respect to the ground and control the height of the chassis during motion. When the leg structure is unlocked and moving on flat ground at a speed of 1.2 m/s, the maximum CTA value is about 1.2 degrees. Compared to the case when the leg structure is locked, with a maximum CTA amplitude of 6.5 degrees, the unlocked-leg-structure case exhibits a significant improvement. When the wheeled-legged robot carries a load over a rough terrain and a sloping terrain, this cascaded control method can still effectively reduce the CTA to a certain extent. However, as the load increases, the said improvements gradually diminish. Overall, this cascaded control method can effectively reduce the CTA during this type of robot’s motion, thereby extending its application range.
In the future, we will further optimize the control method for robots carrying loads (especially dynamic loads like robotic arms), to enhance the robot’s performance in complex conditions.
Author contribution
Nan Mao: Conceptualization, writing – original draft, investigation, and methodology. Junpeng Chen: Writing, validation, and investigation. Emmanouil Spyrakos–Papastavridis: Writing, validation, and revision. Jian S. Dai: Supervision, validation, revision, and project administration.
Financial support
We acknowledge the support of the Key Program of the National Natural Science Foundation of China (Grant No. 52335003), the Science, Technology and Innovation Commission of Shenzhen Municipality (Grant No. JCYJ20220818100417038), and the High level of special funds (G03034K003) from the Southern University of Science and Technology.
Competing interests
All authors certify that they have no affiliations with or involvement in any organization or entity with any financial interest or nonfinancial interest in the subject matter or materials discussed in this manuscript.
A. Appendix
A.1. Parameters in kinematic derivation
A.2. Parameters in dynamic derivation
A.3. Parameters in simulation and experiments