Tag

Description:              This function returns a Tag value, which works like (and in place of) a Normalize value.

Returns:                    Tag

Usage:                       Steady State

Format:                      Tag(Value, LowInput, HighInput, LowScale, HighScale, Mode, Freq)

Parameters:             Value     { numeric }  { required }  { no default: }

                                                Any numeric expression to be normalized.

                                    LowInput     { numeric }  { required }  { no default: }

                                                Any numeric expression, which represents the lowest normal input value of Value. This is not a limit.

                                    HighInput     { numeric }  { required }  { no default: }

                                                Any numeric expression, which represents the highest normal input value of Value. This is not a limit.

                                    LowScale     { numeric }  { required }  { no default: }

                                                Any numeric expression, which represents the lowest normal scaled value of Value. This is not a limit.

                                    HighScale     { numeric }  { required }  { no default: }

                                                Any numeric expression, which represents the highest normal scaled value of Value. This is not a limit.

                                    Mode     { numeric }  { required }  { no default: }

                                                Any numeric expression that specifies how this I/O tag is to be simulated. If the application isn't simulating I/O, this parameter is ignored, but must be present and valid.

                                    Freq     { numeric }  { required }  { no default: }

                                                Any numeric expression that specifies the frequency at which the simulation runs. This applies only if this tag is simulated, and only if the Mode specifies a cyclic simulation; however, this parameter must always be present and valid.

Comments:               This function scales an expression from the low and high input range to between low and high values. The return value is a Normalize value.

                             If a Tag value is used in an expression, it will return the scaled value.

Example:

pumpFlow = Tag(rawPumpFlow, 0, 4095, 0, 150);

This sets the variable pumpFlow to a Tag value. The variable rawPumpFlow is scaled from between 0 to 4095, to between 0 and 150. This Tag value might be used to scale a rectangle (to show a bar graph of the pump flow), as shown:

GUIRectangle(0, 100, 100, 0 { Rectangle bounding box },

             1, 1, 1, pumpFlow, 1 { Scale top of bar only }, 

             0, 0 { No trajectory, rotation }, 

             1, 0 { Visible; reserved }, 

             0, 0, 0 { No focus, selection }, 

             12, 15 { Lt red, white outline }); 

The variable pumpFlow could also be reused in other expressions, graphics functions, rotations, or trajectories.

See Also:

Normalize | Rotate | Scale | Trajectory