Control System Design and Gait Compensating Algorithms for an Embodied Humanoid Robot

1. Introduction

The study of humanoid robotics stands at the forefront of modern robotics research, and within this domain, the development of minitype humanoid robots has emerged as one of the most compelling topics in contemporary technology. The inherent advantages of bipedal locomotion, including superior terrain adaptability, obstacle-crossing capabilities, and energy efficiency, make the embodied robot a unique platform for advancing research in biomechanics, artificial intelligence, and control engineering. As an embodied robot, the bipedal humanoid integrates mechanical structures, actuation systems, sensory feedback, and cognition into a unified physical entity that interacts with its environment in real time. This embodiment is particularly critical for walking stability, as the robot’s ability to sense and react to ground conditions directly affects its performance.

My research focuses on the design of a control system for a minitype humanoid robot and the investigation of gait compensation algorithms. The control technology constitutes an essential component of humanoid robot research, determining the overall performance and stability of the machine. Traditionally, minitype humanoid robots have employed micro servo motors as actuators, centralized control architectures, and off-line gait planning methods. However, this approach severely limits the robot’s adaptability to uncertain external environments. To address these challenges, I have designed a distributed control system that builds upon the foundations of centralized control while exploring more flexible and responsive architectures.

The historical evolution of humanoid robotics reveals a clear trajectory toward miniaturization, simplification, and enhanced accessibility. International research efforts have produced remarkable platforms such as the ASIMO series by Honda, the QRIO and SDR series by Sony, and various hobbyist-oriented kits like the KHR series by Kondo. These systems demonstrate the diverse approaches to control system design, ranging from centralized architectures in small platforms to distributed and field-bus-based systems in larger humanoids. In China, institutions including Harbin Institute of Technology and the National University of Defense Technology have made significant contributions to bipedal walking research. My work builds upon these foundations, aiming to bridge the gap between high-performance control strategies and the practical constraints of small-scale embodied robots.

This dissertation addresses four primary objectives. First, I present a comprehensive control system design that employs a hierarchical distributed architecture. Second, I develop a hybrid gait generation scheme that combines off-line planning with real-time ZMP (Zero Moment Point) error adjustment. Third, I derive and implement a key joint compensation algorithm based on ZMP error analysis, which identifies the most influential joints for stability maintenance. Finally, I design and implement the hardware and software platforms that realize the proposed control strategies, culminating in experimental validation.

Table 1: Comparison of typical control architectures for humanoid robots
Architecture Advantages Disadvantages Typical Example
Centralized control Low hardware cost; easy information fusion Poor real-time performance; signal interference KHR-1
Distributed control Information centralization; control decentralization Limited openness; risk remains centralized WABIAN-RV
Field-bus control (CAN) Good openness; high speed; simple wiring Requires protocol design THBIP-I

2. Overall Control System Design

2.1 Control Object Description

The control object of this research is a newly developed minitype humanoid robot within our research group. The robot achieves various motions through the rotation of joint axes, and the essence of robot motion control lies in the precise management of these joints. Each axis provides one degree of freedom (DoF), enabling rotation in a specific direction. The embodied robot possesses a total of 17 degrees of freedom, strategically distributed across the lower limbs, upper limbs, and head to facilitate natural and stable locomotion.

The lower extremities are equipped with 10 DoF, with each leg comprising one hip joint, one thigh joint, one knee joint, and two ankle joints (one for forward flexion and one for lateral flexion). This configuration provides the necessary flexibility for bipedal walking. The arms contribute 6 DoF, with each arm featuring a shoulder joint with two axes (forward and lateral) and one elbow joint. The head accounts for the remaining degree of freedom, enabling basic visual orientation. This mechanical architecture is detailed in the following table.

Table 2: Specifications of the embodied robot mechanical system
Parameter Value
Total height 410 mm
Total weight (body) 2.2 kg
Control system weight 0.3 kg
Average joint range 60°
Degrees of freedom 17

2.2 Design Requirements and Control Structure

