Safety Mat (SMAT)
This instruction applies to the Compact GuardLogix 5370, GuardLogix 5570, Compact GuardLogix 5380, and GuardLogix 5580 controllers.
The purpose of the Safety Mat instruction is to indicate, through O1 (Output 1), if the safety mat is occupied.
Safety mats typically consist of two conductive plates held apart by non-conductive separators. Each conductive plate, Channel A and Channel B of the safety mat, are alternately sourced by the safety-mat instruction’s SRCA (Source A) and SRCB (Source B) outputs. Output A and Output B of the safety mat are routed to the safety mat instruction’s Channel A and Channel B inputs.
Available Languages
Ladder Diagram
Function Block
This instruction is not available in function block.
Structured Text
This instruction is not available in structured text.
Operands
IMPORTANT:
Do not use the same tag name for more than one instruction in the same program. Do not write to any instruction output tag under any circumstances.
IMPORTANT:
Make sure that your safety input points are configured as single, not Equivalent or Complementary. These instructions provide all dual channel functionality necessary for PLd (Cat. 3) or PLe (Cat. 4) safety functions.
WARNING:
If you change instruction parameters while in Run mode, you must accept the pending edits and cycle the controller mode from Program to Run for the changes to take effect.
The following table provides the parameters that are used to configure the instruction.
Operand | Data Type | Format | Description |
SMAT | SAFETY_MAT | tag | This parameter is a backing tag that maintains important execution information for each usage of this instruction. ATTENTION: To avoid unexpected operation do not reuse this backing tag and its members. Do not write to any of the tag members anywhere else in the program. |
Restart Type | DINT | name | This input configures Output 1 for either manual or automatic Restart. Manual (0) - A transition of the reset input from OFF (0) to ON (1), while all of the Output 1 enabling conditions are met, is required to energize Output 1Automatic (1) - Output 1 is energized 50 ms after all of the enabling conditions are met.
NOTE:
ATTENTION: Automatic Restart may only be used in application situations where you can prove that no unsafe conditions can occur as a result of its use, or the reset function is being performed elsewhere in the safety circuit (for example, output function). |
Short Circuit Detect Delay Time | DINT | immediate | This parameter is the time (5...250 ms) that the instruction uses to determine the difference between a short circuit and the safety mat being occupied. When using this instruction with 1791DS I/O modules, the short-circuit detection-delay time has to be greater than the associated module’s input-error latch time. The module’s input-error latch time holds the test output fault generated by the two channels being shorted together for the configured amount of time. Output 1 goes to the safe state as soon as possible (task period and input filter dependent), only the declaration of a fault is delayed by this time. It has no effect on the safety reaction time. |
The following table explains instruction inputs. The inputs are typically used to select different modes of application operation by enabling other instructions.
Operand | Data Type | Format | Description |
Channel A 1 | BOOL | tag | This input is sourced by the Channel A output of the safety mat. |
Channel B 1 | BOOL | tag | This input is sourced by the Channel B output of the safety mat. |
Input Status | BOOL | immediate tag | If instruction inputs are from a safety I/O module, this value is the status from the I/O module or modules (Connection Status or Combined Status). If instruction inputs are derived from internal logic, it is the application programmer’s responsibility to determine the conditions. ON (1): The inputs to this instruction are valid.
OFF (0): The inputs to this instruction are invalid. |
Reset 2 | BOOL | tag | If the Restart Type = Manual, this input is used to energize Output 1. This input also clears the instruction faults provided the fault condition is not present. OFF (0) -> ON (1): The Fault Present (FP) and Fault Code outputs are reset. |
1
If this input is from a Guard I/O
input module, make sure that the input is configured as single, not Equivalent or Complementary.2
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 your reset signal tag name. Then use the OSF instruction Output Bit tag as the reset source of the instruction. The following table provides the outputs to the instruction. In many applications, the output tags may represent the state of actual field devices. They may also be internal tags used to represent machine state information for use with other instructions.
Operand | Data Type | Description |
Output 1 (O1) | BOOL | This output is energized when all input conditions are satisfied. The output becomes de-energized when the following occurs:
|
Source A (SRCA) | BOOL | This output is used to source the Channel A input of the safety mat. |
Source B (SRCB) | BOOL | This output is used to source the Channel B input of the safety mat. |
Fault Code | DINT | This output indicates the type of fault that occurred. See the Fault Codes section below for a list of fault codes. This parameter is not safety-related. |
Diagnostic Code | DINT | This output indicates the diagnostic status of the instruction. See the Diagnostic Codes section below for a list of diagnostic codes. This parameter is not safety-related. |
Fault Present (FP) | BOOL | ON (1): A fault is present in the instruction.
OFF (0): This instruction is operating normally. |
IMPORTANT:
Do not write to any instruction output tag under any circumstance.
Circuit Verification Test
The Safety Mat instruction monitors the Channel A and Channel B Safety Mat Inputs. Before Output 1 can be energized, a verification of the safety mat circuit must be completed, verifying that the Source A and Source B output to Channel A and Channel B input connections are good. This process is referred to as the circuit verification test (CVT) and is identified by the shaded areas in the timing diagrams. Output 1 can be energized when the CVT test is successful and the proper Restart-Type conditions are met.
Normal Operation
Manual Restart Operation
The timing diagram illustrates the instruction being configured for manual restart. At (A), Output 1 is energized when the reset input transitions from OFF (0) to ON (1) after the CVT.
Automatic Restart Operation
The timing diagram illustrates the instruction being configured for automatic restart. At (A), Output 1 is energized 50 ms after the CVT test.
Safety Mat Occupied Operation
The timing diagram illustrates Output 1 being de-energized when the safety mat becomes occupied. At (A), the safety mat is considered occupied and Output 1 is de-energized when the Channel A and Channel B inputs are both ON (1). At (B), the Channel A and Channel B inputs follow the Source A output for as long as the safety mat is occupied.
Safety Mat Unoccupied Operation
The timing diagram illustrates the safety mat being unoccupied and the Safety Mat instruction is initializing. At (A), the Channel A and Channel B inputs begin tracking the Source A and Source B outputs. Output 1 can then be energized based on the configured Restart Type and after the CVT.
Fault Detection Operation
The instruction detects the source output to channel input open circuits and short circuits. A short circuit between Channel A and Channel B appears to the instruction as though the mat is occupied, where Output 1 is de-energized.
The timing diagram illustrates the safety mat being occupied and the connection between Source A and Channel A is open. The restart type is configured for Manual. At (A), the circuit is opened and the Channel A input stops following the Source A output. Output 1 is de-energized and the short-circuit detect delay timer is started. At (B), the timer expires and a fault is generated. At (C), the opened circuit is corrected and the fault is reset when an OFF (0) to ON (1) transition is detected on the Reset input. At (D), the Safety Mat instruction completes the CVT test, and an OFF (0) to ON (1) transition is detected on the Reset input, and Output 1 is energized.
False Rung State Behavior
When the instruction is executed on a false rung, all instruction outputs are de-energized.
Fault Codes and Corrective Actions
The fault codes are listed in hexadecimal format followed by decimal format.
Fault Code | Description | Corrective Action |
---|---|---|
00 | No fault. | None. |
16#20 32 | The Input Status input transitioned from ON (1) to OFF (0) while the instruction was executing. |
|
16#8000 32768 | Channel A is shorted to power. |
|
16#8001 32769 | Channel B is shorted to power. | |
16#8002 32770 | Channels A and B are shorted to power. | |
16#8003 32771 | Channel A is shorted to power and Channel B is either shorted to ground or open. | |
16#8004 32772 | Channel A is either shorted to ground or is open. | |
16#8005 32773 | Channel A is either shorted to ground or is open and Channel B is shorted to power. | |
16#8006 32774 | Channel B is either shorted to ground or open. |
Diagnostic Codes and Corrective Actions
The diagnostic codes are listed in hexadecimal format followed by decimal format.
Diagnostic Code | Description | Corrective Action |
---|---|---|
00 | No fault. | None |
16#05 5 | The Reset input is held ON (1) | Set the Reset input to OFF (0). |
16#20 32 | The Input Status input was OFF (0) when the instruction started. | Check the I/O module connections. |
Affects Math Status Flags
No
Major / Minor Faults
None specific to this instruction. See
Index Through Arrays
for array-indexing faults.Execution
Condition/State | Action Taken |
---|---|
Prescan | Same as Rung-condition-in is false. |
Rung-condition-in is false | The .O1, .SRCA, .SRCB and .FP are cleared to false. |
Rung-condition-in is true | The instruction executes as described in the Normal Operation section. |
Postscan | Same as Rung-condition-in is false. |
Example
Provide Feedback