Programming Overview - 5
Instrument Protection
The following diagram shows the various protection states of the instrument.
Failed selftest
Internal hardware failure
cfProtect()
cfShutdown()
CF_POWER_FAIL_IN
CF_EXT_FAULT_INCF_EXT_INTERLOCK CF_HIGH_RAIL_STAT
CF_LOW_RAIL_STAT
CF_OVERTEMPERATURE
CF_HW_FAILED
CF_PROTECTED
CF_INTERLOCKED
Cycle ac power | cfProtectClear() | CF_EXT_INTERLOCK |
|
|
CF_NOT_READY
PREVIOUS STATE
PREVIOUS STATE
Figure 5-4. Instrument Protect States
After selftest is completed, and there is dc voltage on the power bus the instrument normally moves to the CF_IDLE state. However, if a
You can also put the instrument into a protected state in which all outputs go to open circuit. This can be done with the program command cfProtect() or by asserting a false to true edge on a digital input that was configured as CF_EXT_FAULT_IN. The instrument will also go to this state if it detects an internal overtemperature condition or if the power bus voltage gets too high or too low. When the instrument goes to the CF_PROTECTED state is remembers the state that it came from, and it will return to its previous state when the cfProtectClear() command is sent. If any faults exist when the cfProtectClear function is called, the instrument will remain in CF_PROTECTED. If the instrument is in the CF_FORMING state when it is sent to CF_PROTECTED, the forming process and system timers are suspended in a manner that allows forming to be resumed from where it was interrupted.
Another protected state which is similar to CF_PROTECTED is CF_INTERLOCKED. The instrument goes to this state whenever the external CF_EXT_INTERLOCK input is true, and it returns to its previous state when CF_EXT_INTERLOCK goes false.
To query which state the instrument is in, use:
cfGetRunState();
To force the instrument into the CF_PROTECTED state, use:
cfProtect();
To exit the CF_PROTECTED state, use:
cfProtectClear();
NOTE: If the cfAbort() command is given while the instrument is in the CF_PROTECTED state, cfProtectClear() will send the instrument to CF_IDLE, regardless of its previous state.
57