The humanoid robot constitutes a complex multi-input multi-output system with strong coupling and nonlinear dynamic characteristics. To achieve stable bipedal locomotion, the control system must satisfy several critical requirements. High integration density is necessary to minimize volume and wiring complexity. The communication system should employ minimal wiring while ensuring high data transmission accuracy and reliability, with adequate openness for future expansion. Real-time control algorithms must fulfill the fundamental technical requirements for upright walking. Additionally, the system requires robust anti-interference capabilities to withstand electromagnetic noise generated by servo motor operation.

After careful analysis of existing control architectures, I selected a hierarchical field-bus control system structure, which embodies the principles of distributed intelligence. The proposed system comprises two hierarchical levels: an organizational layer and an executive layer. The organizational layer, analogous to the human brain’s decision-making center, handles gait planning, trajectory generation, and high-level adjustment. The executive layer directly interfaces with the servo motors, executing specific joint commands. Communication between these layers is facilitated through a CAN (Controller Area Network) bus, which provides high-speed, reliable, and open communication capabilities.

The organizational layer interprets input commands and system feedback, decomposes tasks into subtasks, and performs real-time gait adjustment. The executive layer receives commands from the organizational layer and translates them into precise motor control signals. This hierarchical decomposition mirrors the human neuro-musculoskeletal system, where conscious decisions are made at high levels while reflexive actions are handled locally, enabling faster response times for critical stability maintenance.

2.3 Joint Trajectory Generation

The generation of joint trajectories is a fundamental challenge in humanoid walking. Three distinctive approaches exist: pure off-line planning, off-line planning with on-line adjustment, and fully on-line real-time planning. Pure off-line planning, while simple and reliable, offers minimal adaptability to environmental variations. Fully on-line planning provides maximum flexibility but imposes prohibitive computational burdens for complex kinematic and dynamic equation solving. My research adopts the intermediate approach, combining off-line planning with real-time adjustment based on sensory feedback, particularly utilizing the ZMP criterion.

The ZMP-based approach serves as the theoretical foundation for both off-line planning and on-line adjustment. The methodology involves first designing an ideal ZMP trajectory that ensures dynamic stability, then determining the corresponding joint motions that realize this trajectory. This forward off-line planning process generates reference data for all degrees of freedom. However, due to modeling inaccuracies and environmental disturbances, the actual ZMP trajectory deviates from the ideal. The on-line adjustment mechanism utilizes force sensors to measure the actual ZMP position in real time, compares it with the desired value, computes the error, and activates compensation algorithms to minimize this discrepancy.

2.4 Communication Protocol Selection

The CAN bus, originally developed by Bosch, was selected as the communication backbone. CAN offers several advantages for this application. Its communication rate reaches up to 1 Mbps at 40 meters, providing sufficient bandwidth for real-time control data. The protocol’s CSMA/CD with arbitration mechanism ensures deterministic message transmission, while its short-frame structure minimizes transmission errors. The physical layer employs differential signaling over twisted-pair cables, offering excellent noise immunity. CAN’s multi-master architecture allows flexible network topologies and supports up to 110 nodes, providing scalability for future sensor additions such as vision or audio systems.

2.5 Actuator Selection and Control

After comprehensive performance comparison, the TowerPro MG995 servo motor was selected as the actuator for the articulated joints of this embodied robot. This servo offers an optimal balance of torque, size, weight, and cost for the minitype humanoid application. Its metal gear construction ensures durability under repeated loading. The following table summarizes its key specifications.

Table 3: Specifications of the selected servo motor
Parameter Value
Rated voltage 4.8 V ~ 7.2 V
Maximum torque 13.0 kg/cm
No-load current 300 mA
Maximum speed 0.17 s/60°
Maximum continuous current 600 mA
Weight 55.2 g
Dimensions 40.6 × 19.8 × 37.8 mm

