This has always been a royal pain with modbus devices. Unfortunately, we have resorted to external tools to gather exported data from our PLC devices and transform the tags into the proper format for Ignition (actually, we have been doing this for years with other SCADA/HMI systems). The problem you run into is that every software development tool is different for PLC’s, and getting the data out is different each time. The other problem you run into with modbus PLC’s is that data structures are created typically from naming conventions, and if the company doesn’t have this, you are just stuck in a manual mode to get what you need.
Outside of PLC’s, many modbus devices have very structured and defined registers, and we have been creating UDT’s with the modbus address defined in the UDT with the device as a variable we pass on the UDT instance. This then just requires adding the device in the gateway configuration and Viola, you have all your registers with a single change. PLC’s are difficult, as this has not had any standard configuration and PLC registers aren’t always contiguous depending on data types created. The thought has come to mind, however, to figure out a way to achieve this by mapping the existing address space to achieve the same results, but requires a large time commitment to implement.
What we should be doing is pushing vendors to add OPC-UA/MQTT services to their platform to make this even easier. For those Schneider guys out there running the M580 platform, I’ve heard rumblings of them making a card you can install in the ethernet backplane that has OFS embedded and thus the tags (unlocated as well) would be just as easy as connecting to the OPC-UA server. I attempted to get OFS working independently (only works with Schneider PLC’s), but could never get the OPC-UA interface working right.