Skip to content

Releases: stefanbesler/struckig

v0.12.2

16 May 13:02
Compare
Choose a tag to compare

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

14 May 07:04
Compare
Choose a tag to compare

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

03 Dec 21:12
Compare
Choose a tag to compare

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

08 Jun 20:53
Compare
Choose a tag to compare

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

12 Mar 19:40
Compare
Choose a tag to compare

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

15 Oct 20:08
Compare
Choose a tag to compare

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

22 Sep 06:41
Compare
Choose a tag to compare

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

04 Jul 08:37
Compare
Choose a tag to compare

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

05 Jun 09:00
Compare
Choose a tag to compare

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