The servo motor’s position control relies on a pulse-width modulation (PWM) signal with a period of 20 ms. The pulse width varies from 0.5 ms to 2.5 ms, corresponding to the output shaft position from 0° to 180° in a linear relationship. Since individual servos exhibit manufacturing variations, I designed a calibration circuit using an NE555 timer chip to generate precise PWM signals, enabling systematic measurement of the pulse-width-to-angle relationship for each motor.

One significant challenge in servo control is the inability to directly regulate rotation speed under varying loads. To achieve smooth velocity transitions, I implemented a time-equalization and position-interpolation approach in software. This technique divides the movement between two gait states into equally spaced time intervals, with intermediate position values calculated and commanded at each interval. The resulting velocity profile approximates smooth motion, enhancing the embodied robot’s coordination and walking stability. The interpolation equation is:

$$N = \frac{\Delta t}{T} \tag{1}$$

where \(N\) represents the number of interpolation points, \(\Delta t\) is the time interval between gait states, and \(T\) is the interpolation period (approximately 20 ms). The incremental pulse width change for velocity control is given by:

$$\Delta P = \frac{180 \cdot T \cdot \omega}{\pi \cdot \Delta \alpha} \cdot \Delta t \tag{2}$$

where \(\Delta P\) is the pulse width increment, \(T\) is the control signal period, \(\Delta t\) is the pulse width variation range, \(\Delta \alpha\) is the angle variation range, and \(\omega\) is the desired angular velocity.

2.6 Force Sensing and Calibration

For the real-time ZMP detection required by the gait compensation algorithm, I designed a ground reaction force measurement system using multiple force sensors. After considering various sensing technologies, strain-gauge-based pressure sensors were selected for their high sensitivity, wide measurement range, and stable output characteristics. The LK-series sensors from Hangzhou Tianju were chosen with a rated capacity of 10 kg, significantly exceeding the robot’s self-weight of 2.2 kg to provide an adequate safety margin.

Sensor calibration was performed individually due to manufacturing variations. A standard procedure using known weights revealed a linear relationship between applied force and output voltage, with nonlinearity consistently under 0.5%. The calibration curve confirms the excellent linearity of the selected sensors.

Regarding sensor placement on each foot, I evaluated two configurations: triangular and double-symmetric arrangements. The triangular arrangement uses three sensors and provides a smaller stability region due to point contact. The double-symmetric arrangement, while requiring slightly more complex calculations, doubles the stability region area. Therefore, I selected the double-symmetric configuration to enhance the margin of stability during walking.

3. Zero Moment Point Error Compensation Using Key Joints

3.1 The ZMP Stability Criterion

In the dynamic walking of humanoid robots, the ZMP (Zero Moment Point) position critically influences walking stability. The ZMP represents a point on the ground where the resultant moment of ground reaction forces has zero horizontal components. This concept, introduced by Vukobratovic in 1969, provides a necessary and sufficient condition for dynamic walking stability when the ZMP remains within the convex hull of all ground contact points. The stability region, defined by the support polygon, determines the allowable ZMP trajectory. When the ZMP approaches the center of this region, the robot exhibits enhanced stability margin.

Static walking can be considered a special case of dynamic walking where inertial forces vanish, reducing the ZMP criterion to the center of gravity projection condition. However, for dynamic walking, the ZMP must account for both gravitational and inertial effects. The mathematical formulation of the ZMP coordinates is:

$$X_{\text{ZMP}} = \frac{\Sigma_{i=1}^{n} m_i (z_i + g) x_i – \Sigma_{i=1}^{n} m_i x_i” z_i}{\Sigma_{i=1}^{n} m_i (z_i” + g)} \tag{3}$$

$$Y_{\text{ZMP}} = \frac{\Sigma_{i=1}^{n} m_i (z_i” + g) y_i – \Sigma_{i=1}^{n} m_i y_i” z_i}{\Sigma_{i=1}^{n} m_i (z_i” + g)} \tag{4}$$

where \(m_i\) is the mass of link \(i\), \(g\) is gravitational acceleration, \((x_i, y_i, z_i)\) are the mass center coordinates of link \(i\), and the double primes indicate second time derivatives.

3.2 Analysis of ZMP Error Sources

