influxdata/telegraf

Modbus: Unsigned float

Open

#15,909 建立於 2024年9月17日

在 GitHub 查看
 (1 留言) (0 反應) (0 負責人)Go (4,161 fork)batch import
area/modbusfeature requesthelp wantedsize/s

倉庫指標

Star
 (9,892 star)
PR 合併指標
 (平均合併 2天 12小時) (30 天內合併 136 個 PR)

描述

Use Case

I am using power meters that provide measurement values using a Non-IEEE floating point formats:

Unsigned Measurement (32 bit):

  • Decade Exponent(Signed 8 bit)
  • Binary Unsigned Value (24 bit) Example: 123456*10–3 stored as FD01 E240(16)

Signed Measurement (32 bit)

  • Decade Exponent (Signed 8 bit)
  • Binary Signed value (24 bit) Example: - 123456*10–3 stored as FDFE 1DC0(16)

I am looking for a way to configure/extend the modbus input plugin to handle these values.

Am I right that currently, only IEEE (signed) float values are supported? Can I just come up with new data_types like UFLOAT32 and MSIGN_FLOAT32 (as the mantissa holds the sign)?

I'd be able to implement it on my own, just checking what a sane convention would be.

Kind regards

nischu

Expected behavior

I would like the Modbus input plugin to generate correct floating point values

Actual behavior

I cannot really specify this custom data type

Additional info

https://cdn.findernet.com/app/uploads/Benutzerhandbuch_Typ_7M38_DE.pdf page 52

貢獻者指南