Implementation and Control of a Wheeled Bipedal Robot Using a Fuzzy Logic Approach

: This study designs and implements a wheeled bipedal robot (WBR) that combines the mobility of wheeled robots and the dexterity of legged robots. The designed WBR has extra knee joints to maintain body balance when encountering uneven terrain. Because of the robot’s highly nonlinear, dynamic, unstable, and under-actuated nature, an intelligent motion and balance controller (IMBC) based on a fuzzy logic approach is proposed to maintain the balance of the WBR while it is standing and moving on the ground. It should be emphasized that the proposed IMBC system does not require prior knowledge of system dynamics and the controller parameters are tuned using the qualitative aspects of human knowledge. Furthermore, a 32-bit microcontroller that has memory, programmable I/O peripherals, and a processor core is used to implement the IMBC method. Finally, moving and rotating, height-changing, posture-keeping, and “one leg on slope” movement scenarios are tested to demonstrate the feasibility of the proposed IMBC system. The experimental results show that, by using the proposed IMBC system, the WBR can not only balance and move well both on ﬂat ground and in complex terrain but also extend each leg independently to maintain body balance.


Introduction
Automation has become an integral part of all kinds of work, touting the benefits of not only reducing personnel costs but also maintaining the quality of the work done. In the past, industrial robots and human workers worked independently of each other in the workspace; however, robots and human workers will need to interact more directly in the future. Mechanisms for robot motion can be divided into two main domains: wheel-based approaches [1][2][3] and leg-based approaches [4][5][6]. Wheeled robots can change their position easily and quickly and their cost is lower; however, they cannot handle uneven terrain. Legged robots can travel almost anywhere but require heavy computational processing to actuate such complex movements. As they can achieve the advantages of both wheeland leg-based designs, wheel-legged robots have attracted much attention [7][8][9][10][11][12]. The wheel-legged robot can move fast on flat ground and pass over uneven terrain, thereby improving the robot's adaptability in application scenarios. It also allows the robot's height to be changed to avoid collisions when it needs to pass under low obstacles.
Both academia and industry have conducted extensive research on self-balancing two-wheeled robots [13][14][15]. These have become an important member of the family of autonomous service robots, thanks to their good movement speed, load capacity, and terrain adaptability, and the concept has been successfully applied to transport robots [16] and hospitality robots [17,18]. Considering the diversity of locations, the wheeled bipedal robot (WBR) [19,20], which has two legs and two wheels (with the wheels installed on each foot), has more degrees of freedom than self-balancing two-wheeled robots [13][14][15][16][17][18] in the vertical direction. By achieving a higher movement speed and a larger movement maneuverability and a high load capacity. The height of the proposed WBR can be adjusted through the realization of a four-bar linkage. Since the four-bar linkage approximates the linear motion of the wheels perpendicular to the ground, the WBR can traverse simple terrain in the same manner as wheeled robots and adjust its posture to the shape of uneven ground.
To overcome the highly dynamic and under-actuated nature of the proposed WBR's behavior, this study proposes an intelligent motion and balance control (IMBC) system that comprises fuzzy movement balancing control (FMBC), fuzzy yaw steering control (FYSC), and fuzzy roll balancing control (FRBC). The FMBC, based on a dual-loop control structure, is designed to cope with the under-actuated nature problem of the WBR and allow the WBR to move at the desired velocity command while maintaining balance. The FYSC is a compensated speed control signal for the WBR that can rotate about its vertical axis, and the FRBC extends each leg independently to change the robot's height and altitude when driving over challenging terrain. Since the proposed IMBC method was designed based on the SFC method, it does not require complex analysis or heavy computational processing. A low-cost 32-bit STM32F446RE microcontroller is used to implement the control method for the WBR. Finally, four experimental scenarios are tested to explore the stability performance of the proposed IMBC system. The experimental results show that the proposed IMBC system is feasible and effective for robot motion on both flat and complex terrain.
The contribution of this study can be summarized as follows: (1) The mechanical structure of the WBR, which has two legs and two wheels (with the wheels installed on each foot), is designed and implemented. (2) An experimental setup is presented for the WBR using a low-cost 32-bit STM32F446RE microcontroller. (3) The IMBC system is shown to be able to maintain the balance of the WBR while standing and moving on the ground. (4) The IMBC system is shown to be able to independently control two leg motors to change the robot's height and attitude and allow the WBR to move over challenging terrain.
The remainder of this study is outlined as follows. In Section 2, the design and dynamic model of the WBR is presented. In Section 3, the structure of the IMBC system is presented. Experimental tests are presented in Section 4, and conclusions are given in Section 5. Figure 1 shows the mechanical structure of the WBR: Figure 1a shows the leg components and Figure 1b shows the kinematic models. The developed WBR, which consists of a body and two legs with wheels, is a promising way to improve the performance of bipedal robots in terms of flexibility, movement speed, and energy efficiency. By adding wheels to the ends of the legs, each leg can be independently extended and retracted by driving a leg motor mounted on the hip of the body. The torsion springs installed in the inner joints (see Figure 1a) are used to counteract the weight of the WBR itself, which can reduce the control effort of the leg motors when driving or standing to improve the overall efficiency of the robot. The total height of the WBR can be adjusted between 26 cm and 33 cm through the realization of a four-bar linkage.

