Вход

Просмотр полной версии : Чтение регистров из ТРМ1032М в СП307Р.



vovan6686
24.11.2024, 21:23
Так как созданная здесь пару часов назад тема (https://owen.ru/forum/showthread.php?t=40532) о проблеме с блоком питания получила быстрый отклик и подсказки, то я решил создать в этом же разделе ещё одну тему, вдруг тоже кто-нибудь даст дельный совет.
Проблема в том, что у меня не получается вывести на экран СП307 два следующих значения из ТРМ1032М:

https://owen.ru/forum/attachment.php?attachmentid=80281&stc=1&d=1732471836

1. Хотел вывести на экран текущее положение КЗР в процентах. Для этого читаю регистр 0xA00 (2560), как указано в мануале. Но в мануале не указан тип данных. Судя по всему там должен быть REAL, т.к. следующий параметр по таблице (КЗР второго контура) идёт через два регистра. В СП307 я читаю 2560, тип dword, два регистра подряд. Вроде всё правильно делаю. Но в результате, что бы я не делал - на экране у меня упорно ноль. Если бы оттуда что-то читалось, пусть с неверной последовательностью, то показывало бы хоть что-то.

https://owen.ru/forum/attachment.php?attachmentid=80282&stc=1&d=1732471846

2. Так же необходимо читать и показывать ещё один float-параметр - температуру наружного воздуха. Тоже вроде бы всё правильно ставлю, но показывает явно какую-то ересь, как будто байты перепутаны местами.

https://owen.ru/forum/attachment.php?attachmentid=80283&stc=1&d=1732471854

Может кто-нибудь подскажет, что я делаю не так?
С параметрами word, которые я вывожу из этой же ТРМ1032М - проблем нет. Отображаются верно. Проблема именно в float. В настройках параметров порта ставил галочку "изменить порядок регистров". Не помогает. Ставил как команду чтения 03, так и 04. Тоже не помогает. :confused: Что ему ещё нужно?
На этой же шине у меня есть ещё МВ110-8А, и с неё прекрасно выводится и показывается float. А с ТРМ-ки что-то совсем никак не получается.

МихаилГл
24.11.2024, 21:50
Для начала попробуйте посмотреть что и как сторонней утилитой для чтения модбас регистров.

PS Может этот регистр зависит от настройки, и при текущих данных его просто нет... Но это надо читать...

imaex
24.11.2024, 22:08
514-ый (т.н.в.) - это input, а не holding. Порядок слов обычный. Ну, я не СП307 читаю, другой софт. Обычный с т.з. софта, которым пользуюсь. Побайтно порядок
1 0 3 2

из 4х2560 (раз уже это выходы) у меня тоже нули читаются. Но я и не знаю - должно ли там что-то быть. Мне не нужно, просто посмотрел.

ЗЫ: насчёт 4х2560 наврал - читаются какие то отличные от нуля значения, где-то в диапазоне от 0,07 до 0,1. Т.е. в паспортном диапазоне. Порядок байт тот же.

Евгений Зубков
25.11.2024, 17:43
Измените порядок регистров: младшим регистром вперёд