User manual

Publication ENET-UM001I-EN-P - January 2010 105
Interlocking and Data Transfer Between Controllers Chapter 7
Guidelines for Message
(MSG) Instructions
Follow these guidelines.
For more information on programming MSG inst
ructions, see the Logix5000
Controller General Instructions R
eference Manual,
publication 1756-RM003
.
The individual system user manuals for Logix5000 controllers also prov
ide
MSG examples unique to specific controller platforms.
MSG Instruction Guidelines
Guideline Details
For each MSG instruction, create a control tag. Each MSG instruction requires its own control tag.
· Data type = MESSAGE
· Scope = controller
· The tag cannot be part of an array or a user-defi
ned data type.
Keep the source and destination data at the
controller scope.
A MSG instruction can access only tags that are in the Controller T
ags folder.
If your MSG is to a module that uses 16-bit
integers, use a buffer of INT
s in the MSG and
DINTs throughout the project.
If your message is to a module that uses 16-bit integers
, such as a PLC-5 or SLC 500
controller, and it transfers integers (not REALs), use a buffer of INTs in the message and
DINTs throughout the project.
This increases the efficiency of your projec
t bec
ause Logix5000 controllers execute
more efficiently and use less memory when working with 32-bit integers (DINTs).
Cache the connected MSGs that execute most
frequently.
Cache the connection for thos
e MSG instructions that execute most frequently, up to
the maximum number permissible for your controller revision.
This optimizes execution time because the controller does not have to open a
connection eac
h time the message executes.
If you want to enable more than 16 MSGs at
one time, use som
e type of management
strategy.
If you enable more than 16 MSGs at one time, some MSG instructions may experience
delays
in entering the queue. To guarantee the execution of each message, either:
· enable eac
h message in sequence.
· enable the messages in groups.
· program a message to communicate with multiple modules.
· program logic to coordinate the execution of messages.
Keep the number of unc
onnected and uncached
MSGs less than the number of unconnected
buffer
s.
The controller can have 10...40 unconnected buffers. The default number is 10.
· If all the unconnected buffers are in us
e when an instruc
tion leaves the message
queue, the instruction errors and does not transfer the data.
· You can increase the number of unconnected buffers to a maximum of 40.