Unexpected integer scaling behavior

I’m trying to scale a timer preset from a SLC 5/05. It is in hundredths of seconds, so an integer value in the PLC of 272 represents 2.72 seconds. I’m using the Ignition OPC-UA driver.

Raw 0-1000
Scaled 0-10

If the value in PLC is 272, Ignition reads 3.00 into my tag.
If I write a value of 2.72 to the tag, Ignition writes an integer value of 300 to the PLC register.

Tag is currently a Float4.

Am I doing something wrong?

Update -
I think I’ve found the problem. I originally built tag as INT2. I built a new tag as a Float4 addressing the same PLC register, and both tags started working.

I’ll try redoing this from scratch…

I’ll repost if I still have an issue.


Sorry, i jumped the gun on posting this as an issue at all. It was user error. I had a bi-directional binding to the integer value property on a numeric text field for the tag. That was converting each value I read or wrote to an integer.

I had copied the component and reused it. I later changed my tag type from INT2 to Float4 and applied the scaling, but it didn’t occur to me that I needed to change the binding to bind it to the float value property.

So - just a newbie issue, but maybe it’ll help someone else avoid the same trouble.


No problem- this kind of stuff does come up fairly often, so I’m sure someone else will find your post useful!