Change the Engineering Unit of a SCALE parameter via CALC block or Function Block

Hi,

In DeltaV I'm trying to change the Engineering Units of the OUT_SCALE parameter of an instance of the C_AI_SOFT130 composite via CALC block.

In the CALC block I've tried the following lines but none of them seems to work:

'^/AI1/OUT_SCALE.UNITS' := 1607;

or 

'^/AI1/OUT_SCALE.UNITS' := "cm";

Do you know if this is at all possible?

Thank you for your help

  • In reply to Matt Stoner:

    Hi Matt,
    thanks again for your help.
    My colleague Neil was able to find a solution to this problem and I want to share it with the community hoping it might be helpful to others;

    It seems that for some reason the statement '^/AI1/OUT_SCALE.UNITS' := 1088; doesn't work;

    What worked was:
    1. In the CM, add an internal parameter of type Floating Point (in our case called KG_ENG_UNIT), and with a value of 1088
    2. In the CALC block re-write the statement as '^/AI1/OUT_SCALE.UNITS' := '^/KG_ENG_UNIT.CV';

    With this new statement we were able to modify the EU of the parameter '^/AI1/OUT_SCALE.UNITS' without having to take the CM OOS.

    (Maybe with the statement '^/AI1/OUT_SCALE.UNITS' := 1088 the CALC block was passing the value as a 32-bit Integer whereas the statement := '^/KG_ENG_UNIT.CV' forces it to pass it as a Floating point? Not sure about it)
  • In reply to Matt Stoner:

    Hi Matt,
    yes, using '^/AI1/OUT_SCALE.UNITS' := 1088 in the CALC block doesn't work. What worked was to use '^/AI1/OUT_SCALE.UNITS' := '^/KG_ENG_UNIT.CV'; (where KG_ENG_UNIT is a floating point internal parameter set to 1088).

    Thanks for noticing the error with "l" and "lb".