Это ТРМ138 - положение десятичной точки задаётся руками при настройке. Также, как и для ТРМ1, ТРМ20х.
Но это не значит, что нужно лезть шаловливыми ручками и перенастраивать работающий прибор - читаете по Modbus и в ПЛК вычисляете.
В CoDeSys можно прочитать массив в тип данных String и потом спокойно делать преобразования этого массива. Я так показания из модуля аналоговых входов принимал.
Последний раз редактировалось FPavel; 16.10.2025 в 18:26.
Я же уже писал, что вычислить в ПЛК мы можем. Но проблема и суть вопроса другая. При чтении регистров, мы получаем значение с разным положением точки. На 1-м канале положение "0", на 2-м - 1, а на 4-м - "3".
Если вы знаете где это задается, подскажите.
В конфигураторе задается положение, которое влияет только на отображение на дисплее самого ТРМ138
Вот открываю инструкцию на ТРМ138
https://docs.owen.ru/product/trm138/...0#topic-102930
Вижу, что по Modbus можно принять данные для каждого канала в двух местах - регистры 0-39 и 64-103.
Мне лень читать, не могу сказать в чём различия.
При помощи функции 4 можно считать эти значения.
Пусть, для примера в переменные типа WORD Ch1 и Pt1 считываются соответственно содержимое регистров 1 и 0.
Тогда Value1 - измеренное значение на канале 1 будет
Единственно, раз всё равно считывается по 2 регистра на канал (значение и положение точки), то есть смысл брать не их, а значения в формате float - тогда и значения точек будет безразлично.Код:M:=1; for i:=1 to Pt1 M:=M*0.1; end_for; Value1 := Ch1 * M;
Или я не понимаю корень проблемы получения значения...
Вы так и не пояснили, почему не можете получить значения - то ли не совладали с Modbus, то ли значения, принятые из ТРМ138 не соответствуют ожиданиям, то ли целое значение и положение точки не можете в значение превратить.
Последний раз редактировалось FPavel; 20.10.2025 в 18:40.
Он не понимает как настроить эту точку, и настраивается ли она. Или тупо динамически меняется от значения самим прибором и каждый раз может быть другой. Вот в чем его вопрос.
Раз параметр настраивается вручную, значит никакого самопроизвольного изменения алгоритмом ТРМ138 быть не должно - иначе смысла в ручной настройке нет.
Единственно, не могу уяснить, почему параметр дублируется. Но это уже другое дело.