Skip to content

v8.0.0

Latest
Compare
Choose a tag to compare
@anderssandstrom anderssandstrom released this 06 Jul 19:43
· 279 commits to master since this release

ecmc v8.0.0

  • Add support for jerk limited trajectories based on ruckig (https://github.com/pantor/ruckig).
    Trapetzoidal trajectories still supported and default in ecmccfg. Ruckig module is now a dependency.

    Note: ruckig trajectory restrictions: On the fly velocity target changes only allowed in constant velo and not when positioning. On the fly update of position setpoint is supported.

  • Update of trajectory generator to allow "on the fly" update of target position and target velocity (trapezoidal traj.).

  • Ensure that master is not scanning slaves at startup. If scanning then wait until scan is finished (with timeout).

  • Remove commands Cfg.SetOpMode() and GetOpMode(). Obsolete and not used.

  • Add command "Cfg.SetAxisHomePosition()", same as Main.Mx.fHomePosition (try to phase out this old syntax)

  • Add possibility to run motion without motor record.

Control params:

ax<id>.control
ax<id>.command
ax<id>.cmddata
ax<id>.targpos
ax<id>.targvelo

Status params:

ax<id>.status
ax<id>.actpos
ax<id>.setpos
ax<id>.poserr
ax<id>.diagnostic

Examples and more info are available in:
ecmccfg/examples/test/motionWithoutMotorRecord/

  • Brake handling:
    • Engage brake if not enabled (instead of at enable cmd)
    • Start counting open delay when drive enabled goes high (instead of enable cmd).
  • Reset axis enable cmd if ethercat in error state (prevent re-enable when ethercat returns to OK)
  • Add command to set drive timeout for enabled and DS402 state machine: "Cfg.SetAxisDrvStateMachineTimeout(int axis_no, int seconds)"
  • Fix of absolute encoder reading at ioc startup