I have multiple flow controllers configured as AI/AO points in my groov system I am using PAC control to design my strategy, and I need to verify the calibration of some of the controllers due to some unexpected flow issues I am observing. When I first set the system up, I calibrated the unscaled 4-20 mA signals of the AI/AO points manually prior to scaling the points. After scaling the points to equate to certain SCCM equivalents, I am hesitant to remove the scaling once again because my strategy includes a lot of logic that will lead to ESD’s if the 4-20 mA values are interpreted as SCCM units. Plus, there may be issues when rescaling back if there is a mistake in that task. Before going through the excercise of getting around this problems, I wanted to ask if there is a way to obtain the ‘raw’ unscaled 4-20 mA signal from my AI/AO points? I assume it must exist as the PLC is translating my scaled values to a 4-20 mA signal anyways to communicate with the devices.
I’ve had situations in the past where I’ve wanted this same thing. I wouldn’t change anything about the way things work normally, but I would love a command for analog I/O points that would return the raw non-scaled value.
A couple of Ideas for your scenario:
You could look at the memory map to read the Analog Value Counts and scale appropriately (but I find this a more complicated an approach but have done in the past).
My preferred way is to scale the IO to show 4-20ma and use a subroutine (or do it in logic) to scale to EU. The added caveat is that you can easily use the same subroutine to indicate that the input is Good / Bad based on the raw 4-20ma.
Either way you can leave your scaling and easily calibrate raw input as needed.
Just be aware that I don’t think this is an option with groov IO modules.
I have done this as well with a “scale” subroutine - useful in the case you describe to check out of range values. Less important on groov IO as it has the quality commands that will report out of range for you.