This PR replaces the old contact planner that uses MPC iterations as a measure of time while running on the same thread as the MPC. Solver time spikes result in a delay that accumulates over time (See illustration in #73 ). The planner is replaced by a stateless contact planner that can be called from any thread and is based on the absolute controller/system time, making it insusceptible to MPC delays. This mainly fixes #73 .
The PR also includes several improvements for logging and plotting (logging both sim time and controller time).
This PR replaces the old contact planner that uses MPC iterations as a measure of time while running on the same thread as the MPC. Solver time spikes result in a delay that accumulates over time (See illustration in #73 ). The planner is replaced by a stateless contact planner that can be called from any thread and is based on the absolute controller/system time, making it insusceptible to MPC delays. This mainly fixes #73 .
The PR also includes several improvements for logging and plotting (logging both sim time and controller time).