Program/Operator Control

The following instructions support the concept of Program/Operator control.
  • Enhanced Select (ESEL)
  • Totalizer (TOT)
  • Enhanced PID (PIDE)
  • Ramp/Soak (RMPS)
  • Discrete 2-State Device (D2SD)
  • Discrete 3-State Device (D3SD)
Program/Operator control lets you control these instructions simultaneously from both your user program and from an operator interface device. When in Program control, the instruction is controlled by the Program inputs to the instruction; when in Operator control, the instruction is controlled by the Operator inputs to the instruction.
Program or Operator control is determined by using these inputs.
Input
Description
.ProgProgReq
A program request to go to Program control.
.ProgOperReq
A program request to go to Operator control.
.OperProgReq
An operator request to go to Program control.
.OperOperReq
An operator request to go to Operator control.
To determine whether an instruction is in Program or Operator control, examine the ProgOper output. If ProgOper is set, the instruction is in Program control; if ProgOper is cleared, the instruction is in Operator control.
Operator control takes precedence over Program control if both input request bits are set. For example, if ProgProgReq and ProgOperReq are both set, the instruction goes to Operator control.
The Program request inputs take precedence over the Operator request inputs. This provides the capability to use the ProgProgReq and ProgOperReq inputs to ‘lock’ an instruction in a desired control.
For example, let’s assume that a Totalizer instruction will always be used in Operator control, and your user program will never control the running or stopping of the Totalizer. In this case, you could wire a literal value of 1 into the ProgOperReq. This would prevent the operator from ever putting the Totalizer into Program control by setting the OperProgReq from an operator interface device.
RSL5K_Program_Operator Control diagram_v32
Likewise, constantly setting the ProgProgReq can ‘lock’ the instruction into Program control. This is useful for automatic startup sequences when you want the program to control the action of the instruction without worrying about an operator inadvertently taking control of the instruction.
In this example, you have the program set the ProgProgReq input during the startup, and then clear the ProgProgReq input once the startup was complete. Once the ProgProgReq input is cleared, the instruction remains in Program control until it receives a request to change. For example, the operator could set the OperOperReq input from a faceplate to take over control of that instruction.
The following example shows how to lock an instruction into Program control.
RSL5K_Program_Operator Control Example
Operator request inputs to an instruction are always cleared by the instruction when it executes. This allows operator interfaces to work with these instructions by merely setting the desired mode request bit. You don’t have to program the operator interface to reset the request bits. For example, if an operator interface sets the OperAutoReq input to a PIDE instruction, when the PIDE instruction executes, it determines what the appropriate response should be and clears the OperAutoReq.
Program request inputs are not normally cleared by the instruction because these are normally wired as inputs into the instruction. If the instruction clears these inputs, the input would just get set again by the wired input. There might be situations where you want to use other logic to set the Program requests in such a manner that you want the Program requests to be cleared by the instruction. In this case, you can set the ProgValueReset input and the instruction will always clear the Program mode request inputs when it executes.
In this example, a rung of ladder logic in another routine is used to one-shot latch a ProgAutoReq to a PIDE instruction when a push button is pushed.
When the TIC101AutoReq push button is pressed, one-shot latch ProgAutoReq for the PIDE instruction TIC101. TIC101 has been configured with the ProgValueReset input set. ProgAutoReq get reset because ProgValuieReset is always set.
RSL5K_Program_Operator Control TIC101_v31
Provide Feedback
Have questions or feedback about this documentation? Please submit your feedback here.