НПО Тепловизор. Теплосчетчики и расходомеры К вершинам эволюции теплосчетчика
Продукция Поддержка Форум Контакты
     
Пользователь    Пароль  
Регистрация | Пароль?  
Главное меню
НовостиПродукцияФайлы/ДокументыСтатьиФорумОпросыФотогалереяО компанииРекламодателям
Потребители о нас
"ЗАО «НПО «Тепловизор» на объектах ГлавУпДК при МИД России более трех лет проводит работы по установке, а также по гарантийному, послегарантийному сервисному обслуживанию и государственной поверке узлов учета тепловой энергии и теплоносителя.
Располагая достаточным количеством высококвалифицированных специалистов, ЗАО «НПО «Тепловизор» оперативно и на высоком техническом уровне выполняет работы по техническому обслуживанию приборов учета. Помимо приборов ВИС.Т собственного производства ЗАО «НПО «Тепловизор» производит техническое обслуживание и ремонт еще около 10 типов теплосчетчиков разных фирм-изготовителей."


А.Н.Авдошин, Генеральный директор ЗАО «Спецмонтажстрой-5»
Наши партнёры
Свернуть/Развернуть ТЕПЛОСЧЕТЧИКИ • ВОДОСЧЕТЧИКИ • РАСХОДОМЕРЫ • ВИС.Т Свернуть/Развернуть
/  Список форумов
   /  Оборудование производства НПО "Тепловизор"
/  Связь по Modbus RTU
«  Предыдущая тема    Следующая тема  »
Тема:  Связь по Modbus RTU    

aLLexn Связь по Modbus RTU

Новенький


Добрый день!
Возник вопрос по связи с теплосчетчиком ВИСТ по Modbus
Изучив документацию, в которой расписаны все адреса данных в теплосчетчике попытался считать с него информацию, с помощью стороннего OPC сервера.
Вопрос такой, 1. Как считать сетевой номер прибора?
по документации, написан адрес блока - 0 и размер блок - 99 байт, далее идет таблица со смещением, в которой, сетевой адрес прибора - это смещение на 95. Верно ли я понимаю, что это смещение относительно адреса 0?
При этом адрес прибора равен 2, а в этой ячейке лежит 256. При смене сетевого адреса в приборе, цифра 256 никак не изменяется? Можете ли подсказать пример работы с этими смещениями?

При это получить текущие занчения температур получается спокойно.!

Второй вопрос в получении архивных данных. Здесь на форуме читал, что они начинаются с 1000 регистра (Input Registers), однако там лежит тоже какая то ахинея.

Если есть возможность, или кто сталкивался, объясните суть этого смещения.
Спасибо!
» 25.5.16 11:45 Профайл

CH Re: Связь по Modbus RTU

Администратор


Здравствуйте.
Вычитывать модбасом отдельные данные из блока настроечных параметров ВИСТа, конечно, неудобно. Данные расположены так, что не кратны 2-м (размер регистра протокола модбас). Но давайте прикинем.
1. Размер всего блока 99 РЕГИСТРОВ (не байтов). Это просто уточнение.
2. Чтение значения двухбайтного параметра из этого блока, при условии, что блок начинается с адреса 0000 и известно СМЕЩЕНИЕ параметра от начала блока в байтах, было бы простым ЧТЕНИЕМ РЕГИСТРА МОДБАС С АДРЕСА (СМЕЩЕНИЕ/2)... если бы смещение параметра было кратно 2. Однако в данном случае оно не кратно. Первый из двух байтов параметра "сетевой номер" расположен со смещением 95 байт от начала блока.
3. Учтём также, что значение сетевого адреса модбас гарантированно влазит в 1 байт. То есть нас интересует только младший байт двухбайтного значения, расположенный, в силу big-endian архитектуры прибора по смещению 96. То есть этот значащий байт можно считать как значение модбас-регистра с адресом (96/2) = 48. При этом первый байт регистра будет содержать нужное нам значение, а второй - мусор, кусок следующего параметра.
4. Остаётся отфильтровать излишек. В данном конкретном случае в этом излишке вообще-то будет ноль (см. описание след. параметра).
Так что применительно к данному конкретному случаю получается, что модбас-регистр с адресом 48 содержит адрес прибора в чистом виде, но только младшим байтом вперёд.
))

--
Виктор В. Жданов
NegaSoft Co. FAE
НПО "Тепловизор", Главный инженер-программист
» 25.5.16 20:03 Профайл Посетить веб-сайт

aLLexn Re: Связь по Modbus RTU

Новенький


Цитата:

CH пишет:
Здравствуйте.
Вычитывать модбасом отдельные данные из блока настроечных параметров ВИСТа, конечно, неудобно. Данные расположены так, что не кратны 2-м (размер регистра протокола модбас). Но давайте прикинем.
1. Размер всего блока 99 РЕГИСТРОВ (не байтов). Это просто уточнение.
2. Чтение значения двухбайтного параметра из этого блока, при условии, что блок начинается с адреса 0000 и известно СМЕЩЕНИЕ параметра от начала блока в байтах, было бы простым ЧТЕНИЕМ РЕГИСТРА МОДБАС С АДРЕСА (СМЕЩЕНИЕ/2)... если бы смещение параметра было кратно 2. Однако в данном случае оно не кратно. Первый из двух байтов параметра "сетевой номер" расположен со смещением 95 байт от начала блока.
3. Учтём также, что значение сетевого адреса модбас гарантированно влазит в 1 байт. То есть нас интересует только младший байт двухбайтного значения, расположенный, в силу big-endian архитектуры прибора по смещению 96. То есть этот значащий байт можно считать как значение модбас-регистра с адресом (96/2) = 48. При этом первый байт регистра будет содержать нужное нам значение, а второй - мусор, кусок следующего параметра.
4. Остаётся отфильтровать излишек. В данном конкретном случае в этом излишке вообще-то будет ноль (см. описание след. параметра).
Так что применительно к данному конкретному случаю получается, что модбас-регистр с адресом 48 содержит адрес прибора в чистом виде, но только младшим байтом вперёд.
))




Спасибо за ответ! С этим разобрался, все данные получил, ошибочно полагал, что смещение именно регистровое, а не по байтам.
Получил все данные о приборе.

Появился вопрос, может ли кто либо из ваших специалистов по удаленной помочь с выгрузкой суточного и месячного архива?

как я понял из форума, архив системы начинается с 4096 адреса и читается функцией 04. однако получить адекватные данные пока не удается.
» 9.6.16 13:09 Профайл

CH Re: Связь по Modbus RTU

Администратор


Крайне желательно использовать для чтения архива файловые функции OPC, это снимет множество неудобных моментов. Если ваш инструментарий их не поддерживает - ну что же, тогда нужно постараться. )
Мы сами не пользуемся фукцией 4 для чтения архива, поэтому полноценной помощью вас едва ли обеспечим. На конкретные вопросы ответим всегда - можете направлять их на нашу софтверную почту (negasoft@ - см. контакты), чтобы не флудить на форуме.

--
Виктор В. Жданов
NegaSoft Co. FAE
НПО "Тепловизор", Главный инженер-программист
» 9.6.16 15:21 Профайл Посетить веб-сайт
Распечатать топик 
«  Предыдущая тема    Следующая тема  »


Поиск

Ключевые слова:    
[ Расширенный поиск ]

Права

Вы не можете начинать темы.
Вы не можете редактировать свои сообщения.
Вы не можете создавать опросы.
Вы не можете вкладывать файлы в сообщения.
Вы не можете отвечать на сообщения.
Вы не можете удалять свои сообщения.
Вы не можете голосовать.