Direct application of off-line planned gait data to the embodied robot typically yields unstable walking performance because significant differences exist between actual and expected ZMP positions. The sources of these errors are multifaceted:

Manufacturing and assembly tolerances in mechanical components introduce geometric discrepancies between theoretical models and the physical prototype. The actual dynamic parameters, such as mass distribution and inertia, differ from modeling assumptions. Joint friction exhibits time-varying and load-dependent characteristics, causing position tracking errors in servo actuators. Structural elastic deformations under dynamic loads further contribute to ZMP displacement. Additionally, ground irregularities and the impact forces from foot landings create model uncertainties. The cumulative effect of these error sources can generate ZMP deviations that exceed the stability region boundaries, potentially causing the robot to lose balance.

3.3 Deriving the Effect of Joints on ZMP

To address these errors through joint motion compensation, I analyzed the dynamic relationship between each joint rotation and the ZMP position. The lower limb mechanism is modeled as a multi-link system, with separate planar models for forward and lateral motion. The forward model comprises seven links (two hips, two thighs, two shanks, and torso), forming a seven-bar linkage with six degrees of freedom. The lateral model consists of five links with two DoF.

The dynamic equations of the system are derived from Lagrangian mechanics. For each link \(i\), the mass center position is expressed in terms of the joint angles \(q_j\), allowing the computation of the ZMP coordinates as functions of the joint variables. The partial derivative of ZMP coordinates with respect to each joint angle reveals that joint’s influence on stability:

$$\frac{\partial X_{\text{ZMP}}}{\partial q_i} = \frac{\frac{\partial A}{\partial q_i} \cdot B – A \cdot \frac{\partial B}{\partial q_i}}{B^2} \tag{5}$$

where \(A\) represents the numerator of the ZMP equation and \(B\) represents the denominator. Through this analysis, the forward ankle joint demonstrates an influence factor exceeding 0.5, significantly higher than the knee and hip joints. Similarly, the lateral ankle joint exerts the dominant influence on the lateral ZMP coordinate.

Experimental verification was conducted by rotating each joint by a fixed angle and measuring the resulting ZMP displacement using force sensors. The experiments confirm that the forward ankle joint generates the largest ZMP displacement in the X-direction, while the lateral ankle joint dominates the Y-direction. Table 4 summarizes the influence degrees of joints on the ZMP coordinates.

Table 4: Joint influence factors on ZMP position
Joint ZMP-X influence ZMP-Y influence
Forward ankle 1.0 0.2
Knee 0.4 0.1
Forward hip 0.2 0.1
Lateral ankle 0.1 1.0
Lateral hip 0.05 0.3

3.4 Key Joint Selection and Compensation Strategy

Based on the preceding dynamic analysis and experimental verification, I formulated the key joint compensation strategy. The forward ankle joint is selected as the key joint for compensating ZMP error in the X-direction, while the lateral ankle joint serves as the key joint for Y-direction error compensation. This selection is justified by the dominant influence these joints exert on their respective ZMP coordinates, enabling effective error correction with minimal control complexity.

The compensation procedure operates as follows. At each control cycle, the actual ZMP position is calculated from force sensor measurements. The error vector is computed by comparing the actual ZMP with the desired ZMP trajectory. For the X-axis error, the forward ankle angle is adjusted proportionally to the ZMP error magnitude. Similarly, for the Y-axis error, the lateral ankle angle is adjusted. The proportionality constant is determined from the experimentally obtained relationship between ankle joint rotation and ZMP displacement, with iterative refinement during real-time operation.

3.5 Real-time ZMP Detection System

The accurate measurement of the actual ZMP position is fundamental to the compensation algorithm. My approach leverages the theorem that the ground reaction force resultant point coincides with the ZMP. The detection system employs the force sensor arrangement discussed previously, with sensor outputs processed to determine the ZMP coordinates.

To facilitate the calculation of ground reaction forces for each foot, I established local ZMP coordinate systems for the left and right feet. During single-leg support, the applicable foot’s coordinate system is used directly, and the ground reaction forces are calculated as follows:

