Unexpected Negative Values or Incorrect Values

If you read floating point values from the WattNode® Modbus® meter and assign them to integer registers in the Babel Buster, integer overflow may result in unexpected negative values or positive values that are incorrect. Any value greater than ±32767 assigned to an integer register will overflow. This is most likely to happen with the PowerSum and PowerAppSum values since they are the sum total of the power readings for all three phases.

Examples:

WattNode Register Value Converted to Babel Buster
Integer Register
Note
nvoPowerSum 12000.0 12000 No overflow
nvoPowerSum 42000.0 -23536 Overflow to negative value
nvoPowerSum 80000.0 14464 Overflow to smaller positive value

Solutions

  • Make sure the values you are converting will not exceed 32767. This is easy for things like voltage, which should be 120, 277, etc.
  • Use floating point internal registers in the Babel Buster to store floating point WattNode meter values.
  • Use integer WattNode values, which are scaled so that they will not overflow. Note: Power and current integer registers require scaling with the PowerIntScale and CurrentIntScale registers to convert readings into engineering units. See the manual for details.