RSLogix 5000 MSG Instruction


Thread Starter

Bill Overton

I am currently using Ver 8.0 of RSLogix 5000. I am using 6 MSG instructions to read a block of data (CIP Data Read) from 6 different IP devices. Currently, I have a bit that gets shifted every 15 seconds in a register. When the bit reaches a designated position, then one of the MSG instructions is enabled. This means it takes 1 1/2 minutes to complete the reads for all 6 devices. If I descrease the shift time then I tend to get read errors. Is there a more efficient and faster way to read data from IP devices?
Here are two approaches to Allen Bradley MSG that I have succesfully used:

1) First reset and enable all MSG blocks. The PLC queue will handle multiple MSG's simultaneously. When all MSG blocks have returned a DONE or ERROR bit, start a timer and then reset and enable the MSG's again (this approach is in the AB SCADA application manual).

2) Similar to above, but use a repeat cycle timer to reset and enable the MSG's. I have observed that MSG's sometimes do not return a DONE or ERROR bit.

Hope this helps.
Are you energizing the msg for the full 15 seconds?
If so you may want to reduce that time. Typically I only energize a messege for 1 second or less.
This would allow you to speed up your BSL.

DAVCO Automation

Check the need for something like a false to true transition or one-shot it sometimes AB doesn't reset done bits until a transition takes place and if your timer is staying "enabled" the message will not should get much much faster message times than this....we do..........

Shooting from the hip without seeing what you are doing.