$$F = f_1 + f_2 + f_3 + f_4 \tag{6}$$

$$M_x = (f_3 + f_4 – f_1 – f_2) \times 60\,\text{mm} \tag{7}$$

$$M_y = (f_1 + f_3 – f_2 – f_4) \times 40\,\text{mm} \tag{8}$$

$$r = \sqrt{M_x^2 + M_y^2} / F \tag{9}$$

$$\theta = \arctan\left(\frac{M_y}{M_x}\right) \tag{10}$$

where \(f_1, f_2, f_3, f_4\) are the forces measured by the four sensors, \(F\) is the resultant ground reaction force, \(M_x\) and \(M_y\) are the moments about the origin, and \((r, \theta)\) define the location of the ground reaction force. During double-leg support, both feet’s sensor groups are active. First, the resultant force position on each foot is computed in its local frame. Then, the right foot’s force coordinate is transformed into the left foot’s coordinate system, and the combined resultant force position is determined.

4. Hardware and Software Implementation

4.1 Hardware Architecture

The control system hardware consists of an organizational layer controller and four executive layer controllers. The executive controllers manage the left leg (5 DoF), right leg (5 DoF), left arm (3 DoF), and right arm plus head (4 DoF) respectively. All controllers communicate via the CAN bus. This distributed architecture localizes control functions while maintaining global coordination through the organizational layer.

The hardware modules can be categorized into common modules and layer-specific modules. Common modules include power supply, serial communication (SCI), CAN transceiver, reset circuitry, and JTAG emulation interface. The organizational layer additionally incorporates an analog-to-digital conversion (ADC) module for force sensor signal acquisition. The executive layers feature multiple PWM generation modules for servo control.

Table 5: Hardware module distribution across hierarchical layers
Module Organizational Layer Executive Layer
Power supply
CAN transceiver
Serial communication
JTAG interface
ADC (8 channels)
PWM generation ✓ (6 channels each)
External SRAM

4.2 Key Hardware Subsystems

The power supply module provides +12 V to the sensors and uses the TPS7333 voltage regulator to convert +5 V to +3.3 V for the DSP (TMS320LF2407A). The TPS7333 includes a reset function that monitors output voltage and initiates system reset under undervoltage conditions, ensuring stable processor operation. Each integrated circuit is accompanied by appropriate bypass capacitors for noise suppression.

The clock subsystem employs a 12 MHz crystal oscillator, which is internally multiplied to 24 MHz via the DSP’s phase-locked loop circuit. The PLL configuration utilizes external filter circuitry to minimize signal jitter and electromagnetic interference. The DSP’s internal reset circuit enables manual reset through a simple push-button interface, simplifying debugging procedures.

The ADC module leverages the TMS320LF2407A’s internal 10-bit ADC with 16 channels and a conversion speed of 500 ns. The eight force sensor signals are connected to channels ADCIN00 through ADCIN07. The module operates in cascade mode with automatic sequencing, and the conversion results are stored in result registers for subsequent processing. The ADC’s reference voltage is externally provided and can be adjusted based on the sensor output range.

For CAN communication, I employed the DSP’s embedded CAN controller in conjunction with an 82C250 transceiver. The transceiver provides the physical layer interface, converting differential signals between the CAN bus and the controller’s digital signals. Proper termination (120 Ω resistor) is implemented at appropriate positions on the bus. The speed is configured for 500 kbps, sufficient for real-time gait control data transmission.

The servo control module leverages the DSP’s event managers, which include three full-compare units each, capable of generating three independent PWM output pairs. I utilized PWM1/3/5/7/9/11 to control up to six servos per executive controller. The PWM period is set to 20 ms via timer period registers, and duty cycles are controlled through compare registers. Since the DSP output levels are 3.3 V, optocouplers (PC817) are used to level-shift to the servo’s required voltage levels while providing electrical isolation. This design decouples the motor’s electromagnetic interference from the digital control circuitry.

