Thanks for your fast reply. I'll try to clarify:
A vendor provided a pump station controller PLC. I am tasked with retrieving various properties (is pump running, runtime hours, flow rate, etc) from the PLC and transmit this data to a remote location, as well as modify various settings within it from the remote location (enable/disable pump, set desired speed, etc).
I can't access the vendor's PLC with RSLogix5000 because it's firmware is newer than our license. Also, I would prefer not to make any modifications to their program since it was provided as part of a "package". (i.e. adding Produced Tags to their PLC is not an option.)
They provided a detailed tag list.
I have my own dedicated L30ER PLC which is to be used for the telemetry task.
Their PLC uses a custom datatype tag to store the pump info for each of 4 pumps. Instead of trying to retrieve the entire custom tag (which includes strings, thus making it a large block), I would rather retrieve only the few basic bool, int, and real tags that we need. These values are not sequentially stored within the parent tag, so I can't retrieve all the properties in a block read. Instead, I have to read each property separately.
It's OK if the read process is slow (i.e. multiple seconds between polling).
Since there are possibly 20-40 tags to read, I was hoping to avoid creating a separate Message tag for each read instruction, and instead, recycle a single Message tag by activating a different MSG instruction upon the previous instruction's DN bit being asserted, in combination with a timer to pace the whole process.
Does this make sense?