Здравствуйте! Читаю температуру по modbus с контроллера отопления Uponor. Температуру он отдаёт в фаренгейтах, да плюс ко всему с десятичными значениями вместе.
Для вычисления корректной температуры в цельсиях, необходимо воспользоваться формулой:
Celcius = ((data value – 320)/1.8)/10
Как мне лучше всего совершить такую конвертацию на стороне WB? Заранее благодарю!
Celcius = ((data value – 320)/1.8)/10 = (1/1.8/10)*data value - (320/1.8/10)=0,055555556*data value-17,777778
Поэтому в шаблоне у значения используйте параметры как в примере ниже, но замените на то, что получилось в выражении выше:
// коэффициент, на который умножается значение регистра перед публикацией в MQTT
“scale”: 0.5,
// значение, которое прибавляется к значению регистра перед публикацией в MQTT
“offset”: -12.5,