Subject: [OPSAWG] Question on Entity Sensor MIB (RFC3433)

From: "Juergen Quittek" <[email-masked]>
Date: Wed, 21 Apr 2010 17:34:29 +0200

Dear all,

My co-authors and I are trying to re-use textual conventions
of the Entity Sensor MIB module for the Energy MIB module (RFC3433).
But we have difficulties understanding the TC EntitySensorDataPrecision.
I am afraid we cannot re-use the Entity MIB without understanding it.
Can someone help us?

The DESCRIPTION clause of EntitySensorDataPrecision states

>  "An object using this data type represents a sensor
>  precision range.
>
>  An object of this type SHOULD be defined together with
>  objects of type EntitySensorDataType and
>  EntitySensorDataScale.  Together, associated objects of
>  these three types are used to identify the semantics of an
>  object of type EntitySensorValue.
>
>  If an object of this type contains a value in the range 1 to
>  9, it represents the number of decimal places in the
>  fractional part of an associated EntitySensorValue fixed-
>  point number.

This seems to imply that this object does not specify the precision
of a measured value, but instead the number of decimal places
in the fractional part. Is this correct?

>  If an object of this type contains a value in the range -8
>  to -1, it represents the number of accurate digits in the
>  associated EntitySensorValue fixed-point number.>

This is not clear at all.

Do we switch semantics from fractional part to accuracy when
changing sign?

What does it mean if the value is -3? Would we then have -3 accurate
digits?

Do we count negative digits from the right or from the left end
of the number?

>  The value zero indicates the associated EntitySensorValue
>  object is not a fixed-point number.

Can I use 0 if the fractional part is zero?
Or do I have to use a negative value if the fractional part is 0?

>  Agent implementors must choose a value for the associated
>  EntitySensorPrecision object so that the precision and
> 
>  accuracy of the associated EntitySensorValue object is
>  correctly indicated.
> 
>  For example, a physical entity representing a temperature
>  sensor that can measure 0 degrees to 100 degrees C in 0.1
>  degree increments, +/- 0.05 degrees, would have an
>  EntitySensorPrecision value of '1', an EntitySensorDataScale
>  value of 'units(9)', and an EntitySensorValue ranging from
>  '0' to '1000'.  The EntitySensorValue would be interpreted
>  as 'degrees C * 10'."

What if the I want to report from 0 to 100 degrees in 0.1 degree
increments but my precision is not accidentally 0.05 degrees,
but 0.2 degrees?  I don't see how I could express this.
Unfortunately, it is required for several standards to express
a precision of measurement of 1%, 2%, 5%, etc.

Any explanation is highly appreciated.

Thanks,

    Juergen

---

From: "Randy Presuhn" <[email-masked]>
Date: Wed, 21 Apr 2010 12:20:01 -0700

Hi -

> From: "Juergen Quittek" <[email-masked]>
...

With respect to the "precision" question,
I *think* the idea was to identify the
rightmost signficant (decimal) digit,
relative to the decimal point.

Randy