← All projects

Kinematic Model Verification for a Unitree Go1

Every learned controller sits on top of a model of the robot. This is the unglamorous work of confirming that model matches the machine.

10⁻² order of agreement between analytical model and hardware data

Why do this at all

Analytical formulations get written once and trusted forever. But a kinematic model is a claim about a physical object, and claims should be checked — especially when everything downstream, from state estimation to a learned locomotion policy, inherits whatever error it contains.

What I did

Derived a Denavit-Hartenberg parameter kinematic model for the Unitree Go1 quadruped, then verified it against data recorded from the actual hardware rather than against a second simulation. Agreement came out on the order of 10⁻², which was good enough to build on with confidence.

Go1 locomotion runs used to collect the hardware data the model was checked against.

The write-up and the code are both linked above — it’s a small piece of work, but it’s the kind of verification step that quietly prevents a much more confusing debugging session later.

More projects

See all →

Current work

Digital Twins and Edge Autonomy at Arrive AI

An autonomy stack combining RL policies with vision-language-action models, the edge inference that runs it on Jetson hardware, and a digital twin to test it before deployment.