Repository navigation
Conversation
TOPPRA times paths: a cartesian move or a blended chain follows its own, and a move given a duration is a path stretched to a clock. A plain move_j reached it only because TOPPRA was the startup profile, so every joint move ran TOPPRA's jerk-free bang-bang acceleration. RUCKIG is now the startup profile, as in par6, where that acceleration step became a torque step through the inertia feedforward and rang J1 into chatter. A timed move under RUCKIG is TOPPRA-timed, so Ruckig's minimum-duration input is no longer used. An explicitly selected profile plans as before. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_016uVshJDKTz7nCqrMGVxVJU
TOPPRA's path acceleration is bang-bang. A move it times (any cartesian move or blended chain under RUCKIG or TOPPRA, and a timed move under RUCKIG) now has its path position averaged over the shortest window that ramps each joint's acceleration steps within its jerk limit: only the timing along the path changes, never the path, as in par6, where those steps reached the drives as torque steps through the inertia feedforward. Averaged, a bend TOPPRA slowed for would be crossed at the window's mean speed, so the path speed is capped at the lowest of the maximum-velocity curve within half a window of each point; and since the averaged path acceleration is spent where the joints answer it differently, up to three more solves lower the acceleration limits where the average still passes them. The segment pass takes any remainder. The jerk limit costs time: a timed wrist turn now needs more than the 2 s its test asked for, and a spline's bend slows to 37 mm/s, not under 40. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_016uVshJDKTz7nCqrMGVxVJU
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
TOPPRA times paths: cartesian moves, blended chains, and moves given a
duration. A plainmove_jonly reached it because TOPPRA was the startup profile, so every joint move ran TOPPRA's jerk-free bang-bang acceleration.ProfileType(Robot.motion_profiles), as in par6.minimum_durationinput is no longer used. An explicitly selected profile plans as before.On par6, which feeds planned acceleration into an inertia torque feedforward, TOPPRA's acceleration step rang J1 into chatter. Under RUCKIG, the same 5° J1 moves on the arm ran at 3.3–4.3 deg/s vibration RMS, against 5.8–13.5 under TOPPRA.
Pairs with Jepson2k/Waldo-Commander#87, whose stored-profile fallback takes the backend's first-listed profile.
🤖 Generated with Claude Code
https://claude.ai/code/session_016uVshJDKTz7nCqrMGVxVJU