Motion Planner Config Attributes

These are the motion planner attributes associated with a Motion Control Axis.
Output Cam Execution Targets
Usage
Access
Data Type
Default
Min
Max
Semantics of Values
Required - E
Get/
GSV
1
DINT
0
0
8
# of Targets
Represents the number of Output Cam nodes attached to this axis.
1
This attribute can be set only when the axis instance is created.
The Output Cam Execution Targets attribute is used to specify the number of Output Cam nodes attached to the axis. This attribute can only be set as part of an axis create service and dictates how many Output Cam Nodes are created and associated to that axis. Each Output Cam Execution Target requires approximately 5.4k bytes of data table memory to store persistent data. With four Output Cam Execution Targets per axis, an additional 21.6k bytes of memory is required for each axis.
The ability to configure the number of Output Cam Execution Targets for a specific axis reduces the memory required per axis for users who do not need Output Cam functionality, or only need 1 or 2 Output Cam Execution Targets for a specific axis. Each axis can be configured differently.
Master Input Configuration Bits
Usage
Access
Data Type
Default
Min
Max
Semantics of Values
Required - E PV only
Set/SSV
DWORD
0x01
0:1
1:0
-
-
Bitmap
0 = Master Delay Comp
1 = Master Position Filter
2-31 = Reserved
This attribute controls the master axis input signal feeding the gearing and camming functions of the motion planner, including the Master Position Filter and Master Delay Compensation.
Bit
Name
Description
0
Master Delay Compensation
By default, both the Position Camming and Gearing functions, when applied to a slave axis, perform Master Delay Compensation to compensate for the delay time between reading the master axis command position and applying the associated slave command position to the input of the slave's servo loop. When the master axis is running at a fixed speed, this compensation technique insures that the slave axis command position accurately tracks the actual position of the master axis; in other words, Master Delay Compensation allows for zero tracking error when gearing or camming to the actual position of a master axis.
This feature, while necessary in many applications, doesn't come without a price. The Master Delay Compensation algorithm extrapolates the position of the master axis at the predicted time when the command position will be applied to the slave's servo loop. Since master axis position is measured in discrete feedback counts and is inherently noisy, the extrapolation process amplifies that noise according to the total position update delay. The total position update delay is proportional to the Coarse Update Period of the motion group.
The Master Delay Compensation feature also includes an extrapolation filter to filter the noise introduced by the extrapolation process. The time constant of the filter is fixed at 4x the total position update delay (independent of the Master Position Filter Bandwidth), which again is a function of the Coarse Update Period.
The Logix engine currently implements a 1st order extrapolation algorithm that results in zero tracking error while the master axis is moving at constant velocity. If the master axis accelerates or decelerates the tracking error is non-zero and proportional to the acceleration or deceleration rate and also proportional to the square of the total position update delay time. Clearly, from both a noise and acceleration error perspective, minimizing the Coarse Update Period is vital.
In some applications there is no requirement for zero tracking error between the master and the slave axis. In these cases, it may be beneficial to disable the Master Delay Compensation feature to eliminate the disturbances the extrapolation algorithm introduces to the slave axis. When the Master Delay Compensation feature is disabled (bit cleared), the slave axis will appear to be more responsive to movements of the master, and run generally smoother than when Master Delay Compensation feature is enabled (bit set). However, when the master axis is running at a constant velocity, the slave will lag the master by a tracking error that is proportional to the speed of the master.
Note that Master Delay Compensation, even if explicitly enabled, is not applied in cases where a slave axis is gearing or camming to the master axis' command position. Since the Logix controller generates the command position directly, there is no intrinsic master position delay to compensate for.
1
Master Position Filter
The Master Position Filter bit controls the activity of an independent single-poll low-pass filter that effectively filters the specified master axis position input to the slave's gearing or position camming operation. When enabled (bit set), this filter has the effect of smoothing out the actual position signal from the master axis, and thus smoothing out the corresponding motion of the slave axis. The trade-off for smoothness is an increase in lag time between the response of the slave axis to changes in motion of the master. Note that the Master Position Filter also provides filtering to the extrapolation noise introduced by the Master Delay Compensation algorithm, if enabled.
When the Master Position Filter bit is set, the bandwidth of the Master Position Filter is controlled by the Master Position Filter Bandwidth attribute, see below. This can be done by setting the Master Position Filter bit and controlling the Master Position Filter Bandwidth directly. Setting the Master Position Filter Bandwidth to zero can be used to effectively disable the filter.
2-31
Reserved
Master Position Filter Bandwidth
Usage
Access
Data Type
Default
Min
Max
Semantics of Values
Required - E
PV only
Set/
SSV
REAL
0
1/(4*CUP)
0
1000
(1)
1/CUP
Hertz
Valid when Master Position Filter is enabled.
A value of 0 disables the filter.
CUP = Coarse Update Period
(1)
Minimum Range limits based on Coarse Update Period are ultimately enforced for Master Position Filter Bandwidth attribute by clamping to limit rather than generating a value out of range error. Only if the value is outside the fixed Min/Max limits is an out of range error given. This was done to avoid implementing complex range limit code based on the Coarse Update Period in the
Logix Designer
application.
The Master Position Filter Bandwidth attribute controls the activity of the single-poll low-pass filter that filters the specified master axis position input to the slave's gearing or position camming operation. When enabled, this filter has the effect of smoothing out the actual position signal from the master axis, and thus smoothing out the corresponding motion of the slave axis. The trade-off for smoothness is an increase in lag time between the response of the slave axis to changes in motion of the master.
If the Master Position Filter is disabled, the Master Position Filter Bandwidth has no effect.
Motion Exception Action
Usage
Access
Data Type
Default
Min
Max
Semantics of Values
Required - All
Set
USINT [32]
4 (D)
2 (E)
-
-
Enumeration (D)
0 = Ignore
1 = Alarm
2 = Fault Status Only
3 = Stop Planner
4 = Disable
5 = Shutdown
Enumeration (E)
0 = Ignore
1 = Alarm
2 = Fault Status Only
3 = N/A
4 = N/A
5 = Shutdown
Array of enumerated exception actions assigned to the currently defined Motion Exception conditions.
This table defines the actions that may be taken by the controller in response to the exception condition.
Motion Exception Action
Enumeration
Name
Description
0
Ignore
Ignore instructs the controller to completely ignore the exception condition. For some exceptions that are fundamental to the operation of the planner, it may not be possible to Ignore the condition.
1
Alarm
Alarm action instructs the controller to set the associated bit in the Motion Alarm Status word but to not otherwise impact axis behavior. For some exceptions that are fundamental to the operation of the planner, it may not be possible to select this action or any other action that leaves axis operation unimpacted.
2
Fault Status Only
Fault Status Only instructs the controller to set the associated bit in the Motion Fault Status word but to not otherwise impact axis behavior. It is up to the controller to programmatically bring the axis to a stop in this condition. For some exceptions that are fundamental to the operation of the planner, it may not be possible to select this action or any other action that leaves axis operation unimpacted.
3
Stop Planner
Stop Planner instructs the controller to set the associated bit in the Motion Fault Status word and instructs the Motion Planner to perform a controlled stop of all planned motion at the configured Max Decel rate. For some exceptions that are fundamental to the operation of the planner, it may not be possible to select this action or any other action that leaves the axis enabled.
4
Disable
The Disable action results in the controller both setting the associated bit in the Motion Fault Status word, abruptly stopping the motion planner, and bringing the axis to a stop by disabling the axis. The method used to decelerate the axis when there is a drive associated with the axis is the best available stopping method for the specific fault condition and is drive device dependent.
5
Shutdown
Shutdown forces the axis into the Shutdown state, abruptly stops the motion planner, disables any gearing or camming operation that specifies this axis as a master axis, and immediately disables the associated drive's power structure. If configured to do so by the Shutdown Action attribute, the drive device may also open a contactor to drop DC Bus power to the drive's power structure. An explicit Shutdown Reset is required to restore the drive to an operational state.
6-254
Reserved
255
Unsupported
The Unsupported Exception Action is the value assigned to Exceptions that are not supported in the implementation. Trying to assign an Exception Action other than Unsupported to an exception that is not supported results in an error.
Soft Travel Limit Checking
Usage
Access
Data Type
Default
Min
Max
Semantics of Values
Required - E
Set/ SSV
USINT
0
-
-
0 = No
1 = Yes
This attribute determines if the system should check for software overtravel condition based on current settings for Soft Travel Limit - Positive, and Soft Travel Limit - Negative.
When the Soft Overtravel Checking is set to true the motion planner checks the current Actual Position of the axis and issues an exception condition if the Soft Travel Limits in either direction are exceeded while commanding motion in that direction. The travel limits are determined by the configured values for the Maximum Positive Travel and Maximum Negative Travel attributes. Soft Travel Limit checking is not a substitute, but rather a supplement, for hardware overtravel fault protection that uses hardware limit switches to directly stop axis motion at the drive and deactivate power to the system.
If the Soft Travel Limit Checking value is set to false (default), then no software travel limit checking is done by the planner. For CIP Drive axis data types, Soft Travel Limit Checking has no affect if the Travel Mode is configured for Cyclic (Rotary) operation.
Soft Travel Limit Checking has no impact until the Axis Homed Status bit is set in the Motion Status Bits attribute; there is no point in checking absolute position of the axis if an absolute position reference frame has not been established for the machine.
Soft Travel Limit, Positive and Negative
Usage
Access
Attribute Name
Data Type
Default
Min
Max
Semantics of Values
Required - E
Set/ SSV
Soft Travel Limit - Positive
REAL
0
-maxpos
maxpos
Position Units
Required - E
Set/ SSV
Soft Travel Limit - Negative
REAL
0
-maxpos
maxpos
Position Units
The Soft Travel Limit - Positive attribute sets the maximum positive travel limit for actual position when Soft Travel Limit Checking is enabled. If this value is exceeded while commanding motion in the positive direction, a Soft Travel Limit - Positive exception is generated.
The Soft Travel Limit - Negative attribute sets the maximum negative travel limit for actual position when Soft Travel Limit Checking is enabled. If this value is exceeded while commanding motion in the negative direction, a Soft Travel Limit - Negative exception is generated.
This attribute provides configurable software travel limits through the Soft Travel Limit - Positive and Soft Travel Limit - Negative attributes. If the axis is configured for Soft Travel Limit Checking, and the axis passes outside these travel limits, a Software Travel Limit exception condition occurs. In the case of a controlled axis, when the axis is outside the travel limits and no motion is being commanded or motion is being commanded to bring the axis back within the soft travel range, the Soft Travel Limit exception is NOT generated. This facilitates recovery from an existing Soft Travel Limit condition. In this case, a Fault Reset can be executed to clear the fault, allowing the axis to be enabled, and then simply commanded back inside the travel limits. For an uncontrolled axis, such as Feedback Only axis, a Soft Travel Limit exception is always generated when the axis is outside the travel limits. In this case the axis must be moved back inside the Travel Limits by some other means. Any attempt to clear the Travel Limit fault in the uncontrolled axis case while outside the travel limits results in an immediate re-issue of the Soft Travel Limit exception.
When Soft Travel Limit Checking is enabled, appropriate values for the maximum travel in both the Soft Travel Limit Positive and Soft Travel Limit Negative attributes need to be established with Soft Travel Limit - Positive value always greater than Soft Travel Limit - Negative value. Both of these values are specified in the configured Position Units of the axis.
Command Update Delay Offset
Usage
Access
Data Type
Default
Min
Max
Semantics of Values
Required - E
PV only
Set/ SSV
DINT
0
-1 * MUP
2 * MUP
µseconds
MUP = Multiplex Update Period
Use the Command Update Delay Offset attribute to introduce a time offset to the command as part of the Master Delay Compensation feature of the control system used by gearing and camming functions. Generally this value should be set to 0 since the device applies the command position according to the associated time stamp. A non-zero value would have the effect of phase advancing or retarding the axis position relative to a master axis.
Move Repeat Mode
Usage
Access
Data Type
Default
Min
Max
Semantics of Values
Required - FPV
Set/ SSV
USINT
0
-
-
-Enumeration:
0 = Once
1 = Repeat
2 = Reciprocate
The Move Repeat Mode attribute controls the repeat functionality of the MAM instruction.
Move Repeat Dwell
Usage
Access
Data Type
Default
Min
Max
Semantics of Values
Required - FPV
Set/ SSV
REAL
0
-
-
Seconds
The Move Repeat Dwell attribute controls the amount of time between successive move profiles initiated by an MAM instruction in Repeat Mode.
Track Mover Length
Usage
Access
Data Type
Default
Min
Max
Semantics of Values
Required - PT (LTM Only)
Set/ GSV
REAL
0 DB
0-
Infinity symbol
Meters
The Track Mover Length is a floating point value that specifies the length of the linear track mover. Track Mover Length allows the user to confirm the proper length of the mover. This value may have future application for a motion planner-based collision avoidance feature.
Provide Feedback
Have questions or feedback about this documentation? Please submit your feedback here.