Releases: stefanbesler/struckig
v0.12.2
What's Changed
This release is a significant milestone as Struckig has finally catched-up with the latest version of its C++ counterpart 🥳. All the features supported in the Ruckig Community Edition are now integrated into Struckig, serving as a native PLC library coded in Structured Text. With its independence from external dependencies, this library is compatible with all CODESYS runtimes.
- Support for both infinite and zero acceleration order kinematic jerk limits (added first order calculations)
- In addition to jerk-limited trajectories, Struckig can now also calculate simpler (second or first order) trajectories by setting the jerk limit and acceleration limit to infinite, respecitively. While this type of trajectories are less smooth and may produce wear on mechanical parts, they are much faster and simpler to compute. This feature can be used if targets with poor performance want to use Struckig for online-trajectory generation.
- Fixed several div0 exceptions in velocity interface
Full Changelog: v0.10.0...v0.12.2
v0.10.0
What's Changed
Features
- Support for both infinite and zero kinematic jerk limits
- Improved error messages on failed input validation.
- Expose the current jerk value in the output.
- Performance improvements for the velocity interface.
Full Changelog: v0.9.3...v0.10.0
v0.9.3
What's Changed
General
From now on the binaries of releases are published on Twinpack instead of on GitHub.
However, it is still possible to get the latest version in GitHub Actions.
Features
- feat: added specialization for AtTime for DoF=1
Full Changelog: v0.9.0...v0.9.3
v0.9.0
Changes
- feat: Improvement of the calculation performance by up to 10%.
- feat: Several projects use Struckig with only 1 degree of freedom. Added a new function block (Struckig.Otg1) to simplify the API of this usecase.
v0.8.8
Changes
- feat: Extended phase synchronization for straight-line trajectories to the velocity control interface.
- fix: Fixed trajectory calculations when the current acceleration is on its limit due to an issue with the braking trajectory.
v0.7.1
Changes
- feat: Allows to reset Struckig and therefore force a new trajectory computation
- fix: Improves the stability of the velocity control as well as the discrete duration mode (e.g. pantor/ruckig#116).
- fix: Fixes independent_min_duration in case of a brake trajectory (pantor/ruckig#128).
- fix: Fixes a rare issue where the first update does not calculate a trajectory (pantor/ruckig#115).
v0.6.5
Changes
- Improves the computational performance
- Fixes a numerical instability in velocity control, in particular when calculating trajectories to a zero target state.
v0.6.0-1
Changes
Added convenience methods, which popped up when using the library in real life
- Possibility to set cycletime during runtime. The FB_init parameter is still there, but can be initially set to 0
- ErrorMessage decodes a potential error code into a string
v0.6.0
This is the first release of Struckig with pre-built binaries. Download the compiled-library below and install it in your TwinCAT or Codesys IDE to use the Struckig trajectory-generator, see the User Guide for instructions.
Changes
- feat: Improved input validation. In particular, Struckig is now able to guarantee the kinematic state to be below the constraints throughout the trajectory.
- fix: Trajectories with zero duration now work as expected
- fix: Stability improvements if time synchronization is used