Mechanical Design
In order to illustrate the relationship between the leg length of the WBR and the angle of the leg motor, part of the right leg is considered as shown in Figure 1b. The length between the pin joint and the inner joint, L kR , can be found according to the Cosine law as follows: where L 1 is the length between the pin joint and the knee joint, L 2 is the length between the pin joint and the leg joint, and θ kR is the leg motor angle of the right leg. The torsion spring angle θ tR and the length L R of the right leg of the WBR can be found as follows: where L 3 is the length between the knee joint and the inner joint and L 4 is the length between the inner joint and the wheel motor. The height of the right side of the WBR is given as: where R is the wheel radius. Similarly, the height of the left side of the WBR, h L , can be obtained using the leg motor angle of the left leg θ kL as follows: in which where θ tL is the torsion spring angle and L kL is the length between the pin joint and the inner joint of the left leg of the WBR, respectively. Thus, the joint angles are adjusted to produce a change in the lengths of both sides of the robot (h R and h L ) when the two leg motors are driven (θ kR and θ kL ). In order to illustrate the relationship between the leg length of the WBR and the angle of the leg motor, part of the right leg is considered as shown in Figure 1b. The length between the pin joint and the inner joint, kR L , can be found according to the Cosine law as follows: where 1 L is the length between the pin joint and the knee joint, 2 L is the length between the pin joint and the leg joint, and kR θ is the leg motor angle of the right leg. The torsion spring angle tR θ and the length R L of the right leg of the WBR can be found as follows: where 3 L is the length between the knee joint and the inner joint and 4 L is the length between the inner joint and the wheel motor. The height of the right side of the WBR is  Figure 2 shows the photographs of the WBR: Figure 2a shows the WBR platform and Figure 2b shows the hardware connection diagram. The hardware connection diagram is composed of a STM32F446RE microcontroller, a MPU 6050, two wheel motors with optical encoders, and two leg motors. The MPU 6050, consisting of a 3-axis accelerometer and a 3-axis gyroscope, is located at the center of the robot body, the STM32F446RE microcontroller is placed on the upper body, and the motor drives are located on the lower body. The leg motor is a Dynamixel motor (MX-64) made by ROBOTIS, which can provide enough power for a leg to adjust the height of the robot. The wheel motor is a geared DC motor (GM25-370) made by ChiHai MOTOR, which can provide smooth stabilization and counteract disturbances to the tilt angle of the system. An encoder is installed behind the wheel motor to provide information on the robot's translational velocity and position. The MPU 6050 is used to measure the roll and pitch angles of the robot tilt. The STM32F446RE microcontroller, which is coded by Keil C, is used as a platform for the implementation of control algorithms; it has a Cortex-M4 core, a processor clock frequency of up to 180 MHz, and a rich set of IO ports for connecting to various sensors and motors. The microcontroller, leg motors, wheel motors, and remaining electronic devices are powered by a 3-cell LiPo Battery. microcontroller is placed on the upper body, and the motor drives are located on the lower body. The leg motor is a Dynamixel motor (MX-64) made by ROBOTIS, which can provide enough power for a leg to adjust the height of the robot. The wheel motor is a geared DC motor (GM25-370) made by ChiHai MOTOR, which can provide smooth stabilization and counteract disturbances to the tilt angle of the system. An encoder is installed behind the wheel motor to provide information on the robot's translational velocity and position. The MPU 6050 is used to measure the roll and pitch angles of the robot tilt. The STM32F446RE microcontroller, which is coded by Keil C, is used as a platform for the implementation of control algorithms; it has a Cortex-M4 core, a processor clock frequency of up to 180 MHz, and a rich set of IO ports for connecting to various sensors and motors. The microcontroller, leg motors, wheel motors, and remaining electronic devices are powered by a 3-cell LiPo Battery.

