Столкнулся с проблемой.
Нужно считывать Int48 по Modbus и выводить на экран.
Прибор - эл.счетчик Elster Метроника A1800.
По мануалу максимальное хранимое значение - 99 999 999 999
В таком формате он хранит потребленную энергию Ватты, ВАРы, ВА с точностью до сотых.
Если пожертвовать точностью и выводить значения в формате Кило (Ватты, ВАРы, ВА), разделив на 100000 - то real'a должно хватить на максимальное значение в 999999,9 кВт
Написал макрос преобразования Int48 в real, может кому пригодится:
Conv Int48.msl
Макрос преобразования Int48 в real.pngМакрос преобразования Int48 в real общий вид.png
Вот только вопрос. Какое максимальное значение мантиссы для real? Думал, что 2^24 = 16777216, но SMLogix показывал и большие числа, например 10952167. Где я неправ?
Макрос преобразования Int48 в real общий вид2.png