"Архитектура построения узлов учета ВИСТ.Т позволяет использовать указанные приборы в качестве единственного измерительного прибора для всех видов энергоресурсов: г.в.с., х.в.с., отопление, что особенно актуально для сокращения издержек при установке и эксплуатации узлов учета в жилищном фонде."
Ю.И.Припачкин, Генеральный конструктор ГЦП «Электронная Москва»
Добрый день, Текущие параметры и архивы по 1й т/с и текущие параметры по 2й т/с считались без проблем. Во 2й т/с только один параметр - объем по 1му трубопроводу. Для считывания архивов по 2й т/с, чтобы получить номер регистра начала заголовка архивного файла считал значения регистров 0x292 - 0x20ВС и 0x293 - 0x6000 (как описано в этой теме). Регистр начала заголовка архивного файла получился 0x2000. Попытался получить значение объема нарастающим итогом по 1му трубопроводу 2й т/с из регистров 0x200B, 0x200C - там значение не соответствует тому, что выводится на т/счетчике. В регистре 0x293 лежит значение 0x6000. Младший байт значения (0x00) - это младшая часть номера регистра начала заголовка архивного файла 2й т/с, а старший байт(0x60) - это младший байт набора архивируемых параметров 2й т/с (стр.8 документа "ВИС.Т-НС, протокол Modbus"). Т.е. архивируются параметры "Масса №2" и "Масса №3", а нужен параметр "Объем №1". Если архивировать параметры "Объем №1" и "Время наработки", то в регистре 0x293 должно быть значение 0x0300. Прошу сообщить верны ли мои утверждения или где-то ошибаюсь?
Здравствуйте. Всё даже хуже, чем кажется. ) Попытаюсь охватить проблему умозрительно - на практике никто этим не замимался.
Формат представления чисел в приборе - старшим байтом вперёд. И если из регистров 0x292/3 вами считана последовательность байтов 0x20BC6000, то 0xBC60 и будет адресом начала заголовка второго архива. При этом, это отнюдь не адрес 16-битного регистра, а адрес байта в адресном пространстве прибора. Смещение в регистрах от начала архивной области получим вычитая из данного числа 0x1000 (смещение архива в памяти) и поделив пополам (переход к 16-бит регистрам). К этому регистровому смещению не забываем добавить базовый регистровый адрес архива 0x1000. Итого, адрес регистра начала заголовка = 0x1000 + ((0xBC60 - 0x1000) / 2). Кажется, так.
-- Виктор В. Жданов NegaSoft Co. FAE НПО "Тепловизор", Главный инженер-программист
Вы не можете начинать темы. Вы не можете редактировать свои сообщения. Вы не можете создавать опросы. Вы не можете вкладывать файлы в сообщения. Вы не можете отвечать на сообщения. Вы не можете удалять свои сообщения. Вы не можете голосовать.
НПО «Тепловизор», Москва, Рязанский проспект, 8а тел/факс: +7(495)730-47-44, +7(495)127-28-44