How to set Tag Scaling/Numeric Properties

There doesn’t seem to be a straight forward way to bind to an OPC tag’s Numeric Scaling Properties, though it looks like it might be possible through scripting.

I’m using a Modbus TCP driver for my PLC comms, and I would like some way to update the PLC with a tag’s Linear Numeric Scaling Properties, without reinventing the wheel or having to right a lot of script.

Thoughts, ideas and and comments welcome.

Thanks!

I don’t get it. Why would you need to update the PLC? The whole point of the scaling feature is to adjust the presentation of numbers that the PLC won’t/can’t scale for you.

Well, without getting into some lengthy discussion of my application, can we just say I have a use case for it? Basically, I’d like to be able to have the scaled value read from another PLC. Passing the raw value around along with scaling params seems messy.

Tag property reference for scripting names:
https://docs.inductiveautomation.com/display/DOC79/Tag+Properties

scaledLow = system.tag.read('ScaledTag.ScaledLow').value
scaledHigh = system.tag.read('ScaledTag.ScaledHigh').value
system.tag.write('Other Tag Low', scaledLow)
system.tag.write('Other Tag High', scaledHigh)

This script will take your scaled low and scaled high values and write them to the tags “Other Tag Low” and “Other Tag High”.

You’ll need to determine what triggers the script to run. A value change script doesn’t activate on a scaling change (at least on my memory tag test). You might need to have a gateway script or something else trigger it on a periodic basis.

1 Like

Since you’re on 7.9 still, consider using an expression tag with the writeback option to write the scaled value to that other PLC.

Customer doesn’t want the system to depend on the SCADA system for this. Otherwrise, I’d have the other PLC’s SCADA (by others and also Ignition) just read my scaled tag.

Yes, when I said it “looks like” it might be possible to do with scripting, that’s what I was refereeing to.

Let me pose a slightly different, though still relevant use case: Is there some non-scripting way to link a group of tag’s Numeric Scaling Properties together? Let’s say I have a number of tags (+100), and within that number, some groups (<10) need to have all their Numeric Scaling Properties linked together.

I notice that if I put the a tag reference (i.e. {tag/path/ref}) in the Numeric Property, the form shows what appears to be a binding icon next to the field. But then the form continues to display whatever value was previously there, and there appears to be no way to make the icon “go away”. So what’s up with all that?