Safety Feedback Interface (SFX)

This instruction only applies to the
Compact GuardLogix
5380 and
GuardLogix
5580 controllers.
The Safety Feedback Interface (SFX) instruction scales feedback position into position units and feedback velocity into position units per time unit. Feedback Position and Velocity are read from a Safety Input assembly. SFX also allows a reference position to be set from a home input. SFX performs position unwind in rotary applications.
The outputs of this instruction are used as inputs to other drive safety instructions. An SFX instruction must be used for every safe feedback from a drive providing position or velocity to a drive safety instruction.
Available Languages
Ladder Diagram
L5K_LD_avail lang
Function Block
This instruction is not available in function block.
Structured Text
This instruction is not available in structured text.
Safety Feedback Interface Application
Safety Feedback Interface is used with a CIP Safety Drive and a motor or axis that supplies safe Feedback Position and Velocity to a safety controller. The actual position and actual velocity outputs, scaled according to the users application are supplied to other drive safety instructions.
SFX_application
Operands
IMPORTANT:
Unexpected operation may occur if:
  • Output tag operands are overwritten.
  • Members of a structure operand are overwritten.
  • Structure operands are shared by multiple instructions.
WARNING:
The SFX Safety Control structure contains internal state information. If any of the configuration operands are changed while in run mode, accept the pending edits and cycle the controller mode from Program to Run for the changes to take effect.
The following table provides the operands that are used to configure the instruction.
Operand
Data Type
Format
Description
Safety Control
SAFETY_FEEDBACK_INTERFACE
tag
Data structure required for proper operation of instruction.
Time Unit
list item
This operand scales the Actual Speed output according to the selected time unit.
SECONDS (0)
Actual Speed is in Position Units / Second
MINUTES (1)
Actual Speed is in Position Units / Minute
Position Scaling
REAL
immediate
tag
The conversion factor required to convert position counts into user units. The value is evaluated once on rung true and Output 1 [O1] is ON(1).
Range: Greater than symbol 0
Units: Feedback Counts / Position Unit
Feedback Resolution
DINT
immediate
tag
The number of Feedback Position counts per revolution of the safety feedback encoder. This value must match the value used by the drive’s Safety Feedback Object.
Range: Greater than symbol 0
Unwind
DINT
immediate
tag
The rollover point for Feedback Position. The value is evaluated once on rung true and Output 1 [O1] ON(1).
0: Unwind Disabled
Greater than symbol 0: Unwind Enabled
Units: Feedback Counts / Unwind Cycle
When set to 0, the rollover unwind is disabled.
The Actual Position output will wrap around from (Unwind / Position Scaling) to 0 and vice versa depending on the direction of movement.
Home Position
REAL
immediate tag
The value assigned to the Actual Position after a successful instruction home. The value is read once after rung true and Output 1 [O1] is ON(1).
Units: Position Units
Tip:
If Unwind is configured for a non-zero value, the Home Position must be between 0 and the Unwind Position.
Feedback Position
DINT
tag
Position counts input
Units: Counts
Tip:
Enter the Primary Feedback Position tag member of the motion safety instance providing position.
Feedback Velocity
REAL
tag
Velocity input
Units: Feedback Units/Second, where Feedback Units are revolutions.
Tip:
Enter the Primary Feedback Velocity tag member of the motion safety instance providing velocity.
Feedback Valid
BOOL
tag
Feedback Valid input indicates that the Feedback Position and Feedback Velocity are valid for use.
OFF(0): Not Valid
ON(1): Valid
Tip:
Enter the Feedback Valid tag member of the motion safety instance providing feedback.
Connection Faulted
BOOL
tag
This input indicates the connection status to and from the drive safety instance.
OFF(0): OK
ON(1): Fault
Tip:
Enter the Connection Faulted tag member of the motion safety instance used with this SFX instruction.
Home Trigger
BOOL
tag
A ON(1) to OFF(0) transition of this input sets the Actual Position output to the Home Position input value and sets the Safe Feedback Homed output to ON(1) state.
Setting Home Trigger ON(1) clears Safe Feedback Homed and Output SFH outputs OFF(0).
Reset
1
BOOL
tag
This input clears an instruction fault provided the fault condition is not present.
An OFF(0) to ON(1) transition of Reset clears, the Fault Present [FP], Fault Type and Diagnostic Code. The Fault Code is set to No Faults.
1
ISO 13849-1 stipulates instruction reset function must occur on falling edge signals. To comply with ISO 13849-1 requirements, add the logic immediately before this instruction. Rename ‘Reset Signal’ tag in this example to the reset signal tag name. Then use the OSF instruction Output Bit tag as the instruction’s reset source.
RSL5K_MMVC Reset-Signal Example_v31
This table explains instruction outputs. The outputs are external tags (safety output modules) or internal tags for used in other logic routines.
Operand
Data Type
Description
Output 1 [O1]
BOOL
ON(1): Indicates the instruction is executing and not faulted.
OFF (0):
  • The rung in condition is false.
  • The instruction is faulted.
