Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
19.04.2024, 03:10:09
 
Начало Помощь Поиск Войти Регистрация
Новости: Форум обновлен

+  Форум АО "ВЗЛЕТ"
|-+  Приборы ЗАО "Взлет"
| |-+  Отдел программистов
| | |-+  Чтение регистров Взлет Лайт М (RS-485)
0 Пользователей и 1 Гость смотрят эту тему. « предыдущая тема следующая тема »
Страниц: 1 [2] Печать
Автор Тема: Чтение регистров Взлет Лайт М (RS-485)  (Прочитано 11253 раз)
yura
Наш человек
***

Харизма: 22
Офлайн Офлайн

Сообщений: 342


« Ответ #15 : 15.11.2019, 11:44:33 »

Да, тип регистров 332773 и 332777 float, тут верно.
А можете написать абракадабру, которые показывает ПР200 при чтении этих регистров, и значения V+/V-  с экрана прибора или прочитанные нашей программой-монитором? Можно будет попробовать сопоставить числа в побайтном виде.

По поводу вашего вопроса "Есть ли какой-то вариант достучаться до параметра в формате long имеющимися средствами. Если речь про попытку чтения с ПР200, то там есть три типа данных: целочисленные, битовые и с плавающей запятой" - так и указывайте для регистра 332771 тип "целочисленные", и он должен правильно читаться при этом.
Записан
Серов Максим
Пользователь
**

Харизма: 0
Офлайн Офлайн

Сообщений: 13


« Ответ #16 : 15.11.2019, 11:58:45 »

Да, тип регистров 332773 и 332777 float, тут верно.
А можете написать абракадабру, которые показывает ПР200 при чтении этих регистров, и значения V+/V-  с экрана прибора или прочитанные нашей программой-монитором? Можно будет попробовать сопоставить числа в побайтном виде.

По поводу вашего вопроса "Есть ли какой-то вариант достучаться до параметра в формате long имеющимися средствами. Если речь про попытку чтения с ПР200, то там есть три типа данных: целочисленные, битовые и с плавающей запятой" - так и указывайте для регистра 332771 тип "целочисленные", и он должен правильно читаться при этом.

Прикрепленные к 4 и 5 посту скриншоты. Переменные Var 11(332773) и Var 13(332777). 4 варианта скриншотов (Старшим/младшим байтом/регистром вперед. Перебирал разные варианты). Значения на экране расходомера около 1500 кубов. Я бы скинул точные значения на расходомере, но он сейчас не под рукой, так что скриншоты того что читается ПР200 и соответствующие этому значения на экране расходомера смогу прислать только в понедельник.
Записан
yura
Наш человек
***

Харизма: 22
Офлайн Офлайн

Сообщений: 342


« Ответ #17 : 15.11.2019, 14:58:32 »

Прикрепленные к 4 и 5 посту скриншоты. Переменные Var 11(332773) и Var 13(332777). 4 варианта скриншотов (Старшим/младшим байтом/регистром вперед. Перебирал разные варианты). Значения на экране расходомера около 1500 кубов. Я бы скинул точные значения на расходомере, но он сейчас не под рукой, так что скриншоты того что читается ПР200 и соответствующие этому значения на экране расходомера смогу прислать только в понедельник.
Немного поэкспериментировал с прочитанным там значением Var11 - "9.49E+29". В виде байт в шестнадцатеричном представлении это "0x713FA626". Адекватное число из данного регистра должно быть от 0 до 1, поскольку мы читаем дробную часть накопленного объёма. Если переставить байты местами попарно, то есть сделать "0x3F7126A6", то это будет "9.42E-1 = 0.942". Но при этом заданная у вас настройка "Старшим байтом вперед" правильная...
Можете ли вы из этого ПО получить непосредсвенно modbus-ответ прибора на запрос данного регистра (в виде просто последовательности байт)? Хотелось бы понять как переданное прибором значение конвертировал ПР200.
Записан
Страниц: 1 [2] Печать 
« предыдущая тема следующая тема »
Перейти в:  


Войти

© 1990—2016, АО «Взлет».
Все права защищены.
Контактная информация
Powered by SMF 1.1.13 | SMF © 2006-2011, Simple Machines LLC
Материалы, размещенные на сайте, охраняются законодательством об авторском праве. Перепечатка материалов допускается только со ссылкой на сайт.