The signal conditioning circuit for the force sensors is critical for accurate ZMP measurement. The strain-gauge sensors produce low-level differential signals susceptible to common-mode interference. I selected the AD620 instrumentation amplifier for the first stage, which offers excellent common-mode rejection and accuracy. The gain is set by an external resistor according to:

$$G = \frac{50.5\,k\Omega}{R} + 1 \tag{11}$$

The amplified signal passes through a Sallen-Key second-order low-pass filter using a CA3140 op-amp, designed to attenuate noise above 25 Hz while preserving the force signal frequencies below 15 Hz, which contain 98% of the energy. Simulation and practical testing confirmed the filter’s effectiveness, significantly improving signal quality.

4.3 Software Architecture

The software system is implemented in C language and compiled using TI’s Code Composer Studio. The architecture comprises initialization routines, the main control loop, serial communication interrupt service routines, ADC conversion routines, CAN communication routines, and multi-channel servo control routines. The initialization module configures the ADC, PWM, timer, CAN, and watchdog timer modules at startup. The system main frequency is set, I/O pins are configured via multiplex control registers, and interrupt priorities are assigned.

The motor control software translates each joint angle command into the corresponding PWM signal. The servo’s 0°–180° travel is mapped to pulse widths of 0.5–2.5 ms with a 20 ms period. To achieve smooth motion, the interpolation algorithm divides the transition between consecutive gait states into intermediate positions, updating the PWM duty cycle at each interpolation period. The register configuration sequence for comparison unit operation is presented in the following table.

Table 6: Register setup sequence for PWM generation
For EVA module For EVB module
Set Timer 1 period register (T1PR) Set Timer 3 period register (T3PR)
Set Compare Action Control (ACTRA) Set Compare Action Control (ACTRB)
Initialize Compare Registers (CMPRx) Initialize Compare Registers (CMPRx)
Set Compare Control (COMCONA) Set Compare Control (COMCONB)
Set Timer Control (T1CON) Set Timer Control (T3CON)

The data acquisition module manages the ADC to sample force sensor signals. Timer 4 triggers ADC sampling at a predetermined control period. Upon conversion completion, the interrupt service routine reads the results and applies calibration coefficients to convert raw data into force values. These force values are then used by the ZMP calculation algorithm embedded in the main control program.

The CAN communication protocol defines an application layer specification over the standard CAN data link layer. Each executive node is assigned a unique identifier. The organizational layer sends joint position commands and receives status information from each node in sequence. At the beginning of each control cycle, the organizational layer transmits a synchronization broadcast to all executive nodes, ensuring simultaneous execution of motor commands and maintaining coordinated multi-joint movement.

The gait adjustment algorithm represents the core intelligence of the system. During normal walking, the main program executes the following cycle:

(1) Retrieve the planned gait parameters from memory and transmit joint trajectories to the executive layer.

(2) Sample all 8 force sensor channels and compute the actual ZMP position.

(3) Compare the actual ZMP with the desired ZMP trajectory from off-line planning.

(4) If significant error exceeds a threshold, invoke the key joint compensation algorithm to adjust the ankle joint angles accordingly.

(5) Update the motor commands and proceed to the next control cycle.

This feedback loop, operating at a 20 ms control period, provides the embodied robot with adaptive capabilities to handle small perturbations and modeling uncertainties, significantly enhancing walking stability.

5. System Experiments and Result Analysis

5.1 Experimental Platform

I constructed a comprehensive test platform for the minitype humanoid robot, integrating all designed hardware modules. Each circuit board was individually debugged to verify its basic functionality before full system integration. The assembled system was then used to conduct coordinated experiments involving off-line gait execution and real-time ZMP feedback compensation.

5.2 Sensor Signal Filtering Experiments

The accuracy of ZMP position estimation directly depends on the quality of force sensor measurements. Initial testing revealed that raw sensor outputs contained significant noise and interference, primarily from electromagnetic pickup and mechanical vibrations. To address this issue, I applied the second-order low-pass filter circuit to the sensor output signals. Immediately after implementing the filtering stage, the measured signals became substantially cleaner. Experimental results demonstrated a marked reduction in noise amplitude and improved signal-to-noise ratio. The filtered output exhibited the desired smooth waveform characteristic, enabling more reliable ZMP calculations.

