BEng thesis · SUSTech · Oct 2020 – Jun 2021
“Centaur” load-carrying walking robot
A wearable robot with two extra legs, strapped to the wearer's back. The human navigates and the robot carries the load. My thesis made the robot perceive its wearer's gait and walk in step with it.
- My role
- Gait perception, gait planning & control, simulation, hardware testing
- Lab
- Prof. Chenglong Fu, Dept. of Mechanical & Energy Engineering, SUSTech
- Tools
- MATLAB, Simulink, IMU sensor fusion, inverse kinematics
- Outcome
- Stable 10-minute walking trials on the physical prototype
Why a centaur?
Soldiers, rescue workers and hikers carry heavy loads where no vehicle can go. Exoskeletons help, but they are strapped to the legs, so they interfere with natural motion and can throw the wearer off balance. Quadruped robots carry loads well, but they are expensive and have short battery life. The Centaur takes a third route: an independent pair of robotic legs coupled to the wearer's back. Human intelligence steers, and robotic legs take the weight.
The platform


- Legs
- 2 × 2 DoF (hip pitch + knee), parallelogram linkage, carbon fibre
- Actuators
- 4 × Motorevo GA80-35: 35:1 reduction, 42 N·m continuous torque
- Human sensing
- 2 × XSENS MTi-630 IMUs worn on the feet
- Interaction force
- 6-axis force/torque sensor in the back coupling
- Mass
- ≈ 15 kg total
Ankle and extra hip joints were deliberately left out. A human-led robot needs little shock absorption, and two joints per leg keep control and actuation tractable. Both motors sit coaxially at the hip to keep leg inertia low.
Sensing the wearer's gait
To walk with someone, the robot has to know where their feet are in the gait cycle, in real time, for any wearer. I compared three families of methods using the foot-mounted IMUs:
- Learning-based foot-trajectory prediction. Accurate, but it needs a large dataset and has to be fitted to each person. I ruled it out for this platform, and that data problem is what I now work on in my MSc research.
- Zero-velocity-update (ZUPT) foot tracking. Double-integrates IMU acceleration to get foot position, and resets the drift every time the foot is detected as stationary. I implemented it in MATLAB and validated it against recorded walking.
- Phase-angle gait estimation. Uses the thigh's pitch angle as a monotonic phase variable, giving a continuous 0–2π gait phase with no finite-state machine. It is simple, real-time and adapts quickly to different people, so it became the method used on the robot.
I also proposed a combined LIPM + ZUPT model. A linear inverted pendulum predicts the next foothold, ZUPT tracks the actual foot, and comparing the two gives the gait phase and corrects the prediction every step, so no error accumulates. It can also predict the next N footholds, which future gait planning could use directly.
Walking in step
The robot's own foot trajectories are planned with the same linear inverted pendulum model, transformed into the robot frame and converted to hip and knee set-points by inverse kinematics. The wearer's gait phase then schedules those set-points. The legs are position-controlled either in phase with the human or at a fixed phase offset, which gives both a synchronous and a diagonal gait.
IMU ×2 on feet
6-axis F/T in back coupling
phase-angle gait phase
direction & coupling-force estimate
LIPM foot trajectory → IK
phase-scheduled position controlhip + knee, both legs

Results
- ZUPT tracking reconstructed periodic foot trajectories from IMU data without accumulating drift.
- The control strategy ran stably in simulation over full multi-step walking sequences.
- On the ≈ 15 kg prototype, the robot followed its wearer in both synchronous and diagonal gaits during 10-minute indoor walking trials, and the wearer reported that walking felt easier.
The limits were flat ground only and no terrain perception. My thesis proposed vision and SLAM as next steps.
What happened next
The lab kept developing the concept. In 2026 it published a new wearable Centaur robot in the International Journal of Robotics Research. With a 20 kg load, it cut the wearer's net metabolic cost by 35% and plantar pressure by 52% (Tu et al., IJRR 2026). I wasn't involved in that later work, but it's good to see the idea mature.
What I took from the project was hands-on experience with human-in-the-loop control, and an early lesson in choosing a model-based method when there isn't enough data for a learned one. That lesson later became my research question.