"Организация «Сервисная компания «Тепловизор» зарекомендовала себя надежным и профессиональным партнером способным быстро и качественно решать поставленные перед ней задачи."
Добрый день! Задача стоит с теплосчетчика ВИСТ по RS-485 по модбас протоколу вывести данные в контроллер Сименс через модуль TXI2.Open (Siemens). Сканирую ModScan32 программой, получаю данные, но не могу понять как читать данные в соответствии с картой регистров Modscan для теплосчетчика ВИСТ. Формат данных как считывает Сименсом: М=1(4.0.3.0.0[UINT16]), где 1 - номер устройства, 4 - функция, 3 - адрес регистра. Мне нужно считать допустим температуру №1. Смотрю на карту модбас регистров ВИСТ - функция 04, адрес: 0х0206 (518), 0х0606(1542), 0х0А06(2566). Обычно беру адрес регистра и считываю данные, но на этих регистрах по нулям. Значения через программу ModScan32 по функции 04 приходят только с 1 по 254 регистр. Заметил что по карте регистров 95 адрес - это значение сетевого номера прибора, а по программе он 92. С каких регистров мне считать допустим температуру? Различные орс серверы не могу использовать, так как завожу данные на контроллер.
Здравствуйте. Допустим температуру в 1 (подающем) трубопроводе первой теплосистемы можно прочитать функцией 4 с адреса 0x0206 (1 регистр, 2 байта, старшим байтом вперёд). Температуры 2 и 3 с адресов 0x207 и 0x208 соответственно. Для температур второй или третьей теплосистем (при наличии) к этим адресам следует добавить 0x400 или 0x800 соответственно. Значение в сотых долях градуса по цельсию.
-- Виктор В. Жданов NegaSoft Co. FAE НПО "Тепловизор", Главный инженер-программист
CH пишет: Здравствуйте. Допустим температуру в 1 (подающем) трубопроводе первой теплосистемы можно прочитать функцией 4 с адреса 0x0206 (1 регистр, 2 байта, старшим байтом вперёд). Температуры 2 и 3 с адресов 0x207 и 0x208 соответственно. Для температур второй или третьей теплосистем (при наличии) к этим адресам следует добавить 0x400 или 0x800 соответственно. Значение в сотых долях градуса по цельсию.
Добрый день! По адресам 0х0206, 0х0207, 0х0208 везде нули. По поводу чтения адресов - со 0х0188 по 0х0212 адрес для теплосистемы первой (единственной в данном случае) у меня по нулям, то есть, если чтение развернуть от старшего байта, то все равно будут нули. Получается, что стандартная таблица с модбас адресами не соответствует? И адреса с температурами могут быть другими.
Здравствуйте. Таблица регистров не соответствовать не может - других вариантов разметки адресного пространства не существует. Как вариант, уточните наличие нештатных ситуаций по датчикам температуры, в этом случае значения температур недействительны и в регистрах могут быть нулевые значения. Также попробуйте для информации провести проверку чтения данных с помощью какого-нибудь нашего софта, например OPC-сервером в режиме автоопроса.
-- Виктор В. Жданов NegaSoft Co. FAE НПО "Тепловизор", Главный инженер-программист
Вы не можете начинать темы. Вы не можете редактировать свои сообщения. Вы не можете создавать опросы. Вы не можете вкладывать файлы в сообщения. Вы не можете отвечать на сообщения. Вы не можете удалять свои сообщения. Вы не можете голосовать.
НПО «Тепловизор», Москва, Рязанский проспект, 8а тел/факс: +7(495)730-47-44, +7(495)127-28-44