5.3 Forward Off-line Planning Experiments

Using the kinematically planned joint trajectories, I conducted forward off-line walking experiments with the embodied robot. The planned joint angle trajectories were uploaded to the executive controllers, and the robot executed a basic straight-line walking sequence. The robot was able to achieve forward locomotion at a speed of approximately one step per 2 seconds, with each step length equal to half of the foot length. However, visual observation and force sensor data revealed notable discrepancies between the theoretical and actual ZMP trajectories. The actual ZMP positions deviated from the desired path, particularly during the single-leg support phase, highlighting the need for real-time error compensation.

5.4 ZMP Error Compensation Experiments

The ZMP compensation experiment evaluated the effectiveness of the key joint compensation algorithm. Initially, force sensors measured the actual ZMP trajectory during walking, which was plotted against the desired trajectory. The results showed substantive deviations in both X and Y directions. These ZMP errors were primarily attributed to unmodeled dynamics and assembly inaccuracies. I uploaded the compensation algorithm to the organizational controller, enabling real-time adjustment of the key joints based on force feedback.

After applying the compensation, the actual ZMP trajectory closely converged toward the desired trajectory. The residual errors significantly diminished, resulting in smoother walking with visibly improved stability. The quantitative comparison of ZMP errors before and after compensation is summarized in the following table.

Table 7: ZMP error reduction after compensation
Phase X-error (mm) Y-error (mm)
Before compensation ±18.5 ±12.3
After compensation ±5.2 ±3.8
Reduction 71.9% 69.1%

These experiments validate the key joint compensation strategy for gait improvement of the embodied robot. The real-time adjustment significantly enhanced the robot’s adaptability to external disturbances and modeling uncertainties, demonstrating the effectiveness of the hierarchical distributed control architecture and the feasibility of ZMP-based feedback for stability maintenance.

6. Conclusion

In this dissertation, I designed and implemented a control system for a minitype humanoid robot, along with a gait compensation algorithm based on ZMP error analysis. The main achievements are summarized as follows:

(1) A hierarchical distributed control architecture was designed and successfully implemented. The system utilizes a two-layer structure with an organizational layer for gait planning and supervision and an executive layer for direct motor control. CAN bus communication ensures reliable, real-time data exchange between layers. The modular hardware design and comprehensive software implementation provide an effective platform for the embodied robot’s locomotion control.

(2) A hybrid gait generation approach was adopted, combining off-line trajectory planning with real-time ZMP adjustment. This methodology leverages the computational efficiency of off-line planning while maintaining the adaptability required for unknown environments, significantly improving the robot’s ability to cope with perturbations.

(3) A ZMP error compensation algorithm based on key joint selection was proposed. Through dynamic analysis and experimental verification, I identified the forward ankle joint and lateral ankle joint as the most influential joints for ZMP position in the X and Y directions, respectively. By utilizing these key joints for error compensation, the control algorithm achieved significant ZMP tracking improvement, reducing errors by approximately 70% compared to uncompensated walking.

(4) The complete hardware and software platforms were developed. The hardware includes organizational and executive layer controllers with power management, ADC acquisition, CAN transceiver, servo PWM generation, and signal conditioning circuits. The software implements initialization, data acquisition, communication protocols, and the ZMP error feedback algorithm.

For future work, several promising directions can be explored. The CAN bus architecture provides expandability for integrating additional sensors such as vision systems, inertial measurement units, or auditory modules, enriching the embodied robot’s environmental perception capabilities. Advanced control algorithms, including genetic algorithms and neural networks, could further optimize gait patterns and improve adaptation to diverse terrains. Additionally, incorporating machine learning techniques for autonomous gait adjustment could substantially enhance the robot’s intelligence and autonomy, moving toward a more versatile embodied robot platform.

Scroll to Top