Modeling
In order to manipulate the WBR, it is necessary to build a mathematical model that allows the robot and the designed controller to successfully achieve the desired control goals. Figure 3 shows the coordinate systems of the WBR and Appendix A lists all the symbols used and their definitions. The robot's position can be measured as and the robot's body yaw angle ψ can be given as:

Modeling
In order to manipulate the WBR, it is necessary to build a mathematical model that allows the robot and the designed controller to successfully achieve the desired control goals. Figure 3 shows the coordinate systems of the WBR and Appendix A lists all the symbols used and their definitions. The robot's position can be measured as θ w = 1 2 (θ R + θ L ) and the robot's body yaw angle ψ can be given as: where θ R is the rotary angle of the right wheel motor and θ L is the rotary angle of the left wheel motor. The dynamic model of the WBR for the pitch axis can be described as [43]: where E is the inertia matrix, F is the matrix of centripetal and Coriolis forces, G is the gravity matrix, H is the gain matrix, D is the lump of uncertainties matrices (including the external disturbances and parameter uncertainties), and v L and v R are the input voltages of the left and right wheel motors, respectively. These matrices can be found by considering the limits θ → 0 , sin θ → θ and cos θ → 1 as:

Controller Design for the WBR
A dual-loop control structure was proposed to cope with the under-actuated nature problem of a self-balancing two-wheeled robot moving and turning while maintaining the robot's balance [43]. Extending the design ideas, this study proposes an IMBC system for the WBR, as shown in Figure 4. It comprises three controllers: FMBC, FYSC, and FRBC. It is similar to [43], where the FMBC designed using a dual-loop control structure allows the WBR to move at the desired velocity command while maintaining balance and the FYSC can control the WBR to rotate about its vertical axis. Unlike [43], the FRBC is a novel design that independently controls two leg motors to change the robot's height and altitude and allows the WBR to travel over challenging terrain.   Equation (9) can be divided into two subsystems: one is the velocity control subsystem and the other is the balancing control subsystem. The velocity control subsystem is used to allow the WBR to move at the desired velocity command, and the balancing control subsystem is used to maintain the WBR's balance. Meanwhile, the dynamic model of the WBR for the yaw axis can be expressed as [43]: .. where The robot body roll angle can be given as: When the robot's two legs are on the ground. From (9), (14) and (15), it shows the nonlinear and under-actuated nature of the WBR system. Since these robot parameters and the uncertainties matrix are unknown or perturbed in real WBR applications, a model-free control scheme should be designed that not only accelerates and decelerates along the forward direction and balances dynamically but is also robust to uncertainties.

Controller Design for the WBR
A dual-loop control structure was proposed to cope with the under-actuated nature problem of a self-balancing two-wheeled robot moving and turning while maintaining the robot's balance [43]. Extending the design ideas, this study proposes an IMBC system for the WBR, as shown in Figure 4. It comprises three controllers: FMBC, FYSC, and FRBC. It is similar to [43], where the FMBC designed using a dual-loop control structure allows the WBR to move at the desired velocity command while maintaining balance and the FYSC can control the WBR to rotate about its vertical axis. Unlike [43], the FRBC is a novel design that independently controls two leg motors to change the robot's height and altitude and allows the WBR to travel over challenging terrain.

Controller Design for the WBR
A dual-loop control structure was proposed to cope with the under-actuated nature problem of a self-balancing two-wheeled robot moving and turning while maintaining the robot's balance [43]. Extending the design ideas, this study proposes an IMBC system for the WBR, as shown in Figure 4. It comprises three controllers: FMBC, FYSC, and FRBC. It is similar to [43], where the FMBC designed using a dual-loop control structure allows the WBR to move at the desired velocity command while maintaining balance and the FYSC can control the WBR to rotate about its vertical axis. Unlike [43], the FRBC is a novel design that independently controls two leg motors to change the robot's height and altitude and allows the WBR to travel over challenging terrain.

FMBC Design
The FMBC should control the WBR to move at the desired velocity command and remain balanced even in the height variation of the WBR. A dual-loop control scheme is utilized, where the outer-loop controller (for the velocity control subsystem) is used to calculate the desired robot pitch angle for tracking velocity commands and the inner-loop controller (for the balancing control subsystem) is applied to keep the body balanced with the desired robot pitch angle. Thus, the advantage of the FMBC scheme lies in its simplicity and robust performance, compared to some other existing schemes [23][24][25][26][27][28][29][30][31][32]. According to the velocity command wc θ  given by the users, an outer-loop sliding index is designed as [43]:

