Skip to content

v3.2.0

Choose a tag to compare

@github-actions github-actions released this 03 Oct 00:35
· 25 commits to main since this release
7890dbc

TSR chains plan on the native backend (#184). sscbirrt's TSRs now come from
sstsr's own C++ core (sstsr 3.3), which carries chains, so a chain goal,
start or path constraint no longer falls back to Python. The door demo plans
its chain about 15-20 times faster than on Python.

Migrating from 3.1.0: nothing to change in Python. Install pulls
sstsr>=3.3. C++ consumers of the installed package need sstsr's CMake
package findable (tsr.get_cmake_dir(), from a built wheel; an editable
install has none).

Changed

  • sstsr>=3.3,<4 is required, to build and to run. The native TSR is
    sstsr's C++, and sscbirrt's own C++ port of the TSR rules is removed.
  • The native backend lowers TSRChain regions. Exact paths match the Python
    bit-for-bit. Elsewhere a chain's distance is sstsr's bounded inverse, an
    upper bound in both backends, held to the same properties rather than to
    the same numbers. A chain whose later link has a non-identity T0_w is
    refused by sstsr 3.3 itself (personalrobotics/sstsr#169).
  • The door demo plans only its chain and drops the single-TSR comparison.
    Its README GIF is re-rendered from the native plan.
  • The reference artifact gains ur5e_mujoco_tsr_chain_crank: a UR5e turning
    a crank, with start, goal and path constraint one chain. It runs natively
    under auto.

Removed

  • C++ consumers: the RPY helpers in sscbirrt/transform.hpp
    (rot_to_rpy, xyzrpy_to_trans and their kin), which only the TSR port used,
    and their sscbirrt._native bindings. sscbirrt/sscbirrt.hpp no longer
    includes the TSR headers; include sscbirrt/tsr/tsr_set.hpp, which needs
    sstsr_cpp (found by find_package(sscbirrt)).