CLX Indirect Addressing Issue (I Think . . .)

MasterBlaster

Lifetime Supporting Member
Join Date
Aug 2005
Location
Solano County, CA
Posts
216
Good Morning:

Using a 1756-L61 running version 17.2, I FAULTED the processor with the attached logic. Fault was not immediate, but didn't take more than a couple minutes. In my haste to get the processor back on-line (plant was running) I did not thoroughly examine the Fault Code, just saw that it was rung 108.

So, first question: Does the processor/L5K keep track of historic faults in a file somewhere that I can access?

The object of the new logic is to determine tank level decrease in the past hour. It is my first use of FIFO. I see that the FFL and FFU instructions may be used in pairs, but is that a requirement? I don't think the FFU does me any good in this application. Is that correct?

Next, am I correctly dealing with the DN bit of the FFL by MOV'ing a zero to .POS of the Control Word? (I did that because the help file states that a major fault occurs if: (starting element + .POS) > FIFO array size). Is there a better way to "reset" the FFU?

Last point of confusion is the gray background color behind the actual values in the SUB instruction. Makes me think something is not cool with my indirect addressing. And since that is the rung that faulted the processor, I'm doubly suspicious. I've never faulted with a SUB instruction before. Any hints?

Note: I added the AFI to rung 108 in order to bring the processor back on-line. The AFI was not there when the fault occurred.

Thanks in advance for any education you can provide.

Bill

Indirect Address Fault 2-11.jpg
 
The object of the new logic is to determine tank level decrease in the past hour. It is my first use of FIFO. I see that the FFL and FFU instructions may be used in pairs, but is that a requirement? I don't think the FFU does me any good in this application. Is that correct?

I have used FFL and FFU extensively, but i have never seen use of FFL without FFU.
FFU take oldest data out of the queue, that´s the reason to use it.
If you use the que to gather data from the last hour your (I see your queue has 12 position) I guess the timer should restart every 5 minutes , is that correct ???.
If you want to know the diference between instant data and an hour ago data , the only thing you have to do is to compare instant data with the oldest data inside the queue and that possible if you use FFU.
I do not see the reason why you use the .DN from the fifo control to change fifo position, let the fifo grows by itself and release oldest data using FFU.
 
Bill:
I found this example, it´s for SLC500 but you can change it for CLX.
This one is for running average, but you can change it to get difference between right now data now and an hour ago data.
If you have any trouble just let me know.
 
Thanks! Other coaching I received, some further testing (and another fault), and all is well. I appreciate the example you sent.

I was using NOT DN to try to prevent exactly what was happening: I just didn't see that the DN bit is too late. The damage was already done by adding one to eleven, thereby making the processor look for the non-existent position twelve.

Thanks again.
 

Similar Topics

Any one have any ideas on how to do this in CLX Thanks
Replies
8
Views
1,586
In RSL500, you select if you want to see the indirect tag name or the indirect tag value in your program. Is it possible to do the same thing in...
Replies
1
Views
3,122
Controller: 1756-L84E v.35 Prosoft MVI56E-MNETC for ModbusTCP/IP I'm having an issue with some of my write commands. The write command that...
Replies
0
Views
195
I have several Avery scale units and they are configured as Generic Ethernet modules, and I am actually reading the data fine for the weight...
Replies
2
Views
420
What's the best way to move a tag value from the panelview+7 to the clx plc. We display amps from a power meter on the panelview screen, read in...
Replies
1
Views
398
Back
Top Bottom