FMBC Design
The FMBC should control the WBR to move at the desired velocity command and remain balanced even in the height variation of the WBR. A dual-loop control scheme is utilized, where the outer-loop controller (for the velocity control subsystem) is used to calculate the desired robot pitch angle for tracking velocity commands and the inner-loop controller (for the balancing control subsystem) is applied to keep the body balanced with the desired robot pitch angle. Thus, the advantage of the FMBC scheme lies in its simplicity and robust performance, compared to some other existing schemes [23][24][25][26][27][28][29][30][31][32]. According to the velocity command . θ wc given by the users, an outer-loop sliding index is designed as [43]: where e w = . θ wc − . θ w is the translational velocity error and λ 1 is a positive constant. In order to converge the translational velocity error of the robot to zero quickly and have an excellent system response such as a faster rising time and smaller overshoot, each fuzzy rule of the outer-loop controller is given as follows: where F i sw are the labels of the fuzzy sets, F i θc are the singleton control actions, and θ c is the desired robot pitch angle. The fuzzy rules base of the outer-loop controller is given in Table 1, where the fuzzy labels are negative big (NB), negative medium (NM), negative small (NS), zero (ZO), positive small (PS), positive medium (PM), and positive big (PB), as shown in Figure 5a, where the membership functions of the fuzzy sets are given in a triangular form. The fuzzy rules in Table 1 are constructed using the idea that the outerloop sliding index s w can quickly reach zero via a time-consuming trial-and-error tuning procedure. The adopted outer-loop sliding index reduces the number of fuzzy rules, thus reducing the complexity of adjustment. It shows that the translational velocity error e w will converge to zero when the outer-loop sliding index converges to zero. The outer-loop controller allows the WBR to move at the desired velocity command; thus, the velocity control subsystem can be asymptotically stable under the action of the outer-loop controller. procedure. The adopted outer-loop sliding index reduces the number of fuzzy rules, thus reducing the complexity of adjustment. It shows that the translational velocity error w e will converge to zero when the outer-loop sliding index converges to zero. The outer-loop controller allows the WBR to move at the desired velocity command; thus, the velocity control subsystem can be asymptotically stable under the action of the outer-loop controller.  To cope with the system uncertainties caused by the changes in robot height, each fuzzy rule of the inner-loop controller is given as follows: To cope with the system uncertainties caused by the changes in robot height, each fuzzy rule of the inner-loop controller is given as follows: where the robot height can be measured as h = 1 2 (h R + h L ),

FYSC Design
FYSC is designed to control the WBR so that it can rotate along its vertical axis. The speed control signals applied to the right or left driving wheels are obtained as follows: where v b is the FMBC output and v y is the FYSC output. According to the velocity command . ψ c given by the users, a yawing sliding index is designed as [43]: where F j sψ are the labels of the fuzzy sets as shown in Figure 5a and F i vy are the singleton control actions. The fuzzy rules base of the FYSC is shown in Table 2, where it is constructed using the idea that the yawing sliding index s ψ can quickly reach zero via a time-consuming trial-and-error tuning procedure. The adopted yaw sliding index reduces the number of fuzzy rules, thus reducing the complexity of adjustment. It shows that the yaw speed error e ψ will converge to zero when the yaw sliding index converges to zero. The FYSC allows the WBR to rotate along its vertical axis at the desired velocity command. Thus, it can be asymptotically stable under the action of the FYSC.

