ControlLogix Reset Dominant (RESD)


Introduction to the ControlLogix Reset Dominant (RESD) Instruction

The ControlLogix Reset Dominant (RESD) will set an output only if the SET bit was the last bit to go true. For example, if both SET, and RESET are true, the RESET will win, and the output will be off.

This is a type of latching instruction, so basically if SET goes true, then false, the output remains on as long as the RESET stays low. On the other hand, if the RESET was the last input to go true, the output remains off. The OutNOT of the instruction is simply the opposite of the OUT.

The compliment of this instruction is the Set Dominant instruction (SETD). You can use these instructions in Function Block or in Structured Text. Ladder logic is not supported for these instructions. Keep in mind that to use Function Blocks, the license you purchased for Studio 5000 must support that. If you cannot create a function block routine, or if existing function blocks are unavailable to view, you can upgrade your Studio 5000 License.

This instruction has some good real world applications. For example, we can disable the output as long as an alarm is high. Another application might be to start a motor. We might use the normally closed contacts of a motor starter controlling a blower. The main motor cannot start until the blower motor engages to keep the motor cool.

Although there are other ways to perform this action in logic, a troubleshooter will realize your intentions when he sees the RESD instruction in logic. Let’s set one up!

Create Your Tags

Under Program Tags, I’m going to create a few tags that we need in order to demonstrate the instruction’s operation. Obviously, if these tag names are already in use in your logic, create them with a different name for testing.

At this point, we do not need to create a tag for the RESD Instruction. Once we add the instruction, RSLogix / Studio 5000 will create that tag for us with the Dominant_Reset data type.

Set up the Logic

At this point, we’ll add the RESD instruction to a function block. If you are creating a new routine to try this in, be sure to add your JSR statement so the routine will execute. Usually, you will add this to the MainRoutine.

As you can see, if both set and reset are 0, the output is initially zero as well.

When I turn on the SET bit, the output goes to 1 as we would expect.

When RESET is also high, the RESET wins, and the output shuts off.

If I shut off RESET before SET, the output remains on.

Using the ControlLogix Reset Dominant (RESD) in Structured Text

To demonstrate, I’ll simply remove the function block logic, and leave the existing tags. Then, I’ll write the following as a structured text routine.

Now, let’s perform the same tests:

When the SET bit goes high, we get our output.

If SET and RESET are both true at the same time, the output shuts off.

At last, if I shut off the RESET bit before the SET Bit, the output will go high, and stay high. It will stay high until the ResetBit goes true.

Summary for the ControlLogix Reset Dominant (RESD) Instruction

Use the RESD instruction when you want the RESET input to override the SET Input. Function blocks are good for showing the flow of information. They have a good use, especially for Analog data. However, if you do all of your logic in function blocks, you will find discrete logic to be a bit tedious compared to ladder. Each language has a good use. Use them wisely, and think of the person who needs to troubleshoot your logic at a later date.

For more information, visit the ControlLogix Category Page!

— Ricky Bryce

Leave a comment

Your email address will not be published. Required fields are marked *