Block Transfer Instructions stopped executing

dbucher

Lifetime Supporting Member
Join Date
Sep 2004
Location
Montana
Posts
11
I'm working with an Allen Bradley PLC-5/20 enhanced processor. I added four flex I/O modules two discrete and two analog. I let the PLC create the block transfer files and ladder logic for the 1794-IF4I and the 1794-OE4 modules. I also had to install two analog modules to the existing remote I/O. I also let the PLC create these files, one 1771-IFE and one 1771-OFE2 module. All this I/O comes up and runs. I’ve tested the analog channels and everything works. In a couple of days I get a call that all the analog signals are locked up. Not just the new I/O I added but all analog just froze at its last value. In order to recover from this event I had to shut off all power and disconnect the battery blanking out the processor. The PLC will now come up for another couple of days and lock up again. I see the Minor Fault S:10/7 gets set in the PLC data tables and I’ve read Tech note 15916 from the Allen Bradley Knowledge Base and I don’t believe I’ve committed any the Block Transfer programming sins. Thanks for any help.
 
It's hard to say if you've committed any sins without seeing a confession; can you post the *.RSP program ?

It's hard to use up the PLC-5/20's stock of block transfers; it can handle 128 of them.

I'll bet there's an accidental overlap of block transfer control blocks, or there's something writing into block transfer control block memory.

I'm not very familiar with data file protection; you could try to write-protect the BT data files to be sure that nothing can write over them. You won't be able to modify them, though.

Check carefully also to be sure no block transfers are set for Continuous mode.
 
All of the original Block Transfers were done old school. The new analog I/O I let the PLC create all the data files and it even created a BT data file. I checked for overlap and didn’t find any but I make a lot of mistakes and would sure like a second set of eyes on this. I’ll try to attach the program but forgive me if I fail. Thanks for taking the time Ken.
 
Everything looks very much by-the-book; all the block transfers are self-retriggering, with the conventional Read/Write alternating logic and BTW's that are sent when the analog Input modules power up.

There are only 20 block transfer instructions, so they should only use 20 of the 128 available command blocks.

I would try to write-protect BT9 and N10 to make sure nothing on the DH+ network is writing over the command blocks.

N10, especially, is the sort of address that some HMI device might inadvertently write to.

Were any other logic changes made in the system recently ?

One thing I might consider is putting some logic at the end of this ladder file; ADD 1 to a register for every /EN and SUB 1 from the same register for every /DN or /ER. If the value is ever anything but 1 or 0 you've got something messing with the control words.
 
I have seen at least two or three recommended "standard" rungs for BTR and BTW over the years.

The one I use is this: (cb is the control block address)

Code:
cb.DN (not done)        cb.ER (not error)
---]/[--------------------]/[---------------BTR
I have never had problems with this, and its in some of the manuals, for what its worth.📚 (y)

If this doesn't work then you will have to consider Ken's suggestion that you have an overlap. There is no way around just brute force careful double checking, except perhaps to just clean the slate and re-create them. o_O I have had some problems go away when I deleted objects and recreated them, most recently a PID instruction. They look clean in the ladder but under the hood in the compiled code they can get corrupted.
 
The only logic changes have been the last few rungs.
I'll put the ADD and SUB logic in on my next trip. Hopefully this will allow me to tell when the BXFR memory is being eaten away instead of having to wait days for it to fail.
Again Ken Thanks for all your help.
 

Similar Topics

so after a previous thread about the panelview 1200. I figured everything out that I needed to get working with it. I've got the RIO discrete...
Replies
5
Views
1,578
Good Evening , I need to convert a PLC 2/17 ( RS Logix 5 ) over to a CompactLogix 1769-L33ER . I took notice in the RS Logix 5 program that...
Replies
9
Views
2,087
Hello all, I couldn't find a solution through the search tool so hopefully someone out there can help me along. I'm working with a converted...
Replies
3
Views
1,207
Hello, I am currently converting a project from PLC5 to ControlLogix. I have migrated the program from Logix5 to Logix5000 and any Block Transfer...
Replies
4
Views
3,347
Greetings All, I am hoping for some guidance on if there is a quick and easy way to translate or transfer Function Block logic into ladder logic...
Replies
3
Views
1,738
Back
Top Bottom