estop_latch - Software ESTOP latch
| 
 loadrt estop_latch [count=N|names=name1[,name2...]]  | 
This component can be used as a part of a simple software ESTOP chain.
It has two states: "OK" and "Faulted".
The initial state is "Faulted". When faulted, the out-ok output is false, the fault-out output is true, and the watchdog output is unchanging.
The state changes from "Faulted" to "OK" when all these conditions are true:
| 
 •  | 
 fault-in is false  | 
|||
| 
 •  | 
 ok-in is true  | 
|||
| 
 •  | 
 reset changes from false to true  | 
When "OK", the out-ok output is true, the fault-out output is false, and the watchdog output is toggling.
The state changes from "OK" to "Faulted" when any of the following are true:
| 
 •  | 
 fault-in is true  | 
|||
| 
 •  | 
 ok-in is false  | 
To facilitate using only a single fault source, ok-in and fault-en are both set to the non-fault-causing value when no signal is connected. For estop-latch to ever be able to signal a fault, at least one of these inputs must be connected.
Typically, an external fault or estop input is connected to fault-in, iocontrol.0.user-request-enable is connected to reset, and ok-out is connected to iocontrol.0.emc-enable-in.
In more complex systems, it may be more appropriate to use classicladder to manage the software portion of the estop chain.
estop-latch.N
estop-latch.N.ok-in
bit in (default: true) 
estop-latch.N.fault-in bit in (default:
false) 
estop-latch.N.reset bit in 
estop-latch.N.ok-out bit out (default:
false) 
estop-latch.N.fault-out bit out (default:
true) 
estop-latch.N.watchdog bit out
GPL