From SoftMC-Wiki
Jump to: navigation, search
Language: English  • 中文(简体)‎

This property puts the axis into following mode.

When the drive is in disable state, the position command (PCMD) is continually set equal to the position feedback. This state of an axis is called Following mode.
When the drive is re-enabled, the PCMD sent will have the value of the last sample (when it was in following mode), so no jumps will occur.
In situations which the drive takes control on the motion of the motor (such as in drive-controlled homing), the axis must be put explicitly into Following mode. Otherwise, the softMC reports a position following error.

There are various types of Following modes:

  • Hard-Following (PCMD = PFB) - Automatically entered by the system when drive is disabled, Fmode = 0.
  • User-Following (PCMD = PCMD0 ) - Freeze the PCMD value so it's won't be changed, FMODE = 1.
  • Soft-Following (PCMD = PFB) - Same as Hard-Follwing, Fmode=2.
  • User-Following-BIT3 (PCMD = PCMD0 ) - Freezing the PCMD value so it's won't be changed with drive's PFB exit, Fmode=−3.

For BIT3 see: axis.DRIVESTATUS

To get the user given value of following mode property use <axis>.UserFollowigMode property
Be careful when setting Following mode to 2, as it closes a feedback loop around the position variable of the drive. It can lead to instability and motor run away!
Not all modes are suppoted by EtherCAT and CANopen. Please refer to "Limitations"
Disabling drive automatically activates Hard-Following mode from whatever mode the axis was previously in!

FollowingMode Flow


In any scenario - by sending "?Fmode" command, you can get Two values: 0 or 1. In case you want to know which FollowingMode the user sets - use axis.UserFollowingMode command.

Short form



<axis>.FollowingMode = <value>


  • fmode = 0, 1 – All versions
  • fmode = 2 – Since Version 4.4.2
  • fmode = -3 – Since From 4.9.0




  • 0 – (Default) When axis is enabled and the PositionError is monitored
  • 1 – When axis is disabled or can be set by the user. It freezes the PositionCommand. PositionCommand will update on the end, when user enters Fmode=0, by reading the SDO_0x208e from the drive.
  • 2 – Soft-Following mode, keeps PositionCommand equal to PositionFeedback.
  • -3 – User-Following by (PCMD = PCMD0 )- drive status'-BIT3 control using AT cyclic telegram PFB for new PCMD on exit.




Configuration, Task or Terminal


  • To set the value within a task, the axis must be attached to that task (using the ATTACH command).
  • EtherCAT and CANopen: only modes 0 and 2 are supported


A1.FollowingMode = ON

See Also