ProSoft Technology ILX69-PBM User Manual

Page 66

Advertising
background image

Contents

ILX69-PBM ♦ CompactLogix or MicroLogix Platform

User Manual

PROFIBUS Master Communication Module

Page 66 of 124

ProSoft Technology, Inc.

February 4, 2015

BTO - Block Transfer Out
The Logix program copies its output data into the output data area and writes the
corresponding block number to OutBlock.Req (Block number 0 to n, with n = max. number
of OUT blocks). The Logix program then checks if the requested block has been received by
the module firmware by comparing OutBlock.Cnf and OutBlock.Req. If OutBlock.Cnf equals
OutBlock.Req, the module firmware is ready to receive the next block. The procedure
continues with a different block number.

If all blocks are transferred to the module, the Logix program will set the OutBlock.Req to 0
again. A transition from n to 0 in OutBlock.Req will trigger the module firmware to send all
output data to the PROFIBUS network. This transition trigger ensures that all blocks are sent
to the network consistently. The next block transfer of output data will be started over if the
module detects a transition from 0 to n.

In order to send valid data, the Logix program must write all output data blocks and send it
to the module firmware before the "Bus On" flag is set. In this case, the module firmware will
send valid data to the slaves with the first network cycle. Therefore, the method "Controlled
start of communication" must be selected in ProSoft fdt Configuration Manager.

A description of the option Controlled by Application can be found in the
online help of the ILX69-PBM.

Respectively in the ILX69-PBM manual, ProSoft fdt Configuration Manager for
CompactLogix or ControlLogix Platform, PROFIBUS DP Master DTM in
chapter Configuration in the section Master Setting > Start of Bus
Communication.

The module firmware copies the entire header portion (16 bytes) of the output data image in
front of the data portion. The maximum size of the output data is 480 bytes for the first block
and 480 for each of the following blocks. The Logix program would have to transfer 12
blocks in order to transfer 5760 bytes.

BTI - Block Transfer In
The module firmware starts sending network data to the Logix program as soon as the Logix
program increments the block number in InBlock.Req (block number 0 … m, with m = max
number of IN blocks). The Logix program checks if the requested block was received by the
module firmware by comparing if InBlock.Cnf equals InBlock.Req.

The Logix program then writes the next block number to InBlock.Req and the procedure
starts over. If all blocks are transferred from the module firmware, the Logix program will set
the InBlock.Req to 0. A transition from m to 0 is the trigger for the module firmware to
refresh all input data from the PROFIBUS network. The trigger from 0 to 1 of InBlock.Req
ensures that all transferred blocks are received consistently from the network.

The module firmware copies the entire header portion (88 byte) of the input data image in
front of the data portion. The maximum size of the input data is 408 byte for the first block
and 408 for each of the following blocks. The Logix program would have to transfer 15
blocks in order to transfer 5760 bytes.

Generally, the module firmware is capable of transferring data blocks in a non-sequenced
manner. Additionally, a single block transfer is possible.

Advertising