Block transfer ion PLC5

YTCET

Member
Join Date
Sep 2003
Location
VA
Posts
20
I am new to this field and it's been a while since school .. 10 years.. I am trying to find a plain english explanation of block transfer read / write. How it works ,what we use it for and why. I know its probably an in depth subject so I'll settle for a link to another sight with an explanation if anyone knows of one .


Thanks
 
In the PLC5 there are two separate communication subsystems.

The one everyone uses is represented by the comm ports, DH+ and the Ch0 DF1 port. These let you program the PLC and message blocks of data from one PLC to another. To do these external messages you use the MSG intruction.

The other communication subsystem is internal to the PLC , and it is used to send blocks of data to other intelligent devices within the PLC's own I/O structure. To create these internal messages the BTR/BTW instructions are used.

In the PLC5 all I/O modules, other than straight digital modules, that need to pass blocks of data, eg an analog input module, will use a BTR/BTW instruction to accomplish this.

Don't be put off by the details of how they work. Remember they are only just kind of message instruction that is used INSIDE the PLC I/O structure.

The SLC500 mostly avoided using Block Transfers because unlike the fixed PLC5 I/O data tables, the SLC created its own variable I/O tables to suit the the I/O sizes of the modules that were being plugged in. This made most non-digital modules much easier to address.

However the SLC still needed to transfer blocks of data from intelligent modules with parcels of data too large to fit into every I/O scan, and so the M0/M1 file was invented. This concept is like a poor mans Block Transfer, and is easier to use, although it has definite speed limitations.

The current generation of ControlLogix system doesn't require any messaging instructions at all as all modules in the system have "scheduled connections" that transfer data straight into the processor.

However for backward compatibility the ControlLogix processor has a MSG instruction used for messaging to older PLCs that may be part of the overall project. Notably in CLX the MSG instruction is very versatile, and can even be configured to be set up as BTR/BTW's to non-native CLX modules, such as 1771 analogs, or variable spped drives that still require their use. Realising this simply confirms that the Block Transfer instruction is really only a specialised form of messaging.

Sorry if this is more info that you needed, but sometimes it's fun just typing.
 
Thanks for the replies... Philip , i was wanting info on internal PLC5 btr/btw but I thank you for info on external as well.. I was just discussing same thing with another tech the other week .. before I got this job . Anyway I am still looking for more plain english explanation . Kim .. just so happens I have hard copy of PLC5 instruction set on shelf .. forgot I had it .. Will attempt to read it now Thanks....
 
PLC5 btr/btw

Basically I look at Block Transfer as the PLC5 Processor talking to Different modules in the system (BTW) and the modules responding back and the processor reading the info from the modules (BTR) like an Analog in/out, Encoder, IMC, or other types that need info passed back and forth. The info needed by the modules are usually two different types:

1) Discrete on/off also known as 1/0 binary which is usually evaluated as a yes or no question should something be turned on or did something turn on yes no. Discrete transfer between the processor and the modules are addressed by where the module is placed in the rack and are at bit level. O:xxx.01 or I:xxx.01

As discussed above yes and no does not give much information when a analog value such as temperature or velocity is needed, it would be hard to represent varying values by a yes or no. That's where BTW / BTR comes in.

2)BTR / BTW known as block transfer means a block of DATA (many binary 1/0, bytes, words) which is addressed by where the module is placed in the rack and is dependant on the type of module the processor is talking too. Transfers Blocks of words in a predefined order to the modules address and the module if needed response with written to a addresses that are read by the processor when the BTR is turned on. The amount of words transferred at any one time is configured by the programmer in the BTW / BTR instruction but is limited.

A 4 channel analog out would need at least 6 words one for each channel (output value) plus a couple of overhead words. The PLC logic would determine the current value needed for an output and when the BTW to the Analog Out module is turned on in the logic the processor would write the words one for each channel to the module. The module would get this info and read the defined word address for Channel one and interpret what the Binary integer value is and convert it to the type of output the module is configured for.

BTW = throw a bunch of words (data) to the module
BTR = read a bunch of words (data) from the module

I didn't look in the instruction set manual when writing this I'm just trying to give a lay men's answer. But when using a Block Transfer instruction the manual for the module will be needed in order to know what is expected from the processor and how the module will send data back.
 
Thanks to all that replied . I think I have a grasp of it now. The info that is entered into the panelview is transfered to the various locations in the data table when the BTR goes true and /or written back to the PNVW when BTW goes true. ??? Is this about right?
 
BTW / BTR Panel View

<The info that is entered into the panelview is transfered to the various locations in the data table when the BTR goes true and /or written back to the PNVW when BTW goes true. ??? Is this about right?>

Yes but, The Panelview is treated as a I/O rack for the discrete bit pushbuttons and indicators (The screen indicator Color changes when the Output file bit is changed) and no BTW / BTR are required for these addresses.
BTW is generally used for a High / Low byte address to store numbers that can be displayed on the panel view screen.

BTR could be used to read the current screen number.

Hope this helps.
 

Similar Topics

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,326
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,734
We removed an HMI talking on the RIO only to find problems with the remaining devices on the RIO network. The network sped up significantly only...
Replies
4
Views
1,740
Hello I am using a 1756-DHRIO to scan a analogs cards in the plc-5 and BTR and BTW instruction to read and config that cards. I have 17 analog...
Replies
4
Views
1,599
Replies
2
Views
2,251
Back
Top Bottom