ControlLogix Messaging – RSLogix MSG Instruction

The Message (MSG) instruction is an instruction in RSLogix 5000 reads or writes a block of data to another module on a network. MSG instruction is available in Ladder logic but not in function block language.
Different From Produce / Consume Model
You can send data between processors by using the produce and consume method. The produce and consume method occurs at periodic intervals and is more predictable.
The MSG instruction does not occur at periodic intervals, however it saves allows you to save bandwidth.
Also, using the MSG instruction the processor that the data is being sent to (or received from) does not need to be present in the I/O tree of the program.
How to Do Messaging in RSLogix 5000
There are many message types that you can do when using a MSG instruction. They are similar to each other for the most part. For this article, I will explain message types “Block Transfer Write” and “Block Transfer Read“.
1. Insert the MSG instruction into the rung by using the “Insert” key or typing “MSG” on your keyboard.
2. Create a control tag for the instruction.
3. From the Message Type pull-down menu, select the type of message you want to send. Depending on the type of message you choose, various parameters appear on the Message Configuration dialog, Configuration tab.
Message Type: Block Transfer Write
4. From the Source Tag pull-down menu, choose the local tag that contains data to transfer. In the Number of Elements field, enter or choose the number of 16-bit integers of data to write from the Source Tag. Click on the New Tag button to create a new tag.
5. Set the communication message instruction path. Look further down in the article for instruction on how to set the path.
ControlLogix Message Instruction (Communication) Path
A wrong communication path is one of the most common mistakes when setting up the message instruction. To read more about how to do this correctly read this article: MSG Instruction Communication Path
Related posts:




You have explained where the data comes from and the path it is sent on but where is it written to if you want to write into the tags of another controller . How do you tell where the data will end up in the other processor
How much data can I transfer between two Logix processors?
What does it mean when I “cache” messages?