Toggling an AlwaysOff bit

nievesdelimon

Member
Join Date
Mar 2018
Location
Queretaro
Posts
37
A couple days ago I accidentally toggled an alwasyoff bit. The issue is it was set up as a single OTU on a rung, nothing else, and used as XICs all over the code. I was able to toggle it on and off; I set up a different bit the same way and was unable to toggle it. I ended up turning the AlwaysOff bit into a constant to stop it from happening.

Does anyone have any idea about how could this happen? --Figured it out, the bit was used in an unscheduled program and it could be toggled there.

Also: I noticed this because the bit toggled itself on which was weirder.
 
If you can toggle it and it changes state, and remains in that state, then the OTU is not executing. Otherwise the OTU should execute every scan and reset back to zero. Verify the OTU logic is not in a subroutine. If you have a Continuous Task, the logic should be located in this task. Then, it should be in the first Program underneath that task. Underneath that first program there should be a Main routine. It would be in the first routine listed (unless there is a fault routine). Then ideally it would be on the first one or two rungs of that routine.

If the bit toggled itself on, then something else is writing to that bit. I would right-click on the tag and select Cross Reference. In the results window you should see only one Destructive (Y) result which would be your OTU. You would see a bunch of Non-destructive (N) which would be any XIC and XIO addressed to that tag. If you see more than one destructive then you need to investigate what the other ones are doing.

OG
 
If you can toggle it and it changes state, and remains in that state, then the OTU is not executing. Otherwise the OTU should execute every scan and reset back to zero. Verify the OTU logic is not in a subroutine. If you have a Continuous Task, the logic should be located in this task. Then, it should be in the first Program underneath that task. Underneath that first program there should be a Main routine. It would be in the first routine listed (unless there is a fault routine). Then ideally it would be on the first one or two rungs of that routine.

If the bit toggled itself on, then something else is writing to that bit. I would right-click on the tag and select Cross Reference. In the results window you should see only one Destructive (Y) result which would be your OTU. You would see a bunch of Non-destructive (N) which would be any XIC and XIO addressed to that tag. If you see more than one destructive then you need to investigate what the other ones are doing.

OG
I could toggle it because some of the non-destructive bits were used in an inhibited program. With the program uninhibited the issue stopped.

As to why it toggled itself, I couldn't find any other destructive bits.
 

Similar Topics

I have been asked to extensively modify a piece of machinery that is very mission critical to the operation, thus not allowed much downtime or...
Replies
4
Views
2,287
Does anyone else toggle bits, or increment words as a messaging technique? To start a sequence or process I will hold a bit true (To avoid...
Replies
6
Views
1,708
We bought a used SLC500 (1747-l40A) from a vendor. Comes with one year warranty. It's still on our test bench. I downloaded a program to it and...
Replies
21
Views
4,176
Hello, given my level of experience I am sure this is a simple question. I am using Studio 5000 to observe a simple ladder logic set from a couple...
Replies
3
Views
1,895
I have used this Flip-Flop routine for years (see 1st picture) without incident, but noticed today while programming a flashing light sequence for...
Replies
13
Views
8,956
Back
Top Bottom