FRBC Design
When the ground is rough or the robot's legs are not of equal length, the FRBC is designed to control the WBR and maintain its horizontal posture and height by adjusting the length of its legs. Due to the hardware limitation, the WBR's leg length cannot be extended or shortened indefinitely. In the proposed WBR, the length of its legs can be adjusted between h max = 161.1 mm and h min = 93.7 mm through the realization of a four-bar linkage. When the leg length of the WBR is within the limitation, the FRBC is designed for posture control, and when the leg length of the WBR is on the limitation, the FRBC is designed for height control. First, considering the robot height is between h max and h min , the FRBC is designed to control the WBR to maintain its horizontal posture. In the posture controller design, a rolling sliding index is designed as: where λ 3 is a positive constant. Each fuzzy rule of the posture controller is given as follows: where F i sφ are the labels of the fuzzy sets as shown in Figure 5a and F i L and F i R are the singleton control actions. The fuzzy rules base of the posture controller is shown in Table 3a, where it is constructed using the idea that the rolling sliding index s φ can quickly reach zero via a time-consuming trial-and-error tuning procedure. The adopted rolling sliding index reduces the number of fuzzy rules, thus reducing the complexity of adjustment. It shows that the roll angle of the robot body φ will converge to zero when the rolling sliding index converges to zero. Thus, the FRBC allows the WBR to control two leg motors independently so as to maintain its horizontal posture.
Secondly, given that the height of either leg of the robot is at the limitations h max or h min , the FRBC is designed to adjust the length of its legs to maintain its height. In order to ensure that the WBR can be kept at the setting height h set , each fuzzy rule of the height controller can be designed as follows: where e L = h L − h set and e R = h R − h set are the height errors, F i eL and F i eR are the labels of the fuzzy sets as shown in Figure 5a, and F i hL and F i hR are the singleton control actions. The fuzzy rules base is shown in Table 3b, where it is constructed using the idea that the height errors (e L and e R ) can quickly reach zero by a time-consuming trial-and-error tuning procedure. This allows the WBR to control two leg motors independently in order to change the height of the robot while it is asymptotically stable under the action of FRBC. Thus, the motor angle of the left leg and the right leg are updated as follows: (27) θ kR (N + 1) = θ kR (N) + ∆θ kR (28) where N denotes the number of iterations.

Experimental Results
The controller parameters of the IMBC system were selected as λ 1 = 0.01, λ 2 = 0.125, 10] T , k 2 = [125, 10] T , and k 3 = [120, 10] T , considering the stability requirements and possible operating conditions. Generally, these control parameters require some trial-and-error tuning procedures to determine. To show the effectiveness of the IMBC system, a comparison between the cascade PID control [22] and the proposed IMBC system is presented. Four experimental scenarios (namely moving and rotating, height-changing, posture-keeping, and one leg on slope movement) were tested to explore the stability performance of the controllers. Figure 6 shows four photographs of the experiments, and the experimental results are discussed below.
Actuators 2022, 11, x FOR PEER REVIEW 11 of 18 The controller parameters of the IMBC system were selected as 01 . , considering the stability requirements and possible operating conditions. Generally, these control parameters require some trial-and-error tuning procedures to determine. To show the effectiveness of the IMBC system, a comparison between the cascade PID control [22] and the proposed IMBC system is presented. Four experimental scenarios (namely moving and rotating, height-changing, posture-keeping, and one leg on slope movement) were tested to explore the stability performance of the controllers. Figure 6 shows four photographs of the experiments, and the experimental results are discussed below.

Moving and Rotating Scenario
In this scenario, the WBR started by balancing in its initial posture at the setting height and staying at the setting height. The tests were then carried out, including selfbalancing, station-keeping, anti-interference, moving, and rotating tests. The experiment

Moving and Rotating Scenario
In this scenario, the WBR started by balancing in its initial posture at the setting height and staying at the setting height. The tests were then carried out, including selfbalancing, station-keeping, anti-interference, moving, and rotating tests. The experiment was performed by executing three actions to demonstrate the flexibility of the WBR. Two external forces were pushed on both sides of its body by human hands at approximately the 3rd and 6th second. The WBR was then ordered to go forward for 3 s at the 12th second and turn right in place for 3 s at the 17th second. The experimental results of the moving and rotating scenario are shown in Figure 7a,b for the cascade PID control [22] and the IMBC system, respectively. These figures show that both the cascade PID control and the IMBC system are sufficiently robust against external disturbances and can perfectly perform tasks such as moving and rotating in place while maintaining good balance.

Height-Changing Scenario
In this scenario, the WBR started balancing in its initial posture at the minimum height. The experiment was performed by increasing the height of the robot to the maximum height starting at approximately the 2nd second and then changing the height of the robot to the minimum height at approximately the 4th second. The experimental results of the height-changing scenario are shown in Figure 8a,b for the cascade PID control [22] and the IMBC system, respectively. It can be seen that when the robot height command is changed, the length of both legs increases or decreases at the same time.
Comparing Figure 8a,b shows that the WBR was able to stay in place without generating significant motion when using the proposed IMBC system. However, when using the cascade PID control, the robot could not stay in its original position, owing to the change in height of its center of gravity. This result demonstrates that the proposed IMBC system can effectively overcome the effects of system uncertainties caused by robot height variations.