Fault Present [FP]
BOOL
ON(1): A fault is present in the instruction.
OFF(0): The instruction is operating normally.
Safe Feedback Homed [SFH]
BOOL
Instruction output that indicates the instruction has successfully defined the home position.
SFH will be in the same state as Safe Feedback Homed operand.
OFF(0): Not Homed (Incremental Position Only)
ON(1): Homed (Absolute Position Valid)
Actual Position
REAL
Instruction output that represents the position in Position Units.
Units: Position Units
If the instruction is faulted the Actual Position will no longer be updated and will display as 0.
When the instruction rung-in-condition initially becomes TRUE the Actual position will begin to update from the initial value of zero.
If Unwind is Greater than symbol 0 then Actual Position will wrap around to 0 when the Actual Position reaches Unwind / Position Scaling for increasing position. The Actual Position will wrap from 0 to Unwind / Position Scaling for decreasing position.
Actual Cycles
DINT
When unwind is Greater than symbol 0 the feedback is configured as a rotary application. In a rotary application each time the position exceeds the unwind value, or rollover point, the Actual Cycles is incremented. When rotation is in the negative direction and the position decreases past zero, the position wraps around to the unwind value and Actual Cycles is decremented.
Actual Speed
REAL
Instruction output that represents the speed of the motor from the safe feedback object converted to user defined units for speed.
Units: Position Units / Second OR Position Units / Minute
If the instruction is faulted the Actual Speed will no longer be calculated and will display as 0.
Fault Type
SINT
Indicates the type of fault. See the Fault Codes and Corrective Actions section for specific codes and actions.
Diagnostic Code
SINT
Indicates information about the cause of a fault. See the Diagnostic Codes and Corrective Actions section for specific codes and actions.
This table explains instruction outputs that are written to the user-specified tag.
Operand
Data Type
Format
Description
Safe Feedback Homed
BOOL
tag
This output indicates that the SFX instruction has successfully defined the home position.
OFF(0): Not homed (SFX used for incremental position only)
ON(1): Homed (Home Position set)
Safe Feedback Homed transitions to OFF (0) when:
  • SFX faults
  • SFX rung in condition is False
  • Home Trigger is ON(1)
