OPC MODBUS Addressing, Not Showing All Addresses

Hello All,

I have a problem adding a MODBUS connection to the OPC. I have added this device connection in the past and didn’t have a problem before. However, when I add it now I am only seeing every tenth address in the OPC Quick Client. Here are some screen shots to illustrate:

I know it’s got to be something simple but I am just not seeing what it is. Any ideas?

Every row you’ve configured only goes from start 1 to end 1. There are 9 configured rows and 9 tags in that screenshot. Doesn’t look like anything is wrong. The prefixes you’re using aren’t helping to make this clear.

Ugh, never mind. I see what I was doing wrong now. It was somethng simple and completly my error. You are right, nothing is wrong. I just wasnt reading the addresses correctly. Thank you for pointing it out.

FYI, This is a learning/testing application so I am not putting a whole lot of care in the naming conventions yet as I am adding and deleting things constantly.

FWIW I would recommend just not using the Modbus address map at all. I can’t even explain the design rationale behind this bizarre row- and range-based approach it uses. I am very much looking forward to replacing this with a regular table-based path/address/description in the future.

When not using the map you just create your OPC tags in the designer with an OPC Item Path that corresponds to the Modbus address syntax in the user manual.

2 Likes

:100: I heartily endorse this opinion.

Related topic:

1 Like

So I would just create the OPC connection to the device and then create the tags directly in Designer?

Yes that’s right.

So I’m finaly able to get back to adding this device. I’m going to take your advice and create the tags in designer by directtly addressing the MODBUS addresses via the OPC Server.

The problem is I have 157 tags to create. Is there and easier way to create these? I see there is the ability to import via a .json or csv file. I tried experimenting with them but kept getting errors during the import to the effect that the import utility didnt recognize the formatting.

Use system.tag.configure to create the tags. You can use logic in loops to create values for parameters that follow a pattern, or use lists of values to set parameters.

Thanks. I figured there was probably a simple way to do this with code. But I don’t even know how to begin to use this option because my coding skills are horrible. It would probably be better for me to manualy edit a json file and just import it. I’ll probably just go that route.

Don’t get me wrong, having the ability to do this with a scripting feature is a pretty powerfull tool. I’m afraid though that in this case, the limitation isn’t the SCADA :slight_smile:

In a pinch, you could use the browsing support in my module to set up your tags, and then avoid buying it by switching back to the native driver. The hazard is that you might like my module’s extra features too much… (:

1 Like