Height-Changing Scenario
In this scenario, the WBR started balancing in its initial posture at the minimum height. The experiment was performed by increasing the height of the robot to the maximum height starting at approximately the 2nd second and then changing the height of the robot to the minimum height at approximately the 4th second. The experimental results of the height-changing scenario are shown in Figure 8a,b for the cascade PID control [22] and the IMBC system, respectively. It can be seen that when the robot height command is changed, the length of both legs increases or decreases at the same time. Comparing Figure 8a,b shows that the WBR was able to stay in place without generating significant motion when using the proposed IMBC system. However, when using the cascade PID control, the robot could not stay in its original position, owing to the change in height of its center of gravity. This result demonstrates that the proposed IMBC system can effectively overcome the effects of system uncertainties caused by robot height variations.

Posture-Keeping Scenario
The robustness of the IMBC system was tested when one wheel was slightly off the ground. The purpose of the experiment was to test whether the leg strategy controller could maintain the robot's height when it was disturbed by human hands. The experiment was performed by lifting the right foot of the WBR by hand at approximately the 2nd second and putting it down at approximately the 6th second, and then lifting the left foot of the WBR by hand at approximately the 12th second and putting it down at approximately the 16th second. The experimental results of the posture-keeping scenario are shown in Figure 9a,b for the cascade PID control [22] and the IMBC system, respectively. They show that the proposed IMBC system can maintain the horizontal posture of the WBR during the leg lifting process, and when the single leg on one side of the leg lift reaches its limit, the other side can be extended or retracted to compensate for the error of the horizontal angle. Because the cascade PID controller cannot independently control two leg motors to change the robot's attitude, the horizontal posture of the WBR cannot be maintained during the leg lifting process.

Posture-Keeping Scenario
The robustness of the IMBC system was tested when one wheel was slightly off the ground. The purpose of the experiment was to test whether the leg strategy controller could maintain the robot's height when it was disturbed by human hands. The experiment was performed by lifting the right foot of the WBR by hand at approximately the 2nd second and putting it down at approximately the 6th second, and then lifting the left foot of the WBR by hand at approximately the 12th second and putting it down at approximately the 16th second. The experimental results of the posture-keeping scenario are shown in Figure 9a,b for the cascade PID control [22] and the IMBC system, respectively. They show that the proposed IMBC system can maintain the horizontal posture of the WBR during the leg lifting process, and when the single leg on one side of the leg lift reaches its limit, the other side can be extended or retracted to compensate for the error of the horizontal angle. Because the cascade PID controller cannot independently control two leg motors to change the robot's attitude, the horizontal posture of the WBR cannot be maintained during the leg lifting process. Actuators 2022, 11, x FOR PEER REVIEW 14 of 18

One Leg on Slope Movement Scenario
The WBR moved on a small slope of approximately 12° on one side and 8° on the other side, with the left leg on the small slope and the right leg on the flat ground. The purpose of the experiment was to test whether the leg strategy controller could keep the robot horizontal when it was disturbed by terrain. The experiment had the robot move forward at approximately the 5th second with the left foot on the ramp but the right foot on the ground and then move backward to its original position at approximately the 7th second. The experimental results of the posture-keeping scenario are shown in Figure  10a,b for the cascade PID control [22] and the IMBC system, respectively. These results show that the proposed IMBC system can adjust the height of the left and right legs in time to avoid the robot falling over as a result of a change in height of the left and right leg positions. However, the cascaded PID controller cannot adjust the height of the left and right legs independently, so when the WBR is disturbed by terrain changes, its balance can easily fail.

One Leg on Slope Movement Scenario
The WBR moved on a small slope of approximately 12 • on one side and 8 • on the other side, with the left leg on the small slope and the right leg on the flat ground. The purpose of the experiment was to test whether the leg strategy controller could keep the robot horizontal when it was disturbed by terrain. The experiment had the robot move forward at approximately the 5th second with the left foot on the ramp but the right foot on the ground and then move backward to its original position at approximately the 7th second. The experimental results of the posture-keeping scenario are shown in Figure 10a,b for the cascade PID control [22] and the IMBC system, respectively. These results show that the proposed IMBC system can adjust the height of the left and right legs in time to avoid the robot falling over as a result of a change in height of the left and right leg positions. However, the cascaded PID controller cannot adjust the height of the left and right legs independently, so when the WBR is disturbed by terrain changes, its balance can easily fail. and road features using LiDAR and CCD images to develop an autonomous navigation framework [47,48] that interacts with humans.