
Productive Robotics
Real-Time Motion Control
The low-level motion stack on the welding robot line — a deterministic 1 kHz EtherCAT control loop, time-optimal trajectory generation, encoder calibration, and the live tooling to tune and diagnose it. Every block below is an interactive simulation of a real subsystem I built.
Built the real-time motion core — a hard 1 kHz EtherCAT control loop with a thread-safe C++ dispatcher and no memory allocation in the loop, converting splined joint-space trajectories into per-cycle position and velocity commands.
Made motion smooth and predictable: a quintic→cubic→linear trajectory continuity cascade with bounded jerk, nonius (vernier) absolute-encoder calibration, and a real-time motor dashboard for live telemetry, PID tuning, and fault diagnostics across every joint.
Hardened the stack for the field — a hardware-in-the-loop simulator layer so the whole system runs without physical motors, multi-axis gantry coordination, and cross-layer fault debugging (one bug traced from a browser memory leak down to a physical robot fault during a live operation).