Tip:
Assign this tag to the Safe Feedback Homed member of the safety output tag structure corresponding to the motion safety instance of the drive module. The corresponding Axis Safety Status RA tag updates automatically in the drive axis tag to enable coordination of the motion task with the safety task.
SFX Fault
BOOL
tag
This output indicates SFX Fault status.
OFF(0): Not Faulted
ON(1): Faulted - See Faults and Corrective Actions
Tip:
Assign this tag to the SFX Fault member of the safety output tag structure corresponding to the motion safety instance of the drive module. The corresponding Axis Safety Faults RA tag updates automatically in the drive axis tag structure to enable coordination of the motion task with the safety task.
IMPORTANT:
Do not write to any instruction output tag under any circumstances.
Affects Math Status Flags
No
Major/Minor Faults
None specific to this instruction. See Index Through Arrays for array-indexing faults.
Execution
Ladder Diagram
Condition/State
Action Taken
Prescan
The .01, .SFH, .SFHomed and .SFXFault outputs are cleared to OFF(0).
The Diagnostic Code output is set to OFF (0)
The Fault Type output is set to ON (1).
ActualPosition, ActualCycles, ActualSpeed, PositionScalingOut, and UnwindOut are set to a value of 0.
Rung-condition-in is false
The .01, .SFH and .SFHomed outputs are cleared to false.
If an instruction fault is present when rung went false the fault condition will be maintained and Diagnostic Code displayed.
Rung-condition-in is true
The instruction executes.
Postscan
Not used
Home Operation
The SFX instruction requires a home input to set a home position for absolute position operation. At (A), the Home Trigger input transitioned from ON(1) to OFF(0) and initiates the setting of the Actual Position output to the Home Position input value. With a successful Home Operation, SF Home and Output SFH, are set to ON(1). Also shown, SF Home and Output SFH are set to OFF(0) whenever Home Trigger is ON(1). Since the Actual Position is simply updated with the home position with the trigger, it is recommended that the axis be stopped when homing.
Home Operation_SFX.png
Pass-Through Tags
A Safe Motion Monitoring Drive has one or more motion axes that are controlled by a motion task. The Safe Motion Monitoring Drive also has one or more motion safety instances that support safety functions used in a safety task of a safety controller. Some of the tags associated with a drives motion safety instance are pass-through tags. The following table shows the pass-through tags and the corresponding axis tags for the SFX instruction:
SFX Instruction Output
Pass-Through Tags for Motion Safety Instance
Safe Motion Monitoring Drive Action
Axis Tag
Safe Feedback Homed
module
1
:SO.SFHome[instance
2
]
updates tag
axis
3
.SafeFeedbackHomedStatus
SFX Fault
module
1
:SO.SFXFault[instance
2
]
updates tag
axis
3
.SFXFault
1
module is the name for the drive module in Logix Designer I/O Configuration tree
2
instance is 1 or 2 for dual axis drives otherwise null
3
axis is the axis name in the Logix Designer Motion Group and is associated with module
When assigning the Safe Feedback Homed and SFX Fault instruction outputs to the motion safety instance pass-through tags, the corresponding Axis Safety Status RA and Axis Safety Faults RA tags automatically update in the motion controller. The motion control task of motion controller reads the Axis Safety Status and the Axis Safety Faults tags to coordinate operation between the safety task and motion task.
Feedback Valid Fault
A SFX instruction will fault if the Primary Feedback Valid tag from the drive Safety Input Assembly turns OFF(0) while the instruction is executing. When this happens Output 1 [O1] turns OFF(0), Fault Present [FP] output turns ON(1), Safe Feedback Homed/SFH outputs turn OFF(0) and both Actual Position and Actual Speed are set to 0 at (A).
When Feedback Valid turns ON(1) (fault condition no longer present) at (B), a Reset is required to clear the fault, turn Output 1 [O1] ON(1) and begin calculating the position and speed at (C).
A Home Trigger input ON(1) to OFF(0) transition is required to reset home position at (D).
SFX_Feedback Valid Fault diagram
Fault Codes and Corrective Actions
Fault Code
Description
Corrective Action
1
No Fault
None.
2
Invalid Configuration Fault
  • Check the input values and correct inconsistencies or illegal values. Check the diagnostic code for more information
  • Reset the fault.
100
Feedback Invalid Fault
  • The drive supplying the feedback has detected a fault, or the safety feedback has not been configured. Configure the feedback or correct the fault.
  • Reset the fault
101
Connection Fault
  • Check the wiring. Check the network status of the modules.
  • Reset the fault.
102
Positive Arithmetic Overflow
The position exceeds the limits of linear system. Reduce the range of motion.
103
Negative Arithmetic Overflow
The position exceeds the limits of linear system. Reduce the range of motion.
104
Home Position Arithmetic Overflow
The Home Position exceeds the allowable range of a linear system. Check the program for correct Home Position value and Position Scaling value.
105
Actual Speed (position units/time unit) calculation has exceeded the limit of a REAL data type.
Verify Position Scaling and Feedback Resolution input values are correct.
Diagnostic Codes and Corrective Actions
Diagnostic Code
Description
Corrective Action
0
No diagnostic information available.
None
20
Feedback Resolution value not valid.
The resolution must be greater than 0.
21
Position Scaling value not valid.
Check the position scaling value.
22
Unwind value not valid.
Check the unwind value.
23
Home Position value was not valid when the Home Trigger transitioned from OFF(0) to ON(1).
If using unwind, verify Home Position value is greater than or equal to 0.0 and less than the Unwind value.
Example
SFX_example
Provide Feedback
Have questions or feedback about this documentation? Please submit your feedback here.